:root{color-scheme:dark;--bg:#17191b;--panel:#212427;--line:#383c3f;--muted:#a9adaf;--accent:#d8793c;--text:#f3f0ea}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 'Segoe UI',sans-serif}aside{position:fixed;width:250px;height:100vh;border-right:1px solid var(--line);padding:32px 22px;background:#1c1e20}.brand{display:flex;gap:12px;align-items:center;font-weight:700;letter-spacing:1px;font-size:13px}.mark{background:var(--accent);color:#17191b;padding:9px;font-size:22px}.brand small{display:block;font-size:9px;color:var(--muted);letter-spacing:1.4px;margin-top:4px}nav{display:grid;gap:8px;margin-top:48px}button{font:inherit;cursor:pointer;color:inherit;background:#2c3033;border:1px solid var(--line);border-radius:6px;padding:10px 15px}button:hover{border-color:var(--accent);background:#38312b}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}nav button{text-align:left;background:transparent;border-color:transparent}nav button.active{background:#3b2c23;color:#ffae76;border-color:#6a432b}.local{position:absolute;bottom:28px;font-size:12px;color:#d7dbd4}.local i{display:inline-block;width:7px;height:7px;background:#9cba8a;border-radius:50%;margin-right:6px}.local small{display:block;color:var(--muted);margin:8px 0 0 14px}main{margin-left:250px;padding:34px 40px;max-width:1800px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--accent);font-weight:700;margin:0}h1{font-size:32px;font-weight:600;margin:5px 0}h2{font-size:19px;font-weight:600;margin:0 0 15px}h3{font-size:15px;margin:0 0 10px}.pill,.badge{display:inline-block;font-size:10px;letter-spacing:.7px;border:1px solid #495346;border-radius:20px;padding:6px 10px;color:#b9cda9}.badge{color:#efae7b;border-color:#715039;font-size:10px;white-space:nowrap}.muted,small{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0 28px}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:22px}.card strong{display:block;font-size:34px;font-weight:600;margin:10px 0 3px}.card small{font-size:11px}.split{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}.panel{margin-bottom:20px}.intro{color:var(--muted);max-width:850px}.toolbar,.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0}.toolbar input{flex:1;min-width:200px}.primary{background:var(--accent);color:#1b1713;border-color:var(--accent);font-weight:600}.danger{color:#ffb3a3}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px}table{border-collapse:collapse;width:100%;font-size:13px;background:var(--panel)}th{text-align:left;color:var(--muted);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.5px;background:#272a2d}th,td{padding:15px;border-bottom:1px solid var(--line);vertical-align:top}td small{display:block}td button{padding:5px 10px}.empty{padding:30px;color:var(--muted)}.row{padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:12px;color:#d6d7d4}input,textarea,select{display:block;width:100%;border:1px solid #4b4f52;border-radius:5px;background:#191b1d;color:var(--text);padding:10px;font:14px 'Segoe UI',sans-serif;margin-top:6px}textarea{min-height:90px;resize:vertical}.wide{grid-column:1/-1}dialog{background:var(--panel);color:var(--text);border:1px solid #666;border-radius:12px;width:min(760px,95vw);max-height:90vh;padding:26px}dialog::backdrop{background:#000b}.dialog-head{display:flex;justify-content:space-between}.dialog-head button{padding:0 10px;height:32px}.actions{justify-content:flex-end}.document{background:#f6f3ed;color:#262626;padding:36px;border-radius:6px;white-space:pre-wrap}.document h2{color:#9f4e22}.question{padding:15px 0;border-bottom:1px solid #ccc}.answer{height:65px}.note{border-left:3px solid var(--accent);padding:12px 18px;background:#2b2723;margin:16px 0;color:#dfc9b9}footer{font-size:11px;color:var(--muted);padding:26px 0}footer span{float:right}#notice:not(:empty){padding:12px;background:#353d2e;margin-bottom:16px;border-radius:5px}#printArea{display:none}@media(max-width:1000px){aside{width:200px;padding:24px 12px}main{margin-left:200px;padding:25px}.cards{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}}@media(max-width:650px){aside{position:static;width:auto;height:auto}nav{margin-top:20px;grid-template-columns:1fr 1fr}.local{position:static;margin-top:20px}main{margin:0;padding:20px}.fields{grid-template-columns:1fr}.wide{grid-column:auto}.pill{display:none}.document{padding:20px}}@media print{body{background:white;color:black}aside,main,dialog{display:none!important}#printArea{display:block;font:12pt/1.6 Georgia,serif;white-space:pre-wrap}#printArea h1{font-size:24pt}#printArea h2{font-size:17pt}.question{break-inside:avoid}.answer{height:75px}@page{margin:18mm}}

[hidden]{display:none!important}input[type=checkbox]{display:inline-block;width:auto;margin-right:8px}

aside{overflow-y:auto;display:flex;flex-direction:column}nav{margin-top:28px;gap:4px}.local{position:static;margin-top:auto;padding-top:28px}.auth-panel{max-width:580px}.auth-panel label{margin-bottom:18px}#editorError,#loginError,#importError{color:#ffb9a1;white-space:pre-wrap}button:disabled{opacity:.55;cursor:wait}#syncState{max-width:230px;text-align:center}td,th{overflow-wrap:anywhere}main{min-width:0}.row>div{min-width:0}p,strong,small{overflow-wrap:anywhere}
@media(max-width:650px){aside{display:block;padding:20px}main{padding:18px}nav{gap:6px}button{min-height:44px}input,select,textarea{font-size:16px;min-height:44px}.cards{gap:10px}.card{padding:15px}.card strong{font-size:27px}.toolbar{align-items:stretch}.toolbar input,.toolbar select,.toolbar button{flex-basis:100%;min-width:0}header{align-items:flex-start}.local{padding-top:12px;margin-top:8px}dialog{padding:18px;max-height:92dvh}.actions{position:sticky;bottom:-18px;background:var(--panel);padding:12px 0;margin-bottom:0}.actions button{flex:1}footer span{float:none;display:block}.table-wrap{max-width:100%}table{min-width:620px}.document{overflow-wrap:anywhere}}
@media(max-width:360px){.cards{grid-template-columns:1fr}nav{grid-template-columns:1fr}}
@media print{.local{display:none}}
@media(max-width:650px){#syncState{display:inline-block;font-size:9px;max-width:130px}header{gap:12px}h1{font-size:28px}}
table{min-width:800px}td:last-child,td button{white-space:nowrap}
