/* Scoped to lab payment only: no shared site rules changed */
.ms48-payment{margin:18px 0;padding:20px;border:1px solid #d5e2ee;border-radius:14px;background:#f8fbff;min-width:0;box-sizing:border-box;color:#12345a}
.ms48-payment *{box-sizing:border-box}
.ms48-payment .ms48-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.ms48-payment h4{margin:0;font-size:18px}
.ms48-payment .ms48-status{margin:0 0 12px;line-height:1.5;overflow-wrap:anywhere}
.ms48-payment .ms48-form{display:flex;flex-direction:column;gap:14px;margin:0}
.ms48-payment .ms48-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ms48-payment label{display:flex;flex-direction:column;gap:7px;font-weight:600;min-width:0}
.ms48-payment input,.ms48-payment select{display:block;width:100%;max-width:100%;min-height:44px;padding:10px 12px;border:1px solid #b8cbdc;border-radius:9px;background:#fff;color:#12345a;font:inherit}
.ms48-payment select:disabled{background:#eef3f8;color:#344b63;opacity:1}
.ms48-payment .ms48-note{margin:0;padding:12px;border-radius:9px;background:#edf4fa;color:#526c82;line-height:1.6;overflow-wrap:anywhere}
.ms48-payment [hidden]{display:none!important}
.ms48-payment button{font:inherit;font-weight:600;cursor:pointer;border-radius:9px;padding:11px 16px;min-height:44px;max-width:100%;white-space:normal}
.ms48-payment .ms48-primary{background:#1654a0;color:white;border:1px solid #1654a0;align-self:flex-start}
.ms48-payment .ms48-secondary{background:white;color:#1654a0;border:1px solid #1654a0;align-self:flex-start}
.ms48-payment .ms48-success{color:#187245;font-weight:600;margin:4px 0 12px}
.ms48-payment .ms48-edit-actions{display:flex;gap:10px;flex-wrap:wrap}
.ms48-payment .ms48-verify{border-top:1px solid #d5e2ee;margin-top:18px;padding-top:16px}
.ms48-payment .ms48-verify label{max-width:560px}
@media(max-width:640px){.ms48-payment{padding:15px;margin:16px 0}.ms48-payment .ms48-grid{grid-template-columns:1fr}.ms48-payment button{width:100%;align-self:stretch}.ms48-payment .ms48-edit-actions{flex-direction:column}.ms48-payment h4{font-size:17px}}

/* V8.9.48.4: new admin-assisted controls only */
.ms484-workflow{background:#fff}.ms484-chip{background:#eaf5ee;color:#14683c;border-radius:20px;padding:5px 10px;font-size:12px;font-weight:600}.ms484-progress{border-top:1px solid #d5e2ee;margin-top:18px!important;padding-top:16px}.ms484-workflow .ms48-form+.ms48-form{margin-top:16px}

/* V8.9.48.5: scoped customer contact and choice edit UI */
.ms485-contact{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 18px}.ms485-contact a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 17px;border-radius:9px;font-weight:700;text-decoration:none}.ms485-call{color:#1654a0;background:#fff;border:1px solid #1654a0}.ms485-wa{color:#fff;background:#187c4d;border:1px solid #187c4d}.ms485-choice-form .ms48-success{margin:0}.ms485-choice-actions{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:640px){.ms485-contact a{flex:1 1 100%}}

/* V8.9.48.6: customer booking status sync only */
.ms486-booking{margin-top:14px;padding:14px;border:1px solid #d8e5f0;border-radius:12px;background:#f7fbff;color:#163452}
.ms486-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.ms486-pill{background:#e8f1ff;color:#17539d;border-radius:30px;padding:5px 12px;text-transform:capitalize;font-size:13px;font-weight:700}
.ms486-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ms486-grid>div{background:#fff;border:1px solid #e3ebf4;border-radius:9px;padding:11px;min-width:0}
.ms486-grid small{display:block;color:#64758a;font-size:12px;margin-bottom:5px}
.ms486-grid p{margin:0;overflow-wrap:anywhere}
.ms486-confirmed{border-color:#b8d6f6!important;background:#f0f7ff!important}
.ms486-remark{margin:12px 0 0}.ms486-report{display:inline-block;margin-top:12px;font-weight:700;color:#1357a0}
@media(max-width:600px){.ms486-grid{grid-template-columns:1fr}.ms486-booking{padding:12px}}

/* V8.9.48.7 compact booking lists */
.ms487-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.ms487-filters label{display:flex;flex-direction:column;gap:5px;font-weight:600}.ms487-filters input,.ms487-filters select{width:100%;min-width:0;padding:10px;border:1px solid #cbd9e6;border-radius:9px;background:white}.ms487-card{border:1px solid #d4e1ed;border-radius:13px;padding:13px;margin:10px 0;background:#fff}.ms487-cardtop{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.ms487-cardtop strong{display:block;overflow-wrap:anywhere}.ms487-cardtop small{display:block;color:#5e7187;margin-top:6px;overflow-wrap:anywhere}.ms487-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.ms487-tag{font-size:12px;border-radius:20px;padding:4px 9px;background:#e9f2ff;color:#18549b;text-transform:capitalize}.ms487-view{margin-top:10px}.ms487-expanded{margin-top:14px;border-top:1px solid #e1e8f1;padding-top:12px}.ms487-expanded>.ms45-book{border:0;padding:0;margin:0}.ms487-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:15px 0;flex-wrap:wrap}.ms487-pager>div{display:flex;gap:8px}.ms487-pager button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:650px){.ms487-filters{grid-template-columns:1fr}.ms487-cardtop{gap:7px}.ms487-right{max-width:42%}.ms487-card{padding:11px}}

/* V8.9.48.9: Customer pagination controls only */
.ms489-customer-pager{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:15px 0}
.ms489-pager-actions{display:flex;align-items:center;gap:8px;max-width:100%}
.ms489-pager-actions button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:650px){.ms489-customer-pager{flex-direction:column;align-items:stretch}.ms489-pager-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:6px;width:100%}.ms489-pager-actions button{min-width:0;width:100%;padding:10px 4px;font-size:13px;white-space:nowrap}.ms489-page-info{display:block}}
