/* Phone check-in and the four booking destinations share the shell tokens. */
.booking-toolbox .booking-tabs { display: grid; grid-template-columns: repeat(4, auto); width: 100%; }
.booking-toolbox .booking-tabs button { min-width: 0; white-space: nowrap; overflow-wrap: normal; padding: 12px 4px; flex-wrap: nowrap; justify-content: center; }
.booking-toolbox .booking-attendance-counts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; width: 100%; }
.booking-toolbox .booking-attendance-counts > div { min-width: 0; overflow-wrap: normal; }
.booking-toolbox .booking-attendance-counts small { display: block; }
.booking-toolbox .booking-attendance { display: grid; min-width: 0; }
.booking-toolbox .booking-attendance select { min-width: 0; max-width: 100%; }
.booking-toolbox .booking-open-requests { margin-top: 32px; min-width: 0; }
.booking-toolbox .booking-request-list { display: grid; gap: 16px; min-width: 0; }
.booking-toolbox .booking-day > .loading { min-height: 280px; }
.booking-toolbox .booking-request-list > .loading { min-height: 280px; }
.booking-toolbox .booking-card { min-width: 0; }
.booking-toolbox .booking-card p, .booking-toolbox .booking-card a, .booking-toolbox .booking-card blockquote { overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .booking-toolbox .booking-scanner { display: flex; flex-direction: column; align-items: stretch; }
  .booking-toolbox [data-booking-camera-open] { min-height: 56px; width: 100%; font-size: 1rem; }
  .booking-toolbox .booking-scanner-copy { min-width: 0; }
  .booking-toolbox .booking-scanner-copy > div { min-width: 0; }
  .booking-toolbox .booking-code-form { min-width: 0; width: 100%; }
  .booking-toolbox .booking-code-form label { min-width: 0; }
  .booking-toolbox .booking-code-form input { width: 100%; min-width: 0; }
}

@media (max-width: 480px) {
  .booking-toolbox .booking-slot-group > header { align-items: flex-start; flex-direction: column; }
  .booking-toolbox .booking-attendance-counts > div { padding: 12px 8px; }
}

.booking-toolbox .loading { min-width: 0; padding: 32px 16px; overflow-wrap: anywhere; }
.booking-toolbox .loading p { min-width: 0; margin: 0; }

.booking-toolbox .booking-tabs em { background: #b42318; color: #fff; }
.booking-toolbox .booking-calendar-no-times { color: var(--muted); }

@media (max-width: 340px) { .booking-toolbox .booking-tabs button { font-size: 10px; } .booking-toolbox .booking-attendance-counts { font-size: 11px; } }
