:root{--fg:#1f2328;--muted:#6a737d;--bg:#fbfbf8;--accent:#2f6f4f;--line:#e4e4de}
@media (prefers-color-scheme:dark){:root{--fg:#e6e6e1;--muted:#9a9a93;--bg:#17181a;--accent:#7fbf9a;--line:#2a2c2f}}
*{box-sizing:border-box}html{font-size:17px}
body{margin:0;background:var(--bg);color:var(--fg);font:1rem/1.65 Georgia,"Times New Roman",serif}
.wrap{max-width:42rem;margin:0 auto;padding:3rem 1.25rem 4rem}
header{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:.75rem;margin-bottom:2.5rem}
header a.brand{font-weight:bold;text-decoration:none;color:var(--fg);letter-spacing:.02em}
nav a{margin-left:1rem;color:var(--muted);text-decoration:none;font:.9rem system-ui,sans-serif}
nav a:hover,a{color:var(--accent)}
h1{font-size:1.6rem;line-height:1.25;margin:0 0 .25rem}
h2{font-size:1.15rem;margin:2.25rem 0 .25rem}
h2 a{color:var(--fg);text-decoration:none}h2 a:hover{color:var(--accent)}
.meta{color:var(--muted);font:.85rem system-ui,sans-serif;margin:0 0 .5rem}
pre{background:rgba(127,127,127,.08);border:1px solid var(--line);padding:.8rem 1rem;overflow-x:auto;font:.85rem/1.5 ui-monospace,Menlo,Consolas,monospace;border-radius:4px}
code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.9em}
footer{margin-top:4rem;border-top:1px solid var(--line);padding-top:1rem;color:var(--muted);font:.8rem system-ui,sans-serif}
