/**
 * @file
 * Styling for core user routes (login, register, reset password).
 */

.ep-auth-page {
  padding-block: clamp(2rem, 5vw, 4rem);
}

#main.ep-auth-page {
  background-color: var(--ep-color-bg-page) !important;
}

/* #main grows via flex; keep the auth card content-height, not viewport-tall. */
.ep-auth-page > .row {
  align-items: flex-start;
}

.ep-auth-page__main {
  flex: 0 1 100%;
  max-width: 100%;
  align-self: flex-start;
}

main .section.ep-auth-page__card,
section.section.ep-auth-page__card {
  background-color: #ffffff !important;
  border-radius: 0;
  box-shadow: 0 2px 16px var(--ep-color-shadow-light);
  border: var(--ep-border-width-thick) solid var(--ep-color-text-primary);
}

.ep-auth-page__card {
  max-width: min(var(--ep-auth-page-card-max-width), 100%);
  margin-inline: auto;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  height: fit-content;
  align-self: flex-start;
}

.ep-auth-page__main,
.ep-auth-page > .row {
  background: transparent;
}

.ep-auth-page__card h1,
.ep-auth-page__card .block-page-title-block h1,
.ep-auth-page__card .block-page-title-block .title {
  font-size: clamp(1.5rem, 3vw, 1.75rem);
  margin-bottom: 1.25rem;
  color: var(--ep-color-text-primary, #1a202c);
}

.ep-auth-page__card .form-actions,
.ep-auth-page__card .user-form .form-actions {
  margin-top: 1.5rem;
}

/*
 * Plain core managed_file (no EP zone): file + Upload on one row.
 * .ep-upload-zone uses the drop zone from ep-file-upload.css + ep-file-handler.js
 * (upload submit hidden; file change auto-clicks it — same pattern as branding).
 */
.ep-auth-page__card .form-managed-file:not(.ep-upload-zone) {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 0.75rem;
}

.ep-auth-page__card .form-managed-file:not(.ep-upload-zone) input[type="file"] {
  flex: 1 1 12rem;
  min-width: 0;
}

.ep-auth-page__card .form-managed-file:not(.ep-upload-zone) input[type="submit"],
.ep-auth-page__card .form-managed-file:not(.ep-upload-zone) button[type="submit"] {
  flex: 0 0 auto;
}

/* Full-width drop zone inside the auth card. */
.ep-auth-page__card .form-managed-file.ep-upload-zone {
  width: 100%;
  max-width: 100%;
}

/**
 * Managed_file "Upload" button: always visually hidden on auth pages.
 * High specificity so it wins over Bootstrap / form styles if .ep-upload-zone is missing.
 */
.ep-auth-page__card .js-form-managed-file input[type="submit"][name*="_upload_button"],
.ep-auth-page__card .js-form-managed-file button[type="submit"][name*="_upload_button"],
.ep-auth-page__card .form-managed-file input[type="submit"][name*="_upload_button"],
.ep-auth-page__card .form-managed-file button[type="submit"][name*="_upload_button"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  opacity: 0 !important;
}

/* Org-owner signup landing (/signup). */
.ep-billing-signup-page:has(.ep-billing-signup-page__primary) {
  display: flex;
  flex-direction: column;
}

.ep-billing-signup-page__primary {
  flex: 0 0 auto;
  text-align: center;
}

/* Gap above the divider on landing only — not on single-section pages (welcome). */
.ep-billing-signup-page:has(.ep-billing-signup-page__secondary) .ep-billing-signup-page__primary {
  padding-bottom: 0.75rem;
}

.ep-billing-signup-page__secondary {
  flex: 0 0 auto;
  padding-top: 0.75rem;
  padding-bottom: 0;
  margin-bottom: 0;
  border-top: 1px solid var(--ep-color-list-divider);
}

.ep-billing-signup-page__title {
  text-align: center;
}

.ep-billing-signup-page__intro {
  margin-bottom: 1.5rem;
  text-align: center;
  color: var(--ep-color-text-tertiary);
}

.ep-billing-signup-page__cta {
  display: inline-flex;
  width: auto;
  margin-bottom: 0;
}

.ep-billing-signup-page__invite-note {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
  text-align: center;
}

.ep-billing-signup-page__invite-note p {
  margin-top: 0.35rem;
  margin-bottom: 0;
  color: var(--ep-color-text-tertiary);
}

.ep-billing-signup-page__footer-links {
  margin-top: 0.5rem;
  margin-bottom: 0;
  text-align: center;
  font-size: var(--ep-font-size-xs, 0.75rem);
  line-height: var(--ep-line-height-normal, 1.5);
  color: var(--ep-color-text-secondary, #64748b);
}

.ep-billing-signup-page__footer-links a {
  font-size: inherit;
  color: var(--ep-color-link);
  font-weight: var(--ep-font-weight-medium, 500);
  text-decoration: underline;
  text-decoration-color: var(--ep-color-link);
}

.ep-billing-signup-page__footer-links a:hover,
.ep-billing-signup-page__footer-links a:focus-visible {
  color: var(--ep-color-link-hover);
  text-decoration-color: var(--ep-color-link-hover);
}

/* Tighter card padding on login + create form pages. */
.ep-auth-page__card:has(.ep-billing-signup-login-form),
.ep-auth-page__card:has(.ep-billing-signup-form) {
  padding: clamp(1rem, 2vw, 1.25rem);
}

.ep-auth-page__card:has(.ep-billing-signup-page__secondary):not(:has(.ep-billing-signup-page--landing)) {
  padding: clamp(1rem, 2vw, 1.25rem);
}

/* Signup landing (/signup): slightly more space above the title, less below the footer. */
.ep-auth-page__card:has(.ep-billing-signup-page--landing) {
  padding-top: clamp(1.5rem, 3vw, 1.75rem);
  padding-inline: clamp(1rem, 2.5vw, 1.5rem);
  padding-bottom: clamp(0.375rem, 0.75vw, 0.5rem);
}

.ep-billing-signup-page--landing .ep-billing-signup-page__title {
  margin-bottom: 0.75rem;
}

.ep-billing-signup-page--landing .ep-billing-signup-page__intro {
  margin-bottom: 1rem;
}

.ep-billing-signup-page--landing .ep-billing-signup-page__primary {
  padding-bottom: 0.5rem;
}

.ep-billing-signup-page--landing .ep-billing-signup-page__secondary {
  padding-top: 0.5rem;
  padding-bottom: 0;
  margin-bottom: 0;
}

.ep-billing-signup-page--landing .ep-billing-signup-page__footer-links {
  margin-top: 0.35rem;
  margin-bottom: 0;
}

/* Signup create form: fixed label column so every input aligns (incl. confirm password). */
.ep-auth-page__card:has(.ep-billing-signup-form) {
  max-width: min(56rem, 100%);
}

form.ep-form.ep-billing-signup-form,
form.ep-billing-signup-form {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
}

form.ep-form.ep-billing-signup-form > .form-item:not(.form-type-checkbox),
form.ep-form.ep-billing-signup-form > .js-form-item:not(.form-type-checkbox),
form.ep-billing-signup-form > .form-item:not(.form-type-checkbox),
form.ep-billing-signup-form > .js-form-item:not(.form-type-checkbox),
form.ep-form.ep-billing-signup-form .form-type-password-confirm > .form-item,
form.ep-form.ep-billing-signup-form .form-type-password-confirm > .js-form-item,
form.ep-billing-signup-form .form-type-password-confirm > .form-item,
form.ep-billing-signup-form .form-type-password-confirm > .js-form-item {
  display: grid !important;
  grid-template-columns: 12rem minmax(0, 1fr) !important;
  column-gap: var(--ep-spacing-md, 1rem) !important;
  row-gap: var(--ep-spacing-xs, 0.25rem) !important;
  align-items: center !important;
  width: 100% !important;
  max-width: none !important;
  margin-bottom: var(--ep-spacing-md, 1rem) !important;
}

/* Password confirm wrapper is a stack only — rows above are the nested form-items. */
form.ep-form.ep-billing-signup-form > .form-type-password-confirm,
form.ep-billing-signup-form > .form-type-password-confirm,
form.ep-form.ep-billing-signup-form > #edit-pass,
form.ep-billing-signup-form > #edit-pass {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin-bottom: var(--ep-spacing-md, 1rem) !important;
}

form.ep-form.ep-billing-signup-form > .form-type-password-confirm > .form-item,
form.ep-form.ep-billing-signup-form > .form-type-password-confirm > .js-form-item,
form.ep-billing-signup-form > .form-type-password-confirm > .form-item,
form.ep-billing-signup-form > .form-type-password-confirm > .js-form-item {
  margin-bottom: var(--ep-spacing-md, 1rem) !important;
}

form.ep-form.ep-billing-signup-form > .form-type-password-confirm > .form-item:last-child,
form.ep-form.ep-billing-signup-form > .form-type-password-confirm > .js-form-item:last-child,
form.ep-billing-signup-form > .form-type-password-confirm > .form-item:last-child,
form.ep-billing-signup-form > .form-type-password-confirm > .js-form-item:last-child {
  margin-bottom: 0 !important;
}

form.ep-form.ep-billing-signup-form .password-parent,
form.ep-billing-signup-form .password-parent,
form.ep-form.ep-billing-signup-form .confirm-parent,
form.ep-billing-signup-form .confirm-parent {
  max-width: none !important;
  overflow: visible !important;
}

form.ep-form.ep-billing-signup-form input.password-field,
form.ep-billing-signup-form input.password-field,
form.ep-form.ep-billing-signup-form input.password-confirm,
form.ep-billing-signup-form input.password-confirm,
form.ep-form.ep-billing-signup-form .form-item input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
form.ep-billing-signup-form .form-item input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
form.ep-form.ep-billing-signup-form .js-form-item input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
form.ep-billing-signup-form .js-form-item input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

form.ep-form.ep-billing-signup-form .password-strength,
form.ep-billing-signup-form .password-strength,
form.ep-form.ep-billing-signup-form .password-confirm-message,
form.ep-billing-signup-form .password-confirm-message,
form.ep-form.ep-billing-signup-form .password-suggestions,
form.ep-billing-signup-form .password-suggestions {
  grid-column: 2 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Terms checkbox: keep wrapper intact (override global .form-check { display: contents }). */
form.ep-form.ep-billing-signup-form > .form-item-terms.form-check,
form.ep-billing-signup-form > .form-item-terms.form-check,
form.ep-form.ep-billing-signup-form > .js-form-item-terms.form-check,
form.ep-billing-signup-form > .js-form-item-terms.form-check {
  display: grid !important;
  grid-template-columns: 12rem minmax(0, 1fr) !important;
  column-gap: var(--ep-spacing-md, 1rem) !important;
  align-items: start !important;
  width: 100% !important;
  margin-bottom: var(--ep-spacing-md, 1rem) !important;
}

form.ep-form.ep-billing-signup-form > .form-item-terms input[type="checkbox"],
form.ep-billing-signup-form > .form-item-terms input[type="checkbox"],
form.ep-form.ep-billing-signup-form > .js-form-item-terms input[type="checkbox"],
form.ep-billing-signup-form > .js-form-item-terms input[type="checkbox"] {
  grid-column: 2 !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  justify-self: start !important;
  align-self: start !important;
  margin: 0.2rem var(--ep-spacing-sm, 0.5rem) 0 0 !important;
}

form.ep-form.ep-billing-signup-form > .form-item-terms label.form-check-label,
form.ep-billing-signup-form > .form-item-terms label.form-check-label,
form.ep-form.ep-billing-signup-form > .js-form-item-terms label.form-check-label,
form.ep-billing-signup-form > .js-form-item-terms label.form-check-label {
  grid-column: 2 !important;
  margin: 0 !important;
  padding-left: calc(18px + var(--ep-spacing-sm, 0.5rem)) !important;
  white-space: normal !important;
}

form.ep-form.ep-billing-signup-form > .form-actions,
form.ep-billing-signup-form > .form-actions,
form.ep-form.ep-billing-signup-form > .js-form-wrapper.form-actions,
form.ep-billing-signup-form > .js-form-wrapper.form-actions {
  display: flex !important;
  justify-content: center !important;
  text-align: center !important;
  margin-top: var(--ep-spacing-md, 1rem) !important;
  margin-bottom: 0 !important;
}

/* Signup login (/signup/login): centred submit, compact card foot. */
form.ep-form.ep-billing-signup-login-form .form-actions,
form.ep-billing-signup-login-form .form-actions {
  display: flex !important;
  justify-content: center !important;
  text-align: center !important;
  margin-top: var(--ep-spacing-md, 1rem) !important;
  margin-bottom: 0 !important;
}

.ep-auth-page__card:has(.ep-billing-signup-login-form) .ep-billing-signup-page__intro {
  margin-bottom: 1rem;
}

/* Phase 3 onboarding wizard inside auth card. */
.ep-billing-signup-page--onboarding .ep-billing-signup-page__intro {
  margin-bottom: 1rem;
}

.ep-billing-signup-page--onboarding form.ep-billing-signup-onboarding-form .form-actions,
.ep-billing-signup-page--onboarding .ep-billing-signup-onboarding-form .form-actions,
.ep-billing-signup-page--onboarding .ep-user-account-profile-form .form-actions,
.ep-billing-signup-page--onboarding .ep-site-branding-form .form-actions,
.ep-billing-signup-page--onboarding form.ep-form .form-actions {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--ep-spacing-md, 1rem) !important;
  text-align: center !important;
  width: 100% !important;
  margin-top: var(--ep-spacing-md, 1rem) !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  border-top: none !important;
}

.ep-billing-signup-page--onboarding-branding {
  text-align: center;
}

.ep-billing-signup-onboarding-form .form-radios:not(.ep-billing-signup-plan-picker__period-radios) {
  display: grid;
  gap: var(--ep-spacing-sm, 0.5rem);
  justify-items: start;
  margin-bottom: var(--ep-spacing-md, 1rem);
}

/* Warm stone accents — links and fields inside auth/signup cards. Buttons keep ink borders. */
.ep-auth-page__card .ep-button,
.ep-auth-page__card a.ep-button,
.ep-auth-page__card .button,
.ep-auth-page__card input[type="submit"].button,
.ep-auth-page__card button.button {
  border-color: var(--ep-color-text-primary) !important;
  border-width: var(--ep-button-border-width) !important;
  background-color: var(--ep-color-white, #fff) !important;
}

.ep-auth-page__card .ep-button:hover,
.ep-auth-page__card a.ep-button:hover,
.ep-auth-page__card .button:hover,
.ep-auth-page__card input[type="submit"].button:hover,
.ep-auth-page__card button.button:hover {
  border-color: var(--ep-color-text-primary) !important;
  background-color: var(--ep-color-bg-tertiary) !important;
  color: var(--ep-color-text-primary) !important;
}

.ep-auth-page__card a:not(.ep-button):not(.button),
.ep-billing-signup-login-form__forgot a,
.ep-auth-page__card .ep-upload-zone__browse-link,
.ep-auth-page__card .browse-link {
  color: var(--ep-color-link);
  text-decoration: underline;
  text-decoration-color: var(--ep-color-link);
}

.ep-auth-page__card a:not(.ep-button):not(.button):hover,
.ep-auth-page__card a:not(.ep-button):not(.button):focus-visible,
.ep-billing-signup-login-form__forgot a:hover,
.ep-billing-signup-login-form__forgot a:focus-visible,
.ep-auth-page__card .ep-upload-zone__browse-link:hover,
.ep-auth-page__card .browse-link:hover {
  color: var(--ep-color-link-hover);
  text-decoration-color: var(--ep-color-link-hover);
}

.ep-auth-page__card .form-item input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.ep-auth-page__card .js-form-item input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.ep-auth-page__card .form-item select,
.ep-auth-page__card .js-form-item select,
.ep-auth-page__card .form-item textarea,
.ep-auth-page__card .js-form-item textarea {
  border-color: var(--ep-color-input-border) !important;
}

.ep-auth-page__card .ep-form .form-actions {
  border-top-color: var(--ep-color-list-divider);
}

/* Plan picker — wider card, My Account-style tabs, compact side-by-side plan cards */
.ep-auth-page__card:has(.ep-billing-signup-plan-form) {
  max-width: min(62rem, 100%);
}

/* One plan column width — reused on payment step summary card */
:root {
  --ep-billing-signup-plan-card-width: calc((62rem - 2 * var(--ep-spacing-md, 1rem)) / 3);
}

.ep-billing-signup-page--plan .ep-billing-signup-page__intro {
  max-width: 36rem;
  margin-inline: auto;
}

.ep-billing-signup-plan-picker {
  margin-top: var(--ep-spacing-md, 1rem);
}

.ep-billing-signup-plan-picker__toolbar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--ep-spacing-md, 1rem);
  margin-bottom: var(--ep-spacing-xl, 2rem);
}

.ep-billing-signup-plan-picker__billing-nav.account-navigation {
  flex: 1 1 auto;
  margin-bottom: 0;
  text-align: center;
}

.ep-billing-signup-plan-picker__billing-nav .nav-tabs.form-wrapper {
  display: inline-flex !important;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--ep-spacing-lg, 1.5rem);
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
}

.ep-billing-signup-plan-picker__ajax-trigger {
  position: absolute !important;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
}

.ep-auth-page__card .ep-billing-signup-plan-picker__billing-nav .nav-tab {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  min-width: 0;
  width: auto;
}

.ep-billing-signup-plan-picker__cards.form-wrapper,
form.ep-billing-signup-plan-form .ep-billing-signup-plan-picker__cards {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--ep-spacing-md, 1rem);
  width: 100% !important;
  max-width: 100% !important;
  margin-bottom: var(--ep-spacing-md, 1rem);
}

.ep-billing-signup-plan-picker__cards > .form-wrapper.ep-billing-signup-plan-card,
.ep-billing-signup-plan-picker__cards > .ep-billing-signup-plan-card {
  display: flex !important;
  flex-direction: column;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
}

.ep-billing-signup-plan-card {
  min-height: 100%;
  padding: var(--ep-spacing-md, 1rem) var(--ep-spacing-sm, 0.75rem);
  border: var(--ep-border-width, 1px) solid var(--ep-color-input-border);
  background-color: var(--ep-color-white, #fff);
  text-align: center;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.ep-billing-signup-plan-card:has(.ep-billing-signup-plan-card__input:checked) {
  border-color: var(--ep-color-text-primary);
  border-width: var(--ep-border-width-thick, 2px);
  box-shadow: none;
}

.ep-billing-signup-plan-card__header {
  margin-bottom: var(--ep-spacing-sm, 0.5rem);
}

.ep-billing-signup-plan-card__title {
  margin: 0 0 var(--ep-spacing-xs, 0.25rem);
  color: var(--ep-color-text-primary);
  font-family: var(--ep-font-family-base, inherit);
  font-size: var(--ep-font-size-xs, 0.75rem);
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-transform: uppercase;
}

.ep-billing-signup-plan-card__limit {
  margin: 0;
  color: var(--ep-color-text-secondary, #666);
  font-size: var(--ep-font-size-xs, 0.75rem);
}

.ep-billing-signup-plan-card__price {
  margin: var(--ep-spacing-sm, 0.5rem) 0;
}

.ep-billing-signup-plan-card__price-amount {
  display: block;
  color: var(--ep-color-text-primary);
  font-family: var(--ep-font-family-heading, inherit);
  font-size: clamp(1.35rem, 2.5vw, 1.75rem);
  font-weight: 400;
  line-height: 1.1;
}

.ep-billing-signup-plan-card__price-period {
  display: block;
  margin-top: var(--ep-spacing-xs, 0.25rem);
  color: var(--ep-color-text-secondary, #666);
  font-size: var(--ep-font-size-xs, 0.75rem);
  font-weight: 600;
  letter-spacing: 0.08em;
}

.ep-billing-signup-plan-card__savings {
  margin: 0 0 var(--ep-spacing-sm, 0.5rem);
  color: var(--ep-color-link);
  font-size: var(--ep-font-size-xs, 0.75rem);
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.ep-billing-signup-plan-card__action {
  position: absolute !important;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
}

.ep-billing-signup-plan-card__input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  pointer-events: none;
}

.ep-billing-signup-plan-card__select {
  display: none !important;
}

.ep-billing-signup-plan-card:has(.ep-billing-signup-plan-card__input:checked) .ep-billing-signup-plan-card__select {
  display: none !important;
}

.ep-billing-signup-plan-form .form-actions {
  margin-top: var(--ep-spacing-lg, 1.5rem);
}

@media (max-width: 768px) {
  .ep-billing-signup-plan-picker__cards.form-wrapper,
  form.ep-billing-signup-plan-form .ep-billing-signup-plan-picker__cards {
    grid-template-columns: 1fr;
    max-width: 18rem;
    margin-inline: auto;
  }
}

@media (max-width: 640px) {
  .ep-billing-signup-plan-picker__toolbar {
    flex-direction: column;
    align-items: stretch;
  }
}

/* Payment step — selected plan mini-card + compact action buttons */
.ep-billing-signup-payment-form {
  text-align: center;
}

.ep-billing-signup-page--payment .ep-billing-signup-page__intro {
  margin-bottom: var(--ep-spacing-md, 1rem);
}

form.ep-billing-signup-payment-form .ep-billing-signup-payment-form__plan-card,
form.ep-billing-signup-payment-form .ep-billing-signup-payment-form__plan-card.form-wrapper,
form.ep-billing-signup-payment-form .ep-billing-signup-payment-form__plan-card.js-form-wrapper {
  display: flex !important;
  justify-content: center;
  width: auto !important;
  max-width: none !important;
  margin: 0 auto var(--ep-spacing-lg, 1.5rem) !important;
}

form.ep-billing-signup-payment-form .ep-billing-signup-payment-form__plan-card .ep-billing-signup-plan-card,
form.ep-billing-signup-payment-form .ep-billing-signup-payment-form__plan-card .ep-billing-signup-plan-card.form-wrapper {
  width: var(--ep-billing-signup-plan-card-width) !important;
  max-width: var(--ep-billing-signup-plan-card-width) !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.ep-billing-signup-plan-card--summary {
  cursor: default;
  pointer-events: none;
}

.ep-billing-signup-payment-form .ep-billing-signup-page__intro {
  margin-bottom: var(--ep-spacing-lg, 1.5rem);
  padding-bottom: var(--ep-spacing-md, 1rem);
  border-bottom: 1px solid var(--ep-color-list-divider);
}

.ep-billing-signup-page--onboarding.ep-billing-signup-page--payment form.ep-billing-signup-payment-form .form-actions.ep-billing-signup-payment-form__actions,
.ep-billing-signup-page--onboarding.ep-billing-signup-page--payment form.ep-form.ep-billing-signup-payment-form .form-actions.ep-billing-signup-payment-form__actions {
  display: inline-flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  justify-content: center !important;
  width: auto !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  gap: var(--ep-spacing-sm, 0.75rem) !important;
}

.ep-billing-signup-page--onboarding.ep-billing-signup-page--payment form.ep-billing-signup-payment-form .form-actions.ep-billing-signup-payment-form__actions .ep-button,
.ep-billing-signup-page--onboarding.ep-billing-signup-page--payment form.ep-billing-signup-payment-form .form-actions.ep-billing-signup-payment-form__actions input[type="submit"],
.ep-billing-signup-page--onboarding.ep-billing-signup-page--payment form.ep-billing-signup-payment-form .form-actions.ep-billing-signup-payment-form__actions a.ep-button,
.ep-billing-signup-page--onboarding.ep-billing-signup-page--payment form.ep-form.ep-billing-signup-payment-form .form-actions.ep-billing-signup-payment-form__actions .button {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  text-align: center;
  white-space: nowrap;
  align-self: stretch;
}
