:root {
  color-scheme:light dark;
  --bg:#fff;
  --canvas:#f3f3f3;
  --ink:#0d0d0d;
  --muted:#555;
  --teal:#0a7565;
  --up:#138a4e;
  --down:#d03b3b;
  --pending:#a86400;
  --maintenance:#7462b9;
  --unknown:#777;
  font-family:Inter,'Segoe UI',system-ui,sans-serif;
  background:var(--canvas);
  color:var(--ink);
}
* {
  box-sizing:border-box;
}
body {
  margin:0;
}
a {
  color:var(--teal);
  text-underline-offset:4px;
}
a:focus-visible {
  outline:3px solid var(--teal);
  outline-offset:5px;
}
header,main,footer {
  width:min(960px,100% - 40px);
  margin:auto;
}
header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:32px 0;
}
.brand {
  display:inline-flex;
  align-items:center;
  gap:12px;
  font-weight:800;
  font-size:28px;
  letter-spacing:-1.2px;
  text-decoration:none;
  color:var(--ink);
}
.brand img {
  width:36px;
  height:36px;
  flex:none;
}
.brand span {
  font-size:16px;
  font-weight:400;
  color:var(--muted);
  letter-spacing:0;
}
.eyebrow {
  font-size:11px;
  letter-spacing:.14em;
  font-weight:700;
  color:var(--muted);
}
main {
  background:var(--bg);
  border-radius:20px;
  padding:44px;
  margin-top:12px;
}
h1 {
  font-size:clamp(32px,6vw,50px);
  letter-spacing:-2px;
  line-height:1.1;
  margin:16px 0;
}
.intro {
  color:var(--muted);
  line-height:1.6;
}
.summary {
  display:flex;
  gap:16px;
  align-items:flex-start;
  background:var(--canvas);
  border-radius:12px;
  padding:24px;
  margin:32px 0 40px;
}
.summary h2 {
  font-size:18px;
  margin:0;
  color:var(--ink);
}
.summary p {
  font-size:13px;
  line-height:1.7;
  margin:10px 0 0;
  color:var(--muted);
}
.dot {
  display:inline-block;
  flex-shrink:0;
  width:9px;
  height:9px;
  background:currentColor;
  border-radius:50%;
}
.summary>.dot {
  margin-top:6px;
  width:12px;
  height:12px;
}
.state-1 {
  color:var(--up);
}
.state-0 {
  color:var(--down);
}
.state-2 {
  color:var(--pending);
}
.state-3 {
  color:var(--maintenance);
}
.state-unknown {
  color:var(--unknown);
}
.group {
  margin-top:36px;
}
.group>h2 {
  font-size:17px;
  letter-spacing:-.3px;
}
.monitors {
  display:grid;
  gap:12px;
}
.monitor {
  padding:22px;
  background:var(--canvas);
  border-radius:12px;
  min-width:0;
}
.monitor-heading {
  display:flex;
  gap:14px;
  justify-content:space-between;
  align-items:baseline;
}
.monitor h3 {
  font-size:14px;
  font-weight:600;
  margin:0;
  overflow-wrap:anywhere;
}
.state {
  font-size:12px;
  white-space:nowrap;
  display:flex;
  align-items:center;
  gap:7px;
}
.history {
  display:flex;
  gap:3px;
  height:28px;
  margin:20px 0 10px;
  font-size:12px;
  color:var(--muted);
}
.bar {
  flex:1;
  min-width:0;
  background:currentColor;
  border-radius:2px;
}
.monitor-meta {
  display:flex;
  justify-content:space-between;
  gap:10px;
  font-size:11px;
  line-height:1.6;
  color:var(--muted);
}
.legend {
  font-size:12px;
  line-height:1.7;
  color:var(--muted);
  margin-top:32px;
}
footer {
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:28px 0 40px;
  font-size:12px;
  color:var(--muted);
}
@media(prefers-color-scheme:dark) {
  :root {
    --bg:#171717;
    --canvas:#0d0d0d;
    --ink:#ededed;
    --muted:#b4b4b4;
    --teal:#7fe0cf;
    --up:#65ce91;
    --down:#ff8989;
    --pending:#e8b460;
    --maintenance:#b6a5fc;
    --unknown:#999;
  }
  .monitor,.summary {
    background:#232323;
  }
}
@media(max-width:600px) {
  header,main,footer {
    width:calc(100% - 24px);
  }
  main {
    padding:24px 16px;
  }
  .monitor {
    padding:16px;
  }
  .monitor-heading {
    align-items:flex-start;
  }
  .monitor-meta,footer {
    flex-direction:column;
  }
  .history {
    gap:2px;
  }
  header>.eyebrow {
    display:none;
  }
  .summary {
    padding:18px;
  }
}
