@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/figtree-latin-ext-wght-normal.DCwSJGxG.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/figtree-latin-wght-normal.D_ZTVpCC.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree Variable;font-style:italic;font-display:swap;font-weight:300 900;src:url(/_astro/figtree-latin-ext-wght-italic.Q0qr0lrZ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree Variable;font-style:italic;font-display:swap;font-weight:300 900;src:url(/_astro/figtree-latin-wght-italic.BEAWuiTz.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Commit Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/commit-mono-latin-400-normal.wzhe4RuD.woff2)format("woff2"),url(/_astro/commit-mono-latin-400-normal.s0S3qwFW.woff)format("woff")}@font-face{font-family:Commit Mono;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/commit-mono-latin-400-italic.DjSHLl2N.woff2)format("woff2"),url(/_astro/commit-mono-latin-400-italic.BXinMwCi.woff)format("woff")}:root{--bg:oklch(100% 0 0);--surface:oklch(97.5% .006 300);--surface-strong:oklch(94.5% .018 300);--ink:oklch(20% .035 300);--muted:oklch(44% .035 300);--border:oklch(89% .018 300);--primary:oklch(42% .18 302);--primary-hover:oklch(36% .17 302);--primary-soft:oklch(93% .05 302);--primary-soft-ink:var(--primary);--accent-ink:var(--primary);--link:oklch(42% .18 302);--link-hover:var(--primary-hover);--yellow:oklch(88% .16 94);--yellow-soft:oklch(96% .08 94);--danger:oklch(55% .18 27);--code-bg:oklch(97.5% .006 300);--code-border:oklch(86% .024 300);--shadow:0 6px 12px oklch(20% .035 300/.1);--focus-ring:var(--yellow);--focus-halo:color-mix(in oklch, var(--primary) 45%, transparent);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:.375rem;--radius-md:.625rem;--radius-lg:.875rem;--font-sans:"Figtree Variable", system-ui, sans-serif;--font-mono:"Commit Mono", ui-monospace, monospace;--text-caption:.8125rem;--text-label:.875rem;--text-body:1rem;--text-lead:1.125rem;--text-title:1.125rem;--text-headline:1.5rem;--text-page-title:2.25rem;--text-hero:2.75rem;--line-display:1.06;--line-heading:1.18;--line-title:1.3;--line-body:1.6;--line-compact:1.45;--tracking-display:-.025em;--tracking-heading:-.018em;--tracking-title:-.01em;--weight-normal:400;--weight-semibold:650;--weight-bold:700;--z-sticky:5;--z-dropdown:8;--z-skip:10}:root[data-theme=dark]{--bg:oklch(11% .025 300);--surface:oklch(16% .035 300);--surface-strong:oklch(22% .04 300);--ink:oklch(94% .012 300);--muted:oklch(75% .025 300);--border:oklch(32% .045 300);--primary:oklch(54% .18 302);--primary-hover:oklch(48% .18 302);--primary-soft:oklch(24% .06 302);--primary-soft-ink:var(--ink);--accent-ink:var(--link);--link:oklch(74% .14 302);--link-hover:var(--ink);--yellow:oklch(88% .16 94);--yellow-soft:oklch(24% .06 94);--danger:oklch(72% .16 27);--code-bg:oklch(14% .025 300);--code-border:oklch(34% .045 300);--shadow:0 6px 12px oklch(0% 0 0/.24);--focus-ring:var(--yellow);--focus-halo:color-mix(in oklch, var(--primary) 52%, transparent);--line-body:1.64}*{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-kerning:normal;font-optical-sizing:auto;scroll-behavior:smooth;scroll-padding-top:5.5rem;font-size:100%}body{background:var(--bg);min-width:320px;color:var(--ink);font-size:var(--text-body);line-height:var(--line-body);overflow-wrap:break-word;margin:0}body,button,input{font-family:var(--font-sans)}a{color:var(--link);text-underline-offset:.18em;text-decoration-thickness:.08em}a:hover{color:var(--link-hover)}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 6px var(--focus-halo)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important}}@media (forced-colors:active){:focus-visible{box-shadow:none}.button.primary,.cmd-close-button,.skip-link{border:1px solid buttontext}.site-header,.header-resources summary,.header-resources nav,.mobile-nav,.page-toc,.security-callout,.package-feature,.install-card,.code-card,.primary-path,.path-panel,.compare-item,.search-result a,.provider-table,.next-links a,pre,.hero-threshold{border-color:canvastext}}img,svg{max-width:100%;height:auto}.skip-link{z-index:var(--z-skip);border-radius:var(--radius-sm);background:var(--yellow);color:oklch(20% .035 300);padding:var(--space-2) var(--space-3);font-weight:var(--weight-bold);position:fixed;inset-block-start:calc(var(--space-4) + env(safe-area-inset-top));inset-inline-start:calc(var(--space-4) + env(safe-area-inset-left));transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-header{z-index:var(--z-sticky);justify-content:space-between;align-items:center;gap:var(--space-4);border-bottom:1px solid var(--border);background:color-mix(in oklch, var(--bg) 92%, transparent);padding:var(--space-3) clamp(var(--space-4), 3vw, var(--space-8));backdrop-filter:blur(16px);padding-inline-start:calc(clamp(var(--space-4), 3vw, var(--space-8)) + env(safe-area-inset-left));padding-inline-end:calc(clamp(var(--space-4), 3vw, var(--space-8)) + env(safe-area-inset-right));display:flex;position:sticky;top:0}@supports not (backdrop-filter:blur(1px)){.site-header{background:var(--bg)}}.brand,.header-actions,.hero-actions,.next-links{align-items:center;display:flex}.brand{gap:var(--space-3);min-width:0;color:var(--ink);text-decoration:none}.brand-mark{object-fit:contain;flex-shrink:0;width:3rem;height:3rem}.brand strong,.brand small{overflow-wrap:anywhere;display:block}.brand strong{line-height:var(--line-display)}.brand small{color:var(--muted);font-size:var(--text-caption)}.header-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;min-width:0}.header-link,.header-resources summary,.header-resources a,.theme-toggle,.button,.code-copy-button,.cmd-close-button,.hero-search,.route-primary,.stack-provider,.path-panel summary,.search-reset,.search-suggestions a,.search-result a,.compare-item,.resource-links a,.next-links a{border-radius:var(--radius-sm);min-height:2.75rem;font-size:var(--text-label);font-weight:var(--weight-semibold)}.header-link{color:var(--muted);padding:0 var(--space-3);align-items:center;text-decoration:none;display:none}.header-link:hover{background:var(--primary-soft);color:var(--ink)}.header-resources{position:relative}.header-resources summary{align-items:center;gap:var(--space-2);border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;padding:0 var(--space-3);list-style:none;display:inline-flex}.header-resources summary::-webkit-details-marker{display:none}.header-resources summary:after{content:"+";color:var(--accent-ink);font-weight:var(--weight-bold)}.header-resources[open] summary:after{content:"-"}.header-resources summary:hover,.header-resources[open] summary{border-color:var(--primary);background:var(--primary-soft)}.header-resources nav{z-index:var(--z-dropdown);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);min-width:11rem;padding:var(--space-2);display:grid;position:absolute;inset-block-start:calc(100% + var(--space-2));inset-inline-end:0}.header-resources a{border-radius:var(--radius-sm);color:var(--ink);padding:0 var(--space-3);align-items:center;text-decoration:none;display:flex}.header-resources a:hover{background:var(--primary-soft);color:var(--ink)}.theme-toggle{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--border);background:var(--surface);min-width:2.75rem;color:var(--ink);cursor:pointer;padding:0 var(--space-3);display:inline-flex}.theme-toggle [data-theme-label]{display:none}.header-link,.header-resources summary,.header-resources a,.theme-toggle,.code-copy-button,.cmd-close-button,.hero-search,.route-primary,.stack-provider,.path-panel summary,.search-reset,.search-suggestions a,.search-result a,.compare-item,.resource-links a,.next-links a{transition:background .18s cubic-bezier(.16,1,.3,1),border-color .18s cubic-bezier(.16,1,.3,1),color .18s cubic-bezier(.16,1,.3,1)}.brand span,.header-actions,.header-link,.header-resources,.header-resources summary,.header-resources a,.theme-toggle,.button,.cmd-close-button,.hero-search,.route-primary,.stack-provider,.path-panel summary>span,.search-reset,.search-suggestions a,.search-result a,.compare-item,.resource-links a,.next-links a,.content-grid>*,.security-callout>*,.package-feature>*,.step-item>*,.quick-paths>*,.path-body>*,.doc-page>*{min-width:0}.theme-toggle:hover{border-color:var(--primary)}.docs-frame{grid-template-columns:minmax(0,1fr);max-width:92rem;margin:0 auto;display:grid}.sidebar{display:none}.content-shell{width:min(100%,72rem);min-width:0;padding:var(--space-6) clamp(var(--space-4), 5vw, var(--space-10)) var(--space-16);padding-inline-start:calc(clamp(var(--space-4), 5vw, var(--space-10)) + env(safe-area-inset-left));padding-inline-end:calc(clamp(var(--space-4), 5vw, var(--space-10)) + env(safe-area-inset-right));overflow-x:clip}.mobile-nav{margin-bottom:var(--space-8);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.mobile-nav summary{cursor:pointer;padding:var(--space-4);font-weight:var(--weight-semibold)}.mobile-nav nav{padding:0 var(--space-4) var(--space-4)}.nav-group+.nav-group{margin-top:var(--space-6)}.nav-group .nav-group-title{margin:0 0 var(--space-2);color:var(--muted);font-size:var(--text-caption);font-weight:var(--weight-semibold);line-height:var(--line-title)}.nav-group ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.nav-group a{border-radius:var(--radius-sm);color:var(--muted);padding:var(--space-2) var(--space-3);overflow-wrap:anywhere;text-decoration:none;display:block}.nav-group a:hover,.nav-group a[aria-current=page]{background:var(--primary-soft);color:var(--ink)}.nav-group a[aria-current=page]{font-weight:var(--weight-semibold)}.nav-subgroup summary{justify-content:space-between;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;padding:var(--space-2) var(--space-3);list-style:none;display:flex}.nav-subgroup summary::-webkit-details-marker{display:none}.nav-subgroup summary:after{content:"+";color:var(--accent-ink);font-weight:var(--weight-bold)}.nav-subgroup[open] summary:after{content:"-"}.nav-subgroup summary:hover,.nav-subgroup[open] summary{background:var(--primary-soft);color:var(--ink)}.nav-subgroup ul{margin:var(--space-1) 0 var(--space-2);border-inline-start:1px solid var(--border);margin-inline-start:var(--space-3);padding-inline-start:var(--space-2)}.intro-label{color:var(--accent-ink);font-size:var(--text-label);font-weight:var(--weight-semibold);margin:0 0 var(--space-3)}.breadcrumbs{gap:var(--space-2);margin-bottom:var(--space-6);color:var(--muted);font-size:var(--text-label);flex-wrap:wrap;align-items:center;display:flex}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs a:hover{color:var(--accent-ink)}.breadcrumbs span[aria-current=page]{color:var(--accent-ink);font-weight:var(--weight-semibold)}.page-toc{gap:var(--space-3);margin-bottom:var(--space-8);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:var(--space-4);display:grid}.page-toc>span{color:var(--ink);font-weight:var(--weight-semibold)}.page-toc ol{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.page-toc a{border-radius:var(--radius-sm);color:var(--muted);padding:var(--space-2) var(--space-3);align-items:center;text-decoration:none;display:inline-flex}.page-toc a:hover{background:var(--primary-soft);color:var(--ink)}.hero,.doc-hero{margin-bottom:var(--space-12)}.hero{gap:var(--space-8);align-items:center;display:grid}.hero-copy{max-width:44rem}h1,h2,h3,p{text-wrap:pretty}h1,h2,h3{color:var(--ink);overflow-wrap:break-word;text-wrap:balance}.nowrap{white-space:nowrap}h1{max-width:19ch;font-size:var(--text-hero);font-weight:var(--weight-bold);line-height:var(--line-display);letter-spacing:var(--tracking-display);margin:0}.doc-hero h1{max-width:16ch;font-size:var(--text-page-title)}h2{margin:0 0 var(--space-3);font-size:var(--text-headline);font-weight:var(--weight-semibold);line-height:var(--line-heading);letter-spacing:var(--tracking-heading)}h3{margin:0 0 var(--space-2);font-size:var(--text-title);font-weight:var(--weight-semibold);line-height:var(--line-title);letter-spacing:var(--tracking-title)}.heading-anchor{align-items:baseline;gap:var(--space-1);color:var(--muted);font-size:.8em;font-weight:var(--weight-semibold);opacity:0;margin-inline-start:var(--space-2);text-decoration:none;transition:opacity .15s,color .15s;display:inline-flex}h2:hover>.heading-anchor,h3:hover>.heading-anchor,.heading-anchor:focus,.heading-anchor[data-copy-state]{opacity:1}.heading-anchor:hover,.heading-anchor:focus,.heading-anchor[data-copy-state=success]{color:var(--accent-ink)}.heading-anchor[data-copy-state]:after{font-size:var(--text-caption);font-weight:var(--weight-semibold)}.heading-anchor[data-copy-state=success]:after{content:"Copied"}.heading-anchor[data-copy-state=error]:after{content:"Copy failed";color:var(--danger)}@media (hover:none){.heading-anchor{opacity:1}}@media (prefers-reduced-motion:reduce){.heading-anchor{transition:none}}p{max-width:66ch;margin:0 0 var(--space-4);color:var(--muted);overflow-wrap:break-word}.lead,.doc-hero p{max-width:64ch;font-size:var(--text-lead);line-height:var(--line-body)}.hero-actions,.next-links{gap:var(--space-3);flex-wrap:wrap}.button{justify-content:center;align-items:center;text-decoration:none;transition:background .18s cubic-bezier(.16,1,.3,1),border-color .18s cubic-bezier(.16,1,.3,1),color .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1);display:inline-flex}.button.primary{background:var(--primary);color:oklch(100% 0 0);padding:0 var(--space-5,1.25rem)}.button.primary:hover{background:var(--primary-hover);color:oklch(100% 0 0);box-shadow:var(--shadow);transform:translateY(-1px)}.button.secondary{border:1px solid var(--border);background:var(--surface);color:var(--ink);padding:0 var(--space-5,1.25rem)}.button.secondary:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--ink)}.hero-search{align-items:center;gap:var(--space-2);width:fit-content;min-height:2.75rem;margin-top:var(--space-4);border-radius:var(--radius-sm);color:var(--muted);padding:0 var(--space-3);text-decoration:none;display:inline-flex}.hero-search:hover,.hero-search:focus-visible,.hero-search:active{background:var(--primary-soft);color:var(--ink)}.security-callout,.package-feature,.install-card,.code-card,pre{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.hero-threshold{gap:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:0;padding:var(--space-6);align-self:start;display:grid;position:relative}.hero-threshold:before{content:"";background:var(--border);width:2px;position:absolute;inset-block-start:calc(var(--space-6) + .6rem);inset-block-end:calc(var(--space-6) + .6rem);inset-inline-start:calc(var(--space-6) + 1rem - 1px)}.threshold-cap{color:var(--muted);font-size:var(--text-label);font-weight:var(--weight-semibold);line-height:var(--line-title);margin:0;padding-inline-start:calc(2rem + var(--space-3));position:relative}.threshold-cap:before{content:"";border:2px solid var(--muted);background:var(--bg);border-radius:50%;width:.7rem;height:.7rem;position:absolute;inset-block-start:calc(50% - .35rem);inset-inline-start:.65rem}.threshold-cap-app{color:var(--ink)}.threshold-cap-app:before{border-color:var(--primary);background:var(--primary)}.hero-flow{gap:var(--space-5);margin:0;padding:0;list-style:none;display:grid}.hero-flow li{gap:var(--space-3);grid-template-columns:2rem minmax(0,1fr);align-items:start;display:grid}.flow-marker{border-radius:var(--radius-sm);background:var(--yellow);color:oklch(20% .035 300);font-variant-numeric:tabular-nums;width:2rem;height:2rem;font-weight:var(--weight-semibold);place-items:center;display:grid;position:relative}.flow-copy{gap:var(--space-1);padding-block-start:.16rem;display:grid}.flow-copy strong,.flow-copy span{display:block}.flow-copy strong{color:var(--ink);line-height:var(--line-title)}.flow-copy span{color:var(--muted);font-size:var(--text-label);line-height:var(--line-compact)}.content-grid{gap:var(--space-6);margin:var(--space-12) 0;display:grid}.content-grid.split{align-items:start}pre{max-width:100%;padding:var(--space-4);color:var(--ink);margin:0;overflow-x:auto}pre.astro-code{background-color:var(--code-bg)!important}.install-card pre.astro-code{background-color:var(--bg)!important}[data-theme=dark] pre.astro-code,[data-theme=dark] pre.astro-code span{color:var(--shiki-dark)!important}code{font-family:var(--font-mono);font-size:var(--text-label);font-feature-settings:"ss01" 1, "ss02" 1;font-variant-ligatures:common-ligatures contextual}pre code{min-width:min-content;line-height:var(--line-body);white-space:pre;display:block}.code-copy{position:relative}.code-copy pre{padding-block-start:calc(var(--space-12) + var(--space-2))}.code-copy-button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);min-height:2.75rem;color:var(--ink);cursor:pointer;padding:0 var(--space-3);font-size:var(--text-caption);font-weight:var(--weight-semibold);position:absolute;inset-block-start:var(--space-2);inset-inline-end:var(--space-2)}.code-copy-button:hover{border-color:var(--primary);color:var(--accent-ink)}.code-copy-button:disabled{cursor:default;opacity:.72}.code-copy-button[data-copy-state=success]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-soft-ink)}.code-copy-button[data-copy-state=error]{border-color:var(--danger);color:var(--danger)}.code-copy-button[data-copy-state=notice],.code-copy-button[data-copy-state=loading]{border-color:var(--primary)}:not(pre)>code{border:1px solid var(--code-border);border-radius:var(--radius-sm);background:var(--code-bg);padding:.1rem .28rem}.section-heading{margin-bottom:var(--space-6)}.section-heading p{margin-bottom:0}.route-decision{margin:var(--space-12) 0}.route-primary{gap:var(--space-3);border:1px solid color-mix(in oklch, var(--primary) 54%, var(--border));border-radius:var(--radius-lg);background:var(--primary-soft);color:var(--ink);padding:var(--space-6);text-decoration:none;display:grid}.route-primary strong{color:var(--ink);font-size:var(--text-headline);line-height:var(--line-heading);letter-spacing:var(--tracking-heading)}.route-primary>span:not(.path-label),.route-primary li{color:var(--muted);line-height:var(--line-compact)}.route-primary ul{gap:var(--space-2);margin:var(--space-1) 0 0;padding:0;list-style:none;display:grid}.route-primary li{padding-inline-start:1.4rem;position:relative}.route-primary li:before{content:"";background:var(--primary);border-radius:50%;width:.5rem;height:.5rem;position:absolute;inset-block-start:.58rem;inset-inline-start:0}.route-primary em{color:var(--accent-ink);font-style:normal;font-weight:var(--weight-semibold)}.route-primary:hover,.route-primary:focus-visible,.route-primary:active{border-color:var(--primary);background:color-mix(in oklch, var(--primary-soft) 72%, var(--bg))}.route-choice-list{gap:var(--space-3);display:grid}.route-choice{gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);color:var(--ink);padding:var(--space-5);text-decoration:none;display:grid}.route-choice.recommended{border-color:color-mix(in oklch, var(--primary) 52%, var(--border));background:var(--primary-soft)}.route-choice:hover,.route-choice:focus-visible,.route-choice:active{border-color:var(--primary);background:var(--primary-soft)}.route-choice strong{color:var(--ink);font-size:var(--text-title);line-height:var(--line-title)}.route-choice>span:not(.path-label),.route-choice small{color:var(--muted);line-height:var(--line-compact)}.route-choice em{color:var(--accent-ink);font-style:normal;font-weight:var(--weight-semibold)}.route-choice.compact{padding:var(--space-4)}.package-route-list{margin-bottom:var(--space-12)}.stack-map{gap:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:var(--space-5);display:grid}.stack-column{gap:var(--space-4);align-content:start;display:grid}.stack-column h3{align-items:center;gap:var(--space-3);margin-bottom:0;display:flex}.stack-step{border-radius:var(--radius-sm);background:var(--primary-soft);width:1.6rem;height:1.6rem;color:var(--primary-soft-ink);font-size:var(--text-caption);font-variant-numeric:tabular-nums;font-weight:var(--weight-semibold);flex-shrink:0;place-items:center;display:inline-grid}.stack-rows{display:grid}.stack-rows>:first-child{border-block-start:0;padding-block-start:0}.stack-provider{gap:var(--space-2);border-block-start:1px solid var(--border);color:var(--ink);padding:var(--space-4) 0;align-items:center;text-decoration:none;display:grid}.stack-provider:hover,.stack-provider:focus-visible,.stack-provider:active{color:var(--accent-ink)}.stack-provider>span:last-child{color:var(--muted);line-height:var(--line-compact)}.stack-provider:hover>span:last-child,.stack-provider:focus-visible>span:last-child,.stack-provider:active>span:last-child{color:var(--ink)}.chip{color:var(--accent-ink);font-size:var(--text-caption);font-weight:var(--weight-semibold)}.stack-provider{grid-template-columns:auto minmax(0,1fr);min-height:2.75rem}.stack-provider>span:last-child{font-size:var(--text-label);grid-column:2}.provider-mark{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);width:2rem;height:2rem;color:var(--provider-color,var(--ink));grid-row:span 2;place-items:center;display:grid}.provider-mark svg{fill:currentColor;width:1.08rem;height:1.08rem;display:block}.provider-copy{gap:var(--space-1);min-width:0;display:grid}.provider-copy strong,.provider-copy small{overflow-wrap:anywhere;display:block}.provider-copy strong{line-height:var(--line-title)}.provider-copy small{color:var(--muted);font-size:var(--text-caption);font-weight:var(--weight-semibold)}.stack-provider:hover .provider-copy small,.stack-provider:focus-visible .provider-copy small,.stack-provider:active .provider-copy small{color:var(--ink)}.microsoft-window{grid-template-columns:repeat(2,.46rem);gap:.12rem;display:grid}.microsoft-window span{width:.46rem;height:.46rem}.microsoft-window span:first-child{background:#f25022}.microsoft-window span:nth-child(2){background:#7fba00}.microsoft-window span:nth-child(3){background:#00a4ef}.microsoft-window span:nth-child(4){background:#ffb900}.chip{border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-soft-ink);padding:var(--space-2) var(--space-3);text-decoration:none}.boundary-section{align-items:start}.recovery-strip{gap:var(--space-2);margin-top:var(--space-6);display:grid}.recovery-strip p{gap:var(--space-1);border-block-start:1px solid var(--border);margin:0;padding-block-start:var(--space-3);display:grid}.recovery-strip strong{color:var(--ink);font-size:var(--text-label)}.recovery-strip a{width:fit-content;color:var(--ink);text-decoration:none}.recovery-strip a:hover,.recovery-strip a:focus-visible,.recovery-strip a:active{color:var(--accent-ink);text-decoration:underline}.recovery-strip span{color:var(--muted);font-size:var(--text-label);line-height:var(--line-compact)}.recovery-action{width:fit-content;margin-top:var(--space-4);display:inline-flex}.security-callout{gap:var(--space-6);margin:var(--space-12) 0;padding:var(--space-6);align-items:start;display:grid}.security-callout p:last-child{margin-bottom:0}.text-link{font-weight:var(--weight-semibold)}.doc-page{max-width:70ch}.doc-page section+section{margin-top:var(--space-12)}.doc-page>.content-grid,.doc-page>.security-callout{max-width:none}.quick-paths{gap:var(--space-4);margin:var(--space-8) 0 var(--space-12);display:grid}.primary-path,.path-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.path-panel summary{gap:var(--space-3);cursor:pointer;padding:var(--space-5);grid-template-columns:minmax(0,1fr) auto;align-items:center;list-style:none;display:grid}.path-panel summary::-webkit-details-marker{display:none}.path-panel summary:after{content:"Open";border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-soft-ink);padding:var(--space-1) var(--space-2);font-size:var(--text-caption);font-weight:var(--weight-semibold);white-space:nowrap}.path-panel[open] summary{border-bottom:1px solid var(--border)}.path-panel[open] summary:after{content:"Hide"}.path-panel strong,.path-panel small{display:block}.path-panel strong{color:var(--ink);font-size:var(--text-title);font-weight:var(--weight-semibold);line-height:var(--line-title)}.path-panel small{margin-top:var(--space-1);color:var(--muted);font-size:var(--text-body);line-height:var(--line-compact)}.path-label{margin-bottom:var(--space-2);color:var(--accent-ink);font-size:var(--text-caption);font-weight:var(--weight-semibold);line-height:var(--line-title);display:block}.path-body{padding:var(--space-5)}.path-body h2{margin-top:var(--space-6);font-size:var(--text-headline)}.path-body h2:first-child,.path-body .path-label+h2{margin-top:0}.search-form{gap:var(--space-2);margin:var(--space-8) 0 var(--space-6);display:grid}.search-form label{color:var(--ink);font-weight:var(--weight-semibold)}.search-field-row{gap:var(--space-3);display:grid}.search-form input{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);width:100%;min-height:3rem;color:var(--ink);padding:0 var(--space-4);font-size:var(--text-body)}.search-form input::placeholder{color:var(--muted)}.search-form input:hover{border-color:var(--primary)}.search-reset{border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;padding:0 var(--space-4)}.search-reset:hover:not(:disabled){border-color:var(--primary);background:var(--primary-soft)}.search-reset:disabled{cursor:not-allowed;opacity:.56}.search-form p,.search-count{margin-bottom:0}.search-suggestions{gap:var(--space-2);color:var(--muted);font-size:var(--text-label);flex-wrap:wrap;align-items:center;display:flex}.search-suggestions a{background:var(--primary-soft);min-height:2.75rem;color:var(--primary-soft-ink);padding:0 var(--space-3);align-items:center;text-decoration:none;display:inline-flex}.search-suggestions a:hover{background:var(--primary);color:var(--bg)}.search-results{gap:var(--space-3);margin:var(--space-6) 0 0;padding:0;list-style:none;display:grid}.search-result a{gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:0;color:var(--ink);padding:var(--space-4);text-decoration:none;display:grid}.search-result a:hover{border-color:var(--primary);background:var(--primary-soft)}.search-result strong,.search-result span:last-child,.result-meta{overflow-wrap:anywhere}.search-result span:not(.chip):not(.result-meta){color:var(--muted)}.result-meta{color:var(--accent-ink);font-size:var(--text-caption);font-weight:var(--weight-semibold)}.step-list,.setup-list,.check-list,.responsibility-list{gap:var(--space-4);display:grid}.step-item{gap:var(--space-4);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.step-number{border-radius:var(--radius-sm);background:var(--yellow);color:oklch(20% .035 300);font-variant-numeric:tabular-nums;width:2rem;height:2rem;font-weight:var(--weight-semibold);place-items:center;display:grid}.setup-list{counter-reset:setup;padding:0;list-style:none}.setup-list li{counter-increment:setup;padding-inline-start:2.4rem;position:relative}.setup-list li:before{content:counter(setup);border-radius:var(--radius-sm);background:var(--primary-soft);width:1.6rem;height:1.6rem;color:var(--primary-soft-ink);font-size:var(--text-caption);font-variant-numeric:tabular-nums;font-weight:var(--weight-semibold);place-items:center;display:grid;position:absolute;inset-block-start:.05rem;inset-inline-start:0}.check-list{margin:0;padding:0;list-style:none}.check-list li{color:var(--muted);padding-inline-start:1.6rem;position:relative}.check-list li:before{content:"";background:var(--primary);border-radius:50%;width:.55rem;height:.55rem;position:absolute;inset-block-start:.62rem;inset-inline-start:0}.check-list.warning li:before{background:var(--yellow)}.responsibility-list{margin:var(--space-4) 0 0;border-radius:var(--radius-md);background:color-mix(in oklch, var(--primary-soft) 56%, var(--bg));padding:var(--space-4);list-style:none}.responsibility-list.warning{background:var(--yellow-soft)}.responsibility-list li{color:var(--muted)}.responsibility-list strong{color:var(--ink)}.package-feature{gap:var(--space-6);margin-bottom:var(--space-12);padding:var(--space-6);align-items:center;display:grid}.compare-list{gap:var(--space-4);display:grid}.compare-item{gap:var(--space-2);border-block-start:1px solid var(--border);color:var(--ink);padding:var(--space-4) 0;text-decoration:none;display:grid}.compare-item:hover,.compare-item:focus-visible,.compare-item:active{color:var(--accent-ink)}.compare-item:hover>span:last-child,.compare-item:focus-visible>span:last-child,.compare-item:active>span:last-child{color:var(--ink)}.compare-item>span:last-child{color:var(--muted)}.provider-table{border:1px solid var(--border);border-radius:var(--radius-lg);border-spacing:0;width:100%;display:block;overflow:hidden}.provider-table thead{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.provider-table tbody,.provider-table tr{display:grid}.provider-table tr+tr{border-top:1px solid var(--border)}.provider-table th,.provider-table td{gap:var(--space-1);min-width:0;padding:var(--space-3) var(--space-4);text-align:start;overflow-wrap:anywhere;display:grid}.provider-table tbody th{font-weight:var(--weight-semibold)}.provider-table tbody td{color:var(--muted)}.provider-table a{max-width:100%;color:var(--ink);overflow-wrap:anywhere;align-items:center;text-decoration:none;display:inline-flex}.provider-table a:hover{color:var(--accent-ink)}.provider-table tbody tr:hover,.provider-table tbody tr:focus-within,.provider-table tbody tr:active{background:var(--primary-soft)}.provider-table tbody tr:hover td,.provider-table tbody tr:focus-within td,.provider-table tbody tr:active td,.provider-table tbody tr:hover .provider-cell-label,.provider-table tbody tr:focus-within .provider-cell-label,.provider-table tbody tr:active .provider-cell-label{color:var(--ink)}.provider-cell-label{color:var(--muted);font-size:var(--text-caption);font-weight:var(--weight-semibold)}@media (pointer:coarse){.nav-group a,.page-toc a{align-items:center;min-height:2.75rem;display:flex}.nav-subgroup summary{min-height:2.75rem}.provider-table a{min-height:2.75rem;margin-inline:calc(var(--space-2) * -1);border-radius:var(--radius-sm);padding-inline:var(--space-2)}}@media (hover:none){.provider-table tbody tr:hover{background:0 0}.provider-table tbody tr:focus-within,.provider-table tbody tr:active{background:var(--primary-soft)}}.package-hero .chip{margin-bottom:var(--space-3);display:inline-flex}.scope-note{border-radius:var(--radius-md);background:var(--yellow-soft);color:var(--ink);padding:var(--space-3);border-left:0}.scope-note p{color:var(--ink);margin:0}.install-card{padding:var(--space-4)}.install-card h2{margin-bottom:var(--space-3);font-size:var(--text-title)}.install-card pre{background:var(--bg);padding:var(--space-3);border:0}.install-card .code-copy pre{padding-block-start:calc(var(--space-12) + var(--space-2))}.resource-links{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.resource-links a{border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-soft-ink);padding:var(--space-2) var(--space-3);font-size:var(--text-label);font-weight:var(--weight-semibold);text-decoration:none}.resource-links a:hover{background:var(--primary);color:var(--bg)}.next-links{margin-top:var(--space-12)}.next-links a{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);padding:var(--space-3) var(--space-4);text-decoration:none}.next-links a:hover{border-color:var(--primary);background:var(--primary-soft)}.not-found{align-content:center;min-height:58vh;display:grid}@media (width>=42rem){.header-resources{display:none}.header-link{display:inline-flex}.theme-toggle [data-theme-label]{display:inline}.search-field-row{grid-template-columns:minmax(0,1fr) auto}.provider-mark{width:2.5rem;height:2.5rem}.provider-mark svg{width:1.35rem;height:1.35rem}.microsoft-window{grid-template-columns:repeat(2,.55rem);gap:.14rem}.microsoft-window span{width:.55rem;height:.55rem}.security-callout,.package-feature{grid-template-columns:minmax(0,1fr) auto}.provider-table{table-layout:fixed;display:table}.provider-table thead{background:var(--surface-strong);width:auto;height:auto;color:var(--muted);clip:auto;clip-path:none;font-size:var(--text-label);font-weight:var(--weight-semibold);white-space:normal;display:table-header-group;position:static;overflow:visible}.provider-table tbody{display:table-row-group}.provider-table tr{display:table-row}.provider-table th,.provider-table td{padding:var(--space-4);vertical-align:top;display:table-cell}.provider-table th:first-child{width:12rem}.provider-table th:nth-child(2),.provider-table td:nth-child(2){width:14rem}.provider-table tbody tr+tr th,.provider-table tbody tr+tr td{border-top:1px solid var(--border)}.provider-table tr+tr{border-top:0}.provider-cell-label{display:none}}@media (width>=58rem){:root{--text-hero:3.25rem}.content-grid.split{grid-template-columns:minmax(0,1fr) minmax(29rem,.8fr)}.hero{grid-template-columns:minmax(0,1fr) minmax(20rem,.72fr)}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stack-map{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.route-choice-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=68rem){.docs-frame{grid-template-columns:17rem minmax(0,1fr)}.sidebar{border-right:1px solid var(--border);height:calc(100vh - 4.4rem);padding:var(--space-8) var(--space-4);align-self:start;display:block;position:sticky;top:4.4rem;overflow:auto}.mobile-nav{display:none}.content-shell{padding-top:var(--space-10)}}.cmd-trigger-hint{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--muted);font-family:var(--font-sans);font-size:var(--text-caption);font-weight:var(--weight-semibold);white-space:nowrap;margin-inline-start:var(--space-2);padding:.05rem .34rem;line-height:1.4}.cmd-palette{width:min(38rem, calc(100vw - 2 * var(--space-4)));max-width:calc(100vw - 2 * var(--space-4));border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);max-height:min(72vh,38rem);color:var(--ink);margin:12vh auto auto;padding:0;overflow:clip;box-shadow:0 24px 64px oklch(20% .035 300/.28)}:root[data-theme=dark] .cmd-palette{box-shadow:0 24px 64px oklch(0% 0 0/.5)}.cmd-palette:focus-visible{outline:none;box-shadow:0 24px 64px oklch(20% .035 300/.28)}.cmd-palette::backdrop{background:color-mix(in oklch, var(--ink) 42%, transparent);backdrop-filter:blur(2px)}.cmd-palette,.cmd-palette::backdrop{transition:opacity .18s cubic-bezier(.16, 1, .3, 1), transform .18s cubic-bezier(.16, 1, .3, 1), overlay .18s allow-discrete, display .18s allow-discrete}.cmd-palette[open]{opacity:1;transform:translateY(0)}.cmd-palette:not([open]){opacity:0;transform:translateY(-8px)}@starting-style{.cmd-palette[open]{opacity:0;transform:translateY(-8px)}.cmd-palette[open]::backdrop{opacity:0}}.cmd-palette-inner{max-height:inherit;grid-template-rows:auto minmax(0,1fr) auto;display:grid}.cmd-search-row{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border);padding:var(--space-3) var(--space-4);display:flex}.cmd-search-icon{width:1.25rem;height:1.25rem;color:var(--muted);flex-shrink:0}.cmd-input{min-width:0;color:var(--ink);padding:var(--space-2) 0;font-size:var(--text-lead);background:0 0;border:0;flex:1}.cmd-input:focus{outline:none}.cmd-input::placeholder{color:var(--muted)}.cmd-esc-hint{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font-family:var(--font-sans);font-size:var(--text-caption);font-weight:var(--weight-semibold);flex-shrink:0;padding:.05rem .4rem}.cmd-close-button{border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;padding:0 var(--space-3);justify-content:center;align-items:center;display:inline-flex}.cmd-close-button:hover,.cmd-close-button:focus-visible,.cmd-close-button:active{border-color:var(--primary);background:var(--primary-soft)}.cmd-results{gap:var(--space-1);padding:var(--space-2);overscroll-behavior:contain;margin:0;list-style:none;display:grid;overflow-y:auto}.cmd-result{gap:var(--space-3);border-radius:var(--radius-md);padding:var(--space-3) var(--space-3);cursor:pointer;border:1px solid #0000;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.cmd-result[aria-selected=true]{border-color:var(--primary);background:var(--primary-soft)}.cmd-result .chip{align-self:start}.cmd-result-main{gap:.1rem;min-width:0;display:grid}.cmd-result-main strong{color:var(--ink);font-size:var(--text-body);line-height:var(--line-title);overflow-wrap:anywhere}.cmd-result-main span{-webkit-line-clamp:2;color:var(--muted);font-size:var(--text-label);line-height:var(--line-compact);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.cmd-result .result-meta{white-space:nowrap;align-self:start}.cmd-empty{padding:var(--space-6) var(--space-4);color:var(--muted);text-align:center;margin:0}.cmd-footer{gap:var(--space-2) var(--space-4);border-top:1px solid var(--border);background:var(--surface);padding:var(--space-2) var(--space-4);color:var(--muted);font-size:var(--text-caption);flex-wrap:wrap;align-items:center;display:flex}.cmd-hint-keys{align-items:center;gap:.3rem;display:inline-flex}.cmd-footer kbd{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);font-family:var(--font-sans);font-size:var(--text-caption);padding:.02rem .3rem;line-height:1.4}.cmd-count{font-weight:var(--weight-semibold);margin-inline-start:auto}@media (width<=32rem){.cmd-esc-hint{display:none}.cmd-palette{width:100%;max-width:100%;max-height:86vh;margin:env(safe-area-inset-top) 0 0;border-radius:0 0 var(--radius-lg) var(--radius-lg);border-block-start:0;border-inline:0}}@media (forced-colors:active){.cmd-palette{box-shadow:none;border-color:canvastext}.cmd-result[aria-selected=true]{forced-color-adjust:none;background:canvas;border-color:highlight;outline:2px solid highlight}}
