@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-wght-normal.BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-vietnamese-wght-normal.6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-ext-wght-normal.DC-KSUi6.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-wght-normal.BgDaEnEv.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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-cyrillic-ext-wght-normal.X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-cyrillic-wght-normal.DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-symbols2-wght-normal.CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-vietnamese-wght-normal.DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-ext-wght-normal.Bwz-egvJ.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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-wght-normal.XN7g48iV.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}:root,html[data-theme=light]{--midnight:#f5f6fa;--deep-navy:#eceff6;--surface:#e3e8f2;--card:#fff;--card-subtle:#fafbfd;--code-bg:#eff2f8;--alt-code-bg:#f5f7fb;--header-bg:#f5f6fad6;--electric:#155be8;--bridge:#1461ed;--amber:#f18a50;--ivory:#070d19;--text-2:#37455e;--border:#d4dce9;--text-3:#526079;--border-soft:#e2e7f1;--blue-ink:#155be8;--electric-hover:#114fd0;--amber-soft:#9a3e0c;--amber-ink:#b44a10;--on-electric:#fff;--path-ink:#1e2d47;--backdrop:#070d196b;--shadow-card:0 1px 2px #070d190a, 0 10px 28px -12px #070d1914;--shadow-card-sm:0 1px 2px #070d1908, 0 4px 12px -4px #070d190d;--shadow-primary:0 1px 2px #155be838, 0 8px 20px -6px #155be857;--hero-wash:radial-gradient(58rem 26rem at 18% -4%, #155be80f, transparent 70%), radial-gradient(46rem 22rem at 82% 4%, #f18a5011, transparent 70%);--font-sans:"Geist Variable", "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Geist Mono Variable", "Geist Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--text-display:clamp(2.75rem, 1.3rem + 6.4vw, 5.75rem);--text-h2:clamp(1.875rem, 1.2rem + 2.9vw, 3.125rem);--text-h3:clamp(1.375rem, 1.15rem + .9vw, 1.75rem);--text-lead:clamp(1.0625rem, 1rem + .35vw, 1.25rem);--text-body:1rem;--text-small:.875rem;--text-micro:.75rem;--page-max:76rem;--gutter:clamp(1.25rem, .4rem + 3.6vw, 2.5rem);--section-y:clamp(4.5rem, 2.5rem + 8vw, 8.5rem);--header-h:4rem;--radius-s:4px;--radius-m:8px;--radius-l:12px;--ease:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--dur:.17s;--dur-med:.26s;color-scheme:light}html[data-theme=dark]{--midnight:#070d19;--deep-navy:#0b1425;--surface:#111d31;--card:#070d19;--card-subtle:#0b1425;--code-bg:#0b1425;--alt-code-bg:#070d19;--header-bg:#070d19d6;--electric:#155be8;--bridge:#1461ed;--amber:#f18a50;--ivory:#f3f0e9;--text-2:#a6b0c0;--border:#263249;--text-3:#7c879b;--border-soft:#1a2538;--blue-ink:#8ab4ff;--electric-hover:#114fd0;--amber-soft:#f6b58e;--amber-ink:#f18a50;--on-electric:#f3f0e9;--path-ink:#c3cddb;--backdrop:#040810c7;--shadow-card:0 14px 34px -16px #0000008c;--shadow-card-sm:none;--shadow-primary:0 8px 22px -6px #155be873;--hero-wash:radial-gradient(58rem 26rem at 18% -4%, #155be81c, transparent 70%), radial-gradient(46rem 22rem at 82% 4%, #f18a5012, transparent 70%);color-scheme:dark}html[data-theme-switching],html[data-theme-switching] body,html[data-theme-switching] .site-header,html[data-theme-switching] .section--alt,html[data-theme-switching] .frame,html[data-theme-switching] .frame__bar,html[data-theme-switching] .frame__foot,html[data-theme-switching] .astro-code{transition:background-color .22s var(--ease), border-color .22s var(--ease), color .22s var(--ease), box-shadow .22s var(--ease)!important}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1.5rem);background:var(--midnight)}body{background:var(--midnight);min-height:100vh;color:var(--text-2);font-family:var(--font-sans);font-size:var(--text-body);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{color:var(--ivory);text-wrap:balance;margin:0;font-weight:500}p{text-wrap:pretty;margin:0}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}code,kbd,pre,samp{font-family:var(--font-mono);font-size:.9em}::selection{background:var(--electric);color:var(--on-electric)}:focus{outline:none}:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:2px}[hidden]{display:none!important}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--gutter);z-index:200;background:var(--ivory);color:var(--midnight);border-radius:var(--radius-s);transition:top var(--dur) var(--ease);padding:.6rem 1rem;font-weight:500;position:absolute;top:-4rem}.skip-link:focus{top:.75rem}@keyframes hero-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes panel-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes copy-pop{0%{transform:scale(.95)}60%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes row-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}[data-reveal=pending]{opacity:0;transform:translateY(14px)}[data-reveal=in]{opacity:1;transition:opacity .46s var(--ease-out) var(--reveal-delay,0s), transform .46s var(--ease-out) var(--reveal-delay,0s);transform:translateY(0)}.wrap{width:100%;max-width:var(--page-max);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section-y);position:relative}.span-rule{background:var(--border);border:0;height:1px;margin:0;position:relative}.span-rule:before,.span-rule:after{content:"";background:var(--ivory);width:7px;height:7px;position:absolute;top:50%;transform:translateY(-50%)rotate(45deg)}.span-rule:before{left:0}.span-rule:after{right:0}.section-head{gap:1.5rem var(--gutter);grid-template-columns:minmax(0,3fr) minmax(0,9fr);margin-bottom:clamp(2.5rem,1.5rem + 3vw,4.5rem);display:grid}.section-head__rail{flex-direction:column;gap:.7rem;padding-top:.55rem;display:flex}.section-head__meta{align-items:baseline;gap:.75rem;display:flex}.section-head__line{background:linear-gradient(90deg, var(--amber), var(--border));transform-origin:0;width:min(7.5rem,72%);height:1px;display:block;position:relative}.section-head__line:before{content:"";background:var(--amber);width:5px;height:5px;position:absolute;top:50%;left:0;transform:translateY(-50%)rotate(45deg)}.section-head__body{max-width:46rem}.section-head h2{font-size:var(--text-h2);letter-spacing:-.028em;line-height:1.06}.section-head__lead{font-size:var(--text-lead);max-width:40rem;margin-top:1.5rem;line-height:1.55}.section-head[data-reveal=pending]{opacity:1;transform:none}.section-head[data-reveal=pending] .section-head__meta{opacity:0;transform:translate(-8px)}.section-head[data-reveal=pending] .section-head__line{opacity:0;transform:scaleX(0)}.section-head[data-reveal=pending] h2{opacity:0;transform:translateY(18px)}.section-head[data-reveal=pending] .section-head__lead{opacity:0;transform:translateY(12px)}.section-head[data-reveal=in] .section-head__meta{opacity:1;transition:opacity .44s cubic-bezier(.16,1,.3,1),transform .44s cubic-bezier(.16,1,.3,1);transform:translate(0)}.section-head[data-reveal=in] .section-head__line{opacity:1;transition:opacity .42s cubic-bezier(.16,1,.3,1) 70ms,transform .64s cubic-bezier(.16,1,.3,1) 70ms;transform:scaleX(1)}.section-head[data-reveal=in] h2{opacity:1;transition:opacity .56s cubic-bezier(.16,1,.3,1) 55ms,transform .56s cubic-bezier(.16,1,.3,1) 55ms;transform:translateY(0)}.section-head[data-reveal=in] .section-head__lead{opacity:1;transition:opacity .54s cubic-bezier(.16,1,.3,1) .14s,transform .54s cubic-bezier(.16,1,.3,1) .14s;transform:translateY(0)}.overline{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.09em;text-transform:uppercase;color:var(--text-2)}.index{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.06em;color:var(--amber-ink)}@media (width<=860px){.section-head{grid-template-columns:1fr;gap:1rem}.section-head__rail{padding-top:0}}.ivory{color:var(--ivory)}.ic{font-family:var(--font-mono);color:var(--ivory);background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-s);white-space:nowrap;padding:.08em .38em;font-size:.875em}.text-link{color:var(--ivory);text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:.22em;transition:text-decoration-color var(--dur) var(--ease);text-decoration-thickness:1px}.text-link:hover{text-decoration-color:var(--amber)}.arrow-link{color:var(--ivory);font-weight:500;font-size:var(--text-small);align-items:center;gap:.45rem;min-height:44px;display:inline-flex}.arrow-link:after{content:"→";font-family:var(--font-mono);color:var(--amber-ink);transition:transform var(--dur-med) var(--ease-out)}.arrow-link:hover:after{transform:translate(4px)}.btn{border-radius:var(--radius-m);white-space:nowrap;min-height:44px;transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur) var(--ease-out), box-shadow var(--dur-med) var(--ease-out);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:0 1.15rem;font-size:.9375rem;font-weight:500;line-height:1;display:inline-flex}.btn:active{transform:translateY(0)scale(.985)}.btn--primary{background:var(--electric);color:var(--on-electric)}.btn--primary:hover{background:var(--electric-hover);box-shadow:var(--shadow-primary);transform:translateY(-1px)}.btn--secondary{background:var(--card);border-color:var(--border);color:var(--ivory);box-shadow:var(--shadow-card-sm)}.btn--secondary:hover{border-color:var(--text-3);background:var(--deep-navy);transform:translateY(-1px)}.btn--ghost{color:var(--text-2);padding-inline:.5rem}.btn--ghost:hover{color:var(--ivory)}.btn--small{min-height:36px;font-size:var(--text-small);padding-inline:.85rem}.copy{border:1px solid var(--border);border-radius:var(--radius-s);min-width:44px;min-height:36px;font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.04em;color:var(--text-2);background:var(--card);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), background-color var(--dur) var(--ease), transform var(--dur) var(--ease-out);flex:none;justify-content:center;align-items:center;gap:.4rem;padding:0 .7rem;display:inline-flex}.copy:hover{color:var(--ivory);border-color:var(--text-3);transform:translateY(-1px)}.copy:active{transform:scale(.97)}.copy[data-copied=true]{color:var(--amber-ink);border-color:var(--amber);animation:copy-pop .24s var(--ease-out)}.tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:.25rem;display:flex;position:relative;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{min-height:44px;font-family:var(--font-mono);color:var(--text-3);white-space:nowrap;transition:color var(--dur) var(--ease);flex:none;padding:0 .85rem;font-size:.8125rem;position:relative}.tab:hover,.tab[aria-selected=true]{color:var(--ivory)}.tabs:not([data-glide-ready]) .tab[aria-selected=true]:after{content:"";background:var(--amber);height:2px;position:absolute;bottom:0;left:.85rem;right:.85rem}.tabs__glide{height:2px;width:var(--glide-w,0px);background:var(--amber);transform:translateX(var(--glide-x,0px));transition:transform var(--dur-med) var(--ease-out), width var(--dur-med) var(--ease-out);pointer-events:none;position:absolute;bottom:0;left:0}.tab:focus-visible{outline-offset:-3px}@media (width<=420px){.tab{padding:0 .62rem;font-size:.75rem}}[role=tabpanel][data-entering=true]{animation:panel-in .21s var(--ease-out)}.frame{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-card);min-width:0;transition:border-color var(--dur-med) var(--ease);overflow:hidden}.frame:hover{border-color:color-mix(in srgb, var(--border) 72%, var(--text-3))}.frame__bar{border-bottom:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;gap:1rem;min-height:46px;padding-inline:.5rem .75rem;display:flex}.frame__title{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.04em;color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;padding-left:.5rem;overflow:hidden}.frame__foot{border-top:1px solid var(--border);font-family:var(--font-mono);font-size:var(--text-micro);color:var(--text-3);background:var(--card);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;padding:.7rem 1rem;display:flex}.frame__foot a{color:var(--text-2);text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:.2em}.frame__foot a:hover{color:var(--ivory)}.term{font-family:var(--font-mono);color:var(--text-2);tab-size:2;white-space:pre;scrollbar-width:thin;scrollbar-color:var(--border) transparent;margin:0;padding:1.1rem 1.15rem 1.25rem;font-size:.8125rem;line-height:1.62;overflow:auto}.term--tall{max-height:27rem}.term--wrap{white-space:pre-wrap;overflow-wrap:anywhere}.term .t-prompt{color:var(--amber-ink);user-select:none}.term .t-cmd,.term .t-ok{color:var(--ivory)}.term .t-warn{color:var(--amber-ink)}.term .t-dim{color:var(--text-3)}.term .t-code{color:var(--blue-ink)}.term .t-path{color:var(--path-ink)}.term .t-note{color:var(--text-3);font-style:italic}.astro-code{font-family:var(--font-mono);scrollbar-width:thin;scrollbar-color:var(--border) transparent;tab-size:2;margin:0;padding:1.1rem 1.15rem;font-size:.8125rem;line-height:1.62;overflow-x:auto;background:var(--code-bg)!important}html[data-theme=dark] .astro-code,html[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important}.astro-code code{font-size:inherit}.chip{font-family:var(--font-mono);letter-spacing:.04em;white-space:nowrap;color:var(--text-2);align-items:center;gap:.45rem;font-size:.6875rem;display:inline-flex}.chip:before{content:"";border:1px solid var(--text-3);width:7px;height:7px;transform:rotate(45deg)}.chip[data-tier=RUNTIME_VERIFIED]{color:var(--amber-ink)}.chip[data-tier=RUNTIME_VERIFIED]:before{background:var(--amber);border-color:var(--amber)}.chip[data-tier=INTEGRATION_TESTED]{color:var(--blue-ink)}.chip[data-tier=INTEGRATION_TESTED]:before{background:var(--bridge);border-color:var(--bridge)}.chip[data-tier=FIXTURE_TESTED]:before{border-color:var(--blue-ink)}.chip--plain:before{display:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal=pending],[data-reveal=in],.section-head[data-reveal=pending] *,.section-head[data-reveal=in] *{opacity:1!important;transition:none!important;transform:none!important}.hero-title__sheen{color:var(--ivory)!important;background:0 0!important}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.article{max-width:52rem;padding-block:clamp(2.5rem,1.5rem + 4vw,4.5rem) clamp(4rem,3rem + 5vw,6rem)}.article__crumbs{font-size:var(--text-small);color:var(--text-3);flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.75rem;display:flex}.article__crumbs a{color:var(--text-2);text-decoration:none}.article__crumbs a:hover{color:var(--blue-ink);text-decoration:underline}.article__head{border-bottom:1px solid var(--border-soft);margin-bottom:clamp(2rem,1.4rem + 2vw,3rem);padding-bottom:1.75rem}.article__kicker{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--amber-ink);margin:0 0 .85rem;animation:.42s cubic-bezier(.16,1,.3,1) both hero-rise}.article__head h1{letter-spacing:-.02em;color:var(--ivory);margin:0 0 1rem;font-size:clamp(2rem,1.35rem + 2.6vw,3rem);line-height:1.1;animation:.5s cubic-bezier(.16,1,.3,1) 50ms both hero-rise}.article__lead{font-size:var(--text-lead);color:var(--text-2);max-width:46rem;margin:0;line-height:1.6;animation:.5s cubic-bezier(.16,1,.3,1) .11s both hero-rise}.article__meta{font-size:var(--text-small);color:var(--text-3);font-family:var(--font-mono);margin:1.1rem 0 0}.prose{color:var(--text-2);font-size:1.0625rem;line-height:1.75}.prose>*+*{margin-top:1.15em}.prose h2{letter-spacing:-.015em;color:var(--ivory);scroll-margin-top:calc(var(--header-h) + 1.5rem);margin:2.5em 0 .75em;font-size:clamp(1.375rem,1.15rem + 1vw,1.75rem);line-height:1.25}.prose h3{color:var(--ivory);scroll-margin-top:calc(var(--header-h) + 1.5rem);margin:2em 0 .5em;font-size:1.1875rem;line-height:1.35}.prose h2+*,.prose h3+*{margin-top:0}.prose a{color:var(--blue-ink);text-underline-offset:.18em;text-decoration:underline 1px}.prose a:hover{color:var(--electric-hover)}.prose strong{color:var(--ivory);font-weight:600}.prose ul,.prose ol{padding-left:1.35rem}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--text-3)}.prose code{font-family:var(--font-mono);background:var(--code-bg);border:1px solid var(--border-soft);border-radius:var(--radius-s);color:var(--path-ink);padding:.12em .36em;font-size:.875em}.prose pre{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius-m);font-size:var(--text-small);padding:1rem 1.15rem;line-height:1.6;overflow-x:auto}.prose pre code{font-size:inherit;background:0 0;border:0;padding:0}.prose blockquote{border-left:3px solid var(--amber);color:var(--text-3);margin:1.5em 0;padding:.25em 0 .25em 1.1em}.prose table{border-collapse:collapse;width:100%;font-size:var(--text-small);display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border-soft);text-align:left;vertical-align:top;padding:.6rem .75rem}.prose th{background:var(--card-subtle);color:var(--ivory);font-weight:600}.prose hr{border:0;border-top:1px solid var(--border-soft);margin:2.5em 0}.article__faq{border-top:1px solid var(--border-soft);margin-top:clamp(2.5rem,2rem + 2vw,4rem);padding-top:2rem}.article__faq h2{color:var(--ivory);margin:0 0 1.25rem;font-size:clamp(1.375rem,1.15rem + 1vw,1.75rem)}.article__faq dl{margin:0}.article__faq dt{color:var(--ivory);margin-top:1.35rem;font-weight:600}.article__faq dt:first-child{margin-top:0}.article__faq dd{color:var(--text-2);margin:.35rem 0 0;line-height:1.7}.article__foot{border-top:1px solid var(--border-soft);color:var(--text-3);font-size:var(--text-small);margin-top:clamp(2.5rem,2rem + 2vw,4rem);padding-top:1.75rem;line-height:1.7}.article__foot code{font-family:var(--font-mono);background:var(--code-bg);border:1px solid var(--border-soft);border-radius:var(--radius-s);padding:.1em .35em;font-size:.95em}.article__foot a{color:var(--blue-ink)}.post-list{gap:1.5rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.post-list li{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius-l);box-shadow:var(--shadow-card-sm);margin:0;padding:1.15rem 1.25rem}.post-list a{color:var(--ivory);font-size:1.0625rem;font-weight:600;text-decoration:none}.post-list a:hover{color:var(--blue-ink);text-decoration:underline}.post-list time{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--text-3);margin-top:.3rem;display:block}.post-list p{font-size:var(--text-small);color:var(--text-2);margin:.55rem 0 0;line-height:1.6}.logo[data-astro-cid-f7espo7c]{flex:none;align-items:center;display:inline-flex}.logo__pic[data-astro-cid-f7espo7c]{display:block}.logo__pic--dark[data-astro-cid-f7espo7c],html[data-theme=dark] .logo__pic--light[data-astro-cid-f7espo7c]{display:none}html[data-theme=dark] .logo__pic--dark[data-astro-cid-f7espo7c]{display:block}.logo[data-astro-cid-f7espo7c] img[data-astro-cid-f7espo7c]{height:auto;display:block}@media (width<=420px){.logo[data-astro-cid-f7espo7c] img[data-astro-cid-f7espo7c]{width:auto;max-height:24px}}.site-footer[data-astro-cid-jo6i4kqk]{padding-block:4rem 3rem}.site-footer__grid[data-astro-cid-jo6i4kqk]{gap:2.5rem var(--gutter);grid-template-columns:minmax(0,4fr) repeat(3,minmax(0,2fr));padding-block:3.5rem 3rem;display:grid}.site-footer__brand[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{max-width:22rem;font-size:var(--text-small);margin-top:1.1rem}.site-footer__meta[data-astro-cid-jo6i4kqk]{font-family:var(--font-mono);color:var(--text-3);flex-wrap:wrap;gap:.35rem 1.1rem;display:flex;font-size:var(--text-micro)!important}h2[data-astro-cid-jo6i4kqk]{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.09em;text-transform:uppercase;color:var(--text-3);margin-bottom:.9rem;font-weight:400}ul[data-astro-cid-jo6i4kqk]{margin:0;padding:0;list-style:none}li[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{min-height:36px;font-size:var(--text-small);color:var(--text-2);transition:color var(--dur) var(--ease);align-items:center;display:inline-flex}li[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--ivory)}.site-footer__legal[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--border-soft);font-size:var(--text-micro);color:var(--text-3);flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding-top:1.5rem;display:flex}@media (width<=860px){.site-footer__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__brand[data-astro-cid-jo6i4kqk]{grid-column:1/-1}}@media (width<=420px){.site-footer__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr 1fr;gap:2rem 1rem}}.site-header[data-astro-cid-nen7h5rs]{z-index:100;background:var(--header-bg);-webkit-backdrop-filter:saturate(160%)blur(12px);transition:border-color var(--dur) var(--ease), background-color var(--dur) var(--ease);border-bottom:1px solid #0000;position:sticky;top:0}.site-header[data-astro-cid-nen7h5rs][data-menu-open=true]{background:var(--midnight);-webkit-backdrop-filter:none}.site-header[data-astro-cid-nen7h5rs][data-scrolled=true],.site-header[data-astro-cid-nen7h5rs][data-menu-open=true]{border-bottom-color:var(--border)}.site-header__inner[data-astro-cid-nen7h5rs]{height:var(--header-h);align-items:center;gap:1.5rem;display:flex}.site-header__brand[data-astro-cid-nen7h5rs]{align-items:center;min-height:44px;margin-right:auto;display:flex}.site-nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.site-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{height:var(--header-h);font-size:var(--text-small);color:var(--text-2);transition:color var(--dur) var(--ease);align-items:center;padding-inline:.7rem;display:flex;position:relative}.site-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.site-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current]{color:var(--ivory)}.site-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current]:after{content:"";background:var(--amber);height:2px;position:absolute;bottom:-1px;left:.7rem;right:.7rem}.site-header__actions[data-astro-cid-nen7h5rs]{align-items:center;gap:.55rem;display:flex}.search-trigger[data-astro-cid-nen7h5rs]{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--card);min-height:36px;color:var(--text-3);font-size:var(--text-small);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease-out);align-items:center;gap:.55rem;padding:0 .6rem 0 .7rem;display:inline-flex}.search-trigger[data-astro-cid-nen7h5rs]:hover{color:var(--ivory);border-color:var(--text-3);transform:translateY(-1px)}.search-trigger__kbd[data-astro-cid-nen7h5rs]{font-family:var(--font-mono);border:1px solid var(--border);color:var(--text-3);border-radius:3px;padding:.1rem .35rem;font-size:.6875rem}.theme-toggle[data-astro-cid-nen7h5rs]{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--card);width:36px;height:36px;color:var(--text-2);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.theme-toggle[data-astro-cid-nen7h5rs]:hover{color:var(--ivory);border-color:var(--text-3);transform:translateY(-1px)}.theme-toggle[data-astro-cid-nen7h5rs] svg[data-astro-cid-nen7h5rs]{transition:transform var(--dur-med) var(--ease-out)}.theme-toggle[data-astro-cid-nen7h5rs]:hover svg[data-astro-cid-nen7h5rs]{transform:rotate(-14deg)scale(1.06)}.theme-toggle__sun[data-astro-cid-nen7h5rs],html[data-theme=dark] .theme-toggle__moon[data-astro-cid-nen7h5rs]{display:none}html[data-theme=dark] .theme-toggle__sun[data-astro-cid-nen7h5rs]{display:block}.menu-toggle[data-astro-cid-nen7h5rs]{justify-content:center;align-items:center;width:44px;height:44px;margin-right:-.6rem;display:none}.menu-toggle__bars[data-astro-cid-nen7h5rs],.menu-toggle__bars[data-astro-cid-nen7h5rs]:before{background:var(--ivory);width:20px;height:1.5px;transition:transform var(--dur) var(--ease);display:block}.menu-toggle__bars[data-astro-cid-nen7h5rs]{position:relative;transform:translateY(-3.5px)}.menu-toggle__bars[data-astro-cid-nen7h5rs]:before{content:"";position:absolute;top:7px;left:0}.menu-toggle[data-astro-cid-nen7h5rs][aria-expanded=true] .menu-toggle__bars[data-astro-cid-nen7h5rs]{transform:translateY(0)rotate(45deg)}.menu-toggle[data-astro-cid-nen7h5rs][aria-expanded=true] .menu-toggle__bars[data-astro-cid-nen7h5rs]:before{transform:translateY(-7px)rotate(-90deg)}.mobile-menu[data-astro-cid-nen7h5rs]{inset:var(--header-h) 0 0 0;background:var(--midnight);padding-block:.5rem 2.5rem;position:fixed;overflow-y:auto}.mobile-menu[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{margin:0;padding:0;list-style:none}.mobile-menu[data-astro-cid-nen7h5rs] li[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--border-soft);min-height:60px;color:var(--ivory);letter-spacing:-.01em;justify-content:space-between;align-items:center;font-size:1.25rem;display:flex}.mobile-menu[data-astro-cid-nen7h5rs] li[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current] span[data-astro-cid-nen7h5rs]:first-child{color:var(--amber-ink)}.mobile-menu__arrow[data-astro-cid-nen7h5rs]{font-family:var(--font-mono);color:var(--text-3);font-size:1rem}.mobile-menu__cta[data-astro-cid-nen7h5rs]{width:100%;min-height:52px;margin-top:1.75rem}@media (width<=1080px){.search-trigger__label[data-astro-cid-nen7h5rs]{display:none}}@media (width<=940px){.site-nav[data-astro-cid-nen7h5rs],.site-header__cta[data-astro-cid-nen7h5rs],.search-trigger__kbd[data-astro-cid-nen7h5rs]{display:none}.menu-toggle[data-astro-cid-nen7h5rs]{display:inline-flex}.search-trigger[data-astro-cid-nen7h5rs],.theme-toggle[data-astro-cid-nen7h5rs]{width:44px;height:44px;min-height:44px;color:var(--ivory);background:0 0;border-color:#0000;justify-content:center;padding:0}.site-header__actions[data-astro-cid-nen7h5rs]{gap:0}}@media (width>=941px){.mobile-menu[data-astro-cid-nen7h5rs]{display:none!important}}.search{border:1px solid var(--border);border-radius:var(--radius-l);background:var(--card);width:min(42rem,100vw - 2rem);max-height:min(36rem,100dvh - 4rem);box-shadow:var(--shadow-card);color:var(--text-2);margin:clamp(1rem,10vh,6rem) auto auto;padding:0;overflow:hidden}.search::backdrop{background:var(--backdrop)}.search[open]{animation:dialog-in .19s var(--ease-out);display:flex}@keyframes dialog-in{0%{opacity:0;transform:translateY(-8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.search__panel{flex-direction:column;width:100%;min-height:0;display:flex}.search__form{border-bottom:1px solid var(--border);color:var(--text-3);align-items:center;gap:.75rem;padding:0 .75rem 0 1.1rem;display:flex}.search__input{min-width:0;height:56px;color:var(--ivory);font:inherit;background:0 0;border:0;flex:1;font-size:1.0625rem}.search__input::placeholder{color:var(--text-3)}.search__input:focus-visible{outline:none}.search__input::-webkit-search-cancel-button{display:none}.search__close{border:1px solid var(--border);border-radius:var(--radius-s);min-width:44px;min-height:32px;font-family:var(--font-mono);color:var(--text-3);flex:none;padding:0 .5rem;font-size:.6875rem}.search__close:hover{color:var(--ivory)}.search__body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex:1;min-height:0;overflow-y:auto}.search__status{font-size:var(--text-small);color:var(--text-3);padding:1.1rem 1.1rem .5rem}.search__status:empty{display:none}.search__results{margin:0;padding:.35rem;list-style:none}.search__results:empty{display:none}.search-result{border-radius:var(--radius-m);border:1px solid #0000;padding:.7rem .75rem;display:block}.search-result[aria-selected=true]{background:var(--surface);border-color:var(--border)}.search-result__crumb{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-3);font-size:.6875rem}.search-result__title{color:var(--ivory);margin-top:.15rem;font-weight:500;display:block}.search-result__excerpt{font-size:var(--text-small);color:var(--text-2);margin-top:.25rem;line-height:1.5;display:block}.search-result__excerpt mark{color:var(--amber-ink);background:0 0;font-weight:500}.search__foot{border-top:1px solid var(--border);font-family:var(--font-mono);color:var(--text-3);background:var(--midnight);gap:1.25rem;padding:.6rem 1.1rem;font-size:.6875rem;display:flex}.search__foot kbd{border:1px solid var(--border);text-align:center;min-width:1.3rem;font-size:inherit;border-radius:3px;margin-right:.3rem;padding:.05rem .3rem;display:inline-block}@media (width<=560px){.search{max-height:calc(100dvh - 1.5rem);margin-top:.75rem}.search__foot{display:none}}
