.payment-method-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 18px}
.payment-method-tab{border:1.5px solid #d8e3ea;border-radius:12px;background:#fff;padding:14px 12px;font:inherit;color:#263440;cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s}
.payment-method-tab strong{display:block;font-size:15px;margin-bottom:4px}
.payment-method-tab span{font-size:12px;color:#61707c;line-height:1.4}
.payment-method-tab.is-active{border-color:#0877bd;box-shadow:0 0 0 2px rgba(8,119,189,.12)}
.payment-method-tab:focus-visible{outline:3px solid #68c0ff;outline-offset:2px}
.card-checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,260px);gap:20px;align-items:start}
.card-form-column{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.card-form-grid .wide{grid-column:1/-1}
.card-number-row{display:flex;align-items:center;gap:10px;border:1px solid #d8e3ea;border-radius:10px;background:#fff;padding:0 12px;min-height:46px;transition:border-color .15s,box-shadow .15s}
.card-number-row:focus-within{border-color:#0877bd;box-shadow:0 0 0 2px rgba(8,119,189,.1)}
.card-number-row input{flex:1;border:0;background:transparent;padding:11px 0;min-height:44px;font:inherit;color:#263440}
.card-number-row input:focus{outline:none}
.card-brand-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:42px;height:28px}
.card-brand-icon svg{display:block;width:100%;height:auto;max-height:28px}
.card-installments-field{margin-top:2px}
.card-installments-field select{width:100%;min-height:44px;border:1px solid #d8e3ea;border-radius:10px;background:#fff;padding:10px 12px;font:inherit;color:#263440;cursor:pointer;appearance:auto}
.card-installments-field select:focus-visible{outline:3px solid #68c0ff;outline-offset:2px;border-color:#0877bd}
.card-preview{align-self:stretch}
.card-preview-inner{position:relative;aspect-ratio:1.586;border-radius:14px;padding:18px 16px;background:linear-gradient(135deg,#6eb8e8 0%,#3d96d4 55%,#0877bd 100%);box-shadow:0 12px 28px rgba(8,119,189,.22);color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.card-preview-chip{width:38px;height:28px;border-radius:5px;background:linear-gradient(135deg,#e8d48a,#c9a227);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.card-preview-number{margin:14px 0 0;font-size:15px;letter-spacing:2px;font-variant-numeric:tabular-nums;line-height:1.4;word-spacing:4px}
.card-preview-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto;padding-top:10px}
.card-preview-name{font-size:10px;font-weight:700;letter-spacing:.6px;line-height:1.3;max-width:62%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}
.card-preview-expiry{font-size:11px;font-weight:700;letter-spacing:1px;font-variant-numeric:tabular-nums}
.card-preview-brand{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;justify-content:flex-end;width:52px;height:32px}
.card-preview-brand svg{display:block;width:100%;height:auto;max-height:32px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.15))}
.card-pay-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.card-decline-dialog{border:none;border-radius:16px;padding:0;max-width:420px;width:calc(100% - 32px);box-shadow:0 18px 48px rgba(15,35,52,.22)}
.card-decline-dialog::backdrop{background:rgba(15,35,52,.45)}
.card-decline-panel{padding:24px 22px 20px;font-family:Arial,Helvetica,sans-serif;color:#263440}
.card-decline-panel h3{margin:0 0 10px;font-size:22px;line-height:1.25}
.card-decline-panel p{margin:0 0 18px;line-height:1.55;color:#4a5966}
.card-decline-actions{display:flex;gap:10px;flex-wrap:wrap}
.fallback-badge{display:inline-block;background:#e8f5e9;color:#1b5e20;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;margin-left:6px}
@media (max-width:640px){
  .payment-method-tabs,.card-form-column{grid-template-columns:1fr}
  .card-checkout-layout{grid-template-columns:1fr}
  .card-preview{display:none}
}
