:root{--bg:#0f1419;--panel:#171e27;--card:#1d2630;--line:#2a3542;--text:#e8eef4;--muted:#93a4b5;--accent:#3d9cf0;--ok:#3ecf8e;--warn:#f0b429;--err:#ef6b6b;--radius:14px}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:radial-gradient(1200px 600px at 10% -10%, #1b3a55 0%, var(--bg) 55%);color:var(--text);font-family:Segoe UI,Instrument Sans,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.nav{border-right:1px solid var(--line);background:#12181f;padding:24px 16px}.brand{color:var(--text);margin-bottom:28px;font-size:18px;font-weight:700;display:block}.nav a{color:var(--muted);border-radius:10px;margin-bottom:4px;padding:10px 12px;display:block}.nav a.active,.nav a:hover{color:var(--text);background:#243140;text-decoration:none}.main{padding:28px}.top{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}h1{margin:0 0 8px;font-size:26px}.muted{color:var(--muted)}.cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:20px 0 28px;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.card b{margin-top:8px;font-size:28px;display:block}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);padding:10px 8px;font-size:14px}.table th{color:var(--muted);font-weight:600}.btn,button,input[type=submit]{background:var(--accent);color:#061018;cursor:pointer;border:0;border-radius:10px;padding:10px 14px;font-weight:650}.btn.ghost{color:var(--text);border:1px solid var(--line);background:0 0}.btn.danger{background:var(--err);color:#1a0a0a}.form{gap:12px;max-width:640px;display:grid}label{color:var(--muted);gap:6px;font-size:13px;display:grid}input,select,textarea{border:1px solid var(--line);color:var(--text);font:inherit;background:#10161c;border-radius:10px;padding:10px 12px}.flash{border-radius:10px;margin-bottom:16px;padding:12px 14px}.flash.ok{color:#b6f3d4;background:#163528}.flash.err{color:#ffd0d0;background:#3a1b1b}.badge{background:#243140;border-radius:999px;padding:3px 8px;font-size:12px;display:inline-block}.hero{max-width:880px;padding:80px 28px}.hero h1{font-size:42px;line-height:1.15}.hero p{color:var(--muted);max-width:640px;font-size:18px}.actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.auth{max-width:420px;margin:80px auto}.row{flex-wrap:wrap;gap:8px;display:flex}
