.nav-tabs {
    
    margin-bottom: 0.5rem !important;
}
.tab-content {
    background: white;
    border: 1px solid #dee2e6;
    border-top: none;
    border-radius: 0 0 0.25rem 0.25rem;
    padding: 1rem;
    padding-top: 0 !important;
    padding-bottom: 0.5rem !important;
}
.card-header {
    font-weight: bold;
}


/* Uniformiser l'espacement des cartes dans les onglets */
.tab-content .card {
    margin-bottom: 1rem;
}

/* Supprimer l'espace supplémentaire sous l'en-tête de l'onglet */
.tab-pane {
    padding-top: 0;
}


@media (max-width: 768px) {
    .btn, .form-control, .form-select {
        min-height: 44px; /* pour les champs de formulaire */
    }

    .nav-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        white-space: nowrap;
        float: none;
        display: inline-block;
    }


    
    .nav-link {
        padding: 0.75rem 1rem;
    }
}



.form-text {
    font-size: 0.85rem;
}
.card-header.bg-light {
    background-color: #f8f9fa !important;
    font-weight: 600;
}


/* Champs obligatoires avec astérisque */
.form-label.required:after {
    content: " *";
    color: red;
    font-weight: bold;
}

/* Pour les champs qui n'utilisent pas la classe .required, vous pouvez aussi cibler les labels via l'attribut */
.form-label[for="ni"]:after,
.form-label[for="last_name"]:after,
.form-label[for="first_name"]:after,
.form-label[for="consent"]:after {
    content: " *";
    color: red;
}

.video-thumbnail {
    border-radius: 5px;
    overflow: hidden;
}
.video-thumbnail video {
    pointer-events: none;
}