/**/
.fc-day-grid-container{ height: 100% !important;}
#events-calendar table{ margin: 0 !important;}
#events-calendar{
    max-width: 1100px;
    width: 100%;
    margin: 0 auto;
}
#events-calendar .fc-left h2{ 
    color: var(--koaPurple);
    font-size: 22px;
    margin-right: 5px;
}

.fc-toolbar.fc-header-toolbar > .fc-left > div{ display: flex;}

.fc-day-header{ 
    padding: 10px 0 !important;
    background: var(--koaPurple);
    color: var(--koaWhite);
}
.fc-scroller.fc-day-grid-container{ overflow: hidden !important;}
.fc-title{ 
    text-wrap: wrap;
    font-weight: 600;
    font-size: 14px;
}
.style-light table,
.fc-unthemed tbody,
.fc .fc-row .fc-content-skeleton td,
.style-light table td{ border-color:rgba(4, 12, 102, 0.17);}

tr:first-child > td > .fc-day-grid-event{ padding: 5px !important;}
a.fc-day-grid-event.fc-h-event:hover{
    background: var(--koaWhite) !important;
    color: var(--koaPurple) !important;
}

.fc-today-button,
.fc-month-button,
.fc-listWeek-button{ 
    font-size: 14px !important;
    margin-left: 5px !important;
}

button.fc-today-button,
button.fc-month-button,
button.fc-listWeek-button,
.koa_events_calendar_btn,
.koa_events_list_btn{
    border-radius: 33px !important;
    background: var(--koaPurple);
    color: var(--koaWhite) !important;
    border: 0;
    padding: 5px 20px;
    transition: all 400ms ease-in-out;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
}

button.fc-today-button:hover,
button.fc-month-button:hover,
button.fc-listWeek-button:hover,
.fc-prev-button:hover,.fc-next-button:hover,
.koa_events_calendar_btn:hover,
.koa_events_list_btn:hover{
    background: var(--koaWhite);
    color: var(--koaPurple) !important;;
    cursor: pointer;
}

.fc-prev-button,
.fc-next-button{
    background: var(--koaPurple);
    color: var(--koaWhite);
    border-radius: 33px !important;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
    margin: 0 2px !important;
    transition: all 400ms ease-in-out;
    height: 28px !important;
    padding: 0 6px;
}

.fc-icon-left-single-arrow::after,
.fc-icon-right-single-arrow::after {
    top: -16%;
    font-size: 32px;
}

.koa_list_single_event{
    display: flex;
    justify-content: space-between;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    padding: 10px 25px;
    align-items: center;
    border-radius: 33px;
    margin-bottom: 14px;
}

.koa_list_single_event:hover{
    background: var(--koaPurple);
    cursor: pointer;
}
.koa_list_single_event:hover p{ color: var(--koaWhite);}

.koa_list_events_month {
    font-weight: 600;
    margin-bottom: 20px;
}
.koa_list_events_month:not(:first-child){  margin-top: 60px;}

.koa_calendar_popup_dimension{
    width: 100%;
    height: 220px;
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
}

#koa_event_calendar_box{ 
    border-radius: 4px;
    box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}

.koa_event_calendar_box_close{
    position: absolute;
    top: -4px;
    right: -5px;
    padding: 5px 10px;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    transition: all 350ms ease-in-out;
}

.koa_event_calendar_box_close svg path{ fill: var(--koaBlack);}
.koa_event_calendar_box_close:hover svg path{ fill: var(--koaPurple);}

.koa_event_calendar_box_close svg{
    width: 15px;
    height: 15px;
}

#koa_calendar_search_results{
    position: absolute;
    top: 10px;
    max-height: 500px;
    background: var(--koaLightMenuPurple);
    padding: 20px 16px 10px 16px;
    border-radius: 16px;
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    z-index: 99;
    /* box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 15px; */
    border: 2px solid var(--koaBlue);
}

#koa_calendar_search_results ul li{ list-style: none;}

.calendar-nav {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    z-index: 98;
}

.calendar-nav button{ 
    background: transparent;
    margin-right: 5px;
}

#calendar-title::after{ 
    content: "";
    width: -moz-available;          /* For Mozzila */
    width: -webkit-fill-available;  /* For Chrome */
    width: stretch;   
    height: 2px;
    background: black;
    position: absolute;
    vertical-align: middle;
    margin: 13px 0px auto 30px;
}

.calendar-grid {
    grid-template-columns: repeat(7, 1fr);
}

.calendar-grid.koa_grid{ 
    border: 1px solid var(--koaPurple);
    border-bottom: 0;
}
.calendar-grid.koa_grid .koa-calendar-day:not(:nth-child(7n)){ border-right: 1px solid var(--koaPurple);}
.calendar-grid.koa_grid .koa-calendar-day{ border-bottom: 1px solid var(--koaPurple);}

.calendar-day {
    padding: 10px 12px;
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.koa-calendar-day.calendar-day{
    aspect-ratio: 1 / 1;
}

.event-entry {  font-size: 12px;}

#event-controls {
    display: grid;
    text-align: center;
    grid-template-columns: 0.4fr 0.4fr 0.2fr;
    margin: 20px auto;
    border: 1px solid var(--koaPurple);
    border-radius: 33px;
    z-index: 100;
    background: var(--koaLightMenuPurple);
}

#event-controls input{ border-radius: 33px;}
#event-controls input,#event-controls select:not(:first-of-type){ 
    border: 0 !important;
    margin-top: 0 !important;
}

#event-category-filter{ 
    border-left: 1px solid var(--koaPurple) !important;
    border-right: 1px solid var(--koaPurple) !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    border-radius: 0;
    margin-top: 0 !important;
}

.koa_calendar_grid_list_box .wpb_column:nth-child(2n+1){ display: none !important;}
.koa_calendar_grid_list_box_program .wpb_column:nth-child(2n+1){ display: none !important;}

#calendar-days-grid{ display: none;}

/* Media Queries */
@media only screen and (max-width: 1001px){
    .koa_list_text_and_image.koa_flex_row_start_left{ flex-direction: column-reverse;}

    .koa_list_text_and_image .koa_ml_60{ margin-left: 0;}

    .koa_list_text_and_image .koa_width_60pct,
    .koa_list_text_and_image .koa_width_40pct{ width: 100%;}

    .koa_list_text_and_image .koa_text_left{ display: none;}

    .koa_list_text_and_image { margin-left: 20px;}

    .koa_list_text_and_image .koa_width_40pct{ 
        width: 100%;
        max-height: 440px !important;
        height: 100%;
    }

    .koa_list_text_and_image .koa_width_40pct img{  width: 100%;}
}

@media only screen and (max-width: 948px) and (min-width: 610px){
    #koa_calendar_search_results{ top: 67px;}

    #event-controls{ 
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto auto;
        border-radius: 0px;
    }
    #event-controls input{ 
        grid-column: 1;
        grid-row: 1;
        border-right: 1px solid var(--koaPurple) !important;
        border-bottom: 1px solid var(--koaPurple) !important;
        border-radius: 0px;
    }

    #event-controls select:first-of-type{ 
        border-left: 0px !important;
        grid-column: 1 / 3;
        grid-row: 2;
        text-align: center;
        border-right: 0px !important;
    }

    #event-controls select:last-of-type{ 
        grid-column: 2;
        grid-row: 1;
        border-radius: 0px;
        border-right: 0px !important;
        border-bottom: 1px solid var(--koaPurple) !important;
    }
}

@media screen and (max-width: 767px){
    .koa_list_single_event{ flex-direction: column;}

    .koa_home_calendar_links > div{
        flex-direction: column;
        align-items: flex-start !important;
    }

    .koa_calendar_grid_list_box_program{ padding-top: 30px;}
}

@media only screen and (min-width: 611px){
    #calendar_prev_month_mob,
    #calendar_next_month_mob{ display: none;}
}

@media only screen and (max-width: 610px){
    #event-controls{
        grid-template-columns: 1fr;
        text-align: center;
        border-radius: 8px;
    }
    #event-category-filter{
        border: 0px !important;
        border-top: 1px solid var(--koaPurple) !important;
        border-bottom: 1px solid var(--koaPurple) !important;
        text-align: center;
    }
    #view-toggle{ text-align: center;}

    /* Responsive Calendar */
    #calendar-title{ font-size: 18px;}
    #calendar-title::after { display: none;}

    .koa-calendar-day.calendar-day .event-entry{ display: none;}

    .koa-calendar-day:hover,
    .koa-calendar-day:focus,
    .koa-calendar-day:visited{ background: #EEEEEE;}

    .koa-calendar-day.calendar-day{
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .koa-calendar-day.calendar-day.koa_height_100{ height: 60px !important;}

    .calendar-nav{
        position: absolute;
        bottom: -65px;
        justify-content: space-between;
        width: 100%;
        z-index: 9;
    }

    .calendar-nav #prev-month{ order: 1;}
    .calendar-nav #calendar-title{ order: 2;}
    .calendar-nav #next-month{ order: 3;}

    .programma-slider-mavro { display: block !important;}

    .koa_calendar_day_link{ position: relative;}
    .koa_calendar_day_link:after{
        content: "";
        background: var(--koaBlack);
        opacity: .6;
        position: absolute;
        bottom: -5px;
        left: 50%;
        transform: translateX(-50%);
        height: 2px;
        width: 25px;
    }

    #calendar-days-grid{
        display: grid;
        grid-template-columns: repeat(7, 1fr);
        text-align: center;
        border-bottom: 1px solid var(--koaBlack);
        padding: 0 0 10px 0;
    }

    #calendar-container{ margin-top: 7px;}

    .style-light select:not([multiple]){ background-image: none;}

    #koa_calendar_search_results{  top: 108px;}
}