:root{color-scheme:dark;--bg:#0c0d10;--ink:#ededf0;--dim:#aaaab5;--line:#2b2d35;--accent:#79a2ff;--surface:#17191f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.skip{position:absolute;left:20px;top:-100px;padding:12px;background:var(--surface);z-index:5}.skip:focus{top:8px}.shell{max-width:1120px;margin:auto;padding:0 36px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:100px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:650;min-height:44px}.brand small{font-size:12px;font-weight:400;color:var(--dim);margin-left:6px}.brand i{height:28px;width:28px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(var(--accent) 0 4px,transparent 4px)}nav{display:flex;align-items:center;gap:28px;font-size:14px}nav a{display:flex;align-items:center;min-height:44px;color:var(--dim)}nav a:hover,.text-link:hover{color:var(--ink)}.hero{text-align:center;padding:65px 0 0}.eyebrow{color:var(--dim);font-size:12px;letter-spacing:1px;margin:0 0 22px}.eyebrow span{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin:0 7px 2px 0}h1{font-size:clamp(36px,5.5vw,62px);line-height:1.08;letter-spacing:-2px;font-weight:650;margin:0 0 24px}em{font-style:normal;color:#a3bfff}h2{font-size:clamp(28px,3.3vw,38px);line-height:1.16;letter-spacing:-1px;font-weight:600;margin:0 0 24px}h3{font-size:19px;line-height:1.4;margin:0 0 12px}.lead{font-size:18px;color:var(--dim);margin:0 0 28px}.caption{font-size:12px;color:var(--dim);margin:16px 0 0}.hero-actions{display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid transparent;border-radius:10px;min-height:48px;padding:12px 24px;font:inherit;line-height:1.4;white-space:nowrap;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s}.primary{background:var(--accent);color:#11192c}.primary:hover{background:#a3bfff}.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.button:disabled{opacity:.55;cursor:default}.text-link{display:inline-flex;align-items:center;min-height:44px;color:var(--accent);font-size:14px}.scene{background:radial-gradient(ellipse at 50% 0,#28395b66,transparent 70%),#12141a;border:1px solid var(--line);border-radius:24px;margin-top:52px;overflow:hidden}.scene-bar{display:flex;align-items:center;gap:6px;color:#8d96a8;padding:16px 24px;text-align:left;font-size:11px;border-bottom:1px solid #ffffff08}.scene-bar span{flex:1}.scene-bar i{width:5px;height:5px;border-radius:50%;background:#7d879e}.scene img{display:block;width:100%;height:auto;margin:auto}.scene-bottom{display:flex;justify-content:space-between;gap:15px;color:#8d96a8;font-size:11px;padding:12px 24px 20px}.section{padding:80px 0;border-bottom:1px solid var(--line)}.features{display:grid;grid-template-columns:1fr 1.35fr;gap:64px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 28px}.feature-grid p,.plan-explain p,.faq p{font-size:14px;color:var(--dim);margin:0}.feature-no{font-size:11px;color:var(--accent);display:block;margin-bottom:14px}.workflow{display:grid;grid-template-columns:1fr 1.35fr;gap:64px}.workflow ol{list-style:none;margin:0;padding:0;counter-reset:steps}.workflow li{counter-increment:steps;position:relative;border-bottom:1px solid var(--line);padding:0 0 24px 44px;margin-bottom:24px}.workflow li:before{content:counter(steps);position:absolute;left:0;top:0;color:var(--accent);font-size:12px}.workflow strong,.workflow span{display:block}.workflow strong{font-weight:600}.workflow span{font-size:14px;color:var(--dim);margin-top:6px}.install{text-align:center}.downloads{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:650px;margin:32px auto 24px}.downloads article{text-align:left;padding:28px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.downloads p{font-size:13px;color:var(--dim);margin:12px 0 24px}.platform-icon{display:block;color:var(--accent);font-size:27px;margin-bottom:16px}.downloads .button{width:100%}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 0;color:var(--dim);font-size:12px}footer a:last-child{min-height:44px;display:flex;align-items:center}.pricing-hero{text-align:center;padding:65px 0 44px}.plan-layout{display:grid;grid-template-columns:1fr 1fr;max-width:860px;margin:auto;gap:56px}.price-card{background:var(--surface);border:1px solid #52668e;border-radius:20px;padding:32px}.price{font-size:54px;line-height:1.2;letter-spacing:-2px;margin:0}.price span{font-size:16px;letter-spacing:0;color:var(--dim)}.price-card>p:not(.price):not(.eyebrow){color:var(--dim);font-size:14px}.price-card ul{padding:0;list-style:none;margin:26px 0}.price-card li{font-size:14px;margin:12px 0;padding-left:22px;position:relative}.price-card li:before{content:"✓";position:absolute;left:0;color:var(--accent)}.price-card small{display:block;color:var(--dim);font-size:11px}.price-card .button{width:100%}.plan-explain{padding-top:24px}.plan-explain h2{font-size:30px}.quiet-box{border-top:1px solid var(--line);margin:28px 0;padding-top:28px}.plan-explain .caption{margin-top:28px;font-size:12px}.faq{max-width:860px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;min-height:44px;display:list-item;align-content:center;font-size:15px}.faq p{padding:10px 0 8px;max-width:650px}@media(max-width:760px){.shell{padding:0 22px}header{min-height:84px;gap:12px}nav{gap:14px}nav a{font-size:12px}.brand{font-size:16px}.brand small{display:block;margin:0;font-size:10px}.hero,.pricing-hero{padding-top:44px}h1{letter-spacing:-1.4px}.hero .lead{font-size:16px}.hero-actions{gap:10px;flex-direction:column}.scene{margin-top:32px;border-radius:16px}.scene-bar,.scene-bottom{padding:12px 16px;font-size:10px}.scene-bottom span:last-child{display:none}.section{padding:48px 0}.features,.workflow{grid-template-columns:1fr;gap:28px}.feature-grid{gap:24px}.feature-grid p{font-size:13px}.downloads{grid-template-columns:1fr;max-width:360px}.downloads article{padding:24px}.plan-layout{grid-template-columns:1fr;gap:24px}.price-card{padding:26px}footer{flex-wrap:wrap;gap:8px}footer>span{width:100%;order:3}.section-intro h2 br{display:none}.hero .lead br{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Two restrained violet glows: their bounds total 19.88% of the viewport. */
:root{--neon-violet:150,45,255;--aurora-period:12s}
body{isolation:isolate}.shell{position:relative;z-index:1}
.site-aurora{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.site-aurora i{position:absolute;display:block;border-radius:50%;background:radial-gradient(ellipse at center,rgba(var(--neon-violet),.62) 0%,rgba(104,29,205,.35) 34%,rgba(87,24,175,.12) 60%,transparent 74%);animation:violet-shimmer var(--aurora-period) ease-in-out infinite alternate;will-change:transform,opacity}
.site-aurora i:first-child{width:34vw;height:32vh;left:0;top:12vh}
.site-aurora i:last-child{width:30vw;height:30vh;right:0;bottom:8vh;animation-delay:-6s}
@keyframes violet-shimmer{from{opacity:.65;transform:translateY(-1vh)}to{opacity:1;transform:translateY(1vh)}}
@media(prefers-reduced-motion:reduce){.site-aurora i{animation:none;will-change:auto}}

:root{--brand-neon:#bc63ff}
.brand i{background:linear-gradient(var(--brand-neon) 0 4px,transparent 4px);border-color:#453050;box-shadow:0 -2px 12px rgba(178,70,255,.2)}
.hero h1 em{color:var(--brand-neon);text-shadow:0 0 24px rgba(171,54,255,.28)}

.hero .eyebrow span{background:var(--brand-neon);box-shadow:0 0 10px rgba(188,99,255,.45)}
nav .nav-subscribe{justify-content:center;min-height:44px;padding:0 18px;border:1px solid #714096;border-radius:999px;background:#140c1d;color:#e6d4f4;transition:background .2s,border-color .2s}
nav .nav-subscribe:hover{background:#251136;border-color:var(--brand-neon)}
nav .nav-account{width:44px;height:44px;flex:none;justify-content:center;border:1px solid #493054;border-radius:50%;color:#d8b3f7;background:#110c17}
nav .nav-account:hover{color:#f3e4ff;border-color:var(--brand-neon);background:#251136}
nav .nav-account svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* TopPanel's feature diagram shares the site's violet palette. */
:root{--feature-card-bg:#131018;--feature-card-line:#382344;--feature-wire-gap:96px;--feature-hub-size:112px}
.feature-map.features{display:block}
.feature-map-heading{text-align:center;margin-bottom:36px}.feature-map-heading h2{font-size:clamp(24px,3vw,34px);margin:0}.feature-map-heading .eyebrow{margin-bottom:12px}
.feature-map-board{position:relative;isolation:isolate}
.feature-hub{position:relative;z-index:1;width:var(--feature-hub-size);height:var(--feature-hub-size);margin:0 auto var(--feature-wire-gap);border:1px solid #ad4cff;border-radius:28px;background:linear-gradient(#af4fff 0 15px,#09090d 15px);box-shadow:0 0 30px rgba(161,55,255,.2),inset 0 0 18px #100a18}
.feature-hub-icons{position:absolute;inset:36px 20px 18px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;color:#c7a5df}
.feature-hub svg,.feature-card-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.feature-connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:0;pointer-events:none}
.feature-wire,.feature-flow{fill:none;stroke:url(#feature-neon);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px #ac44ff);vector-effect:non-scaling-stroke}
.feature-wire{opacity:.65;animation:feature-glimmer 5s ease-in-out infinite alternate}
.feature-flow{stroke-width:2.4;stroke-dasharray:32 220;animation:feature-current 6s linear infinite;opacity:.85}
.feature-map .feature-grid{position:relative;z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 16px;padding:0 16px}
.feature-card{min-width:0;padding:20px 16px;min-height:244px;border:1px solid var(--feature-card-line);border-radius:16px;background:linear-gradient(150deg,#1b1324,var(--feature-card-bg) 65%);box-shadow:0 8px 24px #0003}
.feature-card-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;margin-bottom:16px;background:#251334;border:1px solid #57316f;border-radius:10px;color:var(--brand-neon)}
.feature-map .feature-card h3{font-size:16px;line-height:1.35;margin-bottom:14px;letter-spacing:-.3px}
.feature-map .feature-card p{font-size:12px;line-height:1.65;color:#b6adbf}.feature-map .feature-card p+p{margin-top:12px}
@media(min-width:761px){.feature-map .feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:0}.feature-card{padding:24px 20px;min-height:264px}.feature-map .feature-card h3{font-size:19px}.feature-map .feature-card p{font-size:13px}}
@keyframes feature-glimmer{from{opacity:.45}to{opacity:1}}
@keyframes feature-current{to{stroke-dashoffset:-252}}
@media(prefers-reduced-motion:reduce){.feature-wire,.feature-flow{animation:none}.feature-flow{display:none}}

.feature-hub-label{position:absolute;inset:15px 0 0;display:flex;align-items:center;justify-content:center;color:var(--brand-neon);font-size:18px;font-weight:650;letter-spacing:-.5px;text-shadow:0 0 10px rgba(188,99,255,.6),0 0 22px rgba(154,44,255,.35)}

.feature-hub-label{inset:0}
.installation-flow.workflow{display:block}.installation-flow h2{text-align:center;margin:0 0 40px}.installation-flow ol{max-width:720px;margin:0 auto}.installation-flow li:before{color:var(--brand-neon)}.installation-flow li:last-child{margin-bottom:0}
@media(max-width:760px){.installation-flow h2{margin-bottom:28px}}

.platform-icon{color:var(--brand-neon);text-shadow:0 0 12px rgba(188,99,255,.4)}
.landing-faq h2{text-align:center;margin-bottom:32px}.landing-faq summary{display:flex;justify-content:space-between;gap:20px;list-style:none}.landing-faq summary::-webkit-details-marker{display:none}.landing-faq summary::after{content:"+";flex:none;color:var(--brand-neon);font-size:24px;line-height:1.2}.landing-faq details[open] summary::after{content:"−"}.landing-faq details[open] summary{color:#e7caff}.landing-faq p{padding-right:28px}

/* Continuous equal-speed flow, with evenly spaced highlights on every branch. */
.feature-wire{animation:none;opacity:.7}.feature-flow{stroke-dasharray:20 28;animation:feature-current 1.6s linear infinite;opacity:.9}
@keyframes feature-current{to{stroke-dashoffset:-48}}
@media(prefers-reduced-motion:reduce){.feature-flow{animation:none;display:none}}

.hero-visual{width:100%;margin:28px auto 32px;border-radius:20px;overflow:hidden}.hero-visual img{display:block;width:100%;height:auto}@media(max-width:760px){.hero-visual{margin:22px auto 24px;border-radius:12px}}

.hero-visual{border-radius:0;overflow:visible;background:transparent}
.hero-visual{width:70%}

/* Invitation points at the interactive panel; pricing uses the site neon violet. */
.demo-invitation{display:flex;flex-direction:column;align-items:center;gap:8px;margin:20px 0 0;font-size:22px;font-weight:600;color:var(--ink)}
.demo-invitation svg{display:block;fill:none;stroke:var(--brand-neon);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 6px rgba(188,99,255,.55))}
.hero #panel-demo.scene{margin-top:10px}
.pricing-page .pricing-hero h1 em{color:var(--brand-neon);text-shadow:0 0 24px rgba(171,54,255,.28)}
.pricing-page .price-card{border-color:var(--brand-neon);box-shadow:0 0 24px rgba(171,54,255,.13)}
.pricing-page .price-card li:before,.pricing-page .plan-explain .text-link{color:var(--brand-neon);text-shadow:0 0 12px rgba(188,99,255,.35)}
.pricing-page .plan-explain .text-link:hover{color:#d7a0ff;text-shadow:0 0 16px rgba(188,99,255,.6)}
.pricing-page .plan-explain .text-link:focus-visible{outline-color:var(--brand-neon)}
@media(max-width:760px){.demo-invitation{font-size:20px;gap:6px;margin-top:16px}}

/* Violet actions on the subscription page. */
.pricing-page .primary{background:var(--brand-neon);color:#180822;border-color:var(--brand-neon);box-shadow:0 0 20px rgba(188,99,255,.3)}
.pricing-page .primary:hover{background:#d09aff;border-color:#d09aff;box-shadow:0 0 28px rgba(188,99,255,.45)}
.pricing-page .primary:focus-visible{outline-color:var(--brand-neon)}
.pricing-page .plan-explain .neon-pill{justify-content:center;min-height:48px;max-width:100%;margin-top:20px;padding:12px 24px;border:1px solid var(--brand-neon);border-radius:999px;background:#190e24;color:var(--brand-neon);line-height:1.4;text-align:center;box-shadow:0 0 18px rgba(188,99,255,.25);transition:background .15s,box-shadow .15s}
.pricing-page .plan-explain .neon-pill:hover{background:#2b123d;box-shadow:0 0 26px rgba(188,99,255,.4)}
