.blog-shell{min-height:100vh;margin:auto}.blog-panel{padding-inline:40px}.blog-footer nav{align-items:center;gap:24px;display:flex}.blog-footer a{font-size:12px}.blog-intro{padding:28px 0 24px}.blog-eyebrow{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:hsl(var(--ink-muted));font-size:11px}.blog-intro h1{letter-spacing:-.04em;margin:0;font-size:clamp(30px,3.5vw,42px);line-height:1.08}.blog-search{padding:0 0 28px}.blog-search label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;font-size:11px;display:block}.blog-search input{border:1px solid hsl(var(--line-strong));background:0 0;border-radius:0;width:100%;padding:12px 14px 12px 44px;font-size:16px}.blog-search-field{position:relative}.blog-search-field>svg{color:hsl(var(--ink-muted));pointer-events:none;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.blog-search-status:not(:empty){color:hsl(var(--ink-muted));margin-top:16px;font-size:13px}.blog-search-status button{text-underline-offset:4px;text-decoration:underline}.blog-post-list{--card-padding:24px;margin-inline:calc(-1 * var(--card-padding))}.blog-post-list>li{border-top:1px solid hsl(var(--line));padding:var(--card-padding);grid-template-columns:224px minmax(0,1fr) 20px;align-items:center;gap:24px;min-height:216px;display:grid}.blog-post-thumbnail{border:1px solid hsl(var(--line));background:#fff;align-self:stretch;min-height:168px;display:block;position:relative;overflow:hidden}.blog-post-thumbnail img{object-fit:cover;width:100%;height:100%;transition:transform .24s;position:absolute;inset:0}@media (prefers-reduced-motion:no-preference){.blog-post-list>li:focus-within .blog-post-thumbnail img{transform:scale(1.06)}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.blog-post-list>li:hover .blog-post-thumbnail img{transform:scale(1.06)}}.blog-post-date{font-family:var(--font-mono);color:hsl(var(--ink-muted));margin-bottom:8px;font-size:11px}.blog-post-list h2{letter-spacing:-.035em;font-size:22px;line-height:1.35}.blog-post-list .blog-tags{margin-top:12px}.blog-tags{font-family:var(--font-mono);color:hsl(var(--ink-muted));flex-wrap:wrap;gap:8px;font-size:11px;display:flex}.blog-tags>a:hover{text-decoration:none}.blog-tags>a:hover>div{background:hsl(var(--secondary))}.blog-tags>a>div{color:hsl(var(--ink-muted));border-color:hsl(var(--line-strong));font-size:11px;font-weight:400;line-height:1rem}.blog-list-arrow{color:hsl(var(--ink-muted))}.blog-footer{color:hsl(var(--ink-muted));justify-content:space-between;gap:24px;padding:24px 0;font-size:12px;display:flex}.blog-prose [id]{scroll-margin-top:24px}.blog-article{max-width:760px;margin:auto}.blog-article-body{min-width:0}.article-header{padding:32px 0 24px}.article-header h1{letter-spacing:-.045em;margin:24px 0;font-size:clamp(30px,4vw,44px);line-height:1.12}.article-byline{color:hsl(var(--ink-muted));margin-bottom:20px;font-size:12px}.article-byline span{padding:0 10px}.article-cover{object-fit:contain;background:#fff;max-width:100%;height:auto;margin:8px auto 32px}.blog-toc{border-block:1px solid hsl(var(--line));margin-bottom:36px}.blog-toc-title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px;font-size:11px;display:none}.blog-toc .blog-toc-toggle{justify-content:space-between;width:100%;height:48px;padding-inline:12px}.blog-toc nav[data-open=false]{display:none}.blog-toc ol{gap:4px;padding:8px 0;display:grid}.blog-toc .blog-toc-link{white-space:normal;text-align:left;width:100%;height:auto;min-height:44px;color:hsl(var(--ink-muted));overflow-wrap:anywhere;justify-content:flex-start;padding:8px 12px;font-size:12px;font-weight:400;line-height:1.5}.blog-toc .blog-toc-link[aria-current=location]{background:hsl(var(--secondary));color:hsl(var(--ink))}.blog-shell .blog-toc-link:hover{color:hsl(var(--ink));text-decoration:none}.blog-prose{overflow-wrap:break-word;font-size:16px;line-height:1.85}.blog-prose p,.blog-prose ul,.blog-prose ol{margin:20px 0}.blog-prose ul{padding-left:24px;list-style:outside}.blog-prose ol{padding-left:24px;list-style:decimal}.blog-prose h1,.blog-prose h2{letter-spacing:-.03em;margin:52px 0 20px;font-size:28px;line-height:1.3}.blog-prose h3{margin:36px 0 16px;font-size:21px}.blog-prose h4{margin:28px 0 12px;font-size:18px}.blog-prose a{text-underline-offset:4px;text-decoration:underline}.blog-prose img{background:#fff;max-width:100%;height:auto;margin:28px auto}.blog-prose pre{background:hsl(var(--secondary));border:1px solid hsl(var(--line));tab-size:4;margin:28px 0;padding:24px;font-size:12px;line-height:1.8;overflow:auto}.blog-prose code{font-family:var(--font-mono);font-size:.85em}.blog-prose :not(pre)>code{background:hsl(var(--secondary));padding:3px 5px}.blog-prose math[display=block]{margin:24px 0;padding:12px 4px;overflow:auto hidden}.blog-prose table{border-collapse:collapse;display:block;overflow:auto}.blog-prose td,.blog-prose th{border:1px solid hsl(var(--line));padding:10px 14px}.blog-prose blockquote{border-left:2px solid hsl(var(--ink-muted));background:hsl(var(--secondary));padding:1px 24px}.hljs-comment,.hljs-quote{color:hsl(var(--ink-muted));font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-title{font-weight:600}.hljs-string,.hljs-number,.hljs-built_in{color:#d9bc78}.article-updated{font-family:var(--font-mono);color:hsl(var(--ink-muted));margin:40px 0;font-size:11px}.blog-utility-heading{padding:32px 0 28px}.blog-utility-heading h1{letter-spacing:-.045em;margin-top:20px;font-size:clamp(30px,4vw,42px)}.blog-taxonomy li{border-top:1px solid hsl(var(--line))}.blog-taxonomy a{justify-content:space-between;padding:24px 0;font-size:24px;display:flex}.blog-taxonomy span{font-family:var(--font-mono);color:hsl(var(--ink-muted));font-size:12px}.blog-shell a:hover{text-underline-offset:4px;text-decoration:underline}@media (width<=700px){.blog-panel{padding-inline:20px}.blog-intro{padding:28px 0 20px}.blog-post-list{--card-padding:20px}.blog-post-list>li{grid-template-columns:120px minmax(0,1fr);gap:16px}.blog-post-thumbnail{min-height:148px}.blog-list-arrow{display:none}.blog-post-list h2{font-size:19px}.blog-footer{flex-direction:column}.blog-footer nav{flex-wrap:wrap;gap:20px}.article-header{padding-top:28px}.blog-prose{font-size:16px}.blog-prose pre{padding:16px}.blog-prose math{font-size:1.05em}}.blog-animation{width:100%;margin:28px auto;display:block}.blog-animation img{width:100%;margin:0}.blog-animation button{margin:8px 0;font-size:12px;text-decoration:underline;display:block}.blog-animation>[role=img]{aspect-ratio:inherit;background:hsl(var(--secondary));display:block}.blog-prose math{font-family:math}@media (width>=1024px){.blog-panel{padding-inline:96px}.blog-article-with-toc{grid-template-columns:minmax(0,1fr) 208px;column-gap:40px;max-width:none;display:grid}.blog-article-with-toc>.article-header,.blog-article-with-toc>.blog-article-body{grid-column:1}.blog-toc{border:0;grid-area:1/2/span 2;margin:32px 0}.blog-toc-sticky{overscroll-behavior:contain;scrollbar-width:thin;max-height:calc(100dvh - 128px);position:sticky;top:96px;overflow-y:auto}.blog-toc-title,.blog-toc nav[data-open=false]{display:block}.blog-toc .blog-toc-toggle{display:none}.blog-toc .blog-toc-link{min-height:36px}}
