.htmx-indicator { opacity: 0; transition: opacity 200ms ease-in; }
.htmx-request .htmx-indicator,
.htmx-indicator.htmx-request { opacity: 1; }


/* HOVER BOOTSTRAP
.table {
    --bs-table-hover-bg: #9fd3ff;
    --bs-table-hover-color: #000;
}
*/


/* HOVER PERSO */
.table-sel tbody tr:hover td {
    background-color: #9fd3ff;
    color: #000;
}

.table-hover-only tbody tr:hover td,
.table-hover-only tbody tr:hover th {
    background-color: var(--bs-table-hover-bg, #9fd3ff);
    color: var(--bs-table-hover-color, inherit);
}

@media (max-width: 767.98px) {
    .nom-responsive {
        display: block;

        max-width: 12ch;

        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;

        text-align: left;
    }
}

/*************/
/* DASHBOARD */
/*************/

/* STICKY HORIZONTALE SOUS-TITRE (Expiration des accès ZRR) */
.sticky-subtitle {
    position: sticky;
    left: 50%;
    transform: translateX(-50%);
    width: fit-content;
    z-index: 10;
    background: var(--bs-tertiary-bg);
    margin-left: 0;
}

/* STICKY PALETTE GESTION DES DOSSIERS */
@media (min-width: 992px) { /* Uniquement sur écran Large (lg) et plus */
    .sticky-column {
        position: sticky;
        top: 60px; /* Distance entre le haut de l'écran et le menu quand on scrolle */
        align-self: start; /* CRUCIAL : Empêche la colonne de s'étirer sur toute la hauteur */
    }
}

/*************/
/* ACCORDION */
/*************/

/* Simulation du style Bootstrap Accordion sans JS */
.native-accordion {
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
}
.native-accordion details {
    border-bottom: 1px solid #dee2e6;
}
.native-accordion details:last-child {
    border-bottom: none;
}
.accordion-trigger-native {
    display: block;
    width: 100%;
    padding: 0.5rem 1.25rem; /* TNY:1rem 1.25rem */
    background-color: #fff;
    color: #212529;
    font-weight: 250; /* TNY:1rem 1.25rem */
    text-align: left;
    cursor: pointer;
    list-style: none; /* Enlève la flèche par défaut */
    border: none;
    position: relative;
}
/* Flèche personnalisée à droite */
.accordion-trigger-native::after {
    content: '▼';
    float: right;
    font-size: 0.7rem;
    transition: transform 0.2s ease;
}
/* Style quand ouvert */
details[open] .accordion-trigger-native {
    background-color: #e7f1ff;
    color: #0c63eac4;
}
details[open] .accordion-trigger-native::after {
    transform: rotate(180deg);
}
/* Suppression du marqueur par défaut sur Safari/Chrome */
.accordion-trigger-native::-webkit-details-marker {
    display: none;
}
.accordion-body-native {
    padding: 1rem 1.25rem;
    background-color: #fff;
}

/***************************/
/* DOSSIERS ADMINISTRATIFS */
/***************************/

/* TABLEAU STICKY HAUT ET BAS */

.table-sticky {
    max-height: 70vh;
    overflow-x: scroll;
    overflow-y: scroll;
}

.table-sticky table {
    border-collapse: separate;
    border-spacing: 0;
}

.table-sticky thead th {
    position: sticky;
    top: 0;
    z-index: 20;
    background: #f8f9fa;
    box-shadow: inset 0 -1px 0 #dee2e6;
}




.btn-vue-desactive {
    background-color: #fd7e14 !important;
    border-color: #fd7e14 !important;
    color: #fff !important;
}
