.blog-editorial{--blog-gutter:clamp(16px, 4vw, 32px);--blog-topbar-h:64px;--blog-anchor-scroll-margin:152px;--blog-rail-w:0px;--blog-bg:#f7f6f2;--blog-bg-raised:#fff;--blog-bg-sunken:#efede5;--blog-ink:#0a0a0a;--blog-ink-2:#222;--blog-ink-3:#6b6b6b;--blog-ink-4:#9a9a94;--blog-rule:#e3e2dc;--blog-rule-soft:#ebe9e1;--blog-accent:#c4fba4;background:var(--blog-bg);min-height:100vh;color:var(--blog-ink);font-family:var(--font-inter-tight), "Inter Tight", system-ui, sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"ss01", "cv11";letter-spacing:-.01em}.blog-editorial *,.blog-editorial :before,.blog-editorial :after{box-sizing:border-box}.blog-editorial a{color:inherit}.blog-container{width:100%;padding-inline:var(--blog-gutter);min-width:0;margin:0 auto}@media (min-width:1024px){.blog-editorial{--blog-rail-w:220px}}@media (min-width:1280px){.blog-editorial{--blog-rail-w:240px}}@media (min-width:1680px){.blog-editorial{--blog-rail-w:260px}}@media (min-width:1920px){.blog-editorial{--blog-rail-w:280px}}.blog-topbar{z-index:50;height:var(--blog-topbar-h);background:var(--blog-bg);box-shadow:inset 0 -1px 0 var(--blog-rule);position:sticky;top:0;transform:translate(0,0)}.blog-topbar-inner{width:100%;max-width:none;height:100%;padding-inline:var(--blog-gutter);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;display:grid}@media (min-width:1024px){.blog-topbar-inner{padding-left:calc(220px + var(--blog-gutter))}}@media (min-width:1280px){.blog-topbar-inner{padding-left:calc(240px + var(--blog-gutter))}}@media (min-width:1680px){.blog-topbar-inner{padding-left:calc(260px + var(--blog-gutter))}}@media (min-width:1920px){.blog-topbar-inner{padding-left:calc(280px + var(--blog-gutter))}}.blog-brand{color:var(--blog-ink);letter-spacing:-.025em;grid-column:1;justify-self:start;align-items:center;gap:10px;font-size:19px;font-weight:600;text-decoration:none;display:inline-flex}.blog-brand-mark{flex:none;width:32px;height:32px;display:inline-block}.blog-brand-mark svg{width:100%;height:100%;display:block}.blog-topnav{grid-column:2;justify-self:center;align-items:center;gap:28px;display:none}@media (min-width:860px){.blog-topnav{display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}}.blog-topnav a{min-height:32px;color:var(--blog-ink-2);align-items:center;font-size:14px;font-weight:500;text-decoration:none;transition:color .15s;display:inline-flex;position:relative}.blog-topnav a:hover{color:var(--blog-ink)}.blog-topnav a[aria-current=page]{z-index:0;color:var(--blog-ink);font-weight:900}.blog-topnav a[aria-current=page]:after{content:"";z-index:-1;background:var(--blog-accent);height:.58em;position:absolute;bottom:6px;left:-4px;right:-4px}.blog-topbar-actions{grid-column:3;justify-self:end;align-items:center;gap:8px;display:inline-flex}.blog-editorial .blog-format-chip{border:1px solid var(--blog-rule);background:var(--blog-bg-raised);min-height:28px;color:var(--blog-ink-2);font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.02em;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:500;text-decoration:none;transition:border-color .15s,color .15s;display:inline-flex}.blog-editorial .blog-format-chip:hover{border-color:var(--blog-ink);color:var(--blog-ink)}@media (max-width:429px){.blog-rss-chip{display:none}}.blog-editorial .blog-btn{white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:9px 18px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.blog-editorial .blog-btn-primary{background:var(--blog-ink);color:var(--blog-bg-raised)}.blog-editorial .blog-btn-primary:hover{color:var(--blog-bg-raised);background:#222}.blog-editorial .blog-btn-sm{padding:4px 14px;font-size:12px}@media (max-width:429px){.blog-topbar-inner{gap:12px}.blog-brand{gap:8px;font-size:18px}.blog-topbar-actions{gap:6px}.blog-btn-sm{padding-inline:10px}}.blog-layout{min-height:calc(100vh - var(--blog-topbar-h));grid-template-columns:1fr;display:grid;position:relative}@media (min-width:1024px){.blog-layout{grid-template-columns:var(--blog-rail-w) minmax(0, 1fr)}.blog-layout:after{content:"";z-index:30;top:0;bottom:0;left:var(--blog-rail-w);background:var(--blog-rule);pointer-events:none;width:1px;position:absolute}}.blog-left-rail{display:none}@media (min-width:1024px){.blog-left-rail{top:var(--blog-topbar-h);max-height:calc(100vh - var(--blog-topbar-h));background:var(--blog-bg);will-change:transform;align-self:start;padding:32px 20px;display:block;position:sticky;overflow-y:auto;transform:translate(0,0)}}@media (min-width:1680px){.blog-left-rail{padding:40px 28px}}.blog-rail-heading{color:var(--blog-ink-4);font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.12em;text-transform:uppercase;margin:0;padding:0 12px 14px;font-size:10px;font-weight:700;display:block}.blog-left-rail::-webkit-scrollbar{width:6px}.blog-left-rail::-webkit-scrollbar-thumb{background:var(--blog-rule);border-radius:999px}.blog-rail-sections{flex-direction:column;gap:2px;display:flex}.blog-rail-group{flex-direction:column;gap:4px;display:flex}.blog-rail-item{color:var(--blog-ink-3);padding:8px 12px;text-decoration:none;transition:color .15s;display:block;position:relative}.blog-rail-item:hover{color:var(--blog-ink)}.blog-rail-item.is-active{color:var(--blog-ink);box-shadow:inset 2px 0 0 var(--blog-accent)}.blog-rail-item-name{font-family:var(--font-inter-tight), sans-serif;letter-spacing:-.005em;font-size:14px;font-weight:500;line-height:1.3}.blog-main-column{--blog-main-pad-x:clamp(20px, 4vw, 48px);min-width:0;padding:0 var(--blog-main-pad-x) 96px}@media (min-width:1024px){.blog-main-column{--blog-main-pad-x:clamp(32px, 5vw, 72px);padding-bottom:96px}}@media (min-width:1920px){.blog-main-column{--blog-main-pad-x:clamp(48px, 5vw, 112px);padding-bottom:120px}}.blog-eyebrow{color:var(--blog-ink-3);font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:8px;margin:0;font-size:10.5px;font-weight:600;line-height:1;display:inline-flex}.blog-eyebrow:before{content:"";background:var(--blog-accent);border-radius:2px;width:6px;height:6px;display:inline-block}.blog-tag-list{flex-wrap:wrap;gap:6px;display:flex}.blog-tag-list a,.blog-tag-list span{border:1px solid var(--blog-rule);background:color-mix(in srgb, var(--blog-bg-sunken) 72%, transparent);min-height:22px;color:var(--blog-ink-3);font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.01em;white-space:nowrap;border-radius:4px;align-items:center;padding:2px 7px;font-size:11px;font-weight:500;line-height:1.3;text-decoration:none;display:inline-flex}.blog-tag-list a{transition:background .15s,border-color .15s,color .15s}.blog-tag-list a:hover,.blog-tag-list a:focus-visible{border-color:var(--blog-ink-4);background:var(--blog-bg-raised);color:var(--blog-ink);outline:none}.blog-tag-list a:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--blog-accent) 55%, transparent)}.blog-mobile-rail{z-index:25;border-bottom:1px solid var(--blog-rule-soft);margin-bottom:8px;padding:18px 0 10px;display:block;position:relative}@media (min-width:1024px){.blog-mobile-rail{display:none}}.blog-mobile-dropdown{min-width:0;position:relative}.blog-mobile-dropdown-trigger{border:1px solid var(--blog-rule);background:var(--blog-bg-raised);min-height:52px;color:var(--blog-ink);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;list-style:none;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.blog-mobile-dropdown-trigger::-webkit-details-marker{display:none}.blog-mobile-dropdown-trigger:hover,.blog-mobile-dropdown[open] .blog-mobile-dropdown-trigger{border-color:var(--blog-ink);box-shadow:0 6px 14px #0a0a0a14}.blog-mobile-dropdown-copy{gap:2px;min-width:0;display:grid}.blog-mobile-dropdown-kicker,.blog-mobile-dropdown-label{color:var(--blog-ink-4);font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700;display:block}.blog-mobile-dropdown-title{color:var(--blog-ink);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}.blog-mobile-dropdown-current{color:var(--blog-ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.blog-mobile-dropdown-chev{width:28px;height:28px;color:var(--blog-ink-3);border-radius:999px;flex:none;justify-content:center;align-items:center;transition:transform .15s,color .15s,background .15s;display:inline-flex}.blog-mobile-dropdown[open] .blog-mobile-dropdown-chev{color:var(--blog-ink);background:var(--blog-bg-sunken);transform:rotate(180deg)}.blog-mobile-dropdown-panel{z-index:30;border:1px solid var(--blog-rule);background:var(--blog-bg-raised);border-radius:8px;gap:12px;max-height:min(68vh,520px);padding:12px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 42px #0a0a0a24}@media (min-width:720px) and (max-width:1023px){.blog-mobile-dropdown-panel{grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);align-items:start;max-height:min(60vh,460px)}}.blog-mobile-dropdown-group{gap:6px;display:grid}.blog-mobile-dropdown-item{width:100%;color:var(--blog-ink);text-align:left;background:0 0;border-radius:6px;gap:2px;padding:9px 10px;text-decoration:none;transition:background .15s,color .15s;display:grid}.blog-mobile-dropdown-item span:first-child{letter-spacing:-.005em;font-size:14px;font-weight:650}.blog-mobile-dropdown-item span:last-child{color:var(--blog-ink-3);font-size:12px;line-height:1.35}.blog-mobile-dropdown-item:hover,.blog-mobile-dropdown-item.is-active{background:var(--blog-bg-sunken)}.blog-mobile-dropdown-item.is-active{box-shadow:inset 2px 0 0 var(--blog-accent)}.blog-mobile-dropdown-toc,.blog-mobile-dropdown-toc-children{gap:2px;display:grid}.blog-mobile-dropdown-toc-children{margin-top:2px;padding-left:12px}.blog-mobile-dropdown-toc-item{color:var(--blog-ink-3);border-radius:6px;padding:7px 10px 7px 14px;font-size:13px;line-height:1.35;text-decoration:none;transition:background .15s,color .15s;display:block;position:relative}.blog-mobile-dropdown-toc-item-child{font-size:12px}.blog-mobile-dropdown-toc-item:hover,.blog-mobile-dropdown-toc-item.is-active{color:var(--blog-ink);background:var(--blog-bg-sunken)}.blog-mobile-dropdown-toc-item.is-active:before{content:"";background:var(--blog-accent);border-radius:999px;width:2px;height:14px;position:absolute;top:50%;left:6px;transform:translateY(-50%)}.blog-index-sticky-header{background:var(--blog-bg);box-shadow:inset 0 -1px 0 var(--blog-rule);margin-inline:calc(-1*clamp(20px,4vw,48px));padding-inline:clamp(20px,4vw,48px)}@media (min-width:1024px){.blog-index-sticky-header{top:var(--blog-topbar-h);z-index:20;will-change:transform;margin-inline:calc(-1*clamp(32px,5vw,72px));padding-inline:clamp(32px,5vw,72px);position:sticky;transform:translate(0,0)}.blog-index-sticky-header.is-unpinned{z-index:10;will-change:auto;position:relative;top:auto;transform:none}}@media (min-width:1920px){.blog-index-sticky-header{margin-inline:calc(-1*clamp(48px,5vw,112px));padding-inline:clamp(48px,5vw,112px)}}.blog-index-hero{padding:16px 0 20px}@media (min-width:860px){.blog-index-hero{padding:22px 0 24px}}@media (min-width:1440px){.blog-index-hero{padding:28px 0}}@media (min-width:1680px){.blog-index-hero{padding:34px 0 32px}}.blog-index-hero-meta{justify-content:space-between;align-items:center;gap:16px;margin:0 0 10px;display:flex}.blog-index-hero-kicker{align-items:center;gap:8px;min-width:0;display:inline-flex}.blog-index-hero .blog-eyebrow:before{flex:none}@media (min-width:1024px){.blog-index-hero .blog-eyebrow:before{display:none}}.blog-pin-toggle{width:14px;height:14px;color:var(--blog-ink-4);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:color .15s,transform .15s;display:none;position:relative}@media (min-width:1024px){.blog-pin-toggle{display:inline-flex}}.blog-pin-toggle:before{content:"";background:var(--blog-accent);opacity:1;border-radius:2px;width:6px;height:6px;transition:opacity .15s,transform .15s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(1)}.blog-pin-toggle svg{opacity:0;width:14px;height:14px;transition:opacity .15s,transform .15s;position:absolute;inset:0;transform:scale(.88)}.blog-index-sticky-header:hover .blog-pin-toggle{color:var(--blog-ink-3)}.blog-index-sticky-header:hover .blog-pin-toggle:before,.blog-pin-toggle:hover:before,.blog-pin-toggle:focus-visible:before{opacity:0;transform:translate(-50%,-50%)scale(.7)}.blog-index-sticky-header:hover .blog-pin-toggle svg,.blog-pin-toggle:hover svg,.blog-pin-toggle:focus-visible svg{opacity:1;transform:scale(1)}.blog-pin-toggle:hover,.blog-pin-toggle:focus-visible,.blog-pin-toggle.is-active{color:var(--blog-ink)}.blog-pin-toggle:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--blog-accent) 55%, transparent);outline:none}.blog-pin-toggle:active{transform:translateY(1px)}.blog-index-updated{color:var(--blog-ink-4);font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.02em;text-align:right;white-space:nowrap;flex:none;justify-content:flex-end;font-size:10.5px;font-weight:500;display:inline-flex}@media (max-width:520px){.blog-index-updated{display:none}}.blog-index-hero h1{max-width:820px;color:var(--blog-ink);font-family:var(--font-inter-tight), sans-serif;letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:clamp(26px,3.4vw,40px);font-weight:500;line-height:1.05}@media (max-width:859px){.blog-index-hero h1{font-size:clamp(26px,3.2vw,40px)}}@media (min-width:1280px){.blog-index-hero h1{max-width:900px;font-size:clamp(32px,2.8vw,46px)}}@media (min-width:1680px){.blog-index-hero h1{max-width:1040px;font-size:clamp(38px,2.6vw,52px)}}.blog-index-hero h1 em,.blog-index-hero h1 .hl{background:linear-gradient(180deg, transparent 60%, var(--blog-accent) 60%);color:var(--blog-ink);padding:0 4px;font-style:normal;font-weight:500}.blog-index-description{width:min(100%, var(--blog-hero-title-width,820px));max-width:100%;color:var(--blog-ink-2);margin:8px 0 0;font-size:clamp(14px,1.4vw,16px);line-height:1.5}@media (min-width:1280px){.blog-index-description{font-size:clamp(15px,1.2vw,17px)}}.blog-support-links{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.blog-support-links a{border:1px solid var(--blog-rule);background:var(--blog-bg-raised);min-height:30px;color:var(--blog-ink-2);border-radius:999px;align-items:center;padding:5px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:border-color .15s,color .15s;display:inline-flex}.blog-support-links a:hover{border-color:var(--blog-ink);color:var(--blog-ink)}.blog-active-filter{border:1px solid var(--blog-rule);background:var(--blog-bg-sunken);color:var(--blog-ink-3);border-radius:6px;align-items:center;gap:8px;margin-top:18px;padding:6px 8px;font-size:13px;line-height:1.3;display:inline-flex}.blog-active-filter span{color:var(--blog-ink-4);font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700}.blog-active-filter code{color:var(--blog-ink);font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;font-size:11.5px}.blog-active-filter a{width:20px;height:20px;color:var(--blog-ink-3);border-radius:4px;justify-content:center;align-items:center;margin-left:2px;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.blog-active-filter a:hover,.blog-active-filter a:focus-visible{background:var(--blog-bg-raised);color:var(--blog-ink);outline:none}.blog-active-filter a:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--blog-accent) 55%, transparent)}.blog-empty-state{padding:40px 0}.blog-empty-state h2{color:var(--blog-ink);margin:0;font-size:22px;font-weight:600}.blog-post-list{display:grid}.blog-post-card{border-bottom:1px solid var(--blog-rule);grid-template-columns:1fr;gap:24px;padding:34px 0;display:grid}.blog-post-card-featured{padding-top:42px}@media (min-width:960px){.blog-post-card-featured{grid-template-columns:minmax(0,.92fr) minmax(340px,.68fr);align-items:start;gap:clamp(36px,6vw,96px)}}@media (min-width:1680px){.blog-post-card{padding-block:44px}.blog-post-card-featured{grid-template-columns:minmax(0,.95fr) minmax(520px,.62fr)}}.blog-post-card-copy{min-width:0}.blog-post-meta,.blog-post-byline{color:var(--blog-ink-4);font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.02em;margin:0;font-size:11px;font-weight:500}.blog-post-card h2{max-width:780px;color:var(--blog-ink);letter-spacing:-.035em;text-wrap:balance;margin:10px 0 0;font-size:clamp(26px,3vw,46px);font-weight:500;line-height:1.03}.blog-post-card h2 a{text-decoration:none}.blog-post-card h2 a:hover{text-decoration:underline;-webkit-text-decoration-color:var(--blog-accent);text-decoration-color:var(--blog-accent);text-underline-offset:-.18em;text-decoration-skip-ink:none;text-decoration-thickness:.38em}.blog-post-card p:not(.blog-post-meta){max-width:740px;color:var(--blog-ink-2);margin:14px 0 0;font-size:16px;line-height:1.58}.blog-post-card .blog-tag-list{margin-top:18px}.blog-post-card-media{border:1px solid var(--blog-rule);background:var(--blog-bg-sunken);border-radius:8px;display:block;overflow:hidden}.blog-post-card-media img{width:100%;height:auto;transition:transform .25s;display:block}.blog-post-card-media:hover img{transform:scale(1.015)}.blog-post-main{min-width:0;padding-top:0}.blog-share-actions{flex-wrap:wrap;gap:8px;display:flex}.blog-post-share{min-width:0}.blog-share-button,.blog-share-link{border:1px solid var(--blog-rule);background:var(--blog-bg-raised);min-height:28px;color:var(--blog-ink-2);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:4px 10px;font-family:inherit;font-size:12px;font-weight:600;line-height:1.2;text-decoration:none;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.blog-share-button:hover,.blog-share-link:hover,.blog-share-button:focus-visible,.blog-share-link:focus-visible{border-color:var(--blog-ink);color:var(--blog-ink);outline:none}.blog-share-icon{flex:none;width:14px;height:14px}.blog-post-grid{grid-template-columns:minmax(0,1fr);gap:44px;display:grid}@media (min-width:1200px){.blog-post-grid{grid-template-columns:minmax(0,1fr) minmax(220px,300px);align-items:start;gap:clamp(48px,5vw,88px)}}@media (min-width:1680px){.blog-post-grid{grid-template-columns:minmax(0,1fr) minmax(280px,360px)}}.blog-post-article{min-width:0;max-width:980px}@media (min-width:1680px){.blog-post-article{max-width:1120px}}.blog-post-hero{border-bottom:1px solid var(--blog-rule);padding:44px 0 34px}@media (min-width:860px){.blog-post-hero{padding:60px 0 42px}}.blog-post-hero-meta{flex-wrap:wrap;align-items:center;gap:6px 14px;min-height:24px;display:flex}.blog-post-hero-meta .blog-eyebrow{flex:none;line-height:1.4}.blog-post-hero-meta .blog-tag-list{align-items:center;gap:5px;margin-top:0}.blog-post-hero-meta .blog-tag-list a,.blog-post-hero-meta .blog-tag-list span{min-height:20px;color:var(--blog-ink-4);background:0 0;padding:1px 6px;font-size:10.5px}.blog-post-hero h1{max-width:1020px;color:var(--blog-ink);letter-spacing:-.045em;text-wrap:balance;margin:14px 0 0;font-size:clamp(36px,5vw,74px);font-weight:500;line-height:.98}.blog-post-description{max-width:760px;color:var(--blog-ink-2);margin:18px 0 0;font-size:clamp(16px,1.35vw,20px);line-height:1.5}.blog-post-byline{color:var(--blog-ink-3)}.blog-post-byline-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 18px;margin-top:22px;display:flex}.blog-post-byline-row .blog-post-byline{flex:0 auto}.blog-post-byline-row .blog-post-share{margin-left:auto}.blog-post-byline-row .blog-share-actions{justify-content:flex-end;align-items:center}@media (max-width:640px){.blog-post-byline-row{justify-content:flex-start}.blog-post-byline-row .blog-post-share{margin-left:0}.blog-post-byline-row .blog-share-actions{justify-content:flex-start}}.blog-post-hero>.blog-tag-list{margin-top:18px}.blog-cover-figure{border:1px solid var(--blog-rule);background:var(--blog-bg-sunken);border-radius:8px;margin:34px 0 0;overflow:hidden}.blog-cover-figure img{width:100%;height:auto;display:block}.blog-mobile-toc{border-bottom:1px solid var(--blog-rule);margin-top:22px;padding-bottom:14px;display:block}@media (min-width:1024px){.blog-mobile-toc{display:none}}.blog-mobile-toc-trigger{width:100%;min-height:48px;color:var(--blog-ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:10px 0;font-family:inherit;display:flex}.blog-mobile-toc-trigger span:first-child,.blog-toc-panel h2{color:var(--blog-ink-3);font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:10px;font-weight:700}.blog-mobile-toc-trigger span:last-child{color:var(--blog-ink-3);font-size:13px;font-weight:600}.blog-desktop-toc{display:none}@media (min-width:1200px){.blog-desktop-toc{top:var(--blog-topbar-h);align-self:start;display:block;position:sticky;overflow:visible}}.blog-toc-panel{--blog-toc-panel-inset:clamp(36px, 3vw, 44px);padding-top:var(--blog-toc-panel-inset);padding-bottom:var(--blog-toc-panel-inset);padding-left:var(--blog-toc-panel-inset);border-left:1px solid var(--blog-rule);position:relative}@media (min-width:1200px){.blog-toc-panel:after{content:"";width:calc(100% + var(--blog-main-pad-x));background:var(--blog-rule);pointer-events:none;height:1px;position:absolute;bottom:0;left:0}}.blog-toc-nav{max-height:calc(100vh - var(--blog-topbar-h) - 132px);margin-top:14px;overflow-y:auto}.blog-left-rail-toc{display:none}@media (min-width:1024px) and (max-width:1199px){.blog-left-rail-toc{display:block}}.blog-left-rail-toc .blog-toc-nav{max-height:none;margin-top:0;overflow:visible}.blog-left-rail-toc .blog-toc-list{border-top:1px solid var(--blog-rule-soft);gap:1px;margin:0 0 10px;padding:6px 0 0 12px}.blog-toc-list,.blog-toc-children{gap:2px;margin:0;padding:0;list-style:none;display:grid}.blog-toc-children{margin-top:4px;padding-left:12px}.blog-toc-link{color:var(--blog-ink-4);overflow-wrap:anywhere;padding:5px 12px 5px 14px;font-size:12px;line-height:1.45;text-decoration:none;transition:color .15s;display:block;position:relative}.blog-toc-link:hover{color:var(--blog-ink-3)}.blog-toc-link.is-active{color:var(--blog-ink)}.blog-toc-link.is-active:before{content:"";background:var(--blog-accent);border-radius:999px;width:2px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.blog-toc-link-child{font-size:12px}.blog-editorial .blog-markdown{min-width:0;color:var(--blog-ink);margin-top:34px;font-size:clamp(16px,1.1vw,18px);line-height:1.75}.blog-editorial .blog-markdown h2,.blog-editorial .blog-markdown h3{scroll-margin-top:var(--blog-anchor-scroll-margin);color:var(--blog-ink);letter-spacing:-.025em;overflow-wrap:anywhere;font-weight:600}.blog-editorial .blog-markdown h2{margin:2.5rem 0 .85rem;font-size:clamp(27px,2.2vw,38px);line-height:1.08}.blog-editorial .blog-markdown h3{margin:2rem 0 .7rem;font-size:clamp(21px,1.6vw,27px);line-height:1.18}.blog-editorial .blog-markdown p{color:var(--blog-ink-2);overflow-wrap:anywhere;word-break:break-word;margin:1rem 0}.blog-editorial .blog-markdown ul,.blog-editorial .blog-markdown ol{margin:1rem 0;padding-left:1.35rem}.blog-editorial .blog-markdown li{color:var(--blog-ink-2);margin:.35rem 0}.blog-editorial .blog-markdown blockquote{border-left:2px solid var(--blog-accent);color:var(--blog-ink-2);background:0 0;margin:1.5rem 0;padding:.1rem 0 .1rem 1rem}.blog-editorial .blog-markdown a{color:var(--blog-ink);text-decoration:underline;-webkit-text-decoration-color:var(--blog-accent);text-decoration-color:var(--blog-accent);text-underline-offset:-.04em;text-decoration-skip-ink:none;text-decoration-thickness:.2em}.blog-editorial .blog-markdown a:hover{-webkit-text-decoration-color:color-mix(in srgb, var(--blog-accent) 65%, var(--blog-ink));text-decoration-color:color-mix(in srgb, var(--blog-accent) 65%, var(--blog-ink))}.blog-editorial .blog-markdown :not(pre)>code{background:var(--blog-bg-sunken);border:1px solid var(--blog-rule);color:var(--blog-ink);white-space:break-spaces;border-radius:4px;padding:2px 6px;font-size:.88em}.blog-editorial .blog-markdown .blog-code-block,.blog-editorial .blog-markdown pre{border-radius:8px}.blog-editorial .blog-markdown .blog-code-block{border:1px solid var(--blog-rule);background:#0a0a0a}.blog-editorial .blog-markdown .blog-code-header{background:#111;border-bottom:1px solid #ffffff1f}.blog-editorial .blog-markdown .blog-code-copy{color:#e6e6e6;background:#ffffff0a;border-color:#ffffff29}.blog-editorial .blog-markdown .blog-table-wrap,.blog-editorial .blog-markdown .blog-mermaid-block,.blog-editorial .blog-markdown img{border-color:var(--blog-rule);background:var(--blog-bg-raised);border-radius:8px}.blog-editorial .blog-markdown .blog-table thead th{background:var(--blog-bg-sunken);color:var(--blog-ink)}.blog-editorial .blog-markdown .blog-table th,.blog-editorial .blog-markdown .blog-table td{border-color:var(--blog-rule-soft)}.blog-editorial .blog-heading-anchor{color:var(--blog-ink-4);transition:opacity .15s,color .15s}.blog-editorial .blog-heading-anchor:hover,.blog-editorial .blog-heading-anchor:focus-visible{color:var(--blog-ink)}.blog-editorial .blog-markdown .blog-section-heading:target{background:0 0;border-radius:0}.blog-editorial .blog-markdown .blog-section-heading:target .blog-heading-anchor{opacity:0}.blog-editorial .blog-markdown .blog-section-heading:hover .blog-heading-anchor,.blog-editorial .blog-markdown .blog-section-heading:focus-within .blog-heading-anchor,.blog-editorial .blog-markdown .blog-heading-anchor[data-copied=true]{opacity:1}.blog-cta{border-top:1px solid var(--blog-rule);margin-top:48px;padding-top:32px}.blog-cta h2{color:var(--blog-ink);letter-spacing:-.035em;margin:14px 0 0;font-size:clamp(28px,2.4vw,42px);font-weight:500;line-height:1.05}.blog-cta p:not(.blog-eyebrow){max-width:620px;color:var(--blog-ink-2);margin:14px 0 0;font-size:16px;line-height:1.55}.blog-cta .blog-btn{margin-top:18px}@media (max-width:520px){.blog-main-column{padding-inline:16px}.blog-index-sticky-header{margin-inline:-16px;padding-inline:16px}.blog-post-hero h1{letter-spacing:-.04em}.blog-post-card{padding-block:28px}.blog-post-card h2{font-size:28px}}
