.loading-screen.ls-reactor{--ls-accent:var(--ls-accent-override,var(--accent-primary,#8A2BE2));--ls-ink:var(--text-primary,#f4f4f6);--ls-muted:var(--text-secondary,#a0a0ad);--ls-size:clamp(140px,28vw,230px);--ls-half:calc(var(--ls-size) / 2);--ls-ease:var(--rdx-ease-out,cubic-bezier(0.22,1,0.36,1));--ls-ease-io:var(--rdx-ease-in-out,cubic-bezier(0.65,0,0.35,1));flex-direction:column;background-color:var(--bg-dark,#0c0c10)}.ls-reactor .ls-bloom{position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none}.ls-reactor .ls-bloom-1{width:min(52vw,620px);height:min(52vw,620px);top:4%;right:3%;background:radial-gradient(circle,color-mix(in srgb,var(--ls-accent) 34%,transparent),transparent 64%);animation:ls-drift 26s var(--ls-ease-io) infinite alternate}.ls-reactor .ls-bloom-2{width:min(40vw,460px);height:min(40vw,460px);bottom:-10%;left:-6%;background:radial-gradient(circle,color-mix(in srgb,var(--ls-accent) 16%,transparent),transparent 66%);animation:ls-drift 31s var(--ls-ease-io) infinite alternate-reverse}.ls-reactor .ls-grid{position:absolute;inset:0;background-image:linear-gradient(to right,color-mix(in srgb,var(--ls-accent) 16%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--ls-accent) 16%,transparent) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(75% 70% at 50% 45%,#000 0,transparent 72%);mask-image:radial-gradient(75% 70% at 50% 45%,#000 0,transparent 72%);opacity:.22}.ls-reactor .ls-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(125% 120% at 50% 42%,transparent 52%,rgba(0,0,0,.6) 100%)}.ls-reactor .ls-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:clamp(22px,4vw,40px);transition:transform .6s var(--ls-ease),opacity .5s ease}.loading-screen.ls-reactor.hidden .ls-content{transform:scale(1.07)}.ls-reactor .ls-stage{position:relative;width:var(--ls-size);height:var(--ls-size);perspective:900px;display:grid;place-items:center}.ls-reactor .ls-halo{position:absolute;width:160%;height:160%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--ls-accent) 42%,transparent) 0,transparent 66%);filter:blur(14px);animation:ls-halo 3.2s var(--ls-ease-io) infinite}.ls-reactor .ls-core{position:absolute;width:14%;height:14%;border-radius:50%;background:var(--ls-accent);box-shadow:0 0 26px 6px color-mix(in srgb,var(--ls-accent) 70%,transparent);animation:ls-core 2.4s var(--ls-ease-io) infinite}.ls-reactor .ls-cube{position:relative;width:100%;height:100%;transform-style:preserve-3d;animation:ls-assemble .9s var(--ls-ease) both,ls-tumble 9s linear .9s infinite}.ls-reactor .ls-face{position:absolute;inset:0;border:2px solid color-mix(in srgb,var(--ls-accent) 78%,transparent);background:color-mix(in srgb,var(--ls-accent) 10%,transparent);box-shadow:0 0 22px color-mix(in srgb,var(--ls-accent) 40%,transparent),inset 0 0 28px color-mix(in srgb,var(--ls-accent) 18%,transparent);opacity:0;animation:ls-face-in .55s var(--ls-ease) forwards}.ls-reactor .ls-face-front{transform:translateZ(var(--ls-half));animation-delay:.05s}.ls-reactor .ls-face-right{transform:rotateY(90deg) translateZ(var(--ls-half));animation-delay:.12s}.ls-reactor .ls-face-left{transform:rotateY(-90deg) translateZ(var(--ls-half));animation-delay:.19s}.ls-reactor .ls-face-top{transform:rotateX(90deg) translateZ(var(--ls-half));animation-delay:.26s}.ls-reactor .ls-face-bottom{transform:rotateX(-90deg) translateZ(var(--ls-half));animation-delay:.33s}.ls-reactor .ls-face-back{transform:rotateY(180deg) translateZ(var(--ls-half));animation-delay:.4s}.ls-reactor .ls-node{position:absolute;top:50%;left:50%;width:9px;height:9px;margin:-4.5px;border-radius:50%;background:var(--ls-accent);box-shadow:0 0 13px 2px color-mix(in srgb,var(--ls-accent) 85%,transparent);animation:ls-node 2.4s var(--ls-ease-io) infinite}.ls-reactor .ls-node-1{transform:translate3d(calc(var(--ls-half) * -1),calc(var(--ls-half) * -1),calc(var(--ls-half) * -1))}.ls-reactor .ls-node-2{transform:translate3d(var(--ls-half),calc(var(--ls-half) * -1),calc(var(--ls-half) * -1))}.ls-reactor .ls-node-3{transform:translate3d(var(--ls-half),var(--ls-half),calc(var(--ls-half) * -1));animation-delay:.3s}.ls-reactor .ls-node-4{transform:translate3d(calc(var(--ls-half) * -1),var(--ls-half),calc(var(--ls-half) * -1));animation-delay:.3s}.ls-reactor .ls-node-5{transform:translate3d(calc(var(--ls-half) * -1),calc(var(--ls-half) * -1),var(--ls-half));animation-delay:.6s}.ls-reactor .ls-node-6{transform:translate3d(var(--ls-half),calc(var(--ls-half) * -1),var(--ls-half));animation-delay:.6s}.ls-reactor .ls-node-7{transform:translate3d(var(--ls-half),var(--ls-half),var(--ls-half));animation-delay:.9s}.ls-reactor .ls-node-8{transform:translate3d(calc(var(--ls-half) * -1),var(--ls-half),var(--ls-half));animation-delay:.9s}.ls-reactor .ls-wordmark{font-family:var(--font-heading,"Orbitron",sans-serif);font-weight:900;text-transform:uppercase;letter-spacing:.04em;font-size:clamp(1.3rem,.9rem + 2.6vw,2.3rem);line-height:1;text-align:center;color:var(--ls-ink);filter:drop-shadow(0 0 2px color-mix(in srgb,var(--ls-accent) 55%,transparent)) drop-shadow(0 14px 40px rgba(0,0,0,.5));opacity:0;animation:ls-rise .7s var(--ls-ease) .5s forwards}.ls-reactor .ls-meter{position:relative;width:clamp(150px,38vw,250px);height:3px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--ls-accent) 14%,transparent);opacity:0;animation:ls-rise .7s var(--ls-ease) .65s forwards}.ls-reactor .ls-meter-fill{position:absolute;top:0;left:0;height:100%;width:38%;border-radius:inherit;background:linear-gradient(90deg,transparent,var(--ls-accent),transparent);animation:ls-sweep 1.4s var(--ls-ease-io) infinite}@keyframes ls-drift{0%{transform:translate(0) scale(1);opacity:.78}to{transform:translate(3%,-4%) scale(1.08);opacity:1}}@keyframes ls-halo{0%,to{transform:scale(.92);opacity:.55}50%{transform:scale(1.08);opacity:.9}}@keyframes ls-core{0%,to{transform:scale(.82);opacity:.8}50%{transform:scale(1.18);opacity:1}}@keyframes ls-assemble{0%{transform:scale(.3) rotateX(-20deg) rotateY(-70deg);opacity:0}to{transform:scale(1) rotateX(-20deg) rotateY(0deg);opacity:1}}@keyframes ls-tumble{0%{transform:rotateX(-20deg) rotateY(0deg)}50%{transform:rotateX(20deg) rotateY(180deg)}to{transform:rotateX(-20deg) rotateY(1turn)}}@keyframes ls-face-in{0%{opacity:0}to{opacity:1}}@keyframes ls-node{0%,to{opacity:.45}50%{opacity:1}}@keyframes ls-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes ls-sweep{0%{transform:translateX(-130%)}to{transform:translateX(330%)}}@media (prefers-reduced-motion:reduce){.ls-reactor .ls-bloom,.ls-reactor .ls-core,.ls-reactor .ls-cube,.ls-reactor .ls-face,.ls-reactor .ls-halo,.ls-reactor .ls-meter,.ls-reactor .ls-meter-fill,.ls-reactor .ls-node,.ls-reactor .ls-wordmark{animation:none!important;opacity:1!important}.ls-reactor .ls-cube{transform:rotateX(-22deg) rotateY(32deg)}.ls-reactor .ls-meter-fill{width:60%;transform:none}.loading-screen.ls-reactor.hidden .ls-content{transform:none}}.loading-screen.ls-aurora{--ls-accent:var(--ls-accent-override,var(--accent-primary,#8A2BE2));--ls-ink:var(--text-primary,#f4f4f6);--ls-ease:var(--rdx-ease-out,cubic-bezier(0.22,1,0.36,1));--ls-ease-io:var(--rdx-ease-in-out,cubic-bezier(0.65,0,0.35,1));--la-stage:clamp(118px,24vw,178px);flex-direction:column;background-color:var(--bg-dark,#0c0c10)}.ls-aurora .la-aura{position:absolute;top:50%;left:50%;border-radius:50%;filter:blur(100px);pointer-events:none}.ls-aurora .la-aura-1{width:min(70vw,760px);height:min(70vw,760px);background:radial-gradient(circle,color-mix(in srgb,var(--ls-accent) 30%,transparent),transparent 62%);animation:la-breathe 6.5s var(--ls-ease-io) infinite}.ls-aurora .la-aura-2{width:min(46vw,520px);height:min(46vw,520px);background:radial-gradient(circle,color-mix(in srgb,var(--ls-accent) 16%,transparent),transparent 64%);animation:la-breathe 8.5s var(--ls-ease-io) infinite reverse}.ls-aurora .la-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(125% 120% at 50% 50%,transparent 55%,rgba(0,0,0,.55) 100%)}.ls-aurora .la-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:clamp(26px,5vw,46px);transition:transform .7s var(--ls-ease),opacity .6s ease}.loading-screen.ls-aurora.hidden .la-content{transform:scale(1.06)}.ls-aurora .la-stage{position:relative;width:var(--la-stage);height:var(--la-stage);display:grid;place-items:center}.ls-aurora .la-ring{position:absolute;width:100%;height:100%;border-radius:50%;border:1.5px solid color-mix(in srgb,var(--ls-accent) 55%,transparent);box-shadow:0 0 18px color-mix(in srgb,var(--ls-accent) 22%,transparent);opacity:0;animation:la-ripple 3s var(--ls-ease-io) infinite}.ls-aurora .la-ring-2{animation-delay:1s}.ls-aurora .la-ring-3{animation-delay:2s}.ls-aurora .la-glow{position:absolute;inset:0;margin:auto;width:62%;height:62%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--ls-accent) 50%,transparent),transparent 70%);filter:blur(9px);animation:la-pulse 2.6s var(--ls-ease-io) infinite}.ls-aurora .la-logo{position:absolute;inset:0;margin:auto;width:54%;height:54%;object-fit:contain;filter:drop-shadow(0 0 14px color-mix(in srgb,var(--ls-accent) 55%,transparent));animation:la-logo-in .7s var(--ls-ease) both,la-logo-float 3.6s var(--ls-ease-io) .7s infinite}.ls-aurora .la-wordmark{font-family:var(--font-heading,"Orbitron",sans-serif);font-weight:900;text-transform:uppercase;letter-spacing:.05em;font-size:clamp(1.35rem,.95rem + 2.7vw,2.35rem);line-height:1;text-align:center;color:var(--ls-ink);opacity:0;animation:la-rise .8s var(--ls-ease) .35s forwards,la-glow 3.2s var(--ls-ease-io) 1.1s infinite}.ls-aurora .la-meter{position:relative;width:clamp(140px,36vw,240px);height:2px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--ls-accent) 12%,transparent);opacity:0;animation:la-rise .8s var(--ls-ease) .5s forwards}.ls-aurora .la-meter-fill{position:absolute;top:0;left:0;height:100%;width:35%;border-radius:inherit;background:linear-gradient(90deg,transparent,var(--ls-accent),transparent);animation:la-sweep 1.9s var(--ls-ease-io) infinite}.loader-note{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:18px;width:max-content;max-width:min(86vw,360px);padding:0 12px;font-family:var(--font-body,sans-serif);font-size:.82rem;line-height:1.4;text-align:center;color:var(--ls-ink);opacity:0;animation:loader-note-in .4s var(--ls-ease,ease) forwards}@keyframes loader-note-in{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}@keyframes la-breathe{0%,to{transform:translate(-50%,-50%) scale(.92);opacity:.6}50%{transform:translate(-50%,-50%) scale(1.08);opacity:1}}@keyframes la-ripple{0%{transform:scale(.32);opacity:.85}70%{opacity:.12}to{transform:scale(1.3);opacity:0}}@keyframes la-pulse{0%,to{transform:scale(.82);opacity:.85}50%{transform:scale(1.14);opacity:1}}@keyframes la-glow{0%,to{filter:drop-shadow(0 0 2px color-mix(in srgb,var(--ls-accent) 45%,transparent)) drop-shadow(0 10px 30px rgba(0,0,0,.5))}50%{filter:drop-shadow(0 0 12px color-mix(in srgb,var(--ls-accent) 72%,transparent)) drop-shadow(0 10px 30px rgba(0,0,0,.5))}}@keyframes la-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes la-sweep{0%{transform:translateX(-130%)}to{transform:translateX(330%)}}@keyframes la-logo-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes la-logo-float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.03)}}@media (prefers-reduced-motion:reduce){.ls-aurora .la-aura,.ls-aurora .la-glow,.ls-aurora .la-logo,.ls-aurora .la-meter,.ls-aurora .la-meter-fill,.ls-aurora .la-ring,.ls-aurora .la-wordmark{animation:none!important;opacity:1!important}.ls-aurora .la-ring-2,.ls-aurora .la-ring-3{opacity:.35!important}.ls-aurora .la-meter-fill{width:60%;transform:none}.loading-screen.ls-aurora.hidden .la-content{transform:none}}.loading-screen.ls-route.visible{animation:ls-route-reveal .45s var(--rdx-ease-out,cubic-bezier(.22,1,.36,1)) .32s both}@keyframes ls-route-reveal{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.loading-screen.ls-route.visible{animation:none;opacity:1}}