section#wrapper>div.container:first-child:has(div.box-learner-content) {
    width: 90%;
}


.table-container {
    max-width: 100%;
    max-height: 450px;
    overflow-x: auto;
    overflow-y: auto;
    /* border: solid 1px black; */
}


#table-formation {
    width: 100%;
    border-collapse: collapse;
}

#table-formation th,
#table-formation td {
    padding: 10px;
    text-align: center;
    /* border-bottom: 1px solid #ddd; */
    border: 3px solid #ddd;

}

#table-formation td {
    min-width: 110px;
}


#table-formation th {
    /* background-color: #cdcdcd;
    border-bottom: solid 1px black;
    text-transform: uppercase; */
    background-color: #f9f9f9;
    border: solid 3px #ddd;
    color: #7a7a7a;
}



/* HEADER */
#header-customer {

    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0% 2% 2% 2%;

    #header-customer-automatique{
        display: flex;
        flex-direction: revert;
        margin-top: 30px;
        gap: 100px;
        height: fit-content;
        align-items: center;

        @media(max-width: 768px) {
            gap: 50px;
        }
    }


    #customer-name {
        font-weight: 800;
        font-size: 24px;
    }

    .info-heures {
        display: flex;
        flex-direction: column;
        text-align: center;

        @media(max-width: 768px) {
            width: 120px;
        }

        .nombre-dheure {
            font-size: 30px;
            font-weight: 800;
            margin-bottom: 7px;

            @media(max-width: 768px) {
                font-size: 15px;
            }
        }

    }

    .parcours-complet {
        /* background-color: green; */
    }

    .parcours-imcomplet {
        /* background-color: red; */
    }

    img {
        width: 100px;
        height: auto;
        margin: -10px -10px 10px 10px;
    }

}

.header-periode {

    label {
        margin: 0;
    }

    .hours-informations {
        border: solid 1px #bbb;
        border-left: solid 8px green;
        padding: 5px;
        background-color: #ededed;
        width: fit-content;
    }

}



/* CONTENEUR DU MENU ET DU BOX CONTENT */
.wrapper_a_pmi_learner {
    display: flex;

    @media(max-width: 768px) {
        flex-direction: column;
    }
}

.wrapper_a_pmi_learner_formation {
    display: flex;
    flex-direction: row;

    @media(max-width: 768px) {
        flex-direction: column;
    }
}

.wrapper_a_pmi_learner_formation_apprenant {
    display: flex;
    flex-direction: column;
}


/* MENU DE NAVIGATION */
.nav-side-menu {
    font-family: verdana;
    font-size: 12px;
    font-weight: 200;
    background-color: #2e353d;
    min-width: 250px;
    height: 500px;
    color: #e1ffff;
    float: left;
    margin-top: 40px;

    .band {
        background-color: #23282e;
        line-height: 50px;
        display: block;
        text-align: center;
        font-size: 14px;
    }

    li {
        line-height: 35px;
        cursor: pointer;
        border-bottom: 1px solid #23282e;
        color: #e1ffff;

        &:hover {
            border-left: 3px solid #d19b3d;
            background-color: #4f5b69;
            transition: all 1s ease;
        }

        i {
            margin: 7px 5px;
        }

        .active {
            border-left: 3px solid #d19b3d;
            background-color: #4f5b69;
        }
    }
}

/* AFFICHAGE DE LA PARTIE PIECE JOINTE */
.attachments {
    display: flex;
    align-items: center;
    text-align: left;

    a {
        text-align: left;
        display: flex;
        align-items: center;
    }
}

td.attachment-wrapper {
    border-bottom: 0 !important;

    display: flex;
    justify-content: space-between;
    border-left: 0 !important;
    border-right: 0 !important;
    margin-top: -1.5px;    
    margin-bottom: -2px;

    .attachment-list {
        min-width: 600px;
    }
}

.without-attachment-wrapper {
    border-bottom: 0 !important;

    display: flex;
    align-items: center;
    justify-content: space-between;
    border-left: 0 !important;
    border-right: 0 !important;
    margin-top: -1.5px;
    margin-bottom: -2px;


    p {
        text-align: center;
        width: 100%;
        font-size: 16px;
        color: black;
        font-weight: 500;
        margin: 0;
        min-width: 100px;
    }
}

.without-attachment-no-waiting-wrapper {
    border-bottom: 0 !important;

    p {
        text-align: center;
        width: 100%;
        font-size: 16px;
        color: black;
        font-weight: 500;
        margin: 0;
        min-width: 100px;
    }
}

/* BOX CONTENT */
.box-learner-content {
    margin-top: 40px;
    width: 80%;
    padding: 0% 2%;

    h1 {
        margin-bottom: 5%;
        font-size: 24px;
    }
}

.box-learner-content-formation {
    width: 65vw;

    
    @media(max-width: 768px) {
        width: 80vw;
        margin-left: -5vw;
    }
}


/* TABLEAU DES FORMATIONS */
table {
    width: 100%;
}

.table-head {
    height: 90px;

    .table-formation-head-content {
        th {
            font-size: 14px;
            padding: 10px;

            p {
                min-width: 200px;
                font-size: unset;
                color: unset;
                font-weight: unset;
                margin-top: 0;
                margin-bottom: -2rem;
            }
        }
    }
}

.table-body {
    text-align: center;

    .cellules-table {
        height: 60px;

        td {
            background-color: #FFFFFF;
            border: solid 1px #ddd;
            padding: 10px;
        }
    }

    .container-scrollable-justification {
        min-width: 350px !important;

        .scrollable-justification {
            max-height: 230px;
            overflow-y: auto;
            padding: 5px;
            word-wrap: break-word;
            height: auto;
            width: 86%;
            text-align: left;
            border: solid 1px rgb(0, 0, 0, 0.2);
            margin-right: 7%;
            margin-left: 7%;
        }
    }
}

.no-data-message {
    font-weight: bold;
}

/* TABLEAU DES PARCOURS */
.table-parcours-head {
    height: 90px;
    align-content: center;
    width: 92%;

    .table-parcours-head-content {
        display: flex;
        justify-content: space-around;
        height: 100%;
        font-size: 14px;
        font-weight: 800;
        text-transform: uppercase;

        div {
            align-content: center;
            padding: 10px;
            text-align: center;
        }
    }
}

.table-parcours-body {
    height: 100%;
    align-content: center;

    .table-parcours-body-content {
        display: flex;
        justify-content: space-around;
        height: 100%;
        font-size: 14px;
        font-weight: 800;
        text-transform: uppercase;
        background-color: #FFFFFF;
        border: solid 1px #E9E9E9;
        height: 90px;

        div {
            align-content: center;
            padding: 10px;
        }
    }
}

.table-parcours-body-details {
    margin-left: 5%;

    th {
        background-color: #a7a7a7 !important;
    }

    td {
        background-color: #F0F0F0 !important;
        border: solid 1px #DADADA !important;
    }
}


/* PERIODE */
.periode-actuelle {
    margin: 7% 0;
    font-size: 20px;
}

.change-periode {
    div:first-child {
        font-size: 20px;
        margin-bottom: 3%;
        font-weight: 800;
    }

    .change-periode-select {
        select {
            padding: 10px;
            border-radius: 10px;
            box-shadow: 4px 4px 5px #8a8a8a;
            background-color: white;
            border: thin solid #23282e;
            border-radius: 4px;
            margin: 0;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            -webkit-appearance: none;
            -moz-appearance: none;
            width: 270px;

            /* POUR LA FLECHE */
            background-image:
                linear-gradient(45deg, transparent 50%, #23282e 50%),
                linear-gradient(135deg, #23282e 50%, transparent 50%),
                linear-gradient(to right, #a1a1a1, #a1a1a1);
            background-position:
                calc(100% - 20px) calc(1em + 2px),
                calc(100% - 15px) calc(1em + 2px),
                100% 0;
            background-size:
                5px 5px,
                5px 5px,
                2.5em 2.5em;
            background-repeat: no-repeat;


            &:hover {
                background-image:
                    linear-gradient(45deg, #d19b3d 50%, transparent 50%),
                    linear-gradient(135deg, transparent 50%, #d19b3d 50%),
                    linear-gradient(to right, #2e353d, #2e353d);
                background-position:
                    calc(100% - 15px) 1em,
                    calc(100% - 20px) 1em,
                    100% 0;
                background-size:
                    5px 5px,
                    5px 5px,
                    2.5em 2.5em;
                background-repeat: no-repeat;
                border-color: grey;
                outline: 0;
            }
        }
    }

    .change-periode-button {
        text-align: end;

        button {
            border: 0;
            color: white;
            padding: 2%;
            font-size: 20px;
            border-radius: 15px;
            cursor: pointer;
            transition: all ease 0.3s;
            background-color: #53c953;

            &:hover {
                background-color: #329c32;
                transition: all ease 0.3s;
            }
        }

    }
}


/* FORMULAIRE */
#form-ajout {
    margin-left: 5%;

    .form-line {
        padding-bottom: 4%;

        input,
        textarea {
            background-color: #ececec;
            border: solid 1px gray;
            box-shadow: 4px 4px 5px #C7C7C7;
            border-radius: 10px;
            padding: 5px 10px;
            width: 50%;
        }

        #duree_heures,
        #duree_minutes {
            width: 50px;
            text-align: center;
        }

        #date {
            width: 160px;
        }

        label {
            width: 30%;
            text-align: left;
            font-size: 16px;

            span {
                color: red;
            }
        }
    }

    .ajout-numero-attestation {
        display: flex;
        align-items: center;

        textarea {
            height: 200px;
        }
    }

    .ajout-pieces-jointes {
        display: flex;

        .input_piece_jointe {

            display: flex;
            flex-direction: column;
            padding-left: 5px;
            width: 70%;

            #piece_jointe {
                background-color: unset;
                border: unset;
                box-shadow: unset;
                border-radius: unset;
                padding: unset;
                width: 100%;
            }

            span {
                opacity: 0.5;
                font-size: 14px;
                margin-top: 5px;
            }
        }
    }

    .ajout-button {
        text-align: end;

        button {
            border: 0;
            color: white;
            padding: 2%;
            font-size: 20px;
            border-radius: 15px;
            width: 150px;
            cursor: pointer;
            transition: all ease 0.3s;
            background: #53c953;

            &:hover {
                background-color: #329c32;
                transition: all ease 0.3s;
            }

            &[disabled] {
                background-color: #789d73;
                cursor: not-allowed;
            }

        }
    }
}


/* PAGE PROFIL */

.profil-learner{
    display: flex;
    flex-direction: column;

    .profil-learner-info{
        display: flex;
        justify-content: start;
        gap: 50px;
        width: 100%;
        margin-bottom: 10px;

        label{
            width: 160px;
            display: flex;
            align-items: center;
            justify-content: end;
            margin: 0;
        }

        div{
            width: 50%;

            span{
                cursor: not-allowed;
                color: gray;
            }

            .learner-profil-form-input{
                height: 30px;
                border: solid 2px lightgray;
                background-color: white;
                padding-left: 10px;
                border-radius: 3px;
                width: 80%;
                display: flex;
                align-items: center;
            }
        }

       
    }
}




/* PAGE APPRENANT (only admin access) */

.top-customer-apprenant {
    font-weight: bold;
    font-size: 24px;
    text-align: center;
    margin-bottom: 25px;
    display: flex;
    z-index: 100;

    @media(max-width: 768px) {
        justify-content: center;
    }

    .name-apprenant{
        align-self: center;
        /* POUR MODE MANUEL */
        /* width: 52%; */
        position: absolute;
        width: 96%;

        @media(max-width: 768px) {
            top: 70px;
        }
    }
}

.nav-apprenant{
    display: flex;
    gap: 20px;
    margin-bottom: 25px;
    margin-top: 25px;

    @media(max-width: 768px) {
        flex-direction: column;
    }
}


/* Liste déroulante pour changer l'état de la formation custom */
.container-form-modifier-etat-formation-custom{
    .etat-formation-dropdown {
        width: 150px;
        padding: 5px;
        font-size: 14px;
        border: 1px solid #ccc;
        border-radius: 5px;
        cursor: pointer;
        font-weight: bold;
        background-color: #f8f9fa;
        color: #333;
    }

    .etat-formation-dropdown.current-state {
        background-color: #007bff; 
        color: #fff;
        border-color: #0056b3; 
    }


    .validation-button-container {
        margin-top: 5px;
        text-align: center;
    }
    
    .validate-button {
        background-color: #28a745;
        color: #fff;
        padding: 5px 10px;
        border: none;
        border-radius: 3px;
        font-size: 14px;
        cursor: pointer;
        transition: background-color 0.3s;
    }
    
    .validate-button:hover {
        background-color: #218838;
    }
    
    

}



/* Bouton pour ouvrir/fermer le menu */
.toggle-periode-menu {
    border: solid 3px black;
    border-radius: 5px;
    background-color: white;
    font-weight: bold;
    padding: 10px;
    height: 55px;
    cursor: pointer;
    width: 260px;

}

.toggle-periode-menu:hover {
    background-color: #3d4a57;
    color: white;
}


.toggle-periode-menu.active {
    color: white;
    background: linear-gradient(to right, orange 3px, #4F5B69 3px);
}

.change-periode-apprenant-by-link {
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 15px;
    background-color: #f9f9f9;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    margin-top: 10px;
    width: 260px;
    position: absolute;
}

.apprenant-help-link-button{
    
    .nav-button-apprenant-help{
        display: flex;
        color : #007BFF;

        i{
            align-self: center;
        }

        p{
            margin-bottom: 0;
            color: unset;
            font-size: unset;
            font-weight: unset;
            height: fit-content;
            align-self: center;
        }
    }
}

.nav-button-apprenant, .nav-button-apprenant-help {
    border: solid 3px black;
    border-radius: 5px;
    background-color: white;
    font-weight: bold;
    padding: 10px;
    height: 55px;
    cursor: pointer;

    i{
        margin-left: 5px;
    }

    &:hover{
        color: white;
        background-color: #4F5B69;

        a{
            color: white;
        }
    }

    &.active{
        color: white;
        background: linear-gradient(to right, orange 3px, #4F5B69 3px);
    }
}


.wrapper-affichage-apprenant{
    display: flex;
    flex-direction: row;

    h1{
        margin-top: 20px;
    }

    .box-learner-content-apprenant-page{
        width: 100%;
    }
}


/* Liens pour changer de période */
.wrapper-button-change-periode-apprenant{
    display: flex;
    flex-direction: column;
}

button[name="change-period-apprenant"] {
    background: none;
    border: none;
    text-decoration: none;
    cursor: pointer;
    font-size: 18px;
    width: fit-content;
    text-align: left;
    padding-top: 8px;
}

button[name="change-period-apprenant"]:hover {
    text-decoration: underline;
    font-weight: bold;
}







/* FOOTER */
.footer-period {
    color: gray;
    display: flex;
    flex-direction: column;
    text-align: center;
    margin-top: 60px;

    span {
        margin: 0;
    }
}


/*----------------------*/
/* POP UP D'INFORMATION */
/*----------------------*/

/* Popup des restrictions de fichiers */
.popup-apprenant, .popup-apprenant-2 {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    display: none;
}

#button-pop-up-container-apprenant {
    width: 98%;
    position: relative;
    bottom: 13px;
    justify-content: end;
    display: flex;

    .info-button-apprenant, .info-button-apprenant-2 {
        background: white;
        cursor: pointer;
        border: 0;
        padding: 5px;
        border-radius: 30px;

        &:hover {
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
        }

        i {
            color: #007BFF;
        }
    }
}


/* Superposition grise */
.overlay-apprenant, .overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 999;
    display: none;
}

/* Contenu de la popup */
.popup-content-apprenant {
    position: relative;
}

/* Bouton de fermeture */
.close-popup-apprenant, .close-popup-apprenant-2 {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 20px;
    cursor: pointer;
}

/* Style pour le titre */
.popup-apprenant h3 {
    margin-top: 0;
    color: #333;
    text-transform: initial;
}

/* Style pour les restrictions */
.data-popup-apprenant {
    color: #555;
    font-size: 14px;
    text-transform: initial;
}


/* FORM PAGE ATTENTE */
#modif-pj {
    display: flex;
    flex-direction: column;

    .input-container {
        display: flex;
        justify-content: end;
    }

    .file-names-container {
        display: flex;
        justify-content: end;
    }

    .modifier-section,
    .ajouter-section {
        label {
            max-width: unset;
        }
    }

    label {
        cursor: pointer;
        border: solid 1px #8f8f9d;
        height: auto;
        position: relative;
        background-color: #e9e9ed;
        border-radius: 4px;
        padding: 4.8px;
        margin-right: 10px;
        width: fit-content;
        max-width: 200px;

        &:hover {
            background-color: #d0d0d7;
            border: solid 1px #676774;
        }
    }

    /* Style du texte affichant les noms des fichiers */
    .file-names {
        display: flex;
        color: #000000;
        opacity: 0.5;
        font-size: 14px;
        text-align: right;
    }

    /* Cacher l'input file pour personnaliser son apparence avec un label */
    input[type="file"] {
        display: none;
    }

    /* Conteneur pour les boutons et les sections */
    .input-container {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    /* Styles des boutons de paramétrage, fermeture, onglets et retour */
    .settings-button,
    .close-button,
    .tab-button,
    .back-button {
        margin: 5px;
        padding: 10px 15px;
        background-color: #007BFF;
        color: white;
        border: none;
        border-radius: 5px;
        cursor: pointer;
    }

    .back-button {
        margin-bottom: 20px;
    }

    .cancel {
        background-color: #ababab !important;

        &:hover {
            background-color: #8e8e8e !important;
        }
    }

    /* Boutons des onglets ont une couleur différente */
    .tab-button {
        background-color: #6c757d;
    }

    .action-button {
        background-color: green;
        border-radius: 5px;
        border: solid 1px gray;
        color: white;
        padding: 4px;
        font-size: 14px;
        width: fit-content;
        align-self: center;
        cursor: pointer;

        &:hover {
            background-color: rgb(2, 100, 2);
        }
    }

    /* Changement de couleur au survol pour tous les boutons */
    .tab-button:hover,
    .settings-button:hover,
    .close-button:hover,
    .back-button:hover {
        background-color: #0056b3;
    }

    /* Style pour les sections Ajouter, Modifier, Supprimer */
    .ajouter-section,
    .modifier-section,
    .supprimer-section {
        margin-top: 10px;
        box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, .2);
        margin-top: 2rem;
        background: #fff;
        padding: 1.25rem 1.875rem;
        width: 350px;
    }



    /* POP UP DE CONFIRMATION MODIFICATION */
    .confirm-modifier {
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 50%;
        background-color: white;
        padding: 40px;
        border-radius: 10px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
        border: solid 1px black;
        z-index: 1000;

        p {
            color: black;
        }
    }

    /* POP UP DE CONFIRMATION MODIFICATION */
    .confirm-supprimer {
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 50%;
        background-color: white;
        padding: 40px;
        border-radius: 10px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
        border: solid 1px black;
        z-index: 1000;

        p {
            color: black;
        }
    }

    .supprimer-section .supprimer-button-section {
        display: flex;
        flex-direction: column;
    }

    /* Liste des cases à cocher pour les fichiers */
    .checkbox-list {
        margin: 10px 0;
    }
}