.protokos-static-wrapper {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  border-radius: var(--protokos-static-radius, inherit) !important;
  background: transparent !important;
}

.protokos-static-wrapper[data-protokos-active="false"] {
  min-height: var(--protokos-static-height, 360px) !important;
  background: var(--pcc-placeholder-bg, #111) !important;
}

.protokos-static-wrapper[data-protokos-active="true"] {
  min-height: 0 !important;
  background: transparent !important;
}

.protokos-static-wrapper[data-protokos-virtual-embed="true"] {
  aspect-ratio: var(--protokos-aspect-ratio, 16 / 9) !important;
  min-height: 0 !important;
}

.protokos-static-wrapper[data-protokos-virtual-embed="true"][data-protokos-active="false"] {
  min-height: var(--protokos-static-height, 360px) !important;
}

.protokos-static-wrapper > iframe[data-protokos-controlled-iframe="true"],
.protokos-static-wrapper > iframe[data-protokos-live="true"] {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  border: 0 !important;
  box-sizing: border-box !important;
  border-radius: inherit !important;
}

.protokos-static-wrapper[data-protokos-virtual-embed="true"] > iframe[data-protokos-live="true"] {
  height: 100% !important;
  min-height: 0 !important;
}

.protokos-static-wrapper:not([data-protokos-virtual-embed="true"]) > iframe[data-protokos-controlled-iframe="true"],
.protokos-static-wrapper:not([data-protokos-virtual-embed="true"]) > iframe[data-protokos-live="true"] {
  height: var(--protokos-static-height, 360px) !important;
}

.protokos-static-wrapper > iframe[hidden],
.protokos-static-wrapper > iframe[data-protokos-active="false"] {
  display: none !important;
}

.protokos-static-wrapper > iframe[data-protokos-active="true"],
.protokos-static-wrapper > iframe[data-protokos-live="true"] {
  display: block !important;
}

.protokos-static-placeholder {
  display: flex;
  min-height: var(--protokos-static-height, 360px) !important;
  width: 100% !important;
  max-width: 100% !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--pcc-placeholder-bg, #111) !important;
  color: var(--pcc-placeholder-text, #fff) !important;
  text-align: center !important;
  padding: 24px !important;
  box-sizing: border-box !important;
  border-radius: inherit !important;
}

.protokos-static-placeholder[hidden] {
  display: none !important;
}

.protokos-static-message {
  font-size: var(--pcc-message-font-size, 16px) !important;
  line-height: 1.5 !important;
  margin: 0 0 14px 0 !important;
  max-width: 520px !important;
  color: var(--pcc-placeholder-text, #fff) !important;
}

.protokos-static-button {
  display: inline-block !important;
  background: var(--pcc-button-bg, #ffbc1b) !important;
  color: var(--pcc-button-text, #111) !important;
  text-decoration: none !important;
  padding: 12px 18px !important;
  font-weight: 700 !important;
  font-size: var(--pcc-button-font-size, 16px) !important;
  line-height: 1.2 !important;
  border-radius: var(--pcc-button-radius, 0px) !important;
  border: 0 !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

.protokos-static-button:hover,
.protokos-static-button:focus,
.protokos-static-button:active {
  background: var(--pcc-button-hover-bg, var(--pcc-button-bg, #ffbc1b)) !important;
  color: var(--pcc-button-hover-text, var(--pcc-button-text, #111)) !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.calendly-inline-widget[data-protokos-calendly-host="true"] {
  min-height: var(--protokos-static-height, 700px) !important;
  height: var(--protokos-static-height, 700px) !important;
}

.calendly-inline-widget[data-protokos-calendly-host="true"] > iframe {
  min-height: var(--protokos-static-height, 700px) !important;
  height: var(--protokos-static-height, 700px) !important;
}

.calendly-inline-widget[data-protokos-calendly-host="true"][data-protokos-active="true"] {
  background: transparent !important;
}

.protokos-static-placeholder--calendly {
  min-height: var(--protokos-static-height, 700px) !important;
}


/* v4.1.5: Gutenberg URL-only embeds use aspect-ratio and suppress WordPress responsive pseudo-height to prevent double-height placeholders. */
.protokos-static-wrapper[data-protokos-virtual-embed="true"][data-protokos-provider="youtube"],
.protokos-static-wrapper[data-protokos-virtual-embed="true"][data-protokos-provider="vimeo"] {
  min-height: 0 !important;
  height: auto !important;
}

.protokos-static-wrapper[data-protokos-virtual-embed="true"][data-protokos-provider="youtube"] > .protokos-static-placeholder,
.protokos-static-wrapper[data-protokos-virtual-embed="true"][data-protokos-provider="vimeo"] > .protokos-static-placeholder {
  min-height: 0 !important;
  height: 100% !important;
}


/* v4.1.5: prevent WordPress responsive embed pseudo padding from stacking on top of Protokos placeholders. */
.wp-block-embed[data-protokos-gutenberg-controlled="true"],
.wp-block-embed__wrapper[data-protokos-gutenberg-controlled="true"] {
  height: auto !important;
  min-height: 0 !important;
}

.wp-block-embed[data-protokos-gutenberg-controlled="true"] .wp-block-embed__wrapper::before,
.wp-block-embed__wrapper[data-protokos-gutenberg-controlled="true"]::before {
  content: none !important;
  display: none !important;
  padding-top: 0 !important;
  height: 0 !important;
}

.wp-block-embed[data-protokos-gutenberg-controlled="true"] .wp-block-embed__wrapper,
.wp-block-embed__wrapper[data-protokos-gutenberg-controlled="true"] {
  position: static !important;
}

.wp-block-embed[data-protokos-gutenberg-controlled="true"] .protokos-static-wrapper,
.wp-block-embed__wrapper[data-protokos-gutenberg-controlled="true"] .protokos-static-wrapper {
  position: relative !important;
  clear: both !important;
}

.protokos-static-wrapper[data-protokos-virtual-embed="true"][data-protokos-provider="youtube"],
.protokos-static-wrapper[data-protokos-virtual-embed="true"][data-protokos-provider="vimeo"] {
  aspect-ratio: var(--protokos-aspect-ratio, 16 / 9) !important;
}


/* v4.1.5: Gutenberg iframes already converted by WordPress oEmbed use aspect ratio instead of measured block height. */
figure.wp-block-embed[data-protokos-gutenberg-controlled="true"],
figure.wp-block-embed[data-protokos-gutenberg-controlled="true"] .wp-block-embed__wrapper,
.wp-block-embed__wrapper[data-protokos-gutenberg-controlled="true"] {
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
}

figure.wp-block-embed[data-protokos-gutenberg-controlled="true"] .wp-block-embed__wrapper::before,
.wp-block-embed__wrapper[data-protokos-gutenberg-controlled="true"]::before {
  content: none !important;
  display: none !important;
  padding: 0 !important;
  height: 0 !important;
}

.protokos-static-wrapper[data-protokos-gutenberg-embed="true"][data-protokos-provider="youtube"],
.protokos-static-wrapper[data-protokos-gutenberg-embed="true"][data-protokos-provider="vimeo"] {
  aspect-ratio: var(--protokos-aspect-ratio, 16 / 9) !important;
  height: auto !important;
  min-height: 0 !important;
  position: relative !important;
}

.protokos-static-wrapper[data-protokos-gutenberg-embed="true"][data-protokos-provider="youtube"] > .protokos-static-placeholder,
.protokos-static-wrapper[data-protokos-gutenberg-embed="true"][data-protokos-provider="vimeo"] > .protokos-static-placeholder {
  height: 100% !important;
  min-height: 0 !important;
}

.protokos-static-wrapper[data-protokos-gutenberg-embed="true"][data-protokos-provider="youtube"] > iframe[data-protokos-controlled-iframe="true"],
.protokos-static-wrapper[data-protokos-gutenberg-embed="true"][data-protokos-provider="vimeo"] > iframe[data-protokos-controlled-iframe="true"] {
  height: 100% !important;
  min-height: 0 !important;
}

/* v4.1.5: Spectra/UAGB Google Map block host control. */
[data-protokos-spectra-map-host="true"] {
  width: 100% !important;
  max-width: 100% !important;
  min-height: var(--protokos-static-height, 300px) !important;
  box-sizing: border-box !important;
}

[data-protokos-spectra-map-host="true"] > .protokos-static-placeholder--spectra-map {
  min-height: var(--protokos-static-height, 300px) !important;
}
