/* EMD Kohi booking embed, PARENT side styles. Task 9703. PREPARED, NOT DEPLOYED.
 *
 * Every selector is prefixed. Nothing here sets a type size, a colour or a font, because this
 * element sits inside Elementor Pro, Elementor and jeg-elementor-kit, three stylesheets with
 * opinions about forms and buttons, and the content it holds is in another document where none of
 * them reach. The only job of this file is the box.
 */

.emd-kohi-embed {
  display: block;
  position: relative;
  width: 100%;
  margin: 0;
  /* THE FALLBACK HEIGHT, and the reason this is already better than 750/950.
     It is the customer's own viewport rather than a guess at their device class: never taller than
     the screen (so the widget's top and the page below it are both reachable), never shorter than
     560px (so the first step is never squeezed on a short landscape phone), and capped at 1100px so
     it does not run away on a tall desktop monitor. It applies only until a measured height
     arrives, and on the measured path it is dropped entirely. */
  min-height: clamp(560px, 92vh, 1100px);
}

/* Once the child has reported, the inline height on the frame is the truth and the fallback floor
   must get out of its way, or a short step (step 1 on a desktop is about 420px) would be padded out
   to the fallback and we would be back to dead space. */
.emd-kohi-embed.is-measured {
  min-height: 0;
}

.emd-kohi-embed__frame {
  display: block;
  width: 100%;
  /* Matches the fallback so the frame fills the container before any measurement. Replaced by an
     inline pixel height the moment the child reports. */
  height: clamp(560px, 92vh, 1100px);
  border: 0;
  /* No border-radius and no overflow:hidden. A rounded clip on a frame whose height is changing is
     where the bottom row of a price table goes missing. */
  background: transparent;
  color-scheme: light dark;
}

.emd-kohi-embed.is-measured .emd-kohi-embed__frame {
  /* The inline style carries the real number; this only stops the clamp winning the cascade. */
  height: auto;
}

.emd-kohi-embed__noscript {
  margin: 0;
  padding: 1rem 0;
}
