body {
    font-family: 'Roboto', sans-serif;
    background-color: #f8f9fa;
}

.orli-background-color {
    background-color: #f1f1f0;
}

.login-form {
    max-width: 380px;
    width: 100%;
}

/* 1. Bienvenido a ORLI STORE */
.login-form .title-main {
    font-size: 1.6rem; 
    font-family: 'Roboto', sans-serif;
    font-weight: 500; 
    color: #2e2e2e !important;
    margin-bottom: 0.5rem;
}

/* 2. Soluciones inteligentes... */
.login-form .title-sub {
    font-size: 1.05rem; 
    font-family: 'Roboto', sans-serif;
    font-weight: 500; 
    color: #b4b4b4 !important;
    margin-bottom: 2rem; 
}

/* 3. Correo y contraseña (Labels) */
.form-label.label-main {
    font-size: 1.15rem; 
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    color: #707070 !important;
    margin-bottom: 0.5rem;
}

/* Campos de texto (Input fields) */
.form-control {
    border-radius: 0.3rem;
    border: 2px solid #ced4da; 
    padding: 0.85rem 1rem; 
    font-size: 1.1rem; 
    box-shadow: none;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
}

.form-control:focus {
    border-color: #a0a0a0;
    border-width: 2px;
    box-shadow: 0 0 0 0.15rem rgba(108, 117, 125, 0.25);
}

/* 4. Placeholders */
.form-control::placeholder {
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    color: #b8b8b8;
    opacity: 1; 
}

/* Botón Ingresar */
.btn-danger {
    background-color: #dc3545;
    border-color: #dc3545;
    border-radius: 0.3rem;
    padding: 0.8rem 1.25rem;
    font-size: 1.15rem;
    font-weight: 600;
}

.btn-danger:hover {
    background-color: #c82333;
    border-color: #bd2130;
}

.password-toggle {
    position: absolute;
    right: 15px;
    top: 50%; 
    transform: translateY(10%); 
    cursor: pointer;
    color: #b8b8b8; 
    font-size: 1.15rem; 
}
.password-new-toggle {
    position: relative;
    right: -45%;
    top: -40px; 
    transform: translateY(10%); 
    cursor: pointer;
    color: #b8b8b8; 
    font-size: 1.15rem; 
}

/* 5. Recordar cuenta y olvidé contraseña */
.helper-text {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 500; 
    color: #b8b8b8 !important; 
    font-size: 1rem; 
}

/* Ajustes menores */
.form-check-input {
    width: 1.3em; 
    height: 1.3em;
    margin-top: 0.15em;
    border: 1px solid #ced4da;
}

a.helper-text {
    color: #b8b8b8 !important;
}
a.helper-text:hover {
    color: #a0a0a0 !important;
}


.footer {
    background-color: #f8f9fa;
    color: #6c757d !important;
    font-family: 'Roboto', sans-serif;
}

.orli-logo {
    max-width: 40%;
    height: auto;
}

/* --- ESTILOS ESPECÍFICOS DEL MODAL (POPUP) --- */

.modal-orli {
    border-radius: 0.5rem;
    padding: 3.5rem !important; /* Más padding para hacerlo lucir mejor */
}

.modal-orli-logo {
    max-width: 35%; /* Ajuste por el modal más grande */
    margin-bottom: 2.5rem;
}

.modal-title-main {
    font-family: 'Roboto', sans-serif;
    font-weight: 500; 
    color: #2e2e2e;
    font-size: 1.8rem; /* Aumento sutil del título */
    margin-bottom: 1.5rem;
}

.modal-description {
    font-family: 'Roboto', sans-serif;
    font-weight: 400; 
    color: #707070;
    font-size: 1.1rem; /* Aumento sutil de la descripción */
    line-height: 1.5;
    max-width: 85%; 
    margin: 0 auto 2.5rem auto; 
}

/* Estilo para el botón Enviar Enlace */
.btn-reset-link {
    background-color: #dc3545;
    border-color: #dc3545;
    border-radius: 0.3rem;
    padding: 0.8rem 1.25rem;
    font-size: 1.15rem;
    font-weight: 600;
    width: 100%;
}

/* Mensaje de Confirmación (¡Hemos enviado...) - ESTILO AZUL SOLICITADO */
.confirmation-message.blue-confirmation {
    text-align: center;
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 1.1rem;
    color: #007bff; /* Color azul de Bootstrap (o puedes usar el color exacto que necesites) */
}
.confirmation-message.red-confirmation {
    text-align: center;
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 1.1rem;
    color: #dc3545; /* Color azul de Bootstrap (o puedes usar el color exacto que necesites) */
}

.confirmation-message.blue-confirmation .fa-check {
    color: #007bff; /* Mismo color azul para el ícono */
    margin-right: 8px;
    font-size: 1.25rem; /* Hacemos el ícono un poco más grande */
}

@media (max-width: 768px) {
    .d-flex.vh-100 {
        flex-direction: column;
    }
    .col-12.col-md-6 {
        flex: 1 0 auto;
    }
    .login-form {
        padding: 20px;
    }
    .orli-logo {
        max-width: 50%;
        margin-top: 20px;
    }
    .modal-orli {
        padding: 1.5rem !important;
    }
}