:root { color-scheme: light dark; --bg:#fff; --fg:#111; --muted:#555; --line:#ddd; --card:#f6f6f6; }
@media (prefers-color-scheme: dark) { :root { --bg:#000; --fg:#f5f5f5; --muted:#b3b3b3; --line:#2a2a2a; --card:#0d0d0d; } }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font:17px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
header, main, footer { max-width: 760px; margin: 0 auto; padding: 0 24px; }
header { padding-top: 32px; padding-bottom: 8px; display:flex; gap:20px; align-items:center; flex-wrap:wrap; border-bottom:1px solid var(--line); }
header a.brand { font-weight:700; color:var(--fg); text-decoration:none; margin-right:auto; }
header a { color:var(--fg); }
h1 { font-size: 2rem; line-height:1.25; margin: 40px 0 8px; }
h2 { font-size: 1.25rem; margin: 32px 0 8px; }
p, li { color: var(--fg); }
.muted { color: var(--muted); font-size: .95rem; }
.card { background: var(--card); border:1px solid var(--line); border-radius: 12px; padding: 16px 20px; margin: 20px 0; }
a { color: var(--fg); text-underline-offset: 3px; }
a:focus-visible { outline: 2px solid var(--fg); outline-offset: 3px; border-radius: 3px; }
footer { padding-top: 24px; padding-bottom: 48px; margin-top: 48px; border-top: 1px solid var(--line); color: var(--muted); font-size: .9rem; }
mark { background: #ffd54a; color:#000; padding: 0 4px; border-radius: 3px; }
