/* Shared event-detail card styles (also used for the standalone "event"
   template, which @auto-loads event.css instead of events.css) */
@import url('event.css');

:root {

  /* fullCalendar settings
--fc-border-color
--fc-button-bg-color
--fc-button-border-color
--fc-button-hover-bg-color
--fc-button-active-bg-color
--fc-event-bg-color
--fc-event-border-color
--fc-event-text-color
--fc-today-bg-color
--fc-page-bg-color
--fc-neutral-bg-color
--fc-list-event-hover-bg-color
*/

}
.template-events {
    color: var(--color-white);
}

#calendar {
    overflow: hidden;
}

#calendar .fc {
    --fc-border-color: #e0e0e0;
    --fc-today-bg-color: rgba(0, 100, 255, 0.08);
    --fc-event-bg-color: #000;
    --fc-event-border-color: transparent;
    --fc-button-bg-color: #000;
}

#calendar .fc-toolbar-title {
    font-family: var(--font-sl);
    font-size: 1rem;
}

.fc-daygrid-dot-event {
    flex-wrap: wrap;
}

.fc-daygrid-dot-event .fc-event-title {
    flex-basis: 100%;
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
    font-family: var(--font-sr);
    color: currentColor;
}

.fc-daygrid-event-dot {
    border: calc(var(--fc-daygrid-event-dot-width) / 2) solid var(--color-blue);
    border-radius: calc(var(--fc-daygrid-event-dot-width) / 2);
    box-sizing: content-box;
    height: 0px;
    margin: 0px 100% 5px 0px;
    width: 0;

}

.fc-direction-ltr .fc-daygrid-event .fc-event-time {
    margin-right: 3px;
    font-family: var(--font-mb);
    color: currentColor;
}

 /* outer wrapper */
.fc {

}

.fc .fc-daygrid-body,
.fc .fc-daygrid-body-unbalanced,
.fc .fc-scrollgrid-sync-table,
.fc .fc-col-header {
    width: 100% !important;
}

/* month/nav bar */
.fc-toolbar {

}

/* "June 2026" heading */
.fc-toolbar-title { 

}  

#calendar .fc-toolbar-title {
    font-family: var(--font-ml);
    font-size: var(--fs-xl);
    text-transform: uppercase;
    letter-spacing: 0;
}
.fc-direction-ltr .fc-daygrid-event.fc-event-end, .fc-direction-rtl .fc-daygrid-event.fc-event-start {
    margin-right: 5px;
}
.fc-direction-ltr .fc-daygrid-event.fc-event-start, .fc-direction-rtl .fc-daygrid-event.fc-event-end {
    margin-left: 5px;
}
/* prev/next/today buttons */
.fc-button { 

}    

 /* individual day cells */           
.fc-daygrid-day { 

}   

 /* day number */
.fc-daygrid-day-number { 

}  

 /* event pill */
.fc-event { 

}   
            
/* Mon/Tue/Wed headers */
.fc-col-header-cell {

}

.fc .fc-button-primary {
    background-color: var(--color-blue);
    border-color: var(--color-black);
    color: currentColor;
}


.fc .fc-button-primary:hover {
    background-color: var(--color-white);
    border-color: currentColor;
    color: var(--color-blue);
}


.fc .fc-button-primary:disabled {
    background-color: var(--color-blue);
    border-color: var(--color-blue);
    color: currentColor;
}
.fc .fc-daygrid-day.fc-day-today {
    background-color: #eaff0053;
}

.fc .fc-view-harness {
    flex-grow: 1;
    position: relative;
    backdrop-filter: blur(10px);
}


@media (max-width: 768px) {
    .fc-daygrid-dot-event .fc-event-time,
    .fc-daygrid-dot-event .fc-event-title {
        display: none;
    }

    .fc-daygrid-event-dot {
        margin: 0 auto;
    }

    #calendar .fc-toolbar {
        flex-direction: row;
        align-items: center;
        gap: 0.5rem;
    }

    #calendar .fc-toolbar-title {
        font-size: 0.875rem;
    }

    #calendar .fc-button {
        font-size: 0.75rem;
        padding: 0.25rem 0.5rem;
    }

    #calendar .fc-daygrid-day-number,
    #calendar .fc-col-header-cell-cushion {
        font-size: 0.75rem;
        padding: 2px 4px;
    }
}