/* APPOINTMENTS — NARROW STAFF BANNER AND BOOKING REVIEW */
#appointmentsBanner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 5px 20px;
    padding: 7px 20px;
    background: #edf5fb;
    border-bottom: 1px solid #d6e5f0;
    font-size: 13px;
}
#appointmentsBanner a { color: #245b80; }
#appointmentsBanner #appointmentsNewLink { color: #fff; }
#appointmentsBanner #appointmentsSoonLink { color: #925d0b; font-weight: 600; }
#appointmentsBanner .appointments-actions { display: flex; flex-wrap: wrap; gap: 6px; }
#createProspectModal .modal-dialog { width: calc(100% - 30px); max-width: 680px; }
#createProspectModal .modal-body { padding: 20px; font-size: 14px; }
#createProspectModal .help-block { margin-bottom: 0; }
#createProspectError:empty { display: none; }
#appointmentsBanner.has-upcoming { background: #fff8e8; border-bottom-color: #f0dfb7; }
#appointmentsReviewModal .modal-dialog { width: 95%; max-width: 1400px; }
#appointmentsReviewModal .modal-body { padding: 20px; }
#appointmentsTable tbody tr.appointment-today > td { background: #fff3cd; }
#appointmentsTable .appointment-today strong { display: block; color: #755500; }
#appointmentsTable .appointment-photos { display: flex; flex-wrap: wrap; gap: 5px; min-width: 60px; max-width: 180px; }
#appointmentsTable .appointment-photos img { width: 50px; height: 50px; object-fit: cover; border: 1px solid #ddd; border-radius: 4px; }
@media (max-width: 767px) {
    #appointmentsBanner { padding: 7px 12px; }
    #appointmentsReviewModal .modal-dialog { width: auto; margin: 10px; }
}
