:root{--annot-bg-primary:#0f1730;--annot-bg-secondary:#0b1020;--annot-bg-panel:#121933;--annot-bg-panel-deep:#0f1730;--annot-border-color:#ffffff38;--annot-border-subtle:#ffffff14;--annot-shadow:0 20px 50px #00000047;--annot-text-primary:#eef2ff;--annot-text-secondary:#b7c0e0;--annot-text-muted:#9097b8;--annot-preview-line:#b7c0e0;--annot-accent:#7c9cff;--annot-accent-2:#7ef0c5;--annot-accent-bg:#7c9cff2e;--annot-accent-hover:#7c9cff42;--annot-active-bg:#7c9cff2e;--annot-active-border:#7c9cff;--annot-chip-bg:#7c9cff24;--annot-focus-ring:#7ef0c5;--annot-hover-bg:#ffffff14;--annot-hover-border:#ffffff38;--annot-choice-bg:transparent;--annot-choice-hover:#7c9cff1a;--annot-choice-active:#7c9cff2e;--annot-input-bg:#ffffff0f;--annot-input-border:#ffffff38;--annot-canvas-bg:#0b1020;--annot-canvas-check:#121933}:root.light{--annot-bg-primary:#f5f7ff;--annot-bg-secondary:#fff;--annot-bg-panel:#fff;--annot-bg-panel-deep:#fafbff;--annot-border-color:#bfc6de;--annot-border-subtle:#d8ddef;--annot-shadow:#00000014;--annot-text-primary:#0b1020;--annot-text-secondary:#3a4568;--annot-text-muted:#616984;--annot-preview-line:#2a3050;--annot-accent:#3456c9;--annot-accent-2:#188a5c;--annot-accent-bg:#edf1ff;--annot-accent-hover:#dce4ff;--annot-active-bg:#dce4ff;--annot-active-border:#3456c9;--annot-chip-bg:#edf1ff;--annot-focus-ring:#3456c9;--annot-hover-bg:#eef1fa;--annot-hover-border:#8893b8;--annot-choice-bg:transparent;--annot-choice-hover:#eef1fa;--annot-choice-active:#dce4ff;--annot-input-bg:#fff;--annot-input-border:#8893b8;--annot-canvas-bg:#e8ecf5;--annot-canvas-check:#dde2ef}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--annot-bg-primary,#2a2a2a);width:100%;height:100%;color:var(--annot-text-primary,#e0e0e0);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}#canvas-container{background:var(--annot-canvas-bg);background-image:linear-gradient(45deg, var(--annot-canvas-check) 25%, transparent 25%), linear-gradient(-45deg, var(--annot-canvas-check) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--annot-canvas-check) 75%), linear-gradient(-45deg, transparent 75%, var(--annot-canvas-check) 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;display:none;position:absolute;inset:48px 0 28px;overflow:auto}#svg-root,[data-annot-shell-root]{cursor:default;-webkit-user-select:none;user-select:none;background:#fff;margin:20px auto;display:block;box-shadow:0 4px 24px #00000080}[data-annot-shell-root] foreignObject [contenteditable=true],#svg-root foreignObject [contenteditable=true]{-webkit-user-select:text;user-select:text}#statusbar{background:var(--annot-bg-panel,#1e1e1e);border-top:1px solid var(--annot-border-color,#333);color:#888;align-items:center;gap:16px;height:28px;padding:0 12px;font-size:12px;display:none;position:absolute;bottom:0;left:0;right:0}body.editor-mode #statusbar{display:flex}.save-toast{background:var(--annot-accent,#00d4ff);color:#000;opacity:0;z-index:1000;pointer-events:none;border-radius:20px;padding:6px 24px;font-size:13px;font-weight:600;transition:opacity .3s,transform .3s;position:fixed;bottom:48px;left:50%;transform:translate(-50%)translateY(20px)}.save-toast.show{opacity:1;transform:translate(-50%)translateY(0)}.tag-editor{align-items:center;gap:4px;display:flex}.tag-chips{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.tag-chip{background:var(--annot-chip-bg,#16213e);color:var(--annot-text-primary);white-space:nowrap;border:1px solid var(--annot-border-color);border-radius:10px;align-items:center;gap:2px;padding:1px 6px;font-size:11px;display:inline-flex}.tag-chip-label{pointer-events:none}.tag-chip-delete{color:var(--annot-text-muted);cursor:pointer;background:0 0;border:none;padding:0 1px;font-size:12px;line-height:1}.tag-chip-delete:hover{color:#e44}.tag-add-btn{border:1px dashed var(--annot-border-color);color:var(--annot-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:10px;padding:1px 8px;font-size:11px}.tag-add-btn:hover{border-color:var(--annot-accent);color:var(--annot-accent)}.tag-input-row{background:var(--annot-bg-panel-deep,#1e1e2e);border:1px solid var(--annot-border-color);box-shadow:0 -4px 12px var(--annot-shadow);z-index:200;border-radius:6px;gap:4px;margin-bottom:4px;padding:6px 8px;display:flex;position:absolute;bottom:100%;left:0}.tag-input{border:1px solid var(--annot-input-border,#444);background:var(--annot-input-bg,#2a2a2a);height:24px;color:var(--annot-text-primary);border-radius:4px;outline:none;padding:0 6px;font-size:12px}.tag-input-key{width:80px}.tag-input-value{width:120px}.tag-input:focus{border-color:var(--annot-accent)}.tag-ok-btn,.tag-cancel-btn{cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;display:flex}.tag-ok-btn{background:var(--annot-accent);color:#000}.tag-ok-btn:hover{opacity:.8}.tag-cancel-btn{color:var(--annot-text-muted);background:0 0}.tag-cancel-btn:hover{color:#e44}.gallery-tag-chips{flex-wrap:wrap;gap:2px;margin-top:3px;display:flex}.gallery-tag{background:var(--annot-chip-bg,#16213e);color:var(--annot-text-secondary);border:1px solid var(--annot-border-color);white-space:nowrap;border-radius:8px;padding:0 5px;font-size:10px}#statusbar span{white-space:nowrap}#zoom-controls{background:var(--annot-input-bg,#2a2a2a);border:1px solid var(--annot-border-color,#444);border-radius:4px;align-items:center;gap:2px;padding:0 2px;display:flex}.zoom-btn{width:22px;height:22px;color:var(--annot-text-secondary,#888);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;font-size:16px;display:flex}.zoom-btn:hover{background:var(--annot-hover-bg,#333);color:var(--annot-accent,#00d4ff)}.zoom-label{min-width:42px;height:22px;color:var(--annot-text-primary,#ccc);cursor:pointer;text-align:center;background:0 0;border:none;padding:0 4px;font-size:11px}.zoom-label:hover{color:var(--annot-accent,#00d4ff)}.zoom-select-wrap{position:relative}.zoom-menu{background:var(--annot-bg-panel-deep,#1e1e2e);border:1px solid var(--annot-border-color,#444);box-shadow:0 -4px 16px var(--annot-shadow,#0006);z-index:200;border-radius:6px;min-width:90px;margin-bottom:4px;position:absolute;bottom:100%;left:50%;overflow:hidden;transform:translate(-50%)}.zoom-menu-item{width:100%;color:var(--annot-text-primary,#ccc);text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:6px 14px;font-size:12px;display:block}.zoom-menu-item:hover{background:var(--annot-choice-hover,#2a2a40);color:var(--annot-accent,#00d4ff)}.zoom-menu-item.active{color:var(--annot-accent,#00d4ff);font-weight:700}.zoom-menu-sep{background:var(--annot-border-color,#444);height:1px;margin:2px 0}.gallery-toolbar-title{color:var(--annot-accent);white-space:nowrap;padding:0 4px;font-size:16px;font-weight:700}.gallery-toolbar-search{border:1px solid var(--annot-border-color);background:var(--annot-input-bg);max-width:360px;height:32px;color:var(--annot-text-primary);border-radius:6px;outline:none;flex:1;padding:0 10px;font-size:13px}.gallery-toolbar-search:focus{border-color:var(--annot-accent)}.file-details-backdrop{pointer-events:none;z-index:19;background:0 0;transition:background .2s ease-out;position:absolute;inset:48px 0 28px}.file-details-backdrop.open{pointer-events:auto;background:#0003}.file-details-drawer{background:var(--annot-bg-panel);border-left:1px solid var(--annot-border-color);z-index:20;flex-direction:column;width:360px;max-width:80vw;transition:transform .22s ease-out;display:flex;position:absolute;top:48px;bottom:28px;right:0;overflow-y:auto;transform:translate(calc(100% + 28px));box-shadow:-4px 0 28px #00000059}.file-details-drawer.open{transform:translate(0)}.file-details-header{border-bottom:1px solid var(--annot-border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.file-details-title{letter-spacing:-.02em;color:var(--annot-text-primary);margin:0;font-size:15px;font-weight:700}.file-details-close{width:32px;height:32px;color:var(--annot-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:20px;display:flex}.file-details-close:hover{background:var(--annot-hover-bg);color:var(--annot-text-primary)}.file-details-section{border-bottom:1px solid var(--annot-border-subtle);padding:14px 18px}.file-details-section:last-child{border-bottom:none}.file-details-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--annot-text-muted);margin:0 0 10px;font-size:11px;font-weight:700}.file-details-row{grid-template-columns:92px 1fr;gap:12px;padding:5px 0;font-size:13px;line-height:1.45;display:grid}.file-details-row-label{color:var(--annot-text-muted)}.file-details-row-value{color:var(--annot-text-primary);word-break:break-word;min-width:0}.file-details-row-value.mono{font-family:SF Mono,Menlo,Consolas,monospace;font-size:12px}.file-details-row-value.selectable{-webkit-user-select:text;user-select:text}a.file-details-row-value{color:var(--annot-accent);text-decoration:none}a.file-details-row-value:hover{text-decoration:underline}.file-details-tags-editor{min-height:32px}.file-details-avatar{vertical-align:middle;border-radius:50%;width:16px;height:16px;margin-right:6px;display:inline-block}.file-details-sha{color:var(--annot-text-secondary);background:var(--annot-input-bg,#ffffff0a);border-radius:3px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.file-details-link-row{display:block}.file-details-external-link,.file-details-external-link:visited{color:var(--annot-accent);align-items:center;gap:6px;padding:4px 0;font-size:13px;text-decoration:none;display:inline-flex}.file-details-external-link:hover{text-decoration:underline}.file-details-external-link annot-icon{font-size:16px}.file-details-row-value a,.file-details-row-value a:visited{color:var(--annot-accent);text-decoration:underline}.file-details-row-value a:hover{opacity:.85}.file-details-name-wrap{min-width:0}.file-details-name-input{width:100%;color:var(--annot-text-primary);font:inherit;text-overflow:ellipsis;background:0 0;border:none;border-radius:3px;outline:none;min-width:0;margin:0;padding:0;font-size:13px;line-height:1.45;transition:background .15s,box-shadow .15s;display:block}.file-details-name-input:hover:not(:focus){background:var(--annot-hover-bg);box-shadow:inset 0 -1px 0 var(--annot-border-subtle)}.file-details-name-input:focus{background:var(--annot-input-bg,#ffffff0a);box-shadow:inset 0 0 0 1px var(--annot-accent);text-overflow:clip}.file-details-name-input:disabled{opacity:.55;cursor:wait}.file-details-name-error{color:var(--danger,#ff7070);min-height:0;margin-top:4px;font-size:11px;line-height:1.3}.file-details-name-error:empty,#editor-header{display:none}body.editor-mode #editor-header{background:var(--annot-bg-panel-deep);border-bottom:1px solid var(--annot-border-color);z-index:11;align-items:center;gap:10px;height:48px;padding:0 14px;display:flex;position:absolute;top:0;left:0;right:0;overflow:visible}.editor-header-brand{cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:background .15s;display:flex}.editor-header-brand:hover{background:var(--annot-hover-bg)}.editor-header-brand:focus-visible{outline:2px solid var(--annot-accent);outline-offset:2px}.editor-header-path{flex:0 auto;min-width:0;overflow:hidden}.editor-header-path .breadcrumb-item{text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;overflow:hidden}.editor-header-path .breadcrumb-filename{color:var(--annot-text-primary);flex-shrink:0;font-weight:600}.editor-header-path .breadcrumb-filename:hover{color:var(--annot-text-primary);cursor:default;background:0 0}.editor-header-path .editor-header-info-btn{flex-shrink:0}.editor-header-file-actions{border-right:1px solid var(--annot-border-subtle);flex-shrink:0;align-items:center;gap:2px;margin-right:4px;padding-right:4px;display:flex}.header-save-wrap{align-items:center;gap:0;display:inline-flex}.header-save-wrap .tool-dropdown-arrow{width:14px;height:28px;color:var(--annot-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin-left:-4px;font-size:14px;display:flex;position:static;transform:none}.header-save-wrap .tool-dropdown-arrow:hover{color:var(--annot-accent);background:var(--annot-hover-bg);border-radius:4px}.breadcrumb-filename-input{min-width:160px;max-width:420px;font:inherit;color:var(--annot-text-primary);background:var(--annot-input-bg,#ffffff0a);border:1px solid var(--annot-accent);border-radius:4px;outline:none;flex-shrink:0;padding:1px 6px;font-size:13px;font-weight:600;line-height:1.4}.breadcrumb-filename-input:disabled{opacity:.55;cursor:wait}body.editor-mode #toolbar,body.annot-doc-mode #toolbar,body.split-editor-active #toolbar,#editor-sidebar{display:none}body.editor-mode #editor-sidebar{background:var(--annot-bg-panel);border-right:1px solid var(--annot-border-color);z-index:10;flex-direction:column;align-items:center;gap:2px;width:48px;padding:6px 0;display:flex;position:absolute;top:48px;bottom:28px;left:0;overflow:visible}body.editor-mode #canvas-container{display:block;top:48px;left:48px}#editor-right-panel{display:none}body.editor-mode.has-right-panel #editor-right-panel{background:var(--annot-bg-panel);border-left:1px solid var(--annot-border-color);z-index:10;flex-direction:column;width:280px;display:flex;position:absolute;top:48px;bottom:28px;right:0;overflow-y:auto}body.editor-mode.has-right-panel #canvas-container{right:280px}body.editor-mode.has-right-panel .file-details-drawer,body.editor-mode.has-right-panel .file-details-backdrop{z-index:25}.editor-right-panel-section{border-bottom:1px solid var(--annot-border-subtle);padding:10px 16px}.editor-right-panel-section-title{color:var(--annot-text-primary);margin:0 0 6px;font-size:13px;font-weight:600}.editor-right-panel-actions-row{gap:2px;padding-left:10px;display:flex}.editor-right-panel-actions-row:not(:last-child){margin-bottom:0}.editor-right-panel-actions-row .action-btn-svg>svg{width:22px;height:22px}.editor-right-panel-actions-row .toolbar-btn[data-tooltip]:after{white-space:normal;text-align:center;max-width:180px;line-height:1.3;top:calc(100% + 6px);bottom:auto;left:50%;transform:translate(-50%)}.editor-right-panel-actions-row .toolbar-btn:first-child[data-tooltip]:after{text-align:left;left:0;right:auto;transform:none}.editor-right-panel-actions-row .toolbar-btn:last-child[data-tooltip]:after{text-align:right;left:auto;right:0;transform:none}.annot-apply-redactions-btn{border:1px solid var(--annot-border-color);background:var(--annot-bg-elevated,var(--annot-bg-panel));width:100%;min-height:36px;color:var(--annot-text-primary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:500;transition:background .1s,border-color .1s;display:flex}.annot-apply-redactions-btn:hover:not(:disabled){background:var(--annot-hover-bg);border-color:var(--annot-hover-border)}.annot-apply-redactions-btn:focus-visible{outline:2px solid var(--annot-focus-ring,var(--annot-accent));outline-offset:2px}.annot-apply-redactions-btn:disabled{opacity:.5;cursor:not-allowed}.annot-apply-redactions-btn>annot-icon{flex-shrink:0;font-size:18px}.annot-apply-redactions-btn>.annot-apply-redactions-label{text-align:left;white-space:normal;flex:1;min-width:0;line-height:1.3}.editor-right-panel-empty{text-align:center;color:var(--annot-text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:48px 24px;display:flex}.editor-right-panel-empty-icon{opacity:.4;font-variation-settings:"FILL" 0, "wght" 300, "GRAD" 0, "opsz" 40;font-size:36px}.editor-right-panel-empty-title{color:var(--annot-text-secondary);margin:0;font-size:13px;font-weight:600}.editor-right-panel-empty-hint{max-width:180px;margin:0;font-size:12px;line-height:1.5}.editor-right-panel-scratchpad{border-top:1px solid var(--annot-border-color);background:var(--annot-bg-panel-deep);border-bottom:none;flex-shrink:0;margin-top:auto}.scratchpad-section-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.scratchpad-section-header .editor-right-panel-section-title{margin:0}.scratchpad-save-btn{border:1px solid var(--annot-border-color);width:22px;height:22px;color:var(--annot-text-secondary);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;font-size:14px;transition:background .15s,border-color .15s,color .15s;display:flex}.scratchpad-save-btn:not(:disabled):hover{background:var(--annot-accent-bg);border-color:var(--annot-accent);color:var(--annot-accent)}.scratchpad-save-btn:disabled{opacity:.35;cursor:not-allowed}.scratchpad-save-btn annot-icon{font-size:16px}.scratchpad-grid{grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:6px;display:grid}.scratchpad-item{aspect-ratio:1;background:var(--annot-canvas-bg,#0b1020);border:1px solid var(--annot-border-subtle);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;transition:border-color .15s,transform .15s;display:flex;position:relative;overflow:hidden}.scratchpad-item:hover{border-color:var(--annot-accent);transform:translateY(-1px)}.scratchpad-item.active{border-color:var(--annot-accent);background:var(--annot-accent-bg);box-shadow:0 0 0 1px var(--annot-accent) inset}.scratchpad-item-thumb{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:80%;max-height:80%}.scratchpad-item-delete{color:#fff;cursor:pointer;opacity:0;font-variation-settings:"FILL" 0, "wght" 500, "GRAD" 0, "opsz" 20;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:12px;transition:opacity .15s;display:flex;position:absolute;top:2px;right:2px}.scratchpad-item:hover .scratchpad-item-delete{opacity:1}.scratchpad-item-delete:hover{background:var(--danger,#ff7070)}.scratchpad-empty{color:var(--annot-text-muted);margin:0;font-size:12px;line-height:1.5}.save-status{white-space:nowrap;-webkit-user-select:none;user-select:none;color:var(--annot-text-muted);border-radius:6px;flex-shrink:0;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:500;line-height:1;transition:color .15s,background .15s;display:inline-flex}.save-status-icon{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 20;font-size:14px}.save-status.save-status-saved{color:var(--annot-text-muted)}.save-status.save-status-pending{color:var(--annot-text-secondary)}.save-status.save-status-saving{color:var(--annot-accent)}.save-status.save-status-saving .save-status-icon{animation:1s linear infinite save-status-spin}@keyframes save-status-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.save-status.save-status-error{color:var(--danger,#ff7070);background:#ff70701a}.editor-header-info-btn{width:28px;height:28px;color:var(--annot-text-muted);cursor:pointer;font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 20;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;transition:background .15s,color .15s;display:flex}.editor-header-info-btn:hover{background:var(--annot-hover-bg);color:var(--annot-accent)}.editor-header-info-btn:focus-visible{outline:2px solid var(--annot-accent);outline-offset:2px}.breadcrumb{white-space:nowrap;align-items:center;gap:2px;display:flex;overflow:hidden}.breadcrumb-item{font:inherit;color:var(--annot-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;align-items:center;padding:2px 6px;font-size:13px;font-weight:400;line-height:1.4;display:inline-flex}.breadcrumb-item:hover{background:var(--annot-hover-bg);color:var(--annot-accent)}.breadcrumb-item.active{color:var(--annot-text-primary);cursor:default;font-weight:600}.breadcrumb-item.active:hover{color:var(--annot-text-primary);background:0 0}.breadcrumb-sep{color:var(--annot-text-muted);-webkit-user-select:none;user-select:none;font-size:16px}.gallery-folder{border-style:dashed}.gallery-folder:hover{border-style:solid}.gallery-folder-icon{background:var(--annot-bg-secondary);justify-content:center;align-items:center;display:flex}.gallery-folder-name{font-weight:600}.gallery-panel{margin:0 auto;padding:16px 24px;display:block}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.gallery-empty{text-align:center;color:var(--annot-text-muted);grid-column:1/-1;padding:60px 20px;font-size:14px}.gallery-item{border:1px solid var(--annot-border-color);background:var(--annot-bg-panel);cursor:pointer;border-radius:8px;transition:border-color .15s,transform .15s;overflow:hidden}.gallery-item:hover{border-color:var(--annot-accent);transform:translateY(-2px)}.gallery-thumb{aspect-ratio:16/9;background:#111;overflow:hidden}.gallery-thumb img{object-fit:contain;object-position:center;image-rendering:auto;width:100%;height:100%;image-rendering:-webkit-optimize-contrast;image-rendering:high-quality;display:block}.gallery-document-item .gallery-thumb{background:var(--annot-bg-panel,#2a2a2a);border:1px solid var(--annot-border-color,transparent);justify-content:center;align-items:center;display:flex}.gallery-document-item .gallery-thumb annot-icon{width:56px;height:56px;color:var(--annot-text-secondary,#9ca3af)}.gallery-document-item .gallery-thumb annot-icon svg{width:100%;height:100%}.gallery-item-info{padding:8px 10px;position:relative}.gallery-item-name{color:var(--annot-text-primary);white-space:nowrap;text-overflow:ellipsis;padding-right:20px;font-size:12px;overflow:hidden}.gallery-item-meta{color:var(--annot-text-muted);margin-top:2px;font-size:11px}.gallery-item-delete{color:#fff;text-align:center;cursor:pointer;opacity:0;background:#c8000099;border:none;border-radius:50%;width:20px;height:20px;padding:0;font-size:14px;line-height:20px;transition:opacity .15s;position:absolute;top:6px;right:6px}.gallery-item:hover .gallery-item-delete{opacity:1}.gallery-item-delete:hover{background:#dc0000e6}.gallery-checkbox{color:#888;cursor:pointer;opacity:0;z-index:2;background:#0006;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:opacity .15s;display:flex;position:absolute;top:6px;left:6px}.gallery-checkbox annot-icon{font-size:18px}.gallery-item:hover .gallery-checkbox,.gallery-item.selected .gallery-checkbox{opacity:1}.gallery-item.selected .gallery-checkbox{background:var(--annot-accent);color:#000}.gallery-item.selected{border-color:var(--annot-accent);box-shadow:0 0 0 2px var(--annot-accent)}.gallery-item{position:relative}.gallery-action-bar{align-items:center;gap:8px;display:flex}.gallery-footer-text{color:var(--annot-text-secondary);white-space:nowrap;font-size:12px}.gallery-action-btn{border:1px solid var(--annot-border-color);background:var(--annot-bg-panel);color:var(--annot-text-primary);cursor:pointer;white-space:nowrap;border-radius:4px;align-items:center;gap:3px;padding:2px 10px;font-size:12px;display:flex}.gallery-action-btn:hover{border-color:var(--annot-accent);color:var(--annot-accent)}.gallery-action-danger:hover{color:#e44;border-color:#e44}.folder-picker-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.folder-picker-dialog{background:var(--annot-bg-panel);border:1px solid var(--annot-border-color);border-radius:10px;flex-direction:column;min-width:300px;max-width:450px;max-height:60vh;padding:16px;display:flex;box-shadow:0 8px 32px #0006}.folder-picker-title{color:var(--annot-text-primary);margin-bottom:12px;font-size:15px;font-weight:600}.folder-picker-list{flex-direction:column;flex:1;gap:2px;margin-bottom:12px;display:flex;overflow-y:auto}.folder-picker-item{width:100%;color:var(--annot-text-primary);text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:6px;padding:8px 12px;font-size:13px;display:block;overflow:hidden}.folder-picker-item:hover{background:var(--annot-choice-hover);color:var(--annot-accent)}.folder-picker-cancel{border:1px solid var(--annot-border-color);color:var(--annot-text-secondary);cursor:pointer;background:0 0;border-radius:6px;align-self:flex-end;padding:6px 16px;font-size:13px}.folder-picker-cancel:hover{border-color:var(--annot-accent);color:var(--annot-accent)}.editor-right-panel-elements-hint{color:var(--annot-text-muted);margin:0 0 8px;font-size:11px}.editor-right-panel-elements-search{border:1px solid var(--annot-border-color);background:var(--annot-bg-panel-deep);width:100%;height:28px;color:var(--annot-text-primary);box-sizing:border-box;border-radius:6px;margin-bottom:8px;padding:0 8px;font-size:12px}.editor-right-panel-elements-search:focus{border-color:var(--annot-accent);outline:none}.editor-right-panel-elements-list{flex-direction:column;gap:1px;max-height:320px;margin:0 -4px;display:flex;overflow-y:auto}.editor-right-panel-element-row{cursor:pointer;text-align:left;color:var(--annot-text-primary);background:0 0;border:none;border-radius:4px;align-items:center;gap:8px;width:100%;padding:6px 8px;font-size:12px;transition:background .1s;display:flex}.editor-right-panel-element-row:hover{background:var(--annot-hover-bg)}.editor-right-panel-element-icon{color:var(--annot-text-secondary);flex-shrink:0;font-size:16px}.editor-right-panel-element-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.editor-right-panel-element-sub{color:var(--annot-text-muted);text-transform:lowercase;flex-shrink:0;font-size:10px}.editor-right-panel-elements-empty{color:var(--annot-text-muted);text-align:center;padding:12px 4px;font-size:11px}#toolbar{background:var(--annot-bg-panel);border-bottom:1px solid var(--annot-border-color);z-index:10;align-items:center;gap:4px;height:48px;padding:0 8px;display:flex;position:absolute;top:0;left:0;right:0}.toolbar-group{align-items:center;gap:2px;display:flex}.toolbar-separator{background:var(--annot-border-color);width:1px;height:28px;margin:0 6px}.toolbar-btn{width:36px;height:36px;color:var(--annot-text-primary);cursor:pointer;font-variation-settings:"FILL" 0, "wght" 300, "GRAD" 0, "opsz" 20;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;font-size:20px;transition:background .1s,border-color .1s;display:flex;position:relative}.toolbar-btn:hover{background:var(--annot-hover-bg);border-color:var(--annot-hover-border)}.toolbar-btn.active{background:var(--annot-active-bg);border-color:var(--annot-active-border);color:var(--annot-accent)}:where([data-tooltip]){position:relative}[data-tooltip]:after{content:attr(data-tooltip);background:var(--annot-bg-panel-deep);color:var(--annot-text-primary);font-variation-settings:normal;border:1px solid var(--annot-border-color);white-space:nowrap;pointer-events:none;opacity:0;z-index:100;box-shadow:0 2px 6px var(--annot-shadow,#00000026);border-radius:4px;padding:3px 8px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:11px;font-weight:400;line-height:1.2;transition:opacity .15s;position:absolute;bottom:-40px;left:50%;transform:translate(-50%)}[data-tooltip]:hover:after{opacity:1}.toolbar-input{border:1px solid var(--annot-input-border);background:var(--annot-input-bg);height:28px;color:var(--annot-text-primary);border-radius:4px;padding:0 6px;font-size:12px}.toolbar-color{border:1px solid var(--annot-input-border);cursor:pointer;background:0 0;border-radius:4px;width:28px;height:28px;padding:0}.toolbar-color::-webkit-color-swatch-wrapper{padding:2px}.toolbar-color::-webkit-color-swatch{border:none;border-radius:2px}.toolbar-range{width:60px;accent-color:var(--annot-accent)}.toolbar-label{color:var(--annot-text-secondary);margin-right:2px;font-size:11px}.toolbar-spacer{flex:1}.toolbar-vertical{flex-direction:column;align-items:center;gap:2px;padding:6px 0;display:flex}.toolbar-vertical .toolbar-group{flex-direction:column}.toolbar-vertical .toolbar-separator{width:28px;height:1px;margin:6px 0}.toolbar-vertical .toolbar-spacer{flex:1}.toolbar-vertical .toolbar-btn[data-tooltip]:after{margin-left:12px;top:50%;bottom:auto;left:100%;transform:translateY(-50%)}.toolbar-vertical .tool-dropdown-menu{margin-top:0;margin-left:6px;top:0;left:100%}.copy-dropdown{align-items:center;display:flex;position:relative}.copy-dropdown-arrow{border-top-left-radius:0;border-bottom-left-radius:0;width:20px;margin-left:-2px;padding:0;font-size:10px}.copy-dropdown-menu{background:var(--annot-bg-panel);border:1px solid var(--annot-border-color);box-shadow:0 4px 12px var(--annot-shadow);z-index:100;border-radius:6px;flex-direction:column;margin-top:4px;position:absolute;top:100%;right:0;overflow:hidden}.copy-dropdown-item{width:100%;color:var(--annot-text-primary);text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:8px 16px;font-size:13px;display:block}.copy-dropdown-item:hover{background:var(--annot-choice-hover);color:var(--annot-accent)}.tool-btn-wrap{position:relative}.tool-dropdown-menu{background:var(--annot-bg-panel-deep);border:1px solid var(--annot-border-color);z-index:200;box-shadow:0 4px 16px var(--annot-shadow);white-space:nowrap;border-radius:8px;flex-direction:column;gap:6px;min-width:220px;max-height:calc(100vh - 80px);margin-top:2px;padding:8px 10px;display:flex;position:absolute;top:100%;left:0;overflow-y:auto}.tool-flyout{background:var(--annot-bg-panel-deep);border:1px solid var(--annot-border-color);box-shadow:0 6px 20px var(--annot-shadow);border-radius:8px;gap:4px;padding:6px;display:flex}.tool-flyout-variant .tool-flyout-row{gap:4px;display:flex}.tool-flyout-chip{width:32px;height:32px;color:var(--annot-text-primary);font-variation-settings:"FILL" 0, "wght" 500, "GRAD" 0, "opsz" 24;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;font-size:22px;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.tool-flyout-chip:hover{background:var(--annot-hover-bg);border-color:var(--annot-accent);color:var(--annot-accent)}.tool-flyout-chip.active{background:var(--annot-accent);border-color:var(--annot-accent);color:var(--annot-bg-panel)}.tool-flyout-chip-svg{width:32px;height:32px;color:var(--annot-text-primary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.tool-flyout-chip-svg:hover{background:var(--annot-hover-bg);border-color:var(--annot-accent);color:var(--annot-accent)}.tool-flyout-chip-svg.active{background:var(--annot-accent);border-color:var(--annot-accent);color:var(--annot-bg-panel)}.tool-flyout-chip-svg>svg{width:22px;height:22px}.tool-flyout-highlight .tool-flyout-color-row{gap:6px;display:flex}.tool-flyout-color-chip{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background .12s,border-color .12s;display:inline-flex}.tool-flyout-color-chip:before{content:"";background:var(--swatch-color,transparent);border-radius:3px;width:18px;height:18px;display:block;box-shadow:inset 0 0 0 1px #0000001f}.tool-flyout-color-chip:hover{background:var(--annot-hover-bg);border-color:var(--annot-accent)}.tool-flyout-color-chip.active{background:var(--annot-choice-active,var(--annot-choice-hover,var(--annot-hover-bg)));border-color:var(--annot-accent)}.toolbar-btn{position:relative}.tool-btn-badge{width:12px;height:12px;color:var(--annot-accent);background:var(--annot-bg-panel);box-shadow:0 0 0 1.5px var(--annot-bg-panel);pointer-events:auto;cursor:pointer;font-variation-settings:"FILL" 1, "wght" 600, "GRAD" 0, "opsz" 20;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:10px;line-height:1;transition:transform .12s,box-shadow .12s;display:flex;position:absolute;bottom:-2px;right:-2px}.tool-btn-badge:hover{box-shadow:0 0 0 1.5px var(--annot-bg-panel), 0 0 0 3px var(--annot-accent);transform:scale(1.15)}.tool-btn-badge:before{content:"";border-radius:50%;position:absolute;inset:-6px}.toolbar-btn.active .tool-btn-badge{background:var(--annot-active-bg,var(--annot-bg-panel));box-shadow:0 0 0 1.5px var(--annot-active-bg,var(--annot-bg-panel))}.toolbar-btn.active .tool-btn-badge:hover{box-shadow:0 0 0 1.5px var(--annot-active-bg,var(--annot-bg-panel)), 0 0 0 3px var(--annot-accent)}.tool-btn-badge-svg>svg{width:10px;height:10px;color:var(--annot-accent);stroke:currentColor}.tool-btn-badge-color{color:#0000;box-shadow:0 0 0 1.5px var(--annot-bg-panel);font-size:0}.tool-btn-badge-color:after{content:"";background:var(--swatch-color,transparent);border-radius:2px;width:8px;height:8px;display:block;box-shadow:0 0 0 .5px #00000040}.toolbar-btn.active .tool-btn-badge-color{box-shadow:0 0 0 1.5px var(--annot-active-bg,var(--annot-bg-panel))}.tool-flyout-scratchpad{flex-direction:column;gap:8px;width:264px;max-height:min(420px,100vh - 40px);padding:10px}.prop-panel{background:var(--annot-bg-panel-deep);border:1px solid var(--annot-border-color);z-index:20;box-shadow:0 4px 16px var(--annot-shadow);border-radius:8px;flex-direction:column;gap:8px;min-width:200px;max-height:calc(100vh - 100px);padding:10px 12px;display:flex;position:absolute;top:52px;right:8px;overflow-y:auto}.prop-panel-docked{box-shadow:none;background:0 0;border:none;border-radius:0;min-width:0;max-height:none;padding:6px 16px;position:static;top:auto;right:auto}.prop-row{align-items:center;gap:6px;display:flex}.prop-label{color:var(--annot-text-secondary);flex-shrink:0;width:36px;font-size:11px}.prop-color{border:1px solid var(--annot-input-border);cursor:pointer;background:0 0;border-radius:4px;width:26px;height:26px;padding:0}.prop-color::-webkit-color-swatch-wrapper{padding:2px}.prop-color::-webkit-color-swatch{border:none;border-radius:2px}.prop-btn{border:1px solid var(--annot-input-border);background:var(--annot-chip-bg);width:26px;height:26px;color:var(--annot-text-secondary);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;font-size:13px;display:flex}.prop-btn:hover{border-color:var(--annot-accent);color:var(--annot-accent)}.prop-section{flex-direction:column;gap:4px;display:flex}.prop-section-label{color:var(--annot-text-secondary);border-bottom:1px solid var(--annot-border-color);padding-bottom:2px;font-size:11px}.prop-choice-list{flex-direction:column;gap:1px;display:flex}.prop-choice-item{cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:4px 8px;transition:background .1s;display:flex}.prop-choice-item:hover{background:var(--annot-choice-hover)}.prop-choice-item.active{background:var(--annot-choice-active)}.prop-choice-item svg{flex-shrink:0}.prop-choice-label{color:var(--annot-text-secondary);font-size:11px}.prop-choice-item.active .prop-choice-label{color:var(--annot-accent)}.prop-choice-horizontal{flex-flow:wrap;gap:4px}.prop-choice-chip{width:32px;height:32px;color:var(--annot-text-primary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:22px;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.prop-choice-chip>svg{width:22px;height:22px}.prop-choice-chip:hover{background:var(--annot-hover-bg);border-color:var(--annot-accent);color:var(--annot-accent)}.prop-choice-chip.active{background:var(--annot-accent);border-color:var(--annot-accent);color:var(--annot-bg-panel)}.prop-number-input{border:1px solid var(--annot-input-border);background:var(--annot-input-bg);width:52px;height:26px;color:var(--annot-text-primary);text-align:center;border-radius:4px;padding:0 6px;font-size:13px}.preview-line{stroke:var(--annot-preview-line)}.color-palette{flex-direction:column;gap:2px;display:flex}.color-palette-label{color:var(--annot-text-muted);padding:2px 0;font-size:10px}.color-palette-row{gap:2px;display:flex}.color-swatch{cursor:pointer;border:1px solid #0000;border-radius:2px;width:18px;height:18px;transition:transform .1s}.color-swatch:hover{z-index:1;border-color:var(--annot-accent);transform:scale(1.25)}.color-swatch.active{border:2px solid var(--annot-accent);border-radius:3px}.color-palette-custom{align-items:center;margin-top:4px;display:flex}.color-palette-custom-btn{color:var(--annot-accent);cursor:pointer;background:0 0;border:none;padding:2px 0;font-size:11px}.color-palette-custom-btn:hover{text-decoration:underline}.color-palette-hidden-input{opacity:0;border:none;width:0;height:0;padding:0;position:absolute}.pp-section{margin:8px 0 0}.pp-section:first-child{margin-top:0}.pp-section-header{-webkit-user-select:none;user-select:none;letter-spacing:.7px;text-transform:uppercase;color:var(--annot-text-muted);padding:0 0 4px;font-size:10px;font-weight:700;display:block}.pp-section-body{flex-direction:column;gap:4px;padding-left:10px;display:flex}.pp-radio-list{flex-direction:column;gap:4px;padding:0 0 4px 12px;display:flex}.pp-radio{color:var(--annot-text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:13px;display:flex}.pp-radio input[type=radio]{accent-color:var(--annot-accent);cursor:pointer;margin:0}.pp-row{grid-template-columns:120px 1fr;align-items:center;gap:6px;min-height:24px;display:grid}.pp-row-label{color:var(--annot-text-secondary);white-space:nowrap;font-size:12px;font-weight:400}.pp-number{border:1px solid var(--annot-border-color);background:var(--bg-input,var(--annot-bg-panel));border-radius:4px;align-items:center;min-width:0;height:24px;display:inline-flex;overflow:hidden}.pp-number input{color:var(--annot-text-primary);text-align:right;background:0 0;border:none;outline:none;width:100%;min-width:0;padding:0 4px;font-size:12px}.pp-number input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pp-number input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pp-number input[type=number]{-moz-appearance:textfield}.pp-number-unit{color:var(--annot-text-muted);-webkit-user-select:none;user-select:none;padding-right:4px;font-size:11px}.pp-slider-row{grid-template-columns:108px 1fr 56px;align-items:center;gap:6px;min-height:28px;display:grid}.pp-slider-row input[type=range]{width:100%;accent-color:var(--annot-accent);margin:0}.pp-select{background:var(--bg-input,var(--annot-bg-panel));border:1px solid var(--annot-border-color);height:24px;color:var(--annot-text-primary);cursor:pointer;border-radius:4px;justify-content:space-between;align-items:center;gap:4px;padding:0 2px 0 6px;font-size:12px;display:inline-flex}.pp-select:hover{border-color:var(--annot-accent)}.pp-select:disabled{opacity:.5;cursor:not-allowed}.pp-select-preview{flex:1;align-items:center;gap:4px;min-width:0;display:inline-flex}.pp-select-preview svg{display:block}.pp-select-caret{color:var(--annot-text-muted);font-size:16px}.tool-flyout-pp-select{width:max-content;padding:6px}.pp-select-grid{grid-template-columns:1fr;gap:2px;display:grid}.pp-select-item{color:var(--annot-text-primary);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:flex-start;align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:inline-flex}.pp-select-item:hover{background:var(--annot-hover-bg)}.pp-select-item.active{background:var(--annot-choice-hover,var(--annot-hover-bg));border-color:var(--annot-accent);color:var(--annot-accent)}.pp-select-item svg{flex-shrink:0;display:block}.pp-color-btn{background:var(--bg-input,var(--annot-bg-panel));border:1px solid var(--annot-border-color);cursor:pointer;border-radius:4px;align-items:center;gap:6px;width:100%;height:24px;padding:2px;display:flex}.pp-color-swatch{border:1px solid var(--annot-border-color);border-radius:2px;flex-shrink:0;width:20px;height:16px}.pp-color-btn>span:last-child{color:var(--annot-text-muted);margin-left:auto;font-size:16px}.pp-color-btn span:has(svg){color:var(--annot-text-muted);margin-left:auto;font-size:16px}.pp-color-swatch-none{background:linear-gradient(to top left, transparent 0 calc(50% - .8px), var(--annot-accent,#e74c3c) calc(50% - .8px) calc(50% + .8px), transparent calc(50% + .8px) 100%), #fff}.pp-color-none-btn{background:var(--bg-input,var(--annot-bg-panel));width:100%;color:var(--annot-text-primary);border:1px solid var(--annot-border-color);cursor:pointer;text-align:left;border-radius:4px;margin-bottom:8px;padding:6px 8px;font-size:12px;display:block}.pp-color-none-btn:hover{background:var(--annot-hover-bg);border-color:var(--annot-accent)}.pp-type-row{flex-wrap:wrap;gap:6px;padding:3px;display:flex}.prop-choice-chip.pp-color-chip:before{content:"";background:var(--swatch-color,transparent);border-radius:3px;width:18px;height:18px;display:block;box-shadow:inset 0 0 0 1px #0000001f}.pp-done-row{padding:8px 0 2px;display:flex}.pp-done-btn{border:1px solid var(--annot-accent);background:var(--annot-accent);width:100%;color:var(--annot-bg-panel,#fff);cursor:pointer;border-radius:6px;padding:8px 12px;font-size:13px;font-weight:600;transition:opacity .12s,transform 80ms}.pp-done-btn:hover{opacity:.9}.pp-done-btn:active{transform:translateY(1px)}.pp-row>*,.pp-slider-row>*{min-width:0}.pp-section,.pp-section-body{min-width:0;overflow:hidden}.pp-select{min-width:0;max-width:100%}.pp-select-preview svg{max-width:100%;height:auto}.pp-select-grid{gap:2px}.pp-select-item{justify-content:center;min-height:28px;padding:6px}.pp-select-grid[style*=repeat] .pp-select-item{aspect-ratio:auto;min-width:0}.pp-number-spinner{border-left:1px solid var(--annot-border-color);flex-direction:column;align-self:stretch;display:flex}.pp-number-spinner button{width:14px;min-height:10px;color:var(--annot-text-muted);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;margin:0;padding:0;transition:background .1s,color .1s;display:flex}.pp-number-spinner button:hover{background:var(--annot-hover-bg);color:var(--annot-accent)}.pp-number-spinner button:active{background:var(--annot-choice-hover,var(--annot-hover-bg))}.pp-number-spin-up:before,.pp-number-spin-down:before{content:"";border-left:3px solid #0000;border-right:3px solid #0000;width:0;height:0;display:block}.pp-number-spin-up:before{border-bottom:4px solid}.pp-number-spin-down:before{border-top:4px solid}text[font-family=Annot\ Sans],foreignObject [data-font-family=Annot\ Sans]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,Hiragino Sans,Yu Gothic UI,Yu Gothic,Meiryo,MS PGothic,PingFang SC,Microsoft YaHei,Apple SD Gothic Neo,Malgun Gothic,Nirmala UI,Tahoma,sans-serif,Apple Color Emoji,Segoe UI Emoji}text[font-family=Annot\ Serif],foreignObject [data-font-family=Annot\ Serif]{font-family:Cambria,Georgia,Yu Mincho,Hiragino Mincho ProN,SimSun,Noto Serif CJK SC,serif}text[font-family=Annot\ Mono],foreignObject [data-font-family=Annot\ Mono]{font-family:SF Mono,Menlo,Consolas,Cascadia Mono,Yu Gothic Mono,Noto Sans Mono CJK JP,monospace}annot-icon{vertical-align:middle;color:currentColor;justify-content:center;align-items:center;width:1em;height:1em;line-height:1;display:inline-flex}annot-icon>svg,annot-icon>img{fill:currentColor;flex:none;width:100%;height:100%}.annot-icon-img{flex:none;width:100%;height:100%}.error-bar{z-index:1000;align-items:center;gap:10px;padding:8px 16px;font-size:13px;font-weight:600;display:flex;position:relative}.error-bar-error{color:#ff8a8a;background:#3a1020;border-bottom:1px solid #ff505033}.error-bar-warning{color:#ffc966;background:#3a2a10;border-bottom:1px solid #ffb43c33}.error-bar-info{color:#a0b8ff;background:#10203a;border-bottom:1px solid #7c9cff4d}.error-bar-icon{flex-shrink:0;font-size:18px}.error-bar-message{flex:1}.error-bar-action{color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:700}.error-bar-action:hover{background:#ffffff1a}.error-bar-dismiss{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;padding:0 4px;font-size:18px}.error-bar-dismiss:hover{opacity:1}:root.light .error-bar-error{color:#c41;background:#fff0f0;border-bottom:1px solid #fcc}:root.light .error-bar-warning{color:#a66800;background:#fff8e8;border-bottom:1px solid #eed}:root.light .error-bar-info{color:#46a;background:#f0f4ff;border-bottom:1px solid #dde4f4}.brand{color:inherit;flex-shrink:0;align-items:center;gap:8px;text-decoration:none;display:flex}.brand svg{flex-shrink:0;display:block}.brand-stack{flex-direction:column;line-height:1.15;display:inline-flex}.brand-text{letter-spacing:-.035em;white-space:nowrap;font-family:Sora,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:18px;font-weight:700;line-height:1}.brand-org{letter-spacing:.02em;text-transform:lowercase;white-space:nowrap;color:var(--annot-text-muted);font-size:10px;font-weight:500}.brand-ing,.brand-creators{color:var(--annot-text-primary);transition:color .2s}.brand:hover .brand-ing{color:#7c9cff}.brand:hover .brand-creators{color:#7ef0c5}.connection-bar{background:var(--annot-bg-secondary);border-bottom:1px solid var(--annot-border-color);align-items:center;gap:8px;padding:4px 12px;font-size:11px;display:flex}.connection-dot{background:#666;border-radius:50%;width:8px;height:8px}.connection-dot.extension{background:#4caf50}.connection-dot.local{background:#ff9800}.connection-dot.filesystem{background:#2196f3}.connection-text{color:var(--annot-text-muted)}.upload-area{border:2px dashed var(--annot-border-color);cursor:pointer;color:var(--annot-text-muted);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:12px;margin:20px;padding:40px;transition:border-color .15s;display:flex}.upload-area:hover,.upload-area.dragover{border-color:var(--annot-accent);color:var(--annot-accent)}.upload-icon{opacity:.5;font-size:48px}.upload-text{font-size:14px}.upload-hint{color:var(--annot-text-muted);font-size:12px}.split-editor{background:var(--annot-bg-secondary);z-index:30;flex-direction:column;display:flex;position:fixed;inset:0}body.split-editor-active #canvas-container,body.split-editor-active #statusbar,body.split-editor-active #file-manager,body.split-editor-active #editor-header{display:none}.split-editor-header{background:var(--annot-bg-panel);border-bottom:1px solid var(--annot-border-color);flex:none;grid-template-rows:auto auto auto;grid-template-columns:1fr auto;align-items:center;gap:4px 16px;padding:12px 20px;display:grid}.split-editor-title-row{grid-area:1/1;align-items:baseline;gap:12px;display:flex}.split-editor-title{color:var(--annot-text-primary);font-size:16px;font-weight:700}.split-editor-count{color:var(--annot-text-muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.split-editor-hint{color:var(--annot-text-muted);grid-area:2/1;font-size:12px}.split-editor-actions{grid-area:1/2/span 3;align-items:center;gap:8px;display:flex}.split-editor-btn{cursor:pointer;border:1px solid #0000;border-radius:6px;height:32px;padding:0 16px;font-size:13px;font-weight:600;transition:filter .15s,background .15s}.split-editor-btn:disabled{opacity:.5;cursor:wait}.split-editor-btn:focus-visible{outline:2px solid var(--annot-accent);outline-offset:2px}.split-editor-cancel{color:var(--annot-text-primary);border-color:var(--annot-border-color);background:0 0}.split-editor-cancel:hover{background:#ffffff0f}html.light .split-editor-cancel:hover{background:#0000000a}.split-editor-apply{background:var(--annot-accent,#7c9cff);color:#0b1020;border-color:var(--annot-accent,#7c9cff)}.split-editor-apply:hover{filter:brightness(1.1)}html.light .split-editor-apply{color:#fff}.split-editor-scroll{flex:auto;justify-content:center;align-items:flex-start;padding:24px;display:flex;overflow:auto}.split-editor-stack{-webkit-user-select:none;user-select:none;cursor:crosshair;background:#000;flex:none;position:relative;box-shadow:0 4px 24px #0006}.split-editor-frame{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.split-editor-handle{cursor:ns-resize;background:0 0;justify-content:flex-end;align-items:center;height:16px;margin-top:-8px;padding-right:8px;display:flex;position:absolute;left:0;right:0}.split-editor-handle:focus-visible{outline:2px solid var(--annot-accent);outline-offset:1px}.split-editor-handle-bar{background:var(--annot-accent,#7c9cff);pointer-events:none;height:2px;margin-top:-1px;position:absolute;top:50%;left:0;right:0;box-shadow:0 0 0 1px #00000080}.split-editor-handle:hover .split-editor-handle-bar,.split-editor-handle.dragging .split-editor-handle-bar{height:4px;margin-top:-2px}.split-editor-handle-remove{color:#fff;cursor:pointer;opacity:0;background:#e55;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:14px;font-weight:700;line-height:1;transition:opacity .15s,filter .15s;display:flex;position:relative;box-shadow:0 1px 3px #0006}.split-editor-handle:hover .split-editor-handle-remove,.split-editor-handle:focus-within .split-editor-handle-remove,.split-editor-handle.dragging .split-editor-handle-remove{opacity:1}.split-editor-handle-remove:hover{filter:brightness(1.15)}.split-editor-handle-remove:focus-visible{outline-offset:2px;outline:2px solid #fff}.split-editor-handle-size{color:#fff;white-space:nowrap;font-variant-numeric:tabular-nums;pointer-events:none;letter-spacing:.01em;background:#0f1730d9;border:1px solid #7c9cff66;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;position:absolute;left:8px;box-shadow:0 1px 3px #00000059}.split-editor-handle-size-above{bottom:calc(50% + 4px)}.split-editor-handle-size-below{top:calc(50% + 4px)}html.light .split-editor-handle-size{color:#0b1020;border-color:var(--annot-accent,#7c9cff);background:#fffffff2}.keyboard-help-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.15s ease-out kbd-help-fade-in;display:flex;position:fixed;inset:0}@keyframes kbd-help-fade-in{0%{opacity:0}to{opacity:1}}.keyboard-help-panel{background:var(--annot-bg-panel);border:1px solid var(--annot-border-color);border-radius:10px;flex-direction:column;width:min(720px,100vw - 40px);max-height:calc(100vh - 80px);display:flex;overflow:hidden;box-shadow:0 20px 60px #00000059}.keyboard-help-header{border-bottom:1px solid var(--annot-border-subtle);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.keyboard-help-title{color:var(--annot-text-primary);margin:0;font-size:16px;font-weight:600}.keyboard-help-close{width:32px;height:32px;color:var(--annot-text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:20px;transition:background .12s,color .12s;display:flex}.keyboard-help-close:hover{background:var(--annot-hover-bg);color:var(--annot-text-primary)}.keyboard-help-body{grid-template-columns:repeat(2,1fr);gap:16px 28px;padding:16px 20px;display:grid;overflow-y:auto}.keyboard-help-group{flex-direction:column;gap:6px;display:flex}.keyboard-help-group-title{letter-spacing:.7px;text-transform:uppercase;color:var(--annot-text-muted);border-bottom:1px solid var(--annot-border-subtle);padding-bottom:2px;font-size:10px;font-weight:700}.keyboard-help-row{grid-template-columns:140px 1fr;align-items:center;gap:8px;padding:3px 0;font-size:12px;display:grid}.keyboard-help-keys{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.keyboard-help-plus{color:var(--annot-text-muted);padding:0 1px;font-size:11px}.keyboard-help-kbd{min-width:18px;color:var(--annot-text-primary);background:var(--annot-bg-panel-deep);border:1px solid var(--annot-border-color);text-align:center;letter-spacing:.2px;border-radius:4px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:600;line-height:1.2;display:inline-block;box-shadow:inset 0 -1px #0000001f}.keyboard-help-desc{color:var(--annot-text-secondary)}#draw-session-indicator{z-index:50;background:var(--annot-accent);color:var(--annot-bg-panel,#fff);pointer-events:none;border-radius:20px;align-items:center;gap:8px;padding:6px 14px;font-size:12px;font-weight:500;animation:.2s ease-out draw-indicator-in;display:flex;position:fixed;top:60px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #00000040}#draw-session-indicator annot-icon{font-size:16px}#draw-session-indicator kbd{background:#ffffff40;border:1px solid #ffffff4d;border-radius:3px;margin:0 1px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;font-weight:600;display:inline-block}@keyframes draw-indicator-in{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}#file-manager :focus{outline:none}#file-manager :focus-visible,#file-manager .sidebar-new-btn:focus-visible,#file-manager .sidebar-storage-item:focus-visible,#file-manager .sidebar-storage-reselect:focus-visible,#file-manager .folder-tree-item:focus-visible,#file-manager .folder-tree-chevron:focus-visible,#file-manager .view-toggle-btn:focus-visible,#file-manager .gallery-folder-card:focus-visible,#file-manager .gallery-item:focus-visible,#file-manager .new-menu-item:focus-visible,#file-manager .selection-bar-btn:focus-visible,#file-manager .selection-bar-close:focus-visible,#file-manager .header-info-btn:focus-visible,#file-manager .header-search:focus-visible,#file-manager .breadcrumb-item:focus-visible{outline:2px solid var(--annot-focus-ring,var(--annot-accent));outline-offset:2px;z-index:5}@media (prefers-reduced-motion:reduce){.capture-dialog-overlay *,.capture-progress-toast *,#file-manager *{transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}#file-manager{background:var(--annot-bg-primary);grid-template-columns:240px 1fr;display:grid;position:absolute;inset:48px 0 0}@media (min-width:1600px){#file-manager{grid-template-columns:260px 1fr}}@media (min-width:2400px){#file-manager{grid-template-columns:300px 1fr}}#sidebar{background:var(--annot-bg-secondary);border-right:1px solid var(--annot-border-color);flex-direction:column;gap:4px;padding:12px;display:flex;overflow:hidden auto}.sidebar-new-btn{border:1px solid var(--annot-border-color);background:var(--annot-bg-panel);width:100%;color:var(--annot-text-primary);cursor:pointer;border-radius:16px;align-items:center;gap:8px;margin-bottom:8px;padding:10px 16px;font-size:14px;font-weight:600;transition:background .15s,box-shadow .15s;display:flex;position:relative;box-shadow:0 1px 3px #0000001f}.sidebar-new-btn:hover{background:var(--annot-hover-bg);box-shadow:0 2px 8px #0003}.sidebar-new-btn annot-icon{color:var(--annot-accent);font-size:22px}.new-menu-wrap{position:relative}.new-menu{background:var(--annot-bg-panel);border:1px solid var(--annot-border-color);z-index:200;border-radius:8px;min-width:200px;margin-top:4px;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 4px 16px #0000004d}.new-menu-item{width:100%;color:var(--annot-text-primary);text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:10px;padding:10px 16px;font-size:13px;display:flex}.new-menu-item:hover{background:var(--annot-choice-hover);color:var(--annot-accent)}.new-menu-item annot-icon{color:var(--annot-text-secondary);font-size:20px}.new-menu-item:hover annot-icon{color:var(--annot-accent)}.new-menu-section-header{text-transform:uppercase;letter-spacing:.7px;color:var(--annot-text-muted);-webkit-user-select:none;user-select:none;padding:10px 16px 4px;font-size:10px;font-weight:700}.new-menu-section+.new-menu-section .new-menu-section-header{border-top:1px solid var(--annot-border-subtle);margin-top:4px}.sidebar-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--annot-text-muted);padding:8px 8px 4px;font-size:11px;font-weight:700}.sidebar-storage-item{width:100%;color:var(--annot-text-primary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;transition:background .1s;display:flex;position:relative}.sidebar-storage-item:hover{background:var(--annot-hover-bg)}.sidebar-storage-item.active{background:var(--annot-accent-bg);color:var(--annot-accent)}.sidebar-storage-item.active:before{content:"";background:var(--annot-accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:4px;bottom:4px;left:0}.sidebar-storage-icon{text-align:center;width:24px;color:var(--annot-text-primary);font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;flex-shrink:0;font-size:22px}.sidebar-storage-item.active .sidebar-storage-icon{color:var(--annot-accent)}.sidebar-storage-info{flex:1;min-width:0}.sidebar-storage-label{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.sidebar-storage-status{color:var(--annot-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.sidebar-storage-item.active .sidebar-storage-status{color:var(--annot-accent);opacity:.7}.sidebar-storage-reselect{border:1px solid var(--annot-border-color);background:var(--annot-bg-panel);width:28px;height:28px;color:var(--annot-text-primary);font-variation-settings:"FILL" 0, "wght" 500, "GRAD" 0, "opsz" 24;cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:18px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.sidebar-storage-reselect:hover{background:var(--annot-accent-bg);border-color:var(--annot-accent);color:var(--annot-accent)}.sidebar-storage-item.active .sidebar-storage-reselect{background:var(--annot-bg-panel);border-color:var(--annot-accent);color:var(--annot-accent)}.sidebar-storage-item.active .sidebar-storage-reselect:hover{background:var(--annot-accent);color:var(--annot-bg-panel)}.sidebar-folder-tree{margin-top:4px;padding-left:4px}.folder-tree-item{cursor:pointer;color:var(--annot-text-secondary);white-space:nowrap;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:13px;transition:background .1s;display:flex;overflow:hidden}.folder-tree-item:hover{background:var(--annot-hover-bg);color:var(--annot-text-primary)}.folder-tree-item.active{background:var(--annot-accent-bg);color:var(--annot-accent)}.folder-tree-chevron{width:20px;height:20px;color:var(--annot-text-primary);font-variation-settings:"FILL" 0, "wght" 500, "GRAD" 0, "opsz" 20;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:18px;display:flex}.folder-tree-chevron:hover{background:var(--annot-hover-bg);color:var(--annot-accent)}.folder-tree-icon{color:var(--annot-text-primary);font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 20;flex-shrink:0;font-size:18px}.folder-tree-item.active .folder-tree-icon{color:var(--annot-accent)}.folder-tree-name{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.folder-tree-root-info{flex-direction:column;min-width:0;display:flex}.folder-tree-root-sub{color:var(--annot-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.3;overflow:hidden}.folder-tree-item.active .folder-tree-root-sub{color:var(--annot-accent);opacity:.7}#main-content{flex-direction:column;display:flex;overflow:hidden}.main-content-header{border-bottom:1px solid var(--annot-border-color);flex-shrink:0;align-items:center;gap:8px;height:44px;padding:8px 16px;display:flex}.main-content-header .breadcrumb{flex:1}.header-refresh-btn{border:1px solid var(--annot-border-color);width:36px;height:32px;color:var(--annot-text-primary);cursor:pointer;font-variation-settings:"FILL" 0, "wght" 500, "GRAD" 0, "opsz" 24;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;transition:background .1s,border-color .1s,color .1s;display:flex}.header-refresh-btn:hover{background:var(--annot-hover-bg);border-color:var(--annot-accent);color:var(--annot-accent)}.header-refresh-btn:active annot-icon{transition:transform .3s;transform:rotate(180deg)}.view-toggle{border:1px solid var(--annot-border-color);border-radius:6px;flex-shrink:0;align-items:center;display:flex;overflow:hidden}.view-toggle-btn{width:36px;height:32px;color:var(--annot-text-muted,var(--annot-text-primary));cursor:pointer;font-variation-settings:"wght" 400;background:0 0;border:none;justify-content:center;align-items:center;font-size:22px;transition:background .12s,color .12s,font-variation-settings .12s;display:flex}.view-toggle-btn:hover{background:var(--annot-hover-bg);color:var(--annot-text-primary)}.view-toggle-btn.active{color:var(--annot-accent);font-variation-settings:"wght" 600;background:#7c9cff38}html.light .view-toggle-btn.active{color:var(--annot-accent);background:#7c9cff38}.view-toggle-btn:focus-visible{outline:2px solid var(--annot-accent);outline-offset:-2px;z-index:1}.view-toggle-btn+.view-toggle-btn{border-left:1px solid var(--annot-border-color)}.app-dialog-overlay{z-index:1500;background:#0000008c;justify-content:center;align-items:center;animation:.12s ease-out app-dialog-fade;display:flex;position:fixed;inset:0}@keyframes app-dialog-fade{0%{opacity:0}to{opacity:1}}.app-dialog{background:var(--annot-bg-panel);border:1px solid var(--annot-border-color);border-radius:12px;flex-direction:column;gap:14px;min-width:360px;max-width:480px;padding:22px 24px 18px;animation:.14s cubic-bezier(.2,0,.2,1) app-dialog-pop;display:flex;box-shadow:0 16px 48px #00000080}@keyframes app-dialog-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.app-dialog-title{color:var(--annot-text-primary);font-size:17px;font-weight:600;line-height:1.3}.app-dialog-message{color:var(--annot-text-secondary);white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.5}.app-dialog-body{flex-direction:column;gap:8px;display:flex}.app-dialog-input{border:1px solid var(--annot-input-border);background:var(--annot-input-bg);width:100%;height:40px;color:var(--annot-text-primary);border-radius:8px;outline:none;padding:0 12px;font-size:14px;transition:border-color .15s}.app-dialog-input:focus{border-color:var(--annot-accent);box-shadow:0 0 0 2px var(--annot-accent-bg)}.app-dialog-input option{background-color:var(--annot-bg-panel);color:var(--annot-text-primary)}.app-dialog-input[aria-invalid=true]{border-color:#e44}.app-dialog-error{color:#ff8a8a;font-size:12px}:root.light .app-dialog-error{color:#c41}.app-dialog-actions{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.app-dialog-btn{border:1px solid var(--annot-border-color);min-width:84px;height:36px;color:var(--annot-text-primary);cursor:pointer;background:0 0;border-radius:8px;padding:0 16px;font-size:13px;font-weight:500;transition:background .12s,border-color .12s,color .12s}.app-dialog-cancel:hover{background:var(--annot-hover-bg);border-color:var(--annot-hover-border)}.app-dialog-primary{background:var(--annot-accent);border-color:var(--annot-accent);color:var(--annot-bg-primary)}.app-dialog-primary:hover{opacity:.88}.app-dialog-danger{color:#fff;background:#c83737;border-color:#c83737}.app-dialog-actions-stack{flex-wrap:wrap;justify-content:flex-end;gap:8px}.app-dialog-checkbox-row{color:var(--annot-text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:flex}.app-dialog-checkbox-row input[type=checkbox]{cursor:pointer;margin:0}.app-dialog-danger:hover{background:#e44;border-color:#e44}.app-dialog-btn:focus-visible,.app-dialog-input:focus-visible{outline:2px solid var(--annot-focus-ring,var(--annot-accent));outline-offset:2px}.capture-dialog-overlay{z-index:1000;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.capture-dialog{background:var(--annot-bg-panel);border:1px solid var(--annot-border-color);border-radius:12px;flex-direction:column;gap:18px;min-width:340px;max-width:420px;max-height:calc(100vh - 32px);padding:20px 22px;display:flex;box-shadow:0 12px 40px #00000080}.capture-dialog-body{flex-direction:column;flex:auto;gap:18px;min-height:0;margin-right:-22px;padding-right:22px;display:flex;overflow-y:auto}.capture-dialog-title{color:var(--annot-text-primary);font-size:16px;font-weight:700}.capture-dialog-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.capture-dialog-label{color:var(--annot-text-secondary);font-size:13px;font-weight:400}.capture-dialog-input{background:var(--annot-input-bg);border:1px solid var(--annot-input-border);width:100px;height:32px;color:var(--annot-text-primary);text-align:right;border-radius:6px;outline:none;padding:0 10px;font-size:13px}.capture-dialog-input:focus{border-color:var(--annot-accent)}.capture-dialog-select{background:var(--annot-input-bg);border:1px solid var(--annot-input-border);width:240px;height:32px;color:var(--annot-text-primary);cursor:pointer;border-radius:6px;outline:none;padding:0 8px;font-size:13px}.capture-dialog-select:focus{border-color:var(--annot-accent)}.capture-dialog-select option{background-color:var(--annot-bg-panel);color:var(--annot-text-primary)}.capture-dialog-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.capture-dialog-btn{border:1px solid var(--annot-border-color);color:var(--annot-text-primary);cursor:pointer;background:0 0;border-radius:6px;padding:7px 16px;font-size:13px;font-weight:500}.capture-dialog-btn:hover{background:var(--annot-hover-bg);border-color:var(--annot-hover-border)}.capture-dialog-btn-primary{background:var(--annot-accent);border-color:var(--annot-accent);color:var(--annot-bg-panel)}.capture-dialog-btn-primary:hover{background:var(--annot-accent);opacity:.85}.capture-dialog-btn[disabled],.capture-dialog-btn-primary[disabled]{opacity:.45;cursor:not-allowed}.capture-dialog-btn[disabled]:hover,.capture-dialog-btn-primary[disabled]:hover{opacity:.45;background:0 0}.capture-dialog-btn-primary[disabled]:hover{background:var(--annot-accent)}.capture-screen-dialog{min-width:420px;max-width:520px}.capture-screen-mode-list{flex-direction:column;gap:6px;display:flex}.capture-screen-mode-chip{border:1px solid var(--annot-border-color);color:var(--annot-text-primary);text-align:left;cursor:pointer;font:inherit;background:0 0;border-radius:8px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.capture-screen-mode-chip:hover:not(:disabled){background:var(--annot-hover-bg);border-color:var(--annot-hover-border)}.capture-screen-mode-chip-active{border-color:var(--annot-accent);box-shadow:inset 0 0 0 1px var(--annot-accent)}.capture-screen-mode-chip-disabled,.capture-screen-mode-chip:disabled{opacity:.55;cursor:not-allowed}.capture-screen-mode-label{align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.capture-screen-mode-coming-soon{color:var(--annot-text-secondary);border:1px solid var(--annot-border-color);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:500}.capture-screen-mode-desc{color:var(--annot-text-secondary);font-size:12px;line-height:1.4}.capture-dialog-advanced{border-top:1px solid var(--annot-border-color);flex-direction:column;gap:16px;padding-top:16px;display:flex}.capture-dialog-advanced-summary{cursor:pointer;text-transform:uppercase;letter-spacing:.7px;color:var(--annot-text-muted);-webkit-user-select:none;user-select:none;padding:4px 0;font-size:10px;font-weight:700;list-style:none}.capture-dialog-advanced-summary:hover{color:var(--annot-text-secondary)}.capture-dialog-advanced-summary::marker{display:none}.capture-dialog-advanced-summary::-webkit-details-marker{display:none}.capture-dialog-advanced-summary:before{content:"▸";margin-right:6px;transition:transform .15s;display:inline-block}.capture-dialog-advanced[open] .capture-dialog-advanced-summary:before{content:"▾"}.capture-dialog-section{flex-direction:column;gap:10px;padding-left:10px;display:flex}.capture-dialog-section-title{text-transform:uppercase;letter-spacing:.7px;color:var(--annot-text-muted);margin:0 0 6px -10px;font-size:10px;font-weight:700}.capture-dialog-advanced .capture-dialog-section+.capture-dialog-section{margin-top:16px}.capture-dialog-row-checkbox{justify-content:flex-start;gap:8px}.capture-dialog-row-checkbox input[type=checkbox]{width:16px;height:16px}.capture-workspace{background:var(--annot-bg-canvas,#1a1a1a);color:var(--annot-text-primary);flex-direction:column;display:flex;position:absolute;inset:0}.capture-workspace-header{border-bottom:1px solid var(--annot-border-color);background:var(--annot-bg-panel);flex-shrink:0;align-items:center;gap:16px;padding:8px 16px;font-size:13px;display:flex}.capture-workspace-header-status{align-items:center;gap:6px;font-weight:600;display:inline-flex}.capture-workspace-status-dot{background:#44d27e;border-radius:50%;width:8px;height:8px;display:inline-block}.capture-workspace-header-mode,.capture-workspace-header-folder{color:var(--annot-text-secondary)}.capture-workspace-header-spacer{flex:1}.capture-workspace-exit-btn{border:1px solid var(--annot-border-color);color:var(--annot-text-primary);cursor:pointer;background:0 0;border-radius:6px;padding:6px 14px;font-size:13px}.capture-workspace-exit-btn:hover{background:var(--annot-hover-bg);border-color:var(--annot-hover-border)}.capture-workspace-body{flex:1;min-height:0;display:flex}.capture-workspace-main{flex-direction:column;flex:1;gap:12px;min-width:0;min-height:0;padding:16px;display:flex}.capture-workspace-side{border-left:1px solid var(--annot-border-color);background:var(--annot-bg-panel);flex-direction:column;flex-shrink:0;width:380px;min-height:0;display:flex}.capture-workspace-empty{text-align:center;color:var(--annot-text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.capture-workspace-empty-title{color:var(--annot-text-primary);font-size:16px;font-weight:600}.capture-workspace-empty-body{max-width:420px;font-size:13px;line-height:1.5}.capture-workspace-empty-btn{border:1px solid var(--annot-accent);background:var(--annot-accent);color:var(--annot-bg-panel);cursor:pointer;border-radius:6px;margin-top:8px;padding:8px 18px;font-size:13px;font-weight:600}.capture-preview{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.capture-preview-frame{border:1px solid var(--annot-border-color);background:#000;border-radius:8px;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.capture-preview-video{max-width:100%;max-height:100%;display:block}.capture-preview-status{color:#fff;pointer-events:none;background:#000000b3;border-radius:6px;padding:6px 12px;font-size:12px;position:absolute;bottom:12px;left:12px}.capture-preview-meta{color:var(--annot-text-secondary);text-align:right;font-size:12px}.capture-toolbar{background:var(--annot-bg-panel);border:1px solid var(--annot-border-color);border-radius:8px;flex-shrink:0;align-items:center;gap:8px;padding:8px;display:flex}.capture-toolbar-btn{border:1px solid var(--annot-border-color);color:var(--annot-text-primary);cursor:pointer;background:0 0;border-radius:6px;padding:7px 14px;font-size:13px;font-weight:500}.capture-toolbar-btn:hover:not([disabled]){background:var(--annot-hover-bg);border-color:var(--annot-hover-border)}.capture-toolbar-btn[disabled]{opacity:.45;cursor:not-allowed}.capture-toolbar-btn-primary{background:var(--annot-accent);border-color:var(--annot-accent);color:var(--annot-bg-panel)}.capture-toolbar-btn-primary:hover:not([disabled]){opacity:.85}.capture-toolbar-btn-stop{color:#d24444;border-color:#d24444}.capture-toolbar-btn-stop:hover:not([disabled]){color:#fff;background:#d24444}.capture-toolbar-spacer{flex:1}.capture-workspace-side>annot-candidate-panel{flex-direction:column;flex:auto;min-height:0;display:flex}.candidate-panel{flex-direction:column;height:100%;min-height:0;display:flex}.candidate-panel-header{border-bottom:1px solid var(--annot-border-color);padding:12px 16px;font-size:13px;font-weight:600}.candidate-panel-body{flex:1;min-height:0;padding:12px 16px;overflow-y:auto}.candidate-panel-empty{text-align:center;color:var(--annot-text-secondary);padding:24px 0;font-size:13px}.candidate-panel-empty-sub{margin-top:8px;font-size:12px;line-height:1.5}.candidate-panel-placeholder{text-align:center;color:var(--annot-text-secondary);padding:24px 0;font-size:12px;font-style:italic}.candidate-card{border:1px solid var(--annot-border-color);background:var(--annot-bg-canvas);border-radius:8px;flex-direction:column;gap:8px;margin-bottom:10px;padding:10px;display:flex}.candidate-card-thumb{aspect-ratio:16/9;background:#000;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:100%;min-height:120px;display:flex;overflow:hidden}.candidate-card-thumb img{object-fit:contain;background:#000;width:100%;height:100%;display:block}.candidate-card-thumb-placeholder{color:var(--annot-text-secondary);text-align:center;font-size:11px}.candidate-card-body{flex-direction:column;gap:8px;min-width:0;display:flex}.candidate-card-meta{color:var(--annot-text-secondary);justify-content:space-between;align-items:center;gap:6px;font-size:12px;display:flex}.candidate-card-status{border:1px solid var(--annot-border-color);border-radius:999px;padding:1px 6px;font-size:11px}.candidate-card-status-accepted{color:#44d27e;background:#44d27e26;border-color:#44d27e66}.candidate-card-actions{gap:4px;display:flex}.candidate-card-btn{border:1px solid var(--annot-border-color);color:var(--annot-text-primary);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-size:12px}.candidate-card-btn:hover:not([disabled]){background:var(--annot-hover-bg);border-color:var(--annot-hover-border)}.candidate-card-btn[disabled]{opacity:.4;cursor:not-allowed}.candidate-card-btn-primary{background:var(--annot-accent);border-color:var(--annot-accent);color:var(--annot-bg-panel);font-weight:500}.candidate-card-btn-primary:hover:not([disabled]){opacity:.85}.candidate-card-btn-danger{color:#d24444;border-color:#d24444}.candidate-card-btn-danger:hover:not([disabled]){color:#fff;background:#d24444}.capture-workspace-dev-tools{justify-content:flex-end;padding:4px 0;display:flex}.capture-workspace-dev-btn{border:1px dashed var(--annot-border-color);color:var(--annot-text-secondary);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-size:11px}.capture-workspace-dev-btn:hover{background:var(--annot-hover-bg)}.capture-progress-toast{background:var(--annot-bg-panel);border:1px solid var(--annot-border-color);z-index:1000;border-radius:10px;align-items:center;gap:10px;min-width:320px;padding:10px 14px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #0006}.capture-progress-icon{color:var(--annot-accent);font-size:20px}.capture-progress-text{color:var(--annot-text-primary);white-space:nowrap;flex:1;font-size:13px}.capture-progress-bar{background:var(--annot-border-color);border-radius:2px;flex-shrink:0;width:120px;height:4px;overflow:hidden}.capture-progress-bar-fill{background:var(--annot-accent);width:0%;height:100%;transition:width .25s}.capture-progress-cancel{border:1px solid var(--annot-border-color);color:var(--annot-text-secondary);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-size:12px}.capture-progress-cancel:hover{color:#e44;border-color:#e44}.selection-bar{background:var(--annot-accent-bg);border-bottom:1px solid var(--annot-border-color);color:var(--annot-text-primary);white-space:nowrap;flex-shrink:0;align-items:center;gap:12px;height:44px;padding:8px 16px;display:flex;overflow:hidden}.selection-bar-close{color:var(--annot-text-primary);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:20px;display:flex}.selection-bar-close:hover{background:var(--annot-hover-bg)}.selection-bar-count{color:var(--annot-text-primary);text-overflow:ellipsis;min-width:0;font-size:14px;font-weight:500;overflow:hidden}.selection-bar-spacer{flex:1}.selection-bar-btn{border:1px solid var(--annot-border-color);background:var(--annot-bg-panel);color:var(--annot-text-primary);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:background .1s,border-color .1s,color .1s;display:flex}.selection-bar-btn annot-icon{font-size:18px}.selection-bar-btn:hover{background:var(--annot-hover-bg);border-color:var(--annot-accent);color:var(--annot-accent)}.selection-bar-btn-danger:hover{color:#e44;background:#dc000014;border-color:#e44}.gallery-card-more{width:28px;height:28px;color:var(--annot-text-primary);font-variation-settings:"FILL" 0, "wght" 500, "GRAD" 0, "opsz" 20;cursor:pointer;opacity:0;z-index:3;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:18px;transition:opacity .12s,background .12s;display:flex;position:absolute}.gallery-item .gallery-card-more{top:4px;right:4px}.gallery-folder-card .gallery-card-more{top:50%;right:6px;transform:translateY(-50%)}.gallery-item:hover .gallery-card-more,.gallery-folder-card:hover .gallery-card-more,.gallery-item:focus-within .gallery-card-more,.gallery-folder-card:focus-within .gallery-card-more,.gallery-item.selected .gallery-card-more,.gallery-folder-card.selected .gallery-card-more{opacity:1}.gallery-card-more:hover{background:#ffffff24}:root.light .gallery-card-more:hover{background:#00000014}.gallery-item .gallery-card-more{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#fff;background:#0f17308c}.gallery-item .gallery-card-more:hover{background:#0f1730d9}.context-menu{background:var(--annot-bg-panel);border:1px solid var(--annot-border-color);z-index:2000;border-radius:8px;flex-direction:column;gap:2px;min-width:180px;padding:4px;display:flex;position:fixed;box-shadow:0 8px 32px #0006}.context-menu-item{width:100%;color:var(--annot-text-primary);text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:flex}.context-menu-item:hover,.context-menu-item:focus-visible{background:var(--annot-hover-bg);outline:none}.context-menu-icon{color:var(--annot-text-secondary);flex-shrink:0;font-size:18px}.context-menu-item:hover .context-menu-icon{color:var(--annot-accent)}.context-menu-item-danger,.context-menu-item-danger .context-menu-icon{color:#e85858}.context-menu-item-danger:hover{color:#e85858;background:#e444441f}.gallery-item,.gallery-folder-card{-webkit-user-select:none;user-select:none;position:relative}.gallery-folder-card.selected,.gallery-item.selected{border-color:var(--annot-accent);box-shadow:0 0 0 2px var(--annot-accent);background:#7c9cff1f}.gallery-folder-card.selected .gallery-folder-card-icon{color:var(--annot-accent)}.gallery-folder-card.selected:after,.gallery-item.selected:after{content:"";background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='%23fff'><path d='M378-246 154-470l43-43 181 181 384-384 43 43-427 427Z'/></svg>");background-position:50%;background-repeat:no-repeat;background-size:16px 16px;background-color:var(--annot-accent);z-index:5;pointer-events:none;border-radius:50%;width:24px;height:24px;position:absolute;top:8px;left:8px;box-shadow:0 0 0 1px #0000002e,0 2px 8px #00000073}html.light .gallery-folder-card.selected,html.light .gallery-item.selected{background:#7c9cff24}html.light .gallery-folder-card.selected:after,html.light .gallery-item.selected:after{box-shadow:0 0 0 1px #0000001f,0 2px 8px #00000038}.main-content-body{background:var(--annot-bg-primary);flex:1;overflow-y:auto}.file-manager-body{position:relative}.file-manager-drop-overlay{pointer-events:none;background:color-mix(in srgb, var(--annot-accent,#4a90e2) 12%, transparent);z-index:5;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.file-manager-drop-overlay-card{border:2px dashed var(--annot-accent,#4a90e2);background:var(--annot-bg-secondary,#fff);color:var(--annot-text-primary);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:8px;min-width:260px;padding:28px 40px;display:flex;box-shadow:0 8px 24px #00000026}.file-manager-drop-overlay-card annot-icon{width:36px;height:36px;color:var(--annot-accent,#4a90e2)}.file-manager-drop-overlay-title{font-size:16px;font-weight:600}.file-manager-drop-overlay-subtitle{color:var(--annot-text-secondary);font-size:13px}.main-content-footer{border-top:1px solid var(--annot-border-color);flex-shrink:0;align-items:center;min-height:28px;padding:4px 16px;display:flex}.gallery-grid{display:block}.gallery-grid .gallery-empty{text-align:center;color:var(--annot-text-muted);padding:60px 20px}.gallery-section-header{color:var(--annot-text-secondary);letter-spacing:.05em;text-transform:uppercase;padding:12px 4px 8px;font-size:13px;font-weight:600}.gallery-folder-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin-bottom:12px;display:grid}.gallery-image-grid,.gallery-document-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}@media (min-width:1600px){.gallery-image-grid,.gallery-document-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.gallery-folder-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (min-width:2400px){.gallery-image-grid,.gallery-document-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.gallery-folder-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}.gallery-folder-card{border:1px solid var(--annot-border-color);background:var(--annot-bg-panel);cursor:pointer;border-radius:8px;align-items:center;gap:10px;min-width:0;padding:10px 12px;transition:background .1s,border-color .1s;display:flex;position:relative}.gallery-folder-card:hover{background:var(--annot-hover-bg);border-color:var(--annot-accent)}.gallery-folder-card-icon{color:var(--annot-text-primary);font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;flex-shrink:0;font-size:24px}.gallery-folder-card:hover .gallery-folder-card-icon{color:var(--annot-accent)}.gallery-folder-card-name{min-width:0;color:var(--annot-text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;font-weight:500;overflow:hidden}.gallery-folder-card-delete{width:24px;height:24px;color:var(--annot-text-secondary);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:opacity .15s,background .15s,color .15s;display:flex}.gallery-folder-card-delete annot-icon{font-size:16px}.gallery-folder-card:hover .gallery-folder-card-delete{opacity:1}.gallery-folder-card-delete:hover{color:#e44;background:#dc000026}.gallery-grid.list-view{flex-direction:column;display:flex}.list-section{display:block;position:relative}.list-section+.list-section{margin-top:16px}.list-section-bar{z-index:2;background:var(--annot-bg-primary);border-bottom:1px solid var(--annot-border-color);-webkit-user-select:none;user-select:none;position:sticky;top:0}.list-section-title{color:var(--annot-text-secondary);letter-spacing:.05em;text-transform:uppercase;padding:10px 4px 4px;font-size:13px;font-weight:600}.list-column-headers{grid-template-columns:minmax(0,1fr) 180px 160px 32px;align-items:center;gap:8px;padding:0 4px;display:grid}.list-col-header{font:inherit;color:var(--annot-text-secondary);text-align:left;cursor:pointer;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;min-width:0;padding:6px 8px;font-size:11px;font-weight:600;display:flex}.list-col-header:hover{background:var(--annot-hover-bg);color:var(--annot-text-primary)}.list-col-header.sorted{color:var(--annot-text-primary)}.list-col-label{text-overflow:ellipsis;min-width:0;overflow:hidden}.list-sort-indicator{flex-shrink:0;font-size:14px}.list-rows{flex-direction:column;padding:4px 0;display:flex}.list-row{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;grid-template-columns:minmax(0,1fr) 180px 160px 32px;align-items:center;gap:8px;min-height:36px;padding:0 8px;transition:background .1s;display:grid;position:relative}.list-row:hover{background:var(--annot-hover-bg)}.list-row.selected{background:#7c9cff2e}html.light .list-row.selected{background:#7c9cff24}.list-row:focus-visible{outline:2px solid var(--annot-accent);outline-offset:-2px}.list-cell{color:var(--annot-text-primary);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;overflow:hidden}.list-cell-name{align-items:center;gap:10px;display:flex}.list-cell-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.list-cell-modified,.list-cell-size{color:var(--annot-text-secondary);font-size:12px}.list-row-icon{color:var(--annot-text-secondary);flex-shrink:0;font-size:20px}.list-row-folder .list-row-icon{color:var(--annot-text-primary)}.list-row-folder:hover .list-row-icon{color:var(--annot-accent)}.list-row-more{width:28px;height:28px;color:var(--annot-text-secondary);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .15s,background .15s,color .15s;display:flex}.list-row:hover .list-row-more,.list-row.selected .list-row-more,.list-row-more:focus-visible{opacity:1}.list-row-more:hover{background:var(--annot-hover-bg);color:var(--annot-text-primary)}.list-row-more annot-icon{font-size:18px}@media (max-width:720px){.list-column-headers,.list-row{grid-template-columns:minmax(0,1fr) 120px 32px}.list-col-modified,.list-cell-modified{display:none}}@media (max-width:480px){.list-column-headers,.list-row{grid-template-columns:minmax(0,1fr) 32px}.list-col-size,.list-cell-size{display:none}}.file-manager-placeholder{height:100%;color:var(--annot-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.file-manager-placeholder annot-icon{opacity:.3;font-size:64px}.file-manager-placeholder-text{font-size:15px}.file-manager-placeholder-hint{opacity:.7;font-size:13px}.header-search{border:1px solid var(--annot-border-color);background:var(--annot-input-bg);width:100%;height:38px;color:var(--annot-text-primary);border-radius:8px;outline:none;padding:0 12px 0 38px;font-size:14px;transition:border-color .15s}.header-search:focus{border-color:var(--annot-accent)}#toolbar .brand{box-sizing:border-box;width:232px;margin-right:0;padding-left:9px}@media (min-width:1600px){#toolbar .brand{width:252px}}@media (min-width:2400px){#toolbar .brand{width:292px}}.header-search-wrap{flex:auto;align-items:center;min-width:200px;max-width:640px;margin-left:0;margin-right:32px;display:flex;position:relative}@media (min-width:1600px){.header-search-wrap{max-width:800px}}@media (min-width:2400px){.header-search-wrap{max-width:960px}}.header-search-icon{color:var(--annot-text-secondary);pointer-events:none;font-size:20px;position:absolute;left:12px}.gdrive-icon{flex-shrink:0;width:20px;height:20px}.header-info-btn{width:36px;height:36px;color:var(--annot-text-primary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:22px;display:flex}.header-info-btn:hover{background:var(--annot-hover-bg);color:var(--annot-text-primary)}
