/* Support surface layout authority.
   The support form owns its own responsive geometry instead of inheriting a
   viewport-only collapse rule. Cards remain content-driven, locally adaptive,
   and touch-safe without changing Stripe/readiness/submission behavior. */

body.public-form-surface .support-grid {
  container-type: inline-size;
  container-name: raysor-support-grid;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr));
  gap: clamp(18px, 2.6vw, 30px);
  align-items: start;
  min-inline-size: 0;
}

body.public-form-surface .support-grid > .support-card {
  min-inline-size: 0;
  min-block-size: 0 !important;
  block-size: auto !important;
  align-self: stretch;
}

body.public-form-surface .support-grid :is(.amount-entry, .tier-grid, .field-grid, .field, .turnstile-slot, .form-status) {
  min-inline-size: 0;
  max-inline-size: 100%;
}

body.public-form-surface .support-grid .tier-button,
body.public-form-surface .support-grid .button[type="submit"] {
  min-block-size: var(--form-control-min);
}

body.public-form-surface .notice,
body.public-form-surface .disclosure {
  min-inline-size: 0;
  overflow-wrap: anywhere;
}

@container raysor-support-grid (max-width: 46rem) {
  body.public-form-surface .support-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  body.public-form-surface .support-grid .button[type="submit"] {
    inline-size: 100%;
  }
}

@container raysor-support-grid (max-width: 30rem) {
  body.public-form-surface .support-grid > .support-card {
    padding: 22px !important;
  }

  body.public-form-surface .support-grid .tier-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (pointer: coarse) {
  body.public-form-surface .support-grid :is(.tier-button, .button[type="submit"]) {
    min-block-size: 56px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.public-form-surface .support-grid :is(.support-card, .tier-button, .button[type="submit"]) {
    transform: none !important;
    transition: none !important;
  }
}

@media (prefers-reduced-transparency: reduce) {
  body.public-form-surface .support-grid > .support-card,
  body.public-form-surface :is(.notice, .disclosure) {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background: #08131f !important;
  }
}

@media (forced-colors: active) {
  body.public-form-surface .support-grid > .support-card,
  body.public-form-surface :is(.notice, .disclosure) {
    border-color: CanvasText !important;
    color: CanvasText !important;
    background: Canvas !important;
    box-shadow: none !important;
  }

  body.public-form-surface .support-grid :is(.tier-button, .button[type="submit"]):focus-visible {
    outline: 3px solid Highlight !important;
    outline-offset: 3px;
  }
}
