/* Reservation page styles */
[x-cloak] { display: none !important; }

.time-slots {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.time-slot-btn {
    padding: 10px 20px;
    border: 2px solid var(--color-border);
    border-radius: 8px;
    background: #fff;
    font-weight: 500;
    cursor: pointer;
    transition: var(--transition);
}

.time-slot-btn:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
}

.time-slot-btn.active {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

.time-slot-btn.slot-full {
    background: #f3f4f6;
    border-color: #e5e7eb;
    color: #9ca3af;
    cursor: not-allowed;
    text-decoration: line-through;
    opacity: 0.7;
}

.time-slot-btn.slot-full:hover {
    border-color: #e5e7eb;
    color: #9ca3af;
}

.time-slot-btn.slot-few {
    border-color: #f59e0b;
    color: #b45309;
    background: #fffbeb;
}

.time-slot-btn.slot-few:hover {
    border-color: #d97706;
    background: #fef3c7;
}

.time-slot-btn.slot-few.active {
    background: #f59e0b;
    border-color: #f59e0b;
    color: #fff;
}

.card {
    border: none;
    border-radius: 12px;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.06);
}

/* FullCalendar overrides */
.fc .fc-button-primary {
    background: var(--color-primary);
    border-color: var(--color-primary);
}

.fc .fc-day-today {
    background: rgba(3, 33, 107, 0.05) !important;
}

.fc .fc-daygrid-day:hover {
    background: rgba(3, 33, 107, 0.03);
    cursor: pointer;
}

/* 주말 글자 색상 */
.fc .fc-col-header-cell.fc-day-sun .fc-col-header-cell-cushion { color: #dc2626; }
.fc .fc-col-header-cell.fc-day-sat .fc-col-header-cell-cushion { color: #2563eb; }
.fc .fc-day-sun .fc-daygrid-day-number { color: #dc2626; }
.fc .fc-day-sat .fc-daygrid-day-number { color: #2563eb; }

/* 캘린더 이벤트 (휴진/반일) 스타일 */
.fc .fc-daygrid-event {
    border: none !important;
    border-radius: 4px !important;
    padding: 1px 4px !important;
    font-size: 0.68rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.fc .fc-daygrid-event .fc-event-title {
    font-size: 0.68rem;
}

.fc .fc-daygrid-dot-event {
    padding: 1px 4px !important;
}

/* 이벤트가 있는 날짜 셀 */
.fc .fc-daygrid-day-events {
    margin-top: 1px;
}
