:root{--bg:#0b0b0c;--sidebar:#111113;--surface:#161618;--hover:#1d1d20;--active:#26262a;--border:#232327;--text:#d8d8db;--strong:#f4f4f5;--muted:#8a8a90;--faint:#55555b;--accent:#8fb0ff;--green:#4ade80;--amber:#fbbf24;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);height:100%}body{color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}::selection{background:#8fb0ff47}::placeholder{color:var(--faint)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--active);border:2px solid var(--bg);border-radius:5px}::-webkit-scrollbar-track{background:0 0}.brand{color:var(--strong);letter-spacing:-.01em;font-size:15px;font-weight:600}.login-wrap{place-items:center;min-height:100vh;padding:24px;display:grid}.login{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;width:100%;max-width:340px;padding:32px;display:flex;box-shadow:0 20px 50px #00000073}.login .brand{font-size:20px}.login-sub{color:var(--muted);margin:-4px 0 12px}.login input{background:var(--bg);border:1px solid var(--border);border-radius:8px;outline:none;padding:10px 12px;transition:border-color .15s}.login input:focus{border-color:var(--faint)}.login button{background:var(--strong);color:#111;border-radius:8px;margin-top:8px;padding:10px;font-weight:600;transition:opacity .15s}.login button:hover{opacity:.9}.login button:disabled{opacity:.5;cursor:default}.error{color:#f08a8a;margin:0;font-size:13px}.app{height:100vh;display:flex}.sidebar{background:var(--sidebar);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:250px;padding:18px 12px 12px;display:flex}.sidebar .brand{padding:0 8px 18px}.new-doc{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-weight:500;transition:background .15s,border-color .15s;display:flex}.new-doc:hover{background:var(--hover);border-color:var(--faint)}.section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--faint);margin:22px 8px 6px;font-size:11px;font-weight:600}.doc-list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.doc-item{cursor:pointer;color:var(--muted);border-radius:6px;align-items:center;gap:8px;padding:7px 8px;transition:background .12s,color .12s;display:flex}.doc-item:hover{background:var(--hover);color:var(--text)}.doc-item.selected{background:var(--active);color:var(--strong)}.doc-icon{opacity:.7;flex-shrink:0}.doc-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.doc-delete{color:var(--faint);opacity:0;border-radius:4px;place-items:center;padding:3px;transition:opacity .12s,color .12s,background .12s;display:grid}.doc-item:hover .doc-delete{opacity:1}.doc-delete:hover{color:#f08a8a;background:#f08a8a1a}.doc-empty{color:var(--faint);padding:8px;font-size:13px}.sidebar-footer{border-top:1px solid var(--border);align-items:center;gap:8px;margin-top:8px;padding:10px 8px 0;display:flex}.user-email{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.icon-btn{color:var(--muted);border-radius:6px;place-items:center;padding:6px;transition:background .12s,color .12s;display:grid}.icon-btn:hover{background:var(--hover);color:var(--text)}.main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.empty{color:var(--faint);flex-direction:column;align-items:center;gap:12px;margin:auto;display:flex}.empty p{margin:0 0 6px}.editor-shell{flex-direction:column;flex:1;min-height:0;display:flex}.toolbar{background:var(--sidebar);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:2px;padding:8px 16px;display:flex}.tb-btn{width:32px;height:32px;color:var(--muted);border-radius:6px;place-items:center;transition:background .12s,color .12s;display:grid}.tb-btn:hover:not(:disabled){background:var(--hover);color:var(--strong)}.tb-btn.active{background:var(--active);color:var(--strong)}.tb-btn:disabled{opacity:.3;cursor:default}.tb-sep{background:var(--border);width:1px;height:20px;margin:0 6px}.tb-select{background:var(--surface);border:1px solid var(--border);cursor:pointer;appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 15px) 14px,calc(100% - 10px) 14px;background-repeat:no-repeat;background-size:5px 5px;border-radius:6px;outline:none;height:32px;padding:0 28px 0 10px}.tb-select:hover{border-color:var(--faint)}.tb-select option{background:var(--surface)}.tb-status{color:var(--muted);align-items:center;gap:6px;margin-left:auto;font-size:12px;display:flex}.tb-status .dot{background:var(--green);border-radius:50%;width:7px;height:7px}.tb-status.saving .dot,.tb-status.unsaved .dot{background:var(--amber)}.canvas{flex:1;padding:40px 24px 80px;overflow-y:auto}.page{background:var(--surface);border:1px solid var(--border);border-radius:4px;max-width:816px;min-height:1056px;margin:0 auto;padding:72px 88px;box-shadow:0 1px 2px #0006,0 12px 40px #00000059}.page-footer{text-align:right;max-width:816px;color:var(--faint);margin:12px auto 0;font-size:12px}@media (max-width:900px){.page{min-height:70vh;padding:40px 28px}}.title{letter-spacing:-.02em;width:100%;color:var(--strong);background:0 0;border:none;outline:none;margin:0 0 20px;padding:0;font-size:34px;font-weight:700}.content .tiptap{outline:none;min-height:600px;font-size:16px;line-height:1.75}.tiptap>*+*{margin-top:.75em}.tiptap p{margin:0}.tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:var(--faint);pointer-events:none}.tiptap h1,.tiptap h2,.tiptap h3{color:var(--strong);letter-spacing:-.01em;margin:1.6em 0 .5em;line-height:1.3}.tiptap h1{font-size:28px;font-weight:700}.tiptap h2{font-size:22px;font-weight:650}.tiptap h3{font-size:18px;font-weight:600}.tiptap strong{color:var(--strong)}.tiptap a{color:var(--accent);text-underline-offset:3px;cursor:pointer;text-decoration:underline}.tiptap mark{color:inherit;background:#fbbf244d;border-radius:3px;padding:0 2px}.tiptap ul,.tiptap ol{padding-left:1.5em}.tiptap li>p{margin:.2em 0}.tiptap li::marker{color:var(--muted)}.tiptap blockquote{border-left:3px solid var(--active);color:var(--muted);margin:1.2em 0;padding:2px 0 2px 18px}.tiptap code{background:var(--active);border-radius:4px;padding:2px 6px;font-family:ui-monospace,SF Mono,Cascadia Code,Menlo,monospace;font-size:.875em}.tiptap pre{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:16px 18px;overflow-x:auto}.tiptap pre code{color:var(--text);background:0 0;padding:0;font-size:14px}.tiptap hr{border:none;border-top:1px solid var(--border);margin:2em 0}.tiptap ul[data-type=taskList]{padding-left:.2em;list-style:none}.tiptap ul[data-type=taskList] li{align-items:flex-start;gap:10px;display:flex}.tiptap ul[data-type=taskList] li>label{-webkit-user-select:none;user-select:none;margin-top:.3em}.tiptap ul[data-type=taskList] li>div{flex:1}.tiptap ul[data-type=taskList] input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.tiptap ul[data-type=taskList] li[data-checked=true]>div{color:var(--faint);text-decoration:line-through}
