.login-spinner[data-v-822e1295]{display:flex;justify-content:center;align-items:center;margin:1.5rem 0}.login-spinner svg[data-v-822e1295]{width:40px;height:40px;animation:rotate-822e1295 2s linear infinite;color:var(--color-primary)}.login-spinner circle[data-v-822e1295]{stroke-dasharray:90,150;stroke-dashoffset:0;stroke-linecap:round;animation:dash-822e1295 1.5s ease-in-out infinite}@keyframes rotate-822e1295{to{transform:rotate(360deg)}}@keyframes dash-822e1295{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.login-button-cancel[data-v-822e1295]{background-color:var(--color-surface-hover);color:var(--color-text-primary);border:1px solid var(--color-border)}.login-button-cancel[data-v-822e1295]:hover{background-color:var(--color-border)}.hk-backdrop[data-v-b389ee3a]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hk-panel[data-v-b389ee3a]{width:min(820px,94vw);max-height:85vh;display:flex;flex-direction:column;border-radius:16px;background:var(--bg-card, #fff);border:1px solid var(--border-default, #e2e2e2);box-shadow:0 24px 64px #0000002e;overflow:hidden}.hk-header[data-v-b389ee3a]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--border-default, #e2e2e2)}.hk-title[data-v-b389ee3a]{margin:0;font-size:1.15rem;font-weight:700;color:var(--text-primary, #111)}.hk-close[data-v-b389ee3a]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:transparent;cursor:pointer;color:var(--text-muted, #888);transition:background .15s,color .15s}.hk-close[data-v-b389ee3a]:hover{background:var(--bg-hover, rgba(0,0,0,.06));color:var(--text-primary, #111)}.hk-body[data-v-b389ee3a]{flex:1 1 auto;overflow-y:auto;padding:20px 24px 16px}.hk-columns[data-v-b389ee3a]{display:grid;grid-template-columns:1fr 1fr;gap:32px}@media(max-width:640px){.hk-columns[data-v-b389ee3a]{grid-template-columns:1fr;gap:20px}}.hk-tutorial[data-v-b389ee3a]{padding-right:12px;border-right:1px solid var(--border-default, #e8e8e8)}@media(max-width:640px){.hk-tutorial[data-v-b389ee3a]{padding-right:0;border-right:none;padding-bottom:16px;border-bottom:1px solid var(--border-default, #e8e8e8)}}.hk-tutorial-title[data-v-b389ee3a]{margin:0 0 14px;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted, #888)}.hk-tutorial-section[data-v-b389ee3a]{margin-bottom:14px}.hk-tutorial-section[data-v-b389ee3a]:last-child{margin-bottom:0}.hk-tutorial-section h4[data-v-b389ee3a]{margin:0 0 4px;font-size:.85rem;font-weight:600;color:var(--text-primary, #222)}.hk-tutorial-section p[data-v-b389ee3a]{margin:0;font-size:.8rem;line-height:1.5;color:var(--text-secondary, #555)}.hk-tutorial-section kbd[data-v-b389ee3a]{display:inline-block;padding:1px 5px;font-size:.75rem;font-family:inherit;font-weight:600;color:var(--text-primary, #222);background:var(--bg-input, #f0f0f0);border:1px solid var(--border-input, #d4d4d4);border-radius:4px;box-shadow:0 1px 1px #0000000d}.hk-bindings[data-v-b389ee3a]{min-width:0}.hk-group-label[data-v-b389ee3a]{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted, #888);margin-top:16px;margin-bottom:6px}.hk-group-label[data-v-b389ee3a]:first-child{margin-top:0}.hk-list[data-v-b389ee3a]{display:grid;gap:2px}.hk-row[data-v-b389ee3a]{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;border-radius:8px;transition:background .12s}.hk-row[data-v-b389ee3a]:hover:not(.fixed){background:var(--bg-hover, rgba(0,0,0,.035))}.hk-action[data-v-b389ee3a]{font-size:.88rem;color:var(--text-primary, #222)}.hk-key-cell[data-v-b389ee3a]{display:flex;align-items:center;gap:8px;min-width:90px;justify-content:flex-end}.hk-kbd[data-v-b389ee3a]{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:28px;padding:0 10px;border-radius:6px;font-size:.8rem;font-family:inherit;font-weight:600;color:var(--text-primary, #222);background:var(--bg-input, #f5f5f5);border:1px solid var(--border-input, #d4d4d4);box-shadow:0 1px 2px #0000000f;cursor:default;-webkit-user-select:none;user-select:none}.hk-kbd.fixed[data-v-b389ee3a]{opacity:.7;font-size:.75rem}button.hk-kbd[data-v-b389ee3a]{-webkit-appearance:none;-moz-appearance:none;appearance:none}button.hk-kbd.fixed[data-v-b389ee3a]{cursor:default}button.hk-kbd.editable[data-v-b389ee3a]{cursor:pointer;transition:border-color .12s,background .12s}button.hk-kbd.editable[data-v-b389ee3a]:hover{border-color:var(--btn-blue-bg, #2563eb)}button.hk-kbd.editable.listening[data-v-b389ee3a]{border-color:var(--btn-blue-bg, #2563eb);background:color-mix(in srgb,var(--btn-blue-bg, #2563eb) 12%,var(--bg-input, #f5f5f5));color:var(--btn-blue-bg, #2563eb)}.hk-reset[data-v-b389ee3a]{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--text-muted, #888);cursor:pointer;flex-shrink:0}.hk-reset[data-v-b389ee3a]:hover{background:var(--bg-hover, rgba(0,0,0,.06));color:var(--text-primary, #222)}.hk-footer[data-v-b389ee3a]{display:flex;align-items:center;justify-content:flex-end;padding:12px 24px 14px;border-top:1px solid var(--border-default, #e2e2e2);gap:12px}.hk-hint[data-v-b389ee3a]{font-size:.72rem;color:var(--text-muted, #999)}.hk-conflict[data-v-b389ee3a]{font-size:.72rem;color:var(--btn-danger-bg, #dc2626);flex:1}.hk-reset-all[data-v-b389ee3a]{font-size:.75rem;font-weight:600;padding:6px 10px;border-radius:8px;border:1px solid var(--border-default, #e2e2e2);background:transparent;color:var(--text-secondary, #555);cursor:pointer;flex-shrink:0}.hk-reset-all[data-v-b389ee3a]:hover{background:var(--bg-hover, rgba(0,0,0,.06));color:var(--text-primary, #222)}.hk-fade-enter-active[data-v-b389ee3a],.hk-fade-leave-active[data-v-b389ee3a]{transition:opacity .2s ease}.hk-fade-enter-active .hk-panel[data-v-b389ee3a],.hk-fade-leave-active .hk-panel[data-v-b389ee3a]{transition:transform .2s ease,opacity .2s ease}.hk-fade-enter-from[data-v-b389ee3a],.hk-fade-leave-to[data-v-b389ee3a]{opacity:0}.hk-fade-enter-from .hk-panel[data-v-b389ee3a],.hk-fade-leave-to .hk-panel[data-v-b389ee3a]{transform:scale(.96) translateY(8px)}.confirm-button-fallback[data-v-0318aff3]{border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-height:34px;padding:6px 10px;background:var(--bg-card);color:var(--text-primary);font-weight:600;cursor:pointer}.confirm-button-fallback.danger[data-v-0318aff3]{background:var(--btn-danger-bg);color:var(--btn-danger-fg);border-color:var(--border-danger)}.confirm-button-fallback.warning[data-v-0318aff3]{background:var(--bg-warning);color:var(--text-warning);border-color:var(--border-default)}.confirm-button-fallback[data-v-0318aff3]:disabled{opacity:.6;cursor:not-allowed}.confirm-button-fallback.arming[data-v-0318aff3]{cursor:progress}.confirm-button-arming[data-v-0318aff3]{display:inline-flex;align-items:center;gap:8px}.confirm-button-arming-track[data-v-0318aff3]{position:relative;width:56px;height:4px;border-radius:999px;background:var(--bg-card-muted, var(--bg-card));overflow:hidden}.confirm-button-arming-fill[data-v-0318aff3]{position:absolute;top:0;right:0;bottom:0;left:0;width:56px;transform:translate(-100%);background:currentColor;animation:confirm-button-arm-0318aff3 var(--arming-duration) linear forwards}@keyframes confirm-button-arm-0318aff3{0%{transform:translate(-100%)}to{transform:translate(0)}}.app-dropdown[data-v-455c96e9]{position:relative}.app-dropdown-trigger[data-v-455c96e9]{width:100%;min-height:34px;border:1px solid var(--border-input);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-primary);padding:6px 8px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.86rem;cursor:pointer}.app-dropdown-trigger[data-v-455c96e9]:focus{outline:2px solid rgba(37,99,235,.25);border-color:var(--btn-blue-bg)}.app-dropdown-label[data-v-455c96e9]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-dropdown-label.placeholder[data-v-455c96e9]{color:var(--text-muted)}.app-dropdown-chevron[data-v-455c96e9]{width:8px;height:8px;border-right:2px solid var(--text-muted);border-bottom:2px solid var(--text-muted);transform:rotate(45deg) translateY(-1px);transition:transform .15s ease;flex:0 0 auto}.app-dropdown.open .app-dropdown-chevron[data-v-455c96e9]{transform:rotate(-135deg) translateY(-1px)}.app-dropdown-menu[data-v-455c96e9]{position:absolute;top:calc(100% + 4px);left:0;right:0;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-card);box-shadow:var(--shadow-lg);padding:4px;display:grid;gap:2px;z-index:20;overflow-y:auto}.app-dropdown-option[data-v-455c96e9]{border:none;border-radius:calc(var(--radius-md) - 4px);background:transparent;color:var(--text-primary);text-align:left;font-size:.82rem;padding:6px 8px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-dropdown-option[data-v-455c96e9]:hover{background:var(--bg-hover)}.app-dropdown-option.selected[data-v-455c96e9]{background:var(--bg-accent);color:var(--text-accent);font-weight:600}.app-dropdown-option.highlighted[data-v-455c96e9]:not(.selected){background:var(--bg-hover)}.app-dropdown-option.disabled[data-v-455c96e9],.app-dropdown-option[data-v-455c96e9]:disabled,.app-dropdown.disabled .app-dropdown-trigger[data-v-455c96e9],.app-dropdown-trigger[data-v-455c96e9]:disabled{cursor:not-allowed;opacity:.65}.link-overlay[data-v-b353afa8]{position:absolute;top:0;right:0;bottom:0;left:0}.link-hit[data-v-b353afa8]{position:absolute;display:block;padding:0;margin:0;border:0;background:transparent;-moz-appearance:none;appearance:none;-webkit-appearance:none;color:transparent;cursor:pointer}.link-hit[data-v-b353afa8]::-moz-focus-inner{border:0;padding:0}.connectivity-indicator[data-v-1dafe075]{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;min-width:200px;max-width:320px;width:auto;min-height:40px;padding:0 12px;border-radius:12px;border:1.5px solid var(--border-subtle);background:var(--bg-card);cursor:pointer;font-size:12px;font-weight:500;color:var(--text-secondary, #64748b);box-shadow:0 3px 8px #0f172a1f;transition:border-color .15s ease,border-width .15s ease,box-shadow .15s ease,transform .15s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.connectivity-indicator[data-v-1dafe075]:hover{transform:translateY(-1px);border-color:var(--btn-blue-bg);box-shadow:0 6px 12px color-mix(in srgb,var(--btn-blue-bg) 16%,transparent)}.ci-main[data-v-1dafe075]{display:inline-flex;align-items:center;gap:10px;min-width:0}.ci-dot-wrap[data-v-1dafe075]{position:relative;width:10px;height:10px;flex-shrink:0}.ci-dot[data-v-1dafe075]{display:block;width:10px;height:10px;border-radius:50%;background:var(--dot-color);transition:background .3s}.ci-dot.offline[data-v-1dafe075]{background:var(--ci-offline, #64748b)}.ci-dot.idle[data-v-1dafe075]{background:var(--ci-idle, #94a3b8)}.ci-dot.online[data-v-1dafe075]{background:var(--ci-online, #22c55e);box-shadow:0 0 4px #22c55e66}.ci-dot.syncing[data-v-1dafe075]{background:var(--ci-syncing, #f59e0b)}.ci-dot.pending[data-v-1dafe075]{background:var(--ci-pending, #f97316)}.ci-dot.conflict[data-v-1dafe075],.ci-dot.error[data-v-1dafe075]{background:var(--ci-conflict, #ef4444);animation:ci-pulse-1dafe075 1.5s ease-in-out infinite}.ci-spin-ring[data-v-1dafe075]{position:absolute;top:-3px;left:-3px;width:16px;height:16px;border:2px solid transparent;border-top-color:var(--ci-syncing, #f59e0b);border-radius:50%;animation:ci-spin-1dafe075 .9s linear infinite}.ci-label[data-v-1dafe075]{display:block;line-height:1.05;color:var(--text-primary, #1e293b)}.ci-text[data-v-1dafe075]{display:flex;flex-direction:column;gap:2px;min-width:0}.ci-detail[data-v-1dafe075]{font-size:11px;line-height:1.1;color:var(--text-muted, #94a3b8);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ci-detail.error[data-v-1dafe075]{color:var(--text-danger, #ef4444)}.ci-detail.success[data-v-1dafe075]{color:var(--text-success, #16a34a)}.ci-detail.info[data-v-1dafe075]{color:var(--text-muted, #94a3b8)}.ci-badge[data-v-1dafe075]{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--ci-badge-bg, #ef4444);color:#fff;font-size:10px;font-weight:700;line-height:1}@keyframes ci-spin-1dafe075{to{transform:rotate(360deg)}}@keyframes ci-pulse-1dafe075{0%,to{opacity:1}50%{opacity:.5}}.sidebar-wrapper[data-v-3e1433c1]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;--usb-top-spacer: 74px;display:flex;justify-content:flex-end;pointer-events:none}.sidebar-wrapper.is-open[data-v-3e1433c1]{pointer-events:auto}.sidebar-backdrop[data-v-3e1433c1]{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a47;opacity:0;transition:opacity .2s ease}.sidebar-wrapper.is-open .sidebar-backdrop[data-v-3e1433c1]{opacity:1}.activity-sidebar[data-v-3e1433c1]{position:relative;max-width:92vw;height:calc(100% - var(--usb-top-spacer));margin-top:var(--usb-top-spacer);background:var(--bg-card, #ffffff);border-left:1px solid var(--border-subtle, #dbe2ea);border-top-left-radius:14px;box-shadow:-14px 0 26px #0f172a17;display:flex;flex-direction:column;transform:translate(100%);transition:transform .26s cubic-bezier(.2,.9,.3,1);overflow:hidden}.activity-sidebar.is-resizing[data-v-3e1433c1]{transition:none}.sidebar-wrapper.is-open .activity-sidebar[data-v-3e1433c1]{transform:translate(0)}.activity-resize-handle[data-v-3e1433c1]{right:auto;left:0}.activity-resize-handle[data-v-3e1433c1]:after{left:auto;right:2px}.usb-header[data-v-3e1433c1]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-subtle, #dbe2ea)}.usb-header-title[data-v-3e1433c1]{display:inline-flex;align-items:center;gap:8px;color:var(--text-primary, #111827)}.usb-header-title h3[data-v-3e1433c1]{margin:0;font-size:15px;font-weight:700;letter-spacing:.01em}.usb-badge[data-v-3e1433c1]{min-width:18px;height:18px;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--ci-pending);color:var(--color-white);font-size:10px;font-weight:700}.usb-close-btn[data-v-3e1433c1]{width:30px;height:30px;border:1px solid transparent;background:transparent;color:var(--text-secondary, #64748b);border-radius:8px;cursor:pointer}.usb-close-btn[data-v-3e1433c1]:hover{background:var(--bg-hover, rgba(15, 23, 42, .05));border-color:var(--border-subtle, #dbe2ea);color:var(--text-primary, #111827)}.usb-actions[data-v-3e1433c1]{padding:12px 16px;border-bottom:1px solid var(--border-subtle, #dbe2ea)}.usb-sync-btn[data-v-3e1433c1]{width:100%;border:0;border-radius:10px;padding:9px 12px;font-size:13px;font-weight:600;cursor:pointer}.usb-resolve-btn[data-v-3e1433c1]{margin-top:8px}.btn-primary[data-v-3e1433c1]{background:var(--btn-blue-bg, #2563eb);color:var(--color-white)}.btn-primary[data-v-3e1433c1]:disabled{cursor:not-allowed;opacity:.64}.btn-danger[data-v-3e1433c1]{background:var(--btn-danger-bg);color:var(--btn-danger-fg)}.usb-content[data-v-3e1433c1]{flex:1;overflow-y:auto;overscroll-behavior:contain}.usb-empty[data-v-3e1433c1],.usb-loading[data-v-3e1433c1]{padding:30px 18px;text-align:center;color:var(--text-secondary, #64748b);font-size:13px}.usb-list[data-v-3e1433c1]{list-style:none;margin:0;padding:8px;display:grid;gap:8px;width:100%;min-width:0}.usb-item[data-v-3e1433c1]{display:flex;align-items:flex-start;gap:12px;padding:10px 11px;border:1px solid var(--border-subtle, #dbe2ea);border-radius:12px;background:var(--bg-panel, #f8fafc);width:100%;max-width:100%;min-width:0;overflow:hidden}.usb-item.is-clickable[data-v-3e1433c1]{cursor:pointer}.usb-item.is-clickable[data-v-3e1433c1]:hover{border-color:color-mix(in srgb,var(--btn-blue-bg, #2563eb) 35%,var(--border-subtle, #dbe2ea));box-shadow:0 4px 10px #2563eb1f}.usb-item-icon[data-v-3e1433c1]{position:relative;width:34px;height:34px;border-radius:10px;border:1px solid var(--border-subtle, #dbe2ea);background:var(--bg-card);display:flex;align-items:center;justify-content:center;flex-shrink:0}.usb-item-icon.op-create[data-v-3e1433c1]{color:var(--color-success-fg);border-color:color-mix(in srgb,var(--color-success-fg) 45%,var(--border-subtle, #dbe2ea))}.usb-item-icon.op-update[data-v-3e1433c1]{color:var(--btn-blue-bg);border-color:color-mix(in srgb,var(--btn-blue-bg) 45%,var(--border-subtle, #dbe2ea))}.usb-item-icon.op-delete[data-v-3e1433c1]{color:var(--btn-danger-bg);border-color:color-mix(in srgb,var(--btn-danger-bg) 45%,var(--border-subtle, #dbe2ea))}.usb-op-icon[data-v-3e1433c1]{width:18px;height:18px;fill:currentColor}.usb-entity-icon[data-v-3e1433c1]{position:absolute;right:-4px;bottom:-4px;width:13px;height:13px;fill:var(--text-secondary, #64748b);background:var(--bg-card, #fff);border-radius:999px;padding:1px;box-shadow:0 0 0 1px var(--border-subtle, #dbe2ea)}.usb-item-details[data-v-3e1433c1]{min-width:0;flex:1;overflow:hidden}.usb-item-header[data-v-3e1433c1]{display:flex;justify-content:space-between;gap:8px;align-items:center;min-width:0}.usb-item-type[data-v-3e1433c1]{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary, #64748b);min-width:0;max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.usb-item-status-badge[data-v-3e1433c1]{font-size:10px;font-weight:700;line-height:1;padding:3px 6px;border-radius:999px}.usb-item-status-badge.pending[data-v-3e1433c1]{background:color-mix(in srgb,var(--color-orange-fg) 14%,transparent);color:var(--color-orange-text)}.usb-item-status-badge.synced[data-v-3e1433c1]{background:color-mix(in srgb,var(--color-success-fg) 14%,transparent);color:var(--color-success-text)}.usb-item-status-badge.conflict[data-v-3e1433c1],.usb-item-status-badge.error[data-v-3e1433c1],.usb-item-status-badge.rejected[data-v-3e1433c1]{background:color-mix(in srgb,var(--btn-danger-bg) 14%,transparent);color:var(--danger-strong-border)}.usb-item-mcp-badge[data-v-3e1433c1]{font-size:10px;font-weight:700;line-height:1;padding:3px 6px;border-radius:999px;background:color-mix(in srgb,var(--color-accent-fg, #7c3aed) 14%,transparent);color:var(--color-accent-text, #6d28d9)}.usb-item-title[data-v-3e1433c1]{margin-top:4px;font-size:13px;font-weight:600;color:var(--text-primary, #111827);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.usb-item-meta[data-v-3e1433c1]{margin-top:4px;font-size:11px;color:var(--text-secondary, #64748b);line-height:1.35;display:block;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.usb-item-nav[data-v-3e1433c1]{flex:0 0 auto;color:var(--text-muted, #94a3b8);margin-top:5px}@media(max-width:900px){.sidebar-wrapper[data-v-3e1433c1]{--usb-top-spacer: 66px}}.search-status-row[data-v-4ed7530c]{display:flex;flex-wrap:wrap;gap:12px;margin:2px 0 12px}.search-status-item[data-v-4ed7530c]{display:inline-flex;align-items:center;gap:7px;padding:4px 8px;border-radius:999px;background:#0f172a0d;color:var(--text-primary);font-size:12px}.search-status-dot[data-v-4ed7530c]{width:14px;height:14px;border-radius:999px;border:2px solid var(--border-default);position:relative;box-sizing:border-box}.status-loading[data-v-4ed7530c]{border-color:var(--btn-blue-bg);border-top-color:transparent;animation:search-spin-4ed7530c .9s linear infinite}.status-done[data-v-4ed7530c]{border-color:var(--color-success-fg);background:var(--color-success-fg)}.status-done[data-v-4ed7530c]:after{content:"";position:absolute;left:50%;top:50%;width:5px;height:8px;border:solid var(--color-white);border-width:0 2px 2px 0;transform:translate(-50%,-58%) rotate(45deg)}.status-idle[data-v-4ed7530c]{border-color:var(--border-default)}.search-status-label[data-v-4ed7530c]{font-weight:600}.search-status-meta[data-v-4ed7530c]{color:var(--text-muted)}@keyframes search-spin-4ed7530c{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.area-select-overlay[data-v-9345ca8e]{position:absolute;top:0;left:0;z-index:30;cursor:crosshair}.area-select-rect[data-v-9345ca8e]{position:absolute;border:2px dashed var(--btn-blue-bg, #2563eb);background:#2563eb14;border-radius:3px;pointer-events:none}.action-project-activity[data-v-907b9279]{position:relative}.project-activity-badge[data-v-907b9279]{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--ci-pending);color:var(--color-white);font-size:10px;font-weight:700;line-height:18px;text-align:center;box-shadow:0 0 0 2px var(--bg-page)}:root[data-theme=dark] .project-activity-badge[data-v-907b9279],.dark .project-activity-badge[data-v-907b9279]{box-shadow:0 0 0 2px var(--bg-card)}.resolver-meta[data-v-bff6fe51]{margin:0;color:var(--text-secondary);font-size:.82rem}.resolver-grid[data-v-bff6fe51]{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.resolver-grid-title[data-v-bff6fe51]{margin:0;padding:0 4px;font-size:.86rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.resolver-grid-empty[data-v-bff6fe51]{grid-column:1 / -1;padding:8px;border:1px dashed var(--border-default);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg-panel) 60%,var(--bg-card))}.resolver-grid-cell[data-v-bff6fe51]{height:100%;align-self:stretch}.resolver-field[data-v-bff6fe51]{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-card);padding:8px;min-width:0;min-height:82px;display:flex;flex-direction:column;gap:6px}.resolver-field-button[data-v-bff6fe51]{width:100%;text-align:left;font:inherit;color:inherit}.resolver-field-button[data-v-bff6fe51]:disabled{opacity:1;cursor:default}.resolver-field-selectable[data-v-bff6fe51]{cursor:pointer}.resolver-field-selectable[data-v-bff6fe51]:hover{border-color:color-mix(in srgb,var(--btn-blue-bg) 45%,var(--border-default))}.resolver-field-source-active-local[data-v-bff6fe51]{border-color:color-mix(in srgb,var(--btn-blue-bg) 60%,var(--border-default));box-shadow:0 0 0 1px color-mix(in srgb,var(--btn-blue-bg) 28%,transparent)}.resolver-field-source-active-server[data-v-bff6fe51]{border-color:color-mix(in srgb,var(--btn-danger-bg) 60%,var(--border-default));box-shadow:0 0 0 1px color-mix(in srgb,var(--btn-danger-bg) 30%,transparent)}.resolver-field.different[data-v-bff6fe51]{border-color:color-mix(in srgb,var(--btn-blue-bg) 35%,var(--border-default));box-shadow:0 0 0 1px color-mix(in srgb,var(--btn-blue-bg) 15%,transparent)}.resolver-field-name[data-v-bff6fe51]{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:700}.resolver-field-value[data-v-bff6fe51]{margin:0;font-size:.8rem;color:var(--text-primary);white-space:pre-wrap;word-break:break-word;min-height:56px;max-height:200px;overflow:auto;flex:1}[data-v-bff6fe51] .resolver-diff-inline{background:color-mix(in srgb,var(--btn-blue-bg) 14%,transparent);border-radius:3px;padding:0 1px}[data-v-bff6fe51] .resolver-diff-addition{background:color-mix(in srgb,var(--text-success) 32%,transparent);color:color-mix(in srgb,var(--text-success) 80%,var(--text-primary))}[data-v-bff6fe51] .resolver-diff-deletion{background:color-mix(in srgb,var(--text-danger) 28%,transparent);color:color-mix(in srgb,var(--text-danger) 82%,var(--text-primary))}[data-v-bff6fe51] .resolver-diff-inline-empty{font-style:normal;opacity:.78}.resolver-manual-field[data-v-bff6fe51]{display:grid;gap:3px}.resolver-merge-field[data-v-bff6fe51]{border:1px solid var(--border-default);border-radius:var(--radius-md);padding:6px;background:var(--bg-card);min-height:82px;display:flex;flex-direction:column}.resolver-merge-field-pending[data-v-bff6fe51]{border-color:color-mix(in srgb,var(--btn-warning-bg, #d9a441) 48%,var(--border-default))}.resolver-merge-field-local[data-v-bff6fe51]{border-color:color-mix(in srgb,var(--btn-blue-bg) 58%,var(--border-default))}.resolver-merge-field-server[data-v-bff6fe51]{border-color:color-mix(in srgb,var(--btn-danger-bg) 58%,var(--border-default))}.resolver-merge-field-manual[data-v-bff6fe51]{border-color:color-mix(in srgb,var(--text-success) 58%,var(--border-default))}.resolver-merge-field-head[data-v-bff6fe51]{display:flex;align-items:baseline;justify-content:flex-start;gap:6px}.resolver-merge-field-body[data-v-bff6fe51]{position:relative;overflow:visible;flex:1;display:flex}.resolver-merge-connector[data-v-bff6fe51]{position:absolute;top:50%;width:23px;border-top:4px solid currentColor;color:var(--text-muted);opacity:.4;pointer-events:none;transform:translateY(-50%);z-index:2}.resolver-merge-connector-left[data-v-bff6fe51]{left:-23px}.resolver-merge-connector-left[data-v-bff6fe51]:after{content:"";position:absolute;right:-2px;top:50%;transform:translateY(calc(-50% - 2px));border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:10px solid currentColor}.resolver-merge-connector-right[data-v-bff6fe51]{right:-23px}.resolver-merge-connector-right[data-v-bff6fe51]:after{content:"";position:absolute;left:-2px;top:50%;transform:translateY(calc(-50% - 2px));border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:10px solid currentColor}.resolver-merge-connector.active[data-v-bff6fe51]{opacity:1}.resolver-merge-connector-left.active[data-v-bff6fe51]{color:var(--btn-blue-bg)}.resolver-merge-connector-right.active[data-v-bff6fe51]{color:var(--btn-danger-bg)}.resolver-manual-field label[data-v-bff6fe51]{font-size:.78rem;color:var(--text-secondary);font-weight:600}.resolver-manual-field textarea[data-v-bff6fe51]{width:100%;border:1px solid var(--border-input);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-primary);font:inherit;resize:vertical;min-height:68px;padding:6px;flex:1}@media(max-width:1180px){.resolver-grid[data-v-bff6fe51]{grid-template-columns:1fr}.resolver-merge-connector[data-v-bff6fe51]{display:none}}.resolver-page[data-v-c0adad7a]{min-height:100vh;background:var(--bg-page);color:var(--text-primary);padding:24px;display:grid;gap:16px}.resolver-header[data-v-c0adad7a]{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;position:sticky;top:0;z-index:20;padding:10px 0;border-bottom:1px solid color-mix(in srgb,var(--border-subtle) 82%,transparent);background:color-mix(in srgb,var(--bg-page) 94%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.resolver-header-main[data-v-c0adad7a]{min-width:0}.resolver-header-center[data-v-c0adad7a]{justify-self:center;align-self:center}.resolver-header h1[data-v-c0adad7a]{margin:4px 0;font-size:1.7rem}.resolver-subtitle[data-v-c0adad7a]{margin:0;color:var(--text-secondary)}.resolver-header-actions[data-v-c0adad7a],.resolver-toolbar-actions[data-v-c0adad7a],.resolver-actions[data-v-c0adad7a]{display:flex;gap:8px;flex-wrap:wrap}.resolver-header-actions[data-v-c0adad7a]{align-items:center;justify-content:flex-end}.resolver-resolve-all[data-v-c0adad7a]{display:grid;gap:6px;justify-items:stretch;min-width:176px}.resolver-resolve-all-title[data-v-c0adad7a]{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:700;text-align:center}.resolver-resolve-all .resolver-toolbar-actions[data-v-c0adad7a]{display:flex;justify-content:center;flex-wrap:nowrap;gap:6px}.resolver-resolve-all .resolver-btn[data-v-c0adad7a]{min-width:120px}.resolver-card[data-v-c0adad7a]{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:14px}.resolver-warning[data-v-c0adad7a]{color:var(--text-warning);border-color:color-mix(in srgb,var(--text-warning) 30%,var(--border-default));background:color-mix(in srgb,var(--bg-warning) 65%,var(--bg-card))}.resolver-error[data-v-c0adad7a]{color:var(--text-danger);border-color:color-mix(in srgb,var(--text-danger) 35%,var(--border-default));background:color-mix(in srgb,var(--bg-danger) 70%,var(--bg-card))}.resolver-success[data-v-c0adad7a]{color:var(--text-success);border-color:color-mix(in srgb,var(--text-success) 35%,var(--border-default));background:color-mix(in srgb,var(--bg-success) 65%,var(--bg-card));margin-bottom:8px}.resolver-loading[data-v-c0adad7a],.resolver-empty[data-v-c0adad7a]{text-align:center}.resolver-empty h2[data-v-c0adad7a]{margin:0 0 8px}.resolver-empty p[data-v-c0adad7a]{margin:0 0 12px;color:var(--text-secondary)}.resolver-empty .resolver-toolbar-actions[data-v-c0adad7a]{justify-content:center}.resolver-empty .resolver-toolbar-actions .resolver-btn[data-v-c0adad7a]{flex:0 0 auto}.resolver-list[data-v-c0adad7a]{list-style:none;margin:0;padding:0;display:grid;gap:12px}.resolver-item[data-v-c0adad7a]{display:grid;gap:12px}.resolver-item-header[data-v-c0adad7a]{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.resolver-entity[data-v-c0adad7a]{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;color:var(--text-muted);font-weight:700}.resolver-item h2[data-v-c0adad7a]{margin:6px 0;font-size:1.1rem}.resolver-meta[data-v-c0adad7a]{margin:0;color:var(--text-secondary);font-size:.82rem}.resolver-actions-grid[data-v-c0adad7a]{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.resolver-actions-grid>.resolver-btn[data-v-c0adad7a]{width:100%}.resolver-btn[data-v-c0adad7a]{border:1px solid transparent;border-radius:var(--radius-md);padding:8px 12px;font-size:.82rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.resolver-btn[data-v-c0adad7a]:disabled{opacity:.6;cursor:not-allowed}.resolver-btn-primary[data-v-c0adad7a]{background:var(--btn-blue-bg);color:var(--btn-blue-fg)}.resolver-btn-danger[data-v-c0adad7a]{background:var(--btn-danger-bg);color:var(--btn-danger-fg)}.resolver-btn-ghost[data-v-c0adad7a]{background:var(--bg-card);border-color:var(--border-default);color:var(--text-primary)}.resolver-icon-btn[data-v-c0adad7a]{width:34px;height:34px;padding:0}.resolver-icon-btn svg[data-v-c0adad7a]{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@media(max-width:960px){.resolver-page[data-v-c0adad7a]{padding:14px}.resolver-header[data-v-c0adad7a]{grid-template-columns:1fr;justify-items:stretch;align-items:start}.resolver-header-center[data-v-c0adad7a]{justify-self:stretch}.resolver-resolve-all[data-v-c0adad7a]{justify-items:stretch;min-width:0}.resolver-resolve-all .resolver-toolbar-actions[data-v-c0adad7a]{justify-content:stretch}.resolver-resolve-all .resolver-btn[data-v-c0adad7a]{min-width:0;flex:1 1 auto}.resolver-header-actions[data-v-c0adad7a]{justify-content:flex-end}.resolver-toolbar-actions[data-v-c0adad7a]{justify-content:stretch}.resolver-toolbar-actions .resolver-btn[data-v-c0adad7a]{flex:1 1 auto}.resolver-actions-grid[data-v-c0adad7a]{grid-template-columns:1fr}}.app-root[data-v-0923e9e3]{min-height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}.app-root.app-root-scrollable[data-v-0923e9e3]{overflow-y:auto}.app-content[data-v-0923e9e3]{flex:1;min-height:0;display:flex;overflow:hidden}.app-content[data-v-0923e9e3]>*{min-height:0;width:100%}:root{color-scheme:light;font-family:Segoe UI,system-ui,-apple-system,sans-serif;--bg-page: #f5f6fb;--bg-card: #ffffff;--bg-surface: var(--bg-card);--bg-panel: #f8fafc;--bg-input: #ffffff;--bg-hover: #f1f5f9;--bg-accent: #eef2ff;--bg-danger: #fee2e2;--bg-success: #d1fae5;--bg-warning: #fef3c7;--border-default: #e2e8f0;--border-subtle: #d1d9f0;--border-input: #cbd5f5;--border-active: #6366f1;--border-danger: #fecaca;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--text-accent: #4f46e5;--text-danger: #b91c1c;--text-success: #0f766e;--text-warning: #b45309;--text-on-accent: #ffffff;--text-on-dark: #ffffff;--btn-primary-bg: #4f46e5;--btn-primary-fg: #ffffff;--btn-secondary-bg:#0f172a;--btn-secondary-fg:#ffffff;--btn-danger-bg: #dc2626;--btn-danger-fg: #ffffff;--btn-ghost-bg: #e2e8f0;--btn-ghost-fg: #0f172a;--btn-blue-bg: #2563eb;--btn-blue-fg: #ffffff;--btn-disabled-bg: #94a3b8;--focus-ring-accent: rgba(79, 70, 229, .2);--focus-ring-blue: rgba(37, 99, 235, .2);--presence-fallback: #6366f1;--overlay-scrim: rgba(15, 23, 42, .45);--overlay-scrim-strong: rgba(15, 23, 42, .6);--danger-strong-bg: #7f1d1d;--danger-strong-border: #991b1b;--danger-strong-fg: #fee2e2;--color-white: #ffffff;--color-danger-700: #b42318;--color-bg-inverse: #1f2937;--color-text-inverse: #f9fafb;--btn-warning-bg: #d9a441;--ci-offline: #64748b;--ci-idle: #94a3b8;--ci-online: #22c55e;--ci-syncing: #f59e0b;--ci-pending: #f97316;--ci-conflict: #ef4444;--ci-error: #ef4444;--ci-badge-bg: #ef4444;--color-success-fg: #16a34a;--color-success-text: #166534;--color-orange-fg: #f97316;--color-orange-text: #c2410c;--annotation-direct-rgb: 59, 130, 246;--annotation-indirect-rgb: 139, 92, 246;--annotation-summary-rgb: 34, 197, 94;--annotation-comment-rgb: 249, 115, 22;--annotation-highlight-rgb: 250, 204, 21;--annotation-quotation-rgb: 220, 20, 60;--annotation-note-rgb: 148, 163, 184;--annotation-area-rgb: 6, 182, 212;--annotation-direct: #3b82f6;--annotation-indirect: #8b5cf6;--annotation-summary: #22c55e;--annotation-comment: #f97316;--annotation-highlight: #facc15;--annotation-quotation: #dc143c;--annotation-note: #94a3b8;--annotation-area: #06b6d4;--tab-active-bg: #fef3c7;--tab-active-border: #f59e0b;--tab-active-fg: #92400e;--tab-active-shadow: rgba(251, 191, 36, .25);--shadow-sm: 0 4px 12px rgba(15, 23, 42, .06);--shadow-md: 0 8px 18px rgba(15, 23, 42, .08);--shadow-lg: 0 16px 30px rgba(15, 23, 42, .12);--shadow-xl: 0 20px 45px rgba(15, 23, 42, .08);--shadow-accent: 0 10px 20px rgba(79, 70, 229, .25);--radius-sm: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 14px;--radius-2xl: 20px;--icon-fill: #1f2937;--scrollbar-thumb: #c4c9d4;--scrollbar-track: transparent;--overlay-bg: rgba(15, 23, 42, .4)}:root[data-theme=dark]{color-scheme:dark;--bg-page: #0f1117;--bg-card: #1a1d27;--bg-surface: var(--bg-card);--bg-panel: #151822;--bg-input: #1e2130;--bg-hover: #252938;--bg-accent: #1e1b4b;--bg-danger: #450a0a;--bg-success: #052e16;--bg-warning: #422006;--border-default: #2d3348;--border-subtle: #363c52;--border-input: #3b4262;--border-active: #818cf8;--border-danger: #7f1d1d;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #64748b;--text-accent: #a5b4fc;--text-danger: #fca5a5;--text-success: #6ee7b7;--text-warning: #fcd34d;--text-on-accent: #ffffff;--text-on-dark: #ffffff;--btn-primary-bg: #6366f1;--btn-primary-fg: #ffffff;--btn-secondary-bg:#e2e8f0;--btn-secondary-fg:#0f172a;--btn-danger-bg: #ef4444;--btn-danger-fg: #ffffff;--btn-ghost-bg: #2d3348;--btn-ghost-fg: #e2e8f0;--btn-blue-bg: #3b82f6;--btn-blue-fg: #ffffff;--btn-disabled-bg: #4b5563;--focus-ring-accent: rgba(99, 102, 241, .26);--focus-ring-blue: rgba(59, 130, 246, .28);--presence-fallback: #818cf8;--overlay-scrim: rgba(0, 0, 0, .45);--overlay-scrim-strong: rgba(0, 0, 0, .62);--danger-strong-bg: #991b1b;--danger-strong-border: #b91c1c;--danger-strong-fg: #fee2e2;--color-white: #ffffff;--color-danger-700: #ef4444;--color-bg-inverse: #f8fafc;--color-text-inverse: #0f172a;--btn-warning-bg: #f59e0b;--ci-offline: #475569;--ci-idle: #64748b;--ci-online: #4ade80;--ci-syncing: #fcd34d;--ci-pending: #fb923c;--ci-conflict: #f87171;--ci-error: #f87171;--ci-badge-bg: #f87171;--color-success-fg: #4ade80;--color-success-text: #86efac;--color-orange-fg: #fb923c;--color-orange-text: #fdba74;--annotation-direct-rgb: 96, 165, 250;--annotation-indirect-rgb: 167, 139, 250;--annotation-summary-rgb: 74, 222, 128;--annotation-comment-rgb: 251, 146, 60;--annotation-highlight-rgb: 250, 204, 21;--annotation-quotation-rgb: 244, 63, 94;--annotation-note-rgb: 148, 163, 184;--annotation-area-rgb: 34, 211, 238;--annotation-direct: #60a5fa;--annotation-indirect: #a78bfa;--annotation-summary: #4ade80;--annotation-comment: #fb923c;--annotation-highlight: #facc15;--annotation-quotation: #f43f5e;--annotation-note: #94a3b8;--annotation-area: #22d3ee;--tab-active-bg: #422006;--tab-active-border: #f59e0b;--tab-active-fg: #fcd34d;--tab-active-shadow: rgba(251, 191, 36, .12);--shadow-sm: 0 4px 12px rgba(0, 0, 0, .25);--shadow-md: 0 8px 18px rgba(0, 0, 0, .3);--shadow-lg: 0 16px 30px rgba(0, 0, 0, .35);--shadow-xl: 0 20px 45px rgba(0, 0, 0, .3);--shadow-accent: 0 10px 20px rgba(99, 102, 241, .2);--icon-fill: #cbd5e1;--scrollbar-thumb: #3b4262;--scrollbar-track: transparent;--overlay-bg: rgba(0, 0, 0, .6)}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;background:var(--bg-page);color:var(--text-primary)}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg-page)}.login-card{width:min(420px,100%);background:var(--bg-card);border-radius:var(--radius-2xl);padding:32px 30px;box-shadow:var(--shadow-xl);border:1px solid var(--border-default);display:grid;gap:14px}.login-brand{font-weight:700;color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.login-title{margin:0;font-size:1.6rem;color:var(--text-primary)}.login-subtitle{margin:0;color:var(--text-muted);line-height:1.5}.login-button{border:none;border-radius:var(--radius-lg);padding:12px 16px;background:var(--btn-primary-bg);color:var(--btn-primary-fg);font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.login-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-accent)}.login-error{margin:0;color:var(--text-danger);background:var(--bg-danger);border-radius:var(--radius-md);padding:10px 12px;font-size:.85rem}.layout{--shell-gap-sm: 8px;--shell-gap-md: 10px;--shell-gap-lg: 12px;--shell-gap-xl: 16px;--shell-padding-x: 24px;--shell-overlay-left: 12px;--shell-sidebar-width: 360px;--shell-side-panel-width: 320px;--shell-side-panel-collapsed-width: 56px;--shell-sidebar-header-height: 64px;--shell-side-panel-header-height: 56px;--shell-side-panel-header-height-expanded: 108px;display:flex;flex-direction:column;flex:1;min-height:0;height:100%;max-height:100%;overflow:hidden}.layout-body{flex:1;min-height:0;overflow:hidden;display:grid;grid-template-columns:auto auto auto 1fr;grid-template-areas:"categories references sidebar viewer";align-items:stretch}.layout.reference-collapsed-only .layout-body{grid-template-areas:"references categories sidebar viewer"}.layout.both-collapsed .layout-body{grid-template-columns:auto auto 1fr;grid-template-areas:"categories sidebar viewer"}.categories-panel{grid-area:categories;min-height:0;overflow:hidden}.references-panel{grid-area:references;min-height:0;overflow:hidden}.sidebar{grid-area:sidebar;min-height:0;overflow:hidden}.viewer{grid-area:viewer;min-height:0;overflow:hidden}.sidebar{position:relative;border-right:1px solid var(--border-default);padding:var(--shell-gap-xl);background:var(--bg-panel);display:grid;grid-template-rows:var(--shell-sidebar-header-height) 1fr;height:100%;width:var(--shell-sidebar-width);flex-shrink:0}.sidebar-header{display:flex;align-items:center}.sidebar-content{overflow:hidden;display:flex;flex-direction:column;min-height:0}.sidebar-content>*{flex:1;min-height:0}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:var(--shell-gap-sm);width:100%}.tab-button{border:1px solid var(--border-subtle);background:var(--bg-card);border-radius:var(--radius-lg);padding:8px 10px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.tab-button.active{background:var(--tab-active-bg);border-color:var(--tab-active-border);color:var(--tab-active-fg);box-shadow:0 6px 18px var(--tab-active-shadow)}.tab-button:hover{transform:translateY(-1px)}.side-panel{position:relative;border-right:1px solid var(--border-default);background:var(--bg-panel);height:100%;min-height:0;width:var(--shell-side-panel-width);flex-shrink:0;display:grid;grid-template-rows:var(--shell-side-panel-header-height) 1fr;transition:width .2s ease}.side-panel.is-resizing{transition:none}.side-panel.both-collapsed{grid-template-rows:var(--shell-side-panel-header-height-expanded) 1fr}.side-panel.collapsed{width:var(--shell-side-panel-collapsed-width)}.side-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--shell-gap-sm) var(--shell-gap-md);gap:6px}.side-panel.collapsed .side-panel-header{justify-content:center;padding:var(--shell-gap-sm) 6px}.side-panel.both-collapsed .side-panel-header{justify-content:center;padding-top:20px}.side-panel-controls{display:inline-flex;align-items:center;gap:6px}.side-panel.collapsed .side-panel-controls{width:100%;justify-content:center}.side-panel.both-collapsed .side-panel-controls{flex-direction:column;gap:var(--shell-gap-sm)}.side-panel-title{font-weight:600;color:var(--text-primary)}.side-panel-toggle{width:32px;height:32px}.side-panel-content{overflow:hidden;display:flex;flex-direction:column;padding:var(--shell-gap-sm) var(--shell-gap-lg) var(--shell-gap-xl);min-height:0}.side-panel-content>*{flex:1;min-height:0}.references-panel.side-panel.collapsed{width:var(--shell-side-panel-collapsed-width)}.panel-resize-handle{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;z-index:30;touch-action:none}.panel-resize-handle:after{content:"";position:absolute;top:0;left:2px;width:2px;height:100%;background:transparent;transition:background .15s ease}.panel-resize-handle:hover:after,.panel-resize-handle.is-resizing:after{background:var(--accent-primary, #4f7cff)}.side-panel.collapsed .panel-resize-handle{display:none}.viewer{position:relative;overflow:hidden;background:var(--bg-page);height:100%;display:block}.viewer.cursor-add{cursor:copy}.viewer.cursor-remove{cursor:not-allowed}.viewer.selection-disabled .page,.viewer.selection-disabled .page *{user-select:none;-webkit-user-select:none;pointer-events:none}.viewer-inner{padding:var(--shell-gap-xl) var(--shell-padding-x);height:100%;min-height:0;overflow:hidden;transform-origin:top center;position:relative}.layout-header{display:flex;align-items:center;gap:var(--shell-gap-md);padding:var(--shell-gap-md) var(--shell-padding-x);border-bottom:1px solid var(--border-default);background:color-mix(in srgb,var(--bg-card) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;box-sizing:border-box;z-index:140}.layout-header .close-project{margin-right:auto}.viewer-content{height:100%;min-height:0;position:relative;overflow:hidden}.pdf-toolbox{position:static;display:flex;flex-direction:column;align-items:center}.pdf-overlay-controls{position:absolute;left:var(--shell-overlay-left);top:50%;transform:translateY(-50%);display:grid;justify-items:center;align-items:center;row-gap:0;z-index:55}.pdf-search-slot{margin-top:var(--shell-gap-sm);display:flex;flex-direction:column;align-items:center;gap:8px}.pdf-copy-notice{position:absolute;left:50%;bottom:18px;transform:translate(-50%);z-index:80;border-radius:999px;padding:7px 12px;font-size:.78rem;font-weight:600;color:var(--bg-panel);background:color-mix(in srgb,var(--text-primary) 92%,transparent);box-shadow:0 8px 18px #0f172a33;pointer-events:none}.pdf-copy-notice.is-error{color:var(--color-white);background:color-mix(in srgb,var(--color-danger-700) 86%,transparent)}.pdf-page-indicator{width:48px;height:56px;padding:6px 4px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;font-variant-numeric:tabular-nums}.pdf-page-indicator-current{font-size:.92rem;font-weight:700}.pdf-page-indicator-total{margin-top:3px;font-size:.76rem;font-weight:600;opacity:.88}.pdf-page-jump-input{width:100%;max-width:34px;border:0;outline:none;background:transparent;color:currentColor;text-align:center;font-size:.92rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.toolbox-stack{display:grid;grid-auto-flow:row;grid-auto-rows:44px;row-gap:var(--shell-gap-lg);align-items:center}.toolbar-button.toolbox-button{--button-color: var(--annotation-note);--button-bg: color-mix(in srgb, var(--button-color) 18%, var(--bg-card));--button-border: color-mix(in srgb, var(--button-color) 56%, transparent);--button-shadow: color-mix(in srgb, var(--button-color) 28%, transparent);color:var(--button-color);font-weight:700}.toolbar-button.toolbox-button.select{--button-color: var(--text-secondary);--button-bg: color-mix(in srgb, var(--button-color) 12%, var(--bg-card));--button-border: color-mix(in srgb, var(--button-color) 42%, transparent)}.toolbox-zoom{margin-top:var(--shell-gap-sm);display:flex;justify-content:center}.toolbox-zoom.is-hidden{visibility:hidden}.toolbox-button.zoom{--button-color: var(--text-muted);--button-bg: var(--bg-panel);--button-border: var(--border-default);--button-shadow: color-mix(in srgb, var(--text-muted) 22%, transparent)}.toolbox-fade-enter-active,.toolbox-fade-leave-active{transition:opacity .2s ease,transform .2s ease}.toolbox-fade-enter-from,.toolbox-fade-leave-to{opacity:0;transform:translateY(6px) scale(.98)}.toolbox-button.zoom .toolbox-label{font-size:.7rem;font-weight:700;color:currentColor;letter-spacing:.02em}.toolbox-button.direct{--button-color: var(--annotation-direct)}.toolbox-button.indirect{--button-color: var(--annotation-indirect)}.toolbox-button.summary{--button-color: var(--annotation-summary)}.toolbox-button.comment{--button-color: var(--annotation-comment)}.toolbox-button.highlight{--button-color: var(--annotation-highlight)}.toolbox-button.quotation{--button-color: var(--annotation-quotation)}.toolbox-button.note{--button-color: var(--annotation-note)}.toolbox-button.area{--button-color: var(--annotation-area)}.toolbox-button.active{border-width:2.5px;box-shadow:0 10px 18px color-mix(in srgb,var(--button-color) 32%,transparent);background:color-mix(in srgb,var(--button-color) 24%,var(--bg-card));transform:translateY(-1px)}.toolbox-button.active .toolbox-label{color:currentColor}.toolbox-label{font-size:.85rem;font-weight:700;color:currentColor;line-height:1}.close-project{display:flex}.loading{display:flex;align-items:center;justify-content:center;height:100%;font-weight:600;color:var(--text-secondary)}.annotation-list{flex:1;display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding-right:6px;min-height:0}.annotation-list-header{position:sticky;top:0;z-index:4;display:grid;gap:8px;padding-bottom:10px;background:linear-gradient(to bottom,var(--bg-panel) 88%,transparent)}.annotation-search-wrap{margin-bottom:0}.annotation-list-trailing-drop-zone{flex-shrink:0;min-height:40px;border-radius:10px;position:relative}.annotation-list-trailing-drop-zone.active:before{content:"";position:absolute;top:0;left:4px;right:4px;height:3px;border-radius:2px;background:var(--btn-blue-bg, #2563eb)}.annotation-card{position:relative;border-radius:14px;border:2px solid var(--annotation-highlight);background:var(--bg-card);padding:16px 12px 14px;cursor:pointer;box-shadow:var(--shadow-md);display:grid;gap:10px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.annotation-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.annotation-card.selected{border-color:var(--tab-active-border);background:var(--bg-warning)}.annotation-card.insert-before,.annotation-card.insert-after{position:relative}.annotation-card.insert-before:before,.annotation-card.insert-after:after{content:"";position:absolute;left:4px;right:4px;height:3px;border-radius:2px;background:var(--btn-blue-bg, #2563eb);pointer-events:none}.annotation-card.insert-before:before{top:-6px}.annotation-card.insert-after:after{bottom:-6px}.annotation-card.annotation-red{border-color:var(--btn-danger-bg)}.annotation-card.annotation-direct{border-color:var(--annotation-direct)}.annotation-card.annotation-indirect{border-color:var(--annotation-indirect)}.annotation-card.annotation-summary{border-color:var(--annotation-summary)}.annotation-card.annotation-comment{border-color:var(--annotation-comment)}.annotation-card.annotation-note{border-color:var(--annotation-note)}.annotation-card.annotation-area{border-color:var(--annotation-area)}.annotation-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.annotation-index{font-weight:700;color:var(--text-primary)}.annotation-meta{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.annotation-presence-overlay{position:absolute;left:12px;top:0;transform:translateY(-50%);display:flex;gap:4px;align-items:center;justify-content:flex-start;pointer-events:none;z-index:2;max-width:calc(100% - 36px)}.presence-editors{display:flex;gap:4px;align-items:center}.presence-editor-badge{font-size:.62rem;font-weight:700;padding:2px 6px;border-radius:999px;color:var(--text-on-dark);background:var(--presence-color, var(--presence-fallback));white-space:nowrap;max-width:80px;overflow:hidden;text-overflow:ellipsis;pointer-events:auto}.badge{font-size:.72rem;font-weight:600;padding:4px 8px;border-radius:999px;background:var(--border-default);color:var(--text-primary)}.badge.subtle{background:var(--bg-accent);color:var(--text-accent)}.badge.annotation-type{background:var(--bg-warning);color:var(--tab-active-fg)}.badge.annotation-type.annotation-direct{background:color-mix(in srgb,var(--annotation-direct) 20%,var(--bg-card));color:color-mix(in srgb,var(--annotation-direct) 76%,black)}.badge.annotation-type.annotation-indirect{background:color-mix(in srgb,var(--annotation-indirect) 20%,var(--bg-card));color:color-mix(in srgb,var(--annotation-indirect) 74%,black)}.badge.annotation-type.annotation-summary{background:color-mix(in srgb,var(--annotation-summary) 20%,var(--bg-card));color:color-mix(in srgb,var(--annotation-summary) 74%,black)}.badge.annotation-type.annotation-comment{background:color-mix(in srgb,var(--annotation-comment) 20%,var(--bg-card));color:color-mix(in srgb,var(--annotation-comment) 74%,black)}.badge.annotation-type.annotation-red{background:var(--bg-danger);color:var(--text-danger)}.badge.annotation-type.annotation-note{background:var(--border-default);color:var(--text-secondary)}.badge.annotation-type.annotation-area{background:color-mix(in srgb,var(--annotation-area) 22%,var(--bg-card));color:color-mix(in srgb,var(--annotation-area) 78%,black)}.badge-button{border:none;cursor:pointer}.badge-button:focus{outline:2px solid var(--focus-ring-accent);outline-offset:1px}.badge-popover-anchor{position:relative;display:inline-flex}.badge-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:10;display:grid;gap:6px;padding:8px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:var(--shadow-lg);min-width:160px}.badge-option{display:flex;width:100%;justify-content:flex-start;border:none;cursor:pointer}.badge-editor{border:1px solid var(--border-subtle);border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:600;color:var(--text-primary);background:var(--bg-card);width:auto;min-width:64px;max-width:120px;line-height:1.1}.badge-editor.badge-compact{min-width:60px;max-width:90px;width:64px;text-align:center}.annotation-title{font-weight:600;color:var(--text-primary)}.annotation-text{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.4}.annotation-categories{font-size:.76rem;color:var(--text-muted)}.annotation-categories.edit{background:var(--bg-panel);border:1px solid var(--border-default);border-radius:10px;padding:8px}.annotation-categories-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-weight:600;margin-bottom:6px}.annotation-category-list{display:flex;flex-wrap:wrap;gap:6px}.annotation-category-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 8px;background:var(--bg-accent);color:var(--text-primary);font-size:.72rem;font-weight:600}.annotation-category-remove{border:none;background:transparent;color:var(--text-muted);font-size:.85rem;cursor:pointer}.annotation-category-remove:hover{color:var(--btn-danger-bg)}.annotation-edit{display:grid;gap:10px;width:100%}.annotation-field{display:grid;gap:6px;font-size:.75rem;font-weight:600;color:var(--text-secondary)}.annotation-input,.annotation-textarea{border:1px solid var(--border-subtle);border-radius:10px;padding:8px 10px;font-size:.85rem;font-weight:500;color:var(--text-primary);background:var(--bg-card);outline:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%;min-width:0}.annotation-textarea{resize:vertical;min-height:84px}.annotation-input:focus,.annotation-textarea:focus{border-color:var(--border-active);box-shadow:0 0 0 3px var(--focus-ring-accent)}.annotation-actions{display:flex;gap:8px;justify-content:flex-end}.annotation-button{border:1px solid transparent;border-radius:999px;padding:6px 12px;font-size:.75rem;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.annotation-button.primary{background:var(--btn-primary-bg);color:var(--btn-primary-fg);box-shadow:var(--shadow-accent)}.annotation-button.ghost{background:var(--bg-card);color:var(--text-secondary);border-color:var(--border-subtle)}.annotation-button.danger{background:var(--bg-danger);color:var(--text-danger);border-color:var(--border-danger)}:root[data-theme=dark] .annotation-button.danger{background:var(--danger-strong-bg)!important;border-color:var(--danger-strong-border)!important;color:var(--danger-strong-fg)!important}.annotation-button:hover:not(:disabled){transform:translateY(-1px)}.annotation-button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.annotation-image-section{margin-top:6px;display:grid;gap:6px}.annotation-image-preview{width:100%;max-height:240px;object-fit:contain;border-radius:6px;border:1px solid var(--border-default);background:var(--bg-input)}.annotation-image-actions{display:flex;gap:6px}.annotation-image-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:28px;padding:0 10px;border:1px solid var(--border-input);border-radius:6px;background:var(--bg-card);cursor:pointer;color:var(--text-muted);font-size:.75rem;font-weight:500;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.annotation-image-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-active)}.reference-list{display:flex;flex-direction:column;gap:12px;flex:1;overflow-y:auto;padding-right:6px;min-height:0}.reference-list-header{position:sticky;top:0;z-index:4;display:grid;gap:8px;padding-bottom:10px;background:linear-gradient(to bottom,var(--bg-panel) 88%,transparent)}.reference-toolbar{display:grid;gap:6px}.reference-search-wrap{min-width:0}.list-filter-notice{font-size:.72rem;color:var(--text-secondary);padding:6px 8px;border-radius:10px;background:var(--bg-warning);border:1px solid var(--tab-active-border)}.reference-list-actions{display:flex;flex-direction:row;gap:6px;flex-wrap:wrap;justify-content:flex-start;width:100%}.reference-add-button{width:auto;justify-content:center;white-space:nowrap;flex:1 1 0}.reference-import-button{width:auto;justify-content:center;display:flex;align-items:center;gap:6px;white-space:nowrap;flex:1 1 0}.reference-add-hint{font-size:.72rem;color:var(--text-muted);text-align:left}.reference-detail{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto;padding-right:6px;position:relative}.reference-empty{color:var(--text-muted);padding:12px;background:var(--bg-card);border-radius:12px;border:1px solid var(--border-default)}.reference-detail-list{display:grid;gap:10px}.reference-detail-row{background:var(--bg-card);border-radius:12px;border:1px solid var(--border-default);padding:10px 12px;display:grid;grid-template-columns:1fr auto;align-items:start;gap:6px}.reference-detail-row.is-editing{border-color:var(--border-active);box-shadow:0 6px 16px var(--focus-ring-accent)}.reference-detail-label{font-size:.74rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.reference-detail-main{display:grid;gap:8px}.reference-detail-value{display:flex;align-items:center;gap:10px;justify-content:space-between}.reference-detail-value-text{flex:1;font-size:.86rem;color:var(--text-primary);word-break:break-word}.reference-detail-actions{list-style:none;padding:0;margin:0;display:grid;gap:6px;justify-items:end}.reference-detail-action-item{display:flex;justify-content:flex-end}.reference-action-button{border:1px solid var(--border-default);background:var(--bg-panel);color:var(--text-primary);border-radius:8px;padding:4px 8px;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .15s ease}.reference-icon-button{padding:4px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}.reference-icon-button svg{width:16px;height:16px;fill:currentColor}.reference-action-button:hover{border-color:var(--border-input);background:var(--bg-accent)}.reference-action-button:disabled{opacity:.5;cursor:not-allowed}.reference-find-pdf-link{display:block;text-align:center;text-decoration:none;width:100%;padding:7px 12px;border-radius:8px;border:1px dashed var(--border-active);background:transparent;color:var(--tab-active-fg);font-size:.74rem;font-weight:600;transition:background .15s ease,border-color .15s ease;cursor:pointer;box-sizing:border-box}.reference-find-pdf-link:hover{background:var(--bg-accent);border-color:var(--tab-active-border);text-decoration:none}.reference-detail-editor{display:grid;gap:8px;padding:8px;border-radius:10px;background:var(--bg-accent);border:1px solid var(--border-input);position:relative;z-index:1}.reference-detail-input{border:1px solid var(--border-input);border-radius:8px;padding:6px 8px;font-size:.86rem;color:var(--text-primary);width:100%;display:block;min-height:36px;background:var(--bg-card);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--text-primary) 8%,transparent)}.reference-detail-textarea{border:1px solid var(--border-input);border-radius:8px;padding:6px 8px;font-size:.86rem;color:var(--text-primary);width:100%;resize:vertical;min-height:46px;font-family:inherit;display:block;background:var(--bg-card);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--text-primary) 8%,transparent)}.reference-detail-input:focus,.reference-detail-textarea:focus{outline:2px solid var(--focus-ring-accent);border-color:var(--border-active)}.reference-detail-editor-actions{display:flex;justify-content:flex-end;gap:8px}.reference-card{border-radius:14px;border:2px solid var(--tab-active-bg);background:var(--bg-card);padding:16px 10px 8px;box-shadow:var(--shadow-md);cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr);gap:4px;position:relative}.reference-card>*{min-width:0}.reference-presence-overlay{position:absolute;left:10px;top:0;transform:translateY(-50%);display:flex;gap:4px;align-items:center;justify-content:flex-start;pointer-events:none;z-index:2;max-width:calc(100% - 34px)}.reference-presence-badge{font-size:.62rem;font-weight:700;padding:2px 6px;border-radius:999px;color:var(--text-on-dark);background:var(--presence-color, var(--presence-fallback));white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis;pointer-events:auto}.copy-snackbar{position:absolute;right:12px;bottom:12px;background:var(--text-primary);color:var(--bg-panel);font-size:.75rem;padding:6px 10px;border-radius:999px;box-shadow:var(--shadow-lg);pointer-events:none;z-index:5}.reference-copy-snackbar{bottom:8px;right:8px}.reference-menu-button{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:8px;border:1px solid var(--border-default);background:var(--bg-card);display:inline-flex;align-items:center;justify-content:center;gap:3px;cursor:pointer;padding:0;z-index:2;transition:box-shadow .15s ease,border-color .15s ease}.reference-menu-button:hover{border-color:var(--border-input);box-shadow:var(--shadow-md)}.reference-menu-dot{width:4px;height:4px;border-radius:50%;background:var(--text-secondary)}.reference-popover{position:absolute;top:40px;right:8px;width:fit-content;padding:12px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--bg-card) 92%,var(--bg-panel));border:1px solid var(--border-default);box-shadow:var(--shadow-lg);z-index:3;max-height:min(360px,70vh);overflow-y:auto;display:inline-grid;gap:10px;justify-items:stretch}.reference-category-block{display:grid;gap:6px;padding:10px;border-radius:12px;border:1px solid var(--border-default);background:var(--bg-panel)}.reference-category-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-weight:600}.reference-category-list{display:flex;flex-wrap:wrap;gap:6px}.reference-category-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 8px;background:var(--bg-hover);color:var(--text-primary);font-size:.72rem;font-weight:600}.reference-category-remove{border:none;background:transparent;color:var(--text-muted);font-size:.85rem;cursor:pointer}.reference-category-remove:hover{color:var(--btn-danger-bg)}.reference-popover-button{width:100%;min-width:120px;border:1px solid var(--border-default);border-radius:12px;padding:9px 11px;background:color-mix(in srgb,var(--bg-card) 88%,var(--bg-panel));color:var(--text-primary);font-size:.78rem;font-weight:600;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease;min-height:36px;display:flex;align-items:center;justify-content:center;text-align:center;box-shadow:0 1px color-mix(in srgb,var(--text-primary) 6%,transparent)}.reference-popover-button:hover{border-color:var(--border-input);background:var(--bg-card);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.reference-popover-actions{display:grid;gap:8px;justify-items:stretch}.reference-popover-button.danger{border-color:var(--border-danger);background:var(--bg-danger);color:var(--text-danger)}:root[data-theme=dark] .reference-popover-button.danger{background:var(--danger-strong-bg)!important;border-color:var(--danger-strong-border)!important;color:var(--danger-strong-fg)!important}.reference-card.selected{border-color:var(--tab-active-border);background:var(--bg-warning)}.reference-header{display:flex;gap:10px;align-items:baseline;margin-bottom:2px}.reference-index{font-weight:700;color:var(--tab-active-fg);white-space:nowrap}.reference-title{font-weight:600;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;line-height:1.2;flex:1;min-width:0;box-sizing:border-box;padding-right:34px}.reference-authors{font-size:.82rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.reference-meta-line{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-secondary)}.reference-category-preview{font-size:.72rem;color:var(--text-muted);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reference-year,.reference-type{white-space:nowrap}.reference-separator{color:var(--border-input)}.reference-latex{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-secondary)}.reference-latex-label{font-weight:600;color:var(--text-primary);flex-shrink:0}.reference-latex-value{font-family:Cascadia Code,Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;background:var(--bg-warning);border-radius:8px;padding:2px 6px;display:inline-block;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1;max-width:220px}.author-editor-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--overlay-scrim);display:flex;align-items:center;justify-content:center;padding:24px}.author-editor-dialog{background:var(--bg-surface);border-radius:16px;border:1px solid var(--border-default);box-shadow:var(--shadow-xl);width:520px;max-width:100%;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.author-editor-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-default)}.author-editor-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.author-editor-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:6px;transition:color .15s}.author-editor-close:hover{color:var(--text-primary)}.author-editor-body{flex:1;overflow-y:auto;padding:16px 20px}.author-editor-loading{color:var(--text-muted);text-align:center;padding:20px}.author-list{display:flex;flex-direction:column;gap:8px}.author-list-empty{color:var(--text-muted);text-align:center;padding:16px;font-size:.85rem}.author-card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:10px;overflow:hidden;transition:border-color .15s}.author-card.is-editing{border-color:var(--border-active)}.author-card-header{display:flex;align-items:center;gap:8px;padding:8px 12px}.author-card-index{font-size:.78rem;font-weight:600;color:var(--text-muted);width:20px;flex-shrink:0}.author-card-name{flex:1;font-size:.86rem;color:var(--text-primary);cursor:pointer;word-break:break-word}.author-card-name:hover{color:var(--text-accent)}.author-card-orcid{margin-left:6px;font-size:.72rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.author-card-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.author-icon-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:3px;border-radius:4px;display:flex;align-items:center;transition:color .15s,background .15s}.author-icon-btn:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.author-icon-btn:disabled{opacity:.3;cursor:default}.author-icon-btn-delete:hover:not(:disabled){color:var(--btn-danger-bg)}.author-card-fields{padding:8px 12px 12px;border-top:1px solid var(--border-default);display:grid;gap:6px}.author-field-row{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:8px}.author-field-label{font-size:.74rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.author-field-input{background:var(--bg-input, var(--bg-surface));border:1px solid var(--border-default);border-radius:6px;color:var(--text-primary);font-size:.84rem;padding:5px 8px;outline:none;transition:border-color .15s}.author-field-input:focus{border-color:var(--border-active)}.author-field-checkbox{grid-template-columns:1fr}.author-field-checkbox label{display:flex;align-items:center;gap:6px;font-size:.84rem;color:var(--text-primary);cursor:pointer}.author-editor-add-section{display:flex;gap:8px;margin-top:12px}.author-add-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px dashed var(--border-default);background:none;color:var(--text-secondary);font-size:.82rem;cursor:pointer;transition:color .15s,border-color .15s}.author-add-btn:hover{color:var(--text-primary);border-color:var(--border-active)}.author-suggestions{margin-top:8px;border:1px solid var(--border-default);border-radius:10px;overflow:hidden}.author-suggestion-search{border:none;border-bottom:1px solid var(--border-default);border-radius:0;width:100%}.author-suggestions-list{max-height:150px;overflow-y:auto}.author-suggestion-item{padding:6px 12px;font-size:.84rem;color:var(--text-primary);cursor:pointer;transition:background .1s}.author-suggestion-item:hover{background:var(--bg-hover)}.author-suggestion-empty{padding:10px 12px;font-size:.82rem;color:var(--text-muted);text-align:center}.author-editor-error{margin-top:10px;padding:8px 12px;background:var(--bg-danger);border:1px solid var(--border-danger);border-radius:8px;color:var(--text-danger);font-size:.82rem}.author-editor-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border-default)}.author-editor-cancel{padding:6px 16px;border-radius:8px;border:1px solid var(--border-default);background:none;color:var(--text-secondary);font-size:.84rem;cursor:pointer;transition:color .15s}.author-editor-cancel:hover{color:var(--text-primary)}.author-editor-save{padding:6px 16px;border-radius:8px;border:none;background:var(--btn-primary-bg);color:var(--btn-primary-fg);font-size:.84rem;font-weight:600;cursor:pointer;transition:background .15s}.author-editor-save:hover:not(:disabled){background:color-mix(in srgb,var(--btn-primary-bg) 86%,black)}.author-editor-save:disabled{opacity:.6;cursor:default}.import-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--overlay-scrim);display:flex;align-items:center;justify-content:center;padding:24px}.import-dialog{background:var(--bg-surface);border-radius:16px;border:1px solid var(--border-default);box-shadow:var(--shadow-xl);width:540px;max-width:100%;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.import-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-default)}.import-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.import-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:6px}.import-close:hover{color:var(--text-primary)}.import-tabs{display:flex;border-bottom:1px solid var(--border-default)}.import-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:.84rem;cursor:pointer;transition:color .15s,border-color .15s}.import-tab:hover{color:var(--text-primary)}.import-tab.active{color:var(--text-accent);border-bottom-color:var(--border-active)}.import-body{flex:1;overflow-y:auto;padding:16px 20px}.import-hint{font-size:.82rem;color:var(--text-secondary);margin:0 0 12px}.import-input-row{display:flex;align-items:center;gap:8px}.import-input{flex:1;background:var(--bg-input, var(--bg-surface));border:1px solid var(--border-default);border-radius:8px;color:var(--text-primary);font-size:.86rem;padding:8px 12px;outline:none;transition:border-color .15s}.import-input:focus{border-color:var(--border-active)}.import-type-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-accent);background:color-mix(in srgb,var(--btn-primary-bg) 14%,transparent);border-radius:6px;padding:3px 8px;flex-shrink:0}.import-identifier-actions{display:flex;gap:8px;margin-top:10px}.import-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;font-size:.84rem;cursor:pointer;transition:background .15s,color .15s}.import-btn-secondary{background:none;border:1px solid var(--border-default);color:var(--text-secondary)}.import-btn-secondary:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-active)}.import-btn-primary{background:var(--btn-primary-bg);border:none;color:var(--btn-primary-fg);font-weight:600}.import-btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--btn-primary-bg) 86%,black)}.import-btn:disabled{opacity:.5;cursor:default}.import-btn-full{width:100%;justify-content:center;margin-top:10px}.import-preview{margin-top:14px;border:1px solid var(--border-default);border-radius:12px;padding:12px 14px;background:var(--bg-card)}.import-preview-badge{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-accent);margin-bottom:6px}.import-preview-title{font-size:.9rem;font-weight:600;color:var(--text-primary);line-height:1.3;margin-bottom:4px}.import-preview-authors{font-size:.82rem;color:var(--text-secondary);margin-bottom:4px}.import-preview-meta{display:flex;gap:12px;font-size:.78rem;color:var(--text-muted)}.import-bibtex-section{display:flex;flex-direction:column;gap:10px}.import-bibtex-textarea{width:100%;min-height:180px;background:var(--bg-input, var(--bg-surface));border:1px solid var(--border-default);border-radius:8px;color:var(--text-primary);font-family:Cascadia Code,Fira Code,monospace;font-size:.82rem;padding:10px 12px;outline:none;resize:vertical;transition:border-color .15s}.import-bibtex-textarea:focus{border-color:var(--border-active)}.import-bibtex-actions{display:flex;gap:8px;justify-content:flex-end}.import-file-label{cursor:pointer}.import-error{margin-top:10px;padding:8px 12px;background:var(--bg-danger);border:1px solid var(--border-danger);border-radius:8px;color:var(--text-danger);font-size:.82rem}.import-status{margin-top:10px;color:var(--text-success);font-size:.82rem;font-weight:500}.cat-tree{display:flex;flex-direction:column;gap:2px;flex:1;min-height:0;overflow:hidden;position:relative;font-size:.85rem}.cat-header{display:flex;padding:0 4px;margin-bottom:4px;align-items:center;gap:6px}.cat-create-btn{display:inline-flex;align-items:center;gap:5px;border:1px dashed var(--border-input);background:transparent;color:var(--text-muted);font-size:.8rem;font-weight:500;padding:4px 10px;border-radius:8px;cursor:pointer;transition:all .15s ease}.cat-create-btn:hover{border-color:var(--text-muted);color:var(--text-secondary);background:var(--bg-panel)}.cat-export-buttons{display:flex;gap:4px;margin-left:auto}.cat-export-btn{display:inline-flex;align-items:center;gap:3px;border:1px solid var(--border-default);background:var(--bg-panel);color:var(--text-muted);font-size:.68rem;font-weight:600;padding:3px 7px;border-radius:6px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.cat-export-btn:hover{border-color:var(--border-input);color:var(--text-secondary);background:var(--bg-accent)}.cat-filter-banner{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.75rem;color:var(--tab-active-fg);padding:5px 10px;border-radius:8px;background:var(--bg-warning);border:1px solid var(--tab-active-border);margin:0 4px 4px}.cat-filter-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-filter-clear{flex-shrink:0;border:1px solid var(--border-default);background:var(--bg-card);color:var(--text-primary);border-radius:6px;padding:2px 8px;font-size:.7rem;cursor:pointer;transition:all .12s ease}.cat-filter-clear:hover{border-color:var(--tab-active-border);color:var(--tab-active-fg)}.cat-empty{font-size:.82rem;color:var(--text-muted);padding:12px 8px;text-align:center}.cat-list{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto}.cat-children{display:flex;flex-direction:column}.cat-row{display:flex;align-items:center;gap:4px;padding:5px 6px 5px 8px;margin:1px 4px;border-radius:8px;border:1px solid transparent;cursor:default;min-width:0;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease,opacity .15s ease;-webkit-user-select:none;user-select:none}.cat-row:hover{background:var(--bg-panel);border-color:var(--border-default)}.cat-row--selected{background:var(--bg-warning);border-color:var(--tab-active-bg)}.cat-row--selected:hover{background:var(--bg-warning);border-color:var(--text-warning)}.cat-row--dragging{opacity:.4}.cat-row--drop-inside{background:color-mix(in srgb,var(--annotation-direct) 12%,var(--bg-card));border-color:color-mix(in srgb,var(--annotation-direct) 44%,var(--border-default));box-shadow:0 0 0 2px color-mix(in srgb,var(--annotation-direct) 18%,transparent)}.cat-row--item-drop{background:color-mix(in srgb,var(--annotation-summary) 12%,var(--bg-card));border-color:color-mix(in srgb,var(--annotation-summary) 40%,var(--border-default));box-shadow:0 0 0 2px color-mix(in srgb,var(--annotation-summary) 18%,transparent)}.cat-row--editing{background:var(--bg-card);border-color:var(--border-input);box-shadow:0 0 0 2px color-mix(in srgb,var(--text-muted) 16%,transparent)}.cat-collapse-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;border:none;background:transparent;color:var(--text-muted);border-radius:4px;cursor:pointer;transition:color .12s ease,background .12s ease;padding:0}.cat-collapse-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.cat-collapse-btn svg{transition:transform .2s ease;transform:rotate(0)}.cat-collapse-btn .cat-chevron--open{transform:rotate(90deg)}.cat-collapse-spacer{display:inline-block;width:20px;flex-shrink:0}.cat-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--text-primary);line-height:1.4}.cat-edit-input{flex:1;min-width:0;border:1px solid color-mix(in srgb,var(--annotation-direct) 44%,var(--border-default));border-radius:6px;padding:2px 8px;font-size:.85rem;font-weight:500;color:var(--text-primary);background:var(--bg-card);outline:none;transition:border-color .12s ease,box-shadow .12s ease}.cat-edit-input:focus{border-color:var(--annotation-direct);box-shadow:0 0 0 2px var(--focus-ring-blue)}.cat-actions{display:flex;align-items:center;gap:2px;flex-shrink:0;opacity:0;transition:opacity .12s ease}.cat-row:hover .cat-actions,.cat-row--editing .cat-actions{opacity:1}.cat-action-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;border-radius:6px;cursor:pointer;padding:0;transition:background .12s ease,color .12s ease}.cat-add-btn{color:var(--text-muted)}.cat-add-btn:hover{background:var(--border-default);color:var(--text-secondary)}.cat-delete-btn{color:var(--btn-danger-bg);position:relative;overflow:hidden}.cat-delete-btn:hover{background:color-mix(in srgb,var(--btn-danger-bg) 12%,transparent)}.cat-delete-btn svg{position:relative;z-index:2}.cat-delete-btn:after{content:"";position:absolute;left:0;top:0;bottom:0;width:100%;background:linear-gradient(90deg,color-mix(in srgb,var(--tab-active-border) 24%,transparent),color-mix(in srgb,var(--tab-active-border) 8%,transparent));transform-origin:left center;transform:scaleX(0);z-index:1;pointer-events:none;border-radius:6px}.cat-delete--arming{color:var(--tab-active-border)}.cat-delete--arming:after{animation:cat-arm-fill 1.5s linear forwards}.cat-delete--armed:after{transform:scaleX(1)}.cat-delete--armed{color:var(--text-danger);background:color-mix(in srgb,var(--btn-danger-bg) 14%,transparent)}@keyframes cat-arm-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.cat-drop-indicator{height:2px;background:var(--annotation-direct);border-radius:2px;margin:0 4px;position:relative;pointer-events:none}.cat-drop-indicator:before{content:"";position:absolute;left:-3px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--annotation-direct)}.cat-root-drop-end{min-height:24px;flex:1;border-radius:8px;margin:2px 4px;transition:background .12s ease}.cat-root-drop-end--active{background:color-mix(in srgb,var(--annotation-direct) 12%,var(--bg-card))}.cat-toast{position:absolute;right:8px;bottom:8px;background:var(--text-primary);color:var(--bg-hover);font-size:.72rem;font-weight:500;padding:5px 12px;border-radius:999px;box-shadow:var(--shadow-md);pointer-events:none;z-index:10}.cat-toast-enter-active{transition:all .2s ease-out}.cat-toast-leave-active{transition:all .2s ease-in}.cat-toast-enter-from,.cat-toast-leave-to{opacity:0;transform:translateY(6px)}.overview-page{min-height:100vh;background:var(--bg-page);position:relative}@keyframes overview-spin{to{transform:rotate(360deg)}}.overview-top-actions{position:absolute;top:16px;right:24px;display:flex;gap:12px;z-index:2}.overview{height:100vh;padding:80px 48px 48px;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto}.overview-card{width:min(760px,100%);background:var(--bg-card);border-radius:var(--radius-2xl);border:1px solid var(--border-default);box-shadow:var(--shadow-xl);padding:28px 26px;display:grid;gap:20px}.overview-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.overview-title{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.overview-subtitle{color:var(--text-muted);font-size:.95rem;margin-top:4px}.overview-action{border:none;border-radius:var(--radius-lg);padding:10px 14px;background:var(--btn-primary-bg);color:var(--btn-primary-fg);font-weight:600;cursor:pointer}.overview-action-secondary{background:var(--btn-ghost-bg);color:var(--btn-ghost-fg)}.import-project-popover-anchor{position:relative}.import-project-popover{position:absolute;top:calc(100% + 8px);right:0;width:min(560px,calc(100vw - 32px));padding:16px;border-radius:var(--radius-xl);border:1px solid var(--border-default);background:var(--bg-card);box-shadow:var(--shadow-xl);z-index:20;display:grid;gap:10px}.import-popover-title{font-size:1rem;font-weight:700;color:var(--text-primary)}.import-popover-subtitle{margin:0;font-size:.86rem;color:var(--text-muted)}.import-drop-zone{border:1px dashed var(--border-default);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--bg-panel) 78%,var(--bg-card));display:grid;gap:8px;justify-items:start;padding:14px;transition:border-color .16s ease,background-color .16s ease}.import-drop-zone.is-dragging{border-color:var(--btn-blue-bg);background:color-mix(in srgb,var(--bg-accent) 34%,var(--bg-card))}.import-drop-title{font-size:.9rem;font-weight:700;color:var(--text-primary)}.import-drop-hint{font-size:.8rem;color:var(--text-muted)}.import-hidden-input{display:none}.import-pick-button{min-width:130px}.import-selection{margin:0;font-size:.8rem;color:var(--text-secondary)}.import-popover-actions{display:flex;justify-content:flex-end;gap:8px}.overview-loading,.overview-error,.overview-empty{font-size:.95rem;color:var(--text-secondary);background:var(--bg-panel);border-radius:var(--radius-lg);padding:14px 16px;border:1px solid var(--border-default)}.overview-error{color:var(--text-danger);background:var(--bg-danger);border-color:var(--border-danger)}.overview-grid{display:grid;gap:12px}.overview-project{border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:14px 16px;background:var(--bg-card);text-align:left;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;cursor:pointer;transition:box-shadow .15s ease;overflow:visible}.overview-project:hover,.overview-project.is-keyboard-selected{box-shadow:var(--shadow-lg)}.overview-project.is-disabled{cursor:not-allowed;opacity:.72}.overview-project.is-disabled:hover{box-shadow:none}.overview-project-main{display:grid;gap:6px}.overview-project-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;justify-items:end;column-gap:10px;row-gap:6px;min-width:240px}.overview-project-info-column{display:grid;gap:4px;min-width:0}.overview-project-menu-column{position:relative;display:grid;justify-items:end}.project-menu-button{position:static;z-index:0}.project-actions-popover{position:absolute;top:34px;right:0;width:min(320px,calc(100vw - 28px));min-width:min(320px,calc(100vw - 28px));z-index:1000;padding:12px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--bg-card) 92%,var(--bg-panel));border:1px solid var(--border-default);box-shadow:var(--shadow-lg);max-height:min(360px,70vh);overflow-y:auto;display:grid;gap:10px;justify-items:stretch}.project-actions-popover .settings-card{margin-bottom:8px}.project-copy-card{display:grid;gap:8px}.project-copy-actions-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.project-copy-actions-row-single{grid-template-columns:1fr}.project-copy-actions-grid-cloud{display:grid;grid-template-columns:1fr 1fr;gap:8px}.overview-offline-action{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-panel);color:var(--text-primary);font-size:.78rem;font-weight:600;padding:7px 11px;cursor:pointer}.overview-offline-action.is-ready{border-color:color-mix(in srgb,var(--text-success) 35%,var(--border-default));background:color-mix(in srgb,var(--bg-success) 60%,var(--bg-card))}.overview-offline-action:disabled{opacity:.65;cursor:wait}.overview-offline-meta{font-size:.72rem;color:var(--text-muted);max-width:260px;text-align:right}.overview-offline-meta.is-error{color:var(--text-danger)}.overview-upload-warning{font-size:.72rem;color:var(--text-warning);text-transform:lowercase;text-align:right;font-weight:600}:root[data-theme=dark] .overview-upload-warning{color:var(--text-warning)}.overview-project-title{font-weight:600;color:var(--text-primary)}.overview-project-title-wrap{display:flex;align-items:center;gap:8px;min-width:0}.overview-project-type-icon{width:20px;height:20px;border-radius:999px;border:1px solid var(--border-default);background:var(--bg-panel);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.overview-project-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.overview-open-users{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.overview-project-indexing{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:var(--text-secondary);background:var(--bg-panel);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:2px 8px;width:fit-content}.overview-open-user-badge{width:22px;height:22px;border-radius:999px;background:color-mix(in srgb,var(--bg-accent) 65%,var(--bg-card));color:var(--text-primary);border:1px solid var(--border-default);display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;line-height:1}.overview-open-user-badge-more{width:auto;min-width:22px;padding:0 7px}.overview-project-meta{color:var(--text-muted);font-size:.85rem;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.overview-project-role{text-transform:uppercase;font-weight:700;letter-spacing:.04em}.overview-project-warning{margin-top:2px;font-size:.75rem;color:var(--text-warning)}.overview-orphan-actions-row{display:grid;grid-template-columns:auto auto;justify-content:start;gap:8px;margin-top:6px}.overview-orphan-actions{display:grid;gap:6px;justify-items:end}.overview-offline-action-danger{border-color:var(--border-danger);color:var(--text-danger)}.overview-project-key{font-family:Cascadia Code,Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}@media(max-width:900px){.import-project-popover{right:-12px;width:min(520px,calc(100vw - 20px))}}@media(max-width:640px){.overview-project{grid-template-columns:1fr}.overview-project-actions{min-width:0;width:100%;justify-items:stretch;grid-template-columns:minmax(0,1fr) auto}.overview-orphan-actions{justify-items:start}.overview-offline-meta{max-width:none;text-align:left}.overview-project-menu-column{justify-items:end}}.settings-menu,.account-menu{position:relative;display:inline-flex}.account-popover{position:absolute;top:48px;right:0;min-width:200px;padding:12px 14px;border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--border-default);box-shadow:var(--shadow-lg);display:grid;gap:4px;z-index:60}.settings-popover{width:min(620px,calc(100vw - 28px));min-width:min(620px,calc(100vw - 28px));gap:12px;max-height:80vh;overflow-y:auto}.settings-popover-inline{position:static;top:auto;right:auto;width:100%;min-width:0;max-height:none;overflow:visible;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none}.settings-popover-layout{display:grid;grid-template-columns:1fr;gap:10px}.settings-card{display:grid;gap:8px;padding:10px;border-radius:var(--radius-md);border:1px solid var(--border-default);background:color-mix(in srgb,var(--bg-card) 88%,var(--bg-panel))}.settings-card.span-2{grid-column:auto}.settings-card-title{font-size:.78rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.settings-row{display:grid;gap:3px}.settings-label,.account-title{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.settings-value{font-size:.9rem;color:var(--text-primary);word-break:break-all}.settings-divider,.account-divider{height:1px;background:var(--border-default);margin:4px 0}.settings-inline-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.settings-field{display:grid;gap:6px;font-size:.85rem;color:var(--text-secondary)}.settings-field input[type=file]{font-size:.8rem}.settings-hint{font-size:.75rem;color:var(--text-muted)}.settings-input{border:1px solid var(--border-input);border-radius:var(--radius-md);padding:8px 10px;font-size:.9rem;color:var(--text-primary);background:var(--bg-input)}.settings-input:focus,.invite-list-input:focus{outline:2px solid var(--focus-ring-blue);border-color:var(--btn-blue-bg)}.settings-section,.settings-danger,.members-section{display:grid;gap:8px}.settings-inline-action{min-width:74px}.settings-button{border:none;border-radius:var(--radius-md);padding:8px 12px;background:var(--btn-blue-bg);color:var(--btn-blue-fg);font-weight:600;cursor:pointer;min-height:38px;display:flex;align-items:center;justify-content:center;font-size:.85rem}.settings-button.danger{background:var(--btn-danger-bg);color:var(--btn-danger-fg)}:root[data-theme=dark] .settings-button.danger{background:var(--danger-strong-bg)!important;color:var(--danger-strong-fg)!important}.settings-button.ghost,.notification-action.decline{background:var(--btn-ghost-bg);color:var(--btn-ghost-fg)}.settings-button:disabled,.invite-button:disabled{background:var(--btn-disabled-bg);cursor:not-allowed}.settings-error{color:var(--text-danger);font-size:.8rem;margin:0}.settings-status{color:var(--text-success);font-size:.8rem;margin:0}.settings-danger .settings-button.danger{min-width:140px}.settings-warning{font-size:.8rem;color:var(--text-warning)}.settings-actions{display:flex;gap:8px;flex-wrap:wrap}.account-name{font-size:.95rem;font-weight:600;color:var(--text-primary)}.account-name-editable{cursor:pointer}.account-name-edit-icon{vertical-align:middle;margin-left:4px;fill:var(--text-muted)}.account-name-edit-actions{display:flex;gap:6px;margin-top:6px}.account-email{font-size:.85rem;color:var(--text-secondary);word-break:break-all}.account-logout-button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease}.account-logout-button:hover{background:var(--bg-hover);color:var(--text-primary)}.toolbar-button,.side-panel-toggle,.pdf-search-trigger{--button-color: var(--text-secondary);--button-bg: color-mix(in srgb, var(--button-color) 14%, var(--bg-card));--button-border: color-mix(in srgb, var(--button-color) 52%, transparent);--button-shadow: color-mix(in srgb, var(--button-color) 24%, transparent);width:40px;height:40px;border-radius:12px;border:1.5px solid var(--button-border);background:var(--button-bg);color:var(--button-color);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 3px 8px color-mix(in srgb,var(--button-shadow) 55%,transparent);transition:border-color .15s ease,border-width .15s ease,box-shadow .15s ease,transform .15s ease}.toolbar-button:hover,.side-panel-toggle:hover,.pdf-search-trigger:hover{transform:translateY(-1px);border-color:var(--btn-blue-bg);box-shadow:0 6px 12px color-mix(in srgb,var(--btn-blue-bg) 16%,transparent)}.toolbar-button.is-selected,.side-panel-toggle.is-selected,.pdf-search-trigger.is-selected,.toolbar-button[aria-pressed=true]{border-width:2.5px}.toolbar-button svg,.side-panel-toggle svg,.pdf-search-trigger svg{width:18px;height:18px;fill:currentColor}.layout-header .toolbar-button,.pdf-search-trigger{--button-color: var(--text-secondary);--button-bg: var(--bg-card);--button-border: var(--border-subtle)}.members-header-row,.settings-title-row{display:flex;align-items:center;justify-content:space-between}.member-add-button{border:1px solid var(--border-default);border-radius:var(--radius-md);width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-card);color:var(--text-primary);font-size:1.2rem;line-height:1;font-weight:700;cursor:pointer}.members-list,.transfer-section{display:grid;gap:6px}.member-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);background:var(--bg-hover)}.member-info,.pending-invite-info{flex:1;min-width:0}.member-name{font-size:.85rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-email{font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-role{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:2px 6px;border-radius:6px;background:var(--bg-panel)}.member-role.owner{color:var(--text-accent);background:var(--bg-accent)}.member-remove{padding:4px;border:none;background:none;cursor:pointer;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);transition:color .15s ease,background .15s ease}.member-remove svg{width:14px;height:14px;fill:currentColor}.member-remove-confirm{display:inline-flex;align-items:center;gap:4px}.member-remove.confirm,.member-remove.cancel{border:1px solid var(--border-default);border-radius:999px;padding:3px 8px;font-size:.7rem;font-weight:700;background:var(--bg-card)}.member-remove.confirm{color:var(--text-danger);border-color:color-mix(in srgb,var(--border-default) 72%,var(--text-danger))}.member-remove.cancel{color:var(--text-muted)}.invite-button{border:none;border-radius:var(--radius-md);padding:7px 12px;background:var(--btn-primary-bg);color:var(--btn-primary-fg);font-weight:600;font-size:.82rem;cursor:pointer;white-space:nowrap}.pending-invite{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:var(--radius-sm);background:var(--bg-warning);font-size:.8rem}.pending-invite-name{font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pending-invite-label{font-size:.7rem;color:var(--text-warning);font-weight:600;text-transform:uppercase}.pending-invite-cancel{padding:3px 8px;border:none;border-radius:6px;background:none;cursor:pointer;font-size:.75rem;font-weight:600;color:var(--text-muted)}.pending-invite-cancel:hover,.member-remove:hover{color:var(--text-danger);background:var(--bg-danger)}.transfer-confirm-row{display:flex;gap:6px;flex-wrap:wrap}.invite-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;background:var(--overlay-scrim);display:flex;align-items:center;justify-content:center;z-index:120;overflow:hidden}.invite-modal{width:min(560px,calc(100vw - 32px));max-height:min(520px,calc(100vh - 64px));overflow-y:auto;overflow-x:hidden;background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:grid;gap:10px;padding:16px;flex-shrink:0}.invite-modal-title{font-size:1rem;font-weight:700;color:var(--text-primary)}.invite-modal-subtitle{margin:0;font-size:.82rem;color:var(--text-muted)}.invite-list-input{width:100%;border:1px solid var(--border-input);border-radius:var(--radius-md);padding:10px 12px;resize:vertical;min-height:120px;color:var(--text-primary);background:var(--bg-input);font-family:inherit;font-size:.88rem}.invite-modal-actions{display:flex;justify-content:flex-end;gap:8px}@media(max-width:880px){.settings-popover{width:min(320px,calc(100vw - 24px));min-width:min(320px,calc(100vw - 24px))}.settings-popover-layout{grid-template-columns:1fr}.settings-card.span-2{grid-column:auto}.settings-inline-field{grid-template-columns:1fr}.settings-inline-action{width:100%}}.notification-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:9px;background:var(--btn-danger-bg);color:var(--btn-danger-fg);font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px;pointer-events:none}.notification-list{display:grid;gap:10px;max-height:320px;overflow-y:auto;padding-right:2px}.notification-item{display:grid;gap:6px;padding:12px;border-radius:12px;background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--bg-accent) 48%,transparent) 0%,transparent 58%),var(--bg-hover);border:1px solid color-mix(in srgb,var(--border-default) 84%,var(--text-primary));box-shadow:var(--shadow-md);font-size:.82rem}.member-add-button:hover,.notification-item.unread{border-color:var(--border-active);box-shadow:var(--shadow-lg)}.notification-title{font-weight:700;color:var(--text-primary);letter-spacing:.01em;font-size:.94rem;line-height:1.2}.notification-title.invitation{font-size:.94rem;color:var(--text-primary)}.notification-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.notification-project{color:var(--text-primary);font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-inviter{color:var(--text-secondary);font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-body{color:var(--text-secondary);font-size:.79rem;line-height:1.35}.notification-time{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;align-self:start}.notification-actions{display:flex;gap:8px;margin-top:2px}.notification-actions.invitation{justify-content:center}.notification-action{border:1px solid transparent;border-radius:999px;padding:5px 12px;font-size:.75rem;font-weight:700;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}.notification-action:hover{transform:translateY(-1px);filter:saturate(1.05)}.notification-action.accept{background:linear-gradient(120deg,var(--btn-primary-bg),color-mix(in srgb,var(--btn-primary-bg) 72%,#ffffff));color:var(--btn-primary-fg);box-shadow:0 6px 16px color-mix(in srgb,var(--btn-primary-bg) 36%,transparent)}.notification-action.decline{background:color-mix(in srgb,var(--bg-panel) 82%,var(--bg-danger));color:var(--text-primary);border-color:color-mix(in srgb,var(--border-default) 76%,var(--text-danger))}.notification-action.dismiss{background:none;color:var(--text-muted);padding:4px 8px}.notification-action.dismiss:hover{color:var(--text-danger)}.theme-toggle{position:relative}.hk-trigger-button{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-input);border-radius:8px;background:var(--bg-input);color:var(--text-muted);font-size:.82rem;font-weight:700;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.hk-trigger-button:hover{border-color:var(--btn-blue-bg);color:var(--btn-blue-bg);background:color-mix(in srgb,var(--btn-blue-bg) 6%,transparent)}.pdf-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;color:var(--text-secondary);font-weight:600}.spinner{width:36px;height:36px;border-radius:999px;border:4px solid var(--border-default);border-top-color:var(--border-active);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.missing-pdf{display:flex;align-items:center;justify-content:center;height:100%;padding:24px}.missing-pdf-card{background:var(--bg-card);border:1px dashed var(--border-input);border-radius:18px;padding:26px 28px;width:min(440px,100%);text-align:center;box-shadow:var(--shadow-md);display:grid;gap:12px}.missing-pdf-dropzone{transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.missing-pdf-dropzone.is-drag-active{border-color:var(--border-active);background:color-mix(in srgb,var(--bg-card) 84%,var(--btn-blue-bg) 16%);box-shadow:0 0 0 3px color-mix(in srgb,var(--btn-blue-bg) 26%,transparent)}.missing-pdf-dropzone.is-drop-disabled{opacity:.85}.missing-pdf-title{margin:0;font-size:1.1rem;color:var(--text-primary)}.missing-pdf-text{margin:0;color:var(--text-secondary);line-height:1.5}.missing-pdf-drop-hint{margin:0;font-size:.88rem;color:var(--text-tertiary, var(--text-secondary))}.missing-pdf-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.capture-url-input{display:flex;gap:8px;width:100%;align-items:center;justify-content:center;margin-top:8px;flex-wrap:wrap}.capture-url-input-field{min-width:240px;flex:1;max-width:320px;padding:8px 10px;border-radius:10px;border:1px solid var(--border-input);background:var(--bg-input);color:var(--text-primary);font-size:.88rem}.missing-pdf-input{display:none}.missing-pdf-error{margin:0;color:var(--text-danger);background:var(--bg-danger);border-radius:10px;padding:8px 10px;font-size:.8rem}.viewport{background:var(--bg-page);height:100%;position:relative}.page{position:relative;margin:18px auto;background:var(--bg-card);box-shadow:var(--shadow-lg);border-radius:12px;overflow:hidden;-webkit-user-drag:none}.page canvas{-webkit-user-drag:none;-moz-user-select:none;-webkit-user-select:none;user-select:none}.overlay{position:absolute;left:0;top:0;pointer-events:none}.link-overlay{position:absolute;left:0;top:0;pointer-events:none;z-index:20}.link-hit{position:absolute;pointer-events:auto;cursor:pointer;text-decoration:none;background:transparent;display:block;z-index:30}.overlay .highlight{position:absolute;border:none;--highlight-rgb: var(--annotation-highlight-rgb);--highlight-alpha: .3;--highlight-selected-alpha: .45;background:rgba(var(--highlight-rgb),var(--highlight-alpha));box-sizing:border-box;border-radius:4px;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;pointer-events:none;transition:background .15s ease,box-shadow .15s ease}.overlay .highlight.direct{--highlight-rgb: var(--annotation-direct-rgb);--highlight-alpha: .28}.overlay .highlight.indirect{--highlight-rgb: var(--annotation-indirect-rgb);--highlight-alpha: .28}.overlay .highlight.summary{--highlight-rgb: var(--annotation-summary-rgb);--highlight-alpha: .22;--highlight-selected-alpha: .4}.overlay .highlight.comment{--highlight-rgb: var(--annotation-comment-rgb);--highlight-alpha: .22;--highlight-selected-alpha: .4}.overlay .highlight.red{--highlight-rgb: var(--annotation-quotation-rgb);--highlight-alpha: .25}.overlay .highlight.note{--highlight-rgb: var(--annotation-note-rgb);--highlight-alpha: .25}.overlay .highlight.selected{background:rgba(var(--highlight-rgb),var(--highlight-selected-alpha));box-shadow:inset 0 0 0 1px rgba(var(--highlight-rgb),var(--highlight-selected-alpha))}.overlay .highlight.highlight.selected{box-shadow:inset 0 0 0 1px rgba(var(--highlight-rgb),.8)}.overlay .highlight.area,.overlay .highlight.area-box{background:rgba(var(--annotation-area-rgb),.08);border:2px dashed rgba(var(--annotation-area-rgb),.65);border-radius:3px}.overlay .highlight.area.selected,.overlay .highlight.area-box.selected{background:rgba(var(--annotation-area-rgb),.15);border-color:rgba(var(--annotation-area-rgb),.9);box-shadow:0 0 0 2px rgba(var(--annotation-area-rgb),.2)}.annotation-marker{position:absolute;width:4px;border-radius:999px;pointer-events:none;background:rgba(var(--annotation-comment-rgb),.7);box-shadow:0 0 0 1px #ffffffb3}.annotation-marker.summary{background:rgba(var(--annotation-summary-rgb),.8)}.annotation-marker.comment{background:rgba(var(--annotation-comment-rgb),.8)}.annotation-marker.note{background:rgba(var(--annotation-note-rgb, 148, 163, 184),.8)}.annotation-marker.summary.selected{background:rgba(var(--annotation-summary-rgb),1)}.annotation-marker.comment.selected{background:rgba(var(--annotation-comment-rgb),1)}.annotation-marker.note.selected{background:rgba(var(--annotation-note-rgb, 148, 163, 184),1)}.selection-overlay{position:absolute;left:0;top:0;pointer-events:none;z-index:60}.selection-rect{position:absolute;border-radius:4px;background:rgba(var(--annotation-direct-rgb),.2);border:1px solid rgba(var(--annotation-direct-rgb),.45);box-shadow:inset 0 0 0 1px #ffffff80}.selection-rect.pending{background:color-mix(in srgb,var(--btn-primary-bg) 20%,transparent);border-color:color-mix(in srgb,var(--btn-primary-bg) 50%,transparent)}.selection-rect.remote{border:none;box-shadow:none;position:relative}.selection-rect.remote.highlight{border-radius:4px}.selection-user-label{position:absolute;top:-18px;left:0;font-size:.6rem;font-weight:700;color:var(--color-white);padding:1px 5px;border-radius:4px 4px 4px 0;white-space:nowrap;pointer-events:auto;cursor:default;line-height:1.3;z-index:1;transition:opacity .14s ease}.selection-user-label:hover{opacity:.08}.live-overlay{z-index:60}.overlay .highlight.remote-live{pointer-events:none;cursor:default}.overlay .highlight.remote-live .selection-user-label{pointer-events:auto}.pdf-presence-strip{position:absolute;top:0;bottom:0;right:12px;z-index:80;pointer-events:none;width:max-content}.presence-marker{position:absolute;right:0;top:var(--presence-top, 84px);display:flex;align-items:center;gap:4px;justify-content:center;border:none;border-radius:999px;padding:2px;background:var(--presence-color, var(--presence-fallback));color:var(--color-white);font-size:.58rem;font-weight:700;pointer-events:auto;cursor:pointer;box-shadow:0 2px 8px #00000026;transition:top .28s cubic-bezier(.22,1,.36,1),transform .16s ease,box-shadow .16s ease,opacity .2s ease;white-space:nowrap;transform-origin:center right;animation:presence-float 2.8s ease-in-out infinite}.presence-marker:hover{transform:translate(-2px) scale(1.05);box-shadow:0 4px 12px #0003}.presence-marker.is-top,.presence-marker.is-bottom{opacity:.94;padding-left:4px}.presence-marker.is-top:before,.presence-marker.is-bottom:before{content:"";width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;margin-right:1px;transform:translate(1px)}.presence-marker.is-top:before{border-bottom:7px solid rgba(255,255,255,.92)}.presence-marker.is-bottom:before{border-top:7px solid rgba(255,255,255,.92)}.presence-marker.is-inside{opacity:1}.presence-avatar{width:16px;height:16px;border-radius:999px;background:#ffffff40;display:flex;align-items:center;justify-content:center;font-size:.54rem;font-weight:800}.presence-page{min-width:12px;text-align:center;font-size:.72rem;font-weight:800;line-height:1;opacity:.9;padding-right:2px}@keyframes presence-float{0%,to{filter:saturate(1)}50%{filter:saturate(1.12)}}.viewer.suppress-native-selection .page ::selection{background:transparent;color:inherit}.viewer.suppress-native-selection .page ::-moz-selection{background:transparent;color:inherit}.search-input-wrap{position:relative;display:flex;align-items:center}.search-input-wrap .search-icon{position:absolute;left:10px;width:14px;height:14px;fill:var(--text-muted);pointer-events:none;flex-shrink:0}.search-input{width:100%;border:1px solid var(--border-input);border-radius:var(--radius-md);padding:7px 10px 7px 30px;font-size:.82rem;color:var(--text-primary);background:var(--bg-input);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.search-input:focus{border-color:var(--btn-blue-bg);box-shadow:0 0 0 2px var(--focus-ring-blue)}.search-input::placeholder{color:var(--text-muted)}.search-clear-button{position:absolute;right:6px;background:none;border:none;cursor:pointer;padding:2px;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.search-clear-button:hover{color:var(--text-primary)}.project-search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh}.project-search-panel{background:var(--bg-card);border-radius:var(--radius-xl);border:1px solid var(--border-default);box-shadow:var(--shadow-xl);width:620px;max-width:90vw;max-height:75vh;display:flex;flex-direction:column;overflow:hidden}.project-search-header{padding:16px 16px 12px;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--border-default)}.project-search-header .search-input{font-size:.95rem;padding:10px 12px 10px 34px}.project-search-header .search-icon{width:16px;height:16px;left:12px}.project-search-results{overflow-y:auto;padding:8px 12px 12px;display:flex;flex-direction:column;gap:6px;min-height:60px}.project-search-empty,.project-search-hint{padding:24px 16px;text-align:center;color:var(--text-muted);font-size:.85rem}.search-result-card{border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-panel);padding:10px 12px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease;display:flex;flex-direction:column;gap:6px}.search-result-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm);border-color:var(--border-active)}.search-result-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.search-result-title{font-size:.85rem;font-weight:600;color:var(--text-primary);line-height:1.3}.search-result-type-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 6px;border-radius:4px;background:var(--bg-accent);color:var(--text-accent)}.search-result-type-badge.badge-annotation{background:color-mix(in srgb,var(--annotation-highlight) 18%,transparent);color:color-mix(in srgb,var(--annotation-highlight) 70%,#000)}.search-result-type-badge.badge-fulltext{background:color-mix(in srgb,var(--annotation-summary) 15%,transparent);color:color-mix(in srgb,var(--annotation-summary) 70%,#000)}:root[data-theme=dark] .search-result-type-badge.badge-annotation{background:color-mix(in srgb,var(--annotation-highlight) 12%,transparent);color:var(--annotation-highlight)}:root[data-theme=dark] .search-result-type-badge.badge-fulltext{background:color-mix(in srgb,var(--annotation-summary) 12%,transparent);color:var(--annotation-summary)}.search-result-authors{font-size:.75rem;color:var(--text-secondary)}.search-result-category{font-size:.7rem;color:var(--text-muted)}.search-result-snippet{font-size:.78rem;color:var(--text-secondary);line-height:1.4;background:var(--bg-hover);border-radius:var(--radius-sm);padding:6px 8px;word-break:break-word}.search-result-snippet mark{background:color-mix(in srgb,var(--annotation-highlight) 35%,transparent);color:inherit;border-radius:2px;padding:0 1px}:root[data-theme=dark] .search-result-snippet mark{background:color-mix(in srgb,var(--annotation-highlight) 22%,transparent)}.search-result-page{font-size:.7rem;color:var(--text-muted)}.pdf-search-floating{position:absolute;bottom:24px;left:50%;transform:translate(-50%);z-index:150;background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:8px 12px;display:flex;align-items:center;gap:8px;min-width:0;width:min(680px,calc(100vw - 28px),calc(var(--pdf-search-max-width, 680px) - 2px));max-width:min(680px,calc(100vw - 28px),calc(var(--pdf-search-max-width, 680px) - 2px))}.pdf-search-input-wrap{flex:1 1 auto;min-width:160px}.pdf-search-floating .search-input{flex:1;min-width:0;border:none;background:transparent;padding:6px 8px 6px 28px;font-size:.88rem}.pdf-search-floating .search-input:focus{box-shadow:none}.pdf-search-floating .search-icon{left:8px}.pdf-search-options{display:flex;align-items:center;gap:4px;flex-shrink:0}.pdf-search-option-btn{border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-secondary);border-radius:var(--radius-sm);width:30px;height:28px;padding:0;font-size:.72rem;font-weight:600;letter-spacing:.01em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);transition:color .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}.pdf-search-option-icon{width:12px;height:12px;fill:currentColor}.pdf-search-option-aa{font-size:.78rem;line-height:1;font-weight:700;letter-spacing:-.01em}.pdf-search-option-btn:hover{color:var(--text-primary);border-color:var(--border-active);box-shadow:var(--shadow-md);transform:translateY(-1px)}.pdf-search-option-btn.active{color:var(--btn-blue-text);background:color-mix(in srgb,var(--btn-blue-bg) 16%,var(--bg-card));border-color:color-mix(in srgb,var(--btn-blue-bg) 58%,var(--border-subtle))}.pdf-search-nav{display:flex;align-items:center;gap:4px;margin-left:auto;flex-shrink:0}.pdf-search-count{font-size:.75rem;color:var(--text-muted);white-space:nowrap;min-width:56px;text-align:center}.pdf-search-nav-btn{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);width:28px;height:28px;padding:0;cursor:pointer;color:var(--text-primary);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.pdf-search-nav-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:var(--border-active)}.pdf-search-nav-btn:disabled{opacity:.4;cursor:default}.pdf-search-nav-btn svg{width:14px;height:14px;fill:currentColor}.pdf-search-close-btn{background:var(--bg-card);border:1px solid var(--border-subtle);cursor:pointer;width:28px;height:28px;padding:0;color:var(--text-muted);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,color .15s ease}.pdf-search-close-btn:hover{color:var(--text-primary);transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:var(--border-active)}.pdf-search-close-btn svg{width:14px;height:14px;fill:currentColor}@media(max-width:900px){.pdf-search-floating{left:50%;right:auto;transform:translate(-50%);min-width:0;width:min(94vw,620px,calc(var(--pdf-search-max-width, 620px) - 2px));max-width:min(94vw,calc(var(--pdf-search-max-width, 94vw) - 2px));bottom:16px;flex-wrap:wrap}.pdf-search-input-wrap{flex-basis:100%}.pdf-search-options{margin-right:auto}.pdf-search-nav{margin-left:0}}.pdf-search-highlight-rect{position:absolute;background:color-mix(in srgb,var(--annotation-highlight) 35%,transparent);border:1px solid color-mix(in srgb,var(--annotation-highlight) 70%,transparent);border-radius:2px;pointer-events:none;mix-blend-mode:multiply}.pdf-search-highlight-rect.active{background:color-mix(in srgb,var(--annotation-comment) 45%,transparent);border-color:color-mix(in srgb,var(--annotation-comment) 80%,transparent)}.project-search-trigger{position:relative;display:inline-flex}.pdf-search-trigger{position:static}.app-tooltip{position:fixed;background-color:var(--color-bg-inverse);color:var(--color-text-inverse);padding:6px 10px;border-radius:4px;font-size:12px;line-height:1.4;white-space:pre-wrap;pointer-events:none;z-index:10000;opacity:0;visibility:hidden;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:opacity .15s ease,visibility .15s ease;max-width:250px;text-align:center}.app-tooltip.visible{opacity:1;visibility:visible}
