:root{
  --green:#48BB78; --green-dark:#2F855A;
  --bg:#0F1419; --card:#1A202C; --card2:#2D3748;
  --text:#E2E8F0; --muted:#A0AEC0; --border:#2D3748;
}
:root[data-theme="light"]{
  --bg:#F7FAFC; --card:#FFFFFF; --card2:#EDF2F7;
  --text:#1A202C; --muted:#4A5568; --border:#E2E8F0;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased}
body{padding:14px 14px 28px;max-width:720px;margin:0 auto}
.hidden{display:none!important}

.head{display:flex;flex-direction:column;gap:8px;margin-bottom:6px}
.logo{height:34px;display:block}
:root[data-theme="dark"] .logo-light{display:none}
:root[data-theme="light"] .logo-dark{display:none}
.summary{font-size:14px;color:var(--muted)}
.summary b{color:var(--text)}

.loading{padding:22px 4px;color:var(--muted);font-size:14px}

.block{margin-top:22px}
.sec-title{font-size:15px;margin:0 0 10px;letter-spacing:.2px}
.group{margin:0 0 18px}
.group-title{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;
  margin:0 0 8px;color:var(--muted);text-transform:none}
.badge{font-size:11px;padding:1px 7px;border-radius:99px;background:var(--card2);color:var(--muted)}
.badge.bad{background:#742A2A;color:#FEB2B2}

.tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tile{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:inherit;
  background:var(--card);border:1px solid var(--border);border-radius:14px;padding:12px;
  transition:transform .12s ease,border-color .12s ease}
.tile:active{transform:scale(.98)}
.tile .row{display:flex;align-items:center;gap:7px}
.dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto;background:#718096}
.dot.up{background:var(--green);box-shadow:0 0 8px rgba(72,187,120,.6)}
.dot.down{background:#E53E3E;box-shadow:0 0 8px rgba(229,62,62,.5)}
.dot.unknown{background:#718096}
.tile .name{font-size:14px;font-weight:600;line-height:1.25}
.tile .desc{font-size:11.5px;color:var(--muted);line-height:1.35}

.foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px;align-items:center}
.btn{font:inherit;font-size:13.5px;border-radius:11px;padding:10px 14px;border:1px solid var(--border);
  background:var(--card);color:var(--text);cursor:pointer}
.btn-ghost:active{background:var(--card2)}
.muted{font-size:11.5px;color:var(--muted);width:100%;margin-top:6px;line-height:1.5}

.denied{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px;margin-top:16px}
.denied h3{margin:0 0 8px;font-size:15px}
.denied p{margin:0;font-size:13px;color:var(--muted);line-height:1.5}

@media (min-width:560px){ .tiles{grid-template-columns:1fr 1fr 1fr} }
