
/* === ESTILO BASE === */
body {
  background-color: #000;
  color: #33ff33;
  font-family: 'Courier New', monospace;
  padding: 2rem;
  animation: screenShake 6s infinite ease-in-out;
  transform-origin: center;
}

.terminal {
  max-width: 800px;
  margin: auto;
  background: #111;
  border: 1px solid #33ff33;
  padding: 2rem;
}

.glitch {
  animation: flicker 1s infinite;
}

.menu a {
  color: #33ff33;
  text-decoration: none;
  display: block;
  margin: 0.5rem 0;
}

.quote {
  font-style: italic;
}

/* === ANIMACIONES GLOBALES === */
@keyframes flicker {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.3; }
}

@keyframes blink {
  50% {
    opacity: 0.3;
  }
}

@keyframes staticNoise {
  0% { background-position: 0 0; }
  100% { background-position: 0 100px; }
}

@keyframes screenShake {
  0%   { transform: translate(0px, 0px); }
  25%  { transform: translate(0.5px, -0.5px); }
  50%  { transform: translate(-0.5px, 0.5px); }
  75%  { transform: translate(0.5px, 0.5px); }
  100% { transform: translate(0px, 0px); }
}

/* === CONTADOR === */
#contador {
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 9999;
  color: #33ff33;
  font-family: 'Courier New', monospace;
  font-size: 0.8rem;
  text-align: center;
  opacity: 0.9;
}

.parpadeo {
  animation: blink 1.2s step-start infinite;
}

/* === FOOTER === */
#footer {
  text-align: center;
  color: #33ff33;
  font-family: 'Courier New', monospace;
  font-size: 0.75rem;
  margin-top: 4rem;
  padding: 1rem;
  border-top: 1px dashed #33ff33;
  opacity: 0.6;
}

#footer a {
  color: #33ff33;
  text-decoration: none;
  border-bottom: 1px dotted #33ff33;
}

#footer a:hover {
  color: #ff4d4d;
  border-color: #ff4d4d;
}

/* === AUDIO PLAYER === */
#audioPlayer {
  position: fixed;
  bottom: 50px;
  left: 10px;
  font-family: 'Courier New', monospace;
  font-size: 0.8rem;
  z-index: 9999;
}

#audioPlayer button {
  background-color: black;
  color: #33ff33;
  border: 1px dashed #33ff33;
  padding: 4px 8px;
  cursor: pointer;
  font-family: inherit;
}

#audioPlayer button:hover {
  color: #ff4d4d;
  border-color: #ff4d4d;
}

/* === VHS OVERLAY === */
.vhs-overlay {
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image:
    repeating-linear-gradient(0deg, rgba(255,255,255,0.04) 0px, rgba(255,255,255,0.04) 1px, rgba(0,0,0,0.03) 1px, rgba(0,0,0,0.03) 2px),
    repeating-linear-gradient(90deg, rgba(255,255,255,0.02) 0px, rgba(0,0,0,0.02) 1px);
  animation: staticNoise 0.8s steps(2) infinite;
  z-index: 9997;
}
/* --- TEMBLOR MÁS NOTORIO --- */
@keyframes screenShake {
  0%   { transform: translate(0px, 0px); }
  20%  { transform: translate(1px, -1px); }
  40%  { transform: translate(-1px, 1px); }
  60%  { transform: translate(1px, 1px); }
  80%  { transform: translate(-1px, -1px); }
  100% { transform: translate(0px, 0px); }
}

/* --- LÍNEAS MÁS VISIBLES --- */
.vhs-overlay {
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image:
    repeating-linear-gradient(0deg, rgba(255,255,255,0.07) 0px, rgba(255,255,255,0.07) 1px, rgba(0,0,0,0.04) 1px, rgba(0,0,0,0.04) 2px),
    repeating-linear-gradient(90deg, rgba(255,255,255,0.04) 0px, rgba(0,0,0,0.04) 1px);
  animation: staticNoise 0.6s steps(2) infinite;
  z-index: 9997;
}

/* --- BANDA BLANCA VHS (interferencia aleatoria) --- */
.vhs-scanline {
  position: fixed;
  top: -10%;
  left: 0;
  width: 100%;
  height: 5%;
  background: rgba(255, 255, 255, 0.1); /* más visible */
  animation: scanlineMove 3s infinite ease-in-out;
  z-index: 9998;
  pointer-events: none;
}

@keyframes scanlineMove {
  0%   { top: -10%; opacity: 0; }
  10%  { opacity: 0.05; }
  30%  { top: 40%; opacity: 0.1; }
  50%  { top: 100%; opacity: 0.06; }
  60%  { opacity: 0; }
  100% { top: -10%; opacity: 0; }
}

@keyframes screenFreakout {
  0%   { transform: translate(0px, 0px) rotate(0deg); filter: brightness(1); }
  10%  { transform: translate(2px, -2px) rotate(0.5deg); filter: brightness(1.2); }
  20%  { transform: translate(-3px, 3px) rotate(-0.5deg); filter: brightness(0.8); }
  30%  { transform: translate(4px, -4px) rotate(1deg); filter: brightness(1.5); }
  40%  { transform: translate(-4px, 4px) rotate(-1deg); filter: brightness(0.7); }
  50%  { transform: translate(2px, -2px) rotate(0.5deg); filter: brightness(1.2); }
  60%  { transform: translate(-2px, 2px) rotate(-0.3deg); filter: brightness(0.9); }
  70%  { transform: translate(1px, -1px) rotate(0.2deg); filter: brightness(1); }
  100% { transform: translate(0px, 0px) rotate(0deg); filter: brightness(1); }
}

.freakout {
  animation: screenFreakout 0.6s ease-in-out;
}
.kronenko-link {
  position: relative;
  display: inline-block;
  color: #33ff33;
  text-decoration: none;
  cursor: pointer;
}

.tooltip-kronenko {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  bottom: 120%;
  left: 50%;
  transform: translateX(-50%);
  background-color: black;
  color: #ff4d4d;
  border: 1px dashed #ff4d4d;
  text-align: center;
  padding: 6px;
  font-size: 0.7rem;
  font-family: 'Courier New', monospace;
  white-space: nowrap;
  z-index: 9999;
  transition: opacity 0.3s ease;
}

/* ESTA ES LA CLAVE */
.kronenko-link:hover .tooltip-kronenko {
  visibility: visible;
  opacity: 1;
}

#transicion-usuario {
  position: fixed;
  top: 0; left: 0;
  width: 100vw;
  height: 100vh;
  background: black;
  color: #33ff33;
  z-index: 10001;
  font-family: 'Courier New', monospace;
  display: none;
  justify-content: center;
  align-items: center;
}

.pantalla-negra {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

    #texto-transicion {
  font-size: 1.5rem;
  margin-bottom: 1rem;
  white-space: nowrap;
  overflow: hidden;
  border-right: 2px solid #33ff33;
  width: 0;
  animation: escribir 2s steps(30, end) forwards, glitchLinea 1s infinite;
}

@keyframes escribir {
  from { width: 0; }
  to { width: 100%; }
}

@keyframes glitchLinea {
  0% { text-shadow: 1px 0 red, -1px 0 blue; }
  50% { text-shadow: -1px 0 red, 1px 0 blue; }
  100% { text-shadow: 1px 0 red, -1px 0 blue; }
}

    .barra-carga {
      width: 80%;
      height: 10px;
      border: 1px solid #33ff33;
      background-color: #111;
      margin-bottom: 1rem;
    }

    .progreso {
      height: 100%;
      width: 0%;
      background-color: #33ff33;
      animation: llenarBarra 3s ease-in-out forwards;
    }

    @keyframes llenarBarra {
      from { width: 0%; }
      to { width: 100%; }
    }

    #apagadoVideo {
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      object-fit: cover;
      z-index: 10002;
      display: none;
    }


