/* Styles généraux */
.trainings-chronological{
    max-width: 1260px;
    margin: 0 auto;
}

.training-item{
    margin-bottom: 20px;
    padding: 20px 10px 20px 40px;
    display: flex;
    align-items: stretch;
    width: 100%;
    border-radius: 15px;
}
.training-item-section{
    padding: 0 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.training-item-section:first-child{
    width: 55%;
    justify-content: flex-start;
}
.training-item-section:first-child .training-categorie,
.training-item-section:first-child .training-name,
.training-item-section:first-child .training-trainer{
    width: 100%;
}
.training-item-section:nth-child(2){
    width: 33%;
}
.training-item-section:last-child{
    width: 12%;
}
.training-item-section .training-name span{
    font-family: "Agency";
    line-height: 1.125;
    font-size: 2rem;
}
.training-item-section .training-trainer span{
    font-family: "Poppins";
    font-size: 1.25rem;
    font-weight: 600;
}
.training-item-section .training-dates span,
.training-item-section .training-location span{
    display: block;
    text-align: center;
}
.training-item-section .training-categorie{
    margin-bottom: 10px;
}
.training-item-section .training-categorie span{
    font-family: "Poppins";
    font-size: 0.75rem;
    border-radius: 8px;
    padding: 3px 5px;
    font-weight: 500;
}
.training-item-section .training-dates span:first-child,
.training-item-section .training-location span:first-child{
    font-family: "Poppins";
    font-size: 1.125rem;
    font-weight: 500;
}
.training-item-section .training-dates span:last-child,
.training-item-section .training-location span:last-child{
    font-family: "Poppins";
    font-size: 1.25rem;
    font-weight: 500;
}
.training-item-section .training-trainer span:last-child{
    font-family: "Poppins";
    font-size: 1.25rem;
    font-weight: 500;
}

/* Couleurs des cours */

/* Cours fondamental */
.training-item.course-fondamental{
    border: solid 2px var( --TissueHarmony500 );
}
.training-item.course-fondamental .training-item-section:nth-child(2){
    border-left: solid 1px var( --TissueHarmony500 );
    border-right: solid 1px var( --TissueHarmony500 );
}
.training-item.course-fondamental .training-item-section .training-categorie span{
    color: var( --e-global-color-accent );
    background: rgba(var( --TissueHarmony50-rgb ), 0.6);
}
.training-item.course-fondamental .training-item-section .training-name span,
.training-item.course-fondamental .training-item-section .training-dates span:last-child,
.training-item.course-fondamental .training-item-section .training-location span:last-child{
    color: var( --TissueHarmony500 );
}

/* Cours complémentaire */
.training-item.course-complementary{
    border: solid 2px #3099B0;
}
.training-item.course-complementary .training-item-section:nth-child(2){
    border-left: solid 1px #3099B0;
    border-right: solid 1px #3099B0;
}
.training-item.course-complementary .training-item-section .training-categorie span{
    color: #3099B0;
    background: rgba(48, 153, 176, 0.1);
}
.training-item.course-complementary .training-item-section .training-name span,
.training-item.course-complementary .training-item-section .training-dates span:last-child,
.training-item.course-complementary .training-item-section .training-location span:last-child{
    color: #3099B0;
}

/* Parcours professionnalisation */
.training-item.course-professionnalization{
    border: solid 2px var( --NeuroAir400);
}
.training-item.course-professionnalization .training-item-section:nth-child(2){
    border-left: solid 1px var( --NeuroAir400 );
    border-right: solid 1px var( --NeuroAir400 );
}
.training-item.course-professionnalization .training-item-section .training-categorie span{
    color: #75C7BE;
}
.training-item.course-professionnalization .training-item-section .training-name span,
.training-item.course-professionnalization .training-item-section .training-dates span:last-child,
.training-item.course-professionnalization .training-item-section .training-location span:last-child{
    color: #75C7BE;
}
.training-item.course-professionnalization .training-item-section .training-name span{
    color: #333333;
}

/* Examen */
.training-item.examen{
    border: solid 2px #C0504D;
}
.training-item.examen .training-item-section:nth-child(2){
    border-left: solid 1px #C0504D;
    border-right: solid 1px #C0504D;
}
.training-item.examen .training-item-section .training-name span,
.training-item.examen .training-item-section .training-dates span:last-child,
.training-item.examen .training-item-section .training-location span:last-child{
    color: #C0504D;
}

/* Spécialités */
.training-item.course-speciality{
    border: solid 2px var( --DeepCore700 );
}
.training-item.course-speciality .training-item-section:nth-child(2){
    border-left: solid 1px var( --DeepCore700 );
    border-right: solid 1px var( --DeepCore700 );
}
.training-item.course-speciality .training-item-section .training-categorie span{
    color: var( --DeepCore700 );
    background: rgba( var( --DeepCore950-rgb ), 0.1 );
}
.training-item.course-speciality .training-item-section .training-name span,
.training-item.course-speciality .training-item-section .training-dates span:last-child,
.training-item.course-speciality .training-item-section .training-location span:last-child{
    color: var( --DeepCore700 );
}

/* Ateliers */
.training-item.course-workshop{
    border: solid 2px #DB711D;
}
.training-item.course-workshop .training-item-section:nth-child(2){
    border-left: solid 1px #DB711D;
    border-right: solid 1px #DB711D;
}
.training-item.course-workshop .training-item-section .training-categorie span{
    color: var( --e-global-color-primary );
    background: rgba(var( --SynapticGlow500-rgb ), 0.1);
}
.training-item.course-workshop .training-item-section .training-name span,
.training-item.course-workshop .training-item-section .training-dates span:last-child,
.training-item.course-workshop .training-item-section .training-location span:last-child{
    color: #DB711D;
}




/* Styles de l'affichage calendrier */
.trainings-calendar-view{
    max-width: 1260px;
    margin: auto;
}
.trainings-calendar-view h3 {
    border-bottom: 2px solid #eee;
    padding-bottom: 10px;
    margin-bottom: 20px;
}

.trainings-month-calendar {
    margin-bottom: 30px;
}

.trainings-month-calendar h4 {
    background-color: #f0f0f0;
    padding: 10px;
    margin-bottom: 15px;
    border-radius: 4px;
}

.trainings-calendar-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 30px;
}

.trainings-calendar-table th,
.trainings-calendar-table td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: center;
    vertical-align: top;
}

.trainings-calendar-table th {
    background-color: #f0f0f0;
    font-weight: bold;
}

.trainings-calendar-table td {
    height: 100px;
    width: 14.28%;
}

.trainings-calendar-table td.empty {
    background-color: #f9f9f9;
}

.trainings-calendar-table .day-number {
    font-weight: bold;
    margin-bottom: 5px;
    text-align: right;
}

.trainings-calendar-table .day-trainings {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.trainings-calendar-table .training-item {
    display: flex;
    flex-wrap: wrap;
    padding: 5px;
    font-size: 0.8em;
    margin-bottom: 3px;
    border-radius: 3px;
    box-shadow: none;
}

.trainings-calendar-table .training-item:hover {
    transform: none;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.trainings-calendar-table .training-item span{
    width: 100%;
}

.trainings-calendar-table .training-title {
    margin-bottom: 2px;
    font-size: 0.9em;
}

.trainings-calendar-table .training-site {
    font-size: 0.8em;
}

/* Styles pour les formations qui s'étendent sur plusieurs jours */
.trainings-calendar-table .training-item{
    border: none;
    cursor: pointer;
}
.trainings-calendar-table .training-item.first-day{
        border-top-left-radius: 20px;
        border-bottom-left-radius: 20px;
}
.trainings-calendar-table .training-item.last-day{
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
}


/* Cours fondamentaux */
.trainings-calendar-table .training-item.course-fondamental{
    background: #6AB5AD;
    color: #FFFFFF;
}
.trainings-calendar-table .training-item.course-fondamental.first-day{
    background: linear-gradient(90deg, #7FD9CF 0%, #6AB5AD 100%);
}
.trainings-calendar-table .training-item.course-fondamental.last-day{
    background: linear-gradient(90deg, #6AB5AD 0%, #7FD9CF 100%);
}

/* Cours complémentaires */
.trainings-calendar-table .training-item.course-complementary{
    background: #3099B0;
    color: #FFFFFF;
}
.trainings-calendar-table .training-item.course-complementary.first-day{
    background: linear-gradient(90deg, #55CFEB 0%, #3099B0 100%);
}
.trainings-calendar-table .training-item.course-complementary.last-day{
    background: linear-gradient(90deg, #3099B0 0%, #55CFEB 100%);
}

/* parcours pro */
.trainings-calendar-table .training-item.course-professionnalization{
    background: #D1F2ED;
    color: #515151;
}
.trainings-calendar-table .training-item.course-professionnalization.first-day{
    background: linear-gradient(90deg, #F3FBFA 0%, #D1F2ED 100%);
}
.trainings-calendar-table .training-item.course-professionnalization.last-day{
    background: linear-gradient(90deg, #D1F2ED 0%, #F3FBFA 100%);
}

/* Spécialités */
.trainings-calendar-table .training-item.course-speciality{
    background: var( --DeepCore700 );
    color: #FFFFFF;
}
.trainings-calendar-table .training-item.course-speciality.first-day{
    background: linear-gradient(90deg, var( --DeepCore400 ) 0%, var( --DeepCore700 ) 100%);
}
.trainings-calendar-table .training-item.course-speciality.last-day{
    background: linear-gradient(90deg, var( --DeepCore700 ) 0%, var( --DeepCore400 ) 100%);
}

/* Atelier */
.trainings-calendar-table .training-item.course-workshop{
    background: #DB711D;
    color: #FFFFFF;
}
.trainings-calendar-table .training-item.course-workshop.first-day{
    background: linear-gradient(90deg, #FAA743 0%, #F09637 40%, #DB711D 100%);
}
.trainings-calendar-table .training-item.course-workshop.last-day{
    background: linear-gradient(90deg, #DB711D 0%, #F09637 40%, #FAA743 100%);
}

/* Examen */
.trainings-calendar-table .training-item.examen{
    background: #C0504D;
    color: #FFFFFF;
}
.trainings-calendar-table .training-item.examen.first-day{
    background: linear-gradient(90deg, #F6716D 0%, #C0504D 100%);
}
.trainings-calendar-table .training-item.examen.last-day{
    background: linear-gradient(90deg, #C0504D 0%, #F6716D 100%);
}


a.calendar-course-link{
    background: linear-gradient(90deg, #FAA743 0%, #F09637 40%, #DB711D 100%);
    display: inline-block;
    border-radius: 20px;
    margin-top: 10px;
    padding: 4px 8px;
    color: #FFFFFF;
}
a.calendar-course-link:hover{
    color: #FFFFFF;
}








/* Responsive */
@media (max-width: 1024px) {

    .training-item-section .training-categorie span,
    .training-item-section .training-dates span:first-child, .training-item-section .training-location span:first-child{
        font-size: 1rem;
    }
    .training-item-section .training-name span{
        font-size: 1.5rem;
    }
    .training-item-section .training-trainer span:last-child,
    .training-item-section .training-dates span:last-child, .training-item-section .training-location span:last-child{
        font-size: 1.125rem;
    }
    
}



@media (max-width: 767px) {
    
    .training-item{
        flex-wrap: wrap;
        padding: 10px 0px;
    }
    .training-item-section:not(:last-child){
        margin-bottom: 10px;
    }
    .training-item-section:first-child{
        width: 100%;
    }
    .training-item-section .training-categorie span{
        font-size: 0.625rem;
    }
    .training-item-section .training-trainer{
        margin-top: -5px;
    }
    .training-item-section .training-trainer span:last-child{
        font-size: 0.875rem
    }
    .training-item .training-item-section:nth-child(2){
        line-height: 1.25rem;
        width: 100% !important;
        border-left: none !important;
        border-right: none !important;
    }
    .training-item-section:last-child{
        width: 100%;
        line-height: 1.25rem;
    }
    .training-item-section .training-dates span:first-child,
    .training-item-section .training-location span:first-child{
        font-size: 0.875rem;
    }

    .training-item-section {
        justify-content: flex-start;
    }
    .training-item-section .training-dates span,
    .training-item-section .training-location span{
        text-align: left;
    }



    /* Calendar */
    .trainings-calendar-table th,
    .trainings-calendar-table td{
        padding: 3px;
    }
    .trainings-calendar-table .training-item{
        padding: 1px;
    }
    .trainings-calendar-table .training-item.course-fondamental,
    .trainings-calendar-table .training-item.course-complementary,
    .trainings-calendar-table .training-item.course-professionnalization,
    .trainings-calendar-table .training-item.course-speciality,
    .trainings-calendar-table .training-item.course-workshop{
        border-width: 1px;
    }
    .trainings-calendar-table .training-item.first-day{
        border-top-left-radius: 10px;
        border-bottom-left-radius: 10px;
    }
    .trainings-calendar-table .training-item.last-day{
        border-top-right-radius: 10px;
        border-bottom-right-radius: 10px;
    }
    .trainings-calendar-table .training-title{
        margin-bottom: 2px;
        font-size: 0.675rem;
    }
    .trainings-calendar-table .training-site{
        font-size: 0.5rem;
    }

}
