@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/be-vietnam-pro-vietnamese-400-normal.CRcqvyg1.woff2)format("woff2"),url(/_astro/be-vietnam-pro-vietnamese-400-normal.BuGn0gnm.woff)format("woff")}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/be-vietnam-pro-latin-400-normal.PpnXBOrz.woff2)format("woff2"),url(/_astro/be-vietnam-pro-latin-400-normal.bXgqVju9.woff)format("woff")}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/be-vietnam-pro-latin-ext-400-normal.CiZNW1ec.woff2)format("woff2"),url(/_astro/be-vietnam-pro-latin-ext-400-normal.DYBYyMQr.woff)format("woff")}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/be-vietnam-pro-vietnamese-600-normal.nyU-ZL2p.woff2)format("woff2"),url(/_astro/be-vietnam-pro-vietnamese-600-normal.DkpCIyan.woff)format("woff")}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/be-vietnam-pro-latin-600-normal.BZDkUTrt.woff2)format("woff2"),url(/_astro/be-vietnam-pro-latin-600-normal.5IO4e7bK.woff)format("woff")}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/be-vietnam-pro-latin-ext-600-normal.BNd8euf0.woff2)format("woff2"),url(/_astro/be-vietnam-pro-latin-ext-600-normal.BeUwKxhG.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff")}@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+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family: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+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: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+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light dark;--bg:#f4f8f9;--surface:#fff;--ink:#0b2233;--muted:#4a6272;--line:#d2dfe4;--line-strong:#a9bcc5;--tint:#e2eff0;--primary:#003a5c;--accent:#007b82;--on-accent:#fff;--seal:#be3e2b;--warn:#b7791f;--band:#003a5c;--on-band:#eaf3f6;--on-band-muted:#a9c4d1;--on-band-accent:#7fd3d8;--band-line:#1d5577;--grid:#003a5c0e;--ink-2:var(--muted);--ink-3:var(--muted);--ease-out:cubic-bezier(.23, 1, .32, 1);--gutter:clamp(16px, 4vw, 48px);--sans:"Be Vietnam Pro", system-ui, sans-serif;--display:"Bricolage Grotesque Variable", var(--sans);--mono:"IBM Plex Mono", ui-monospace, monospace}@media (prefers-color-scheme:dark){:root{--bg:#06161f;--surface:#0c2230;--ink:#e4eef2;--muted:#93abb7;--line:#1c3a4b;--line-strong:#2f5468;--tint:#0f2d3b;--primary:#8cc2e0;--accent:#3fb9c0;--on-accent:#06161f;--warn:#f2b544;--band:#0a2c41;--on-band-muted:#9fbaca;--band-line:#1f4b66;--grid:#8cc2e00d}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:linear-gradient(var(--grid) 1px, transparent 1px) 0 0 / 32px 32px, linear-gradient(90deg, var(--grid) 1px, transparent 1px) 0 0 / 32px 32px, var(--bg);color:var(--ink);font:400 1rem/1.65 var(--sans);margin:0}h1,h2,h3,p,ul,ol,figure,dl,dd{margin:0;padding:0}ul,ol{list-style:none}h1,h2,h3{font-family:var(--display);letter-spacing:-.015em;text-wrap:balance;font-weight:700;line-height:1.2}h1{font-size:clamp(2.3rem,5.4vw,4.1rem);font-weight:800;line-height:1.12}h2{font-size:clamp(1.75rem,3.4vw,2.6rem)}h3{font-size:1.15rem;line-height:1.3}a{color:var(--accent);text-underline-offset:.18em}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.on-band :focus-visible,.on-primary :focus-visible{outline-color:var(--on-band-accent)}.wrap{max-width:1160px;padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:clamp(64px,9vw,112px);scroll-margin-top:64px}.tight{padding-top:0}.sec-head{align-content:start;gap:14px;max-width:760px;margin-bottom:44px;display:grid}.label{color:var(--accent);font:500 .74rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase}.lead{max-width:62ch;color:var(--muted);font-size:1.12rem}.note{color:var(--muted);font-size:.875rem}.btn{background:var(--accent);min-height:46px;color:var(--on-accent);font:600 .95rem/1.3 var(--sans);cursor:pointer;transition:transform .16s var(--ease-out), filter .14s ease, border-color .14s ease;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:12px 20px;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn-ghost{border-color:var(--line);background:var(--surface);color:var(--ink)}.on-band .btn-ghost{border-color:var(--band-line);color:var(--on-band);background:0 0}@media (hover:hover) and (pointer:fine){.btn:hover{filter:brightness(1.08)}.btn-ghost:hover{border-color:var(--accent)}}.code{font-family:var(--mono);font-size:.875em;font-weight:500}.chip{border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:5px 11px;font-size:.82rem;display:inline-block}.logo{width:136px;height:auto;display:block}.logo .cls-1{fill:currentColor}.logo .cls-2{fill:var(--accent)}.skip{z-index:10;background:var(--surface);color:var(--primary);padding:8px 14px;position:absolute;top:-64px;left:16px}.skip:focus{top:8px}.on-band,.on-primary{background:var(--band);color:var(--on-band)}.on-band .label,.on-primary .label{color:var(--on-band-accent)}.on-band .lead,.on-primary .lead{color:var(--on-band-muted)}.on-band a:not(.btn),.on-primary a:not(.btn){color:var(--on-band-accent)}.on-band .logo .cls-2,.on-primary .logo .cls-2{fill:var(--on-band-accent)}.page-head{padding-block:clamp(40px,6vw,72px)}.page-head .lead{margin-top:16px}.split{gap:28px clamp(32px,6vw,88px);display:grid}@media (width>=900px){.split{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-property:opacity,color,background-color,border-color!important}.btn:active{transform:none}}.prose{gap:10px;display:grid}.prose>*{max-width:68ch}.prose h2{margin-top:24px;font-size:1.25rem}.prose h2:first-child{margin-top:0}.prose p{color:var(--ink-2)}.site-footer[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--line);background:var(--surface);padding-block:clamp(40px,6vw,64px);font-size:.9375rem}.grid[data-astro-cid-jo6i4kqk]{gap:32px;display:grid}.owner[data-astro-cid-jo6i4kqk]{max-width:38ch;color:var(--primary);gap:10px;display:grid}nav[data-astro-cid-jo6i4kqk]{align-content:start;gap:8px;display:grid}nav[data-astro-cid-jo6i4kqk] .label[data-astro-cid-jo6i4kqk]{margin-bottom:4px}a[data-astro-cid-jo6i4kqk]{color:var(--ink);overflow-wrap:anywhere;text-decoration:none}@media (hover:hover) and (pointer:fine){a[data-astro-cid-jo6i4kqk]:hover{text-decoration:underline}}@media (width>=760px){.grid[data-astro-cid-jo6i4kqk]{grid-template-columns:2fr 1fr 1fr}}.site-header[data-astro-cid-nen7h5rs]{z-index:5;background:color-mix(in srgb, var(--surface) 86%, transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.bar[data-astro-cid-nen7h5rs]{align-items:center;gap:20px;min-height:64px;display:flex}.home[data-astro-cid-nen7h5rs]{color:var(--primary);flex:none}.nav-wide[data-astro-cid-nen7h5rs]{gap:18px;margin-right:auto;display:none}.nav-wide[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs],.login[data-astro-cid-nen7h5rs]{color:var(--ink);text-underline-offset:6px;white-space:nowrap;font-size:.9rem;text-decoration:none}.actions[data-astro-cid-nen7h5rs]{align-items:center;gap:16px;display:none}.cta[data-astro-cid-nen7h5rs]{white-space:nowrap;min-height:40px;padding:8px 16px;font-size:.875rem}.menu-btn[data-astro-cid-nen7h5rs]{border:1px solid var(--line);min-height:44px;color:var(--ink);border-radius:8px;align-items:center;margin-left:auto;padding-inline:14px;font-size:.9rem;text-decoration:none;display:flex}.nav-narrow[data-astro-cid-nen7h5rs]{pointer-events:none;display:none;position:absolute;inset:0}.bar[data-astro-cid-nen7h5rs]:has(#menu:target) .open[data-astro-cid-nen7h5rs],.bar[data-astro-cid-nen7h5rs]:not(:has(#menu:target)) .close[data-astro-cid-nen7h5rs]{display:none}.nav-narrow[data-astro-cid-nen7h5rs]:target{display:block}.backdrop[data-astro-cid-nen7h5rs]{pointer-events:auto;background:#0b223359;height:100vh;position:absolute;inset:100% 0 auto}.panel[data-astro-cid-nen7h5rs]{pointer-events:auto;padding:8px var(--gutter) 16px;background:var(--surface);border-bottom:1px solid var(--line);display:grid;position:absolute;inset:100% 0 auto}.panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{color:var(--ink);padding-block:12px;text-decoration:none}.panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]+a[data-astro-cid-nen7h5rs]{border-top:1px solid var(--line)}@media (hover:hover) and (pointer:fine){.nav-wide[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.login[data-astro-cid-nen7h5rs]:hover{text-decoration:underline}}@media (width>=1180px){.nav-wide[data-astro-cid-nen7h5rs],.actions[data-astro-cid-nen7h5rs]{display:flex}.menu-btn[data-astro-cid-nen7h5rs],.nav-narrow[data-astro-cid-nen7h5rs]:target{display:none}}
