/* Harmonisation des styles de formulaire */

/* Style commun pour tous les champs de formulaire */
.form-control {
    height: auto !important;
    min-height: 44px !important;
    padding: 10px 15px !important;
    line-height: 1.5 !important;
    background-color: #fff !important;
    border: 1px solid #ced4da !important;
    border-radius: 4px !important;
    font-size: 16px !important;
    color: #495057 !important;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out !important;
}

/* Style spécifique pour les selects */
select.form-control:not([size]):not([multiple]),
select.form-control.custom-select,
.custom-select {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url('data:image/svg+xml;utf8,<svg fill="%23333" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>') !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 20px !important;
    padding-right: 30px !important;
}

/* Focus styles */
.form-control:focus {
    border-color: #80bdff !important;
    outline: 0 !important;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25) !important;
}

.select-container {
    margin-bottom: 15px;
}

.select-container .error-message {
    margin-top: 8px;
    margin-bottom: 0;
}