@charset "UTF-8";@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/sora-latin-ext-wght-normal.CawQDOvP.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/sora-latin-wght-normal.DdqRvwsR.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--palette-white: #ffffff;--palette-sand-50: #f6f4ef;--palette-sand-200: #e3dfd6;--palette-sand-300: #d9d4c9;--palette-brown-400: #a08a6c;--palette-brown-600: #856946;--palette-brown-700: #6e5536;--palette-blue-400: #4f86a6;--palette-blue-600: #0f638e;--palette-blue-700: #0b4a6b;--palette-blue-900: #0b2a3a;--palette-grey-700: #4a4a49;--palette-ink: #1b1d1f;--palette-amber-200: #ffd166;--palette-amber-900: #6b4100;--color-bg: var(--palette-white);--color-surface: var(--palette-white);--color-surface-sand: var(--palette-sand-50);--color-surface-night: var(--palette-blue-900);--color-surface-translucent: color-mix(in srgb, var(--palette-white) 92%, transparent);--color-overlay: color-mix(in srgb, var(--palette-ink) 45%, transparent);--color-text: var(--palette-ink);--color-text-muted: var(--palette-grey-700);--color-text-inverse: var(--palette-white);--color-text-inverse-muted: color-mix(in srgb, var(--palette-white) 84%, transparent);--color-primary: var(--palette-blue-600);--color-primary-hover: var(--palette-blue-700);--color-on-primary: var(--palette-white);--color-accent: var(--palette-brown-600);--color-accent-strong: var(--palette-brown-700);--color-link: var(--palette-blue-600);--color-link-hover: var(--palette-blue-700);--color-focus: var(--palette-blue-600);--color-border: var(--palette-sand-200);--color-rule: var(--palette-sand-300);--color-rule-strong: var(--palette-ink);--color-step-1: var(--palette-brown-600);--color-step-2: var(--palette-brown-400);--color-step-3: var(--palette-blue-400);--color-step-4: var(--palette-blue-600);--color-border-inverse: color-mix(in srgb, var(--palette-white) 45%, transparent);--color-badge-bg: var(--palette-white);--color-badge-text: var(--palette-brown-700);--color-draft-bg: var(--palette-amber-200);--color-draft-text: var(--palette-amber-900);--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-18: 4.5rem;--space-20: 5rem;--space-22: 5.5rem;--space-26: 6.5rem;--space-30: 7.5rem;--layout-container: 72rem;--layout-gutter: var(--space-6);--layout-section-block: clamp(var(--space-16), 9vw, var(--space-26));--layout-header-offset: var(--space-22);--measure-lead: 36.25rem;--measure-intro: 42.5rem;--measure-wide: 47.5rem;--measure-hero: 56rem;--measure-statement: 51.25rem;--measure-quote: 53.75rem;--measure-tools: 61.25rem;--measure-prose: 45rem;--grid-min-feature: 18.75rem;--grid-min-card: 17.5rem;--grid-min-item: 13.75rem;--font-display: "Sora Variable", "Sora", system-ui, sans-serif;--font-body: "Inter Variable", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, monospace;--text-2xs: .75rem;--text-xs: .8125rem;--text-sm: .875rem;--text-md: .9375rem;--text-base: 1rem;--text-body: 1.0625rem;--text-lg: 1.125rem;--text-xl: 1.1875rem;--text-2xl: 1.375rem;--text-h2: clamp(1.75rem, 3vw, 2.375rem);--text-h1: clamp(min(2rem, 8.5vw), 4.4vw, 3.625rem);--text-h1-page: clamp(2rem, 3.6vw, 2.875rem);--text-display: clamp(7rem, 24vw, 17rem);--text-page-hero: clamp(2.25rem, 4.8vw, 4.25rem);--text-statement: clamp(1.875rem, 3.6vw, 3rem);--text-post-title: clamp(2.125rem, 4.4vw, 3.75rem);--text-divider: clamp(1.625rem, 2.6vw, 2.125rem);--text-big-word: clamp(2.75rem, 5vw, 4rem);--text-big-number: clamp(6.875rem, 15vw, 13.75rem);--text-intro: clamp(1.3125rem, 2vw, 1.625rem);--text-quote: clamp(1.375rem, 2.4vw, 2rem);--text-quote-mark: 4.5rem;--text-contact: clamp(2.5rem, 6.4vw, 5.75rem);--text-fact: clamp(1.25rem, 2.2vw, 1.75rem);--text-card-featured: clamp(1.375rem, 2.2vw, 1.75rem);--text-card-wide: clamp(1.625rem, 2.8vw, 2.25rem);--text-code: .9em;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-none: .75;--leading-number: .85;--leading-display: 1.02;--leading-statement: 1.12;--leading-quote: 1.35;--leading-loose: 1.9;--leading-tight: 1.12;--leading-snug: 1.2;--leading-heading: 1.3;--leading-card: 1.35;--leading-compact: 1.5;--leading-normal: 1.65;--leading-relaxed: 1.75;--tracking-display: -.11em;--tracking-tight: -.025em;--tracking-snug: -.02em;--tracking-normal: 0;--tracking-wide: .06em;--tracking-caps: .08em;--tracking-hero: -.035em;--tracking-contact: -.04em;--tracking-number: -.06em;--radius-xs: .125rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .625rem;--radius-xl: .75rem;--radius-pill: 999px;--radius-button: var(--radius-pill);--radius-media: .375rem;--radius-media-lg: var(--radius-media);--border-width: 1px;--border-width-strong: 2px;--size-touch: 2.75rem;--size-viewport: 100dvh;--size-logo: 1.75rem;--size-logo-footer: 1.5rem;--size-accent-bar-width: 2.5rem;--size-accent-bar-height: .25rem;--size-quote-bar: .25rem;--size-bullet: .4375rem;--size-bullet-offset: .6em;--size-icon-bar-width: 1.375rem;--size-icon-bar-height: 2px;--size-icon-bar-gap: .4375rem;--size-avatar: 4rem;--size-divider-motif: 2.5rem;--size-divider-motif-sm: 1.75rem;--size-step-dot: .875rem;--size-number-col: 1.375rem;--size-scroll-card: 82%;--size-scroll-step: 78%;--size-scroll-end: 56%;--size-hero-decor: 32rem;--size-home-decor: 26rem;--size-decor-max-width: 40%;--size-code-collapsed: calc(11.55em + var(--space-10));--size-code-toggle: 3.625rem;--opacity-decor: .1;--ratio-media: 16 / 9;--ratio-card: var(--ratio-media);--shadow-sm: 0 var(--space-2) var(--space-6) color-mix(in srgb, var(--palette-ink) 8%, transparent);--shadow-md: 0 var(--space-3) var(--space-7) color-mix(in srgb, var(--palette-ink) 18%, transparent);--shadow-lg: 0 var(--space-4) var(--space-10) color-mix(in srgb, var(--palette-ink) 22%, transparent);--duration-fast: .15s;--duration-base: .2s;--duration-slow: .3s;--duration-progress: .6s;--duration-hint: 1.6s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--z-base: 1;--z-overlay: 90;--z-header: 100;--z-nav: 110;--z-floating: 150;--z-consent: 200;--z-skip: 1000;--code-bg: var(--palette-sand-50);--code-text: var(--palette-grey-700);--code-comment: #6c6c66;--code-string: var(--palette-brown-700);--code-constant: var(--palette-blue-700);--code-keyword: #6b4e43;--code-function: var(--palette-blue-600);--code-punctuation: var(--palette-grey-700);--astro-code-foreground: var(--code-text);--astro-code-background: var(--code-bg);--astro-code-color-text: var(--code-text);--astro-code-color-background: var(--code-bg);--astro-code-token-comment: var(--code-comment);--astro-code-token-string: var(--code-string);--astro-code-token-string-expression: var(--code-string);--astro-code-token-constant: var(--code-constant);--astro-code-token-keyword: var(--code-keyword);--astro-code-token-function: var(--code-function);--astro-code-token-parameter: var(--code-text);--astro-code-token-punctuation: var(--code-punctuation);--astro-code-token-link: var(--code-function);--hi-legacy-bg: #c0c0c0;--hi-legacy-text: #000000;--hi-legacy-link: #0000cc;--hi-legacy-alert: #ff0000;--hi-legacy-terminal: #00ff00;--hi-legacy-stripe: #ffff00;--hi-legacy-frame: #ffffff;--hi-legacy-font: "Comic Sans MS", "Comic Sans", "Chalkboard SE", cursive;--hi-legacy-mono: "Courier New", monospace;--hi-legacy-frame-width: 4px;--hi-legacy-stripe-size: .75rem;--hi-console-bg: #0b0f10;--hi-console-text: #d6e4e8;--hi-console-muted: #9fb4ba;--hi-console-track: #1d2a2e;--hi-console-heading: var(--palette-white);--hi-progress-height: .75rem;--hi-marquee-duration: 14s;--hi-blink-duration: 1s}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--layout-header-offset);-webkit-text-size-adjust:100%}body{min-height:var(--size-viewport);display:flex;flex-direction:column;font-family:var(--font-body);font-size:var(--text-body);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;overflow-wrap:break-word}main{flex:1}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-semibold);line-height:var(--leading-heading);text-wrap:balance}p{text-wrap:pretty}@media (max-width: 51.99em){p,li,dd,figcaption{hyphens:auto;hyphenate-limit-chars:12 5 5}}.keep-together{white-space:nowrap}img,picture,svg{max-width:100%;display:block}ul,ol{list-style:none}a{color:var(--color-link);text-decoration:none;transition:color var(--duration-base) var(--ease-standard)}a:hover{color:var(--color-link-hover)}button{font:inherit;color:inherit}:focus-visible{outline:var(--border-width-strong) solid var(--color-focus);outline-offset:var(--space-1);border-radius:var(--radius-xs)}.skip-link{position:absolute;left:var(--space-2);top:var(--space-2);z-index:var(--z-skip);padding:var(--space-2-5) var(--space-3-5);background:var(--color-text);color:var(--color-text-inverse);font-size:var(--text-sm);font-weight:var(--weight-semibold);border-radius:var(--radius-sm);transform:translateY(-200%);transition:transform var(--duration-base) var(--ease-standard)}.skip-link:focus-visible{transform:translateY(0);color:var(--color-text-inverse)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.l-stack{display:flex;flex-direction:column;gap:var(--stack-gap, var(--space-4))}.l-cluster{display:flex;flex-wrap:wrap;align-items:var(--cluster-align, center);justify-content:var(--cluster-justify, flex-start);gap:var(--cluster-gap-row, var(--space-3)) var(--cluster-gap, var(--space-8))}.l-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(var(--grid-min, var(--grid-min-card)),100%),1fr));gap:var(--grid-gap-row, var(--space-10)) var(--grid-gap, var(--space-8))}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--size-touch);padding:var(--space-3) var(--space-6);border:var(--border-width-strong) solid var(--color-primary);border-radius:var(--radius-button);background:var(--color-primary);color:var(--color-on-primary);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-snug);text-align:center;text-decoration:none;cursor:pointer;transition:background-color var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.button:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:var(--color-on-primary)}.button--secondary{background:var(--color-bg);color:var(--color-primary)}.button--secondary:hover{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.button--link{padding-inline:0;border-color:transparent;background:transparent;color:var(--color-link)}.button--link:after{content:"→";transition:transform var(--duration-base) var(--ease-standard)}.button--link:hover{background:transparent;border-color:transparent;color:var(--color-link-hover)}.button--link:hover:after{transform:translate(var(--space-1))}.button--icon-external:after{content:"↗"}.button--icon-down:after{content:"↓"}.button--icon-external:hover:after{transform:translate(var(--space-1),calc(var(--space-1) * -1))}.button--icon-down:hover:after{transform:translateY(var(--space-1))}.button--sm{font-size:var(--text-md)}.button--inverse{background:transparent;border-color:var(--color-border-inverse);color:var(--color-text-inverse)}.button--inverse:hover{background:transparent;border-color:var(--color-text-inverse);color:var(--color-text-inverse)}.button-group{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-8)}.prose{max-width:var(--measure-prose);color:var(--color-text-muted);line-height:var(--leading-relaxed)}.prose>*+*{margin-top:var(--space-4)}.prose h1{color:var(--color-text);font-size:var(--text-h1-page);font-weight:var(--weight-medium);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-8)}.prose h2{margin-top:var(--space-12);color:var(--color-text);font-size:var(--text-2xl);line-height:var(--leading-heading);letter-spacing:var(--tracking-snug)}.prose h3{margin-top:var(--space-8);color:var(--color-text);font-size:var(--text-xl)}.prose h2+*,.prose h3+*{margin-top:var(--space-3)}.prose strong{color:var(--color-text);font-weight:var(--weight-semibold)}.prose a:not(.button){color:var(--color-link);text-decoration:underline;text-decoration-thickness:var(--border-width);text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-underline-offset:var(--space-1)}.prose a:not(.button):hover{color:var(--color-link-hover);text-decoration-color:currentColor}.prose a[target=_blank]:not(.button):after{content:"↗";display:inline-block;margin-left:var(--space-1);font-size:var(--text-2xs);vertical-align:super;text-decoration:none;opacity:.6}.prose .section-intro{font-size:var(--text-lg)}.prose ul,.prose ol{display:flex;flex-direction:column;gap:var(--space-3)}.prose li{position:relative;padding-left:var(--space-6);line-height:var(--leading-compact)}.prose ul>li:before{content:"";position:absolute;left:var(--space-1);top:var(--size-bullet-offset);width:var(--size-bullet);height:var(--size-bullet);border-radius:var(--radius-pill);background:var(--color-accent)}.prose ol{counter-reset:prose-list}.prose ol>li{counter-increment:prose-list;padding-left:var(--space-8)}.prose ol>li:before{content:counter(prose-list) ".";position:absolute;left:0;top:0;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-primary)}.prose blockquote{position:relative;margin-block:var(--space-8);padding:var(--space-4) var(--space-6) var(--space-4) var(--space-7);border:var(--border-width) solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-lg);font-style:italic;line-height:var(--leading-compact)}.prose blockquote:before{content:"";position:absolute;inset-block:0;left:0;width:var(--size-quote-bar);background:linear-gradient(to bottom,var(--color-text) 0 25%,var(--color-accent) 25% 50%,var(--color-primary) 50% 100%)}.prose blockquote>*+*{margin-top:var(--space-3)}.prose hr{width:var(--size-accent-bar-width);height:var(--size-accent-bar-height);margin-block:var(--space-10);border:0;border-radius:var(--radius-xs);background:var(--color-accent)}.prose figure{margin-block:var(--space-8)}.prose figure img{width:100%;height:auto;border-radius:var(--radius-lg)}.prose figure figcaption{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted)}.prose__note{padding-left:var(--space-3);border-left:var(--border-width-strong) solid var(--color-border);font-size:var(--text-xs);line-height:var(--leading-compact)}.prose code{font-family:var(--font-mono);font-size:var(--text-code)}.prose :not(pre)>code{padding:0 var(--space-1);border-radius:var(--radius-sm);background:var(--color-surface-sand);color:var(--color-text)}.prose pre.astro-code{margin-block:var(--space-6);padding:var(--space-4) var(--space-5);overflow-x:auto;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-sm);line-height:var(--leading-normal);tab-size:2}.prose pre.astro-code code{font-size:inherit}.prose .code-block{position:relative;margin-block:var(--space-6)}.prose .code-block pre.astro-code{margin:0}.prose .code-block.is-collapsed pre.astro-code{max-height:var(--size-code-collapsed);overflow-y:hidden}.prose .code-block.is-expanded pre.astro-code{padding-bottom:var(--space-14)}.prose .code-block__toggle{position:absolute;inset:auto var(--border-width) var(--border-width) var(--border-width);z-index:var(--z-base);height:var(--size-code-toggle);display:flex;align-items:flex-end;justify-content:center;padding:var(--space-2) var(--space-4);border:0;border-radius:0 0 var(--radius-lg) var(--radius-lg);background:linear-gradient(to bottom,transparent,var(--code-bg) 70%);color:var(--color-link);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:var(--weight-semibold);cursor:pointer}.prose .code-block__toggle:hover{color:var(--color-link-hover)}.prose table{width:100%;margin-block:var(--space-8);border-collapse:separate;border-spacing:0;font-size:var(--text-sm);line-height:var(--leading-compact)}.prose table thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.prose table tbody{display:grid;gap:var(--space-3)}.prose table tr,.prose table td{display:block}.prose table tr{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.prose table td{display:grid;grid-template-columns:minmax(var(--space-30),36%) minmax(0,1fr);gap:var(--space-3);padding:var(--space-2-5) var(--space-3);border-bottom:var(--border-width) solid var(--color-border);overflow-wrap:anywhere}.prose table td:before{content:attr(data-label);color:var(--color-text);font-weight:var(--weight-semibold);font-size:var(--text-2xs)}.prose table td:last-child{border-bottom:0}@media (min-width: 52em){.prose table thead{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;clip-path:none;white-space:normal;display:table-header-group}.prose table tbody{display:table-row-group}.prose table tr{display:table-row}.prose table th,.prose table td{display:table-cell;padding:var(--space-3) var(--space-3-5);border-bottom:var(--border-width) solid var(--color-border);text-align:left;vertical-align:top}.prose table th:before,.prose table td:before{content:none}.prose table th{color:var(--color-text);background:var(--color-surface-sand);font-family:var(--font-display);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.prose table td:last-child{border-bottom:var(--border-width) solid var(--color-border)}}.prose .hp-field{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;pointer-events:none}.prose>.button-group,.prose>.button{margin-top:var(--space-8)}.logo[data-astro-cid-bt5hbwbt]{display:inline-flex;align-items:center;gap:var(--space-3);min-height:var(--size-touch);color:var(--color-text);text-decoration:none}.logo[data-astro-cid-bt5hbwbt]:hover{color:var(--color-text)}.logo__mark[data-astro-cid-bt5hbwbt]{width:auto;height:var(--size-logo)}.logo__name[data-astro-cid-bt5hbwbt]{font-family:var(--font-display);font-size:var(--text-body);font-weight:var(--weight-semibold);white-space:nowrap}.logo--sm[data-astro-cid-bt5hbwbt] .logo__mark[data-astro-cid-bt5hbwbt]{height:var(--size-logo-footer)}.site-header[data-astro-cid-mwoppcd7]{position:sticky;top:0;z-index:var(--z-header);background:var(--color-surface-translucent);backdrop-filter:blur(var(--space-3))}.site-header[data-astro-cid-mwoppcd7] .site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3) var(--space-8);padding-block:var(--space-4)}.nav[data-astro-cid-mwoppcd7]{display:flex;align-items:center;gap:var(--space-1) var(--space-7);font-size:var(--text-md)}.nav__link[data-astro-cid-mwoppcd7]{display:inline-flex;align-items:center;min-height:var(--size-touch);color:var(--color-text-muted)}.nav__link[data-astro-cid-mwoppcd7]:hover{color:var(--color-text)}.nav__link[data-astro-cid-mwoppcd7][aria-current]{color:var(--color-text);font-weight:var(--weight-semibold);text-decoration:underline;text-decoration-color:var(--color-primary);text-decoration-thickness:var(--border-width-strong);text-underline-offset:var(--space-2)}.nav__link--emphasis[data-astro-cid-mwoppcd7]{color:var(--color-link);font-weight:var(--weight-semibold)}.nav__link--emphasis[data-astro-cid-mwoppcd7]:hover{color:var(--color-link-hover)}.nav-toggle[data-astro-cid-mwoppcd7]{display:none;align-items:center;gap:var(--space-3);min-height:var(--size-touch);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-md);font-weight:var(--weight-medium);cursor:pointer}.nav-toggle__icon[data-astro-cid-mwoppcd7],.nav-toggle__icon[data-astro-cid-mwoppcd7]:before,.nav-toggle__icon[data-astro-cid-mwoppcd7]:after{display:block;width:var(--size-icon-bar-width);height:var(--size-icon-bar-height);background:currentColor;transition:transform var(--duration-base) var(--ease-standard),background-color var(--duration-base) var(--ease-standard)}.nav-toggle__icon[data-astro-cid-mwoppcd7]{position:relative}.nav-toggle__icon[data-astro-cid-mwoppcd7]:before,.nav-toggle__icon[data-astro-cid-mwoppcd7]:after{content:"";position:absolute;left:0}.nav-toggle__icon[data-astro-cid-mwoppcd7]:before{top:calc(var(--size-icon-bar-gap) * -1)}.nav-toggle__icon[data-astro-cid-mwoppcd7]:after{top:var(--size-icon-bar-gap)}.nav-open .nav-toggle__icon[data-astro-cid-mwoppcd7]{background:transparent}.nav-open .nav-toggle__icon[data-astro-cid-mwoppcd7]:before{transform:translateY(var(--size-icon-bar-gap)) rotate(45deg)}.nav-open .nav-toggle__icon[data-astro-cid-mwoppcd7]:after{transform:translateY(calc(var(--size-icon-bar-gap) * -1)) rotate(-45deg)}.nav-overlay[data-astro-cid-mwoppcd7]{position:fixed;inset:0;z-index:var(--z-overlay);background:var(--color-overlay);opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-standard)}.nav-open .nav-overlay[data-astro-cid-mwoppcd7]{opacity:1;pointer-events:auto}@media (max-width: 51.99em){.nav-toggle[data-astro-cid-mwoppcd7]{display:inline-flex}.nav[data-astro-cid-mwoppcd7]{position:fixed;top:var(--layout-header-offset);inset-inline:var(--space-3);z-index:var(--z-nav);flex-direction:column;align-items:stretch;gap:0;padding:var(--space-2) var(--space-5);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transform:translateY(calc(var(--space-2) * -1));transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}.nav-open .nav[data-astro-cid-mwoppcd7]{opacity:1;pointer-events:auto;transform:translateY(0)}}.site-footer[data-astro-cid-zizlwfnu]{border-top:var(--border-width) solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-sm)}.site-footer[data-astro-cid-zizlwfnu] .site-footer__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-8);padding-block:var(--space-6)}.site-footer__nav[data-astro-cid-zizlwfnu]{display:flex;flex-wrap:wrap;gap:0 var(--space-6)}.site-footer__link[data-astro-cid-zizlwfnu]{display:inline-flex;align-items:center;min-height:var(--size-touch);color:var(--color-text-muted)}.site-footer__link[data-astro-cid-zizlwfnu]:hover{color:var(--color-text)}.site-footer__button[data-astro-cid-zizlwfnu]{padding:0;border:0;background:transparent;font-size:inherit;cursor:pointer}.floating-cta__link[data-astro-cid-hnbr5kte]{position:fixed;right:var(--space-3);bottom:var(--space-3);z-index:var(--z-floating);display:inline-flex;align-items:center;min-height:var(--size-touch);padding:var(--space-3) var(--space-5);border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--text-md);font-weight:var(--weight-semibold);box-shadow:var(--shadow-md);transition:background-color var(--duration-base) var(--ease-standard),opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard),visibility var(--duration-base) var(--ease-standard)}.floating-cta__link[data-astro-cid-hnbr5kte]:hover{background:var(--color-primary-hover);color:var(--color-on-primary)}.floating-cta__link[data-astro-cid-hnbr5kte].is-hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(var(--space-3))}@media (min-width: 52em){.floating-cta__link[data-astro-cid-hnbr5kte]{right:var(--space-5);bottom:var(--space-5);padding-inline:var(--space-6)}}.consent-banner[data-astro-cid-63gysk4c]{position:fixed;inset-inline:var(--space-3);bottom:var(--space-3);z-index:var(--z-consent)}.consent-banner[data-astro-cid-63gysk4c][hidden]{display:none}@media (min-width: 52em){.consent-banner[data-astro-cid-63gysk4c]{left:auto;right:var(--space-5);bottom:var(--space-5);width:min(var(--measure-lead),100% - 2 * var(--space-5))}}.consent-banner__inner[data-astro-cid-63gysk4c]{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-xl);background:var(--color-surface-night);color:var(--color-text-inverse-muted);box-shadow:var(--shadow-lg)}.consent-banner__title[data-astro-cid-63gysk4c]{color:var(--color-text-inverse);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold)}.consent-banner__text[data-astro-cid-63gysk4c]{font-size:var(--text-md)}.consent-banner__actions[data-astro-cid-63gysk4c]{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2)}@media (min-width: 40em){.consent-banner__actions[data-astro-cid-63gysk4c]{flex-direction:row;flex-wrap:wrap}}
