.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}body[data-silk]{--bg:#07100f;--text:#eef4f0;--muted:#b3c9c0;--line:#c9ede221;--panel:#12251f;--accent:#e4f1eb;--inverse:#10261e;--glass-tint:#0e201b7d;--glass-fill:linear-gradient(135deg,#c9e7dc10,transparent 46%,#b7dbcc05),var(--glass-tint);--glass-edge:#e5fff02a;--glass-shadow:0 18px 48px #0000001a,inset 0 1px 0 #ffffff20,inset 1px 0 0 #d4f7ed0c,inset 0 -1px 0 #00000016;isolation:isolate;background:var(--bg);color:var(--text)}:root[data-theme=light] body[data-silk]{--bg:#edf3ee;--text:#132c24;--muted:#405e51;--line:#234e3d26;--panel:#eef6f1;--accent:#1a4033;--inverse:#f0f7f2;--glass-tint:#f7fdf88c;--glass-fill:linear-gradient(135deg,#ffffff94,transparent 50%,#e3f2e11f),var(--glass-tint);--glass-edge:#ffffffae;--glass-shadow:0 16px 48px #173e3010,inset 0 1px 0 #ffffffd9,inset 1px 0 0 #ffffff80,inset 0 -1px 0 #1d46350b}body[data-silk] :is(main,footer){z-index:1;position:relative}body[data-silk] .silk-backdrop{z-index:0;pointer-events:none;contain:strict;background:radial-gradient(ellipse at 80% 25%,#335d4d88,transparent 65%),var(--bg);position:fixed;inset:0;view-transition-name:none!important}body[data-silk] .silk-backdrop canvas{width:100%;height:100%;display:block}body[data-silk] .silk-backdrop canvas[hidden]{display:none}body[data-silk] .silk-grain{opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 128 128' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.7' d='M0 0h128v128H0z'/%3E%3C/svg%3E");background-size:160px 160px;position:absolute;inset:0}body[data-silk] .ambient{display:none}body[data-silk] .hero{background:0 0}body[data-silk] :is(.site-header,.mobile-nav,.product-showcase,.feature-card,.feature-notes article,.package-card,.download-panel,.tutorial-card,.release-entry,.contact-card,.contact-note,.publication-empty,.article-layout>article,.article-toc nav,.preview-notice,.notice){background:var(--glass-fill);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow);backdrop-filter:blur(18px)saturate(1.25)}body[data-silk] .site-header{max-width:var(--content-width);border-radius:100px;padding-inline:18px;transition:max-width .5s cubic-bezier(.22,1,.36,1),top .5s cubic-bezier(.22,1,.36,1),padding .35s,background .3s,border-color .3s,box-shadow .3s;top:18px}body[data-silk] .site-header[data-floating=true]{background:var(--glass-fill);max-width:1040px}:root[lang=en] body[data-silk] .site-header[data-floating=true]{max-width:1160px}body[data-silk] :is(.desktop-nav a,.desktop-nav button,.brand){white-space:nowrap;flex-shrink:0}body[data-silk] .mobile-nav{border-radius:24px}body[data-silk] :is(.button,.small-primary,.contact-action,.icon-button,.language-switch,.release-badge,.contact-region),body[data-silk] .footer-appearance button{border:1px solid var(--glass-edge);background:linear-gradient(130deg,#e6fff516,transparent 70%),var(--glass-tint);backdrop-filter:blur(12px)saturate(1.25);border-radius:100px;box-shadow:inset 0 1px #ffffff29,0 4px 12px #0000000a}body[data-silk] :is(.primary,.small-primary,.contact-action-primary){background:linear-gradient(130deg,#ffffff1a,transparent 75%),var(--accent);color:var(--inverse)}body[data-silk] :is(.button,.small-primary,.contact-action):hover{border-color:color-mix(in srgb,var(--text) 30%,transparent);box-shadow:inset 0 1px #ffffff60,0 5px 24px #07100f20}body[data-silk] .icon-button{width:36px;height:36px}body[data-silk] .language-switch{padding:7px 11px}body[data-silk] .product-showcase{border-radius:24px;padding:8px;overflow:visible}body[data-silk] .product-showcase .product-image{border-radius:16px;overflow:hidden}body[data-silk] .feature-card{border-radius:24px;padding:14px 14px 24px}body[data-silk] .feature-card>.product-image{border-color:var(--line);border-radius:14px}body[data-silk] .feature-copy{padding:22px 9px 0}body[data-silk] .feature-notes{border:0;gap:22px;padding:0}body[data-silk] .feature-notes article{border-radius:24px;padding:28px}body[data-silk] .hero h1{color:var(--text);text-shadow:0 2px 40px #07100f22}body[data-silk] .hero-content>p{color:var(--text);opacity:.83;text-shadow:0 2px 16px #07100f66}:root[data-theme=light] body[data-silk] .hero-content>p{text-shadow:none}body[data-silk] :is(.section-heading,.page-heading,.contact-heading){text-shadow:0 2px 30px color-mix(in srgb,var(--bg) 40%,transparent)}body[data-silk] :is(.package-card,.tutorial-card,.contact-card,.publication-empty,.contact-note){border-radius:26px}body[data-silk] .release-entry{border-radius:24px;margin-bottom:20px;padding:30px}body[data-silk] .release-strip{border-top:0}body[data-silk] .article-layout{border:0;gap:28px}body[data-silk] .article-layout>article{border-radius:24px;padding:30px}body[data-silk] .article-page>article.prose,body[data-silk] .article-page>.release-files{background:var(--glass-fill);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow);backdrop-filter:blur(18px)saturate(1.25);border-radius:24px;padding:30px}body[data-silk] .article-toc nav{border-radius:22px;padding:20px 16px}body[data-silk] .breadcrumbs{background:color-mix(in srgb,var(--panel) 88%,transparent);border:1px solid var(--glass-edge);width:fit-content;max-width:100%;color:var(--text);border-radius:100px;padding:7px 12px}body[data-silk] .prose{color:var(--text)}body[data-silk] .footer-appearance button{padding:9px 17px}body[data-silk] footer{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 30%,transparent),color-mix(in srgb,var(--bg) 82%,transparent));border-top:1px solid var(--line);backdrop-filter:blur(8px)}body[data-silk] .wordmark-canvas{color:#d7ebe1}:root[data-theme=light] body[data-silk] .wordmark-canvas{color:#214d3f}body[data-silk] .footer-appearance button{color:var(--text);background:linear-gradient(135deg,#fff2,transparent 65%),color-mix(in srgb,var(--panel) 82%,transparent);font-size:12px;font-weight:500}body[data-silk] .opening-screen{background:var(--bg)}@media (width<=1100px){body[data-silk] .desktop-nav{display:none}body[data-silk] .mobile-toggle{display:grid}body[data-silk] .site-header{grid-template-columns:minmax(0,1fr) auto}body[data-silk] .mobile-nav{flex-direction:column;gap:4px;padding:12px;display:flex;position:absolute;top:65px;left:0;right:0}body[data-silk] .mobile-nav :is(a,button){text-align:left;white-space:nowrap;border-radius:12px;align-items:center;gap:8px;padding:13px;font-size:14px;display:flex}}@media (width<=1240px){:root[lang=en] body[data-silk] .desktop-nav{display:none}:root[lang=en] body[data-silk] .mobile-toggle{display:grid}:root[lang=en] body[data-silk] .site-header{grid-template-columns:minmax(0,1fr) auto}:root[lang=en] body[data-silk] .mobile-nav{flex-direction:column;gap:4px;padding:12px;display:flex;position:absolute;top:65px;left:0;right:0}:root[lang=en] body[data-silk] .mobile-nav :is(a,button){text-align:left;white-space:nowrap;border-radius:12px;align-items:center;gap:8px;padding:13px;font-size:14px;display:flex}}@media (width>=1101px){:root[lang=zh-CN] body[data-silk] .mobile-nav,:root[lang=zh-CN] body[data-silk] .mobile-toggle{display:none}}@media (width>=1241px){:root[lang=en] body[data-silk] .mobile-nav,:root[lang=en] body[data-silk] .mobile-toggle{display:none}}@media (width<=700px){body[data-silk] .site-header{padding-inline:12px;top:12px}body[data-silk] :is(.feature-card,.package-card,.tutorial-card,.contact-card,.release-entry,.article-layout>article,.article-toc nav){backdrop-filter:blur(11px)}body[data-silk] .feature-notes{gap:16px}body[data-silk] .feature-notes article{padding:24px}body[data-silk] .feature-card{border-radius:22px;padding:10px 10px 22px}body[data-silk] .product-showcase{border-radius:17px;padding:5px}body[data-silk] .product-showcase .product-image{border-radius:12px}body[data-silk] .release-entry{padding:24px 22px}body[data-silk] .article-layout>article{padding:22px 18px}body[data-silk] .article-page>article.prose,body[data-silk] .article-page>.release-files{backdrop-filter:blur(11px);padding:22px 18px}body[data-silk] .header-actions{gap:6px}}@media (width<=540px){body[data-silk] .header-actions .small-primary{display:none}}@supports not (backdrop-filter:blur(1px)){body[data-silk]{--glass-tint:var(--panel)!important}}@media (prefers-reduced-transparency:reduce){body[data-silk] .silk-grain{display:none}body[data-silk] .article-page>article.prose,body[data-silk] .article-page>.release-files,body[data-silk] :is(.site-header,.mobile-nav,.product-showcase,.feature-card,.feature-notes article,.package-card,.download-panel,.tutorial-card,.release-entry,.contact-card,.contact-note,.publication-empty,.article-layout>article,.article-toc nav){backdrop-filter:blur(8px)}}@media (forced-colors:active){body[data-silk] .silk-backdrop{display:none}body[data-silk] .adaptive-ink[data-adaptive-ink]{color:canvastext!important;text-shadow:none!important}body[data-silk] :is(.button,.icon-button,.site-header,.contact-card,.package-card,.tutorial-card){border-color:canvastext}}@media (prefers-reduced-motion:reduce){body[data-silk] .silk-backdrop,body[data-silk] .site-header{transition:none}}body[data-silk] .adaptive-ink[data-adaptive-ink]{color:var(--adaptive-ink,var(--text));opacity:1;text-shadow:none;transition:color .45s,text-shadow .45s}body[data-silk] .adaptive-ink[data-ink-theme-lock=true]{transition:none}body[data-silk] .adaptive-ink[data-adaptive-ink=light]{--ink-outline:#030d09d9}body[data-silk] .adaptive-ink[data-adaptive-ink=dark]{--ink-outline:#f8fffbe6}body[data-silk] .adaptive-ink:is([data-ink-halo=true],[data-adaptive-ink=fallback]){text-shadow:0 1px 2px var(--ink-outline,var(--bg)),0 0 10px var(--ink-outline,var(--bg))}@media (prefers-reduced-motion:reduce){body[data-silk] .adaptive-ink{transition:none}}@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}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.5a28350a376e8a09cef0bb834629643bda4d3d6d94f49eb193045c62679d8a28.woff2)format("woff2-variations");unicode-range:U+6410}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.dac9e4c70134cbca599f8e839d0a8fb2c95348f14d5e363b2dff8cc55ed9b86c.woff2)format("woff2-variations");unicode-range:U+2197}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.644c818bbb96ee02349c753753d5cc701115831fc3494ee6c3ec4f2d15a25da2.woff2)format("woff2-variations");unicode-range:U+c0,U+d6,U+d8,U+f8}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.9025cdae6dc0037045389cdd49f98c4082c0ce8c5fd73ac1326b79fa5fbba5f2.woff2)format("woff2-variations");unicode-range:U+63b7,U+9abc}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.1f3fcf9a0f8186f79c5a766dd662362cc0336a37b6b70063221e146d5c69e707.woff2)format("woff2-variations");unicode-range:U+5e27,U+6273}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.b4b607b6fbebff21079a51b0d3b54ada2da8f0a91717b3e937e010cd839a3f62.woff2)format("woff2-variations");unicode-range:U+60,U+7784}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.c825f3badaa920ed4c02102bdf2b8e8d240c4eef0669b2a2010b95c1e50c5c66.woff2)format("woff2-variations");unicode-range:U+7115}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.a285e20aaf96b48530c8395ad40c952d85ff1814e641eec95432ce6882189322.woff2)format("woff2-variations");unicode-range:U+5e,U+68b3}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.e10724f64f4594b3e100bd0c932b85f75eb63747c8b610921ce6fbd72dedd325.woff2)format("woff2-variations");unicode-range:U+6296,U+8854,U+903b}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.455cde8727bf0a66ddc1270d92f8218a4d1a1190f6e3786c0a5b816231c880b5.woff2)format("woff2-variations");unicode-range:U+5339,U+7b5b,U+906e,U+ff5c}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.ab01ab332e358520f98617515ae07137ab2039f74eb2920efdf34eb795cbb742.woff2)format("woff2-variations");unicode-range:U+24,U+6321,U+6670,U+6ee4,U+9aa4}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.d90f56346f73e43d77f91639223516245d21ea46967a0f98e9b4302e7ca0855f.woff2)format("woff2-variations");unicode-range:U+2192,U+4e22,U+78c1,U+7eb5,U+8d2f}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.9c7ec1cc29d74fc79790a23db7e7bcf9dbfed483285201f7f5d4d63e81f3785d.woff2)format("woff2-variations");unicode-range:U+5141,U+517c,U+5448,U+594f,U+5c1d,U+6270,U+62d6,U+6846,U+6d45,U+6f0f,U+7ed5,U+9f20}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.ff2db1f8dc7cd2e351bfa034759e1408af092f7f69f3baafcc9c898ace58ac76.woff2)format("woff2-variations");unicode-range:U+4ea1,U+4fa7,U+500d,U+5076,U+52ff,U+5fd9,U+6062,U+624e,U+63e1,U+67aa,U+695a,U+76d2,U+78e8,U+8de8,U+8f85}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.534567c42806bfb4b39c62411dd77369699ab77384538d4327c4b536c62bed2d.woff2)format("woff2-variations");unicode-range:U+23,U+3d,U+4ecd,U+5224,U+5371,U+6162,U+62bd,U+638c,U+6df7,U+6ed1,U+7a0d,U+7eb9,U+7ed8,U+7f29,U+89e6,U+8d25,U+8ddd,U+91ca,U+9501,U+9aa8}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.d54776fdbb2de9c0f5feb52f88ea692a60f6c7e88bfb2b8d05d1e04536764ee8.woff2)format("woff2-variations");unicode-range:U+26,U+3c,U+5012,U+5237,U+526f,U+53f3,U+5584,U+6267,U+62ec,U+642d,U+6551,U+65e7,U+6682,U+66f2,U+671d,U+6982,U+7840,U+7a33,U+7b26,U+7e41,U+83dc,U+8bef,U+8df3,U+9488,U+955c,U+96f7,U+9759,U+987a,U+989c}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.32bbeaf18cc332263f03e10ae689e2ea0ddb7574e37476a03ae7173500dbdf9f.woff2)format("woff2-variations");unicode-range:U+7e,U+4f19,U+4f34,U+505c,U+51cf,U+538b,U+542b,U+542f,U+5757,U+57df,U+591f,U+5c42,U+5e8f,U+5f02,U+63cf,U+64cd,U+6728,U+6742,U+67b6,U+68c0,U+6b66,U+6b7b,U+6d4f,U+7ee7,U+8b66,U+9047,U+94c1,U+9669,U+987b}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.f1a7b85f976ccdae4f89b99c80df043e65a90091a007a7e98bb3f413b58efd74.woff2)format("woff2-variations");unicode-range:U+25,U+4e1d,U+4ec5,U+4f8b,U+4fbf,U+5199,U+51b3,U+5207,U+5219,U+5347,U+547d,U+54cd,U+54ea,U+56f4,U+5883,U+589e,U+5931,U+5ba4,U+5c1a,U+5c40,U+5e72,U+5e95,U+5f80,U+5f85,U+5fd7,U+6309,U+63a7,U+65ad,U+666e,U+667a,U+677f,U+6821,U+6838,U+6b62,U+6bb5,U+6d4b,U+72b6,U+72ec,U+7387,U+753b,U+76d8,U+773c,U+79bb,U+79fb,U+7b97,U+7eed,U+8303,U+843d,U+89d2,U+8bbf,U+8c22,U+8c61,U+8d26,U+8f6f,U+8f83,U+8f91,U+8fd4,U+8fdc,U+9002,U+9519,U+95ed,U+9884,U+9988,U+ff1b}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.dc6a7a9f60d0b16a00a7ecbf90b0b2d7c9d6f90a9e21338cba1cfe8ca0aecfc8.woff2)format("woff2-variations");unicode-range:U+2b,U+40,U+4e70,U+4e92,U+4ec0,U+4f18,U+4f46,U+4f4e,U+4f9b,U+4fee,U+503c,U+5148,U+518d,U+51c6,U+529e,U+529f,U+5361,U+53c2,U+53d8,U+5404,U+5411,U+5668,U+5740,U+57fa,U+5904,U+59cb,U+5b58,U+5bc6,U+5e26,U+5e2e,U+5f3a,U+5fc5,U+600e,U+6218,U+627e,U+62e9,U+6307,U+6362,U+636e,U+64ad,U+6539,U+6548,U+6574,U+6613,U+663e,U+666f,U+672a,U+6784,U+6a21,U+6b65,U+6bcf,U+6df1,U+7167,U+73af,U+754c,U+7559,U+786e,U+79f0,U+7ec4,U+7ec6,U+7ecd,U+7edc,U+81f4,U+822a,U+82f1,U+83b7,U+89c2,U+89c8,U+8ba9,U+8bb8,U+8bc6,U+8bd5,U+8be5,U+8bed,U+8c03,U+8d2d,U+8fbe,U+8fd1,U+8fde,U+901f,U+914d,U+94fe,U+952e,U+9605,U+9645,U+9700,U+9879,U+9a8c}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.221cb369cb420d5390c6eb3b34401ffba0420905fd9bcb3e3018caa9acefb87f.woff2)format("woff2-variations");unicode-range:U+4e,U+201c,U+201d,U+3010,U+3011,U+4e48,U+4ea4,U+4eab,U+4ecb,U+4ece,U+4ed6,U+4ee3,U+4ef6,U+4f7f,U+4fdd,U+5177,U+51fb,U+5229,U+522b,U+52a9,U+5305,U+5355,U+5357,U+539f,U+53ca,U+53cd,U+53d6,U+53e3,U+5458,U+5546,U+573a,U+578b,U+57ce,U+590d,U+5b57,U+5b8c,U+5b98,U+5bb9,U+5bfc,U+5c06,U+5c11,U+5c55,U+5df2,U+5e03,U+5e38,U+5e76,U+5e94,U+5efa,U+5f97,U+6001,U+603b,U+611f,U+6216,U+6253,U+6295,U+6301,U+652f,U+653e,U+6559,U+671f,U+6761,U+67e5,U+6807,U+6837,U+6b64,U+6bd4,U+6c42,U+6ca1,U+6d41,U+6d88,U+6e05,U+6e90,U+7136,U+7531,U+76ee,U+76f4,U+7801,U+793a,U+79cd,U+7a0b,U+7a7a,U+7acb,U+7ae0,U+7ba1,U+7cbe,U+7ea7,U+7ed3,U+7ed9,U+7edf,U+7f16,U+7f6e,U+8272,U+8282,U+88ab,U+88c5,U+89c1,U+89c4,U+89e3,U+8a00,U+8ba1,U+8ba4,U+8bae,U+8bb0,U+8bbe,U+8bfb,U+8d77,U+8d85,U+8def,U+8f7d,U+8fd0,U+9009,U+90fd,U+91cc,U+91cd,U+91cf,U+9650,U+96c6,U+9891,U+ff1f}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.d2489860f8f8cf0110fc80deebee6378c30a6a1c37b19f5ee78e7412d798acaf.woff2)format("woff2-variations");unicode-range:U+3e,U+5f,U+7c,U+a9,U+4e0a,U+4e0b,U+4e0d,U+4e0e,U+4e13,U+4e1a,U+4e2a,U+4e3a,U+4e3b,U+4e86,U+4e8e,U+4ea7,U+4eba,U+4ee5,U+4eec,U+4f1a,U+4f4d,U+4f53,U+4f5c,U+4f60,U+4fe1,U+5165,U+5168,U+516c,U+5173,U+5185,U+51fa,U+5206,U+5230,U+5236,U+524d,U+529b,U+52a0,U+52a8,U+5316,U+533a,U+53d1,U+53ef,U+53f7,U+5408,U+540d,U+540e,U+544a,U+548c,U+54c1,U+56de,U+56fe,U+5728,U+5730,U+5907,U+5916,U+591a,U+5927,U+597d,U+5982,U+5b50,U+5b89,U+5b9a,U+5b9e,U+5ba2,U+5bb6,U+5bf9,U+5c0f,U+5ea6,U+5f00,U+5f0f,U+5f53,U+5f55,U+5fc3,U+6027,U+606f,U+60a8,U+610f,U+6210,U+6211,U+6237,U+6240,U+624b,U+63a5,U+63d0,U+6536,U+6570,U+6587,U+65b9,U+65e0,U+65f6,U+660e,U+662f,U+66f4,U+6700,U+672c,U+673a,U+6743,U+6765,U+679c,U+6b21,U+6b63,U+6cd5,U+6ce8,U+70ed,U+7247,U+7248,U+7269,U+73b0,U+7406,U+7528,U+76f8,U+770b,U+7ad9,U+7b49,U+7c7b,U+7cfb,U+7ebf,U+8054,U+80fd,U+81ea,U+884c,U+8868,U+8981,U+89c6,U+8bf4,U+8bf7,U+8d44,U+8fc7,U+8fd8,U+8fd9,U+8fdb,U+901a,U+90e8,U+957f,U+95ee,U+95f4,U+9762,U+9875,U+9898,U+9996,U+9ad8,U+ff01,U+ff08,U+ff09}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.ea19b61db5e3b2bf20baf0defcdfba6cd5003be896a1cdf6e70fcb50116053f5.woff2)format("woff2-variations");unicode-range:U+20,U+21,U+22,U+27,U+28,U+29,U+2a,U+2c,U+2d,U+2e,U+2f,U+30,U+31,U+32,U+33,U+34,U+35,U+36,U+37,U+38,U+39,U+3a,U+3b,U+3f,U+41,U+42,U+43,U+44,U+45,U+46,U+47,U+48,U+49,U+4a,U+4b,U+4c,U+4d,U+4f,U+50,U+51,U+52,U+53,U+54,U+55,U+56,U+57,U+58,U+59,U+5a,U+5b,U+5c,U+5d,U+61,U+62,U+63,U+64,U+65,U+66,U+67,U+68,U+69,U+6a,U+6b,U+6c,U+6d,U+6e,U+6f,U+70,U+71,U+72,U+73,U+74,U+75,U+76,U+77,U+78,U+79,U+7a,U+7b,U+7d,U+b7,U+f6,U+300,U+3001,U+3002,U+4e00,U+4e2d,U+65b0,U+65e5,U+6709,U+70b9,U+7684,U+7f51,U+ff0c,U+ff1a}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.e1e3ad516517f31f52e25d04c4cec5720bea6e8fd64afb2351f5602023ed778b.woff2)format("woff2-variations");unicode-range:U+300}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/kepler-noto.4447e4a008e6e76eee78f2d3347551657e44d71d5bf5c28f2ea072c33526d473.woff2)format("woff2-variations");unicode-range:U+20,U+21,U+22,U+23,U+24,U+25,U+26,U+27,U+28,U+29,U+2a,U+2b,U+2c,U+2d,U+2e,U+2f,U+30,U+31,U+32,U+33,U+34,U+35,U+36,U+37,U+38,U+39,U+3a,U+3b,U+3c,U+3d,U+3e,U+3f,U+40,U+41,U+42,U+43,U+44,U+45,U+46,U+47,U+48,U+49,U+4a,U+4b,U+4c,U+4d,U+4e,U+4f,U+50,U+51,U+52,U+53,U+54,U+55,U+56,U+57,U+58,U+59,U+5a,U+5b,U+5c,U+5d,U+5e,U+5f,U+60,U+61,U+62,U+63,U+64,U+65,U+66,U+67,U+68,U+69,U+6a,U+6b,U+6c,U+6d,U+6e,U+6f,U+70,U+71,U+72,U+73,U+74,U+75,U+76,U+77,U+78,U+79,U+7a,U+7b,U+7c,U+7d,U+7e,U+a9,U+b7,U+c0,U+d6,U+d8,U+f6,U+f8,U+2019,U+201c,U+201d}:root{color-scheme:dark;--bg:#0a0a0a;--text:#f7f7f7;--muted:#999;--line:#262626;--panel:#141414;--accent:#f7f7f7;--inverse:#111;--content-width:1200px;--page-gutter:clamp(20px, 4vw, 48px);font-synthesis:none;scroll-behavior:smooth;scrollbar-gutter:stable;background:var(--bg);color:var(--text);font-family:Geist Variable,Noto Sans SC Variable,Microsoft YaHei,system-ui,sans-serif;font-weight:400}:root[data-theme=light]{color-scheme:light;--bg:#fafafa;--text:#171717;--muted:#6b6b6b;--line:#dedede;--panel:#fff;--accent:#171717;--inverse:#fff}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;min-width:320px;margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0}a{color:inherit;text-decoration:none}button:disabled{cursor:default;opacity:.65}button:focus-visible,a:focus-visible{outline-offset:5px;outline:2px solid #5f9dec}::selection{background:#6b8fbd66}h1,h2,h3,p{margin:0}svg{flex-shrink:0}a,button{touch-action:manipulation}.skip-link{z-index:100;background:var(--accent);color:var(--inverse);padding:12px;position:fixed;top:-60px;left:20px}.skip-link:focus{top:10px}.site-header{z-index:60;top:0;left:var(--page-gutter);right:var(--page-gutter);border:1px solid #0000;border-radius:40px;grid-template-columns:auto minmax(0,1fr) auto;justify-content:space-between;align-items:center;column-gap:20px;height:58px;margin:auto;padding:0;transition:background .3s,border-color .3s,box-shadow .3s,backdrop-filter .3s,padding .3s;display:grid;position:fixed}.site-header[data-floating=true]{background:color-mix(in srgb, var(--bg) 84%, transparent);border-color:color-mix(in srgb, var(--line) 65%, transparent);backdrop-filter:blur(10px);padding-inline:16px;box-shadow:0 10px 40px #00000018}.brand{letter-spacing:-.8px;align-items:center;gap:7px;font-size:18px;font-weight:650;display:inline-flex}.logo-mark{aspect-ratio:680/550;background:currentColor;flex-shrink:0;width:40px;display:block;mask-image:url(/_astro/kepler-mark.D4l2PPFq.png);mask-position:50%;mask-size:100% 100%;mask-repeat:no-repeat;mask-mode:luminance}.brand-name{letter-spacing:.12em;font-size:14px;font-weight:500}.brand{justify-self:start;gap:10px}.showcase-top .logo-mark{width:27px}.showcase-top .brand-name{font-size:11px}.desktop-nav{justify-self:center;align-items:center;gap:2px;display:flex}.desktop-nav a,.desktop-nav button{color:var(--muted);align-items:center;gap:4px;padding:9px 13px;font-size:14px;transition:color .2s;display:flex;position:relative}.desktop-nav a>span:not(.nav-active){z-index:1;position:relative}.desktop-nav a[aria-current],.desktop-nav a:hover,.desktop-nav button:hover{color:var(--text)}.nav-active{background:var(--line);border-radius:30px;position:absolute;inset:0}.header-actions{justify-self:end;align-items:center;gap:12px;display:flex}.icon-button{width:32px;height:32px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.icon-button:hover{background:var(--line);color:var(--text)}.small-primary{background:var(--accent);color:var(--inverse);white-space:nowrap;border-radius:30px;padding:9px 17px;font-size:13px;font-weight:600}.mobile-toggle,.mobile-nav{display:none}.hero{isolation:isolate;padding:170px var(--page-gutter) 90px;background:color-mix(in srgb, var(--bg) 95%, #777);position:relative;overflow:hidden}.ambient{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.diagonal-field{background:repeating-linear-gradient(90deg, transparent 0px, transparent 95px, color-mix(in srgb, var(--text) 3%, transparent) 96px, color-mix(in srgb, var(--text) 3%, transparent) 350px, transparent 351px, transparent 600px);position:absolute;inset:-450px -35%;transform:rotate(-45deg);mask-image:linear-gradient(#0000,#000 15% 55%,#0000 95%)}.diagonal-field:after{content:"";background-image:repeating-linear-gradient(0deg, var(--muted) 0, var(--muted) 1px, transparent 1px, transparent 5px);opacity:.27;background-repeat:repeat-x;background-size:1px 100%;position:absolute;inset:0;mask-image:repeating-linear-gradient(90deg,#0000 0 94px,#000 94px 95px,#0000 95px 300px)}.ambient-fade{background:linear-gradient(180deg, transparent 35%, var(--bg) 99%);position:absolute;inset:0}.beam-lane{left:var(--start);transform-origin:0 0;width:650px;height:650px;position:absolute;top:0;transform:rotate(-45deg)}.beam{width:1px;height:56px;animation:beam-fall var(--duration) var(--delay) linear infinite;opacity:0;background:linear-gradient(#0000,#bf8c47,#dbb266);position:absolute;top:-100px;left:0}.spark{width:19px;height:19px;animation:spark-burst var(--duration) var(--delay) linear infinite;opacity:0;background:radial-gradient(circle,#e4b467 0,#0000 66%);border-radius:50%;position:absolute;top:640px;left:-9px}@keyframes beam-fall{0%{opacity:0;transform:translateY(0)}10%{opacity:.65}63%{opacity:.65}72%{opacity:0;transform:translateY(780px)}to{opacity:0;transform:translateY(780px)}}@keyframes spark-burst{0%,63%,78%,to{opacity:0;transform:scale(.1)}68%{opacity:.7;transform:scale(1)}74%{opacity:0;transform:scale(2.4)}}[data-paused=true] .beam,[data-paused=true] .spark,.ambient[data-paused=true] .beam,.ambient[data-paused=true] .spark{animation-play-state:paused}.hero-content{z-index:1;text-align:center;max-width:1000px;margin:0 auto;position:relative}.hero h1{letter-spacing:-3.5px;color:color-mix(in srgb, var(--text) 82%, transparent);font-size:72px;font-weight:600;line-height:1.08}.hero-title-line{white-space:nowrap;justify-content:center;align-items:baseline;display:flex}.hero-title-punctuation{text-align:left;flex:0 0 .5em;width:.5em;min-width:0}.hero-content>p{color:var(--muted);max-width:670px;margin:34px auto 0;font-size:16px;line-height:1.7}.mobile-break{display:none}.hero-actions{justify-content:center;gap:24px;margin-top:34px;display:flex}.button{border-radius:8px;justify-content:center;align-items:center;gap:14px;min-width:174px;min-height:42px;padding:11px 22px;font-size:14px;font-weight:550;transition:transform .2s,background .2s,border-color .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button svg{transition:transform .2s}.button:hover svg{transform:translate(3px)}.primary{background:var(--accent);color:var(--inverse)}.secondary{border:1px solid var(--line);color:var(--text);background:color-mix(in srgb, var(--bg) 30%, transparent)}.hero-meta{color:var(--muted);justify-content:center;align-items:center;gap:14px;margin-top:16px;font-size:11px;display:flex}.hero-meta>span{background:var(--muted);border-radius:50%;width:3px;height:3px}.showcase{max-width:var(--content-width);background:var(--panel);border:1px solid var(--line);border-radius:22px;margin:100px auto 0;scroll-margin-top:105px;position:relative;overflow:hidden;box-shadow:0 30px 120px #00000020}.showcase-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;height:43px;padding:0 20px;display:flex}.showcase-top>.brand{letter-spacing:-.4px;font-size:13px}.showcase-top>span:nth-child(2){letter-spacing:2px;color:var(--muted);font-size:9px}.window-indicators{gap:7px;display:flex}.window-indicators span{background:var(--muted);opacity:.35;border-radius:50%;width:5px;height:5px}.showcase-body{background:linear-gradient(135deg, color-mix(in srgb, var(--text) 2%, transparent), transparent);grid-template-columns:1fr 1fr;align-items:start;gap:64px;padding:64px;display:grid}.eyebrow{letter-spacing:2px;color:var(--muted);font-size:10px;font-weight:550;display:block}.showcase-side h2{letter-spacing:-1.5px;margin-top:0;font-size:36px;font-weight:550;line-height:1.35}.showcase-side p{color:var(--muted);margin-top:21px;font-size:14px;line-height:1.8}.showcase-side>a{align-items:center;gap:10px;margin-top:34px;font-size:13px;display:flex}.destination-list{flex-direction:column;justify-content:center;display:flex}.destination{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:25px 0;display:flex}.destination:first-child{padding-top:5px}.destination:last-child{border-bottom:0}.destination>svg:first-child{color:var(--muted)}.destination>svg:last-child{color:var(--muted);margin-left:auto}.destination h3{font-size:16px;font-weight:550}.destination p{color:var(--muted);margin-top:8px;font-size:12px}.motion-section{width:min(var(--content-width), calc(100% - 2 * var(--page-gutter)));margin:auto;padding:108px 0 100px}.section-heading{text-align:center}.section-heading h2{letter-spacing:-1.5px;margin-top:0;font-size:36px;font-weight:600}.section-heading p{color:var(--muted);margin-top:24px;font-size:15px;line-height:1.85}.motion-grid{grid-template-columns:repeat(3,1fr);gap:48px;margin-top:76px;display:grid}.motion-grid article{padding:20px 0}.motion-grid article>.eyebrow{margin-top:32px}.motion-grid h3{letter-spacing:-.5px;margin-top:24px;font-size:20px;font-weight:550;line-height:1.5}.motion-grid p{color:var(--muted);margin-top:18px;font-size:14px;line-height:1.9}.motion-grid article>svg{color:var(--muted)}.closing{width:min(var(--content-width), calc(100% - 2 * var(--page-gutter)));text-align:center;border-top:1px solid var(--line);margin:20px auto 90px;padding:80px 0}.closing h2{letter-spacing:-1.5px;font-size:40px;font-weight:550;line-height:1.3}.closing p{color:var(--muted);margin:25px 0 32px;font-size:14px;line-height:1.8}footer{border-top:1px solid var(--line);padding:70px var(--page-gutter) 65px;overflow:hidden}.footer-top{max-width:var(--content-width);justify-content:space-between;gap:50px;margin:auto;display:flex}.footer-top p{color:var(--muted);margin-top:22px;font-size:12px}.preview-label{color:var(--muted);opacity:.8;margin-top:14px;font-size:10px;display:block}.footer-links{color:var(--muted);align-items:flex-start;gap:32px;padding-top:8px;font-size:12px;display:flex}.footer-links a:hover,.footer-links button:hover{color:var(--text)}.footer-links button{align-items:center;gap:4px;padding:0;display:flex}.wordmark-canvas{aspect-ratio:4.1;width:100%;height:auto;color:color-mix(in srgb, var(--text) 25%, transparent);max-width:var(--content-width);margin:70px auto 0;display:block}.content-page{width:min(var(--content-width), calc(100% - 2 * var(--page-gutter)));min-height:calc(100vh - 100px);margin:auto;padding:165px 0 100px}.content-page>h1{letter-spacing:-2px;margin-top:0;font-size:56px;font-weight:600}.page-lead{color:var(--muted);margin-top:22px;font-size:16px}.empty-state{border-top:1px solid var(--line);text-align:center;margin-top:65px;padding:65px 20px}.empty-state>svg{color:var(--muted)}.empty-state h2{letter-spacing:-.5px;margin-top:30px;font-size:22px;font-weight:500}.empty-state p{color:var(--muted);max-width:500px;margin:18px auto;font-size:14px;line-height:1.85}.text-link{align-items:center;gap:10px;margin-top:15px;font-size:13px;display:inline-flex}.study-controls{z-index:80;background:color-mix(in srgb, var(--panel) 92%, transparent);backdrop-filter:blur(12px);border:1px solid var(--line);white-space:nowrap;border-radius:30px;align-items:center;gap:28px;padding:7px 9px 7px 16px;font-size:11px;display:flex;position:fixed;bottom:17px;left:50%;transform:translate(-50%);box-shadow:0 4px 25px #0003}.study-controls>span{color:var(--muted);align-items:center;gap:7px;display:flex}.study-controls>div{gap:4px;display:flex}.study-controls button{border-radius:20px;align-items:center;gap:6px;padding:8px 9px;font-size:11px;display:flex}.study-controls button:hover{background:var(--line)}.live-dot{background:#88a7c4;border-radius:50%;width:4px;height:4px}.notice{z-index:210;background:var(--panel);border:1px solid var(--line);border-radius:10px;align-items:center;gap:20px;width:440px;max-width:calc(100vw - 32px);padding:17px 18px;font-size:12px;line-height:1.7;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0003}.notice button{margin-left:auto;padding:3px;display:flex}@media (width<=900px){.desktop-nav a,.desktop-nav button{padding:9px 10px}.header-actions{gap:5px}.hero h1{font-size:64px}.hero{padding-top:170px}.showcase-body{gap:40px;padding:48px}.footer-links{gap:20px}.motion-grid{gap:25px}}@media (width<=950px){.desktop-nav{display:none}.mobile-toggle{display:grid}.site-header{grid-template-columns:minmax(0,1fr) auto;height:56px}.mobile-nav{background:var(--panel);border:1px solid var(--line);border-radius:18px;flex-direction:column;gap:4px;padding:12px;display:flex;position:absolute;top:65px;left:0;right:0;box-shadow:0 10px 35px #0004}.mobile-nav a,.mobile-nav button{text-align:left;border-radius:8px;align-items:center;gap:8px;padding:13px;font-size:14px;display:flex}.mobile-nav a:hover{background:var(--line)}}@media (width<=700px){.brand{font-size:17px}.header-actions{gap:9px}.small-primary{padding:9px 14px;font-size:12px}.hero{padding:128px var(--page-gutter) 55px}.hero h1{letter-spacing:-1.8px;font-size:clamp(38px,10.4vw,60px);line-height:1.18}.hero-content>p{max-width:330px;margin-top:27px;font-size:13px;line-height:1.85}.mobile-break{display:block}.hero-actions{gap:12px;margin-top:29px}.button{gap:10px;min-width:140px;min-height:42px;padding:11px 15px;font-size:12px}.hero-meta{gap:10px;font-size:9px}.showcase{border-radius:15px;margin-top:64px}.showcase-top{height:38px;padding:0 14px}.showcase-top>span:nth-child(2){letter-spacing:1px;font-size:7px}.showcase-body{grid-template-columns:1fr;gap:34px;padding:32px}.showcase-side h2{margin-top:0;font-size:28px}.showcase-side p{margin-top:15px;font-size:12px}.showcase-side>a{margin-top:22px;font-size:12px}.eyebrow{letter-spacing:1.4px;font-size:9px}.destination{gap:15px;padding:20px 0}.destination h3{font-size:14px}.destination p{font-size:11px}.destination>svg:first-child{width:19px}.motion-section{padding:75px 0 45px}.section-heading h2{letter-spacing:-1px;font-size:27px}.section-heading p{margin-top:20px;font-size:13px}.motion-grid{grid-template-columns:1fr;gap:10px;margin-top:36px}.motion-grid article{border-bottom:1px solid var(--line);padding:28px 0}.motion-grid article:last-child{border-bottom:0}.motion-grid article>.eyebrow{margin-top:22px}.motion-grid h3{margin-top:12px;font-size:19px}.motion-grid p{margin-top:12px;font-size:13px}.closing{margin:10px auto 45px;padding:50px 0}.closing h2{font-size:32px}.closing p{font-size:12px}footer{padding:45px var(--page-gutter) 80px}.footer-top{flex-direction:column;gap:34px}.footer-links{flex-wrap:wrap;gap:22px}.wordmark-canvas{aspect-ratio:3.4;margin-top:36px}.study-controls{gap:15px;font-size:10px;bottom:12px}.study-controls button{font-size:10px}.content-page{min-height:75vh;padding:135px 0 65px}.content-page>h1{font-size:42px}.page-lead{font-size:14px}.empty-state{margin-top:40px;padding:45px 0}.empty-state p{font-size:13px}.notice{font-size:11px}}.opening-screen{z-index:200;background:var(--bg);color:var(--text);place-items:center;display:grid;position:fixed;inset:0}.opening-wordmark{flex-direction:column;align-items:center;gap:26px;display:flex}.opening-logo{width:clamp(140px,20vw,210px)}.opening-brand-name{letter-spacing:.44em;text-transform:uppercase;padding-left:.44em;font-size:14px;font-weight:450}.opening-skip{right:var(--page-gutter);color:var(--muted);padding:12px;font-size:13px;position:absolute;bottom:28px}.opening-skip:hover{color:var(--text)}::view-transition-group(root){animation-duration:.72s}::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal}::view-transition-old(root){z-index:1;animation:none}::view-transition-new(root){z-index:2;animation:.72s cubic-bezier(.22,1,.36,1) both theme-reveal}@keyframes theme-reveal{0%{clip-path:circle(0px at var(--theme-x) var(--theme-y))}to{clip-path:circle(var(--theme-radius) at var(--theme-x) var(--theme-y))}}.theme-fallback,.theme-fallback *,.theme-fallback :before,.theme-fallback :after{transition:background-color .45s,color .45s,border-color .45s!important}@media (width<=700px){.hero{padding-top:128px}.hero h1{letter-spacing:-1px;font-size:clamp(28px,8.2vw,36px);line-height:1.18}.hero-actions{flex-direction:column;align-items:stretch;gap:14px;max-width:310px;margin:32px auto 0}.hero-actions .button{min-height:42px}.hero-content>p{font-size:14px}.showcase{margin-top:54px}}@media (prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.beam,.spark{display:none}.button:hover,.button:hover svg{transform:none}}.language-switch{white-space:nowrap;color:var(--muted);border-radius:8px;padding:8px 5px;font-size:12px}.language-switch:hover{color:var(--text);background:var(--line)}.original-language-note{color:var(--muted);margin:14px 0 26px;font-size:14px;line-height:1.7}:root[lang=en] .hero h1{letter-spacing:-.055em;font-size:clamp(42px,6.7vw,88px)}:root[lang=en] .hero-title-line{white-space:normal}:root[lang=en] .desktop-nav a,:root[lang=en] .desktop-nav button{padding-inline:10px}@media (width<=1200px){:root[lang=en] .desktop-nav{display:none}:root[lang=en] .mobile-toggle{display:grid}:root[lang=en] .site-header{grid-template-columns:minmax(0,1fr) auto}:root[lang=en] .mobile-nav{background:var(--panel);border:1px solid var(--line);border-radius:18px;flex-direction:column;gap:4px;padding:12px;display:flex;position:absolute;top:65px;left:0;right:0;box-shadow:0 10px 35px #0004}:root[lang=en] .mobile-nav a,:root[lang=en] .mobile-nav button{text-align:left;border-radius:8px;align-items:center;gap:8px;padding:13px;font-size:14px;display:flex}}@media (width<=700px){:root[lang=en] .hero h1{font-size:clamp(30px,7.8vw,52px)}.header-actions{gap:5px}}@media (width<=380px){.header-actions .small-primary{display:none}}@view-transition{navigation:auto}:root.page-transition main{view-transition-name:page-content}:root.page-transition{view-transition-name:none}:root.page-transition .site-header{view-transition-name:page-header}:root.page-transition .silk-backdrop{view-transition-name:none!important}:root.page-transition::view-transition-group(*){animation-duration:.26s}:root.page-transition::view-transition-old(root),:root.page-transition::view-transition-new(root){clip-path:none;animation:none}:root.page-transition::view-transition-old(page-content){animation:.18s both page-out}:root.page-transition::view-transition-new(page-content),:root.page-arriving main{animation:.26s cubic-bezier(.22,1,.36,1) both page-in}:root.page-transition::view-transition-old(page-header),:root.page-transition::view-transition-new(page-header){animation:none}@keyframes page-out{to{opacity:0;transform:translateY(-3px)}}@keyframes page-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){:root.page-arriving main{animation:none}:root.page-transition::view-transition-old(*),:root.page-transition::view-transition-new(*){animation:none!important}}:root.locale-transition main{view-transition-name:locale-content}:root.locale-transition .site-header{view-transition-name:locale-header}.locale-screen{z-index:300;background:var(--bg);color:var(--text);pointer-events:none;place-items:center;display:none;position:fixed;inset:0}:root.locale-arriving .locale-screen,:root.locale-transition .locale-screen{display:grid}:root.locale-transition .locale-screen{view-transition-name:locale-screen}.locale-emblem{flex-direction:column;align-items:center;gap:30px;display:flex;position:relative}.locale-logo{width:clamp(112px,15vw,164px);height:auto;display:block;overflow:visible}.locale-wordmark{letter-spacing:.58em;color:var(--muted);padding-left:.58em;font-size:12px}.locale-orbit{border:1px solid var(--line);border-top-color:var(--muted);width:clamp(230px,30vw,340px);height:90px;box-shadow:0 -8px 40px -25px var(--text);border-radius:50%;position:absolute;top:25%;transform:rotate(-27deg)}:root.locale-transition::view-transition-group(locale-screen){z-index:100;animation-duration:.85s}:root.locale-transition::view-transition-old(locale-screen){opacity:0;animation:none}:root.locale-transition::view-transition-new(locale-screen),:root.locale-arriving .locale-screen{animation:.85s cubic-bezier(.22,1,.36,1) both locale-screen-reveal}:root.locale-transition::view-transition-old(root),:root.locale-transition::view-transition-new(root){clip-path:none;animation:none}:root.locale-transition::view-transition-group(locale-header){animation-duration:.36s}:root.locale-transition::view-transition-old(locale-content){animation:.22s both locale-out}:root.locale-transition::view-transition-new(locale-content),:root.locale-arriving main{animation:.5s cubic-bezier(.22,1,.36,1) .22s both locale-in}@keyframes locale-screen-reveal{0%,28%{opacity:1}to{opacity:0;transform:scale(1.035)}}@keyframes locale-out{to{opacity:0;filter:blur(2px);transform:translateY(-5px)}}@keyframes locale-in{0%{opacity:0;filter:blur(3px);transform:translateY(7px)}to{opacity:1;filter:none;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){:root.locale-arriving main{animation:none}.locale-screen{display:none!important}:root.locale-transition::view-transition-old(*),:root.locale-transition::view-transition-new(*){animation:none!important}}[hidden]{display:none!important}.site-header{max-width:var(--content-width);transition:max-width .45s cubic-bezier(.22,1,.36,1),top .45s,padding .3s,background .3s,border-color .3s}.site-header[data-floating=true]{max-width:760px;top:18px}:root[lang=en] .site-header[data-floating=true]{max-width:960px}.desktop-nav a[aria-current=page]{background:var(--line);border-radius:30px}.mobile-nav{display:none}.mobile-nav:not([hidden]),.sun-icon,.moon-icon{display:flex}.moon-icon,.theme-light-image,:root[data-theme=light] .sun-icon,:root[data-theme=light] .theme-dark-image{display:none}:root[data-theme=light] .moon-icon{display:flex}:root[data-theme=light] .theme-light-image{display:block}.intro-pending .site-header,.intro-pending main,.intro-pending footer{visibility:hidden}.hero{padding-bottom:0}.product-showcase{border:1px solid var(--line);border-radius:16px;width:90%;max-width:1000px;margin:84px auto 0;scroll-margin-top:105px;position:relative;overflow:hidden;box-shadow:0 30px 120px #0002}.product-image{text-align:left;border-radius:inherit;aspect-ratio:16/10;background:#0b0c0e;width:100%;margin:0;padding:0;line-height:0;transition:transform .4s;display:block;overflow:hidden}.product-image img{object-fit:contain;width:100%;height:100%;display:block}.product-image picture{width:100%;height:100%;display:block}.product-image img[data-product-src]:not([src]){display:none}.product-image .theme-dark-image,.product-image .theme-light-image{filter:none}:root[data-theme=light] .product-image{background:#fafafa}@media (hover:hover){.product-image:hover{transform:translateY(-2px)}}.product-image .theme-light-image{display:none}:root[data-theme=light] .product-image .theme-light-image{display:block}:root[data-theme=light] .product-image .theme-dark-image{display:none}.features-section{width:min(1100px, calc(100% - 2 * var(--page-gutter)));margin:auto;padding:120px 0 100px;scroll-margin-top:12px}.section-heading h2{line-height:1.4}.section-heading p{margin-top:20px}.feature-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 36px;margin-top:56px;display:grid}.feature-card{flex-direction:column;min-width:0;scroll-margin-top:110px;display:flex}.feature-copy{padding:24px 4px 0}.feature-copy h3{letter-spacing:-.6px;font-size:21px;font-weight:550;line-height:1.5}.feature-copy p{color:var(--muted);max-width:470px;margin-top:12px;font-size:14px;line-height:1.85}.feature-card>.product-image{border:1px solid var(--line);border-radius:12px}.feature-notes{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:48px;margin-top:76px;padding:44px 0 0;display:grid}.feature-notes article{scroll-margin-top:110px}.feature-notes svg{color:var(--muted)}.feature-notes h3{letter-spacing:-.6px;margin-top:24px;font-size:20px;font-weight:550;line-height:1.5}.feature-notes p{color:var(--muted);margin-top:16px;font-size:14px;line-height:1.95}.interface-section{width:min(var(--content-width), calc(100% - 2 * var(--page-gutter)));grid-template-columns:.8fr 1.2fr;align-items:center;gap:80px;margin:0 auto 110px;padding:55px 0 10px;display:grid}.interface-copy>svg{color:var(--muted);margin-bottom:28px}.interface-copy h2{letter-spacing:-1.3px;font-size:36px;font-weight:550;line-height:1.45}.interface-copy p{color:var(--muted);margin-top:25px;font-size:14px;line-height:1.95}.interface-images{gap:18px;display:grid}.interface-images>.product-image{border:1px solid var(--line);border-radius:12px}.closing h2{font-size:36px}.footer-appearance{color:var(--muted);justify-content:center;gap:24px;margin:28px auto 0;font-size:11px;display:flex}.footer-appearance button{padding:8px}.footer-appearance button:hover{color:var(--text)}.wordmark-canvas{margin-top:48px}[data-reveal]{transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1),filter .75s}.reveal-pending{opacity:0;filter:blur(3px);transform:translateY(24px)}:root[data-motion-paused=true] .reveal-pending{opacity:1;filter:none;transform:none}@media (width<=900px){.feature-gallery{column-gap:26px}.feature-copy h3{font-size:20px}.feature-notes{gap:30px}.interface-section{gap:40px}.interface-copy h2{font-size:30px}}@media (width<=700px){.hero{padding-bottom:0}.hero-content>p{font-size:13px}.product-showcase{border-radius:9px;width:94%;margin-top:44px}.features-section{padding:78px 0 45px;scroll-margin-top:24px}.section-heading h2{letter-spacing:-1px;font-size:25px}.feature-gallery{grid-template-columns:1fr;gap:36px;margin-top:34px}.feature-copy{padding:19px 2px 0}.feature-copy h3{font-size:20px}.feature-copy p{margin-top:10px;font-size:13px}.feature-notes{grid-template-columns:1fr;gap:0;margin-top:40px;padding-top:6px}.feature-notes article{border-bottom:1px solid var(--line);padding:26px 0}.feature-notes article:last-child{border-bottom:0}.feature-notes h3{margin-top:17px;font-size:20px}.feature-notes p{margin-top:13px;font-size:13px}.interface-section{grid-template-columns:1fr;gap:32px;margin-bottom:55px;padding-top:15px}.interface-copy h2{font-size:30px}.interface-copy p{margin-top:20px;font-size:13px}.interface-copy>svg{margin-bottom:20px}.closing h2{font-size:29px}}@media (prefers-reduced-motion:reduce){.reveal-pending{opacity:1;filter:none;transform:none}::view-transition-new(root){animation:none}}.publication-page{max-width:1100px}.breadcrumbs{color:var(--muted);margin:0 0 24px;font-size:12px;line-height:1.8}.breadcrumbs ol{align-items:center;gap:10px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:10px;min-width:0;display:flex}.breadcrumbs li:not(:last-child){flex-shrink:0}.breadcrumbs li:last-child{overflow:hidden}.breadcrumbs [aria-current=page]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.breadcrumbs a:hover{color:var(--text);text-underline-offset:4px;text-decoration:underline}.breadcrumb-divider{opacity:.45}.page-heading{padding:4px 0 48px}.page-heading h1,.article-header h1{letter-spacing:-1.8px;font-size:clamp(32px,4vw,48px);font-weight:550;line-height:1.4}.page-heading>p{color:var(--muted);margin-top:20px;font-size:15px;line-height:1.9}.preview-notice{border:1px dashed var(--line);background:var(--panel);border-radius:12px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:38px;padding:16px 20px;font-size:12px;line-height:1.8;display:flex}.preview-notice strong,.preview-notice span{display:block}.preview-notice span{color:var(--muted)}.preview-notice>a{text-underline-offset:4px;flex-shrink:0;text-decoration:underline}.release-strip{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:24px 0;font-size:13px;display:flex}.release-strip>div{align-items:center;gap:12px;display:flex}.release-strip strong{font-weight:500}.release-strip>span{color:var(--muted);font-size:12px}.release-badge{color:var(--muted);border:1px solid var(--line);border-radius:30px;padding:4px 10px;font-size:11px;font-weight:400;line-height:1.4;display:inline-block}.status-dot{opacity:.65;background:currentColor;border-radius:50%;width:5px;height:5px}.download-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.package-card{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 45%, var(--bg));border-radius:16px;min-width:0;padding:30px}.package-main{grid-column:1/-1;padding:38px}.package-heading{align-items:flex-start;gap:17px;display:flex}.package-icon{color:var(--muted);padding-top:3px}.package-heading h2{letter-spacing:-.6px;font-size:21px;font-weight:550}.package-heading p{color:var(--muted);margin-top:10px;font-size:13px;line-height:1.8}.file-properties{flex-wrap:wrap;gap:28px 60px;margin-top:30px;font-size:13px;display:flex}.file-properties dt{color:var(--muted);margin-bottom:9px;font-size:11px}.file-properties dd{overflow-wrap:anywhere;margin:0}.package-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:30px;display:flex}.package-actions .button{min-width:165px;padding:13px 22px}.ordinary-download{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:inline-flex}.ordinary-download:hover{color:var(--text)}.download-panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-top:26px;padding:23px 24px}.download-status,.download-metrics{justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.download-status strong{font-weight:500}.download-status>span,.download-metrics{color:var(--muted);font-variant-numeric:tabular-nums}.download-panel progress{width:100%;height:3px;accent-color:var(--text);background:var(--line);border:0;border-radius:4px;margin:18px 0 14px;display:block;overflow:hidden}.download-panel progress::-webkit-progress-bar{background:var(--line)}.download-panel progress::-webkit-progress-value{background:var(--text)}.download-panel progress::-moz-progress-bar{background:var(--text)}.download-panel>p{color:var(--muted);overflow-wrap:anywhere;margin-top:16px;font-size:11px;line-height:1.9}.download-controls{flex-wrap:wrap;gap:12px 22px;margin-top:18px;display:flex}.download-control{align-items:center;gap:7px;padding:7px 0;font-size:12px;display:inline-flex}.download-control:hover{color:var(--muted)}.download-panel [hidden]{display:none}.button:disabled{opacity:.45;cursor:not-allowed}.availability-note{color:var(--muted);font-size:12px}.checksum{border-top:1px solid var(--line);color:var(--muted);margin-top:30px;padding-top:19px;font-size:11px}.checksum summary{cursor:pointer}.checksum code{overflow-wrap:anywhere;color:var(--text);user-select:all;margin-top:16px;font-size:11px;line-height:1.9;display:block}.copy-small{align-items:center;gap:8px;margin-top:12px;padding:7px 0;font-size:11px;display:inline-flex}.copy-small:hover{color:var(--text)}.package-unavailable{margin-top:32px}.package-unavailable>span{color:var(--muted);font-size:12px}.package-unavailable p{color:var(--muted);margin-top:9px;font-size:12px;line-height:1.9}.download-guidance{border-top:1px solid var(--line);justify-content:space-between;gap:40px;margin-top:46px;padding-top:28px;display:flex}.download-guidance h2{font-size:18px;font-weight:500}.download-guidance p{color:var(--muted);max-width:570px;margin-top:13px;font-size:13px;line-height:1.9}.guidance-links{align-content:start;gap:18px;min-width:165px;font-size:12px;display:grid}.guidance-links a{align-items:center;gap:12px;display:flex}.guidance-links a svg:last-child{margin-left:auto}.publication-empty{border-top:1px solid var(--line);text-align:center;padding:72px 20px 80px}.publication-empty>svg{color:var(--muted)}.publication-empty h2{letter-spacing:-.7px;margin-top:26px;font-size:23px;font-weight:500}.publication-empty p{color:var(--muted);margin-top:17px;font-size:14px;line-height:1.9}.publication-empty .text-link{margin-top:27px}.release-entry{border-top:1px solid var(--line);grid-template-columns:185px minmax(0,1fr);gap:40px;padding:38px 0 50px;scroll-margin-top:110px;display:grid}.release-meta{color:var(--muted);flex-direction:column;align-items:flex-start;gap:15px;font-size:12px;display:flex}.release-body{min-width:0}.release-body>h2{letter-spacing:-.8px;font-size:27px;font-weight:550}.release-notes{margin-top:26px}.release-files{border-top:1px solid var(--line);margin-top:30px;padding-top:14px}.release-files>div{flex-wrap:wrap;gap:12px 20px;padding:8px 0;font-size:12px;line-height:1.9;display:flex}.release-files>div span:not(:first-child){color:var(--muted);overflow-wrap:anywhere}.release-files>div span:last-child{margin-left:auto}.tutorial-group{border-top:1px solid var(--line);margin-bottom:45px;padding-top:28px}.tutorial-group>h2{color:var(--muted);margin-bottom:25px;font-size:13px;font-weight:400}.tutorial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.tutorial-card{border:1px solid var(--line);border-radius:15px;flex-direction:column;min-width:0;padding:30px;transition:transform .3s,border-color .3s;display:flex}.tutorial-card:hover{border-color:var(--muted);transform:translateY(-3px)}.tutorial-card>div{color:var(--muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.tutorial-card h3{letter-spacing:-.6px;margin-top:25px;font-size:22px;font-weight:500;line-height:1.5}.tutorial-card>p{color:var(--muted);margin:15px 0 28px;font-size:13px;line-height:1.9}.tutorial-read{align-items:center;gap:10px;margin-top:auto;font-size:12px;display:flex}.article-back{color:var(--muted);align-items:center;gap:9px;font-size:12px;display:inline-flex}.article-header{max-width:780px;padding:32px 0 43px}.article-header>span{color:var(--muted);font-size:11px}.article-header h1{margin-top:20px}.article-header>p{color:var(--muted);margin-top:20px;font-size:14px;line-height:1.9}.article-layout{border-top:1px solid var(--line);grid-template-columns:minmax(0,780px) minmax(150px,1fr);gap:70px;padding-top:38px;display:grid}.article-layout>article{min-width:0}.article-toc nav{color:var(--muted);flex-direction:column;align-items:flex-start;gap:15px;font-size:12px;display:flex;position:sticky;top:110px}.article-toc h2{color:var(--text);margin-bottom:8px;font-size:12px;font-weight:500}.article-toc a{line-height:1.8}.article-toc a:hover{color:var(--text)}.article-toc .toc-subheading{padding-left:12px}.prose{color:var(--muted);overflow-wrap:anywhere;font-size:14px;line-height:1.95}.prose>*+*{margin-top:20px}.prose h2,.prose h3,.prose h4{color:var(--text);letter-spacing:-.4px;scroll-margin-top:110px;font-weight:500;line-height:1.6}.prose h2{margin-top:48px;font-size:24px}.prose h3{margin-top:34px;font-size:20px}.prose h4{margin-top:28px;font-size:17px}.prose>:first-child{margin-top:0}.prose strong{color:var(--text);font-weight:550}.prose a{color:var(--text);text-underline-offset:4px;text-decoration:underline}.prose ul,.prose ol{padding-left:22px}.prose li+li{margin-top:8px}.prose blockquote{border-left:2px solid var(--line);padding:5px 0 5px 20px}.prose img{border:1px solid var(--line);border-radius:10px;width:100%;height:auto;display:block}.prose pre{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:20px;font-size:12px;overflow:auto}.prose :not(pre)>code{color:var(--text);background:var(--panel);border-radius:3px;padding:2px 5px;font-size:.9em}.prose table{border-collapse:collapse;width:100%;font-size:13px}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;padding:12px 14px 12px 0}.prose th{color:var(--text);font-weight:500}.tutorial-video iframe{aspect-ratio:16/9;border:0;width:100%}.tutorial-video{margin-bottom:32px}@media (width<=900px){.article-layout{grid-template-columns:minmax(0,1fr) 155px;gap:35px}.release-entry{grid-template-columns:140px minmax(0,1fr);gap:28px}}@media (width<=700px){.publication-page{padding-top:125px;padding-bottom:60px}.page-heading{padding-bottom:32px}.page-heading h1,.article-header h1{letter-spacing:-1.1px;font-size:30px}.page-heading>p{margin-top:15px;font-size:13px}.preview-notice{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:28px;padding:14px 16px;font-size:11px}.release-strip{flex-direction:column;align-items:flex-start;gap:12px;padding:21px 0}.download-grid{grid-template-columns:1fr;gap:16px}.package-card,.package-main{grid-column:auto;padding:24px 22px}.download-panel{padding:18px 16px}.download-metrics{font-size:10px}.package-heading{gap:14px}.package-heading h2{font-size:20px}.package-heading p{font-size:12px}.file-properties{justify-content:space-between;gap:22px}.file-properties>div:first-child{width:100%}.availability-note{font-size:11px}.package-actions{flex-direction:column;align-items:flex-start}.download-guidance{flex-direction:column;gap:26px;margin-top:32px}.guidance-links{gap:20px}.publication-empty{padding:45px 0 55px}.publication-empty h2{font-size:21px}.publication-empty p{font-size:13px}.release-entry{grid-template-columns:1fr;gap:24px;padding-top:26px}.release-meta{flex-direction:row;justify-content:space-between;align-items:center}.release-body>h2{font-size:25px}.release-files>div{flex-direction:column;gap:4px}.release-files>div span:last-child{margin-left:0}.tutorial-grid{grid-template-columns:1fr;gap:18px}.tutorial-card{padding:25px}.tutorial-card h3{font-size:21px}.article-layout{flex-direction:column-reverse;gap:30px;padding-top:25px;display:flex}.article-toc nav{border-bottom:1px solid var(--line);gap:11px;padding-bottom:25px;position:static}.article-header{padding-bottom:30px}.article-header p,.prose{font-size:13px}.prose h2{margin-top:37px;font-size:22px}.prose pre{padding:15px;font-size:11px}}@media (prefers-reduced-motion:reduce){.tutorial-card{transition:none}}.download-faq{display:block}.download-faq details{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.download-faq summary{cursor:pointer;overflow-wrap:anywhere;font-weight:600;line-height:1.6}.download-faq p{overflow-wrap:anywhere;max-width:80ch;line-height:1.8}.download-faq a{align-items:center;gap:8px;display:inline-flex}
