:root {
  --checkout-primary: #174b6e;
  --checkout-accent: #e6a23c;
  --checkout-surface: #fff;
  --checkout-text: #17212b;
}
#payBtn { border: 0; border-radius: 5px; padding: 12px 22px; background: var(--checkout-primary); color: #fff; cursor: pointer; font: inherit; }
#checkoutBtn:hover,
#payBtn:hover { filter: brightness(1.08); }
#checkoutModal[hidden] { display: none !important; }
#checkoutModal { position: fixed; inset: 0; z-index: 10020; display: flex; overflow-y: auto; padding: 20px; background: rgba(12, 24, 40, .82); }
.checkout-dialog { position: relative; width: min(100%, 460px); margin: auto; padding: 32px; border-radius: 8px; background: var(--checkout-surface); color: var(--checkout-text); box-shadow: 0 16px 45px rgba(0,0,0,.3); }
.checkout-dialog h2 { margin: 0 36px 8px 0; color: var(--checkout-primary); }
.checkout-intro { margin: 0 0 24px; }
.checkout-close { position: absolute; top: 10px; right: 16px; border: 0; background: none; color: var(--checkout-text); font-size: 2rem; cursor: pointer; }
.checkout-group { margin: 0 0 16px; }
.checkout-group label { display: block; margin-bottom: 7px; }
.checkout-group input { box-sizing: border-box; width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid #b5c0ca; border-radius: 5px; font: inherit; }
.checkout-card-field { min-height: 48px; border: 1px solid #b5c0ca; border-radius: 5px; background: var(--checkout-surface); }
.checkout-card-field:focus-within { border-color: var(--checkout-primary); }
.checkout-card-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
#payBtn { width: 100%; }
#payBtn:disabled { opacity: .55; cursor: not-allowed; }
#checkoutStatus { min-height: 24px; margin: 14px 0 0; }
#checkoutStatus[data-kind="error"] { color: #b42318; }
#checkoutStatus[data-kind="success"] { color: #217346; }
@media (max-width: 480px) { .checkout-dialog { padding: 22px; } }

:root{--checkout-primary:#221f26;--checkout-accent:#ff7b46;--checkout-text:#221f26}
#checkoutModal{padding:24px;background:#151219d9;overscroll-behavior:contain}
.checkout-dialog{width:min(100%,490px);border-radius:9px;padding:30px;box-shadow:0 25px 90px #0005;font-family:var(--body,Arial,sans-serif);line-height:1.5}
.checkout-dialog h2{font:800 29px/1.2 var(--heading,Arial,sans-serif);letter-spacing:-1px;margin:0 25px 10px 0}
.checkout-kicker{color:#a03812;font-size:11px;font-weight:700;letter-spacing:1.2px;margin:0 0 10px}
.checkout-intro{font-size:14px;color:#66636b;margin:0 0 18px}
.checkout-mode{border:1px solid #efc4ac;background:#fff1e8;color:#8b3816;padding:9px 12px;border-radius:4px;font-size:13px;margin:0 0 18px}
.checkout-group{margin-bottom:13px}.checkout-group label{font-size:13px;font-weight:600;margin-bottom:5px}.checkout-group input{min-height:45px;border-color:#c6bfc9;border-radius:4px;font-size:16px}.checkout-card-field{min-height:46px;border-color:#c6bfc9;border-radius:4px}
.checkout-close{color:#514a57;min-width:44px;min-height:44px;right:12px;top:10px;line-height:1}
#payBtn{background:#ff7b46;color:#221f26;font-size:16px;font-weight:700;min-height:50px;margin-top:5px}
#checkoutStatus{font-size:14px;min-height:21px;margin-top:12px}
.checkout-help{font-size:12px;color:#6d6673;text-align:center;line-height:1.7;margin-top:15px;border-top:1px solid #e2e0e4;padding-top:14px}.checkout-help a{text-decoration:underline;text-underline-offset:3px}
#checkoutRetry{border:1px solid #b9afb9;padding:8px 12px;background:white;border-radius:4px;font-size:14px;margin-top:8px}
@media(max-width:540px){#checkoutModal{padding:12px}.checkout-dialog{padding:24px 22px}.checkout-dialog h2{font-size:26px}.checkout-intro{font-size:13px}.checkout-card-row{gap:12px}}
