@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,600;1,6..72,400&family=JetBrains+Mono:wght@400;500&display=swap";:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e0d14;--panel:#13121b;--raised:#1a1925;--hover:#1e1c2b;--line:#262536;--text:#ecebf5;--muted:#8b89a0;--accent:#a99bff;--accent-ink:#17132b;--accent-soft:#272240;--accent-line:#3d3563;--link:#9fc3ff;--warn:#e8a76c;--danger:#ff8fa8;--shadow:#00000080;--edge:#4b4a63;--dot:#7468dc;--mask:#0e0d14b8}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f8f7fc;--panel:#f0eff7;--raised:#fff;--hover:#e8e6f3;--line:#dedcec;--text:#1c1a2b;--muted:#6a6882;--accent:#5b47e0;--accent-ink:#fff;--accent-soft:#e6e2fb;--accent-line:#c6bff2;--link:#2a62c9;--warn:#a85b14;--danger:#c4274f;--shadow:#281e5a33;--edge:#b9b6d3;--dot:#7a6be0;--mask:#f8f7fcb8}:root{--ease:cubic-bezier(.2, .8, .2, 1);--ui:"DM Sans", system-ui, sans-serif;--read:"Newsreader", Georgia, serif;--mono:"JetBrains Mono", ui-monospace, monospace;font-family:var(--ui);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}.theme-anim *,.theme-anim :before,.theme-anim :after{transition:background-color .3s,color .3s,border-color .3s,fill .3s!important}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);overflow:hidden}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}::selection{background:var(--accent-soft);color:var(--text)}kbd{font:500 10px var(--ui);border:1px solid var(--line);color:var(--muted);background:var(--raised);border-radius:4px;padding:2px 5px}.muted{color:var(--muted);margin:6px 2px;font-size:12px;line-height:1.5}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pane-in{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}@keyframes tab-in{0%{opacity:0;transform:translateY(5px)scale(.96)}to{opacity:1;transform:none}}@keyframes item-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:none}}@keyframes breathe{0%,to{opacity:.9;transform:scale(1)}50%{opacity:.5;transform:scale(1.25)}}@keyframes spin-in{0%{opacity:0;transform:rotate(-70deg)scale(.5)}to{opacity:1;transform:none}}@keyframes toast-in{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(8px)scale(.97)}}@keyframes palette-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:none}}.loading{height:100%;color:var(--muted);place-content:center;justify-items:center;gap:14px;font-size:13px;display:grid}.loading-mark,.empty-mark{background:var(--accent);width:14px;height:14px;box-shadow:0 0 24px var(--accent);border-radius:50%;animation:1.4s ease-in-out infinite breathe}.empty{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:10px;margin:auto;padding:24px;display:flex}.empty h2{color:var(--text);font:600 26px var(--read);margin:10px 0 0}.empty p{margin:0 0 6px}.app{flex-direction:column;height:100%;display:flex}.topbar{border-bottom:1px solid var(--line);background:var(--panel);z-index:30;flex-shrink:0;align-items:center;gap:8px;height:48px;padding:0 12px;display:flex;position:relative}.brand{letter-spacing:-.6px;padding-right:6px;font-size:16px;font-weight:700}.brand span{color:var(--accent)}.icon-btn{width:30px;height:30px;color:var(--muted);transition:background .15s, color .15s, transform .15s var(--ease);border-radius:8px;flex-shrink:0;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--hover);color:var(--text)}.icon-btn:active{transform:scale(.9)}.icon-btn.danger:hover{color:var(--danger)}.spin-in{animation:spin-in .4s var(--ease);display:grid}.btn{height:33px;transition:transform .15s var(--ease), background .15s, box-shadow .2s;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.btn:active{transform:scale(.97)}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.primary:hover{box-shadow:0 6px 18px -6px var(--accent)}.btn.primary kbd{color:inherit;border-color:color-mix(in srgb, var(--accent-ink) 30%, transparent);opacity:.7;background:0 0;margin-left:auto}.tabs-bar{scrollbar-width:none;flex:1;gap:3px;min-width:0;margin:0 6px;display:flex;overflow-x:auto}.doc-tab{max-width:170px;height:30px;color:var(--muted);cursor:pointer;animation:tab-in .25s var(--ease);border-radius:8px;flex-shrink:0;align-items:center;gap:7px;padding:0 6px 0 11px;font-size:12px;transition:background .15s,color .15s;display:flex}.doc-tab span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.doc-tab:hover{background:var(--hover);color:var(--text)}.doc-tab.active{background:var(--accent-soft);color:var(--text)}.doc-tab button{width:17px;height:17px;color:var(--muted);opacity:0;border-radius:5px;place-items:center;transition:opacity .15s;display:grid}.doc-tab:hover button,.doc-tab.active button{opacity:1}.doc-tab button:hover{background:var(--accent-line);color:var(--text)}.view-switch{--seg-w:76px;border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:3px;display:flex;position:relative}.seg-indicator{height:26px;width:var(--seg-w);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-line);transform:translateX(calc(var(--i) * var(--seg-w)));transition:transform .35s var(--ease);border-radius:7px;position:absolute;top:3px;left:3px}.view-switch button{z-index:1;width:var(--seg-w);height:26px;color:var(--muted);justify-content:center;align-items:center;gap:6px;font-size:12px;transition:color .2s;display:flex;position:relative}.view-switch button.on,.view-switch button:hover{color:var(--text)}.body{flex:1;min-height:0;display:flex;position:relative}.sidebar-shell{width:0;transition:width .35s var(--ease), border-color .35s;background:var(--panel);border-right:1px solid #0000;flex-shrink:0;overflow:hidden}.sidebar-shell.open{border-right-color:var(--line);width:264px}.sidebar{flex-direction:column;gap:10px;width:264px;height:100%;padding:12px;display:flex}.sidebar-shell:not(.open) .sidebar{visibility:hidden;transition:visibility 0s .35s}.scrim{display:none}.side-actions{gap:6px;display:flex}.side-actions .btn{flex:1}.search{border:1px solid var(--line);background:var(--bg);height:34px;color:var(--muted);border-radius:9px;align-items:center;gap:8px;padding:0 10px;transition:border-color .2s,box-shadow .2s;display:flex}.search:focus-within{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.search input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:12.5px}.search input::placeholder{color:var(--muted)}.search button{color:var(--muted);display:grid}.tabs{background:var(--bg);border:1px solid var(--line);border-radius:9px;grid-template-columns:1fr 1fr;padding:3px;display:grid;position:relative}.tabs-pill{background:var(--accent-soft);width:calc(50% - 3px);transition:transform .3s var(--ease);border-radius:6px;position:absolute;top:3px;bottom:3px;left:3px}.tabs[data-tab=tags] .tabs-pill{transform:translate(100%)}.tabs button{height:26px;color:var(--muted);justify-content:center;align-items:center;gap:6px;font-size:12px;transition:color .2s;display:flex;position:relative}.tabs button.on{color:var(--text)}.note-list{flex-direction:column;flex:1;gap:2px;min-height:0;margin:0 -4px;padding:0 4px;display:flex;overflow-y:auto}.note-item{text-align:left;border:1px solid #0000;border-radius:9px;flex-direction:column;gap:2px;padding:8px 10px;transition:background .15s,border-color .15s;display:flex}.note-item[data-boot]{animation:item-in .4s var(--ease) both}.note-item:hover{background:var(--hover)}.note-item.active{background:var(--accent-soft);border-color:var(--accent-line)}.note-title{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.note-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.tag-cloud{flex-wrap:wrap;align-content:flex-start;gap:6px;display:flex}.sidebar .tag-cloud{flex:1}.chip{background:var(--accent-soft);color:var(--accent);transition:border-color .15s, transform .15s var(--ease);border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11.5px;display:inline-flex}.chip span{color:var(--muted)}button.chip:hover{border-color:var(--accent-line);transform:translateY(-1px)}.chip.on{border-color:var(--accent)}.filter-chip{align-self:flex-start;margin-bottom:6px}.side-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding-top:8px;font-size:12px;display:flex}.main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.note-view{--pad:28px;flex-direction:column;flex:1;min-height:0;animation:.25s fade;display:flex}.note-view.solo{--pad:max(28px, calc((100% - 780px) / 2))}.note-head{padding:18px var(--pad) 4px;align-items:center;gap:10px;display:flex}.title-input{min-width:0;font:600 34px/1.2 var(--read);letter-spacing:-.5px;background:0 0;border:0;outline:0;flex:1}.title-input:focus-visible{outline:0}.note-actions{opacity:.5;transition:opacity .2s;display:flex}.note-head:hover .note-actions,.note-actions:focus-within{opacity:1}.panes{flex:1;min-height:0;display:flex}.panes>*{flex:1;min-width:0}.panes.split>.editor-wrap{border-right:1px solid var(--line)}.editor-wrap{display:flex;position:relative}.editor{resize:none;width:100%;height:100%;padding:12px var(--pad) 28px;font:400 13.5px/1.8 var(--mono);tab-size:2;caret-color:var(--accent);background:0 0;border:0;outline:0}.editor::placeholder{color:var(--muted)}.preview-scroll{overflow-y:auto}.pane-in{animation:pane-in .35s var(--ease)}.preview{padding:12px var(--pad) 48px;max-width:100%}.note-view.solo .preview{max-width:100%}.suggest{left:var(--pad);width:min(320px, calc(100% - 2 * var(--pad)));border:1px solid var(--line);background:var(--raised);box-shadow:0 16px 40px -8px var(--shadow);z-index:5;animation:palette-in .16s var(--ease);border-radius:11px;padding:5px;position:absolute;bottom:16px}.suggest button{text-align:left;border-radius:7px;width:100%;padding:7px 10px;font-size:12.5px;display:block}.suggest button.active,.suggest button:hover{background:var(--accent-soft)}.suggest-new{color:var(--accent)}.suggest-empty{color:var(--muted);padding:7px 10px;font-size:12px}.markdown{font:400 17.5px/1.75 var(--read);color:var(--text)}.markdown>*{max-width:68ch}.markdown h1,.markdown h2,.markdown h3{font-family:var(--read);letter-spacing:-.3px;margin:1.5em 0 .5em;font-weight:600;line-height:1.25}.markdown h1{margin-top:.3em;font-size:1.9em}.markdown h2{font-size:1.45em}.markdown h3{font-size:1.2em}.markdown p{margin:.75em 0}.markdown a{color:var(--link)}.markdown code{font:400 .8em var(--mono);background:var(--accent-soft);color:var(--accent);border-radius:5px;padding:2px 6px}.markdown pre{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px;overflow-x:auto}.markdown pre code{color:var(--text);background:0 0;padding:0;font-size:.78em}.markdown blockquote{border-left:3px solid var(--accent);color:var(--muted);margin:1em 0;padding:2px 18px;font-style:italic}.markdown table{border-collapse:collapse;font:400 14px var(--ui);margin:1em 0}.markdown th,.markdown td{border:1px solid var(--line);text-align:left;padding:7px 14px}.markdown th{background:var(--panel)}.markdown ul,.markdown ol{padding-left:1.4em}.markdown li.task-list-item{margin-left:-1.3em;list-style:none}.markdown input[type=checkbox]{accent-color:var(--accent);margin-right:8px}.markdown hr{border:0;border-top:1px solid var(--line);margin:2em 0}.wikilink{color:var(--accent);font:inherit;opacity:.92;transition:background-size .25s var(--ease), opacity .15s;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;padding:0}.wikilink:hover{opacity:1;background-size:100% 2px}.wikilink-missing{color:var(--warn);background-image:repeating-linear-gradient(90deg,currentColor 0 4px,#0000 4px 7px)}.meta-wrap{transition:grid-template-rows .35s var(--ease);border-top:1px solid var(--line);background:var(--panel);grid-template-rows:1fr;display:grid}.meta-wrap.closed{border-top-color:#0000;grid-template-rows:0fr}.meta-clip{min-height:0;overflow:hidden}.meta{gap:28px;max-height:170px;padding:14px 28px;display:flex;overflow-y:auto}.meta-col{flex:1;min-width:0}.meta h4{color:var(--muted);align-items:center;gap:6px;margin:0 0 6px;font-size:12px;font-weight:600;display:flex}.meta h4 span{color:var(--accent)}.link-row{max-width:100%;color:var(--accent);text-align:left;text-overflow:ellipsis;white-space:nowrap;transition:transform .15s var(--ease), color .15s;padding:3px 0;font-size:13px;display:block;overflow:hidden}.link-row:hover{color:var(--text);transform:translate(3px)}.link-row.missing{color:var(--warn)}.status{height:30px;color:var(--muted);border-top:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:center;padding:0 16px 0 12px;font-size:12px;display:flex}.status-toggle{color:var(--muted);border-radius:6px;align-items:center;gap:6px;padding:4px 8px;display:inline-flex}.status-toggle:hover{background:var(--hover);color:var(--text)}.chev{transition:transform .3s var(--ease)}.status-toggle[aria-expanded=false] .chev{transform:rotate(180deg)}.status-right{align-items:center;gap:16px;display:flex}.save{align-items:center;gap:6px;display:inline-flex}.save i{background:#5ed6a2;border-radius:50%;width:6px;height:6px;transition:background .2s}.save.saving i{background:var(--warn);animation:.8s ease-in-out infinite breathe}.graph-wrap{flex:1;animation:.3s fade;position:relative}.graph{position:absolute;inset:0}.graph-hint{color:var(--muted);pointer-events:none;font-size:12px;position:absolute;top:14px;left:16px}.g-node{cursor:pointer;animation:pop .5s var(--ease) both;flex-direction:column;align-items:center;gap:5px;display:flex}.g-dot{background:var(--dot);box-shadow:0 0 16px color-mix(in srgb, var(--dot) 55%, transparent);transition:transform .2s var(--ease), background .2s;border-radius:50%}.g-node:hover .g-dot{transform:scale(1.3)}.g-node-active .g-dot{background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft), 0 0 22px var(--accent)}.g-label{color:var(--text);white-space:nowrap;opacity:.85;font-size:11.5px}.graph-wrap .graph .react-flow{--xy-background-color:transparent;--xy-controls-button-background-color:var(--raised);--xy-controls-button-background-color-hover:var(--hover);--xy-controls-button-color:var(--text);--xy-controls-button-border-color:var(--line);--xy-minimap-background-color:var(--raised);--xy-edge-stroke:var(--edge)}.react-flow__minimap{border:1px solid var(--line);border-radius:10px;overflow:hidden}.react-flow__controls{border:1px solid var(--line);box-shadow:none;border-radius:10px;overflow:hidden}.overlay{z-index:50;background:color-mix(in srgb, var(--bg) 60%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:flex-start;padding-top:14vh;animation:.18s fade;display:flex;position:fixed;inset:0}.palette{border:1px solid var(--line);background:var(--raised);width:min(560px,92vw);box-shadow:0 30px 80px -10px var(--shadow);animation:palette-in .22s var(--ease);border-radius:14px;overflow:hidden}.palette>input{border:0;border-bottom:1px solid var(--line);background:0 0;outline:0;width:100%;padding:16px 18px;font-size:15px}.palette-list{max-height:340px;padding:6px;overflow-y:auto}.palette-list button{text-align:left;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:9px 12px;font-size:13.5px;display:flex}.palette-list button.active{background:var(--accent-soft)}.toasts{z-index:60;pointer-events:none;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:44px;right:18px}.toast{pointer-events:auto;border:1px solid var(--line);background:var(--raised);box-shadow:0 14px 36px -8px var(--shadow);animation:toast-in .3s var(--ease);border-radius:11px;align-items:center;gap:14px;padding:10px 12px 10px 16px;font-size:13px;display:flex}.toast.leaving{animation:.22s forwards toast-out}.toast button{color:var(--accent);border-radius:7px;padding:4px 10px;font-weight:600}.toast button:hover{background:var(--accent-soft)}@media (width<=800px){.view-switch{--seg-w:34px}.view-switch button span,.brand{display:none}.sidebar-shell{z-index:20;border-right-color:var(--line);width:min(300px,86%);transition:transform .35s var(--ease);box-shadow:none;position:absolute;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-shell.open{width:min(300px,86%);box-shadow:14px 0 40px -10px var(--shadow);transform:none}.sidebar{width:100%}.scrim{z-index:15;background:color-mix(in srgb, var(--bg) 55%, transparent);animation:.25s fade;display:block;position:absolute;inset:0}.note-view,.note-view.solo{--pad:16px}.panes.split{flex-direction:column}.panes.split>.editor-wrap{border-right:0;border-bottom:1px solid var(--line)}.title-input{font-size:26px}.meta{flex-direction:column;gap:12px;max-height:130px;padding:12px 16px}.toasts{align-items:stretch;left:12px;right:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.g-dotwrap{place-items:center;display:grid;position:relative}
