.coin-payment-icons { --payment-count: 1; --payment-columns: min(var(--payment-limit, 8), var(--payment-count)); display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 2px; width: 100%; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(2)) { --payment-count: 2; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(3)) { --payment-count: 3; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(4)) { --payment-count: 4; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(5)) { --payment-count: 5; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(6)) { --payment-count: 6; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(7)) { --payment-count: 7; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(8)) { --payment-count: 8; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(9)) { --payment-count: 9; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(10)) { --payment-count: 10; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(11)) { --payment-count: 11; }
.coin-payment-icons:has(> .coin-payment-icon:nth-child(12)) { --payment-count: 12; }
.coin-payment-icons .coin-payment-icon { display: flex; flex: 0 0 calc((100% - (var(--payment-columns) - 1) * 2px) / var(--payment-columns)); min-width: 0; align-items: center; justify-content: center; }
.coin-payment-icons .coin-payment-icon svg { display: block; width: 100%; height: auto; max-height: none; margin: 0; }
.coin-payment-icons:not(:has(> .coin-payment-icon)) { display: none; }

/* Footer rows use available space, independently of the cart row limit. */
:is(.vault-footer, .m-footer) .coin-payment-icons { --footer-payment-width: 32px; width: fit-content; max-width: 100%; margin-inline: 0; justify-content: flex-start; }
:is(.vault-footer, .m-footer) .coin-payment-icons .coin-payment-icon { flex: 0 0 var(--footer-payment-width); }
:is(.vault-footer, .m-footer) .coin-payment-icons .coin-payment-icon svg { width: var(--footer-payment-width); max-width: 100%; }
.vault-footer__payments { min-width: 0; }
@media (min-width: 768px) { :is(.vault-footer, .m-footer) .coin-payment-icons { --footer-payment-width: 38px; } }
@media (min-width: 1024px) { :is(.vault-footer, .m-footer) .coin-payment-icons { --footer-payment-width: 42px; } }
/* Tablet footer: compact icons with every wrapped row aligned to the right. */
@media (min-width: 768px) and (max-width: 1023px), (min-width: 1024px) and (max-width: 1366px) and (any-pointer: coarse) {
  .vault-footer__payments { flex-shrink: 0; margin-left: auto; }
  :is(.vault-footer, .m-footer) .coin-payment-icons { --footer-payment-width: 32px; justify-content: flex-end; margin-left: auto; }
}
