/**
 * Presale stylesheet (standalone CDN asset; not bundled into signup.css).
 * Scope: lead form under `.amped-signup-root[data-mode="presale"]`;
 *        checkout UI under `.amped-signup-root[data-mode="presale-checkout"]`;
 *        marketing/footer shared classes under `.amped-presale` (usable outside the React root).
 */

/* =====================================================================
   WORDPRESS THEME BUTTON RESET
   Tailwind preflight is off (tailwind.signup.config.ts) so the host
   theme's `button` rules (background, padding, border, etc.) leak in.
   This baseline neutralises them; scoped Tailwind utilities still win.
   ===================================================================== */

.amped-signup-root[data-mode="presale"] button,
.amped-signup-root[data-mode="presale-checkout"] button {
    background-color: transparent;
    padding: 0;
    border: none;
    color: inherit;
    text-decoration: none;
    font: inherit;
    line-height: inherit;
    cursor: pointer;
}

/* =====================================================================
   PRESALE LEAD FORM  (mode="presale")
   ===================================================================== */

.amped-signup-root[data-mode="presale"] .presale-form {
    font-family: 'Montserrat', sans-serif;
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 1440px;
    margin: 0 auto;
    padding: 96px 0 0;
    gap: 48px;
    box-sizing: border-box;
    background: #fff;
    color: #000;
}

.amped-signup-root[data-mode="presale"] .presale-form-header--waitlist {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    max-width: 866px;
    width: 100%;
    margin-bottom: 0;
    text-align: left;
}

.amped-signup-root[data-mode="presale"] .presale-form-header--waitlist .presale-form-header__headline {
    font-family: 'Montserrat', sans-serif;
    font-size: 80px;
    font-weight: 800;
    line-height: 80px;
    text-transform: uppercase;
    text-align: left;
    color: #000;
    margin: 0;
}

.amped-signup-root[data-mode="presale"] .presale-form-header__intro {
    display: flex;
    flex-direction: column;
    row-gap: 8px;
}

.amped-signup-root[data-mode="presale"] .presale-form-header__intro p {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 32px;
    text-align: left;
    color: #000;
    margin: 0;
}

.amped-signup-root[data-mode="presale"] .presale-form__fields {
    display: flex;
    flex-direction: column;
    gap: 24px;
    max-width: 866px;
    width: 100%;
}

.amped-signup-root[data-mode="presale"] .presale-form__field {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 0;
}

.amped-signup-root[data-mode="presale"] .presale-form__field.space-y-2 {
    gap: 8px;
}

.amped-signup-root[data-mode="presale"] .presale-form label.presale-form__label {
    display: block;
    color: #000 !important;
    font-size: 12px;
    font-weight: 700 !important;
    line-height: 16px;
    text-transform: uppercase;
    margin-bottom: 0;
}

.amped-signup-root[data-mode="presale"] .presale-form input {
    width: 100%;
    height: 48px;
    padding: 12px 16px !important;
    border-radius: 0 !important;
    background: #f9f9f9 !important;
    font-family: 'Montserrat', sans-serif;
    border: 1px solid #d9d9d9 !important;
    color: #000 !important;
    font-size: 16px;
    line-height: 24px;
    box-sizing: border-box;
}

.amped-signup-root[data-mode="presale"] .presale-form input::placeholder {
    color: #a6a6a6 !important;
}

.amped-signup-root[data-mode="presale"] .presale-form button[role="combobox"] {
    width: 100%;
    height: 48px;
    padding: 12px 16px !important;
    border-radius: 0 !important;
    background: #f9f9f9 !important;
    font-family: 'Montserrat', sans-serif;
    border: 1px solid #d9d9d9 !important;
    font-weight: 400 !important;
    font-style: normal !important;
    color: #000 !important;
    font-size: 16px;
    line-height: 24px;
    box-sizing: border-box;
}

.amped-signup-root[data-mode="presale"] .presale-form__consent.signup-consent {
    display: flex;
    flex-direction: row;
    align-items: flex-start !important;
    gap: 16px;
    padding: 24px;
    background: #f9f9f9;
    border: 1px solid #d9d9d9;
    margin-bottom: 0;
}

.amped-signup-root[data-mode="presale"] .presale-form__consent.signup-consent button[role="checkbox"] {
    flex-shrink: 0;
    width: 24px !important;
    height: 24px !important;
    margin-top: 0;
    border: 1px solid #E8E8E8 !important;
    border-radius: 2px !important;
    padding: 0 !important;
}

.amped-signup-root[data-mode="presale"] .presale-form__consent.signup-consent button[role="checkbox"] svg {
    width: 12px !important;
    height: 12px !important;
}

.amped-signup-root[data-mode="presale"] .presale-form__consent.signup-consent button[role="checkbox"][data-state="unchecked"] {
    background: #fff !important;
}

.amped-signup-root[data-mode="presale"] .presale-form__consent.signup-consent button[role="checkbox"][data-state="checked"] {
    background: #0051FF !important;
    border-color: #E8E8E8 !important;
}

.amped-signup-root[data-mode="presale"] .presale-form__consent-copy {
    flex: 1;
    min-width: 0;
    margin-top: 0 !important;
}

.amped-signup-root[data-mode="presale"] .presale-form label.presale-form__consent-label {
    display: block;
    color: #000 !important;
    font-size: 12px;
    font-weight: 500 !important;
    line-height: 16px;
    text-transform: none;
    cursor: pointer;
}

.amped-signup-root[data-mode="presale"] .presale-form__legal-link {
    color: #000;
    text-decoration: underline;
    font-weight: 500;
}

.amped-signup-root[data-mode="presale"] .presale-form__legal-link:hover {
    color: #000;
}

.amped-signup-root[data-mode="presale"] .presale-form__submit {
    width: 100%;
    height: 52px;
    min-height: 52px;
    margin-top: 0;
    padding: 14px 24px;
    background: #f40000 !important;
    color: #fff !important;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 24px;
    text-transform: uppercase;
    border: none !important;
    border-radius: 0 !important;
    cursor: pointer;
}

.amped-signup-root[data-mode="presale"] .presale-form__submit:hover {
    background: #c30000 !important;
}

.amped-signup-root[data-mode="presale"] .presale-form__submit:disabled {
    background: #999 !important;
    cursor: not-allowed;
}

.amped-signup-root[data-mode="presale"] .presale-form__location-error {
    margin: 0;
    color: #c30000;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.85rem;
    font-weight: 600;
    line-height: 1.4;
}

@media (max-width: 768px) {
    .amped-signup-root[data-mode="presale"] .presale-form {
        padding: 48px 0 0;
        gap: 32px;
    }

    .amped-signup-root[data-mode="presale"] .presale-form-header--waitlist {
        gap: 24px;
    }

    .amped-signup-root[data-mode="presale"] .presale-form-header--waitlist .presale-form-header__headline {
        font-size: 48px;
        line-height: 48px;
    }

    .amped-signup-root[data-mode="presale"] .presale-form-header__intro p {
        font-size: 20px;
        line-height: 28px;
    }

    .amped-signup-root[data-mode="presale"] .presale-form input {
        font-size: 14px;
        line-height: 20px;
        border-color: #E8E8E8 !important;
    }

    .amped-signup-root[data-mode="presale"] .presale-form button[role="combobox"] {
        font-size: 14px;
        line-height: 20px;
        border-color: #E8E8E8 !important;
    }

    .amped-signup-root[data-mode="presale"] .presale-form__consent.signup-consent {
        padding: 16px;
        background: #F5F5F5;
        border-color: #E8E8E8;
    }

    .amped-signup-root[data-mode="presale"] .presale-form__submit {
        height: 56px;
        min-height: 56px;
        padding: 18px 24px;
        font-size: 14px;
        line-height: 20px;
        font-style: italic;
    }
}

/* --- Presale Confirmation (shown when no checkout URL) --- */

.amped-signup-root[data-mode="presale"] .presale-confirmation {
    font-family: 'Montserrat', sans-serif;
    max-width: 600px;
    margin: 0 auto;
    padding: 48px 24px;
    text-align: center;
    box-sizing: border-box;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__icon {
    width: 80px;
    height: 80px;
    background: #dc2626;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 24px;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__check {
    width: 40px;
    height: 40px;
    color: #fff;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__title {
    font-size: 2rem;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0 0 16px 0;
    color: #000;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__message {
    font-size: 1rem;
    color: #555;
    line-height: 1.6;
    margin: 0 0 32px 0;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__next-steps {
    background: #f5f5f5;
    padding: 24px;
    border-radius: 8px;
    text-align: left;
    margin-bottom: 24px;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__next-steps-title {
    font-size: 1rem;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0 0 16px 0;
    color: #000;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__list {
    margin: 0;
    padding: 0 0 0 20px;
    list-style: disc;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__list li {
    font-size: 0.875rem;
    color: #333;
    line-height: 1.6;
    margin-bottom: 8px;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__list li:last-child {
    margin-bottom: 0;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__share {
    padding-top: 16px;
    border-top: 1px solid #eee;
}

.amped-signup-root[data-mode="presale"] .presale-confirmation__share-text {
    font-size: 0.875rem;
    color: #666;
    margin: 0;
}

@media screen and (max-width: 640px) {
    .amped-signup-root[data-mode="presale"] .presale-confirmation__title {
        font-size: 1.5rem;
    }
}

/* =====================================================================
   PRESALE CHECKOUT  (mode="presale-checkout")
   ===================================================================== */

/* --- Design tokens --- */
.amped-presale,
.amped-signup-root[data-mode="presale-checkout"] {
  --presale-color-primary: #f40000;
  --presale-color-primary-hover: #c30000;
  --presale-color-black: #000000;
  --presale-color-white: #ffffff;
  --presale-color-text: #000000;
  --presale-color-text-muted: #4a4a4a;
  --presale-color-border: #d9d9d9;
  --presale-color-bg: #f5f5f5;
  --presale-color-surface: #ffffff;
  --presale-color-hero-bg: #000000;
  --presale-color-badge-bg: #f40000;
  --presale-color-badge-text: #ffffff;
  --presale-color-blue: #0051ff;
  --presale-font-family: "Montserrat", ui-sans-serif, system-ui, sans-serif;
  --presale-font-weight-heading: 800;
  --presale-font-weight-body: 400;
  --presale-font-weight-semibold: 600;
  --presale-space-xs: 8px;
  --presale-space-sm: 12px;
  --presale-space-md: 16px;
  --presale-space-lg: 24px;
  --presale-space-xl: 32px;
  --presale-space-2xl: 48px;
  --presale-space-3xl: 64px;
  --presale-radius: 0;
  --presale-max-width: 1200px;
  --presale-form-column-width: 660px;
  --presale-sidebar-width: 432px;
}

/* --- Typography (Style Guide) --- */
.amped-presale .presale-h1,
.amped-signup-root[data-mode="presale-checkout"] .presale-h1 {
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-heading);
  font-size: 88px;
  line-height: 1;
  letter-spacing: -0.02em;
  margin: 0;
}

.amped-presale .presale-h2,
.amped-signup-root[data-mode="presale-checkout"] .presale-h2 {
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-heading);
  font-size: 80px;
  line-height: 1.05;
  letter-spacing: -0.02em;
  margin: 0;
}

.amped-presale .presale-h3,
.amped-signup-root[data-mode="presale-checkout"] .presale-h3 {
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-heading);
  font-size: 48px;
  line-height: 1.1;
  margin: 0;
}

.amped-presale .presale-h4,
.amped-signup-root[data-mode="presale-checkout"] .presale-h4 {
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-heading);
  font-size: 40px;
  line-height: 1.15;
  margin: 0;
}

.amped-presale .presale-h5,
.amped-signup-root[data-mode="presale-checkout"] .presale-h5 {
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-heading);
  font-size: 32px;
  line-height: 1.2;
  margin: 0;
}

.amped-presale .presale-h6,
.amped-signup-root[data-mode="presale-checkout"] .presale-h6 {
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-heading);
  font-size: 24px;
  line-height: 1.25;
  margin: 0;
}

.amped-presale .presale-body,
.amped-signup-root[data-mode="presale-checkout"] .presale-body {
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
}

/* --- Buttons --- */
.amped-presale .presale-btn,
.amped-signup-root[data-mode="presale-checkout"] .presale-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 24px;
  border: 2px solid transparent;
  border-radius: var(--presale-radius);
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-semibold);
  font-size: 16px;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  box-sizing: border-box;
}

.amped-presale .presale-btn--primary,
.amped-signup-root[data-mode="presale-checkout"] .presale-btn--primary {
  background-color: var(--presale-color-primary);
  border-color: var(--presale-color-primary);
  color: var(--presale-color-white);
}

.amped-presale .presale-btn--primary:hover,
.amped-signup-root[data-mode="presale-checkout"] .presale-btn--primary:hover {
  background-color: var(--presale-color-primary-hover);
  border-color: var(--presale-color-primary-hover);
}

.amped-presale .presale-btn--black,
.amped-signup-root[data-mode="presale-checkout"] .presale-btn--black {
  background-color: var(--presale-color-black);
  border-color: var(--presale-color-black);
  color: var(--presale-color-white);
}

.amped-presale .presale-btn--white,
.amped-signup-root[data-mode="presale-checkout"] .presale-btn--white {
  background-color: var(--presale-color-white);
  border-color: var(--presale-color-black);
  color: var(--presale-color-black);
}

.amped-presale .presale-btn:disabled,
.amped-signup-root[data-mode="presale-checkout"] .presale-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* --- Checkout shell (presale-checkout mode only) --- */
.amped-signup-root[data-mode="presale-checkout"] {
  box-sizing: border-box;
  font-family: var(--presale-font-family);
  color: var(--presale-color-text);
  background: var(--presale-color-bg);
}

.amped-signup-root[data-mode="presale-checkout"] *,
.amped-signup-root[data-mode="presale-checkout"] *::before,
.amped-signup-root[data-mode="presale-checkout"] *::after {
  box-sizing: border-box;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
}

/* --- Presale form header (checkout hero, Figma Frame 2386) --- */
.amped-signup-root[data-mode="presale-checkout"] .presale-form-header--checkout {
  align-self: stretch;
  width: 100%;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__hero {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 360px;
  color: var(--presale-color-white);
  background-color: var(--presale-color-hero-bg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__nav {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 112px;
  pointer-events: none;
  background: linear-gradient(180deg, #000000 0%, rgba(0, 0, 0, 0) 100%);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__nav-accent {
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 64px;
  background: #000000;
}

/* The nav ignores clicks so the hero stays interactive; re-enable them for the logo link. */
.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__nav-logo-link {
  pointer-events: auto;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__nav-logo {
  position: absolute;
  top: 16px;
  left: 64px;
  display: block;
  width: 159px;
  max-width: calc(100% - 80px);
  height: auto;
  object-fit: contain;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  width: min(761px, calc(100% - 32px));
  margin: 0 auto;
  padding: 112px 16px 48px;
  box-sizing: border-box;
  text-align: center;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__badge {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 10px;
  max-width: 100%;
  padding: 8px 12px;
  background: #ffffff;
  box-sizing: border-box;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__badge-icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  background: #0051ff;
  border-radius: 2px;
  color: #ffffff;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__badge-check {
  display: block;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__badge-text {
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 16px;
  line-height: 16px;
  letter-spacing: 0.12em;
  text-align: center;
  text-transform: uppercase;
  color: #f40000;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__headline {
  width: 100%;
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: 800;
  font-size: clamp(32px, 5vw, 64px);
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  color: #ffffff;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__headline-accent {
  color: var(--presale-color-blue);
}

/* Headline wraps to 3 lines on desktop, 4 on mobile (per Figma). The classed
   <br> elements are toggled per breakpoint; default (desktop) hides mobile ones. */
.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__br--mobile {
  display: none;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-form-header__subcopy {
  width: 100%;
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: 400;
  font-size: clamp(18px, 2.5vw, 24px);
  line-height: 1.33;
  text-align: center;
  color: #ffffff;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout__layout {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-xl);
  max-width: var(--presale-max-width);
  margin: 0 auto;
  padding: var(--presale-space-xl) var(--presale-space-lg) var(--presale-space-3xl);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout__form-column {
  flex: 1 1 auto;
  min-width: 0;
  max-width: var(--presale-form-column-width);
  background: transparent;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout__sidebar {
  flex: 0 0 auto;
  width: 100%;
  background: transparent;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout__placeholder {
  padding: var(--presale-space-xl);
  border: 2px dashed var(--presale-color-border);
  background: #fafafa;
  font-family: var(--presale-font-family);
  font-size: 14px;
  color: var(--presale-color-text-muted);
  text-align: center;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout__placeholder-title {
  margin: 0 0 var(--presale-space-sm);
  font-weight: var(--presale-font-weight-semibold);
  font-size: 18px;
  color: var(--presale-color-text);
}

@media (min-width: 960px) {
  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout__layout {
    flex-direction: row;
    align-items: flex-start;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout__sidebar {
    flex: 0 0 var(--presale-sidebar-width);
    width: var(--presale-sidebar-width);
    position: sticky;
    top: var(--presale-space-lg);
  }
}

@media (min-width: 960px) {
  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__hero {
    min-height: 564px;
  }
}

@media (max-width: 959px) {
  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__content {
    padding-top: 96px;
    padding-bottom: 40px;
  }

  /* Edge-to-edge, full-width layout on mobile/tablet */
  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout__layout {
    padding: 0;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout__form-column {
    max-width: 100%;
  }

  /* Sidebar is desktop-only. On mobile the accordion steps show no summary; the
     full summary appears on the Confirmation screen (see the Figma Mobile.png exports). */
  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout__sidebar {
    display: none;
  }
}

/* --- Checkout step cards (Figma: 8px gaps, white cards on grey) --- */
.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-steps {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-xs);
  width: 100%;
  max-width: var(--presale-form-column-width);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step--collapsed {
  background: var(--presale-color-surface);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout__founding-banner {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-xs);
  width: 100%;
  max-width: var(--presale-form-column-width);
  padding: var(--presale-space-lg);
  background: var(--presale-color-black);
  /* Match the 8px card-to-card gap below (banner is a sibling of the steps list). */
  margin-bottom: var(--presale-space-xs);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout__founding-banner-title {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-heading);
  font-style: normal;
  font-size: 24px;
  line-height: 32px;
  text-transform: uppercase;
  color: var(--presale-color-white);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout__founding-banner-subtitle {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-white);
}

@media (max-width: 959px) {
  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout-steps,
  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout__founding-banner {
    max-width: 100%;
  }
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step__card {
  background: var(--presale-color-surface);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step__body {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-lg);
  padding: var(--presale-space-sm) var(--presale-space-lg) var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step__continue {
  width: 100%;
  /* Spacing above the button comes from the body's flex gap (24px); no extra
     margin-top, which would otherwise stack to 40px. */
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step__placeholder {
  padding: var(--presale-space-lg);
  border: 2px dashed var(--presale-color-border);
  background: #fafafa;
  text-align: center;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step__placeholder-text {
  margin: 0;
  font-family: var(--presale-font-family);
  font-size: 14px;
  line-height: 1.5;
  color: var(--presale-color-text-muted);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-section-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: var(--presale-space-3xl);
  padding: 0 var(--presale-space-lg);
  border: 0;
  background: transparent;
  font-family: var(--presale-font-family);
  text-align: left;
  cursor: default;
  box-sizing: border-box;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-section-header:not(:disabled) {
  cursor: pointer;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-section-header:not(:disabled):hover {
  opacity: 0.85;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-section-header__leading {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
  min-width: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-section-header__number {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 2px solid var(--presale-color-black);
  font-weight: var(--presale-font-weight-heading);
  font-size: 16px;
  line-height: 1;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-section-header[data-completed="true"] .presale-section-header__number {
  background: var(--presale-color-black);
  color: var(--presale-color-white);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-section-header__title {
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  text-transform: uppercase;
  font-style: normal;
  color: var(--presale-color-blue);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-section-header__check {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 2px;
  background: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-section-header__check-icon {
  display: block;
  flex-shrink: 0;
  width: 14px;
  height: 12px;
  color: var(--presale-color-white);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-section-header__spacer {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .personal-info {
  gap: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .personal-info label {
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-semibold);
  font-size: 14px;
  text-transform: uppercase;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .personal-info input,
.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .personal-info button[role="combobox"] {
  min-height: 48px;
  border: 2px solid var(--presale-color-border);
  border-radius: var(--presale-radius);
  font-family: var(--presale-font-family);
  font-size: 16px;
}

/* --- Create Account section (Stage 2) --- */
.amped-signup-root[data-mode="presale-checkout"] .presale-create-account {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__carried-fields {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__editable-fields {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__name-row {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: var(--presale-space-lg);
  width: 100%;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__name-row .presale-create-account__field {
  flex: 1 1 0;
  min-width: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__ro-field {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__ro-label {
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 16px;
  line-height: 1.25;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__ro-value {
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 1.25;
  text-align: right;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__field {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-xs);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-create-account label {
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__dob-gender-row {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: var(--presale-space-lg);
  width: 100%;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__dob-gender-row .presale-create-account__field {
  flex: 1 1 0;
  min-width: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__input-shell {
  position: relative;
  width: 100%;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__input-shell-action {
  position: absolute;
  top: 50%;
  right: 16px;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  pointer-events: none;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__input-shell-action > * {
  pointer-events: auto;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-create-account input,
.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-create-account button[role="combobox"] {
  box-sizing: border-box;
  width: 100%;
  min-height: 52px;
  padding: 14px 16px;
  border: 1px solid #e8e8e8;
  border-radius: 0;
  background: #f9f9f9;
  font-family: var(--presale-font-family);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-create-account input::placeholder {
  color: #a6a6a6;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__text-input {
  padding-right: 44px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__select-trigger {
  justify-content: space-between;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__input-shell-action button {
  min-height: 20px;
  height: 20px;
  width: 20px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__input-shell-action button:hover {
  background: transparent;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__input-shell-action svg {
  width: 20px;
  height: 20px;
}


/* --- Portaled overlays (Select dropdown + Calendar popover) ---
   Radix portals these inside .amped-signup-root via SignupPortalRoot.
   Explicit surface styles so host-page CSS cannot make them transparent. */
.amped-signup-root[data-mode="presale-checkout"] .signup-select-content {
  background-color: var(--presale-color-white);
  color: var(--presale-color-text);
  border: 1px solid var(--presale-color-border);
  border-radius: var(--presale-radius);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.amped-signup-root[data-mode="presale-checkout"] .signup-select-content [data-radix-select-item] {
  font-family: var(--presale-font-family);
  font-size: 14px;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .signup-select-content [data-radix-select-item][data-highlighted] {
  background-color: #f5f5f5;
  color: var(--presale-color-text);
  outline: none;
}

.amped-signup-root[data-mode="presale-checkout"] [data-radix-popper-content-wrapper] {
  z-index: 60 !important;
}

/* Calendar popover (BirthdayCalendarPopover) */
.amped-signup-root[data-mode="presale-checkout"] [data-radix-popover-content] {
  background-color: var(--presale-color-white);
  color: var(--presale-color-text);
  border: 1px solid var(--presale-color-border);
  border-radius: 4px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  font-family: var(--presale-font-family);
}

/* --- Summary sidebar (Stage 3, desktop only) --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__loading {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-sm);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__loading-line {
  display: block;
  height: 14px;
  background: #ececec;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__loading-line--wide {
  height: 24px;
  width: 100%;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__loading-line--short {
  width: 55%;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__plan-unavailable {
  margin: var(--presale-space-sm) 0 0;
  font-size: 14px;
  line-height: 1.4;
  color: var(--presale-color-text-muted);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--presale-space-lg);
  width: 100%;
  max-width: 432px;
  font-family: var(--presale-font-family);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__card {
  display: flex;
  flex-direction: column;
  flex: none;
  width: 100%;
  background: var(--presale-color-white);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__card-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: var(--presale-space-sm);
  min-height: 56px;
  padding: var(--presale-space-md) var(--presale-space-lg);
  background: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__card-title {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 16px;
  line-height: 1.25;
  text-transform: uppercase;
  color: var(--presale-color-white);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 24px;
  padding: 6px 8px;
  border-radius: 4px;
  background-color: var(--presale-color-blue);
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 12px;
  line-height: 12px;
  text-transform: uppercase;
  color: var(--presale-color-white);
  white-space: nowrap;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__panel {
  display: flex;
  flex-direction: column;
  background: var(--presale-color-white);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__panel--plan {
  gap: var(--presale-space-sm);
  padding: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__panel--fees,
.amped-signup-root[data-mode="presale-checkout"] .presale-summary__panel--totals {
  gap: 10px;
  padding: var(--presale-space-md) var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__panel--location {
  gap: var(--presale-space-sm);
  padding: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__plan-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--presale-space-sm);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__plan-name {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__plan-price {
  font-weight: var(--presale-font-weight-heading);
  font-size: 24px;
  line-height: 1.25;
  color: var(--presale-color-text);
  white-space: nowrap;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__plan-subrow {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--presale-space-sm);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__plan-subtitle {
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__plan-strike {
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-text);
  text-decoration: line-through;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__savings-pill {
  margin: 0;
  width: 100%;
  box-sizing: border-box;
  padding: var(--presale-space-xs) var(--presale-space-sm);
  border: 1px solid #cbecde;
  background: #eef8f2;
  font-weight: 700;
  font-size: 14px;
  line-height: 20px;
  text-align: center;
  color: #00914f;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__divider {
  margin: 0;
  border: 0;
  border-top: 1px solid #e8e8e8;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__card--membership .presale-summary__divider,
.amped-signup-root[data-mode="presale-checkout"] .presale-summary__card--perks .presale-summary__divider {
  width: auto;
  margin-left: var(--presale-space-lg);
  margin-right: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__line {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--presale-space-sm);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__line-label {
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__line-values {
  display: flex;
  align-items: baseline;
  gap: var(--presale-space-xs);
  white-space: nowrap;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__promo-value {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-blue);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__strike {
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-text);
  text-decoration: line-through;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__line--savings-total {
  color: #00914f;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__savings-total-label,
.amped-signup-root[data-mode="presale-checkout"] .presale-summary__savings-total-value {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  color: #00914f;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__due-today-label {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__due-today {
  font-weight: var(--presale-font-weight-heading);
  font-size: 24px;
  line-height: 1.25;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__location-name {
  margin: 0;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__location-address {
  margin: 0;
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__perk-row {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: var(--presale-space-sm);
  padding: var(--presale-space-md) var(--presale-space-lg);
  background: var(--presale-color-white);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__perk-icon {
  flex: none;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  border-radius: 32px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__perk-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  padding-right: 8px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__perk-title {
  margin: 0;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-summary__perk-desc {
  margin: 0;
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 1.5;
  color: var(--presale-color-text);
}

/* --- Address section (Stage 4) --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-address {
  display: flex;
  flex-direction: column;
  gap: 23px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-address__state-wrap {
  position: relative;
}

/* Visually hidden but autofill-reachable native <select> for state */
.amped-signup-root[data-mode="presale-checkout"] .presale-address__autofill-select {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  overflow: hidden;
  white-space: nowrap;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-address__field {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-xs);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-address__field--half {
  flex: 1 1 0;
  min-width: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-address__row {
  display: flex;
  flex-direction: row;
  gap: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-address__label {
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-address__input {
  box-sizing: border-box;
  width: 100%;
  min-height: 56px;
  padding: 16px;
  background: #f9f9f9;
  border: 1px solid #e8e8e8;
  border-radius: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-address__input::placeholder {
  color: #a6a6a6;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-address__field button[role="combobox"] {
  box-sizing: border-box;
  width: 100%;
  min-height: 56px;
  padding: 16px;
  background: #f9f9f9;
  border: 1px solid #e8e8e8;
  border-radius: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
  text-align: left;
  justify-content: flex-start;
}

@media (max-width: 599px) {
  .amped-signup-root[data-mode="presale-checkout"] .presale-address__row {
    flex-direction: column;
  }
}

/* --- Plan section (Stage 4) --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-plans {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plans__list {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plans__loading {
  padding: var(--presale-space-lg);
  text-align: center;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plans__loading-text {
  margin: 0;
  font-family: var(--presale-font-family);
  font-size: 14px;
  color: var(--presale-color-text-muted);
}

/* --- Plan card --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--presale-space-lg);
  /* gap: var(--presale-space-md); */
  gap: 16px;
  width: 100%;
  background: var(--presale-color-white);
  border: 1px solid #e8e8e8;
  cursor: pointer;
  text-align: left;
  font-family: var(--presale-font-family);
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card--selected {
  background: rgba(0, 81, 255, 0.1);
  /* Keep the border at 1px (matching the unselected card) and add the 2nd px
     as an inset shadow, so selecting a plan doesn't reflow the card by 1px. */
  border-color: var(--presale-color-blue);
  box-shadow: inset 0 0 0 1px var(--presale-color-blue);
}

/* Compact card (3+ plans): single row, no description/features (Figma Frame
   51021). Lighter selected fill and a 24px-tall header → 72px card. */
.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card--compact.presale-plan-card--selected {
  background: rgba(0, 81, 255, 0.05);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card--compact .presale-plan-card__header {
  min-height: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: start;
  width: 100%;
  min-height: 32px;
  gap: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__leading {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__checkbox {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  background: #f9f9f9;
  border: 1px solid #e8e8e8;
  border-radius: 2px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__checkbox--checked {
  background: var(--presale-color-blue);
  border-color: var(--presale-color-blue);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__name {
  font-weight: var(--presale-font-weight-heading);
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__trailing {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__savings-pill {
  box-sizing: border-box;
  display: inline-flex;
  flex: none;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  min-height: 24px;
  padding: 4px 8px;
  background-color: #eef8f2 !important;
  border: 1px solid #cbecde;
  border-radius: 2px;
  font-family: var(--presale-font-family);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  color: #000000;
  white-space: nowrap;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__savings-pill-highlight {
  color: #0f9f5a !important;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card--selected .presale-plan-card__savings-pill {
  background-color: #eef8f2 !important;
  border-color: #cbecde;
  color: #000000;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card--selected .presale-plan-card__savings-pill-highlight {
  color: #0f9f5a !important;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__price {
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  text-align: right;
  color: var(--presale-color-black);
  white-space: nowrap;
}

/* De-emphasize the "/mo" suffix next to the price (smaller + regular weight,
   consistent across the 2-plan and 3-plan layouts at all widths). */
.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__price-suffix {
  font-size: 12px;
  font-weight: var(--presale-font-weight-body);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__divider {
  width: 100%;
  margin: 0;
  border: 0;
  border-top: 1px solid #e8e8e8;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__body {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-xs);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__desc {
  margin: 0;
  font-weight: var(--presale-font-weight-body);
  font-size: 14px;
  line-height: 20px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__desc em,
.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__desc i {
  font-style: italic;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__features {
  margin: 0;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  color: var(--presale-color-black);
}

/* --- Compare Benefits toggle --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-plans__compare-toggle {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  text-decoration: underline;
  text-transform: uppercase;
  color: var(--presale-color-black);
  cursor: pointer;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-plans__compare-toggle:hover {
  opacity: 0.7;
}

/* --- Compare Benefits modal (Stage 4) --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  background: rgba(0, 0, 0, 0.4);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__panel {
  display: flex;
  flex-direction: column;
  width: 994px;
  max-width: 100%;
  max-height: calc(100vh - 48px);
  margin-top: 48px;
  background: #ffffff;
  font-family: var(--presale-font-family);
  overflow: hidden;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__sticky-header {
  flex-shrink: 0;
  background: #ffffff;
  box-shadow: none;
  padding: 24px 48px 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__sticky-header--scrolled {
  box-shadow: 0 8px 8px rgba(0, 0, 0, 0.12);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__close-row {
  display: flex;
  justify-content: flex-end;
  height: 40px;
  align-items: center;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__close:hover {
  opacity: 0.7;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__header-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 24px;
  height: 80px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__title {
  width: 294px;
  flex-shrink: 0;
  font-family: var(--presale-font-family);
  font-style: italic;
  font-weight: 800;
  font-size: 32px;
  line-height: 40px;
  text-align: center;
  text-transform: uppercase;
  color: #000000;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__plan-names {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 24px;
  flex: 1;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__plan-name {
  flex: 1;
  font-family: var(--presale-font-family);
  font-style: italic;
  font-weight: 800;
  font-size: 24px;
  line-height: 24px;
  text-align: center;
  text-transform: uppercase;
  color: #000000;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__scroll {
  flex: 1;
  overflow-y: auto;
  padding: 0 48px 48px;
  scrollbar-width: none; /* Firefox */
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal__scroll::-webkit-scrollbar {
  display: none; /* Chrome/Safari/Edge */
}

/* Hide the CompareBenefits own heading + thead inside the modal
   since the sticky header replaces them */
.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal .compare-benefits-heading {
  display: none;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal .compare-benefits-table thead {
  display: none;
}

/* Reset spacing the CompareBenefits component adds via Tailwind */
.amped-signup-root[data-mode="presale-checkout"] .presale-compare-modal .compare-benefits {
  margin: 0;
  padding: 0;
}

@media (max-width: 599px) {
  /* Card: 16px padding on mobile (Figma Frame 51647/51648). */
  .amped-signup-root[data-mode="presale-checkout"] .presale-plan-card {
    padding: var(--presale-space-md);
  }

  /* Header: keep [checkbox + name] and price on one row; the savings pill wraps
     to its own line below, right-aligned (Figma Frame 51654). display:contents
     flattens the trailing wrapper so its pill + price become header flex items;
     order + margin-left:auto place the price in the title row and the pill below. */
  .amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__header {
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    row-gap: var(--presale-space-xs);
    min-height: 0;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__trailing {
    display: contents;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__leading {
    order: 0;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__price {
    order: 1;
    margin-left: auto;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__savings-pill {
    order: 2;
    margin-left: auto;
  }

  /* Body text: 16/24 on mobile (Figma Text 16 Regular / Text 16 Bold). */
  .amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__desc,
  .amped-signup-root[data-mode="presale-checkout"] .presale-plan-card__features {
    font-size: 16px;
    line-height: 24px;
  }
}

/* --- Payment section (Stage 5) --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-payment {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__field {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-xs);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__field--half {
  flex: 1 1 0;
  min-width: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__field--third {
  flex: 1 1 0;
  min-width: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__name-group {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-xs);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__name-row {
  display: flex;
  flex-direction: row;
  gap: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__row {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__label {
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__label--hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__input {
  box-sizing: border-box;
  width: 100%;
  min-height: 56px;
  padding: 14px 16px;
  background: #f9f9f9;
  border: 1px solid #e8e8e8;
  border-radius: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__input::placeholder {
  color: #a6a6a6;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__expiry-control {
  position: relative;
}

/* Visually hidden but autofill-reachable native <select> for expiry */
.amped-signup-root[data-mode="presale-checkout"] .presale-payment__autofill-select {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  overflow: hidden;
  white-space: nowrap;
}

@keyframes presale-payment-autofill-start {
  from {
    opacity: 1;
  }

  to {
    opacity: 1;
  }
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__autofill-select:-webkit-autofill {
  animation: presale-payment-autofill-start 0.001s;
}

/* Mirror browser autofill highlight onto visible expiry comboboxes */
.amped-signup-root[data-mode="presale-checkout"] .presale-payment__expiry-control--autofilled button[role="combobox"],
.amped-signup-root[data-mode="presale-checkout"] .presale-payment__expiry-control:has(select:-webkit-autofill) button[role="combobox"],
.amped-signup-root[data-mode="presale-checkout"] .presale-payment__expiry-control:has(select:-moz-autofill) button[role="combobox"] {
  background-color: rgb(232, 240, 254);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__field button[role="combobox"] {
  box-sizing: border-box;
  width: 100%;
  min-height: 56px;
  padding: 14px 16px;
  background: #f9f9f9;
  border: 1px solid #e8e8e8;
  border-radius: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
  text-align: left;
  justify-content: flex-start;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-payment__error {
  margin: 0;
  font-size: 14px;
  line-height: 1.4;
  color: #ef4444;
}

/* Desktop: MM + YYYY + CVC share one row (each ~1/3, via the base __row).
   Mobile: the row wraps — MM + YYYY take half each, CVC drops to its own
   full-width line below. */
@media (max-width: 599px) {
  .amped-signup-root[data-mode="presale-checkout"] .presale-payment__row--expiry-cvc {
    flex-wrap: wrap;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-payment__row--expiry-cvc .presale-payment__field--third {
    flex-basis: calc(50% - 12px);
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-payment__row--expiry-cvc .presale-payment__field--cvc {
    flex-basis: 100%;
  }
}

/* --- Legal / agreement (PresaleLegalSection) --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-legal {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-block {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__notice {
  padding: var(--presale-space-sm);
  background: var(--presale-color-bg);
  border: 1px solid var(--presale-color-border);
  font-family: var(--presale-font-family);
  font-size: 14px;
  line-height: 1.5;
  color: var(--presale-color-text-muted);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-trigger {
  width: 100%;
  text-transform: uppercase;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__dialog {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-md);
  max-height: 80vh;
  width: 95vw;
  max-width: 768px;
  overflow: hidden;
  padding: var(--presale-space-lg);
  font-family: var(--presale-font-family);
  font-size: 14px;
  line-height: 1.5;
  color: var(--presale-color-text);
  background: var(--presale-color-surface);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__dialog-header {
  flex-shrink: 0;
  text-align: left;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__dialog-title {
  margin: 0;
  padding-right: var(--presale-space-xl);
  font-family: var(--presale-font-family);
  font-size: 18px !important;
  font-weight: var(--presale-font-weight-semibold) !important;
  line-height: 1.3 !important;
  letter-spacing: normal;
  text-transform: none;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__dialog > button {
  position: absolute;
  top: var(--presale-space-md);
  right: var(--presale-space-md);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: none;
  border-radius: 4px;
  background: transparent;
  color: var(--presale-color-text-muted);
  opacity: 0.7;
  cursor: pointer;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__dialog > button:hover {
  opacity: 1;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__dialog > button svg {
  width: 16px;
  height: 16px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body {
  min-height: 0;
  flex: 1 1 auto;
  max-height: calc(80vh - 96px);
  overflow-x: auto;
  overflow-y: auto;
  padding-right: var(--presale-space-xs);
  font-family: var(--presale-font-family);
  font-size: 14px;
  line-height: 1.5;
  color: var(--presale-color-text);
  word-break: break-word;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body > * + * {
  margin-top: var(--presale-space-lg);
}

/* Normalize ABC HTML + shared privacy section (no Tailwind in presale checkout). */
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body .presale-legal__abc-html,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body .presale-legal__abc-html *,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body .presale-legal__fallback-copy,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body .presale-legal__fallback-copy p,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body .presale-legal__privacy,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body .presale-legal__privacy p,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body .presale-legal__authorization-text,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body font,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body span,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body li,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body td,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body th {
  font-family: var(--presale-font-family) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  max-width: 100% !important;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body .presale-legal__section-heading,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body .presale-legal__privacy h4,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body .legal-section__privacy h4,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body h1,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body h2,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body h3,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body h4,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body h5,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body h6 {
  margin: 0 0 var(--presale-space-sm);
  font-family: var(--presale-font-family) !important;
  font-size: 16px !important;
  font-weight: var(--presale-font-weight-semibold) !important;
  line-height: 1.4 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: var(--presale-color-text) !important;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body p {
  margin: 0 0 var(--presale-space-sm);
  font-family: var(--presale-font-family) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: var(--presale-color-text-muted) !important;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body p:last-child {
  margin-bottom: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body a {
  color: var(--presale-color-blue);
  text-decoration: underline;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body table {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body pre {
  white-space: pre-wrap !important;
  word-break: break-word;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body big,
.amped-signup-root[data-mode="presale-checkout"] .presale-legal__agreement-body small {
  font-size: 14px !important;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__section-heading {
  margin: 0 0 var(--presale-space-sm);
  font-family: var(--presale-font-family);
  font-size: 16px;
  font-weight: var(--presale-font-weight-semibold);
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__description-block {
  margin-top: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__authorization-text {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: var(--presale-color-text-muted);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__consent.signup-consent {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: var(--presale-space-md);
  padding: var(--presale-space-lg);
  background: var(--presale-color-bg);
  border: 1px solid var(--presale-color-border);
  margin-bottom: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__consent.signup-consent > * + * {
  margin-top: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__consent.signup-consent button[role="checkbox"] {
  flex-shrink: 0;
  width: 24px !important;
  height: 24px !important;
  margin-top: 0;
  border: 1px solid #e8e8e8 !important;
  border-radius: 2px !important;
  padding: 0 !important;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__consent.signup-consent button[role="checkbox"] svg {
  width: 12px !important;
  height: 12px !important;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__consent.signup-consent button[role="checkbox"][data-state="unchecked"] {
  background: var(--presale-color-white) !important;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__consent.signup-consent button[role="checkbox"][data-state="checked"] {
  background: var(--presale-color-blue) !important;
  border-color: #e8e8e8 !important;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__consent-copy {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-sm);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal label.presale-legal__consent-label {
  display: block;
  color: var(--presale-color-text) !important;
  font-family: var(--presale-font-family);
  font-size: 12px;
  font-weight: 500 !important;
  line-height: 16px;
  text-transform: none;
  cursor: pointer;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__consent-detail {
  margin: 0;
  width: 100%;
  font-family: var(--presale-font-family);
  font-size: 12px;
  line-height: 16px;
  color: var(--presale-color-text-muted);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__inline-trigger {
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  color: var(--presale-color-text);
  text-decoration: underline;
  cursor: pointer;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__inline-trigger:hover {
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__processing-fee {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-xs);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__processing-fee-heading {
  margin: 0;
  font-family: var(--presale-font-family);
  font-size: 14px;
  font-weight: var(--presale-font-weight-semibold);
  text-transform: uppercase;
  color: var(--presale-color-text);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__processing-fee-text {
  margin: 0;
  font-family: var(--presale-font-family);
  font-size: 14px;
  line-height: 1.5;
  color: var(--presale-color-text-muted);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-legal__disabled-hint {
  margin: 0;
  text-align: center;
  font-family: var(--presale-font-family);
  font-size: 12px;
  line-height: 16px;
  color: var(--presale-color-text-muted);
}

/* ==========================================================================
   Confirmation view (PresaleCheckoutConfirmation)
   ========================================================================== */

/* --- Confirmation hero text (badge + headline + subcopy on white bg) --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  text-align: center;
  padding-bottom: 40px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero__badge {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 12px;
  padding: 8px 12px;
  background: var(--presale-color-white);
  border-radius: 4px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero__badge-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  background: var(--presale-color-blue);
  border-radius: 2px;
  color: var(--presale-color-white);
  flex-shrink: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero__badge-text {
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 14px;
  line-height: 20px;
  text-align: center;
  text-transform: uppercase;
  color: var(--presale-color-primary);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero__headline {
  width: 100%;
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-heading);
  font-size: clamp(32px, 5vw, 48px);
  line-height: 52px;
  text-align: center;
  text-transform: uppercase;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero__subcopy {
  width: 100%;
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 18px;
  line-height: 28px;
  text-align: center;
  color: var(--presale-color-black);
}

/* --- Confirmation layout (single-column, no sidebar) --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-checkout__layout--confirm {
  flex-direction: column;
  max-width: var(--presale-form-column-width);
  margin: 0 auto;
  padding-top: var(--presale-space-3xl);
  padding-bottom: var(--presale-space-3xl);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-lg);
}

/* Dry-run only (?dryRun=1) — never shown in production checkout. */
.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__test-badge {
  margin: 0;
  padding: var(--presale-space-sm) var(--presale-space-md);
  background: #fff8e1;
  border: 1px solid #f0c36d;
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #8a6d00;
}

/* --- Referral section --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 52px;
  padding: var(--presale-space-lg);
  background: var(--presale-color-surface);
  border: 1px solid #e8e8e8;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-copy {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-md);
  flex: 1 1 0%;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-eyebrow {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 14px;
  line-height: 20px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-title {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-heading);
  font-size: 32px;
  line-height: 36px;
  text-transform: uppercase;
  color: #0755fe;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-desc {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 18px;
  line-height: 28px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--presale-space-md);
  width: 192px;
  flex-shrink: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-code-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--presale-space-md) var(--presale-space-lg);
  background: #f9f9f9;
  border: 1px solid #e8e8e8;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-code-label {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-align: center;
  text-transform: uppercase;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-code-value {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-heading);
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  text-transform: uppercase;
  color: var(--presale-color-primary);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__copy-btn {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: var(--presale-space-xs);
  height: 48px;
  padding: 0;
  background: rgba(244, 0, 0, 0.05);
  border: 1px solid rgba(244, 0, 0, 0.5);
  cursor: pointer;
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__copy-btn:hover {
  background: rgba(244, 0, 0, 0.1);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__copy-icon {
  width: 20px;
  height: 20px;
  color: var(--presale-color-primary);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-expiry {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-align: center;
  color: var(--presale-color-black);
}

/* --- Card pattern (location, plan, addons, features, summary) --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__card {
  display: flex;
  flex-direction: column;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__card-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--presale-space-sm);
  padding: var(--presale-space-md) var(--presale-space-lg);
  background: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__card-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--presale-color-white);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__card-title {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  color: var(--presale-color-white);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__card-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: var(--presale-space-lg);
  background: var(--presale-color-surface);
  border: 1px solid #e8e8e8;
  border-top: none;
}

/* --- Location card --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__location-name {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__location-address {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
}

/* --- Plan + Add-Ons side-by-side grid --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__plan-addons-grid {
  display: flex;
  flex-direction: row;
  gap: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__plan-addons-grid > .presale-confirm__card {
  flex: 1 1 0%;
  min-width: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__plan-name {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 16px;
  line-height: 20px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__plan-price {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 4px;
  margin: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__price-main {
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 32px;
  line-height: 32px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__price-suffix {
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 14px;
  line-height: 14px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__addon-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: var(--presale-space-md);
  font-family: var(--presale-font-family);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__addon-price {
  font-weight: 700;
  text-align: right;
  white-space: nowrap;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__addons-empty {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-text-muted);
}

/* --- What's Included (features) --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__features-body {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: var(--presale-space-lg);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__feature-list {
  display: flex;
  flex-direction: column;
  gap: var(--presale-space-md);
  margin: 0;
  padding: 0;
  list-style: none;
  flex: 1 1 0%;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__feature {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: var(--presale-space-sm);
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__feature-check {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 2px;
  color: var(--presale-color-black);
}

/* --- Membership Summary --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__summary-body {
  gap: var(--presale-space-md);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__summary-line {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: var(--presale-space-md);
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__summary-total {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: var(--presale-space-md);
  padding-top: var(--presale-space-md);
  border-top: 1px solid #e8e8e8;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__summary-total-label {
  font-family: var(--presale-font-family);
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__summary-total-amount {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 4px;
}

/* --- Notices --- */

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__notices {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__notice {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--presale-space-lg);
  padding: var(--presale-space-lg);
  background: var(--presale-color-surface);
  border: 1px solid #e8e8e8;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__notice + .presale-confirm__notice {
  border-top: none;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__notice-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--presale-color-black);
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__notice-body {
  margin: 0;
  font-family: var(--presale-font-family);
  font-weight: var(--presale-font-weight-body);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
}

/* --- Confirmation responsive --- */

@media (max-width: 599px) {
  /* Outer layout: 48px top/bottom, 16px sides (Figma Frame 50985) */
  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout__layout--confirm {
    padding: 48px 16px;
    max-width: 100%;
  }

  /* Hero badge: Figma mobile pill — 4px 12px padding, text wraps to 2 lines */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero__badge {
    padding: 4px 12px;
    gap: 12px;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero__badge-text {
    max-width: 161px;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: normal;
  }

  /* Hero headline: H4 spec on mobile (40px/44px) */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero__headline {
    font-size: 40px;
    line-height: 44px;
  }

  /* Cards: 15px gap between all cards (Figma Frame 50979 gap: 15px) */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm {
    gap: 15px;
  }

  /* Card body: 24px top/bottom, 16px sides on mobile (Figma Frame 50917) */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm__card-body {
    padding: var(--presale-space-lg) var(--presale-space-md);
  }

  /* Referral: stack vertically, keep title at Figma 32px (not reduced) */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral {
    flex-direction: column;
    gap: 15px;
    padding: var(--presale-space-lg) var(--presale-space-md);
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-actions {
    width: 100%;
  }

  /* Referral eyebrow: 12px (Figma) */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-eyebrow {
    font-size: 12px;
    line-height: 16px;
  }

  /* Referral code box: 16px 24px padding */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm__referral-code-box {
    padding: var(--presale-space-md) var(--presale-space-lg);
  }

  /* Plan + Add-Ons: stack vertically */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm__plan-addons-grid {
    flex-direction: column;
  }

  /* What's Included: single column, 16px gap between items (Figma Frame 50930) */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm__features-body {
    flex-direction: column;
    gap: var(--presale-space-md);
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm__feature-list {
    gap: var(--presale-space-md);
  }

  /* Notices: 24px 16px padding, 24px gap between icon and text (Figma Frame 50942) */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm__notice {
    padding: var(--presale-space-lg) var(--presale-space-md);
    gap: var(--presale-space-lg);
    align-items: flex-start;
  }
}

/* ==========================================================================
   7A — Hide WordPress / Divi site nav on presale-checkout pages
   Targets Divi-specific selectors via the body class added by the WP plugin.
   These rules live OUTSIDE .amped-signup-root because they target page-level
   elements that are siblings of the signup mount, not descendants.
   ========================================================================== */

body.amped-presale-checkout #main-header,
body.amped-presale-checkout #top-header,
body.amped-presale-checkout .et-fixed-header {
  display: none !important;
}

body.amped-presale-checkout #page-container {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* ==========================================================================
   7B — Mobile responsive refinements
   ========================================================================== */

@media (max-width: 599px) {
  /* Hero: match Figma mobile (Frame 2421, 493px tall). Zoom the background in
     (scale to 120% of hero height) and shift it down a touch for Figma framing. */
  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__hero {
    min-height: 493px;
    background-size: auto 120%;
    background-position: 49% -14%;
  }

  /* Content: the 16px side gutter already comes from the centered max-width
     (width: calc(100% - 32px) + margin:auto), so drop the extra 16px padding.
     This gives the headline the full Figma width and keeps "NOW, SKIP THE" on
     one line. */
  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__content {
    padding-left: 0;
    padding-right: 0;
  }

  /* Hero headline: Figma mobile 40/44 */
  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__headline {
    font-size: 40px;
    line-height: 44px;
  }

  /* Headline: switch to Figma mobile 4-line break */
  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__br--mobile {
    display: inline;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__br--desktop {
    display: none;
  }

  /* Hero subcopy: Figma mobile 18/28 */
  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__subcopy {
    font-size: 18px;
    line-height: 28px;
  }

  /* Hero nav logo: Figma mobile (104px wide at 24px from left) */
  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__nav-logo {
    left: 24px;
    width: 104px;
  }

  /* Hero badge: Figma mobile pill — text wraps to 2 lines (~213px wide) */
  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__badge {
    gap: 12px;
    padding: 4px 12px;
    border-radius: 4px;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-form-header__badge-text {
    max-width: 161px;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: normal;
  }

  /* Card stack: 4px gaps between the banner and cards on mobile (Figma). */
  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout-steps {
    gap: 4px;
  }

  /* Founding banner + step cards: 16px side padding on mobile (Figma).
     Banner gets 16px all around; headers/bodies keep their vertical padding. */
  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout__founding-banner {
    padding: var(--presale-space-md);
    margin-bottom: 4px;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-section-header,
  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step__body {
    padding-left: var(--presale-space-md);
    padding-right: var(--presale-space-md);
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout__founding-banner-title {
    font-size: 16px;
    line-height: 20px;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-checkout__founding-banner-subtitle {
    font-size: 16px;
    line-height: 20px;
  }

  /* Confirmation hero headline: scale down */
  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero__headline {
    font-size: 32px;
    line-height: 36px;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-confirm-hero__subcopy {
    font-size: 16px;
    line-height: 24px;
  }

  /* DOB + Gender: stack vertically, full width on mobile */
  .amped-signup-root[data-mode="presale-checkout"] .presale-create-account__dob-gender-row,
  .amped-signup-root[data-mode="presale-checkout"] .presale-create-account__name-row {
    flex-direction: column;
    width: 100%;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-create-account__dob-gender-row .presale-create-account__field,
  .amped-signup-root[data-mode="presale-checkout"] .presale-create-account__name-row .presale-create-account__field {
    width: 100%;
  }

  /* Readonly field rows: allow value to wrap for long emails */
  .amped-signup-root[data-mode="presale-checkout"] .presale-create-account__ro-field {
    flex-wrap: wrap;
  }

  .amped-signup-root[data-mode="presale-checkout"] .presale-create-account__ro-value {
    word-break: break-all;
    min-width: 0;
  }

  /* Text inputs: truncate overflow on narrow screens */
  .amped-signup-root[data-mode="presale-checkout"] .presale-create-account input {
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

/* ==========================================================================
   7C — Focus and interaction states for presale form fields
   ========================================================================== */

/* Text inputs */
.amped-signup-root[data-mode="presale-checkout"] .presale-payment__input:focus,
.amped-signup-root[data-mode="presale-checkout"] .presale-address__input:focus,
.amped-signup-root[data-mode="presale-checkout"] .presale-create-account__text-input:focus,
.amped-signup-root[data-mode="presale-checkout"] .presale-checkout-step .presale-create-account input:focus {
  border-color: var(--presale-color-black);
  border-width: 2px;
  outline: none;
}

/* Select / combobox triggers */
.amped-signup-root[data-mode="presale-checkout"] .presale-address__field button[role="combobox"]:focus,
.amped-signup-root[data-mode="presale-checkout"] .presale-payment__field button[role="combobox"]:focus,
.amped-signup-root[data-mode="presale-checkout"] .presale-create-account button[role="combobox"]:focus {
  border-color: var(--presale-color-black);
  border-width: 2px;
  outline: none;
}

/* Validation error messages (shadcn FormMessage renders <p data-slot="form-message">) */
.amped-signup-root[data-mode="presale-checkout"] [data-slot="form-message"] {
  font-family: var(--presale-font-family);
  font-size: 14px;
  line-height: 1.4;
  color: #ef4444;
  margin-top: 4px;
}

/* ==========================================================================
   7D — CSS isolation: Divi global form resets
   Divi applies broad input/select resets via body.et_divi_theme; override them
   inside the presale scope so checkout fields keep their intended styles.
   ========================================================================== */

.amped-signup-root[data-mode="presale-checkout"] input,
.amped-signup-root[data-mode="presale-checkout"] select,
.amped-signup-root[data-mode="presale-checkout"] textarea,
.amped-signup-root[data-mode="presale-checkout"] button {
  font-family: var(--presale-font-family);
  font-size: 16px;
  line-height: 24px;
  color: var(--presale-color-black);
}

/* ==========================================================================
   7E — Accessibility: focus-visible outlines
   ========================================================================== */

.amped-signup-root[data-mode="presale-checkout"] .presale-btn:focus-visible {
  outline: 2px solid var(--presale-color-black);
  outline-offset: 2px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-section-header:focus-visible {
  outline: 2px solid var(--presale-color-black);
  outline-offset: 2px;
}

.amped-signup-root[data-mode="presale-checkout"] .presale-confirm__copy-btn:focus-visible {
  outline: 2px solid var(--presale-color-black);
  outline-offset: 2px;
}

/* Generic focus-visible for any interactive element inside checkout */
.amped-signup-root[data-mode="presale-checkout"] a:focus-visible,
.amped-signup-root[data-mode="presale-checkout"] button:focus-visible,
.amped-signup-root[data-mode="presale-checkout"] input:focus-visible,
.amped-signup-root[data-mode="presale-checkout"] select:focus-visible,
.amped-signup-root[data-mode="presale-checkout"] textarea:focus-visible,
.amped-signup-root[data-mode="presale-checkout"] [role="combobox"]:focus-visible {
  outline: 2px solid var(--presale-color-black);
  outline-offset: 2px;
}
