:root{
  --bg:#0B0E0C; --surf:#12160F; --surf2:#191E15;
  --ink:#EDF1E7; --ink2:#98A08E; --ink3:#5C6354;
  --line:rgba(237,241,231,.12); --lime:#BFFF3A; --on-lime:#0B0E0C;
  --err:#FF5E3A; --ok:#BFFF3A;
  --ui:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{background:var(--bg);color:var(--ink);font-family:var(--ui);line-height:1.55;-webkit-font-smoothing:antialiased;}
a{color:var(--lime);}
.brand{font-weight:800;font-size:1.35rem;letter-spacing:-.02em;}
.brand span{color:var(--lime);}
.brand small{font-weight:600;font-size:.7rem;letter-spacing:.18em;color:var(--ink3);text-transform:uppercase;vertical-align:middle;margin-left:6px;}

/* ---- auth (login / setup) ---- */
body.auth{display:grid;place-items:center;min-height:100vh;padding:20px;}
.card{width:100%;max-width:380px;background:var(--surf);border:1px solid var(--line);border-radius:18px;padding:30px 26px;}
.card h1{font-size:1.5rem;margin:18px 0 18px;letter-spacing:-.01em;}
.card label{display:block;font-size:.82rem;color:var(--ink2);margin-bottom:14px;font-weight:600;}
.card input{display:block;width:100%;margin-top:7px;background:var(--bg);border:1px solid var(--line);border-radius:11px;padding:12px 13px;color:var(--ink);font-size:1rem;font-family:var(--ui);}
.card input:focus{outline:none;border-color:var(--lime);}
.card button{width:100%;margin-top:6px;background:var(--lime);color:var(--on-lime);border:none;border-radius:11px;padding:13px;font-weight:700;font-size:.98rem;cursor:pointer;transition:transform .15s,opacity .2s;}
.card button:hover{transform:translateY(-1px);}
.card button:disabled{opacity:.5;cursor:not-allowed;transform:none;}
.foot{margin-top:18px;color:var(--ink3);font-size:.76rem;}
.btnlink{display:inline-block;margin-top:8px;font-weight:700;}

.note{border-radius:10px;padding:11px 13px;font-size:.86rem;margin-bottom:16px;border:1px solid var(--line);color:var(--ink2);}
.note.err{border-color:rgba(255,94,58,.4);color:#ffb3a1;background:rgba(255,94,58,.08);}
.note.ok{border-color:rgba(191,255,58,.35);color:#dfffab;background:rgba(191,255,58,.06);}
code{background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:2px 6px;font-size:.85em;}

/* ---- shell (dashboard placeholder) ---- */
.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 22px;border-bottom:1px solid var(--line);background:var(--surf);}
.who{display:flex;align-items:center;gap:14px;color:var(--ink2);font-size:.86rem;flex-wrap:wrap;}
.who b{color:var(--ink);}
.inline{display:inline;}
.ghost{background:var(--surf2);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:8px 14px;font-weight:600;font-size:.84rem;cursor:pointer;}
.ghost:hover{border-color:var(--ink2);}
.shell{padding:34px 22px;max-width:720px;margin:0 auto;}
.panel{background:var(--surf);border:1px solid var(--line);border-radius:18px;padding:30px 28px;}
.panel h1{font-size:1.6rem;margin:14px 0 12px;letter-spacing:-.01em;}
.panel p{color:var(--ink2);}
.tag{display:inline-block;font-weight:700;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;border-radius:30px;padding:5px 11px;border:1px solid var(--line);color:var(--ink2);}
.tag.ok{color:var(--on-lime);background:var(--lime);border-color:var(--lime);}
.facts{list-style:none;margin:20px 0;display:flex;flex-direction:column;gap:8px;}
.facts li{color:var(--ink2);font-size:.9rem;padding-left:20px;position:relative;}
.facts li::before{content:"✓";position:absolute;left:0;color:var(--lime);font-weight:700;}
.facts b{color:var(--ink);}
