body.po-hide-sample-buttons a.wcpt-button-cart_ajax,
body.po-hide-sample-buttons .wcpt-cart-checkbox,
body.po-hide-sample-buttons .wcpt-cart-checkbox-trigger {
  display: none !important;
}

body.po-samples-busy .wcpt-row {
  pointer-events: none !important;
  cursor: progress;
}

body.po-samples-busy .wcpt-row:not(.po-sample-row-adding) {
  opacity: 0.45;
}

body.po-samples-busy .wcpt-row.po-sample-row-adding {
  opacity: 1;
}

body.po-samples-busy a.wcpt-button-cart_ajax {
  pointer-events: none !important;
}

a.wcpt-button-cart_ajax .wcpt-cart-badge-number,
a.wcpt-button-cart_ajax .wcpt-cart-badge-refresh {
  display: none !important;
}

a.wcpt-button-cart_ajax.po-sample-waiting,
a.wcpt-button-cart_ajax.po-sample-adding {
  cursor: progress !important;
}

a.wcpt-button-cart_ajax.po-sample-in-cart {
  background-color: #b42318 !important;
  border-color: #b42318 !important;
  color: #ffffff !important;
}

a.wcpt-button-cart_ajax.po-sample-in-cart:hover,
a.wcpt-button-cart_ajax.po-sample-in-cart:focus-visible {
  background-color: #912018 !important;
  border-color: #912018 !important;
  color: #ffffff !important;
}

a.wcpt-button-cart_ajax.po-sample-other-warehouse,
a.wcpt-button-cart_ajax.po-sample-other-warehouse:hover,
a.wcpt-button-cart_ajax.po-sample-other-warehouse:focus-visible {
  background-color: #6b7b71 !important;
  border-color: #6b7b71 !important;
  color: #ffffff !important;
  cursor: not-allowed !important;
  opacity: 0.85;
}

a.wcpt-button-cart_ajax.po-sample-adding:not(.po-sample-in-cart) {
  background-color: #00793f !important;
  border-color: #00793f !important;
  color: #ffffff !important;
}

a.wcpt-button-cart_ajax.po-sample-in-cart .wcpt-text,
a.wcpt-button-cart_ajax.po-sample-other-warehouse .wcpt-text,
a.wcpt-button-cart_ajax.po-sample-waiting .wcpt-text,
a.wcpt-button-cart_ajax.po-sample-adding .wcpt-text {
  color: #ffffff !important;
}

a.wcpt-button-cart_ajax.po-sample-waiting .wcpt-text::after,
a.wcpt-button-cart_ajax.po-sample-adding .wcpt-text::after {
  content: '...';
  display: inline-block;
  width: 1.15em;
  margin-left: 0.15em;
  text-align: left;
  letter-spacing: 0.04em;
  color: #ffffff !important;
}

a.wcpt-button-cart_ajax.po-sample-waiting .wcpt-text::after {
  opacity: 0.7;
}

a.wcpt-button-cart_ajax.po-sample-adding .wcpt-text::after {
  animation: po-wcpt-sample-dot 1s infinite ease-in-out;
}

@keyframes po-wcpt-sample-dot {
  0%, 80%, 100% {
    opacity: 0.35;
  }
  40% {
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  a.wcpt-button-cart_ajax.po-sample-adding .wcpt-text::after {
    animation: none;
    opacity: 0.85;
  }
}
