:root{color-scheme:dark;--bg:#0a0a12;--panel:#11111d;--line:#ffffff1c;--text:#f9f7fd;--muted:#c8c3d5;--text-detail:.875rem;--text-label:.9375rem;--pink:#ff6889;--lilac:#c6afff;--mono:"Cascadia Mono",Consolas,monospace;--radius:24px;--nav-height:67px;--stage-gap:clamp(9px,1.85vh,24px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:85px}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--lilac);outline-offset:5px}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:middle}.symbols{position:absolute;width:0;height:0;pointer-events:none}.wrap{width:min(1180px,calc(100% - 92px));margin-inline:auto}.skip{position:fixed;z-index:100;top:10px;left:10px;transform:translateY(-160%);padding:9px 18px;background:#24213b}.skip:focus{transform:none}
.header{position:sticky;top:0;z-index:10;background:#0a0a12e8;border-bottom:1px solid #fff1;backdrop-filter:blur(18px)}.nav{height:calc(var(--nav-height) - 1px);display:flex;align-items:center;justify-content:space-between;gap:18px}.wordmark{display:inline-flex;align-items:center;gap:10px;font-size:19px;letter-spacing:-.035em;font-weight:750;white-space:nowrap}.wordmark img{display:block}.nav nav{display:flex;gap:36px;color:var(--muted);font-size:1rem}.nav nav a:hover,.footer>a:last-child:hover{color:#fff}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:49px;padding:0 19px;border:1px solid transparent;border-radius:10px;font-size:var(--text-label);font-weight:650;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.button-nav{min-height:38px;padding:0 13px;background:#ffffff07;border-color:var(--line)}.button-nav svg{width:16px;height:16px}.primary{background:#ffc1cf;color:#211018;box-shadow:0 7px 30px #ff568a28}.primary:hover{background:#ffd6df;box-shadow:0 8px 35px #ff568a45}.secondary{border-color:#ffffff28;background:#15132088;color:#efebf7}.secondary:hover{background:#242037}
.hero.wrap{width:min(1360px,calc(100% - 92px))}.hero{position:relative;padding-top:62px}.hero-copy{text-align:center;position:relative;z-index:2}.eyebrow{display:flex;align-items:center;gap:9px;font:650 var(--text-label)/1.4 var(--mono);letter-spacing:.07em;color:#d8c4ee}.hero .eyebrow{justify-content:center}.eyebrow span,.hero-screen-label span,.stage-head i{width:7px;height:7px;border-radius:50%;background:var(--pink);box-shadow:0 0 13px #ff6889a0}.hero h1{font-size:clamp(46px,7.15vw,104px);letter-spacing:-.085em;line-height:1.07;margin:20px 0 16px;font-weight:800}.hero h1 em{font-style:normal;color:#f4a8c1;background:linear-gradient(110deg,#fdbcc7 8%,#dfa5f7 90%);background-clip:text;-webkit-text-fill-color:transparent}.hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:11px;margin-top:23px}
.hero-visual{position:relative;isolation:isolate;height:clamp(330px,43vw,560px);margin:24px 0 0;overflow:hidden;border-radius:32px;border:1px solid #d9b7ff24;background:radial-gradient(ellipse at 68% 59%,#4d2a6480,transparent 64%),linear-gradient(160deg,#151121,#0e0e1c 68%);perspective:1100px}.hero-visual::before{content:"";position:absolute;inset:0;background-image:linear-gradient(#c2a0ff12 1px,transparent 1px),linear-gradient(90deg,#c2a0ff12 1px,transparent 1px);background-size:43px 43px;mask-image:radial-gradient(ellipse,#000,transparent 85%);z-index:-1}.hero-orbit{position:absolute;inset:20% 2%;border:1px solid #c49aff41;border-radius:50%;transform:rotate(-10deg)}.orbit-two{inset:13% 0;border-color:#efb4ff23;transform:rotate(-16deg)}.coordinate,.figure-caption,.hero-footer{font:650 var(--text-detail)/1.35 var(--mono);letter-spacing:.075em;color:#ded0ed}.hero-footer a{font-family:inherit;font-size:1rem;letter-spacing:.02em}.coordinate{position:absolute;top:23px;z-index:3}.coord-left{left:23px}.coord-right{right:23px}.hero-desktop{--hero-bar:38px;position:absolute;left:12%;top:14%;width:70%;height:76%;padding:1px;border:1px solid #d6b9ff65;border-radius:16px;background:#201c32;box-shadow:0 28px 55px #03030eaa,0 0 48px #b27eff29;transform:rotateY(8deg) rotateX(4deg) rotate(-2deg);overflow:hidden}.window-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:var(--hero-bar);padding:0 12px;font-size:var(--text-detail);color:#f2e7fa;background:linear-gradient(100deg,#252035,#161625);border-bottom:1px solid #ffffff22}.window-head i{display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:50%;background:#77718e}.window-head i:first-child{background:#f67d9c}.window-menu{justify-self:end;color:#d1c1e8;letter-spacing:4px}.hero-screen,.demo-wallpaper,.phone-screen,.mobile-picture{background:#1a1737 url("./orbit.svg") center/cover no-repeat}.hero-screen{position:relative;height:calc(100% - var(--hero-bar));overflow:hidden}.hero-screen::after{content:"";position:absolute;inset:0;background:linear-gradient(108deg,transparent 27%,#f1a9ff16 50%,transparent 72%);transform:translateX(-100%);animation:sweep 8s 1s infinite}.hero-screen-label{position:absolute;top:10%;left:7%;display:flex;align-items:center;gap:7px;border:1px solid #eacbff36;border-radius:20px;background:#110c21d9;font-size:var(--text-detail);padding:4px 9px;color:#e6fbef}.hero-screen-label span{width:5px;height:5px;background:#a6ecc6;box-shadow:0 0 10px #8ff0ba}.hero-screen-copy{position:absolute;left:7%;top:33%;font-size:clamp(19px,4.1vw,58px);line-height:1.07;letter-spacing:-.075em;color:#ffedf9;text-shadow:0 5px 25px #130c21}.hero-screen-copy small{display:block;margin-bottom:10px;font:650 var(--text-detail) var(--mono);letter-spacing:.13em;color:#ead9fb}.toolstrip{position:absolute;left:53%;bottom:8%;display:flex;gap:12px;align-items:center;padding:6px 12px;border:1px solid #fff2;border-radius:9px;background:#19152cc9;color:#e6cdf4}.toolstrip svg{width:13px;height:13px}.toolstrip span{width:1px;height:13px;background:#fff2}.hero-phone,.demo-phone{border:1px solid #bda3ea8a;background:#151322;border-radius:23px;box-shadow:0 18px 35px #0009,inset 0 0 0 3px #ffffff10}.hero-phone{position:absolute;right:11%;bottom:10%;width:15%;height:66%;min-width:82px;transform:rotate(9deg);animation:float-phone 6s ease-in-out infinite;overflow:hidden;padding:7px}.phone-notch{position:absolute;z-index:2;left:35%;top:8px;width:30%;height:4px;border-radius:9px;background:#0b0a12}.phone-top{font-size:var(--text-detail);margin-top:15px;padding:4px 5px 6px;font-weight:700;color:#eadcf6;white-space:nowrap}.phone-top span{float:right;color:#a4efc0;font-size:.6875rem}.phone-screen{height:63%;border-radius:6px;background-position:65% center}.phone-pad{display:flex;justify-content:center;gap:5px;margin-top:12px}.phone-pad i{width:16%;aspect-ratio:1;border:1px solid #f3d5ff46;border-radius:5px;background:#a685e82d}.connect-badge{position:absolute;left:7%;bottom:10%;display:flex;align-items:center;gap:9px;padding:8px 11px;background:#20182eed;border:1px solid #e4baff54;border-radius:10px;box-shadow:0 8px 25px #0006;color:#f6d3f3}.connect-badge svg{color:#ff9bb2}.connect-badge small,.connect-badge b{display:block;line-height:1.35}.connect-badge small{font:650 .75rem var(--mono);letter-spacing:.04em;color:#ead8f4}.connect-badge b{font-size:1.0625rem}.figure-caption{position:absolute;right:22px;bottom:14px;display:flex;align-items:center;gap:7px}.figure-caption span{width:4px;height:4px;border-radius:50%;background:var(--lilac)}.hero-footer{display:flex;justify-content:space-between;align-items:center;padding:17px 0 0}.hero-footer a span{display:inline-block;margin-right:7px;color:var(--pink);font-size:15px;animation:hint 2.4s ease-in-out infinite}
.experience.wrap{width:auto;margin-inline:clamp(12px,3vw,56px)}
.experience{padding-top:105px}
.section-heading{width:min(1180px,100%);margin:0 auto 33px}
.section-heading h2,.start h2,.download h2{font-size:clamp(32px,5.35vw,69px);letter-spacing:-.067em;line-height:1.13;margin:12px 0}
.section-heading p,.start p,.download p,.chapter p{color:var(--muted);margin:0}
.story-run{height:clamp(1150px,235vh,2140px)}
.stage{position:sticky;top:calc(var(--nav-height) + var(--stage-gap));z-index:2}
html.anchor-scroll{overflow-anchor:none}
.anchor-scroll .stage{position:relative;top:0}
.anchor-scroll .story-run{height:0}
.stage-card{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:calc(100svh - var(--nav-height) - 2 * var(--stage-gap));border:1px solid #e4c8ff2b;border-radius:var(--radius);overflow:hidden;background:#121120;box-shadow:0 20px 65px #0004}
.stage-head{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-bottom:1px solid var(--line);color:#d1c0e5;font:650 var(--text-detail)/1.3 var(--mono);letter-spacing:.055em}
.stage-head span:first-child{display:flex;align-items:center;gap:7px}
.stage-head i{width:6px;height:6px}
.stage-art{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 72% 49%,#62407f84,transparent 62%),url("./orbit.svg") 65% center/cover}
.stage-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#110d20fa 0%,#110d20f0 22%,#110d20cc 34%,#110d2060 52%,transparent 72%);pointer-events:none}
.demo-layers{position:absolute;inset:0 2% 0 35%}
.scene{position:absolute;inset:0;opacity:0;filter:blur(18px);transform:scale(.94) translateY(14px);transition:opacity .48s ease,transform .62s cubic-bezier(.2,.75,.2,1),filter .56s ease;pointer-events:none}
.scene.is-active{opacity:1;filter:none;transform:none}
.stage-copy{position:absolute;inset:0 auto 0 0;width:min(48%,700px);z-index:1;padding:0 clamp(23px,5.4vw,77px);display:grid;align-items:center;pointer-events:none}
.chapter{grid-area:1/1;visibility:hidden;opacity:0;filter:blur(8px);transform:translateY(9px);transition:opacity .38s,filter .46s,transform .46s,visibility 0s .46s}
.chapter.is-current{visibility:visible;opacity:1;filter:none;transform:none;transition-delay:0s}
.number,.steps article>span{color:#f49bb2;font:650 var(--text-detail) var(--mono);letter-spacing:.065em}
.chapter h3{font-size:clamp(26px,4.1vw,58px);letter-spacing:-.06em;line-height:1.14;margin:12px 0 14px;text-wrap:balance}
.chapter p{max-width:30ch;line-height:1.8;color:#e2d9ee}
.stage-tabs{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;padding:7px;background:#11101c;border-top:1px solid var(--line)}
.stage-tabs button{min-height:42px;background:none;border:1px solid transparent;border-radius:8px;font-size:var(--text-label);color:var(--muted);white-space:nowrap}
.stage-tabs button:hover,.stage-tabs button[aria-pressed=true]{background:#e8c9ff14;color:#ffe2ef;border-color:#d8abfb3b}
.stage-tabs button:focus-visible{outline-offset:-3px}
.stage-tabs svg{width:15px;height:15px;margin-right:3px}
.demo-window{position:absolute;border:1px solid #dac1ff85;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#322747,#1b172c 75%);box-shadow:0 20px 45px #060310a8}
.demo-toolbar{display:flex;align-items:center;gap:7px;height:31px;padding:0 11px;background:#19172a;color:#f1e4fb;font-size:var(--text-detail);white-space:nowrap;border-bottom:1px solid #ffedff23}
.demo-toolbar i{width:5px;height:5px;border-radius:50%;background:#f6a1bb}
.demo-toolbar span{margin-left:auto;font:650 .75rem var(--mono);color:#e4d0f8}
.demo-toolbar b{background:#a288c425;border-radius:4px;padding:2px 6px;font-weight:550}
.desktop-image{height:calc(100% - 31px);background:url("./orbit.svg") 59% center/cover}
.second-image{background-position:84% center;background-color:#422456;background-blend-mode:screen}
.display-main{left:8%;top:17%;width:59%;height:57%;transform:rotate(-6deg)}
.display-second{right:4%;top:30%;width:50%;height:49%;transform:rotate(7deg)}
.scene.is-active .display-main{animation:screen-focus 5s infinite}
.scene.is-active .display-second{animation:screen-focus 5s -2.5s infinite}
.pointer{position:absolute;width:19px;height:23px;background:#fff2fb;filter:drop-shadow(0 0 4px #210d32);clip-path:polygon(0 0,100% 63%,56% 66%,76% 95%,57% 100%,36% 69%,6% 94%)}
.screen-pointer{left:35%;top:44%}
.scene.is-active .screen-pointer{animation:screen-cursor 5s ease-in-out infinite}
.windows-main{left:11%;top:21%;width:68%;height:56%;transform:rotate(-4deg)}
.windows-detach{left:34%;top:33%;width:49%;height:47%;transform:translate(19%,15%) rotate(8deg)}
.scene.is-active .windows-detach{animation:detach 6s ease-in-out infinite}
.scene.is-active .home-tab{animation:tab-state 6s infinite}
.window-pointer{left:40%;top:24%}
.scene.is-active .window-pointer{animation:window-cursor 6s ease-in-out infinite}
.mobile-back{position:absolute;inset:22% 13%;border:1px solid #e1b8fb69;border-radius:13px;background:linear-gradient(#1e142025,#1e14206e),url("./orbit.svg") center/cover;transform:rotate(-7deg)}
.demo-phone{position:absolute;top:50%;left:60%;height:min(69%,540px);aspect-ratio:9/17;padding:7px;transform:translate(-50%,-50%) rotate(8deg);overflow:hidden}
.hero h1>span,.hero h1 em{display:inline-block}
.hero h1 .hero-stop{display:inline-block;width:.34em}
.mobile-viewport{position:relative;height:100%;overflow:hidden;border-radius:12px;background:#100e1b}
.mobile-picture{position:absolute;inset:0;background-position:59% center}
.scene.is-active .mobile-viewport{animation:keyboard-room 10s ease-in-out infinite}
.scene.is-active .mobile-picture{animation:mobile-pan 10s ease-in-out infinite}
.mock-keyboard{position:absolute;inset:auto 7px 7px;height:34%;padding:4px;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:3px;background:linear-gradient(150deg,#3b304cdb,#211b34);border:1px solid #dbc3ff33;border-radius:6px;filter:blur(.4px);opacity:0;transform:translateY(110%)}
.scene.is-active .mock-keyboard{animation:keyboard-pop 10s ease-in-out infinite}
.mock-keyboard>div{display:flex;gap:2px;min-height:0}
.mock-keyboard>div:nth-child(2){margin-inline:4%}
.mock-keyboard>div:nth-child(3){margin-inline:2%}
.mock-keyboard i{display:grid;place-items:center;flex:1;min-width:0;border-radius:2px;background:#a491c444;box-shadow:inset 0 1px #ffffff14;color:#f7e8ffba;font:500 clamp(5px,.7vw,10px)/1 var(--mono)}
.mock-keyboard .key-space{flex:5}.mock-keyboard .key-wide{flex:2;background:#a78cca55}
@media(max-width:520px){.mock-keyboard{padding:2px;gap:2px}.mock-keyboard>div{gap:1px}}
.tap-ring{position:absolute;left:48%;top:58%;border:2px solid #ffe5f2;border-radius:50%;width:26px;height:26px;opacity:0}
.scene.is-active .tap-ring{animation:mobile-tap 10s ease-out infinite}
.mobile-mouse-bubble,.mobile-virtual-mouse{position:absolute;opacity:0}
.mobile-mouse-bubble{top:24%;right:6%;width:16%;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;border:1px solid #f5d8f366;background:#201a34d9;color:#fff3fb}
.mobile-mouse-bubble svg{width:65%;height:65%}
.mobile-virtual-mouse{left:30%;top:34%;width:62%;height:auto;color:#ede3f1c9;fill:currentColor;filter:drop-shadow(0 4px 5px #0b081a88)}
.mobile-virtual-mouse .mobile-mouse-center{fill:#e66492}
.scene.is-active .mobile-mouse-bubble{animation:mobile-mouse-bubble 10s ease-in-out infinite}
.scene.is-active .mobile-virtual-mouse{animation:mobile-mouse 10s ease-in-out infinite}
.demo-note{position:absolute;right:8%;bottom:13%;background:#251c36ed;border:1px solid #e4baff69;border-radius:8px;padding:6px 9px;color:#f9e1f6;font-size:var(--text-detail)}
.file-source{left:8%;top:25%;width:40%;height:42%}
.file-target{right:6%;top:33%;width:42%;height:44%}
.folder-body{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;height:calc(100% - 31px);color:#f3e6ff;font-size:var(--text-detail);white-space:nowrap}
.folder-body>svg{width:27px;height:27px;color:#f4acd0}
.file-progress,.update-meter{height:6px;width:76%;border-radius:6px;background:#fff2;overflow:hidden}
.file-progress b,.update-meter b{display:block;width:100%;height:100%;background:linear-gradient(90deg,#c797ff,#ff91b3);transform-origin:left}
.drag-object{position:absolute;left:24%;top:44%;width:44px;height:44px;display:grid;place-items:center;background:#70446f;border:1px solid #ffc0df;border-radius:9px;color:#ffe2f2;transform:translate(36px,-11px);box-shadow:0 12px 24px #160d22a3}
.drag-object .pointer{left:33px;top:32px;width:14px;height:18px}
.scene.is-active .drag-object{animation:drag-file 6s ease-in-out infinite}
.scene.is-active .file-progress b{animation:file-arrive 6s linear infinite}
.editor-window{inset:16% 7% 21% 13%;transform:rotate(-3deg)}
.editor-body{padding:clamp(12px,3.5vw,35px);font-size:clamp(.875rem,1.75vw,1.125rem)}
.editor-body>span{display:block;color:#e2ccf7;font-size:var(--text-detail);margin-bottom:11px;font-family:var(--mono)}
.editor-text{color:#f7eafb;letter-spacing:.03em}
.editor-text>div{width:max-content;max-width:100%;white-space:nowrap;overflow:hidden;border-right:2px solid #ffa6c6;padding-right:3px}
.scene.is-active .editor-text>div:first-child{animation:type-first 6s steps(10,end) infinite}
.scene.is-active .editor-text>div:last-child{animation:type-next 6s steps(10,end) infinite}
.account-window{left:53%;top:50%;width:min(90%,850px);transform:translate(-50%,-50%) rotate(2deg)}
.verify-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3.45fr);background:#1c172b}
.verify-sidebar{display:flex;flex-direction:column;gap:8px;padding:clamp(8px,1.25vw,18px);background:#292238;color:#e3d5f4;border-right:1px solid var(--line);font-size:clamp(.75rem,1.12vw,1rem)}
.verify-brand,.verify-sidebar>span{display:flex;align-items:center;gap:7px;line-height:1.35}
.verify-brand{margin-bottom:12px}
.verify-brand img{flex:none;width:26px;height:26px}
.verify-sidebar>span{padding:5px 4px;border-radius:5px}
.verify-sidebar svg,.verify-result svg{width:15px;height:15px}
.verify-nav-active{background:#e8c9ff21;color:#ffb5d3}
.verify-sidebar .verify-link{margin-top:auto;color:#b8f2ce;font-size:.8em}
.verify-main{padding:clamp(10px,1.9vw,28px);font-size:clamp(.75rem,1.1vw,1rem);line-height:1.4}
.verify-main h4{font-size:clamp(1rem,1.65vw,1.55rem);line-height:1.25;margin:0 0 9px;color:#fff0fa}
.verify-identity{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:9px;margin-bottom:clamp(11px,2.5vh,25px)}
.verify-identity>div+div{padding-left:9px;border-left:1px solid #e8d1fa4b}
.verify-value{display:flex;align-items:baseline;flex-wrap:wrap;gap:1px 8px}
.verify-value b{font:650 clamp(.75rem,1.6vw,1.45rem)/1.45 var(--mono);color:#fff0fa;white-space:nowrap}
.verify-value span,.verify-main small,.verify-hint,.verify-footer{color:#d3c3e8;font-size:inherit}
.verify-connect{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr) auto;gap:6px}
.verify-connect>div{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0;padding:5px 7px;border:1px solid #debfef54;background:#110e20b8;border-radius:6px}
.verify-connect b{color:#fff0fa;font:650 1em var(--mono);white-space:nowrap}
.form-action{display:grid;place-items:center;padding:4px 9px;border-radius:5px;background:#ffc1d4;color:#260b23;font-weight:650;white-space:nowrap}
.verify-hint,.verify-mode{margin:6px 0 0}
.verify-mode{display:flex;align-items:center;gap:5px;color:#efdef4}
.verify-mode i{width:8px;height:8px;border-radius:50%;background:#ffa6c6}
.verify-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:2px 6px;margin-top:8px}
.verify-result{color:#b8f2ce;white-space:nowrap}
.scene.is-active .verify-dots{animation:verify-input 5s ease infinite}
.scene.is-active .verify-result{animation:verify-result 5s ease infinite}
@media(max-width:760px){.account-window{left:53%;width:94%}.verify-sidebar{gap:4px}.verify-brand{margin-bottom:4px}.verify-sidebar svg{display:none}}
@media(max-width:520px){.account-window{left:52%;width:92%;transform:translate(-50%,-50%) rotate(1deg)}.verify-brand img{width:19px;height:19px}.verify-sidebar{padding:7px 3px}.verify-brand,.verify-sidebar>span{gap:2px}.verify-sidebar .verify-link{font-size:.72rem}.verify-main{padding:8px}.verify-main h4{margin-bottom:4px}.verify-identity{gap:5px;margin-bottom:8px}.verify-identity>div+div{padding-left:5px}.verify-value span{display:none}.verify-connect{gap:3px}.verify-connect>div{padding:4px}.form-action{padding:3px 5px}}
.update-window{inset:20% 10% 22% 14%;transform:rotate(-3deg)}
.update-body{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;padding:clamp(10px,3vw,28px)}
.update-body small{display:block;color:#e6d3f8;font-size:var(--text-detail)}
.update-meter,.update-label{grid-column:1/-1;width:100%}
.update-label{position:relative;color:#e5d1f3;font-size:var(--text-detail);line-height:1.25}
.update-label strong{position:absolute;left:0;color:#b8f2ce}
.update-label span{opacity:0}
.scene.is-active .update-meter b{animation:download-progress 6s ease-in-out infinite}
.scene.is-active .update-label span{animation:downloading 6s linear infinite}
.scene.is-active .update-label strong{animation:update-done 6s linear infinite}
@keyframes screen-focus{0%,28%,100%{border-color:#fed5fd;box-shadow:0 0 21px #fca6d69c,0 20px 42px #080613}48%,80%{border-color:#c9abeb62;box-shadow:0 12px 24px #080613}}
@keyframes screen-cursor{0%,22%,100%{transform:translate(0,0)}55%,78%{transform:translate(clamp(80px,16vw,214px),32px)}}
@keyframes detach{0%,14%,93%,100%{opacity:0;transform:translate(-27%,-35%) scale(.52) rotate(-4deg)}30%,71%{opacity:1;transform:translate(24%,18%) scale(1) rotate(8deg)}}
@keyframes tab-state{0%,16%,93%,100%{opacity:1}30%,71%{opacity:.28}}
@keyframes window-cursor{0%,12%,100%{transform:translate(0,0)}34%,69%{transform:translate(clamp(56px,12vw,155px),45px)}}
@keyframes keyboard-room{0%,12%,42%,100%{height:100%}20%,34%{height:64%}}
@keyframes keyboard-pop{0%,12%,42%,100%{opacity:0;transform:translateY(110%)}20%,34%{opacity:1;transform:none}}
@keyframes mobile-tap{0%,7%{opacity:0;transform:scale(.5)}8%{opacity:1;transform:scale(.5)}15%,100%{opacity:0;transform:scale(2.1)}}
@keyframes mobile-mouse-bubble{0%,42%,54%,100%{opacity:0;transform:scale(.85)}46%,51%{opacity:1;transform:scale(1)}}
@keyframes mobile-mouse{0%,51%{opacity:0;transform:translate(22%,-30%) scale(.6)}55%,60%{opacity:1;transform:none}74%,81%{opacity:1;transform:translate(-28%,22%)}89%,100%{opacity:0;transform:translate(-28%,22%) scale(.75)}}
@keyframes mobile-pan{0%,58%,96%,100%{transform:none}69%{transform:scale(1.58)}80%{transform:translate(18%,-11%) scale(1.58)}88%{transform:translate(-9%,6%) scale(1.26)}}
@keyframes drag-file{0%,15%,100%{left:24%;top:44%;opacity:1}48%,55%{left:70%;top:49%;opacity:1}64%,90%{left:72%;top:52%;opacity:0}}
@keyframes file-arrive{0%,56%{transform:scaleX(0)}91%,100%{transform:scaleX(1)}}
@keyframes type-first{0%,13%{width:0}47%,100%{width:10em}55%,100%{border-color:transparent}}
@keyframes type-next{0%,45%{width:0;border-color:transparent}50%{border-color:#ffa6c6}83%,100%{width:10em}}
@keyframes verify-input{0%,14%{opacity:.08;letter-spacing:.3em}39%,100%{opacity:1;letter-spacing:.07em}}
@keyframes verify-result{0%,53%{opacity:0;transform:translateY(4px)}67%,100%{opacity:1;transform:none}}
@keyframes download-progress{0%,14%{transform:scaleX(0)}76%,100%{transform:scaleX(1)}}
@keyframes downloading{0%,73%{opacity:1}77%,100%{opacity:0}}
@keyframes update-done{0%,74%{opacity:0}81%,100%{opacity:1}}
.peripheral-setup{position:absolute;inset:10% 7% 9% 4%;max-width:680px;margin:auto}
.peripheral-link{position:absolute;top:12%;left:4%;padding:5px 9px;border:1px solid #b0eedc50;border-radius:20px;background:#151b2be0;color:#c8ffe9;font-size:var(--text-detail);white-space:nowrap}
.peripheral-link i,.peripheral-phone-head i{display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%;background:#a0efcd;box-shadow:0 0 11px #a0efcda8}
.peripheral-phone{position:absolute;top:0;left:31%;height:77%;aspect-ratio:5/8;display:flex;flex-direction:column;justify-content:center;padding:3%;border:1px solid #e6cdff75;border-radius:clamp(12px,2vw,27px);background:linear-gradient(160deg,#2e233d,#141322 55%);box-shadow:0 21px 40px #0a0618a6,inset 0 0 0 3px #e1cbff12;transform:rotate(6deg)}
.peripheral-phone-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:5%;color:#f4e7ff;font-weight:650;font-size:var(--text-detail)}
.peripheral-desktop{position:relative;isolation:isolate;width:100%;aspect-ratio:4/3;overflow:hidden;border:1px solid #c29cf17a;border-radius:7px;background:#21183d url("./orbit.svg") center/cover}
.peripheral-window{position:absolute;inset:13% 11% 15% 14%;border:1px solid #d6c4ff73;border-radius:5px;background:#19162be8;box-shadow:0 4px 12px #09061688;font-size:clamp(9px,1vw,14px)}
.peripheral-window span{display:block;padding:1px 7px;background:#342d47;color:#f2dff8}
.peripheral-window div{display:grid;grid-template-columns:repeat(3,1fr);gap:7%;margin:12% 9%}
.peripheral-window i{display:block;aspect-ratio:1.4;border:1px solid #d2b7fc49;border-radius:3px;background:#75638b31}
.scene.is-active .peripheral-window i:nth-child(2){animation:peripheral-hover 7s infinite}
.peripheral-file,.peripheral-pointer{position:absolute;left:35%;top:56%;z-index:2}
.peripheral-file{display:grid;place-items:center;width:clamp(14px,2vw,24px);aspect-ratio:1;border:1px solid #ffd0e77a;border-radius:5px;background:#9d5b8c;color:#fff0f9;transform:translate(-55%,-75%)}
.peripheral-file svg{width:73%;height:73%}
.peripheral-pointer{width:14px;height:20px;transform:translate(1px,2px)}
.scene.is-active .peripheral-file{animation:peripheral-drag 7s ease-in-out infinite}
.scene.is-active .peripheral-pointer{animation:peripheral-cursor 7s ease-in-out infinite}
.peripheral-shortcuts{display:flex;justify-content:center;align-items:center;gap:4px;margin-top:8%;color:#cdb5e6;font:650 clamp(10px,1vw,14px) var(--mono)}
.peripheral-shortcuts kbd{padding:2px 4px;border:1px solid #dac4fa60;border-radius:4px;background:#453454;color:#f9def5;font:inherit}
.peripheral-keyboard{position:absolute;left:6%;bottom:3%;width:59%;height:26%;display:grid;grid-template-rows:repeat(5,1fr);gap:4%;padding:2.3%;border:1px solid #d1bbec82;border-radius:10px;background:linear-gradient(165deg,#39334f,#201b32);box-shadow:0 12px 0 -6px #110c1d,0 20px 35px #100920a6;transform:perspective(450px) rotateX(25deg) rotate(-8deg)}
.peripheral-keyboard div{display:flex;gap:3%;min-height:0}
.peripheral-keyboard i{display:grid;flex:1;min-width:0;place-items:center;border:1px solid #bda9dd51;border-radius:3px;background:#5b506e;color:#f4e9ff;font:550 clamp(6px,.85vw,11px) var(--mono);line-height:1}
.peripheral-keyboard .peripheral-space{flex:5}
.scene.is-active .peripheral-ctrl{animation:peripheral-keys 7s infinite}
.scene.is-active .peripheral-copy{animation:peripheral-keys 7s infinite}
.scene.is-active .peripheral-paste{animation:peripheral-keys 7s .6s infinite}
.peripheral-mouse{position:absolute;right:5%;bottom:13%;width:clamp(52px,14%,104px);aspect-ratio:2/3;border:1px solid #c9b6ea91;border-radius:47% 47% 45% 45% / 35% 35% 30% 30%;background:linear-gradient(140deg,#655678,#2b223c 64%);box-shadow:0 14px 28px #0a0617a6;transform:rotate(13deg);overflow:hidden}
.peripheral-mouse::before{content:"";position:absolute;inset:0 0 57%;background:linear-gradient(90deg,#ba7daa38 49%,#17112085 49% 51%,#a68ac342 51%);border-bottom:1px solid #161022a3}
.peripheral-mouse i{position:absolute;left:44%;top:15%;width:12%;height:23%;border-radius:6px;background:#cfb1e7;box-shadow:inset 0 0 0 1px #1e1635}
.peripheral-mouse b{position:absolute;left:19%;top:17%;width:18%;height:19%;border-radius:7px;background:#ffadc8;opacity:0}
.scene.is-active .peripheral-mouse b{animation:peripheral-mouse-click 7s infinite}
@keyframes peripheral-cursor{0%,8%{left:20%;top:72%}20%,28%{left:50%;top:48%}35%,40%{left:35%;top:56%}58%,73%{left:72%;top:65%}90%,100%{left:20%;top:72%}}
@keyframes peripheral-hover{0%,16%,33%,100%{background:#75638b31}20%,28%{background:#dbb2ec8c;border-color:#f3d2ff}}
@keyframes peripheral-drag{0%,40%{left:35%;top:56%}58%,88%{left:72%;top:65%}100%{left:35%;top:56%}}
@keyframes peripheral-mouse-click{0%,36%,64%,100%{opacity:0}40%,58%{opacity:.8}}
@keyframes peripheral-keys{0%,70%,86%,100%{}74%,80%{background:#f4a6cd;color:#301930;border-color:#ffd2ed;box-shadow:0 0 9px #ffbde96e}}
@media(max-width:520px){
 .peripheral-setup{inset:8% 8% 4% 5%}
 .peripheral-phone{left:32%;height:75%;padding:3%}
 .peripheral-link{left:0;top:8%;font-size:.75rem}
 .peripheral-phone-head{font-size:.75rem}
 .peripheral-mouse{right:0;width:clamp(45px,17%,72px)}
}
.start{padding:100px 0 80px;border-top:1px solid var(--line);margin-top:66px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.steps article{min-height:158px;padding:18px 17px;border-top:1px solid #c5a5ec4b;background:linear-gradient(#221b302f,transparent);border-radius:0 0 14px 14px}.steps h3{font-size:19px;margin:9px 0 5px}.steps p{font-size:1rem}.download-box{padding:clamp(23px,5vw,65px);border:1px solid #d5a6ed42;border-radius:var(--radius);background:radial-gradient(ellipse at 86% 17%,#5f375277,transparent 60%),linear-gradient(142deg,#22182e,#161424 82%)}.download h2{font-size:clamp(30px,5vw,62px)}.download-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:25px}.download-option{display:flex;align-items:center;gap:13px;padding:14px 15px;min-width:0;border:1px solid #f9dbfa2d;border-radius:12px;background:#100d1c9c}.download-option>svg:first-child{width:27px;height:27px;color:#fbc4d8}.download-option>span{flex:1;min-width:0}.download-option b,.download-option small{display:block}.download-option small{color:var(--muted);font-size:var(--text-detail)}.download-option button{border:none;background:none;color:#f4bbd6;padding:5px 0;white-space:nowrap;font-size:var(--text-detail)}.download-option:hover{border-color:#f9dbfa6d}.download-option button svg{width:15px;height:15px}.footer{display:flex;justify-content:space-between;gap:18px;align-items:center;min-height:94px;color:var(--muted);font-size:var(--text-label)}.footer .wordmark{color:#fff;font-size:16px}dialog{position:fixed;inset:0;margin:auto;max-height:calc(100% - 32px);overflow:auto;max-width:min(460px,calc(100% - 32px));padding:26px 28px;border:1px solid #d1b0ef69;border-radius:17px;background:#211b30;color:var(--text)}dialog::backdrop{background:#090612c9;backdrop-filter:blur(6px)}dialog h2{margin-top:3px}dialog p{color:var(--muted)}dialog .close{position:absolute;right:13px;top:7px;background:none;border:none;font-size:26px}
@keyframes sweep{0%,16%{transform:translateX(-100%)}46%,100%{transform:translateX(100%)}}
@keyframes float-phone{0%,100%{transform:translateY(0) rotate(9deg)}50%{transform:translateY(-9px) rotate(7deg)}}
@keyframes hint{50%{transform:translateY(4px)}}
@media(max-width:760px){.wrap,.hero.wrap{width:calc(100% - 38px)}:root{--nav-height:61px}.nav nav{gap:16px;font-size:var(--text-detail)}.hero{padding-top:54px}.hero-visual{height:clamp(255px,55vw,390px);margin-top:24px;border-radius:20px}.hero-desktop{left:7%;width:81%;top:17%;height:70%}.hero-phone{right:8%;height:62%;bottom:12%}.connect-badge{left:4%;bottom:12%;padding:5px 8px}.coordinate{top:12px}.coord-left{left:12px}.coord-right{right:12px}.figure-caption{right:10px;bottom:10px}.experience{padding-top:77px}.stage-tabs button{font-size:var(--text-detail)}.stage-tabs svg{display:none}.start{margin-top:38px;padding:64px 0 53px}.steps{gap:10px}.download-option{padding:10px;gap:8px}}
@media(max-width:520px){html{scroll-padding-top:70px}.nav nav{display:none}.hero h1{font-size:clamp(34px,9vw,54px);letter-spacing:-.075em}.hero .eyebrow{font-size:var(--text-detail);letter-spacing:.035em}.button{min-height:44px;padding:0 12px;font-size:var(--text-detail)}.button-nav{min-height:34px}.hero-screen-copy small{font-size:.75rem}.toolstrip{left:49%;gap:5px;padding:4px 7px}.toolstrip svg{width:10px;height:10px}.hero-desktop{--hero-bar:29px}.window-head{font-size:.75rem;padding-inline:8px}.hero-screen-label{font-size:.75rem}.connect-badge small{display:none}.connect-badge b{font-size:var(--text-detail)}.connect-badge svg{width:15px;height:15px}.coordinate,.figure-caption,.hero-footer{font-size:.75rem;letter-spacing:.035em}.hero-footer a{font-size:var(--text-detail)}.stage-art::after{background:linear-gradient(0deg,#110d20fb 0%,#110d20f0 26%,#110d2070 47%,transparent 68%)}.demo-layers{inset:0 0 31%}.stage-copy{inset:auto 0 0;width:100%;padding:13px 17px 19px}.chapter h3{font-size:clamp(24px,6vw,30px);margin:5px 0}.chapter p{font-size:var(--text-label);line-height:1.6;max-width:33ch}.stage-head{padding:8px 12px}.stage-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;padding:5px}.stage-tabs button{min-height:30px;padding-inline:3px}.steps,.download-grid{grid-template-columns:1fr}.steps article{min-height:0}.footer{min-height:79px}.footer>span{display:none}.hero-phone{padding:4px;min-width:64px;border-radius:13px}.phone-top{font-size:.6875rem;margin-top:11px;padding-inline:0}.phone-notch{top:5px;height:3px}.phone-pad{margin-top:6px}}
@media(max-width:520px){.update-window{inset:14% 10% 17% 14%}}
.back-top{position:fixed;right:max(19px,env(safe-area-inset-right));bottom:max(19px,env(safe-area-inset-bottom));z-index:9;display:grid;place-items:center;width:46px;height:46px;border:1px solid #e6c2ff65;border-radius:14px;background:#211831ec;color:#f8d9f0;box-shadow:0 7px 24px #0a06188c;backdrop-filter:blur(9px)}
.back-top:hover{background:#3e2a50;color:#fff}
.back-top.over-stage{bottom:calc(var(--stage-gap) + 68px)}
@media(max-width:520px){.back-top.over-stage{bottom:calc(var(--stage-gap) + 83px)}}
.download-link{display:inline-flex;align-items:center;gap:5px;padding:7px 11px;border:1px solid #eec5ec64;border-radius:7px;background:#dc9acd23;color:#ffe3f3;font-size:var(--text-detail);white-space:nowrap}
.download-link:hover{background:#dc9acd48}
.download-link[hidden]{display:none}
.download-link svg{width:16px;height:16px}
#download-availability{margin-top:14px;font-size:var(--text-label)}
.back-top[hidden]{display:none}
.back-top svg{transform:rotate(-90deg)}
@media(max-height:430px){.stage-head{padding-block:6px}.stage-tabs button{min-height:27px}.chapter h3{font-size:clamp(19px,5vw,33px);margin-block:4px}.chapter p{font-size:var(--text-detail);line-height:1.55}.scene-rail{gap:0}.scene-rail button{width:22px;height:22px}}
.scene-rail{position:absolute;left:clamp(5px,1.7vw,21px);top:50%;z-index:3;transform:translateY(-50%);display:flex;flex-direction:column;gap:4px}
.scene-rail button{position:relative;display:grid;place-items:center;width:26px;height:26px;padding:0;border:none;border-radius:50%;background:none;color:#d8b9e9}
.scene-rail button::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.55;transition:opacity .2s,box-shadow .2s}
.scene-rail button:hover,.scene-rail button[aria-pressed=true]{color:#ffc3d8}
.scene-rail button:hover::before,.scene-rail button[aria-pressed=true]::before{opacity:1;box-shadow:0 0 0 4px #ffc1dc2c,0 0 13px #ffa4e0}
.scene-rail button:focus-visible{outline-offset:0}
@media(min-width:521px){.stage-copy{padding-left:clamp(48px,6.8vw,84px)}}
@media(max-width:520px){.scene-rail{top:33%;gap:1px}.scene-rail button{width:24px;height:24px}.demo-layers{left:8%}}
.security{padding-top:45px}
.secure-hero{position:relative;overflow:hidden;text-align:center;padding:clamp(27px,6vw,78px) 20px;border:1px solid #d6b3ff42;border-radius:var(--radius);background:radial-gradient(ellipse at 50% 55%,#65376060,transparent 65%),linear-gradient(145deg,#211a32,#100f1b)}
.secure-hero .eyebrow{justify-content:center}
.secure-hero h2{margin:11px 0 8px;color:#ffd7e7;font-size:clamp(32px,6.6vw,86px);line-height:1.1;letter-spacing:-.07em;text-shadow:0 0 36px #ff90bd56}
.secure-hero p{margin:0;color:#ddd1ec}
.secure-route{display:flex;align-items:center;width:min(630px,100%);margin:clamp(20px,4vw,42px) auto 19px}
.secure-node{display:grid;place-items:center;gap:5px;flex:none;width:clamp(64px,13vw,99px);padding:11px 5px 8px;border:1px solid #d9b8ff51;border-radius:11px;background:#1d1730;color:#efdcff;font-size:var(--text-detail);white-space:nowrap}
.secure-node svg{width:25px;height:25px}
.secure-lock{color:#ffb7d1;box-shadow:0 0 22px #ff9ad154}
.secure-wire{position:relative;flex:1;height:1px;background:#e8b7fa69}
.secure-wire i{position:absolute;width:9px;height:9px;top:-4px;border-radius:50%;background:#ffd8e8;box-shadow:0 0 15px #fca8e1;animation:security-packet 3s linear infinite}
.secure-wire:nth-child(4) i{animation-delay:1.5s}
.security-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
.security-card{padding:17px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,#1d182b,#12111e)}
.security-card h3{margin:13px 0 5px;line-height:1.35;font-size:19px}
.security-card p{margin:0;color:var(--muted);font-size:1rem}
.security-card p strong{color:#f0d5f4;font-weight:650}
.security-motion{display:flex;gap:5px;align-items:center;min-height:61px;padding:6px 8px;border-radius:9px;background:#0d0c17c9;color:#efdaff;font-size:var(--text-detail)}
.code-modes{justify-content:space-between}
.code-modes>span{flex:1;min-width:0;text-align:center;padding:3px;border-radius:5px;border:1px solid #dfbdff44;animation:mode-glow 6s linear infinite;white-space:nowrap}
.code-modes>span:nth-child(2){animation-delay:2s}.code-modes>span:nth-child(3){animation-delay:4s}
.code-modes b{display:block;font-size:var(--text-detail);color:#ffbdd8}
.local-check>svg{color:#ffafd0;width:17px;height:17px}
.local-check b{margin-left:auto;letter-spacing:.12em}
.local-check i{font-style:normal;color:#abf4c8;animation:verify-result 5s ease infinite}
.priority-flow{justify-content:space-evenly;gap:4px;white-space:nowrap}
.priority-flow i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#ffa9c8;margin-right:2px;animation:local-priority 6s linear infinite}
.priority-flow span:nth-child(2) i{background:#a1edbf;animation-delay:3s}
.priority-flow b{font:650 var(--text-detail) var(--mono);color:#f2c7ef}
@keyframes security-packet{0%{left:0;opacity:0}14%,63%{opacity:1}75%,100%{left:calc(100% - 9px);opacity:0}}
@keyframes mode-glow{0%,29%{border-color:#ffb3d8;background:#bb51822c}35%,100%{border-color:#dfbdff44;background:transparent}}
@keyframes local-priority{0%,45%{opacity:1;box-shadow:0 0 9px currentColor}50%,100%{opacity:.28;box-shadow:none}}
@media(max-width:820px){.security-grid{grid-template-columns:1fr}.security-motion{width:min(100%,315px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
