/* Signup uses the same Falcon cards, typography, controls, and colors as the app. */
.signup-page { max-width: 1080px; margin: 0 auto; padding: .5rem 0 3rem; }
.signup-logo { width: 205px; max-width: 48vw; height: auto; }
.signup-plan-card { position: relative; height: 100%; padding: 1.5rem; cursor: pointer; border: 2px solid transparent; transition: border-color .15s ease, box-shadow .15s ease; }
.signup-plan-card:hover { border-color: var(--falcon-primary-border-subtle); }
.signup-plan-card.is-selected { border-color: var(--falcon-primary); }
.signup-plan-card:focus-within { outline: 3px solid var(--falcon-primary-border-subtle); outline-offset: 3px; }
.signup-plan-card:has(input:disabled) { cursor: default; }
.signup-plan-badge { display: block; font-size: .75rem; font-weight: 600; margin-bottom: .75rem; }
.signup-plan-name { display: block; font-family: var(--falcon-font-sans-serif); font-size: 1.15rem; font-weight: 600; color: var(--falcon-heading-color); }
.signup-plan-price { display: flex; align-items: baseline; gap: .25rem; margin: .5rem 0; }
.signup-plan-price span:first-child { font-size: 2rem; font-weight: 600; line-height: 1.2; color: var(--falcon-heading-color); }
.signup-plan-price span:last-child, .signup-plan-limit { font-size: .875rem; color: var(--falcon-body-color); }
.signup-plan-limit { display: block; }
.signup-plan-features { list-style: none; padding: 1rem 0 0; margin: 1rem 0 1.25rem; border-top: 1px solid var(--falcon-border-color); flex: 1; font-size: .8125rem; }
.signup-plan-features li { position: relative; padding-inline-start: 1.15rem; margin-bottom: .4rem; }
.signup-plan-features li::before { content: "✓"; position: absolute; inset-inline-start: 0; color: var(--falcon-primary); font-weight: 600; }
.signup-plan-action { display: block; width: 100%; margin-top: auto; }
.signup-plan-card.is-selected .signup-plan-action { color: #fff; background: var(--falcon-primary); border-color: var(--falcon-primary); }
.signup-plan-card:has(input:disabled) .signup-plan-action { opacity: .65; }
.signup-checkout-panel .form-control { min-height: 42px; }
.signup-checkout-panel #signup-checkout { min-width: 0; }
@media (max-width: 767.98px) {
  .signup-page { padding-top: 0; }
  .signup-plan-card { padding: 1.25rem; }
  .signup-plan-features { columns: 2; column-gap: 1rem; }
  .signup-plan-features li { break-inside: avoid; }
}
@media (prefers-reduced-motion: reduce) { .signup-plan-card { transition: none; } }
