.blog-root{--blog-bg:#f5f2ea;--blog-fg:#1c1b17;--blog-muted:#6b675c;--blog-line:#1c1b1724;--blog-accent:#b4441a;--blog-serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--blog-sans:var(--font-inter), "Inter", system-ui, sans-serif;--blog-mono:var(--font-jetbrains), ui-monospace, "SFMono-Regular", Menlo, monospace;background:var(--blog-bg);min-height:100vh;color:var(--blog-fg);font-family:var(--blog-sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;flex-direction:column;display:flex}body:has(.blog-root){color:#1c1b17;background:#f5f2ea}html:has(.blog-root){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.blog-root :where(h1,h2,h3,h4){font-size:revert;letter-spacing:-.01em;line-height:1.15}.blog-root a{color:inherit}.blog-root :focus-visible{outline-offset:3px;outline:2px solid}.blog-root main{flex:1}.blog-mast{border-bottom:1px solid var(--blog-line);background:var(--blog-bg)}.blog-mast-inner,.blog-foot-inner,.blog-index{width:min(1120px,100% - 32px);margin-inline:auto}.blog-mast-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;min-height:60px;padding-block:10px;display:flex}.blog-brand{align-items:baseline;gap:10px;text-decoration:none;display:inline-flex}.blog-brand-name{font-family:var(--blog-serif);letter-spacing:.02em;font-size:22px;font-weight:600}.blog-brand-sub{font-family:var(--blog-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--blog-muted);font-size:12px}.blog-mast nav{flex-wrap:wrap;gap:4px 18px;font-size:14px;display:flex}.blog-mast nav a{color:var(--blog-muted);padding:6px 0;text-decoration:none;display:inline-block}.blog-mast nav a:hover{color:var(--blog-fg)}.blog-foot{border-top:1px solid var(--blog-line);color:var(--blog-muted);margin-top:64px;font-size:13px}.blog-foot-inner{flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding-block:28px;display:flex}.blog-foot-inner nav{flex-wrap:wrap;gap:8px 18px;display:flex}.blog-foot a,.blog-foot .footer-link-button{color:inherit;text-transform:none;letter-spacing:normal;padding:4px 0;display:inline-block}.blog-index{padding-block:clamp(36px,6vw,72px)}.blog-index-head{max-width:720px;margin-bottom:clamp(28px,5vw,48px)}.blog-index-head h1{font-family:var(--blog-serif);font-size:clamp(36px,6vw,60px);font-weight:600;line-height:1.05}.blog-index-head p{color:var(--blog-muted);margin-top:14px;font-size:18px;line-height:1.55}.blog-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:20px;display:grid}.blog-card{border:1px solid var(--post-border);background:var(--post-hero);min-height:300px;color:var(--post-fg);border-radius:14px;flex-direction:column;gap:12px;padding:24px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex}.blog-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -24px #00000073}.blog-card-kicker{font-family:var(--blog-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--post-accent);font-size:12px}.blog-card h2{font-size:clamp(22px,2.4vw,26px);line-height:1.2}.blog-card p{color:var(--post-muted);margin:0;font-size:15px;line-height:1.55}.blog-card-meta{margin-top:auto!important;font-size:13px!important}.post{--post-font-display:var(--blog-serif);--post-font-body:var(--blog-sans);--post-font-mono:var(--blog-mono);--post-measure:68ch;background:var(--post-bg);color:var(--post-fg);font-family:var(--post-font-body)}.post-wrap{width:min(1120px,100% - 32px);margin-inline:auto}.post-progress{z-index:50;background:var(--post-accent);transform-origin:0;height:3px;transform:scaleX(var(--progress,0));position:fixed;inset:0 0 auto}.post-hero{background:var(--post-hero);border-bottom:1px solid var(--post-border);padding-block:clamp(40px,8vw,96px) clamp(28px,5vw,56px)}.post-kicker{font-family:var(--post-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--post-accent);font-size:12px}.post-title{max-width:20ch;font-family:var(--post-font-display);margin-top:16px;font-size:clamp(34px,6vw,64px);font-weight:600;line-height:1.05}.post-dek{max-width:60ch;color:var(--post-muted);margin-top:18px;font-size:clamp(17px,2vw,20px);line-height:1.5}.post-byline{color:var(--post-muted);margin-top:22px;font-size:14px}.post-preview{border:1px dashed var(--post-accent);border-radius:8px;width:min(1120px,100% - 32px);margin:16px auto 0;padding:10px 14px;font-size:14px}.post-layout{padding-block:clamp(28px,5vw,56px);display:block}.post-body{min-width:0;max-width:var(--post-measure);font-size:18px;line-height:1.7}.post-body>*+*{margin-top:1.1em}.post-body h2{font-family:var(--post-font-display);margin-top:2.2em;scroll-margin-top:24px;font-size:clamp(26px,3.2vw,34px);font-weight:600;line-height:1.15}.post-body h3{font-family:var(--post-font-display);margin-top:1.8em;font-size:clamp(20px,2.4vw,24px);font-weight:600}.post-body p,.post-body li{overflow-wrap:anywhere}.post-body ul,.post-body ol{padding-left:1.3em}.post-body li+li{margin-top:.4em}.post-body a{color:var(--post-accent);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.post-body blockquote{border-left:3px solid var(--post-accent);font-family:var(--post-font-display);margin-inline:0;padding-left:18px;font-size:1.15em}.post-body :not(pre)>code{background:var(--post-surface);font-family:var(--post-font-mono);border-radius:4px;padding:.1em .35em;font-size:.88em}.post-disclosure,.post-callout{border:1px solid var(--post-border);border-left:3px solid var(--post-accent);background:var(--post-surface);border-radius:8px;padding:14px 16px;font-size:16px;line-height:1.55}.post-callout-title{margin-bottom:6px;font-weight:600}.post-cite{white-space:nowrap;font-size:.72em;line-height:0}.post-cite a{text-decoration:none!important}.post-figure{margin:2em 0}.post-figure figcaption,.post-code figcaption{color:var(--post-muted);margin-top:10px;font-size:14px;line-height:1.5}.post-figure.is-wide{width:min(100vw - 32px,1000px);max-width:none}.post-code{margin:1.6em 0}.post-code figcaption{font-family:var(--post-font-mono);margin:0 0 8px;font-size:13px}.post-code-body pre{font-family:var(--post-font-mono);border-radius:10px;margin:0;padding:16px 18px;font-size:14px;line-height:1.6;overflow-x:auto}.post-sources{border-top:1px solid var(--post-border);margin-top:3em;padding-top:1.5em;font-size:15px;line-height:1.55}.post-sources h2{margin-top:0;font-size:22px}.post-sources ol{padding-left:1.4em}.post-sources li{scroll-margin-top:24px}.post-sources li:target{background:var(--post-surface)}.post-source-meta,.post-source-note{color:var(--post-muted)}.post-end{border-top:1px solid var(--post-border);flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding-block:28px 8px;font-size:15px;display:flex}.post-end a{color:var(--post-accent)}.post-toc{margin-bottom:24px;font-size:14px}.post-toc ol{margin:8px 0 0;padding-left:1.2em}.post-toc li+li{margin-top:6px}.post-toc a{color:var(--post-muted);padding:3px 0;text-decoration:none;display:inline-block}.post-toc a[aria-current=location]{color:var(--post-fg);font-weight:600}.post-toc-mobile{border:1px solid var(--post-border);background:var(--post-surface);border-radius:8px;padding:12px 14px}.post-toc-mobile summary{cursor:pointer;font-weight:600}.post-toc-desktop{display:none}.post-toc-title{font-family:var(--post-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--post-muted);font-size:12px}@media (min-width:1024px){.post-layout.has-toc{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:56px;display:grid}.post-toc{margin-bottom:0;position:sticky;top:24px}.post-toc-mobile{display:none}.post-toc-desktop{display:block}}@media (max-width:520px){.post-body{font-size:17px}}@media (prefers-reduced-motion:reduce){.blog-card{transition:none}.blog-card:hover{transform:none}}.post-body ul{list-style:outside}.post-body ol,.post-sources ol,.post-toc ol{list-style:decimal}.post-code-body pre,.post-code-body code{font-family:var(--post-font-mono);font-variant-ligatures:none}.post-layout.has-toc .post-figure.is-wide{width:100%}.blog-root .blog-card{color:var(--post-fg)}.post-toc a{display:block}
