:root {
  --bg: #f4f4f2;
  --card: #ffffff;
  --text: #1c1c1c;
  --muted: #5f5f5f;
  --up: #b3261e;
  --zero: #1e6b34;
  --start: #1e6b34;
  --stop: #b3261e;
  font-family: system-ui, sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root { --bg: #151515; --card: #222222; --text: #eeeeee; --muted: #a8a8a8; --up: #ff8a80; --zero: #81c995; }
}
body { margin: 0; background: var(--bg); color: var(--text); }
.card { max-width: 30rem; margin: 2rem auto; padding: 1.5rem; background: var(--card); border-radius: 12px; }
h1 { font-size: 1.4rem; margin-top: 0; }
label { display: block; margin-bottom: 1rem; color: var(--muted); }
input { display: block; width: 100%; box-sizing: border-box; margin-top: 0.3rem; padding: 0.7rem; font-size: 1.1rem; }
button { width: 100%; padding: 1rem; font-size: 1.2rem; border: 0; border-radius: 8px; color: #ffffff; cursor: pointer; }
button:disabled { opacity: 0.45; cursor: default; }
.start { background: var(--start); }
.stop { background: var(--stop); }
.quiet { background: transparent; color: var(--muted); font-size: 1rem; margin-top: 1rem; }
.actions { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; margin-top: 1.25rem; }
.verdict { font-weight: 600; font-size: 1.1rem; }
.verdict.zero { color: var(--zero); }
.verdict.up { color: var(--up); }
dl { display: grid; grid-template-columns: auto 1fr; gap: 0.35rem 1rem; }
dt { color: var(--muted); }
dd { margin: 0; }
.locations { color: var(--muted); font-size: 0.9rem; padding-left: 1.1rem; }
.message { color: var(--up); min-height: 1.2rem; }
