.lato-thin {
    font-family: "Lato", sans-serif;
    font-weight: 100;
    font-style: normal;
}

.lato-light {
    font-family: "Lato", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.lato-regular {
    font-family: "Lato", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.lato-bold {
    font-family: "Lato", sans-serif;
    font-weight: 700;
    font-style: normal;
}

.lato-black {
    font-family: "Lato", sans-serif;
    font-weight: 900;
    font-style: normal;
}

.lato-thin-italic {
    font-family: "Lato", sans-serif;
    font-weight: 100;
    font-style: italic;
}

.lato-light-italic {
    font-family: "Lato", sans-serif;
    font-weight: 300;
    font-style: italic;
}

.lato-regular-italic {
    font-family: "Lato", sans-serif;
    font-weight: 400;
    font-style: italic;
}

.lato-bold-italic {
    font-family: "Lato", sans-serif;
    font-weight: 700;
    font-style: italic;
}

.lato-black-italic {
    font-family: "Lato", sans-serif;
    font-weight: 900;
    font-style: italic;
}

html, body {
    height: 100%;
    margin: 0;
    display: flex;
    flex-direction: column;
    font-size:16px!important;
}

.content-wrap {
    flex: 1;
}
@media (max-width: 768px) {
    .content-wrap {
        margin-bottom: 20px;
    }
}

body {
    font-family: 'Lato', sans-serif;
}
h1, h2, h3, h4, h5 {
    font-family: 'Lato', sans-serif;
}
.text-red {color:#e10b13!important;}
.text-blue {color:#4bc2f1!important;}
.text-green {color:#8dc045!important;}
.text-purple {color:#9a4996!important;}
.text-orange {color:#fcc04a!important;}
.text-gray {color:#6c757d !important;}
.bg-red {background-color:#e10b13!important;}
.bg-blue {background-color:#4bc2f1!important;}
.bg-green {background-color:#8dc045!important;}
.bg-green-light {background-color:#d2e7d1!important;}
.bg-purple {background-color:#9a4996!important;}
.bg-purple-light {background-color:#d2b2d1!important;}
.bg-orange {background-color:#fcc04a!important;}
.border-red {border-color:#e10b13!important;}
.border-blue {border-color:#4bc2f1!important;}
.border-green {border-color:#8dc045!important;}
.border-purple {border-color:#9a4996!important;}
.border-orange {border-color:#fcc04a!important;}
.border-gray {border-color:#eaeaea!important;}
.form-check-input {
    background-color: transparent;
}
.form-check-label {
    color:black;
    margin-left: .25rem; /* Ensure some spacing between the checkbox and label */
}
.checkbox-red:checked {
    background-color: #e10b13;
    border-color: #e10b13;
    color: #ffffff;
}
.checkbox-red:checked::before {
    color: #ffffff; /* Ensure the checkmark is white */
}
.checkbox-blue:checked {
    background-color: #4bc2f1;
    border-color: #4bc2f1;
    color: #ffffff;
}
.checkbox-blue:checked::before {
    color: #ffffff; /* Ensure the checkmark is white */
}
.checkbox-green:checked {
    background-color: #8dc045;
    border-color: #8dc045;
    color: #ffffff;
}
.checkbox-green:checked::before {
    color: #ffffff; /* Ensure the checkmark is white */
}
.checkbox-purple:checked {
    background-color: #9a4996;
    border-color: #9a4996;
    color: #ffffff;
}
.checkbox-purple:checked::before {
    color: #ffffff; /* Ensure the checkmark is white */
}
.checkbox-orange:checked {
    background-color: #fcc04a;
    border-color: #fcc04a;
    color: #ffffff;
}
.checkbox-orange:checked::before {
    color: #ffffff; /* Ensure the checkmark is white */
}
/* Recommended icon sizes */
span.size-20 {
    font-size: 20px;
    font-variation-settings: 'OPSZ' 20;
}
span.size-24 {
    font-size: 24px;
    font-variation-settings: 'OPSZ' 24;
}
span.size-40 {
    font-size: 40px;
    font-variation-settings: 'OPSZ' 40;
}
span.size-48 {
    font-size: 48px;
    font-variation-settings: 'OPSZ' 48;
}
/*.pdfcontainer {
    border: 2px solid #ddd;
    border-radius: 8px;
    padding: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    background-color: #fff;
}*/

.verification-box {
    margin-top: 10px; /* Espace entre le PDF et le cadre de vérification */
    padding: 10px;
    background-color: #f8f9fa; /* Fond clair */
    border: 1px solid #ccc; /* Bordure légère */
    border-radius: 6px; /* Coins arrondis */
    text-align: center;
    color: #212529; /* Couleur du texte (évite le texte transparent) */
}

.verification-box a {
    color: #007bff; /* Lien bleu Bootstrap */
    font-weight: bold;
    text-decoration: none;
}

.verification-box a:hover {
    text-decoration: underline;
}


.iframepdfviewer {
    border: 1px solid #555;
}
.videoplayer {
    border: 1px solid #555;
    max-height:80vh;
}
.imgviewer {
    /*border: 1px solid #555;*/
}
.imgviewer img {
    max-height:80vh;
}
.imgviewer img {
    border: 1px solid #555;
}
#navbarNavDropdown img {
    width: 20px;
    height: auto;
    margin-right: 5px;
    vertical-align: middle;
}
/* Par défaut, afficher le nom de la langue */
.language-name {
    display: inline-block;
}

/* Pour les petits écrans, masquer le nom de la langue */
@media (max-width: 768px) {
    .language-name {
        display: none;
    }
}
.nfp-number span {
    display: inline-flex;
    align-items: center;
}

.nfp-number img.nfp-icon {
    height: 24px;
    margin-right: 5px; /* Ajuster la marge entre l'image et le texte */
}



/*********/
.btn.btn-dark:hover,.btn.btn-dark:hover:not(.btn-active) {
    background-color: #333!important;
    border-color: #333!important;
}
.btn.btn-light:hover,.btn.btn-light:hover:not(.btn-active) {
    background-color: #f7f7f7!important;
    border-color: #f7f7f7!important;
}
.btn-circle {
    border-radius: 50% !important;
    width: 40px;
    height: 40px;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.btn-circle i {
    font-size: 1.4rem; /* Ajuste selon tes besoins */
    margin: 0; /* Supprime tout décalage */
}

.btn-circle.btn-sm {
    width: 32px;
    height: 32px;
    font-size: 0.9rem;
}
.btn-sm {
    padding: 0.35rem 0.5rem!important;
    text-align: center;
    font-size: 1rem;
}
.btn-xs {
    padding: 0.20rem 0.35rem!important;
    text-align: center;
    font-size: 0.9rem;
}
.btn-outline-primary {
    color: #9a4996!important;
    border:1px solid #9a4996!important;
}
.btn-outline-primary:hover, .btn-outline-primary:hover:not(.btn-active), .btn-outline-primary:focus, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.show, .btn-outline-primary:active:not(.btn-active), .btn-outline-primary:focus:not(.btn-active), .show > .btn-outline-primary {
    background-color: #9a4996 !important;
    border-color: #9a4996 !important;
    color:white;
}
.btn-outline-primary:hover span, .btn-outline-primary:hover:not(.btn-active) span, .btn-outline-primary:focus span, .btn-outline-primary:active span, .btn-outline-primary.active span, .btn-outline-primary.show span, .btn-outline-primary:active:not(.btn-active) span, .btn-outline-primary:focus:not(.btn-active) span, .show > .btn-outline-primary span {
    color: #fff;
}
.btn-outline-primary .fa-duotone {
    --fa-primary-color: #9a4996;
    --fa-secondary-color: #9a4996;
    --fa-secondary-opacity: .6;
    padding:0;
}
.btn-outline-primary:hover .fa-duotone, .btn-outline-primary:hover:not(.btn-active) .fa-duotone, .btn-outline-primary:focus .fa-duotone, .btn-outline-primary:active .fa-duotone, .btn-outline-primary.active .fa-duotone, .btn-outline-primary.show .fa-duotone, .btn-outline-primary:active:not(.btn-active) .fa-duotone, .btn-outline-primary:focus:not(.btn-active) .fa-duotone, .show > .btn-outline-primary .fa-duotone {
    --fa-primary-color: #fff;
    --fa-secondary-color: #fff;
    --fa-secondary-opacity: .6;
}
.btn.btn-primary {
    background-color: #9a4996!important;
    border-color: #9a4996!important;
    color: #ffffff!important;
    font-family: "Lato", serif!important;
    font-weight: 300!important;
}
.btn.btn-primary:hover, .btn.btn-primary:hover:not(.btn-active), .btn.btn-primary:focus, .btn.btn-primary:active, .btn.btn-primary.active, .btn.btn-primary.show, .btn.btn-primary:active:not(.btn-active), .btn.btn-primary:focus:not(.btn-active), .show > .btn.btn-primary {
    background-color: #a45ca1 !important;
    border-color: #a45ca1 !important;
    color: #ffffff!important;
}
.btn.btn-primary-light {
    background-color: #c974c5 !important; /* encore plus clair */
    border-color: #c974c5 !important;
    color: #fff !important;
    font-family: "Lato", serif!important;
    font-weight: 300!important;
}
.btn.btn-primary-light:hover, .btn.btn-primary-light:hover:not(.btn-active), .btn.btn-primary-light:focus, .btn.btn-primary-light:active, .btn.btn-primary-light.active, .btn.btn-primary-light.show, .btn.btn-primary-light:active:not(.btn-active), .btn.btn-primary-light:focus:not(.btn-active), .show > .btn.btn-primary-light {
    background-color: #d070de !important; /* encore plus clair */
    border-color: #d070de !important;
    color: #fff !important;
}
.btn-white {
    background-color: #ffffff!important;
    border-color: #ffffff!important;
    color: #333333!important;
    padding: 0.75rem;
    border-radius: 0.25rem;
    font-family: "Lato", serif!important;
    font-weight: 300!important;
}
.btn-white:hover, .btn.btn-white:hover:not(.btn-active), .btn.btn-white:focus, .btn.btn-white:active, .btn.btn-white.active, .btn.btn-white.show, .btn.btn-white:active:not(.btn-active), .btn.btn-white:focus:not(.btn-active), .show > .btn.btn-white {
    background-color: #f7f7f7!important;
    border-color: #f7f7f7!important;
    color: #333333!important;
}
.btn-secondary{
    background-color: #cfe5f3!important;
    border-color: #cfe5f3!important;
    color: #52addc!important;
    padding: 0.75rem;
    border-radius: 0.25rem;
    font-family: "Lato", serif!important;
    font-weight: 300!important;
}
.btn-secondary:hover, .btn.btn-secondary:hover:not(.btn-active), .btn.btn-secondary:focus, .btn.btn-secondary:active, .btn.btn-secondary.active, .btn.btn-secondary.show, .btn.btn-secondary:active:not(.btn-active), .btn.btn-secondary:focus:not(.btn-active), .show > .btn.btn-secondary {
    background-color: #d4e7f4!important;
    border-color: #d4e7f4!important;
    color: #52addc!important;
}
.text-white {color:#fff!important;}
.bg-verified {
    background-color: #e6f5e6 !important;
    border: 1px solid #52d65f !important;
    border-radius: 5px !important;
}
.bg-not-verified {
    background-color: rgba(227, 6, 19, 0.1) !important;
    border: 1px solid #e30613 !important;
    border-radius: 5px !important;
}
.welcome-message {
    background-color: #f7f7f7; ;
}
.welcome-message h1 {
    color: #2a2a2a; font-size: 24px;font-weight:lighter;
}

.footer {
    background-color: #1d1d1b!important;
    color: white;
    padding: 10px;
    text-align: center;
    font-size: 16px;
    font-weight: 300;
}

.footer-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.footer-logo, .footer-links, .footer-copy {
    flex: 1;
    min-width: 200px;
}
.versionnumber {
    font-size:10px;
}
#welcome-message p {color: #555555; font-size: 16px;}
#nfphr {
    font-size: 20px;
    color: #333333;
    font-weight: bold;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #e0e0e0;
    text-align: center;
    cursor:pointer;
}
.footer-links ul {
    list-style: none;
    padding: 0;
}
.footer-links ul li a {
     color: white!important;
    text-decoration: none!important;
     transition: text-decoration 0.3s!important;
 }

.footer-links ul li a:hover, .footer-links ul li a:focus {
    text-decoration: underline!important;
}

@media (max-width: 768px) {
    .footer-container {
        flex-direction: column;
        align-items: flex-start;
    }

    .footer-logo, .footer-links, .footer-copy {
        width: 100%;
        margin-bottom: 20px;
    }
}
.dropzone .dz-preview .dz-progress {
    height: 4px;
    background: #ddd;
}
.hidden {
    display: none;
}

.swal2-styled.swal2-confirm {
    border: 0;
    border-radius: .25em;
    background: initial;
    background-color: #555;
    color: #fff;
    font-size: 1em;
}
body.swal2-height-auto {
    height: 100% !important;
}

.form-group {
    margin-bottom: 15px;
}

.form-control {
    width: 100%;
    padding: 7px;
    border: 1px solid #aaa;
    border-radius: 4px;
}

.form-textarea{
    height: 103px;
}
.tagify__tag {
    display: flex;
    align-items: center;
    padding: 2px!important;
    border-radius: 4px!important;
    background-color: #e9ecef;
    border: 1px solid #aaa;
    margin-right: 0.5rem;
}
.tagify__tag .tagify__tag__removeBtn {
    order: -1; /* Move the remove button to the start of the flex container */
    margin-right: 0.5rem; /* Add space between the remove button and the text */
    background: transparent;
    border: none;
    cursor: pointer;
}
.tagify .tagify__tag .tagify__tag__removeBtn {
    content: '' !important;
    mask-image: none!important;
    -webkit-mask-image: none!important;
}
.tagify__tag__removeBtn::before {
    /*display: none!important;*/
    color: aqua!important;
    transition: none!important;
}
.tagify .tagify__tag .tagify__tag__removeBtn {
    content: '' !important;
    /*margin-left:4px;*/
    font-size: 16px!important;
    font-weight: bold;
    color: rgb(153, 153, 153)!important;
    font-family: "Lato", sans-serif;
    transition: none!important;
    background: transparent!important;
    padding:8px;
    margin-right:4px;
}
.tagify .tagify__tag .tagify__tag__removeBtn::after {display:block!important;}
.tagify__tag img {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    margin-right: 0.5rem;
}
.tagify:not(.form-control-sm):not(.form-control-lg) .tagify__tag .tagify__tag-text {
    font-size: 13px;
}
.tagify__tag > div {
    margin:0;
    padding-left:0;
}

.select2-container--default .select2-results__option {
    padding: 6px 10px;
}
.select2-container--default .select2-selection--single {
    height: 33px;
    line-height: 33px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 33px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 33px;
}
.nav-link {
    display: flex;
    align-items: center;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    border:0px!important;
    font-size:16px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
    padding: 2px 5px 2px 18px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover, .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus {
    background-color: transparent;
    color: #333;
}

.material-symbols-outlined {
    margin-right: 8px;
}
.togglePassword {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
}
.divtotpinputs {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
}

.totp-input {
    box-shadow: none;
    border: 1px solid #50576330;
    text-align: center;
    width: 60px;
    height: 60px;
    font-size: 1.5em;
}

.form-options {
    text-align: center;
    margin-top: 20px;
}

.form-options a {
    display: inline;
    margin: 0 10px;
    color: #e30613;
    text-decoration: none;
}

.form-options a:hover {
    text-decoration: underline!important;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}


/********************* TABS ***********************/
.tabs {margin:0;padding:0;}
.tabs .content {
    /* Ajoutez ici les styles de votre contenu */
}
.tabnav {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center; /* Centre les éléments horizontalement */
    flex-grow: 1; /* Permet au tabnav de prendre tout l'espace disponible */
    width:100%;
}

.tabnav-container {
    display: flex;
    justify-content: center;
    flex-grow: 1;
}

.navbar {
    display: flex;
    justify-content: space-between; /* Répartit l'espace entre le logo, le tabnav et les autres éléments */
    align-items: center;
}
.tabnav > a {
    position: relative;
    display: flex;
    align-items: center; /* Centrer verticalement le contenu */
    padding: 1em 2em;
    color: #fff;
    text-decoration: none;
    margin: 0 -0.3em 0 -0.2em;
}
.tabnav > a::before {
    border: 0.2em solid #fff;
}
.tabnav a::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    border-bottom: none;
    border-radius: 0.4em 0.4em 0 0;
    background: #34495E;
    /*transform: scale(1.2, 1.3) perspective(0.5em) rotateX(5deg);*/
    /*transform: scale(1.15, 1.4) perspective(14px) rotateX(5deg);*/
}
.tabnav a.active {
    z-index: 2;
}
.tabnav a.active::before {
    background-color: #e10b13;
    /*margin-bottom: -0.08em;*/
}

.tab-left nav {
    /*padding-left: 0.3em;*/
}
.tab-left nav a::before {
    transform-origin: bottom left;
}


/**************** widgets ****************/
.main-section{
    /*margin:0 auto;*/
    text-align: center;
    /*padding: 0px 5px;*/
}
.dashbord{
    /*width:32%;*/
    /*display: inline-block;*/
    background-color:#34495E;
    color:#fff;
    margin-top: 26px;
}
.icon-section i{
    font-size: 30px;
    padding:10px;
    border:1px solid #fff;
    border-radius:50%;
    margin-top:-25px;
    margin-bottom: 10px;
    /*background-color:#34495E;*/
}
.icon-section p{
    margin:0px;
    font-size: 20px;
    padding-bottom: 10px;
}
.detail-section{
    background-color: #2F4254;
    padding: 5px 0px;
}
.dashbord .detail-section:hover{
    background-color: #5a5a5a;
    cursor: pointer;
}
.detail-section a{
    color:#fff;
    text-decoration: none;
}

.section-title {
    position: relative;
    display: inline-block;
    text-transform: uppercase;
    background: white;
    /*color: #FF0000!important;*/
    font-size:16px;
}
.section-title::before {
    position: absolute;
    content: "";
    width: calc(100% + 80px);
    height: 2px;
    top: 4px;
    left: -40px;
    z-index: -1;
    background: #FF0000;
}
.section-title::after {
    position: absolute;
    content: "";
    width: calc(100% + 120px);
    height: 2px;
    bottom: 5px;
    left: -60px;
    z-index: -1;
    background: #FF0000;
}
.course-item .video-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2); /* Semi-transparent background on hover */
    transition: background-color 0.3s ease;
    text-decoration: none;
}

.course-item .video-btn i {
    font-size: 4rem;
    color: white;
}

.course-item .video-btn:hover {
    background-color: rgba(0, 0, 0, 0.1); /* Darker background on hover */
}

.course-item .position-relative:hover .video-btn {
    background-color: rgba(0, 0, 0, 0.1); /* Background becomes more opaque on hover */
}

.thumbnail-container {
    width: 100%; /* Largeur égale à celle du conteneur parent */
    height: 192px; /* Hauteur fixe pour uniformiser la taille des images */
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    background-color: #ffffff; /* Couleur de fond pour combler les espaces vides */
}

.thumbnail-container img {
    max-width: 100%;
    max-height: 100%;
    object-fit: cover; /* Maintient l'aspect de l'image tout en remplissant le conteneur */
}
.btn-fullscreen {
    color:#7F7F7F!important;
    padding:0!important;
}
.btn-fullscreen i {
    font-size: 1.75rem;
}
.btn-fullscreen:hover {
    color:#333!important;
}
.btn-close-custom {
    width: 1.5rem;  /* Largeur du bouton */
    height: 1.5rem; /* Hauteur du bouton */
    background-size: 1.5rem; /* Taille de l'icône */
}
.video-duration-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0, 0, 0, 0.7); /* Couleur de fond avec transparence */
    color: #fff;
    font-size: 1rem;
    border-radius: 5px;
    padding: 5px 8px;
    bottom: 10px;
    right: 10px;
}

.video-duration-badge i {
    margin-right: 4px; /* Espace entre l'icône et le texte */
    font-size: 1rem; /* Ajuste la taille de l'icône si nécessaire */
}

.course-item {
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.2); /* Effet d'ombre */
    transition: box-shadow 0.3s ease; /* Transition pour un effet d'ombre doux au survol */
}

.course-item:hover {
    box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.3); /* Effet d'ombre plus prononcé au survol */
}

.thumbnail-container {
    position: relative;
    width: 100%;
    height: 200px; /* Vous pouvez ajuster la hauteur en fonction de vos besoins */
    overflow: hidden; /* Cache tout débordement de l'image */
}

.thumbnail-image {
    width: 100%;
    height: 100%;
    background-size: cover; /* L'image couvre tout le conteneur */
    background-position: center; /* Centre l'image dans le conteneur */
    background-repeat: no-repeat; /* Empêche la répétition de l'image */
    border: none; /* Supprime les bordures autour de l'image */
}

/* Appliquer le plein écran à la modale */
#videoModal .modal-dialog {
    max-width: 100%;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}

#videoModal .modal-content {
    height: 100%;
    border: none;
    border-radius: 0;
}
#videoModal .modal-header {
    height: 3rem; /* Ajustez la hauteur du header si nécessaire */
}
#videoModal .modal-body {
    height: calc(100% - 3rem); /* Ajustez la hauteur du header si nécessaire */
}

#videoModal .modal-body {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
}

#videoModal .video-container {
    width: 100%;
    height: 100%;
}

#videoModal video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#divintro h1 {
    color:#9a4996;
    font-weight: 600;
    margin:10px 0;
}
#divintro a {
     color:#9a4996;
     font-weight: 400;
 }
#divintro p {padding: 0;}



.login-container {
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ffffff;
}

.login-card {
    border-radius: 1rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    width: 100%;
    max-width: 450px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.login-logo {
    padding: 10px;
    margin-bottom: 0 !important;
    max-width: 200px;
    max-height: 200px;
}
.floating-label {
    position: relative;
    margin-top: 1.5rem;
}
.floating-label input {
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    padding: 1rem;
    font-size: 16px!important;
    width: 100%;
    transition: border-color 0.2s;
}
.floating-label input:focus {
    border-color: #9a4996; /* --rz-baselpnRed-50 */
    box-shadow: inset 0 0 0 1px #9a4996;
    outline: none;
}
.floating-label label {
    position: absolute;
    top: 50%;
    left: 0.5rem;
    transform: translateY(-50%);
    background-color: #fff;
    padding: 0 0.25rem;
    color: #6c757d;
    transition: all 0.2s;
    pointer-events: none;
}
.floating-label input:focus + label,
.floating-label input:not(:placeholder-shown) + label {
    top: 0;
    transform: translateY(-100%);
    font-size: 0.85rem;
    color: #9a4996; /* --rz-baselpnRed-50 */
}
.text-purple {
    color: #6f42c1; /* Couleur violette pour les liens */
}
.btn-primary {
    background-color: #9a4996; /* Couleur principale */
    border-color: #9a4996;
    padding: 0.75rem;
    border-radius: 0.25rem;
}
.btn-primary:hover {
    background-color: #9a4996;
    border-color: #9a4996;
}
.culture-dropdown {
    position: absolute;
    top: 1rem;
    right: 1rem;
}
.culture-lang img {
    width: 24px;
    margin-right: 0.5rem;
    vertical-align: middle;
}
.register-section {
    text-align: left;
    margin-top: 1rem;
    padding:1rem;
    background-color:#f6f7fa;
    font-weight: 300;
}
.register-section strong {
    font-weight: 500;
}
.bonus {
    font-weight: bold;
    animation: testcolor 1s ease-in-out infinite alternate;
}

@keyframes testcolor {
    from { color: #9a4996; }
    to { color: #d070de; }
}
.bklogincontent {width: 100%; max-width: 450px; overflow: hidden; display: flex; flex-direction: column;}
.bklogincontentlogo{text-align: center; background-color:#1D1D1B;border-radius: 1rem 1rem  0 0 ;}
.logincontent {padding: 2rem !important;}
.logintitle {margin-top: 3px;    margin-left: 0px;    margin-right: 5px;    margin-bottom: 5px; font-size:24px; font-weight:600;color:rgb(40, 54, 60);}
.loginform {padding-top: 10px !important;font-weight:300;}
.form-field-helper {padding: 0 0.5rem;color:#ff4d4f;display:none;}
.btnlogin {margin-top:2.5rem;}
.password-toggle {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    background-color: transparent;
    border: none;
    color: #6c757d; /* Approximation de --rz-base-500 */
    font-size: 1.25rem;
    cursor: pointer;
}

#totpContainer {
    display: none; /* Caché par défaut */
}
.securitycode {
    box-sizing: border-box;
    display: inline-flex;
}
.totp-input {
    width: 36px;
    height: 50px;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    border: 1px solid #ced4da;
    border-radius: 4px;
    margin-right: 0.5rem;
    box-shadow: rgba(0, 0, 0, 0.03) 0px 4px 3px 0px inset;
}
.totp-input:focus {
    border-color: #9a4996;
    box-shadow: inset 0 0 0 1px #9a4996;
    outline: none;
}
.totp-wrapper {
    display: flex;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}
.alert-info {
    background-color:#d5f4f4;
    color:#2cc8c8;
    border-color:#2cc8c8;
}
.alerttotpinfo {
    border:0;
    border-radius:.25rem;
    font-weight: 300;
    padding: 0.75rem 1rem;
}

.alerttotpinfo i {font-weight: 300;}
.countryflag {
    width: 20px;
    height: auto;
    margin-right: 5px;
    vertical-align: middle;
}
#cardcontentidentity .table,#cardcontentidentity .row{margin-bottom:0!important;}
/*#cardcontentidentity .table.table-striped.table-informations tbody tr:nth-of-type(odd) {
    background-color: #efefef !important;
}*/
#cardcontentidentity .table-informations td {
    padding: 2px 5px !important;
}
#cardcontentidentity .table-informations td:last-child {
    padding-right: 0 !important;
}
#cardcontentidentity .table-informations td:first-child {
    /*font-weight: bold;*/
    text-align: left;
}
#cardcontentidentity .card .card-body{padding: 0.5rem 1rem !important;}
#cardcontentidentity i { font-size: 30px;}
#cardcontentidentity h4 {
    font-size: 20px;
    font-weight: 700 !important;
    margin-bottom: 0;
    margin-top: 0;
    line-height: 1;
    font-family: "Lato", serif;
}
.text-muted {color: #6c757d !important;}
.ToggleIntro {}
.ToggleIntro i {font-size:32px;--fa-primary-color: #9a4996;--fa-secondary-color: #9a4996;--fa-secondary-opacity: .4;margin-top:10px;cursor:pointer;}

.consent-bar {
    z-index: 1000; /* Au-dessus du contenu */
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1); /* Ombre subtile */
}

.consent-bar .container {
    max-width: 960px; /* Ajustez selon votre design */
}

.consent-bar .btn-primary {
    min-width: 120px; /* Largeur minimale pour le bouton */
}

.consent-bar .form-check-label {
    font-size: 1rem; /* Taille du texte */
}

@media (max-width: 767.98px) {
    .consent-bar .form-check-label {
        font-size: 0.9rem; /* Réduire la taille du texte sur mobile */
    }
    .consent-bar .btn-primary {
        min-width: 100px; /* Bouton plus petit sur mobile */
    }
}