/* ===================================================
   ESTILOS GENERALES PARA PÁGINAS DE AUTENTICACIÓN
   (Login, Registro, Olvidé mi contraseña, Restablecer)
   =================================================== */

/* Body y contenedor principal */
body {
    background-color: #f5f5f5;
}

.login-page {
    min-height: 100vh;
}

/* ========== LADO IZQUIERDO (Formulario) ========== */
.login-left {
    background-color: #ffffff;
}

.login-left-inner {
    max-width: 520px;
    width: 100%;
}

/* Logo */
.login-logo img {
    max-height: 80px;
}

/* Títulos */
.login-title {
    font-size: 1.8rem;
    font-weight: 700;
    color: #0F6574;
}

.login-subtitle {
    font-size: 1.05rem;
    font-weight: 500;
    margin-bottom: .75rem;
}

/* Formularios */
.form-label {
    font-size: .85rem;
    font-weight: 500;
}

.form-control {
    border-radius: 999px;
    padding-left: 1rem;
    padding-right: 1rem;
}

/* Botones */
.btn-primary,
.btn-login {
    border-radius: 999px;
    font-weight: 600;
    padding: .6rem 1rem;
}

/* Enlaces pequeños */
.small-link {
    font-size: .9rem;
    text-decoration: none;
}

/* ========== ESTILOS ESPECÍFICOS DE LOGIN ========== */
/* Wrapper para contraseña con toggle */
.password-wrapper {
    position: relative;
}

.password-toggle {
    position: absolute;
    right: 0.9rem;
    top: 70%;
    transform: translateY(-50%);
    border: none;
    background: transparent;
    cursor: pointer;
}

/* Ajuste para inputs con botón toggle */
.password-wrapper .form-control {
    padding-right: 2.5rem;
}

/* ========== LADO DERECHO (Imagen de fondo) ========== */
.login-right {
    position: relative;
    background-image: url("../img/bg-login-public.png");
    background-size: cover;
    background-position: center;
    min-height: 100vh;
}

/* Overlay oscuro sobre la imagen * /
.login-right-overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top, rgba(0,0,0,.2), rgba(0,0,0,.7));
}*/

/* Contenido sobre el overlay */
.login-right-content {
    position: relative;
    z-index: 2;
}

.login-right-logo img {
    max-height: 80px;
}

.login-right-text-main {
    font-size: 1rem;
    font-weight: 600;
}

.login-right-text-strong {
    font-size: 1.2rem;
    font-weight: 700;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 991.98px) {
    .login-right {
        display: none;
    }
    
    .login-left-inner {
        max-width: 100%;
    }
}

/* Ajuste para dispositivos más pequeños */
@media (max-width: 575.98px) {
    .login-title {
        font-size: 1.5rem;
    }
    
    .login-subtitle {
        font-size: 0.95rem;
    }
}