@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-vietnamese-wght-normal-CHiFlh_0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-ext-wght-normal-Dg-wlmqe.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--tree-parent: #272c33;--tree-leaf: #4d5560;--tools-veil: rgba(255, 255, 255, .85);--paper: #ffffff;--surface: #ffffff;--sunken: #f4f6f8;--ink: #191d23;--ink-body: #363c45;--ink-2: #68717c;--ink-3: #9aa2ad;--line: #edeff2;--line-strong: #e2e5e9;--border-side: #e6e8ec;--accent: #1f66d6;--accent-ink: #1a56b5;--accent-wash: rgba(31, 102, 214, .08);--mention-wash: #eef4fd;--hover: #edf0f3;--hover-strong: #e8ebef;--tag-bg: #f0f2f5;--tag-hover: #e6e9ee;--live: #2f9e63;--live-glow: rgba(47, 158, 99, .18);--danger: #b3271e;--danger-wash: #fbefee;--ok: #2f7d46;--warn: #8a6d1f;--radius-s: 8px;--radius-leaf: 7px;--radius-m: 10px;--radius-l: 14px;--shadow-pop: 0 4px 16px rgba(15, 20, 28, .1), 0 1px 3px rgba(15, 20, 28, .08);--shadow-modal: 0 24px 64px rgba(15, 20, 28, .22), 0 4px 12px rgba(15, 20, 28, .1);--font-ui: "Hanken Grotesk Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--font-prose: "Hanken Grotesk Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Code", Menlo, monospace}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{margin:0;font-family:var(--font-ui);font-size:14px;color:var(--ink);background:var(--paper)}button{font-family:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:var(--radius-s)}::selection{background:#d3e2f8}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.app{display:grid;grid-template-columns:264px 1fr;grid-template-rows:100vh;height:100vh}.main{overflow-y:auto;background:var(--surface)}.empty{color:var(--ink-2);padding:48px}.sidebar{display:flex;flex-direction:column;background:var(--sunken);border-right:1px solid var(--border-side);padding:14px 12px;gap:2px}.sidebar-scroll{flex:1;min-height:0;overflow-y:auto;margin:0 -12px;padding:0 12px}.ws-switcher{position:relative;margin-bottom:8px}.ws-button{display:flex;align-items:center;gap:10px;width:100%;border:none;background:transparent;padding:8px;border-radius:var(--radius-s);cursor:pointer;font-size:14px;font-weight:600;text-align:left}.ws-button:hover{background:var(--hover)}.ws-mark{flex:none;width:26px;height:26px;border-radius:var(--radius-leaf);background:var(--accent);color:#fff;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.ws-name{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ws-chevron{color:var(--ink-3);transition:transform .12s ease;transform:rotate(90deg)}.ws-chevron.open{transform:rotate(-90deg)}.ws-menu{width:var(--radix-dropdown-menu-trigger-width)}.ws-button[data-state=open] .ws-chevron{transform:rotate(-90deg)}.side-nav{display:flex;flex-direction:column;gap:1px;margin-bottom:0}.nav-row{display:flex;align-items:center;gap:11px;padding:7px 9px;border:none;background:transparent;border-radius:var(--radius-s);font-size:13.5px;font-weight:450;color:var(--ink-body);cursor:pointer;text-decoration:none;text-align:left}.nav-row svg{color:var(--ink-2)}.nav-row:hover{background:var(--hover)}.nav-row.active{background:var(--hover);font-weight:550}.nav-row kbd{margin-left:auto;font-family:var(--font-ui);font-size:11px;font-weight:500;color:var(--ink-3);border-radius:5px;padding:1px 6px;background:var(--hover)}.section-title{display:flex;align-items:center;justify-content:space-between;margin-top:22px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-3);padding:0 9px 6px}.side-note{padding:4px 8px;font-size:12.5px;color:var(--ink-2)}.side-link{border:none;background:none;color:var(--accent);font-size:12.5px;cursor:pointer;padding:0}.sidebar-error{margin-top:8px;padding:7px 9px;font-size:12.5px;color:var(--danger);background:var(--danger-wash);border-radius:var(--radius-s)}.collection{margin-bottom:1px}.collection-row{display:flex;align-items:center;border-radius:var(--radius-s);padding-right:4px}.collection-row:hover{background:var(--hover)}.collection-name{flex:1;min-width:0;display:flex;align-items:center;gap:4px;border:none;background:none;font-size:13.5px;font-weight:600;color:var(--tree-parent);cursor:pointer;padding:6px 0 6px 6px;text-align:left}.collection-label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.twist{flex:none;color:var(--ink-3);transition:transform .12s ease}.twist.open{transform:rotate(90deg)}.row-actions{display:inline-flex;align-items:center;gap:1px;visibility:hidden}.collection-row:hover .row-actions,.doc-row:hover .row-actions,.group-head:hover .row-actions,.row-actions:has([data-state=open]){visibility:visible}.row-action{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--ink-2);width:22px;height:22px;border-radius:var(--radius-s);cursor:pointer;padding:0}.row-action:hover,.row-action.open{background:var(--hover);color:var(--ink)}.section-title .row-action{opacity:0}.section:hover .section-title .row-action{opacity:1}.doc-branch{margin-left:6px;padding-left:11px;border-left:1px solid var(--line-strong)}.doc-row{display:flex;align-items:center;gap:4px;padding:6px 10px;border-radius:var(--radius-leaf);font-size:13px;color:var(--tree-leaf);text-decoration:none}.doc-row:hover{background:var(--hover);color:var(--ink)}.doc-row.active{background:var(--hover);color:var(--accent);font-weight:600}.doc-title{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.doc-row.drop-into{box-shadow:inset 0 0 0 2px var(--accent)}.doc-row.drop-before,.collection-row.drop-before{box-shadow:0 -2px 0 var(--accent)}.doc-row.drop-after,.collection-row.drop-after{box-shadow:0 2px 0 var(--accent)}.archived-toggle{display:flex;align-items:center;gap:4px;width:100%;border:none;background:none;padding:5px 8px;font-size:12px;color:var(--ink-3);cursor:pointer;border-radius:var(--radius-s)}.archived-toggle:hover{background:var(--hover)}.archived-row{padding-left:26px}.archived-title{color:var(--ink-3);text-decoration:none;flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sidebar-footer{display:flex;align-items:center;gap:10px;margin-top:auto;padding:9px 8px;border-top:1px solid var(--border-side)}.avatar{flex:none;width:28px;height:28px;border-radius:50%;color:#fff;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.user-meta{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}.user-name{font-size:13px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.user-email{font-size:11.5px;color:var(--ink-3);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.row-menu{position:relative}.menu-pop{z-index:110;min-width:180px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);box-shadow:var(--shadow-pop);padding:4px;display:flex;flex-direction:column;animation:pop .12s ease}@keyframes pop{0%{opacity:0;transform:translateY(-2px)}}.menu-item{display:flex;align-items:center;gap:8px;border:none;background:none;text-align:left;font-size:13px;padding:6px 9px;border-radius:var(--radius-s);cursor:pointer;color:var(--ink)}.menu-item svg{color:var(--ink-2)}.menu-item:hover,.menu-item[data-highlighted]{background:var(--hover);outline:none}.menu-item.danger,.menu-item.danger svg{color:var(--danger)}.menu-item.danger:hover{background:var(--danger-wash)}.menu-check{width:16px;display:inline-flex;color:var(--accent)}.menu-sep{height:1px;background:var(--line);margin:4px 6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius-s);padding:6px 12px;font-size:13px;font-weight:500;color:var(--ink);cursor:pointer}.btn:hover{background:var(--sunken)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-ink)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn:disabled{opacity:.5;cursor:default}.tool-btn{display:inline-flex;align-items:center;gap:7px;border:none;background:transparent;border-radius:var(--radius-s);padding:7px 11px;font-size:13px;font-weight:500;color:var(--ink-2);cursor:pointer}.tool-btn:hover{color:var(--tree-parent);background:var(--hover-strong)}.tool-btn.active{color:var(--accent);background:var(--hover-strong)}.editor{max-width:780px;margin:0 auto;padding:20px 40px 96px}.editor-tools{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:flex-end;gap:4px;margin:-20px -40px 0;padding:16px 28px;background:var(--tools-veil);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);white-space:nowrap}.tool-divider{width:1px;height:20px;background:var(--line-strong);margin:0 8px}.save-state{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-2)}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor}.status-ok{color:var(--ok)}.status-wait{color:var(--warn)}.status-bad{color:var(--danger)}.presence{display:inline-flex;align-items:center;gap:10px;margin-left:2px}.presence-stack{display:inline-flex;align-items:center}.presence-avatar{box-sizing:border-box;width:28px;height:28px;border-radius:50%;color:#fff;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--surface);margin-left:-8px}.presence-stack .presence-avatar:first-child{margin-left:0}.presence-more{font-size:11.5px;color:var(--ink-2);margin-left:6px}.presence-count{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--live)}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--live);box-shadow:0 0 0 3px var(--live-glow)}.title-input{width:100%;border:none;outline:none;margin-top:14px;font-family:var(--font-prose);font-size:34px;font-weight:700;line-height:1.15;letter-spacing:-.02em;color:var(--ink);background:transparent;padding:0}.title-input:focus-visible{outline:none;box-shadow:0 2px 0 var(--accent)}.title-input::placeholder{color:var(--ink-3)}.doc-meta{margin-top:12px;font-family:var(--font-ui);font-size:13px;color:var(--ink-3)}.tag-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;font-family:var(--font-ui)}.tag-chip{display:inline-flex;align-items:center;gap:2px;padding:3px 6px 3px 10px;border-radius:var(--radius-leaf);background:var(--tag-bg);color:var(--ink-2);font-size:12.5px;font-weight:500;line-height:1.5}.tag-chip:not(:has(.tag-remove)){padding-right:8px}.tag-label{background:none;border:none;padding:0;color:inherit;font:inherit;cursor:pointer}.tag-label:hover{text-decoration:underline}.tag-remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:none;border:none;color:var(--ink-2);opacity:.6;cursor:pointer;border-radius:999px}.tag-remove:hover{opacity:1;background:#1f66d624}.tag-add{display:inline-flex;align-items:center;gap:5px;padding:5px 12px 5px 9px;border:none;border-radius:var(--radius-leaf);background:var(--tag-bg);color:var(--ink-2);font-family:var(--font-ui);font-size:12.5px;font-weight:500;cursor:pointer}.tag-add:hover{background:var(--tag-hover);color:var(--accent)}.tag-input{width:8rem;padding:4px 10px;border:1px solid var(--accent);border-radius:var(--radius-leaf);font-family:var(--font-ui);font-size:12.5px;outline:none}.callout{margin:16px 0;padding:10px 14px;border:1px solid var(--line-strong);border-left:3px solid var(--accent);border-radius:var(--radius-m);background:var(--accent-wash)}.callout-head{display:flex;align-items:center;gap:7px;margin-bottom:4px;font-family:var(--font-ui);font-size:12.5px;font-weight:600;color:var(--accent-ink);-webkit-user-select:none;user-select:none}.callout-label{flex:1}.callout-fold{border:none;background:none;padding:0;cursor:pointer;color:inherit;display:inline-flex}.callout-body>:first-child{margin-top:0}.callout-body>:last-child{margin-bottom:0}.callout-tip{border-left-color:var(--ok);background:#2f7d4612}.callout-tip .callout-head{color:var(--ok)}.callout-warning{border-left-color:var(--warn);background:#8a6d1f14}.callout-warning .callout-head{color:var(--warn)}.callout-caution{border-left-color:var(--danger);background:var(--danger-wash)}.callout-caution .callout-head{color:var(--danger)}.callout-neutral{border-left-color:var(--ink-3);background:var(--sunken)}.callout-neutral .callout-head{color:var(--ink-2)}.toggle{display:flex;align-items:flex-start;gap:4px;margin:12px 0}.toggle-caret{flex:none;margin-top:.12em;border:none;background:none;padding:2px;cursor:pointer;color:var(--ink-3);display:inline-flex;border-radius:var(--radius-s)}.toggle-caret:hover{background:var(--hover);color:var(--ink-2)}.toggle-inner{flex:1;min-width:0}.toggle-summary{display:block;font-weight:600;cursor:text;list-style:none}.toggle-summary::-webkit-details-marker,.toggle-summary::marker{display:none}.toggle-content>:first-child{margin-top:.25em}.toggle-content>:last-child{margin-bottom:0}.toggle.collapsed .toggle-content{display:none}.toc-rail{position:fixed;left:280px;top:96px;width:172px;max-height:calc(100vh - 120px);overflow-y:auto;padding:6px 12px 20px 6px;font-family:var(--font-ui)}.toc-title{padding:0 8px 6px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.toc-entry{display:block;width:100%;border:none;border-left:2px solid transparent;background:none;cursor:pointer;text-align:left;color:var(--ink-2);font-size:12px;line-height:1.35;padding:3px 8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.toc-entry:hover{color:var(--ink)}.toc-entry.active{color:var(--accent);border-left-color:var(--accent);font-weight:550}.toc-l2{padding-left:18px}.toc-l3{padding-left:28px}.ProseMirror :is(h1,h2,h3,h4){scroll-margin-top:84px}@media(max-width:1450px){.toc-rail{display:none}}.search-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.prose{margin-top:10px}.ProseMirror{outline:none;font-family:var(--font-prose);font-size:15.5px;line-height:1.7;min-height:60vh;color:var(--ink)}.ProseMirror p{margin:.65em 0}.ProseMirror h1,.ProseMirror h2,.ProseMirror h3{font-weight:650;letter-spacing:-.01em;line-height:1.25;margin:1.4em 0 .4em}.ProseMirror h1{font-size:1.6em}.ProseMirror h2{font-size:1.3em}.ProseMirror h3{font-size:1.12em}.ProseMirror a{color:var(--accent-ink);text-decoration-color:#1f66d666;text-underline-offset:2px}.ProseMirror code{font-family:var(--font-mono);background:var(--sunken);border:1px solid var(--line);padding:.1em .35em;border-radius:4px;font-size:.82em}.ProseMirror pre{font-family:var(--font-mono);background:#22303c;color:#eef1f4;padding:14px 16px;border-radius:var(--radius-m);overflow-x:auto;font-size:.82em;line-height:1.6}.ProseMirror pre code{background:none;border:none;padding:0;font-size:inherit}.ProseMirror pre .hljs-comment,.ProseMirror pre .hljs-quote{color:#7c8a99;font-style:italic}.ProseMirror pre .hljs-keyword,.ProseMirror pre .hljs-selector-tag,.ProseMirror pre .hljs-literal{color:#c792ea}.ProseMirror pre .hljs-string,.ProseMirror pre .hljs-regexp,.ProseMirror pre .hljs-addition{color:#a5d6a7}.ProseMirror pre .hljs-number,.ProseMirror pre .hljs-symbol,.ProseMirror pre .hljs-meta{color:#f5b971}.ProseMirror pre .hljs-title,.ProseMirror pre .hljs-section,.ProseMirror pre .hljs-name{color:#82aaff}.ProseMirror pre .hljs-attr,.ProseMirror pre .hljs-attribute,.ProseMirror pre .hljs-type,.ProseMirror pre .hljs-built_in{color:#ffcb6b}.ProseMirror pre .hljs-variable,.ProseMirror pre .hljs-template-variable{color:#89ddff}.ProseMirror pre .hljs-deletion{color:#ff8a80}.ProseMirror pre .hljs-emphasis{font-style:italic}.ProseMirror pre .hljs-strong{font-weight:700}.ProseMirror .tableWrapper{overflow-x:auto;margin:1em 0}.ProseMirror table{border-collapse:collapse;width:auto;font-family:var(--font-ui);font-size:.92em}.ProseMirror th,.ProseMirror td{border:1px solid var(--line-strong);padding:6px 11px;vertical-align:top;text-align:left;min-width:3.5em}.ProseMirror th{background:var(--sunken);font-weight:600}.ProseMirror th>p,.ProseMirror td>p{margin:0}.ProseMirror .selectedCell{background:var(--accent-wash)}.math-src-hidden{display:none}.math-render{cursor:default}.math-render .katex{font-size:1.02em}.math-render.math-block{display:block;text-align:center;margin:.6em 0}.math-render.math-block .katex{font-size:1.18em}.ProseMirror blockquote{border-left:2px solid var(--line-strong);margin:.9em 0;padding-left:16px;color:var(--ink-2);font-style:italic}.ProseMirror hr{border:none;border-top:1px solid var(--line);margin:2em 0}.ProseMirror ul,.ProseMirror ol{padding-left:1.4em}.ProseMirror li{margin:.2em 0}.img-node{display:inline-block;position:relative;line-height:0;max-width:100%}.img-node img{max-width:100%;border-radius:3px}.img-node[data-selected] img{outline:2px solid var(--accent)}.img-resize-handle{position:absolute;right:-4px;bottom:-4px;width:12px;height:12px;background:var(--accent);border:2px solid var(--surface);border-radius:50%;cursor:nwse-resize}.ProseMirror ul[data-type=taskList]{list-style:none;padding-left:.2em}.ProseMirror ul[data-type=taskList] li{display:flex;gap:9px}.ProseMirror ul[data-type=taskList] li>label{flex:0 0 auto;margin-top:calc((1.7em - 15px)/2);-webkit-user-select:none;user-select:none}.ProseMirror ul[data-type=taskList] li>div>p{margin:0}.ProseMirror ul[data-type=taskList] input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:15px;height:15px;border:1.5px solid var(--line-strong);border-radius:4px;background:var(--surface);cursor:pointer;display:grid;place-content:center;margin:0}.ProseMirror ul[data-type=taskList] input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.ProseMirror ul[data-type=taskList] input[type=checkbox]:checked:before{content:"";width:8px;height:8px;clip-path:polygon(14% 44%,0 60%,40% 100%,100% 16%,84% 4%,38% 72%);background:#fff}.ProseMirror ul[data-type=taskList] li>div{flex:1}.ProseMirror ul[data-type=taskList] li[data-checked=true]>div{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--line-strong)}.blame-span{border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}.blame-ai{border-bottom:1px dotted rgba(15,20,28,.5)}.blame-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;font-size:12px;color:var(--ink-3)}.blame-legend:before{content:"Written by";margin-right:2px}.blame-legend-item{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;background:var(--sunken);border:1px solid var(--line);color:var(--ink-2)}.legend-dot{width:9px;height:9px;border-radius:50%;display:inline-block}.blame-card{position:fixed;z-index:60;background:var(--ink);color:#f3f5f7;border-radius:var(--radius-s);box-shadow:var(--shadow-pop);padding:6px 10px;font-size:12px;display:flex;align-items:center;gap:8px;pointer-events:none}.blame-when{color:#a7aeb7}.collaboration-cursor__caret{border-left:2px solid;margin-left:-1px;pointer-events:none;position:relative;word-break:normal}.collaboration-cursor__label{font-family:var(--font-ui);border-radius:4px 4px 4px 0;color:#fff;font-size:11px;font-weight:600;left:-1px;line-height:1.35;padding:1px 6px;position:absolute;top:-1.4em;-webkit-user-select:none;user-select:none;white-space:nowrap}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f141c66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding-top:13vh;z-index:100}.modal{position:fixed;top:13vh;left:50%;transform:translate(-50%);z-index:101;background:var(--surface);border-radius:var(--radius-l);box-shadow:var(--shadow-modal);width:460px;max-width:calc(100vw - 32px);max-height:74vh;overflow-y:auto;padding:20px 22px;animation:rise-centered .14s ease}@keyframes rise{0%{opacity:0;transform:translateY(6px) scale(.99)}}@keyframes rise-centered{0%{opacity:0;transform:translate(-50%) translateY(6px) scale(.99)}to{opacity:1;transform:translate(-50%)}}.modal.wide{width:580px}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.modal-head h2{margin:0;font-size:16px;font-weight:650;letter-spacing:-.01em}.modal h3{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin:20px 0 8px}.modal-close{display:inline-flex;border:none;background:none;color:var(--ink-3);cursor:pointer;padding:4px;border-radius:var(--radius-s)}.modal-close:hover{color:var(--ink);background:var(--sunken)}.modal-note{font-size:13px;color:var(--ink-2)}.modal-error{margin-top:12px;padding:7px 9px;font-size:12.5px;color:var(--danger);background:var(--danger-wash);border-radius:var(--radius-s)}.dialog-form{display:flex;flex-direction:column;gap:14px}.dialog-body{margin:2px 0 6px;font-size:13.5px;line-height:1.55;color:var(--ink-2)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.field{display:flex;flex-direction:column;gap:5px;font-size:12.5px;color:var(--ink-2)}.field input,.field select,.grant-add select,.invite-row select,.invite-row input,.group-body select{font-family:inherit;font-size:13.5px;color:var(--ink);padding:7px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--surface)}.grant-list,.member-list{list-style:none;margin:0;padding:0}.grant-list li,.member-list li{display:flex;align-items:center;gap:10px;padding:7px 0;font-size:13px;border-bottom:1px solid var(--line)}.grant-list li:last-child,.member-list li:last-child{border-bottom:none}.grant-who,.member-name{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.member-email{color:var(--ink-3);font-size:12px}.grant-role,.member-role{color:var(--ink-2);font-size:12px;background:var(--sunken);border-radius:999px;padding:2px 9px}.grant-add,.invite-row{display:flex;gap:8px;margin-top:10px;align-items:center}.grant-add select:first-child,.invite-row input{flex:1;min-width:0}.invite-link{width:100%;margin-top:10px;padding:7px 10px;border:1px solid var(--accent);border-radius:var(--radius-s);font-size:12.5px;font-family:var(--font-mono);color:var(--accent-ink);background:var(--accent-wash)}.group-row{border-bottom:1px solid var(--line);padding:2px 0}.group-row:last-of-type{border-bottom:none}.group-head{display:flex;align-items:center;justify-content:space-between}.group-name{display:inline-flex;align-items:center;gap:5px;border:none;background:none;font-size:13px;font-weight:500;cursor:pointer;padding:7px 0;color:var(--ink)}.group-body{padding:2px 0 10px 20px;display:flex;flex-direction:column;gap:5px}.group-member{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--ink-2)}.search-overlay{padding-top:14vh}.search-box{width:580px;max-width:calc(100vw - 32px);background:var(--surface);border-radius:var(--radius-l);box-shadow:var(--shadow-modal);overflow:hidden;animation:rise .14s ease}.search-input{width:100%;border:none;outline:none;padding:17px 20px;font-family:inherit;font-size:16px;background:var(--surface);color:var(--ink)}.search-input::placeholder{color:var(--ink-3)}.search-status{padding:13px 20px;font-size:13px;color:var(--ink-2);border-top:1px solid var(--line)}.search-results{border-top:1px solid var(--line);max-height:46vh;overflow-y:auto;display:flex;flex-direction:column;padding:6px}.search-hit{display:flex;flex-direction:column;gap:2px;border:none;background:none;text-align:left;padding:9px 14px;border-radius:var(--radius-s);cursor:pointer}.search-hit.selected{background:var(--accent-wash)}.search-title{font-size:14px;font-weight:550;color:var(--ink)}.search-snippet{font-size:12.5px;color:var(--ink-2);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.search-snippet mark{background:#1f66d624;color:var(--accent-ink);border-radius:2px}.home{max-width:720px;margin:0 auto;padding:72px 40px}.home h1{font-family:var(--font-prose);font-size:30px;font-weight:650;letter-spacing:-.01em;margin:0 0 6px}.home-sub{color:var(--ink-2);margin:0 0 28px}.home-hint{color:var(--ink-2);font-size:13.5px;line-height:1.7;margin-top:28px}.home-hint code{font-family:var(--font-mono);font-size:.85em;background:var(--sunken);border:1px solid var(--line);padding:.15em .4em;border-radius:4px}.home-toggle{border:none;background:none;color:var(--ink-2);font-size:13px;cursor:pointer;padding:4px 0;margin-top:10px}.home-toggle:hover{color:var(--ink)}.todo-card{border:1px solid var(--line);border-radius:var(--radius-m);background:var(--surface);padding:14px 18px;margin-bottom:12px;box-shadow:0 1px 2px #0f141c0a}.todo-doc{font-weight:600;font-size:14px;color:var(--ink);text-decoration:none}.todo-doc:hover{color:var(--accent-ink)}.todo-list{list-style:none;margin:8px 0 0;padding:0}.todo-list li{display:flex;gap:9px;padding:4px 0;font-size:14px}.todo-list li.done{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--line-strong)}.todo-box{color:var(--ink-3)}.error-panel{max-width:480px;margin:16vh auto;text-align:center}.error-panel h2{font-family:var(--font-prose);font-weight:650}.error-panel.inline{margin:12px 0;text-align:left}.error-detail{color:var(--ink-2);font-size:13px;word-break:break-word}.archived-banner{display:flex;align-items:center;justify-content:center;gap:14px;background:#fdf6e3;border-bottom:1px solid #efe3bb;color:#7a5c12;font-size:13px;padding:9px 16px}.auth-screen{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--sunken)}.auth-card{display:flex;flex-direction:column;gap:10px;width:340px;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);box-shadow:var(--shadow-pop)}.wordmark{font-family:var(--font-prose);font-size:26px;font-weight:700;letter-spacing:-.02em;color:var(--accent-ink)}.auth-tagline{margin:-4px 0 14px;font-size:13px;color:var(--ink-2)}.auth-card h1{margin:0 0 6px;font-size:17px;font-weight:650}.auth-card input{font-family:inherit;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-s);font-size:14px}.auth-card .btn.primary{padding:10px;font-size:14px;margin-top:4px}.auth-toggle{border:none;background:transparent;color:var(--ink-2);font-size:13px;cursor:pointer;margin-top:2px}.auth-toggle:hover{color:var(--ink)}.auth-error{color:var(--danger);font-size:13px}.setup-label{margin-top:6px;font-size:12px;font-weight:600;color:var(--ink-2)}.auth-card select{font-family:inherit;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-s);font-size:14px;background:var(--surface);color:var(--ink)}.setup-hint{margin:-4px 0 2px;font-size:12px;color:var(--ink-2)}.consent-scopes{margin:0;padding-left:18px;font-size:13px;color:var(--ink-2)}.slash-menu{display:flex;flex-direction:column;min-width:210px;padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);box-shadow:var(--shadow-pop);font-family:var(--font-ui)}.slash-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:6px 10px;border:none;background:transparent;border-radius:var(--radius-s);font-size:13.5px;color:var(--ink);cursor:pointer;text-align:left}.slash-item.selected{background:var(--accent-wash);color:var(--accent-ink)}.slash-item code{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-3)}.error-actions{display:flex;gap:8px;justify-content:center;margin:14px 0}.error-panel.inline .error-actions{justify-content:flex-start}.error-tech{margin-top:18px;font-size:12px;color:var(--ink-3)}.error-tech summary{cursor:pointer}.error-tech pre{text-align:left;font-family:var(--font-mono);font-size:11.5px;color:var(--ink-2);background:var(--sunken);border:1px solid var(--line);border-radius:var(--radius-s);padding:10px 12px;white-space:pre-wrap;word-break:break-word}.doc-shell{display:flex;align-items:flex-start;justify-content:center;min-height:100%}.doc-shell .editor{flex:1 1 780px;min-width:0}.comment-span{background:#e2a82b2e;border-bottom:1.5px solid rgba(196,138,15,.5);cursor:pointer}.comment-span.active{background:#e2a82b57}.bubble-btn{display:inline-flex;align-items:center;gap:5px;border:none;border-radius:var(--radius-s);background:var(--ink);color:#f3f5f7;font-size:12.5px;font-weight:500;padding:6px 11px;cursor:pointer;box-shadow:var(--shadow-pop)}.bubble-btn:hover{background:#2a2f37}.bubble-group{display:flex;gap:3px}.bubble-btn.danger:hover{background:var(--danger)}.comments-panel{flex:0 0 320px;position:sticky;top:0;height:100vh;overflow-y:auto;padding:24px 20px 60px;border-left:1px solid var(--line);background:var(--paper)}.comments-head{display:flex;align-items:center;justify-content:space-between;margin:2px 0 14px}.comments-head h2{margin:0;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.comments-empty{font-size:13px;color:var(--ink-2);line-height:1.6}.comment-thread{border:1px solid var(--line);border-radius:var(--radius-m);background:var(--surface);padding:10px 12px;margin-bottom:10px;cursor:pointer}.comment-thread.active{border-color:#c48a0f99;box-shadow:0 0 0 2px #e2a82b2e}.comment-thread.resolved{opacity:.7}.comment-thread.pending{cursor:default;border-color:var(--accent)}.comment-quote{margin:0 0 8px;padding:2px 8px;border-left:2px solid rgba(196,138,15,.55);font-size:12px;color:var(--ink-2);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.comment-meta{display:flex;align-items:center;gap:7px}.avatar.small{width:18px;height:18px;font-size:10px}.comment-author{font-size:12.5px;font-weight:600}.comment-when{font-size:11px;color:var(--ink-3)}.comment-actions{margin-left:auto;display:inline-flex;gap:2px;visibility:hidden}.comment-thread:hover .comment-actions{visibility:visible}.comment-text{margin:5px 0 0 25px;font-size:13px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.comment-reply{margin:10px 0 0 12px;padding-left:10px;border-left:1px solid var(--line)}.comment-reply-btn{border:none;background:none;color:var(--ink-3);font-size:12px;cursor:pointer;padding:6px 0 0 25px}.comment-reply-btn:hover{color:var(--ink)}.comment-composer{margin-top:8px;cursor:default}.comment-composer textarea{width:100%;resize:vertical;font-family:inherit;font-size:13px;color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:7px 9px;background:var(--surface)}.comment-composer .dialog-actions{margin-top:8px}.comment-composer .btn{padding:4px 10px;font-size:12px}@media(max-width:1180px){.comments-panel{position:fixed;right:0;top:0;bottom:0;width:320px;background:var(--surface);box-shadow:var(--shadow-modal);z-index:80;margin-left:0;padding:20px 20px 40px}}.page-ref{color:var(--accent);font-weight:500;text-decoration:none;border-bottom:1px solid rgba(31,102,214,.3);padding-bottom:1px;cursor:pointer;white-space:nowrap}.page-ref svg{vertical-align:-2px;margin-right:1px}.page-ref:hover{border-bottom-color:var(--accent);background:var(--mention-wash)}.page-ref.missing{background:var(--sunken);color:var(--ink-3);text-decoration:line-through;cursor:default}.ProseMirror-selectednode.page-ref,.page-ref.ProseMirror-selectednode{outline:2px solid var(--accent)}.backlinks{margin-top:40px;padding-top:14px;border-top:1px solid var(--line)}.backlinks h3{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin:0 0 8px}.backlink{display:flex;align-items:center;gap:7px;padding:4px 0;font-family:var(--font-ui);font-size:13.5px;color:var(--ink-2);text-decoration:none}.backlink:hover{color:var(--accent-ink)}.mention{border-radius:4px;padding:.5px 4px;font-weight:500;-webkit-box-decoration-break:clone;box-decoration-break:clone}.history-item{display:flex;align-items:center;gap:8px;width:100%;border:none;background:none;text-align:left;font-size:13px;color:var(--ink);padding:7px 8px;border-radius:var(--radius-s);cursor:pointer}.history-item:hover{background:var(--hover)}.history-item.active{background:var(--accent-wash)}.history-who{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.history-when{font-size:11.5px;color:var(--ink-3)}.legend-dot.all{background:conic-gradient(#d14747,#73b82e,#2e8ab8,#c3c,#d14747)}.history-note{margin-top:8px;font-size:12px;line-height:1.6;color:var(--ink-3)}.history-section{margin:20px 0 6px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.history-section:first-of-type{margin-top:8px}.version-badge{padding:0 6px;border-radius:999px;background:var(--accent-wash);color:var(--accent-ink);font-size:10.5px;font-weight:600}.hidden-editor{display:none}.preview-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;padding:10px 14px;border:1px solid var(--accent-ink);background:var(--accent-wash);border-radius:var(--radius-m);font-family:var(--font-ui);font-size:13px;color:var(--accent-ink)}.preview-actions{display:flex;gap:8px}.switch-row{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;cursor:pointer}.switch-btn{flex:none;margin-top:2px;width:32px;height:18px;border:none;border-radius:9px;background:var(--line-strong);position:relative;cursor:pointer;transition:background .12s ease;padding:0}.switch-btn[aria-checked=true]{background:var(--accent)}.switch-btn:disabled{opacity:.5;cursor:default}.switch-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.switch-thumb{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0f141c40;transition:transform .12s ease}.switch-btn[aria-checked=true] .switch-thumb{transform:translate(14px)}.switch-hint{display:block;margin-top:2px;color:var(--ink-2);font-size:12.5px;line-height:1.55}.data-actions{display:flex;gap:8px;margin-bottom:6px}.data-actions .btn.disabled{opacity:.6;pointer-events:none}.import-summary{margin-top:10px;padding:10px 12px;background:var(--sunken);border-radius:var(--radius-s);font-size:13px;line-height:1.5}.import-summary details{margin-top:6px}.import-summary summary{cursor:pointer;color:var(--accent-ink)}.import-summary ul{margin:6px 0 0;padding-left:18px;color:var(--ink-2);font-size:12.5px}.connect-steps{margin:0;padding-left:20px;font-size:13px;color:var(--ink-2);line-height:1.9}.connect-steps code{font-family:var(--font-mono);font-size:11.5px;background:var(--sunken);border:1px solid var(--line);border-radius:4px;padding:2px 6px;color:var(--ink)}.connect-steps button.copyable{cursor:copy;border:none;background:none;padding:0;font:inherit}.connect-steps button.copyable:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.audit-list{list-style:none;margin:0;padding:0}.audit-list li{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px;border-bottom:1px solid var(--line);color:var(--ink-2)}.audit-list li:last-child{border-bottom:none}.audit-list svg{flex:none;color:var(--ink-3)}.audit-what{flex:1;min-width:0}.audit-what strong{color:var(--ink);font-weight:550}.audit-when{flex:none;font-size:11.5px;color:var(--ink-3)}.bubble-btn.active{background:var(--accent);color:#fff}.bubble-btn code{background:none;color:inherit;font-size:11.5px;padding:0}.bubble-divider{width:1px;align-self:stretch;margin:2px 3px;background:#ffffff40}.bubble-group{align-items:center;background:var(--ink);border-radius:var(--radius-s);box-shadow:var(--shadow-pop)}.bubble-group .bubble-btn{box-shadow:none}.bubble-input{border:none;border-radius:var(--radius-s);background:#ffffff1f;color:#f3f5f7;font-size:12.5px;padding:6px 10px;width:220px;margin:3px}.bubble-input::placeholder{color:#f3f5f78c}.bubble-input:focus{outline:1.5px solid var(--live)}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--ink-3);float:left;height:0;pointer-events:none}.find-bar{position:sticky;top:8px;z-index:30;display:flex;align-items:center;gap:6px;margin:0 0 8px auto;width:fit-content;max-width:100%;padding:6px 8px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-m);box-shadow:var(--shadow-pop);color:var(--ink-2)}.find-bar input{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:5px 8px;font-size:13px;width:170px;font-family:var(--font-ui)}.find-bar input:focus{outline:1.5px solid var(--accent);border-color:var(--accent)}.find-count{font-size:12px;color:var(--ink-2);min-width:34px;text-align:center;font-variant-numeric:tabular-nums}.find-btn{display:inline-flex;align-items:center;gap:4px;border:none;background:none;border-radius:var(--radius-s);color:var(--ink-2);font-size:12.5px;padding:5px 7px;cursor:pointer}.find-btn:hover:not(:disabled){background:var(--hover);color:var(--ink)}.find-btn:disabled{opacity:.45;cursor:default}.find-match{background:#e2a82b47;border-radius:2px}.find-match-active{background:#e28a2b8c;outline:1.5px solid rgba(196,108,15,.8)}.code-block{position:relative}.code-block .code-head{position:absolute;top:6px;right:8px;display:flex;align-items:center;gap:6px;opacity:0;transition:opacity .12s ease;z-index:2}.code-block:hover .code-head,.code-block:focus-within .code-head{opacity:1}.code-lang{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:6px;background:#ffffff1f;color:#c8d2da;font-size:11.5px;font-family:var(--font-mono);padding:3px 8px;cursor:pointer}select.code-lang:hover{background:#fff3}.code-copy{border:none;border-radius:6px;background:#ffffff1f;color:#c8d2da;font-size:11.5px;padding:3px 8px;cursor:pointer}.code-copy:hover{background:#fff3}.callout-type{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;font:inherit;font-weight:600;color:inherit;cursor:pointer;padding:0}.img-node{position:relative}.img-alt-input{display:block;width:min(100%,360px);margin-top:4px;border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:4px 8px;font-size:12.5px;color:var(--ink-2);font-family:var(--font-ui)}.img-alt-input:focus{outline:1.5px solid var(--accent);border-color:var(--accent)}.toasts{position:fixed;bottom:18px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:300;pointer-events:none}.toast{background:var(--ink);color:#f3f5f7;font-size:13px;padding:8px 14px;border-radius:var(--radius-m);box-shadow:var(--shadow-pop);animation:toast-in .16s ease;max-width:min(480px,calc(100vw - 32px))}.toast-danger{background:var(--danger);color:#fff}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:12.5px;color:var(--ink-3);margin-bottom:2px}.breadcrumbs .crumb{color:var(--ink-2);text-decoration:none}.breadcrumbs a.crumb:hover{color:var(--accent-ink);text-decoration:underline}.breadcrumbs .crumb-collection{color:var(--ink-3)}.breadcrumbs .crumb-wrap{display:inline-flex;align-items:center;gap:4px}.crumb-sep{color:var(--ink-3)}@media print{.sidebar,.editor-tools,.find-bar,.toasts,.toc-rail,.comments-panel,.history-panel,.breadcrumbs,.doc-meta,.tag-bar,.img-resize-handle,.img-alt-input,.code-block .code-head{display:none!important}.app{display:block}.main{overflow:visible}.editor{max-width:none;padding:0}.title-input{border:none}.ProseMirror pre{background:#f4f4f4;color:#222}}.favorite-row{display:flex;align-items:center;gap:7px;color:var(--ink-2)}.favorite-row svg{flex:none;color:var(--warn)}.home-h2{font-size:13px;font-weight:650;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin:22px 0 8px}.recent-row{display:flex;flex-wrap:wrap;gap:8px}.recent-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink-body);font-size:13px;text-decoration:none;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-chip:hover{background:var(--hover);border-color:var(--line-strong)}.recent-chip svg{flex:none;color:var(--ink-3)}[data-theme=dark]{--tree-parent: #d5d9de;--tree-leaf: #b2b8c1;--tools-veil: rgba(25, 28, 33, .85);--paper: #14161a;--surface: #191c21;--sunken: #101216;--ink: #e8eaee;--ink-body: #c6cbd2;--ink-2: #939aa4;--ink-3: #656c76;--line: #24272d;--line-strong: #2e323a;--border-side: #22252b;--accent: #5c94ee;--accent-ink: #85b0f5;--accent-wash: rgba(92, 148, 238, .14);--mention-wash: rgba(92, 148, 238, .1);--hover: #1f2228;--hover-strong: #24282f;--tag-bg: #1e2126;--tag-hover: #272b31;--live: #43b374;--live-glow: rgba(67, 179, 116, .25);--danger: #e0736a;--danger-wash: rgba(224, 115, 106, .14);--ok: #5cad74;--warn: #c9a44a;--shadow-pop: 0 4px 16px rgba(0, 0, 0, .4), 0 1px 3px rgba(0, 0, 0, .3);--shadow-modal: 0 24px 64px rgba(0, 0, 0, .55), 0 4px 12px rgba(0, 0, 0, .35)}[data-theme=dark] body{color-scheme:dark}[data-theme=dark] .bubble-btn,[data-theme=dark] .bubble-group,[data-theme=dark] .toast{background:#262a31;color:#e8eaee}[data-theme=dark] .bubble-btn:hover{background:#30353d}[data-theme=dark] .bubble-btn.active{background:var(--accent);color:#101318}[data-theme=dark] .toast-danger{background:var(--danger);color:#16100f}[data-theme=dark] .modal-overlay{background:#0000008c}[data-theme=dark] .ProseMirror pre{background:#10141a;border:1px solid var(--line)}[data-theme=dark] ::selection{background:#2b4269}[data-theme=dark] .blame-card{background:#262a31;color:#e8eaee}[data-theme=dark] .archived-banner{background:#2b2413;border-bottom-color:#3d3419;color:#d8b968}[data-theme=dark] .comment-span{background:#e2a82b38}[data-theme=dark] .find-match{background:#e2a82b4d;color:inherit}.hamburger{display:none}@media(max-width:900px){.app{grid-template-columns:1fr}.sidebar{position:fixed;top:0;bottom:0;left:0;width:min(300px,84vw);z-index:220;transform:translate(-100%);transition:transform .17s ease,visibility 0s linear .17s;visibility:hidden}.sidebar[data-open]{transform:none;visibility:visible;transition-delay:0s;box-shadow:var(--shadow-modal)}.sidebar-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:210}.hamburger{display:inline-flex;align-items:center;justify-content:center;position:fixed;top:10px;left:10px;z-index:200;width:36px;height:36px;border:1px solid var(--line-strong);border-radius:var(--radius-m);background:var(--surface);color:var(--ink-2);cursor:pointer;box-shadow:var(--shadow-pop)}.editor-tools{padding-left:48px}.home{padding-left:56px}}@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}.nav-badge{margin-left:auto;background:var(--accent);color:#fff;font-size:11px;font-weight:650;border-radius:999px;padding:1px 7px;line-height:1.5}.notif-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.notif-row{display:flex;align-items:baseline;gap:10px;width:100%;text-align:left;border:none;background:none;padding:9px 10px;border-radius:var(--radius-s);cursor:pointer;font-size:13.5px;color:var(--ink-body)}.notif-row:hover{background:var(--hover)}.notif-row.unread{background:var(--accent-wash)}.notif-row.unread:hover{background:var(--hover-strong)}.notif-what{flex:1;min-width:0}.notif-what em{font-style:normal;font-weight:600}.notif-snippet{display:block;color:var(--ink-2);font-size:12.5px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notif-when{flex:none;color:var(--ink-3);font-size:12px}
