/* вход, первый запуск, доступ — в том же стиле, что и приложение */
:root{--bg:#eceef2;--pan:#fff;--pan2:#f5f6f9;--fg:#161a20;--dim:#697384;--line:#d6dae2;--acc:#2f5fbe;--bad:#c62828;--ok:#17803d;
  --f-ui:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--f-num:'JetBrains Mono',ui-monospace,Menlo,monospace}
:root[data-mode="dark"]{--bg:#0d1117;--pan:#151b23;--pan2:#1b2230;--fg:#cdd6e3;--dim:#7d8797;--line:#252d3a;--acc:#6f9fe8;--bad:#e5645c;--ok:#63b485}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--fg);font:14px/1.5 var(--f-ui)}
.box{max-width:380px;margin:12vh auto 0;padding:26px 24px;background:var(--pan);border:1px solid var(--line);border-radius:12px}
.wide{max-width:640px;margin:48px auto 24px}
h1{font-size:20px;margin:0 0 4px;letter-spacing:-.01em;font-weight:700}
h1.lg{display:flex;align-items:center}
p.sub{color:var(--dim);margin:0 0 18px;font-size:13.5px}
label{display:block;font-family:var(--f-num);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--dim);margin:14px 0 5px}
input{width:100%;height:36px;font:inherit;font-size:13.5px;padding:0 11px;border-radius:7px;border:1px solid var(--line);background:var(--pan2);color:var(--fg);outline:none;transition:.14s}
input:focus{border-color:var(--fg)}
button{font:inherit;font-size:13px;font-weight:600;cursor:pointer;border-radius:7px;height:34px;padding:0 16px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);margin-top:18px;transition:.14s}
button:hover{opacity:.86}
button.ghost{background:var(--pan);color:var(--fg);border-color:var(--line);margin-top:0;height:28px;padding:0 11px;font-size:12px;font-weight:500}
button.ghost:hover{border-color:var(--dim);opacity:1}
button:disabled{opacity:.5;cursor:default}
.full{width:100%}
.err{color:var(--bad);font-size:13px;margin-top:12px;min-height:1em}
.ok{color:var(--ok);font-size:13px;margin-top:12px}
table{width:100%;border-collapse:collapse;margin:6px 0 4px}
td{padding:10px 6px;border-bottom:1px solid var(--line);vertical-align:middle}
td.r{text-align:right}
.muted{color:var(--dim);font-size:12.5px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
a button{margin-top:0}
@media (max-width:520px){.row{grid-template-columns:1fr}.box{margin-top:6vh}}
