:root{--bg:#f4f6f1;--card:#fff;--ink:#1d2a1f;--muted:#5b6b5e;--line:#d9e0d6;
--accent:#1f6b3a;--accent-ink:#fff;--warn-bg:#fff4d6;--warn-line:#e0b84a;
--bad:#a3271f;--good:#1f6b3a;--code:#eef2eb}
@media (prefers-color-scheme:dark){:root{--bg:#121812;--card:#1b231c;--ink:#e3eae1;
--muted:#9fb0a2;--line:#2e3a30;--accent:#4fb36e;--accent-ink:#0d150f;--warn-bg:#3a3017;
--warn-line:#8a6d1f;--bad:#f0857c;--good:#6fd08e;--code:#253027}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,
"Segoe UI",Roboto,sans-serif}
main{max-width:760px;margin:0 auto;padding:24px 16px 48px}
header{margin-bottom:20px}
h1{font-size:1.7rem;margin:0 0 4px;line-height:1.2}
h2{font-size:1.2rem;margin:0 0 12px}
.sub{color:var(--muted);margin:0}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px;margin:16px 0}
.status{display:inline-block;margin-top:10px;padding:3px 10px;border-radius:99px;font-size:.9rem;
border:1px solid var(--line)}
.status.up{color:var(--good)}.status.down{color:var(--bad)}
.warn{background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:8px;padding:12px 14px;margin:0 0 16px}
.msg{border-radius:8px;padding:12px 14px;margin:0 0 16px;border:1px solid}
.msg.bad{color:var(--bad);border-color:var(--bad)}.msg.good{color:var(--good);border-color:var(--good)}
label{display:block;font-weight:600;margin:12px 0 4px}
.hint{font-weight:400;color:var(--muted);font-size:.9rem}
input[type=text],input[type=password]{display:block;width:100%;max-width:360px;padding:9px 10px;font:inherit;
color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px}
button,.button{display:inline-block;margin-top:16px;padding:10px 18px;font:inherit;font-weight:600;
color:var(--accent-ink);background:var(--accent);border:0;border-radius:6px;text-decoration:none;cursor:pointer}
.trap{position:absolute;left:-10000px}
code{background:var(--code);padding:1px 5px;border-radius:4px;font-size:.92em;overflow-wrap:anywhere}
table{border-collapse:collapse;width:100%}td{padding:6px 8px;border-top:1px solid var(--line);vertical-align:top}
td:first-child{color:var(--muted);white-space:nowrap;width:40%}
ol,ul{padding-left:22px}li{margin:6px 0}
.players{columns:3 140px;list-style:none;padding:0;margin:0}.players li{margin:2px 0}
footer{color:var(--muted);font-size:.85rem;margin-top:28px}
a{color:var(--accent)}.button{color:var(--accent-ink)}
