/* Loader sur les boutons */
.card .swep-loading {
  position: relative;
  pointer-events: none;
  opacity: 0.7;
}

.card .swep-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 24px;
  margin: -12px 0 0 -12px;
  border-radius: 50%;
  background: radial-gradient(farthest-side, var(--cartbtn-color-bg) 94%, #0000) top/4px 4px
      no-repeat,
    conic-gradient(#0000 30%, var(--cartbtn-color-bg));
  -webkit-mask: radial-gradient(farthest-side, #0000 calc(100% - 4px), #000 0);
  mask: radial-gradient(farthest-side, #0000 calc(100% - 4px), #000 0);
  animation: swep-spinner-spin 1s infinite linear;
}

@keyframes swep-spinner-spin {
  100% {
    transform: rotate(1turn);
  }
}

/* Overlay pour bloquer tout le panier pendant le chargement */
.swep-cart-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
}

.swep-cart-overlay .spinner-border {
  width: 3rem;
  height: 3rem;
}
