/* Keep actions in their content position; pin only when they cannot fit. */
.onboarding-action-slot { width: 100%; margin-top: 24px; }
.onboarding-container:has(.onboarding-step.active.has-pinned-actions) .compact-site-footer {
  padding-bottom: calc(160px + env(safe-area-inset-bottom)) !important;
}

.onboarding-step.active .input-group:has(.country-dropdown.show) {
  z-index: 10001;
}

.onboarding-step .onboarding-viewport-actions {
  display: none;
}

.onboarding-step.active .onboarding-viewport-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.onboarding-step.active.has-pinned-actions .onboarding-viewport-actions {
  position: fixed;
  right: 0;
  bottom: var(--onboarding-hidden-bottom, 0px);
  left: 0;
  z-index: 9500;
  padding: 10px max(18px, env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));
  background: linear-gradient(to bottom, rgba(250, 247, 255, 0.96), #f3f5ff 30%);
  box-shadow: 0 -8px 24px rgba(15, 23, 42, 0.07);
}

#step17 .onboarding-viewport-actions > .checkout-save-error,
#step17 .onboarding-viewport-actions > .pricing-footnote {
  width: min(100%, 560px);
  margin: 5px 0 0;
  text-align: center;
}

#step17 .onboarding-viewport-actions > .checkout-save-error[hidden] {
  display: none;
}

.onboarding-step.active .onboarding-viewport-actions > .cta-button,
.onboarding-step.active .onboarding-viewport-actions > .pricing-primary-cta,
#step13.onboarding-step.active .onboarding-viewport-actions > .cta-button.is-safety-floating {
  position: static !important;
  inset: auto !important;
  width: min(100%, 560px);
  max-width: 560px;
  margin: 0 !important;
  transform: none;
}

@media (max-height: 450px) {
  .onboarding-step.active.has-pinned-actions .onboarding-viewport-actions { padding-top: 5px; padding-bottom: calc(5px + env(safe-area-inset-bottom)); }
}
