@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-wght-normal.BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-vietnamese-wght-normal.6IgcOCM7.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-ext-wght-normal.DC-KSUi6.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-wght-normal.BgDaEnEv.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{--td-font-sans:"Geist Variable", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--td-font-mono:ui-monospace, "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;--td-bg:#faf8f4;--td-surface:#fff;--td-text:#10151f;--td-text-muted:#4a5363;--td-border:#d9dde4;--td-border-strong:#7b8494;--td-brand-primary:#0000a0;--td-brand-secondary:#0073be;--td-accent:#0000a0;--td-accent-hover:#00006b;--td-accent-contrast:#fff;--td-accent-soft:#e8e8f7;--td-status-dev-bg:#fff3d6;--td-status-dev-text:#6b4300;--td-focus:#0000a0;--td-demo:#4aba5c;--td-demo-hover:#3a9a49;--td-demo-border:#277a35;--td-demo-contrast:#0c1018;--td-radius:1rem;--td-radius-sm:.75rem;--td-radius-lg:1.375rem;--td-radius-pill:999px;--td-shadow-sm:0 1px 2px #10151f0d, 0 4px 16px #10151f0d;--td-shadow-md:0 2px 4px #10151f0d, 0 14px 36px #10151f1c;--td-header-bg:#faf8f4c7;--td-content-width:80rem;--td-gutter:clamp(1rem, 4vw, 2rem);color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--td-bg:#0c1018;--td-surface:#141a25;--td-text:#eef1f6;--td-text-muted:#a8b1c0;--td-border:#2a3342;--td-border-strong:#6c778a;--td-brand-primary:#d7d7d7;--td-brand-secondary:#6cb6ec;--td-accent:#8eaaff;--td-accent-hover:#b4c7ff;--td-accent-contrast:#0c1018;--td-accent-soft:#1a2440;--td-status-dev-bg:#3a2c0c;--td-status-dev-text:#ffd98a;--td-focus:#8eaaff;--td-demo:#4aba5c;--td-demo-hover:#6ecb7c;--td-demo-border:#4aba5c;--td-demo-contrast:#0c1018;--td-header-bg:#0c1018c7;--td-shadow-sm:0 1px 2px #0000004d, 0 4px 16px #00000040;--td-shadow-md:0 2px 4px #0000004d, 0 14px 36px #00000073}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--td-bg);color:var(--td-text);font-family:var(--td-font-sans);-webkit-font-smoothing:antialiased;overflow-wrap:break-word;margin:0;font-size:1rem;line-height:1.55}img,svg{max-width:100%;display:block}h1,h2,h3{letter-spacing:-.025em;text-wrap:balance;margin:0 0 .5em;font-weight:600;line-height:1.15}p{margin:0 0 1em}a{color:var(--td-accent);text-underline-offset:.2em}a:hover{color:var(--td-accent-hover)}:focus-visible{outline:3px solid var(--td-focus);outline-offset:3px;border-radius:2px}[id]{scroll-margin-top:5rem}.container{width:100%;max-width:var(--td-content-width);padding-inline:var(--td-gutter);margin-inline:auto}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.eyebrow{font-family:var(--td-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--td-text-muted);margin-bottom:1rem;font-size:.875rem}.lead{color:var(--td-text-muted);max-width:44rem;font-size:clamp(1.0625rem,1.8vw,1.25rem);line-height:1.45}.section{padding-block:clamp(2rem,5vw,3.5rem)}.section-title{letter-spacing:-.02em;margin-bottom:.4em;font-size:clamp(1.5rem,3.2vw,2rem)}.section-intro{color:var(--td-text-muted);max-width:44rem;margin-bottom:1.25rem;font-size:1.0625rem}.button{border-radius:var(--td-radius-pill);border:1px solid var(--td-accent);justify-content:center;align-items:center;gap:.5rem;min-height:2.75rem;padding:.5rem 1.25rem;font-weight:600;text-decoration:none;transition:background-color .2s,transform .2s,box-shadow .2s;display:inline-flex}.button-primary{background:var(--td-accent);color:var(--td-accent-contrast)}.button-primary:hover{box-shadow:var(--td-shadow-sm);background:var(--td-accent-hover);border-color:var(--td-accent-hover);color:var(--td-accent-contrast)}.button-secondary{color:var(--td-accent);background:0 0}.button-secondary:hover{background:var(--td-accent-soft)}.button-row{flex-wrap:wrap;gap:.75rem;display:flex}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.card{background:var(--td-surface);border:1px solid var(--td-border);border-radius:var(--td-radius);box-shadow:var(--td-shadow-sm);padding:1.25rem;transition:box-shadow .25s,transform .25s}.card:hover{box-shadow:var(--td-shadow-md)}.icon-tile{background:var(--td-accent-soft);width:3rem;height:3rem;color:var(--td-accent);border-radius:.9rem;place-items:center;margin-bottom:1.1rem;display:inline-grid}.card h3{font-size:1.25rem}.card p:last-child{margin-bottom:0}.badge{background:var(--td-status-dev-bg);color:var(--td-status-dev-text);border-radius:999px;padding:.125rem .625rem;font-size:.8125rem;font-weight:600;display:inline-block}.checklist{margin:0;padding:0;list-style:none}.checklist li{flex-wrap:wrap;align-items:flex-start;gap:.25rem .625rem;margin-bottom:.625rem;display:flex}.checklist li>.icon{color:var(--td-accent);margin-top:.2em}.checklist li>span.text{flex:1 1 0;min-width:0}.badge-pro{background:var(--td-accent-soft);color:var(--td-accent)}.notice{border:1px solid var(--td-border-strong);border-radius:var(--td-radius-sm);background:var(--td-surface);border-inline-start-width:4px;padding:1rem 1.25rem}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.frame{--notch:5.5rem;border-radius:var(--td-radius-lg);-webkit-mask:radial-gradient(circle at 100% 100%, transparent var(--notch), #000 calc(var(--notch) + .5px));mask:radial-gradient(circle at 100% 100%, transparent var(--notch), #000 calc(var(--notch) + .5px));position:relative;overflow:hidden}.frame>img{object-fit:cover;width:100%;height:100%;display:block}.frame.still>img{animation:none;scale:1}.stage{position:relative}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.reveal{animation:linear both td-reveal view();animation-range:entry 5% entry 40%}.frame>img{animation:linear both td-parallax view();animation-range:cover;scale:1.16}.drift{animation:linear both td-drift view();animation-range:cover}@keyframes td-reveal{0%{opacity:0;translate:0 2.25rem}to{opacity:1;translate:0}}@keyframes td-parallax{0%{translate:0 -7%}to{translate:0 7%}}@keyframes td-drift{0%{translate:0 2.5rem}to{translate:0 -2.5rem}}}}.logo:where(.astro-f7espo7c){color:var(--td-text);letter-spacing:-.01em;align-items:center;gap:.5rem;font-weight:700;display:inline-flex}.logo-mark:where(.astro-f7espo7c){flex:none;width:2.5rem;height:2.5rem;display:block}.logo-mark:where(.astro-f7espo7c) svg{width:100%;height:100%}.lang:where(.astro-gtewornt){position:relative}summary:where(.astro-gtewornt){cursor:pointer;border:1px solid var(--td-border-strong);border-radius:var(--td-radius-sm);align-items:center;gap:.375rem;min-height:2.75rem;padding:.375rem .75rem;font-size:.9375rem;list-style:none;display:inline-flex}summary:where(.astro-gtewornt)::-webkit-details-marker{display:none}summary:where(.astro-gtewornt):after{content:"";border-bottom:2px solid;border-right:2px solid;width:.45em;height:.45em;transform:translateY(-25%)rotate(45deg)}.lang:where(.astro-gtewornt)[open] summary:where(.astro-gtewornt):after{transform:translateY(15%)rotate(-135deg)}ul:where(.astro-gtewornt){inset-inline-end:0;z-index:10;background:var(--td-surface);border:1px solid var(--td-border);border-radius:var(--td-radius-sm);min-width:10rem;margin:0;padding:.375rem;list-style:none;position:absolute;top:calc(100% + .375rem);box-shadow:0 8px 24px #0000001f}a:where(.astro-gtewornt){border-radius:var(--td-radius-sm);color:var(--td-text);padding:.5rem .75rem;text-decoration:none;display:block}a:where(.astro-gtewornt):hover{background:var(--td-accent-soft);color:var(--td-text)}a:where(.astro-gtewornt)[aria-current=page]{font-weight:700}.site-header:where(.astro-nen7h5rs){z-index:10;border-bottom:1px solid var(--td-border);background:var(--td-header-bg);backdrop-filter:saturate(180%)blur(20px);position:sticky;top:0}.inner:where(.astro-nen7h5rs){flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;min-height:3.25rem;padding-block:.25rem;display:flex}.home:where(.astro-nen7h5rs){margin-inline-end:auto;text-decoration:none}nav:where(.astro-nen7h5rs) ul:where(.astro-nen7h5rs){gap:.25rem;margin:0;padding:0;list-style:none;display:flex}nav:where(.astro-nen7h5rs) a:where(.astro-nen7h5rs){min-height:2.75rem;color:var(--td-text);border-radius:var(--td-radius-pill);align-items:center;padding-inline:.75rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-flex}nav:where(.astro-nen7h5rs) a:where(.astro-nen7h5rs):hover{background:var(--td-accent-soft);color:var(--td-accent)}.icon:where(.astro-ccg5yoga){flex:none;display:block}.site-footer:where(.astro-jo6i4kqk){border-top:1px solid var(--td-border);background:var(--td-surface);margin-top:auto;padding-block:2rem 1.25rem}.inner:where(.astro-jo6i4kqk){flex-wrap:wrap;justify-content:space-between;gap:1.25rem;display:flex}.brand:where(.astro-jo6i4kqk){width:10rem;margin:0 0 .75rem}.brand:where(.astro-jo6i4kqk) svg{width:100%;height:auto;display:block}.tagline:where(.astro-jo6i4kqk){align-items:center;gap:.5rem;max-width:26rem;display:flex}.tagline:where(.astro-jo6i4kqk) .icon{color:var(--td-accent)}.muted:where(.astro-jo6i4kqk){color:var(--td-text-muted)}.small:where(.astro-jo6i4kqk){margin:1rem 0 0;font-size:.875rem}.heading:where(.astro-jo6i4kqk){font-size:.875rem;font-family:var(--td-font-mono);text-transform:uppercase;letter-spacing:.04em;color:var(--td-text-muted);margin-bottom:.5rem}ul:where(.astro-jo6i4kqk){margin:0;padding:0;list-style:none}.link:where(.astro-jo6i4kqk){color:var(--td-accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:.25rem 0;font-weight:500;text-decoration:underline}.link:where(.astro-jo6i4kqk)[hidden]{display:none}li:where(.astro-jo6i4kqk) a:where(.astro-jo6i4kqk){padding-block:.25rem;font-weight:500;text-decoration:none;display:inline-block}li:where(.astro-jo6i4kqk) a:where(.astro-jo6i4kqk):hover{text-decoration:underline}body{flex-direction:column;min-height:100vh;display:flex}main:where(.astro-z4jru4n3):focus{outline:none}.skip-link:where(.astro-z4jru4n3){inset-inline-start:1rem;z-index:100;background:var(--td-accent);color:var(--td-accent-contrast);border-radius:var(--td-radius-sm);padding:.75rem 1rem;font-weight:600;position:absolute;top:-100px}.skip-link:where(.astro-z4jru4n3):focus{top:1rem}.fallback:where(.astro-z4jru4n3){padding-top:1rem}.fallback:where(.astro-z4jru4n3) p:where(.astro-z4jru4n3){margin:0}
