.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)}@media (max-width:600px){.blog-code .code-body-dark{grid-template-columns:18px minmax(0,1fr);gap:0 12px;padding:18px 14px;background:linear-gradient(to left,var(--ink) 22px,transparent) 100% /44px 100% no-repeat local,linear-gradient(to left,rgba(255,255,255,.18),transparent) 100% /22px 100% no-repeat scroll,var(--ink)}}.blog-answer{padding:24px;border:1px solid var(--line);background:var(--surface)}.blog-answer h2{margin:0;color:var(--mist);font:500 11px/1.3 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.blog-answer ul,.blog-choice ul{margin:0;padding:0;list-style:none}.blog-answer ul{margin-top:12px}.blog-answer li,.blog-choice li{position:relative;padding-left:20px}.blog-answer li{margin-top:10px;color:var(--bone);font-size:15px;line-height:1.55}.blog-answer li:before,.blog-choice li:before{content:"";position:absolute;top:.62em;left:0;width:6px;height:6px;background:var(--line-strong)}.blog-answer li:before,.blog-choice.is-hl li:before{background:var(--accent)}.blog-article>.blog-choices,.blog-article>.blog-choices+*,.blog-article>.blog-table,.blog-article>.blog-table+*{margin-top:32px}.blog-table{margin-inline:0;overflow-x:auto}.blog-article .blog-table table{display:table;width:100%;border-collapse:collapse;font:400 14px/1.55 var(--font-body)}.blog-table thead th{padding:16px 14px 12px;border-bottom:1px solid var(--line-strong);color:var(--mist);font:500 11px/1.3 var(--font-mono);letter-spacing:.06em;text-align:left;text-transform:uppercase;vertical-align:bottom}.blog-table tbody th,.blog-table td{padding:14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.blog-table tbody th,.blog-table thead th:first-child{padding-left:0}.blog-table tbody th{width:27%;color:var(--bone);font-weight:500}.blog-table td{color:var(--mist)}.blog-table .is-hl,.blog-table tr.is-hl>*{background:color-mix(in srgb,var(--accent) 7%,transparent);color:var(--bone)}.blog-table thead th.is-hl{color:var(--accent)}.blog-table tr.is-hl>th{padding-left:14px}.blog-table-line{display:block}.blog-table-line+.blog-table-line{margin-top:6px}.blog-table figcaption{margin-top:12px;color:var(--mist);font-size:13px}.blog-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.blog-choice{padding:24px;border:1px solid var(--line);background:var(--surface)}.blog-choice.is-hl{border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.blog-article .blog-choice h3{margin:0;color:var(--bone);font:500 16px/1.3 var(--font-body)}.blog-article .blog-choice li{margin-top:12px;color:var(--mist);font-size:14.5px;line-height:1.55}@media (max-width:640px){.blog-table thead{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%)}.blog-article .blog-table table,.blog-table tbody,.blog-table tbody th,.blog-table td,.blog-table tr{display:block;width:auto}.blog-table tr{padding:16px 0;border-bottom:1px solid var(--line)}.blog-table tr:first-child{border-top:1px solid var(--line-strong)}.blog-table tbody th,.blog-table td,.blog-table tr.is-hl>th{padding:0;border:0;background:none}.blog-table tbody th{margin-bottom:8px}.blog-table td{display:grid;grid-template-columns:minmax(88px,34%) minmax(0,1fr);grid-gap:12px;gap:12px;padding:6px 0}.blog-table td:before{content:attr(data-label);color:var(--mist);font:500 10.5px/1.9 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.blog-table td.is-hl,.blog-table tr.is-hl{margin-inline:-10px;padding-inline:10px;background:color-mix(in srgb,var(--accent) 7%,transparent)}.blog-table tr.is-hl>*{background:none}.blog-choices{grid-template-columns:minmax(0,1fr)}}.blog-table code{-webkit-box-decoration-break:clone;box-decoration-break:clone;font-size:12px}.blog-toc{display:none}@media (min-width:1100px){.blog-post-wide .blog-post-head{max-width:none}.blog-post-body{display:grid;grid-template-columns:minmax(0,1fr) 220px;grid-column-gap:64px;column-gap:64px;width:calc(100% - 2 * var(--content-inset));margin-inline:var(--content-inset) 0}.blog-post-body>.blog-article{width:auto;max-width:none;margin:0}.blog-post-body .blog-article>*{max-width:720px}.blog-post-body .blog-article>.blog-wide{width:calc(100% + 64px + 220px);max-width:none}.blog-post-body .blog-article>ol>li,.blog-post-body .blog-article>p,.blog-post-body .blog-article>ul>li{font-size:17px}.blog-post-body .blog-table tbody th{width:20%}.blog-toc{display:block;position:-webkit-sticky;position:sticky;top:104px;grid-column:2;grid-row:1;align-self:start;max-height:calc(100vh - 140px);overflow-y:auto;font:400 13px/1.45 var(--font-body);transition:opacity .2s ease,visibility .2s ease}.blog-toc[data-covered]{opacity:0;visibility:hidden}}.blog-toc-label{display:block;margin-bottom:14px;color:var(--mist);font:500 11px/1.3 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.blog-toc ol{margin:0;padding:0;list-style:none}.blog-toc li+li{margin-top:10px}.blog-toc a{color:var(--mist);text-decoration:none;transition:color .15s ease}.blog-toc a:hover,.blog-toc a[aria-current]{color:var(--bone)}.blog-post-wide{--act-pad:clamp(56px,8vh,80px)}.blog-post-wide .blog-article>h2{margin-top:var(--act-pad);padding-top:var(--act-pad)}.blog-post-wide .blog-article>h2:before{margin-top:calc(-1 * var(--act-pad))}.blog-article>.blog-faq{position:static;margin-top:var(--act-pad,var(--sec-pad));padding-top:var(--act-pad,var(--sec-pad))}.blog-article>.blog-faq:before{content:"";position:absolute;left:0;right:0;height:1px;margin-top:calc(-1 * var(--act-pad, var(--sec-pad)));background:var(--line);pointer-events:none}.blog-faq h2{margin:0 0 24px;color:var(--bone);font:500 clamp(26px,2.8vw,36px) /1.15 var(--font-body);letter-spacing:-.025em}.blog-faq details{border-top:1px solid var(--line)}.blog-faq details:last-child{border-bottom:1px solid var(--line)}.blog-faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0;color:var(--bone);font:500 16px/1.4 var(--font-body);list-style:none;cursor:pointer}.blog-faq summary::-webkit-details-marker{display:none}.blog-faq summary:focus-visible{outline:1px solid var(--accent);outline-offset:4px}.blog-faq-toggle{flex:none;color:var(--mist);font:400 18px/1 var(--font-mono)}.blog-faq details[open] .blog-faq-plus,.blog-faq-minus{display:none}.blog-faq details[open] .blog-faq-minus{display:inline}.blog-faq-answer{max-width:680px;padding-bottom:20px;color:var(--mist);font-size:16px;line-height:1.65}@media (min-width:1100px){.blog-post-body .blog-article>h2{max-width:960px}}