.reservation-list[data-v-13b7a496]{position:relative;min-height:100vh}.main-content[data-v-13b7a496]{padding:24px 16px 0;min-height:calc(100vh - 200px);max-width:800px;margin:0 auto;overflow-x:hidden}.appointment-list[data-v-13b7a496]{display:flex;flex-direction:column}.tongxin-modal[data-v-13b7a496]{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:2000;justify-content:center;align-items:center}.tongxin-modal.show[data-v-13b7a496]{display:flex}.tongxin-modal__content[data-v-13b7a496]{background:#fff;border-radius:16px;padding:32px;max-width:500px;width:90%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px rgba(0,0,0,.3);-webkit-animation:modalSlideIn-data-v-13b7a496 .3s ease-out;animation:modalSlideIn-data-v-13b7a496 .3s ease-out}.tongxin-modal__header[data-v-13b7a496]{text-align:center;margin-bottom:24px;flex-shrink:0}.tongxin-modal__icon[data-v-13b7a496]{width:60px;height:60px;background:#fee2e2;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.tongxin-modal__icon svg[data-v-13b7a496]{width:30px;height:30px;color:#dc2626}.tongxin-modal__title[data-v-13b7a496]{font-size:26px;font-weight:700;color:#333;margin-bottom:8px}.tongxin-modal__body[data-v-13b7a496]{margin-bottom:24px;overflow-y:auto;flex:1}.tongxin-modal__text[data-v-13b7a496]{font-size:20px;color:#666;line-height:1.6;text-align:center;margin-bottom:20px}.tongxin-modal__buttons[data-v-13b7a496]{display:flex;justify-content:center;gap:12px;flex-shrink:0}.tongxin-modal__buttons .btn+.btn[data-v-13b7a496]{margin-left:auto}.cancel-info-box[data-v-13b7a496]{background:#f8f9fa;border-radius:8px;padding:16px;margin-top:16px;border-left:4px solid #dc2626}.cancel-info-item[data-v-13b7a496]{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e9ecef}.cancel-info-item[data-v-13b7a496]:last-child{border-bottom:none}.cancel-info-label[data-v-13b7a496]{font-size:16px;color:#666;font-weight:500}.cancel-info-value[data-v-13b7a496]{font-size:19px;color:#333;font-weight:600;text-align:right}.empty-state[data-v-13b7a496]{text-align:center;padding:60px 20px}.empty-icon[data-v-13b7a496]{width:100px;height:100px;background:#f8f9fa;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.empty-icon svg[data-v-13b7a496]{width:50px;height:50px;color:#ccc}.empty-text[data-v-13b7a496]{font-size:20px;color:#999;margin-bottom:24px}.fixed-footer-navigation .button-group[data-v-13b7a496]{display:flex;justify-content:center;gap:20px;max-width:800px;margin:0 auto}.fixed-footer-navigation .button-group .btn[data-v-13b7a496]{flex:1}.fixed-footer-navigation .button-group .btn+.btn[data-v-13b7a496]{margin-left:auto}.btn-block[data-v-13b7a496]{width:100%;margin-bottom:12px}@media(max-width:767px){.main-content[data-v-13b7a496]{padding:20px}.tongxin-modal__content[data-v-13b7a496]{padding:24px}.tongxin-modal__title[data-v-13b7a496]{font-size:22px}.cancel-info-item[data-v-13b7a496]{flex-direction:column;align-items:flex-start;gap:4px;padding:10px 0}.cancel-info-label[data-v-13b7a496]{font-size:15px}.cancel-info-value[data-v-13b7a496]{font-size:19px;text-align:left}}@-webkit-keyframes modalSlideIn-data-v-13b7a496{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes modalSlideIn-data-v-13b7a496{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.option-card[data-v-2ca1e487]{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:2px solid #e8f5f3;border-radius:12px;padding:18px;cursor:pointer;transition:all .3s ease;text-align:center;position:relative;overflow:hidden}.option-card[data-v-2ca1e487]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(32,120,104,.08),transparent);transition:left .5s ease}.option-card[data-v-2ca1e487]:hover{border-color:#207868;box-shadow:0 6px 18px rgba(32,120,104,.12);transform:translateY(-2px)}.option-card:hover .option-icon[data-v-2ca1e487]{transform:scale(1.06);box-shadow:0 5px 16px rgba(32,120,104,.18)}.option-card[data-v-2ca1e487]:active{transform:translateY(0)}.option-text[data-v-2ca1e487]{font-size:24px;color:#207868;font-weight:700}.option-description[data-v-2ca1e487]{margin-top:6px;font-size:18px;color:#666;line-height:1.4}.option-icon[data-v-2ca1e487]{font-size:40px;margin-bottom:12px;color:#2a9d8f;width:64px;height:64px;background:linear-gradient(135deg,#e8f5f3,#f0f9f7);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 12px auto;box-shadow:0 3px 12px rgba(32,120,104,.1);transition:all .3s ease}.icon-image[data-v-2ca1e487]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%}.selected[data-v-2ca1e487]{border-color:#207868;background:linear-gradient(135deg,#e8f5f3,#f0f9f7)}.pulse[data-v-2ca1e487]{-webkit-animation:pulse-data-v-2ca1e487 2s infinite;animation:pulse-data-v-2ca1e487 2s infinite}@-webkit-keyframes pulse-data-v-2ca1e487{0%{box-shadow:0 0 0 0 rgba(32,120,104,.35)}70%{box-shadow:0 0 0 10px rgba(32,120,104,0)}to{box-shadow:0 0 0 0 rgba(32,120,104,0)}}@keyframes pulse-data-v-2ca1e487{0%{box-shadow:0 0 0 0 rgba(32,120,104,.35)}70%{box-shadow:0 0 0 10px rgba(32,120,104,0)}to{box-shadow:0 0 0 0 rgba(32,120,104,0)}}.disabled[data-v-2ca1e487]{opacity:.5;cursor:not-allowed;background:#f5f5f5;border-color:#ccc}.disabled[data-v-2ca1e487]:hover{border-color:#ccc;box-shadow:none;transform:none}.disabled[data-v-2ca1e487]:hover:before{display:none}.disabled:hover .option-icon[data-v-2ca1e487]{transform:none;box-shadow:0 3px 12px rgba(32,120,104,.1)}.disabled .option-text[data-v-2ca1e487]{color:#999}.disabled .option-icon[data-v-2ca1e487]{color:#999;background:#f0f0f0;box-shadow:0 3px 12px rgba(0,0,0,.1)}.unavailable[data-v-2ca1e487]{opacity:.7;cursor:not-allowed;border-color:#a8d5c9;background:linear-gradient(135deg,#f8fcfb,#f5fbfa)}.unavailable[data-v-2ca1e487]:hover{border-color:#a8d5c9;box-shadow:0 3px 12px rgba(168,213,201,.12);transform:none}.unavailable[data-v-2ca1e487]:hover:before{display:none}.unavailable:hover .option-icon[data-v-2ca1e487]{transform:none;box-shadow:0 3px 12px rgba(168,213,201,.1)}.unavailable .option-text[data-v-2ca1e487]{color:#5a9b8a}.unavailable .option-icon[data-v-2ca1e487]{color:#5a9b8a;background:linear-gradient(135deg,#f8fcfb,#f5fbfa);box-shadow:0 3px 12px rgba(168,213,201,.1)}@media (max-width:768px){.option-icon[data-v-2ca1e487]{display:none}}.option-list[data-v-5f87e5a3]{width:100%;container-type:inline-size}.options-grid[data-v-5f87e5a3]{display:grid;gap:16px;margin-bottom:32px}@container (width <= 600px){.options-grid{grid-template-columns:repeat(1,minmax(0,1fr))}}@container (width > 600px){.options-grid{grid-template-columns:repeat(2,1fr)}}@container (width > 900px){.options-grid{grid-template-columns:repeat(3,1fr)}}@container (width > 1200px){.options-grid{grid-template-columns:repeat(4,1fr)}}.main-content[data-v-254c0dc3]{padding:0}.tongxin-layout[data-v-e9d6b40c]{padding-bottom:100px}.reservation-detail .empty-state[data-v-b2782f70]{text-align:center;padding:40px 20px;color:#999;font-size:16px}.reservation-detail .profile-card[data-v-b2782f70]{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1);padding:24px;margin-top:40px;margin-bottom:16px}.reservation-detail .profile-card .profile-header[data-v-b2782f70]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.reservation-detail .profile-card .profile-header .profile-name[data-v-b2782f70]{font-size:24px;font-weight:700;color:#333;margin:0 0 4px 0}.reservation-detail .profile-card .profile-header .patient-name[data-v-b2782f70]{font-size:14px;color:#555}.reservation-detail .profile-card .profile-header .status-badge[data-v-b2782f70]{display:inline-block;padding:6px 16px;border-radius:12px;font-size:12px;font-weight:700;white-space:nowrap}.reservation-detail .profile-card .profile-header .status-badge.status-confirmed[data-v-b2782f70]{background:#e8f5f3;color:#207868}.reservation-detail .profile-card .profile-header .status-badge.status-pending[data-v-b2782f70]{background:#fef3e8;color:#f59e0b}.reservation-detail .profile-card .profile-header .status-badge.status-cancelled[data-v-b2782f70]{background:#fce4ec;color:#dc2626}.reservation-detail .profile-card .profile-header .status-badge.status-default[data-v-b2782f70]{background:#f5f5f5;color:#666}.reservation-detail .profile-card .profile-body .info-row[data-v-b2782f70]{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid #f0f0f0}.reservation-detail .profile-card .profile-body .info-row[data-v-b2782f70]:last-child{border-bottom:none}.reservation-detail .profile-card .profile-body .info-row .label[data-v-b2782f70]{font-size:16px;color:#666;font-weight:500}.reservation-detail .profile-card .profile-body .info-row .value[data-v-b2782f70]{font-size:16px;color:#333;font-weight:600}.reservation-detail .modal-overlay[data-v-b2782f70]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.reservation-detail .modal-card[data-v-b2782f70]{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1);padding:24px;max-width:420px;width:100%}.reservation-detail .modal-card .modal-title[data-v-b2782f70]{font-size:20px;font-weight:700;color:#333;margin-bottom:8px;text-align:center}.reservation-detail .modal-card .modal-description[data-v-b2782f70]{font-size:14px;color:#666;margin-bottom:20px;text-align:center}.reservation-detail .modal-card .modal-body[data-v-b2782f70]{background:#f8f9fa;border-radius:8px;padding:4px 16px;margin-bottom:24px}.reservation-detail .modal-card .modal-body .info-row[data-v-b2782f70]{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f0f0f0}.reservation-detail .modal-card .modal-body .info-row[data-v-b2782f70]:last-child{border-bottom:none}.reservation-detail .modal-card .modal-body .info-row .label[data-v-b2782f70]{font-size:14px;color:#666;font-weight:500}.reservation-detail .modal-card .modal-body .info-row .value[data-v-b2782f70]{font-size:14px;color:#333;font-weight:600}.reservation-detail .modal-card .modal-actions[data-v-b2782f70]{display:flex;gap:12px}.reservation-detail .modal-card .modal-actions .btn[data-v-b2782f70]{flex:1}.fade-enter-active[data-v-b2782f70],.fade-leave-active[data-v-b2782f70]{transition:opacity .3s ease}.fade-enter[data-v-b2782f70],.fade-leave-to[data-v-b2782f70]{opacity:0}