/* Booking iframe block — single source for the booking widget card.
   The listing sidebar renders this block (single-accommodate_listing.php),
   so the card and iframe styling live here and apply everywhere the
   widget appears. */

.listing-booking-iframe {
  display: block;
  width: 100%;
  height: 725px;
  border: 0;
}

.listing-booking-iframe:focus-visible {
  outline: none;
}

/* Boxed layout: the widget wrapped in the variant card (surface, ring,
   radius) — the same treatment the listing sidebar applies to its own box.
   Off by default; the sidebar renders the block without it to avoid a
   double box. */
.booking-iframe-wrapper--boxed {
  background-color: var(--color-surface-elevated);
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
  padding: var(--space-lg);
}

/* Editor preview */
.accommodate-booking-iframe-preview .accommodate-booking-iframe-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-sm);
  min-height: 200px;
  text-align: center;
  font-family: var(--font-body);
  color: var(--color-text-muted);
}

.accommodate-booking-iframe-placeholder .dashicons {
  width: auto;
  height: auto;
  font-size: var(--icon-size-booking);
  color: var(--color-primary);
}

.accommodate-booking-iframe-placeholder .accommodate-booking-iframe-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: var(--text-lg);
  color: var(--color-text);
}

.accommodate-booking-iframe-placeholder .accommodate-booking-iframe-url {
  margin: 0;
  font-size: var(--text-xs);
  overflow-wrap: anywhere;
}

.accommodate-booking-iframe-empty {
  padding: var(--space-xl);
  border: 1px dashed var(--color-border);
  border-radius: var(--radius-md);
  text-align: center;
  font-family: var(--font-body);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.accommodate-booking-iframe-empty p {
  margin: 0;
}