.text-accent {
    color: var(--accent-color);
}

.calendar-table td {
    height: 80px;
    vertical-align: middle;
    text-align: center;
    position: relative;
}

.calendar-table th {
    text-align: center;
    background-color: #f8f9fa;
    font-weight: 600;
}

.btn-outline-secondary:not(.disabled):hover {
    background-color: var(--accent-color);
    border-color: var(--accent-color);
    color: white;
}

.calendar-day {
    position: relative;
    min-height: 80px;
}

.date-number {
    font-weight: 500;
}

.availability-btn {
    margin-top: 5px;
}

.loading-spinner {
    width: 1rem;
    height: 1rem;
}

.selected-time-display {
    margin: 1rem 0;
}

.calendar-table td button {
    position: relative;
    z-index: 1;
}

.calendar-table td .position-absolute {
    z-index: 0;
    bottom: 8px;
    width: 100%;
    left: 0;
    text-align: center;
}

.calendar-table td.table-primary {
    background-color: rgba(13, 110, 253, 0.1);
}

.calendar-table td.table-danger {
    background-color: rgba(220, 53, 69, 0.1);
}

.calendar-table td.table-secondary {
    background-color: rgba(108, 117, 125, 0.1);
}

.modal-body .btn.active {
    background-color: var(--accent-color);
    border-color: var(--accent-color);
    color: white;
}

.modal-body .btn {
    padding: 0.5rem;
    margin-bottom: 0.5rem;
    transition: all 0.2s ease-in-out;
}

.modal-body .btn:hover:not(.disabled) {
    transform: translateY(-2px);
}
