
/* ================= GLASS CARD ================= */
.recuperar-container {
  width: min(420px, 94vw);
  max-height: 85vh;
  padding: 30px;
  border-radius: 26px;

  background: rgba(200,230,255,.18);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);

  box-shadow:
    0 0 45px rgba(0,180,255,.35),
    inset 0 0 0 1px rgba(255,255,255,.25);

  display: flex;
  flex-direction: column;
  gap: 18px;

  overflow: hidden;
  z-index: 3;
}

/* ================= BLOQUES ================= */
.bloque {
  width: 100%;
  padding: 20px;
  border-radius: 20px;

  background: rgba(255,255,255,.65);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.4);

  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* ================= INPUT ================= */
label {
  font-size: .85rem;
  opacity: .9;
}

input {
  width: 100%;
  padding: 14px;
  border-radius: 14px;
  border: none;
  outline: none;
  background: rgba(255,255,255,.85);
  font-size: .9rem;
}

/* ================= BOTON ================= */
button {
  padding: 14px;
  border-radius: 18px;
  border: none;
  cursor: pointer;

  background: linear-gradient(135deg, rgba(0,180,255,.85), rgba(0,120,255,.85));
  color: #000;
  font-weight: 600;

  box-shadow: 0 0 20px rgba(0,180,255,.6);
  transition: .25s;
}

button:hover {
  transform: translateY(-2px);
  box-shadow: 0 0 30px rgba(0,180,255,.9);
}

/* ================= RESULTADO ================= */
.resultado {
  display: none;
  animation: aparecer .4s ease forwards;
}

@keyframes aparecer {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.password-box {
  font-family: monospace;
  background: rgba(0,0,0,.08);
  padding: 12px;
  border-radius: 12px;
  text-align: center;
  font-size: 1rem;
  letter-spacing: 1px;
}






.landscape .recuperar-container {
  transform: scale(.95);
}
