/*
 * Popup viewport stability across Safari, mobile keyboards, and landscape.
 */

.bgccou-otp-modal.is-open,
.bgccou-tip-modal.is-open,
.bgccou-trial-used-modal.is-open,
.bgc-popup.is-open,
.bgc-modal.is-open,
.bgc-trial-popup.is-open,
.bgc-checkout-preferences-popup.is-open,
.bgc-bouquets-popup.is-open,
.bgc-activation-popup.is-open,
.bgc-save-details-popup.is-open {
  min-height: 100vh;
  min-height: 100svh;
  min-height: 100dvh;
}

.bgccou-otp-dialog,
.bgccou-tip-dialog,
.bgccou-trial-used-dialog,
.bgc-popup-dialog,
.bgc-modal-dialog,
.bgc-trial-popup-dialog,
.bgc-checkout-preferences-dialog,
.bgc-bouquets-popup-dialog,
.bgc-activation-popup-dialog,
.bgc-save-details-dialog {
  max-height: calc(100vh - 32px);
  max-height: calc(100svh - 32px);
  max-height: calc(100dvh - 32px);
  max-height: calc(var(--bgccou-visual-vh, 100vh) - 32px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.bgccou-otp-body,
.bgccou-tip-body,
.bgccou-trial-used-body,
.bgc-popup-body,
.bgc-modal-body,
.bgc-trial-popup-body,
.bgc-checkout-preferences-body,
.bgc-bouquets-popup-body,
.bgc-activation-popup-body,
.bgc-save-details-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}

.bgccou-otp-actions,
.bgccou-tip-actions,
.bgccou-trial-used-actions,
.bgc-popup-footer,
.bgc-modal-footer,
.bgc-trial-popup-footer,
.bgc-checkout-preferences-footer,
.bgc-bouquets-popup-footer,
.bgc-activation-popup-footer,
.bgc-save-details-footer {
  flex: 0 0 auto;
}

@media (max-width: 600px) {
  .bgccou-otp-actions,
  .bgccou-tip-actions,
  .bgccou-trial-used-actions,
  .bgc-popup-footer,
  .bgc-modal-footer,
  .bgc-trial-popup-footer,
  .bgc-checkout-preferences-footer,
  .bgc-bouquets-popup-footer,
  .bgc-activation-popup-footer,
  .bgc-save-details-footer {
    padding-bottom: max(14px, env(safe-area-inset-bottom));
  }

  .bgccou-otp-overlay,
  .bgc-popup-overlay,
  .bgc-modal-overlay,
  .bgc-trial-popup-overlay,
  .bgc-bouquets-popup-overlay,
  .bgc-activation-popup-overlay,
  .bgc-save-details-overlay,
  .bgccou-tip-overlay,
  .bgccou-trial-used-backdrop {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
}

@media (max-height: 520px) {
  .bgccou-otp-dialog,
  .bgccou-tip-dialog,
  .bgccou-trial-used-dialog,
  .bgc-popup-dialog,
  .bgc-modal-dialog,
  .bgc-trial-popup-dialog,
  .bgc-checkout-preferences-dialog,
  .bgc-bouquets-popup-dialog,
  .bgc-activation-popup-dialog,
  .bgc-save-details-dialog {
    max-height: calc(var(--bgccou-visual-vh, 100vh) - 16px);
  }
}
