:root{
  --bg:#0b1020; --panel:#121a2b; --panel-2:#0f1726; --text:#e8eefc; --muted:#9fb0d0;
  --line:#23304a; --ok:#22c55e; --bad:#ef4444; --shadow:0 20px 60px rgba(0,0,0,.35); --radius:18px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto}
a{color:#b7cbff;text-decoration:none} a:hover{text-decoration:underline}
.container{max-width:1100px;margin:42px auto;padding:0 16px;position:relative;z-index:2}
.bg-blur{position:fixed;width:380px;height:380px;border-radius:999px;filter:blur(70px);opacity:.18;z-index:1}
.bg-blur.one{background:#4f46e5;top:-100px;left:-80px}
.bg-blur.two{background:#06b6d4;bottom:-120px;right:-70px}
.card{background:linear-gradient(180deg,var(--panel),var(--panel-2));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.topbar{padding:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.eyebrow{letter-spacing:.18em;font-size:.72rem;color:var(--muted);margin:0 0 8px}
h1{margin:0;font-size:1.8rem}.muted{color:var(--muted)}
.overall{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;font-weight:700;font-size:.82rem;border:1px solid}
.overall .dot,.badge .dot{width:8px;height:8px;border-radius:999px;display:inline-block}
.overall.operational{color:#86efac;border-color:rgba(34,197,94,.45);background:rgba(34,197,94,.12)}
.overall.partial_outage,.overall.major_outage{color:#fca5a5;border-color:rgba(239,68,68,.45);background:rgba(239,68,68,.12)}
.overall.unknown{color:#cbd5e1;border-color:#334155;background:rgba(148,163,184,.12)}
.overall.operational .dot{background:var(--ok)}
.overall.partial_outage .dot,.overall.major_outage .dot{background:var(--bad)}
.overall.unknown .dot{background:#94a3b8}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.metric{padding:18px}.metric p{margin:0;color:var(--muted);font-size:.9rem}.metric h2{margin:8px 0 0;font-size:2rem}
.metric.ok h2{color:#86efac}.metric.bad h2{color:#fca5a5}
section.card{margin-top:14px;padding:14px}
.section-head{display:flex;justify-content:space-between;align-items:center;padding:8px 8px 14px}
.section-head h3{margin:0}.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:14px 10px;border-top:1px solid var(--line);text-align:left;white-space:nowrap}
th{color:var(--muted);font-size:.82rem;font-weight:600}
.badge{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid;font-size:.78rem;font-weight:700}
.badge.online{color:#86efac;border-color:rgba(34,197,94,.45);background:rgba(34,197,94,.12)}
.badge.online .dot{background:var(--ok)}
.badge.offline{color:#fca5a5;border-color:rgba(239,68,68,.45);background:rgba(239,68,68,.12)}
.badge.offline .dot{background:var(--bad)}
.badge.unknown{color:#cbd5e1;border-color:#334155;background:rgba(148,163,184,.12)}
.badge.unknown .dot{background:#94a3b8}
@media (max-width:860px){.metrics{grid-template-columns:1fr}.topbar{flex-direction:column}}
