/* Botones de compra en cards: en móvil se compactan sin perder identidad visual. */
.card-product .btn.btn-primary.btn-sm.btnAgregar,
.card-product .btn.btn-primary.btn-sm.vistaRapida {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  white-space: nowrap;
}

@media (max-width: 575.98px) {
  .card-product .btn.btn-primary.btn-sm.btnAgregar,
  .card-product .btn.btn-primary.btn-sm.vistaRapida {
    width: 42px;
    height: 42px;
    min-width: 42px;
    padding: 0;
    border-radius: 8px;
    font-size: 0;
    line-height: 1;
    flex: 0 0 42px;
  }

  .card-product .btn.btn-primary.btn-sm.btnAgregar svg,
  .card-product .btn.btn-primary.btn-sm.vistaRapida svg {
    display: none;
  }

  .card-product .btn.btn-primary.btn-sm.btnAgregar::before,
  .card-product .btn.btn-primary.btn-sm.vistaRapida::before {
    content: "";
    width: 22px;
    height: 22px;
    display: block;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='9' cy='20' r='1.7' stroke='white' stroke-width='1.9'/%3E%3Ccircle cx='18' cy='20' r='1.7' stroke='white' stroke-width='1.9'/%3E%3Cpath d='M3.5 4H5.5L7.3 15.2C7.45 16.1 8.25 16.75 9.15 16.75H18.2C19.05 16.75 19.8 16.18 20.02 15.36L21.2 10.9H8.2' stroke='white' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M15 4.5V9.5M12.5 7H17.5' stroke='white' stroke-width='1.9' stroke-linecap='round'/%3E%3C/svg%3E");
  }
}
