@import "https://fonts.googleapis.com/css2?family=Stack+Sans+Headline:wght@300..700&family=Stack+Sans+Text:wght@300..700&family=JetBrains+Mono:wght@300;400;500;600&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:81px;overflow-x:clip}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body[data-skin=readout][data-surface=site]{--ds-site-font-cjk:var(--ds-font-cjk-default)}[data-lang=zh] body[data-skin=readout][data-surface=site]{--ds-site-font-cjk:var(--ds-font-cjk-chinese)}[data-lang=ja] body[data-skin=readout][data-surface=site]{--ds-site-font-cjk:var(--ds-font-cjk-japanese)}@font-face{font-family:CJK Text;src:local(PingFangSC-Regular),local(MicrosoftYaHei),local(Microsoft YaHei);font-weight:300 400;unicode-range:U+2E80-2EFF,U+3000-303F,U+3040-309F,U+30A0-30FF,U+3100-312F,U+32??,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FE30-FE4F,U+FF00-FFEF}@font-face{font-family:CJK Text;src:local(PingFangSC-Medium),local(MicrosoftYaHei),local(Microsoft YaHei);font-weight:var(--ds-weight-medium);unicode-range:U+2E80-2EFF,U+3000-303F,U+3040-309F,U+30A0-30FF,U+3100-312F,U+32??,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FE30-FE4F,U+FF00-FFEF}@font-face{font-family:CJK Text;src:local(PingFangSC-Semibold),local(MicrosoftYaHei-Bold),local(Microsoft YaHei Bold);font-weight:600 900;unicode-range:U+2E80-2EFF,U+3000-303F,U+3040-309F,U+30A0-30FF,U+3100-312F,U+32??,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FE30-FE4F,U+FF00-FFEF}body[data-skin=readout][data-surface=site]{font-family:var(--ds-font-site-text);font-size:var(--ds-type-lg-size);background:var(--ds-background);color:var(--ds-foreground);-webkit-font-smoothing:antialiased;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}code,pre{font-family:var(--ds-font-mono)}:focus-visible{outline:2px solid var(--ds-action);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.br-wide{display:inline}.skip-link{z-index:100;background:var(--ds-foreground);color:var(--ds-background);font-size:var(--ds-type-md-size);font-weight:var(--ds-weight-medium);border-radius:6px;padding:10px 16px;transition:top .15s;position:absolute;top:-48px;left:16px}.skip-link:focus-visible{top:8px}.hero-h,.sec-h,.cta-h,.footer-ghost,.card h3{font-family:var(--ds-font-site-headline)}.hero-sub,.sec-sub,.card p,.cta-sub,.hero-promo,.footer-brand p,.cat-foot{text-wrap:pretty}.cta-h{text-wrap:balance}.eyebrow{font-size:var(--ds-type-xs-size);font-weight:var(--ds-weight-medium);text-transform:uppercase;letter-spacing:.11em;color:var(--ds-action-ink);display:block}.band{border-bottom:1px solid var(--ds-border);overflow-x:clip}.band-inner{border-left:1px solid var(--ds-border);border-right:1px solid var(--ds-border);max-width:1280px;margin:0 auto;position:relative}.band-inner:before,.band-inner:after{content:"";z-index:2;background:var(--ds-background) url(../media/corner-star-light.1k0dfz53yzw4g.svg) center / 9px 9px no-repeat;width:13px;height:13px;position:absolute;top:-7px}.band-inner:before{left:-7px}.band-inner:after{right:-7px}.cta .band-inner:before,.cta .band-inner:after,.footer .band-inner:before,.footer .band-inner:after{background-color:#0000}.nav{z-index:50;background:var(--ds-background);background:color-mix(in srgb, var(--ds-background) 88%, transparent);-webkit-backdrop-filter:var(--ds-component-site-navigation-blur);border-bottom:1px solid var(--ds-border);position:sticky;top:0;overflow-x:clip}.nav-inner{border-left:1px solid var(--ds-border);border-right:1px solid var(--ds-border);justify-content:space-between;align-items:center;gap:16px;max-width:1280px;height:80px;margin:0 auto;padding:0 28px;display:flex;position:relative}.nav-inner:before,.nav-inner:after{content:"";z-index:2;background:var(--ds-background) url(../media/corner-star-light.1k0dfz53yzw4g.svg) center / 9px 9px no-repeat;width:13px;height:13px;position:absolute;bottom:-7px}.nav-inner:before{left:-7px}.nav-inner:after{right:-7px}[data-theme=dark] .band-inner:before,[data-theme=dark] .band-inner:after,[data-theme=dark] .nav-inner:before,[data-theme=dark] .nav-inner:after{background-image:url(../media/corner-star-dark.1r244ucw3x5ln.svg)}.nav-brand{align-items:center;gap:10px;display:inline-flex}.scene{perspective:99999px;perspective-origin:50%;width:23px;height:24px}.mark-3d{width:100%;height:100%;transform-style:preserve-3d;will-change:transform;display:block;position:relative}@media (prefers-reduced-motion:no-preference) and (hover:hover){.nav-brand:hover .mark-3d{animation:brand-spin var(--ds-motion-site-brand-spin-duration) var(--ds-motion-ease-entrance)}}@keyframes brand-spin{to{transform:rotateY(var(--ds-motion-full-rotation))}}.brand-mark-layer{background-image:url(../media/logo-lockup.0k0f40v0rrrof.svg);background-position:0;background-repeat:no-repeat;background-size:103.906px 24px;width:100%;height:100%;display:block}.brand-word{background-image:url(../media/logo-lockup.0k0f40v0rrrof.svg);background-position:100%;background-repeat:no-repeat;background-size:103.906px 24px;width:72px;height:24px;display:block}[data-theme=dark] :is(.brand-mark-layer,.brand-word){filter:var(--ds-component-site-dark-logo-filter)}.nav-center{align-items:center;gap:4px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.nav-link{z-index:1;font-size:var(--ds-type-base-size);line-height:var(--ds-type-md-line-height);color:var(--ds-foreground);transition:var(--ds-component-site-navigation-link-transition);border-radius:6px;align-items:center;gap:5px;padding:8px 12px;display:inline-flex;position:relative}.nav-link:hover,.nav-link:focus-visible{background:var(--ds-nav-pill)}.nav-right{align-items:center;gap:10px;display:flex}.btn.nav-login{min-width:0;height:36px;padding:0 14px}.theme-seg{background:var(--ds-surface);border-radius:6px;align-items:center;gap:2px;padding:2px;display:inline-flex;position:relative}.theme-seg-thumb{background:var(--ds-background);width:24px;height:24px;transition:var(--ds-component-site-theme-thumb-transition);pointer-events:none;border-radius:4px;position:absolute;top:2px;left:2px;transform:translate(0)}.theme-seg[data-position="1"] .theme-seg-thumb{transform:translate(26px)}.theme-seg[data-position="2"] .theme-seg-thumb{transform:translate(52px)}@media (prefers-reduced-motion:reduce){.theme-seg-thumb{transition:none}}.no-trans,.no-trans *{transition:none!important}.no-trans .theme-seg-thumb{transition:var(--ds-component-site-theme-thumb-transition)!important}.theme-seg button{z-index:1;width:24px;height:24px;color:var(--ds-foreground-muted);border-radius:4px;justify-content:center;align-items:center;transition:color .15s;display:inline-flex;position:relative}.theme-seg button:hover,.theme-seg button.is-active{color:var(--ds-foreground)}.theme-seg svg{width:14px;height:14px;display:block}.seg-row{align-items:center;gap:4px;display:inline-flex}.lang-switch{display:inline-flex;position:relative}.lang-btn{background:var(--ds-surface);color:var(--ds-foreground-muted);font-size:var(--ds-type-sm-size);line-height:var(--ds-type-md-line-height);border-radius:6px;align-items:center;gap:2px;padding:4px 7px;transition:background-color .15s,color .15s;display:inline-flex}.lang-btn:hover{background:color-mix(in srgb, var(--ds-surface) 88%, var(--ds-foreground));color:var(--ds-foreground)}.lang-btn svg{flex:none;width:14px;height:14px;display:block}.lang-btn .lang-label{white-space:nowrap;padding-left:2px}.lang-btn .lang-chev{transition:transform .18s var(--ds-motion-ease-entrance)}.lang-switch.is-open .lang-chev{transform:rotate(180deg)}.lang-menu{bottom:calc(100% + var(--ds-component-site-language-menu-offset));z-index:40;min-width:max(var(--ds-component-site-language-menu-width), 100%);border-radius:var(--ds-component-site-language-menu-radius);background:var(--ds-surface);box-shadow:inset 0 0 0 var(--ds-hairline) var(--ds-border), var(--ds-component-site-menu-elevation);flex-direction:column;gap:2px;padding:4px;display:flex;position:absolute;left:0}.lang-menu[hidden]{display:none}.lang-thumb{left:var(--ds-space-1);right:var(--ds-space-1);height:var(--ds-site-language-thumb-height,var(--ds-component-site-language-option-height));border-radius:var(--ds-radius-md);background:var(--ds-language-hover);opacity:0;transform:translateY(var(--ds-site-language-thumb-y));transition:var(--ds-component-site-language-thumb-transition);pointer-events:none;position:absolute;top:0}.lang-menu.has-thumb .lang-thumb{opacity:1}.lang-thumb[data-quiet=true]{transition:var(--ds-component-site-language-thumb-quiet-transition)}@media (prefers-reduced-motion:reduce){.lang-thumb{transition:none}}.lang-menu [role=option]{z-index:var(--ds-component-site-language-content-layer);align-items:center;gap:var(--ds-space-2);padding:var(--ds-component-site-language-option-padding-block) var(--ds-component-site-language-option-padding-inline);border-radius:var(--ds-radius-md);font-size:var(--ds-type-md-size);line-height:var(--ds-type-md-line-height);color:var(--ds-foreground-muted);white-space:nowrap;cursor:pointer;transition:color var(--ds-motion-duration-moderate-out) var(--ds-motion-ease-exit);display:flex;position:relative}.lang-menu [role=option]:hover{color:var(--ds-foreground)}.lang-menu [role=option]:focus{outline:none}.lang-menu [role=option]:focus-visible{outline:var(--ds-component-site-language-focus-width) solid var(--ds-focus-ring);outline-offset:calc(-1 * var(--ds-component-site-language-focus-width))}.lang-menu [role=option].is-active{color:var(--ds-foreground)}.lang-menu .lang-dot{width:var(--ds-component-site-language-dot-size);height:var(--ds-component-site-language-dot-size);border-radius:var(--ds-radius-pill);background:var(--ds-action-ink);opacity:0;transition:opacity var(--ds-motion-duration-moderate-out) var(--ds-motion-ease-exit);flex:none}.lang-menu [role=option].is-active .lang-dot{opacity:1}.btn{min-width:160px;height:44px;font-size:var(--ds-type-base-size);font-weight:var(--ds-weight-regular);border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 20px;transition:filter .15s,background-color .15s,border-color .15s;display:inline-flex}.btn svg{width:var(--ds-component-control-icon-size);height:var(--ds-component-control-icon-size);flex:none}.btn--primary{background:var(--ds-foreground);color:var(--ds-background)}.btn--primary:hover{background:color-mix(in srgb, var(--ds-foreground) 85%, var(--ds-background))}@media (prefers-reduced-motion:no-preference){.btn:hover .btn-label,.footer-col a:hover{background:linear-gradient(90deg, currentColor 0%, currentColor 35%, color-mix(in srgb, currentColor 50%, transparent) 50%, currentColor 65%, currentColor 100%);-webkit-text-fill-color:transparent;background-size:250% 100%;-webkit-background-clip:text;background-clip:text;animation:.6s btn-shimmer}}@keyframes btn-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.btn--ghost{background:var(--ds-surface);color:var(--ds-foreground)}.btn--ghost:hover{border-color:var(--ds-line-strong)}[data-theme=dark] .cta .btn--ghost{background:var(--ds-component-site-cta-ghost);color:var(--ds-foreground);-webkit-backdrop-filter:var(--ds-component-site-navigation-blur)}[data-theme=dark] .cta .btn--ghost:hover{background:var(--ds-component-site-cta-ghost-hover);border-color:#0000}.nav-cta{min-width:0;height:36px;padding:0 16px;animation:.22s cta-in}.nav-cta.is-tucked{display:none}@keyframes cta-in{0%{opacity:0;translate:0 -4px}}@media (prefers-reduced-motion:reduce){.nav-cta{animation:none}}.hero-split{grid-template-columns:1fr 1fr;align-items:center;display:grid}.hero-copy{min-width:0;padding:116px 40px 116px 72px}.hero-h{font-size:clamp(38px,4.7vw,60px);font-weight:var(--ds-weight-semibold);letter-spacing:-.012em;margin-bottom:18px;line-height:1.1}.hero-sub{max-width:var(--ds-component-site-hero-copy-width);font-size:var(--ds-type-lg-size);font-weight:var(--ds-weight-light);color:var(--ds-foreground-body);margin:0 0 30px;line-height:1.5}.hero-sub:has(+.hero-compat){margin-bottom:var(--ds-space-6)}.hero-compat{max-width:var(--ds-component-site-hero-copy-width);margin:0 0 var(--ds-space-6);padding:calc(var(--ds-space-2) + 2 * var(--ds-hairline)) calc(2 * var(--ds-hairline));background-image:linear-gradient(90deg, var(--ds-hero-compat-rule), var(--ds-hero-compat-rule) 30%, transparent), linear-gradient(90deg, var(--ds-hero-compat-rule), var(--ds-hero-compat-rule) 30%, transparent);background-size:var(--ds-component-site-hero-compat-background-size);background-position:var(--ds-component-site-hero-compat-background-position);font-family:var(--ds-font-mono);font-size:var(--ds-component-site-hero-compat-font-size);line-height:var(--ds-component-site-hero-compat-line-height);letter-spacing:var(--ds-component-site-hero-compat-letter-spacing);color:var(--ds-foreground-muted);background-repeat:no-repeat}.rotor-line{white-space:nowrap;color:var(--ds-action-ink)}.rotor .r-raw,.footer-brand p .tag-raw{color:var(--ds-foreground)}.hero-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px;display:flex}.hero-promo{font-size:var(--ds-type-sm-size);font-weight:var(--ds-weight-light);line-height:var(--ds-type-xs-line-height);color:var(--ds-foreground-muted);align-items:flex-start;gap:4px;margin-top:24px;padding:0 2px;display:flex}.hero-promo .promo-gift{width:12px;height:12px;color:var(--ds-promotion-accent);flex:none;margin-top:2px}.promo-amt{font-weight:var(--ds-weight-regular);color:var(--ds-foreground)}.hero-side{perspective:900px;justify-content:center;align-self:stretch;align-items:center;min-width:0;padding:48px 32px;display:flex}.term-glass{background:var(--ds-glass);-webkit-backdrop-filter:var(--ds-component-site-glass-blur);border-radius:16px;max-width:100%;padding:8px}[data-theme=dark] .term-glass{box-shadow:var(--ds-component-site-terminal-outline)}@media (prefers-reduced-motion:no-preference) and (hover:hover){.term-glass{transition:var(--ds-component-site-tilt-return-transition);will-change:transform;transform-style:preserve-3d}.cards3 .card{transition:var(--ds-component-site-tilt-return-transition);will-change:transform}.term-glass[data-tilting]{transition:var(--ds-component-site-tilt-follow-transition);transform:rotateX(var(--ds-site-tilt-x)) rotateY(var(--ds-site-tilt-y))}.cards3 .card[data-tilting]{transition:var(--ds-component-site-tilt-follow-transition);transform:perspective(var(--ds-component-site-tilt-perspective)) rotateX(var(--ds-site-tilt-x)) rotateY(var(--ds-site-tilt-y))}}.term{text-align:left;background:var(--ds-surface);z-index:1;border-radius:12px;width:536px;min-width:0;max-width:100%;margin:0;position:relative;overflow:hidden}.term-fluid{width:100%}.term-top{border-bottom:.5px solid var(--ds-line);align-items:center;gap:16px;min-height:40px;padding:0 8px 0 16px;display:flex}.traffic{background:url(../media/traffic-light.3_0kg083xmzb-.svg) 50%/contain no-repeat;flex:none;width:42px;height:10px;display:block}[data-theme=dark] .traffic{background-image:url(../media/traffic-dark.2qtwgijlivlgm.svg)}.term-name{min-width:0;font-family:var(--ds-font-mono);font-size:var(--ds-type-sm-size);font-weight:var(--ds-weight-light);color:var(--ds-foreground-faint);flex:1}.copy-btn{width:24px;height:24px;color:var(--ds-foreground-muted);opacity:0;border-radius:4px;flex:none;justify-content:center;align-items:center;transition:opacity .15s,color .15s;display:inline-flex}.term:hover .copy-btn,.term:focus-within .copy-btn{opacity:.5}.term .copy-btn:hover{opacity:1;color:var(--ds-foreground)}.copy-btn:focus-visible{opacity:1}@media (hover:none){.copy-btn{opacity:.5}}.copy-btn .ico-check{display:none}.copy-btn :is(.ico-copy,.ico-check){width:14px;height:14px}.copy-btn.is-done{opacity:1;color:var(--ds-action-ink)}.copy-btn.is-done .ico-copy{display:none}.copy-btn.is-done .ico-check{display:block}.term-body{font-size:var(--ds-type-sm-size);color:var(--ds-foreground-body);padding:16px;line-height:22px;overflow-x:auto}.t-dim,.t-str{color:inherit}.t-blue{color:var(--ds-action-ink);font-weight:var(--ds-weight-medium);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.pillars .band-inner,.catalog .band-inner{padding:72px}.sec-wm{z-index:-1;-webkit-mask-image:var(--ds-component-site-watermark-fade);mask-image:var(--ds-component-site-watermark-fade);-webkit-mask-image:var(--ds-component-site-watermark-fade);pointer-events:none;--ds-site-watermark-x:50%;--ds-site-watermark-y:50%;background:url(../media/watermark-light.01-lmtb89q2vu.svg) 100% 0/36px 36px;position:absolute;inset:0}.sec-wm:after{content:"";background:conic-gradient(from 210deg at var(--ds-site-watermark-x) var(--ds-site-watermark-y), var(--ds-component-site-watermark-spectrum));-webkit-mask-image:radial-gradient(circle at var(--ds-site-watermark-x) var(--ds-site-watermark-y), var(--ds-component-site-watermark-glow)), url(../media/watermark-mask.1h9_5e40cxp75.svg);-webkit-mask-composite:source-in;-webkit-mask-position:0 0,100% 0;-webkit-mask-size:auto,36px 36px;-webkit-mask-repeat:no-repeat,repeat;-webkit-mask-image:radial-gradient(circle at var(--ds-site-watermark-x) var(--ds-site-watermark-y), var(--ds-component-site-watermark-glow)), url(../media/watermark-mask.1h9_5e40cxp75.svg);mask-image:radial-gradient(circle at var(--ds-site-watermark-x) var(--ds-site-watermark-y), var(--ds-component-site-watermark-glow)), url(../media/watermark-mask.1h9_5e40cxp75.svg);opacity:0;transition:opacity .35s var(--ds-motion-ease-entrance);position:absolute;inset:0;-webkit-mask-position:0 0,100% 0;mask-position:0 0,100% 0;-webkit-mask-size:auto,36px 36px;mask-size:auto,36px 36px;-webkit-mask-repeat:no-repeat,repeat;mask-repeat:no-repeat,repeat;-webkit-mask-composite:source-in;mask-composite:intersect}.sec-wm[data-lit]:after{opacity:.15}[data-theme=dark] .sec-wm{background-image:url(../media/watermark-dark.30rusa-prs6bb.svg)}@media (prefers-reduced-motion:reduce){.sec-wm:after{content:none}}.sec-head{max-width:640px;margin-bottom:40px}.sec-head .eyebrow{margin-bottom:18px}.sec-h{font-size:clamp(32px,3.5vw,44px);font-weight:var(--ds-weight-regular);letter-spacing:-.022em;margin-bottom:18px;line-height:1.11}.sec-sub{font-size:var(--ds-type-lg-size);font-weight:var(--ds-weight-light);color:var(--ds-foreground-body);line-height:1.5}.sec-head .btn{margin-top:24px}.catalog-page .band-inner{isolation:isolate}.ds-model-catalog-backdrop{z-index:var(--ds-component-site-catalog-art-layer);pointer-events:none;-webkit-mask-image:var(--ds-component-site-catalog-art-mask);-webkit-mask-image:var(--ds-component-site-catalog-art-mask);mask-image:var(--ds-component-site-catalog-art-mask);position:absolute;inset:0;overflow:hidden}.ds-model-catalog-backdrop svg{width:var(--ds-component-site-catalog-art-size);height:var(--ds-component-site-catalog-art-size);translate:var(--ds-component-site-catalog-art-translate);position:absolute;top:0;right:0}.ds-model-catalog-tag{font:var(--ds-component-site-catalog-art-tag-font);letter-spacing:var(--ds-hairline);fill:var(--ds-model-catalog-tag)}.ds-model-catalog-satellite circle{fill:var(--ds-action)}.ds-model-catalog-satellite[data-satellite=first]{--ds-model-art-duration:34s;--ds-model-art-swing:-38deg;--ds-model-art-counter-swing:38deg;--ds-model-art-delay:0s}.ds-model-catalog-satellite[data-satellite=second]{--ds-model-art-duration:55s;--ds-model-art-swing:34deg;--ds-model-art-counter-swing:-34deg;--ds-model-art-delay:-800ms}.ds-model-catalog-satellite[data-satellite=third]{--ds-model-art-duration:21s;--ds-model-art-swing:-26deg;--ds-model-art-counter-swing:26deg;--ds-model-art-delay:-1600ms}.ds-model-catalog-counter[data-satellite=first]{transform-origin:53.74px 108.16px}.ds-model-catalog-counter[data-satellite=second]{transform-origin:55.6px 139.98px}.ds-model-catalog-counter[data-satellite=third]{transform-origin:86.37px 125.63px}@media (prefers-reduced-motion:no-preference){.ds-model-catalog-backdrop svg{animation:var(--ds-component-site-catalog-art-spin)}.ds-model-catalog-hold{transform-origin:100px 100px;animation:var(--ds-component-site-catalog-art-hold)}.ds-model-catalog-satellite{transform-origin:100px 100px;animation:var(--ds-component-site-catalog-art-swing)}.ds-model-catalog-counter{animation:var(--ds-component-site-catalog-art-counter-swing)}.ds-model-catalog-satellite circle{animation:var(--ds-component-site-catalog-art-wink)}}@keyframes catalog-art-turn{to{rotate:var(--ds-motion-full-rotation)}}@keyframes catalog-art-swing{to{rotate:var(--ds-model-art-swing)}}@keyframes catalog-art-counter-swing{to{rotate:var(--ds-model-art-counter-swing)}}@keyframes catalog-art-wink{50%{fill:var(--ds-model-catalog-dot-muted)}}.cards3{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.card{background:var(--ds-surface);border-radius:6px;flex-direction:column;min-width:0;padding:24px;display:flex}.card-cat{font-size:var(--ds-type-xs-size);font-weight:var(--ds-weight-regular);text-transform:uppercase;letter-spacing:.105em;line-height:var(--ds-type-xs-line-height);color:var(--ds-foreground-tertiary);margin-bottom:32px}.card h3{font-size:var(--ds-type-title-size);font-weight:var(--ds-weight-medium);letter-spacing:-.0125em;line-height:var(--ds-type-lg-line-height);color:var(--ds-foreground);margin-bottom:8px}.card p{font-size:var(--ds-type-base-size);font-weight:var(--ds-weight-light);line-height:var(--ds-type-md-line-height);color:var(--ds-foreground-body)}.card-art{justify-content:center;margin:auto 0;padding:32px 0;display:flex}.ds-site-pillar-art{width:var(--ds-full);max-width:var(--ds-component-site-pillar-art-width);--ds-site-pillar-line:var(--ds-foreground-secondary);--ds-site-pillar-node:var(--ds-surface);--ds-site-pillar-dot:var(--ds-action);height:auto;display:block}[data-theme=dark] .ds-site-pillar-art{--ds-site-pillar-line:var(--ds-foreground-muted)}.card-chips{flex-wrap:wrap;gap:6px;display:flex}.card-chips span,.m-cat{font-family:var(--ds-font-mono);font-size:var(--ds-type-micro-size);letter-spacing:.02em;line-height:var(--ds-type-micro-line-height);color:var(--ds-foreground-secondary);border:1px solid var(--ds-line);white-space:nowrap;border-radius:4px;padding:4px 9px}@media (hover:hover) and (pointer:fine){.card{isolation:isolate;position:relative}.card:before,.card:after{content:"";border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .28s ease-out;position:absolute;inset:0}.card:before{z-index:-1;background:url(../media/card-grain.1jt3vjb4ud2xp.svg), var(--ds-card-interactive-background);box-shadow:var(--ds-card-interactive-elevation)}.card:after{background:var(--ds-component-site-card-interactive-border);-webkit-mask:var(--ds-component-site-mask-content) content-box, var(--ds-component-site-mask-content);-webkit-mask:var(--ds-component-site-mask-content) content-box, var(--ds-component-site-mask-content);mask:var(--ds-component-site-mask-content) content-box, var(--ds-component-site-mask-content);-webkit-mask-composite:xor;padding:.5px;-webkit-mask-composite:xor;mask-composite:exclude}.card:hover:before,.card:hover:after{opacity:1}.card:hover{--ds-foreground:var(--ds-card-interactive-foreground);--ds-foreground-secondary:var(--ds-card-interactive-foreground-secondary);--ds-foreground-tertiary:var(--ds-card-interactive-foreground-tertiary);--ds-foreground-body:var(--ds-card-interactive-foreground);--ds-line:var(--ds-card-interactive-line)}.card h3,.card p,.card-cat{transition:color .28s ease-out}.card-chips span{transition:color .28s ease-out,border-color .28s ease-out}.card:hover .ds-site-pillar-art{--ds-site-pillar-line:var(--ds-card-interactive-foreground-secondary);--ds-site-pillar-node:var(--ds-primitive-brand-base);--ds-site-pillar-dot:var(--ds-card-interactive-foreground)}.ds-site-pillar-art :is(path,circle){transition:stroke var(--ds-component-site-pillar-ink-transition), fill var(--ds-component-site-pillar-ink-transition)}}@media (prefers-reduced-motion:no-preference){.ds-site-pillar-art [data-motion=access-sweep]{transform-origin:var(--ds-component-site-pillar-access-origin);animation:site-pillar-sweep var(--ds-component-site-pillar-access-sweep-duration) linear infinite}.ds-site-pillar-art [data-motion=access-dash]{transform-origin:var(--ds-component-site-pillar-access-origin);animation:site-pillar-sweep var(--ds-component-site-pillar-access-dash-duration) linear infinite reverse}.ds-site-pillar-art [data-motion=access-core]{animation:site-pillar-core var(--ds-component-site-pillar-access-core-duration) ease-in-out infinite}.ds-site-pillar-art [data-motion=orbit]{animation:site-pillar-orbit var(--ds-component-site-pillar-orbit-duration) linear infinite}.ds-site-pillar-art [data-motion=credits-drop]{animation:site-pillar-drop var(--ds-component-site-pillar-credits-drop-duration) ease-in-out infinite}.ds-site-pillar-art :is([data-motion=ring],[data-motion=ring-orbit]){transform-box:fill-box;transform-origin:50%}.ds-site-pillar-art [data-motion=ring]{animation:site-pillar-ring var(--ds-component-site-pillar-usage-ring-duration) ease-in-out infinite}.ds-site-pillar-art [data-motion=ring-orbit]{animation:site-pillar-ring var(--ds-component-site-pillar-usage-ring-duration) ease-in-out infinite, site-pillar-orbit var(--ds-component-site-pillar-orbit-duration) linear infinite}.ds-site-pillar-art [data-ring=second]{animation-delay:var(--ds-component-site-pillar-usage-ring-delay-second)}.ds-site-pillar-art [data-ring=third]{animation-delay:var(--ds-component-site-pillar-usage-ring-delay-third)}.ds-site-pillar-art [data-ring=fourth]{animation-delay:var(--ds-component-site-pillar-usage-ring-delay-fourth)}.ds-site-pillar-art [data-motion=usage-pulse]{transform-box:fill-box;transform-origin:50%;animation:site-pillar-pulse var(--ds-component-site-pillar-usage-ring-duration) ease-in-out var(--ds-component-site-pillar-usage-pulse-delay) infinite}}@keyframes site-pillar-sweep{to{transform:rotate(var(--ds-motion-full-rotation))}}@keyframes site-pillar-core{50%{opacity:var(--ds-component-site-pillar-core-opacity)}}@keyframes site-pillar-orbit{to{stroke-dashoffset:var(--ds-component-site-pillar-orbit-offset)}}@keyframes site-pillar-drop{0%{transform:translateY(var(--ds-component-site-pillar-drop-origin));opacity:1}14%{transform:translateY(var(--ds-component-site-pillar-drop-origin))}26%{transform:translateY(var(--ds-component-site-pillar-drop-step-one))}32%{transform:translateY(var(--ds-component-site-pillar-drop-step-one))}44%{transform:translateY(var(--ds-component-site-pillar-drop-step-two))}50%{transform:translateY(var(--ds-component-site-pillar-drop-step-two))}62%{transform:translateY(var(--ds-component-site-pillar-drop-step-three))}68%{transform:translateY(var(--ds-component-site-pillar-drop-step-three))}82%{transform:translateY(var(--ds-component-site-pillar-drop-step-four));opacity:1}87%{transform:translateY(var(--ds-component-site-pillar-drop-step-four));opacity:0}88%{transform:translateY(var(--ds-component-site-pillar-drop-origin));opacity:0}93%,to{transform:translateY(var(--ds-component-site-pillar-drop-origin));opacity:1}}@keyframes site-pillar-ring{50%{transform:scale(var(--ds-component-site-pillar-ring-scale))}}@keyframes site-pillar-pulse{50%{transform:scale(var(--ds-component-site-pillar-pulse-scale));opacity:var(--ds-component-site-pillar-pulse-opacity)}}.cat-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.cat-panel{background:var(--ds-surface);border-radius:6px;overflow:hidden}.table-scroll{overflow-x:auto}.cat-table{border-collapse:collapse;width:100%;min-width:var(--ds-component-site-catalog-table-min-width)}.cat-table th{font-family:var(--ds-font-mono);font-size:var(--ds-type-xs-size);font-weight:var(--ds-weight-regular);text-transform:uppercase;letter-spacing:.08em;color:var(--ds-foreground-tertiary);text-align:left;white-space:nowrap;padding:14px 16px}.cat-table td{font-size:var(--ds-type-base-size);vertical-align:middle;white-space:nowrap;padding:15px 16px}.cat-table thead tr{border-bottom:var(--ds-hairline) solid var(--ds-line-strong)}.cat-table tbody tr{border-bottom:var(--ds-hairline) solid var(--ds-line)}.cat-table .num{text-align:right;font-family:var(--ds-font-mono);font-variant-numeric:tabular-nums}.cat-table td.num{font-size:var(--ds-type-md-size);color:var(--ds-foreground-secondary)}.cat-table td.na{color:var(--ds-foreground-faint)}.cat-table .st{text-align:right}.m-name{font-family:var(--ds-font-mono);font-size:var(--ds-type-base-size);font-weight:var(--ds-weight-medium);color:var(--ds-foreground);line-height:18px;display:block}a.m-name{text-decoration:none}.cat-table tbody tr:has(a.m-name){cursor:pointer}.cat-table tbody tr:has(a.m-name):hover{background:var(--ds-model-row-hover)}a.m-name:after{content:"";width:var(--ds-component-site-catalog-arrow-size);height:var(--ds-component-site-catalog-arrow-size);vertical-align:calc(-1 * var(--ds-hairline));margin-left:var(--ds-component-control-gap);opacity:0;transform:translateX(var(--ds-component-site-catalog-arrow-offset));transition:var(--ds-component-site-catalog-arrow-transition);background:currentColor;display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") 50%/contain no-repeat}.cat-table tbody tr:hover a.m-name{color:var(--ds-action-ink)}.cat-table tbody tr:hover a.m-name:after{opacity:1;transform:none}.m-who{align-items:center;gap:var(--ds-space-3);display:flex}.m-stack{min-width:0}.m-provider{font-size:var(--ds-type-sm-size);line-height:var(--ds-type-xs-line-height);color:var(--ds-foreground-tertiary);font-weight:var(--ds-weight-light);margin-top:2px;display:block}.m-status{font-family:var(--ds-font-mono);font-size:var(--ds-type-sm-size);color:var(--ds-foreground-secondary);align-items:center;gap:7px;display:inline-flex}.m-status i{background:var(--ds-success);border-radius:2px;width:6px;height:6px}.cat-empty td{text-align:center;color:var(--ds-foreground-tertiary);font-weight:var(--ds-weight-light);white-space:normal;padding:32px 16px}.cat-foot{font-family:var(--ds-font-mono);font-size:var(--ds-type-sm-size);letter-spacing:.02em;color:var(--ds-foreground-tertiary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.cat-note{max-width:var(--ds-component-site-catalog-note-width);margin-top:var(--ds-space-4);font-size:var(--ds-type-md-size);font-weight:var(--ds-weight-light);line-height:var(--ds-component-site-catalog-note-line-height);color:var(--ds-foreground-tertiary);text-wrap:pretty}.cta .band-inner{text-align:center;background-color:var(--ds-background-deep);background-image:var(--ds-cta-wash), url(/cta-swirl.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;flex-direction:column;align-items:center;gap:0;padding:120px 72px;display:flex}.cta-h{z-index:1;font-size:clamp(40px,4.7vw,60px);font-weight:var(--ds-weight-regular);letter-spacing:-.022em;color:var(--ds-cta-foreground);line-height:1.07;position:relative}.cta-sub{z-index:1;font-size:var(--ds-type-lg-size);font-weight:var(--ds-weight-light);color:var(--ds-cta-subtle);margin-top:12px;line-height:1.5;position:relative}.cta-actions{z-index:1;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:32px;display:flex;position:relative}.footer{border-bottom:0}.footer-util{border-bottom:1px solid var(--ds-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:24px 72px;display:flex}.endpoint-chip{font-family:var(--ds-font-mono);font-size:var(--ds-type-sm-size);letter-spacing:.02em;color:var(--ds-foreground-tertiary)}.endpoint-chip b{color:var(--ds-foreground-secondary);font-weight:var(--ds-weight-medium)}.footer-inner{justify-content:space-between;align-items:flex-start;gap:48px;padding:72px 72px 0;display:flex}.footer-brand{z-index:1;min-width:0;padding-bottom:var(--ds-component-site-footer-brand-flow-compensation);position:relative}.footer-lockup{align-items:center;gap:10px;margin-bottom:24px;display:inline-flex}.footer-lockup .scene{width:var(--ds-component-site-footer-brand-mark-width);height:var(--ds-component-site-footer-brand-mark-height)}.footer-word-svg{display:block}.footer-brand p{font-size:var(--ds-type-base-size);font-weight:var(--ds-weight-light);line-height:var(--ds-type-md-line-height);color:color-mix(in srgb, var(--ds-foreground-body) 78%, var(--ds-background));white-space:pre-line;max-width:300px;margin-bottom:24px}.footer-copy{font-size:var(--ds-type-sm-size);font-weight:var(--ds-weight-light);letter-spacing:.02em;color:var(--ds-foreground-tertiary);margin-bottom:20px;display:block}.footer-cols{z-index:1;gap:40px;min-width:0;display:flex;position:relative}.footer-cols>*{min-width:0}.footer-col{flex-direction:column;gap:10px;width:104px;min-width:0;display:flex}[data-lang=zh] .footer-col,[data-lang=ja] .footer-col{width:max-content;min-width:104px;max-width:100%}.footer-label{font-size:var(--ds-type-sm-size);text-transform:uppercase;letter-spacing:.075em;line-height:var(--ds-type-lg-line-height);color:var(--ds-foreground-tertiary);margin-bottom:14px}.footer-col a{width:fit-content;font-size:var(--ds-type-base-size);font-weight:var(--ds-weight-light);line-height:var(--ds-type-md-line-height);color:var(--ds-foreground);transition:color .15s;position:relative}.footer-col a:hover{color:var(--ds-foreground)}.footer-col a:after{content:"";transform-origin:0;pointer-events:none;background:currentColor;height:1px;transition:transform .38s cubic-bezier(.22,1,.36,1);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.footer-col a:hover:after,.footer-col a:focus-visible:after{transform:scaleX(1)}.footer-ghost-clip{margin-top:var(--ds-space-20);height:var(--ds-component-site-footer-ghost-clip-height);pointer-events:none;position:relative;overflow:hidden}.footer-ghost{left:var(--ds-component-site-footer-ghost-center);bottom:var(--ds-component-site-footer-ghost-baseline);transform:var(--ds-component-site-footer-ghost-transform);font-size:var(--ds-component-site-footer-ghost-size);font-weight:var(--ds-weight-regular);white-space:nowrap;color:var(--ds-footer-ghost);-webkit-user-select:none;user-select:none;line-height:1;position:absolute}.ghost-wall{gap:var(--ds-component-site-footer-wall-gap);color:var(--ds-footer-ghost-secondary);font-family:var(--ds-font-mono);font-size:var(--ds-component-site-footer-wall-font-size);line-height:var(--ds-component-site-footer-wall-line-height);letter-spacing:var(--ds-component-site-footer-wall-letter-spacing);-webkit-user-select:none;user-select:none;flex-direction:column;display:none;position:absolute;inset:0;overflow:hidden}.footer-ghost-clip.is-enhanced .footer-ghost{display:none}.footer-ghost-clip.is-enhanced .ghost-wall{display:flex}.ghost-wall .row{min-height:var(--ds-component-site-footer-wall-font-size);white-space:pre;flex:none}.ghost-noise{color:var(--ds-footer-ghost-secondary)}.ghost-depth-0{opacity:.45}.ghost-depth-1{opacity:.56}.ghost-depth-2{opacity:.67}.ghost-depth-3{opacity:.78}.ghost-depth-4{opacity:.89}.ghost-depth-5{opacity:1}.ghost-mask-canvas{display:none}.ghost-measure{visibility:hidden;white-space:pre;font-family:var(--ds-font-mono);font-size:var(--ds-component-site-footer-wall-font-size);line-height:var(--ds-component-site-footer-wall-line-height);letter-spacing:var(--ds-component-site-footer-wall-letter-spacing);position:absolute}@media (max-width:548px){.ghost-wall{gap:var(--ds-component-site-footer-wall-gap-compact);font-size:var(--ds-component-site-footer-wall-font-size-compact)}.ghost-wall .row{min-height:var(--ds-component-site-footer-wall-font-size-compact)}.ghost-measure{font-size:var(--ds-component-site-footer-wall-font-size-compact)}}.menu-btn{border:1px solid var(--ds-line);border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:34px;height:34px;display:none}.menu-btn span{background:var(--ds-foreground);width:15px;height:1.5px;transition:transform .2s,opacity .2s;display:block}.menu-btn[aria-expanded=true] span:first-child{transform:translateY(3.25px)rotate(45deg)}.menu-btn[aria-expanded=true] span:last-child{transform:translateY(-3.25px)rotate(-45deg)}.mobile-menu{border-top:1px solid var(--ds-line);background:var(--ds-background);flex-direction:column;padding:8px 24px 16px;display:none}.mobile-menu a{font-size:var(--ds-type-reading-size);border-bottom:1px solid var(--ds-line);color:var(--ds-foreground-secondary);padding:12px 0}.mobile-menu a:last-child{border-bottom:0}@media (max-width:1080px){.hero-split{grid-template-columns:1fr}.hero-copy{padding:72px 24px 8px}.hero-side{padding:40px 24px 64px}.pillars .band-inner,.catalog .band-inner{padding:64px 24px}.cta .band-inner{padding:96px 24px}.footer-util{padding:20px 24px}.footer-inner{flex-direction:column;gap:48px;padding:56px 24px 0}}@media (max-width:860px){.nav-center,.nav-login{display:none}.nav.menu-open .mobile-menu,.menu-btn{display:flex}.nav-inner{height:64px;padding:0 24px}html{scroll-padding-top:65px}.cards3{grid-template-columns:1fr}.br-wide{display:none}.card-cat{margin-bottom:20px}}@media (max-width:560px){.nav-cta{display:none}.hero-actions .btn{flex:1;min-width:0}.cta-actions{width:100%}.cta-actions .btn{flex:1;min-width:0}.footer-cols{align-self:stretch;gap:clamp(16px,5vw,32px)}.footer-col{flex:0 104px}}.rail-draw{display:none}@media (prefers-reduced-motion:no-preference){@keyframes ent-fade{0%{opacity:0}}@keyframes ent-nav{0%{opacity:0;translate:0 -5px}}@keyframes ent-rise{0%{opacity:0;translate:0 var(--ds-site-entrance-y,16px)}}@keyframes ent-rise-blur{0%{opacity:0;translate:0 var(--ds-site-entrance-y,16px);filter:blur(var(--ds-site-entrance-blur,8px))}}@keyframes draw-x{0%{transform:scaleX(0)}}@keyframes draw-y{0%{transform:scaleY(0)}}@keyframes star-pop{0%{opacity:0;scale:.4}}@keyframes rotor-shine{0%{background-image:linear-gradient(90deg, currentColor 0%, currentColor 35%, color-mix(in srgb, currentColor 50%, transparent) 50%, currentColor 65%, currentColor 100%);-webkit-text-fill-color:transparent;background-position:100% 0;background-size:250% 100%;-webkit-background-clip:text;background-clip:text}to{background-image:linear-gradient(90deg, currentColor 0%, currentColor 35%, color-mix(in srgb, currentColor 50%, transparent) 50%, currentColor 65%, currentColor 100%);-webkit-text-fill-color:transparent;background-position:0 0;background-size:250% 100%;-webkit-background-clip:text;background-clip:text}}.anim .nav{border-bottom-color:#0000}.anim .nav:after{content:"";z-index:-1;background:var(--ds-border);transform-origin:0;width:100%;height:1px;animation:draw-x .9s var(--ds-motion-ease-draw) both;position:absolute;bottom:-1px;left:0}.anim .nav-inner,.anim .hero .band-inner,.anim .pillars .band-inner{border-left-color:#0000;border-right-color:#0000}.anim .rail-draw{background:var(--ds-border);transform-origin:50% 0;width:1px;animation:draw-y var(--ds-site-rail-duration,.75s) var(--ds-motion-ease-draw) var(--ds-site-rail-delay,.6s) both;display:block;position:absolute;top:0;bottom:0}.rail-draw.rail-l{left:-1px}.rail-draw.rail-r{right:-1px}.anim .nav-inner .rail-draw.rail-l{--ds-site-rail-duration:.25s;--ds-site-rail-delay:.4s}.anim .nav-inner .rail-draw.rail-r{--ds-site-rail-duration:.25s;--ds-site-rail-delay:.8s}.anim .hero .band-inner .rail-draw.rail-r{--ds-site-rail-delay:1s}.anim .pillars .band-inner .rail-draw.rail-l{--ds-site-rail-duration:.9s;--ds-site-rail-delay:1.35s}.anim .pillars .band-inner .rail-draw.rail-r{--ds-site-rail-duration:.9s;--ds-site-rail-delay:1.75s}.anim .hero{border-bottom-color:#0000;position:relative}.anim .hero:after{content:"";background:var(--ds-border);transform-origin:0;width:100%;height:1px;animation:draw-x .9s var(--ds-motion-ease-draw) 1.35s both;position:absolute;bottom:-1px;left:0}.anim .nav-inner:before,.anim .hero .band-inner:before{animation:star-pop .35s var(--ds-motion-ease-entrance) .7s both}.anim .nav-inner:after,.anim .hero .band-inner:after{animation:star-pop .35s var(--ds-motion-ease-entrance) 1.1s both}.anim .pillars .band-inner:before{animation:star-pop .35s var(--ds-motion-ease-entrance) 1.5s both}.anim .pillars .band-inner:after{animation:star-pop .35s var(--ds-motion-ease-entrance) 2.15s both}.anim .nav-inner>.nav-brand{animation:ent-fade .45s var(--ds-motion-ease-entrance) both}.anim .nav-inner>.nav-center{animation:ent-nav .55s var(--ds-motion-ease-entrance) .9s both}.anim .nav-inner>.nav-right{animation:ent-nav .55s var(--ds-motion-ease-entrance) 1s both}.anim .h-line,.anim .rotor-line{display:inline-block}.anim .h-line{--ds-site-entrance-y:22px;--ds-site-entrance-blur:10px;animation:ent-rise-blur 1s var(--ds-motion-ease-entrance) 1.05s both}.anim .rotor-line{--ds-site-entrance-y:22px;--ds-site-entrance-blur:10px;animation:ent-rise-blur 1s var(--ds-motion-ease-entrance) 1.2s both, rotor-shine .6s ease 2.3s}.anim .hero-sub{--ds-site-entrance-y:16px;--ds-site-entrance-blur:8px;animation:ent-rise-blur .9s var(--ds-motion-ease-entrance) 1.35s both}.anim .hero-compat{animation:var(--ds-component-site-hero-compat-entrance)}.anim .hero-actions{--ds-site-entrance-y:14px;animation:var(--ds-component-site-hero-actions-entrance)}.anim .hero-promo{animation:var(--ds-component-site-hero-promo-entrance)}.anim .hero-side{--ds-site-entrance-y:18px;animation:ent-rise 1.1s var(--ds-motion-ease-entrance) 1.4s both}html.rv-on .rv{opacity:0;transition:opacity .9s var(--ds-motion-ease-entrance) var(--ds-site-reveal-delay,0s), translate .9s var(--ds-motion-ease-entrance) var(--ds-site-reveal-delay,0s);translate:0 18px}html.rv-on .rv.is-in{opacity:1;translate:none}html.rv-on .sec-wm{translate:none}.cards3 .card:nth-child(2){--ds-site-reveal-delay:90ms}.cards3 .card:nth-child(3){--ds-site-reveal-delay:.18s}}.m-status.warn i{background:var(--ds-foreground-faint)}.cat-search{flex:0 1 var(--ds-component-site-catalog-search-width);background:var(--ds-surface);min-width:0;height:32px;color:var(--ds-foreground-tertiary);transition:color var(--ds-motion-duration-moderate-out) var(--ds-motion-ease-exit), box-shadow var(--ds-motion-duration-moderate-out) var(--ds-motion-ease-exit);border-radius:4px;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.cat-search:focus-within{color:var(--ds-foreground-secondary);box-shadow:var(--ds-component-site-catalog-search-focus)}.cat-search .lu{width:var(--ds-component-site-catalog-search-icon-size);height:var(--ds-component-site-catalog-search-icon-size);flex:none}.cat-search input{min-width:0;font-family:var(--ds-font-mono);font-size:var(--ds-type-sm-size);letter-spacing:var(--ds-component-site-hero-compat-letter-spacing);color:var(--ds-foreground);background:0 0;border:0;outline:none;flex:1;padding:0}.cat-search input::placeholder{color:var(--ds-foreground-faint)}.cat-all{color:var(--ds-action-ink)}.cat-all:hover{color:var(--ds-foreground)}.page-kicker{margin-bottom:20px}.page-kicker a{align-items:center;gap:var(--ds-space-2);font-size:var(--ds-type-base-size);font-weight:var(--ds-weight-light);color:var(--ds-foreground-muted);display:inline-flex}.page-kicker svg{width:var(--ds-type-base-size);height:var(--ds-type-base-size)}.page-kicker a:hover{color:var(--ds-foreground)}.detail-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.detail-head h1{font-family:var(--ds-font-mono);font-size:var(--ds-type-display-size);line-height:var(--ds-type-display-line-height);font-weight:var(--ds-weight-medium);letter-spacing:-.02em}.detail-sub{font-size:var(--ds-type-md-size);font-weight:var(--ds-weight-light);color:var(--ds-foreground-muted);margin-top:8px}.detail-stats{margin:var(--ds-space-8) 0 0;grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.detail-stats .card{padding:var(--ds-space-5)}.detail-stats dt{font-size:var(--ds-type-xs-size);letter-spacing:.08em;text-transform:uppercase;color:var(--ds-foreground-tertiary);margin-bottom:8px;display:block}.detail-stats dd{font-family:var(--ds-font-mono);font-size:var(--ds-type-metric-size);line-height:var(--ds-type-metric-line-height);font-weight:var(--ds-weight-medium)}.detail-code{width:100%;max-width:720px}.detail-code-label{margin-bottom:12px}.docs-shell .band-inner{grid-template-columns:var(--ds-component-site-docs-shell-columns);min-height:var(--ds-component-site-docs-shell-min-height);align-items:start;gap:0;padding:0;display:grid}.docs-aside{align-self:stretch;min-width:0}.docs-aside-inner{top:var(--ds-space-20);max-height:var(--ds-component-site-docs-aside-max-height);overscroll-behavior:contain;padding:calc(var(--ds-space-6) + var(--ds-space-1)) var(--ds-space-5) var(--ds-space-12);position:sticky;overflow-y:auto}.docs-main{min-width:0;padding:0 0 var(--ds-space-24)}.docs-nav-toggle{align-items:center;gap:var(--ds-space-2);height:var(--ds-component-site-docs-control-height);margin:var(--ds-space-4) calc(var(--ds-space-6) + var(--ds-space-1)) 0;border:1px solid var(--ds-border);border-radius:var(--ds-radius-lg);background:var(--ds-surface);color:var(--ds-foreground-body);font-size:var(--ds-type-md-size);cursor:pointer;padding:0 12px;display:none}.docs-search-trigger{width:var(--ds-component-site-docs-search-width);align-items:center;gap:var(--ds-space-2);max-width:100%;height:var(--ds-component-site-docs-control-height);padding:0 var(--ds-space-2) 0 calc(var(--ds-space-2) + var(--ds-radius-xs));margin-bottom:var(--ds-space-6);border-radius:var(--ds-radius-lg);background:var(--ds-field-background-muted);color:var(--ds-foreground-muted);font-size:var(--ds-type-md-size);cursor:pointer;border:1px solid #0000;display:flex}.docs-search-trigger:hover{border-color:var(--ds-field-border-hover)}.docs-search-trigger-label{align-items:center;gap:var(--ds-space-2);min-width:0;color:var(--ds-foreground-faint);font-weight:var(--ds-weight-light);flex:1;display:flex}.docs-search-trigger-label svg{width:var(--ds-type-base-size);height:var(--ds-type-base-size)}.docs-search-trigger kbd{width:var(--ds-type-lg-size);height:var(--ds-type-lg-size);min-width:0;font-family:var(--ds-font-mono);font-size:var(--ds-type-xs-size);color:var(--ds-foreground-faint);border-radius:var(--ds-radius-sm);box-shadow:var(--ds-component-site-docs-shortcut-outline);border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.docs-search-results{margin:var(--ds-space-3) 0 0;padding:var(--ds-space-2);border-radius:var(--ds-radius-lg);background:var(--ds-background);max-height:360px;list-style:none;overflow:auto}.docs-search-results li button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;gap:2px;width:100%;padding:10px 12px;display:grid}.docs-search-results li button strong{font-size:var(--ds-type-base-size);font-weight:var(--ds-weight-medium);color:var(--ds-foreground)}.docs-search-results li button span{font-size:var(--ds-type-sm-size);font-weight:var(--ds-weight-light);color:var(--ds-foreground-muted)}.docs-search-results li button.is-active,.docs-search-results li button:hover{background:var(--ds-default-hover)}.docs-search-empty{font-size:var(--ds-type-md-size);color:var(--ds-foreground-muted);padding:16px 12px}.docs-sidebar{position:relative}.docs-nav-group+.docs-nav-group{margin-top:calc(var(--ds-space-5) + var(--ds-radius-xs))}.docs-sidebar ul{gap:var(--ds-space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.docs-nav-group-title{margin:0 0 calc(var(--ds-space-2) + var(--ds-radius-xs));padding:0 0 0 calc(var(--ds-space-8) + var(--ds-hairline));font-size:var(--ds-type-xs-size);font-weight:var(--ds-weight-medium);letter-spacing:var(--ds-component-site-docs-label-letter-spacing);text-transform:uppercase;color:var(--ds-foreground-tertiary)}.docs-sidebar a{margin:calc(-1 * var(--ds-radius-md)) 0;padding:var(--ds-radius-md) 0 var(--ds-radius-md) calc(var(--ds-space-8) + var(--ds-hairline));font-size:var(--ds-component-site-docs-nav-font-size);line-height:var(--ds-type-md-line-height);font-weight:var(--ds-weight-light);color:var(--ds-foreground-body);transition:color var(--ds-motion-duration-fast) var(--ds-motion-ease-exit);align-items:center;display:flex;position:relative}.docs-sidebar a>span{isolation:isolate;position:relative}.docs-sidebar a>span:before{content:"";z-index:var(--ds-component-site-docs-nav-hover-layer);inset:0 calc(-1 * var(--ds-radius-xs));background:var(--ds-action-ink);transform:var(--ds-component-site-docs-nav-hover-scale-idle);transform-origin:0;transition:transform var(--ds-motion-duration-fast) var(--ds-motion-ease-exit);position:absolute}.docs-sidebar a:hover>span:before{transform:var(--ds-component-site-docs-nav-hover-scale-active)}.docs-sidebar a:hover,.docs-sidebar a.is-active:hover{color:var(--ds-background)}.docs-sidebar a:focus-visible{outline:none}.docs-sidebar a:focus-visible>span{outline:2px solid var(--ds-focus-ring);outline-offset:3px}.docs-sidebar a.is-active{color:var(--ds-action-ink);font-weight:var(--ds-weight-medium)}.docs-nav-marker{top:0;left:calc(var(--ds-space-4) - var(--ds-radius-xs));width:var(--ds-space-2);height:var(--ds-space-2);border-radius:var(--ds-radius-pill);background:var(--ds-action-ink);opacity:0;pointer-events:none;transform:translateY(var(--ds-site-docs-nav-marker-y));transition:transform var(--ds-motion-duration-slow) var(--ds-motion-ease-standard), opacity var(--ds-motion-duration-moderate) var(--ds-motion-ease-exit);position:absolute}.docs-nav-marker[data-on]{opacity:1}.docs-nav-marker[data-quiet]{transition:none}.docs-article{min-width:0;padding:0 calc(var(--ds-space-12) - var(--ds-space-1))}.docs-breadcrumbs{padding:calc(var(--ds-space-8) + var(--ds-radius-xs) + var(--ds-hairline)) 0 0}.docs-breadcrumbs ol{font-size:var(--ds-type-md-size);color:var(--ds-foreground-muted);flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.docs-breadcrumbs li:not(:last-child):after{content:"/";color:var(--ds-foreground-faint);margin-left:6px}.docs-breadcrumbs a:hover{color:var(--ds-foreground)}.docs-fallback{background:var(--ds-surface);color:var(--ds-foreground-body);font-size:var(--ds-type-md-size);border-radius:6px;margin:0 0 16px;padding:10px 12px}.docs-layout{grid-template-columns:minmax(0, 1fr) var(--ds-component-site-docs-toc-width);column-gap:var(--ds-space-12);grid-template-areas:"header toc""edit toc""prose toc""pager toc";align-items:start;display:grid}.docs-layout>*{min-width:0}.docs-header{margin-top:var(--ds-space-5);grid-area:header}.docs-header h1{font-family:var(--ds-font-site-headline);font-size:var(--ds-component-site-docs-title-size);font-weight:var(--ds-weight-medium);letter-spacing:var(--ds-component-site-docs-title-letter-spacing);line-height:var(--ds-component-site-docs-title-line-height)}.docs-desc{max-width:var(--ds-component-site-docs-content-max-width);margin-top:calc(var(--ds-space-2) + var(--ds-radius-xs));font-size:var(--ds-type-reading-size);line-height:var(--ds-type-reading-line-height);font-weight:var(--ds-weight-light);color:var(--ds-foreground-body)}.docs-meta{margin-top:calc(var(--ds-space-4) + var(--ds-radius-xs));padding:calc(var(--ds-space-2) + var(--ds-hairline)) 0;border-top:1px solid var(--ds-separator-secondary);border-bottom:1px solid var(--ds-separator-secondary);font-size:var(--ds-type-sm-size);color:var(--ds-foreground-tertiary)}.docs-edit{font-size:var(--ds-type-md-size);color:var(--ds-action-ink);grid-area:edit;width:fit-content;margin:16px 0 8px}.docs-edit:hover{color:var(--ds-foreground)}.docs-prose{width:100%;min-width:0;max-width:none;font-size:var(--ds-type-reading-size);line-height:var(--ds-type-title-line-height);font-weight:var(--ds-weight-light);grid-area:prose;padding:0}.docs-prose>*{max-width:68ch}.docs-prose>:is(.docs-term,.table-scroll,.docs-api-base){max-width:100%}.docs-toc{top:calc(var(--ds-space-24) + var(--ds-space-3));padding-top:calc(var(--ds-space-6) + var(--ds-radius-xs));max-height:var(--ds-component-site-docs-toc-max-height);grid-area:toc;position:sticky;overflow-y:auto}.docs-toc-title{font-size:var(--ds-type-xs-size);font-weight:var(--ds-weight-medium);letter-spacing:var(--ds-component-site-docs-label-letter-spacing);text-transform:uppercase;color:var(--ds-foreground-tertiary);margin:0 0 var(--ds-space-2)}.docs-toc ul{margin:0 0 0 var(--ds-radius-xs);padding:0;list-style:none;position:relative}.docs-toc ul:before{content:"";width:var(--ds-component-site-docs-toc-rule-width);background:var(--ds-separator-secondary);position:absolute;inset:0 auto 0 0}.docs-toc a{padding:calc(var(--ds-space-1) + var(--ds-hairline)) 0 calc(var(--ds-space-1) + var(--ds-hairline)) var(--ds-space-3);font-size:var(--ds-type-md-size);line-height:var(--ds-component-site-docs-toc-line-height);font-weight:var(--ds-weight-light);color:var(--ds-foreground-muted);transition:color var(--ds-motion-duration-moderate) var(--ds-motion-ease-exit);display:block;position:relative}.docs-toc a:before{content:"";left:0;top:calc(var(--ds-space-1) + var(--ds-hairline));bottom:calc(var(--ds-space-1) + var(--ds-hairline));width:var(--ds-component-site-docs-toc-rule-width);transition:background var(--ds-motion-duration-moderate) var(--ds-motion-ease-exit);background:0 0;position:absolute}.docs-toc a:hover,.docs-toc a.is-active{color:var(--ds-foreground)}.docs-toc a.is-active:before{background:var(--ds-action-ink)}.docs-toc .is-h3{padding-left:10px}.docs-pager{margin-top:calc(var(--ds-space-12) + var(--ds-space-2));padding-top:calc(var(--ds-space-6) + var(--ds-radius-xs));border-top:1px solid var(--ds-border);gap:calc(var(--ds-space-4) - var(--ds-radius-xs));flex-wrap:wrap;grid-area:pager;display:flex}.docs-pager-link{min-width:var(--ds-component-site-docs-pager-min-width);gap:calc(var(--ds-space-1) + var(--ds-hairline));padding:calc(var(--ds-space-3) + var(--ds-hairline)) var(--ds-space-4);border-radius:var(--ds-radius-xl);background:var(--ds-surface);flex-direction:column;flex:1 1 0;display:flex}.docs-pager>span:empty{display:none}.docs-pager-link:hover{background:var(--ds-default-hover)}.docs-pager-next{text-align:right;align-items:flex-end}.docs-pager-label{align-items:center;gap:var(--ds-component-control-gap);font-size:var(--ds-type-sm-size);color:var(--ds-foreground-muted);display:flex}.docs-pager-next .docs-pager-label{justify-content:flex-end}.docs-pager-label svg{width:var(--ds-type-base-size);height:var(--ds-type-base-size)}.docs-pager-title{font-size:var(--ds-type-base-size);color:var(--ds-foreground);font-weight:var(--ds-weight-medium)}.docs-api-base{background:var(--ds-surface);font-family:var(--ds-font-mono);font-size:var(--ds-type-md-size);font-weight:var(--ds-weight-medium);border-radius:6px;margin-top:8px;padding:8px 12px;display:inline-block}.prose h1{font-family:var(--ds-font-site-headline);font-size:clamp(28px,3vw,36px);font-weight:var(--ds-weight-regular)}.prose h2{font-size:var(--ds-type-metric-size);font-weight:var(--ds-weight-medium);letter-spacing:-.01em;margin:32px 0 0}.prose h3{font-size:var(--ds-type-lg-size);font-weight:var(--ds-weight-medium);margin:24px 0 0}.prose h4{font-size:var(--ds-type-base-size);font-weight:var(--ds-weight-medium);margin:20px 0 0}.prose p{color:var(--ds-foreground-body);font-weight:var(--ds-weight-light);margin:12px 0 0}.prose ul,.prose ol{color:var(--ds-foreground-body);font-weight:var(--ds-weight-light);margin:12px 0 0;padding-left:1.25em}.prose li{margin:6px 0 0}.prose a{color:var(--ds-action-ink);text-underline-offset:2px;text-decoration:underline}.prose a:hover{color:var(--ds-foreground)}.prose blockquote{border-left:2px solid var(--ds-border);color:var(--ds-foreground-muted);background:var(--ds-surface);border-radius:0 6px 6px 0;margin:16px 0 0;padding:10px 14px}.prose hr{border:0;border-top:1px solid var(--ds-line);margin:28px 0}.prose table{border-collapse:collapse;width:100%;font-size:var(--ds-type-base-size);margin:16px 0 0}.prose .table-scroll{margin:16px 0 0;overflow-x:auto}.prose .table-scroll>table{margin:0}.prose th,.prose td{border:1px solid var(--ds-line);text-align:left;padding:8px 12px}.prose th{background:var(--ds-surface);font-size:var(--ds-type-xs-size);text-transform:uppercase;letter-spacing:.08em;color:var(--ds-foreground-tertiary);font-family:var(--ds-font-mono);font-weight:var(--ds-weight-regular)}.prose img{border-radius:6px;max-width:100%;margin:16px 0 0}.prose pre:not(.term-body){background:var(--ds-surface);font-family:var(--ds-font-mono);font-size:var(--ds-type-md-size);border-radius:8px;margin:16px 0 0;padding:14px 16px;line-height:1.7;overflow-x:auto}.prose .term-body{border-radius:initial;background:0 0;margin:0}.prose code{font-family:var(--ds-font-mono);background:var(--ds-surface);border-radius:4px;padding:1px 5px;font-size:.92em}.prose pre code{font-size:inherit;background:0 0;padding:0}.prose :not(pre)>code{white-space:nowrap}.prose .heading-anchor{color:inherit;text-decoration:none}.prose .heading-anchor:hover{color:var(--ds-action-ink)}.callout{margin:calc(var(--ds-space-5) + var(--ds-radius-xs)) 0;padding:calc(var(--ds-space-4) - var(--ds-radius-xs)) var(--ds-space-4) calc(var(--ds-space-4) - var(--ds-radius-xs)) calc(var(--ds-space-8) + var(--ds-hairline));border-radius:var(--ds-radius-xl);background:var(--ds-surface);color:var(--ds-foreground-body);font-size:var(--ds-type-reading-size);line-height:var(--ds-type-title-line-height);font-weight:var(--ds-weight-light);border:0;position:relative}.callout:before{content:"";top:calc(var(--ds-space-4) - var(--ds-radius-xs));bottom:calc(var(--ds-space-4) - var(--ds-radius-xs));left:var(--ds-space-4);width:var(--ds-component-site-docs-callout-rule-width);border-radius:var(--ds-radius-xs);background:var(--ds-foreground-faint);position:absolute}.callout>:first-child{margin-top:0}.callout>*{font-size:var(--ds-type-base-size);line-height:var(--ds-type-reading-line-height)}.callout>:last-child{margin-bottom:0}.callout-note{color:var(--ds-foreground-body)}.callout-note:before{background:var(--ds-action-ink)}.callout-tip:before{background:var(--ds-success)}.callout-warning:before{background:var(--ds-warning)}@media (prefers-reduced-motion:reduce){.docs-sidebar a,.docs-sidebar a>span:before,.docs-nav-marker,.docs-toc a,.docs-toc a:before{transition:none}}.prose figure[data-rehype-pretty-code-figure]{margin:16px 0 0}.prose figure[data-rehype-pretty-code-figure] .term-glass{box-sizing:border-box;width:100%}.prose figure[data-rehype-pretty-code-figure] pre{margin:0}code[data-theme*=\ ],code[data-theme*=\ ] span{color:var(--shiki-light);background-color:var(--shiki-light-bg)}:root[data-theme=dark] code[data-theme*=\ ],:root[data-theme=dark] code[data-theme*=\ ] span{color:var(--shiki-dark);background-color:var(--shiki-dark-bg)}:root[data-theme=light] code[data-theme*=\ ],:root[data-theme=light] code[data-theme*=\ ] span{color:var(--shiki-light);background-color:var(--shiki-light-bg)}@media (max-width:1080px){.detail-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:1180px){.docs-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"header""edit""prose""pager"}.docs-toc{display:none}.docs-article{padding:0 var(--ds-space-8)}}@media (max-width:860px){.docs-shell .band-inner{grid-template-columns:1fr;gap:0}.docs-aside{align-self:auto;position:static}.docs-aside-inner{max-height:none;padding:0;display:grid;position:static;overflow:visible}.docs-aside-inner:after{content:"";height:var(--ds-hairline);background:var(--ds-border);order:3;display:none}.docs-aside-inner:has(.docs-sidebar.is-open):after{display:block}.docs-nav-toggle{order:4;justify-self:start;margin-bottom:16px;display:inline-flex}.docs-nav-toggle svg{width:var(--ds-type-base-size);height:var(--ds-type-base-size)}.docs-aside-inner>.docs-search-trigger{margin:var(--ds-space-5) var(--ds-space-6) 0;order:1}.docs-aside-inner:not(:has(.docs-sidebar.is-open))>.docs-search-trigger{display:none}.docs-sidebar{order:2;display:none}.docs-sidebar.is-open{margin:var(--ds-space-6) var(--ds-space-6) var(--ds-space-4);display:block}}@media (max-width:560px){.docs-article{padding:0 calc(var(--ds-space-4) + var(--ds-radius-xs))}.docs-nav-toggle{margin-left:calc(var(--ds-space-4) + var(--ds-radius-xs));margin-right:calc(var(--ds-space-4) + var(--ds-radius-xs))}.docs-breadcrumbs ol{gap:var(--ds-space-1)}.docs-breadcrumbs li:not(:last-child):after{margin-left:var(--ds-space-1)}.docs-header h1{font-size:var(--ds-component-site-docs-mobile-title-size);line-height:var(--ds-component-site-docs-mobile-title-line-height)}.docs-desc{font-size:var(--ds-type-reading-size)}.docs-prose{font-size:var(--ds-component-site-docs-mobile-body-size)}.docs-pager-link{min-width:100%}.detail-stats{grid-template-columns:1fr}.cat-search input{width:140px;min-width:0}}@media (max-width:620px){.cat-search{flex:100%}}

