/* WooCommerce "View cart" parity: make .added_to_cart look like our primary button */
.woocommerce a.added_to_cart,
.woocommerce a.button.added_to_cart,
.added_to_cart,
.wbc-btn--view-cart,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce a.button.alt {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  height: 40px;
  padding: 0 16px;
  font: inherit;
  font-weight: 600;
  line-height: 1;
  text-decoration: none !important;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

/* Match primary theme button colors */
.woocommerce a.added_to_cart,
.woocommerce a.button.added_to_cart,
.added_to_cart,
.wbc-btn--view-cart,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce a.button.alt {
  background: var(--wbc-btn-bg, #0c67f2);
  color: var(--wbc-btn-fg, #fff);
}

/* Hover/active states consistent with theme */
.woocommerce a.added_to_cart:hover,
.woocommerce a.button.added_to_cart:hover,
.added_to_cart:hover,
.wbc-btn--view-cart:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce a.button.alt:hover {
  filter: brightness(0.95);
}

/* Remove link defaults that cause size mismatch */
.woocommerce a.added_to_cart,
.woocommerce a.button.added_to_cart,
.added_to_cart,
.wbc-btn--view-cart,
.woocommerce a.button,
.woocommerce a.button.alt {
  box-shadow: none;
  text-shadow: none;
}

/* Ensure within product cards the width/height match primary */
.wbc-card .added_to_cart,
.wbc-card .woocommerce a.button,
.wbc-card .wbc-btn--view-cart {
  height: 40px;
  padding: 0 16px;
}

/* ==================================
   wb-cio — Buttons (CTA component)
   Modern, tactile, accessible
   ================================== */

:root{
  --cta-bg-1: var(--brand-burnt, #E17A30);
  --cta-bg-2: color-mix(in srgb, var(--brand-burnt) 70%, #ff6 30%);
  --cta-text: #fff;
  --cta-ring: color-mix(in srgb, var(--brand-burnt) 25%, #fff 75%);
}

/* Loop + single-product targets */
.wbc-cta,
.woocommerce a.button.add_to_cart_button,
.woocommerce button.button.single_add_to_cart_button,
.woocommerce a.button.product_type_variable,
.woocommerce a.added_to_cart{
  appearance:none;
  position:relative;                /* for spinner */
  display:inline-flex; align-items:center; justify-content:center;
  gap:.5rem;
  width:100%;
  min-height:48px;
  padding:12px 16px;
  border-radius:14px;
  border:0;
  color:var(--cta-text);
  background: linear-gradient(180deg, var(--cta-bg-2), var(--cta-bg-1));
  box-shadow:
    0 8px 22px rgba(0,0,0,.16),
    inset 0 -2px 0 rgba(0,0,0,.12);
  font-weight:800;
  letter-spacing:.2px;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
  text-align:center;
  -webkit-font-smoothing:antialiased;
}

/* Hover/active */
.wbc-cta:hover,
.woocommerce a.button.add_to_cart_button:hover,
.woocommerce button.button.single_add_to_cart_button:hover,
.woocommerce a.button.product_type_variable:hover,
.woocommerce a.added_to_cart:hover{
  transform: translateY(-1px);
  filter: saturate(1.05);
  box-shadow:
    0 10px 26px rgba(0,0,0,.18),
    inset 0 -2px 0 rgba(0,0,0,.10);
}
.wbc-cta:active,
.woocommerce a.button.add_to_cart_button:active,
.woocommerce button.button.single_add_to_cart_button:active,
.woocommerce a.added_to_cart:active{
  transform: translateY(0);
  box-shadow:
    0 6px 18px rgba(0,0,0,.16),
    inset 0 -2px 0 rgba(0,0,0,.18);
}

/* Hidden state after successful add */
.woocommerce a.button.add_to_cart_button.is-hidden{ display:none !important; }
/* Also cover theme CTA variant without .button class */
.add_to_cart_button.is-hidden{ display:none !important; }

/* Focus ring (keyboard) */
.wbc-cta:focus-visible,
.woocommerce a.button.add_to_cart_button:focus-visible,
.woocommerce button.button.single_add_to_cart_button:focus-visible{
  outline: 0;
  box-shadow:
    0 0 0 4px var(--cta-ring),
    0 8px 22px rgba(0,0,0,.16),
    inset 0 -2px 0 rgba(0,0,0,.12);
}

/* Disabled/loading */
.wbc-cta[disabled],
.woocommerce a.button.add_to_cart_button.disabled,
.woocommerce a.button.add_to_cart_button.loading{
  opacity:.7; filter:grayscale(.2); cursor:not-allowed;
}

/* Woo spinner contrast on gradient */
.woocommerce a.button.add_to_cart_button.loading::after{
  /* Woo sets size/animation; we just ensure visibility on our gradient */
  border-color: rgba(255,255,255,.35);
  border-left-color:#fff;
}

/* Optional: minimal ripple (respects reduced motion) */
[data-ripple]{ position:relative; overflow:hidden; }
[data-ripple]::after{
  content:""; position:absolute; inset:0; border-radius:inherit;
  transform: scale(0); opacity:0; background:rgba(255,255,255,.35);
  transition: transform .5s ease, opacity .6s ease;
}
@media (prefers-reduced-motion: reduce){
  [data-ripple]::after{ transition:none }
}
[data-ripple]:active::after{ transform:scale(1); opacity:1; }

/* Use click position when JS sets --ripple-x/--ripple-y */
[data-ripple].is-rippling::after{
  transform-origin: var(--ripple-x, 50%) var(--ripple-y, 50%);
}

/* Make Woo's appended .added_to_cart look identical to the primary CTA */
.woocommerce a.added_to_cart{ text-transform:none; }

/* Ensure View Cart inside product cards looks identical to primary CTA */
.wbc-card .wbc-card__actions .added_to_cart{
  appearance:none;
  position:relative;
  display:inline-flex; align-items:center; justify-content:center;
  gap:.5rem; width:100%;
  min-height:48px; padding:12px 16px !important;
  border-radius:14px !important; border:0 !important;
  color:var(--cta-text) !important;
  background: linear-gradient(180deg, var(--cta-bg-2), var(--cta-bg-1)) !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.16), inset 0 -2px 0 rgba(0,0,0,.12) !important;
  font-weight:800 !important; letter-spacing:.2px;
  font-size:1rem !important; line-height:1.25 !important;
  text-decoration:none !important;
  -webkit-font-smoothing:antialiased;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
  text-align:center; -webkit-font-smoothing:antialiased;
}

/* Global fallback: style Woo's added_to_cart link like the primary CTA when outside cards */
.added_to_cart.wc-forward{
  appearance:none;
  position:relative;
  display:inline-flex; align-items:center; justify-content:center;
  gap:.5rem; width:100%;
  min-height:48px; padding:12px 16px !important;
  border-radius:14px !important; border:0 !important;
  color:var(--cta-text);
  background: linear-gradient(180deg, var(--cta-bg-2), var(--cta-bg-1)) !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.16), inset 0 -2px 0 rgba(0,0,0,.12) !important;
  font-weight:800 !important; letter-spacing:.2px;
  font-size:1rem !important; line-height:1.25 !important;
  text-decoration:none !important;
  box-sizing:border-box; margin:0; align-self:stretch;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
  text-align:center; -webkit-font-smoothing:antialiased;
}
.added_to_cart.wc-forward:hover{
  transform: translateY(-1px);
  filter: saturate(1.05);
  box-shadow: 0 10px 26px rgba(0,0,0,.18), inset 0 -2px 0 rgba(0,0,0,.10);
}
.added_to_cart.wc-forward:active{
  transform: translateY(0);
  box-shadow: 0 6px 18px rgba(0,0,0,.16), inset 0 -2px 0 rgba(0,0,0,.18);
}
.wbc-card .wbc-card__actions .added_to_cart:hover{
  transform: translateY(-1px);
  filter: saturate(1.05);
  box-shadow: 0 10px 26px rgba(0,0,0,.18), inset 0 -2px 0 rgba(0,0,0,.10);
}
.wbc-card .wbc-card__actions .added_to_cart:active{
  transform: translateY(0);
  box-shadow: 0 6px 18px rgba(0,0,0/.16), inset 0 -2px 0 rgba(0,0,0,.18);
}

/* When Woo appends .added_to_cart after the button, ensure tidy stacking */
.wbc-card .wbc-card__actions{
  display:flex; flex-direction:column; gap:8px;
}
.wbc-card .wbc-card__actions .add_to_cart_button{ order:1; }
.wbc-card .wbc-card__actions .added_to_cart{ order:2; }

/* Compact "View cart" to avoid layout jump */
.woocommerce a.added_to_cart{ font-size:.95rem; }


/* Small utility when you need half-width CTA pairs */
.wbc-cta--half{ width:50%; }

/* Dark-mode/seasonal inherit automatically through variables */
