.landing{position:relative;isolation:isolate;padding:104px 0 72px;overflow:clip;--panel-bg:linear-gradient(165deg,rgba(13,18,28,.94),rgba(8,11,19,.9))}html.pwa-app .landing{padding-top:16px}.landing-aurora{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(52vw 52vw at 8% 2%,var(--module-accent-glow) 0,transparent 64%),radial-gradient(46vw 46vw at 96% 8%,rgba(45,212,191,.18) 0,transparent 64%),radial-gradient(52vw 52vw at 42% 100%,rgba(16,185,129,.16) 0,transparent 64%)}.landing-aurora__grid{position:absolute;inset:0;background-image:linear-gradient(to bottom,transparent 0,var(--bg) 74%),linear-gradient(var(--surface-border) 1px,transparent 1px),linear-gradient(90deg,var(--surface-border) 1px,transparent 1px);background-size:100% 100%,58px 58px,58px 58px;opacity:.45}.reveal{opacity:0;transform:translateY(20px);transition:opacity .75s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0s),transform .75s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0s)}.reveal.is-visible{opacity:1;transform:none}@media (scripting:none){.reveal{opacity:1;transform:none}}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes gradient-pan{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse-soft{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.9;transform:scale(1.08)}}@keyframes caret-blink{0%,45%{opacity:1}50%,to{opacity:0}}.landing-chip{display:inline-flex;align-items:center;gap:9px;padding:7px 15px;border-radius:999px;border:1px solid var(--module-accent-line);background:var(--module-accent-soft);color:var(--module-accent-ink);font-size:.79rem;font-weight:650;letter-spacing:.01em;white-space:nowrap}.landing-chip__dot{width:7px;height:7px;border-radius:50%;background:var(--module-accent);box-shadow:0 0 0 4px var(--module-accent-soft);animation:pulse-soft 2.6s ease-in-out infinite}.landing-title{margin:20px 0 0;font-size:clamp(2.3rem,5.3vw,3.9rem);font-weight:800;letter-spacing:-.035em;line-height:1.04;color:var(--text);text-wrap:balance}.landing-gradient-text{background:linear-gradient(100deg,var(--module-accent),#6ee7b7 35%,#5eead4 70%,var(--module-accent));background-size:230% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gradient-pan 9s ease-in-out infinite}.landing-subtitle{margin:20px 0 0;max-width:58ch;font-size:clamp(1rem,1.5vw,1.16rem);line-height:1.65;color:var(--muted)}.landing-section{position:relative;z-index:1;padding-top:46px;padding-bottom:46px}.landing-section__head{max-width:660px;margin-bottom:28px}.landing-section__title{margin:0;font-size:clamp(1.55rem,3vw,2.2rem);font-weight:750;letter-spacing:-.025em;color:var(--text)}.landing-section__desc{margin:12px 0 0;font-size:1rem;line-height:1.65;color:var(--muted);max-width:60ch}.landing-section__cta{margin-top:24px}.landing-link{display:inline-flex;align-items:center;gap:9px;color:var(--module-accent-ink);font-weight:650;font-size:.95rem;text-decoration:none;transition:gap .25s ease,color .2s ease}.landing-link:hover{gap:14px;color:var(--module-accent)}.landing .btn-ghost,.landing .btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 26px;border-radius:999px;font-family:inherit;font-size:.95rem;font-weight:650;letter-spacing:-.01em;text-decoration:none;cursor:pointer;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s ease,border-color .25s ease,background .25s ease,filter .25s ease}.landing .btn-primary{border:1px solid hsla(0,0%,100%,.16);color:#04140d;background:linear-gradient(135deg,#6ee7b7,var(--module-accent) 52%,#10b981);box-shadow:0 16px 38px -16px var(--module-accent-glow),inset 0 1px 0 hsla(0,0%,100%,.4)}.landing .btn-primary:hover{color:#04140d;transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 22px 46px -16px var(--module-accent-glow),inset 0 1px 0 hsla(0,0%,100%,.4)}.landing .btn-primary:active{transform:translateY(0)}.landing .btn-primary:disabled{cursor:progress;opacity:.72;transform:none}.landing .btn-ghost{border:1px solid var(--surface-border)}.landing .btn-ghost,.landing .btn-ghost:hover{color:var(--text);background:var(--glass-strong)}.landing .btn-ghost:hover{border-color:var(--module-accent-line);transform:translateY(-2px)}.landing-hero{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);align-items:center;grid-gap:56px;gap:56px;padding-top:60px;padding-bottom:36px}.landing-hero__copy>*{animation:fade-up .7s cubic-bezier(.16,1,.3,1) backwards}.landing-hero__copy>:nth-child(2){animation-delay:.06s}.landing-hero__copy>:nth-child(3){animation-delay:.12s}.landing-hero__copy>:nth-child(4){animation-delay:.18s}.landing-hero__copy>:nth-child(5){animation-delay:.24s}.landing-cta{gap:14px}.landing-cta,.landing-trust{display:flex;flex-wrap:wrap;margin-top:30px}.landing-trust{gap:10px 22px;padding:0;list-style:none}.landing-trust li{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;font-weight:550;color:var(--text-secondary)}.landing-trust i{color:var(--module-accent);font-size:.8rem}.landing-hero__visual{position:relative;display:grid;place-items:center;min-height:340px}.landing-orb{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none}.landing-orb--a{width:320px;height:320px;top:-30px;right:-10px;background:var(--module-accent-glow)}.landing-orb--b{width:260px;height:260px;bottom:-40px;left:-20px;background:rgba(45,212,191,.18)}.code-window{position:relative;z-index:1;width:100%;max-width:440px;border-radius:18px;border:1px solid var(--glass-border);background:var(--panel-bg);box-shadow:var(--shadow-xl),inset 0 1px 0 hsla(0,0%,100%,.06);overflow:hidden;animation:float 7.5s ease-in-out infinite}.code-window__bar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--glass-border)}.code-window__dots{display:inline-flex;gap:6px}.code-window__dots i{width:10px;height:10px;border-radius:50%;background:var(--surface-border)}.code-window__dots i:first-child{background:hsla(0,91%,71%,.75)}.code-window__dots i:nth-child(2){background:rgba(251,191,36,.75)}.code-window__dots i:nth-child(3){background:rgba(52,211,153,.8)}.code-window__file{font-family:var(--font-code,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:.76rem;color:var(--muted)}.code-window__run{display:inline-flex;align-items:center;gap:7px;margin-left:auto;padding:5px 13px;border-radius:999px;border:1px solid var(--module-accent-line);background:var(--module-accent-soft);color:var(--module-accent-ink);font-size:.72rem;font-weight:650}.code-window__run i{font-size:.6rem}.code-window__code{margin:0;padding:20px 18px;font-family:var(--font-code,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:.83rem;line-height:1.75;color:var(--text-secondary);overflow-x:auto}.tok-kw{color:#6ee7b7}.tok-fn{color:#5eead4}.tok-str{color:#a7f3d0}.tok-var{color:var(--text)}.tok-punc{color:var(--muted)}.code-window__output{display:flex;flex-direction:column;gap:5px;padding:14px 18px 18px;border-top:1px solid var(--glass-border);background:rgba(0,0,0,.16)}.code-window__output-label{font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.code-window__output-line{display:inline-flex;align-items:center;gap:2px;font-family:var(--font-code,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:.83rem;color:var(--module-accent-ink)}.code-window__caret{width:7px;height:15px;background:var(--module-accent);animation:caret-blink 1.15s step-end infinite}.landing-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:18px;gap:18px}.landing-features--three{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-card{position:relative;padding:26px 24px 28px;border-radius:20px;border:1px solid var(--surface-border);background:linear-gradient(165deg,var(--surface-strong),var(--surface));overflow:hidden;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .3s ease,box-shadow .35s ease}.feature-card:after{content:"";position:absolute;inset:-1px;border-radius:inherit;background:radial-gradient(320px circle at 50% 0,var(--module-accent-soft),transparent 72%);opacity:0;transition:opacity .4s ease;pointer-events:none}.feature-card:hover{transform:translateY(-4px);border-color:var(--module-accent-line);box-shadow:0 22px 44px -26px var(--module-accent-glow)}.feature-card:hover:after{opacity:1}.feature-card__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;border:1px solid var(--module-accent-line);background:linear-gradient(150deg,var(--module-accent-soft),transparent 72%),var(--surface-strong);color:var(--module-accent-ink);font-size:1.05rem;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06)}.feature-card__title{margin:18px 0 0;font-size:1.02rem;font-weight:700;letter-spacing:-.015em;color:var(--text)}.feature-card__desc{margin:9px 0 0;font-size:.86rem;line-height:1.6;color:var(--muted)}.landing-family-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));grid-gap:12px;gap:12px}.family-chip{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid var(--surface-border);background:linear-gradient(160deg,var(--surface-strong),var(--surface));color:var(--text);text-decoration:none;transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .25s ease,box-shadow .3s ease}.family-chip:hover{color:var(--text);transform:translateY(-3px);border-color:var(--module-accent-line);box-shadow:0 18px 36px -24px var(--module-accent-glow)}.family-chip__icon{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:10px;background:var(--module-accent-soft);color:var(--module-accent);font-size:.88rem}.family-chip__name{font-size:.9rem;font-weight:600;letter-spacing:-.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.family-chip__count{margin-left:auto;padding:3px 9px;border-radius:999px;border:1px solid var(--surface-border);background:var(--surface-strong);color:var(--muted);font-size:.72rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.app-band{position:relative;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;grid-gap:36px;gap:36px;padding:44px;border-radius:26px;border:1px solid var(--module-accent-line);background:radial-gradient(120% 150% at 0 0,var(--module-accent-soft),transparent 58%),linear-gradient(160deg,var(--surface-strong),var(--surface));overflow:hidden}.app-band:before{content:"";position:absolute;top:-160px;right:-80px;width:360px;height:360px;border-radius:50%;background:var(--module-accent-glow);filter:blur(70px);pointer-events:none}.app-band__copy{position:relative;z-index:1}.app-band__copy .landing-section__desc{margin-top:12px}.app-band__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.app-band__platforms{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.app-band__platform{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;border:1px solid var(--surface-border);background:var(--glass-strong);color:var(--text-secondary);font-size:1.45rem;animation:float 6.5s ease-in-out infinite}.app-band__platform:nth-child(2){animation-delay:-1.6s}.app-band__platform:nth-child(3){animation-delay:-3.2s}.app-band__platform:nth-child(4){animation-delay:-4.8s}.landing-final{position:relative;padding:64px 28px;border-radius:28px;border:1px solid var(--module-accent-line);background:radial-gradient(95% 140% at 50% 0,var(--module-accent-soft),transparent 62%),linear-gradient(165deg,var(--surface-strong),var(--surface));text-align:center;overflow:hidden}.landing-final:before{content:"";position:absolute;top:-240px;left:50%;width:460px;height:460px;transform:translateX(-50%);border-radius:50%;background:var(--module-accent-glow);filter:blur(84px);pointer-events:none}.landing-final__title{position:relative;margin:0;font-size:clamp(1.7rem,3.4vw,2.5rem);font-weight:780;letter-spacing:-.03em;color:var(--text)}.landing-final__desc{position:relative;margin:14px auto 0;max-width:52ch;color:var(--muted);font-size:1rem;line-height:1.65}.landing-final .btn-primary{position:relative;margin-top:28px}.download-hero{position:relative;z-index:1;max-width:780px;margin:0 auto;padding-top:56px;padding-bottom:6px;text-align:center}.download-hero__title{margin-top:22px}.download-hero__subtitle{margin:20px auto 0;max-width:62ch}.install-card{position:relative;max-width:640px;margin:0 auto;padding:44px 32px 40px;border-radius:26px;border:1px solid var(--module-accent-line);background:radial-gradient(120% 150% at 50% 0,var(--module-accent-soft),transparent 60%),linear-gradient(165deg,var(--surface-strong),var(--surface));text-align:center;overflow:hidden}.install-card--installed{border-color:rgba(52,211,153,.4)}.install-card__icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto;border-radius:20px;border:1px solid var(--module-accent-line);background:linear-gradient(150deg,var(--module-accent-soft),transparent 72%),var(--surface-strong);color:var(--module-accent-ink);font-size:1.4rem;box-shadow:0 18px 34px -20px var(--module-accent-glow)}.install-card__title{margin:20px 0 0;font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:750;letter-spacing:-.025em;color:var(--text)}.install-card__desc{margin:12px auto 0;max-width:44ch;font-size:.94rem;line-height:1.65;color:var(--muted)}.install-card .btn-primary,.install-state{margin-top:26px}.install-state{display:inline-flex;align-items:center;gap:9px;padding:11px 20px;border-radius:999px;border:1px solid rgba(52,211,153,.35);background:var(--module-accent-soft);color:var(--module-accent-ink);font-weight:650;font-size:.92rem}.platform-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.platform-card{position:relative;padding:24px 24px 26px;border-radius:20px;border:1px solid var(--surface-border);background:linear-gradient(165deg,var(--surface-strong),var(--surface));transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s ease,box-shadow .3s ease}.platform-card:hover{transform:translateY(-3px);border-color:var(--module-accent-line);box-shadow:0 20px 40px -28px var(--module-accent-glow)}.platform-card--current{border-color:var(--module-accent-line);box-shadow:0 0 0 1px var(--module-accent-line),0 24px 48px -30px var(--module-accent-glow)}.platform-card__head{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:start;grid-gap:14px;gap:14px}.platform-card__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;border:1px solid var(--module-accent-line);background:linear-gradient(150deg,var(--module-accent-soft),transparent 72%),var(--surface-strong);color:var(--module-accent-ink);font-size:1.15rem}.platform-card__title{margin:2px 0 0;font-size:1.05rem;font-weight:700;letter-spacing:-.015em;color:var(--text)}.platform-card__desc{margin:6px 0 0;font-size:.84rem;line-height:1.55;color:var(--muted)}.platform-card__badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;border:1px solid var(--module-accent-line);background:var(--module-accent-soft);color:var(--module-accent-ink);font-size:.68rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.platform-card__steps{margin:20px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.platform-card__steps li{display:flex;align-items:flex-start;gap:12px;font-size:.86rem;line-height:1.55;color:var(--text-secondary)}.step-number{display:grid;place-items:center;width:22px;height:22px;flex:none;margin-top:1px;border-radius:50%;border:1px solid var(--module-accent-line);background:var(--module-accent-soft);color:var(--module-accent-ink);font-size:.68rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.download-faq{display:flex;flex-direction:column;gap:12px;max-width:760px}.faq-item{border:1px solid var(--surface-border);border-radius:16px;background:linear-gradient(165deg,var(--surface-strong),var(--surface));overflow:hidden;transition:border-color .25s ease}.faq-item:hover,.faq-item[open]{border-color:var(--module-accent-line)}.faq-item__question{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;cursor:pointer;font-size:.95rem;font-weight:650;letter-spacing:-.01em;color:var(--text);list-style:none}.faq-item__question::-webkit-details-marker{display:none}.faq-item__question i{flex:none;font-size:.75rem;color:var(--muted);transition:transform .25s ease}.faq-item[open] .faq-item__question i{transform:rotate(180deg)}.faq-item__answer{margin:0;padding:0 20px 19px;font-size:.88rem;line-height:1.65;color:var(--muted)}.download-note{display:flex;align-items:flex-start;gap:10px;max-width:760px;margin:26px 0 0;padding:14px 18px;border-radius:14px;border:1px dashed var(--surface-border);color:var(--muted);font-size:.83rem;line-height:1.6}.download-note i{margin-top:3px;color:var(--module-accent)}[data-theme=light] .landing{--panel-bg:linear-gradient(165deg,#fff,#f4f6fb)}[data-theme=light] .landing-aurora{opacity:.55}[data-theme=light] .landing-gradient-text{background-image:linear-gradient(100deg,var(--module-accent),#0f766e 40%,#115e59 70%,var(--module-accent))}[data-theme=light] .code-window{background:linear-gradient(165deg,#fff,#f4f6fb);box-shadow:var(--shadow-xl)}[data-theme=light] .code-window__output{background:rgba(15,23,42,.04)}[data-theme=light] .tok-kw{color:#047857}[data-theme=light] .tok-fn{color:#0f766e}[data-theme=light] .tok-str{color:#15803d}[data-theme=light] .landing .btn-ghost{background:hsla(0,0%,100%,.7)}@media (max-width:1080px){.landing-hero{grid-template-columns:minmax(0,1fr);gap:44px;padding-top:40px}.landing-hero__visual{min-height:300px}.landing-features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.app-band{grid-template-columns:minmax(0,1fr);padding:32px 26px}.app-band__platforms{justify-content:flex-start}.platform-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.landing{padding-top:92px}.landing-section{padding-top:36px;padding-bottom:36px}.landing-features,.landing-features--three{grid-template-columns:minmax(0,1fr)}.feature-card{padding:22px 20px 24px}.app-band__actions .btn-ghost,.app-band__actions .btn-primary,.landing-cta .btn-ghost,.landing-cta .btn-primary{flex:1 1 auto;justify-content:center}.landing-final{padding:48px 22px}.install-card{padding:34px 22px 32px}.platform-card__head{grid-template-columns:42px minmax(0,1fr)}.platform-card__badge{grid-column:2;justify-self:start}.code-window__code{font-size:.78rem}}@media (max-width:420px){.landing-trust{gap:8px 16px}.app-band__platform{width:54px;height:54px;border-radius:15px;font-size:1.25rem}}@media (prefers-reduced-motion:reduce){.reveal,.reveal.is-visible{opacity:1;transform:none;transition:none}.app-band:before,.app-band__platform,.code-window,.code-window__caret,.landing-aurora__blob,.landing-chip__dot,.landing-final:before,.landing-gradient-text,.landing-hero__copy>*,.landing-orb{animation:none}.landing-link:hover{gap:9px}.family-chip:hover,.feature-card:hover,.landing .btn-ghost:hover,.landing .btn-primary:hover,.platform-card:hover{transform:none}}