/* ===== BASE CTA ===== */
.single-product .single_add_to_cart_button {
  width: 100%;
  padding: 16px 18px;
  font-size: 16px;
  font-weight: 600;
  border-radius: 14px !important;
  background: linear-gradient(180deg, #7a2a18, #5a1c12);
  color: #fff;
  border: none;
  cursor: pointer;
  position: relative;
  z-index: 2;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.15);
}

/* ===== GUIDED STATE ===== */
.single-product .single_add_to_cart_button.cta-guided {
  background: linear-gradient(180deg, #8a3a28, #6a2a1a);
}

/* ===== ANIMATED GRADIENT BORDER ===== */
.single-product .single_add_to_cart_button.cta-guided::before {
  content: "";
  position: absolute;
  inset: -3px;
  border-radius: 18px;
  background: linear-gradient(
    90deg,
    #d4af37,
    #ffffff,
    #d4af37
  );
  background-size: 400% 400%;
  animation: ctaBorderRoll 4s linear infinite;
  z-index: -1;
}

/* ===== INNER BORDER MASK ===== */
.single-product .single_add_to_cart_button.cta-guided::after {
  content: "";
  position: absolute;
  inset: 2px;
  border-radius: 12px;
  background: inherit;
  z-index: -1;
}

/* ===== READY STATE ===== */
.single-product .single_add_to_cart_button.cta-ready {
  background: linear-gradient(180deg, #5a1c12, #3f130d);
  box-shadow: 0 10px 25px rgba(0,0,0,0.35);
}

.single-product .single_add_to_cart_button.cta-ready::before,
.single-product .single_add_to_cart_button.cta-ready::after {
  display: none;
}

/* ===== ANIMATION ===== */
@keyframes ctaBorderRoll {
  0% { background-position: 0% 50%; }
  100% { background-position: 100% 50%; }
}

