/* 预订列表与关联详情：沿用现有后台色彩与排版。 */
.booking-help{margin:0 0 14px;color:#65715e;font-size:12px}
.booking-row{cursor:pointer;transition:background-color .15s ease}
.booking-row:hover,.booking-row:focus-within{background:#edf1e8}
.booking-row:focus-visible,.customer-entry:focus-visible,.reservation-tabs .btn:focus-visible{outline:2px solid #627552;outline-offset:-2px}
.customer-entry{background:transparent;border:0;text-align:left;color:inherit;padding:6px 8px 6px 0;border-radius:5px;font:inherit;cursor:pointer;min-height:44px;max-width:100%}
.customer-entry strong{border-bottom:1px solid transparent}
.customer-entry:hover strong{border-bottom-color:currentColor}
.person-stack{display:flex;flex-direction:column;gap:3px;min-width:0}
.reservation-identity{display:flex;align-items:center;justify-content:space-between;gap:16px}
.reservation-identity>.customer-entry{padding:0;min-width:0}
.reservation-identity .avatar,.customer-profile-heading .avatar{width:44px;height:44px;font-size:18px}
.reservation-identity strong,.customer-profile-heading strong{font-size:18px}
.reservation-identity>div{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.context-help{color:#65715e;font-size:12px;line-height:1.75;margin:12px 0}
.reservation-identity .context-help{margin:0}
.context-back{margin:0 0 18px;padding-left:0}
.reservation-tabs{display:flex;gap:20px;border-bottom:1px solid #dce3d3;margin:23px 0 0}
.reservation-tabs .btn{border:0;border-radius:0;background:none;color:#65715e;min-height:44px;padding:10px 2px;border-bottom:2px solid transparent;margin-bottom:-1px}
.reservation-tabs .btn.active{color:#344b32;border-bottom-color:#536b48;font-weight:600}
.reservation-tabs .btn:hover{background:#edf1e8}
.reservation-section h3{font-size:15px;color:#354b35;margin:26px 0 16px}
.reservation-section .detail-list{margin:0;row-gap:20px}
.reservation-section .detail-list dt{color:#65715e;font-size:12px}
.reservation-section .detail-list dd{color:#354b35;font-size:14px;overflow-wrap:anywhere}
.reservation-note{margin:20px 0 0;padding:16px 0;border-top:1px solid #e2e7d8}
.reservation-note strong{color:#43583c;font-size:13px;font-weight:600}
.reservation-note p{margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;color:#5d6a55;line-height:1.75}
.section-count{font-size:12px;font-weight:400;color:#65715e;margin-left:8px;display:inline-block}
.reservation-number{font-size:11px;color:#65715e;margin:24px 0 0;overflow-wrap:anywhere}
.reservation-actions{flex-wrap:wrap}
.reservation-line-items{padding:8px 16px}
.reservation-line-items p{display:flex;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid #e2e7d8}
.reservation-line-items span{overflow-wrap:anywhere}
.reservation-line-items strong{white-space:nowrap}
.reservation-activity{list-style:none;padding:0;margin:0}
.reservation-activity li{display:flex;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid #e2e7d8}
.reservation-activity li div{display:flex;flex-direction:column;gap:4px}
.reservation-activity strong{font-size:13px;font-weight:500;color:#354b35}
.reservation-activity span,.reservation-activity time{color:#65715e;font-size:12px}
.reservation-modal .empty{padding:22px 12px;color:#65715e}
.customer-profile-heading{flex-wrap:wrap}
@media(max-width:600px){
 .reservation-identity{align-items:flex-start;gap:12px;flex-wrap:wrap}
 .reservation-identity>div{align-items:flex-start}
 .reservation-tabs{gap:18px}
 .reservation-tabs .btn{font-size:13px}
 .reservation-section .detail-list{gap:18px 12px}
 .reservation-activity li{flex-direction:column;gap:6px}
 .reservation-actions .btn{flex-grow:1}
 .customer-profile-heading .badge{margin-left:54px}
 .reservation-modal .modal-body{padding:18px}
 .section-count{display:block;margin:5px 0 0}
}
@media(prefers-reduced-motion:reduce){.booking-row{transition:none}}
