.vl-loader {
  position:fixed;inset:0;z-index:9999;display:grid;place-items:center;
  overflow:hidden;background:#0d0b13;color:#f5f0ff;isolation:isolate;
  font-family:Inter,"Segoe UI",Arial,sans-serif;text-align:center;
  transition:opacity .32s ease,visibility .32s ease;
  animation:vl-safety 0s 9s forwards;
}
.vl-loader[hidden]{display:none!important}
.vl-loader::before {
  content:"";position:absolute;inset:0;z-index:-1;
  background:radial-gradient(ellipse at 50% 43%,#7331b337,transparent 55%);
}
.vl-loader-grid {
  position:absolute;inset:0;z-index:-1;opacity:.2;
  background-image:linear-gradient(#9272bf1c 1px,transparent 1px),linear-gradient(90deg,#9272bf1c 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(ellipse,black,transparent 68%);
}
.vl-loader-content{width:min(90%,460px);padding:24px 0;animation:vl-arrive .6s ease both}
.vl-loader-orbit{position:relative;width:270px;height:270px;margin:0 auto 26px;display:grid;place-items:center}
.vl-loader-orbit img{width:220px;height:220px;object-fit:contain;filter:drop-shadow(0 0 24px #a947fa42);animation:vl-breathe 2.4s ease-in-out infinite}
.vl-loader-ring{position:absolute;inset:0;border:1px solid #8b5ab32f;border-top-color:#be82ff;border-right-color:#be82ff75;border-radius:50%;animation:vl-orbit 2.2s linear infinite}
.vl-loader-ring::after{content:"";position:absolute;top:35px;right:34px;width:5px;height:5px;border-radius:50%;background:#e1baff;box-shadow:0 0 14px #a044ff}
.vl-loader-ring-inner{inset:10px;border-color:#9963d017;border-bottom-color:#8e4ecd80;animation-direction:reverse;animation-duration:3.4s}
.vl-loader-ring-inner::after{display:none}
.vl-loader-wordmark{font-size:31px;line-height:1.2;font-weight:800;letter-spacing:-1px;margin:0 0 10px;color:#f4effb}
.vl-loader-wordmark span{color:#b88aef}
.vl-loader-tagline{font-size:9px;font-weight:600;letter-spacing:3px;color:#ac9cbd;margin:0 0 30px}
.vl-loader-track{width:140px;height:2px;background:#2c213a;border-radius:2px;margin:0 auto 15px;overflow:hidden}
.vl-loader-track span{display:block;width:55%;height:100%;background:linear-gradient(90deg,transparent,#c290ff,transparent);animation:vl-track 1.3s ease-in-out infinite}
.vl-loader-caption{font-size:11px;color:#8f7f9f;letter-spacing:.2px;margin:0}
.vl-loader-signature{position:absolute;bottom:max(28px,env(safe-area-inset-bottom));font-size:8px;letter-spacing:3.5px;color:#655773}
.vl-loader-leaving{opacity:0;visibility:hidden;pointer-events:none}
@keyframes vl-orbit{to{transform:rotate(360deg)}}
@keyframes vl-breathe{50%{transform:scale(1.025);filter:drop-shadow(0 0 32px #a947fa60)}}
@keyframes vl-track{from{transform:translateX(-100%)}to{transform:translateX(280%)}}
@keyframes vl-arrive{from{opacity:0;transform:translateY(9px) scale(.97)}to{opacity:1;transform:none}}
@keyframes vl-safety{to{visibility:hidden;pointer-events:none}}
@media(max-width:480px){.vl-loader-orbit{width:230px;height:230px}.vl-loader-orbit img{width:188px;height:188px}.vl-loader-ring::after{top:29px;right:29px}.vl-loader-wordmark{font-size:28px}.vl-loader-tagline{font-size:8px;letter-spacing:2.3px}}
@media(max-height:520px){.vl-loader-orbit{width:160px;height:160px;margin-bottom:12px}.vl-loader-orbit img{width:130px;height:130px}.vl-loader-ring::after{display:none}.vl-loader-tagline{margin-bottom:16px}.vl-loader-signature{display:none}}
@media(prefers-reduced-motion:reduce){.vl-loader,.vl-loader *{animation:none!important;transition:none!important}.vl-loader-track span{width:100%;background:#aa7bd9}}
