/* Shared selection and review layout for subscriptions and wallet credit. */
.account-page-v3 .is-guided-checkout {
  --checkout-accent: #155b43;
  --checkout-muted: #657570;
  display: block;
  padding: 10px 0 0;
}

.is-guided-checkout > .section-intro { display: none; }
.account-page-v3 .checkout-return { display: none; }

.checkout-progress {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  margin: 0 auto 38px;
  padding: 0;
  list-style: none;
  color: var(--checkout-muted);
  font-size: 0.72rem;
  scroll-margin-top: 24px;
}

.checkout-progress li { display: flex; align-items: center; gap: 8px; }
.checkout-progress li + li::before {
  content: "";
  width: 60px;
  height: 1px;
  margin: 0 16px;
  background: var(--v4-line);
}
.checkout-progress b {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid var(--v4-line);
  border-radius: 50%;
  font-weight: 600;
}
.checkout-progress [aria-current], .checkout-progress .is-complete { color: var(--checkout-accent); }
.checkout-progress [aria-current] b { background: var(--checkout-accent); border-color: var(--checkout-accent); color: #fff; }
.checkout-progress .is-complete b { border-color: #a9c9b9; background: #edf5ef; }

.account-page-v3 .is-guided-checkout > .purchase-view {
  width: min(100%, 820px);
  margin: 0 auto;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.is-guided-checkout .purchase-view__heading { margin-bottom: 30px; text-align: center; }
.account-page-v3 .is-guided-checkout .purchase-view__heading h3 {
  margin-bottom: 8px;
  font-size: clamp(1.6rem, 2.5vw, 1.95rem);
  line-height: 1.6;
  letter-spacing: -.04em;
}
.account-page-v3 .is-guided-checkout .purchase-view__heading p { margin: 0; font-size: .82rem; color: var(--checkout-muted); }
.account-page-v3 .is-guided-checkout .license-plan-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.account-page-v3 .is-guided-checkout .license-plan-card {
  display: flex;
  min-height: 250px;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  padding: 24px 16px 22px;
  border-color: #e0e6e3 !important;
  text-align: center;
  box-shadow: none;
  transition: border-color .16s, background .16s;
}
.account-page-v3 .is-guided-checkout .license-plan-card:hover { border-color: #a9c9b9 !important; transform: none; background: #fafcfb; }
.account-page-v3 .is-guided-checkout .license-plan-card.is-selected { border-color: var(--checkout-accent) !important; box-shadow: 0 0 0 1px var(--checkout-accent); background: #f5fbf7; }
.account-page-v3 .is-guided-checkout .license-plan-card__topline { display: flex; min-height: 47px; flex-direction: column; gap: 7px; }
.account-page-v3 .is-guided-checkout .license-plan-card__topline strong { font-size: 1.05rem; }
.account-page-v3 .is-guided-checkout .license-plan-card__badge { border-radius: 4px; font-size: .57rem; padding: 2px 7px; background: #e9f4ee; color: var(--checkout-accent); }
.license-plan-card__description { color: var(--checkout-muted); font-size: .7rem; }
.account-page-v3 .is-guided-checkout .license-plan-card__price { display: flex; flex-direction: column; align-items: center; gap: 4px; margin: auto 0 0; }
.account-page-v3 .is-guided-checkout .license-plan-card__amount { justify-content: center; }
.account-page-v3 .is-guided-checkout .license-plan-card__price b { font-size: clamp(1.35rem, 2.2vw, 1.7rem); }
.account-page-v3 .is-guided-checkout .license-plan-card__regular { min-height: 17px; font-size: .65rem; }
.account-page-v3 .is-guided-checkout .license-plan-card__price small { font-size: .62rem; font-weight: 400; }
.account-page-v3 .is-guided-checkout .license-plan-card__price .license-plan-card__discount { font-weight: 700; }
.account-page-v3 .is-guided-checkout .license-plan-card__price .license-plan-card__gift { color: var(--checkout-accent); }
.account-page-v3 .is-guided-checkout .license-plan-card__radio { margin-top: 8px; width: 19px; height: 19px; flex-basis: 19px; }
.account-page-v3 .is-guided-checkout .license-plan-card.is-selected .license-plan-card__radio { border-color: var(--checkout-accent); background: var(--checkout-accent); }
.checkout-selection-footer { max-width: 465px; margin: 28px auto 0; }
.checkout-shared-benefits { display: flex; flex-wrap: wrap; justify-content: center; gap: 18px; margin-bottom: 24px; color: var(--checkout-muted); font-size: .68rem; }
.checkout-shared-benefits span { display: flex; align-items: center; gap: 7px; }
.checkout-shared-benefits svg, .checkout-selection-footer button svg, .checkout-review-heading button svg { width: 19px; height: 19px; flex-shrink: 0; }
.account-page-v3 .checkout-selection-footer .primary {
  display: flex;
  width: min(100%, 330px);
  min-height: 49px;
  justify-content: space-between;
  margin: 0 auto;
  padding-inline: 24px;
  border-radius: 10px;
  background: var(--checkout-accent);
  color: #fff;
  font-size: .82rem;
}
.account-page-v3 .is-guided-checkout button:focus-visible { outline: 3px solid #86b8ef; outline-offset: 4px; }
.account-page-v3 .is-guided-checkout button:disabled { opacity: .45; cursor: default; }
.checkout-review-heading { width: min(100%, 450px); margin: 0 auto 22px; }
.account-page-v3 .checkout-review-heading .text-button { min-height: 34px; padding: 0; margin-bottom: 18px; border: 0 !important; background: transparent; color: var(--checkout-accent); font-size: .75rem; font-weight: 500; }
.checkout-review-heading h3 { margin-bottom: 7px; font-size: 1.6rem; line-height: 1.5; letter-spacing: -.035em; }
.checkout-review-heading p { margin: 0; font-size: .75rem; color: var(--checkout-muted); }
.account-page-v3 .is-guided-checkout > .payment-flow {
  position: relative;
  width: min(100%, 450px);
  margin: 0 auto;
  padding: 26px;
  border: 1px solid var(--v4-line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 7px 24px #29443008;
}
.is-guided-checkout .payment-flow__head, .is-guided-checkout .receipt-card > h4, .is-guided-checkout #licenseBenefits { display: none; }
.is-guided-checkout .payment-flow.is-locked { min-height: 280px; }
.account-page-v3 .is-guided-checkout .payment-grid { padding: 0; }
.account-page-v3 .is-guided-checkout .payment-instruction-card { padding: 0; border: 0; }
.account-page-v3 .is-guided-checkout .payment-instruction-card > h4 { padding-bottom: 15px; margin-bottom: 19px; border-bottom: 1px solid var(--v4-line); font-size: .72rem; }
.account-page-v3 .is-guided-checkout .checkout-invoice-product h4 { margin: 0 0 4px; font-size: 1.1rem; }
.checkout-invoice-product p { margin: 0; color: var(--checkout-muted); font-size: .68rem; }
.checkout-invoice-lines { margin: 0; font-size: .75rem; }
.checkout-invoice-lines > div { display: flex; align-items: baseline; justify-content: space-between; gap: 15px; margin-top: 13px; }
.checkout-invoice-lines dt { color: var(--checkout-muted); flex-shrink: 0; }
.checkout-invoice-lines dd { margin: 0; text-align: left; overflow-wrap: anywhere; }
.checkout-invoice-lines .checkout-invoice-store { padding: 19px 0 17px; margin: 0 0 17px; border-bottom: 1px solid var(--v4-line); }
.checkout-invoice-store dd { font-weight: 600; }
.checkout-invoice-discount dt, .checkout-invoice-discount dd { color: var(--checkout-accent); font-weight: 700; }
.checkout-invoice-total { display: grid; grid-template-columns: max-content minmax(0, 1fr); align-items: baseline; gap: 6px 12px; padding: 20px 0; margin-top: 19px; border-top: 1px solid var(--v4-line); }
.checkout-invoice-total > span { color: var(--checkout-muted); font-size: .75rem; }
.checkout-invoice-total > div { display: flex; align-items: baseline; justify-content: flex-end; gap: 8px; white-space: nowrap; }
.checkout-invoice-total strong { font-size: 2.2rem; line-height: 1.5; letter-spacing: -.04em; }
.checkout-invoice-total > div > span { font-size: .75rem; }
.checkout-invoice-total > small { grid-column: 1 / -1; font-size: .65rem; color: var(--checkout-muted); }
.checkout-invoice-gift { display: flex; align-items: center; gap: 12px; border-radius: 10px; padding: 12px 15px; background: #edf6ef; color: var(--checkout-accent); }
.checkout-invoice-gift__icon { width: 28px; height: 28px; flex-shrink: 0; }
.checkout-invoice-gift__text { display: grid; gap: 3px; min-width: 0; }
.checkout-invoice-gift strong { font-size: .72rem; }
.checkout-invoice-gift small { font-size: .63rem; }
.checkout-discount { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--v4-line); }
.checkout-discount label { display: block; margin-bottom: 9px; font-size: .8rem; font-weight: 600; }
.checkout-discount__controls { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.account-page-v3 .checkout-discount input { flex: 1; min-width: 140px; width: 0; min-height: 42px; padding: 9px 12px; border: 1px solid var(--v4-line); border-radius: 10px; font: inherit; font-size: .75rem; text-align: left; }
.account-page-v3 .checkout-discount button { min-height: 42px; padding: 9px 14px; font-size: .75rem; }
.checkout-discount__status { margin: 8px 0 0; font-size: .7rem; color: var(--checkout-accent); }
.checkout-discount__status:empty { display: none; }
.checkout-discount__status.is-error { color: #a52b2b; }
.account-page-v3 .is-guided-checkout .receipt-card { padding-top: 20px; }
.account-page-v3 .is-guided-checkout .receipt-card form { gap: 13px; }
.account-page-v3 .is-guided-checkout .receipt-card form .primary { order: 0; border-radius: 10px; background: var(--checkout-accent); }
.account-page-v3 .is-guided-checkout > .orders-card { margin-top: 48px; }

@media (max-width: 740px) {
  .account-page-v3.guided-checkout-open .portal-profile,
  .account-page-v3.guided-checkout-open .portal-sidebar .tabs,
  .account-page-v3.guided-checkout-open .site-switch > span,
  .account-page-v3.guided-checkout-open .support-fab { display: none; }
  .account-page-v3.guided-checkout-open .portal-sidebar { flex-direction: row; align-items: center; gap: 12px; padding: 0; border: 0; background: transparent; box-shadow: none; }
  .account-page-v3.guided-checkout-open .checkout-return { display: flex; gap: 4px; flex-shrink: 0; min-height: 40px; padding: 0; border: 0 !important; background: transparent; color: var(--v4-primary-dark); font-size: .68rem; }
  .checkout-return svg { width: 16px; height: 16px; }
  .account-page-v3.guided-checkout-open .site-switch { flex: 1; min-width: 0; margin: 0 !important; }
  .account-page-v3.guided-checkout-open .site-switch select { min-height: 40px; font-size: .72rem; }
  .account-page-v3 .is-guided-checkout { padding-top: 4px; }
  .checkout-progress { margin-bottom: 30px; font-size: .65rem; }
  .checkout-progress li + li::before { width: 35px; margin: 0 10px; }
  .account-page-v3 .is-guided-checkout .license-plan-grid { grid-template-columns: 1fr; gap: 13px; }
  .account-page-v3 .is-guided-checkout .license-plan-card { display: grid; min-height: 110px; grid-template-columns: 19px minmax(0, 1fr) auto; grid-template-rows: auto auto; gap: 7px 12px; text-align: right; padding: 17px; }
  .account-page-v3 .is-guided-checkout .license-plan-card__radio { grid-column: 1; grid-row: 1 / 3; margin: 0; }
  .account-page-v3 .is-guided-checkout .license-plan-card__topline { grid-column: 2; grid-row: 1; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: center; min-height: 0; gap: 6px; align-self: end; }
  .account-page-v3 .is-guided-checkout .license-plan-card__topline strong { font-size: 1rem; }
  .license-plan-card__description { grid-column: 2; grid-row: 2; align-self: start; font-size: .62rem; }
  .account-page-v3 .is-guided-checkout .license-plan-card__price { grid-column: 3; grid-row: 1 / 3; margin: 0; align-items: flex-end; }
  .account-page-v3 .is-guided-checkout .license-plan-card__price b { font-size: 1.4rem; }
  .account-page-v3 .is-guided-checkout .license-plan-card__price small { font-size: .57rem; }
  .checkout-shared-benefits { gap: 13px; font-size: .62rem; }
  .checkout-shared-benefits span { gap: 4px; }
  .checkout-shared-benefits svg { width: 16px; height: 16px; }
  .account-page-v3 .checkout-selection-footer .primary { width: 100%; }
  .account-page-v3 .is-guided-checkout > .payment-flow { padding: 22px; }
  .checkout-review-heading h3 { font-size: 1.45rem; }
  .checkout-invoice-total strong { font-size: 2rem; }
}

@media (prefers-reduced-motion: reduce) {
  .is-guided-checkout .license-plan-card { transition: none; }
}

/* Credit uses the same selectable cards and focused invoice as subscriptions. */
.account-page-v3 .is-guided-checkout .credit-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.account-page-v3 .is-guided-checkout .credit-package {
  display: grid !important;
  grid-template-columns: 19px minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  grid-template-areas: none;
  gap: 7px 10px;
  align-items: center !important;
  justify-content: flex-start !important;
  min-height: 128px !important;
  padding: 17px !important;
  text-align: right;
}
.account-page-v3 .is-guided-checkout .credit-package .license-plan-card__radio {
  grid-column: 1;
  grid-row: 1 / 3;
  margin: 0;
}
.account-page-v3 .is-guided-checkout .credit-package .license-plan-card__topline {
  grid-column: 2;
  grid-row: 1;
  flex-direction: row;
  flex-wrap: wrap;
  min-height: 0;
  gap: 6px;
  align-self: end;
}
.account-page-v3 .is-guided-checkout .credit-package .license-plan-card__description {
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  font-size: .62rem;
}
.account-page-v3 .is-guided-checkout .credit-package .license-plan-card__topline strong {
  font-size: .82rem;
}
.account-page-v3 .is-guided-checkout .credit-package .license-plan-card__price {
  grid-column: 3;
  grid-row: 1 / 3;
  margin: 0;
  align-items: flex-end;
}
.account-page-v3 .is-guided-checkout .credit-package .license-plan-card__price b {
  font-size: 1.2rem;
}
.account-page-v3 .is-guided-checkout .custom-credit-form {
  grid-column: 3;
  grid-row: 1 / span 2;
  grid-template-columns: minmax(0, 1fr);
  align-content: center;
  min-width: 0;
  max-width: none;
  margin: 0;
  padding: 22px;
  gap: 18px;
  border: 1px solid var(--v4-line);
  border-radius: 14px;
  background: #fff;
}
.account-page-v3 .is-guided-checkout .custom-credit-form.is-selected {
  border-color: var(--checkout-accent);
  box-shadow: 0 0 0 1px var(--checkout-accent);
  background: #f5fbf7;
}
.account-page-v3 .is-guided-checkout .custom-credit-form label {
  display: block;
  margin-bottom: 8px;
  font-size: 1rem;
  font-weight: 700;
}
.credit-custom-card__description {
  margin: 0 0 18px;
  color: var(--checkout-muted);
  font-size: .7rem;
}
.account-page-v3 .is-guided-checkout .money-input {
  display: flex;
  align-items: center;
  border: 1px solid var(--v4-line);
  border-radius: 10px;
  background: #fff;
}
.account-page-v3 .is-guided-checkout .money-input:focus-within {
  border-color: var(--n-e600);
  outline: 3px solid rgba(5, 150, 105, 0.2);
  outline-offset: 2px;
}
.account-page-v3 .is-guided-checkout .money-input input {
  min-width: 0;
  width: 100%;
  min-height: 47px;
  border: 0;
  padding: 10px 13px;
  background: transparent;
  box-shadow: none;
  text-align: right;
  font-size: .82rem;
}
.account-page-v3 .is-guided-checkout .money-input span {
  position: static;
  padding-inline: 0 13px;
  flex-shrink: 0;
  font-size: .7rem;
}
.account-page-v3 .is-guided-checkout .custom-credit-form button {
  min-height: 49px;
  border-radius: 10px;
  font-size: .75rem;
}
.account-page-v3 .is-guided-checkout .purchase-note {
  max-width: 465px;
  margin: 9px auto 0;
  font-size: .67rem;
}
@media (max-width: 1100px) and (min-width: 741px) {
  .account-page-v3 .is-guided-checkout .credit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .account-page-v3 .is-guided-checkout .custom-credit-form { grid-column: 1 / -1; grid-row: auto; grid-template-columns: minmax(0, 1fr) auto; }
}
@media (max-width: 740px) {
  .account-page-v3 .is-guided-checkout .credit-grid { grid-template-columns: 1fr; gap: 13px; }
  .account-page-v3 .is-guided-checkout .credit-package { display: grid !important; min-height: 110px !important; padding: 17px !important; }
  .account-page-v3 .is-guided-checkout .custom-credit-form { grid-column: auto; grid-row: auto; grid-template-columns: minmax(0, 1fr); }
}
