:root{color-scheme:dark;--color-bg-primary:#1e1e1e;--color-bg-secondary:#252525;--color-bg-tertiary:#2b2b2b;--color-bg-nav:#1a1a1a;--color-bg-modifier-hover:rgba(255,255,255,.06);--color-bg-modifier-active:rgba(255,255,255,.1);--color-text-normal:#dcddde;--color-text-muted:#999;--color-text-faint:#666;--color-text-on-accent:#fff;--color-text-accent:#7f6df2;--color-text-error:#f56565;--color-accent:#7f6df2;--color-accent-hover:#6c5ce7;--color-accent-muted:rgba(127,109,242,.25);--color-divider:rgba(255,255,255,.07);--color-border-normal:rgba(255,255,255,.1);--color-border-hover:rgba(255,255,255,.16);--color-border-focus:var(--color-accent);--color-tag:#48bb78;--color-entity:#a78bfa;--color-link:#63b3ed;--color-bookmark:#f6c343;--color-archive:#e67e22;--color-danger:#f56565;--color-node-document:rgba(99,179,237,.45);--color-node-entity:rgba(167,139,250,.4);--color-node-tag:rgba(72,187,120,.38);--notion-text-default:#dcddde;--notion-text-gray:#979A9B;--notion-text-brown:#937264;--notion-text-orange:#FFA344;--notion-text-yellow:#FFDC49;--notion-text-green:#4DAB9A;--notion-text-blue:#529CCA;--notion-text-purple:#9A6DD7;--notion-text-pink:#E255A1;--notion-text-red:#FF7369;--notion-bg-default:transparent;--notion-bg-gray:#454B4E;--notion-bg-brown:#434040;--notion-bg-orange:#594A3A;--notion-bg-yellow:#59563B;--notion-bg-green:#354C4B;--notion-bg-blue:#364954;--notion-bg-purple:#443F57;--notion-bg-pink:#533B4C;--notion-bg-red:#594141;--font-ui:-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",Roboto,sans-serif;--font-editor:var(--font-ui);--font-mono:"SF Mono","Fira Code",Menlo,monospace;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:14px;--font-size-editor:16px;--font-size-lg:18px;--font-size-xl:24px;--font-size-2xl:32px;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.7;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 4px 12px rgba(0,0,0,.4);--shadow-lg:0 12px 40px rgba(0,0,0,.5);--traffic-light-height:38px;--sidebar-width:260px;--sidebar-right-width:312px;--sidebar-footer-height:48px;--sidebar-collapsed-width:48px;--tab-height:35px;--toolbar-height:40px;--statusbar-height:22px;--editor-max-width:800px;--transition-fast:.1s ease;--transition-normal:.2s ease;--transition-slow:.3s ease;--z-modal:1000;--z-context:1050;--z-bubble-menu:1060;--z-tooltip:1100}[data-theme=dark]{color-scheme:dark}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),opacity var(--transition-fast);cursor:pointer;white-space:nowrap}.btn-md{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.btn-lg{padding:var(--space-2) var(--space-4);font-size:var(--font-size-base);border-radius:var(--radius-md)}.btn-primary{background:var(--color-accent);color:var(--color-text-on-accent);border:1px solid transparent}.btn-primary:hover{background:var(--color-accent-hover)}.btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text-normal);border:1px solid var(--color-border-normal)}.btn-secondary:hover{background:var(--color-bg-modifier-hover);border-color:var(--color-border-hover)}.btn-ghost{background:transparent;color:var(--color-text-muted);border:1px solid transparent}.btn-ghost:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.btn-danger{background:#f5656526;color:var(--color-text-error);border:1px solid rgba(245,101,101,.3)}.btn-danger:hover{background:#f5656538}.btn:disabled{opacity:.5;cursor:not-allowed}.ds-icon-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--color-text-muted);background:transparent;border:1px solid transparent;transition:all var(--transition-fast);cursor:pointer;flex-shrink:0}.ds-icon-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.ds-icon-btn.is-active{background:var(--color-accent-muted);color:var(--color-accent)}.ds-icon-btn:disabled{opacity:.35;cursor:not-allowed}.ds-icon-btn-sm{width:24px;height:24px}.ds-icon-btn-md{width:30px;height:28px}.ds-icon-btn-lg{width:36px;height:32px}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:1px var(--space-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.4;border:1px solid transparent;white-space:nowrap}.badge--default{background:var(--color-bg-tertiary);color:var(--color-text-muted);border-color:var(--color-border-normal)}.badge--tag{background:#48bb781f;color:var(--color-tag);border-color:#48bb7840}.badge--entity{background:#a78bfa1f;color:var(--color-entity);border-color:#a78bfa40}.badge--status{background:var(--color-accent-muted);color:var(--color-text-accent);border-color:transparent}.badge-label{overflow:hidden;text-overflow:ellipsis;max-width:120px}.badge-remove{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:inherit;opacity:.6;cursor:pointer;padding:0 2px;font-size:12px;line-height:1}.badge-remove:hover{opacity:1}.close-button{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast),color var(--transition-fast);flex-shrink:0}.close-button:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.empty-state--inline{display:block;padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-faint)}.empty-state--block{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6);text-align:center;color:var(--color-text-faint);font-size:var(--font-size-sm)}.empty-state-icon{font-size:var(--font-size-xl);opacity:.5}.modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;background:#00000080;z-index:var(--z-modal)}.modal-header h3{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0}.tooltip-wrapper{position:relative;display:inline-flex;align-items:center}.tooltip{position:absolute;z-index:var(--z-tooltip);background:var(--color-tooltip-bg,#1d1d1f);color:var(--color-tooltip-text,#f5f5f7);font-size:var(--font-size-xs);font-family:var(--font-ui);padding:4px 8px;border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-md);animation:tooltip-fade .1s ease}@keyframes tooltip-fade{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.tooltip-top{bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.tooltip-bottom{top:calc(100% + 6px);left:50%;transform:translate(-50%)}.tooltip-left{right:calc(100% + 6px);top:50%;transform:translateY(-50%)}.tooltip-right{left:calc(100% + 6px);top:50%;transform:translateY(-50%)}.ds-surface{background:var(--color-bg-secondary);border:1px solid var(--color-border-normal);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.ds-action-bar{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.ds-action-bar-divider{width:1px;height:20px;background:var(--color-divider);margin:0 var(--space-1)}.ds-confirm-dialog{width:min(400px,calc(100vw - 48px))}.ds-confirm-dialog-message{font-size:var(--font-size-sm);color:var(--color-text-muted)}.command-palette-shell .modal{padding:0}.command-palette{width:100%;background:var(--color-bg-secondary)}.command-palette-input{width:100%;border:none;border-bottom:1px solid var(--color-divider);padding:var(--space-3) var(--space-4);background:transparent;font-size:var(--font-size-base);color:var(--color-text-normal)}.command-palette-input:focus{outline:none}.command-list{max-height:360px;overflow-y:auto;padding:var(--space-1)}.command-item{display:flex;align-items:center;gap:var(--space-2);width:100%;text-align:left;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-normal);font-size:var(--font-size-sm);transition:background var(--transition-fast)}.command-item:hover,.command-item.is-selected{background:var(--color-bg-modifier-hover)}.command-item-icon{color:var(--color-text-faint);flex-shrink:0;display:inline-flex;align-items:center}.command-item-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.command-item-shortcut{font-size:var(--font-size-xs);color:var(--color-text-faint);font-family:var(--font-mono)}.ds-editor-toolbar{display:flex;align-items:center;gap:0;flex-wrap:wrap}.ds-toolbar-block-type{min-width:130px;width:auto;padding:0 var(--space-2);gap:var(--space-1);font-size:var(--font-size-xs);justify-content:space-between}.ds-menu-surface{min-width:180px;background:var(--color-bg-secondary);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-1) 0}.ds-menu-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-normal);text-align:left;background:transparent;border:none}.ds-menu-item:hover,.ds-menu-item.is-focused{background:var(--color-bg-modifier-hover)}.ds-menu-item-icon{width:24px;text-align:center;font-size:var(--font-size-xs);color:var(--color-text-faint)}.toolbar-dropdown-wrapper{position:relative}.toolbar-color-wrapper .ds-color-picker{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);z-index:10000;width:max-content;max-width:min(320px,calc(100vw - 24px))}.ds-bubble-shell{position:fixed;transform:translate(-50%);z-index:9999}.ds-bubble-bar{display:flex;align-items:center;gap:0;padding:2px 4px;background:var(--color-bg-secondary);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.ds-bubble-type-btn{width:auto;min-width:58px;padding:0 var(--space-2);gap:4px;font-size:var(--font-size-xs)}.ds-bubble-dropdown{position:fixed;z-index:10000}.ds-tab-shell{display:flex;align-items:stretch;position:relative;border-bottom:1px solid var(--color-divider)}.ds-tab-strip{display:flex;align-items:center;gap:0;height:var(--tab-height);padding:0;overflow-x:auto;flex:1}.ds-tab{display:flex;align-items:center;gap:var(--space-2);height:100%;padding:0 var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-muted);border-bottom:2px solid transparent;white-space:nowrap;transition:all var(--transition-fast);min-width:0;max-width:200px;background:transparent;border-left:none;border-right:none;border-top:none}.ds-tab:hover{color:var(--color-text-normal);background:var(--color-bg-modifier-hover)}.ds-tab.is-active{color:var(--color-text-normal);border-bottom-color:var(--color-accent)}.ds-tab-title{overflow:hidden;text-overflow:ellipsis}.ds-tab-pin{font-size:var(--font-size-xs);color:var(--color-accent);flex-shrink:0;display:inline-flex;align-items:center}.ds-tab-close{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--color-text-faint);opacity:0;flex-shrink:0;transition:opacity var(--transition-fast)}.ds-tab:hover .ds-tab-close{opacity:1}.ds-tab-close:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.ds-tab-divider{width:1px;height:60%;background:var(--color-divider);flex-shrink:0;margin:0 2px}.ds-tab-rename-input{width:100%;padding:2px 6px;background:var(--color-bg-primary);border:1px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-text-normal);font-size:var(--font-size-sm);outline:none}.ds-tab-scroll-btn{width:24px;height:100%;border-radius:0;background:var(--color-bg-secondary)}.ds-search-field{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--color-border-normal);background:var(--color-bg-primary);transition:border-color var(--transition-fast)}.ds-search-field:focus-within{border-color:var(--color-border-focus)}.ds-search-field-leading,.ds-search-field-trailing{display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-faint);flex-shrink:0}.ds-search-field-input{flex:1;min-width:0;padding:0;border:none;background:transparent;color:var(--color-text-normal);font-size:var(--font-size-sm);outline:none}.ds-search-field-input::placeholder{color:var(--color-text-faint)}.ds-search-clear-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--color-text-faint);cursor:pointer;padding:0}.ds-search-clear-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.ds-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-3) var(--space-2);gap:var(--space-2)}.ds-sidebar-section{display:flex;flex-direction:column;gap:var(--space-1)}.ds-sidebar-section-label{padding:var(--space-1) var(--space-3);color:var(--color-text-faint);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--space-1)}.ds-sidebar-actions{display:flex;gap:var(--space-1);padding:0 var(--space-3) var(--space-2);margin-bottom:var(--space-2)}.ds-sidebar-actions .btn{flex:1;justify-content:flex-start}.ds-bookmark-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer}.ds-bookmark-item:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.ds-bookmark-item.is-active{background:var(--color-accent-muted);color:var(--color-text-normal)}.ds-bookmark-star{color:var(--color-bookmark);flex-shrink:0}.ds-sidebar-spaces-header{padding:var(--space-1) var(--space-3);display:flex;align-items:center;justify-content:space-between;color:var(--color-text-faint);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--font-weight-medium)}.ds-sidebar-footer-row{display:flex;gap:var(--space-2);align-items:center;padding:var(--space-2) var(--space-3)}.ds-sidebar-footer-row .btn{flex:1;justify-content:flex-start}.ds-sidebar-mini-expand{margin:var(--space-2)}.ds-context-menu{min-width:200px}.ds-context-menu-separator{height:1px;background:var(--color-divider);margin:var(--space-1) 0}.ds-menu-item.is-danger{color:var(--color-danger)}.ds-menu-item.is-danger:hover,.ds-menu-item.is-danger.is-focused{background:#f565651a}.ds-menu-item.is-disabled{opacity:.4;cursor:not-allowed}.ds-link-dialog-body{padding:var(--space-3)}.ds-link-field-row{display:flex;align-items:center;gap:var(--space-2);background:var(--color-bg-primary);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.ds-link-field-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-muted);flex-shrink:0}.ds-link-field-input{flex:1;min-width:0;background:none;border:none;outline:none;color:var(--color-text-normal);font-size:var(--font-size-sm)}.ds-link-dialog-footer{padding-top:var(--space-2)}.ds-segmented{display:flex;align-items:center;gap:2px;padding:2px;border-radius:var(--radius-md);border:1px solid var(--color-border-normal);background:color-mix(in srgb,var(--color-bg-secondary) 90%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ds-segmented-item{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-muted);border-radius:var(--radius-sm);background:transparent;border:none;cursor:pointer}.ds-segmented-item:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.ds-segmented-item.is-active{background:var(--color-accent-muted);color:var(--color-accent)}.ds-segmented-item:disabled{opacity:.4;cursor:not-allowed}.ds-pill-group{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ds-pill{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:var(--font-size-xs);background:var(--color-bg-primary);border:1px solid var(--color-border-normal);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.ds-pill:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.ds-pill.is-active{background:var(--color-accent-muted);border-color:var(--color-accent);color:var(--color-accent)}.ds-list-select{display:flex;flex-direction:column;gap:4px;max-height:220px;overflow:auto;padding:4px;border:1px solid var(--color-border-normal);border-radius:var(--radius-md);background:var(--color-bg-primary)}.ds-list-select-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:transparent;border:none;color:var(--color-text-normal);text-align:left;cursor:pointer}.ds-list-select-item:hover{background:var(--color-bg-modifier-hover)}.ds-list-select-item.is-selected{background:var(--color-accent-muted);color:var(--color-text-normal)}.ds-color-picker{min-width:220px;background:var(--color-bg-secondary);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-2)}.ds-color-picker-tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-2)}.ds-color-picker-tab{flex:1;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-muted);background:transparent;border:none;cursor:pointer}.ds-color-picker-tab:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.ds-color-picker-tab.is-active{background:var(--color-accent-muted);color:var(--color-accent)}.ds-color-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ds-color-picker-swatch{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:transparent;border:none;color:var(--color-text-normal);text-align:left;cursor:pointer}.ds-color-picker-swatch:hover{background:var(--color-bg-modifier-hover)}.ds-color-swatch-circle{width:14px;height:14px;border-radius:999px;display:inline-block;flex-shrink:0}.ds-color-swatch-label{font-size:var(--font-size-xs)}.graph-view-toolbar .ds-segmented{margin-right:2px}.graph-view-toolbar .graph-recenter-btn{border-left:none;margin-left:0}:root{color-scheme:dark;--color-bg-primary:#1e1e1e;--color-bg-secondary:#252525;--color-bg-tertiary:#2b2b2b;--color-bg-nav:#1a1a1a;--color-bg-modifier-hover:rgba(255,255,255,.06);--color-bg-modifier-active:rgba(255,255,255,.1);--color-text-normal:#dcddde;--color-text-muted:#999;--color-text-faint:#666;--color-text-on-accent:#fff;--color-text-accent:#7f6df2;--color-text-error:#f56565;--color-accent:#7f6df2;--color-accent-hover:#6c5ce7;--color-accent-muted:rgba(127,109,242,.25);--color-divider:rgba(255,255,255,.07);--color-border-normal:rgba(255,255,255,.1);--color-border-hover:rgba(255,255,255,.16);--color-border-focus:var(--color-accent);--color-tag:#48bb78;--color-entity:#a78bfa;--color-link:#63b3ed;--color-bookmark:#f6c343;--color-archive:#e67e22;--color-danger:#f56565;--color-node-document:rgba(99,179,237,.45);--color-node-entity:rgba(167,139,250,.4);--color-node-tag:rgba(72,187,120,.38);--notion-text-default:#dcddde;--notion-text-gray:#979A9B;--notion-text-brown:#937264;--notion-text-orange:#FFA344;--notion-text-yellow:#FFDC49;--notion-text-green:#4DAB9A;--notion-text-blue:#529CCA;--notion-text-purple:#9A6DD7;--notion-text-pink:#E255A1;--notion-text-red:#FF7369;--notion-bg-default:transparent;--notion-bg-gray:#454B4E;--notion-bg-brown:#434040;--notion-bg-orange:#594A3A;--notion-bg-yellow:#59563B;--notion-bg-green:#354C4B;--notion-bg-blue:#364954;--notion-bg-purple:#443F57;--notion-bg-pink:#533B4C;--notion-bg-red:#594141;--font-ui:-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",Roboto,sans-serif;--font-editor:var(--font-ui);--font-mono:"SF Mono","Fira Code",Menlo,monospace;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:14px;--font-size-editor:16px;--font-size-lg:18px;--font-size-xl:24px;--font-size-2xl:32px;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.7;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 4px 12px rgba(0,0,0,.4);--shadow-lg:0 12px 40px rgba(0,0,0,.5);--traffic-light-height:38px;--sidebar-width:260px;--sidebar-right-width:312px;--sidebar-footer-height:48px;--sidebar-collapsed-width:48px;--tab-height:35px;--toolbar-height:40px;--statusbar-height:22px;--editor-max-width:800px;--transition-fast:.1s ease;--transition-normal:.2s ease;--transition-slow:.3s ease;--z-modal:1000;--z-tooltip:1100;--z-context:1050;--z-bubble-menu:1060}[data-theme=light]{color-scheme:light;--color-bg-primary:#ffffff;--color-bg-secondary:#f7f6f3;--color-bg-tertiary:#edebe8;--color-bg-nav:#f1f1ef;--color-bg-modifier-hover:rgba(55,53,47,.04);--color-bg-modifier-active:rgba(55,53,47,.08);--color-text-normal:#1d1d1f;--color-text-muted:#6e6e73;--color-text-faint:#aeaeb2;--color-text-on-accent:#fff;--color-text-accent:#6c5ce7;--color-text-error:#e53e3e;--color-accent:#6c5ce7;--color-accent-hover:#5a4bd6;--color-accent-muted:rgba(108,92,231,.15);--color-divider:rgba(55,53,47,.09);--color-border-normal:rgba(55,53,47,.16);--color-border-hover:rgba(55,53,47,.22);--color-border-focus:var(--color-accent);--color-tag:#2d8a56;--color-entity:#7c4dff;--color-link:#2563eb;--color-bookmark:#d97706;--color-archive:#c2410c;--color-danger:#dc2626;--color-node-document:rgba(37,99,235,.45);--color-node-entity:rgba(124,77,255,.4);--color-node-tag:rgba(45,138,86,.38);--notion-text-default:#1d1d1f;--notion-text-gray:#787774;--notion-text-brown:#64473A;--notion-text-orange:#D9730D;--notion-text-yellow:#DFAB01;--notion-text-green:#0F7B6C;--notion-text-blue:#0B6E99;--notion-text-purple:#6940A5;--notion-text-pink:#AD1A72;--notion-text-red:#E03E3E;--notion-bg-default:transparent;--notion-bg-gray:#EBECED;--notion-bg-brown:#E9E5E3;--notion-bg-orange:#FAEBDD;--notion-bg-yellow:#FBF3DB;--notion-bg-green:#DDEDEA;--notion-bg-blue:#DDEBF1;--notion-bg-purple:#EAE4F2;--notion-bg-pink:#F4DFEB;--notion-bg-red:#FBE4E4;--shadow-sm:0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 12px rgba(0,0,0,.06);--shadow-lg:0 12px 40px rgba(0,0,0,.09)}[data-theme=dark]{color-scheme:dark;--color-bg-primary:#1e1e1e;--color-bg-secondary:#252525;--color-bg-tertiary:#2b2b2b;--color-bg-nav:#1a1a1a;--color-bg-modifier-hover:rgba(255,255,255,.06);--color-bg-modifier-active:rgba(255,255,255,.1);--color-text-normal:#dcddde;--color-text-muted:#999;--color-text-faint:#666;--color-text-on-accent:#fff;--color-text-accent:#7f6df2;--color-text-error:#f56565;--color-accent:#7f6df2;--color-accent-hover:#6c5ce7;--color-accent-muted:rgba(127,109,242,.25);--color-divider:rgba(255,255,255,.07);--color-border-normal:rgba(255,255,255,.1);--color-border-hover:rgba(255,255,255,.16);--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 4px 12px rgba(0,0,0,.4);--shadow-lg:0 12px 40px rgba(0,0,0,.5)}.theme-picker{display:flex;gap:var(--space-2)}.theme-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-bg-tertiary);border:1px solid var(--color-border-normal);color:var(--color-text-normal);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.theme-option:hover{border-color:var(--color-border-hover)}.theme-option.is-active{border-color:var(--color-accent);background:var(--color-accent-muted);color:var(--color-text-accent)}.status-save-indicator{font-weight:var(--font-weight-medium)}.status-save-indicator.is-unsaved{color:var(--color-bookmark)!important}.status-save-indicator.is-saving{color:var(--color-text-accent)!important;animation:pulse-opacity 1s ease-in-out infinite}@keyframes pulse-opacity{0%,to{opacity:1}50%{opacity:.5}}.status-bar-theme-btn{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast)}.status-bar-theme-btn:hover{color:var(--color-text-normal)}.archive-view{flex:1;display:flex;flex-direction:column;background:var(--color-bg-primary);overflow:hidden}.archive-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-divider)}.archive-header h2{font-size:var(--font-size-lg);margin:0}.archive-count{background:var(--color-bg-tertiary);padding:2px 8px;border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--color-text-muted)}.archive-back-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md);background:transparent;border:none;color:var(--color-text-muted);cursor:pointer}.archive-back-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.archive-toolbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6)}.archive-search{display:flex;align-items:center;gap:var(--space-2);flex:1;background:var(--color-bg-secondary);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3)}.archive-search input{flex:1;background:none;border:none;color:var(--color-text-normal);font-size:var(--font-size-sm);outline:none}.archive-sort{display:flex;gap:var(--space-1)}.archive-sort button{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);background:transparent;border:none;color:var(--color-text-muted);cursor:pointer}.archive-sort button.is-active{background:var(--color-accent-muted);color:var(--color-text-accent)}.archive-bulk-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-6);background:var(--color-accent-muted);border-bottom:1px solid var(--color-divider)}.archive-bulk-actions{display:flex;gap:var(--space-2)}.archive-list{flex:1;overflow-y:auto;padding:var(--space-2) var(--space-6)}.archive-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid transparent;transition:all var(--transition-fast)}.archive-item:hover{background:var(--color-bg-modifier-hover)}.archive-item.is-selected{border-color:var(--color-accent);background:var(--color-accent-muted)}.archive-checkbox{display:flex;align-items:center;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer}.archive-item.is-selected .archive-checkbox{color:var(--color-accent)}.archive-item-content{flex:1;min-width:0}.archive-item-title{font-size:var(--font-size-sm);color:var(--color-text-normal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-item-meta{font-size:var(--font-size-xs);color:var(--color-text-faint);margin-top:2px}.archive-item-actions{display:flex;gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast)}.archive-item:hover .archive-item-actions{opacity:1}.archive-empty{text-align:center;padding:var(--space-8);color:var(--color-text-faint)}.btn-ghost.is-danger{color:var(--color-danger)}.btn-ghost.is-danger:hover{background:#f565651a}.btn-danger{background:var(--color-danger);color:var(--color-text-on-accent);border:none;cursor:pointer;border-radius:var(--radius-md)}.btn-danger:hover{opacity:.9}.workspace-tabs-container{display:flex;align-items:stretch;position:relative;border-bottom:1px solid var(--color-divider)}.tab-scroll-btn{display:flex;align-items:center;justify-content:center;width:20px;background:var(--color-bg-nav);border:none;color:var(--color-text-muted);cursor:pointer;z-index:2;flex-shrink:0}.tab-scroll-btn:hover{color:var(--color-text-normal);background:var(--color-bg-modifier-hover)}.tab-pin-divider{width:1px;background:var(--color-accent-muted);margin:4px 0;flex-shrink:0}.tab-rename-input{background:var(--color-bg-primary);border:1px solid var(--color-accent);color:var(--color-text-normal);font-size:var(--font-size-xs);border-radius:var(--radius-sm);padding:0 var(--space-2);outline:none;width:100px}.workspace-tab.is-renaming{display:flex;align-items:center;padding:0 var(--space-2)}.entity-chip{display:inline-flex;align-items:center;gap:4px}.entity-chip.is-inferred{opacity:.7}.entity-chip.is-explicit{border:1px solid var(--color-entity)}.entity-chip-type{font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);padding-right:2px}.entity-remove-btn,.relation-remove-btn{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:var(--radius-full);background:transparent;border:none;color:var(--color-text-faint);cursor:pointer;padding:0}.entity-remove-btn:hover,.relation-remove-btn:hover{color:var(--color-danger);background:#f5656526}.inspector-section-header{display:flex;align-items:center;justify-content:space-between}.inspector-add-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--color-text-muted);cursor:pointer}.inspector-add-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-accent)}.inspector-empty{font-size:var(--font-size-xs);color:var(--color-text-faint)}.relation-icon{color:var(--color-text-faint);flex-shrink:0}.relation-kind{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-medium)}.relation-target{font-size:var(--font-size-xs);color:var(--color-link)}.tree-empty{padding:var(--space-4);text-align:center;font-size:var(--font-size-xs);color:var(--color-text-faint)}.tree-folder.is-empty .tree-label{opacity:.6}.tree-empty-badge{font-size:9px;color:var(--color-text-faint);padding:0 4px;background:var(--color-bg-tertiary);border-radius:var(--radius-sm);margin-left:auto}.tree-empty-folder{padding:var(--space-1) 0}.tree-empty-text{font-size:var(--font-size-xs);color:var(--color-text-faint);font-style:italic}.link-search-box{display:flex;align-items:center;gap:var(--space-2);background:var(--color-bg-tertiary);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2)}.link-search-box input{flex:1;background:none;border:none;outline:none;color:var(--color-text-normal);font-size:var(--font-size-sm)}.link-doc-list{max-height:200px;overflow-y:auto;margin-top:var(--space-2);border:1px solid var(--color-border-normal);border-radius:var(--radius-md)}.link-doc-item{width:100%;text-align:left;padding:var(--space-2) var(--space-3);background:transparent;border:none;color:var(--color-text-normal);font-size:var(--font-size-sm);cursor:pointer;display:block;border-bottom:1px solid var(--color-divider)}.link-doc-item:last-child{border-bottom:none}.link-doc-item:hover{background:var(--color-bg-modifier-hover)}.link-doc-item.is-selected{background:var(--color-accent-muted);color:var(--color-text-accent)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-divider)}.modal-header h3{margin:0;font-size:var(--font-size-base)}:root{--opacity-muted:.6;--opacity-hover:.8;--opacity-disabled:.4;--duration-instant:50ms;--duration-fast:.1s;--duration-normal:.2s;--duration-slow:.3s;--duration-slower:.5s;--ease-default:ease;--ease-out:ease-out;--ease-in-out:ease-in-out;--ease-spring:cubic-bezier(.34,1.56,.64,1);--graph-color-document:#63b3ed;--graph-color-entity:#a78bfa;--graph-color-tag:#48bb78;--graph-color-folder:#f59e0b;--graph-color-space:#f97316;--graph-color-workspace:#fb7185;--graph-color-activity:#38bdf8;--graph-color-attribute:#facc15;--graph-color-time:#94a3b8;--graph-color-bookmark:#f6c343}.theme-light:root,[data-theme=light]{--graph-color-document:#2563eb;--graph-color-entity:#7c3aed;--graph-color-tag:#16a34a;--graph-color-folder:#d97706;--graph-color-space:#ea580c;--graph-color-workspace:#e11d48;--graph-color-activity:#0284c7;--graph-color-attribute:#ca8a04;--graph-color-time:#64748b;--graph-color-bookmark:#d97706}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{font-family:var(--font-ui);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-normal);background:var(--color-bg-primary);min-height:100vh;overflow:hidden}#root{min-height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-normal);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}::selection{background:var(--color-accent-muted);color:var(--color-text-normal)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px;border-radius:var(--radius-sm)}button,input,textarea,select,label{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none}a{color:var(--color-link);text-decoration:none}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}img,svg{display:block;max-width:100%}.app-shell{display:grid;grid-template-columns:1fr;grid-template-rows:1fr var(--statusbar-height);height:100vh;background:var(--color-bg-primary);overflow:hidden}.app-main{display:grid;grid-template-columns:auto 1fr auto;min-height:0;overflow:hidden;position:relative}.center-workspace{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--color-bg-primary)}.workspace-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.search-view-body{flex:1;min-height:0;overflow:hidden}.empty-editor{display:grid;place-items:center;min-height:100%;color:var(--color-text-faint)}.empty-editor h2{font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.empty-editor p{font-size:var(--font-size-sm);color:var(--color-text-faint)}.drag-region{-webkit-app-region:drag;height:var(--traffic-light-height);flex-shrink:0}.archive-view{flex:1;min-height:0;overflow:hidden}.ribbon{width:var(--ribbon-width);background:var(--color-bg-nav);border-right:1px solid var(--color-divider);display:flex;flex-direction:column;align-items:center;padding:var(--space-2) 0;gap:var(--space-1);grid-row:1/3;overflow:hidden}.ribbon-top,.ribbon-bottom{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);width:100%}.ribbon-bottom{margin-top:auto;padding-bottom:var(--space-2)}.ribbon-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--color-text-muted);transition:all var(--transition-fast)}.ribbon-icon:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.ribbon-icon.is-active{color:var(--color-accent);background:var(--color-accent-muted)}.ribbon-icon svg{width:18px;height:18px}.ribbon-avatar{width:28px;height:28px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-on-accent);background:var(--color-accent)}.left-sidebar{padding-top:var(--traffic-light-height);width:var(--sidebar-width);border-right:1px solid var(--color-divider);position:relative;z-index:12;display:flex;flex-direction:column}.right-sidebar{width:var(--sidebar-right-width);border-left:1px solid var(--color-divider);transition:width var(--transition-fast),transform var(--transition-fast);position:relative;z-index:15}.left-sidebar.collapsed,.right-sidebar.collapsed{width:0;overflow:hidden;border:none;padding:0}.sidebar-tree-scroll{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;padding-top:var(--space-2)}.right-sidebar.is-graph-expanded{position:absolute;top:0;right:0;bottom:0;width:calc(100% - var(--left-sidebar-offset, var(--sidebar-width)));box-shadow:var(--shadow-lg);background:color-mix(in srgb,var(--color-bg-secondary) 96%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.collapsed-mini-right{width:var(--sidebar-collapsed-width);display:flex;flex-direction:column;align-items:center;background:var(--color-bg-nav);border-left:1px solid var(--color-divider);padding-top:var(--space-2)}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-divider);margin-top:auto;height:var(--sidebar-footer-height);flex-shrink:0}.sidebar-footer-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-muted);transition:all var(--transition-fast)}.sidebar-footer-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.sidebar-footer-avatar{width:24px;height:24px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-on-accent);background:var(--color-accent)}.collapsed-mini{width:var(--sidebar-collapsed-width);display:flex;flex-direction:column;align-items:center;background:var(--color-bg-nav);border-right:1px solid var(--color-divider)}.sidebar-mini-icons{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);margin-top:auto;padding-bottom:var(--space-3)}.sidebar-mini-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--color-text-muted);transition:all var(--transition-fast)}.sidebar-mini-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.sidebar-mini-expand-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--color-text-muted);transition:all var(--transition-fast);margin-top:var(--space-2);flex-shrink:0}.sidebar-mini-expand-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.sidebar-mini-avatar{width:24px;height:24px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:var(--font-weight-semibold);color:var(--color-text-on-accent);background:var(--color-accent)}.bookmark-item{padding-left:var(--space-3)!important}.tree-bookmark-btn{opacity:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--color-text-faint);flex-shrink:0;margin-left:auto;transition:opacity var(--transition-fast)}.tree-item:hover .tree-bookmark-btn{opacity:1}.tree-bookmark-btn.is-bookmarked{opacity:1;color:var(--color-bookmark)}.tree-bookmark-btn:hover{background:var(--color-bg-modifier-hover)}.sidebar-section{margin-bottom:var(--space-2)}.drag-region-tabs{-webkit-app-region:drag;min-width:80px;height:100%;flex-shrink:0}.sidebar-section-label{display:flex;align-items:center;gap:var(--space-1);white-space:nowrap}.bookmark-item{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:var(--space-2)!important}.sidebar-mini-top-icons{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);margin-top:var(--space-3)}.editor-pane{display:flex;flex-direction:column;min-height:0;overflow:hidden}.editor-scroll{flex:1;overflow-y:auto;overflow-x:hidden;position:relative;background:var(--color-bg-primary)}.editor-container{max-width:100%;margin:0;padding:var(--space-4) 30px var(--space-8);width:100%;box-sizing:border-box;background:radial-gradient(ellipse at top left,rgba(59,130,246,.06),transparent 50%),radial-gradient(ellipse at top right,rgba(249,115,22,.06),transparent 44%)}.editor-chrome{padding-top:var(--space-3);background:transparent}.editor-body{padding-top:var(--space-2);background:transparent}.editor-inline-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-normal);border:none;background:transparent;width:100%;outline:none;margin-bottom:var(--space-2);line-height:var(--line-height-tight)}.editor-inline-title::placeholder{color:var(--color-text-faint)}.editor-title-divider{height:1px;background:var(--color-divider);margin:var(--space-2) 0 var(--space-4)}.editor-body-divider{height:0}.editor-surface{outline:none;font-family:var(--font-editor);font-size:var(--font-size-editor);line-height:var(--line-height-relaxed);color:var(--color-text-normal);min-height:200px;padding:0 10px}.editor-surface p,.editor-surface ul,.editor-surface ol,.editor-surface pre,.editor-surface h1,.editor-surface h2,.editor-surface h3,.editor-surface blockquote{max-width:100%;margin-bottom:.5em}.editor-surface ol{padding-left:1.5em;list-style-position:inside}.editor-surface ul,.editor-surface ol ol,.editor-surface ul ul,.editor-surface ol ul,.editor-surface ul ol{padding-left:1.5em}.editor-surface h1{font-size:var(--font-size-2xl);margin-top:1.5em}.editor-surface h2{font-size:var(--font-size-xl);margin-top:1.3em}.editor-surface h3{font-size:var(--font-size-lg);margin-top:1.2em}.editor-surface a.internal-link{color:var(--color-link);border-bottom:1px dashed rgba(99,179,237,.4)}.editor-surface span.entity-pill{padding:1px 6px;border-radius:var(--radius-full);background:#a78bfa33;color:var(--color-entity);font-size:.9em}.editor-surface pre.code-block{background:var(--color-bg-tertiary);border-radius:var(--radius-md);padding:var(--space-4);font-family:var(--font-mono);font-size:var(--font-size-sm);overflow-x:auto}.editor-surface ul[data-type=taskList]{list-style:none;padding-left:0}.editor-surface ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:var(--space-2)}.editor-surface table{border-collapse:collapse;width:100%;margin:var(--space-4) 0}.editor-surface th,.editor-surface td{border:1px solid var(--color-border-normal);padding:var(--space-2) var(--space-3);text-align:left;font-size:var(--font-size-sm)}.editor-surface th{background:var(--color-bg-tertiary);font-weight:var(--font-weight-semibold)}.editor-toolbar{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-bottom:1px solid var(--color-divider);background:var(--color-bg-secondary);flex-shrink:0;flex-wrap:wrap;min-height:var(--toolbar-height)}.editor-top-spacer{height:var(--space-3);flex-shrink:0}.app-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-3);color:var(--color-text-faint)}.app-breadcrumb-item{display:inline-flex;align-items:center;gap:var(--space-1)}.app-breadcrumb-button{display:inline-flex;align-items:center;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 6px;border-radius:999px;font-size:var(--font-size-xs);color:var(--color-text-faint);background:transparent}.app-breadcrumb-button:disabled{opacity:1;cursor:default}.app-breadcrumb-button:not(:disabled):hover{background:var(--color-bg-secondary);color:var(--color-text-normal)}.app-breadcrumb-button.is-current{color:var(--color-text-normal);font-weight:var(--font-weight-medium)}.editor-save-bar{display:flex;align-items:center;justify-content:space-between;padding:4px var(--space-1);margin-bottom:var(--space-2);gap:var(--space-2)}.editor-save-meta{font-size:var(--font-size-xs);color:var(--color-text-faint);flex:1}.editor-save-meta.is-unsaved{color:var(--color-bookmark)}.editor-save-meta.is-saving{color:var(--color-text-accent)}.editor-save-btn{display:flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--color-accent-muted);color:var(--color-text-accent);border:1px solid transparent;transition:all var(--transition-fast);flex-shrink:0}.editor-save-btn:hover:not(:disabled){background:var(--color-accent);color:var(--color-text-on-accent)}.editor-save-btn:disabled{opacity:.4;cursor:default}.history-preview-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:#f6c3431f;border-bottom:1px solid rgba(246,195,67,.3);flex-shrink:0}.history-preview-banner-icon{font-size:14px;flex-shrink:0}.history-preview-banner-text{flex:1;font-size:var(--font-size-xs);color:var(--color-text-muted)}.history-preview-banner-title{font-weight:var(--font-weight-semibold);color:var(--color-text-normal);margin-right:var(--space-1)}.history-preview-actions{display:flex;gap:var(--space-1);flex-shrink:0}.history-preview-restore-btn{display:flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--color-accent);color:var(--color-text-on-accent)}.history-preview-restore-btn:hover{background:var(--color-accent-hover)}.history-preview-close-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-sm);color:var(--color-text-muted)}.history-preview-close-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.history-preview-pane{display:flex;flex-direction:column;min-height:0;overflow:hidden}.history-preview-scroll{flex:1;overflow-y:auto;overflow-x:hidden}.history-preview-content{max-width:100%;margin:0;padding:var(--space-4) var(--space-5) var(--space-8)}.history-preview-content .editor-surface{opacity:.9}.history-overlay{position:absolute;inset:0;z-index:50;display:flex;flex-direction:column;background:var(--color-bg-primary);overflow:hidden;animation:history-overlay-in var(--duration-normal) var(--ease-out)}@keyframes history-overlay-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.history-overlay .history-preview-pane{height:100%;flex:1;min-height:0;display:flex;flex-direction:column}.history-overlay .history-preview-banner{box-shadow:var(--shadow-sm);flex-shrink:0}.history-overlay .history-preview-scroll{flex:1;overflow-y:auto;min-height:0}.editor-title-divider{height:1px;background:var(--color-divider);margin:var(--space-2) 0 var(--space-1)}.editor-body-divider{height:1px;background:var(--color-divider);margin:var(--space-1) 0 var(--space-3)}.color-picker{position:absolute;top:calc(100% + 4px);left:0;width:220px;background:var(--color-bg-secondary);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-2);z-index:9999}.color-picker-tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-2);border-bottom:1px solid var(--color-divider);padding-bottom:var(--space-1)}.color-picker-tab{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-muted);border-radius:var(--radius-sm)}.color-picker-tab.is-active{color:var(--color-accent);background:var(--color-accent-muted)}.color-picker-grid{display:flex;flex-direction:column;gap:2px}.color-picker-swatch{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-normal);cursor:pointer}.color-picker-swatch:hover{background:var(--color-bg-modifier-hover)}.color-swatch-circle{width:16px;height:16px;border-radius:var(--radius-full);flex-shrink:0}.color-swatch-label{color:var(--color-text-muted)}.status-bar{height:var(--statusbar-height);background:var(--color-bg-nav);border-top:1px solid var(--color-divider);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-faint);grid-column:1/3}.status-bar-left,.status-bar-right{display:flex;align-items:center;gap:var(--space-3)}.status-bar-item{display:flex;align-items:center;gap:var(--space-1)}.inspector-tabs-bar{display:flex;align-items:center;border-bottom:1px solid var(--color-divider);padding:0 var(--space-2);gap:var(--space-1)}.inspector-toggle-group{display:flex;align-items:center;gap:1px;flex-shrink:0}.inspector-toggle-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-sm);color:var(--color-text-faint);background:transparent;border:none;cursor:pointer;padding:0}.inspector-toggle-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.inspector-tabs{display:flex;flex:1;padding:0}.inspector-tab{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-muted);border-bottom:2px solid transparent;text-transform:uppercase;letter-spacing:.05em;font-weight:var(--font-weight-medium)}.inspector-tab:hover{color:var(--color-text-normal)}.inspector-tab.is-active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.inspector-content{padding:var(--space-2);overflow-y:auto;flex:1}.inspector-section{margin-bottom:var(--space-4)}.inspector-section label{display:block;margin-bottom:var(--space-1);color:var(--color-text-faint);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em}.inspector-section input{width:100%;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--color-border-normal);background:var(--color-bg-primary);color:var(--color-text-normal);font-size:var(--font-size-sm)}.entity-list{display:flex;flex-wrap:wrap;gap:var(--space-1)}.entity-chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-full);background:#a78bfa26;color:var(--color-entity);font-size:var(--font-size-xs)}.relation-list{display:flex;flex-direction:column;gap:var(--space-1)}.relation-row{display:flex;justify-content:space-between;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:1px solid var(--color-divider);font-size:var(--font-size-sm);color:var(--color-text-muted)}.meta-row{display:flex;justify-content:space-between;padding:var(--space-1) 0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.relation-row.clickable{cursor:pointer;transition:background var(--transition-fast)}.relation-row.clickable:hover{background:var(--color-bg-modifier-hover);border-radius:var(--radius-sm)}.history-list{display:flex;flex-direction:column;gap:var(--space-1)}.history-item{border:1px solid var(--color-divider);border-radius:var(--radius-sm);overflow:hidden}.history-item.is-selected{border-color:var(--color-accent)}.history-item-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);cursor:pointer;transition:background var(--transition-fast)}.history-item-header:hover{background:var(--color-bg-modifier-hover)}.history-item-main{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0}.history-time{font-size:var(--font-size-xs);color:var(--color-text-faint);flex-shrink:0}.history-title{font-size:var(--font-size-sm);color:var(--color-text-normal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-restored-badge{padding:2px 6px;border-radius:var(--radius-full);background:#48bb7829;color:var(--color-tag);font-size:10px;font-weight:var(--font-weight-semibold);white-space:nowrap;flex-shrink:0}.history-diff-actions{padding:0 var(--space-2) var(--space-2)}.btn-sm{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);border-radius:var(--radius-sm)}.history-name-row{display:flex;align-items:center;gap:var(--space-1);flex:1;min-width:0}.history-name-input{flex:1;min-width:0;padding:2px var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--color-border-hover);background:var(--color-bg-primary);color:var(--color-text-normal);font-size:var(--font-size-xs)}.history-name-save,.history-name-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-sm);color:var(--color-text-faint)}.history-name-save:hover,.history-name-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.history-diff-panel{padding:var(--space-2) var(--space-3)}.history-diff-stats{display:flex;gap:var(--space-3);font-size:var(--font-size-xs);margin-bottom:var(--space-2)}.diff-added{color:var(--color-tag)}.diff-removed{color:var(--color-danger)}.history-diff-lines{font-family:var(--font-mono);font-size:11px;background:var(--color-bg-tertiary);border-radius:var(--radius-sm);padding:var(--space-2);max-height:200px;overflow-y:auto}.diff-line{display:flex;gap:var(--space-1);line-height:1.5}.diff-line.diff-added{background:#48bb781a}.diff-line.diff-removed{background:#f565651a;text-decoration:line-through;opacity:.7}.diff-prefix{width:12px;flex-shrink:0;color:var(--color-text-faint)}.tag-input-shell{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border-normal);border-radius:var(--radius-sm);background:var(--color-bg-primary);transition:border-color var(--transition-fast)}.tag-input-shell:focus-within{border-color:var(--color-border-focus)}.tag-input-row{display:flex;align-items:center;min-height:28px}.tag-chip-list{display:flex;flex-wrap:wrap;gap:var(--space-1);max-height:120px;overflow:auto}.tag-chip{display:inline-flex;align-items:center;gap:3px;padding:1px 6px 1px 8px;border-radius:var(--radius-full);background:#48bb7826;color:var(--color-tag);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border:1px solid rgba(72,187,120,.25);white-space:nowrap;max-width:120px}.tag-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;border-radius:var(--radius-full);background:transparent;border:none;color:var(--color-tag);cursor:pointer;padding:0;line-height:1;flex-shrink:0;opacity:.6}.tag-chip-remove:hover{opacity:1;background:#48bb7840}.tag-input-field{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--color-text-normal);font-size:var(--font-size-sm);padding:1px 0}.tag-input-field::placeholder{color:var(--color-text-faint)}.inspector-panel{display:flex;flex-direction:column}.tag-error-msg{padding:2px var(--space-2);margin-top:var(--space-1);font-size:var(--font-size-xs);color:var(--color-danger);background:#ef444414;border-radius:var(--radius-sm);animation:tag-error-fade 2.5s ease-out forwards}@keyframes tag-error-fade{0%{opacity:1}80%{opacity:1}to{opacity:0}}.history-diff-view{font-family:var(--font-mono);font-size:13px;line-height:1.6;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border-normal)}.history-diff-line{display:flex;padding:1px 0;min-height:22px}.history-diff-line.is-added{background:#48bb781f;border-left:3px solid var(--color-tag)}.history-diff-line.is-removed{background:#f565651a;border-left:3px solid var(--color-danger)}.history-diff-gutter{width:28px;flex-shrink:0;text-align:center;color:var(--color-text-faint);font-size:12px;-webkit-user-select:none;user-select:none;padding-top:1px}.history-diff-line.is-added .history-diff-gutter{color:var(--color-tag)}.history-diff-line.is-removed .history-diff-gutter{color:var(--color-danger)}.history-diff-text{flex:1;padding:0 var(--space-3);white-space:pre-wrap;word-break:break-word}.history-diff-line.is-removed .history-diff-text{text-decoration:line-through;opacity:.7}.history-diff-line-num{width:36px;flex-shrink:0;text-align:right;padding-right:8px;font-size:11px;color:var(--color-text-faint);-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;opacity:.5}.history-diff-line.is-added .history-diff-line-num{color:var(--color-tag);opacity:.8}.history-diff-line.is-removed .history-diff-line-num{color:var(--color-danger);opacity:.8}.history-diff-line:not(.is-added):not(.is-removed){border-left:3px solid transparent}.graph-pane{padding:var(--space-3);overflow:hidden;display:flex;flex-direction:column}.graph-canvas{width:100%;height:auto;flex:1;margin-top:var(--space-2)}.graph-canvas line{stroke:#ffffff26;stroke-width:1}.graph-node{stroke:#ffffff1a;stroke-width:1.5}.graph-node-document{fill:var(--color-node-document)}.graph-node-entity{fill:var(--color-node-entity)}.graph-node-tag{fill:var(--color-node-tag)}.graph-node-label,.graph-edge-label{font-size:var(--font-size-xs);fill:var(--color-text-muted)}.graph-view{position:relative;width:100%;height:100%;min-height:240px;overflow:hidden;border-radius:var(--radius-lg);background:radial-gradient(circle at top left,rgba(59,130,246,.14),transparent 28%),radial-gradient(circle at bottom right,rgba(249,115,22,.12),transparent 24%),var(--color-bg-primary)}.graph-view canvas{border-radius:var(--radius-lg)}.graph-view-toolbar{position:absolute;top:var(--space-2);left:50%;transform:translate(-50%);display:flex;gap:2px;z-index:10;align-items:center}.graph-popover{position:absolute;bottom:52px;left:var(--space-3);background:color-mix(in srgb,var(--color-bg-secondary) 92%,transparent);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);box-shadow:var(--shadow-md);font-size:var(--font-size-xs);z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.graph-popover-full{left:12px;right:12px;bottom:52px}.graph-popover strong{color:var(--color-text-normal);display:block;margin-bottom:2px}.graph-popover span{display:block;color:var(--color-text-faint);margin-top:2px}.graph-popover-kind{text-transform:capitalize}.graph-recenter-btn{display:inline-flex;align-items:center;justify-content:center}.graph-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-faint);font-size:var(--font-size-sm)}.graph-timeline-shell{position:absolute;left:var(--space-3);right:var(--space-3);bottom:var(--space-3);z-index:10;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border-normal);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-bg-secondary) 92%,transparent);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.graph-timeline-header{display:flex;align-items:center;gap:var(--space-3)}.graph-play-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:var(--color-accent);color:var(--color-text-on-accent);box-shadow:var(--shadow-sm)}.graph-play-btn:hover{background:var(--color-accent-hover)}.graph-timeline-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.graph-timeline-meta strong{font-size:var(--font-size-xs);color:var(--color-text-normal);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.graph-timeline-meta span{font-size:11px;color:var(--color-text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.graph-speed-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:6px 10px;border-radius:999px;background:var(--color-bg-primary);border:1px solid var(--color-border-normal);font-size:11px;color:var(--color-text-faint)}.graph-speed-pill select{background:transparent;color:var(--color-text-normal);font-size:11px}.graph-timeline-track-shell{position:relative;padding-top:var(--space-2);overflow:visible}.graph-timeline-range{width:100%;appearance:none;background:transparent}.graph-timeline-range::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(90deg,#3b82f6d9,#f97316bf)}.graph-timeline-range::-webkit-slider-thumb{appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:999px;background:var(--color-text-on-accent);border:2px solid var(--color-accent);box-shadow:var(--shadow-sm)}.graph-timeline-range::-moz-range-track{height:4px;border-radius:999px;background:linear-gradient(90deg,#3b82f6d9,#f97316bf)}.graph-timeline-range::-moz-range-thumb{width:14px;height:14px;border:none;border-radius:999px;background:var(--color-text-on-accent);box-shadow:0 0 0 2px var(--color-accent)}.graph-timeline-markers{position:absolute;left:0;right:0;top:0;height:10px;pointer-events:none}.graph-timeline-marker{position:absolute;top:0;transform:translate(-50%);width:10px;height:10px;border-radius:999px;background:#ffffff73;border:1px solid rgba(255,255,255,.85);box-shadow:var(--shadow-sm);pointer-events:auto}.graph-timeline-marker.is-active{background:var(--color-accent);border-color:var(--color-accent)}@media(max-width:1200px){.graph-timeline-header{flex-wrap:wrap}.graph-speed-pill{margin-left:auto}}.graph-empty-text{font-size:var(--font-size-sm);color:var(--color-text-faint);padding:var(--space-4);text-align:center}.graph-legend{position:absolute;bottom:12px;left:12px;right:12px;z-index:5;display:flex;flex-wrap:wrap;gap:6px 12px;padding:8px 12px;border-radius:8px;background:color-mix(in srgb,var(--color-bg-secondary) 82%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-border-normal);font-size:11px;color:var(--color-text-muted);pointer-events:none}.graph-legend-item{display:inline-flex;align-items:center;gap:4px;text-transform:capitalize}.graph-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.graph-timeline-shell:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-lg)}.graph-timeline-shell:focus{outline:none}.graph-skip-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:var(--color-bg-primary);border:1px solid var(--color-border-normal);color:var(--color-text-muted);cursor:pointer;flex-shrink:0}.graph-skip-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.graph-frame-counter{font-size:10px;color:var(--color-text-faint);white-space:nowrap;font-variant-numeric:tabular-nums}.graph-timeline-marker[data-type^=document]{background:#63b3ed99;border-color:#63b3ede6}.graph-timeline-marker[data-type^=folder]{background:#f59e0b99;border-color:#f59e0be6}.graph-timeline-marker[data-type^=space]{background:#f9731699;border-color:#f97316e6}.graph-timeline-marker[data-type^=bookmark]{background:#f6c34399;border-color:#f6c343e6}.graph-timeline-marker-tooltip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);padding:4px 8px;border-radius:var(--radius-sm);background:var(--color-bg-primary);border:1px solid var(--color-border-normal);box-shadow:var(--shadow-md);font-size:10px;color:var(--color-text-normal);white-space:nowrap;z-index:20;pointer-events:none}.graph-timeline-marker-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:var(--color-border-normal)}.graph-timeline-shell{left:var(--space-2);right:var(--space-2);bottom:48px;padding:var(--space-2);gap:var(--space-1);overflow:visible;min-height:auto;position:absolute}.graph-timeline-header{flex-wrap:wrap;gap:var(--space-2);min-height:0}.graph-timeline-meta{min-width:0;overflow:hidden}.graph-timeline-meta strong,.graph-timeline-meta span{font-size:10px}.graph-speed-pill{padding:4px 8px;font-size:10px;margin-left:auto;flex-shrink:0}.graph-frame-counter{font-size:9px}.graph-play-btn{width:26px;height:26px;flex-shrink:0}.graph-skip-btn{width:22px;height:22px}.graph-timeline-drag-tooltip{position:absolute;top:calc(100% + 2px);transform:translate(-50%);z-index:30;pointer-events:none}.graph-timeline-drag-tooltip-content{padding:4px 8px;border-radius:var(--radius-sm);background:var(--color-bg-primary);border:1px solid var(--color-border-normal);box-shadow:var(--shadow-md);font-size:10px;color:var(--color-text-normal);white-space:nowrap;text-align:center;line-height:1.4}.graph-timeline-drag-tooltip-content:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-bottom-color:var(--color-border-normal)}.graph-view:has(.graph-timeline-shell) .graph-legend{bottom:auto;top:56px;left:var(--space-2);right:var(--space-2)}@container (max-width: 320px){.graph-timeline-meta,.graph-speed-pill span{display:none}}@media(max-width:500px){.graph-timeline-header{gap:var(--space-1)}.graph-timeline-meta,.graph-speed-pill span,.graph-frame-counter{display:none}}.archive-body{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);min-height:0;flex:1;border-top:1px solid var(--color-divider)}.archive-list-pane{min-width:0;border-right:1px solid var(--color-divider);background:var(--color-bg-secondary)}.archive-list{padding:var(--space-2) var(--space-4)}.archive-item{cursor:pointer}.archive-item.is-previewing{background:var(--color-accent-muted);border-color:#3b82f659}.archive-preview-shell{min-width:0;background:var(--color-bg-primary)}.archive-preview-pane{display:flex;flex-direction:column;height:100%}.archive-preview-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-divider);background:linear-gradient(180deg,rgba(59,130,246,.08),transparent)}.archive-preview-banner-copy h3{margin:var(--space-1) 0 6px;font-size:var(--font-size-xl);color:var(--color-text-normal)}.archive-preview-banner-copy p{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.archive-preview-banner-label{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:var(--color-bg-secondary);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.archive-preview-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.archive-preview-open-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--radius-md);background:var(--color-bg-secondary);border:1px solid var(--color-border-normal);color:var(--color-text-normal);font-size:var(--font-size-xs)}.archive-preview-open-btn:hover{background:var(--color-bg-modifier-hover)}.archive-preview-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-3) var(--space-6);font-size:var(--font-size-xs);color:var(--color-text-faint);border-bottom:1px solid var(--color-divider)}.archive-preview-scroll{flex:1;min-height:0;overflow:auto}.archive-preview-content{max-width:780px;margin:0 auto;padding:var(--space-6)}.archive-preview-empty{display:grid;place-items:center;height:100%}@media(max-width:1100px){.archive-body{grid-template-columns:1fr}.archive-list-pane{border-right:none;border-bottom:1px solid var(--color-divider);max-height:40vh;overflow:auto}}.modal{width:min(480px,calc(100vw - 48px));border-radius:var(--radius-lg);border:1px solid var(--color-border-normal);background:var(--color-bg-secondary);box-shadow:var(--shadow-lg);overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--color-divider)}.modal-header h3{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.modal-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-divider)}.tree-view{padding:0 var(--space-1) var(--space-3)}.tree-item{display:flex;align-items:center;gap:var(--space-1);min-height:28px;padding:3px var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-normal);cursor:pointer;transition:background var(--transition-fast)}.tree-item:hover{background:var(--color-bg-modifier-hover)}.tree-item.is-active{background:var(--color-accent-muted)}.bookmark-star{color:var(--color-bookmark);flex-shrink:0}.tree-row-shell{position:relative}.tree-row{position:relative;display:flex;align-items:center;gap:var(--space-1);min-height:30px;padding:4px var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-normal);cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast);-webkit-user-select:none;user-select:none;overflow:hidden}.tree-row:hover{background:var(--color-bg-modifier-hover)}.tree-row.is-active{background:var(--color-accent-muted)}.tree-row.is-drop-inside{background:#3b82f61f;box-shadow:inset 0 0 0 1px #3b82f68c}.tree-row.is-space .tree-label{font-weight:var(--font-weight-semibold)}.tree-icon{width:16px;height:16px;color:var(--color-text-faint);flex-shrink:0}.tree-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.tree-children{display:flex;flex-direction:column}.tree-chevron{width:16px;height:16px;display:flex;align-items:center;justify-content:center;color:var(--color-text-faint);flex-shrink:0;transition:transform var(--transition-fast)}.tree-chevron.is-expanded{transform:rotate(90deg)}.tree-chevron.is-empty{opacity:.28}.tree-drag-handle{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;color:transparent;cursor:grab;border-radius:2px;transition:color var(--transition-fast),background var(--transition-fast)}.tree-row:hover .tree-drag-handle{color:var(--color-text-faint)}.tree-drag-handle:hover{color:var(--color-text-normal);background:var(--color-bg-modifier-hover)}.tree-row-actions{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity var(--transition-fast)}.tree-row:hover .tree-row-actions,.tree-row.is-drop-inside .tree-row-actions,.tree-row.is-active .tree-row-actions{opacity:1}.tree-action-btn,.tree-bookmark-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-sm);color:var(--color-text-faint)}.tree-action-btn:hover,.tree-bookmark-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.tree-bookmark-btn{opacity:0}.tree-row:hover .tree-bookmark-btn,.tree-row.is-active .tree-bookmark-btn,.tree-bookmark-btn.is-bookmarked{opacity:1}.tree-bookmark-btn.is-bookmarked{color:var(--color-bookmark)}.tree-drop-anchor{position:absolute;left:var(--tree-drop-indent);right:6px;height:12px;z-index:3}.tree-drop-anchor.is-before{top:-6px}.tree-drop-anchor.is-after{bottom:-6px}.tree-drop-anchor:after{content:"";position:absolute;left:0;right:0;top:50%;height:2px;transform:translateY(-50%) scaleX(.55);transform-origin:left center;border-radius:999px;background:#3b82f6e0;box-shadow:0 0 0 1px #93c5fd40;opacity:0;transition:opacity var(--transition-fast),transform var(--transition-fast)}.tree-drop-anchor.is-active:after{opacity:1;transform:translateY(-50%) scaleX(1)}.tree-drop-child-line{position:absolute;left:var(--tree-child-indent);right:6px;bottom:-1px;height:2px;border-radius:999px;background:#3b82f6eb;box-shadow:0 0 0 1px #93c5fd40;pointer-events:none;z-index:3}.tree-root-drop{position:relative;height:18px;margin-left:28px;margin-right:6px}.tree-root-drop-line{position:absolute;left:0;right:0;top:50%;height:2px;border-radius:999px;background:#3b82f6e6;transform:translateY(-50%) scaleX(.55);transform-origin:left center;opacity:0;transition:opacity var(--transition-fast),transform var(--transition-fast)}.tree-root-drop.is-active .tree-root-drop-line{opacity:1;transform:translateY(-50%) scaleX(1)}.tree-space-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:6px;flex-shrink:0}.tree-space-access{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:999px;background:var(--color-bg-primary);color:var(--color-text-faint);font-size:10px;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.tree-drag-overlay{position:fixed;z-index:999;display:flex;align-items:center;gap:var(--space-2);padding:5px 10px;border-radius:var(--radius-md);background:var(--color-bg-secondary);border:1px solid var(--color-border-hover);box-shadow:var(--shadow-md);font-size:var(--font-size-sm);color:var(--color-text-normal);pointer-events:none;white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis}.collection-view{display:flex;flex-direction:column;min-height:100%;padding:var(--space-4) var(--space-5) var(--space-8);background:radial-gradient(circle at top left,rgba(59,130,246,.08),transparent 28%),radial-gradient(circle at top right,rgba(249,115,22,.08),transparent 24%),var(--color-bg-primary)}.collection-header{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4);padding-top:var(--space-3)}.collection-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);color:var(--color-text-faint);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em}.collection-breadcrumb-item{display:inline-flex;align-items:center;gap:var(--space-2)}.collection-title-row{display:flex;align-items:center;gap:var(--space-3)}.collection-title-row h2{font-size:var(--font-size-2xl);line-height:1.1;color:var(--color-text-normal);margin:0}.collection-subtitle{margin:6px 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.collection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3)}.collection-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border-normal);background:linear-gradient(180deg,var(--color-bg-secondary),rgba(255,255,255,.02));color:var(--color-text-normal);text-align:left;min-height:128px;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.collection-card:hover{transform:translateY(-1px);border-color:var(--color-border-hover);box-shadow:var(--shadow-md)}.collection-card span{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.collection-card small{font-size:var(--font-size-xs);color:var(--color-text-faint)}.collection-empty{display:grid;place-items:center;min-height:220px;border:1px dashed var(--color-border-normal);border-radius:var(--radius-lg);color:var(--color-text-faint);font-size:var(--font-size-sm)}@media(max-width:900px){.collection-view{padding:var(--space-4)}.collection-grid{grid-template-columns:1fr}}.collection-create-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-top:var(--space-4)}.collection-create-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);border-radius:var(--radius-lg);border:2px dashed var(--color-border-normal);background:var(--color-bg-secondary);color:var(--color-text-muted);text-align:center;min-height:160px;transition:all var(--transition-fast);cursor:pointer}.collection-create-card:hover{border-color:var(--color-accent-muted);color:var(--color-text-normal);background:var(--color-bg-tertiary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.collection-create-card span{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.collection-create-card small{font-size:var(--font-size-xs);color:var(--color-text-faint)}.collection-actions-bar{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.collection-action-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-muted);border:1px solid var(--color-border-normal);background:var(--color-bg-secondary);transition:all var(--transition-fast)}.collection-action-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal);border-color:var(--color-border-hover)}.onboarding-flow{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:var(--color-bg-primary,#fff)}.onboarding-container{width:100%;max-width:520px}.onboarding-header{text-align:center;margin-bottom:40px}.onboarding-progress{margin-top:24px;display:flex;align-items:center;gap:12px}.progress-bar{flex:1;height:4px;background:var(--color-border,#e5e7eb);border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:var(--color-accent,#4f46e5);border-radius:2px;transition:width .3s ease}.progress-text{font-size:12px;color:var(--color-text-muted,#6b7280);flex-shrink:0}.onboarding-step{text-align:center}.onboarding-step h1{font-size:24px;font-weight:700;margin-bottom:8px;color:var(--color-text-normal,#1a1a2e)}.step-description{color:var(--color-text-muted,#6b7280);font-size:15px;margin-bottom:32px}.account-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}.account-type-card{display:flex;flex-direction:column;align-items:center;padding:28px 20px;border:2px solid var(--color-border,#e5e7eb);border-radius:12px;background:var(--color-bg-primary,#fff);cursor:pointer;transition:all .15s;text-align:center}.account-type-card:hover{border-color:var(--color-accent,#4f46e5);box-shadow:0 2px 12px #4f46e51a}.account-type-card .card-icon{color:var(--color-accent,#4f46e5);margin-bottom:16px}.account-type-card h3{font-size:17px;font-weight:600;margin-bottom:6px;color:var(--color-text-normal,#1a1a2e)}.account-type-card p{font-size:13px;color:var(--color-text-muted,#6b7280);line-height:1.5}.onboarding-form{text-align:left}.form-field{margin-bottom:20px}.form-field label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--color-text-normal,#1a1a2e)}.form-field input{width:100%;padding:10px 14px;border:1.5px solid var(--color-border,#e5e7eb);border-radius:8px;font-size:15px;background:var(--color-bg-primary,#fff);color:var(--color-text-normal,#1a1a2e);transition:border-color .15s}.form-field input:focus{outline:none;border-color:var(--color-accent,#4f46e5);box-shadow:0 0 0 3px #4f46e51a}.form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:28px;gap:12px}.form-actions-right{display:flex;gap:8px}.btn-back,.btn-skip{padding:10px 20px;border:1.5px solid var(--color-border,#e5e7eb);border-radius:8px;background:transparent;color:var(--color-text-muted,#6b7280);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.btn-back:hover,.btn-skip:hover{background:var(--color-bg-hover,#f3f4f6);color:var(--color-text-normal,#1a1a2e)}.btn-next{padding:10px 28px;border:none;border-radius:8px;background:var(--color-accent,#4f46e5);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-next:hover{background:var(--color-accent-hover,#4338ca)}.btn-next:disabled{opacity:.5;cursor:not-allowed}.onboarding-complete .complete-icon{color:#10b981;margin-bottom:20px}@media(max-width:480px){.account-type-grid{grid-template-columns:1fr}.onboarding-container{max-width:100%}.form-actions{flex-direction:column}.form-actions-right{width:100%;justify-content:flex-end}}.settings-modal{width:100%;height:100%;display:grid;grid-template-columns:200px 1fr;overflow:hidden;min-height:0}.settings-nav{background:var(--color-bg-primary);border-right:1px solid var(--color-divider);padding:var(--space-4) var(--space-2);display:flex;flex-direction:column;gap:var(--space-1);height:100%;min-height:0;box-sizing:border-box;overflow-y:auto}.settings-nav-item{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:left}.settings-nav-item:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.settings-nav-item.is-active{background:var(--color-accent-muted);color:var(--color-accent)}.settings-content{padding:var(--space-6);overflow-y:auto;flex:1;display:flex;flex-direction:column}.settings-content h2{font-size:var(--font-size-lg);margin-bottom:var(--space-4);color:var(--color-text-normal)}.settings-field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-4)}.settings-field label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}.settings-field input{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-normal);background:var(--color-bg-primary);color:var(--color-text-normal);font-size:var(--font-size-sm)}.settings-field input[type=color]{padding:2px;height:38px}.settings-select{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-normal);background:var(--color-bg-primary);color:var(--color-text-normal);font-size:var(--font-size-sm)}.settings-section-copy{margin:-8px 0 var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-sm)}.settings-space-list{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-5)}.settings-space-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);background:var(--color-bg-primary)}.settings-space-card.is-selected{border-color:var(--color-accent);background:var(--color-accent-muted)}.settings-space-card-main{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0}.settings-space-card-main p{margin:4px 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.settings-space-color{width:14px;height:14px;border-radius:999px;flex-shrink:0;box-shadow:0 0 0 3px #ffffff0f}.settings-space-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.settings-space-access-pill,.settings-space-default{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;background:var(--color-bg-secondary);color:var(--color-text-faint);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.settings-space-default{color:var(--color-accent)}.settings-space-open{flex-shrink:0}.settings-space-creator{display:flex;flex-direction:column;padding:var(--space-4);border:1px solid var(--color-border-normal);border-radius:var(--radius-lg);background:var(--color-bg-primary)}.settings-space-creator-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.settings-space-form-row{display:grid;grid-template-columns:1fr 140px;gap:var(--space-3)}.settings-color-input{width:100%}.settings-membership-shell{display:flex;flex-direction:column;padding:var(--space-4);margin-bottom:var(--space-5);border:1px solid var(--color-border-normal);border-radius:var(--radius-lg);background:var(--color-bg-primary)}.settings-member-list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.settings-member-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-bg-secondary)}.settings-member-row p{margin:4px 0 0;color:var(--color-text-muted);font-size:var(--font-size-xs)}.settings-member-pills{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.settings-member-remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;color:var(--color-text-faint);background:var(--color-bg-primary);border:1px solid var(--color-border-normal)}.settings-member-remove:hover{color:var(--color-danger);border-color:#ef444440}.settings-member-form{display:flex;flex-direction:column}@media(max-width:900px){.settings-modal{grid-template-columns:1fr}.settings-nav{border-right:none;border-bottom:1px solid var(--color-divider)}.settings-space-card{flex-direction:column;align-items:flex-start}.settings-space-form-row{grid-template-columns:1fr}.settings-member-row{flex-direction:column;align-items:flex-start}}.settings-space-inline-input{all:unset;font:inherit;color:var(--color-text-normal);border-bottom:1.5px solid var(--color-accent);padding:0 2px;min-width:60px;max-width:100%}.settings-space-inline-input:focus{outline:none;border-color:var(--color-accent)}.settings-space-inline-desc{all:unset;font:inherit;color:var(--color-text-muted);font-size:var(--font-size-sm);border-bottom:1px dashed var(--color-border-normal);padding:0 2px;min-width:80px;width:100%}.settings-space-edit-trigger{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;color:var(--color-text-faint);background:var(--color-bg-modifier-hover);opacity:0;transition:opacity var(--transition-fast);cursor:pointer;border:none;flex-shrink:0}.settings-space-card:hover .settings-space-edit-trigger{opacity:1}.settings-space-edit-trigger:hover{color:var(--color-accent);background:var(--color-accent-muted)}.settings-space-color-popover{position:absolute;top:100%;left:0;z-index:20;padding:var(--space-2);background:var(--color-bg-secondary);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000002e}.settings-space-access-dropdown{position:absolute;top:100%;left:0;z-index:20;min-width:120px;background:var(--color-bg-secondary);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000002e;overflow:hidden}.settings-space-access-dropdown button{display:block;width:100%;padding:var(--space-2) var(--space-3);text-align:left;font-size:var(--font-size-sm);color:var(--color-text-normal);background:transparent;border:none;cursor:pointer}.settings-space-access-dropdown button:hover{background:var(--color-bg-modifier-hover)}.settings-space-access-dropdown button.is-active{color:var(--color-accent);font-weight:600}.settings-space-icon-edit{position:relative;display:inline-flex;align-items:center;gap:var(--space-1);cursor:pointer}.icon-picker-popover{position:absolute;top:100%;left:0;z-index:30;padding:var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-normal);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000002e}.icon-picker-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-1)}.icon-picker-item{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--color-text-muted);background:transparent;border:none;cursor:pointer}.icon-picker-item:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.icon-picker-item.is-selected{background:var(--color-accent-muted);color:var(--color-accent)}.settings-pw-message{font-size:var(--font-size-sm);color:var(--color-text-error)}.settings-pw-message.is-success{color:var(--color-tag)}.settings-about-copy{color:var(--color-text-muted);font-size:var(--font-size-sm)}.settings-nav-header{display:flex;justify-content:space-between;align-items:center;padding:0 8px 12px}.settings-nav-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.settings-logout-btn{color:var(--color-danger)!important;border-top:1px solid var(--color-divider);margin-top:var(--space-4)}.settings-view{grid-row:1 / -1;display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg-primary)}.settings-back-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md);background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;flex-shrink:0}.settings-back-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.search-view-body{grid-row:1 / -1!important;overflow-y:auto}.search-results-view{display:flex;flex-direction:column;min-height:100%;padding:var(--space-4) var(--space-5) var(--space-8);background:radial-gradient(circle at top right,rgba(127,109,242,.08),transparent 24%),var(--color-bg-primary)}.search-results-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-6)}.search-results-title-row{display:flex;align-items:center;gap:var(--space-3)}.search-results-icon{color:var(--color-accent);flex-shrink:0;margin-top:2px}.search-results-title-row h2{font-size:var(--font-size-2xl);line-height:1.1;color:var(--color-text-normal);margin:0}.search-results-subtitle{margin:6px 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.search-results-close-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;flex-shrink:0;margin-top:4px}.search-results-close-btn:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.search-results-list{display:flex;flex-direction:column;gap:var(--space-2)}.search-result-card{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border-normal);background:var(--color-bg-secondary);text-align:left;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.search-result-card:hover{transform:translateY(-1px);border-color:var(--color-accent-muted);box-shadow:var(--shadow-md);background:var(--color-bg-tertiary)}.search-result-icon{color:var(--color-text-faint);flex-shrink:0;margin-top:2px}.search-result-content{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.search-result-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-normal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-snippet{font-size:var(--font-size-sm);color:var(--color-text-muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.search-results-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:240px;gap:var(--space-3);color:var(--color-text-faint);text-align:center}.search-results-empty-icon{opacity:.3;margin-bottom:var(--space-2)}.search-results-empty p{font-size:var(--font-size-base);margin:0}.search-results-empty-hint{font-size:var(--font-size-sm);color:var(--color-text-faint);opacity:.7}.search-results-categories{display:flex;flex-direction:column;gap:var(--space-6)}.search-category-section{display:flex;flex-direction:column;gap:var(--space-2)}.search-category-header{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.08em;padding:var(--space-1) 0;border-bottom:1px solid var(--color-divider);margin-bottom:var(--space-1)}.search-category-count{margin-left:auto;background:var(--color-bg-tertiary);padding:1px 6px;border-radius:var(--radius-full);font-size:10px;color:var(--color-text-faint)}.search-category-badge{padding:2px 8px;border-radius:var(--radius-full);background:var(--color-bg-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.settings-save-btn{align-self:flex-start}.settings-modal-header{display:flex;justify-content:space-between;align-items:center;padding:0 8px 12px}.modal--sm{width:min(400px,calc(100vw - 48px))}.modal--md{width:min(440px,calc(100vw - 48px))}.modal--lg{width:min(560px,calc(100vw - 48px))}.toast-container{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:10000;display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none;max-width:420px;width:100%}.toast-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-bg-secondary);border:1px solid var(--color-border-normal);box-shadow:0 4px 24px #0000002e;color:var(--color-text-normal);font-size:var(--font-size-sm);pointer-events:auto;animation:toast-slide-up .2s ease-out}.toast-item.toast-exit{animation:toast-fade-out .2s ease-in forwards}.toast-undo{border-left:3px solid var(--color-accent)}.toast-success{border-left:3px solid #22c55e}.toast-icon{flex-shrink:0;color:var(--color-accent)}.toast-success .toast-icon{color:#22c55e}.toast-message{flex:1;min-width:0}.toast-action{flex-shrink:0;padding:2px 10px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;color:var(--color-accent);background:var(--color-accent-muted);border:none;cursor:pointer}.toast-action:hover{opacity:.85}.toast-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;color:var(--color-text-faint);background:transparent;border:none;cursor:pointer}.toast-close:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-muted)}@keyframes toast-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.archive-restore-banner{position:sticky;top:0;z-index:12;max-height:48px;overflow:hidden;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;transition:max-height .3s ease-out,opacity .3s ease-out}.archive-restore-banner.is-restoring{max-height:0;opacity:0}.archive-restore-banner-content{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-6);font-size:var(--font-size-sm);min-height:40px}.archive-restore-banner-content span{flex:1}.archive-restore-btn{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:#ffffff38;color:#fff;font-size:var(--font-size-xs);font-weight:600;border:1px solid rgba(255,255,255,.3);cursor:pointer;white-space:nowrap}.archive-restore-btn:hover{background:#ffffff59}.archive-restore-btn:disabled{opacity:.6;cursor:default}.space-create-modal{width:480px;max-width:90vw;max-height:85vh;background:var(--color-bg-primary);border-radius:var(--radius-lg);border:1px solid var(--color-border-normal);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-lg)}.space-create-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-divider)}.space-create-header h2{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-normal);margin:0}.space-create-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--color-text-faint);cursor:pointer;border-radius:var(--radius-sm)}.space-create-close:hover{background:var(--color-bg-modifier-hover);color:var(--color-text-normal)}.space-create-body{padding:var(--space-4) var(--space-5);overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-4)}.space-create-field{display:flex;flex-direction:column;gap:var(--space-1)}.space-create-field label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.06em}.space-create-input{width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-normal);background:var(--color-bg-secondary);color:var(--color-text-normal);font-size:var(--font-size-sm);outline:none;transition:border-color var(--transition-fast)}.space-create-input:focus{border-color:var(--color-accent)}.space-create-icon-grid{display:flex;flex-wrap:wrap;gap:var(--space-1)}.space-create-icon-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:2px solid transparent;background:var(--color-bg-secondary);cursor:pointer;font-size:16px;transition:all var(--transition-fast)}.space-create-icon-btn:hover{background:var(--color-bg-modifier-hover)}.space-create-icon-btn.is-selected{border-color:var(--color-accent);background:var(--color-bg-modifier-hover)}.space-create-color-grid{display:flex;flex-wrap:wrap;gap:var(--space-2)}.space-create-color-btn{width:28px;height:28px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:all var(--transition-fast)}.space-create-color-btn:hover{transform:scale(1.15)}.space-create-color-btn.is-selected{border-color:var(--color-text-normal);box-shadow:0 0 0 2px var(--color-bg-primary)}.space-create-access-options{display:flex;flex-direction:column;gap:var(--space-2)}.space-create-access-btn{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-normal);background:var(--color-bg-secondary);cursor:pointer;text-align:left;transition:all var(--transition-fast)}.space-create-access-btn:hover{border-color:var(--color-border-focus)}.space-create-access-btn.is-selected{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 8%,var(--color-bg-secondary))}.space-create-access-btn strong{font-size:var(--font-size-sm);color:var(--color-text-normal)}.space-create-access-btn span{font-size:var(--font-size-xs);color:var(--color-text-faint)}.space-create-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-divider)}.space-create-cancel{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-normal);background:var(--color-bg-secondary);color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer}.space-create-cancel:hover{background:var(--color-bg-modifier-hover)}.space-create-submit{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:none;background:var(--color-accent);color:var(--color-text-on-accent);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer}.space-create-submit:hover{background:var(--color-accent-hover)}.space-create-submit:disabled{opacity:.5;cursor:not-allowed}.space-create-error{padding:4px var(--space-2);margin-top:var(--space-1);font-size:var(--font-size-xs);color:var(--color-danger);background:#ef444414;border-radius:var(--radius-sm)}.space-create-input.has-error{border-color:var(--color-danger)}:root{--bp-mobile-sm: 360px;--bp-mobile: 480px;--bp-tablet: 768px;--bp-desktop: 1024px;--bp-wide: 1440px;--sidebar-width: 260px;--sidebar-collapsed-width: 48px;--inspector-width: 280px;--topbar-height: 44px;--statusbar-height: 28px;--tab-bar-height: 36px;--mobile-nav-height: 56px;--touch-target-min: 44px}@media(max-width:768px){:root{--sidebar-width: 280px;--inspector-width: 100%;--topbar-height: 48px;--statusbar-height: 32px}}@media(max-width:1024px){.app-main{grid-template-columns:1fr!important;position:relative}.vault-sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width, 280px);z-index:200;transform:translate(-100%);transition:transform .25s cubic-bezier(.4,0,.2,1);background:var(--color-bg-primary, #fff);box-shadow:none}.vault-sidebar.sidebar-mobile-open{transform:translate(0);box-shadow:4px 0 24px #00000026}.inspector-sidebar{position:fixed;top:0;right:0;bottom:0;width:320px;max-width:85vw;z-index:200;transform:translate(100%);transition:transform .25s cubic-bezier(.4,0,.2,1);background:var(--color-bg-primary, #fff);box-shadow:none}.inspector-sidebar.inspector-mobile-open{transform:translate(0);box-shadow:-4px 0 24px #00000026}.sidebar-overlay,.inspector-overlay{position:fixed;inset:0;background:#0006;z-index:199;opacity:0;pointer-events:none;transition:opacity .25s}.sidebar-overlay.visible,.inspector-overlay.visible{opacity:1;pointer-events:auto}}@media(max-width:768px){.app-shell{height:100dvh;overflow:hidden}.app-main{grid-template-columns:1fr!important;height:100dvh}.ribbon{display:none}.workspace-tabs-bar{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap}.workspace-tabs-bar::-webkit-scrollbar{display:none}.workspace-tab{flex-shrink:0;min-width:100px;max-width:160px}.editor-toolbar{flex-wrap:wrap;gap:2px;padding:4px 8px}.editor-toolbar button{min-width:var(--touch-target-min, 44px);min-height:var(--touch-target-min, 44px)}.editor-pane{padding:12px 16px}.editor-pane .tiptap{font-size:16px}.status-bar{padding:4px 12px;font-size:11px}.command-palette-overlay{align-items:flex-start;padding-top:8px}.command-palette{width:95vw;max-width:95vw;max-height:70vh}.settings-modal{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0;margin:0}.mobile-menu-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:transparent;cursor:pointer;border-radius:8px;color:var(--color-text-normal, inherit)}.mobile-menu-btn:hover{background:var(--color-bg-hover, rgba(0,0,0,.05))}.ds-context-menu{min-width:200px;max-width:calc(100vw - 24px)}.ds-menu-item{min-height:44px;padding:12px 16px}.graph-container,.graph-canvas-wrapper,.graph-view canvas{touch-action:none}}@media(max-width:480px){.auth-screen{padding:16px}.auth-card{width:100%;max-width:100%;padding:20px 16px;border-radius:12px}.auth-form .auth-field input{font-size:16px}.vault-sidebar{width:100vw}.inspector-sidebar{width:100vw;max-width:100vw}}@media(min-width:1025px){.mobile-menu-btn,.sidebar-overlay,.inspector-overlay{display:none}}@media(pointer:coarse){.tree-view-item{min-height:var(--touch-target-min, 44px);padding:8px 12px}.ribbon-btn{min-width:var(--touch-target-min, 44px);min-height:var(--touch-target-min, 44px)}.workspace-tab{min-height:36px;padding:6px 12px}button,[role=button]{min-height:36px}}@supports (padding: env(safe-area-inset-top)){.app-shell{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}
