/*
 * CINEMATIC LOADER
 * 3.5s sequence
 */

#elite-loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: #030508;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  will-change: transform, opacity;
}

.loader-grid {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 200vw;
  height: 200vh;
  transform: translate(-50%, -50%);
  background-image: 
    linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
  background-size: 100px 100px;
  background-position: center center;
  opacity: 0;
  z-index: 1;
}

.loader-particles {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

.loader-particle {
  position: absolute;
  width: 4px;
  height: 4px;
  background: var(--accent-primary, #4facfe);
  border-radius: 50%;
  box-shadow: 0 0 15px var(--accent-primary, #4facfe);
  opacity: 0;
  transform: scale(0);
}

.loader-logo-container {
  position: relative;
  z-index: 3;
  overflow: hidden;
  opacity: 0;
  transform: translateY(20px);
}

.loader-logo {
  height: 80px;
  width: auto;
  filter: brightness(0) invert(1);
}

.loader-light-sweep {
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.8), transparent);
  transform: skewX(-20deg);
  opacity: 0;
}

.loader-typography {
  position: absolute;
  bottom: 10vh;
  font-family: var(--font-mono, monospace);
  font-size: 0.8rem;
  color: var(--text-muted, #888);
  letter-spacing: 3px;
  text-transform: uppercase;
  opacity: 0;
  z-index: 3;
}

/* Nav Audio Toggle */
.nav-actions {
  display: flex;
  align-items: center;
  gap: 2rem;
}

#audio-toggle {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.2);
  color: var(--text-pure);
  font-family: var(--font-mono, monospace);
  font-size: 0.75rem;
  letter-spacing: 1px;
  padding: 0.5rem 1rem;
  border-radius: 20px;
  cursor: pointer;
  transition: all 0.3s;
}

#audio-toggle:hover {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.5);
}

#audio-toggle.audio-on {
  border-color: var(--accent-primary);
  box-shadow: 0 0 15px rgba(79, 172, 254, 0.3);
}
