/* The current party's contact fields become a temporary, scrollable card picker. */
.external-booking-workspace .booking-contact-details { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.6fr); gap: 20px; position: relative; min-width: 0; }
.external-booking-workspace .booking-contact-picker { position: absolute; inset: 0; z-index: 5; display: grid; grid-template-columns: 32px minmax(0,1fr) 32px 28px; align-items: stretch; gap: 6px; padding: 6px; border: 1px solid #a6b9a6; border-radius: 8px; background: #e1e9dd; box-shadow: 0 2px 7px #24362622; }
.external-booking-workspace .booking-contact-strip { display: flex; gap: 8px; min-width: 0; overflow-x: auto; scrollbar-width: thin; scroll-snap-type: x proximity; }
.desktop-workspace .external-booking-workspace button.booking-contact-card { flex: 0 0 calc((100% - 16px)/3); min-width: 200px; min-height: 0; padding: 6px 10px; display: flex; flex-direction: column; justify-content: center; align-items: stretch; gap: 2px; text-align: left; scroll-snap-align: start; background: #fffaf0; color: #303b33; border-color: #b8c7b2; }
.desktop-workspace .external-booking-workspace .booking-contact-card strong { display: block; font-size: 22px; line-height: 1.15; font-weight: 650; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.desktop-workspace .external-booking-workspace .booking-contact-card small { font-size: 13px; font-weight: 500; color: #68705b; }
.desktop-workspace .external-booking-workspace .booking-contact-card > span { display: block; font-size: 16px; line-height: 1.15; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #52644e; }
.desktop-workspace .external-booking-workspace .booking-contact-picker > button { padding: 2px; font-size: 28px; color: #365735; }
.desktop-workspace .external-booking-workspace .booking-contact-picker > .booking-contact-close { font-size: 24px; align-self: start; min-height: 32px; }
.external-booking-workspace .booking-contact-status { grid-column: 1 / 4; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 12px; color: #365735; font-size: 20px; }
