:root { --bg:#fbfaf7; --fg:#1f1d1a; --muted:#6b665e; --accent:#c2410c; --card:#fff; --line:#e7e2d9; }
@media (prefers-color-scheme: dark) {
  :root { --bg:#161513; --fg:#f1ede6; --muted:#a39d92; --accent:#fb923c; --card:#1f1d1a; --line:#33302b; }
}
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font:18px/1.6 system-ui, sans-serif; }
.wrap { max-width:46rem; margin:0 auto; padding:1rem 1.25rem; }
header.wrap { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); }
.brand { font-weight:700; font-size:1.2rem; color:var(--fg); text-decoration:none; }
a { color:var(--accent); }
nav a { margin-left:1.25rem; text-decoration:none; }
h1, h2 { line-height:1.2; }
.meta { color:var(--muted); font-size:.9rem; }
.cards { display:grid; gap:1rem; grid-template-columns:repeat(auto-fill,minmax(14rem,1fr)); padding:0; list-style:none; }
.cards li { background:var(--card); border:1px solid var(--line); border-radius:.75rem; padding:1rem; }
.cards a { font-weight:600; text-decoration:none; }
footer { color:var(--muted); font-size:.85rem; border-top:1px solid var(--line); margin-top:3rem; }
.intro { font-size:1.1rem; color:var(--muted); }
.facts { display:flex; gap:.5rem; flex-wrap:wrap; padding:0; }
.facts span { background:var(--card); border:1px solid var(--line); border-radius:999px; padding:.1rem .75rem; font-size:.85rem; color:var(--muted); }
.cards p { margin:.4rem 0 0; font-size:.9rem; color:var(--muted); }
article ul, article ol { padding-left:1.25rem; }
article li { margin:.25rem 0; }
