/* AJAX Add to Cart Loading States */
.add_to_cart_button.loading {
  opacity: 0.8;
  cursor: not-allowed !important;
  position: relative;
}

.add_to_cart_button.loading .icon-loader {
  display: inline-block !important;
  width: 16px;
  height: 16px;
  border: 2px solid transparent;
  border-top: 2px solid currentColor;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

.add_to_cart_button.loading .button-text,
.add_to_cart_button.loading span:not(.icon-loader),
.add_to_cart_button.loading .text {
  display: none !important;
}

@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.add_to_cart_button.added {
  background-color: #10b981 !important;
  border-color: #10b981 !important;
  color: white !important;
}

.add_to_cart_button.added:hover {
  background-color: #059669 !important;
  border-color: #059669 !important;
}

.add_to_cart_button.added i {
  display: inline-block;
  color: white;
}

.pointer-events-none {
  pointer-events: none;
}

/* Hide "مشاهده سبد خرید" text after successful add */
.add_to_cart_button.added + .added_to_cart,
.add_to_cart_button.added + a.added_to_cart {
  display: none !important;
}

/* Ensure loader shows properly */
.icon-loader {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid transparent;
  border-top: 2px solid currentColor;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

/* WooCommerce specific fixes */
.woocommerce a.added_to_cart {
  display: none !important;
}

.add_to_cart_button.loading .text,
.add_to_cart_button.loading .add-to-cart-text {
  visibility: hidden;
}

/* Mini Cart Dropdown Hover Fix */
.group:hover .mini-cart-dropdown {
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.mini-cart-dropdown:hover {
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Ensure interactive elements work inside dropdown */
.mini-cart-dropdown button,
.mini-cart-dropdown input,
.mini-cart-dropdown a {
  pointer-events: auto !important;
}

/* Bridge element to prevent dropdown closing */
.mini-cart-dropdown::before {
  content: '';
  position: absolute;
  top: -1rem;
  left: 0;
  right: 0;
  height: 1rem;
  background: transparent;
  pointer-events: auto;
}

/* Mobile Cart Loading States */
.loading {
  opacity: 0.8;
  cursor: not-allowed !important;
  pointer-events: none;
}

/* Mobile Cart Spinner */
.mobile-cart-spinner {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  border-top-color: currentColor;
  animation: mobile-cart-spin 0.8s ease-in-out infinite;
}

@keyframes mobile-cart-spin {
  0% { 
    transform: rotate(0deg);
    border-top-color: currentColor;
  }
  50% {
    border-top-color: rgba(255, 255, 255, 0.8);
  }
  100% { 
    transform: rotate(360deg);
    border-top-color: currentColor;
  }
}

/* Ensure mobile cart buttons maintain size during loading */
button.loading {
  min-width: 24px;
  min-height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}