:root,[data-theme="light"]{color-scheme:light;--bg:#b8b8b8;--paper:#faf9f6;--ink:#353431;--muted:#5c5953;--hair:#e4ddd2;--soft:#f3f0ea}
[data-theme="dark"]{color-scheme:dark;--bg:#1a1a1a;--paper:#2e2d2b;--ink:#f7f4ee;--muted:#d9d3c8;--hair:rgba(247,244,238,.2);--soft:#3a3835}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.7 Georgia,"Iowan Old Style","Palatino Linotype",Palatino,"Times New Roman",serif}
.sheet{width:min(1040px,calc(100% - 40px));margin:32px auto;background:var(--paper);padding:32px clamp(22px,6vw,80px)}
nav,.meta,footer,button,.eyebrow{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:14px}
nav{display:flex;align-items:center;flex-wrap:wrap;gap:20px;padding-bottom:24px;border-bottom:1px solid var(--hair)}nav .brand{margin-right:auto;font-size:17px;text-decoration:none}
a{color:inherit;text-underline-offset:4px}a:hover{color:var(--muted)}button{border:1px solid var(--hair);background:var(--soft);color:var(--ink);padding:8px 12px;cursor:pointer}
:focus-visible{outline:2px solid var(--ink);outline-offset:4px}main{padding-block:38px}h1,h2,h3{font-weight:500;letter-spacing:-.015em;line-height:1.2}h1{font-size:clamp(32px,5vw,52px);margin:16px 0 24px}h2{font-size:30px;margin:40px 0 18px}h3{font-size:23px;margin-top:28px}
.eyebrow,.meta,.description{color:var(--muted)}.description{font-size:21px}.prose{max-width:72ch}.prose p{margin:20px 0}.prose li{margin:8px 0}.prose blockquote{margin:24px 0;padding-left:20px;border-left:2px solid var(--hair)}pre{padding:16px;overflow:auto;background:var(--soft);font-size:14px}code{overflow-wrap:anywhere}img{max-width:100%;height:auto}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:16px}td,th{padding:10px;border:1px solid var(--hair);text-align:left}
.post-list{list-style:none;padding:0}.post-list li{padding:24px 0;border-bottom:1px solid var(--hair)}.post-list h2{margin:0 0 12px;font-size:27px}.post-list p{margin:10px 0}.faq details{border-bottom:1px solid var(--hair);padding:16px 0}.faq summary{cursor:pointer;font-weight:600}.sources{font-size:16px;overflow-wrap:anywhere}footer{border-top:1px solid var(--hair);padding-top:24px;color:var(--muted)}
@media(max-width:600px){.sheet{width:calc(100% - 20px);margin:10px auto;padding:22px}nav{gap:14px}body{font-size:17px}h2{font-size:26px}}
