/* Finance setup is a focused work surface: keep the page behind it fixed. */
html.finance-wizard-modal-open,
html.finance-wizard-modal-open body {
  overflow: hidden !important;
  overscroll-behavior-y: none !important;
  touch-action: pan-x pan-y;
}

.finance-setup-wizard.finance-wizard-modal {
  position: fixed !important;
  z-index: 1000 !important;
  inset: max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)) !important;
  display: flex !important;
  flex-direction: column !important;
  width: auto !important;
  max-width: 980px !important;
  max-height: none !important;
  margin: auto !important;
  border-radius: 24px !important;
  background: #fbfaf5 !important;
  box-shadow: 0 28px 90px rgba(20, 45, 38, .34), 0 0 0 100vmax rgba(28, 43, 39, .44) !important;
  overflow: hidden !important;
  overscroll-behavior: contain !important;
}

.finance-setup-wizard.finance-wizard-modal > header {
  flex: 0 0 auto;
  padding-top: 16px !important;
  background: #fbfaf5;
}

.finance-setup-wizard.finance-wizard-modal > nav {
  flex: 0 0 auto;
  background: #fbfaf5;
}

.finance-setup-wizard.finance-wizard-modal > .finance-wizard-body {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: contain !important;
  touch-action: pan-y;
}

.finance-setup-wizard.finance-wizard-modal > footer {
  position: relative !important;
  flex: 0 0 auto;
  gap: 8px;
  align-items: center;
  padding-bottom: max(10px, env(safe-area-inset-bottom)) !important;
  background: #fbfaf5;
  box-shadow: 0 -8px 18px rgba(35, 63, 55, .06);
}

.finance-setup-wizard.finance-wizard-modal .finance-wizard-close {
  min-height: 38px;
  margin-left: auto;
  padding: 8px 15px;
  border: 1px solid rgba(36, 72, 63, .3);
  border-radius: 999px;
  background: #f1eee6;
  color: #24483f;
  font-weight: 850;
  cursor: pointer;
}

@media (max-width: 700px) {
  .finance-setup-wizard.finance-wizard-modal {
    inset: env(safe-area-inset-top) 0 0 0 !important;
    max-width: none !important;
    border-width: 0 !important;
    border-radius: 24px 24px 0 0 !important;
  }

  .finance-setup-wizard.finance-wizard-modal > header {
    padding: 14px 16px 9px !important;
  }

  .finance-setup-wizard.finance-wizard-modal > nav {
    padding-inline: 12px !important;
  }

  .finance-setup-wizard.finance-wizard-modal > .finance-wizard-body {
    padding: 14px 16px !important;
  }

  .finance-setup-wizard.finance-wizard-modal > footer {
    padding: 10px 12px max(12px, env(safe-area-inset-bottom)) !important;
  }

  .finance-setup-wizard.finance-wizard-modal > footer button {
    min-width: 0;
    padding-inline: 13px;
  }
}
