:root {
  color-scheme: light dark;
  --bg: #f3f8fc;
  --card: #ffffff;
  --text: #12324f;
  --muted: #4b6680;
  --accent: #0a6f67;
  --border: #d5e3ee;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #0b2742;
    --card: #12324f;
    --text: #eaf6ff;
    --muted: #9bbad1;
    --accent: #3ee0d0;
    --border: rgba(170, 215, 255, 0.16);
  }
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font: 17px/1.6 system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}
main { max-width: 40rem; margin: 0 auto; padding: 32px 20px 56px; }
h1, h2, .brand { font-family: ui-rounded, 'SF Pro Rounded', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; font-weight: 800; line-height: 1.2; }
.brand { margin: 0; color: var(--accent); font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; }
h1 { margin: 6px 0 4px; font-size: 32px; }
h2 { margin: 32px 0 8px; font-size: 20px; }
p, ul { margin: 0 0 12px; }
ul { padding-left: 22px; }
li { margin-bottom: 6px; }
a { color: var(--accent); text-underline-offset: 2px; overflow-wrap: anywhere; }
.updated { margin-bottom: 20px; color: var(--muted); font-size: 15px; }
.summary { margin: 24px 0 8px; padding: 16px 18px 6px; border: 1px solid var(--border); border-radius: 16px; background: var(--card); }
.summary h2 { margin: 0 0 8px; font-size: 17px; }
