/* <editor-fold desc="PROGRAMME-CALENDAR"> */
#programme-calendar {
    font-family: 'Avenir', 'Open Sans', 'Roboto', 'Arial', sans-serif;
}

#programme-calendar .roomsName,
#programme-calendar #label-select-timezone-prog-list {
    font-weight: bold;
}

#programme-calendar .roomsName > span,
#programme-calendar #label-select-timezone-prog-list {
    color: var(--ers-black80-color);
}

#programme-calendar #programmeMyAgendaBtn {
    display: none;
    color: var(--ers-white-color) !important;
    text-transform: capitalize;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px; /* 150% */
    padding: 6px 12px;
    width: 100%;
}

#programme-calendar .roomsName {
    border-radius: 0;
    color: #FFFFFF;
}

#programme-calendar .programContent {
    border-radius: 0;
    color: #FFFFFF;
}

.program-session-card-view-details .programSessionButtons a {
    position: inherit;
}

#programme-calendar #programme-date-picker > button {
    max-width: 100px;
    margin-top: 2px;
}

#programme-calendar #programme-date-picker button {
    border-radius: 0;
    background-color: var(--ers-white-color);
    color: var(--ers-cobalt-100);
    border: 1px solid var(--ers-cobalt-100, #0F589A);
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
}

#programme-calendar .programme-session-card_info i {
    color: var(--ers-cobalt-100, #0F589A);
    margin-right: 4px;
    height: 100%;
}

#programme-calendar .programme-session-card_cme p,
#modal-sessions-div .programme-session-card_cme p,
.programme-session-card_cme.session-cme-block p {
    color: var(--ers-cobalt-100, #0F589A) !important;
}

#programme-calendar #programme-date-picker button:last-child {
    border-radius: 0 2px 2px 0;
}

#programme-calendar #programme-date-picker button:first-child {
    border-radius: 2px 0 0 2px;
}
#programme-calendar #programme-date-picker .selected {
    color: var(--ers-white-color);
}



#programme-calendar #programme-date-picker .selected,
#programme-calendar .roomsName {
    background-color: #494949;
    border: solid 1px #494949;
}

#programme-calendar .roomsName {
    font-size: 20px;
    margin-right: 1px;
    margin-left: 1px;
}

#programme-calendar .scrollProgramLeft {
    margin-right: -11px;
}

#programme-calendar .scrollProgramLeft,
#programme-calendar .scrollProgramRight {
    float: none;
    z-index: 1;
    color: #494949;
}

#programme-calendar .scrollProgramRight {
    margin-left: -25px;
}

#programme-calendar #arrow-right i,
#programme-calendar #arrow-left i {
    font-size: 26px;
    cursor: pointer;
}

#programme-calendar .live-program-hour-bar-body .hourContent {
    min-width: 48px;
    background-color: #1D766E;
    border: solid 1px #FFFFFF;
    font-size: 10px;
    font-weight: bold;
    color: #FFFFFF;
}

#programme-calendar .program-grid-calandar {
    background-color: #E4E4E4;
    border-left: solid 1px #707070 !important;
    border-right: solid 1px #707070 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;

}

#programme-calendar .programme-session-card {
    border: solid 1px #707070 !important;
    margin-left: -1px;
}

#programme-calendar .header-programme-session-card,
#programme-calendar .header-programme-session-card-cotype {
    font-weight: bold;
}

#programme-calendar .header-programme-session-card-cotype {
    font-weight: 800;
    line-height: 24px;
}

#programme-calendar .header-programme-session-card-hour__header {
    background-color: var(--ers-cobalt-color);
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
}

#programme-calendar .header-programme-session-card-hour {
    color: var(--ers-white-color) !important;
}

#programme-calendar .program-session-card-reference {
    display:inline;
    text-overflow: ellipsis;
    font-size: 14px;
    font-style: normal;
    line-height: 18px; /* 128.571% */
}

#programme-calendar .program-session-card-reference strong {
    font-weight: 800!important;
}

#programme-calendar .program-session-card-title h4 {
    color: var(--ers-black80-color);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
}

#arrow-right .active,
#arrow-left .active {
    color: white;
}

.program-session-card-title span {
    font-size: 12px;
    color: #494949;
}

.program-session-card-title .programme-session-card-need-payment {
    color: var(--ers-cobalt-color);
}

#arrow-left .hide,
#arrow-right .hide {
    display: none;
}

#programme-calendar #row-hour {
    font-size: 10px;
    margin-top: 10px;
}

#programme-advanced-search-header {
    padding:0px!important;
}

#type-list {
    padding-left: 118px;
    padding-right: 118px;
}

#programme-calendar .colorSquare {
    height: 20px;
    width: 20px;
    background-color: black;
    flex-shrink: 0;
}

#programme-calendar .type-list {
    font-size: 11px;
}

#programmeAdvSearchContainer button > i,
#programmeAdvSearchContainer button > span,
#programmeAdvSearchContainer a > span,
#programmeAdvSearchContainer a > i {
    color: var(--ers-white-color);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px; /* 150% */
}

.live-program-hour-bar-body > div:first-child {
    border-top: 1px transparent solid;
}

.live-program-hour-bar-body > div:first-child .hourContent {
    border-top: 0 !important;
}

.live-program-hour-bar-body > div:last-child {
    border-bottom: 1px transparent solid;
}

.live-program-hour-bar-body > div:last-child .hourContent {
    border-bottom: 0px !important;
}

.header-programme-session-card-theme {
    display: none !important;
}

.header-programme-session-card-cat {
    display: none !important;
}

#programmeAdvTypeBtn {
    /*background-color: #98c01f;*/
    /*border: solid 1px #98c01f;*/
}

#timeline {
    width: 100%;
    position: absolute;
    top: 0;
    /*color: #98c01f;*/
    display: none;
    height: 20px;
}

#timeline .mainContent {
    /*border-top: dashed 3px #98c01f;*/
}

.iconHour1,
.iconHour2 {
    font-size: 1.5em;
}

/*Calendar Programme Scrollbar Management*/
.session-grid-scroll,
.session-grid-scroll::-webkit-scrollbar {
    overflow: hidden;
}

.session-grid-scroll::-webkit-scrollbar {
    /*width: 0.5em;
    height: 0.5em;*/
    background-color: rgba(255, 255, 255, .9);
    border-radius: 3px;
}

/*Masquage scrollbars en JS pour garder la hauteur*/
.session-grid-scroll.session-grid-scrollbar-hidden::-webkit-scrollbar-track {
    background-color: rgba(241, 167, 11, 0)!important;
}
.session-grid-scroll.session-grid-scrollbar-hidden {
    scrollbar-color: #FFFFFF #FFFFFF;
}

.session-grid-scroll.session-grid-scrollbar-hidden-firefox {
    scrollbar-width: none;
    padding-bottom:24px;
}

@-moz-document url-prefix() {
    .session-grid-scroll.session-grid-scrollbar-hidden-firefox {
        scrollbar-width: none;
        padding-bottom: 0px;
    }
}

.session-grid-scroll::-webkit-scrollbar {
    height: 15px;
}

.session-grid-scroll::-webkit-scrollbar-track {
    /*background-color: #83BF45!important;*/
    border-radius: 3px;
}

.session-grid-scroll::-webkit-scrollbar-thumb {
    background: #494949!important;
    border-radius: 3px;
}

.session-grid-scroll::-webkit-scrollbar-thumb:hover {
    background: #000000 !important;
}

/* END RESPONSIVE */

/* </editor-fold desc="PROGRAMME-CALENDAR"> */


#programme-calendar #programme-advanced-search-content input {
    height: 30px;

}

#programme-calendar #zone-principale {
    margin-top: 0px !important;
}

div#program_calendar-content {
    border-right: 0;
}

#programme-calendar .case-reports__content-holder {
    max-width: 1356px! important;
}

#program_calendar-header {
    top: 40px;
}
#programme-calendar .live-program-hour-bar-body {
    background-color: var(--ers-cobalt30-color);

}

#programme-calendar .live-program-hour-bar-body .border {
    border: 1px solid white!important;
}

#programme-calendar .live-program-hour-bar-body div.row:first-child .border {
    border-top: 1px solid var(--ers-cobalt30-color)!important;
}

#programme-calendar #programme-date-picker .selected, #programme-calendar .roomsName {
    background-color: var(--ers-cobalt30-color);
    border: var(--ers-cobalt30-color);
}
.live-program-hour-bar-body>div:first-child {
    border-top: var(--ers-cobalt30-color);
}

#programme-calendar .fa.fa-calendar-exclamation {
    color: #CF0000;
}

#programme-calendar .caption_square {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

#programme-calendar .program-grid-calandar {
    background-color: var(--ers-cobalt20-color) !important;
    border-left: solid 1px var(--ers-cobalt20-color)!important;
    border-right: solid 1px var(--ers-cobalt20-color)!important;
    border-top: 0!important;
    border-bottom: 0!important;
}

#programme-calendar .programme-session-card:not(#programme-calendar .ers-programme-session-card_v2):not(#programme-calendar .ers-programme-session-card) {
    border: solid 1px white!important;
    margin-left: -1px;
    border-radius: 4px;
}

#programme-calendar .ers-programme-session-card_v2,
#programme-calendar .ers-programme-session-card {
    margin-left: -1px;
    border: solid 1px var(--ers-cobalt-color)!important;
    border-radius: 5px;
}

#programme-calendar .ers-programme-session-card {
    border-top-color: #ffffff!important;
}


#programme-calendar .programme-session-card_replay,
#programme-calendar .programme-session-card_live {
    border-radius: 10px;
    background: var(--ers-cobalt-100, #0F589A);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 4px;
    width:  73px;
    height: 20px;
}

#programme-calendar .programme-session-card_live {
    background: #dc3545;
}

#programme-calendar .programme-session-card_info {
    height: 100%;
    align-items: center;
    justify-content: center;
}

#programme-calendar .programme-session-card_info i {
    color: var(--ers-cobalt-100, #0F589A);
    margin-right: 4px;
    height: 100%;
}

#programme-calendar .programme-session-card_cme p,
#modal-sessions-div .programme-session-card_cme p {
    color: var(--ers-cobalt-100, #0F589A) !important;
}

#programme-calendar .programme-session-card_replay a,
#programme-calendar .programme-session-card_live a {
    overflow: hidden;
    color: var(--ers-white-color) !important;
    text-align: center;
    padding: 5px 10px;
    text-overflow: ellipsis;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
}

#programme-calendar .roomsName,
#programme-calendar .live-program-hour-bar-body div {
    color: #000;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
}

#programme-calendar #program_calendar-header {
    border-bottom: 1px solid white;
}

#programme-calendar .row.live-program-card-row-grid {
    border-left: 1px solid white;
}

#programme-calendar .session-grid-scroll-div {
    border-bottom: 1px solid white;
}
#programme-calendar .session-grid-scroll-div .roomsName {
    height: 56px;
    flex-shrink: 0;
}

#programme-calendar .live-program-hour-bar-body__hour {
    padding-top: 19px;
}

.live-program-hour-bar-body>div:last-child {
    border-bottom: 1px solid white!important;
}

/* <editor-fold desc="ARROWS"> */

.program-arrow {
    height: 56px;
    width: 56px;
    bottom: 1px;
    display: block;
    cursor: pointer;
}

.program-arrow > div {
    height: 100%;
    width: 100%;
    margin: 0!important;
    display: flex!important;
    justify-content: center;
    align-items: center;

}
.program-arrow.active {
    border-radius: 2px;
    background: var(--ers-cobalt-100, #0F589A);
}

.program-arrow.disable,
.program-arrow.disable-arrow {
    border-radius: 2px;
    background-color: var(--ers-black-20, #CCC);
}
.program-arrow-left {
    bottom: 1px;
    left:56px;
}
.program-arrow-right {
    right: 0;
}

.program-arrow i {
    color: #FFF;
    text-align: center;
    font-size: 22px;
    font-weight: 900;
    line-height: 24px;
}
/* </editor-fold desc="ARROWS"> */

/* <editor-fold desc="BOOSTRAP-SELECT-RESET"> */
.bootstrap-select input {
    background-color: white !important;
}
.bootstrap-select li,
.bootstrap-select span,
.bootstrap-select {
    color: var(--ers-black80-color) !important;
}
.bootstrap-select button {
    letter-spacing: unset;
    text-transform: unset;
}
.bootstrap-select>.dropdown-toggle:after {
    color: var(--ers-black80-color, #333);
    text-align: right;
    font-size: 16px;
    font-family: "Font Awesome 6 Pro";
    line-height: 24px;
}
.filter-option-inner-inner {
    color: var(--ers-black80-color, #333);
    /* P white */
    font-size: 16px;
    font-family: Avenir;
    font-weight: 500;
    line-height: 24px;
}
/* </editor-fold desc="BOOSTRAP-SELECT-RESET"> */

/* <editor-fold desc="TIMEZONE-SELECT"> */
#div-timezone-prog-list{
    width: 191px;
    border-radius: 2px;
    border: 1px solid var(--ers-black-80, #333);
    background: #FFF;
    box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.25);
}
#label-select-timezone-prog-list {
    color: var(--ers-black-80, #333);
    font-size: 16px;
    font-family: Avenir;
    font-weight: 500;
}
/* </editor-fold desc="TIMEZONE-SELECT"> */

/* <editor-fold desc="TOP-BUTTON"> */
#programmeAdvSearchContainer a.btn,
#programmeAdvSearchContainer button {
    max-width: 200px;
    letter-spacing: unset;
    text-transform: unset;
    border-radius: 2px;
    background: var(--ers-cobalt-100, #0F589A);
    border: 0;
}

#programmeAdvSearchContainer .fa.fa-file-pdf {
    display: none!important;
}
/* </editor-fold desc="TOP-BUTTON"> */


/* <editor-fold desc="MEDIA-QUERIES"> */

@media (max-width: 576px) {
    .live-program-hour-bar-body__hour {
        padding: 19px 2px 0 2px;
    }
    .roomsName {
        padding-left: 75px!important;
    }

    #programmeAdvSearchContainer {
        width: 80% !important;
        margin: auto;
    }

    #programmeAdvSearchContainer > * {
        max-width: 100% !important;
    }
}
@media (max-width: 767px) {
    #programmeAdvSearchContainer {
        width: 80% !important;
        margin: auto;
        margin-top: 20px;
    }

    #programmeAdvSearchContainer > * {
        max-width: 100% !important;
    }
}


.header-programme-session-card-hour__header {
    background-color: var(--ers-cobalt-color);
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
}

/* </editor-fold desc="MEDIA-QUERIES"> */

.program_advanced-search_checkbox-label {
    font-size: 16px;
}

.program_advanced-search_section {
    box-shadow: none;
    border:none;
    border-top: 1px solid #6F9BC2;
}

.program_advanced-search_button {
    border-radius:0px;
    letter-spacing: 0px;
}

#programme-date-picker button {
    overflow: unset!important;
}

.prgBadgeSessionNotCurrentDay {
    color:#ffffff;
}
.prgBadgeSessionByDays{
    height:18px;
    width:18px;
}

#programme-date-picker button {
    border-radius: 42px;
    margin-right: 15px;
    width: unset;
    height: 40px;
    max-width: unset;
    margin-bottom: 15px;
}


/* Supprimer les scroll ports intermediaires pour que position:sticky fonctionne */
#calendar-wrapper .fc-scroller,
#calendar-wrapper .fc-scroller-harness {
    overflow: visible !important;
}

/* Forcer la couche des events SOUS les labels sticky */
.fc-timegrid-cols {
    z-index: 1 !important;
}
.fc-timegrid-slots {
    position: relative !important;
    z-index: 2 !important;
    pointer-events: none;
}

.fc-col-header-cell.fc-resource {
    background-color: var(--ers-cobalt30-color);
    font-weight: bold;
    text-align: center;
    padding: 10px 0;
    border: 1px solid var(--ers-cobalt30-color);;
}

.fc-col-header .fc-timegrid-axis,
.fc-timegrid-slot-label {
    position: sticky !important;
    left: 0 !important;
    z-index: 10000;
    background-color: var(--ers-cobalt30-color);
    box-shadow: 2px 0 2px rgba(0, 0, 0, 0.1);
    pointer-events: auto;
}


.fc-col-header .fc-timegrid-axis {
    background-color: var(--ers-cobalt30-color);
}

.fc-timegrid-slot-lane {
    background-color: var(--ers-cobalt30-color);
}

.header-programme-session-card-cotype {
    color: var(--ers-black80-color);
    font-size: 13px;
}

#programme-calendar .roomsName {
    margin-top: 0px;
    padding-left: 1rem;
    text-align: left;
}

.fc-direction-ltr .fc-timegrid-col-events {
    margin:0px 5px 0px 5px;
}

.fc-timegrid-slot-label-cushion {
    color: #000;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
}

.scroll-btn {
    padding: 2px 7px;
    border: 1px solid var(--ers-cobalt-100);
    color: var(--ers-cobalt-100);
}

#scrollbar-thumb {
    background:var(--ers-cobalt-100) ;
}
