:root{--bg:#fbfaf7;--fg:#1d2326;--muted:#5d676c;--accent:#0f4c5c;--accent-2:#b7791f;--line:#e3e0d8;--code-bg:#f1efe9;--quote-bg:#f3f6f6}@media(prefers-color-scheme:dark){:root{--bg:#14191b;--fg:#e4e7e8;--muted:#9aa5aa;--accent:#7cc4d4;--accent-2:#f4b942;--line:#2b3336;--code-bg:#1d2427;--quote-bg:#1a2225}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--fg);font:18px/1.65 Charter,bitstream charter,sitka text,Cambria,Georgia,serif}.wrap{max-width:44rem;margin:0 auto;padding:0 16px}a{color:var(--accent);text-underline-offset:2px}a:hover{text-decoration-thickness:2px}.site-header{border-bottom:1px solid var(--line)}.site-header .wrap{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;align-items:baseline;justify-content:space-between;padding-top:1rem;padding-bottom:1rem;font-family:system-ui,-apple-system,segoe ui,Roboto,sans-serif}.brand{font-weight:700;font-size:1.25rem;color:var(--fg);text-decoration:none}.brand span{color:var(--accent-2)}nav{display:flex;flex-wrap:wrap;gap:1rem;font-size:.95rem}nav a{color:var(--muted);text-decoration:none}nav a:hover,nav a[aria-current]{color:var(--accent)}main{padding-top:2.5rem;padding-bottom:3rem}h1,h2,h3{font-family:system-ui,-apple-system,segoe ui,Roboto,sans-serif;line-height:1.25}h1{font-size:2rem;margin:0 0 .5rem}article h2{font-size:1.35rem;margin-top:2.2rem}.meta,time{color:var(--muted);font-size:.9rem;font-family:system-ui,sans-serif}.post-header{margin-bottom:1.5rem}.intro{font-size:1.1rem;border-bottom:1px solid var(--line);margin-bottom:1.5rem}.post-list{list-style:none;padding:0;margin:0}.post-list li{padding:1rem 0;border-bottom:1px solid var(--line)}.post-list h2{font-size:1.3rem;margin:.2rem 0 .4rem}.post-list h2 a{color:var(--fg);text-decoration:none}.post-list h2 a:hover{color:var(--accent)}.post-list p{margin:0;color:var(--muted)}blockquote{margin:1.5rem 0;padding:.75rem 1rem;background:var(--quote-bg);border-left:4px solid var(--accent)}blockquote p:first-child{margin-top:0}blockquote p:last-child{margin-bottom:0}.note{border-left-color:var(--accent-2)}code{font-family:ui-monospace,jetbrains mono,Menlo,Consolas,monospace;font-size:.88em}:not(pre)>code{background:var(--code-bg);padding:.1em .3em;border-radius:4px}pre{background:var(--code-bg);padding:1rem;border-radius:6px;overflow-x:auto;line-height:1.45;font-size:.95rem}pre code{background:0 0}.table-wrap{overflow-x:auto;margin:1.5rem 0}table{border-collapse:collapse;width:100%;font-size:.92rem;font-family:system-ui,sans-serif}th,td{border-bottom:1px solid var(--line);padding:.45rem .6rem;text-align:left;vertical-align:top}th{border-bottom-width:2px}td:not(:first-child),th:not(:first-child){white-space:nowrap}.post-nav{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1rem;border-top:1px solid var(--line);font-family:system-ui,sans-serif;font-size:.95rem}.site-footer{border-top:1px solid var(--line);color:var(--muted);font-size:.9rem;font-family:system-ui,sans-serif}.site-footer a{color:var(--muted)}.chroma .c,.chroma .c1,.chroma .cm{color:#6a737d;font-style:italic}.chroma .s,.chroma .s1,.chroma .s2{color:#22863a}.chroma .nb,.chroma .k{color:#6f42c1}@media(prefers-color-scheme:dark){.chroma .c,.chroma .c1,.chroma .cm{color:#8b949e}.chroma .s,.chroma .s1,.chroma .s2{color:#7ee787}.chroma .nb,.chroma .k{color:#d2a8ff}}