.landing-zone{fill:#0000;stroke:color-mix(in oklch, var(--foreground) 7%, transparent);stroke-width:.75px;transition:fill .9s,stroke .9s}.landing-zone-active{fill:color-mix(in oklch, var(--primary) 42%, transparent);stroke:color-mix(in oklch, var(--primary) 90%, transparent);transition-duration:.12s}.landing-zone-done{fill:color-mix(in oklch, var(--primary) 13%, transparent);stroke:color-mix(in oklch, var(--primary) 28%, transparent)}.landing-scanner{fill:none;stroke:var(--primary);stroke-width:1.25px;filter:drop-shadow(0 0 6px var(--primary))}.landing-dot{fill:var(--brand-green);transform-box:fill-box;transform-origin:50%;animation:.45s cubic-bezier(.34,1.56,.64,1) both landing-pop}.landing-ping{fill:none;stroke:var(--brand-green);stroke-width:1px;opacity:0;transform-box:fill-box;transform-origin:50%;animation:1.2s ease-out landing-ping}.landing-city{fill:color-mix(in oklch, var(--foreground) 55%, transparent);letter-spacing:.02em;pointer-events:none;font-size:9px;font-weight:500}@keyframes landing-pop{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes landing-ping{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(2.4)}}.landing-aurora{background:radial-gradient(60rem 36rem at 15% -10%,#0160c173,#0000 60%),radial-gradient(40rem 30rem at 95% 10%,#5ea74829,#0000 60%);background:radial-gradient(60rem 36rem at 15% -10%,lab(40.5421% 6.7143 -58.4942/.45),#0000 60%),radial-gradient(40rem 30rem at 95% 10%,lab(62.2675% -37.6776 40.9737/.16),#0000 60%);animation:18s ease-in-out infinite alternate landing-drift}@keyframes landing-drift{to{transform:translateY(2rem)scale(1.05)}}.landing-grid{background-image:linear-gradient(color-mix(in oklch, var(--foreground) 6%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in oklch, var(--foreground) 6%, transparent) 1px, transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(70% 60% at 50% 30%,#000,#0000);mask-image:radial-gradient(70% 60% at 50% 30%,#000,#0000)}.landing-split>span{animation:.5s both landing-split-in}@keyframes landing-split-in{0%{opacity:0;transform:scale(.6)}}.landing-fill{animation:.5s both landing-fill-in}@keyframes landing-fill-in{0%{opacity:0;transform:translate(-6px)}}@keyframes landing-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes landing-draw{to{stroke-dashoffset:0}}@supports (animation-timeline:view()){.landing-reveal{animation:linear both landing-reveal;animation-timeline:view();animation-range:entry}@keyframes landing-reveal{0%{opacity:0;transform:translateY(32px)}}.landing-tilt{transform-origin:50% 0;animation:linear both landing-tilt;animation-timeline:view();animation-range:entry cover 40%}@keyframes landing-tilt{0%{opacity:.4;transform:perspective(1400px)rotateX(18deg)scale(.94)}}}@media (prefers-reduced-motion:reduce){.landing-aurora,.landing-dot,.landing-ping,.landing-reveal,.landing-tilt,.landing-split>span,.landing-fill{animation:none!important}}
