/* Acceso SDSYP V2: tarjeta única, centrada y adaptable. */
body.login-page {
  min-height: 100vh !important;
  padding: 24px !important;
  background: linear-gradient(135deg, #eef4f8 0%, #f8fafc 52%, #e6eef5 100%) !important;
}

.login-container {
  display: block !important;
  width: min(460px, 100%) !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
  border: 1px solid #dce5ec;
  border-radius: 18px !important;
  box-shadow: 0 16px 45px rgba(6, 47, 83, .14) !important;
}

.login-left { display: none !important; }

.login-right {
  display: block !important;
  padding: clamp(28px, 7vw, 44px) !important;
  background: #fff !important;
  border-radius: 18px !important;
}

.login-form-container { max-width: none !important; }
.login-header { margin-bottom: 28px !important; }
.login-logo {
  display: block;
  width: min(285px, 88%);
  height: auto;
  max-height: 128px;
  margin: 0 auto 26px;
  object-fit: contain;
}

.login-header h2 {
  color: #062f53 !important;
  font-size: 1.55rem !important;
  font-weight: 700 !important;
}
.login-header p { color: #64748b !important; font-size: .92rem !important; }

.form-group { margin-bottom: 19px !important; }
.form-group label { color: #243649 !important; font-weight: 650 !important; }
.input-wrapper input {
  border: 1px solid #cbd9e4 !important;
  border-radius: 9px !important;
  background: #fbfdff !important;
}
.input-wrapper input:focus {
  border-color: #3d7296 !important;
  box-shadow: 0 0 0 3px rgba(61, 114, 150, .14) !important;
}
.input-wrapper.focused i,
.toggle-password:hover,
.forgot-password,
.signup-link a { color: #062f53 !important; }
.checkbox-container input:checked + .checkmark {
  background: #062f53 !important;
  border-color: #062f53 !important;
}
.login-btn {
  background: #062f53 !important;
  border-radius: 9px !important;
  box-shadow: none !important;
}
.login-btn:hover { background: #0b436e !important; transform: translateY(-1px) !important; }
.forgot-password:hover { color: #0b436e !important; }
.signup-link { margin-top: 4px; line-height: 1.45; }

@media (max-width: 480px) {
  body.login-page { padding: 12px !important; }
  .login-right { padding: 28px 22px !important; }
  .login-logo { width: min(250px, 94%); margin-bottom: 22px; }
  .form-options { align-items: flex-start !important; flex-direction: column; gap: 13px; }
}
