:root{--bg:#f6f7fb;--fg:#14172b;--card:#fff;--ac:#0066ff;--bd:#dde1ee;--err:#c8102e;--ok:#0a8f5a}
@media(prefers-color-scheme:dark){:root{--bg:#10131f;--fg:#eef0fa;--card:#1a1e30;--bd:#2c3250}}
*{box-sizing:border-box}body{margin:0;font:16px system-ui,sans-serif;background:var(--bg);color:var(--fg)}
#login{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:12px;text-align:center}
#app{display:grid;grid-template-columns:220px 1fr;min-height:100vh}
nav{background:var(--card);border-right:1px solid var(--bd);padding:12px;display:flex;flex-direction:column;gap:4px}
.brand{display:flex;align-items:center;gap:8px;margin-bottom:12px}
nav button{text-align:left;border:0;background:none;color:inherit;padding:10px;border-radius:8px;cursor:pointer;font:inherit;white-space:nowrap}
nav button[aria-current=true]{background:var(--ac);color:#fff}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--ac)}
main{padding:16px;min-width:0}header{display:flex;justify-content:flex-end;gap:12px;align-items:center;margin-bottom:12px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:16px;margin-bottom:12px}
label{display:block;margin:8px 0 2px;font-weight:600}input,textarea,select{width:100%;padding:8px;border:1px solid var(--bd);border-radius:8px;background:var(--bg);color:inherit;font:inherit}
button.p{background:var(--ac);color:#fff;border:0;border-radius:8px;padding:10px 16px;cursor:pointer;margin:10px 8px 0 0;font:inherit}
.err{color:var(--err)}.ok{color:var(--ok)}.tag{font-size:12px;border:1px solid var(--bd);border-radius:99px;padding:2px 8px}
pre{white-space:pre-wrap;overflow-x:auto}
@media(max-width:700px){#app{grid-template-columns:1fr}nav{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--bd)}.brand b{display:none}}
