:root{--bg:#fbfaf7;--fg:#1d1d1b;--mut:#76736b;--ac:#2f6f4f;--line:#e6e2d8;--red:#b4452f}
@media(prefers-color-scheme:dark){:root{--bg:#171815;--fg:#e8e6df;--mut:#9a978c;--ac:#7fc79b;--line:#2b2d27;--red:#e0866f}}
*{box-sizing:border-box}body{font:17px/1.65 ui-serif,Georgia,serif;background:var(--bg);color:var(--fg);max-width:44rem;margin:0 auto;padding:1.5rem 1rem 4rem}
a{color:var(--ac)}h1,h2,nav,.meta,.chip,input{font-family:ui-sans-serif,system-ui,sans-serif}h1{font-size:1.8rem;line-height:1.25;margin:.5rem 0}
h2{font-size:1.05rem;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);margin:2rem 0 .5rem}
nav{display:flex;gap:1rem;flex-wrap:wrap;font-size:.9rem;padding-bottom:.8rem;border-bottom:1px solid var(--line)}nav a.home{font-weight:700;text-decoration:none}
.meta,.muted{color:var(--mut);font-size:.85rem}.chip{border:1px solid var(--line);border-radius:99px;padding:0 .6rem;font-size:.75rem;margin-right:.3rem}
.red{color:var(--red);border-bottom:1px dashed var(--red);cursor:help}sup a{text-decoration:none;font-size:.75em}
ul.notes{list-style:none;padding:0}ul.notes li{margin:.5rem 0}ul.notes .gist{display:block;color:var(--mut);font-size:.9rem}
input{width:100%;padding:.6rem .8rem;border:1px solid var(--line);border-radius:.5rem;background:transparent;color:var(--fg);font-size:1rem}
code{background:var(--line);padding:0 .25em;border-radius:3px}footer{margin-top:3rem;color:var(--mut);font-size:.8rem}ol.src{font-size:.9rem;color:var(--mut)}