/* Advanced futuristic effects */

/* Holographic scanline overlay */
#content-wrapper::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: repeating-linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.15) 0px,
    transparent 1px,
    transparent 2px,
    rgba(0, 0, 0, 0.15) 3px
  );
  pointer-events: none;
  z-index: 9999;
  opacity: 0.3;
  animation: scanlineMove 8s linear infinite;
}

@keyframes scanlineMove {
  0% { transform: translateY(0); }
  100% { transform: translateY(10px); }
}

/* Chromatic aberration effect on hover */
.profile-name::after {
  content: attr(data-name);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
  color: #ff00ff;
  text-shadow: 2px 0 #00ffff, -2px 0 #ff00ff;
  pointer-events: none;
}

.profile-name:hover::after {
  opacity: 0.3;
}

/* Glitch effect for logo text */
#logo-text {
  position: relative;
}

#logo-text::before,
#logo-text::after {
  content: 'versus.li';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
}

#logo-text::before {
  animation: glitch1 3s infinite;
  color: #00ffff;
  z-index: -1;
}

#logo-text::after {
  animation: glitch2 3s infinite;
  color: #ff00ff;
  z-index: -2;
}

@keyframes glitch1 {
  0%, 90%, 100% {
    opacity: 0;
    transform: translate(0);
  }
  91% {
    opacity: 0.8;
    transform: translate(-2px, 2px);
  }
  92% {
    opacity: 0;
  }
  93% {
    opacity: 0.8;
    transform: translate(2px, -2px);
  }
  94% {
    opacity: 0;
  }
}

@keyframes glitch2 {
  0%, 85%, 100% {
    opacity: 0;
    transform: translate(0);
  }
  86% {
    opacity: 0.8;
    transform: translate(2px, -2px);
  }
  87% {
    opacity: 0;
  }
  88% {
    opacity: 0.8;
    transform: translate(-2px, 2px);
  }
  89% {
    opacity: 0;
  }
}

/* Neon border animation */
@keyframes neonBorder {
  0%, 100% {
    box-shadow: 
      0 0 5px rgba(0, 255, 255, 0.5),
      0 0 10px rgba(0, 255, 255, 0.5),
      0 0 20px rgba(0, 255, 255, 0.5),
      inset 0 0 10px rgba(0, 255, 255, 0.2);
  }
  50% {
    box-shadow: 
      0 0 10px rgba(255, 0, 255, 0.5),
      0 0 20px rgba(255, 0, 255, 0.5),
      0 0 40px rgba(255, 0, 255, 0.5),
      inset 0 0 20px rgba(255, 0, 255, 0.2);
  }
}

/* Holographic effect */
.holographic {
  position: relative;
  overflow: hidden;
}

.holographic::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    45deg,
    transparent 30%,
    rgba(0, 255, 255, 0.1) 50%,
    transparent 70%
  );
  animation: holoRotate 4s linear infinite;
  pointer-events: none;
}

@keyframes holoRotate {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* Digital rain effect for background */
@keyframes digitalRain {
  0% {
    transform: translateY(-100%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    transform: translateY(100vh);
    opacity: 0;
  }
}

/* Pulsing glow effect */
@keyframes pulsingGlow {
  0%, 100% {
    filter: drop-shadow(0 0 5px rgba(0, 255, 255, 0.5))
            drop-shadow(0 0 10px rgba(0, 255, 255, 0.3));
  }
  50% {
    filter: drop-shadow(0 0 20px rgba(255, 0, 255, 0.8))
            drop-shadow(0 0 40px rgba(255, 0, 255, 0.5));
  }
}

/* Cyberpunk text effect */
.cyber-text {
  position: relative;
  display: inline-block;
}

.cyber-text::before {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  color: #00ffff;
  overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 100% 45%, 0 45%);
  animation: cyberGlitch 2s infinite;
}

@keyframes cyberGlitch {
  0%, 90%, 100% {
    transform: translate(0);
  }
  92% {
    transform: translate(-2px, 0);
  }
  94% {
    transform: translate(2px, 0);
  }
  96% {
    transform: translate(-1px, 0);
  }
  98% {
    transform: translate(1px, 0);
  }
}

/* Energy field effect */
@keyframes energyField {
  0%, 100% {
    box-shadow: 
      0 0 10px rgba(0, 255, 255, 0.4),
      0 0 20px rgba(0, 255, 255, 0.3),
      0 0 30px rgba(0, 255, 255, 0.2),
      inset 0 0 10px rgba(0, 255, 255, 0.1);
  }
  25% {
    box-shadow: 
      0 0 15px rgba(255, 0, 255, 0.4),
      0 0 30px rgba(255, 0, 255, 0.3),
      0 0 45px rgba(255, 0, 255, 0.2),
      inset 0 0 15px rgba(255, 0, 255, 0.1);
  }
  50% {
    box-shadow: 
      0 0 20px rgba(0, 255, 255, 0.5),
      0 0 40px rgba(0, 255, 255, 0.4),
      0 0 60px rgba(0, 255, 255, 0.3),
      inset 0 0 20px rgba(0, 255, 255, 0.2);
  }
  75% {
    box-shadow: 
      0 0 15px rgba(255, 0, 255, 0.4),
      0 0 30px rgba(255, 0, 255, 0.3),
      0 0 45px rgba(255, 0, 255, 0.2),
      inset 0 0 15px rgba(255, 0, 255, 0.1);
  }
}
