:root { --ink:#241c14; --muted:#6b5d4d; --rule:#e2d8c8; --bg:#fffdf9; --accent:#0f6d5e; }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--ink);
  font: 16px/1.75 -apple-system, BlinkMacSystemFont, "Segoe UI", Tahoma, sans-serif; }
main { max-width: 44rem; margin: 0 auto; padding: 3rem 1.25rem 5rem; }
h1 { font-size: 1.85rem; line-height:1.3; margin:0 0 .35rem; }
h2 { font-size: 1.18rem; margin: 2.6rem 0 .6rem; padding-top:1.4rem;
  border-top:1px solid var(--rule); }
h3 { font-size: 1rem; margin: 1.5rem 0 .35rem; color: var(--accent); }
p, li { color: var(--ink); }
.sub { color: var(--muted); margin: 0 0 2rem; font-size: .95rem; }
.lede { background:#fff; border:1px solid var(--rule); border-radius:12px;
  padding:1.1rem 1.3rem; margin:1.5rem 0 0; }
.lede p:last-child { margin-bottom:0; }
table { border-collapse: collapse; width:100%; margin:1rem 0; font-size:.94rem; }
th, td { border:1px solid var(--rule); padding:.5rem .7rem; vertical-align:top; }
th { background:#f6f0e6; font-weight:600; }
code { background:#f2ece2; padding:.1em .35em; border-radius:4px; font-size:.9em; }
a { color: var(--accent); }
footer { margin-top:3rem; padding-top:1.2rem; border-top:1px solid var(--rule);
  color:var(--muted); font-size:.9rem; }
@media (prefers-color-scheme: dark) {
  :root { --ink:#f0e9df; --muted:#a99a86; --rule:#3a3229; --bg:#16120e; --accent:#5fc9b4; }
  .lede { background:#1d1813; }
  th { background:#221c16; }
  code { background:#241e18; }
}
