@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.logo[data-astro-cid-f7espo7c]{color:var(--text);align-items:center;gap:8px;display:inline-flex}.logo__mark[data-astro-cid-f7espo7c]{height:var(--mark);aspect-ratio:var(--mark-ratio);flex:none;display:block}.logo__mark[data-astro-cid-f7espo7c] svg{width:100%;height:100%;display:block}.logo__word[data-astro-cid-f7espo7c]{font-family:var(--font-display);font-size:calc(var(--mark) * .74);letter-spacing:-.018em;font-weight:600}.hdr[data-astro-cid-nen7h5rs]{z-index:var(--z-sticky);padding-top:env(safe-area-inset-top);background:0 0;position:sticky;top:0}.hdr[data-astro-cid-nen7h5rs]:before{content:"";background:var(--glass);backdrop-filter:var(--glass-filter);box-shadow:var(--specular);opacity:0;transition:opacity var(--d-3) var(--ease);pointer-events:none;position:absolute;inset:0}.hdr[data-astro-cid-nen7h5rs]:after{content:"";background:linear-gradient(to bottom, color-mix(in srgb, var(--text) 9%, transparent), transparent);opacity:0;height:2px;transition:opacity var(--d-3) var(--ease);pointer-events:none;position:absolute;inset:auto 0 -2px}.hdr[data-astro-cid-nen7h5rs][data-scrolled]:before,.hdr[data-astro-cid-nen7h5rs][data-scrolled]:after{opacity:1}.hdr__bar[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--s-6);height:var(--header-h);display:flex;position:relative}@media (pointer:coarse){.hdr__brand[data-astro-cid-nen7h5rs]{min-height:44px}}.hdr__brand[data-astro-cid-nen7h5rs]{border-radius:var(--r-xs);flex:none;align-items:center;display:inline-flex}.hdr__nav[data-astro-cid-nen7h5rs]{gap:var(--s-1);display:none;position:absolute;left:50%;transform:translate(-50%)}.hdr__link[data-astro-cid-nen7h5rs]{border-radius:var(--r-sm);font-size:var(--t-sm);color:var(--text-secondary);transition:color var(--d-3) var(--ease), transform var(--d-3) var(--ease);padding:8px 12px;font-weight:450;display:inline-block}@media (hover:hover){.hdr__link[data-astro-cid-nen7h5rs]:hover{color:var(--text-strong);transition-duration:var(--d-1);transform:scale(1.05)}}.hdr__link[data-astro-cid-nen7h5rs]:active{transition-duration:70ms;transform:scale(1)}.hdr__link[data-astro-cid-nen7h5rs].is-active{color:var(--text-strong);font-weight:550}.hdr__actions[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--s-2);flex:none;margin-left:auto;display:flex}.hdr__signin[data-astro-cid-nen7h5rs]{border-radius:var(--r-sm);font-size:var(--t-sm);color:var(--text-secondary);transition:color var(--d-1) var(--ease);padding:8px 12px;font-weight:450;display:none}.hdr__signin[data-astro-cid-nen7h5rs]:hover{color:var(--text)}.hdr__cta[data-astro-cid-nen7h5rs]{display:none}.hdr__burger[data-astro-cid-nen7h5rs]{border-radius:var(--r-md);width:44px;height:44px;color:var(--text);place-items:center;margin-right:-10px;display:grid}.hdr__burger-icon[data-astro-cid-nen7h5rs]{transition:opacity var(--d-2) var(--ease), transform var(--d-2) var(--ease);grid-area:1/1;place-items:center;display:grid}.hdr__burger-icon--close[data-astro-cid-nen7h5rs]{opacity:0;transform:rotate(-45deg)}.hdr__burger[data-astro-cid-nen7h5rs][aria-expanded=true] .hdr__burger-icon[data-astro-cid-nen7h5rs]{opacity:0;transform:rotate(45deg)}.hdr__burger[data-astro-cid-nen7h5rs][aria-expanded=true] .hdr__burger-icon--close[data-astro-cid-nen7h5rs]{opacity:1;transform:none}.hdr__sheet[data-astro-cid-nen7h5rs]{inset:var(--header-h) 0 0;z-index:var(--z-overlay);background:var(--canvas);padding:var(--s-4) 0 max(var(--s-8), env(safe-area-inset-bottom));overscroll-behavior:contain;animation:sheet-in var(--d-4) var(--ease) both;grid-template-rows:1fr auto;display:grid;position:fixed;overflow-y:auto}@keyframes sheet-in{0%{opacity:0;transform:translateY(-8px)}}.hdr__sheet-nav[data-astro-cid-nen7h5rs]{padding-inline:var(--gutter);align-content:start;display:grid}.hdr__sheet-link[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;gap:var(--s-4);min-height:56px;padding-block:var(--s-2);border-bottom:1px solid var(--line);letter-spacing:var(--ls-tight);color:var(--text);font-size:22px;font-weight:500;display:flex}.hdr__sheet-link[data-astro-cid-nen7h5rs] svg[data-astro-cid-nen7h5rs]{color:var(--text-tertiary);transition:transform var(--d-2) var(--ease)}.hdr__sheet-link[data-astro-cid-nen7h5rs]:active svg[data-astro-cid-nen7h5rs]{transform:translate(3px)}.hdr__sheet-link[data-astro-cid-nen7h5rs].is-active,.hdr__sheet-link[data-astro-cid-nen7h5rs].is-active svg[data-astro-cid-nen7h5rs]{color:var(--accent)}.hdr__sheet-foot[data-astro-cid-nen7h5rs]{gap:var(--s-5);padding:var(--s-8) var(--gutter) 0;display:grid}.hdr__sheet-cta[data-astro-cid-nen7h5rs]{width:100%}.hdr__sheet-secondary[data-astro-cid-nen7h5rs]{justify-content:center;gap:var(--s-6);font-size:var(--t-sm);color:var(--text-secondary);display:flex}.hdr__sheet-secondary[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{min-height:44px;padding-inline:var(--s-2);border-radius:var(--r-sm);align-items:center;display:inline-flex}.hdr__sheet-secondary[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{color:var(--text)}@media (width>=860px){.hdr__nav[data-astro-cid-nen7h5rs],.hdr__signin[data-astro-cid-nen7h5rs],.hdr__cta[data-astro-cid-nen7h5rs]{display:flex}.hdr__burger[data-astro-cid-nen7h5rs],.hdr__sheet[data-astro-cid-nen7h5rs]{display:none}}.motion-toggle[data-astro-cid-ws4wxc4c]{min-height:24px;color:var(--text-secondary);font:inherit;font-size:var(--t-meta);white-space:nowrap;cursor:pointer;transition:color var(--d-1) var(--ease);background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.motion-toggle[data-astro-cid-ws4wxc4c]:hover,.motion-toggle[data-astro-cid-ws4wxc4c] [data-astro-cid-ws4wxc4c][data-motion-state]{color:var(--text)}.motion-toggle[data-astro-cid-ws4wxc4c]:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}@media (pointer:coarse){.motion-toggle[data-astro-cid-ws4wxc4c]{min-height:44px}}.ftr[data-astro-cid-jo6i4kqk]{background:var(--canvas-subtle);border-top:1px solid var(--line);padding-block:var(--s-20) var(--s-10);margin-top:var(--band-tight)}.ftr__grid[data-astro-cid-jo6i4kqk]{gap:var(--s-12) var(--s-8);grid-template-columns:1fr;display:grid}@media (width>=700px){.ftr__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=980px){.ftr__grid[data-astro-cid-jo6i4kqk]{gap:var(--s-8);grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr))}}.ftr__brand[data-astro-cid-jo6i4kqk]{gap:var(--s-4);align-content:start;display:grid}.ftr__brand[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{color:var(--text-secondary);font-size:var(--t-sm);max-width:32ch;line-height:1.55}.ftr__col[data-astro-cid-jo6i4kqk]{gap:var(--s-4);align-content:start;display:grid}.ftr__col[data-astro-cid-jo6i4kqk] h2[data-astro-cid-jo6i4kqk]{font-size:var(--t-xs);letter-spacing:0;color:var(--text);font-weight:600}.ftr__col[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{gap:var(--s-1);display:grid}.ftr__col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{min-height:40px;font-size:var(--t-sm);color:var(--text-secondary);border-radius:var(--r-xs);transition:color var(--d-1) var(--ease);align-items:center;display:inline-flex}.ftr__col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--text)}.ftr__legal[data-astro-cid-jo6i4kqk]{align-items:center;gap:var(--s-3) var(--s-6);margin-top:var(--s-16);padding-top:var(--s-6);border-top:1px solid var(--line);font-size:var(--t-meta);color:var(--text-tertiary);flex-wrap:wrap;display:flex}.ftr__docs[data-astro-cid-jo6i4kqk]{gap:var(--s-5);display:flex}.ftr__legal[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{min-height:24px;color:var(--text-tertiary);border-radius:var(--r-xs);transition:color var(--d-1) var(--ease);align-items:center;margin-inline:-2px;padding-inline:2px;display:inline-flex}.ftr__legal[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--text)}@media (pointer:coarse){.ftr__legal[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk],.ftr__col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{min-height:44px}.ftr__col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{align-items:center;display:inline-flex}.ftr__docs[data-astro-cid-jo6i4kqk]{gap:var(--s-3)}}.ftr__kbd[data-astro-cid-jo6i4kqk]{align-items:center;gap:var(--s-2);display:flex}.ftr__kbd[data-astro-cid-jo6i4kqk] kbd[data-astro-cid-jo6i4kqk]{font:inherit;border-radius:var(--r-xs);background:var(--canvas);box-shadow:inset 0 0 0 1px var(--line);padding:2px 6px}.ftr__legal[data-astro-cid-jo6i4kqk]>[data-astro-cid-jo6i4kqk]:last-child{margin-left:auto}@media (width<=700px){.ftr__legal[data-astro-cid-jo6i4kqk]>[data-astro-cid-jo6i4kqk]:last-child{margin-left:0}}.ftm[data-astro-cid-fntgkhjx]{--ftm-page:1364px;--ftm-gutter:clamp(20px, 2.9vw, 42px);--ftm-inset:22px;padding-block:8px 14px}.ftm__in[data-astro-cid-fntgkhjx]{width:100%;max-width:var(--ftm-page);padding-inline:var(--ftm-gutter);align-items:center;gap:var(--s-4);min-height:40px;font-size:var(--t-meta);margin-inline:auto;display:flex}.ftm__brand[data-astro-cid-fntgkhjx]{color:inherit;padding-left:var(--ftm-inset);text-decoration:none;display:inline-flex}.ftm__sep[data-astro-cid-fntgkhjx]{background:var(--line-strong);width:1px;height:18px;margin-inline:4px}.ftm__tag[data-astro-cid-fntgkhjx]{color:var(--text-secondary);margin:0}.ftm__links[data-astro-cid-fntgkhjx]{align-items:center;gap:32px;margin-left:auto;display:flex}.ftm__links[data-astro-cid-fntgkhjx] a[data-astro-cid-fntgkhjx]{min-height:24px;color:var(--text-secondary);transition:color var(--d-1) var(--ease);align-items:center;text-decoration:none;display:inline-flex}.ftm__links[data-astro-cid-fntgkhjx] a[data-astro-cid-fntgkhjx]:hover{color:var(--text)}.ftm__links[data-astro-cid-fntgkhjx] a[data-astro-cid-fntgkhjx].is-active{color:var(--text);font-weight:600}.ftm__social[data-astro-cid-fntgkhjx]{padding-right:var(--ftm-inset);align-items:center;gap:6px;margin-left:12px;display:flex}.ftm__motion[data-astro-cid-fntgkhjx]{margin-right:14px}.ftm__copy[data-astro-cid-fntgkhjx]{color:var(--text-secondary);white-space:nowrap;margin-right:10px}.ftm__social[data-astro-cid-fntgkhjx] a[data-astro-cid-fntgkhjx]{border-radius:var(--r-sm);width:32px;height:32px;color:var(--text-secondary);transition:color var(--d-1) var(--ease), background-color var(--d-1) var(--ease);place-items:center;display:grid}.ftm__social[data-astro-cid-fntgkhjx] a[data-astro-cid-fntgkhjx]:hover{color:var(--text);background:#0000000a}.ftm[data-astro-cid-fntgkhjx] a[data-astro-cid-fntgkhjx]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@media (width<=860px){.ftm__in[data-astro-cid-fntgkhjx]{row-gap:var(--s-3);padding-block:var(--s-4);flex-wrap:wrap}.ftm__brand[data-astro-cid-fntgkhjx],.ftm__social[data-astro-cid-fntgkhjx]{padding-inline:0}.ftm__links[data-astro-cid-fntgkhjx]{flex-wrap:wrap;gap:24px;width:100%;margin-left:0}.ftm__social[data-astro-cid-fntgkhjx]{margin-left:auto}.ftm__social[data-astro-cid-fntgkhjx] a[data-astro-cid-fntgkhjx]{width:44px;height:44px}.ftm__links[data-astro-cid-fntgkhjx] a[data-astro-cid-fntgkhjx],.ftm__brand[data-astro-cid-fntgkhjx]{min-height:44px}}.ldr[data-astro-cid-znqusmdt]{z-index:var(--z-top);background:var(--canvas);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--d-3) var(--ease), visibility 0s linear var(--d-3);place-items:center;display:grid;position:fixed;inset:0}:root[data-route=waiting] .ldr[data-astro-cid-znqusmdt]{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--d-3) var(--ease), visibility 0s}.ldr__mark[data-astro-cid-znqusmdt]{place-items:center;width:96px;height:96px;display:grid;position:relative}.ldr__ring[data-astro-cid-znqusmdt]{animation:1.1s linear infinite paused ldr-turn;position:absolute;inset:0}:root[data-route=waiting] .ldr__ring[data-astro-cid-znqusmdt]{animation-play-state:running}.ldr__dot[data-astro-cid-znqusmdt]{border-radius:var(--r-full);background:var(--text);width:5px;height:5px;transform:rotate(calc(var(--i) * 45deg)) translateY(-42px);opacity:calc(1 - var(--i) * .11);margin:-2.5px;position:absolute;top:50%;left:50%}@keyframes ldr-turn{to{rotate:360deg}}:root[data-motion=off] .ldr__ring[data-astro-cid-znqusmdt]{animation:ldr-breathe 1.6s var(--ease-inout) infinite}@keyframes ldr-breathe{50%{opacity:.35}}.pal[data-astro-cid-n5udgzh5]{width:auto;max-width:none;height:100%;max-height:none;padding:clamp(80px, 14vh, 180px) var(--gutter) 0;color:inherit;background:0 0;border:0;margin:0;position:fixed;inset:0;overflow:visible}.pal[data-astro-cid-n5udgzh5][open]{align-content:start;justify-items:center;display:grid}.pal[data-astro-cid-n5udgzh5]::backdrop{-webkit-backdrop-filter:blur(6px);background:#0000009e}.pal__box[data-astro-cid-n5udgzh5]{width:min(560px, calc(100vw - 2 * var(--gutter)));border-radius:var(--r-xl);border:1px solid var(--line-strong);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(24px)saturate(180%);box-shadow:var(--lift), 0 30px 80px -20px #000c;overflow:hidden}.pal[data-astro-cid-n5udgzh5][open] .pal__box[data-astro-cid-n5udgzh5]{animation:.26s cubic-bezier(.32,.72,0,1) pal-in}@keyframes pal-in{0%{opacity:0;transform:translateY(-8px)scale(.985)}}.pal__field[data-astro-cid-n5udgzh5]{align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--line);display:flex}.pal__caret[data-astro-cid-n5udgzh5]{color:var(--text-tertiary);flex:none}.pal__input[data-astro-cid-n5udgzh5]{font-size:var(--t-body);color:var(--text);background:0 0;border:0;outline:none;flex:1}.pal__input[data-astro-cid-n5udgzh5]::placeholder{color:var(--text-tertiary)}.pal__input[data-astro-cid-n5udgzh5]:focus-visible{box-shadow:none}.pal__esc[data-astro-cid-n5udgzh5]{border-radius:var(--r-sm);border:1px solid var(--line-strong);font-size:var(--t-meta);letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);flex:none;padding:3px 7px}.pal__list[data-astro-cid-n5udgzh5]{max-height:min(50vh,420px);padding:var(--s-2);overflow-y:auto}.pal__group[data-astro-cid-n5udgzh5]+.pal__group[data-astro-cid-n5udgzh5]{margin-top:var(--s-3)}.pal__group-title[data-astro-cid-n5udgzh5]{padding:var(--s-2) var(--s-3) 6px;font-size:var(--t-meta);letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.pal__note[data-astro-cid-n5udgzh5]{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:var(--t-meta);color:var(--text-tertiary);flex:none;overflow:hidden}.pal__item[data-astro-cid-n5udgzh5]{align-items:center;gap:var(--s-3);padding:10px var(--s-3);border-radius:var(--r-md);font-size:var(--t-sm);color:var(--text-secondary);transition:color var(--d-2) var(--ease-inout), background-color var(--d-2) var(--ease-inout);display:flex}.pal__item[data-astro-cid-n5udgzh5][aria-selected=true]{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--text)}.pal__item[data-astro-cid-n5udgzh5][aria-selected=true] .pal__ico[data-astro-cid-n5udgzh5]{border-color:color-mix(in srgb, var(--accent) 40%, var(--line));color:var(--accent)}.pal__ico[data-astro-cid-n5udgzh5]{border-radius:var(--r-sm);border:1px solid var(--line);background:var(--canvas-subtle);flex:none;place-items:center;width:28px;height:28px;display:grid}.pal__label[data-astro-cid-n5udgzh5]{color:inherit}.pal__copy[data-astro-cid-n5udgzh5]{flex:1;gap:2px;min-width:0;display:grid}.pal__description[data-astro-cid-n5udgzh5]{text-overflow:ellipsis;white-space:nowrap;font-size:var(--t-meta);color:var(--text-tertiary);line-height:1.35;overflow:hidden}.pal__ext[data-astro-cid-n5udgzh5]{color:var(--text-tertiary);flex:none}.pal__empty[data-astro-cid-n5udgzh5]{padding:var(--s-6) var(--s-5);text-align:center;font-size:var(--t-xs);color:var(--text-tertiary)}@font-face{font-family:Inter Variable;src:url(/fonts/Inter-Variable.woff2)format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Variable.woff2)format("woff2-variations");font-weight:100 900;font-style:normal;font-display:block}:root{color-scheme:light;--canvas:#ededf1;--canvas-subtle:#e4e4e9;--canvas-app:#ededf1;--surface:#fff;--surface-sunken:#f7f7f8;--stage:#0a0a0a;--stage-edge:#ffffff1a;--stage-ink:#f5f5f7;--stage-ink-secondary:#a1a1a6;--text:#1d1d1f;--text-strong:#000;--text-secondary:#66666b;--text-tertiary:#66666b;--line:#00000014;--line-strong:#00000024;--line-control:#00000073;--solid:#1d1d1f;--solid-hover:#292a2c;--solid-press:#151517;--solid-fg:#fff;--accent:#06c;--accent-hover:#00539f;--accent-fg:#fff;--accent-wash:#0066cc14;--glass:#ffffffad;--glass-filter:saturate(200%) blur(24px);--glass-control:#ffffff8c;--glass-control-filter:saturate(180%) blur(14px);--specular:inset 0 1px 0 #ffffffb3;--sheen-solid:linear-gradient(180deg, #ffffff12, #fff0 44%);--edge-solid:inset 0 1px 0 #ffffff38, inset 0 -1px 0 #ffffff0f;--depth-solid:0 1px 2px #0f172a33, 0 4px 10px #0f172a24;--depth-solid-hover:0 2px 4px #0f172a3d, 0 10px 20px #0f172a33;--edge-solid-press:inset 0 2px 4px #00000073, inset 0 0 0 1px #ffffff0f;--depth-solid-press:0 1px 1px #0f172a38;--depth-1:0 1px 2px #0f172a21, 0 4px 10px #0f172a1a;--depth-2:0 2px 4px #0f172a26, 0 10px 22px #0f172a21;--depth-press:0 1px 1px #0f172a29;--success:#127a3d;--warning:#9a5b00;--danger:#c5303a;--danger-solid:#c5303a;--danger-solid-fg:#fff;--control-face:linear-gradient(180deg, #fff, #f7f7f8);--control-face-hover:linear-gradient(180deg, #fff, #eeeef1);--control-face-press:#e9e9ed;--control-edge:inset 0 0 0 1px #0000002e, inset 0 2px 0 #fffc;--control-depth:0 1px 2px #00000012, 0 3px 6px #0000000a;--control-depth-hover:0 2px 3px #00000017, 0 5px 10px #0000000f;--control-depth-press:inset 0 1px 3px #00000014;--control-solid-depth:0 1px 2px #00000029, 0 3px 6px #0000001a;--font-display:"Inter Variable", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-sans:"Inter Variable", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ls-hero:-.042em;--ls-display:-.032em;--ls-tight:-.018em;--ls-body:-.006em;--ls-label:.06em;--t-hero:clamp(44px, 2.2rem + 4.6vw, 100px);--t-display:clamp(36px, 1.9rem + 2.9vw, 72px);--t-h3:clamp(22px, 1.25rem + .7vw, 32px);--t-figure:clamp(34px, 1.4rem + 1.4vw, 46px);--t-h4:20px;--t-lead:clamp(19px, 1.1rem + .28vw, 21px);--t-body:17px;--t-sm:15px;--t-xs:14px;--t-meta:13px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--s-20:80px;--s-24:96px;--s-30:120px;--s-40:160px;--s-50:200px;--band:clamp(80px, 3.5rem + 6.4vw, 200px);--band-tight:clamp(56px, 2.5rem + 4vw, 128px);--r-xs:8px;--r-sm:10px;--r-md:12px;--r-control:15px;--r-lg:18px;--r-xl:24px;--r-2xl:32px;--r-full:999px;--pad-card:clamp(20px, 2vw, 28px);--pad-panel:clamp(24px, 2.6vw, 40px);--pad-stage:clamp(28px, 3.6vw, 64px);--gap-panel:clamp(16px, 1.4vw, 24px);--gap-block:clamp(20px, 1.8vw, 32px);--e-1:0 1px 2px #0000000d;--e-2:0 4px 16px #0000000f;--e-3:0 16px 48px #00000014;--e-4:0 40px 100px #0000001a;--lift:inset 0 1px 0 #fff9;--page:1180px;--page-wide:1440px;--page-text:700px;--page-app:68rem;--measure:62ch;--measure-lead:44ch;--gutter:clamp(20px, 4.5vw, 44px);--header-h:56px;--z-raised:10;--z-sticky:60;--z-overlay:80;--z-progress:90;--z-top:100;--ease:cubic-bezier(.22, 1, .36, 1);--ease-inout:cubic-bezier(.65, 0, .35, 1);--d-1:.12s;--d-2:.16s;--d-3:.22s;--d-4:.32s;--d-5:.56s;--d-6:.8s;--d-route:.26s;--axis-x:#ff4d6a;--axis-y:#3ddc84;--axis-z:#4d9fff}[data-ground=dark]{color-scheme:dark;--canvas:#08080a;--canvas-subtle:#0d0d0f;--canvas-app:#050506;--surface:#141416;--surface-sunken:#0a0a0c;--text:#f5f5f7;--text-strong:#fff;--text-secondary:#a1a1a6;--text-tertiary:#a1a1a6;--line:#ffffff1a;--line-strong:#ffffff2e;--line-control:#fff6;--solid:#f5f5f7;--solid-hover:#fff;--solid-press:#e2e2e7;--solid-fg:#08080a;--accent:#409cff;--accent-hover:#6fb4ff;--accent-fg:#08080a;--accent-wash:#409cff1f;--glass:#0a0a0cad;--glass-control:#ffffff1a;--specular:inset 0 1px 0 #ffffff29;--sheen-solid:linear-gradient(180deg, #fff0 56%, #0000000a);--edge-solid:inset 0 -1px 0 #0000001c;--depth-solid:0 1px 2px #0000006b, 0 4px 10px #0000004d;--depth-solid-hover:0 2px 4px #0000007a, 0 10px 20px #0000005c;--edge-solid-press:inset 0 2px 4px #0000002e, inset 0 0 0 1px #00000017;--depth-solid-press:0 1px 1px #00000073;--depth-1:0 1px 2px #00000073, 0 3px 8px #00000059;--depth-2:0 2px 4px #00000080, 0 8px 20px #0006;--depth-press:0 1px 1px #00000080;--success:#4ade80;--warning:#fbbf24;--danger:#f87171;--danger-solid:#f87171;--danger-solid-fg:#08080a;--e-1:0 1px 2px #0006;--e-2:0 4px 16px #00000073;--e-3:0 16px 48px #0000008c;--e-4:0 40px 100px #000000a6;--lift:inset 0 1px 0 #ffffff14}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 24px)}@media (prefers-reduced-motion:no-preference){html:not([data-motion=off]){scroll-behavior:smooth}}body{background:var(--canvas);color:var(--text);font-family:var(--font-sans);font-size:var(--t-body);letter-spacing:var(--ls-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-optical-sizing:auto;font-feature-settings:"cv05" 1;font-weight:400;line-height:1.6;overflow-x:clip}img,picture,svg,video{max-width:100%;display:block}[hidden]{display:none!important}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}ul,ol{padding:0;list-style:none}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:var(--ls-display);text-wrap:balance;color:var(--text);font-weight:600;line-height:1.06}h3{font-size:var(--t-h3);letter-spacing:var(--ls-tight);line-height:1.2}h4{font-size:var(--t-h4);letter-spacing:var(--ls-tight);line-height:1.35}.t-hero{font-size:var(--t-hero);letter-spacing:var(--ls-hero);color:var(--text-strong);line-height:1.02}.t-display{font-size:var(--t-display);letter-spacing:var(--ls-display);line-height:1.06}.dual{color:var(--text-secondary)}.dual em{color:var(--text);font-style:normal}p{text-wrap:pretty}::selection{background:var(--accent);color:var(--accent-fg)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.container{width:100%;max-width:var(--page);padding-inline:max(var(--gutter), env(safe-area-inset-left)) max(var(--gutter), env(safe-area-inset-right));margin-inline:auto}.container--wide{max-width:var(--page-wide)}.container--text{max-width:var(--page-text)}.band{padding-block:var(--band);position:relative}.ph+.band,.ph+section>.band:first-child{padding-top:0}[data-ground=dark]{background:var(--canvas);color:var(--text)}.rule{border:0;border-top:1px solid var(--line)}.lead{font-size:var(--t-lead);color:var(--text-secondary);max-width:var(--measure-lead);letter-spacing:-.012em;line-height:1.5}.mono{font-family:var(--font-mono);font-variant-ligatures:none;letter-spacing:-.01em;font-size:.94em}.eyebrow{font-family:var(--font-mono);font-size:var(--t-meta);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-tertiary);font-weight:500}.num{font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.reveal{opacity:1}html.js .reveal{opacity:0;transition:opacity var(--d-5) var(--ease), transform var(--d-5) var(--ease);transition-delay:calc(var(--i,0) * 70ms);transform:translateY(20px)}html.js .reveal.is-in{opacity:1;transform:none}html[data-motion=off]{scroll-behavior:auto}html.js[data-motion=off] .reveal,html.js[data-motion=off] .reveal.is-in{opacity:1;transition:none;transform:none}:root[data-motion=off] :not([data-motion-safe]),:root[data-motion=off] :not([data-motion-safe]):before,:root[data-motion=off] :not([data-motion-safe]):after{transition-property:color,background-color,border-color,box-shadow,opacity,fill,stroke!important;transition-duration:var(--d-1)!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-old(root){animation:vt-out .12s var(--ease-inout) both}::view-transition-new(root){animation:vt-in var(--d-route) var(--ease) both}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;transform:translateY(6px)}}:root[data-motion=off]::view-transition-old(root),:root[data-motion=off]::view-transition-new(root){animation:none}.btn{justify-content:center;align-items:center;gap:var(--btn-gap);min-height:44px;padding:0 var(--s-5);border-radius:var(--btn-r);font-size:var(--t-sm);font-weight:var(--btn-weight);letter-spacing:-.008em;white-space:nowrap;cursor:pointer;--btn-r:12px;--btn-gap:var(--s-2);--btn-weight:550;--btn-icon:16px;--btn-lift:0px;transition:background-color var(--d-3) var(--ease), border-color var(--d-3) var(--ease), color var(--d-3) var(--ease), box-shadow var(--d-3) var(--ease), filter var(--d-3) var(--ease), transform var(--d-3) var(--ease);display:inline-flex}.btn--primary,.btn--secondary,.btn--danger-solid{--btn-lift:-1px}@media (hover:hover){.btn:hover{transform:translateY(var(--btn-lift));transition-duration:var(--d-1)}}:root[data-motion=off] .btn{--btn-lift:0px}.btn:active{box-shadow:var(--depth-press);transition-duration:70ms;transform:translateY(1px)scale(.985)}.btn[disabled],.btn[aria-disabled=true]{opacity:.4;pointer-events:none}.btn svg{width:var(--btn-icon);height:var(--btn-icon);flex:none}.btn--lg{min-height:52px;font-size:var(--t-body);--btn-r:var(--r-control);--btn-gap:10px;--btn-weight:550;--btn-icon:18px;padding:0 28px}.btn--sm{min-height:36px;font-size:var(--t-xs);--btn-r:var(--r-sm);--btn-gap:7px;--btn-icon:15px;padding:0 14px}.btn--primary{background-color:var(--solid);background-image:var(--sheen-solid);color:var(--solid-fg);box-shadow:var(--edge-solid), var(--control-solid-depth)}@media (hover:hover){.btn--primary:hover{background-color:var(--solid-hover);box-shadow:var(--edge-solid), var(--control-solid-depth)}}.btn--primary:active{background-color:var(--solid-press);box-shadow:var(--edge-solid-press), var(--depth-solid-press)}.btn--secondary{background:var(--control-face);backdrop-filter:none;color:var(--text);box-shadow:var(--control-edge), var(--control-depth)}@media (hover:hover){.btn--secondary:hover{background:var(--control-face-hover);box-shadow:var(--control-edge), var(--control-depth-hover)}[data-ground=dark] .btn--secondary:hover,.stage .btn--secondary:hover{background:#ffffff29}}.btn--secondary:active{background:var(--control-face-press);box-shadow:inset 0 0 0 1px var(--line-strong), var(--control-depth-press)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.btn--danger-solid{background:var(--danger-solid);color:var(--danger-solid-fg)}@media (hover:hover){.btn--danger-solid:hover{filter:brightness(.92)}}.head-actions{gap:var(--s-3);margin-top:var(--s-8);flex-wrap:wrap;display:flex}.link{color:var(--accent);text-underline-offset:3px;transition:color var(--d-1) var(--ease);align-items:center;gap:6px;font-weight:500;display:inline-flex}@media (hover:hover){.link:hover{color:var(--accent-hover);text-decoration:underline}}.link svg{width:15px;height:15px;transition:transform var(--d-2) var(--ease)}@media (hover:hover){.link:hover svg{transform:translate(2px)}}.link:active svg{transition-duration:70ms;transform:translate(4px)}.stage{background:var(--stage);border-radius:var(--r-2xl);isolation:isolate;position:relative;overflow:hidden}.stage:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 1px var(--stage-edge);pointer-events:none;position:absolute;inset:0}.stage img,.stage picture{width:100%;height:auto;display:block}.head{gap:var(--s-5);max-width:40rem;display:grid}.head .lead{max-width:var(--measure-lead)}.checks{gap:var(--s-3);display:grid}.checks li{gap:var(--s-3);color:var(--text-secondary);font-size:var(--t-sm);grid-template-columns:18px 1fr;align-items:start;display:grid}.checks svg{width:18px;height:18px;color:var(--text);margin-top:2px}.badge{border-radius:var(--r-sm);background:var(--canvas-subtle);color:var(--text-secondary);font-size:var(--t-meta);letter-spacing:0;align-items:center;gap:6px;padding:4px 10px;font-weight:500;display:inline-flex}[data-ground=dark] .badge{color:var(--text-secondary);background:#ffffff14}.field{gap:var(--s-2);display:grid}.field__label{font-size:var(--t-xs);color:var(--text-secondary);font-weight:500}.field__input{border-radius:var(--r-md);background:var(--surface-sunken);width:100%;min-height:48px;color:var(--text);border:1px solid var(--line-control);font-size:var(--t-body);transition:border-color var(--d-2) var(--ease), background-color var(--d-2) var(--ease);padding:0 14px}.field__input::placeholder{color:var(--text-tertiary)}.field__input:hover{border-color:var(--line-strong)}.field__input:focus{background:var(--canvas);border-color:var(--accent)}.field__input[aria-invalid=true]{border-color:var(--danger)}.note{gap:var(--s-3);padding:var(--s-4);border-radius:var(--r-md);background:var(--canvas-subtle);font-size:var(--t-sm);color:var(--text-secondary);text-align:left;grid-template-columns:18px 1fr;display:grid}.note svg{width:18px;height:18px;color:var(--text-tertiary);margin-top:1px}.note strong{color:var(--text);font-weight:600}.state{justify-items:center;gap:var(--s-4);padding:var(--s-16) var(--s-6);text-align:center;display:grid}.state h3{font-size:var(--t-h4)}.state p{color:var(--text-secondary);font-size:var(--t-sm);max-width:42ch}.skeleton{border-radius:var(--r-sm);background:var(--canvas-subtle);animation:skeleton 1.4s var(--ease-inout) infinite}@keyframes skeleton{50%{opacity:.5}}.frame{border-radius:var(--r-xl);background:var(--stage);box-shadow:0 0 0 1px var(--line), var(--e-2);overflow:hidden}.frame img{width:100%;height:auto;display:block}.skip[data-astro-cid-hkbrpulz]{left:var(--s-4);top:var(--s-4);z-index:var(--z-top);border-radius:var(--r-md);background:var(--solid);color:var(--solid-fg);font-size:var(--t-sm);transition:transform var(--d-2) var(--ease);padding:10px 16px;font-weight:500;position:absolute;transform:translateY(-200%)}.skip[data-astro-cid-hkbrpulz]:focus{transform:none}
