:root{--bg:#0f172a;--card:#111c33;--muted:#94a3b8;--text:#e5e7eb;--line:#26344f;--accent:#38bdf8;--good:#22c55e;--bad:#ef4444}*{box-sizing:border-box}body{margin:0;background:linear-gradient(120deg,#08111f,#0f172a);color:var(--text);font-family:Inter,Arial,sans-serif}.wrap{max-width:1240px;margin:0 auto;padding:24px}.login{min-height:100vh;display:grid;place-items:center}.box{width:380px;background:rgba(17,28,51,.92);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 20px 60px #0008}.brand{font-size:28px;font-weight:800}.hint{color:var(--muted);font-size:13px;line-height:1.45}input,select,button{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#0b1222;color:var(--text);outline:none}button{background:linear-gradient(90deg,#0284c7,#06b6d4);border:0;font-weight:700;cursor:pointer}button.secondary{background:#1e293b}.grid{display:grid;grid-template-columns:240px 1fr;gap:22px}.side{background:rgba(17,28,51,.9);border:1px solid var(--line);border-radius:22px;padding:18px;height:calc(100vh - 48px);position:sticky;top:24px}.nav button{margin:8px 0;text-align:left}.top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{background:rgba(17,28,51,.9);border:1px solid var(--line);border-radius:20px;padding:18px}.num{font-size:28px;font-weight:800;margin-top:10px}.muted{color:var(--muted)}.filters{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:14px 0}.table{width:100%;border-collapse:collapse;background:rgba(17,28,51,.9);border-radius:18px;overflow:hidden}th,td{padding:12px;border-bottom:1px solid var(--line);font-size:13px;text-align:left}th{color:#bae6fd;background:#0b1222}.status{padding:5px 9px;border-radius:999px;background:#334155}.active{background:#064e3b;color:#bbf7d0}.draft,.not_registered{background:#451a03;color:#fed7aa}.err{color:#fecaca;margin-top:10px}.row{display:flex;gap:10px}.row>*{flex:1}@media(max-width:900px){.grid{grid-template-columns:1fr}.side{height:auto;position:static}.cards{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr 1fr}}@media(max-width:560px){.cards,.filters{grid-template-columns:1fr}.box{width:94vw}}
