:root { --paper:#f7f5f0; --ink:#1d1c1a; --muted:#6b675f; --line:#e3dfd6; --accent:#1d1c1a; }
@media (prefers-color-scheme: dark) { :root { --paper:#151412; --ink:#f2efe8; --muted:#a39e94; --line:#2c2a26; --accent:#f2efe8; } }
* { box-sizing: border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.65 -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", sans-serif; }
main { max-width: 720px; margin: 0 auto; padding: 48px 20px 80px; }
header { display:flex; justify-content:space-between; align-items:baseline; gap:16px; flex-wrap:wrap; margin-bottom:40px; }
.logo { font: italic 30px/1 Georgia, "Times New Roman", serif; color:var(--ink); text-decoration:none; }
nav a { color:var(--muted); text-decoration:none; margin-left:18px; font-size:14px; }
nav a:hover, nav a[aria-current] { color:var(--ink); }
h1 { font: 400 40px/1.15 Georgia, "Times New Roman", serif; margin: 0 0 12px; }
h2 { font: 400 24px/1.3 Georgia, "Times New Roman", serif; margin: 36px 0 8px; }
p, li { color: var(--ink); }
.lede { color: var(--muted); font-size: 18px; }
.meta { color: var(--muted); font-size: 14px; }
a { color: var(--accent); }
footer { margin-top: 56px; padding-top: 20px; border-top: 1px solid var(--line); color: var(--muted); font-size: 14px; }
footer a { color: var(--muted); margin-right: 16px; }
