.reschedule-modal .modal-dialog{max-width:480px;margin:2rem auto}.reschedule-modal .reschedule-modal-header{background:#fff;border-bottom:1px solid var(--border-color);border-radius:var(--border-radius) var(--border-radius) 0 0;padding:1.25rem 1.5rem;position:relative}.reschedule-modal .reschedule-modal-header .modal-title{font-weight:600;font-size:1.25rem;color:var(--text-color);display:flex;align-items:center;gap:.5rem;margin:0}.reschedule-modal .reschedule-modal-header .reschedule-modal-header-divider{height:1px;background:var(--border-color);margin:1rem -1.5rem -1.25rem}.reschedule-modal .reschedule-modal-header .btn-close:hover{opacity:.8}.reschedule-modal .reschedule-modal-body{padding:1.5rem;background:#fff;border-radius:0 0 var(--border-radius) var(--border-radius)}.reschedule-modal .reschedule-modal-body .reschedule-content .current-appointment-summary{background:var(--off-white);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1rem;margin-bottom:1.5rem}.reschedule-modal .reschedule-modal-body .reschedule-content .current-appointment-summary .summary-item{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.25rem 0}.reschedule-modal .reschedule-modal-body .reschedule-content .current-appointment-summary .summary-item:last-child{margin-bottom:0}.reschedule-modal .reschedule-modal-body .reschedule-content .current-appointment-summary .summary-item .summary-icon{color:var(--primary-color);flex-shrink:0;font-size:1em}.reschedule-modal .reschedule-modal-body .reschedule-content .current-appointment-summary .summary-item span{font-weight:500;color:var(--text-color);font-size:.9rem}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .selection-title{color:var(--text-color);font-weight:600;font-size:1rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .selection-title svg{color:var(--primary-color)}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .loading-hours{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem;color:var(--text-color);background:var(--off-white);border:1px solid var(--border-color);border-radius:var(--border-radius)}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .loading-hours span{font-weight:500;font-size:.9rem}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .no-hours{text-align:center;padding:1.5rem;background:var(--off-white);border:1px solid var(--border-color);border-radius:var(--border-radius)}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .no-hours .no-hours-icon{color:var(--danger-color);margin-bottom:.75rem}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .no-hours p{margin:0;font-size:.9rem;font-weight:500;color:var(--danger-color)}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__control{border:1px solid var(--border-color)!important;border-radius:var(--border-radius)!important;box-shadow:none!important;min-height:44px!important;background:#fff!important;font-size:.9rem!important;font-weight:500!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__control:hover{border-color:var(--primary-color)!important;box-shadow:0 0 0 1px var(--primary-color)!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__control--is-focused{border-color:var(--primary-color)!important;box-shadow:0 0 0 2px var(--primary-color-25)!important;background:#fff!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__control--is-disabled{background:var(--soft-gray-25)!important;border-color:var(--soft-gray)!important;opacity:.6}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__value-container{padding:.5rem .75rem!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__placeholder{color:var(--soft-gray)!important;font-weight:500!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__single-value{color:var(--text-color)!important;font-weight:600!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__menu{border:2px solid var(--primary-color-25)!important;border-radius:var(--border-radius)!important;box-shadow:0 8px 24px rgba(0,107,117,.2)!important;overflow:hidden!important;background:#fff!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__menu-list{padding:.5rem!important;max-height:200px!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__option{padding:.875rem 1rem!important;font-size:.95rem!important;font-weight:500!important;border-radius:calc(var(--border-radius)/2)!important;margin-bottom:.25rem!important;background:rgba(0,0,0,0)!important;color:var(--text-color)!important;cursor:pointer!important;transition:all .2s ease!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__option:hover{background:linear-gradient(135deg,var(--primary-color-10),var(--secondary-color-10))!important;color:var(--primary-color)!important;transform:translateX(4px)}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__option--is-selected{background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark))!important;color:#fff!important;font-weight:700!important;box-shadow:0 2px 6px rgba(0,107,117,.3)!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__option--is-focused{background:var(--primary-color-10)!important;color:var(--primary-color)!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__indicator{color:var(--primary-color)!important;padding:.75rem!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__indicator:hover{color:var(--primary-color-dark)!important}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .hour-select .react-select__indicator-separator{background-color:var(--border-color)!important}.reschedule-modal .reschedule-modal-body .reschedule-content .manual-time-section{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border-color)}.reschedule-modal .reschedule-modal-body .reschedule-content .manual-time-section .selection-title{color:var(--text-color);font-weight:600;font-size:1rem;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.reschedule-modal .reschedule-modal-body .reschedule-content .manual-time-section .selection-title svg{color:var(--primary-color)}.reschedule-modal .reschedule-modal-body .reschedule-content .manual-time-section .manual-time-description{font-size:.88rem;color:var(--soft-gray);margin-bottom:.75rem}.reschedule-modal .reschedule-modal-footer{background:linear-gradient(135deg,var(--soft-gray-25),var(--soft-gray-10));border-top:2px solid var(--border-color-50);padding:1.5rem 2rem;border-radius:0 0 var(--border-radius) var(--border-radius)}.reschedule-modal .reschedule-modal-footer .btn{border-radius:var(--border-radius);padding:.875rem 2rem;font-weight:600;font-size:1rem;transition:all .2s ease;position:relative;overflow:hidden}.reschedule-modal .reschedule-modal-footer .btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.reschedule-modal .reschedule-modal-footer .btn:hover:before{left:100%}.reschedule-modal .reschedule-modal-footer .btn.cancel-btn{background:linear-gradient(135deg,#ffffff,#fefefe);border:2px solid var(--border-color);color:var(--text-color);box-shadow:0 2px 8px rgba(0,0,0,.1)}.reschedule-modal .reschedule-modal-footer .btn.cancel-btn:hover{background:linear-gradient(135deg,var(--soft-gray-10),var(--soft-gray-25));border-color:var(--soft-gray);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.reschedule-modal .reschedule-modal-footer .btn.cancel-btn:active{transform:translateY(0);box-shadow:0 2px 8px rgba(0,0,0,.1)}.reschedule-modal .reschedule-modal-footer .btn.reschedule-btn{background:var(--primary-color);border:1px solid var(--primary-color);color:#fff;box-shadow:0 2px 4px rgba(0,107,117,.2)}.reschedule-modal .reschedule-modal-footer .btn.reschedule-btn:hover{background:var(--primary-color-dark);border-color:var(--primary-color-dark);transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,107,117,.3)}.reschedule-modal .reschedule-modal-footer .btn.reschedule-btn:active{transform:translateY(0);box-shadow:0 2px 4px rgba(0,107,117,.2)}.reschedule-modal .reschedule-modal-footer .btn.reschedule-btn:disabled{background:var(--soft-gray);border-color:var(--soft-gray);color:var(--soft-gray-50);transform:none;box-shadow:none;cursor:not-allowed}@media(max-width:768px){.reschedule-modal .modal-dialog{margin:1rem;max-width:calc(100vw - 2rem)}.reschedule-modal .reschedule-modal-header{padding:1.25rem 1.5rem}.reschedule-modal .reschedule-modal-header .modal-title{font-size:1.3rem}.reschedule-modal .reschedule-modal-body{padding:1.5rem 1.25rem}.reschedule-modal .reschedule-modal-body .reschedule-content .current-appointment-summary{padding:1.25rem}.reschedule-modal .reschedule-modal-body .reschedule-content .current-appointment-summary .summary-item{padding:.4rem;gap:.6rem}.reschedule-modal .reschedule-modal-body .reschedule-content .current-appointment-summary .summary-item span{font-size:.9rem}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .selection-title{font-size:1.1rem;margin-bottom:1.25rem}.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .loading-hours,.reschedule-modal .reschedule-modal-body .reschedule-content .new-hour-selection .no-hours{padding:2rem 1rem}.reschedule-modal .reschedule-modal-footer{padding:1.25rem 1.5rem;display:flex;flex-direction:column-reverse;gap:.75rem}.reschedule-modal .reschedule-modal-footer .btn{padding:.75rem 1.5rem;font-size:.95rem;width:100%;margin:0}}.reschedule-modal-styles-removed{display:none!important}