/* Extends styles.css + landing.css — shared by cart-checkout.html and
   build-plan.html (2026-08-05: superseded public/checkout.html, which was
   deleted along with per-course checkout). */

.checkout-page {
  max-width: 560px;
  padding-top: 40px;
  padding-bottom: 60px;
}

.checkout-card {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow-md);
  padding: 32px;
}

.checkout-card h1 { margin: 0 0 8px; font-size: 1.3rem; color: var(--navy); }
@media (prefers-color-scheme: dark) { .checkout-card h1 { color: var(--gold-light); } }
.checkout-card .lede { margin: 0 0 20px; color: var(--text-muted); font-size: 0.9rem; }

.checkout-status { color: var(--text-muted); font-size: 0.9rem; }
.checkout-status.error { color: var(--error); }
.checkout-status.success { color: var(--success); }

.test-mode-banner {
  background: rgba(200, 150, 46, 0.12);
  border: 1px solid rgba(200, 150, 46, 0.4);
  color: var(--navy);
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 0.82rem;
  margin-bottom: 20px;
  line-height: 1.4;
}
@media (prefers-color-scheme: dark) { .test-mode-banner { color: var(--gold-light); } }

.amount-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 16px 0;
  border-top: 1px solid var(--border-soft);
  border-bottom: 1px solid var(--border-soft);
  margin-bottom: 20px;
}
.amount-row span:first-child { font-size: 0.88rem; color: var(--text-muted); }
.amount-row .amount { font-size: 1.4rem; font-weight: 800; color: var(--navy); }
@media (prefers-color-scheme: dark) { .amount-row .amount { color: var(--gold-light); } }

.pay-btn { width: 100%; padding: 13px; font-size: 0.95rem; border: none; cursor: pointer; }
.pay-btn:disabled { opacity: 0.6; cursor: not-allowed; }
