/* Plugin-managed loading states for direct shortcodes and iframe embeds. */
.bef-embed-shell { position: relative; min-height: 180px; width: 100%; }
.bef-embed-shell[data-bef-loading="true"] > iframe,
.bef-embed-shell[data-bef-loading="error"] > iframe { visibility: hidden; }
.bef-embed-loader { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; box-sizing: border-box; padding: 24px; background: #f6f6f8; color: #202328; font: 16px/1.5 Arial, sans-serif; text-align: center; border-radius: 10px; }
.bef-embed-shell[data-bef-loading="false"] > .bef-embed-loader { display: none; }
.bef-embed-loader::before,
.bef-form[data-bef-initializing] > .bef-status::before { content: ""; display: block; flex: 0 0 auto; width: 30px; height: 30px; box-sizing: border-box; border: 3px solid #d9dadd; border-top-color: #ed0033; border-radius: 50%; animation: bef-loader-spin .8s linear infinite; }
.bef-embed-shell[data-bef-loading="error"] > .bef-embed-loader::before { display: none; }
.bef-embed-loader > button { padding: 10px 24px; border: 0; border-radius: 999px; background: #ffca28; color: #202328; font: inherit; font-weight: 700; cursor: pointer; }
.bef-embed-loader > button:focus-visible { outline: 2px solid #202328; outline-offset: 3px; }
.bef-form[data-bef-initializing] { position: relative; min-height: 180px; }
.bef-form[data-bef-initializing] > :not(.bef-status):not(noscript) { visibility: hidden; }
form.bef-form[data-bef-initializing] > .bef-status:not(:empty) { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; margin: 0; padding: 24px; border: 0; background: #f6f6f8; color: #202328; text-align: center; }
@keyframes bef-loader-spin { to { transform: rotate(360deg); } }
.bef-direct-slot { display: flex; min-height: 220px; box-sizing: border-box; flex-direction: column; align-items: center; justify-content: center; gap: 16px; padding: 24px; border-radius: 10px; background: #f6f6f8; color: #202328; text-align: center; }
.bef-direct-slot[data-bef-loading="true"]::before { content: ""; width: 30px; height: 30px; box-sizing: border-box; border: 3px solid #d9dadd; border-top-color: #ed0033; border-radius: 50%; animation: bef-loader-spin .8s linear infinite; }
.bef-direct-slot > button { padding: 10px 24px; border: 0; border-radius: 999px; background: #ffca28; color: #202328; font: inherit; font-weight: 700; cursor: pointer; }
.bef-direct-slot > button:focus-visible { outline: 2px solid #202328; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  .bef-embed-loader::before,
  .bef-form[data-bef-initializing] > .bef-status::before,
  .bef-direct-slot[data-bef-loading="true"]::before { animation: none; }
}
