th:first-child, td:first-child {
    position: sticky;
    left: 0px;
    background-color: powderblue;
    width: 600px;
    z-index: 20;
}

th {

    width: 300px;
}

td {
    width: 300px
}

.tableFixHead {
    overflow-x: auto;
    overflow-y: auto;
    height: 800px;
}

.tableFixHead thead tr th {
    position: sticky;
    top: 0;
    z-index: 25;
    vertical-align: top;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px
}

.sticky-row-2 th, .sticky-row-2 td {
    position: sticky;
    top: 215px; /* Fallback si JS échoue */
    z-index: 10;
    background-color: #eee;
}

.sticky-row-2 th:first-child {
    z-index: 21;
}

/* Just common table stuff. Really. */
table {
    border-collapse: collapse;
}

th, td {
    padding: 8px 16px;
}

th {
    background: #eee;
}

.level_0 {
    color: red;
}

.level_1 {
    color: orange;
}

.level_2 {
    color: green;
}

.dispo {
    width: 12px;
}

@media screen and (max-height: 450px) and (orientation: landscape) {

    .tableFixHead {
        overflow-x: auto;
        overflow-y: auto;
        height: 980px
    }



}

@media screen and (max-width: 480px) {
    .texte {
        font-size: 1.5rem;
    }

    th {
        font-size: 1.2em !important;
        width: 300px !important;
    }

    td {
        font-size: 1.2em !important;
        width: 300px !important;
    }

    .table-header-row th {
        font-size: 0.9em !important;
    }

    .table-nb-anim-row th, .table-nb-anim-row td {
        font-size: 0.9em !important;
    }

    .textformulaire {
        font-size: 1.8em !important;
    }

    .tableFixHead {
        overflow-x: auto;
        overflow-y: auto;
        height: 500px;
    }

    .tableFixHead thead tr th {
        position: sticky;
        top: 0;
        z-index: 25;
        vertical-align: top;
    }

    .sticky-row-2 th, .sticky-row-2 td {
        position: sticky;
        top: 215px; /* Fallback si JS échoue */
        z-index: 10;
        background-color: #eee;
    }

    .sticky-row-2 th:first-child {
        z-index: 21;
    }

    th:first-child, td:first-child {
        position: sticky;
        width: 300px;
    }

    h5 {
        font-size: 2.5rem;
    }

    h4 {
        font-size: 3rem;
    }

    .nav-item {
        font-size: 1.8rem !important;
    }

    .dropdown-menu {
        font-size: 1.8rem !important;
    }

    .form-control {
        height: 3rem;
        font-size: 1.2rem;
    }

    .checkboxsm {
        width: 50px;
        height: 50px;
    }

    .titreaide {
        font-size: 1.5rem !important;
    }

    .btn {
        font-size: 1.8rem;
    }

    .navbar-toggler {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        width: 100px !important;
        height: 100px !important;
        border-width: 4px !important;
    }

    .navbar-toggler-icon {
        background-size: 100% 100% !important;
        width: 60px !important;
        height: 60px !important;
    }

    .nav-link {
        font-size: 1.8rem !important;
    }

    .navbar-brand img {
        height: 120px !important;
    }

    .choiceform {
        width: 600px;
    }

    .smalltextformulaire {
        font-size: 1.5rem;
    }

    .formagendaleft {
        text-align: center;
    }

    .formagendaright {
        text-align: center;
    }
}


.choiceform {
    width: 200px;
}

.smalltextformulaire {
    font-size: 8pt;
}

.formagendaleft {
    text-align: left;
}

.formagendaright {
    text-align: right;
}
