:root{--bg:#fbfaf7;--fg:#1d1f21;--muted:#6b6f76;--accent:#b4442c;--rule:#e4e1da;--code:#f1eee8}
@media (prefers-color-scheme:dark){:root{--bg:#141517;--fg:#e6e4df;--muted:#9a9ea5;--accent:#e2765c;--rule:#2b2d31;--code:#1e2023}}
*{box-sizing:border-box}
html{font-size:17px}
body{margin:0;background:var(--bg);color:var(--fg);font:1rem/1.65 Georgia,"Iowan Old Style","Palatino Linotype",serif}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:2px}
.wrap{max-width:42rem;margin:0 auto;padding:0 1.2rem}
header.site{border-bottom:1px solid var(--rule);padding:1.6rem 0 1.1rem;margin-bottom:2.2rem}
header.site .wrap{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.brand{font:600 1.15rem/1 ui-monospace,"SF Mono",Menlo,Consolas,monospace;letter-spacing:.04em;color:var(--fg);text-decoration:none}
.brand span{color:var(--accent)}
nav a{font:.85rem ui-monospace,Menlo,Consolas,monospace;color:var(--muted);text-decoration:none;margin-left:1.1rem}
nav a:hover{color:var(--accent)}
h1{font-size:1.9rem;line-height:1.25;margin:0 0 .4rem}
h2{font-size:1.25rem;margin:2.2rem 0 .6rem}
.lede{color:var(--muted);font-size:1.05rem;margin-top:0}
.meta{font:.8rem ui-monospace,Menlo,Consolas,monospace;color:var(--muted)}
ul.posts{list-style:none;padding:0;margin:0}
ul.posts li{padding:1.1rem 0;border-bottom:1px solid var(--rule)}
ul.posts li a{font-size:1.15rem;text-decoration:none;color:var(--fg)}
ul.posts li a:hover{color:var(--accent)}
ul.posts p{margin:.3rem 0 0;color:var(--muted)}
code,pre{font:.85rem/1.5 ui-monospace,Menlo,Consolas,monospace;background:var(--code)}
code{padding:.1rem .3rem;border-radius:3px}
pre{padding:.9rem 1rem;overflow-x:auto;border-radius:4px}
figure{margin:1.6rem 0}
table{border-collapse:collapse;width:100%;font-size:.92rem}
th,td{text-align:left;padding:.4rem .6rem;border-bottom:1px solid var(--rule)}
footer.site{margin-top:4rem;border-top:1px solid var(--rule);padding:1.4rem 0 2.4rem;color:var(--muted);font-size:.85rem}
