/* ---------- CHECKOUT (checkout.html) ---------- */
/* Body grid/glow background, tokens, nav, and .btn all come from
   product-page.css — this file only styles what's unique to this page. */

/* product-page.css hides non-CTA nav links under 820px for the marketing
   nav's links row — this page's only nav link *is* the way back, so it
   needs to stay visible. Same selector/breakpoint, later in the cascade. */
@media (max-width:820px){
  .nav-links a:not(.nav-cta){display:inline-block;}
}

.checkout-wrap{
  min-height:calc(100vh - 69px);
  display:flex;align-items:center;justify-content:center;
  padding:56px 20px;
}

.checkout-card{
  width:100%;max-width:440px;
  background:var(--panel);border:1px solid var(--line);border-radius:10px;
  padding:32px 30px;
}

.checkout-order{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid var(--line);
}
.checkout-order-name{font-family:var(--font-display);font-size:17px;font-weight:600;}
.checkout-order-sub{font-family:var(--font-mono);font-size:11.5px;color:var(--text-faint);margin-top:4px;}
.checkout-order-price{font-family:var(--font-display);font-size:22px;font-weight:700;white-space:nowrap;}
.checkout-order-price span{font-size:12px;color:var(--text-faint);font-family:var(--font-mono);font-weight:400;}

.checkout-label{
  display:block;
  font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint);
  text-transform:uppercase;letter-spacing:.07em;
  margin:18px 0 7px;
}
.checkout-label:first-of-type{margin-top:0;}
.checkout-optional{text-transform:none;letter-spacing:0;}

.checkout-input{
  width:100%;
  background:var(--panel-2);border:1px solid var(--line);border-radius:5px;
  padding:11px 12px;
  font-family:var(--font-body);font-size:14px;color:var(--text);
}
.checkout-input::placeholder{color:var(--text-faint);}
.checkout-input:focus-visible{outline:2px solid var(--amber);outline-offset:1px;}

#payment-element{min-height:44px;}

.checkout-error{
  display:none;
  font-family:var(--font-mono);font-size:12.5px;color:var(--red);
  margin-top:14px;line-height:1.5;
}
.checkout-error:not(:empty){display:block;}

.checkout-submit{
  width:100%;justify-content:center;margin-top:22px;
  font-size:14px;padding:14px 22px;
}
.checkout-submit:disabled{opacity:.6;cursor:not-allowed;}

.checkout-fine{
  font-family:var(--font-mono);font-size:11px;color:var(--text-faint);
  text-align:center;margin-top:12px;
}
