/* Site CSS carried over from the Kadence build's "Additional CSS" (Customizer, post 6466), split per area. Edit here now; the Customizer copy is dead once this theme is active. */
/*CR-CARTCO*/
/* ==========================================================================
   CAFE RACER CRAFT E-LIQUID — WooCommerce Block Cart + Checkout dark facelift
   Scoped to cart/checkout only. Plain CSS. Single quotes only.
   Tokens: canvas #0a0a0a, cards #141414/#161616, hairlines #262626/#272727,
   red #c8102e (hover #a50d25), body #cfcfcf, muted #8a9099, silver #c7ccd1,
   money teal #29c2d1, inputs white bg / dark text, headings white uppercase 800.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. PAGE CANVAS — darken Kadence wrappers, drop the decorative hero
   -------------------------------------------------------------------------- */
body.woocommerce-cart, 
body.woocommerce-checkout {
  background: #0a0a0a;
  color: #cfcfcf;
}

body.woocommerce-cart #inner-wrap, 
body.woocommerce-checkout #inner-wrap, 
body.woocommerce-cart .content-bg, 
body.woocommerce-checkout .content-bg, 
body.woocommerce-cart .content-container, 
body.woocommerce-checkout .content-container, 
body.woocommerce-cart .entry-content-wrap, 
body.woocommerce-checkout .entry-content-wrap, 
body.woocommerce-cart .site-main, 
body.woocommerce-checkout .site-main, 
body.woocommerce-cart .entry-content, 
body.woocommerce-checkout .entry-content {
  background: #0a0a0a !important;
  box-shadow: none !important;
}

/* Hide ONLY the decorative Kadence hero/title band + breadcrumbs on these pages */
body.woocommerce-cart .entry-hero, 
body.woocommerce-checkout .entry-hero, 
body.woocommerce-cart .entry-hero-container-inner, 
body.woocommerce-checkout .entry-hero-container-inner, 
body.woocommerce-cart .kadence-breadcrumbs, 
body.woocommerce-checkout .kadence-breadcrumbs {
  display: none !important;
}

/* Base text colour + kill inherited rounded corners across the blocks */
.wp-block-woocommerce-cart, 
.wp-block-woocommerce-checkout, 
.wc-block-cart, 
.wc-block-checkout {
  color: #cfcfcf;
  background: transparent !important;
}

.wp-block-woocommerce-cart *, 
.wp-block-woocommerce-checkout *, 
.wc-block-cart *, 
.wc-block-checkout * {
  border-radius: 0 !important;
}

/* --------------------------------------------------------------------------
   2. HEADINGS — white, uppercase, heavy, with short red underline accent
   -------------------------------------------------------------------------- */
.wp-block-woocommerce-cart h1, 
.wp-block-woocommerce-cart h2, 
.wp-block-woocommerce-cart h3, 
.wp-block-woocommerce-checkout h1, 
.wp-block-woocommerce-checkout h2, 
.wp-block-woocommerce-checkout h3, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-title, 
.wc-block-cart__totals-title, 
.wc-block-cart__empty-cart__title, body.woocommerce-cart .wc-block-components-checkout-step__title, body.woocommerce-checkout .wc-block-components-checkout-step__title{
  color: #ffffff !important;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 1px;
  line-height: 1.15;
}

/* Totals + step titles get the signature short red underline */
.wc-block-cart__totals-title, body.woocommerce-cart .wc-block-components-checkout-step__title, body.woocommerce-checkout .wc-block-components-checkout-step__title{
  position: relative;
  display: inline-block;
  padding-bottom: 10px;
  margin-bottom: 4px;
}

.wc-block-cart__totals-title::after, body.woocommerce-cart .wc-block-components-checkout-step__title::after, body.woocommerce-checkout .wc-block-components-checkout-step__title::after{
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 44px;
  height: 3px;
  background: #c8102e;
}

body.woocommerce-cart .wc-block-components-checkout-step__description, body.woocommerce-checkout .wc-block-components-checkout-step__description{
  color: #8a9099 !important;
  margin-top: 6px;
  line-height: 1.5;
}

/* --------------------------------------------------------------------------
   3. LAYOUT — main / sidebar cards
   -------------------------------------------------------------------------- */
.wc-block-cart__main, 
.wc-block-checkout__main, 
.wc-block-checkout__form {
  padding-right: 32px;
  background: transparent !important;
  color: #cfcfcf !important;
}

.wc-block-cart__sidebar,
.wc-block-cart__totals,
.wc-block-checkout__sidebar {
  background: #141414 !important;
  border: 1px solid #262626 !important;
  padding: 34px 32px 40px !important;
  color: #cfcfcf !important;
}

/* Sidebar sticky totals panel */
.wc-block-cart__sidebar .wc-block-components-sidebar, 
.wc-block-checkout__sidebar .wc-block-components-sidebar, 
.wc-block-cart .wc-block-components-sidebar-layout {
  background: transparent !important;
}

/* --------------------------------------------------------------------------
   4. CART ITEMS TABLE
   -------------------------------------------------------------------------- */
.wc-block-cart-items, 
table.wc-block-cart-items, 
.wc-block-cart-items__header, 
.wc-block-cart-items__row, 
.wc-block-cart-item {
  background: transparent !important;
  color: #cfcfcf;
  border: 0;
}

.wc-block-cart-items__header, 
.wc-block-cart-items__header th, 
.wc-block-cart-items__header-image, 
.wc-block-cart-items__header-product, 
.wc-block-cart-items__header-total {
  color: #8a9099 !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
  font-size: 0.72rem;
  border-bottom: 1px solid #272727 !important;
}

.wc-block-cart-items__row, 
.wc-block-cart-item {
  border-bottom: 1px solid #1c1c1c !important;
}

.wc-block-cart-items__row td, 
.wc-block-cart-item td {
  border-top: none !important;
  padding-top: 22px;
  padding-bottom: 22px;
}

.wc-block-cart-item__image {
  background: #161616 !important;
  border: 1px solid #262626 !important;
}

.wc-block-cart-item__image img {
  border: 1px solid #262626;
  background: #161616;
  border-radius: 0 !important;
}

.wc-block-cart-item__product, body.woocommerce-cart .wc-block-components-product-name, body.woocommerce-checkout .wc-block-components-product-name{
  color: #ffffff !important;
}

body.woocommerce-cart .wc-block-components-product-name, body.woocommerce-checkout .wc-block-components-product-name{
  font-weight: 700;
  letter-spacing: 0.3px;
  text-decoration: none;
}

body.woocommerce-cart a.wc-block-components-product-name:hover, body.woocommerce-checkout a.wc-block-components-product-name:hover, body.woocommerce-cart .wc-block-components-product-name:hover, body.woocommerce-checkout .wc-block-components-product-name:hover{
  color: #c8102e !important;
}

body.woocommerce-cart .wc-block-components-product-metadata, body.woocommerce-checkout .wc-block-components-product-metadata, body.woocommerce-cart .wc-block-components-product-metadata__description, body.woocommerce-checkout .wc-block-components-product-metadata__description, 
.wc-block-cart-item__product .wc-block-components-product-details, body.woocommerce-cart .wc-block-components-product-details, body.woocommerce-checkout .wc-block-components-product-details, body.woocommerce-cart .wc-block-components-product-details li, body.woocommerce-checkout .wc-block-components-product-details li, body.woocommerce-cart .wc-block-components-product-details__value, body.woocommerce-checkout .wc-block-components-product-details__value, body.woocommerce-cart .wc-block-components-product-details__name, body.woocommerce-checkout .wc-block-components-product-details__name{
  color: #8a9099 !important;
  font-size: 0.85rem;
}

body.woocommerce-cart .wc-block-components-product-metadata .wc-block-components-product-metadata__variation-value, body.woocommerce-checkout .wc-block-components-product-metadata .wc-block-components-product-metadata__variation-value{
  color: #c7ccd1 !important;
}

/* Sale/backorder/low-stock badges */
body.woocommerce-cart .wc-block-components-product-badge, body.woocommerce-checkout .wc-block-components-product-badge{
  background: #161616 !important;
  color: #c7ccd1 !important;
  border: 1px solid #333333 !important;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  font-weight: 700;
  font-size: 0.68rem;
  padding: 3px 8px;
}

/* Remove-item link — muted, turns red on hover (never hidden) */
.wc-block-cart-item__remove-link {
  color: #8a9099 !important;
  background: transparent !important;
  text-decoration: underline;
  text-underline-offset: 2px;
  font-size: 0.78rem;
  letter-spacing: 0.4px;
  transition: color 0.15s ease;
}

.wc-block-cart-item__remove-link:hover {
  color: #c8102e !important;
}

/* --------------------------------------------------------------------------
   5. PRICES — teal money across cart + checkout
   -------------------------------------------------------------------------- */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-product-price, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-product-price__value, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-cart-item__total, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-cart-item__total-price-and-sale-badge-wrapper, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-components-product-price__value, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-order-summary-item__total-price, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-formatted-money-amount {
  color: #29c2d1 !important;
  font-weight: 700;
}

/* Struck-through regular price when on sale reads muted, not teal */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-product-price__regular {
  color: #8a9099 !important;
  text-decoration: line-through;
  font-weight: 400;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-sale-badge {
  background: #c8102e !important;
  color: #ffffff !important;
  border: 0 !important;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 0.6px;
  font-size: 0.66rem;
  padding: 3px 8px;
}

/* --------------------------------------------------------------------------
   6. QUANTITY SELECTOR — white stepper, dark digits, red hover
   -------------------------------------------------------------------------- */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-quantity-selector {
  background: #ffffff !important;
  border: 1px solid #333333 !important;
  max-width: 108px;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-quantity-selector__input {
  background: #ffffff !important;
  color: #111111 !important;
  border: 0 !important;
  font-weight: 700;
  -webkit-text-fill-color: #111111;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-quantity-selector__button {
  color: #111111 !important;
  background: #ffffff !important;
  border: none !important;
  font-weight: 800;
  transition: background 0.15s ease, color 0.15s ease;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-quantity-selector__button:hover:not(:disabled) {
  background: #c8102e !important;
  color: #ffffff !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-quantity-selector__button:disabled {
  color: #b8b8b8 !important;
  opacity: 0.5;
}

/* --------------------------------------------------------------------------
   7. TOTALS BLOCK (shared cart + checkout)
   -------------------------------------------------------------------------- */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-item {
  color: #cfcfcf !important;
  background: transparent !important;
  padding: 12px 17px;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-item__label {
  color: #c7ccd1 !important;
  letter-spacing: 0.3px;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-item__value, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-item .wc-block-components-formatted-money-amount {
  color: #29c2d1 !important;
  font-weight: 700;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-item__description {
  color: #8a9099 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-footer-item {
  border-top: 1px solid #272727 !important;
  color: #ffffff !important;
  margin-top: 10px;
  padding-top: 20px;
  padding-bottom: 4px;
}
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  border-top: 0 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  color: #ffffff !important;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 0.6px;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-footer-item .wc-block-components-totals-item__value, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-footer-item .wc-block-components-formatted-money-amount {
  color: #29c2d1 !important;
  font-size: 1.35rem;
  font-weight: 800;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-footer-item__tax-value, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-footer-item__tax, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-footer-item .wc-block-components-totals-item__description {
  color: #8a9099 !important;
  font-size: 0.78rem;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}

/* --------------------------------------------------------------------------
   8. COUPON — panel + white input + apply button + applied-coupon chips
   -------------------------------------------------------------------------- */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon {
  border-top: 1px solid #272727 !important;
  padding-top: 14px;
  padding-bottom: 6px;
  background: transparent !important;
  color: #cfcfcf !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-panel, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon .wc-block-components-panel {
  border-top: 1px solid #272727 !important;
  background: transparent !important;
  color: #cfcfcf !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-panel__button,
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon__button,
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-panel__button.wc-block-components-totals-coupon__toggle,
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon-link {
  color: #c7ccd1 !important;
  background: transparent !important;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  font-size: 0.82rem;
  padding: 8px 0 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-panel__button:hover, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon__button:hover {
  color: #c8102e !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-panel__button svg, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-panel__button-icon {
  fill: currentColor !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-panel__content {
  color: #cfcfcf;
  background: transparent !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon__form {
  gap: 10px;
  background: transparent !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon__input input, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon__input .wc-block-components-text-input input {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid #333333 !important;
  -webkit-text-fill-color: #111111;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon__input label {
  color: #595f66 !important;
}

/* Coupon apply button reads as a compact contained-red action */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon__button.contained, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon .wc-block-components-button.contained {
  background: #c8102e !important;
  color: #ffffff !important;
  border: none !important;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 0.6px;
  min-height: 48px;
  padding: 0 20px !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon__button.contained:hover, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-coupon .wc-block-components-button.contained:hover {
  background: #a50d25 !important;
}

/* Applied-coupon / discount chips */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-discount__coupon-list-item, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-chip, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-tag {
  background: #141414 !important;
  border: 1px solid #c8102e !important;
  color: #ffffff !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-chip__text {
  color: #ffffff !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-chip__remove {
  color: #ffffff !important;
  fill: #ffffff !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-discount__coupon-list-item .wc-block-components-formatted-money-amount {
  color: #29c2d1 !important;
}

/* --------------------------------------------------------------------------
   9. BUTTONS
   Primary CTAs (Proceed to Checkout / Place Order / contained) = solid red.
   -------------------------------------------------------------------------- */
.wc-block-cart__submit-button, 
.wc-block-cart .wc-block-components-button.contained, 
.wc-block-checkout .wc-block-components-button.contained, body.woocommerce-cart .wc-block-components-checkout-place-order-button, body.woocommerce-checkout .wc-block-components-checkout-place-order-button, body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-components-button.contained, body.woocommerce-checkout .wp-block-woocommerce-empty-cart-block .wc-block-components-button.contained{
  background: #c8102e !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: none !important;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 1px;
  padding: 18px 30px !important;
  min-height: 56px;
  line-height: 1.1;
  transition: background 0.15s ease, transform 0.05s ease;
}

.wc-block-cart__submit-button:hover, 
.wc-block-cart .wc-block-components-button.contained:hover, 
.wc-block-checkout .wc-block-components-button.contained:hover, body.woocommerce-cart .wc-block-components-checkout-place-order-button:hover, body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover, body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-components-button.contained:hover, body.woocommerce-checkout .wp-block-woocommerce-empty-cart-block .wc-block-components-button.contained:hover{
  background: #a50d25 !important;
  color: #ffffff !important;
}

.wc-block-cart__submit-button:active, body.woocommerce-cart .wc-block-components-checkout-place-order-button:active, body.woocommerce-checkout .wc-block-components-checkout-place-order-button:active{
  transform: translateY(1px);
}

.wc-block-cart__submit-button:focus-visible, body.woocommerce-cart .wc-block-components-checkout-place-order-button:focus-visible, body.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus-visible, 
.wc-block-cart .wc-block-components-button.contained:focus-visible, 
.wc-block-checkout .wc-block-components-button.contained:focus-visible {
  outline: 2px solid #29c2d1 !important;
  outline-offset: 2px;
}

.wc-block-cart__submit, 
.wc-block-cart__submit-container {
  margin-top: 8px;
  background: transparent !important;
}

.wc-block-cart__submit-button {
  display: block;
  width: 100%;
  text-align: center;
}

/* Fill the primary CTA button text/label colour on child spans */
body.woocommerce-cart .wc-block-components-checkout-place-order-button .wc-block-components-button__text, body.woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text, 
.wc-block-cart__submit-button .wc-block-components-button__text {
  color: #ffffff !important;
}

/* Outlined buttons — ghost with red hover fill */
.wc-block-cart .wc-block-components-button.outlined, 
.wc-block-checkout .wc-block-components-button.outlined {
  background: transparent !important;
  color: #c7ccd1 !important;
  border: 1px solid #333333 !important;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.8px;
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.wc-block-cart .wc-block-components-button.outlined:hover, 
.wc-block-checkout .wc-block-components-button.outlined:hover {
  background: #c8102e !important;
  border-color: #c8102e !important;
  color: #ffffff !important;
}

/* Text buttons + return-to-cart link */
.wc-block-cart .wc-block-components-button.text, 
.wc-block-checkout .wc-block-components-button.text, body.woocommerce-cart .wc-block-components-checkout-return-to-cart-button, body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button{
  background: transparent !important;
  color: #8a9099 !important;
  border: none !important;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  font-weight: 700;
  font-size: 0.82rem;
}

.wc-block-cart .wc-block-components-button.text:hover, 
.wc-block-checkout .wc-block-components-button.text:hover, body.woocommerce-cart .wc-block-components-checkout-return-to-cart-button:hover, body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button:hover{
  color: #c8102e !important;
}

/* --------------------------------------------------------------------------
   10. EMPTY CART
   -------------------------------------------------------------------------- */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block, body.woocommerce-checkout .wp-block-woocommerce-empty-cart-block, 
.wc-block-cart__empty-cart {
  background: #141414 !important;
  border: 1px solid #262626 !important;
  color: #cfcfcf !important;
  padding: 32px !important;
}

.wc-block-cart__empty-cart__title {
  color: #cfcfcf !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-components-product-list, body.woocommerce-checkout .wp-block-woocommerce-empty-cart-block .wc-block-components-product-list, body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title, body.woocommerce-checkout .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title, body.woocommerce-cart .wp-block-woocommerce-empty-cart-block p, body.woocommerce-checkout .wp-block-woocommerce-empty-cart-block p{
  color: #c7ccd1 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block a, body.woocommerce-checkout .wp-block-woocommerce-empty-cart-block a{
  color: #29c2d1 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-heading, body.woocommerce-checkout .wp-block-woocommerce-empty-cart-block .wp-block-heading, body.woocommerce-cart .wp-block-woocommerce-empty-cart-block h2, body.woocommerce-checkout .wp-block-woocommerce-empty-cart-block h2{
  color: #ffffff !important;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 1px;
}

/* --------------------------------------------------------------------------
   11. CHECKOUT STEPS + numbered circle
   -------------------------------------------------------------------------- */
.wc-block-checkout__form .wc-block-components-checkout-step, body.woocommerce-cart .wc-block-components-checkout-step, body.woocommerce-checkout .wc-block-components-checkout-step{
  background: #141414 !important;
  border: 1px solid #262626 !important;
  padding: 26px 26px 22px !important;
  margin-bottom: 22px !important;
  color: #cfcfcf !important;
}

body.woocommerce-cart .wc-block-components-checkout-step__heading, body.woocommerce-checkout .wc-block-components-checkout-step__heading{
  margin-bottom: 4px;
}

body.woocommerce-cart .wc-block-components-checkout-step__heading-content, body.woocommerce-checkout .wc-block-components-checkout-step__heading-content{
  color: #8a9099 !important;
}

body.woocommerce-cart .wc-block-components-checkout-step__heading-content a, body.woocommerce-checkout .wc-block-components-checkout-step__heading-content a, body.woocommerce-cart .wc-block-components-checkout-step__heading-content button, body.woocommerce-checkout .wc-block-components-checkout-step__heading-content button{
  color: #29c2d1 !important;
}

body.woocommerce-cart .wc-block-components-checkout-step__content, body.woocommerce-checkout .wc-block-components-checkout-step__content{
  color: #cfcfcf;
  padding-top: 8px;
}

/* Numbered step circle — solid red with white number (kept round by design) */
body.woocommerce-cart .wc-block-components-checkout-step__heading-count, body.woocommerce-checkout .wc-block-components-checkout-step__heading-count{
  background: #c8102e !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  border: none !important;
  border-radius: 50% !important;
  width: 30px;
  height: 30px;
  line-height: 30px;
}

/* Some builds render the count via ::before content — cover the fallback */
body.woocommerce-cart .wc-block-components-checkout-step__heading-count::before, body.woocommerce-checkout .wc-block-components-checkout-step__heading-count::before{
  color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   12. FORM FIELDS — white inputs, dark text (matches site contact forms)
   -------------------------------------------------------------------------- */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input input, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input input[type='text'], 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input input[type='email'], 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input input[type='tel'], 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input input[type='number'], 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input input[type='password'], 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-textarea, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-textarea textarea, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-select__select, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-select select, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox-control input, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox input.components-combobox-control__input, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-address-form input, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-address-form .wc-block-components-select__select, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-form input.wc-block-components-text-input__input {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid #333333 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  -webkit-text-fill-color: #111111;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-select, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox {
  background: transparent !important;
}

/* Explicit placeholder colour on the white inputs for a safe AA margin */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input input::placeholder, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-textarea textarea::placeholder, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-address-form input::placeholder {
  color: #595f66 !important;
  opacity: 1;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input input:focus, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-textarea:focus, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-textarea textarea:focus, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-select__select:focus, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-select select:focus, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox-control input:focus, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-address-form input:focus {
  border-color: #c8102e !important;
  box-shadow: 0 0 0 2px rgba(200, 16, 46, 0.28) !important;
  outline: none !important;
}

/* Floating labels sit inside white inputs — must be dark for legibility */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input label, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox label, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-select label, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-textarea + label, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkout-step__content label {
  color: #595f66 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input.is-active label, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox.is-active label, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-select.is-active label, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-text-input input:focus + label {
  color: #a50d25 !important;
}

/* Section-level field labels that sit ON the dark canvas stay light */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkout-step__content > .wc-block-components-text-input:first-child, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-address-form legend, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkout-step legend {
  color: #c7ccd1 !important;
}

/* Combobox / select dropdown chrome */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox-control, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-select__container {
  background: #ffffff !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox__list, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox-control__list, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .components-form-token-field__suggestions-list {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid #333333 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox__list-option, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox .components-form-token-field__suggestion {
  color: #111111 !important;
  background: #ffffff !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox__list-option.is-highlighted, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox__list-option:hover, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .components-form-token-field__suggestion.is-selected {
  background: #c8102e !important;
  color: #ffffff !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-select__select option {
  background: #ffffff !important;
  color: #111111 !important;
}

/* Select caret / combobox icons dark so they show on the white field */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-select .wc-block-components-select__expand, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-combobox-control svg {
  fill: #111111 !important;
}

/* --------------------------------------------------------------------------
   13. SAVED ADDRESS CARD
   -------------------------------------------------------------------------- */
body.woocommerce-cart .wc-block-components-address-form, body.woocommerce-checkout .wc-block-components-address-form{
  background: transparent !important;
  color: #cfcfcf !important;
}

body.woocommerce-cart .wc-block-components-address-card, body.woocommerce-checkout .wc-block-components-address-card{
  background: #161616 !important;
  border: 1px solid #262626 !important;
  color: #cfcfcf !important;
  padding: 18px 20px;
}

body.woocommerce-cart .wc-block-components-address-card address, body.woocommerce-checkout .wc-block-components-address-card address, body.woocommerce-cart .wc-block-components-address-card span, body.woocommerce-checkout .wc-block-components-address-card span{
  color: #cfcfcf !important;
}

body.woocommerce-cart .wc-block-components-address-card__edit, body.woocommerce-checkout .wc-block-components-address-card__edit{
  color: #29c2d1 !important;
  background: transparent !important;
  border: 0 !important;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  font-weight: 700;
  font-size: 0.78rem;
}

body.woocommerce-cart .wc-block-components-address-card__edit:hover, body.woocommerce-checkout .wc-block-components-address-card__edit:hover{
  color: #c8102e !important;
}

/* --------------------------------------------------------------------------
   14. CHECKBOXES
   -------------------------------------------------------------------------- */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkbox, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkbox__label {
  color: #cfcfcf !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkbox__input, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkbox input[type='checkbox'] {
  background: #ffffff !important;
  border: 1px solid #333333 !important;
  width: 18px;
  height: 18px;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkbox__input:checked, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkbox input[type='checkbox']:checked {
  background: #c8102e !important;
  border-color: #c8102e !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkbox__mark {
  fill: #ffffff !important;
  color: #ffffff !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-checkbox__input:focus-visible {
  outline: 2px solid #29c2d1 !important;
  outline-offset: 2px;
}

/* --------------------------------------------------------------------------
   15. RADIO CONTROLS (shipping + payment method rows)
   -------------------------------------------------------------------------- */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control {
  color: #cfcfcf !important;
  background: transparent !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__option {
  border: 1px solid #262626 !important;
  border-bottom: none !important;
  padding: 16px 16px 16px 44px !important;
  background: #161616 !important;
  color: #cfcfcf !important;
  transition: background 0.15s ease, border-color 0.15s ease;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__option:last-child {
  border-bottom: 1px solid #262626 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__option:hover {
  background: #1b1b1b !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__option-checked, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__option.wc-block-components-radio-control__option-checked, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control__option-checked {
  background: #1c1416 !important;
  border-color: #c8102e !important;
  border-bottom: 1px solid #c8102e !important;
  box-shadow: inset 3px 0 0 #c8102e;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__label {
  color: #ffffff !important;
  font-weight: 600;
  letter-spacing: 0.3px;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__description, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__secondary-description {
  color: #8a9099 !important;
  font-size: 0.85rem;
}

/* Radio dial — keep the colours AND restore roundness (universal reset squares it) */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__input {
  border: 1px solid #555555 !important;
  background: #ffffff !important;
  border-radius: 50% !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__input:checked {
  border-color: #c8102e !important;
  background: #ffffff !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__input:checked::after, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__input:checked::before {
  background: #c8102e !important;
  border-radius: 50% !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__input:focus-visible {
  outline: 2px solid #29c2d1 !important;
  outline-offset: 2px;
}

/* Prices shown inside rate rows read teal */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__option .wc-block-components-formatted-money-amount, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-radio-control__label .wc-block-components-formatted-money-amount, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-shipping-rates-control .wc-block-components-formatted-money-amount {
  color: #29c2d1 !important;
  font-weight: 700;
}

/* --------------------------------------------------------------------------
   16. SHIPPING RATES + PAYMENT METHODS
   -------------------------------------------------------------------------- */
body.woocommerce-cart .wc-block-components-shipping-rates-control, body.woocommerce-checkout .wc-block-components-shipping-rates-control, 
.wc-block-checkout__payment-method, body.woocommerce-cart .wc-block-components-payment-methods, body.woocommerce-checkout .wc-block-components-payment-methods, body.woocommerce-cart .wc-block-components-shipping-rates-control__package, body.woocommerce-checkout .wc-block-components-shipping-rates-control__package{
  color: #cfcfcf !important;
  background: transparent !important;
}

body.woocommerce-cart .wc-block-components-shipping-rates-control__package, body.woocommerce-checkout .wc-block-components-shipping-rates-control__package{
  background: #161616 !important;
  border: 1px solid #262626 !important;
  padding: 14px 16px;
  margin-bottom: 12px;
}

body.woocommerce-cart .wc-block-components-shipping-rates-control__package-title, body.woocommerce-checkout .wc-block-components-shipping-rates-control__package-title{
  color: #ffffff !important;
  font-weight: 700;
}

body.woocommerce-cart .wc-block-components-shipping-rates-control__no-results, body.woocommerce-checkout .wc-block-components-shipping-rates-control__no-results{
  color: #c7ccd1 !important;
}

body.woocommerce-cart .wc-block-components-totals-shipping__via, body.woocommerce-checkout .wc-block-components-totals-shipping__via, body.woocommerce-cart .wc-block-components-shipping-address, body.woocommerce-checkout .wc-block-components-shipping-address{
  color: #8a9099 !important;
}

body.woocommerce-cart .wc-block-components-shipping-calculator, body.woocommerce-checkout .wc-block-components-shipping-calculator{
  color: #cfcfcf !important;
}

body.woocommerce-cart .wc-block-components-shipping-calculator-address .wc-block-components-button.link, body.woocommerce-checkout .wc-block-components-shipping-calculator-address .wc-block-components-button.link, body.woocommerce-cart .wc-block-components-totals-shipping .wc-block-components-shipping-address__link, body.woocommerce-checkout .wc-block-components-totals-shipping .wc-block-components-shipping-address__link{
  color: #29c2d1 !important;
}

body.woocommerce-cart .wc-block-components-payment-method-label, body.woocommerce-checkout .wc-block-components-payment-method-label{
  color: #ffffff !important;
  font-weight: 600;
}

body.woocommerce-cart .wc-block-components-payment-method-icons, body.woocommerce-checkout .wc-block-components-payment-method-icons{
  opacity: 1 !important;
}

body.woocommerce-cart .wc-block-components-payment-method-icons img, body.woocommerce-checkout .wc-block-components-payment-method-icons img, body.woocommerce-cart .wc-block-components-payment-method-icon, body.woocommerce-checkout .wc-block-components-payment-method-icon{
  filter: none;
  background: #ffffff !important;
  border-radius: 0 !important;
  padding: 1px 3px;
}

/* Payment method saved-token / description rows */
.wc-block-checkout__payment-method .wc-block-components-radio-control__option {
  background: #161616 !important;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control__option-checked {
  background: #1c1416 !important;
}

/* Hosted credit card fields keep white bg for legibility */
body.woocommerce-cart .wc-block-card-elements, body.woocommerce-checkout .wc-block-card-elements, body.woocommerce-cart .wc-block-components-credit-card-form input, body.woocommerce-checkout .wc-block-components-credit-card-form input, 
.wp-block-woocommerce-checkout-payment-block input {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid #333333 !important;
}

/* --------------------------------------------------------------------------
   17. EXPRESS PAYMENT AREA + divider
   -------------------------------------------------------------------------- */
body.woocommerce-cart .wc-block-components-express-payment, body.woocommerce-checkout .wc-block-components-express-payment, body.woocommerce-cart .wc-block-components-express-payment--checkout, body.woocommerce-checkout .wc-block-components-express-payment--checkout, body.woocommerce-cart .wc-block-components-express-payment__content, body.woocommerce-checkout .wc-block-components-express-payment__content{
  background: transparent !important;
  color: #cfcfcf !important;
}

body.woocommerce-cart .wc-block-components-express-payment__title-and-divider, body.woocommerce-checkout .wc-block-components-express-payment__title-and-divider, body.woocommerce-cart .wc-block-components-express-payment__event-buttons + .wc-block-components-express-payment__title-and-divider, body.woocommerce-checkout .wc-block-components-express-payment__event-buttons + .wc-block-components-express-payment__title-and-divider{
  color: #8a9099 !important;
}

body.woocommerce-cart .wc-block-components-express-payment__title-and-divider span, body.woocommerce-checkout .wc-block-components-express-payment__title-and-divider span{
  color: #8a9099 !important;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  font-size: 0.78rem;
  font-weight: 700;
}

body.woocommerce-cart .wc-block-components-express-payment__title-and-divider::before, body.woocommerce-checkout .wc-block-components-express-payment__title-and-divider::before, body.woocommerce-cart .wc-block-components-express-payment__title-and-divider::after, body.woocommerce-checkout .wc-block-components-express-payment__title-and-divider::after{
  border-color: #272727 !important;
  background: #272727 !important;
}

body.woocommerce-cart .wc-block-components-express-payment__event-buttons, body.woocommerce-checkout .wc-block-components-express-payment__event-buttons{
  gap: 10px;
}

body.woocommerce-cart .wc-block-components-express-payment__event-buttons > li, body.woocommerce-checkout .wc-block-components-express-payment__event-buttons > li{
  border-radius: 0 !important;
}

/* --------------------------------------------------------------------------
   18. ORDER SUMMARY (checkout sidebar line items)
   -------------------------------------------------------------------------- */
body.woocommerce-cart .wc-block-components-order-summary, body.woocommerce-checkout .wc-block-components-order-summary, body.woocommerce-cart .wc-block-components-order-summary__content, body.woocommerce-checkout .wc-block-components-order-summary__content{
  color: #cfcfcf !important;
  background: transparent !important;
}

body.woocommerce-cart .wc-block-components-order-summary__button-text, body.woocommerce-checkout .wc-block-components-order-summary__button-text, body.woocommerce-cart .wc-block-components-order-summary .wc-block-components-panel__button, body.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-panel__button{
  color: #c7ccd1 !important;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  font-weight: 700;
}

body.woocommerce-cart .wc-block-components-order-summary-item, body.woocommerce-checkout .wc-block-components-order-summary-item{
  border-bottom: 1px solid #1c1c1c !important;
  padding: 14px 0 !important;
  color: #cfcfcf !important;
}

body.woocommerce-cart .wc-block-components-order-summary-item__description, body.woocommerce-checkout .wc-block-components-order-summary-item__description, body.woocommerce-cart .wc-block-components-order-summary-item__name, body.woocommerce-checkout .wc-block-components-order-summary-item__name, body.woocommerce-cart .wc-block-components-order-summary-item .wc-block-components-product-name, body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-name{
  color: #ffffff !important;
  font-weight: 600;
}

body.woocommerce-cart .wc-block-components-order-summary-item__quantity, body.woocommerce-checkout .wc-block-components-order-summary-item__quantity{
  background: #c8102e !important;
  color: #ffffff !important;
  border: none !important;
  font-weight: 800;
  font-size: 0.72rem;
  min-width: 22px;
  min-height: 22px;
  line-height: 22px;
}

body.woocommerce-cart .wc-block-components-order-summary-item__total-price, body.woocommerce-checkout .wc-block-components-order-summary-item__total-price{
  color: #29c2d1 !important;
  font-weight: 700;
}

body.woocommerce-cart .wc-block-components-order-summary-item__individual-price, body.woocommerce-checkout .wc-block-components-order-summary-item__individual-price, body.woocommerce-cart .wc-block-components-order-summary-item__individual-prices, body.woocommerce-checkout .wc-block-components-order-summary-item__individual-prices, body.woocommerce-cart .wc-block-components-order-summary-item__metadata, body.woocommerce-checkout .wc-block-components-order-summary-item__metadata, body.woocommerce-cart .wc-block-components-order-summary-item__metadata *, body.woocommerce-checkout .wc-block-components-order-summary-item__metadata *, body.woocommerce-cart .wc-block-components-order-summary-item .wc-block-components-product-metadata, body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-metadata{
  color: #8a9099 !important;
  font-size: 0.8rem;
}

body.woocommerce-cart .wc-block-components-order-summary-item__image img, body.woocommerce-checkout .wc-block-components-order-summary-item__image img{
  border: 1px solid #262626;
  background: #161616;
  border-radius: 0 !important;
}

/* --------------------------------------------------------------------------
   19. CHECKOUT ACTIONS ROW + PLACE ORDER
   -------------------------------------------------------------------------- */
.wc-block-checkout__actions, 
.wc-block-checkout__actions_row {
  background: transparent !important;
  border-top: 1px solid #272727 !important;
  padding-top: 20px;
  margin-top: 8px;
  gap: 16px;
  align-items: center;
}

body.woocommerce-cart .wc-block-components-checkout-place-order-button, body.woocommerce-checkout .wc-block-components-checkout-place-order-button{
  display: block;
  width: 100%;
  text-align: center;
}

/* --------------------------------------------------------------------------
   20. NOTICES / VALIDATION
   -------------------------------------------------------------------------- */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner {
  background: #161616 !important;
  color: #e6e6e6 !important;
  border: 1px solid #333333 !important;
  border-left-width: 4px !important;
  border-radius: 0 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner__content, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner p, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner a {
  color: #e6e6e6 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner a {
  text-decoration: underline;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner.is-error {
  border-left-color: #c8102e !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner.is-error svg {
  fill: #e5384f !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner.is-success {
  border-left-color: #29c2d1 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner.is-success svg {
  fill: #29c2d1 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner.is-info {
  border-left-color: #29c2d1 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner.is-info svg {
  fill: #29c2d1 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner.is-warning {
  border-left-color: #e0a106 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-notice-banner.is-warning svg {
  fill: #e0a106 !important;
}

/* Inline field validation — red text + red input border */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-validation-error, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-validation-error p {
  color: #f0546b !important;
  font-weight: 600;
}

.wp-block-woocommerce-cart .has-error input, 
.wp-block-woocommerce-checkout .has-error input, 
.wp-block-woocommerce-cart .has-error .wc-block-components-text-input input, 
.wp-block-woocommerce-checkout .has-error .wc-block-components-text-input input, 
.wp-block-woocommerce-cart .wc-block-components-text-input.has-error input, 
.wp-block-woocommerce-checkout .wc-block-components-text-input.has-error input {
  border-color: #c8102e !important;
  box-shadow: 0 0 0 2px rgba(200, 16, 46, 0.3) !important;
}

/* Loading skeletons + spinner on dark */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-skeleton {
  background-color: #161616 !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-spinner, 
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-spinner::after {
  border-radius: 50% !important;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-spinner {
  border-top-color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   21. GENERIC TEXT / LINKS / MONEY inside the blocks
   -------------------------------------------------------------------------- */
.wc-block-cart p, 
.wc-block-checkout p, 
.wc-block-cart span, 
.wc-block-checkout span, 
.wc-block-cart label, 
.wc-block-checkout label, 
.wc-block-cart li, 
.wc-block-checkout li {
  color: #cfcfcf;
}

.wc-block-cart a, 
.wc-block-checkout a {
  color: #29c2d1;
}

.wc-block-cart a:hover, 
.wc-block-checkout a:hover {
  color: #c8102e;
}

/* Any formatted money amount not otherwise covered reads teal */
.wc-block-cart .wc-block-components-formatted-money-amount, 
.wc-block-checkout .wc-block-components-formatted-money-amount {
  color: #29c2d1;
}

/* --------------------------------------------------------------------------
   22. RESPONSIVE — stack cleanly on mobile, keep WC grid intact
   -------------------------------------------------------------------------- */
@media (max-width: 700px){
  .wc-block-cart__main,
  .wc-block-checkout__main,
  .wc-block-checkout__form {
    padding-right: 0;
  }

  .wc-block-cart__sidebar,
  .wc-block-cart__totals,
  .wc-block-checkout__sidebar {
    padding: 22px 18px !important;
    margin-top: 22px;
  }

  .wc-block-checkout__form .wc-block-components-checkout-step,
  .wc-block-components-checkout-step {
    padding: 20px 16px 18px !important;
  }

  .wc-block-cart__submit-button,
  .wc-block-cart .wc-block-components-button.contained,
  .wc-block-checkout .wc-block-components-button.contained,
  .wc-block-components-checkout-place-order-button {
    width: 100% !important;
    padding: 16px 20px !important;
  }

  .wc-block-checkout__actions,
  .wc-block-checkout__actions_row {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 1.2rem;
  }
}
/* NMI block card fields: Card Number full-width, Expiry + CVC share the next row so labels fit + nothing clips */
body.woocommerce-checkout .wc-block-card-elements{display:flex !important;flex-wrap:wrap !important;gap:12px !important;width:100% !important;box-sizing:border-box !important;overflow:visible !important;}
body.woocommerce-checkout .wc-block-card-elements>*{overflow:visible !important;box-sizing:border-box !important;margin:0 !important;}
body.woocommerce-checkout .wc-block-card-elements [class*=wc-card-number]{flex:1 1 100% !important;min-width:0 !important;max-width:100% !important;}
body.woocommerce-checkout .wc-block-card-elements [class*=wc-card-expiry],body.woocommerce-checkout .wc-block-card-elements [class*=wc-card-cvc]{flex:1 1 calc(50% - 6px) !important;min-width:0 !important;max-width:100% !important;}
body.woocommerce-checkout .wc-block-card-elements label{overflow:visible !important;white-space:nowrap !important;width:auto !important;max-width:none !important;}
body.woocommerce-checkout .wc-block-card-elements iframe{width:100% !important;max-width:100% !important;box-sizing:border-box;}
/* NMI: unify the whole payment form (fields + validation + Visa/MC/Amex icons) into one clean white card */
body.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-content{background:#ffffff !important;padding:18px 18px 16px !important;}
body.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-card-elements{background:#ffffff !important;}
body.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-payment-method-icons{background:transparent !important;margin-top:12px !important;}
/* NMI: kill the harsh near-black borders on the white card. Drop the redundant outer box, give each field one clean light-grey outline */
body.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-card-elements{border:0 !important;box-shadow:none !important;}
body.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-gateway-input{border:1px solid #d9d9d9 !important;border-radius:6px !important;background:#ffffff !important;box-shadow:none !important;}
body.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-gateway-input:focus-within{border-color:#c8102e !important;}
/* Order summary: remove the horizontal rules in the totals box (above Subtotal + above TOTAL) so figures rest on whitespace, not crammed against a line */
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) [class*=order-summary-totals-block]{border-top:0 !important;border-bottom:0 !important;}
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-wrapper{border-top:0 !important;border-bottom:0 !important;}
:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) .wc-block-components-totals-footer-item{border-top:0 !important;}
/*END-CR-CARTCO*/
