/* R02 checkout: single column on phones, two cards side by side from tablet width. */
.ck-wrap { max-width: 980px; }
.ck-grid { display: grid; grid-template-columns: 1fr; gap: 16px; }
@media (min-width: 760px) { .ck-grid { grid-template-columns: 1.15fr 1fr; align-items: start; } }
.kbm-checkout label { display: block; margin: 10px 0 4px; font-weight: 500; font-size: 14px; }
.kbm-checkout input[type=text], .kbm-checkout input:not([type]), .kbm-checkout input[type=email],
.kbm-checkout input[type=tel] { width: 100%; box-sizing: border-box; padding: 9px 10px; font: inherit;
  border: 1px solid #DBE0DB; border-radius: 6px; background: #fff; }
.ck-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ck-accept { display: flex !important; gap: 8px; align-items: flex-start; font-weight: 400 !important; margin: 14px 0 !important; }
.ck-accept input { margin-top: 3px; }
.ck-paybtn { width: 100%; padding: 12px; font-size: 16px; }
.ck-paybtn[disabled] { opacity: .55; cursor: not-allowed; }
.ck-error { margin-top: 12px; padding: 10px 12px; border-radius: 6px; background: #fdecea; color: #8a1c12; }
.ck-state { margin: 0 0 16px; padding: 14px 16px; border-radius: 8px; border: 1px solid #DBE0DB; background: #fff; }
.ck-state[data-kind=paid] { border-color: #7fb69c; background: #eef7f1; }
.ck-state[data-kind=pending] { border-color: #e2c36b; background: #fff9e8; }
.ck-state[data-kind=failed] { border-color: #e2a39b; background: #fdecea; }
.ck-state h2 { margin: 0 0 6px; font-size: 18px; }
.ck-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; }
.ck-resend { margin-top: 18px; }
.ck-footer { max-width: 980px; margin: 28px auto 36px; padding: 0 16px; font-size: 12px; line-height: 1.7;
  color: #5a6961; text-align: center; }
