:root{--bg:#fdfdfc;--fg:#24232099;--ink:#242320;--accent:#7a5c3e;--rule:#e6e2dc;--code:#f4f2ee}
@media(prefers-color-scheme:dark){:root{--bg:#16151a;--fg:#c9c5bd99;--ink:#e8e4dc;--accent:#c49a6c;--rule:#2c2a30;--code:#1e1d23}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
  font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  -webkit-text-size-adjust:100%}
.wrap{max-width:40rem;margin:0 auto;padding:3rem 1.25rem 5rem}
header.site{margin-bottom:3rem;padding-bottom:1.25rem;border-bottom:1px solid var(--rule)}
header.site h1{font-size:1.05rem;margin:0 0 .3rem;letter-spacing:.02em;font-weight:600}
header.site h1 a{color:var(--ink);text-decoration:none}
header.site p{margin:0;font-size:.9rem;color:var(--fg)}
nav{margin-top:.8rem;font-size:.88rem}
nav a{color:var(--accent);text-decoration:none;margin-right:1rem}
nav a:hover{text-decoration:underline}
a{color:var(--accent)}
ul.posts{list-style:none;padding:0;margin:0}
ul.posts li{margin-bottom:1.6rem}
ul.posts .d{display:block;font-size:.8rem;color:var(--fg);font-variant-numeric:tabular-nums;margin-bottom:.15rem}
ul.posts a{font-size:1.02rem;text-decoration:none;font-weight:500}
ul.posts a:hover{text-decoration:underline}
ul.posts .x{font-size:.9rem;color:var(--fg);margin:.2rem 0 0}
article h1{font-size:1.5rem;line-height:1.3;margin:0 0 .4rem}
article .meta{font-size:.82rem;color:var(--fg);margin-bottom:2rem}
article h2{font-size:1.1rem;margin:2.2rem 0 .6rem}
article p{margin:0 0 1.1rem}
blockquote{margin:1.4rem 0;padding-left:1rem;border-left:2px solid var(--rule);color:var(--fg)}
pre{background:var(--code);padding:.9rem 1rem;border-radius:5px;overflow-x:auto;font-size:.85rem;line-height:1.5}
code{background:var(--code);padding:.12em .35em;border-radius:3px;font-size:.88em}
pre code{background:none;padding:0}
footer{margin-top:4rem;padding-top:1.25rem;border-top:1px solid var(--rule);font-size:.82rem;color:var(--fg)}
