/* ===== Layout Auth ===== */
body.login-page{
  min-height:100vh;
  background:#eef3f7;
  display:grid;              /* centra en ambas direcciones */
  place-items:center;
  padding:24px;
}

/* Card con ancho adaptable por viewport */
.auth-card{
  width:100%;
  /* móvil 360–420, laptop ~520–600, desktop hasta 700 */
  max-width: clamp(360px, 42vw, 700px);
  border:0;
  border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.login-card-body{ padding:28px 24px; }
.login-box-msg{ text-align:center; margin-bottom:18px; }

/* Logo fluido y controlado */
.login-logo img{
  display:block;
  margin:0 auto;
  max-width: clamp(140px, 35vw, 260px);
  height:auto;
}

/* Botones */
.btn-auth{ min-width:140px; }
@media (max-width:576px){
  .btn-auth{ width:100%; margin-bottom:8px; }
}

/* reCAPTCHA responsive */
.recaptcha-wrapper{
  width:100%;
  display:flex;
  justify-content:center;
}
.g-recaptcha{ transform-origin:0 0; }
@media (max-width:380px){
  .recaptcha-wrapper{ overflow:hidden; }
  .g-recaptcha{ transform: scale(.9); }
}

/* Ajuste form-floating con icono a la derecha (si lo usas) */
.form-floating .input-group-text{
  border:0;
  background:transparent;
}
