/* ── LUXR Splash Screen ── */

#luxr-splash {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999999;
  background: #0a0a14;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  overflow: hidden;
}

/* Subtle radial glow behind logo */
#luxr-splash::before {
  content: '';
  position: absolute;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(255, 106, 0, 0.12) 0%, transparent 70%);
  border-radius: 50%;
  animation: splashGlow 2s ease-in-out;
}

/* Logo */
#luxr-splash .splash-logo {
  font-family: 'Inter', 'Segoe UI', sans-serif;
  font-size: 3.2rem;
  font-weight: 900;
  letter-spacing: 8px;
  color: #fff;
  position: relative;
  z-index: 1;
  opacity: 0;
  transform: scale(0.85);
  animation: splashLogoIn 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.2s forwards;
}

#luxr-splash .splash-logo span {
  color: #ff6a00;
}

/* Thin loading bar */
#luxr-splash .splash-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, #ff6a00, #ff9a44);
  width: 0;
  animation: splashBar 1.8s cubic-bezier(0.4, 0, 0.2, 1) 0.3s forwards;
}

/* ── Animations ── */

@keyframes splashLogoIn {
  0%   { opacity: 0; transform: scale(0.85); }
  100% { opacity: 1; transform: scale(1); }
}

@keyframes splashGlow {
  0%   { opacity: 0; transform: scale(0.5); }
  50%  { opacity: 1; transform: scale(1); }
  100% { opacity: 0.6; transform: scale(1.2); }
}

@keyframes splashBar {
  0%   { width: 0; }
  100% { width: 100%; }
}

/* Exit animation */
#luxr-splash.splash-exit {
  animation: splashExit 0.5s cubic-bezier(0.4, 0, 1, 1) forwards;
}

@keyframes splashExit {
  0%   { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(1.05); }
}
