:root { color-scheme: light; --ink:#202938; --muted:#5c6879; --blue:#0868df; --paper:#fbfaf7; --line:#dce2e9; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font:17px/1.8 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif; }
header,main,footer { max-width:850px; margin:auto; padding:28px; }
header { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; border-bottom:1px solid var(--line); }
.brand { font-size:23px; font-weight:750; color:var(--ink); text-decoration:none; }
nav { display:flex; flex-wrap:wrap; gap:18px; font-size:15px; }
a { color:var(--blue); text-underline-offset:4px; overflow-wrap:anywhere; }
a:focus-visible { outline:3px solid var(--blue); outline-offset:5px; border-radius:3px; }
h1 { font-size:clamp(29px,5vw,42px); line-height:1.3; margin:20px 0 12px; letter-spacing:-.025em; }
h2 { font-size:22px; line-height:1.45; margin:34px 0 10px; }
p,ul,ol { margin:12px 0; }
li { padding-left:4px; margin:6px 0; }
.intro { color:var(--muted); font-size:19px; }
.date { color:var(--muted); font-size:14px; }
.card { background:white; border:1px solid var(--line); border-radius:16px; padding:22px; margin:24px 0; }
.card h2 { margin-top:0; }
.actions { display:flex; flex-wrap:wrap; gap:12px; margin:18px 0 0; }
.button { display:inline-block; padding:8px 16px; border-radius:9px; border:1px solid var(--line); text-decoration:none; background:white; }
footer { color:var(--muted); font-size:14px; border-top:1px solid var(--line); margin-top:28px; }
@media(max-width:480px) { header,main,footer { padding:22px; } body { font-size:16px; } }
