/* ===== CORREÇÃO DOS CAMPOS DE LOGIN ===== */

/* Garantir que todos os campos tenham aparência consistente */
.login-responsive-form-control,
input[type="text"].login-responsive-form-control,
input[type="password"].login-responsive-form-control {
    /* Reset de estilos conflitantes */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    
    /* Estilos base consistentes */
    border: 1px solid #ced4da !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    font-size: 1rem !important;
    background-color: #ffffff !important;
    color: #495057 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    
    /* Transições suaves */
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out !important;
    
    /* Sombra sutil */
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

/* Estados dos campos */
.login-responsive-form-control:hover {
    border-color: #adb5bd !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15) !important;
}

.login-responsive-form-control:focus {
    border-color: #4facfe !important;
    box-shadow: 0 0 0 0.2rem rgba(79, 172, 254, 0.25) !important;
    outline: none !important;
    background-color: #ffffff !important;
}

/* Placeholder consistente */
.login-responsive-form-control::placeholder {
    color: #6c757d !important;
    opacity: 1 !important;
}

/* Tema Admin - campos com foco vermelho */
.login-admin-theme .login-responsive-form-control:focus {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

.login-admin-theme .login-responsive-form-control:hover {
    border-color: #dc3545 !important;
}

/* Tema Aluno - campos com foco verde */
.login-aluno-theme .login-responsive-form-control:focus {
    border-color: #28a745 !important;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25) !important;
}

.login-aluno-theme .login-responsive-form-control:hover {
    border-color: #28a745 !important;
}

/* Garantir que labels tenham aparência consistente */
.login-responsive-form-label {
    font-weight: 600 !important;
    color: #495057 !important;
    margin-bottom: 0.5rem !important;
    display: block !important;
}

/* Remover estilos conflitantes do Bootstrap */
.login-responsive-form-control.form-control {
    border: 1px solid #ced4da !important;
    background-color: #ffffff !important;
}

.login-responsive-form-control.form-control:focus {
    border-color: #4facfe !important;
    box-shadow: 0 0 0 0.2rem rgba(79, 172, 254, 0.25) !important;
}

/* Responsividade para campos */
@media (max-width: 768px) {
    .login-responsive-form-control {
        padding: 14px 16px !important;
        font-size: 1rem !important;
    }
}

@media (max-width: 576px) {
    .login-responsive-form-control {
        padding: 12px 14px !important;
    }
}

/* Garantir que não haja conflitos com outros estilos */
.login-responsive-form-control * {
    box-sizing: border-box !important;
}

/* Estados de erro/validação */
.login-responsive-form-control.is-invalid {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

.login-responsive-form-control.is-valid {
    border-color: #28a745 !important;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25) !important;
}
