@font-face{font-family:"Source Serif 4";src:url(/fonts/SourceSerif4-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Source Serif 4";src:url(/fonts/SourceSerif4-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:"Source Serif 4";src:url(/fonts/SourceSerif4-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--font-serif: Charter, "Source Serif 4", "Iowan Old Style", Georgia, Cambria, serif;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, monospace;--ink: #1a1a1a;--ink-muted: #6b7280;--link: #2563eb;--rule: #e5e7eb;--bg: #fdfdfc;--measure: 640px}*{box-sizing:border-box}html{font-size:18px;-webkit-text-size-adjust:100%}body{margin:0;color:var(--ink);background:var(--bg);line-height:1.6;font-feature-settings:"kern","liga";text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body.font-serif{font-family:var(--font-serif)}body.font-sans{font-family:var(--font-sans);font-size:17px;line-height:1.55}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.15rem}.text-xl{font-size:1.35rem}.text-2xl{font-size:1.6rem}.text-3xl{font-size:2rem}.italic{font-style:italic}.not-italic{font-style:normal}.font-normal{font-weight:400}.font-semibold{font-weight:600}.text-muted{color:var(--ink-muted)}.text-center{text-align:center}.text-right{text-align:right}main,article,.intro,.writing{max-width:var(--measure);margin:0 auto;padding:0 1.25rem}article>header{margin:4rem 0 2rem}article>header h1{font-size:1.6rem;line-height:1.2;margin:0 0 .25rem;font-weight:600}article>header time{color:var(--ink-muted);font-size:.9rem}article p,article li{font-size:1rem}article h2{font-size:1.2rem;margin-top:2.5rem;font-weight:600}article h3{font-size:1.05rem;margin-top:2rem;font-weight:600}article a{color:var(--link);text-decoration:none}article a:hover{text-decoration:underline;text-underline-offset:2px}article blockquote{margin:1.5rem 0;padding-left:1rem;border-left:2px solid var(--rule);color:var(--ink-muted)}article hr{border:none;border-top:1px solid var(--rule);margin:3rem auto;width:4rem}code,pre{font-family:var(--font-mono);font-size:.9em}:not(pre)>code{background:#f4f4f3;padding:.1em .35em;border-radius:3px}pre{padding:1rem;border-radius:4px;overflow-x:auto;line-height:1.5;margin:1.5rem 0}pre code{background:none;padding:0}.intro{margin:5rem auto 3rem}.intro h1{font-weight:600;font-size:1.15rem;margin:0 0 1rem}.intro p{margin:0 0 .5rem}.intro a{color:var(--link);text-decoration:none}.intro a:hover{text-decoration:underline;text-underline-offset:2px}.writing h2{font-size:.85rem;font-weight:600;margin:3rem 0 1.5rem;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em}.writing h3{font-size:.9rem;font-weight:400;color:var(--ink-muted);margin:2rem 0 .5rem}.post-list{list-style:none;padding:0;margin:0}.post-list li{display:grid;grid-template-columns:5rem 1fr;gap:1rem;padding:.25rem 0}.post-list time{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:.9rem}.post-list a{color:var(--ink);text-decoration:none}.post-list a:hover{color:var(--link)}.footnotes{margin-top:4rem;padding-top:1.5rem;border-top:1px solid var(--rule);font-size:.88rem;color:var(--ink-muted)}.footnotes h2{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem}.footnotes ol{padding-left:1.25rem;margin:0}.footnotes li{margin-bottom:.5rem}.footnotes a{color:var(--link);text-decoration:none}.footnotes a:hover{text-decoration:underline}sup a[data-footnote-ref]{text-decoration:none;color:var(--link);font-size:.75em;padding:0 .1em}a[data-footnote-backref]{margin-left:.25rem;text-decoration:none}.post-footer{margin-top:4rem;padding-top:1.5rem;border-top:1px solid var(--rule);font-size:.9rem}.post-footer a{color:var(--ink-muted);text-decoration:none}.post-footer a:hover{color:var(--link)}::selection{background:#fde68a}
