:root{color-scheme:dark;--bg:#111216;--panel:#191b21;--line:#30333d;--text:#ededf2;--muted:#a4a8b8;--accent:#b7a4fa;--error:#f4a5a5;font-family:'Segoe UI',system-ui,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.6}button,input,textarea,select{font:inherit}button,.button{min-height:44px;border:1px solid var(--line);border-radius:8px;background:#23252e;color:var(--text);padding:8px 16px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover,.button:hover{background:#30333d}button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.primary{background:var(--accent);color:#191427;border-color:var(--accent);font-weight:600}.primary:hover{background:#cabaff}.quiet{background:transparent;border-color:transparent}.danger,.error{color:var(--error)}input,select,textarea{background:#14151a;color:var(--text);border:1px solid var(--line);border-radius:8px;padding:12px;width:100%;min-width:0}textarea{resize:vertical;line-height:1.8;min-height:200px}h1,h2,p{margin:0}h1{font-size:28px;letter-spacing:-.03em;font-weight:600;line-height:1.25}h2{font-size:24px;font-weight:600;letter-spacing:-.02em;line-height:1.4}.muted{color:var(--muted)}.small,small{font-size:12px}.accent{color:var(--accent);font-weight:600}.row,.actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.actions{justify-content:flex-end;flex-wrap:wrap}.workspace{display:grid;grid-template-columns:304px minmax(0,1fr);min-height:100vh}.rail{background:#17181d;border-right:1px solid var(--line);height:100vh;position:sticky;top:0;display:flex;flex-direction:column;padding:24px 16px;gap:12px;min-width:0}.brand{display:flex;gap:12px;align-items:center;color:var(--text);text-decoration:none;font-size:20px;font-weight:600;margin:0 8px 16px}.brand small{display:block;font-weight:400;color:var(--muted)}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--accent);color:#201631;font-size:24px;font-weight:600;flex-shrink:0}.progress-block{padding:8px;margin-bottom:8px}.progress-track{height:6px;background:#30303c;border-radius:4px;margin:12px 0 8px;overflow:hidden}#progress-fill{height:100%;width:0;background:var(--accent);transition:width .2s}.tabs{display:flex;gap:4px}.tabs button{padding:8px;font-size:12px;flex:1;border:0;background:transparent;white-space:nowrap}.tabs button.active{background:#302b40;color:#d3c5ff}#question-list{overflow-y:auto;flex:1;min-height:80px}.question-link{width:100%;display:flex;gap:12px;align-items:flex-start;text-align:left;border:0;background:transparent;margin-bottom:4px;padding:12px;line-height:1.5;min-height:64px}.question-link small{display:flex;gap:8px;align-items:center;color:var(--muted);margin-bottom:4px}.question-link.active{background:#302b40;box-shadow:inset 3px 0 var(--accent)}.question-link .done{color:#a9d9be}.rail-footer{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:12px;border-top:1px solid var(--line)}#clear-btn{grid-column:1/-1;background:transparent}.main{min-width:0}.toolbar{padding:16px 32px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--bg)}#save-status{font-size:12px;color:#aad8bb}#save-status.pending{color:#e3c18b}.reading{max-width:880px;padding:40px 32px 24px;margin:auto}.intro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}.intro h1{margin-top:8px}.intro>p{text-align:right;flex-shrink:0}.question-position{margin-bottom:12px}#question-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:32px}#question-title{margin:16px 0 24px;font-size:26px}#question-body{color:#d1d3df;margin-bottom:24px;line-height:1.8}.pre-wrap{white-space:pre-wrap;overflow-wrap:anywhere}.tag{font-size:12px;color:#d8bc8e}.answer-label{display:block;font-size:16px;font-weight:600;margin:32px 0 12px}details{background:#20212a;border-radius:8px;padding:12px 16px;color:var(--muted)}summary{cursor:pointer;color:#bdb4dd}details p{margin-top:12px}.attachment-toolbar{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:16px}.previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-top:16px}.image-preview{position:relative}.image-preview img{width:100%;height:128px;object-fit:contain;background:#101115;border-radius:8px;cursor:zoom-in}.image-preview button{position:absolute;right:4px;top:4px;min-width:44px;background:#24232e}.editor-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0}.storage-note{text-align:center;margin-top:32px}.empty-card{text-align:center;border:1px dashed #4a435f;border-radius:16px;padding:48px 24px;background:var(--panel)}.empty-card p{margin:16px 0 24px}.empty-card h2{margin-top:16px}.document-symbol{font-size:40px;color:var(--accent)}kbd{padding:2px 6px;background:#282a34;border:1px solid #434652;border-radius:4px}#toast-container{position:fixed;bottom:24px;right:24px;z-index:200;max-width:min(420px,calc(100vw - 32px))}.toast{background:#302c40;border:1px solid #514567;color:#efedf7;border-radius:8px;padding:16px;margin-top:8px}.toast-error{border-color:#b57777}.banner{background:#342b22;color:#f3d6ad;border:1px solid #70583f;border-radius:8px;padding:16px;margin:16px 0}.banner pre{white-space:pre-wrap;max-height:200px;overflow:auto;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}dialog{border:1px solid #4a455c;border-radius:16px;background:var(--panel);color:var(--text);padding:24px;width:min(680px,calc(100vw - 32px));max-height:85vh}dialog::backdrop{background:#07080bc9}#modal-body{margin-top:24px}#modal-body p{margin:12px 0}.history-entry{padding:16px 0;border-bottom:1px solid var(--line)}.history-entry pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:250px;overflow:auto}.archive-link{display:block;color:var(--accent);padding:12px 0;overflow-wrap:anywhere}.auth-body{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-panel{max-width:480px;width:100%;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:40px}.auth-panel h1{margin:24px 0 16px}.auth-panel form{margin:32px 0 24px}.auth-panel label{display:block;margin-bottom:8px}.auth-panel button{width:100%;margin-top:16px}.auth-panel>.brand-mark{margin-bottom:16px}[hidden]{display:none!important}@media(min-width:1440px){.reading{padding-top:56px}}@media(max-width:1000px){.workspace{grid-template-columns:264px minmax(0,1fr)}.reading{padding:24px}.intro>p{display:none}.toolbar{padding:16px 24px}#question-card{padding:24px}.editor-footer>span{display:none}}@media(max-width:700px){.workspace{display:block}.rail{height:auto;position:relative;border-right:0;border-bottom:1px solid var(--line);padding:16px;gap:8px}.brand{margin:0 0 8px}.progress-block{padding:0;margin:0}.progress-track{margin:8px 0}.rail #search{padding:8px 12px}.rail select{padding:8px 12px}#question-list{max-height:176px;min-height:0}.question-link{padding:8px 12px;min-height:56px}.rail-footer{grid-template-columns:repeat(3,1fr);padding-top:8px}#clear-btn{grid-column:auto;font-size:12px}.rail-footer button{padding:8px;font-size:12px}.toolbar{padding:16px;align-items:flex-start;flex-wrap:wrap}.toolbar>.actions{justify-content:flex-start;gap:8px}.reading{padding:24px 16px}.intro{margin-bottom:24px}.intro h1{font-size:24px}#question-card{padding:20px 16px}#question-title{font-size:24px}.editor-footer{align-items:stretch;gap:8px}.editor-footer button{padding:8px 12px}.attachment-toolbar{gap:8px}.storage-note{margin-top:24px}.auth-panel{padding:24px}.empty-card{padding:32px 16px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
