/*
 * Native WooCommerce Cart Block presentation.
 * Keep the block markup, data flow, and controls intact; this file owns only
 * the cart page canvas, spacing, hierarchy, and responsive geometry.
 */

/* The cart owns one fluid white canvas below the global header. */
.woocommerce-cart .site-content,
.woocommerce-cart #primary,
.woocommerce-cart .site-main,
.woocommerce-cart .inside-article,
.woocommerce-cart .entry-content {
	inline-size: 100%;
	max-inline-size: none;
	margin: 0;
	padding: 0;
	background: var(--color-canvas);
	border: 0;
	box-shadow: none;
}

/* GeneratePress can add its generic widget rail beside the commerce canvas.
 * A cart page needs the full available width for native rows and totals; the
 * unrelated search/posts widgets are not part of the cart journey. */
.woocommerce-cart .site-content > .content-area,
.woocommerce-cart #primary {
	flex: 0 0 100%;
	inline-size: 100%;
}

.woocommerce-cart .site-content > .widget-area {
	display: none;
}

.woocommerce-cart .entry-header,
.woocommerce-cart .page-header {
	box-sizing: border-box;
	inline-size: min(
		calc(100% - var(--container-gutter) - var(--container-gutter)),
		var(--container-max)
	);
	max-inline-size: var(--container-max);
	margin-inline: auto;
	padding-block: clamp(var(--space-6), 5vw, var(--space-12)) var(--space-4);
	background: transparent;
	border: 0;
	box-shadow: none;
	text-align: start;
}

.woocommerce-cart .entry-title,
.woocommerce-cart .page-title {
	margin: 0;
	color: var(--color-ink);
	font-size: var(--font-size-h1);
	line-height: var(--line-height-heading);
	text-align: start;
	text-wrap: balance;
	unicode-bidi: plaintext;
}

.woocommerce-cart .wp-block-woocommerce-cart,
.woocommerce-cart .wp-block-woocommerce-cart.alignwide,
.woocommerce-cart .wp-block-woocommerce-cart.alignfull {
	box-sizing: border-box;
	inline-size: min(
		calc(100% - var(--container-gutter) - var(--container-gutter)),
		var(--container-max)
	);
	max-inline-size: var(--container-max);
	min-inline-size: 0;
	margin-inline: auto;
	padding-block: 0 var(--space-12);
	padding-inline: 0;
	background: var(--color-canvas);
	color: var(--color-ink);
	direction: rtl;
	text-align: start;
}

.woocommerce-cart .wp-block-woocommerce-cart :is(
	.wc-block-components-main,
	.wc-block-components-sidebar,
	.wc-block-cart-items,
	.wc-block-cart-items__row,
	.wc-block-cart-item__product,
	.wc-block-cart-item__wrap,
	.wc-block-components-product-metadata,
	.wc-block-cart-item__prices,
	.wc-block-cart-item__quantity
) {
	min-inline-size: 0;
}

/* Keep the product list and native totals rail balanced at every tablet and
 * desktop width; the line-item table itself remains a real table here. */
.woocommerce-cart .wc-block-components-sidebar-layout {
	display: grid;
	grid-template-areas: "items summary";
	grid-template-columns: minmax(0, 1.65fr) minmax(16rem, 0.75fr);
	align-items: start;
	gap: clamp(var(--space-6), 4vw, var(--space-12));
	margin: 0;
}

.woocommerce-cart .wc-block-components-sidebar-layout > .wc-block-components-main,
.woocommerce-cart .wc-block-components-sidebar-layout > .wc-block-cart__main {
	grid-area: items;
	inline-size: 100%;
	min-inline-size: 0;
}

.woocommerce-cart .wc-block-components-sidebar-layout > .wc-block-components-sidebar,
.woocommerce-cart .wc-block-components-sidebar-layout > .wc-block-cart__sidebar {
	grid-area: summary;
	inline-size: 100%;
	min-inline-size: 0;
}

/* WooCommerce 11.0.1 renders three direct table cells per line item:
 * image, product content, and total. Keep those semantics at tablet/desktop. */
.woocommerce-cart .wc-block-cart-items {
	inline-size: 100%;
	margin: 0;
	padding: 0;
	border-spacing: 0;
	background: transparent;
}

.woocommerce-cart .wc-block-cart-items :is(th, td) {
	padding: 0;
	border: 0;
	background: transparent;
	vertical-align: top;
}

.woocommerce-cart .wc-block-cart-items__header > th {
	padding-block-end: var(--space-3);
	color: var(--color-ink-soft);
	font-size: var(--font-size-ui);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui);
	text-align: start;
}

.woocommerce-cart .wc-block-cart-items__header-image {
	inline-size: clamp(5rem, 9vw, 7rem);
}

.woocommerce-cart .wc-block-cart-items__header-total {
	inline-size: clamp(6rem, 12vw, 8rem);
	text-align: start;
}

.woocommerce-cart .wc-block-cart-items__row > :is(
	.wc-block-cart-item__image,
	.wc-block-cart-item__product,
	.wc-block-cart-item__total
) {
	padding-block: var(--space-4);
}

.woocommerce-cart .wc-block-cart-items__row {
	background: var(--color-white);
}

/* One quiet divider between adjacent native rows. */
.woocommerce-cart .wc-block-cart-items tbody > .wc-block-cart-items__row + .wc-block-cart-items__row > td {
	border-block-start: 1px solid var(--color-border);
}

.woocommerce-cart td.wc-block-cart-item__image {
	inline-size: clamp(5rem, 9vw, 7rem);
	padding-inline-end: var(--space-4);
}

.woocommerce-cart .wc-block-cart-item__image a,
.woocommerce-cart .wc-block-cart-item__image img {
	display: block;
	inline-size: 100%;
	max-inline-size: 100%;
}

.woocommerce-cart .wc-block-cart-item__image img {
	block-size: auto;
	aspect-ratio: 1;
	border-radius: var(--radius-sm);
	background: var(--color-surface);
	object-fit: cover;
}

.woocommerce-cart td.wc-block-cart-item__product {
	padding-inline: var(--space-4);
	text-align: start;
}

.woocommerce-cart .wc-block-cart-item__wrap {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--space-2);
}

.woocommerce-cart .wc-block-components-product-name {
	display: block;
	max-inline-size: 100%;
	color: var(--color-ink);
	font-size: var(--font-size-body);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-heading);
	overflow-wrap: break-word;
	word-break: normal;
	text-decoration: none;
	text-align: start;
	text-wrap: pretty;
	unicode-bidi: isolate;
}

.woocommerce-cart .wc-block-components-product-name:hover {
	color: var(--color-accent-hover);
	text-decoration: underline;
	text-underline-offset: 0.16em;
}

.woocommerce-cart .wc-block-cart-item__prices {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-1) var(--space-2);
	max-inline-size: 100%;
	margin: 0;
	color: var(--color-ink-soft);
	direction: ltr;
	font-size: var(--font-size-ui);
	line-height: var(--line-height-ui);
	text-align: start;
	unicode-bidi: isolate;
}

.woocommerce-cart .wc-block-cart-item__prices .wc-block-components-product-price {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-1);
	margin: 0;
	direction: ltr;
	text-align: start;
	unicode-bidi: isolate;
}

.woocommerce-cart .wc-block-cart-item__prices :is(del, ins, span) {
	margin: 0;
}

.woocommerce-cart .wc-block-components-product-metadata {
	max-inline-size: 100%;
	margin: 0;
	color: var(--color-ink-soft);
	font-size: var(--font-size-ui);
	line-height: var(--line-height-ui);
	overflow-wrap: break-word;
	word-break: normal;
	text-align: start;
	unicode-bidi: isolate;
}

/* Product excerpts are merchandising copy, not cart configuration data. */
.woocommerce-cart .wc-block-components-product-metadata__description,
.woocommerce-cart .wc-block-components-product-description,
.woocommerce-cart .wc-block-cart-item__product > p:not([class]),
.woocommerce-cart .wc-block-components-product-badge {
	display: none !important;
}

.woocommerce-cart .wc-block-cart-item__prices :is(del, .wc-block-components-product-price__regular) {
	font-size: 0.82em;
}

.woocommerce-cart .wc-block-cart-item__prices ins {
	font-size: inherit;
	text-decoration: none;
}

.woocommerce-cart .wc-block-components-product-metadata ul,
.woocommerce-cart .wc-block-components-product-details {
	display: grid;
	gap: var(--space-1);
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-cart .wc-block-components-product-details__name,
.woocommerce-cart .wc-block-components-product-details__value {
	overflow-wrap: break-word;
	word-break: normal;
	unicode-bidi: isolate;
}

.woocommerce-cart .wc-block-cart-item__quantity {
	display: grid;
	grid-template-columns: minmax(0, max-content) 2.75rem;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-2);
	inline-size: 100%;
	max-inline-size: 100%;
}

.woocommerce-cart .wc-block-cart-item__quantity > * {
	min-inline-size: 0;
}

.woocommerce-cart .wc-block-cart-item__quantity .wc-block-components-quantity-selector {
	grid-column: 1;
	justify-self: start;
}

/* Keep the native quantity selector recognizable and comfortably touchable. */
.woocommerce-cart .wc-block-components-quantity-selector {
	display: inline-flex;
	align-items: stretch;
	inline-size: max-content;
	max-inline-size: 100%;
	min-block-size: 2.75rem;
	border: 1px solid var(--color-border-strong);
	border-radius: var(--radius-button);
	background: var(--color-white);
	overflow: hidden;
}

.woocommerce-cart .wc-block-components-quantity-selector:focus-within {
	border-color: var(--focus-color);
	box-shadow: 0 0 0 1px var(--focus-color);
}

.woocommerce-cart .wc-block-components-quantity-selector :is(
	.wc-block-components-quantity-selector__button,
	.wc-block-components-quantity-selector__input
) {
	min-block-size: 2.75rem;
}

.woocommerce-cart .wc-block-components-quantity-selector__button {
	inline-size: 2.75rem;
	min-inline-size: 2.75rem;
	padding: 0;
	border: 0;
	background: var(--color-surface);
	color: var(--color-ink);
	cursor: pointer;
}

.woocommerce-cart .wc-block-components-quantity-selector__button:hover:not(:disabled) {
	background: var(--color-surface-strong);
}

.woocommerce-cart .wc-block-components-quantity-selector__button:disabled {
	background: var(--color-surface);
	color: var(--color-ink-soft);
	cursor: not-allowed;
	opacity: 0.65;
}

.woocommerce-cart .wc-block-components-quantity-selector__input {
	inline-size: 3.25rem;
	max-inline-size: 100%;
	padding-inline: var(--space-2);
	border: 0;
	border-radius: 0;
	background: var(--color-white);
	color: var(--color-ink);
	text-align: center;
	unicode-bidi: plaintext;
}

/* The remove button is nested in the product cell and has a full 44x44 hit
 * area, while its icon remains visually quiet. */
.woocommerce-cart .wc-block-cart-item__remove-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 2.75rem;
	inline-size: 2.75rem;
	block-size: 2.75rem;
	min-inline-size: 2.75rem;
	min-block-size: 2.75rem;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--color-ink-soft);
	cursor: pointer;
}

.woocommerce-cart .wc-block-cart-item__quantity .wc-block-cart-item__remove-link {
	grid-column: 2;
	justify-self: end;
}

.woocommerce-cart .wc-block-cart-item__remove-link svg {
	inline-size: 1.5rem;
	block-size: 1.5rem;
	fill: currentColor;
}

.woocommerce-cart .wc-block-cart-item__remove-link:hover {
	color: var(--color-error);
}

.woocommerce-cart .wc-block-cart-item__remove-link[hidden] {
	display: none;
}

.woocommerce-cart td.wc-block-cart-item__total {
	inline-size: clamp(6rem, 12vw, 8rem);
	padding-inline-start: var(--space-4);
	font-weight: var(--font-weight-semibold);
	text-align: start;
}

.woocommerce-cart .wc-block-cart-item__total,
.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price,
.woocommerce-cart .wc-block-cart-item__total .wc-block-formatted-money-amount {
	direction: ltr;
	text-align: start;
	unicode-bidi: isolate;
}

.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price {
	max-inline-size: 100%;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

/* Totals are a quiet rail, with the checkout action as the only strong fill. */
.woocommerce-cart .wc-block-components-sidebar {
	padding-block: var(--space-4);
	padding-inline: var(--space-4);
	border-block: 2px solid var(--color-ink);
	background: var(--color-canvas);
	text-align: start;
}

.woocommerce-cart .wc-block-components-totals-wrapper,
.woocommerce-cart .wc-block-components-totals-item {
	margin: 0;
	padding: 0;
}

.woocommerce-cart .wc-block-components-totals-item {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--space-4);
	min-block-size: 2.75rem;
	color: var(--color-ink-soft);
	font-size: var(--font-size-ui);
	line-height: var(--line-height-ui);
}

.woocommerce-cart .wc-block-components-totals-item > * {
	min-inline-size: 0;
	overflow-wrap: break-word;
	word-break: normal;
	unicode-bidi: plaintext;
}

.woocommerce-cart .wc-block-components-totals-item__label {
	text-align: start;
}

.woocommerce-cart .wc-block-components-totals-item__value,
.woocommerce-cart .wc-block-components-totals-item__description,
.woocommerce-cart .wc-block-components-totals-item__value strong {
	direction: ltr;
	font-weight: var(--font-weight-regular);
	text-align: end;
	unicode-bidi: isolate;
}

.woocommerce-cart .wc-block-components-totals-footer-item {
	margin-block-start: var(--space-4);
	padding-block-start: var(--space-4);
	border-block-start: 2px solid var(--color-ink);
	color: var(--color-ink);
	font-size: clamp(1.125rem, 2vw, var(--font-size-h3));
	font-weight: var(--font-weight-bold);
	line-height: var(--line-height-heading);
}

.woocommerce-cart .wc-block-components-totals-footer-item :is(
	.wc-block-components-totals-item__value,
	.wc-block-components-totals-item__value strong
) {
	font-weight: var(--font-weight-semibold);
}

.woocommerce-cart .wc-block-components-totals-coupon {
	margin-block-start: var(--space-3);
	padding-block-start: var(--space-3);
	border-block-start: 1px solid var(--color-border);
}

.woocommerce-cart .wc-block-components-totals-coupon .wc-block-components-panel__button {
	min-block-size: 2.75rem;
	padding-block: var(--space-2);
	padding-inline: 0;
	border: 0;
	background: transparent;
	color: var(--color-link);
	font-size: var(--font-size-ui);
	font-weight: var(--font-weight-semibold);
	text-align: start;
	text-decoration: underline;
	text-underline-offset: 0.16em;
	cursor: pointer;
}

.woocommerce-cart .wc-block-components-totals-coupon__content {
	position: relative;
}

.woocommerce-cart .wc-block-components-totals-coupon__form {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: var(--space-2);
	inline-size: 100%;
	margin: 0;
}

.woocommerce-cart .wc-block-components-totals-coupon__input {
	flex: 1 1 10rem;
	min-inline-size: 0;
	margin: 0;
}

.woocommerce-cart .wc-block-components-totals-coupon__input :is(input, textarea) {
	min-block-size: 2.75rem;
	padding-block: var(--space-2);
	padding-inline: var(--space-3);
	border: 1px solid var(--color-border-strong);
	border-radius: var(--radius-button);
	background: var(--color-white);
	color: var(--color-ink);
}

.woocommerce-cart .wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 2.75rem;
	padding-block: var(--space-2);
	padding-inline: var(--space-4);
	border: 1px solid var(--color-accent);
	border-radius: var(--radius-button);
	background: transparent;
	color: var(--color-accent);
	font-size: var(--font-size-ui);
	font-weight: var(--font-weight-semibold);
	text-align: center;
	cursor: pointer;
}

.woocommerce-cart .wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button:hover:not(:disabled) {
	border-color: var(--color-accent-hover);
	background: var(--color-surface);
	color: var(--color-accent-hover);
}

.woocommerce-cart .wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button:disabled {
	border-color: var(--color-border-strong);
	background: var(--color-surface-strong);
	color: var(--color-ink-soft);
	cursor: not-allowed;
}

.woocommerce-cart .wc-block-components-validation-error {
	margin-block-start: var(--space-2);
	color: var(--color-error);
	font-size: var(--font-size-ui);
	line-height: var(--line-height-ui);
}

.woocommerce-cart .wc-block-components-validation-error :is(p, ul) {
	margin: 0;
}

.woocommerce-cart .wc-block-components-notices {
	margin-block: var(--space-4);
}

.woocommerce-cart .wc-block-components-notice-banner {
	margin: 0;
	padding-block: var(--space-3);
	padding-inline: var(--space-4);
	border: 1px solid var(--color-border-strong);
	border-radius: var(--radius-sm);
	background: var(--color-surface);
	color: var(--color-ink);
}

.woocommerce-cart .wc-block-components-notice-banner.is-error {
	border-color: color-mix(in srgb, var(--color-error) 55%, var(--color-border));
	background: color-mix(in srgb, var(--color-error) 8%, var(--color-canvas));
}

.woocommerce-cart .wc-block-components-notice-banner.is-success {
	border-color: color-mix(in srgb, var(--color-success) 55%, var(--color-border));
	background: color-mix(in srgb, var(--color-success) 8%, var(--color-canvas));
}

.woocommerce-cart .wc-block-cart__submit {
	margin-block-start: var(--space-4);
	padding: 0;
}

.woocommerce-cart .wc-block-cart__submit-container {
	margin-block-start: var(--space-4);
	padding: 0;
}

.woocommerce-cart .wc-block-cart__submit :is(
	.wc-block-components-button,
	.wc-block-components-button__button,
	.wc-block-cart__submit-button
) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	inline-size: 100%;
	min-block-size: 3.25rem;
	padding-block: var(--space-3);
	padding-inline: var(--space-6);
	border: 1px solid var(--color-accent);
	border-radius: var(--radius-button);
	background: var(--color-accent);
	color: var(--color-white);
	font-size: var(--font-size-body);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui);
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition:
		background-color var(--motion-fast) var(--motion-ease),
		border-color var(--motion-fast) var(--motion-ease),
		color var(--motion-fast) var(--motion-ease),
		opacity var(--motion-fast) var(--motion-ease);
}

.woocommerce-cart .wc-block-cart__submit :is(
	.wc-block-components-button,
	.wc-block-components-button__button,
	.wc-block-cart__submit-button
):hover:not(:disabled):not([aria-disabled="true"]) {
	border-color: var(--color-accent-hover);
	background: var(--color-accent-hover);
	color: var(--color-white);
}

.woocommerce-cart .wc-block-cart__submit :is(
	.wc-block-components-button,
	.wc-block-components-button__button,
	.wc-block-cart__submit-button
):is(:disabled, [aria-disabled="true"]) {
	border-color: var(--color-border-strong);
	background: var(--color-surface-strong);
	color: var(--color-ink-soft);
	opacity: 0.7;
	cursor: not-allowed;
}

.woocommerce-cart :is(
	.wc-block-cart__submit :is(
		.wc-block-components-button,
		.wc-block-components-button__button,
		.wc-block-cart__submit-button
	),
	.wc-block-components-totals-coupon .wc-block-components-panel__button,
	.wc-block-components-totals-coupon__button,
	.wc-block-cart-item__remove-link
):focus-visible {
	outline: var(--focus-width) solid var(--focus-color);
	outline-offset: var(--focus-offset);
}

/* Empty cart: use the block that WooCommerce 11.0.1 actually renders, keep
 * the native page heading/recovery headings, and leave Product New native. */
.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
	inline-size: 100%;
	min-inline-size: 0;
	margin: 0;
	padding-block: clamp(var(--space-6), 7vw, var(--space-12));
	background: var(--color-canvas);
	color: var(--color-ink);
	text-align: center;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
	max-inline-size: 32ch;
	margin-inline: auto;
	color: var(--color-ink);
	font-size: var(--font-size-body-large);
	line-height: var(--line-height-heading);
	text-align: center;
	text-wrap: balance;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wp-block-separator {
	inline-size: min(100%, 28rem);
	margin-block: var(--space-6);
	border-block-start: 1px solid var(--color-border);
	border-block-end: 0;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block > :is(h2, h3):not(.wc-block-cart__empty-cart__title) {
	margin: 0;
	font-size: var(--font-size-h2);
	text-align: center;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block > p.has-text-align-center > a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-inline-size: 2.75rem;
	min-block-size: 2.75rem;
	max-inline-size: 100%;
	padding-block: var(--space-3);
	padding-inline: var(--space-5);
	border: 1px solid var(--color-accent);
	border-radius: var(--radius-button);
	background: var(--color-accent);
	color: var(--color-white);
	font-size: var(--font-size-ui);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui);
	text-align: center;
	text-decoration: none;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block > p.has-text-align-center > a:hover {
	border-color: var(--color-accent-hover);
	background: var(--color-accent-hover);
	color: var(--color-white);
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block > p.has-text-align-center > a:focus-visible {
	outline: var(--focus-width) solid var(--focus-color);
	outline-offset: var(--focus-offset);
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new {
	inline-size: 100%;
	min-inline-size: 0;
	margin-block-start: var(--space-6);
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new
	.wc-block-product-template > li {
	min-inline-size: 0;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new
	:is(.wc-block-components-product-image, .wc-block-components-product-image a) {
	display: block;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new
	.wc-block-components-product-image img {
	inline-size: 100%;
	block-size: auto;
	aspect-ratio: 1;
	border-radius: var(--radius-sm);
	background: var(--color-surface);
	object-fit: cover;
}

/* Filled-cart cross-sells are a native Product Collection on page 12. Keep
 * its three-product query, links, lazy loading, and block layout untouched. */
.woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection {
	inline-size: 100%;
	min-inline-size: 0;
	margin-block-start: var(--space-6);
	padding-block-start: var(--space-6);
	border-block-start: 1px solid var(--color-border);
}

.woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection
	> .wp-block-heading {
	margin-block: 0 var(--space-4);
	font-size: var(--font-size-h3);
	text-align: start;
}

.woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection
	.wc-block-product-template {
	gap: var(--space-4);
}

.woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection
	.wc-block-product-template > :is(li, .wc-block-product) {
	min-inline-size: 0;
	margin: 0;
	text-align: start;
}

.woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection
	.wc-block-product :is(.wc-block-components-product-image, .wc-block-components-product-image a) {
	display: block;
	max-inline-size: 100%;
}

.woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection
	.wc-block-product .wc-block-components-product-image img {
	inline-size: 100%;
	block-size: auto;
	aspect-ratio: 1;
	border-radius: var(--radius-sm);
	background: var(--color-surface);
	object-fit: cover;
}

.woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection
	.wc-block-product :is(.wc-block-components-product-title, .wp-block-woocommerce-product-title, .wp-block-post-title) {
	display: block;
	max-inline-size: 100%;
	overflow-wrap: break-word;
	word-break: normal;
	text-align: start;
	text-wrap: pretty;
	unicode-bidi: isolate;
}

.woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection
	.wc-block-product :is(.wc-block-components-product-price, .wp-block-woocommerce-product-price) {
	direction: ltr;
	font-weight: var(--font-weight-semibold);
	text-align: start;
	unicode-bidi: isolate;
}

.woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection
	.wc-block-product .wp-block-button.wc-block-components-product-button :is(a, button) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 2.75rem;
	padding-block: var(--space-2);
	padding-inline: var(--space-4);
	border: 1px solid var(--color-border-strong);
	border-radius: var(--radius-button);
	color: var(--color-ink);
	font-size: var(--font-size-ui);
	font-weight: var(--font-weight-semibold);
	text-decoration: none;
}

@media (max-width: 969px) {
	.woocommerce-cart .entry-header,
	.woocommerce-cart .page-header,
	.woocommerce-cart .wp-block-woocommerce-cart,
	.woocommerce-cart .wp-block-woocommerce-cart.alignwide,
	.woocommerce-cart .wp-block-woocommerce-cart.alignfull {
		inline-size: calc(100% - var(--container-gutter) - var(--container-gutter));
	}

	.woocommerce-cart .entry-header,
	.woocommerce-cart .page-header {
		padding-block: var(--space-6) var(--space-3);
	}

	.woocommerce-cart .wp-block-woocommerce-cart {
		padding-block-end: var(--space-8);
	}

	.woocommerce-cart .wc-block-components-sidebar-layout {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: var(--space-6);
	}

	.woocommerce-cart .wc-block-components-sidebar-layout > .wc-block-components-main,
	.woocommerce-cart .wc-block-components-sidebar-layout > .wc-block-cart__main {
		order: 1;
		inline-size: 100%;
	}

	.woocommerce-cart .wc-block-components-sidebar-layout > .wc-block-components-sidebar,
	.woocommerce-cart .wc-block-components-sidebar-layout > .wc-block-cart__sidebar {
		order: 2;
		inline-size: 100%;
	}

	.woocommerce-cart .wc-block-cart-items__header {
		display: none;
	}

	/* The stacked layout keeps the semantic row but uses the verified two-column image /
	 * product layout. Total is a direct cell in the product column; quantity,
	 * prices, and remove remain nested in product content. */
	.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row,
	.woocommerce-cart .wc-block-cart-items__row {
		display: grid;
		grid-template-columns: minmax(5.5rem, 7rem) minmax(0, 1fr);
		column-gap: var(--space-3);
		row-gap: var(--space-1);
		align-items: start;
		padding-block: var(--space-4);
	}

	.woocommerce-cart .wc-block-cart-items__row > :is(
		.wc-block-cart-item__image,
		.wc-block-cart-item__product,
		.wc-block-cart-item__total
	) {
		min-inline-size: 0;
		padding-block: 0;
	}

	.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row > td.wc-block-cart-item__image,
	.woocommerce-cart td.wc-block-cart-item__image {
		grid-column: 1;
		grid-row: 1 / span 2;
		inline-size: auto;
		padding-inline-end: var(--space-3);
	}

	.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row > td.wc-block-cart-item__product,
	.woocommerce-cart td.wc-block-cart-item__product {
		grid-column: 2;
		grid-row: 1;
		padding-inline: 0;
	}

	.woocommerce-cart .wc-block-cart-item__wrap {
		gap: var(--space-1);
	}

	.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row > td.wc-block-cart-item__total,
	.woocommerce-cart td.wc-block-cart-item__total {
		grid-column: 2;
		grid-row: 2;
		align-self: start;
		inline-size: auto;
		padding-inline-start: 0;
	}

	.woocommerce-cart .wc-block-components-sidebar {
		padding-inline: 0;
	}

	.woocommerce-cart .wc-block-cart__submit-container {
		padding-inline: var(--container-gutter);
	}

	.woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection
		.wc-block-product-template.is-flex-container {
		gap: var(--space-3);
	}
}

@media (prefers-reduced-motion: reduce) {
	.woocommerce-cart .wc-block-cart__submit :is(
		.wc-block-components-button,
		.wc-block-components-button__button,
		.wc-block-cart__submit-button
	) {
		transition: none;
	}
}

/* Cart review composition. Native Woo controls and React-owned nodes stay in
 * place; grid placement gives mobile its own image/quantity rhythm. */
.woocommerce-cart .entry-header { padding-block: 48px 28px; }
.woocommerce-cart .sola-cart-item-count { display: block; margin-block-start: 8px; font-size: 16px; font-weight: 400; color: var(--color-ink-soft); }
.woocommerce-cart .wc-block-components-sidebar-layout { grid-template-columns: minmax(0, 1fr) minmax(300px, 360px); grid-template-areas: 'items summary' 'recommend recommend'; gap: clamp(28px, 4vw, 56px); }
.woocommerce-cart .wc-block-cart__main { display: contents; }
.woocommerce-cart .wp-block-woocommerce-cart-line-items-block { grid-area: items; min-inline-size: 0; }
.woocommerce-cart .wp-block-woocommerce-cart-items-block > .wp-block-woocommerce-product-collection { grid-area: recommend; }
.woocommerce-cart .wc-block-cart .wc-block-cart-items__header { display: none; }
.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row {
 display: grid; position: relative; grid-template-columns: 176px minmax(0, 1fr);
 grid-template-rows: auto auto 1fr auto; gap: 8px 24px; padding: 28px 0;
 border-block-end: 1px solid var(--color-border); min-block-size: 232px;
}
.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row > td { padding: 0; border: 0; inline-size: auto; }
.woocommerce-cart .wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__image { grid-column: 1; grid-row: 1 / 5; }
.woocommerce-cart .wc-block-cart-item__image img { border-radius: 0; aspect-ratio: 1; object-fit: contain; }
.woocommerce-cart .wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__product,
.woocommerce-cart .wc-block-cart-item__wrap,
.woocommerce-cart .wc-block-cart-item__quantity { display: contents !important; }
.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name { grid-column: 2; grid-row: 1; padding-inline-end: 44px; font-size: 19px !important; font-weight: 600 !important; line-height: 1.4; }
.woocommerce-cart .wc-block-cart-item__prices { grid-column: 2; grid-row: 2; font-size: 14px; justify-content: flex-end; }
.woocommerce-cart .wc-block-cart-item__prices .wc-block-components-product-price { font-size: 14px; direction: rtl; justify-content: flex-start; inline-size: 100%; }
.woocommerce-cart .wc-block-cart-item__prices ins { order: -1; }
.woocommerce-cart .wc-block-cart-item__prices :is(ins, del, .wc-block-components-product-price__value) { direction: ltr; unicode-bidi: isolate; display: inline-block; }
.woocommerce-cart .wc-block-components-product-metadata .wc-block-components-product-details { font-size: inherit; }
.woocommerce-cart .wc-block-components-product-metadata { grid-column: 2; grid-row: 3; font-size: 15px !important; line-height: 1.6; }
.woocommerce-cart .wc-block-components-product-details__name { font-weight: 600; }
.woocommerce-cart .wc-block-components-product-details__value { font-weight: 400; }
.woocommerce-cart .wc-block-cart-item__quantity .wc-block-components-quantity-selector { grid-column: 2; grid-row: 4; justify-self: start; align-self: end; }
.woocommerce-cart .wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__total { grid-column: 2; grid-row: 4; justify-self: end; align-self: end; padding-block-end: 10px; font-size: 18px; }
.woocommerce-cart .wc-block-cart-item__quantity .wc-block-cart-item__remove-link { position: absolute; inset-inline-end: 0; inset-block-start: 20px; color: var(--color-ink); }
.woocommerce-cart .wc-block-cart-item__remove-link:hover { background: var(--color-surface); }
.woocommerce-cart .wc-block-components-sale-badge { display: none; }
.woocommerce-cart .wc-block-components-quantity-selector { border-radius: 0; direction: ltr; min-block-size: 44px; }
.woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__input { border: 0; border-radius: 0; box-shadow: none; padding: 0; inline-size: 44px; min-inline-size: 0; font-size: 16px; }
.woocommerce-cart .wc-block-components-quantity-selector__button { background: transparent; }
.woocommerce-cart .wc-block-cart__sidebar { border: 0; padding: 0; position: sticky; top: calc(var(--sola-header-height, 120px) + 24px); }
.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block { background: #fff6ea; padding: 24px 24px 0; margin: 0 !important; }
.woocommerce-cart .wc-block-cart__payment-options:empty { display: none; margin: 0; }
.woocommerce-cart .wc-block-cart__totals-title { display: none; }
.woocommerce-cart .wc-block-cart__submit { margin: 0 !important; background: #fff6ea; padding: 20px 24px 24px; }
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper { border: 0; }
.woocommerce-cart .wc-block-components-totals-wrapper:has(.wc-block-components-totals-shipping[data-sola-hidden-free-shipping]) { display: none; }
.woocommerce-cart .wc-block-cart__submit-container { margin: 0; }
.woocommerce-cart .wc-block-cart__submit .wc-block-components-button { border-radius: 0 !important; min-block-size: 56px !important; }
.woocommerce-cart .wc-block-components-totals-footer-item { border-block-start: 1px solid var(--color-border); font-size: 20px; padding-block: 20px 0; }
.woocommerce-cart .wc-block-components-totals-coupon { margin: 0; padding: 0; border: 0; }
.woocommerce-cart .wc-block-components-totals-coupon .wc-block-components-panel__button { color: var(--color-ink); font-size: 16px; text-decoration: none; }
.woocommerce-cart .wc-block-components-totals-coupon__input input,
.woocommerce-cart .wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button { border-radius: 0; }
.woocommerce-cart .sola-cart-reassurance { padding: 20px 8px; font-size: 14px; line-height: 1.6; color: var(--color-ink-soft); }
.woocommerce-cart .sola-cart-reassurance h2 { font-size: 16px; font-weight: 600; margin: 0 0 8px; color: var(--color-ink); }
.woocommerce-cart .sola-cart-reassurance p { margin: 0 0 8px; }
.woocommerce-cart .sola-cart-payment-brands { margin-block-start: 18px; }
.woocommerce-cart .sola-cart-payment-brands__title { margin-block-end: 10px; color: var(--color-ink); font-size: 14px; font-weight: 600; }
.woocommerce-cart .sola-cart-payment-brands__list { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; margin: 0; padding: 0; list-style: none; }
.woocommerce-cart .sola-cart-payment-brands__item { display: grid; place-items: center; inline-size: 44px; block-size: 30px; overflow: hidden; border-radius: 6px; background: #f4f4f2; }
.woocommerce-cart .sola-cart-payment-brands__item img { display: block; inline-size: 100%; block-size: 100%; object-fit: contain; }
.woocommerce-cart .sola-cart-payment-brands__item:last-child img { inline-size: 44px !important; block-size: 44px !important; width: 44px !important; height: 44px !important; max-inline-size: none; object-fit: cover; transform: translateY(-7px); }
.woocommerce-cart .sola-cart-sticky-total { display: none; }
.woocommerce-cart .wc-block-components-totals-shipping[data-sola-hidden-free-shipping] { display: none; }
.woocommerce-cart .wp-block-woocommerce-product-collection .wp-block-post-title a { color: var(--color-ink); }
.woocommerce-cart .wp-block-woocommerce-product-collection .wp-block-button__link { border-radius: 0; }
@media (max-width: 1100px) and (min-width: 970px) {
 .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row { grid-template-columns: 136px minmax(0, 1fr); column-gap: 16px; }
 .woocommerce-cart .wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__total { grid-row: 5; justify-self: start; padding: 0; }
}
@media (max-width: 969px) {
 .woocommerce-cart .entry-header { padding-block: 32px 16px; }
 .woocommerce-cart .wc-block-components-sidebar-layout { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'items' 'summary' 'recommend'; gap: 32px; }
 .woocommerce-cart .wc-block-cart__sidebar { position: static; }
 .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row { grid-template-columns: 132px minmax(0, 1fr); gap: 8px 16px; padding-block: 24px; }
 .woocommerce-cart .wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__image { grid-row: 1 / 4; }
 .woocommerce-cart .wc-block-cart-item__image img { inline-size: 132px !important; max-inline-size: 100%; }
 .woocommerce-cart .wc-block-cart-item__quantity .wc-block-components-quantity-selector { grid-column: 1; grid-row: 4; }
 .woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name { font-size: 17px !important; }
 .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row > td.wc-block-cart-item__total { grid-column: 2; grid-row: 4; align-self: end; font-size: 16px; }
 .woocommerce-cart .wc-block-cart__submit-container--sticky { padding: 12px var(--container-gutter) calc(12px + env(safe-area-inset-bottom)); background: white; }
 .woocommerce-cart .sola-cart-sticky-total { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; font-size: 18px; font-weight: 600; margin-block-end: 10px; }
 .woocommerce-cart .wp-block-woocommerce-cart { padding-block-end: 160px; }
 .woocommerce-cart .wp-block-woocommerce-cart-items-block .wp-block-woocommerce-product-collection .wc-block-product-template.is-flex-container { display: grid; grid-auto-flow: column; grid-auto-columns: 66%; grid-template-columns: none; overflow-x: auto; scroll-snap-type: x proximity; padding-block-end: 12px; }
 .woocommerce-cart .wp-block-woocommerce-product-collection .wc-block-product-template > li { inline-size: 100% !important; scroll-snap-align: start; }
 .woocommerce-cart .wp-block-woocommerce-cart {
  scroll-padding-block-end: 150px;
 }
 .woocommerce-cart .wc-block-components-quantity-selector :is(
  .wc-block-components-quantity-selector__input,
  .wc-block-components-quantity-selector__button
 ),
 .woocommerce-cart .wc-block-cart-item__remove-link,
 .woocommerce-cart .wc-block-components-totals-coupon :is(
  .wc-block-components-panel__button,
  .wc-block-components-totals-coupon__input :is(input, textarea),
  .wc-block-components-totals-coupon__button
 ) {
  scroll-margin-block-end: 150px;
 }
}

/* Keep cart navigation available without adding another row or scroll handler.
 * The mini-cart open state must retain its existing backdrop escape rules. */
@media (max-width: 1023px) {
 body.woocommerce-cart:not(.sola-mini-cart-open) .sola-mobile-header {
  position: sticky;
  inset-block-start: 0;
  z-index: 40;
  border-block-end: 1px solid var(--color-border);
 }

 html:has(body.woocommerce-cart) {
  scroll-padding-block-start: 80px;
 }
}

/* WordPress keeps its toolbar fixed above 600px; below that it scrolls away. */
@media (min-width: 601px) and (max-width: 1023px) {
 body.woocommerce-cart.admin-bar:not(.sola-mini-cart-open) .sola-mobile-header {
  inset-block-start: var(--wp-admin--admin-bar--height, 46px);
 }

 html:has(body.woocommerce-cart.admin-bar) {
  scroll-padding-block-start: calc(80px + var(--wp-admin--admin-bar--height, 46px));
 }
}

/* Cart finish pass: keep the native summary sticky only while the line-item
 * table has room, then let cart-shell.js release it at that table boundary. */
@media (min-width: 970px) {
	.woocommerce-cart .wc-block-components-sidebar-layout {
		position: relative;
	}

	.woocommerce-cart .wc-block-cart__sidebar.is-sola-cart-sticky-released {
		position: absolute;
		inset-block-start: var(--sola-cart-sticky-release-top, 0px);
		inset-block-end: auto;
		align-self: start;
		grid-area: summary;
	}

	.woocommerce-cart .wc-block-cart__sidebar.is-sola-cart-sticky-disabled {
		position: static;
	}
}

/* Keep the recommendations band distinct from the item table on desktop while
 * extending it only toward the physical RTL start edge. Mobile keeps the
 * cart's normal gutter and horizontal product-collection treatment. */
@media (min-width: 970px) {
	.woocommerce-cart .wp-block-woocommerce-cart-items-block > .wp-block-woocommerce-product-collection {
		inline-size: calc(100% + clamp(1rem, 2vw, 2rem));
		margin-block-start: var(--space-4);
		margin-inline-end: 0;
		margin-inline-start: calc(-1 * clamp(1rem, 2vw, 2rem));
	}
}

/* A current-page Undo sits above the item table, alongside the summary. */
.woocommerce-cart .sola-cart-undo-notice {
	grid-area: undo;
	order: 0;
	box-sizing: border-box;
	min-inline-size: 0;
	margin-block-end: 0 !important;
}
.woocommerce-cart .sola-cart-undo-notice__message {
	flex: 1 1 12rem;
	overflow-wrap: anywhere;
}
.woocommerce-cart .sola-cart-undo-notice__button {
	border: 0 !important;
	border-radius: 0;
	text-decoration: underline;
	text-underline-offset: .2em;
}
.woocommerce-cart .sola-cart-undo-trash {
	flex: 0 0 44px;
	border-radius: 0;
	color: var(--color-ink) !important;
	scroll-margin-block-end: 150px;
}
.woocommerce-cart .sola-cart-undo-trash:hover {
	background: var(--color-surface-strong) !important;
}
.woocommerce-cart .sola-cart-undo-trash:focus-visible,
.woocommerce-cart .sola-cart-undo-notice__button:focus-visible {
	outline: 2px solid var(--focus-color);
	outline-offset: -3px;
}
.woocommerce-cart .entry-content > .sola-cart-undo-notice {
	inline-size: min(calc(100% - 2 * var(--container-gutter)), var(--container-max));
	margin-inline: auto;
	margin-block-end: 24px !important;
}
@media (min-width: 970px) {
	.woocommerce-cart .wc-block-components-sidebar-layout:has(.sola-cart-undo-notice) {
		grid-template-areas: 'undo summary' 'items summary' 'recommend recommend';
		row-gap: 20px;
	}
	.woocommerce-cart .wc-block-components-sidebar-layout:has(.sola-cart-undo-notice) .wp-block-woocommerce-product-collection {
		margin-block-start: 36px;
	}
}

/* The native coupon field and action share one rectangular, opaque 44px row. */
.woocommerce-cart .wc-block-components-totals-coupon__input.wc-block-components-text-input {
		box-sizing: border-box;
		block-size: 2.75rem !important;
		min-block-size: 2.75rem !important;
}

.woocommerce-cart .wc-block-components-totals-coupon__input :is(input, textarea) {
		box-sizing: border-box;
		block-size: 100% !important;
		min-block-size: 0 !important;
		padding-block: 0;
		border-radius: 0 !important;
		background: var(--color-white);
		color: var(--color-ink);
}

.woocommerce-cart .wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button {
		box-sizing: border-box;
		block-size: 2.75rem !important;
		min-block-size: 2.75rem !important;
		border-radius: 0 !important;
		border-color: var(--color-accent);
		background: var(--color-accent);
		color: var(--color-white);
}

.woocommerce-cart .wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button:hover:not(:disabled):not([aria-disabled='true']) {
		border-color: var(--color-accent-hover);
		background: var(--color-accent-hover);
		color: var(--color-white);
}

/* Coupon-to-total is the only summary separator; the CTA follows without a
 * second rule. Native descendant font declarations are normalized explicitly. */
.woocommerce-cart .wc-block-components-totals-coupon {
		border-block-start: 0;
}

.woocommerce-cart .wc-block-components-totals-footer-item {
		border-block-start: 1px solid var(--color-border);
		font-size: 18px;
}

.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
		font-size: 18px !important;
}

.woocommerce-cart .wc-block-components-totals-footer-item :is(
		.wc-block-components-totals-item__value,
		.wc-block-components-totals-item__value strong
) {
		font-size: 24px !important;
}

.woocommerce-cart .wc-block-cart__submit,
.woocommerce-cart .wc-block-cart__submit-container {
		border-block-start: 0 !important;
		border-top: 0 !important;
		box-shadow: none;
}

.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block,
.woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block {
		border-block-start: 0 !important;
		border-block-end: 0 !important;
		border-top: 0 !important;
		border-bottom: 0 !important;
		box-shadow: none;
}

/* Line totals are 20px on desktop and 18px on the stacked mobile rows. */
.woocommerce-cart .wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__total {
		font-size: 20px;
}

.woocommerce-cart .wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__total :is(
		.wc-block-components-product-price,
		.wc-block-formatted-money-amount,
		.wc-block-components-product-price__value,
		.woocommerce-Price-amount,
		.amount
	) {
		font-size: inherit !important;
}

/* Preserve the native current/old flex ordering while isolating each amount's
 * shekel glyph and digits. The old amount keeps an explicit strike. */
.woocommerce-cart .wc-block-cart-item__prices :is(
	.wc-block-formatted-money-amount,
	.wc-block-components-product-price__value,
	.woocommerce-Price-amount,
	.amount
) {
		direction: ltr;
		unicode-bidi: isolate;
}

.woocommerce-cart .wc-block-cart-item__prices del {
		text-decoration-line: line-through;
		text-decoration-thickness: 1px;
}

/* A disabled minimum quantity control remains neutral on hover; the separate
 * remove link keeps its own 44px target and error hover treatment. */
.woocommerce-cart .wc-block-components-quantity-selector__button:disabled,
.woocommerce-cart .wc-block-components-quantity-selector__button[aria-disabled='true'] {
		background: var(--color-surface);
		color: var(--color-ink-soft);
		box-shadow: none;
		cursor: not-allowed;
}

.woocommerce-cart .wc-block-components-quantity-selector__button:disabled:hover,
.woocommerce-cart .wc-block-components-quantity-selector__button[aria-disabled='true']:hover {
		background: var(--color-surface);
		color: var(--color-ink-soft);
		box-shadow: none;
}

@media (max-width: 969px) {
	.woocommerce-cart .wp-block-woocommerce-cart-line-items-block {
		order: 1;
	}

	.woocommerce-cart .wp-block-woocommerce-cart-items-block,
	.woocommerce-cart .wp-block-woocommerce-cart-items-block > .wp-block-woocommerce-product-collection {
		order: 3;
	}

	.woocommerce-cart .wc-block-cart__sidebar {
		order: 2;
	}

	.woocommerce-cart .wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__total {
		font-size: 18px;
	}
}
