:root{ --bg:#0f172a; --card:#111827; --muted:#94a3b8; --accent:#06b6d4; --ok:#16a34a; --bad:#dc2626; }
*{box-sizing:border-box} body{margin:0;font-family:Inter,system-ui,Segoe UI,Arial;background:#0b1220;color:#e5e7eb}
header,footer{padding:12px 16px;background:#0f172a;border-bottom:1px solid #1f2937}
.container{max-width:1100px;margin:0 auto;padding:16px}
.card{background:#0f172a;border:1px solid #1f2937;border-radius:12px;padding:16px;margin-bottom:16px}
input,select,button,textarea{background:#0b1220;border:1px solid #1f2937;color:#e5e7eb;border-radius:8px;padding:10px}
button.primary{background:var(--accent);border-color:transparent;color:#001018;cursor:pointer}
button.success{background:var(--ok);border-color:transparent;color:white}
button.danger{background:var(--bad);border-color:transparent;color:white}
table{width:100%;border-collapse:collapse}
th,td{padding:8px;border-bottom:1px solid #1f2937}
a{color:#7dd3fc;text-decoration:none}
.badge{padding:2px 8px;border-radius:999px;font-size:12px;border:1px solid #1f2937}
.badge.ok{background:#052e1a;color:#86efac}
.badge.warn{background:#2a0f10;color:#fca5a5}
.grid{display:grid;gap:16px}
.grid-2{grid-template-columns:1fr 1fr}
.grid-3{grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.grid-2,.grid-3{grid-template-columns:1fr}}