.blog-index{position:relative;z-index:2;gap:clamp(56px,8vh,88px);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;margin-bottom:calc(var(--head-gap) - clamp(56px, 8vh, 88px))}@media (min-width:1100px){.blog-index-head,.blog-section-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-kicker-link{text-decoration:none;transition:color .15s ease}.blog-kicker-link:hover,.blog-title{color:var(--bone)}.blog-title{max-width:1000px;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;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.blog-index-lede{max-width:560px;color:var(--mist);font-size:16px;line-height:1.55;text-wrap:pretty}.blog-topics{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:8px}.blog-topics a{color:var(--mist);font:500 12px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transition:color .15s ease}.blog-link,.blog-topics a:hover{color:var(--bone)}.blog-link{display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid var(--bone);font:500 13px/16px var(--font-body);letter-spacing:0;text-transform:none;text-decoration:none;white-space:nowrap;transition:color .15s ease,border-color .15s ease}.blog-link:hover{color:var(--mist);border-color:var(--mist)}.blog-link-aside{color:var(--mist);border-color:var(--line-strong)}.blog-link-aside:hover{color:var(--bone);border-color:var(--bone)}.blog-nb{white-space:nowrap}.blog-feature{border:1px solid var(--line);background:var(--ink)}.blog-feature-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:10px clamp(24px,3vw,40px);border-bottom:1px solid var(--line)}.blog-feature-controls{display:flex;align-items:center;gap:12px}.blog-feature-count{margin-right:4px;color:var(--mist);font:500 12px/1 var(--font-mono);letter-spacing:.08em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.blog-feature-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--line-strong);background:var(--ink);color:var(--mist);cursor:pointer;transition:background .15s ease,color .15s ease}.blog-feature-btn:hover:not(:disabled){background:var(--surface);color:var(--bone)}.blog-feature-btn:disabled{color:var(--line-strong);cursor:default}.blog-feature-btn:focus-visible{outline:1px solid var(--accent);outline-offset:5px}.blog-feature-btn svg{width:14px;height:14px}.blog-feature-track{display:flex;margin:0;padding:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;list-style:none}.blog-feature-track::-webkit-scrollbar{display:none}.blog-feature-track:focus-visible{outline:1px solid var(--accent);outline-offset:-5px}.blog-feature-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}.blog-feature-slide>a{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-gap:clamp(24px,3vw,40px);gap:clamp(24px,3vw,40px);min-height:100%;padding:clamp(28px,3.5vw,48px) clamp(24px,3vw,40px);text-decoration:none;transition:background .15s cubic-bezier(.4,0,.2,1)}.blog-feature-slide>a:hover{background:var(--surface)}.blog-feature-slide>a:focus-visible{outline:1px solid var(--accent);outline-offset:-5px}.blog-feature-copy{display:flex;flex-direction:column;gap:16px;min-width:0;overflow-wrap:anywhere}.blog-feature-title{max-width:820px;color:var(--bone);font:500 clamp(28px,3.4vw,44px) /1.1 var(--font-body);letter-spacing:-.03em;text-wrap:balance}.blog-feature-desc{max-width:640px;color:var(--mist);font-size:16px;line-height:1.55;text-wrap:pretty}.blog-feature-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-top:auto;padding-top:16px}.blog-feature-meta .blog-cell-time{margin-top:0;padding-top:0}.blog-feature-side{position:relative;min-width:0}.blog-feature-side .blog-image{position:relative;width:100%;aspect-ratio:3/2;border:1px solid var(--line);background:var(--surface)}.blog-feature-side .blog-image img{object-fit:cover}.cover-frame{--cover-ground:var(--cover-ground-light);--cover-ink:var(--cover-ink-light);--cover-soft:var(--cover-soft-light);--cover-text:var(--cover-text-light);container-type:inline-size;width:100%}[data-theme=dark] .cover-frame{--cover-ground:var(--cover-ground-dark);--cover-ink:var(--cover-ink-dark);--cover-soft:var(--cover-soft-dark);--cover-text:var(--cover-text-dark)}.cover-tiles{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3Crect x='0.13' y='0.13' width='0.74' height='0.74' rx='0.09' fill='%23fff'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3Crect x='0.13' y='0.13' width='0.74' height='0.74' rx='0.09' fill='%23fff'/%3E%3C/svg%3E");-webkit-mask-repeat:repeat;mask-repeat:repeat}.cover-grain{background-image:url("data:image/png;base64,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");background-repeat:repeat;image-rendering:pixelated;mix-blend-mode:overlay;opacity:.4;pointer-events:none}.blog-cell .blog-cell-image,.blog-cell .cover-frame{margin-bottom:8px}.blog-cell-image{position:relative;width:100%;aspect-ratio:3/2;background:var(--surface)}.blog-cell-image img{object-fit:cover}.blog-feature-side .cover-frame{border:1px solid var(--line)}.blog-section{display:flex;flex-direction:column;gap:24px}.blog-section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 32px}.blog-section-head h2{color:var(--bone);font:500 clamp(26px,2.8vw,36px) /1.15 var(--font-body);letter-spacing:-.025em;text-wrap:balance}.blog-section-head p{max-width:560px;margin-top:8px;color:var(--mist);font-size:14px;line-height:1.6;text-wrap:pretty}.blog-section-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding-bottom:4px}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.blog-grid-drafts{margin-bottom:clamp(32px,4vw,56px)}.blog-preview-banner{position:-webkit-sticky;position:sticky;top:0;z-index:50;padding:10px 20px;background:var(--accent);color:var(--accent-ink);font-size:14px;text-align:center}.blog-preview-banner a{color:inherit;text-decoration:underline}.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-grid-3 .blog-cell:last-child:nth-child(3n+1){grid-column:1/-1}.blog-grid-3 .blog-cell:last-child:nth-child(3n+2){grid-column:span 2}.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}.blog-archive{display:flex;flex-direction:column;gap:24px}.blog-rows{margin:0;padding:0;border:1px solid var(--line);background:var(--ink);list-style:none}.blog-rows>li+li{border-top:1px solid var(--line)}.blog-row{display:grid;grid-template-columns:128px minmax(0,1fr) 200px;grid-gap:8px 24px;gap:8px 24px;align-items:baseline;padding:20px clamp(24px,3vw,40px);text-decoration:none;transition:background .15s cubic-bezier(.4,0,.2,1)}.blog-row:hover{background:var(--surface)}.blog-row:focus-visible{outline:1px solid var(--accent);outline-offset:-5px}.blog-row-empty{color:var(--mist);font-size:14px}.blog-row-date,.blog-row-meta{color:var(--mist);font:500 12px/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.blog-row-meta{justify-self:end;text-align:right}.blog-row-body{display:block;min-width:0;overflow-wrap:anywhere}.blog-row-title{display:block;color:var(--bone);font:500 18px/1.3 var(--font-body);letter-spacing:-.015em;text-wrap:balance}.blog-row-desc{display:-webkit-box;margin-top:6px;color:var(--mist);font-size:14px;line-height:1.55;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media (max-width:900px){.blog-feature-slide>a{grid-template-columns:minmax(0,1fr)}.blog-feature-side{order:-1}.blog-row{grid-template-columns:112px minmax(0,1fr)}.blog-row-meta{grid-column:2;justify-self:start;text-align:left}}@media (max-width:760px){.blog-grid,.blog-grid-3{grid-template-columns:1fr}.blog-grid-3 .blog-cell:last-child:nth-child(3n+1),.blog-grid-3 .blog-cell:last-child:nth-child(3n+2){grid-column:auto}.blog-row{grid-template-columns:minmax(0,1fr);gap:6px}.blog-row-meta{grid-column:auto}}@media (prefers-reduced-motion:reduce){.blog-cell,.blog-feature-slide>a,.blog-row{transition:none}.blog-feature-track{scroll-behavior:auto}}.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)}@media (min-width:641px){.blog-table{margin-left:-12px}.blog-table figcaption,.blog-table tbody th,.blog-table thead th:first-child{padding-left:12px}}.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{max-width:none;margin-inline:-10px;padding-inline:10px}.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-article .blog-table table{overflow:visible}.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>.blog-table.blog-wide{width:calc(100% + 64px + 220px + 12px)}.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}}