/* Colors from design/tokens (night.950, night.850, lavender.200, white,
   yellow.300, ink.900). System fonts only: no font download, no third-party
   request (privacy, CSP default-src 'none'). */
:root {
  color-scheme: dark;
  --canvas: #1a1240;
  --card: #221a63;
  --text: #ffffff;
  --muted: #d6d1ff;
  --accent: #ffd23f;
  --on-accent: #120c33;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  min-height: 100vh;
  background: var(--canvas);
  color: var(--text);
  font: 400 1.0625rem/1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
main {
  max-width: 28rem;
  margin: 0 auto;
  padding: 2.5rem 1.25rem 3rem;
  text-align: center;
}
.logo { border-radius: 22%; }
h1 { font-size: 2rem; line-height: 1.2; margin: 1rem 0 0.5rem; }
h2 { font-size: 1.25rem; margin: 0 0 0.5rem; }
.lead { color: var(--muted); margin: 0 0 1.5rem; }
.button {
  display: block;
  min-height: 48px;
  padding: 0.85rem 1rem;
  border-radius: 999px;
  background: var(--accent);
  color: var(--on-accent);
  font-weight: 800;
  font-size: 1.125rem;
  text-decoration: none;
}
.button:focus-visible { outline: 3px solid var(--text); outline-offset: 3px; }
.small { color: var(--muted); font-size: 0.9375rem; }
section {
  margin-top: 2rem;
  padding: 1.25rem;
  border-radius: 1rem;
  background: var(--card);
  text-align: left;
}
ol { padding-left: 1.25rem; margin: 0.5rem 0; }
li { margin: 0.5rem 0; }
[hidden] { display: none !important; }
