.session-list-container {
    width: 160px;
    border: 1px solid #ccc;
    position: relative;
    font-family: Arial, sans-serif;
}
.arrow {
    width: 100%;
    text-align: center;
    cursor: pointer;
    font-size: 20px;
    line-height: 30px;
    user-select: none;
    background-color: #f9f9f9;
    position: relative;
    z-index: 2;
}
.arrow.disabled {
    color: #ccc;
    cursor: not-allowed;
}
.session-list {
    max-height: 160px; /* Show up to 4 sessions */
    overflow-y: auto; /* Enable scrolling */
}
.session-item {
    padding: 10px;
    margin: 0;
    border-bottom: 1px solid #eee;
    transition: background-color 0.3s;
    text-align: center;
}
.session-item.selected {
    background-color: var(--css_calendar_active) !important;
    color: var(--css_calendar_active_text_colour) !important;
}
.session-item:hover {
    background-color: var(--css_calendar_hover) !important;
    color: var(--css_calendar_hover_text_colour) !important;
}

.session-item.dateAvailable {
    background-color: var(--css_calendar_date_available_bg_colour);
    color: var(--css_calendar_date_available_text_colour);
}

.session-item.dateLimited {
    background-color: var(--css_calendar_date_limited_bg_colour);
    color: var(--css_calendar_date_limited_text_colour);
}

.session-item.dateUnavailable {
    background-color: var(--css_calendar_date_unavailable_bg_colour);
    color: var(--css_calendar_date_unavailable_text_colour);
    cursor: not-allowed !important;
}
