#calendar-container {
    font-family: Arial, sans-serif;
    max-width: 600px;
    margin: 0; /* Remove auto margin */
    display: flex;
    gap: 20px;
    margin-bottom: 40px;
}

#calendar-wrapper {
    flex: 1;
}

#calendar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

#calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 5px;
}

.calendar-day {
    text-align: center;
    padding: 5px;
    cursor: pointer;
    border: 1px solid #ccc;
}

.calendar-day:hover:not(.disabled) {
    background-color: #f0f0f0;
}

.calendar-day.selected {
    background-color: #007bff;
    color: white;
}

.calendar-day.disabled {
    color: #ccc;
    cursor: not-allowed;
    text-decoration: line-through;
}

#time-selector {
    flex: 1;
}

#time-slots {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.time-slot {
    text-align: center;
    padding: 5px;
    cursor: pointer;
    border: 1px solid #ccc;
}

.time-slot:hover {
    background-color: #f0f0f0;
}

.time-slot.selected {
    background-color: #007bff;
    color: white;
}

.time-slot.disabled {
    background-color: #f0f0f0;
    color: #999;
    cursor: not-allowed;
}

.time-slot.booked {
    background-color: #f0f0f0;
    color: #999;
    cursor: not-allowed;
}

.time-slot.booked:hover {
    background-color: #f0f0f0;
}