/* --- Calendar/Schedule Page Specific Styles --- */
.page-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#calendar-container {
    /* This will now hold the schedule list, not a grid */
}

.schedule-day {
    margin-bottom: var(--spacing-lg);
    border: 1px solid var(--light-grey);
    border-radius: var(--border-radius);
    background-color: var(--pure-white);
    overflow: hidden; /* Ensures child elements conform to border radius */
}

.schedule-date-header {
    background-color: var(--off-white);
    padding: var(--spacing-md);
    font-size: 1.2rem;
    font-weight: bold;
    color: var(--darker-green);
    border-bottom: 1px solid var(--light-grey);
}

.schedule-item-list {
    padding: 0;
    margin: 0;
    list-style: none;
}

.schedule-item {
    display: flex;
    padding: var(--spacing-md);
    border-bottom: 1px solid var(--light-grey);
    gap: var(--spacing-lg);
    align-items: center;
}

.schedule-item:last-child {
    border-bottom: none;
}

.schedule-item-time {
    font-weight: bold;
    color: var(--medium-grey);
    flex-shrink: 0;
    width: 80px; /* Aligns the times */
}

.schedule-item-description {
    flex-grow: 1;
}

/* --- Item Type Styling --- */

.schedule-item.fixture-occupied {
    background-color: var(--club-green);
    color: var(--pure-white);
}

.schedule-item.fixture-occupied .schedule-item-time {
    color: var(--pure-white);
}

.schedule-item.fixture-spare {
    background-color: #e9f7ec; /* Light green */
    border-left: 4px solid #28a745;
}

.schedule-item.event-general {
    background-color: #fffbeb; /* Light yellow */
    border-left: 4px solid var(--club-yellow);
}
