.checkout-surface { background:#fff; padding:20px; box-shadow:var(--shadow); }
.checkout h4 { font-size:16px; font-weight:700; margin-bottom:12px; }
.checkout hr { margin:20px 0; border:0; border-top:1px solid #e5e7eb; }
.checkout-row { display:flex; gap:16px; justify-content:space-between; margin:8px 0; overflow-wrap:anywhere; }
.checkout-row > span:first-child { color:#62666e; flex-shrink:0; }
.checkout-row > span:last-child { text-align:right; min-width:0; }
.checkout-product { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.checkout-product > div { min-width:0; flex:1; max-width:620px; }
.checkout-status { padding:3px 8px; border:1px solid #d9d9d9; border-radius:4px; white-space:nowrap; font-size:13px; }
.checkout-status-0 { color:#ad6800; background:#fffbe6; border-color:#ffe58f; }
.checkout-status-3,.checkout-status-4 { color:#237804; background:#f6ffed; border-color:#b7eb8f; }
.checkout-columns { display:flex; gap:40px; }
.checkout-methods { flex:1; min-width:0; }
.checkout-method { display:flex; align-items:center; gap:12px; padding:10px 16px; border:1px solid #d9d9d9; border-radius:8px; margin:12px 0; background:#fff; max-width:100%; text-align:left; overflow-wrap:anywhere; }
.checkout-method img { width:40px; height:40px; object-fit:contain; }
.checkout-method.selected { border-color:var(--bg); color:var(--bg); }
.checkout-method:focus-visible { outline:2px solid var(--bg); outline-offset:2px; }
.checkout-summary { flex:1; min-width:0; max-width:500px; }
.checkout-total { display:flex; justify-content:space-between; gap:16px; font-size:20px; margin-top:20px; }
.checkout-actions { border-top:1px solid #e5e7eb; margin-top:24px; padding-top:20px; display:flex; justify-content:flex-end; flex-wrap:wrap; gap:12px; }
.checkout-qr { display:flex; flex-direction:column; align-items:center; gap:16px; }
.checkout-card-input { border:1px solid #d9d9d9; border-radius:4px; padding:14px; margin:20px 0; min-height:48px; }
@media(max-width:640px) {
  .checkout-columns { flex-direction:column; gap:24px; }
  .checkout-surface { padding:16px; }
  .checkout-product { align-items:flex-start; flex-direction:column; gap:12px; }
  .checkout-summary { max-width:none; }
}
