.field {
    position: relative;
}

.field label,
textarea+label,
select+label {
    position: absolute;
    left: 10px;
    top: 10px;
    pointer-events: none;
    transition: 0.2s;
    transition-timing-function: ease;
    transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
}

.field input:required:invalid+label,
.field input:invalid+label {
    color: #6c757d;
}

form label {
    color: #6c757d;
    font-size: 17px !important;
}

.field input:required:valid+label,
.field input[readonly]+label,
input:not([value=""])+label .field input[type="file"]+label,
input.has-content+label,
.field input:valid+label,
select+label,
.field input:focus+label,
textarea:focus+label,
select:focus+label,
textarea.has-content+label,
textarea+label,
select:not([value=""])+label {
    font-size: 11px;
    top: -20px;
    color: #6c757d;
    /*transform: translateY(-1.5rem); */
}

.civilite-label {
    font-size: 11px !important;
}

.grouped-controls {
    padding: 10px;
    border: 2px solid black;
    /* Cadre noir autour du fieldset */
}

input[type="number"] {
    border: 1px solid black;
    /* Crée un cadre noir autour du bouton */
    background-color: white;
    /* couleur de fond du bouton */
    padding: 15px 32px;
    /* ajoute du rembourrage autour du texte */
    text-align: center;
    /* centre le texte */
    text-decoration: none;
    /* enlève le soulignement du texte */
    display: inline-block;
    font-size: 17px;
    /* taille du texte */
    margin: 4px 2px;
    /* espace autour du bouton */
    cursor: pointer;
    /* change le curseur en main lorsque vous survolez le bouton */
    transition-duration: 0.4s;
    /* durée de l'effet au survol */
    color: black;
}

.label_cls {
    margin-bottom: -10px;
    /* ou la valeur de votre choix */
}

.input_cls {
    margin-top: -10px;
    /* ou la valeur de votre choix */
}

.password-input {
    position: relative;
}

.password-input .toggle-password {
    position: absolute;
    right: 10px;
    top: 7px;
    cursor: pointer;
}

.password-icon {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translate(0, -50%);
    cursor: pointer;
}

#loadingIndicator {
    text-align: center;
}

.rounded-right-input {
    border: 1px solid #ddd !important;
    border-radius: 0px 25px 25px 0px !important;
    /* round right corners */
    padding: 10px !important;
    outline: none !important;
}

.rounded-left-input {
    border: 1px solid #ddd !important;
    border-radius: 25px 0px 0px 25px !important;
    /* round left corners */
    padding: 10px !important;
    outline: none !important;
}