.authentication-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    min-height: 100vh;
    width: 100%;
}
.authentication-wrapper .authentication-inner {
    width: 100%;
}
.authentication-wrapper.authentication-basic {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.authentication-wrapper .auth-cover-illustration {
    z-index: 1;
    max-inline-size: 38rem;
}
.authentication-wrapper .authentication-image-object-left {
    /* position: absolute; */
    position: fixed;
    bottom: 6%;
    inset-inline-start: 4%;
}
.authentication-wrapper .authentication-image-object-right {
    /* position: absolute; */
    position: fixed;
    bottom: 7%;
    inset-inline-end: 4%;
}
.authentication-wrapper .authentication-image {
    z-index: -1;
    inline-size: 100%;
    /* position: absolute; */
    position: fixed;
    inset-inline-start: 0;
    bottom: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.authentication-wrapper .authentication-image-model {
    width: 768px;
}
.authentication-wrapper.authentication-cover {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.authentication-wrapper.authentication-cover .authentication-inner {
    min-height: 100vh;
    position: relative;
}
html:not([dir="rtl"])
    .authentication-wrapper.authentication-cover
    .authentication-image {
    inset-inline-start: unset;
}
.authentication-wrapper.authentication-cover .authentication-image-tree {
    position: absolute;
    bottom: 4rem;
    left: 3rem;
}
.authentication-wrapper.authentication-basic .authentication-inner {
    max-width: 460px;
}
.authentication-wrapper .auth-input-wrapper .auth-input {
    max-width: 50px;
    padding-left: 0.4rem;
    padding-right: 0.4rem;
    font-size: 150%;
}

@media (max-width: 575.98px) {
    .authentication-wrapper .auth-input-wrapper .auth-input {
        font-size: 1.125rem;
    }
}
@media (max-width: 1199.98px) {
    .authentication-cover .authentication-image-model {
        position: relative;
        width: 575px;
        top: 1rem;
    }
}
#twoStepsForm .fv-plugins-bootstrap5-row-invalid .form-control {
    border-width: 2px;
    border-color: #ff4c51;
}

@media (max-width: 575.98px) {
    .numeral-mask-wrapper .numeral-mask {
        padding: 0 !important;
    }
    .numeral-mask:not(:focus) {
        margin-inline: 1px !important;
    }
    .numeral-mask:focus {
        margin-inline: auto !important;
    }
}
.light-style .authentication-wrapper .authentication-bg {
    background-color: #fff;
}

.dark-style .authentication-wrapper .authentication-bg {
    background-color: #312d4b;
}

[dir="rtl"] .authentication-image-tree {
    right: 3rem;
    left: auto;
}

/* Pour que les boutons ne mettent pas automatiquement les textes en majuscule */
.btn {
    text-transform: none;
}

/* Images de fond */
.authentication-image-object-left svg,
.authentication-image-object-right svg {
    height: 172px;
    width: auto;
    display: none;
}

.app-brand-logo svg {
    opacity: 0;
    transition: opacity .4s;
}

.totp_qr_code {
    max-width: 40%;
}


.login-btn {
    border-radius: 2rem;
    width: fit-content !important;
    margin: auto;
    padding: 10px 50px;
    font-size: 1.1rem;
}

.login_card {
    text-align: center;
}

.login_card input, .login_card input:focus, .login_card .input-group-text.cursor-pointer {
    background-color: rgba(255, 255, 255, .5);
}

/* Pas de taille mini pour la taille du champ login */
.layout-container {
    min-block-size: auto;
}

/* Couleur du lien "mot de passe oublié" */
#forgot_password_btn {
    color: var(--bs-primary);
}