:root{--bg:#f6f5f2;--surface:#fff;--border:#dcd9d2;--text:#1f1e1c;--muted:#6b6760;--accent:#2f5d8a;--accent-soft:#e3ecf5;--ok:#2e7d4f;--bad:#b3412e;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0}.app{max-width:1440px;margin:0 auto;padding:24px 16px 64px}.app-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;display:flex}.app-header h1{margin:0;font-size:1.5rem}.status{color:var(--muted);font-size:.85rem}.status-up{color:var(--ok)}.status-down{color:var(--bad)}.editor{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.toolbar{border-bottom:1px solid var(--border);background:var(--surface);z-index:1;flex-wrap:wrap;align-items:center;gap:4px;padding:8px;display:flex;position:sticky;top:0}.toolbar button{font:inherit;min-width:36px;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:6px 10px;font-size:.9rem}.toolbar button:hover:not(:disabled){background:var(--bg)}.toolbar button.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.toolbar button:disabled{opacity:.5;cursor:default}.toolbar-divider{background:var(--border);width:1px;height:20px;margin:0 4px}.toolbar-spacer{flex:1}.editor-error{color:var(--bad);border-bottom:1px solid var(--border);background:#fbeeeb;padding:8px 16px;font-size:.85rem}.editor-content .tiptap{outline:none;min-height:60vh;padding:24px 32px;line-height:1.6}.editor-content .tiptap>*+*{margin-top:.75em}.editor-content .tiptap h1,.editor-content .tiptap h2,.editor-content .tiptap h3{line-height:1.25}.button-primary{font:inherit;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:6px;padding:8px 14px}.button-primary:disabled{opacity:.6;cursor:default}.link-button{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline}.link-button.danger{color:var(--bad)}.header-meta{flex-wrap:wrap;align-items:baseline;gap:16px;display:flex}.user-email{color:var(--muted);font-size:.85rem}.auth{place-items:center;min-height:100vh;padding:16px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:14px;width:100%;max-width:360px;padding:28px 24px;display:flex}.auth-card h1{margin:0;font-size:1.4rem}.auth-subtitle{color:var(--muted);margin:-6px 0 4px}.auth-card label{color:var(--muted);flex-direction:column;gap:4px;font-size:.85rem;display:flex}.auth-card input{font:inherit;border:1px solid var(--border);color:var(--text);border-radius:6px;padding:8px 10px;font-size:1rem}.auth-card input:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.auth-error,.auth-notice{margin:0;font-size:.85rem}.auth-error{color:var(--bad)}.auth-notice{color:var(--ok)}.auth-switch{color:var(--muted);text-align:center;margin:0;font-size:.85rem}.workspace{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width<=720px){.workspace{grid-template-columns:1fr}}.workspace-message{color:var(--muted);padding:24px 16px}.doc-list{flex-direction:column;gap:8px;display:flex}.doc-list ul{flex-direction:column;gap:2px;max-height:70vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.doc-list li button{width:100%;font:inherit;text-align:left;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.doc-list li button:hover{background:var(--surface)}.doc-list li button.is-active{background:var(--surface);border-color:var(--border)}.doc-title{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.doc-date{color:var(--muted);font-size:.75rem}.doc-main{flex-direction:column;gap:8px;min-width:0;display:flex}.doc-header{align-items:center;gap:12px;display:flex}.doc-title-input{min-width:0;font:inherit;color:var(--text);background:0 0;border:1px solid #0000;border-radius:6px;flex:1;padding:6px 8px;font-size:1.15rem;font-weight:600}.doc-title-input:hover,.doc-title-input:focus{border-color:var(--border);background:var(--surface);outline:none}.save-state{color:var(--muted);white-space:nowrap;font-size:.8rem}.save-error{color:var(--bad)}.editor-layout.with-ai{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:16px;display:grid}@media (width<=1000px){.editor-layout.with-ai{grid-template-columns:1fr}}.ai-sidebar{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:12px;max-height:calc(100vh - 32px);padding:16px;display:flex;position:sticky;top:16px;overflow-y:auto}.ai-header{justify-content:space-between;align-items:center;display:flex}.ai-header h2{margin:0;font-size:1rem}.icon-button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 8px;font-size:1.25rem;line-height:1}.icon-button:hover{background:var(--bg);color:var(--text)}.ai-scope{color:var(--muted);margin:0;font-size:.85rem}.ai-form{flex-direction:column;gap:8px;display:flex}.ai-input-row{align-items:flex-start;gap:6px;display:flex}.ai-input-row textarea{min-width:0;font:inherit;border:1px solid var(--border);color:var(--text);resize:vertical;border-radius:6px;flex:1;padding:8px 10px;font-size:.9rem}.ai-input-row textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.mic-button{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:50%;flex:none;width:40px;height:40px;font-size:1.1rem}.mic-button:hover:not(:disabled){border-color:var(--accent)}.mic-button.is-listening{color:#fff;background:var(--bad);border-color:var(--bad);animation:1.2s ease-in-out infinite mic-pulse}.mic-button:disabled{opacity:.5;cursor:default}@keyframes mic-pulse{50%{box-shadow:0 0 0 6px #b3412e33}}@media (prefers-reduced-motion:reduce){.mic-button.is-listening{animation:none}}.ai-error{color:var(--bad);margin:0;font-size:.85rem}.ai-result{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:12px;display:flex}.ai-result[hidden]{display:none}.ai-result h3{color:var(--muted);margin:0;font-size:.85rem}.ai-preview .tiptap{background:var(--bg);border-radius:6px;outline:none;max-height:45vh;padding:10px 12px;font-size:.9rem;line-height:1.5;overflow-y:auto}.ai-preview .tiptap>:first-child{margin-top:0}.ai-preview .tiptap>:last-child{margin-bottom:0}.ai-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.button-secondary{font:inherit;border:1px solid var(--accent);background:var(--surface);color:var(--accent);cursor:pointer;border-radius:6px;padding:8px 14px}
