.blog-head{padding-block:var(--sp-8) var(--sp-6)}.blog-title{margin:0;font-size:var(--fs-h1);line-height:1.05;letter-spacing:-.035em;font-weight:600}.blog-lead{margin:var(--sp-3) 0 0;max-width:40rem;font-size:var(--fs-lead);line-height:1.5;color:var(--text-muted);text-wrap:pretty}@media (max-width:767.98px){.blog-head{padding-block:var(--sp-7) var(--sp-5)}}.blog-index{padding-bottom:var(--section-y)}.posts-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--sp-7) var(--gutter);gap:var(--sp-7) var(--gutter)}@media (max-width:1023.98px){.posts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:559.98px){.posts-grid{grid-template-columns:minmax(0,1fr);gap:var(--sp-6)}}.posts-card{margin:0}.posts-card-link{display:flex;flex-direction:column;gap:14px;color:inherit;text-decoration:none;border-radius:var(--radius)}.posts-card-link:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.posts-card-title{margin:0;padding-inline:2px;font-size:1.25rem;line-height:1.3;letter-spacing:-.015em;font-weight:600;text-wrap:balance;color:var(--text)}.posts-card-meta{padding-inline:2px;font-size:var(--fs-caption);color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.posts-card-link:hover .posts-card-frame{border-color:var(--border-strong)}.posts-card-link:hover .posts-card-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.posts-card-frame{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-sunken);background-image:radial-gradient(80% 55% at 50% 100%,var(--hover),transparent 72%);transition:border-color .18s var(--ease-in)}.blog-post{padding-bottom:var(--section-y)}.blog-post-grid{display:grid;grid-template-columns:minmax(0,48rem);justify-content:center;grid-column-gap:var(--sp-8);column-gap:var(--sp-8);padding-top:var(--sp-8)}.blog-post-toc{display:none}@media (min-width:1280px){.blog-post-grid{grid-template-columns:13rem minmax(0,48rem)}.blog-post-toc{display:block;grid-column:1;grid-row:2;position:-webkit-sticky;position:sticky;top:calc(var(--nav-h) + var(--sp-7));align-self:start}.blog-post-head,.blog-prose{grid-column:2}}.blog-post-head{grid-row:1}.blog-prose{grid-row:2}@media (max-width:767.98px){.blog-post-grid{padding-top:var(--sp-7)}}.blog-post-cat{margin:0 0 var(--sp-4);font-size:var(--fs-ui);color:var(--text-muted)}.blog-post-cat a{color:inherit;text-decoration:none}.blog-post-cat a:hover{color:var(--text)}.blog-post-title{margin:0;font-size:var(--fs-h1);line-height:1.06;letter-spacing:-.035em;font-weight:600;text-wrap:balance}.blog-post-meta{margin:var(--sp-5) 0 0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:var(--fs-md);color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.blog-post-meta b{font-weight:500;color:var(--text-2)}.blog-post-rule{margin:var(--sp-6) 0;border:0;border-top:1px dashed var(--border-strong)}.blog-post-tldr{margin:0 0 var(--sp-7);padding:18px 20px;border-radius:14px;background:var(--bg-subtle);border:1px solid var(--border)}.blog-post-tldr .eyebrow{display:block;margin-bottom:6px}.blog-post-tldr p{margin:0;font-size:var(--fs-body);line-height:1.6;color:var(--text)}.blog-post-toc .docs-toc{max-height:calc(100vh - var(--nav-h) - var(--sp-9));overflow-y:auto}.blog-prose{font-size:var(--fs-body);line-height:1.75;color:var(--text-2);letter-spacing:-.008em}.blog-prose>:first-child{margin-top:0}.blog-prose p{margin:0 0 1.25em}.blog-prose h2{margin:2.2em 0 .6em;font-size:1.625rem;line-height:1.2;letter-spacing:-.02em;text-wrap:balance}.blog-prose h2,.blog-prose h3{font-weight:600;color:var(--text);scroll-margin-top:calc(var(--nav-h) + var(--sp-5))}.blog-prose h3{margin:1.8em 0 .5em;font-size:1.25rem;line-height:1.3;letter-spacing:-.015em}.blog-prose strong{color:var(--text);font-weight:600}.blog-prose a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong)}.blog-prose a:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.blog-prose ol,.blog-prose ul{margin:0 0 1.25em;padding-left:1.4em}.blog-prose li{margin:.4em 0}.blog-prose li::marker{color:var(--text-muted)}.blog-prose :not(pre)>code{font-family:var(--font-mono);font-size:.85em;padding:2px 6px;border-radius:6px;background:var(--surface-sunken);border:1px solid var(--border);color:var(--text)}.blog-prose pre{margin:1.5em 0;padding:18px 20px;border-radius:12px;background:var(--dev-band);border:1px solid var(--dev-band-border);font-size:.8125rem;line-height:1.7;overflow-x:auto}.blog-prose pre code{font-family:var(--font-mono);color:var(--code-text);background:none;border:0;padding:0}.blog-prose blockquote{margin:1.5em 0;padding:2px 0 2px 20px;border-left:2px solid var(--border-strong);color:var(--text-muted)}.blog-prose hr{margin:2.5em 0;border:0;border-top:1px solid var(--border)}.blog-prose img{display:block;max-width:100%;height:auto;border-radius:12px;border:1px solid var(--border)}.blog-prose table{width:100%;border-collapse:collapse;margin:0 0 1.5em;font-size:var(--fs-ui);line-height:1.5}.blog-prose td,.blog-prose th{text-align:left;vertical-align:top;padding:10px 12px 10px 0;border-bottom:1px solid var(--border)}.blog-prose th{color:var(--text);font-weight:600}.blog-prose>p:last-child em{color:var(--text-muted)}.blog-post-more .section-head{margin-bottom:var(--sp-6)}