/* =========================================
   ESTILO NASHWA 2026 - ULTIMATE GOLD GLASS
   ========================================= */
:root {
  --azul-vibrante: #1e4ea1;
  --dorado-premium: #d4af37;
  --dorado-oscuro: #b8941f;
  --vidrio-dorado: rgba(212, 175, 55, 0.15);
  --vidrio-dorado-borde: rgba(212, 175, 55, 0.4);
}

html, body {
  height: 100%;
  margin: 0;
  overflow: hidden;
  font-family: 'Montserrat', sans-serif;
  background-color: var(--azul-vibrante);
}

/* Partículas Doradas con Logo */
#particles-js {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 1; /* Detrás del formulario */
  pointer-events: none;
  filter: hue-rotate(0deg) saturate(1.3);
}

/* Fondo con iconos educativos */
.bg {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  z-index: 0;
  background: 
    linear-gradient(rgba(30, 78, 161, 0.7), rgba(10, 25, 47, 0.8)),
    url('../img/colegioGLENFONDO'); 
  background-size: cover;
  background-position: center;
}

/* Aurora Boreal Dorada Mejorada */
.bg::after {
  content: "";
  position: absolute;
  top: -70%; left: -70%;
  width: 240%; height: 240%;
  background: radial-gradient(
    circle at 50% 50%, 
    rgba(249, 226, 151, 0.28) 0%, 
    rgba(212, 175, 55, 0.15) 45%, 
    transparent 80%
  );
  filter: blur(120px);
  animation: aurora-move 20s infinite alternate ease-in-out;
  pointer-events: none;
}

@keyframes aurora-move {
  0% { transform: translate(-10%, -10%) rotate(0deg); opacity: 0.5; }
  50% { transform: translate(12%, 8%) rotate(10deg); opacity: 0.8; }
  100% { transform: translate(-8%, 15%) rotate(-10deg); opacity: 0.6; }
}

/* Fade-In Animación */
.fade-in-element {
  opacity: 0;
  transition: opacity 1.2s ease-in-out;
}

/* Caja Vidrio DORADO */
#login {
  position: relative;
  z-index: 2; /* Por encima de las partículas */
  display: grid;
  place-items: center;
  height: 100dvh;
}

#contin {
  /* Efecto vidrio dorado multicapa */
  background: linear-gradient(
    135deg,
    rgba(212, 175, 55, 0.9) 0%,
    rgba(212, 175, 55, 0.7) 50%,
    rgba(212, 175, 55, 0.5) 100%
  );
  backdrop-filter: blur(30px) saturate(180%);
  -webkit-backdrop-filter: blur(30px) saturate(180%);
  
  width:90%;
  border-radius: 35px;
  padding: 45px 25px;
  
  /* Borde dorado con brillo */
  border: 2px solid var(--dorado-premium);
  box-shadow: 
    0 0 30px rgba(212, 175, 55, 0.4),
    0 30px 60px rgba(0, 0, 0, 0.4),
    inset 0 0 40px rgba(212, 175, 55, 0.08);
  
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  
  position: relative;
  overflow: hidden;
}

/* Efecto de brillo interno */
#contin::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(
    circle,
    rgba(212, 175, 55, 0.15) 0%,
    transparent 70%
  );
  animation: inner-glow 8s infinite alternate ease-in-out;
  pointer-events: none;
}

@keyframes inner-glow {
  0% { transform: translate(0, 0) scale(1); opacity: 0.4; }
  100% { transform: translate(10%, 10%) scale(1.1); opacity: 0.7; }
}

/* Reflejos de vidrio dorado */
#contin::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0.2) 0%,
    transparent 40%,
    transparent 60%,
    rgba(212, 175, 55, 0.15) 100%
  );
  pointer-events: none;
  border-radius: 35px;
}

#contin > * {
  position: relative;
  z-index: 1;
}

#contin > img {
  height: clamp(60px, 15vw, 85px);
  filter: 
    drop-shadow(0 0 15px rgba(212, 175, 55, 0.8))
    drop-shadow(0 0 30px rgba(212, 175, 55, 0.4))
    brightness(1.3)
    saturate(1.2);
  margin-bottom: 5px;
  animation: logo-pulse 3s infinite ease-in-out;
}

@keyframes logo-pulse {
  0%, 100% { 
    transform: scale(1); 
    filter: 
      drop-shadow(0 0 15px rgba(212, 175, 55, 0.8))
      drop-shadow(0 0 30px rgba(212, 175, 55, 0.4))
      brightness(1.3); 
  }
  50% { 
    transform: scale(1.05); 
    filter: 
      drop-shadow(0 0 25px rgba(212, 175, 55, 1))
      drop-shadow(0 0 40px rgba(212, 175, 55, 0.6))
      brightness(1.4); 
  }
}

/* Inputs y Botones */
.intxt {
  width: 100%;
  padding: 16px;
  border-radius: 12px;
  border: 1.5px solid rgba(212, 175, 55, 0.5);
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(10px);
  color: #fff;
  font-size: 15px;
  outline: none;
  transition: all 0.3s ease;
  box-shadow: inset 0 0 15px rgba(212, 175, 55, 0.05);
}

.intxt::placeholder {
  color: rgba(255, 255, 255, 0.6);
}

.intxt:focus {
  border-color: var(--dorado-premium);
  background: rgba(255, 255, 255, 0.18);
  box-shadow: 
    0 0 20px rgba(212, 175, 55, 0.3),
    inset 0 0 20px rgba(212, 175, 55, 0.1);
}

.intxtb {
  width: 100%;
  padding: 17px;
  border-radius: 12px;
  border: none;
  background: linear-gradient(135deg, var(--dorado-premium) 0%, #b38a2d 100%);
  color: #0a192f;
  font-family: 'Cinzel', serif;
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 
    0 5px 20px rgba(212, 175, 55, 0.4),
    0 0 30px rgba(212, 175, 55, 0.2);
  position: relative;
  overflow: hidden;
}

.intxtb::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    45deg,
    transparent 30%,
    rgba(255, 255, 255, 0.3) 50%,
    transparent 70%
  );
  transform: rotate(45deg);
  transition: all 0.5s ease;
}

.intxtb:hover {
  transform: translateY(-2px);
  box-shadow: 
    0 8px 25px rgba(212, 175, 55, 0.5),
    0 0 40px rgba(212, 175, 55, 0.3);
}

.intxtb:hover::before {
  left: 100%;
}

.intxtb:active {
  transform: translateY(0);
}

/* Loader */
#loader-wrapper {
  position: fixed;
  top: 0; left: 0; width: 100%; height: 100%;
  background: linear-gradient(135deg, #0a192f 0%, #1e4ea1 100%);
  display: flex; 
  justify-content: center; 
  align-items: center;
  z-index: 9999; 
  flex-direction: column; 
  transition: opacity 0.5s ease;
}

#loader-wrapper.active { 
  display: flex !important; 
  opacity: 1 !important; 
}

.loader-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 25px;
}

.loader-logo-gold { 
  width: 110px; 
  animation: pulse-loader 2.5s infinite ease-in-out;
  filter: 
    drop-shadow(0 0 20px rgba(212, 175, 55, 0.8))
    drop-shadow(0 0 40px rgba(212, 175, 55, 0.4));
}

@keyframes pulse-loader { 
  0%, 100% { 
    transform: scale(1); 
    filter: 
      drop-shadow(0 0 20px rgba(212, 175, 55, 0.8))
      brightness(1); 
  } 
  50% { 
    transform: scale(1.15); 
    filter: 
      drop-shadow(0 0 40px rgba(212, 175, 55, 1))
      brightness(1.4); 
  } 
}

.loader-text {
  color: var(--dorado-premium);
  font-family: 'Cinzel', serif;
  font-size: 18px;
  font-weight: 600;
  text-shadow: 0 0 10px rgba(212, 175, 55, 0.5);
  animation: text-glow 2s infinite ease-in-out;
}

@keyframes text-glow {
  0%, 100% { opacity: 0.8; }
  50% { opacity: 1; text-shadow: 0 0 20px rgba(212, 175, 55, 0.8); }
}

#nomcol, #nomcol2 { 
  display: none; 
}

.pwa-btn { 
  width: 100%; 
  background: rgba(255, 0, 0, 0.2);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(212, 175, 55, 0.5);
  color: #fff; 
  padding: 12px; 
  border-radius: 12px; 
  cursor: pointer; 
  margin-top: 10px;
  font-size: 14px;
  transition: all 0.3s ease;
}

.pwa-btn:hover {
  background: rgba(212, 175, 55, 0.15);
  border-color: var(--dorado-premium);
  box-shadow: 0 0 15px rgba(212, 175, 55, 0.3);
}
.pwa-btn {
  font-family: Montserrat, 'Segoe UI Emoji', 'Apple Color Emoji', sans-serif;
}


/* Responsive */
@media (max-width: 600px) {
  #contin {
    width: 70%;
  }
}

  .loader-logo-gold {
    width: 90px;
  }
  
  .loader-text {
    font-size: 16px;
  }
}
