.blog-index{position:relative;z-index:2;gap:var(--head-gap);width:calc(100% - 2 * var(--gutter));max-width:var(--content-width);margin-inline:auto;padding-block:var(--sec-pad)}.blog-index,.blog-index-head{display:flex;flex-direction:column}.blog-index-head{align-items:flex-start;gap:16px}@media (min-width:1100px){.blog-index-head{padding-inline:var(--gutter)}}.blog-kicker{display:block;color:var(--mist);font:500 12px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.blog-title{max-width:1000px;color:var(--bone);font:500 clamp(38px,4.6vw,60px) /1.12 var(--font-body);letter-spacing:-.03em;text-wrap:balance}.blog-meta{color:var(--mist);font:500 12px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.blog-index-lede{max-width:560px;color:var(--mist);font-size:16px;line-height:1.55;text-wrap:pretty}.blog-nb{white-space:nowrap}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-cell{min-width:0;overflow-wrap:anywhere;display:flex;flex-direction:column;gap:12px;padding:clamp(24px,3vw,40px);background:var(--ink);text-decoration:none;transition:background .15s cubic-bezier(.4,0,.2,1)}.blog-cell:hover{background:var(--surface)}.blog-cell:focus-visible{outline:1px solid var(--accent);outline-offset:-5px}.blog-cell-wide,.blog-cell:last-child:nth-child(2n){grid-column:1/-1}.blog-cell-eyebrow{color:var(--mist);font:500 12px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.blog-cell-title{max-width:640px;color:var(--bone);font:500 24px/29px var(--font-body);letter-spacing:-.02em;text-wrap:balance}.blog-cell-desc{max-width:640px;color:var(--mist);font-size:14px;line-height:1.6}.blog-cell-time{margin-top:auto;padding-top:12px;color:var(--mist);font:500 12px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}@media (max-width:760px){.blog-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.blog-cell{transition:none}}.blog-post{position:relative;z-index:2;width:100%;padding:var(--sec-pad) var(--content-edge)}.blog-article,.blog-post-head{width:calc(100% - 2 * var(--content-inset));max-width:var(--reading-width);min-width:0;margin-inline:var(--content-inset) 0;overflow-wrap:anywhere}.blog-article>*{min-width:0;max-width:100%}.blog-post-head{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding-bottom:var(--head-gap)}.blog-post-head .back-link{display:inline-flex;align-items:center;gap:8px;margin-bottom:8px;border-bottom:1px solid var(--bone);color:var(--bone);font:500 13px/16px var(--font-body);letter-spacing:0;text-transform:none;text-decoration:none;transition:color .15s ease,border-color .15s ease}.blog-post-head .back-link:hover{color:var(--mist);border-color:var(--mist)}.blog-post-head .back-link svg{width:14px;height:14px;transform:rotate(90deg)}.blog-article>*+*{margin-top:16px}.blog-article>p{color:var(--mist);font-size:16px;line-height:1.65}.blog-article>h2{position:static;margin-top:var(--sec-pad);padding-top:var(--sec-pad);color:var(--bone);font:500 clamp(26px,2.8vw,36px) /1.15 var(--font-body);letter-spacing:-.025em;text-wrap:balance}.blog-article>h2:before{content:"";position:absolute;top:auto;left:0;right:0;height:1px;margin-top:calc(-1 * var(--sec-pad));background:var(--line);pointer-events:none}.blog-article>h2+*{margin-top:24px}.blog-article>h3{margin-top:32px;color:var(--bone);font:500 18px/1.25 var(--font-body);text-wrap:balance}.blog-article b,.blog-article strong{color:var(--bone);font-weight:500}.blog-article a{color:var(--accent);text-decoration:none;transition:color .15s ease}.blog-article a:hover{color:var(--bone)}.blog-article a:focus-visible{outline:1px solid var(--accent);outline-offset:5px}.blog-article>ol,.blog-article>ul{padding-left:1.3em;color:var(--mist)}.blog-article li{font-size:16px;line-height:1.65;margin-top:8px}.blog-article li::marker{color:var(--line-strong)}.blog-article>blockquote{margin-left:0;padding:0;border:0;color:var(--bone);font:500 18px/1.5 var(--font-body)}.blog-article :is(img,video,iframe,svg){display:block;max-width:100%}.blog-article :is(img,video){height:auto}.blog-article>.blog-figure,.blog-article>.blog-figure+*{margin-top:40px}.blog-figure-frame{display:flex;justify-content:center;width:100%;min-width:0;container-type:inline-size;padding:clamp(24px,3vw,40px) var(--gutter);border:1px solid var(--line);background:var(--surface)}.blog-figure-frame>*{min-width:0;max-width:100%}.blog-figure-frame svg{display:block;width:100%;height:auto}.blog-figure-frame rect{rx:0;ry:0}.blog-diagram{width:100%}.blog-diagram-compact{display:none;font:400 12px/1.6 var(--font-mono)}.blog-diagram-label{margin-bottom:20px;color:var(--mist)}.blog-diagram-compact ol{display:grid;grid-gap:12px;gap:12px;padding:0;list-style:none}.blog-diagram-compact li{position:relative;min-width:0;margin:0;padding:12px;border:1px solid var(--line);font:inherit}.blog-diagram-compact li[data-accent]{border-color:var(--accent)}.blog-diagram-compact small{display:block;margin-top:4px;color:var(--mist);font:inherit}.blog-diagram-flow>li+li:before{content:"";position:absolute;height:13px;bottom:100%;left:50%;border-left:1px solid var(--line-strong)}.blog-diagram-meter{display:block;height:8px;margin-top:12px;background:var(--line)}.blog-diagram-meter i{display:block;height:100%;background:var(--mist)}[data-accent]>.blog-diagram-meter i{background:var(--accent)}.blog-diagram-note{margin-top:20px;color:var(--mist)}@container (max-width: 480px){.blog-diagram>svg{display:none}.blog-diagram-compact{display:block}}.blog-figure figcaption{max-width:100%;margin-top:12px;color:var(--mist);font:400 11px/1.5 var(--font-mono);letter-spacing:.03em}.blog-article>.blog-code{width:100%;max-width:100%;margin-top:24px;margin-inline:0}.blog-article>.blog-code+*{margin-top:24px}.blog-code .code-lang{cursor:default}.blog-code .tk-kw{font-weight:500}.blog-article pre,.blog-article table{max-width:100%;overflow-x:auto;overflow-wrap:normal}.blog-article table{display:block}.blog-article .blog-image{position:relative;width:100%;aspect-ratio:16/10}.blog-article .blog-image img{object-fit:contain}.blog-article .blog-author-image{width:56px;aspect-ratio:1}@media (max-width:700px){.blog-index,.blog-post{padding-top:48px;padding-bottom:48px}}.blog-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:16px;gap:16px;min-height:64px}.blog-pagination>:last-child{justify-self:end}.blog-pagination>div{display:flex;align-items:center;gap:4px}.blog-pagination a,.blog-pagination span{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;color:var(--mist);font:500 12px/1 var(--font-mono);text-decoration:none}.blog-pagination a[aria-current=page]{color:var(--bone)}