.splash-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, var(--theme-accent) 0%, rgba(var(--theme-accent-rgb), 0.92) 100%);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10000;
  animation: fadeOut 1.2s cubic-bezier(0.6, 0.05, 0.1, 0.9) forwards;
  animation-delay: 1.2s;
  transition: background-color var(--transition-normal) ease;
}

body.dark-mode .splash-screen {
  background: linear-gradient(135deg, var(--theme-dark-accent) 0%, rgba(var(--theme-dark-accent-rgb), 0.92) 100%);
}

.splash-logo {
  width: 50%;
  max-width: 280px;
  animation: splashIntro 1.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: transform;
  filter: drop-shadow(0 8px 24px rgba(0, 0, 0, 0.3));
}

@keyframes fadeOut {
  0% { opacity: 1; }
  100% { opacity: 0; visibility: hidden; }
}

@keyframes splashIntro {
  0% { transform: scale(0.7); opacity: 0; }
  40% { transform: scale(1.08); opacity: 1; }
  60% { transform: scale(0.96); opacity: 1; }
  80% { transform: scale(1.02); opacity: 1; }
  100% { transform: scale(1); opacity: 1; }
}