:root { color-scheme: light dark; --bg:#fafaf9; --ink:#0b0b0c; --ink-2:#3f3e3b; --muted:#6b6a66; --line:#e7e6e3; --rip:#cf2f2b; }
@media (prefers-color-scheme: dark) { :root { --bg:#0b0b0c; --ink:#f5f5f4; --ink-2:#c9c8c3; --muted:#8f8e89; --line:#242427; --rip:#e5484d; } }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--ink-2); font:17px/1.65 Geist, system-ui, -apple-system, "Segoe UI", sans-serif; }
main, header, footer { width:min(720px, calc(100% - 2rem)); margin:0 auto; }
header { padding:2rem 0 1rem; border-bottom:1px solid var(--line); }
.brand { font-weight:800; font-size:1.2rem; letter-spacing:-0.02em; color:var(--ink); text-decoration:none; }
.brand span { color:var(--rip); }
h1 { color:var(--ink); font-size:clamp(1.9rem,5vw,2.6rem); letter-spacing:-0.035em; line-height:1.1; margin:2rem 0 0.4rem; }
h2 { color:var(--ink); font-size:1.25rem; letter-spacing:-0.02em; margin:2rem 0 0.4rem; }
p, ul { margin:0 0 1rem; }
ul { padding-left:1.3rem; }
a { color:var(--ink); text-underline-offset:0.15em; }
.updated { color:var(--muted); font-size:0.95rem; }
footer { margin-top:3rem; padding:1.5rem 0 3rem; border-top:1px solid var(--line); color:var(--muted); font-size:0.95rem; }
