:root{--font-ui:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-editor:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--canvas:#fbfcfc;--surface:#fff;--surface-subtle:#f8faf9;--surface-sidebar:#f3f6f5;--surface-raised:#fff;--surface-hover:#edf2f0;--border:#dce4e2;--border-strong:#c8d4d1;--control-border:#84938f;--text:#17201f;--text-secondary:#5d6967;--text-tertiary:#65726f;--text-disabled:#65726f;--primary:#087e8b;--primary-hover:#076d78;--primary-text:#076d78;--primary-soft:#e6f5f6;--primary-soft-hover:#d8eef0;--primary-contrast:#fff;--focus-ring:#087e8b47;--amber:#b45309;--amber-soft:#fff3d6;--danger:#b42318;--danger-hover:#921f17;--danger-soft:#fde9e7;--success:#177245;--collection-juniper:#087e8b;--collection-blue:#4f72b6;--collection-amber:#c27a21;--collection-coral:#bd604e;--shadow-menu:0 12px 32px #17201f1f, 0 2px 8px #17201f14;--shadow-modal:0 24px 64px #17201f2e, 0 4px 14px #17201f14;--radius-sm:4px;--radius:6px;--radius-lg:8px;--pane-header-height:48px;--control-height:34px;--control-height-compact:30px;--sidebar-width:200px;--list-width:288px;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-right:env(safe-area-inset-right,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px)}:root[data-theme=dark]{--canvas:#111716;--surface:#151c1b;--surface-subtle:#141b1a;--surface-sidebar:#18211f;--surface-raised:#202a28;--surface-hover:#25312f;--border:#2b3734;--border-strong:#3a4945;--control-border:#5b6b66;--text:#eff5f3;--text-secondary:#a9b7b3;--text-tertiary:#879691;--text-disabled:#879691;--primary:#5ccad1;--primary-hover:#82dde2;--primary-text:#82dde2;--primary-soft:#15383b;--primary-soft-hover:#1a4549;--primary-contrast:#0b292c;--focus-ring:#5ccad152;--amber:#f2b84b;--amber-soft:#382a14;--danger:#ff8a80;--danger-hover:#ffaaa3;--danger-soft:#3d2421;--success:#72d4a0;--collection-juniper:#5ccad1;--collection-blue:#86aef0;--collection-amber:#f2b84b;--collection-coral:#ed8d7b;--shadow-menu:0 12px 32px #00000057, 0 2px 8px #00000038;--shadow-modal:0 24px 64px #0000007a, 0 4px 14px #00000047}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;margin:0}html{background:var(--canvas);color:var(--text);font-family:var(--font-ui);font-synthesis:none;letter-spacing:0;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}body{overflow:hidden}button,input,textarea,select{color:inherit;font:inherit;letter-spacing:0}button,select{cursor:pointer}button:disabled,select:disabled{cursor:default;opacity:.48}button{border:0}input,textarea,select{border:0;outline:0}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background:var(--primary-soft-hover)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:padding-box;border:3px solid #0000;border-radius:8px;min-height:36px}::-webkit-scrollbar-track{background:0 0}.button{min-height:var(--control-height);border-radius:var(--radius);border:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:650;line-height:1;transition:background-color .14s,border-color .14s,color .14s;display:inline-flex}.button--primary{background:var(--primary);color:var(--primary-contrast)}.button--primary:hover:not(:disabled){background:var(--primary-hover)}.button--secondary{border-color:var(--control-border);background:var(--surface);color:var(--text)}.button--secondary:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-hover)}.button--danger{background:var(--danger);color:#fff}:root[data-theme=dark] .button--danger{color:#32110e}.button--danger:hover:not(:disabled){background:var(--danger-hover)}.button--quiet-danger{border-color:var(--control-border);color:var(--danger);background:0 0}.button--quiet-danger:hover{border-color:var(--danger);background:var(--danger-soft)}.icon-button{border-radius:var(--radius);width:32px;height:32px;color:var(--text-secondary);background:0 0;flex:0 0 32px;place-items:center;padding:0;transition:background-color .14s,color .14s;display:inline-grid;position:relative}.icon-button--small{flex-basis:28px;width:28px;height:28px}.icon-button:hover:not(:disabled),.icon-button.is-active{background:var(--surface-hover);color:var(--text)}.icon-button.is-active{color:var(--primary)}.mobile-only,.phone-only{display:none!important}@media (width<=760px){.phone-only{display:inline-grid!important}.button{min-height:40px}.icon-button{flex-basis:40px;width:40px;height:40px}.icon-button--small{flex-basis:36px;width:36px;height:36px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{grid-template-columns:var(--sidebar-width) var(--list-width) minmax(0, 1fr);width:100%;height:100dvh;padding:var(--safe-area-top) var(--safe-area-right) var(--safe-area-bottom) var(--safe-area-left);background:var(--canvas);display:grid;overflow:hidden}.sidebar,.note-list-pane,.editor-pane,.graph-pane{min-width:0;height:100%;min-height:0}.sidebar{border-right:1px solid var(--border);background:var(--surface-sidebar);flex-direction:column;padding:8px;display:flex}.brand-row{height:var(--pane-header-height);color:var(--text);align-items:center;gap:8px;padding:0 6px;font-size:16px;font-weight:740;display:flex}.brand-row img{border-radius:7px;width:28px;height:28px}.brand-row>span{flex:1;min-width:0}.new-note-button{border-radius:var(--radius);background:var(--primary-soft);width:100%;height:36px;color:var(--primary-text);flex:0 0 36px;justify-content:center;align-items:center;gap:8px;margin:4px 0 10px;font-size:13px;font-weight:670;transition:background-color .14s,color .14s;display:flex}.new-note-button:hover{background:var(--primary-soft-hover)}.sidebar-nav{flex:1;min-height:0;overflow:hidden auto}.sidebar-group{flex-direction:column;gap:2px;display:flex}.sidebar-group--utility{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.sidebar-link{border-radius:var(--radius);width:100%;min-height:32px;color:var(--text-secondary);text-align:left;background:0 0;grid-template-columns:18px minmax(0,1fr) 24px;align-items:center;gap:7px;padding:0 7px;transition:background-color .14s,color .14s;display:grid}.sidebar-link:hover{background:var(--surface-hover);color:var(--text)}.sidebar-link.is-active{background:var(--primary-soft);color:var(--primary-text);font-weight:650}.sidebar-link>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sidebar-count{color:var(--text-tertiary);font-variant-numeric:tabular-nums;text-align:right;font-size:11px}.sidebar-link.is-active .sidebar-count{color:var(--primary-text)}.sidebar-section-header{height:34px;color:var(--text-tertiary);justify-content:space-between;align-items:center;padding:5px 2px 1px 7px;font-size:12px;font-weight:650;display:flex}.collection-dot{background:var(--collection-juniper);border-radius:50%;flex:0 0 9px;justify-self:center;width:9px;height:9px;display:inline-block}.collection-dot--blue{background:var(--collection-blue)}.collection-dot--amber{background:var(--collection-amber)}.collection-dot--coral{background:var(--collection-coral)}.library-button{border-top:1px solid var(--border);width:100%;min-height:42px;color:var(--text-secondary);text-align:left;background:0 0;grid-template-columns:18px minmax(0,1fr) 8px;align-items:center;gap:8px;padding:4px 7px;display:grid}.library-button:hover{color:var(--text)}.library-button span:nth-child(2){flex-direction:column;gap:0;min-width:0;display:flex}.library-button strong{color:inherit;font-size:12.5px;font-weight:650}.library-button small{display:none}.local-indicator{background:var(--success);border-radius:50%;width:7px;height:7px}.note-list-pane{border-right:1px solid var(--border);background:var(--surface-subtle);flex-direction:column;display:flex}.note-list-header{height:var(--pane-header-height);flex:0 0 var(--pane-header-height);align-items:center;gap:8px;padding:0 10px 0 14px;display:flex}.note-list-header>div:not(.mobile-only){flex:1;align-items:baseline;gap:8px;min-width:0;display:flex}.note-list-header h1{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:17px;font-weight:720;line-height:1.2;overflow:hidden}.note-list-header div>span{color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-size:12px}.search-field{height:var(--control-height);flex:0 0 var(--control-height);border:1px solid var(--control-border);border-radius:var(--radius);background:var(--surface);color:var(--text-tertiary);align-items:center;gap:8px;margin:0 10px 8px;padding:0 7px 0 9px;transition:border-color .14s,box-shadow .14s;display:flex}.search-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring);color:var(--primary)}.search-field input{min-width:0;color:var(--text);background:0 0;flex:1;font-size:13px}.search-field input::placeholder{color:var(--text-tertiary)}.search-field input::-webkit-search-cancel-button{display:none}.note-list{border-top:1px solid var(--border);flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow:hidden auto}.note-list-entry{border-bottom:1px solid var(--border)}.note-list-item{width:100%;min-height:58px;color:var(--text);text-align:left;background:0 0;padding:9px 12px 8px 14px;transition:background-color .12s;display:block}.note-list-item:hover{background:var(--surface-hover)}.note-list-item.is-selected{background:var(--primary-soft)}.note-list-item.is-selected .note-list-item__topline time,.note-list-item.is-selected .note-collection,.note-list-item.is-selected .mini-tag{color:var(--text-secondary)}.note-list-item:focus-visible{outline-offset:-2px}.note-list-item__topline{align-items:baseline;gap:8px;display:flex}.note-list-item__topline strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13.5px;font-weight:680;line-height:1.35;overflow:hidden}.note-list-item__topline time{color:var(--text-tertiary);font-variant-numeric:tabular-nums;flex:none;font-size:10.5px}.note-list-item p{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:12px;line-height:1.35;overflow:hidden}.note-list-item__meta{min-width:0;color:var(--amber);align-items:center;gap:5px;margin-top:5px;display:flex;overflow:hidden}.note-collection,.mini-tag{min-width:0;color:var(--text-tertiary);white-space:nowrap;align-items:center;gap:5px;font-size:10px;line-height:1;display:inline-flex}.note-collection .collection-dot{flex-basis:7px;width:7px;height:7px}.mini-tag{text-overflow:ellipsis;max-width:82px;overflow:hidden}.empty-state{min-height:0;color:var(--text-secondary);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:24px 18px;display:flex}.empty-state__icon{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:40px;height:40px;color:var(--primary);place-items:center;display:grid}.empty-state h2{color:var(--text);margin:12px 0 14px;font-size:15px;font-weight:650}.editor-pane{background:var(--surface);flex-direction:column;display:flex;overflow:hidden}.editor-topbar{z-index:5;height:var(--pane-header-height);flex:0 0 var(--pane-header-height);border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:8px;padding:0 12px 0 18px;display:flex;position:relative}.collection-select{width:auto;max-width:180px;height:var(--control-height-compact);border-radius:var(--radius-sm);color:var(--text-secondary);text-overflow:ellipsis;background:0 0;border:1px solid #0000;padding:0 26px 0 8px;font-size:12px;font-weight:620}.collection-select:hover:not(:disabled){background:var(--surface-hover)}.collection-select--static:disabled{opacity:1;appearance:none;padding-right:8px}.save-state{min-width:58px;color:var(--text-tertiary);align-items:center;gap:5px;font-size:11px;display:flex}.save-state--saved{min-width:16px;color:var(--success)}.save-state--saved span{display:none}.save-state--error{color:var(--danger)}.saving-dot{background:var(--amber);border-radius:50%;width:7px;height:7px;animation:.9s ease-in-out infinite alternate saving-pulse}@keyframes saving-pulse{to{opacity:.36}}.editor-actions{align-items:center;gap:2px;margin-left:auto;display:flex}.menu-anchor{position:relative}.action-menu{z-index:20;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);width:188px;box-shadow:var(--shadow-menu);padding:5px;position:absolute;top:calc(100% + 7px);right:0}.action-menu button{border-radius:var(--radius);width:100%;min-height:34px;color:var(--text);text-align:left;background:0 0;align-items:center;gap:9px;padding:0 9px;font-size:12.5px;display:flex}.action-menu button:hover{background:var(--surface-hover)}.action-menu button.menu-danger{color:var(--danger)}.menu-separator{background:var(--border);height:1px;margin:4px}.state-banner{border-bottom:1px solid var(--border);background:var(--amber-soft);min-height:38px;color:var(--amber);flex:0 0 38px;align-items:center;gap:9px;padding:0 18px;font-size:12px;font-weight:620;display:flex}.state-banner span{margin-right:auto}.state-banner button{color:inherit;background:0 0;padding:6px;font-size:12px;font-weight:700}.state-banner--danger{background:var(--danger-soft);color:var(--danger)}.editor-document{flex-direction:column;flex:1;align-self:center;width:min(100%,780px);min-height:0;padding:24px 40px 0;display:flex;overflow:hidden}.editor-heading{flex:none;min-width:0}.editor-title-heading{font-size:inherit;line-height:inherit;margin:0}.title-input{resize:none;width:100%;color:var(--text);overflow-wrap:anywhere;background:0 0;padding:0;font-size:30px;font-weight:740;line-height:1.18;display:block;overflow:hidden}.title-input::placeholder,.body-editor::placeholder,.tag-input::placeholder{color:var(--text-disabled)}.note-byline{min-height:22px;color:var(--text-tertiary);font-variant-numeric:tabular-nums;align-items:center;gap:12px;margin-top:5px;font-size:11.5px;display:flex}.note-byline span:before{background:var(--border-strong);content:"";border-radius:50%;width:3px;height:3px;margin:0 8px 2px 0;display:inline-block}.tag-row{overscroll-behavior-x:contain;scrollbar-width:none;white-space:nowrap;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;align-items:center;gap:6px;width:100%;min-width:0;max-width:100%;min-height:28px;margin-top:4px;display:flex;overflow:auto hidden}.tag-row::-webkit-scrollbar{display:none}.tag-row:focus-visible{outline-offset:-2px}.tag-chip{border-radius:var(--radius-sm);background:var(--primary-soft);height:24px;color:var(--primary-text);white-space:nowrap;flex:none;align-items:center;gap:3px;padding:0 5px 0 8px;font-size:11px;font-weight:600;display:inline-flex}.tag-chip button{width:17px;height:17px;color:inherit;background:0 0;border-radius:3px;place-items:center;padding:0;display:grid}.tag-chip button:hover{background:var(--primary-soft-hover)}.tag-input{width:80px;min-width:40px;height:24px;color:var(--text-secondary);background:0 0;flex:0 0 80px;padding:0 4px;font-size:11px;transition:opacity .12s}@media (hover:hover){.tag-chip button{opacity:0;transition:opacity .12s,background-color .12s}.tag-chip:hover button,.tag-chip:focus-within button{opacity:1}.tag-row:not(:hover):not(:focus-within) .tag-input{opacity:0}}.inline-format-menu{z-index:40;border-radius:var(--radius-lg);width:152px;height:40px;box-shadow:var(--shadow-menu);background:#202826;border:1px solid #ffffff1f;justify-content:center;align-items:center;gap:3px;padding:5px;display:flex;position:fixed}.inline-format-menu .icon-button{color:#e7eeec}.inline-format-menu .icon-button:hover:not(:disabled),.inline-format-menu .icon-button.is-active{color:#fff;background:#ffffff1f}.inline-format-menu .icon-button:focus-visible{outline-color:#fff}.body-editor{resize:none;width:100%;min-height:0;color:var(--text);font-family:var(--font-editor);tab-size:2;background:0 0;flex:1;padding:14px 0 36px;font-size:16.5px;font-weight:420;line-height:1.72;overflow:hidden auto}.body-editor:focus-visible,.title-input:focus-visible{outline:none}.markdown-preview{width:100%;min-height:0;color:var(--text);font-family:var(--font-editor);overflow-wrap:anywhere;flex:1;padding:18px 0 44px;font-size:16.5px;font-weight:420;line-height:1.72;overflow:hidden auto}.markdown-preview>:first-child{margin-top:0}.markdown-preview>:last-child{margin-bottom:0}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview h4,.markdown-preview h5,.markdown-preview h6{color:var(--text);margin:1.65em 0 .62em;font-weight:720;line-height:1.28}.markdown-preview h1{border-bottom:1px solid var(--border);padding-bottom:8px;font-size:28px}.markdown-preview h2{font-size:23px}.markdown-preview h3{font-size:19px}.markdown-preview h4,.markdown-preview h5,.markdown-preview h6{font-size:16.5px}.markdown-preview p{margin:0 0 1.1em}.markdown-knowledge-link,.markdown-knowledge-tag{background:var(--primary-soft);color:var(--primary-text);font:inherit;line-height:inherit;border-radius:3px;padding:1px 3px;text-decoration:none;display:inline}.markdown-knowledge-link:hover,.markdown-knowledge-tag:hover{background:var(--primary-soft-hover)}.markdown-knowledge-link--missing{border-bottom:1px dashed var(--collection-coral);color:var(--collection-coral);background:0 0}.markdown-knowledge-link--ambiguous,.markdown-knowledge-link--missing-heading{border-bottom:1px dotted var(--amber);color:var(--amber);background:0 0}.markdown-knowledge-tag{background:var(--amber-soft);color:var(--amber)}.markdown-preview ul,.markdown-preview ol{margin:0 0 1.1em;padding-left:26px}.markdown-preview li+li{margin-top:4px}.markdown-preview .contains-task-list{padding-left:3px;list-style:none}.markdown-preview .task-list-item{list-style:none}.markdown-preview input[type=checkbox]{vertical-align:-2px;width:15px;height:15px;accent-color:var(--primary);margin:0 8px 0 0}.markdown-preview blockquote{border-left:3px solid var(--primary);color:var(--text-secondary);margin:1.25em 0;padding:1px 0 1px 18px}.markdown-preview blockquote>:last-child{margin-bottom:0}.markdown-preview a{color:var(--primary-text);text-decoration:underline;-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary);text-underline-offset:3px;font-weight:560}.markdown-preview a:hover{text-decoration-thickness:2px}.markdown-preview code{border-radius:var(--radius-sm);background:var(--surface-hover);color:var(--text);padding:2px 5px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.88em}.markdown-preview pre{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-subtle);margin:1.25em 0;padding:15px 17px;line-height:1.55;overflow-x:auto}.markdown-preview pre code{background:0 0;padding:0;font-size:13px}.markdown-preview table{border-collapse:collapse;width:100%;margin:1.25em 0;font-size:14px;display:block;overflow-x:auto}.markdown-preview th,.markdown-preview td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;min-width:120px;padding:9px 12px}.markdown-preview th{border-bottom-color:var(--border-strong);background:var(--surface-subtle);font-weight:680}.markdown-preview hr{border:0;border-top:1px solid var(--border-strong);margin:2em 0}.markdown-preview del{color:var(--text-secondary)}.markdown-preview .markdown-image-link{color:var(--text-secondary);align-items:center;gap:7px;display:inline-flex}.markdown-preview--empty{color:var(--text-tertiary);place-items:center;font-size:13px;display:grid}.connections-panel{border-top:1px solid var(--border);background:var(--surface);flex-direction:column;flex:none;min-height:37px;max-height:min(280px,44dvh);display:flex}.connections-toggle{width:100%;height:36px;color:var(--text-secondary);text-align:left;background:0 0;grid-template-columns:18px auto minmax(0,1fr) 18px;align-items:center;gap:8px;padding:0 4px;display:grid}.connections-toggle:hover{color:var(--text)}.connections-toggle strong{color:var(--text);font-size:12px;font-weight:680}.connections-toggle span{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.connections-toggle>svg:last-child{transition:transform .14s}.connections-panel.is-expanded .connections-toggle>svg:last-child{transform:rotate(180deg)}.connections-content{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;min-height:0;max-height:none;padding:2px 4px 14px;display:grid;overflow-y:auto}.connections-group{min-width:0}.connections-group h3{color:var(--text-tertiary);text-transform:uppercase;margin:0;padding:8px 0;font-size:10.5px;font-weight:700}.connection-rows{border-top:1px solid var(--border)}.connection-row{border-bottom:1px solid var(--border);width:100%;min-height:44px;color:var(--text-secondary);text-align:left;background:0 0;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:5px;display:grid}.connection-row:hover{background:var(--surface-hover);color:var(--primary-text)}.connection-row>span{flex-direction:column;gap:3px;min-width:0;display:flex}.connection-row strong,.connection-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.connection-row strong{color:var(--text);font-size:12px;font-weight:650}.connection-row small{color:var(--text-tertiary);font-size:10.5px}.connection-row em{background:var(--surface-hover);min-width:19px;height:19px;color:var(--text-tertiary);border-radius:50%;place-items:center;font-size:10px;font-style:normal;display:grid}.connection-row--missing,.connection-row--ambiguous{color:var(--collection-coral)}.connection-row--ambiguous,.connection-row--missing-heading{color:var(--amber)}.connections-group--tags{grid-column:1/-1}.connection-tags{flex-wrap:wrap;gap:6px;display:flex}.connection-tags button{border-radius:var(--radius-sm);background:var(--amber-soft);min-height:30px;color:var(--amber);align-items:center;gap:4px;padding:0 8px;font-size:11px;font-weight:620;display:inline-flex}.connection-tags button:hover{background:var(--surface-hover)}.graph-pane{background:var(--surface);flex-direction:column;grid-column:2/-1;min-width:0;display:flex;overflow:hidden}.graph-pane--loading{color:var(--primary);justify-content:center;align-items:center;gap:16px}.graph-header{height:var(--pane-header-height);flex:0 0 var(--pane-header-height);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:0 12px 0 18px;display:flex}.graph-heading{flex:1;align-items:baseline;gap:9px;min-width:0;display:flex}.graph-heading h1{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:18px;font-weight:720;overflow:hidden}.graph-heading span{color:var(--text-tertiary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11.5px}.graph-global-button{min-height:34px;padding:0 10px;font-size:12px}.graph-toolbar{border-bottom:1px solid var(--border);background:var(--surface-subtle);flex:0 0 46px;align-items:center;gap:10px;min-height:46px;padding:6px 10px;display:flex}.graph-search{width:min(260px,30vw);height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--radius);background:var(--surface);color:var(--text-tertiary);align-items:center;gap:7px;padding:0 9px;display:flex}.graph-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring);color:var(--primary)}.graph-search input{min-width:0;color:var(--text);background:0 0;flex:1;font-size:12.5px}.graph-filters,.graph-zoom-controls{align-items:center;gap:4px;display:flex}.graph-filters{flex:1;min-width:0}.graph-toggle{border-radius:var(--radius-sm);min-height:32px;color:var(--text-secondary);cursor:pointer;align-items:center;gap:5px;padding:0 8px;font-size:11px;font-weight:620;display:inline-flex}.graph-toggle:hover{background:var(--surface-hover);color:var(--text)}.graph-toggle input{width:14px;height:14px;accent-color:var(--primary);margin:0}.graph-zoom-controls{border-left:1px solid var(--border);padding-left:8px}.graph-workspace{flex:1;min-height:0;display:flex}.graph-canvas-wrap{background:var(--surface-subtle);flex:1;min-width:0;min-height:0;position:relative;overflow:hidden}.graph-canvas{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.graph-canvas:active{cursor:grabbing}.graph-canvas-background{fill:var(--surface-subtle)}.graph-edge{stroke:var(--border-strong);stroke-linecap:round;opacity:.72;vector-effect:non-scaling-stroke}.graph-edge--tag{stroke:var(--collection-amber);opacity:.38}.graph-edge.is-highlighted{stroke:var(--primary);opacity:1}.graph-node{cursor:pointer;outline:none;transition:opacity .12s}.graph-node.is-dimmed{opacity:.14}.graph-node-shape{fill:var(--surface-raised);stroke:var(--text-tertiary);stroke-width:1.6px;vector-effect:non-scaling-stroke}.graph-node:hover .graph-node-shape,.graph-node:focus-visible .graph-node-shape,.graph-node.is-focus .graph-node-shape{fill:var(--primary-soft);stroke:var(--primary);stroke-width:2.4px}.graph-node--tag .graph-node-shape{fill:var(--amber-soft);stroke:var(--collection-amber)}.graph-node--unresolved .graph-node-shape{fill:var(--surface);stroke:var(--collection-coral);stroke-dasharray:4 3}.graph-node--ambiguous .graph-node-shape{fill:var(--amber-soft);stroke:var(--collection-amber);stroke-dasharray:2 3}.graph-node-label{fill:var(--text-secondary);font-family:var(--font-ui);letter-spacing:0;paint-order:stroke;stroke:var(--surface-subtle);stroke-width:4px;stroke-linejoin:round;font-size:11px;font-weight:620}.graph-canvas--compact .graph-node-label{stroke-width:5px;font-size:15px}.graph-node:hover .graph-node-label,.graph-node:focus-visible .graph-node-label,.graph-node.is-focus .graph-node-label{fill:var(--text);font-weight:700}.graph-legend,.graph-limit-note{z-index:2;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-raised);min-height:28px;color:var(--text-tertiary);font-size:10.5px;position:absolute;bottom:14px}.graph-legend{align-items:center;gap:12px;padding:0 9px;display:flex;left:14px}.graph-legend span{align-items:center;gap:5px;display:inline-flex}.graph-legend i,.graph-list-marker{border:1px solid var(--text-tertiary);background:var(--surface-raised);border-radius:50%;flex:0 0 8px;width:8px;height:8px;display:inline-block}.graph-legend__tag,.graph-list-marker--tag{transform:rotate(45deg);border-color:var(--collection-amber)!important;background:var(--amber-soft)!important;border-radius:2px!important}.graph-legend__missing,.graph-list-marker--unresolved{border-color:var(--collection-coral)!important;border-style:dashed!important}.graph-list-marker--ambiguous{border-color:var(--collection-amber)!important;background:var(--amber-soft)!important}.graph-limit-note{align-items:center;padding:0 9px;display:inline-flex;right:14px}.graph-empty-state{height:100%;color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.graph-empty-state h2{color:var(--text-secondary);margin:0;font-size:14px}.graph-node-list{border-left:1px solid var(--border);background:var(--surface);flex-direction:column;flex:0 0 220px;width:220px;min-width:190px;display:flex}.graph-node-list__header{border-bottom:1px solid var(--border);flex:0 0 40px;justify-content:space-between;align-items:center;height:40px;padding:0 14px;display:flex}.graph-node-list__header strong{color:var(--text);font-size:12px;font-weight:680}.graph-node-list__header span{color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-size:11px}.graph-node-list__items{flex:1;min-height:0;overflow-y:auto}.graph-node-list__items>button{border-bottom:1px solid var(--border);width:100%;min-height:44px;color:var(--text-secondary);text-align:left;background:0 0;grid-template-columns:10px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:5px 10px;display:grid}.graph-node-list__items>button:hover{background:var(--surface-hover)}.graph-node-list__items>button>span:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.graph-node-list__items strong,.graph-node-list__items small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.graph-node-list__items strong{color:var(--text);font-size:12px;font-weight:640}.graph-node-list__items small{color:var(--text-tertiary);text-transform:capitalize;font-size:10px}.graph-node-list__items svg{color:var(--collection-coral)}.body-editor[readonly],.title-input[readonly]{color:var(--text-secondary)}.editor-pane--empty{background:var(--canvas);justify-content:center;align-items:center}.editor-empty-state{flex-direction:column;align-items:center;gap:18px;display:flex}.editor-empty-state img{opacity:.9;border-radius:8px}.editor-empty-state h2{color:var(--text-secondary);margin:0;font-size:16px;font-weight:620}.modal-backdrop{z-index:100;padding:max(20px, var(--safe-area-top)) max(20px, var(--safe-area-right)) max(20px, var(--safe-area-bottom)) max(20px, var(--safe-area-left));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0d14136b;place-items:center;display:grid;position:fixed;inset:0}.modal-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);width:min(100%,480px);max-height:min(720px,100%);box-shadow:var(--shadow-modal);overflow:hidden}.modal-panel--small{width:min(100%,400px)}.modal-header{height:var(--pane-header-height);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:0 12px 0 16px;display:flex}.modal-header h2{margin:0;font-size:16px;font-weight:700}.modal-content{max-height:calc(100dvh - 112px);padding:16px;overflow-y:auto}.modal-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:16px;display:flex}.field-label{color:var(--text-secondary);margin-bottom:7px;font-size:12px;font-weight:650;display:block}.text-field{border:1px solid var(--control-border);border-radius:var(--radius);background:var(--surface);width:100%;height:36px;padding:0 11px}.text-field:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.color-fieldset{border:0;margin:14px 0 0;padding:0}.color-options{gap:10px;display:flex}.color-swatch{border-radius:var(--radius);background:var(--collection-juniper);color:#fff;border:2px solid #0000;place-items:center;width:36px;height:36px;display:grid}.color-swatch--blue{background:var(--collection-blue)}.color-swatch--amber{background:var(--collection-amber)}.color-swatch--coral{background:var(--collection-coral)}.color-swatch[aria-pressed=true]{border-color:var(--text);box-shadow:0 0 0 2px var(--surface-raised)}.confirm-dialog{grid-template-columns:36px minmax(0,1fr);align-items:start;gap:12px;display:grid}.confirm-dialog__icon{border-radius:var(--radius);background:var(--danger-soft);width:36px;height:36px;color:var(--danger);place-items:center;display:grid}.confirm-dialog p{color:var(--text-secondary);margin:3px 0 0;font-size:13.5px;line-height:1.55}.settings-section+.settings-section{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.settings-section h3{color:var(--text-secondary);margin:0 0 10px;font-size:12px;font-weight:680}.library-summary{grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:44px;display:grid}.library-summary>svg{color:var(--primary)}.library-summary div{flex-direction:column;gap:4px;display:flex}.library-summary strong{font-size:13px}.library-summary div span{color:var(--text-tertiary);font-size:11.5px}.library-path{max-width:300px;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.settings-note{color:var(--amber);margin:8px 0 0 38px;font-size:11.5px;line-height:1.4}.status-badge{border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-text);padding:4px 7px;font-size:10px;font-weight:700}.segmented-control{border:1px solid var(--control-border);border-radius:var(--radius);background:var(--surface-subtle);grid-template-columns:repeat(3,minmax(0,1fr));padding:3px;display:grid}.segmented-control button{border-radius:var(--radius-sm);min-height:32px;color:var(--text-secondary);background:0 0;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:620;display:flex}.segmented-control button.is-selected{background:var(--surface-raised);color:var(--primary-text);box-shadow:0 1px 3px #17201f1a}.settings-actions{flex-wrap:wrap;gap:8px;display:flex}.settings-actions--library{margin-top:12px}.settings-section--danger .button{width:100%}.settings-footer{border-top:1px solid var(--border);justify-content:flex-end;margin-top:14px;padding-top:10px;display:flex}.settings-footer a{min-height:44px;color:var(--primary-text);align-items:center;gap:6px;padding:0 6px;font-size:12px;font-weight:650;text-decoration:none;display:inline-flex}.settings-footer a:hover{color:var(--primary);text-underline-offset:3px;text-decoration:underline}.toast{z-index:150;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);min-width:220px;min-height:44px;color:var(--success);box-shadow:var(--shadow-menu);grid-template-columns:20px minmax(0,1fr) 30px;align-items:center;gap:8px;padding:7px 7px 7px 13px;font-size:12.5px;font-weight:620;display:grid;position:fixed;bottom:20px;right:20px}.toast span{color:var(--text)}.toast--error{color:var(--danger)}.app-loading{background:var(--canvas);flex-direction:column;justify-content:center;align-items:center;gap:18px;width:100%;height:100dvh;display:flex}.app-loading img{border-radius:8px}.loading-line{background:var(--border);border-radius:3px;width:68px;height:3px;overflow:hidden}.loading-line:after{border-radius:inherit;background:var(--primary);content:"";width:34px;height:100%;animation:.9s ease-in-out infinite alternate loading-slide;display:block}@keyframes loading-slide{to{transform:translate(34px)}}@media (width<=1080px){.app-shell{grid-template-columns:var(--list-width) minmax(0, 1fr)}.sidebar,.note-list-pane,.editor-pane,.graph-pane{grid-row:1;display:none}.mobile-pane-library .sidebar,.mobile-pane-notes .note-list-pane,.mobile-pane-editor .note-list-pane,.mobile-pane-library .editor-pane,.mobile-pane-notes .editor-pane,.mobile-pane-editor .editor-pane,.mobile-pane-library .graph-pane,.mobile-pane-graph .graph-pane{display:flex}.sidebar,.note-list-pane{grid-column:1}.editor-pane,.mobile-pane-library .graph-pane{grid-column:2}.mobile-pane-graph .graph-pane{grid-column:1/-1}.mobile-only{display:inline-grid!important}.sidebar{border-right:1px solid var(--border);width:100%}.editor-pane,.mobile-pane-graph .graph-pane{border-right:0}.editor-document{width:min(100%,760px);padding:22px 28px 0}.title-input{font-size:29px}}@media (width<=760px){.app-shell{grid-template-columns:minmax(0,1fr)}.app-shell>.sidebar,.app-shell>.note-list-pane,.app-shell>.editor-pane,.app-shell>.graph-pane{grid-area:1/1;display:none}.mobile-pane-library>.sidebar,.mobile-pane-notes>.note-list-pane,.mobile-pane-editor>.editor-pane,.mobile-pane-graph>.graph-pane{display:flex}.sidebar{border-right:0;width:100%;padding:8px}.brand-row,.new-note-button,.sidebar-nav,.library-button{width:min(100%,520px);margin-left:auto;margin-right:auto}.sidebar-link{min-height:42px}.note-list-pane,.editor-pane,.graph-pane{border-right:0}.graph-header{padding-left:8px;padding-right:10px}.note-list-header{align-self:center;width:min(100%,620px);padding-left:8px;padding-right:10px}.search-field{align-self:center;width:min(100% - 20px,600px)}.note-list{align-self:center;width:min(100%,620px);padding-bottom:0}.note-list-item{padding-left:14px;padding-right:12px}.editor-topbar{padding-left:8px;padding-right:10px}.editor-document{width:min(100%,760px);padding:22px 26px 0}.title-input{font-size:29px}.body-editor{padding-bottom:32px}.state-banner{padding-left:12px;padding-right:12px}}@media (width<=700px){.connections-content{grid-template-columns:minmax(0,1fr);gap:12px}.connections-group--tags{grid-column:auto}.graph-toolbar{flex-basis:92px;grid-template-columns:minmax(0,1fr) auto;gap:7px 8px;min-height:92px;padding:6px 10px;display:grid}.graph-search{grid-column:1/-1;width:100%}.graph-filters{gap:0}.graph-toggle{gap:3px;padding:0 4px}.graph-zoom-controls{gap:0;padding-left:5px}.graph-workspace{flex-direction:column}.graph-canvas-wrap{min-height:0}.graph-node-list{border-top:1px solid var(--border);border-left:0;flex:0 0 clamp(112px,24dvh,185px);width:100%;min-width:0;height:clamp(112px,24dvh,185px)}.graph-node-list__header{flex-basis:38px;height:38px}.graph-node-list__items>button{min-height:48px}.graph-limit-note{justify-content:center;bottom:50px;left:10px;right:10px}}@media (width<=480px){.editor-topbar{gap:5px}.graph-heading{align-items:center}.graph-toolbar{flex-basis:116px;grid-template-columns:minmax(0,1fr);min-height:116px}.graph-search,.graph-filters,.graph-zoom-controls{grid-column:1}.graph-zoom-controls{justify-self:end}.graph-heading span{display:none}.graph-global-button{width:36px;min-height:36px;padding:0}.graph-global-button span{display:none}.graph-legend{gap:8px;bottom:9px;left:9px}.collection-select{max-width:112px}.save-state{min-width:14px}.save-state span{display:none}.editor-document{padding-top:20px}.title-input{font-size:28px}.modal-backdrop{padding:max(12px, var(--safe-area-top)) max(12px, var(--safe-area-right)) max(12px, var(--safe-area-bottom)) max(12px, var(--safe-area-left));align-items:end}.modal-panel{max-height:100%}.modal-actions .button{flex:1}.toast{right:max(12px, var(--safe-area-right));bottom:max(12px, var(--safe-area-bottom));left:max(12px, var(--safe-area-left));min-width:0}}.command-palette-backdrop{z-index:120;padding:max(clamp(48px, 12dvh, 112px), var(--safe-area-top)) max(20px, var(--safe-area-right)) max(20px, var(--safe-area-bottom)) max(20px, var(--safe-area-left));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0d14136b;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.command-palette{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-raised);width:min(100%,620px);max-height:min(500px,100%);box-shadow:var(--shadow-modal);flex-direction:column;display:flex;overflow:hidden}.command-palette__title{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.command-palette__search{border-bottom:1px solid var(--border);min-height:48px;color:var(--text-tertiary);flex:0 0 48px;align-items:center;gap:10px;padding:0 14px;display:flex}.command-palette__search:focus-within{color:var(--primary);box-shadow:inset 0 -2px 0 var(--primary)}.command-palette__search input{min-width:0;height:100%;color:var(--text);background:0 0;flex:1;font-size:15px}.command-palette__search input::placeholder{color:var(--text-tertiary)}.command-palette__results{min-height:72px;padding:4px;overflow:hidden auto}.command-palette__item{border-radius:var(--radius);width:100%;min-height:46px;color:var(--text);text-align:left;background:0 0;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:5px 8px;display:grid}.command-palette__item.is-selected{background:var(--primary-soft)}.command-palette__item.is-selected .command-palette__icon{color:var(--primary-text)}.command-palette__item.is-selected .command-palette__copy small{color:var(--text-secondary)}.command-palette__icon{border-radius:var(--radius);width:30px;height:30px;color:var(--text-secondary);place-items:center;display:grid}.command-palette__copy{flex-direction:column;gap:2px;min-width:0;display:flex}.command-palette__copy strong,.command-palette__copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.command-palette__copy strong{font-size:13.5px;font-weight:650}.command-palette__copy small{color:var(--text-tertiary);font-size:11.5px}.command-palette__item kbd{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-subtle);max-width:150px;color:var(--text-secondary);font-family:var(--font-ui);text-overflow:ellipsis;white-space:nowrap;padding:3px 6px;font-size:10.5px;line-height:1;overflow:hidden}.command-palette__empty{min-height:84px;color:var(--text-tertiary);place-items:center;margin:0;font-size:13px;display:grid}@media (width<=480px){.command-palette-backdrop{padding:max(8px, var(--safe-area-top)) max(8px, var(--safe-area-right)) max(8px, var(--safe-area-bottom)) max(8px, var(--safe-area-left))}.command-palette{max-height:100%}.command-palette__search{flex-basis:50px;min-height:50px;padding:0 13px}.command-palette__item{min-height:50px;padding-left:8px;padding-right:8px}.command-palette__item kbd{max-width:92px}}
