/* Primary storefront buttons are Theme-owned, independent of Playground. */
:root {
  --wtds-theme-primary-button-bg: #000;
  --wtds-theme-primary-button-ink: #fff;
  --wtds-theme-primary-button-hover: #fff;
  --wtds-theme-primary-button-pressed: #000;
}

:root.wapu-theme-dark {
  --wtds-theme-primary-button-bg: #000;
  --wtds-theme-primary-button-ink: #fff;
}

:is(
  .wapu-btn--primary,
  .wapu-icon-button--primary,
  .wapu-cookie-consent__button--primary,
  .wapu-archive-qv__primary,
  body.woocommerce-account:not(.logged-in) .wapu-account .wapu-btn--filled,
  .wapu-account__btn-primary,
  .wapu-coupon__btn,
  .wapu-summary__cta,
  .wapu-cart-totals__checkout .checkout-button,
  .wapu-cart-edit-modal__btn--primary,
  .wapu-cart-preflight-modal__btn--primary,
  .wapu-shared-btn--primary,
  .wapu-shared-copy-btn,
  .wapu-modal-copy-btn,
  .wapu-featured-brand-product__cta,
  .wapu-customer-address-editor__save,
  body.woocommerce-checkout .wapu-checkout-review__place-order #place_order,
  .woocommerce-pay-page #payment button#place_order,
  .woocommerce-pay-page .wapu-order-pay-shell #order_review button#place_order,
  .wapu-footer--tone-light .wapu-footer__newsletter-btn,
  .wapu-footer--tone-cream .wapu-footer__newsletter-btn
):not(:disabled):not([aria-disabled="true"]) {
  --wtds-primary: var(--wtds-theme-primary-button-bg);
  --wtds-primary-ink: var(--wtds-theme-primary-button-ink);
  --wtds-primary-hover: var(--wtds-theme-primary-button-hover);
  --wtds-primary-pressed: var(--wtds-theme-primary-button-pressed);
  --wtds-action: var(--wtds-theme-primary-button-bg);
  --wtds-action-ink: var(--wtds-theme-primary-button-ink);
  --wtds-action-pressed: var(--wtds-theme-primary-button-pressed);
  --wtds-button-standard-primary-bg: var(--wtds-theme-primary-button-bg);
  --wtds-button-standard-primary-ink: var(--wtds-theme-primary-button-ink);
  --wapu-checkout-accent: var(--wtds-theme-primary-button-bg);
  --wapu-checkout-accent-ink: var(--wtds-theme-primary-button-ink);
}

/* Keep a visible one-pixel border in both states without changing button size. */
:is(
  .wapu-btn--primary,
  .wapu-icon-button--primary,
  .wapu-cookie-consent__button--primary,
  .wapu-archive-qv__primary,
  body.woocommerce-account:not(.logged-in) .wapu-account .wapu-btn--filled,
  .wapu-account__btn-primary,
  .wapu-coupon__btn,
  .wapu-summary__cta,
  .wapu-cart-totals__checkout .checkout-button,
  .wapu-cart-edit-modal__btn--primary,
  .wapu-cart-preflight-modal__btn--primary,
  .wapu-shared-btn--primary,
  .wapu-shared-copy-btn,
  .wapu-modal-copy-btn,
  .wapu-featured-brand-product__cta,
  .wapu-customer-address-editor__save,
  body.woocommerce-checkout .wapu-checkout-review__place-order #place_order,
  .woocommerce-pay-page #payment button#place_order,
  .woocommerce-pay-page .wapu-order-pay-shell #order_review button#place_order,
  .wapu-footer--tone-light .wapu-footer__newsletter-btn,
  .wapu-footer--tone-cream .wapu-footer__newsletter-btn
) {
  background: #000;
  border: 1px solid #000;
  color: #fff;
}

:is(
  .wapu-btn--primary,
  .wapu-icon-button--primary,
  .wapu-cookie-consent__button--primary,
  .wapu-archive-qv__primary,
  body.woocommerce-account:not(.logged-in) .wapu-account .wapu-btn--filled,
  .wapu-account__btn-primary,
  .wapu-coupon__btn,
  .wapu-summary__cta,
  .wapu-cart-totals__checkout .checkout-button,
  .wapu-cart-edit-modal__btn--primary,
  .wapu-cart-preflight-modal__btn--primary,
  .wapu-shared-btn--primary,
  .wapu-shared-copy-btn,
  .wapu-modal-copy-btn,
  .wapu-featured-brand-product__cta,
  .wapu-customer-address-editor__save,
  body.woocommerce-checkout .wapu-checkout-review__place-order #place_order,
  .woocommerce-pay-page #payment button#place_order,
  .woocommerce-pay-page .wapu-order-pay-shell #order_review button#place_order,
  .wapu-footer--tone-light .wapu-footer__newsletter-btn,
  .wapu-footer--tone-cream .wapu-footer__newsletter-btn
):hover:not(:disabled):not([aria-disabled="true"]) {
  background: #fff;
  border-color: #000;
  color: #000;
}

.wapu-account__btn-primary:not(:disabled):not([aria-disabled="true"]) {
  color: var(--wtds-theme-primary-button-ink) !important;
}

.wapu-account__btn-primary:hover:not(:disabled):not([aria-disabled="true"]) {
  color: #000 !important;
}

/* Native Woo add-to-cart buttons still need the Theme bridge. */
.wapu-single__type-purchase .single_add_to_cart_button,
.wapu-single__type-purchase .button.alt {
  background: var(--wtds-theme-primary-button-bg);
  border-color: var(--wtds-theme-primary-button-bg);
  border-radius: var(--wtds-button-standard-radius);
  color: var(--wtds-theme-primary-button-ink);
}

.wapu-single__type-purchase .single_add_to_cart_button:hover:not(:disabled),
.wapu-single__type-purchase .button.alt:hover:not(:disabled) {
  background: #fff;
  border-color: var(--wtds-theme-primary-button-bg);
  color: var(--wtds-theme-primary-button-bg);
}
