.wpbc-customer-bookings-shell {
  --wpbc-customer-border: var(--wpbc-bfb-form-border-color, var(--wpbc_form-field-border-color, #dcdcde));
  --wpbc-customer-muted: var(--wpbc_form-label-sublabel-color, #646970);
  --wpbc-customer-primary: var(--wpbc_form-accent-color, var(--wpbc_form-button-background-color, #066aab));
  --wpbc-customer-surface: var(--wpbc-bfb-form-background, var(--wpbc_form-field-background-color, #fff));
  --wpbc-customer-text: var(--wpbc_form-label-color, #1d2327);
  color: var(--wpbc-customer-text);
  margin: 1.5rem auto;
  max-width: 960px
}
.wpbc-customer-access-panel,
.wpbc-customer-booking-card,
.wpbc-customer-cancellation-panel,
.wpbc-customer-empty-state {
  background: var(--wpbc-customer-surface);
  border: var(--wpbc-bfb-form-border-width,1px) solid var(--wpbc-customer-border);
  border-radius: var(--wpbc-bfb-form-border-radius,8px);
  box-shadow: var(--wpbc-bfb-form-box-shadow,0 1px 2px rgba(0,0,0,.04));
  color: var(--wpbc-customer-text)
}
.wpbc-customer-access-panel {
  margin: 0 auto;
  max-width: 520px;
  padding: clamp(1.25rem,4vw,2rem)
}
.wpbc-customer-cancellation-shell {
  max-width: 720px
}
.wpbc-customer-cancellation-panel {
  padding: clamp(1.25rem,4vw,2rem)
}
.wpbc-customer-cancellation-panel__header {
  margin-bottom: 1rem
}
.wpbc-customer-cancellation-panel__header h2 {
  margin: 0 0 .5rem
}
.wpbc-customer-cancellation-panel__header p {
  color: var(--wpbc-customer-muted);
  margin: 0
}
.wpbc-customer-cancellation-panel__actions {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 1.25rem
}
.wpbc-customer-danger-button {
  background: #b32d2e!important;
  border-color: #b32d2e!important;
  color: #fff!important
}
.wpbc-customer-danger-button:hover {
  background: #8a2424!important;
  border-color: #8a2424!important
}
.wpbc-customer-access-panel h2,
.wpbc-customer-booking-card h3,
.wpbc-customer-bookings__header h2 {
  color: var(--wpbc-customer-text);
  margin-top: 0
}
.wpbc-customer-access-form {
  display: grid;
  gap: .75rem
}
.wpbc-customer-access-form label {
  color: var(--wpbc_form-label-color,var(--wpbc-customer-text));
  font-weight: 600
}
.wpbc-customer-access-form input[type=email],
.wpbc-customer-access-form input[type=text] {
  background: var(--wpbc_form-field-background-color,#fff);
  border: var(--wpbc_form-field-border-size,1px) solid var(--wpbc_form-field-border-color,#8c8f94);
  border-radius: var(--wpbc_form-field-border-radius,4px);
  box-sizing: border-box;
  color: var(--wpbc_form-field-text-color,#1d2327);
  font-size: 1rem;
  min-height: var(--wpbc_form-field-size-input-height,44px);
  padding: .5rem .75rem;
  width: 100%
}
.wpbc-customer-bookings-shell .button,
.wpbc-customer-bookings-shell .button-link {
  -ms-flex-align: center;
  align-items: center;
  border: var(--wpbc_form-button-border-size,1px) solid var(--wpbc_form-button-light-border-color,#8c8f94);
  border-radius: var(--wpbc_form-button-border-radius,4px);
  box-sizing: border-box;
  cursor: pointer;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font: inherit;
  -ms-flex-pack: center;
  justify-content: center;
  min-height: var(--wpbc_form-button-size-height,40px);
  padding: .45rem .8rem;
  text-decoration: none
}
.wpbc-customer-bookings-shell .button {
  background: var(--wpbc_form-button-light-background-color,#f6f7f7);
  color: var(--wpbc_form-button-light-text-color,#1d2327)
}
.wpbc-customer-bookings-shell .button-link {
  background: 0 0;
  border-color: transparent;
  color: var(--wpbc-customer-primary)
}
.wpbc-customer-bookings-shell .button-link:hover,
.wpbc-customer-bookings-shell .button:not(.wpbc_button):hover {
  border-color: var(--wpbc_form-button-light-hover-border-color,var(--wpbc-customer-primary));
  color: var(--wpbc_form-button-light-hover-text-color,var(--wpbc-customer-primary))
}
.wpbc-customer-access-form input:focus-visible,
.wpbc-customer-bookings-shell .button-link:focus-visible {
  border-color: var(--wpbc_form-field-focus-border-color,var(--wpbc-customer-primary));
  box-shadow: 0 0 0 2px var(--wpbc_form-field-focus-shadow-color,var(--wpbc-customer-primary));
  outline: transparent solid 2px;
  outline-offset: 1px
}
.wpbc-customer-primary-button:not(.wpbc_button) {
  background: var(--wpbc_form-button-background-color-alt,var(--wpbc-customer-primary))!important;
  border-color: var(--wpbc_form-button-border-color,var(--wpbc-customer-primary))!important;
  color: var(--wpbc_form-button-text-color,#fff)!important
}
.wpbc-customer-secondary-form {
  margin-top: 1rem
}
.wpbc-customer-message {
  border-left: 4px solid var(--wpbc-customer-primary);
  margin: 0 auto 1rem;
  max-width: 920px;
  padding: .75rem 1rem
}
.wpbc-customer-message--success {
  background: #edfaef;
  border-left-color: #00a32a
}
.wpbc-customer-message--error {
  background: #fcf0f1;
  border-left-color: #d63638
}
.wpbc-customer-booking-card__actions,
.wpbc-customer-booking-card__header,
.wpbc-customer-bookings__header,
.wpbc-customer-pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  gap: .75rem;
  -ms-flex-pack: justify;
  justify-content: space-between
}
.wpbc-customer-bookings__header {
  margin-bottom: 1.25rem
}
.wpbc-customer-bookings__header p {
  color: var(--wpbc-customer-muted);
  margin: 0
}
.wpbc-customer-booking-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit,minmax(min(100%,340px),1fr))
}
.wpbc-customer-booking-card {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  overflow: hidden;
  padding: 1.25rem
}
.wpbc-customer-booking-card__id {
  color: var(--wpbc-customer-muted);
  font-size: .875rem
}
.wpbc-customer-status {
  border-radius: 999px;
  font-size: .75rem;
  font-weight: 600;
  padding: .3rem .6rem;
  white-space: nowrap
}
.wpbc-customer-status--approved {
  background: #edfaef;
  color: #006b1b
}
.wpbc-customer-status--pending {
  background: #fcf3cf;
  color: #6e4f00
}
.wpbc-customer-booking-card__dates {
  border-bottom: var(--wpbc-bfb-form-border-width,1px) solid var(--wpbc-customer-border);
  font-weight: 600;
  margin: 1rem 0;
  padding-bottom: 1rem
}
.wpbc-customer-booking-card__details {
  color: var(--wpbc_form-field-text-color,var(--wpbc-customer-text));
  -ms-flex: 1;
  flex: 1;
  overflow-wrap: anywhere
}
.wpbc-customer-booking-card__actions {
  border-top: var(--wpbc-bfb-form-border-width,1px) solid var(--wpbc-customer-border);
  -ms-flex-pack: start;
  justify-content: flex-start;
  margin-top: 1rem;
  padding-top: 1rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}
.wpbc-customer-empty-state {
  padding: 2rem;
  text-align: center
}
.wpbc-customer-pagination {
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 1.5rem
}
@media (max-width:600px) {
  .wpbc-customer-booking-card__header,
  .wpbc-customer-bookings__header {
    -ms-flex-align: start;
    align-items: flex-start
  }
  .wpbc-customer-bookings__header {
    -ms-flex-direction: column;
    flex-direction: column
  }
}