/* Calendar Header */
.calendar-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
    position: relative;
}

.prev-month,
.next-month {
    flex: 0 0 auto;
}

.select-container {
    flex: 1;
    display: flex;
    justify-content: center;
    gap: 10px;
}

.month-select,
.year-select {
    padding: 5px;
    font-size: 14px;
}

/* Calendar */
.calendar-table {
    width: 100%;
    border-collapse: collapse;
}

.calendar-table th, .calendar-table td {
    text-align: center;
    padding: 8px;
    border: none; /* Remove the cell borders */
    position: relative;
}

.calendar-table th {
    background-color: #f4f4f4;
}

.calendar-day {
    position: relative;
    text-align: center;
}

.calendar-day span {
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    text-align: center;
    margin: 0 auto;
    cursor: pointer;
}

/* Specific highlight styles */
.calendar-day span:hover {
    background-color: var(--css_calendar_hover) !important;
    color: var(--css_calendar_hover_text_colour) !important;
}

.dateLimited span {
    background-color: var(--css_calendar_date_limited_bg_colour);
    color: var(--css_calendar_date_limited_text_colour);
}

.dateAvailable span {
    background-color: var(--css_calendar_date_available_bg_colour);
    color: var(--css_calendar_date_available_text_colour);
}

.dateUnavailable span {
    background-color: var(--css_calendar_date_unavailable_bg_colour);
    color: var(--css_calendar_date_unavailable_text_colour);
    pointer-events: none;
}

.dateSelected span {
    background-color: var(--css_calendar_active) !important;
    color: var(--css_calendar_active_text_colour) !important;
}

#dateMessage {
    display: none;
    font-size: 13px;
    margin-top: 10px
}

/* ----- ALL MOBILE */

@media screen and (max-width: 767px) {
    .calendar-table th, .calendar-table td {
        padding: 5px;
        font-size: 14px;
    }
}

@media screen and (max-width: 412px) {
    .calendar-table th, .calendar-table td {
        padding: 2px 1px;
        font-size: 14px;
    }
}