.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.nav-gh:where(.astro-mwoppcd7){display:inline-flex;align-items:center;gap:10px}.nav-gh:where(.astro-mwoppcd7) svg:where(.astro-mwoppcd7){display:block}.nav-gh-label:where(.astro-mwoppcd7){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:1000px){.nav-gh-label:where(.astro-mwoppcd7){position:static;width:auto;height:auto;overflow:visible;clip-path:none}}.nav-cta:where(.astro-mwoppcd7){font-family:var(--body);font-weight:550;font-size:.95rem;text-decoration:none;white-space:nowrap;padding:6px 14px;border:1.5px solid var(--brass-bright);border-radius:999px;color:var(--brass-text);transition:background-color var(--dur-micro) ease,color var(--dur-micro) ease}.nav-cta:where(.astro-mwoppcd7):hover{background:var(--brass-bright);color:var(--green-deep)}.theme-icon:where(.astro-mwoppcd7){display:block;overflow:visible}.theme-icon-orb:where(.astro-mwoppcd7),.theme-icon-rays:where(.astro-mwoppcd7){transform-origin:12px 12px}.theme-icon-orb:where(.astro-mwoppcd7){transition:transform var(--dur-component) var(--ease-settle)}.theme-icon-bite:where(.astro-mwoppcd7){transform:translate(13px,-7px);transition:transform var(--dur-component) var(--ease-settle)}.theme-icon-rays:where(.astro-mwoppcd7){transition:transform var(--dur-component) var(--ease-settle),opacity var(--dur-micro) ease}:root[data-theme=dark] .theme-icon-orb:where(.astro-mwoppcd7){transform:scale(1.2)}:root[data-theme=dark] .theme-icon-bite:where(.astro-mwoppcd7){transform:translate(5.5px,-5px)}:root[data-theme=dark] .theme-icon-rays:where(.astro-mwoppcd7){transform:scale(.3);opacity:0}@media(prefers-reduced-motion:reduce){.theme-icon-orb:where(.astro-mwoppcd7),.theme-icon-bite:where(.astro-mwoppcd7),.theme-icon-rays:where(.astro-mwoppcd7){transition:none}}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-vietnamese-wght-normal.BUzh504Q.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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-ext-wght-normal.CcLUaPy7.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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-wght-normal.DLoelf7F.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:Funnel Sans Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(/_astro/funnel-sans-latin-ext-wght-normal.CStSwzyf.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:Funnel Sans Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(/_astro/funnel-sans-latin-wght-normal.zzU05adE.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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-mono-vietnamese-400-normal.BNOj0Qhp.woff2) format("woff2"),url(/_astro/space-mono-vietnamese-400-normal.B0PMp_xB.woff) format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-mono-latin-ext-400-normal.DTLbW2xa.woff2) format("woff2"),url(/_astro/space-mono-latin-ext-400-normal.D4cJI_B-.woff) format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-mono-latin-400-normal.Rg4St2Dn.woff2) format("woff2"),url(/_astro/space-mono-latin-400-normal._3DlpgIW.woff) format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-mono-vietnamese-700-normal.DWQgDHuA.woff2) format("woff2"),url(/_astro/space-mono-vietnamese-700-normal.D-KrLuLr.woff) format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-mono-latin-ext-700-normal.B2s3bDs2.woff2) format("woff2"),url(/_astro/space-mono-latin-ext-700-normal.B_E7P90g.woff) format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-mono-latin-700-normal.mWgeinG7.woff2) format("woff2"),url(/_astro/space-mono-latin-700-normal.D7A851RN.woff) format("woff");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}@layer tokens,base,primitives,chrome;@layer tokens{:root{color-scheme:light;--paper: #f5f3ef;--paper-warm: #efe9df;--card: #ffffff;--ink: #1c1917;--ink-soft: #44403c;--ink-mute: #6e675f;--green: #254d38;--green-bright: #2d6b4a;--green-deep: #10281b;--green-wash: #e6efe8;--brass: #b8860f;--brass-bright: #dba323;--brass-soft: #f0c84d;--brass-text: #8a6209;--sage: #dfe8e0;--line: #e2ddd3;--green-wash-line: #cadbcf;--ink-inverse: #f2efe6;--display: "Bricolage Grotesque Variable", "Bricolage Grotesque", system-ui, sans-serif;--body: "Funnel Sans Variable", "Funnel Sans", system-ui, sans-serif;--mono: "Space Mono", ui-monospace, "SF Mono", monospace;--step--3: .66rem;--step--2: .72rem;--step--1: .9rem;--step-0: 1rem;--step-1: clamp(1.08rem, 1.8vw, 1.28rem);--step-2: clamp(1.2rem, 2.5vw, 1.65rem);--step-3: clamp(1.5rem, 3.2vw, 2.2rem);--step-4: clamp(1.9rem, 4vw, 2.9rem);--step-5: clamp(2.2rem, 5vw, 3.6rem);--step-6: clamp(2.6rem, 6.4vw, 4.6rem);--step-7: clamp(3rem, 7.4vw, 5.4rem);--space-2xs: clamp(8px, .8vw, 10px);--space-xs: clamp(12px, 2.4vw, 22px);--space-sm: clamp(18px, 2.6vw, 28px);--space-md: clamp(24px, 3vw, 34px);--space-lg: clamp(30px, 4vw, 44px);--space-xl: clamp(36px, 5vw, 60px);--space-2xl: clamp(44px, 6vw, 72px);--space-3xl: clamp(60px, 8vw, 100px);--space-4xl: clamp(72px, 10vw, 128px);--gutter: clamp(20px, 4vw, 40px);--radius-lg: 20px;--radius-md: 14px;--radius-sm: 9px;--shadow-sm: 0 1px 2px rgba(28, 25, 23, .06), 0 4px 14px rgba(37, 77, 56, .06);--shadow-md: 0 2px 6px rgba(28, 25, 23, .07), 0 14px 40px rgba(37, 77, 56, .11);--shadow-lg: 0 4px 10px rgba(28, 25, 23, .08), 0 30px 70px rgba(16, 40, 27, .18);--ease-out-quint: cubic-bezier(.22, 1, .36, 1);--ease-settle: linear(0, .06 10%, .31 32%, .72 62%, .92 82%, 1);--dur-micro: .16s;--dur-component: .24s;--dur-reveal: .64s;--container: 1120px;--container-text: 700px;--header-h: 64px}:root[data-theme=dark]{color-scheme:dark;--paper: #15120f;--paper-warm: #201b17;--card: #26211b;--ink: var(--ink-inverse);--ink-soft: #d6d0c3;--ink-mute: #a79f92;--green: #6fbf92;--green-bright: #8fd4ac;--green-wash: #1c2b23;--green-wash-line: #31463a;--brass-text: var(--brass-bright);--sage: #2c3a32;--line: #443c33;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5), 0 4px 14px rgba(0, 0, 0, .38);--shadow-md: 0 2px 6px rgba(0, 0, 0, .55), 0 14px 40px rgba(0, 0, 0, .46), inset 0 1px 0 rgba(242, 239, 230, .06);--shadow-lg: 0 4px 10px rgba(0, 0, 0, .6), 0 30px 70px rgba(0, 0, 0, .55), inset 0 1px 0 rgba(242, 239, 230, .07)}:root{--heading-fg: inherit;--lead-fg: var(--ink-soft);--kicker-fg: var(--brass-text);--kicker-rule: var(--brass-bright);--focus-ring: var(--green);--error-fg: #9c3620;--link-fg: var(--green);--link-fg-hover: var(--green-bright);--btn-primary-bg: var(--green);--btn-primary-fg: #fff;--btn-primary-bg-hover: var(--green-bright);--btn-ghost-fg: var(--brass-text);--btn-ghost-border: var(--brass-text);--btn-ghost-bg-hover: var(--brass-bright);--btn-ghost-fg-hover: var(--green-deep);--field-bg: var(--card);--field-fg: var(--ink);--field-border: var(--line);--field-placeholder: var(--ink-mute);--field-focus-border: var(--green-bright);--field-focus-ring: rgba(45, 107, 74, .14);--note-fg: var(--ink-mute);--status-fg: var(--green)}:root[data-theme=dark]{--kicker-fg: var(--brass-soft);--kicker-rule: var(--brass-soft);--focus-ring: var(--brass-bright);--error-fg: #ffb4a0;--link-fg: var(--brass-soft);--link-fg-hover: var(--brass-bright);--btn-primary-bg: var(--brass-bright);--btn-primary-fg: var(--green-deep);--btn-primary-bg-hover: var(--brass-soft);--btn-ghost-fg: var(--brass-soft);--btn-ghost-border: var(--brass-soft);--btn-ghost-bg-hover: var(--brass-soft);--btn-ghost-fg-hover: var(--green-deep);--field-focus-border: var(--brass-soft);--field-focus-ring: rgba(240, 200, 77, .18);--status-fg: var(--brass-soft)}}@layer base{*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(64px + var(--space-xs))}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17.5px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--display);line-height:1.05;margin:0 0 .5em;text-wrap:balance}h1{font-size:var(--step-6);font-variation-settings:"opsz" 96,"wght" 640;letter-spacing:-.025em}h2{font-size:var(--step-4);font-variation-settings:"opsz" 60,"wght" 600;letter-spacing:-.02em;color:var(--heading-fg)}h3{font-size:1.3rem;font-variation-settings:"opsz" 30,"wght" 600;letter-spacing:-.01em;line-height:1.25}p{margin:0 0 1em}a{color:var(--link-fg);text-decoration-thickness:1px;text-underline-offset:3px;transition:color var(--dur-micro) ease}a:hover{color:var(--link-fg-hover)}img{max-width:100%;height:auto;display:block}::selection{background:var(--brass-soft);color:var(--green-deep)}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;border-radius:4px}.skip-link:focus-visible{outline-color:var(--brass-bright)}@media(forced-colors:active){:focus-visible{outline-color:Highlight}}}@layer primitives{.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.container--narrow{max-width:760px}.skip-link{position:absolute;left:-9999px;top:0;background:var(--green);color:var(--paper);padding:10px 18px;border-radius:0 0 var(--radius-sm) 0;z-index:100}.skip-link:focus{left:0;color:var(--paper)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.kicker{font-family:var(--mono);font-size:var(--step--2);font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--kicker-fg);margin:0 0 18px;display:flex;align-items:center;gap:12px}.kicker:before{content:"";width:26px;height:2px;background:var(--kicker-rule);flex:none}.kicker--center{justify-content:center}.kicker--center:after{content:"";width:26px;height:2px;background:var(--kicker-rule);flex:none}@media(max-width:560px){.kicker{letter-spacing:.13em;gap:8px}.kicker--center{flex-wrap:wrap;text-wrap:balance;line-height:1.5}.kicker--center:before,.kicker--center:after{display:none}}.lead{font-size:var(--step-1);line-height:1.6;color:var(--lead-fg);max-width:34em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--body);font-weight:640;font-size:var(--step-0);padding:14px 26px;border-radius:var(--radius-sm);border:none;cursor:pointer;text-decoration:none;transition:translate var(--dur-micro) var(--ease-out-quint),box-shadow var(--dur-micro) var(--ease-out-quint),background-color var(--dur-micro) ease}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-fg);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--btn-primary-bg-hover);color:var(--btn-primary-fg);translate:0 -2px;box-shadow:var(--shadow-md)}.btn-primary:active{translate:0 0}.btn-ghost{background:transparent;color:var(--btn-ghost-fg);border:1.5px solid var(--btn-ghost-border);box-shadow:none}.btn-ghost:hover{background:var(--btn-ghost-bg-hover);color:var(--btn-ghost-fg-hover);translate:0 -2px}.btn-ghost:active{translate:0 0}.section{padding-block:var(--space-4xl)}.section--flush-bottom{padding-bottom:0}.section-tint{background:var(--paper-warm)}.section-dark{background:radial-gradient(1200px 500px at 80% -10%,rgba(45,107,74,.55),transparent 60%),var(--green-deep);color:var(--ink-inverse);--heading-fg: #fff;--lead-fg: color-mix(in srgb, var(--ink-inverse) 82%, transparent);--kicker-fg: var(--brass-soft);--kicker-rule: var(--brass-soft);--link-fg: var(--brass-soft);--link-fg-hover: var(--brass-soft);--btn-primary-bg: var(--brass-bright);--btn-primary-fg: var(--green-deep);--btn-primary-bg-hover: var(--brass-soft);--btn-ghost-fg: var(--brass-soft);--btn-ghost-border: var(--brass-soft);--btn-ghost-bg-hover: var(--brass-soft);--btn-ghost-fg-hover: var(--green-deep);--field-bg: rgba(255, 255, 255, .08);--field-fg: #fff;--field-border: rgba(255, 255, 255, .25);--field-placeholder: rgba(255, 255, 255, .55);--field-focus-border: var(--brass-soft);--field-focus-ring: rgba(240, 200, 77, .18);--note-fg: rgba(255, 255, 255, .6);--status-fg: var(--brass-soft);--focus-ring: var(--brass-bright);--error-fg: #ffb4a0}:root[data-theme=dark] .section-dark{background:radial-gradient(1200px 500px at 80% -10%,rgba(45,107,74,.72),transparent 62%),var(--green-deep);border-block:1px solid var(--green-wash-line)}.section-head{max-width:760px;margin-bottom:var(--space-xl)}.section-head-title{font-size:var(--step-4);font-variation-settings:"opsz" 60,"wght" 600;letter-spacing:-.02em;color:var(--heading-fg)}.section-head--center{margin-inline:auto;text-align:center}.section-head--center .lead{margin-inline:auto}.page-hero{padding-block:var(--space-3xl) 0}.page-hero-inner{max-width:860px;margin-inline:auto;text-align:center}.page-hero-inner h1{font-size:var(--step-5)}.page-hero-intro{font-size:var(--step-1);color:var(--ink-soft);max-width:36em;margin:18px auto 0}.js [data-reveal]{opacity:0;translate:0 26px;transition:opacity var(--dur-reveal) var(--ease-out-quint),translate var(--dur-reveal) var(--ease-out-quint);transition-delay:var(--reveal-delay, 0ms)}.js [data-reveal].is-revealed{opacity:1;translate:0 0}@media(forced-colors:active){.btn{border:1px solid currentColor}.kicker:before,.kicker--center:after{background:CanvasText}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js [data-reveal]{opacity:1;translate:0 0;transition:none}.btn{transition:none}}}::view-transition-old(root),::view-transition-new(root){animation-duration:.24s}@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}@layer chrome{.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 86%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:var(--header-h)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--green)}.brand svg{color:var(--green)}.brand-name{font-family:var(--display);font-variation-settings:"opsz" 40,"wght" 640;font-size:1.22rem;letter-spacing:-.02em;color:var(--ink)}.header-actions{display:flex;align-items:center;gap:var(--space-xs)}.site-nav{display:flex;align-items:center;gap:var(--space-sm)}.site-nav a{display:inline-flex;align-items:center;min-height:24px;font-family:var(--body);font-weight:550;font-size:.95rem;text-decoration:none;white-space:nowrap;color:var(--ink-soft)}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--green)}.nav-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink);cursor:pointer}.nav-toggle-box{display:flex;flex-direction:column;gap:4px;width:18px}.nav-toggle-bar{height:2px;width:100%;background:currentColor;border-radius:2px;transition:transform var(--dur-micro) ease,opacity var(--dur-micro) ease}.site-header.nav-open .nav-toggle-bar:nth-child(1){transform:translateY(6px) rotate(45deg)}.site-header.nav-open .nav-toggle-bar:nth-child(2){opacity:0}.site-header.nav-open .nav-toggle-bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);cursor:pointer;transition:color var(--dur-micro) ease,border-color var(--dur-micro) ease,background var(--dur-micro) ease}.theme-toggle:hover{color:var(--brass-text);border-color:var(--brass-bright)}.lang-switch{position:relative}.lang-switch-trigger{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:5px 9px;border:1px solid var(--line);border-radius:999px;cursor:pointer;list-style:none;color:var(--ink-soft);font-family:var(--mono);font-size:var(--step--2);font-weight:700;letter-spacing:.06em;transition:color var(--dur-micro) ease,border-color var(--dur-micro) ease,background var(--dur-micro) ease;-webkit-user-select:none;user-select:none}.lang-switch-trigger::-webkit-details-marker{display:none}.lang-switch-trigger:hover{color:var(--green);border-color:var(--brass-bright)}.lang-switch[open] .lang-switch-trigger{color:var(--green);border-color:var(--brass-bright);background:var(--green-wash)}.lang-switch-globe{color:var(--brass-text);flex:none}.lang-switch-code{line-height:1}.lang-switch-caret{flex:none;opacity:.6;transition:transform var(--dur-micro) ease}.lang-switch[open] .lang-switch-caret{transform:rotate(180deg)}.lang-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:60;min-width:168px;margin:0;padding:6px;list-style:none;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-md);animation:lang-menu-in var(--dur-micro) ease}@keyframes lang-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lang-menu-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);text-decoration:none;color:var(--ink);font-family:var(--body);font-weight:550;font-size:.92rem;letter-spacing:0}.lang-menu-item:hover{background:var(--green-wash);color:var(--green)}.lang-menu-item.is-active{color:var(--green)}.lang-menu-code{font-family:var(--mono);font-size:var(--step--3);font-weight:700;letter-spacing:.08em;color:var(--brass-text);min-width:1.6em}.lang-menu-name{flex:1}.lang-menu-check{color:var(--green);flex:none}@media(max-width:1000px){.nav-toggle{display:inline-flex}.site-nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;padding:8px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 12px 28px -12px color-mix(in srgb,var(--ink) 30%,transparent);display:flex;max-height:0;opacity:0;overflow:hidden;visibility:hidden;pointer-events:none;transition:max-height var(--dur-micro) ease,opacity var(--dur-micro) ease,visibility 0s linear var(--dur-micro)}.site-header.nav-open .site-nav{max-height:80vh;opacity:1;visibility:visible;pointer-events:auto;overflow-y:auto;transition-delay:0s}.site-nav a{padding:12px 14px;border-radius:var(--radius-sm);font-size:1rem}.site-nav a:hover{background:var(--green-wash)}.site-nav .lang-switch{width:100%}.site-nav .lang-switch-trigger{width:100%;justify-content:flex-start}.site-nav .lang-menu{position:static;min-width:0;margin-top:4px;box-shadow:none;border:none;padding:4px 0 0;background:transparent;animation:none}.site-nav .lang-menu-item{padding:12px 14px}}.site-footer{background:var(--green-deep);color:color-mix(in srgb,var(--ink-inverse) 75%,transparent);padding-block:var(--space-2xl);font-size:.92rem}.site-footer a{color:var(--ink-inverse);text-decoration:none}.site-footer a:hover{color:var(--brass-soft)}.footer-inner{display:flex;flex-wrap:wrap;gap:28px 48px;justify-content:space-between;align-items:flex-start}.footer-brand{display:flex;align-items:center;gap:10px;font-family:var(--display);font-variation-settings:"opsz" 40,"wght" 640;font-size:1.15rem;color:#fff}.footer-brand svg{color:var(--brass-soft)}.footer-tag{margin-top:10px;max-width:30em}.footer-links{display:flex;gap:var(--space-lg);flex-wrap:wrap}.footer-links ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}.footer-heading{font-family:var(--mono);font-size:var(--step--3);font-variation-settings:normal;line-height:1.05;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--brass-soft);margin-bottom:14px}.footer-meta{margin-top:40px;padding-top:22px;border-top:1px solid color-mix(in srgb,var(--ink-inverse) 14%,transparent);display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 30px;justify-content:space-between;font-family:var(--mono);font-size:var(--step--3);text-transform:uppercase;letter-spacing:.12em;color:color-mix(in srgb,var(--ink-inverse) 62%,transparent)}.footer-meta-links{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin:0;padding:0}.footer-meta-links a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:from-font}.site-footer{--focus-ring: var(--brass-bright)}:root[data-theme=dark] .site-footer{border-top:1px solid var(--green-wash-line)}@media(forced-colors:active){.site-nav a[aria-current=page],.lang-menu-item.is-active{text-decoration:underline;text-underline-offset:4px}.theme-toggle{border-color:CanvasText}.theme-toggle[aria-pressed=true]{border-color:Highlight;border-width:3px}}@media(prefers-reduced-motion:reduce){.site-nav,.nav-toggle-bar,.lang-switch-trigger,.lang-switch-caret{transition:none}.lang-menu{animation:none}}}
