.book-appointment-container{margin-bottom:20px}.book-appointment-container .btn.book-appointment-btn{border:none;font-weight:600;font-size:16px;border-radius:8px;box-shadow:0 2px 8px rgba(233,108,44,.2);transition:all .3s ease;background-color:#3a485e!important;color:#fff!important}.book-appointment-container .btn.book-appointment-btn:hover{box-shadow:0 4px 12px rgba(233,108,44,.3);transform:translateY(-1px)}.book-appointment-container .btn.book-appointment-btn:focus{box-shadow:0 0 0 3px rgba(233,108,44,.2)}.book-appointment-container .btn.book-appointment-btn.disabled,.book-appointment-container .btn.book-appointment-btn:disabled{background:#6c757d!important;border-color:#6c757d!important;cursor:not-allowed!important;transform:none!important;box-shadow:none!important;color:#fff!important;opacity:1!important;position:relative}.book-appointment-container .btn.book-appointment-btn.disabled:before,.book-appointment-container .btn.book-appointment-btn:disabled:before{content:"✓ ";font-weight:700;margin-right:4px;color:#fff}.book-appointment-container .btn.book-appointment-btn.disabled:hover,.book-appointment-container .btn.book-appointment-btn:disabled:hover{background:#6c757d!important;transform:none!important;box-shadow:none!important;color:#fff!important;opacity:1!important}.book-appointment-wrapper{display:inline-block;margin-left:10px}.book-appointment-wrapper .book-appointment-container{margin-bottom:0}.book-appointment-wrapper .book-appointment-container .book-appointment-btn,.book-appointment-wrapper .book-appointment-container .book-appointment-btn.disabled,.book-appointment-wrapper .book-appointment-container .book-appointment-btn:disabled{font-size:14px;padding:8px 16px;white-space:nowrap}.appointment-form .user-info-display{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px;margin-bottom:20px}.appointment-form .user-info-display .user-info-item{display:flex;align-items:center;margin-bottom:10px;gap:8px}.appointment-form .user-info-display .user-info-item:last-child{margin-bottom:0}.appointment-form .user-info-display .user-info-item .user-info-label{font-weight:500;color:#6c757d;font-size:14px;min-width:auto}.appointment-form .user-info-display .user-info-item .user-info-value{font-weight:600;color:#3a485e;font-size:14px}.appointment-form .form-group{margin-bottom:0}.appointment-form .form-group .form-label{font-weight:600;color:#3a485e;margin-bottom:8px;display:block;font-size:14px}.appointment-form .form-group .form-control{width:100%;padding:12px 16px;border:1px solid #d4d4d4;border-radius:8px;font-size:14px;transition:border-color .3s ease}.appointment-form .form-group .form-control:focus{border-color:#e96c2c;box-shadow:0 0 0 2px rgba(233,108,44,.1);outline:none}.appointment-form .form-group .form-control::placeholder{color:#999}.modal .modal-content{border-radius:12px;border:none;box-shadow:0 10px 30px rgba(0,0,0,.15)}.modal .modal-header{border-bottom:1px solid #e9ecef;padding:20px 24px 16px}.modal .modal-header .modal-title{font-weight:600;color:#3a485e;font-size:18px}.modal .modal-header .btn-close{background-size:16px}.modal .modal-body{padding:20px 24px}.modal .modal-footer.justify-content-center{border-top:1px solid #e9ecef;padding:16px 24px 20px}.appointment-form .appointment-schedule-button{width:50%!important;min-width:120px;padding:10px 20px;font-size:14px;font-weight:600;border-radius:8px}.modal-footer .appointment-schedule-button{min-width:120px!important}.modal-footer .appointment-schedule-button,.modal-footer .appointment-schedule-button.btn,.modal-footer button.appointment-schedule-button{width:50%!important;max-width:none!important}.modal-footer .appointment-schedule-button.w-100{width:50%!important}.appointment-datepicker-popper{z-index:9999}.appointment-datepicker-popper .react-datepicker{border:1px solid #e96c2c;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.appointment-datepicker-popper .react-datepicker .react-datepicker__header{background-color:#e96c2c;border-bottom:none}.appointment-datepicker-popper .react-datepicker .react-datepicker__header .react-datepicker__current-month{color:#fff;font-weight:600}.appointment-datepicker-popper .react-datepicker .react-datepicker__header .react-datepicker__day-name{color:#fff;font-weight:500}.appointment-datepicker-popper .react-datepicker .react-datepicker__day:hover{background-color:rgba(233,108,44,.1);border-radius:4px}.appointment-datepicker-popper .react-datepicker .react-datepicker__day--in-range,.appointment-datepicker-popper .react-datepicker .react-datepicker__day--in-selecting-range,.appointment-datepicker-popper .react-datepicker .react-datepicker__day--selected{background-color:#e96c2c;border-radius:4px}.appointment-datepicker-popper .react-datepicker .react-datepicker__day--in-range:hover,.appointment-datepicker-popper .react-datepicker .react-datepicker__day--in-selecting-range:hover,.appointment-datepicker-popper .react-datepicker .react-datepicker__day--selected:hover{background-color:#d45a1f}.appointment-datepicker-popper .react-datepicker .react-datepicker__day--today{background-color:rgba(233,108,44,.2);border-radius:4px;font-weight:600}.appointment-datepicker-popper .react-datepicker .react-datepicker__time-container{border-left:1px solid #e1e1e1}.appointment-datepicker-popper .react-datepicker .react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box .react-datepicker__time-list-item:hover{background-color:rgba(233,108,44,.1)}.appointment-datepicker-popper .react-datepicker .react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box .react-datepicker__time-list-item--selected{background-color:#e96c2c;color:#fff;font-weight:600}@media(max-width:767px){.modal .modal-dialog{max-width:350px}.book-appointment-container .book-appointment-btn{font-size:14px}.book-appointment-wrapper{margin-left:8px}.book-appointment-wrapper .book-appointment-container .book-appointment-btn,.book-appointment-wrapper .book-appointment-container .book-appointment-btn.disabled,.book-appointment-wrapper .book-appointment-container .book-appointment-btn:disabled{font-size:12px;padding:6px 12px;white-space:nowrap}.appointment-form .user-info-display{padding:12px}.appointment-form .user-info-display .user-info-title{font-size:15px}.appointment-form .user-info-display .user-info-item{flex-direction:row;align-items:center;gap:6px}.appointment-form .user-info-display .user-info-item .user-info-label{min-width:auto;font-size:13px}.appointment-form .user-info-display .user-info-item .user-info-value{font-size:13px}.appointment-form .form-group .form-control{padding:10px 14px;font-size:14px}.appointment-form .appointment-schedule-button{width:60%!important;min-width:100px;font-size:13px;padding:8px 16px}.modal-footer .appointment-schedule-button{min-width:100px!important}.modal-footer .appointment-schedule-button,.modal-footer .appointment-schedule-button.btn,.modal-footer button.appointment-schedule-button{width:60%!important;max-width:none!important}.modal-footer .appointment-schedule-button.w-100{width:60%!important}}.book-appointment-modal .modal-dialog{max-width:400px!important;width:90%!important}@media(max-width:576px){.book-appointment-modal .modal-dialog{max-width:350px!important;width:95%!important;margin:1.75rem auto!important}}.book-appointment-modal .modal-content{border-radius:12px!important;border:none!important;box-shadow:0 10px 30px rgba(0,0,0,.15)!important}.book-appointment-modal .modal-header{border-bottom:1px solid #e9ecef!important;padding:1rem 1.25rem!important}.book-appointment-modal .modal-header .modal-title{font-weight:600!important;font-size:1.1rem!important;color:#3a485e!important}.book-appointment-modal .modal-body{padding:1.25rem!important}.book-appointment-modal .modal-footer{border-top:1px solid #e9ecef!important;padding:1rem 1.25rem!important}