.booking-dialog{width:min(1140px,calc(100vw - 32px))}
.booking-dialog .expo-header p{font-size:13px;line-height:1.6;margin:6px 0 0}
.booking-dialog .expo-eyebrow{font-size:12px}
.booking-dialog .expo-section h3{font-size:15px}
.booking-dialog label{font-size:13px;font-weight:600}
.booking-dialog input:not([type=radio]):not([type=checkbox]),.booking-dialog select,.booking-dialog textarea{font-size:14px;min-height:42px}
.booking-dialog small{font-size:12px;line-height:1.6}
.booking-next-action{margin-top:18px}
.booking-dialog .booking-upload{display:grid;gap:12px;justify-items:center;text-align:center;padding:20px 12px;border:1px dashed var(--primary,#2d4a5d);border-radius:8px;background:var(--body-bg)}
.booking-upload>i{font-size:30px;color:var(--primary,#2d4a5d)}
.booking-dialog input[type=file]{max-width:100%;padding:7px;font-size:12px}
.booking-existing-file{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px;margin-top:14px;border:1px solid var(--border-color);border-radius:8px;background:var(--primary-lt);font-size:13px;overflow-wrap:anywhere}
.booking-existing-file small{flex-basis:100%}
.booking-existing-file[hidden],.booking-dialog [hidden],.booking-open-button[hidden]{display:none!important}
.booking-retained{font-size:12px;line-height:1.8}
.booking-notes{margin-top:16px}
.booking-open-button{width:100%;margin-top:12px}
.booking-pending-note{padding:14px 16px;margin-bottom:16px;border:1px solid var(--border-color);background:var(--primary-lt);border-radius:8px;font-size:14px;line-height:1.7}
.booking-review-list{display:grid;gap:20px;margin-top:20px}.booking-review-card{padding:24px}.booking-review-card>header{display:flex;justify-content:space-between;align-items:start;gap:16px;flex-wrap:wrap;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--border-color)}
.booking-review-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:24px}.booking-review-data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0}.booking-review-data>div{min-width:0}.booking-review-data dt{font-size:12px;color:var(--text-muted);font-weight:500;margin-bottom:5px}.booking-review-data dd{font-size:15px;font-weight:600;overflow-wrap:anywhere;margin:0}.booking-review-note{font-size:14px;line-height:1.8;margin-top:16px;overflow-wrap:anywhere}.booking-review-form{margin-top:20px}
@media(max-width:800px){.booking-review-layout{grid-template-columns:minmax(0,1fr)}.booking-review-card{padding:18px}}
.booking-dialog .expo-footer>span{font-size:12px}
@media(max-width:520px){.booking-dialog{width:calc(100vw - 16px)}.booking-dialog .expo-header h2{font-size:20px}.booking-dialog .expo-section{padding:14px}}
