/* =====================================================================
   ZeGreen — Animation panier à l'ajout produit (header, shop 2)
   Déclenchée par zg-cart-bump.js via l'évènement PrestaShop updateCart.
   Effet : secousse de l'icône sac + agrandissement du badge quantité.
   PAS d'anneau / ovale.
   ===================================================================== */

@keyframes zg-cart-shake {
  0%, 100% { transform: translateX(0)    rotate(0); }
  12%      { transform: translateX(-4px) rotate(-9deg); }
  26%      { transform: translateX(4px)  rotate(7deg); }
  40%      { transform: translateX(-3px) rotate(-5deg); }
  56%      { transform: translateX(3px)  rotate(4deg); }
  72%      { transform: translateX(-2px) rotate(-2deg); }
  86%      { transform: translateX(1px)  rotate(1deg); }
}

@keyframes zg-qty-pop {
  0%   { transform: scale(1); }
  35%  { transform: scale(1.75); }
  60%  { transform: scale(1.25); }
  100% { transform: scale(1); }
}

.elementor-cart__toggle .elementor-button-icon {
  display: inline-block;
  transform-origin: center;
}

/* Secousse de l'icône sac */
.elementor-cart__toggle .elementor-button-icon.zg-cart-bump i {
  display: inline-block;
  transform-origin: center;
  animation: zg-cart-shake .6s ease-in-out;
}

/* Agrandissement du badge quantité (pseudo Creative Elements :
   ::after en général, ::before en secours — on ne touche qu'à
   l'animation, le positionnement/contenu CE est préservé) */
.elementor-cart__toggle .elementor-button-icon.zg-cart-bump::after,
.elementor-cart__toggle .elementor-button-icon.zg-cart-bump::before {
  transform-origin: center;
  animation: zg-qty-pop .6s cubic-bezier(.34, 1.56, .64, 1);
}

@media (prefers-reduced-motion: reduce) {
  .elementor-cart__toggle .elementor-button-icon.zg-cart-bump i,
  .elementor-cart__toggle .elementor-button-icon.zg-cart-bump::after,
  .elementor-cart__toggle .elementor-button-icon.zg-cart-bump::before {
    animation: none;
  }
}
