@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/bricolage-grotesque-vietnamese-wght-normal.96a5d80f.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(/_next/static/media/bricolage-grotesque-latin-ext-wght-normal.232ded7b.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(/_next/static/media/bricolage-grotesque-latin-wght-normal.3e340e57.woff2) format("woff2-variations");unicode-range:u+00??,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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_next/static/media/dm-sans-latin-ext-wght-normal.fbf4c1a6.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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_next/static/media/dm-sans-latin-wght-normal.bfe8c811.woff2) format("woff2-variations");unicode-range:u+00??,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(/_next/static/media/jetbrains-mono-cyrillic-ext-wght-normal.0d2c2f66.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_next/static/media/jetbrains-mono-cyrillic-wght-normal.23645aad.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(/_next/static/media/jetbrains-mono-greek-wght-normal.c6c31cb1.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(/_next/static/media/jetbrains-mono-vietnamese-wght-normal.93fc40a8.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(/_next/static/media/jetbrains-mono-latin-ext-wght-normal.9c9751ca.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(/_next/static/media/jetbrains-mono-latin-wght-normal.a865edea.woff2) format("woff2-variations");unicode-range:u+00??,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{--ink-950:#0B0B14;--ink-900:#16162A;--ink-700:#2B2B47;--ink-600:#4B5160;--ink-400:#B4B8C6;--paper-0:#FFFFFF;--paper-100:#F6F4EF;--paper-200:#E8E4D9;--mint-100:#DFF8EE;--mint-400:#2FE5A0;--mint-500:#1FC98B;--mint-700:#0B7A55;--mint-900:#0F3D2E;--signal-100:#FFE1E7;--signal-500:#FF5C7A;--signal-600:#F23D61;--signal-900:#4A1823;--green-400:#3AD29F;--green-600:#0E7050;--red-400:#FF7A7A;--red-600:#C62828;--amber-400:#FFD166;--amber-700:#7A4E00;--color-bg:var(--paper-100);--color-surface:var(--paper-0);--color-surface-sunken:var(--paper-200);--color-text:var(--ink-950);--color-text-muted:var(--ink-600);--color-border:var(--ink-950);--color-brand:var(--mint-400);--color-brand-hover:var(--mint-500);--color-brand-text:var(--mint-700);--color-brand-soft:var(--mint-100);--color-on-brand:var(--ink-950);--color-cta:var(--signal-500);--color-cta-hover:var(--signal-600);--color-cta-soft:var(--signal-100);--color-on-cta:var(--ink-950);--color-success:var(--green-600);--color-danger:var(--red-600);--color-warning:var(--amber-700);--color-focus:var(--mint-700);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-pill:999px;--border-w:2px;--shadow-offset:4px;--touch-min:44px;--touch-primary:52px;--tabbar-h:68px;--appbar-h:56px;--font-display:"Bricolage Grotesque Variable","Bricolage Grotesque",system-ui,sans-serif;--font-body:"DM Sans Variable","DM Sans",system-ui,sans-serif;--font-mono:"JetBrains Mono Variable","JetBrains Mono",ui-monospace,monospace;--dur-fast:150ms;--dur-base:250ms;--dur-slow:400ms;--ease-out:cubic-bezier(.2,.8,.2,1);--button-radius:var(--radius-md);--button-border:var(--border-w) solid var(--color-border);--button-min-h:var(--touch-primary);--button-shadow:var(--shadow-offset) var(--shadow-offset) 0 var(--color-border);--button-cta-bg:var(--color-cta);--button-cta-fg:var(--color-on-cta);--button-cta-hover:var(--color-cta-hover);--button-ink-bg:var(--color-text);--button-ink-fg:var(--color-bg);--input-min-h:48px;--input-radius:var(--radius-md);--input-border:var(--border-w) solid var(--color-border);--card-bg:var(--color-surface);--card-radius:var(--radius-md);--card-border:var(--border-w) solid var(--color-border);--card-pad:var(--space-4);--chip-min-h:44px;--chip-radius:var(--radius-pill);--sheet-radius:var(--radius-lg) var(--radius-lg) 0 0;--sheet-max-w:640px;--tabbar-bg:color-mix(in srgb,var(--color-bg) 92%,transparent);--progress-h:14px;--progress-fill:var(--color-brand);--toast-bg:var(--color-text);--toast-fg:var(--color-bg)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:var(--ink-950);--color-surface:var(--ink-900);--color-surface-sunken:var(--ink-700);--color-text:var(--paper-100);--color-text-muted:var(--ink-400);--color-border:var(--paper-100);--color-brand-text:var(--mint-400);--color-brand-soft:var(--mint-900);--color-cta-soft:var(--signal-900);--color-success:var(--green-400);--color-danger:var(--red-400);--color-warning:var(--amber-400);--color-focus:var(--mint-400);color-scheme:dark}}:root[data-theme=dark]{--color-bg:var(--ink-950);--color-surface:var(--ink-900);--color-surface-sunken:var(--ink-700);--color-text:var(--paper-100);--color-text-muted:var(--ink-400);--color-border:var(--paper-100);--color-brand-text:var(--mint-400);--color-brand-soft:var(--mint-900);--color-cta-soft:var(--signal-900);--color-success:var(--green-400);--color-danger:var(--red-400);--color-warning:var(--amber-400);--color-focus:var(--mint-400);color-scheme:dark}@media (prefers-reduced-motion:reduce){:root{--dur-fast:.001ms;--dur-base:.001ms;--dur-slow:.001ms}}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:calc(var(--appbar-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(var(--space-4),env(safe-area-inset-right)) 0 max(var(--space-4),env(safe-area-inset-left));background:var(--tabbar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:var(--border-w) solid var(--color-border)}.site-logo{display:inline-flex;align-items:center;min-height:var(--touch-min)}.site-logo img{display:block;height:32px;width:auto}.logo-dark{display:none!important}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .logo-light{display:none!important}:root:not([data-theme=light]) .logo-dark{display:block!important}}.lang-btn{display:inline-flex;align-items:center;gap:6px;min-height:var(--touch-min);min-width:var(--touch-min);padding:0 var(--space-3);font:inherit;color:var(--color-text);background:var(--color-surface);border:var(--border-w) solid var(--color-border);border-radius:var(--radius-pill);cursor:pointer}.lang-btn .mono{font-weight:700}.lang-btn:focus-visible,.lang-close:focus-visible,.lang-row:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.lang-ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.lang-chev{width:16px;height:16px}.lang-sheet{border:var(--border-w) solid var(--color-border);background:var(--color-surface);color:var(--color-text);width:100%;max-width:100%;margin:auto 0 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:0 0 env(safe-area-inset-bottom);max-height:85dvh;overflow:auto;overscroll-behavior:contain}.lang-sheet::-webkit-backdrop{background:rgb(11 11 20/.55)}.lang-sheet::backdrop{background:rgb(11 11 20/.55)}.lang-sheet[open]{animation:lang-up var(--dur-slow) var(--ease-out)}@keyframes lang-up{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}.lang-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-2)}.lang-head h2{margin:0;font-size:20px}.lang-close{display:grid;place-items:center;width:var(--touch-min);height:var(--touch-min);font:inherit;color:var(--color-text);background:transparent;border:var(--border-w) solid var(--color-border);border-radius:var(--radius-pill);cursor:pointer}.lang-list{list-style:none;margin:0;padding:0 var(--space-2) var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.lang-row{display:flex;align-items:center;gap:var(--space-3);min-height:56px;padding:0 var(--space-3);color:inherit;text-decoration:none;border:var(--border-w) solid transparent;border-radius:var(--radius-md)}.lang-row:active{background:var(--color-surface-sunken)}.lang-row[aria-current=true]{background:var(--color-brand-soft);border-color:var(--color-border)}.lang-code{display:grid;place-items:center;flex:none;width:44px;height:32px;font-weight:700;border:var(--border-w) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)}.lang-names{display:flex;flex-direction:column;flex:1 1;min-width:0;line-height:1.2}.lang-native{font-size:18px;font-weight:700}.lang-en{font-size:14px;color:var(--color-text-muted)}.lang-tick{stroke-width:3}@media (min-width:720px){.lang-sheet{width:340px;margin:calc(var(--appbar-h) + var(--space-2)) var(--space-4) 0 auto;border-radius:var(--radius-md);box-shadow:var(--button-shadow);max-height:calc(100dvh - 96px)}.lang-sheet[open]{animation:none}.lang-sheet::-webkit-backdrop{background:transparent}.lang-sheet::backdrop{background:transparent}}@media (prefers-reduced-motion:reduce){.lang-sheet[open]{animation:none}}.site-nav{display:flex;align-items:center;gap:var(--space-4);margin-left:auto}.site-nav a{display:inline-flex;align-items:center;min-height:var(--touch-min);color:var(--color-text);font-weight:700;text-decoration:none}.site-nav a:hover{text-decoration:underline;text-underline-offset:4px}.site-nav a:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px;border-radius:4px}.nav-pack{display:none!important}@media (min-width:720px){.nav-pack{display:inline-flex!important}.site-nav{margin-right:var(--space-4)}}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}