/* 1R ReStart — cart.css
 * Canonical order: foundations → layout/components → states/integrations → responsive.
 */


/* ==========================================================================
   TOKENS / FOUNDATIONS
   ========================================================================== */

body.woocommerce-cart .entry-content{width:100%;max-width:none;}

body.woocommerce-cart table.wc-block-cart-items{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--r1-border,#e5e7eb);border-radius:var(--r1-card-radius,8px);background:var(--r1-surface,#fff);box-shadow:0 8px 28px rgba(15,23,42,.05);}

body.woocommerce-cart table.wc-block-cart-items th{background:transparent;height:48px;padding-top:0;padding-bottom:0;border:0;color:var(--r1-text,#111827);font-size:1em;font-weight:600;letter-spacing:.01em;text-transform:none;vertical-align:middle;}

body.woocommerce-cart table.wc-block-cart-items tr.wc-block-cart-items__row>td{padding-top:22px;padding-bottom:22px;border:0;border-radius:0;background:transparent;vertical-align:middle;box-shadow:none;}

body.woocommerce-cart .wc-block-cart-item__total{border:0;background:transparent;box-shadow:none;}

/* WooCommerce Blocks cart: the image/product/total columns are structural.
   Scope layout to the block table, not every WooCommerce table or each td.
   The product cell must grow and long names must wrap without widening the grid. */
body.woocommerce-cart .wc-block-cart{min-width:0;max-width:100%;}
body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .wc-block-cart__sidebar{min-width:0;max-width:100%;}
body.woocommerce-cart .wc-block-cart__main table.wc-block-cart-items{table-layout:fixed;max-width:100%;}
body.woocommerce-cart .wc-block-cart-items__header-image,
body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__image{width:92px;min-width:92px;box-sizing:border-box;}
/* WooCommerce Blocks desktop cart is a real HTML table. The header defines
   column geometry. Do not turn the total TD into a flex/grid container: some
   WooCommerce/other-plugin rules set display:flex (occasionally !important),
   detaching it from the table algorithm and clipping totals at the card edge.
   Reserve the same 184px column from TH through TD. */
body.woocommerce-cart .wc-block-cart__main table.wc-block-cart-items{
  --r1-cart-total-column:184px;
}
body.woocommerce-cart .wc-block-cart-items__header-total,
body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__total{
  text-align:right;box-sizing:border-box;
}
@media (min-width:701px){
  body.woocommerce-cart .wc-block-cart__main table.wc-block-cart-items{
    width:100%;table-layout:fixed;
  }
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items thead tr > th.wc-block-cart-items__header-image{
    width:92px!important;
  }
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items thead tr > th.wc-block-cart-items__header-total{
    width:var(--r1-cart-total-column)!important;
  }
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items tbody tr > td.wc-block-cart-item__total{
    display:table-cell!important;
    width:var(--r1-cart-total-column)!important;
    min-width:0;
    max-width:none;
    vertical-align:top;
  }
}
body.woocommerce-cart .wc-block-cart-items__header-product,
body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__product{width:auto;min-width:0;box-sizing:border-box;}
body.woocommerce-cart .wc-block-cart-items .wc-block-cart-item__wrap{min-width:0;max-width:100%;}
body.woocommerce-cart .wc-block-cart-items .wc-block-components-product-name{
  display:block;max-width:100%;overflow-wrap:anywhere;word-break:normal;
}
body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__image{padding-inline:14px 8px;vertical-align:top;}
body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__product{padding-inline:8px 16px;vertical-align:top;}
body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__total{padding-inline:8px 18px;vertical-align:top;}
body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-image{padding-inline:14px 8px;}
body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-total{padding-inline:8px 18px;}
body.woocommerce-cart .wc-block-cart-items .wc-block-components-quantity-selector{flex-shrink:0;}
body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper{
  min-width:0;width:100%;display:flex;flex-direction:column;align-items:flex-end;gap:6px;
}
/* A formatted currency value must never be clipped in the fixed total column. */
body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__total :is(
  .wc-block-components-product-price,
  .wc-block-components-product-price__value,
  .wc-block-formatted-money-amount,
  bdi
){white-space:nowrap;word-break:normal;overflow-wrap:normal;}
/* Sale amount belongs to the product total, but should read as a compact badge. */
body.woocommerce-cart .wc-block-cart-items :is(.wc-block-components-product-badge,.wc-block-components-sale-badge){
  display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;
  gap:4px;width:max-content;max-width:100%;margin-left:auto;
  padding:4px 9px;border:0;border-radius:var(--r1-control-radius,6px);
  background:color-mix(in srgb,var(--r1-primary,#0A95AE) 8%,#fff);
  color:var(--r1-text,#111827);font-size:var(--r1-small-size,13px);line-height:1.3;
  font-weight:500;white-space:nowrap;word-break:normal;overflow-wrap:normal;box-sizing:border-box;
}
body.woocommerce-cart .wc-block-cart-items .wc-block-components-sale-badge :is(span,bdi){
  white-space:nowrap;word-break:keep-all;overflow-wrap:normal;
}


body.woocommerce-cart .wc-block-cart-item__image a{display:flex;align-items:center;justify-content:center;overflow:hidden;aspect-ratio:1/1;border:1px solid color-mix(in srgb,var(--r1-border,#e5e7eb) 78%,transparent);border-radius:10px;background:var(--r1-surface,#fff);}

body.woocommerce-cart .wc-block-cart-item__image img{display:block;width:100%;height:100%;padding:6px;border-radius:9px;object-fit:contain;box-sizing:border-box;}

body.woocommerce-cart .wc-block-components-product-name{color:var(--r1-text,#111827);font-size:1em;font-weight:600;line-height:1.4;text-decoration:none;}

body.woocommerce-cart .wc-block-components-product-name:hover{color:var(--r1-primary,#0a95ae);}

body.woocommerce-cart .wc-block-cart-item__quantity{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;margin-top:14px;}

body.woocommerce-cart .wc-block-components-quantity-selector{display:grid;grid-template-columns:32px 42px 32px;align-items:stretch;gap:0;width:106px;min-width:106px;height:34px;margin:0;padding:0;overflow:hidden;border:1px solid var(--r1-border,#e5e7eb);border-radius:var(--r1-control-radius,6px);background:var(--r1-surface,#fff);box-shadow:none;box-sizing:border-box;}

body.woocommerce-cart .wc-block-components-quantity-selector__button{appearance:none;display:flex;align-items:center;justify-content:center;position:static;width:32px;min-width:32px;height:32px;min-height:32px;margin:0;padding:0;border:0;border-radius:0;outline:0;background:var(--r1-bg,#f7f9fb);color:var(--r1-text,#111827);font-family:var(--r1-font,inherit);font-size:.95em;font-weight:500;line-height:1;box-shadow:none;box-sizing:border-box;cursor:pointer;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease;}

body.woocommerce-cart .wc-block-components-quantity-selector__button:last-child{border-left:1px solid var(--r1-border,#e5e7eb);}

body.woocommerce-cart .wc-block-components-quantity-selector__button:hover{background:color-mix(in srgb,var(--r1-hover,#087f95) 9%,var(--r1-surface,#fff));color:var(--r1-hover,#087f95);border-color:var(--r1-border,#e5e7eb);box-shadow:none;}

body.woocommerce-cart .wc-block-components-quantity-selector__button:disabled{opacity:.45;cursor:not-allowed;}

body.woocommerce-cart .wc-block-components-quantity-selector__input{appearance:textfield;width:42px;min-width:42px;max-width:42px;height:32px;min-height:32px;margin:0;padding:0 4px;border:0;border-radius:0;outline:0;background:var(--r1-surface,#fff);color:var(--r1-text,#111827);font:600 .75em/32px var(--r1-font,inherit);text-align:center;box-shadow:none;box-sizing:border-box;}

body.woocommerce-cart .wc-block-cart-item__remove-link{display:inline-flex;align-items:center;justify-content:center;width:42px;min-width:42px;height:42px;margin:0;padding:0;color:var(--r1-muted,#6b7280);text-decoration:none;transition:color .15s ease;}

body.woocommerce-cart .wc-block-cart__sidebar{align-self:start;}

body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block{padding:22px;border:1px solid var(--r1-border,#e5e7eb);border-radius:var(--r1-card-radius,8px);background:var(--r1-surface,#fff);box-shadow:0 8px 28px rgba(15,23,42,.05);overflow:hidden;}

body.woocommerce-cart .wc-block-components-totals-wrapper{border-color:var(--r1-border,#e5e7eb);}

body.woocommerce-cart .r1-clear-cart-wrap{display:flex;justify-content:flex-start;margin-top:14px;}

body.woocommerce-cart .r1-clear-cart[disabled]{opacity:.5;cursor:wait;}

body.woocommerce-cart .wc-block-cart__submit-button:hover{background:var(--r1-hover,#087f95);color:#fff;}

body.woocommerce-cart .wc-block-cart .wc-block-components-totals-item__label{font-size:var(--r1-body-size,16px);line-height:var(--r1-body-line-height,1.6);}

body.woocommerce-cart .wc-block-cart__submit-button{height:48px;min-height:48px;padding:0 24px;border:0;border-radius:var(--r1-button-radius,6px);background:var(--r1-primary,#0A95AE);color:#fff;font-family:var(--r1-font,inherit);font-size:var(--r1-body-size,16px);font-weight:600;line-height:1.2;box-shadow:none;}

body.woocommerce-cart .r1-clear-cart{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 12px;border:1px solid var(--r1-border,#e5e7eb);border-radius:var(--r1-button-radius,6px);background:#fff;color:var(--r1-text,#111827);font-family:inherit;font-size:14px;font-weight:700;line-height:normal;text-decoration:none;text-align:center;box-shadow:none;cursor:pointer;transition:none;}

body.woocommerce-cart .wc-block-cart__totals-title{margin-top:0;color:var(--r1-text,#111827);font-family:inherit;font-size:var(--r1-h4,1.125em);font-weight:var(--r1-heading-weight,600);line-height:var(--r1-heading-line-height,1.2);letter-spacing:normal;text-transform:none;}

body.woocommerce-cart td.wc-block-cart-item__image{vertical-align:top;}


/* ==========================================================================
   CART
   ========================================================================== */

body.woocommerce-cart .entry-content>.wp-block-woocommerce-cart.alignwide,
body.woocommerce-cart .entry-content>.wp-block-woocommerce-cart.alignfull{width:100%;max-width:100%;margin-inline:0;transform:none;}

body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-cart .wc-block-cart{color:var(--r1-text,#111827);font-family:var(--r1-font,inherit);font-size:var(--r1-body-size,16px);}

body.woocommerce-cart table.wc-block-cart-items tbody,
body.woocommerce-cart table.wc-block-cart-items tr.wc-block-cart-items__row{background:var(--r1-surface,#fff);}

body.woocommerce-cart table.wc-block-cart-items tr.wc-block-cart-items__row:not(:last-child)>td{border-bottom:1px solid var(--r1-border,#e5e7eb);}

body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-details{display:none;}

body.woocommerce-cart .wc-block-components-product-price,
body.woocommerce-cart .wc-block-components-product-price__value,
body.woocommerce-cart .wc-block-formatted-money-amount{border:0;background:transparent;box-shadow:none;color:var(--r1-text,#111827);font-size:1em;font-weight:600;}

body.woocommerce-cart .wc-block-components-quantity-selector::before,
body.woocommerce-cart .wc-block-components-quantity-selector::after{content:none;display:none;}

body.woocommerce-cart .wc-block-components-quantity-selector__button:first-child{border-right:1px solid var(--r1-border,#e5e7eb);}

body.woocommerce-cart .wc-block-components-quantity-selector__button:focus,
body.woocommerce-cart .wc-block-components-quantity-selector__button:active{border-color:var(--r1-border,#e5e7eb);outline:0;box-shadow:none;}

body.woocommerce-cart .wc-block-components-quantity-selector__button:focus-visible{outline:0;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--r1-primary,#0a95ae) 55%,transparent);}

body.woocommerce-cart .wc-block-components-quantity-selector__input:focus,
body.woocommerce-cart .wc-block-components-quantity-selector__input:focus-visible{border:0;outline:0;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--r1-primary,#0a95ae) 30%,transparent);}

body.woocommerce-cart .wc-block-components-quantity-selector__input::-webkit-inner-spin-button,
body.woocommerce-cart .wc-block-components-quantity-selector__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}

body.woocommerce-cart .wc-block-cart-item__remove-link svg,
body.woocommerce-cart .wc-block-cart-item__remove-link svg path{fill:currentColor;}

body.woocommerce-cart .wc-block-cart-item__remove-link:hover,
body.woocommerce-cart .wc-block-cart-item__remove-link:focus-visible{color:var(--wc-destructive,#cc1818);text-decoration:none;}

body.woocommerce-cart .wc-block-cart-item__remove-link:hover svg,
body.woocommerce-cart .wc-block-cart-item__remove-link:hover svg path,
body.woocommerce-cart .wc-block-cart-item__remove-link:focus-visible svg,
body.woocommerce-cart .wc-block-cart-item__remove-link:focus-visible svg path{fill:var(--wc-destructive,#cc1818);}

body.woocommerce-cart .wc-block-cart :where(.wc-block-components-totals-item__label,.wc-block-components-totals-item__value,.wc-block-components-totals-shipping__via,.wc-block-components-shipping-rates-control__package,.wc-block-components-shipping-rates-control__package-items,.wc-block-components-radio-control__label,.wc-block-components-radio-control__secondary-label){font-size:1em;line-height:var(--r1-body-line-height,1.6);}

body.woocommerce-cart .wc-block-cart :where(.wc-block-components-product-badge,.wc-block-components-product-details,.wc-block-components-product-metadata,.wc-block-components-totals-item__description){font-size:var(--r1-small-size,14px);line-height:1.45;}

body.woocommerce-cart .wc-block-cart__submit-button .wc-block-components-button__text{font:inherit;line-height:inherit;color:inherit;}

body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-cart .wc-block-cart__submit-button:focus-visible{background:var(--r1-hover,#087F95);color:#fff;}

body.woocommerce-cart .r1-clear-cart:hover,
body.woocommerce-cart .r1-clear-cart:focus-visible{border-color:var(--r1-border,#e5e7eb);background:#fff;color:var(--r1-primary,#0A95AE);transition:none;}


/* 1R Reactor one-click action, inserted on the Woo Blocks cart.
   The Reactor trigger owns its action and click listener; ReStart supplies the
   cart's SECONDARY button skin only. A bare .button is not a style contract.
   Do not restore global button styling: it breaks plugin dialogs and maps. */
body.woocommerce-cart button.button.r1-oneclick-trigger:not(.r1-oneclick-trigger--product){
  -webkit-appearance:none;appearance:none;box-sizing:border-box;
  display:flex;align-items:center;justify-content:center;
  width:100%;max-width:100%;min-height:48px;height:48px;
  margin:0;padding:0 20px;
  border:1px solid var(--r1-border,#e5e7eb);
  border-radius:var(--r1-button-radius,8px);
  outline:0;background:var(--r1-surface,#fff);color:var(--r1-text,#111827);
  font-family:var(--r1-font,inherit);font-size:var(--r1-body-size,16px);
  font-weight:600;line-height:1.2;letter-spacing:normal;text-align:center;
  text-decoration:none;text-transform:none;box-shadow:none;cursor:pointer;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease;
}
body.woocommerce-cart button.button.r1-oneclick-trigger:not(.r1-oneclick-trigger--product):is(:hover,:active){
  border-color:var(--r1-primary,#0a95ae);
  background:color-mix(in srgb,var(--r1-primary,#0a95ae) 7%,var(--r1-surface,#fff));
  color:var(--r1-primary,#0a95ae);box-shadow:none;
}
body.woocommerce-cart button.button.r1-oneclick-trigger:not(.r1-oneclick-trigger--product):focus-visible{
  outline:2px solid var(--r1-primary,#0a95ae);outline-offset:2px;
}
body.woocommerce-cart button.button.r1-oneclick-trigger:not(.r1-oneclick-trigger--product):disabled{
  opacity:.5;cursor:not-allowed;
}

/* Reactor quick order on WooCommerce Cart Blocks — no DOM relocation.
 * Reactor prints a sibling action after the cart block. PHP marks that
 * server-rendered slot as native, and CSS Anchor Positioning aligns it to
 * WooCommerce's live Proceed to Checkout button. The React tree is untouched.
 * Browsers without CSS anchors receive a regular narrow, right-aligned action. */
body.woocommerce-cart .r1-oneclick-cart-native{
  box-sizing:border-box;width:100%;max-width:360px;
  margin:12px 0 0 auto;
}
body.woocommerce-cart .r1-oneclick-cart-native > .r1-oneclick-action{
  display:block;box-sizing:border-box;width:100%;margin:0;
}
body.woocommerce-cart .r1-oneclick-cart-native .r1-oneclick-trigger{
  width:100%;max-width:100%;
}
@supports (anchor-name: --r1-cart-checkout) and (top: anchor(bottom)) and (width: anchor-size(width)){
  body.woocommerce-cart .entry-content:has(> .r1-oneclick-cart-native){position:relative;}
  body.woocommerce-cart .entry-content:has(> .r1-oneclick-cart-native) .wc-block-cart__submit-button{anchor-name:--r1-cart-checkout;}
  body.woocommerce-cart .r1-oneclick-cart-native{
    position:absolute;
    position-anchor:--r1-cart-checkout;
    top:calc(anchor(bottom) + 12px);
    left:anchor(left);
    width:anchor-size(width);
    max-width:none;
    margin:0;
    z-index:2;
  }
  /* Provide space for the independently rendered control on short carts. */
  body.woocommerce-cart .entry-content:has(> .r1-oneclick-cart-native){padding-bottom:72px;}
  /* In the narrow cart the WC Blocks submit becomes fixed to the viewport.
   * Keep both actions in the document's natural checkout order instead of
   * placing the second control beyond the bottom of the screen. */
  @media(max-width:980px){
    body.woocommerce-cart .entry-content:has(> .r1-oneclick-cart-native) .wc-block-cart__submit-container{position:static;inset:auto;transform:none;}
  }
}

/* ==========================================================================
   EMPTY CART / LEGACY PRODUCT GRID
   ========================================================================== */

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{display:grid;grid-template-columns:repeat(var(--r1-shop-columns,4),minmax(0,1fr));gap:24px;margin:28px 0 0;padding:0;}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product{position:relative;display:flex;flex-direction:column;width:auto;max-width:none;min-width:0;height:100%;margin:0;padding:0;border:1px solid var(--r1-border,#e5e7eb);border-radius:var(--r1-card-radius,8px);background:var(--r1-surface,#fff);box-shadow:0 2px 10px rgba(15,23,42,.045);overflow:hidden;text-align:left;list-style:none;box-sizing:border-box;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--r1-hover,#087f95) 30%,var(--r1-border,#e5e7eb));box-shadow:var(--r1-shadow,0 8px 30px rgba(15,23,42,.06));}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link{display:flex;flex:1 1 auto;flex-direction:column;width:100%;min-width:0;margin:0;padding:0;color:inherit;text-decoration:none;}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image{width:100%;margin:0;padding:12px 12px 0;box-sizing:border-box;}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img{display:block;width:100%;height:auto;aspect-ratio:var(--r1-product-image-ratio,1/1);margin:0;object-fit:var(--r1-product-image-fit,cover);object-position:center;background:var(--r1-surface,#fff);border:0;border-radius:0;box-shadow:none;transition:transform .28s ease;}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product:hover .wc-block-grid__product-image img{transform:scale(1.02);}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-height:2.7em;margin:0;padding:16px 16px 0;overflow:hidden;color:var(--r1-text,#111827);font-size:1rem;font-weight:600;line-height:1.35;text-align:left;text-decoration:none;}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price{display:block;margin:auto 16px 14px;padding-top:12px;color:var(--r1-text,#111827);font-size:1.08rem;font-weight:700;line-height:1.25;text-align:left;}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price ins{color:#e5484d;text-decoration:none;}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price del{color:var(--r1-muted,#6b7280);opacity:.72;font-size:.9em;font-weight:500;}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart{width:100%;margin:0;padding:0 16px 16px;box-sizing:border-box;}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin:0;padding:11px 14px;border:1px solid var(--r1-primary,#0a95ae);border-radius:var(--r1-button-radius,6px);background:var(--r1-primary,#0a95ae);color:#fff;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;text-align:center;text-decoration:none;box-shadow:none;box-sizing:border-box;}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:focus-visible{border-color:var(--r1-hover,#087f95);background:var(--r1-hover,#087f95);color:#fff;}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-onsale{position:absolute;z-index:20;top:20px;left:20px;right:auto;display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:0;min-height:28px;margin:0;padding:0 10px;border:0;border-radius:8px;background:#e5484d;color:#fff;font-size:11px;font-weight:650;line-height:1;letter-spacing:.01em;text-transform:none;white-space:nowrap;box-shadow:0 2px 8px rgba(15,23,42,.14);transform:none;}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-onsale span:not(.screen-reader-text){display:block;margin:0;padding:0;color:inherit;font:inherit;line-height:1;}

/* ==========================================================================
   RESPONSIVE / CONDITIONAL
   ========================================================================== */

@media (max-width:900px){
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{grid-template-columns:repeat(var(--r1-products-tablet-columns,3),minmax(0,1fr));}
}

@media (max-width:640px){
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{grid-template-columns:repeat(var(--r1-products-mobile-columns,2),minmax(0,1fr));gap:12px;}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image{padding:8px 8px 0;}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{padding:12px 12px 0;font-size:.9rem;}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price{margin:auto 12px 12px;padding-top:10px;font-size:1rem;}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart{padding:0 12px 12px;}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-onsale{top:14px;left:14px;}
body.woocommerce-cart table.wc-block-cart-items tr.wc-block-cart-items__row>td{padding-top:16px;padding-bottom:16px;}
body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block{padding:18px;}
body.woocommerce-cart .wc-block-components-quantity-selector{grid-template-columns:29px 37px 29px;width:95px;min-width:95px;height:32px;}
body.woocommerce-cart .wc-block-components-quantity-selector__button{width:29px;min-width:29px;height:30px;min-height:30px;}
body.woocommerce-cart .wc-block-components-quantity-selector__input{width:37px;min-width:37px;max-width:37px;height:30px;min-height:30px;line-height:30px;}
body.woocommerce-cart .wc-block-cart-item__remove-link{width:40px;min-width:40px;height:40px;}
}

/* Responsive WooCommerce Blocks cart: the desktop table becomes compact rows.
   No floated/flex table cells at 390px, and every separator spans the card. */
@media (max-width:700px){
  body.woocommerce-cart .wc-block-cart__main table.wc-block-cart-items{
    display:block;width:100%;table-layout:auto;border-spacing:0;
  }
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items thead{
    position:absolute;width:1px;height:1px;overflow:hidden;
    clip-path:inset(50%);white-space:nowrap;
  }
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items tbody{display:block;}
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items tbody tr.wc-block-cart-items__row{
    display:grid;grid-template-columns:64px minmax(0,1fr);grid-template-areas:"image product" "image total";
    column-gap:12px;row-gap:8px;align-items:start;
    margin:0;padding:16px 12px;border-bottom:1px solid var(--r1-border,#e5e7eb);
  }
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items tbody tr.wc-block-cart-items__row:last-child{border-bottom:0;}
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items tbody tr.wc-block-cart-items__row > td{
    min-width:0;max-width:100%;padding:0;border:0!important;
  }
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items tbody tr > td.wc-block-cart-item__image{
    grid-area:image;width:64px;min-width:0;align-self:start;
  }
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items tbody tr > td.wc-block-cart-item__product{
    grid-area:product;width:auto;min-width:0;
  }
  body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items tbody tr > td.wc-block-cart-item__total{
    grid-area:total;display:block!important;width:100%!important;
    text-align:left;box-sizing:border-box;
  }
  body.woocommerce-cart .wc-block-cart-items .wc-block-cart-item__total-price-and-sale-badge-wrapper{
    display:flex;flex-direction:row;align-items:center;justify-content:space-between;
    gap:6px;flex-wrap:wrap;
  }
  body.woocommerce-cart .wc-block-cart-items :is(.wc-block-components-product-badge,.wc-block-components-sale-badge){
    margin-left:0;font-size:12px;white-space:nowrap;
  }
  body.woocommerce-cart .wc-block-cart-items .wc-block-components-product-name{
    overflow-wrap:anywhere;
  }
}
