:root{--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace;--bottom-bar-h:48px;--bg:#fff;--bg-side:#f7f7f5;--text:#1a1a1e;--text-dim:#55555f;--text-faint:#9a9aa5;--border:#e6e6e2;--border-strong:#d0d0cc;--accent:#1f4c8c;--selection:#d5e2f4;--code-bg:#f0f0ee;--tag-bg:#e1ebf8;--hover:#ececea;--sel-bg:#eaf1fb;--highlight-bg:#ffe25e;--highlight-fg:#1a1a1e;--syn-keyword:#a626a4;--syn-string:#50a14f;--syn-number:#b76b01;--syn-func:#4078f2;--syn-type:#c18401;--syn-prop:#e45649}@media (prefers-color-scheme:dark){:root{--bg:#0b0b0f;--bg-side:#131318;--text:#e8e8ec;--text-dim:#a0a0ab;--text-faint:#63636e;--border:#23232b;--border-strong:#34343f;--accent:#6aa5ff;--selection:#1d3454;--code-bg:#1c1c23;--tag-bg:#182742;--hover:#1c1c24;--sel-bg:#152135;--highlight-bg:#f4d64e;--highlight-fg:#17170f;--syn-keyword:#c678dd;--syn-string:#98c379;--syn-number:#d19a66;--syn-func:#61afef;--syn-type:#e5c07b;--syn-prop:#e06c75}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html,body{overflow:hidden}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overscroll-behavior:none}.app{height:var(--vv-h,100dvh);transform:translateY(var(--vv-top,0px));grid-template-rows:100%;grid-template-columns:300px 1fr;display:grid;position:fixed;top:0;left:0;right:0}.sidebar{background:var(--bg-side);border-right:1px solid var(--border);min-height:0;padding-top:env(safe-area-inset-top);flex-direction:column;display:flex}.sidebar-head{justify-content:space-between;align-items:center;padding:16px 18px 10px;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:8px;font-size:1.15rem;font-weight:700;display:flex}.brand-logo{border-radius:7px;display:block}.search-row{padding:2px 14px 10px}.search-input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:9px;outline:none;padding:7px 11px;font-family:inherit;font-size:.88rem}.search-input::placeholder{color:var(--text-faint)}.search-input:focus{border-color:var(--accent)}.tag-tree{flex-direction:column;flex:0 auto;gap:1px;min-height:0;padding:0 8px 10px;display:flex}.tag-tree-scroll{overscroll-behavior:contain;flex-direction:column;gap:1px;min-height:0;max-height:22vh;display:flex;overflow-y:auto}.tag-tree-toggle{cursor:pointer;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);background:0 0;border:none;border-radius:6px;align-items:center;gap:5px;padding:2px 4px;font-family:inherit;font-size:.7rem;font-weight:600;display:flex}.tag-tree-toggle:hover{background:var(--hover);color:var(--text-dim)}.tag-tree-head{justify-content:space-between;align-items:center;padding:2px 6px 4px;display:flex}.tag-node-row{align-items:center;gap:2px;display:flex}.tag-caret{color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;place-items:center;width:18px;height:26px;padding:0;font-size:.65rem;display:grid}.tag-caret:hover{background:var(--hover);color:var(--text-dim)}.tag-caret-spacer{flex-shrink:0;width:18px}.tag-node{min-width:0;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:7px;flex:1;justify-content:space-between;align-items:center;gap:6px;padding:4px 9px;font-family:inherit;font-size:.82rem;display:flex}.tag-node:hover{background:var(--hover)}.tag-node.active{background:var(--accent);color:#fff}.tag-node-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tag-count{opacity:.6;flex-shrink:0;font-size:.72rem}.tag-node.active .tag-count{opacity:.85}.tag-edit-btn{color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:3px 8px;font-family:inherit;font-size:.78rem}.tag-edit-btn:hover{background:var(--hover);color:var(--text-dim)}.tag-edit-btn.active{color:var(--accent);font-weight:600}.tag-input{border:1px solid var(--accent);background:var(--bg);color:var(--text);border-radius:999px;outline:none;width:8.5em;padding:2px 8px;font-family:inherit;font-size:.8rem}.list-controls{justify-content:flex-end;padding:2px 14px 4px;display:flex}.sort-select{color:var(--text-faint);align-items:center;gap:6px;font-size:.75rem;display:inline-flex}.sort-select select{color:var(--text-dim);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:7px;outline:none;padding:3px 6px;font-family:inherit;font-size:.78rem}.sort-select select:focus{border-color:var(--accent)}.note-list{flex:1;min-height:0;margin:0;padding:4px 8px 20px;list-style:none;overflow-y:auto}.trash-head{justify-content:space-between;align-items:center;padding:6px 16px 6px 14px;display:flex}.trash-head>span{text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);font-size:.7rem;font-weight:600}.trash-empty-btn{color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:3px 8px;font-family:inherit;font-size:.78rem}.trash-empty-btn:hover{background:var(--hover);color:var(--text-dim)}.trash-actions{gap:6px;padding:0 12px 8px;display:flex}.trash-actions button{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:7px;padding:4px 10px;font-family:inherit;font-size:.78rem}.trash-actions button:hover{background:var(--hover);color:var(--text)}.trash-actions button.danger:hover{color:#e5484d;background:#e5484d29;border-color:#e5484d66}.sidebar-nav{border-top:1px solid var(--border);height:calc(var(--bottom-bar-h) + env(safe-area-inset-bottom) + var(--tb-lift,0px));padding:0 6px;padding-bottom:calc(env(safe-area-inset-bottom) + var(--tb-lift,0px));align-items:center;gap:4px;display:flex}.nav-item{min-width:0;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 6px;font-family:inherit;font-size:.8rem;display:flex}.nav-item:hover{background:var(--hover);color:var(--text)}.nav-item.active{background:var(--sel-bg);color:var(--accent)}.nav-count{color:var(--text-faint);background:var(--hover);border-radius:999px;padding:0 5px;font-size:.68rem}.nav-item.active .nav-count{color:var(--accent)}.note-item{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;border-radius:10px;flex-direction:column;gap:3px;padding:10px 12px;font-family:inherit;display:flex}.note-item:hover{background:var(--hover)}.note-item.selected{background:var(--sel-bg);box-shadow:inset 0 0 0 1px var(--border)}.note-row{position:relative}.note-row .note-item{padding-right:30px}.pin-btn{color:var(--text-faint);cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:6px;place-items:center;padding:3px;transition:opacity .12s;display:grid;position:absolute;top:8px;right:8px}@media (hover:hover){.pin-btn{opacity:0}.note-row:hover .pin-btn{opacity:.7}.pin-btn:hover{background:var(--hover);color:var(--text-dim);opacity:1!important}}.pin-btn.pinned{opacity:1;color:var(--accent)}.note-title{white-space:nowrap;text-overflow:ellipsis;font-size:.94rem;font-weight:600;overflow:hidden}.note-meta{color:var(--text-dim);white-space:nowrap;gap:8px;font-size:.8rem;display:flex;overflow:hidden}.note-meta time{color:var(--text-faint);flex-shrink:0}.note-preview{text-overflow:ellipsis;overflow:hidden}.search-hl{background:color-mix(in srgb, var(--accent) 24%, transparent);color:var(--text);border-radius:3px;padding:0 1px}.empty{color:var(--text-faint);padding:20px 14px;font-size:.9rem}.main{background:var(--bg);flex-direction:column;min-width:0;min-height:0;display:flex}.toolbar{padding:8px 12px;padding-top:max(8px, env(safe-area-inset-top));align-items:center;gap:4px;display:flex}.spacer{flex:1}.icon-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:9px;place-items:center;width:36px;height:36px;font-size:1.15rem;line-height:1;display:grid}.icon-btn:hover{background:var(--hover);color:var(--text)}.icon-btn.active{color:var(--accent);background:var(--tag-bg)}.icon-btn.synced{color:var(--accent)}.icon-btn.synced.sync-offline{color:var(--text-dim)}.update-dot{background:#e5484d;border-radius:50%;flex:none;width:7px;height:7px}.update-dot:hover{box-shadow:0 0 0 3px #e5484d38}.icon-btn.has-update{position:relative}.account-id{font-variant-numeric:tabular-nums;text-overflow:ellipsis;max-width:220px;overflow:hidden}.account-manage{border-top:1px solid var(--border);color:var(--accent);padding:10px 12px;font-size:.85rem;text-decoration:none;display:block}.account-manage:hover{background:var(--hover)}.toast{z-index:100;background:var(--bg-side);color:var(--text);border:1px solid var(--border);pointer-events:none;border-radius:10px;padding:9px 16px;font-size:.9rem;animation:.15s toast-in;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000047}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}.backup-nudge{z-index:90;background:var(--bg-side);max-width:min(92vw,380px);color:var(--text);border:1px solid var(--border);border-radius:12px;align-items:center;gap:12px;padding:10px 10px 10px 16px;animation:.15s nudge-in;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 12px 34px #00000047}@keyframes nudge-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.backup-nudge-text{font-size:.9rem}.backup-nudge-btn{white-space:nowrap;padding:7px 12px;font-size:.85rem}.backup-nudge-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:7px;place-items:center;padding:5px;display:grid}.backup-nudge-close:hover{background:var(--hover);color:var(--text)}.menu-btn{display:none}.menu-scrim{z-index:40;position:fixed;inset:0}.menu-sep{background:var(--border);height:1px;margin:5px 8px}.info-wrap{position:relative}.info-panel{z-index:50;background:var(--bg-side);border:1px solid var(--border);border-radius:12px;min-width:240px;padding:10px 14px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 34px #00000047}.info-panel dl{margin:0}.info-panel dl>div{justify-content:space-between;align-items:baseline;gap:16px;padding:5px 0;display:flex}.info-panel dl>div+div{border-top:1px solid var(--border)}.info-panel dt{color:var(--text-dim);font-size:.82rem}.info-panel dd{color:var(--text);font-variant-numeric:tabular-nums;text-align:right;margin:0;font-size:.85rem}.editor-host{flex:1;min-height:0;overflow:hidden}.backlinks{border-top:1px solid var(--border);padding:10px clamp(16px,5vw,40px);padding-bottom:max(10px, env(safe-area-inset-bottom));background:var(--bg);max-height:28vh;overflow-y:auto}.backlinks-head{text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);margin-bottom:6px;font-size:.7rem;font-weight:600}.backlinks ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.backlinks button{border:1px solid var(--border);background:var(--bg-side);color:var(--accent);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:8px;max-width:100%;padding:4px 10px;font-family:inherit;font-size:.83rem;overflow:hidden}.backlinks button:hover{background:var(--hover)}.edit-toolbar{height:calc(var(--bottom-bar-h) + env(safe-area-inset-bottom) + var(--tb-lift,0px));padding:0 clamp(10px,4vw,24px);padding-bottom:calc(env(safe-area-inset-bottom) + var(--tb-lift,0px));border-top:1px solid var(--border);background:var(--bg-side);scrollbar-width:none;-webkit-overflow-scrolling:touch;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:2px;display:flex;overflow:auto hidden}.edit-toolbar::-webkit-scrollbar{display:none}@media (width>=800px){.edit-toolbar{justify-content:center}}.edit-toolbar-btn{color:var(--text-dim);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:9px;flex:none;place-items:center;width:38px;height:38px;display:grid}.edit-toolbar-btn:hover{background:var(--hover);color:var(--text)}.edit-toolbar-btn:active{background:var(--tag-bg);color:var(--accent)}.edit-toolbar-btn svg{display:block}.drawer-scrim{z-index:45;background:#00000047;position:fixed;inset:0}.actions-drawer{top:var(--vv-top,0px);height:var(--vv-h,100dvh);z-index:46;width:min(320px,86vw);padding:8px 10px calc(12px + env(safe-area-inset-bottom));padding-top:max(8px, env(safe-area-inset-top));background:var(--bg-side);border-left:1px solid var(--border);visibility:hidden;flex-direction:column;gap:2px;transition:transform .22s;display:flex;position:fixed;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-8px 0 28px #0000003d}.actions-drawer.open{visibility:visible;transform:translate(0)}.drawer-head{justify-content:space-between;align-items:center;padding:4px 6px 8px;font-size:.95rem;font-weight:600;display:flex}.drawer-section{flex-direction:column;padding:6px 0;display:flex}.drawer-section+.drawer-section{border-top:1px solid var(--border)}.drawer-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);padding:4px 8px;font-size:.7rem;font-weight:600}.drawer-row{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:12px;padding:10px 8px;font-size:.92rem;display:flex}.drawer-row:hover:not(:disabled){background:var(--hover)}.drawer-row:disabled{opacity:.4;cursor:default}.drawer-row svg{color:var(--text-dim);flex:none}.drawer-row.active,.drawer-row.active svg{color:var(--accent)}.drawer-row.danger:hover:not(:disabled),.drawer-row.danger:hover:not(:disabled) svg{color:var(--danger,#d9534f)}.note-info-inline{padding:2px 8px 6px}.note-info-inline dl{margin:0}.note-info-inline dl>div{justify-content:space-between;gap:12px;padding:3px 0;font-size:.85rem;display:flex}.note-info-inline dt{color:var(--text-dim)}.note-info-inline dd{color:var(--text);margin:0}.empty-state{color:var(--text-dim);flex:1;place-content:center;justify-items:center;gap:16px;display:grid}.primary-btn,.tag-node,.note-item,.icon-btn{-webkit-tap-highlight-color:transparent}.primary-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px 18px;font-size:.95rem;font-weight:600}.drop-overlay{z-index:100;background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:none;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.drop-card{border:2px dashed var(--accent);background:var(--bg-side);color:var(--text);text-align:center;border-radius:18px;justify-items:center;gap:8px;padding:40px 56px;display:grid;box-shadow:0 20px 60px #00000059}.drop-icon{color:var(--accent);font-size:2.4rem;line-height:1}.drop-card p{margin:0;font-size:1.05rem;font-weight:600}.drop-card span{color:var(--text-dim);font-size:.85rem}.cmdk-scrim{z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000006b;justify-content:center;align-items:flex-start;padding:12vh 16px 16px;display:flex;position:fixed;inset:0}.cmdk{background:var(--bg-side);border:1px solid var(--border-strong);border-radius:14px;flex-direction:column;width:100%;max-width:560px;max-height:60vh;display:flex;overflow:hidden;box-shadow:0 24px 60px #00000073}.cmdk-input{border:none;border-bottom:1px solid var(--border);color:var(--text);background:0 0;outline:none;padding:15px 18px;font-family:inherit;font-size:1rem}.cmdk-input::placeholder{color:var(--text-faint)}.cmdk-list{margin:0;padding:6px;list-style:none;overflow-y:auto}.cmdk-item{cursor:pointer;color:var(--text);border-radius:9px;align-items:center;gap:10px;padding:9px 12px;display:flex}.cmdk-item.selected{background:var(--sel-bg)}.cmdk-icon{color:var(--text-faint);place-items:center;display:grid}.cmdk-label{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.92rem;overflow:hidden}.cmdk-kind{text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);font-size:.68rem}.cmdk-empty{color:var(--text-faint);padding:16px 14px;font-size:.9rem}.scrim{z-index:5;opacity:0;background:#0006;transition:opacity .2s;display:none;position:fixed;inset:0}@media (width<=720px){.app{grid-template-columns:1fr}.menu-btn{display:grid}.sidebar{z-index:10;width:84vw;max-width:320px;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:2px 0 24px #00000040}.app.sidebar-open .sidebar{transform:translate(0)}.app.sidebar-open .scrim{opacity:1;display:block}}.drawer-row.build-info{color:var(--text-faint);cursor:pointer;align-items:center;gap:8px;font-size:.72rem;line-height:1.5}.build-line{display:block}.build-info code{font-family:var(--font-mono);font-size:.95em}.build-stale{color:var(--accent);font-weight:600}
