/* ======================
   CREDITOS
====================== */

.creditos-diseno {
  margin-top: 40px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 14px;
}

.creditos-texto {
  font-size: 14px;
  color: #555;
  white-space: nowrap;
}

/* ======================
   LOGO SCAN
====================== */

.logo-scan {
  position: relative;
  width: 90px;
  height: 90px;
  overflow: hidden;
}

.logo-scan img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
  transform: scale(0.96);
}

/* LINEA DE ESCANEO */
.scan-line {
  position: absolute;
  top: -100%;
  left: 0;
  width: 100%;
  height: 120%;
  background: linear-gradient(
    to bottom,
    transparent,
    rgba(120, 0, 255, 0.35),
    rgba(255, 0, 180, 0.35),
    transparent
  );
  filter: blur(6px);
  opacity: 0;
}

/* ======================
   ACTIVACION
====================== */

.logo-scan.active img {
  animation: revelar-logo 1.2s ease forwards;
}

.logo-scan.active .scan-line {
  animation: scan 1.2s ease forwards;
}

/* ======================
   ANIMACIONES
====================== */

@keyframes scan {
  0% {
    top: -120%;
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    top: 120%;
    opacity: 0;
  }
}

@keyframes revelar-logo {
  0% {
    opacity: 0;
    filter: blur(6px);
  }
  40% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
}