/* Confirmation stays on the red button: a quick glint and tactile motion. */
.storefront .product-add.is-added,
.storefront .product-add.is-added:hover:not(:disabled) {
  background: #c51b2d;
  border-color: #c51b2d;
  color: #fff;
  box-shadow: 0 7px 22px rgba(197, 27, 45, .24);
}
.storefront .product-add.is-added svg { display: block; width: 18px; height: 18px; }
.storefront .product-add.is-added::before { content: none; }
.product-page .pd-add.is-added,
.product-page .pd-add.is-added:hover:not(:disabled) {
  background: var(--pd-accent, #c51b2d);
  border-color: var(--pd-accent, #c51b2d);
  color: #fff;
  box-shadow: 0 8px 24px rgba(197, 27, 45, .2);
}
.storefront .product-add.cart-success-active,
.product-page .pd-add.cart-success-active {
  position: relative;
  overflow: hidden;
  animation: cart-button-tap .54s cubic-bezier(.2, .8, .25, 1) both;
}
.storefront .product-add.cart-success-active::after,
.product-page .pd-add.cart-success-active::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: -35%;
  bottom: -35%;
  left: -70%;
  width: 45%;
  border-radius: 50%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .13) 25%, rgba(255, 255, 255, .82) 52%, rgba(255, 255, 255, .16) 76%, transparent);
  filter: blur(2px);
  transform: skewX(-24deg);
  pointer-events: none;
  animation: cart-button-glint .76s ease-out both;
}
@keyframes cart-button-tap {
  0%, 100% { transform: translateX(0) scale(1); }
  12% { transform: translateX(-2px) scale(.975); }
  25% { transform: translateX(2px) scale(.99); }
  38% { transform: translateX(-1px) scale(1.025); }
  58% { transform: translateX(0) scale(1.015); }
}
@keyframes cart-button-glint {
  0% { opacity: 0; transform: translateX(0) skewX(-24deg); }
  14% { opacity: 1; }
  100% { opacity: 0; transform: translateX(410%) skewX(-24deg); }
}
.cart-success-flyer {
  position: fixed;
  z-index: 160;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 2px solid rgba(255, 255, 255, .84);
  border-radius: 12px;
  background: linear-gradient(145deg, #ed3452, #b80f2a);
  color: #fff;
  box-shadow: 0 8px 22px rgba(180, 17, 45, .35), 0 0 0 5px rgba(222, 38, 70, .11);
  pointer-events: none;
  will-change: transform, opacity;
}
.cart-success-flyer svg { width: 21px; height: 21px; }
.storefront .header-cart.cart-arrival,
.storefront .mobile-nav-toggle.cart-arrival {
  animation: cart-arrival-pulse .55s cubic-bezier(.2, .8, .25, 1) both;
}
@keyframes cart-arrival-pulse {
  0% { box-shadow: 0 0 0 0 rgba(196, 23, 53, .32); }
  45% { box-shadow: 0 0 0 10px rgba(196, 23, 53, .19); }
  100% { box-shadow: 0 0 0 15px rgba(196, 23, 53, 0); }
}
@media (prefers-reduced-motion: reduce) {
  .storefront .product-add.cart-success-active,
  .product-page .pd-add.cart-success-active,
  .storefront .product-add.cart-success-active::after,
  .product-page .pd-add.cart-success-active::after { animation: none !important; }
  .storefront .product-add.cart-success-active::after,
  .product-page .pd-add.cart-success-active::after { display: none; }
  .cart-success-flyer { display: none; }
  .storefront .header-cart.cart-arrival,
  .storefront .mobile-nav-toggle.cart-arrival { animation: none !important; }
}
