:root{--bg:#0f1115;--card:#171a21;--line:#262a33;--fg:#e6e8ee;--muted:#8a90a0;--accent:#4cc3ff;--ok:#3ddc84;--warn:#ffb020;--err:#ff5c5c}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
header{display:flex;align-items:center;gap:24px;padding:14px 24px;border-bottom:1px solid var(--line)}
header .brand{font-weight:700;letter-spacing:.5px;color:var(--fg)}header nav{display:flex;gap:16px;flex:1}header form{margin:0}
main{max-width:860px;margin:0 auto;padding:28px 24px}
h1{font-size:22px;margin:0 0 18px}h2{font-size:17px;margin:24px 0 10px}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px;margin-bottom:16px}
.auth{max-width:380px;margin:60px auto}
label{display:block;font-size:13px;color:var(--muted);margin:12px 0 4px}
input[type=text],input[type=email],input[type=password],input[type=number],select{width:100%;padding:9px 11px;border-radius:7px;border:1px solid var(--line);background:#0c0e12;color:var(--fg);font-size:15px}
input.code{font-size:28px;letter-spacing:8px;text-align:center;font-variant-numeric:tabular-nums}
button,.btn{display:inline-block;margin-top:14px;padding:9px 16px;border-radius:7px;border:1px solid var(--accent);background:var(--accent);color:#06222f;font-weight:600;cursor:pointer;font-size:14px}
button.secondary,.btn.secondary{background:transparent;color:var(--fg);border-color:var(--line)}
button.danger{background:transparent;color:var(--err);border-color:var(--err)}
.muted{color:var(--muted);font-size:13px}.status{padding:10px 14px;border-radius:7px;background:#12301f;color:var(--ok);margin-bottom:16px}
.error{color:var(--err);font-size:13px;margin-top:4px}
.devices{display:grid;gap:12px}.device{display:flex;align-items:center;gap:16px}.device .dot{width:10px;height:10px;border-radius:50%;background:var(--err)}.device .dot.on{background:var(--ok)}
.device .name{font-weight:600}.device .meta{color:var(--muted);font-size:13px}.device .spacer{flex:1}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
kbd{background:#0c0e12;border:1px solid var(--line);border-radius:4px;padding:1px 6px;font-size:13px}
