:root { color-scheme: light; --ink:#20322d; --muted:#596863; --brand:#356859; --paper:#fffaf4; --line:#dce4e0; }
* { box-sizing: border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif; }
header, main, footer { width:min(860px, calc(100% - 32px)); margin:auto; }
header { padding:36px 0 18px; border-bottom:1px solid var(--line); }
main { padding:20px 0 48px; }
footer { padding:20px 0 40px; border-top:1px solid var(--line); color:var(--muted); font-size:.9rem; }
h1 { margin:0 0 8px; line-height:1.15; } h2 { margin:30px 0 8px; line-height:1.25; }
p, li { max-width:75ch; } a { color:var(--brand); } nav { display:flex; flex-wrap:wrap; gap:8px 16px; margin-top:18px; }
.notice { padding:14px 16px; border:1px solid #d7c594; background:#fff5d6; border-radius:12px; }
.meta { color:var(--muted); } .cards { display:grid; gap:12px; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.card { display:block; padding:18px; border:1px solid var(--line); border-radius:14px; background:white; text-decoration:none; color:inherit; }
.card strong { color:var(--brand); } code { overflow-wrap:anywhere; }
@media (max-width:520px) { header { padding-top:24px; } h1 { font-size:1.9rem; } }
