/* status.allotmentology.tech. Text/background pairs are at least 7:1 (WCAG 2.2 AAA 1.4.6); the state is
   always written out in words, never shown by colour alone. */
:root { color-scheme: light dark; --bg: #fafafa; --fg: #1a1a1a; --muted: #3d3d3d; --link: #0a4ca8;
  --ok-bg: #dcefe1; --ok-fg: #0f3d1d; --warn-bg: #fde68a; --warn-fg: #1c1917; --bad-bg: #7f1d1d; --bad-fg: #ffffff; }
@media (prefers-color-scheme: dark) {
  :root { --bg: #151515; --fg: #eeeeee; --muted: #c8c8c8; --link: #9cc2ff;
    --ok-bg: #0f3d1d; --ok-fg: #ffffff; --warn-bg: #fde68a; --warn-fg: #1c1917; --bad-bg: #7f1d1d; --bad-fg: #ffffff; }
}
body { margin: 0; background: var(--bg); color: var(--fg); font: 1.0625rem/1.6 system-ui, -apple-system, "Segoe UI", sans-serif; }
main { max-width: 38rem; margin: 10vh auto 0; padding: 0 1.25rem 3rem; }
.brand { font-weight: 700; letter-spacing: .02em; margin: 0 0 1.5rem; }
h1 { font-size: 1.6rem; line-height: 1.3; margin: 0 0 .75rem; }
h2 { font-size: 1.15rem; margin: 2rem 0 .5rem; }
p { color: var(--muted); margin: 0 0 1rem; }
#message { color: var(--fg); }
a { color: var(--link); text-underline-offset: .15em; }
a:focus-visible { outline: 3px solid var(--link); outline-offset: 2px; border-radius: 2px; }
.services { list-style: none; padding: 0; margin: 0 0 2rem; }
.services li { display: flex; justify-content: space-between; gap: 1rem; padding: .5rem 0; border-bottom: 1px solid #8a8a8a; }
.pill { font-weight: 600; padding: 0 .6rem; border-radius: 999px; }
.pill[data-state="operational"] { background: var(--ok-bg); color: var(--ok-fg); }
.pill[data-state="degraded"], .pill[data-state="maintenance"] { background: var(--warn-bg); color: var(--warn-fg); }
.pill[data-state="outage"] { background: var(--bad-bg); color: var(--bad-fg); }
