/**
 * Cart / checkout presentation for DTF Chef designer project lines.
 * Loaded on cart & checkout — not the builder SPA bundle.
 *
 * OUTER WooCommerce/Avada cart columns are left intact (no row CSS-grid,
 * no colspan, no semantic column remapping).
 *
 * INNER product-name presentation only:
 *   title → divider → [ thumbnail + motifs | production summary ]
 *
 * Composition body classes:
 * - body.dtf-gsb-cart-designer-only
 * - body.dtf-gsb-cart-mixed
 * - body.dtf-gsb-cart-normal
 */

.dtf-gsb-designer-line__commercial-editor,
.dtf-gsb-cart-sla {
	--dtf-gsb-light: #fffcf5;
	--dtf-gsb-muted: #747474;
	--dtf-gsb-primary: #323acf;
	--dtf-gsb-pink: #EF58A8;
}

/* ---- Shared designer line body (fills the product cell) ---- */

.dtf-gsb-designer-line__body {
	display: block;
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	min-width: 0;
}

.dtf-gsb-designer-line__title-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.dtf-gsb-designer-line__title-main {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	min-width: 0;
	flex: 1 1 auto;
}

.dtf-gsb-designer-line__title-text {
	min-width: 0;
	overflow-wrap: anywhere;
	word-break: break-word;
}

/* MOBILE-05 — Desktop keeps en-dash filename inline; Mobile stacks (see ≤782px). */
.dtf-gsb-designer-line__title-dash {
	flex: 0 0 auto;
	white-space: pre;
}

.dtf-gsb-designer-line__title-filename {
	min-width: 0;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.dtf-gsb-designer-line__price-meta {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.55rem;
	min-width: 0;
	flex-wrap: wrap;
}

/* CORR-01 — total block outside .comparison so fragment refresh cannot strip it. */
.dtf-gsb-designer-line__total-block {
	display: none;
}

.dtf-gsb-designer-line__line-total {
	display: none;
}

.dtf-gsb-designer-line__title-aside {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
	min-width: 0;
}

.dtf-gsb-designer-line__comparison {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.9rem;
	min-width: 0;
}

.dtf-gsb-designer-line__reference-total {
	display: inline-block;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
	text-decoration: line-through;
	opacity: 0.72;
	color: inherit;
}

.dtf-gsb-designer-line__prio-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	padding: 0.12rem 0.45rem;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.2;
	color: #fff;
	background: var(--dtf-gsb-pink, #EF58A8);
}

/* CUSTOM-SIZE-CART-02-CORRECTIVE-1 — file identity next to title (not clickable) */
.dtf-gsb-designer-line__file-identity-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	padding: 0.14rem 0.42rem;
	border-radius: 4px;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.2;
	color: #fff;
	background: #323acf;
	white-space: nowrap;
	pointer-events: none;
	user-select: none;
	cursor: default;
}

.dtf-gsb-cart-qty {
	display: inline-flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 0.35rem;
	flex: 0 0 auto;
	flex-shrink: 0;
	min-width: min-content;
}

.dtf-gsb-cart-qty__btn {
	width: 1.75rem;
	height: 1.75rem;
	border: 1px solid rgba(0, 0, 0, 0.18);
	border-radius: 4px;
	background: #fff;
	color: inherit;
	cursor: pointer;
	line-height: 1;
	font-size: 1rem;
	flex: 0 0 1.75rem;
}

/* CART-EDIT-01H: structural scope — must not depend on body.dtf-gsb-cart-designer-only
 * or Avada .fusion-product-name-wrapper timing. wp_kses_post also strips <input> on first paint. */
.woocommerce-cart-form tr.dtf-gsb-designer-line .dtf-gsb-designer-line__commercial-editor .dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input[type='text'],
.woocommerce-cart-form tr.dtf-gsb-designer-line .dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input[type='text'],
.woocommerce-cart-form tr.dtf-gsb-designer-line td.product-name .fusion-product-name-wrapper .dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input[type='text'],
.woocommerce-cart-form tr.dtf-gsb-designer-line td.product-name .product-info .dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input[type='text'],
body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-name .fusion-product-name-wrapper input.dtf-gsb-cart-qty__input[type='text'],
body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-name input.dtf-gsb-cart-qty__input[type='text'],
body.dtf-gsb-cart-designer-only .woocommerce-cart-form .dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input[type='text'],
body.dtf-gsb-cart-designer-only .dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input[type='text'],
.dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input[type='text'],
.dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input {
	box-sizing: border-box !important;
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: static !important;
	inset: auto !important;
	z-index: auto;
	flex: 0 0 4.5rem !important;
	width: 4.5rem !important;
	min-width: 4.5rem !important;
	max-width: 4.5rem !important;
	height: 1.75rem !important;
	min-height: 1.75rem !important;
	margin: 0 !important;
	padding: 0 0.2rem !important;
	text-align: center !important;
	text-indent: 0 !important;
	line-height: 1.75rem !important;
	font-size: 0.95rem !important;
	font-variant-numeric: tabular-nums;
	color: #1a1a1a !important;
	background: #fff !important;
	border: 1px solid rgba(0, 0, 0, 0.18) !important;
	border-radius: 4px !important;
	box-shadow: none !important;
	overflow: visible !important;
	pointer-events: auto !important;
	cursor: text !important;
	-webkit-text-fill-color: #1a1a1a !important;
	-moz-appearance: textfield !important;
	appearance: textfield !important;
	clip: auto !important;
	clip-path: none !important;
	transform: none !important;
	letter-spacing: normal !important;
}

body.dtf-gsb-cart-designer-only .woocommerce-cart-form .dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input[type='text']:focus,
.woocommerce-cart-form tr.dtf-gsb-designer-line .dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input[type='text']:focus,
.dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input[type='text']:focus,
.dtf-gsb-cart-qty input.dtf-gsb-cart-qty__input:focus {
	outline: 2px solid rgba(21, 101, 192, 0.35) !important;
	outline-offset: 1px;
}

.dtf-gsb-cart-qty__unit {
	font-size: 0.85rem;
}

.woocommerce-cart-form tr.dtf-gsb-designer-line td.product-name .product-info .dtf-gsb-cart-qty,
.woocommerce-cart-form tr.dtf-gsb-designer-line td.product-name .fusion-product-name-wrapper .dtf-gsb-cart-qty {
	font-size: 1rem;
}

.dtf-gsb-cart-sla.is-busy {
	pointer-events: none;
}

.dtf-gsb-cart-qty.is-busy,
.dtf-gsb-designer-line__body.is-busy .dtf-gsb-cart-qty {
	opacity: 0.72;
	pointer-events: none;
}

.dtf-gsb-designer-line__cart-edit-feedback {
	margin-top: 0.35rem;
	min-height: 0;
}

.dtf-gsb-designer-line__cart-edit-feedback .dtf-gsb-cart-editor-status,
.dtf-gsb-designer-line__cart-edit-feedback .dtf-gsb-cart-editor-error {
	margin: 0.15rem 0 0;
}

.dtf-gsb-cart-qty.is-error .dtf-gsb-cart-qty__input {
	border-color: #b42318 !important;
}

.dtf-gsb-cart-sla {
	display: grid;
	grid-template-columns: minmax(10rem, 1fr) minmax(10rem, 1fr);
	gap: 0.4rem;
	width: 100%;
	min-width: 0;
}

.dtf-gsb-cart-sla__option {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr);
	align-items: center;
	gap: 0;
	padding: 0.45rem 0.55rem;
	border: 1px solid transparent;
	border-radius: 6px;
	background: var(--dtf-gsb-light, #fffcf5);
	cursor: pointer;
	text-align: center;
	min-width: 0;
	white-space: normal;
	overflow-wrap: break-word;
	word-break: normal;
	color: var(--dtf-gsb-muted, #747474);
	transition:
		border-color 0.15s ease,
		background-color 0.15s ease,
		color 0.15s ease,
		box-shadow 0.15s ease;
}

.dtf-gsb-cart-sla__option.is-standard {
	border-color: color-mix(in srgb, var(--dtf-gsb-primary, #323acf) 25%, transparent);
}

.dtf-gsb-cart-sla__option.is-prio {
	border-color: color-mix(in srgb, var(--dtf-gsb-pink, #EF58A8) 25%, transparent);
}

.dtf-gsb-cart-sla__option.is-standard:not(.is-selected):hover {
	border-color: color-mix(in srgb, var(--dtf-gsb-primary, #323acf) 55%, transparent);
	background: color-mix(in srgb, var(--dtf-gsb-primary, #323acf) 6%, var(--dtf-gsb-light, #fffcf5));
}

.dtf-gsb-cart-sla__option.is-standard:not(.is-selected):hover .dtf-gsb-cart-sla__service-label {
	color: var(--dtf-gsb-primary, #323acf);
}

.dtf-gsb-cart-sla__option.is-prio:not(.is-selected):hover {
	border-color: color-mix(in srgb, var(--dtf-gsb-pink, #EF58A8) 55%, transparent);
	background: color-mix(in srgb, var(--dtf-gsb-pink, #EF58A8) 6%, var(--dtf-gsb-light, #fffcf5));
}

.dtf-gsb-cart-sla__option.is-prio:not(.is-selected):hover .dtf-gsb-cart-sla__service-label {
	color: var(--dtf-gsb-pink, #EF58A8);
}

.dtf-gsb-cart-sla__option.is-selected.is-standard {
	border-color: var(--dtf-gsb-primary, #323acf);
	box-shadow:
		inset 0 0 0 1px var(--dtf-gsb-primary, #323acf),
		0 1px 4px color-mix(in srgb, var(--dtf-gsb-primary, #323acf) 18%, transparent);
}

.dtf-gsb-cart-sla__option.is-selected.is-prio {
	border-color: var(--dtf-gsb-pink, #EF58A8);
	box-shadow:
		inset 0 0 0 1px var(--dtf-gsb-pink, #EF58A8),
		0 1px 4px color-mix(in srgb, var(--dtf-gsb-pink, #EF58A8) 18%, transparent);
}

.dtf-gsb-cart-sla__option:focus-visible {
	outline: 2px solid rgba(21, 101, 192, 0.35);
	outline-offset: 2px;
}

.dtf-gsb-cart-sla__service {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.08rem;
	min-width: 0;
	grid-column: 1;
}

.dtf-gsb-cart-sla__service-label {
	font-weight: 600;
	font-size: 1.2rem;
	line-height: 1.1;
	text-transform: uppercase;
	color: var(--dtf-gsb-muted, #747474);
	transition: color 0.15s ease;
}

.dtf-gsb-cart-sla__service-subtitle {
	font-size: 0.5rem;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--dtf-gsb-muted, #747474);
}

.dtf-gsb-cart-sla__option.is-selected.is-standard .dtf-gsb-cart-sla__service-label {
	color: var(--dtf-gsb-primary, #323acf);
}

.dtf-gsb-cart-sla__option.is-selected.is-prio .dtf-gsb-cart-sla__service-label {
	color: var(--dtf-gsb-pink, #EF58A8);
}

.dtf-gsb-cart-sla__divider {
	width: 1px;
	align-self: stretch;
	justify-self: center;
	margin: 0.15rem 0;
	flex-shrink: 0;
	grid-column: 2;
	background: color-mix(in srgb, var(--dtf-gsb-muted, #747474) 30%, transparent);
}

.dtf-gsb-cart-sla__option.is-standard:not(.is-selected) .dtf-gsb-cart-sla__divider {
	background: color-mix(in srgb, var(--dtf-gsb-primary, #323acf) 25%, transparent);
}

.dtf-gsb-cart-sla__option.is-prio:not(.is-selected) .dtf-gsb-cart-sla__divider {
	background: color-mix(in srgb, var(--dtf-gsb-pink, #EF58A8) 25%, transparent);
}

.dtf-gsb-cart-sla__option.is-selected.is-standard .dtf-gsb-cart-sla__divider {
	background: color-mix(in srgb, var(--dtf-gsb-primary, #323acf) 35%, transparent);
}

.dtf-gsb-cart-sla__option.is-selected.is-prio .dtf-gsb-cart-sla__divider {
	background: color-mix(in srgb, var(--dtf-gsb-pink, #EF58A8) 35%, transparent);
}

.dtf-gsb-cart-sla__details {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.1rem;
	min-width: 0;
	grid-column: 3;
	text-align: center;
}

.dtf-gsb-cart-sla__hint,
.dtf-gsb-cart-sla__unit-price {
	font-size: 0.75rem;
	white-space: normal;
	overflow-wrap: break-word;
	word-break: normal;
	color: var(--dtf-gsb-muted, #747474);
}

.dtf-gsb-cart-sla__unit-price {
	font-size: 0.82rem;
	font-weight: 500;
}

.dtf-gsb-cart-sla__option.is-selected .dtf-gsb-cart-sla__hint {
	color: color-mix(in srgb, var(--dtf-gsb-muted, #747474) 88%, #000);
}

.dtf-gsb-cart-sla__option.is-selected .dtf-gsb-cart-sla__unit-price {
	color: #1a1a1a;
}

.dtf-gsb-line-subtotal {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.1rem;
	line-height: 1.2;
}

.dtf-gsb-line-subtotal__tax {
	font-size: 0.72rem;
	color: rgba(0, 0, 0, 0.55);
	font-weight: 400;
}

.dtf-gsb-line-subtotal__amount {
	font-weight: 700;
	color: #1a1a1a;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum";
}

.dtf-gsb-designer-line__title-row--grouped {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.45rem 1rem;
	width: 100%;
}

.dtf-gsb-designer-line__title-row--grouped .dtf-gsb-designer-line__title-main {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	column-gap: 0.25rem;
	row-gap: 0.1rem;
	flex: 1 1 auto;
	min-width: 0;
}

.dtf-gsb-designer-line__title-row--grouped .dtf-gsb-designer-line__title-aside {
	flex: 0 0 auto;
}

.dtf-gsb-designer-line__title-row--grouped .dtf-gsb-designer-line__reference-total {
	font-size: 18px;
	color: rgba(0, 0, 0, 0.55);
	font-weight: 500;
}

.dtf-gsb-designer-line__title-sep {
	opacity: 0.55;
	white-space: nowrap;
}

.dtf-gsb-designer-line__summary-row--production-duration .dtf-gsb-designer-line__summary-value {
	white-space: nowrap;
}

/* CART-EDIT-01B — dedicated commercial editor (not the grouped summary grid). */
.dtf-gsb-designer-line__commercial-editor {
	min-width: 0;
	padding-left: 1.25rem;
	border-left: 1px solid rgba(0, 0, 0, 0.14);
	box-sizing: border-box;
}

.dtf-gsb-cart-editor-row {
	display: grid;
	grid-template-columns: 7.75rem minmax(0, 1fr);
	column-gap: 0.75rem;
	align-items: center;
	margin: 0 0 0.55rem;
	min-width: 0;
}

.dtf-gsb-cart-editor-row:last-child {
	margin-bottom: 0;
}

.dtf-gsb-cart-editor-row__label,
.dtf-gsb-cart-editor-block__label {
	min-width: 0;
	color: inherit;
	opacity: 0.82;
	font-size: 0.925em;
	line-height: 1.35;
}

.dtf-gsb-cart-editor-row__value {
	min-width: 0;
	justify-self: start;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum";
	font-weight: 500;
	white-space: nowrap;
}

.dtf-gsb-cart-editor-row--qty .dtf-gsb-cart-qty {
	justify-self: start;
}

.dtf-gsb-cart-editor-block--sla {
	display: block;
	width: 100%;
	min-width: 0;
	margin: 0.15rem 0 0;
}

.dtf-gsb-cart-editor-block__label {
	display: block;
	margin: 0 0 0.35rem;
}

.dtf-gsb-cart-editor-error {
	margin: 0.5rem 0 0;
	padding: 0;
	font-size: 0.85rem;
	line-height: 1.35;
	color: #b42318;
}

.dtf-gsb-cart-editor-error[hidden] {
	display: none;
}

.dtf-gsb-cart-editor-status {
	margin: 0.35rem 0 0;
	padding: 0;
	font-size: 0.85rem;
	line-height: 1.35;
	opacity: 0.75;
	color: inherit;
}

.dtf-gsb-cart-editor-status[hidden] {
	display: none;
}

.dtf-gsb-cart-mixed-service-notice {
	margin: 0 0 1rem;
	padding: 0.75rem 1rem;
	border-radius: 6px;
	background: color-mix(in srgb, var(--dtf-gsb-pink, #EF58A8) 12%, #fff);
	border: 1px solid color-mix(in srgb, var(--dtf-gsb-pink, #EF58A8) 35%, transparent);
	font-size: 0.92rem;
	line-height: 1.4;
}

.dtf-gsb-designer-line__rule {
	display: block;
	width: 100%;
	height: 0;
	margin: 0.55rem 0 0.75rem;
	border: 0;
	border-top: 1px solid rgba(0, 0, 0, 0.14);
}

/* ---- Inner content grids (inside .product-name only) ----
 * CART-PRESENTATION-02A: grouped Free / grouped Meterware only.
 * Transfer Designer (--transfer-designer) has its own cart/checkout contracts.
 * Detailed-source / fixed-format use the three-column geometry below.
 */

.dtf-gsb-designer-line__content:not(.dtf-gsb-designer-line__content--detailed-source):not(.dtf-gsb-designer-line__content--fixed-format):not(.dtf-gsb-designer-line__content--transfer-designer) {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
	column-gap: 2.5rem;
	align-items: start;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

/*
 * TRANSFER-DESIGNER-CART-02U…02W — shared Transfer Designer structure.
 * 02U: flexible motif tracks + bounded filename (no intrinsic takeover).
 * 02W: outer grid columns are cart/checkout-scoped (user-verified; do not share).
 */
.dtf-gsb-designer-line__content--transfer-designer {
	display: grid;
	column-gap: 1.5rem;
	align-items: start;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

/* 02W cart desktop authority — exact user-verified values (Woo cart only). */
.woocommerce-cart .dtf-gsb-designer-line__content--transfer-designer {
	grid-template-columns: minmax(0, 1.5fr) minmax(22rem, 1.2fr);
}

.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__primary--motif-stack {
	min-width: 0;
	max-width: 100%;
	width: auto;
}

.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-motif-stack__item {
	grid-template-columns: 48px minmax(0, 1fr) max-content;
	column-gap: 0.65rem;
	min-width: 0;
}

.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-motif-stack__name {
	/* Definite cap so ellipsis engages; 02V relaxes V164 16rem slightly. */
	max-width: 18rem;
}

.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-motif-stack__qty {
	min-width: max-content;
	white-space: nowrap;
}

.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary {
	min-width: 0;
	width: 100%;
	max-width: none;
	padding-left: 1.25rem;
	border-left: 1px solid rgba(0, 0, 0, 0.14);
	box-sizing: border-box;
}

.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row:not(.dtf-gsb-designer-line__summary-row--badge),
.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row--laufmeter {
	grid-template-columns: max-content minmax(0, 1fr);
	column-gap: 0.85rem;
	width: 100%;
}

/* TD-PRIO-01-R3 — SLA editor is full-bleed in the summary value; drop label/value column-gap rail. */
.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row--badge,
.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row--production-duration.dtf-gsb-designer-line__summary-row--badge {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	column-gap: 0;
	width: 100%;
}

.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row--badge .dtf-gsb-designer-line__summary-value {
	text-align: left;
	justify-self: stretch;
	width: 100%;
	min-width: 0;
	white-space: normal;
}

.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-value {
	text-align: right;
	justify-self: stretch;
	white-space: nowrap;
	min-width: 0;
}

.dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__laufmeter-group {
	display: inline-flex;
	width: 100%;
	justify-content: flex-end;
	white-space: nowrap;
	flex-wrap: nowrap;
}

.dtf-gsb-designer-line__primary {
	display: grid;
	grid-template-columns: 9.5rem minmax(0, 1fr);
	column-gap: 1rem;
	align-items: start;
	min-width: 0;
}

.dtf-gsb-designer-line__thumb {
	width: 9.5rem;
	height: 9.5rem;
	max-width: 100%;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: rgba(0, 0, 0, 0.03);
	border-radius: 4px;
}

.dtf-gsb-designer-line__thumb:empty {
	display: none;
}

.dtf-gsb-designer-line__primary:has(> .dtf-gsb-designer-line__thumb:empty) {
	grid-template-columns: minmax(0, 1fr);
}

.dtf-gsb-designer-line__thumb img,
.dtf-gsb-designer-line__thumb-img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center;
}

.dtf-gsb-designer-line__summary {
	min-width: 0;
	padding-left: 1.25rem;
	border-left: 1px solid rgba(0, 0, 0, 0.1);
	box-sizing: border-box;
}

.dtf-gsb-designer-line__summary-row {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
	column-gap: 0.75rem;
	align-items: baseline;
	margin: 0 0 0.4rem;
	font-size: 0.925em;
	line-height: 1.35;
}

.dtf-gsb-designer-line__summary-row:last-child {
	margin-bottom: 0;
}

.dtf-gsb-designer-line__summary-label {
	min-width: 0;
	color: inherit;
	opacity: 0.82;
}

.dtf-gsb-designer-line__summary-value {
	min-width: 0;
	text-align: right;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum";
	font-weight: 500;
}

.dtf-gsb-designer-line__summary-row--laufmeter {
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
}

.dtf-gsb-designer-line__laufmeter-group {
	display: inline-flex;
	align-items: baseline;
	justify-content: flex-end;
	column-gap: 0.35em;
	flex-wrap: nowrap;
	white-space: nowrap;
	max-width: 100%;
}

.dtf-gsb-designer-line__laufmeter-sep {
	flex: 0 0 auto;
}

@media (max-width: 480px) {
	.dtf-gsb-designer-line__laufmeter-group {
		flex-wrap: wrap;
		white-space: normal;
		row-gap: 0.15em;
	}
}

/* PROFILE-04D.7 — fidelity to pre-D.5 broad cart geometry (presentation only).
 *
 * Parent: designer-only cart gives .product-name remaining shop_table width
 * (table-layout:fixed; product-name width:100% after remove + ~10rem subtotal).
 * D.6 failure modes audited:
 * - right `1.35fr` + padding stole width → Einzelpreis wrapped
 * - label rail with intrinsic sizing + high min floor competed with narrow right column
 * - ff-meta flex gap + per-row margin stacked → large Dateigröße/Format gap
 * - that gap pushed artwork thumbnail downward
 *
 * Target: same visual share as approved `.content { 3fr | 2fr }` with image
 * peeled out as a sibling (not nested inside a compressed primary).
 */
.dtf-gsb-designer-line__content--fixed-format {
	display: grid;
	grid-template-columns: 9.5rem minmax(16rem, 1fr) minmax(23rem, 1.25fr);
	column-gap: 1rem;
	align-items: start;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.dtf-gsb-designer-line__content--fixed-format:has(> .dtf-gsb-designer-line__thumb:empty) {
	grid-template-columns: minmax(16rem, 1fr) minmax(23rem, 1.25fr);
}

.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__thumb {
	width: 9.5rem;
	height: 9.5rem;
	max-width: 100%;
}

.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-meta-wrap {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	min-width: 0;
}

.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-meta {
	display: flex;
	flex-direction: column;
	gap: 0;
	min-width: 0;
}

.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-meta .dtf-gsb-designer-line__summary-row,
.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-row:not(.dtf-gsb-designer-line__summary-row--badge) {
	display: grid;
	/* Stable label rail; values keep remaining width. */
	grid-template-columns: 6.25rem minmax(0, 1fr);
	column-gap: 0.85rem;
	align-items: baseline;
	margin: 0 0 0.35rem;
	font-size: 0.925em;
	line-height: 1.35;
}

.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-meta .dtf-gsb-designer-line__summary-row:last-child,
.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-row:not(.dtf-gsb-designer-line__summary-row--badge):last-of-type {
	margin-bottom: 0;
}

.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-meta .dtf-gsb-designer-line__summary-value {
	text-align: left;
	justify-self: start;
	white-space: nowrap;
}

.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__summary {
	min-width: 0;
	padding-left: 1.25rem;
	border-left: 1px solid rgba(0, 0, 0, 0.14);
	box-sizing: border-box;
}

.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-value {
	text-align: right;
}

.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-row--badge {
	display: flex;
	justify-content: flex-end;
	margin-top: 0.25rem;
	margin-bottom: 0;
}

.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-row--badge .dtf-gsb-designer-line__summary-value {
	text-align: right;
}

.dtf-gsb-designer-line__ff-artwork {
	margin: 0;
}

.dtf-gsb-designer-line__ff-artwork-trigger {
	display: inline-flex;
	padding: 0;
	margin: 0;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 4px;
	background: rgba(0, 0, 0, 0.03);
	cursor: pointer;
	line-height: 0;
}

.dtf-gsb-designer-line__ff-artwork-trigger:focus-visible {
	outline: 2px solid #1a73e8;
	outline-offset: 2px;
}

.dtf-gsb-designer-line__ff-artwork-img {
	display: block;
	width: 5.5rem;
	height: 5.5rem;
	object-fit: contain;
	object-position: center;
}

.dtf-gsb-ff-preview-dialog {
	border: 0;
	padding: 0;
	max-width: min(92vw, 36rem);
	background: transparent;
}

.dtf-gsb-ff-preview-dialog::backdrop {
	background: rgba(0, 0, 0, 0.55);
}

.dtf-gsb-ff-preview-dialog__panel {
	position: relative;
	background: #fff;
	border-radius: 6px;
	padding: 1rem 1rem 0.85rem;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.28);
}

.dtf-gsb-ff-preview-dialog__close {
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	z-index: 1;
	border: 0;
	border-radius: 4px;
	background: rgba(0, 0, 0, 0.08);
	padding: 0.35rem 0.55rem;
	font-size: 0.85rem;
	cursor: pointer;
}

.dtf-gsb-ff-preview-dialog__close:focus-visible {
	outline: 2px solid #1a73e8;
	outline-offset: 2px;
}

.dtf-gsb-ff-preview-dialog__img {
	display: block;
	width: 100%;
	max-height: min(70vh, 28rem);
	object-fit: contain;
	margin: 0 auto;
}

/* Meterware preset discount pill reused in FixedFormat cart */
.dtf-gsb-designer-line__discount-badge.dtf-gsb-mw-preset-row__discount,
.dtf-gsb-mw-preset-row__discount.dtf-gsb-designer-line__discount-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	max-width: 100%;
	min-height: 1.7rem;
	padding: 0.28rem 0.5rem;
	border-radius: 4px;
	background: #323acf;
	color: #fff;
	font-weight: 700;
	font-size: 0.88rem;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
	line-height: 1;
	text-align: center;
}

.dtf-gsb-designer-line__ref-price,
.dtf-gsb-designer-line__ref-price s {
	opacity: 0.72;
	font-weight: 400;
}

@media (max-width: 782px) {
	.dtf-gsb-designer-line__content--fixed-format {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 0.75rem;
		column-gap: 0;
	}

	.dtf-gsb-designer-line__content--fixed-format:has(> .dtf-gsb-designer-line__thumb:empty) {
		grid-template-columns: minmax(0, 1fr);
	}

	.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-meta .dtf-gsb-designer-line__summary-value {
		white-space: normal;
	}

	.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__summary,
	.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__commercial-editor {
		padding-left: 0;
		border-left: 0;
		padding-top: 0.4rem;
		border-top: 1px solid rgba(0, 0, 0, 0.1);
	}
}

/* CART-PRESENTATION-02A — Meterware detailed-source shares FixedFormat
 * three-column geometry. Do not restyle --fixed-format; duplicate the
 * accepted contract onto the shared presentation modifier.
 */
.dtf-gsb-designer-line__content--detailed-source {
	display: grid;
	grid-template-columns: 9.5rem minmax(16rem, 1fr) minmax(23rem, 1.25fr);
	column-gap: 1rem;
	align-items: start;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.dtf-gsb-designer-line__content--detailed-source:has(> .dtf-gsb-designer-line__thumb:empty) {
	grid-template-columns: minmax(16rem, 1fr) minmax(23rem, 1.25fr);
}

.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__thumb {
	width: 9.5rem;
	height: 9.5rem;
	max-width: 100%;
}

.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-meta-wrap {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	min-width: 0;
}

.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-meta {
	display: flex;
	flex-direction: column;
	gap: 0;
	min-width: 0;
}

.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-meta .dtf-gsb-designer-line__summary-row,
.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-row:not(.dtf-gsb-designer-line__summary-row--badge) {
	display: grid;
	/* Read-only metadata / leftover grouped summary only. Interactive
	 * detailed-source controls live in .dtf-gsb-designer-line__commercial-editor
	 * and must not inherit this 6.25rem label rail.
	 */
	grid-template-columns: 6.25rem minmax(0, 1fr);
	column-gap: 0.85rem;
	align-items: baseline;
	margin: 0 0 0.35rem;
	font-size: 0.925em;
	line-height: 1.35;
}

.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-meta .dtf-gsb-designer-line__summary-row:last-child,
.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-row:not(.dtf-gsb-designer-line__summary-row--badge):last-of-type {
	margin-bottom: 0;
}

.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-meta .dtf-gsb-designer-line__summary-value {
	text-align: left;
	justify-self: start;
	white-space: nowrap;
}

.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__summary {
	min-width: 0;
	padding-left: 1.25rem;
	border-left: 1px solid rgba(0, 0, 0, 0.14);
	box-sizing: border-box;
}

.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-value {
	text-align: right;
}

.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-row--badge {
	display: flex;
	justify-content: flex-end;
	margin-top: 0.25rem;
	margin-bottom: 0;
}

.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-row--badge .dtf-gsb-designer-line__summary-value {
	text-align: right;
}

@media (max-width: 782px) {
	.dtf-gsb-designer-line__content--detailed-source {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 0.75rem;
		column-gap: 0;
	}

	.dtf-gsb-designer-line__content--detailed-source:has(> .dtf-gsb-designer-line__thumb:empty) {
		grid-template-columns: minmax(0, 1fr);
	}

	.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-meta .dtf-gsb-designer-line__summary-value {
		white-space: normal;
	}

	.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__summary,
	.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__commercial-editor {
		padding-left: 0;
		border-left: 0;
		padding-top: 0.4rem;
		border-top: 1px solid rgba(0, 0, 0, 0.1);
	}

	.dtf-gsb-cart-sla {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ---- Motif list ---- */

.dtf-gsb-motif-list {
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
	min-width: 0;
	width: 100%;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.dtf-gsb-motif-item {
	min-width: 0;
}

.dtf-gsb-motif-item__name {
	min-width: 0;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-weight: 500;
	line-height: 1.3;
	margin: 0 0 0.2rem;
}

.dtf-gsb-motif-item__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: 0.85rem;
	row-gap: 0.15rem;
	min-width: 0;
}

.dtf-gsb-motif-item__size,
.dtf-gsb-motif-item__qty {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum";
	font-size: 0.925em;
	opacity: 0.92;
}

.dtf-gsb-motif-item__opt {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.5rem;
	min-height: 1.15em;
}

/* ---- Transfer Designer motif stack (CART-02 / CART-02B) ---- */

.dtf-gsb-motif-stack {
	display: flex;
	flex-direction: column;
	gap: 0;
	min-width: 0;
	width: 100%;
}

.dtf-gsb-motif-stack__item {
	display: grid;
	grid-template-columns: 48px minmax(180px, 1fr) minmax(150px, auto);
	grid-template-rows: auto auto;
	column-gap: 0.65rem;
	row-gap: 0.18rem;
	align-items: center;
	min-width: 0;
	padding: 0.45rem 0;
	border-top: 1px solid color-mix(in srgb, var(--dtf-gsb-muted, #666) 14%, transparent);
}

.dtf-gsb-motif-stack__item:first-child {
	border-top: none;
	padding-top: 0;
}

.dtf-gsb-motif-stack__thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	grid-column: 1;
	grid-row: 1 / span 2;
	align-self: center;
}

.dtf-gsb-motif-stack__thumb-img {
	width: 48px;
	height: 48px;
	object-fit: contain;
	display: block;
	border-radius: 4px;
	background: color-mix(in srgb, var(--dtf-gsb-muted, #666) 8%, transparent);
}

.dtf-gsb-motif-stack__thumb-trigger {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: none;
	background: transparent;
	cursor: pointer;
	border-radius: 4px;
	line-height: 0;
}

.dtf-gsb-motif-stack__thumb-trigger:focus-visible {
	outline: 2px solid var(--dtf-gsb-accent, #323acf);
	outline-offset: 2px;
}

.dtf-gsb-td-motif-preview-dialog .dtf-gsb-ff-preview-dialog__img {
	max-width: min(92vw, 42rem);
	max-height: min(82vh, 42rem);
}

.dtf-gsb-motif-stack__title {
	grid-column: 2;
	grid-row: 1;
	min-width: 0;
}

.dtf-gsb-motif-stack__meta {
	grid-column: 2;
	grid-row: 2;
	min-width: 0;
	display: inline-flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 0.45rem;
}

.dtf-gsb-motif-stack__opt-inline {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

.dtf-gsb-motif-stack__qty {
	grid-column: 3;
	grid-row: 2;
	justify-self: end;
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.35rem;
	min-width: 0;
	flex-wrap: nowrap;
}

.dtf-gsb-motif-stack__name {
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-weight: 500;
	line-height: 1.25;
}

.dtf-gsb-motif-stack__size {
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum";
	white-space: nowrap;
	font-size: 0.925em;
	opacity: 0.92;
}

.dtf-gsb-motif-stack__opt {
	display: none;
}

.dtf-gsb-opt-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.35rem;
	height: 1.35rem;
	border-radius: 999px;
	border: 1px solid transparent;
	font-size: 0.75rem;
	line-height: 1;
}

.dtf-gsb-opt-badge--success {
	color: var(--dtf-gsb-success, #1a7f4b);
	background: color-mix(in srgb, var(--dtf-gsb-success, #1a7f4b) 12%, #fff);
	border-color: color-mix(in srgb, var(--dtf-gsb-success, #1a7f4b) 35%, transparent);
}

.dtf-gsb-motif-stack__qty-label {
	font-size: 0.85em;
	opacity: 0.85;
	white-space: nowrap;
	flex: 0 0 auto;
}

.dtf-gsb-cart-qty--motif {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	flex: 0 0 auto;
}

.dtf-gsb-designer-line__sku,
.dtf-gsb-designer-line__title-row--grouped .dtf-gsb-designer-line__sku {
	display: inline;
	font-size: 12px;
	opacity: 0.82;
	margin-top: 0;
	line-height: 1.35;
	white-space: normal;
	overflow-wrap: anywhere;
}

.dtf-gsb-designer-line__sku-label {
	font-size: 12px;
	opacity: 0.92;
}

.dtf-gsb-designer-line__primary--motif-stack {
	width: 100%;
}

@media (max-width: 640px) {
	.dtf-gsb-motif-stack__item {
		grid-template-columns: 48px minmax(0, 1fr);
		grid-template-rows: auto auto auto;
		row-gap: 0.35rem;
	}

	.dtf-gsb-motif-stack__title {
		grid-column: 2;
		grid-row: 1;
	}

	.dtf-gsb-motif-stack__meta {
		grid-column: 2;
		grid-row: 2;
		flex-wrap: wrap;
	}

	.dtf-gsb-motif-stack__qty {
		grid-column: 1 / span 2;
		grid-row: 3;
		justify-self: stretch;
		justify-content: flex-start;
		padding-left: calc(48px + 0.65rem);
	}
}

/* ---- Meterware sheet rows (left column) ---- */

.dtf-gsb-meterware-sheet__top {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	column-gap: 0.75rem;
	align-items: baseline;
	min-width: 0;
}

.dtf-gsb-meterware-sheet__price {
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum";
	white-space: nowrap;
	text-align: right;
}

.dtf-gsb-meterware-sheet__meta {
	opacity: 0.92;
	font-size: 0.925em;
	line-height: 1.35;
}

@media (max-width: 520px) {
	.dtf-gsb-meterware-sheet__top {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 0.15rem;
	}

	.dtf-gsb-meterware-sheet__price {
		text-align: left;
	}
}

/* ---- Designer-only: hide redundant Price / Quantity / WC thumb columns
 * (previous working mechanism — no CSS-grid rewrite of table rows) ---- */

@media (min-width: 721px) {
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart,
	body.dtf-gsb-cart-designer-only table.shop_table.cart {
		table-layout: fixed;
		width: 100%;
		box-sizing: border-box;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart col.product-name,
	body.dtf-gsb-cart-designer-only table.shop_table.cart col.product-name {
		width: 100%;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart col.product-subtotal,
	body.dtf-gsb-cart-designer-only table.shop_table.cart col.product-subtotal {
		width: 10rem;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart col.product-remove,
	body.dtf-gsb-cart-designer-only table.shop_table.cart col.product-remove {
		width: 2.5rem;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-price,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-price,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-quantity,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-quantity,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-thumbnail,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-thumbnail,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-price,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-price,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-quantity,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-quantity,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-thumbnail,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-thumbnail {
		display: none !important;
		width: 0 !important;
		max-width: 0 !important;
		min-width: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
		border: 0 !important;
		overflow: hidden !important;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-remove,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-remove,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-remove,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-remove {
		width: 2.5rem;
		max-width: 2.5rem;
		min-width: 2.5rem;
		box-sizing: border-box;
	}

	/* CART-EDIT-01B: width:auto under table-layout:fixed sized this column to
	 * intrinsic content and left unused table width on the right. width:100%
	 * makes the product cell consume remaining space after remove + subtotal.
	 */
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-name,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-name,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-name,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-name {
		width: 100%;
		max-width: none;
		min-width: 0;
	}

	/* Avada wraps the product cell in a flex row and centers a shrink-to-content
	 * child, which shows as purple hatched free space on both sides. Consume
	 * remaining product-name width from the start. Designer-only only.
	 */
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-name .fusion-product-name-wrapper,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-name .fusion-product-name-wrapper {
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		align-items: flex-start;
		gap: 0;
		column-gap: 0;
		width: 100%;
		max-width: none;
		min-width: 0;
		box-sizing: border-box;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-name .fusion-product-name-wrapper > .product-info,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-name .fusion-product-name-wrapper > .product-info,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-name .fusion-product-name-wrapper .dtf-gsb-designer-line__body,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-name .fusion-product-name-wrapper .dtf-gsb-designer-line__body {
		flex: 1 1 auto;
		width: 100%;
		max-width: none;
		min-width: 0;
		margin-inline: 0;
		box-sizing: border-box;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-name .fusion-product-name-wrapper > .product-thumbnail,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-name .fusion-product-name-wrapper > .product-thumbnail,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-name .fusion-product-name-wrapper > .fusion-product-wrapper,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-name .fusion-product-name-wrapper > .fusion-product-wrapper {
		display: none;
		width: 0;
		max-width: 0;
		min-width: 0;
		flex: 0 0 0;
		overflow: hidden;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-subtotal,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-subtotal,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-subtotal,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-subtotal {
		width: 10rem;
		max-width: 10.5rem;
		min-width: 9.5rem;
		text-align: right;
		vertical-align: top;
		box-sizing: border-box;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-name,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-name,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-remove,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-remove {
		vertical-align: top;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-name,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-name,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-subtotal,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-subtotal {
		/* font-size / font-weight / padding-bottom: owned by .cart th (02W) */
		letter-spacing: 0.01em;
		line-height: 1.35;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-subtotal,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-subtotal {
		position: relative;
		text-indent: 100%;
		overflow: hidden;
		white-space: nowrap;
	}

	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-subtotal::before,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-subtotal::before {
		content: var(--dtf-gsb-cart-gesamtpreis-label, "Gesamtpreis");
		position: absolute;
		inset: 0;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		text-indent: 0;
		overflow: visible;
		white-space: nowrap;
		/* font-size / font-weight / padding-bottom: owned by .cart th::before (02W) */
		letter-spacing: 0.01em;
		line-height: 1.35;
	}
}

/* ---- TRANSFER-DESIGNER-CART-02W: user-verified cart / checkout table headings ---- */
.cart th {
	font-weight: 500 !important;
	font-size: 1.6625rem !important;
	padding-bottom: 10px !important;
}

.cart th::before {
	font-weight: 500 !important;
	font-size: 1.6625rem !important;
	padding-bottom: 10px !important;
}

.woocommerce-checkout-review-order-table th {
	font-weight: 500 !important;
	font-size: 1.3625rem !important;
	padding-bottom: 10px !important;
}

.woocommerce-checkout-review-order-table th::before {
	font-weight: 500 !important;
	font-size: 1.3625rem !important;
	padding-bottom: 10px !important;
}

/* Mixed cart: keep WC columns intact; designer lines stay identifiable */
body.dtf-gsb-cart-mixed tr.dtf-gsb-designer-line .dtf-gsb-designer-line__content {
	column-gap: 1.75rem;
}

body.dtf-gsb-cart-mixed tr.dtf-gsb-designer-line .dtf-gsb-designer-line__thumb {
	width: 7.5rem;
	height: 7.5rem;
}

body.dtf-gsb-cart-mixed tr.dtf-gsb-designer-line .dtf-gsb-designer-line__primary {
	grid-template-columns: 7.5rem minmax(0, 1fr);
}

@media (max-width: 720px) {
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-price,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-price,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-quantity,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-quantity,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart th.product-thumbnail,
	body.dtf-gsb-cart-designer-only .woocommerce-cart-form table.shop_table.cart td.product-thumbnail,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-price,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-price,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-quantity,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-quantity,
	body.dtf-gsb-cart-designer-only table.shop_table.cart th.product-thumbnail,
	body.dtf-gsb-cart-designer-only table.shop_table.cart td.product-thumbnail {
		display: none !important;
	}

	.dtf-gsb-designer-line__content {
		grid-template-columns: 1fr;
		row-gap: 1rem;
		column-gap: 0;
	}

	/* Match cart TD desktop specificity so ≤720px stack still wins over 02W grid. */
	.woocommerce-cart .dtf-gsb-designer-line__content--transfer-designer {
		grid-template-columns: 1fr;
		row-gap: 1rem;
		column-gap: 0;
	}

	.dtf-gsb-designer-line__summary {
		padding-left: 0;
		border-left: 0;
		padding-top: 0.75rem;
		border-top: 1px solid rgba(0, 0, 0, 0.1);
	}

	.dtf-gsb-designer-line__primary {
		grid-template-columns: 6.5rem minmax(0, 1fr);
		column-gap: 0.75rem;
	}

	.dtf-gsb-designer-line__thumb {
		width: 6.5rem;
		height: 6.5rem;
	}
}

@media (max-width: 480px) {
	.dtf-gsb-designer-line__primary {
		grid-template-columns: 1fr;
	}

	.dtf-gsb-designer-line__thumb {
		width: 9rem;
		height: 9rem;
	}
}

/* ---- Meterware checkout compact (Corrective B3-C1) ----
 * Cart keeps the full sheet list. Checkout shows title × qty + KPI summary only.
 * Scoped: no global WooCommerce/Avada column rewrites.
 */

.woocommerce-checkout .dtf-gsb-designer-line__body--meterware-checkout,
.woocommerce-checkout tr.dtf-gsb-meterware-checkout .dtf-gsb-designer-line__body--meterware-checkout {
	display: block;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}

.woocommerce-checkout .dtf-gsb-meterware-checkout-qty {
	white-space: nowrap;
	font-weight: 500;
	margin-left: 0.25em;
}

/*
 * Defense-in-depth: WC review-order appends strong.product-quantity via
 * woocommerce_checkout_cart_item_quantity (suppressed in PHP for Meterware).
 * Hide any residual theme copy only inside Meterware checkout lines.
 */
.woocommerce-checkout tr.dtf-gsb-meterware-checkout strong.product-quantity,
.woocommerce-checkout .dtf-gsb-meterware-checkout strong.product-quantity,
.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--detailed-source) strong.product-quantity,
.woocommerce-checkout tr.dtf-gsb-designer-line:has([data-dtf-gsb-commercial-surface='checkout_readonly']) strong.product-quantity {
	display: none !important;
}

.woocommerce-checkout .dtf-gsb-designer-line__content--meterware-checkout {
	display: grid;
	grid-template-columns: 4.5rem minmax(0, 1fr);
	column-gap: 0.85rem;
	align-items: start;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}

.woocommerce-checkout .dtf-gsb-designer-line__content--meterware-checkout:not(:has(> .dtf-gsb-designer-line__thumb)) {
	grid-template-columns: minmax(0, 1fr);
}

.woocommerce-checkout .dtf-gsb-designer-line__thumb--checkout {
	width: 4.5rem;
	height: 4.5rem;
	max-width: 100%;
}

.woocommerce-checkout .dtf-gsb-designer-line__checkout-copy {
	min-width: 0;
}

.woocommerce-checkout .dtf-gsb-designer-line__content--meterware-checkout .dtf-gsb-designer-line__summary {
	padding-left: 0;
	border-left: 0;
	max-width: 18rem;
}

.woocommerce-checkout .dtf-gsb-designer-line__content--meterware-checkout .dtf-gsb-designer-line__summary-row {
	grid-template-columns: minmax(0, 1fr) auto;
	overflow-wrap: anywhere;
}

.woocommerce-checkout tr.dtf-gsb-meterware-checkout td.product-quantity:empty {
	/* Native qty cell suppressed in PHP; keep column geometry if theme reserves it. */
	vertical-align: top;
}

@media (max-width: 720px) {
	.woocommerce-checkout .dtf-gsb-designer-line__content--meterware-checkout {
		grid-template-columns: 3.75rem minmax(0, 1fr);
		column-gap: 0.65rem;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__thumb--checkout {
		width: 3.75rem;
		height: 3.75rem;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--meterware-checkout .dtf-gsb-designer-line__summary {
		max-width: none;
	}
}

/* ---- TRANSFER-DESIGNER-CART-02R…02W: Transfer Designer checkout layout ----
 * Cart outer grid: .woocommerce-cart .content--transfer-designer (above).
 * Checkout outer grid: .woocommerce-checkout .content--transfer-designer (below).
 * 02U: finite left cap + definite name max-width (no intrinsic takeover).
 * 02W: exact user-verified desktop grid values (do not interpolate).
 */

.woocommerce-checkout .dtf-gsb-designer-line__body--transfer-checkout,
.woocommerce-checkout tr.dtf-gsb-transfer-designer-checkout .dtf-gsb-designer-line__body {
	display: block;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}

@media (min-width: 901px) {
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) #order_review table.shop_table,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) table.woocommerce-checkout-review-order-table {
		table-layout: fixed;
		width: 100%;
		box-sizing: border-box;
	}

	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) #order_review table.shop_table col.product-name,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) table.woocommerce-checkout-review-order-table col.product-name {
		width: 100%;
	}

	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) #order_review table.shop_table col.product-total,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) table.woocommerce-checkout-review-order-table col.product-total {
		width: 8rem;
	}

	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) #order_review table.shop_table th.product-name,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) #order_review table.shop_table td.product-name,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) table.woocommerce-checkout-review-order-table th.product-name,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) table.woocommerce-checkout-review-order-table td.product-name {
		width: 100%;
		max-width: none;
		min-width: 0;
		vertical-align: top;
	}

	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) #order_review table.shop_table th.product-total,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) #order_review table.shop_table td.product-total,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) table.woocommerce-checkout-review-order-table th.product-total,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--transfer-designer) table.woocommerce-checkout-review-order-table td.product-total {
		width: 8rem;
		max-width: 8.5rem;
		min-width: 7.5rem;
		box-sizing: border-box;
		text-align: right;
		vertical-align: top;
		white-space: nowrap;
		font-variant-numeric: tabular-nums;
	}

	body.woocommerce-checkout tr.dtf-gsb-transfer-designer-checkout td.product-name .fusion-product-name-wrapper,
	body.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--transfer-designer) td.product-name .fusion-product-name-wrapper {
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		align-items: flex-start;
		gap: 0;
		column-gap: 0;
		width: 100%;
		max-width: none;
		min-width: 0;
		box-sizing: border-box;
	}

	body.woocommerce-checkout tr.dtf-gsb-transfer-designer-checkout td.product-name .fusion-product-name-wrapper > .product-info,
	body.woocommerce-checkout tr.dtf-gsb-transfer-designer-checkout td.product-name .fusion-product-name-wrapper .dtf-gsb-designer-line__body,
	body.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--transfer-designer) td.product-name .fusion-product-name-wrapper > .product-info,
	body.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--transfer-designer) td.product-name .fusion-product-name-wrapper .dtf-gsb-designer-line__body {
		flex: 1 1 auto;
		width: 100%;
		max-width: none;
		min-width: 0;
		margin-inline: 0;
		box-sizing: border-box;
	}

	body.woocommerce-checkout tr.dtf-gsb-transfer-designer-checkout td.product-name .fusion-product-name-wrapper > .product-thumbnail,
	body.woocommerce-checkout tr.dtf-gsb-transfer-designer-checkout td.product-name .fusion-product-name-wrapper > .fusion-product-wrapper,
	body.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--transfer-designer) td.product-name .fusion-product-name-wrapper > .product-thumbnail,
	body.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--transfer-designer) td.product-name .fusion-product-name-wrapper > .fusion-product-wrapper {
		display: none;
		width: 0;
		max-width: 0;
		min-width: 0;
		flex: 0 0 0;
		overflow: hidden;
	}

	/*
	 * Desktop checkout RC46 — user-accepted Sammelbogen checkout grid.
	 * Keep finite left cap (02U structural fix); do not restore uncapped 1fr left.
	 */
	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer {
		display: grid;
		grid-template-columns: minmax(0, 42rem) minmax(22rem, 1fr);
		column-gap: 1rem;
		align-items: start;
		width: 100%;
		min-width: 0;
		max-width: 100%;
		box-sizing: border-box;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__primary--motif-stack {
		display: grid;
		grid-template-columns: 4.5rem minmax(0, 1fr);
		column-gap: 0.75rem;
		align-items: start;
		min-width: 0;
		width: auto;
		max-width: 100%;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__thumb--product {
		width: 4.5rem;
		height: 4.5rem;
		max-width: 100%;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-motif-stack__item {
		grid-template-columns: 40px minmax(0, 1fr) max-content;
		column-gap: 0.55rem;
		min-width: 0;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-motif-stack__thumb-img {
		width: 40px;
		height: 40px;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-motif-stack__name {
		max-width: 13.5rem;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-motif-stack__qty {
		justify-self: end;
		min-width: max-content;
		white-space: nowrap;
		padding-inline-end: 0.35rem;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary {
		min-width: 0;
		width: 100%;
		max-width: none;
		padding-left: 1.25rem;
		padding-right: 0;
		border-left: 1px solid rgba(0, 0, 0, 0.14);
		box-sizing: border-box;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row,
	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row--laufmeter {
		grid-template-columns: max-content minmax(0, 1fr);
		column-gap: 0.85rem;
		width: 100%;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-label {
		max-width: max-content;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-value {
		text-align: right;
		justify-self: stretch;
		white-space: nowrap;
		min-width: 0;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__laufmeter-group {
		display: inline-flex;
		width: 100%;
		justify-content: flex-end;
		white-space: nowrap;
		flex-wrap: nowrap;
	}
}

/* Narrow desktop: avoid horizontal overflow when 42rem+22rem exceeds content width. */
@media (min-width: 901px) and (max-width: 1180px) {
	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer {
		grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.9fr);
		column-gap: 0.75rem;
	}
}

/* Medium checkout: keep image+motifs; metrics full-width below. */
@media (max-width: 900px) and (min-width: 481px) {
	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		row-gap: 0.75rem;
		column-gap: 0;
		width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__primary--motif-stack {
		display: grid;
		grid-template-columns: 4.5rem minmax(0, 1fr);
		column-gap: 0.75rem;
		min-width: 0;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__thumb--product {
		width: 4.5rem;
		height: 4.5rem;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-motif-stack__item {
		grid-template-columns: 40px minmax(0, 1fr) max-content;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary {
		max-width: none;
		width: 100%;
		padding-left: 0;
		padding-top: 0.65rem;
		border-left: none;
		border-top: 1px solid rgba(0, 0, 0, 0.1);
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row,
	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row--laufmeter {
		grid-template-columns: max-content minmax(0, 1fr);
		width: 100%;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-value {
		text-align: right;
		white-space: nowrap;
	}
}

/* Mobile checkout: stack title content / metrics; no horizontal overflow. */
@media (max-width: 480px) {
	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		row-gap: 0.65rem;
		width: 100%;
		min-width: 0;
		max-width: 100%;
		box-sizing: border-box;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__primary--motif-stack {
		grid-template-columns: minmax(0, 1fr);
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__thumb--product {
		width: 5.5rem;
		height: 5.5rem;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-motif-stack__item {
		grid-template-columns: 40px minmax(0, 1fr);
		grid-template-rows: auto auto auto;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-motif-stack__qty {
		grid-column: 1 / span 2;
		grid-row: 3;
		justify-self: stretch;
		justify-content: flex-start;
		min-width: 0;
		padding-left: calc(40px + 0.55rem);
		white-space: normal;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary {
		max-width: none;
		width: 100%;
		padding-left: 0;
		padding-top: 0.55rem;
		border-left: none;
		border-top: 1px solid rgba(0, 0, 0, 0.1);
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row,
	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-row--laufmeter {
		grid-template-columns: max-content minmax(0, 1fr);
		width: 100%;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__summary-value {
		text-align: right;
		white-space: normal;
	}

	.woocommerce-checkout .dtf-gsb-designer-line__content--transfer-designer .dtf-gsb-designer-line__laufmeter-group {
		flex-wrap: wrap;
		white-space: normal;
		justify-content: flex-end;
	}
}

/* ---- CHECKOUT-PRESENTATION-01: detailed-source order-review width recovery ----
 * Cart parity for Avada flex gutter lives under body.dtf-gsb-cart-designer-only.
 * Checkout uses body.woocommerce-checkout + detailed-source row markers only.
 * Grouped Free / compact Meterware checkout paths are out of scope here.
 * Transfer Designer checkout has its own 02R block above.
 */

@media (min-width: 721px) {
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) #order_review table.shop_table,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) table.woocommerce-checkout-review-order-table {
		table-layout: fixed;
		width: 100%;
		box-sizing: border-box;
	}

	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) #order_review table.shop_table col.product-name,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) table.woocommerce-checkout-review-order-table col.product-name {
		width: 100%;
	}

	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) #order_review table.shop_table col.product-total,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) table.woocommerce-checkout-review-order-table col.product-total {
		width: 8rem;
	}

	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) #order_review table.shop_table th.product-name,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) #order_review table.shop_table td.product-name,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) table.woocommerce-checkout-review-order-table th.product-name,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) table.woocommerce-checkout-review-order-table td.product-name {
		width: 100%;
		max-width: none;
		min-width: 0;
		vertical-align: top;
	}

	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) #order_review table.shop_table th.product-total,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) #order_review table.shop_table td.product-total,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) table.woocommerce-checkout-review-order-table th.product-total,
	body.woocommerce-checkout:has(.dtf-gsb-designer-line__content--detailed-source) table.woocommerce-checkout-review-order-table td.product-total {
		width: 8rem;
		max-width: 8.5rem;
		min-width: 7.5rem;
		box-sizing: border-box;
		text-align: right;
		vertical-align: top;
		white-space: nowrap;
		font-variant-numeric: tabular-nums;
	}

	/* Avada centers a shrink-wrapped child inside product-name — same root cause as Cart. */
	body.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--detailed-source) td.product-name .fusion-product-name-wrapper {
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		align-items: flex-start;
		gap: 0;
		column-gap: 0;
		width: 100%;
		max-width: none;
		min-width: 0;
		box-sizing: border-box;
	}

	body.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--detailed-source) td.product-name .fusion-product-name-wrapper > .product-info,
	body.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--detailed-source) td.product-name .fusion-product-name-wrapper .dtf-gsb-designer-line__body {
		flex: 1 1 auto;
		width: 100%;
		max-width: none;
		min-width: 0;
		margin-inline: 0;
		box-sizing: border-box;
	}

	body.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--detailed-source) td.product-name .fusion-product-name-wrapper > .product-thumbnail,
	body.woocommerce-checkout tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__content--detailed-source) td.product-name .fusion-product-name-wrapper > .fusion-product-wrapper {
		display: none;
		width: 0;
		max-width: 0;
		min-width: 0;
		flex: 0 0 0;
		overflow: hidden;
	}
}

/* ---- CART-UX-01: global empty cart action (header toolbar) ---- */

.dtf-gsb-cart-empty-toolbar {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
	max-width: 100%;
	margin: 0 0 0.85rem;
	box-sizing: border-box;
}

.dtf-gsb-cart-empty-trigger {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.65rem;
	border: 1px solid color-mix(in srgb, var(--dtf-gsb-error, #b42318) 35%, #ccc);
	border-radius: 4px;
	background: #fff;
	color: color-mix(in srgb, var(--dtf-gsb-error, #b42318) 82%, #333);
	font-size: 0.82rem;
	font-weight: 600;
	line-height: 1.2;
	cursor: pointer;
}

.dtf-gsb-cart-empty-trigger:hover,
.dtf-gsb-cart-empty-trigger:focus-visible {
	border-color: color-mix(in srgb, var(--dtf-gsb-error, #b42318) 55%, #999);
	background: color-mix(in srgb, var(--dtf-gsb-error, #b42318) 6%, #fff);
}

.dtf-gsb-cart-empty-trigger:focus-visible {
	outline: none;
	box-shadow: 0 0 0 2px color-mix(in srgb, var(--dtf-gsb-error, #b42318) 25%, transparent);
}

.dtf-gsb-cart-empty-trigger__icon {
	font-size: 0.9em;
	line-height: 1;
	opacity: 0.85;
}

.dtf-gsb-cart-empty-dialog {
	max-width: 22rem;
	width: calc(100% - 2rem);
	padding: 1rem;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 8px;
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
}

.dtf-gsb-cart-empty-dialog::backdrop {
	background: rgba(0, 0, 0, 0.45);
}

.dtf-gsb-cart-empty-dialog__message {
	margin: 0 0 0.85rem;
	font-size: 0.92rem;
	line-height: 1.4;
}

.dtf-gsb-cart-empty-dialog__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 0.5rem;
}

.dtf-gsb-cart-empty-dialog__cancel,
.dtf-gsb-cart-empty-dialog__confirm {
	padding: 0.4rem 0.75rem;
	border-radius: 4px;
	font-size: 0.85rem;
	font-weight: 600;
	cursor: pointer;
}

.dtf-gsb-cart-empty-dialog__cancel {
	border: 1px solid rgba(0, 0, 0, 0.18);
	background: #fff;
	color: inherit;
}

.dtf-gsb-cart-empty-dialog__confirm {
	border: 1px solid color-mix(in srgb, var(--dtf-gsb-error, #b42318) 45%, #ccc);
	background: color-mix(in srgb, var(--dtf-gsb-error, #b42318) 8%, #fff);
	color: color-mix(in srgb, var(--dtf-gsb-error, #b42318) 85%, #333);
}

@media (max-width: 720px) {
	.dtf-gsb-cart-empty-toolbar {
		justify-content: stretch;
	}

	.dtf-gsb-cart-empty-trigger {
		width: 100%;
		justify-content: center;
	}
}

/* ============================================================
 * DESIGNER-MVP3-MOBILE-04-CORR-02/03 — Designer cart Mobile card
 * Plugin-owned presentation only (tr.dtf-gsb-designer-line).
 * Desktop / non-Designer products unchanged.
 * ============================================================ */

@media (max-width: 782px) {
	/* Recover readable width inside Woo/Avada product-name cells */
	.woocommerce-cart-form tr.dtf-gsb-designer-line td.product-name,
	.woocommerce-cart tr.dtf-gsb-designer-line td.product-name,
	tr.dtf-gsb-designer-line td.product-name {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	.woocommerce-cart-form tr.dtf-gsb-designer-line td.product-name .fusion-product-name-wrapper,
	.woocommerce-cart tr.dtf-gsb-designer-line td.product-name .fusion-product-name-wrapper,
	tr.dtf-gsb-designer-line td.product-name .product-info,
	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__body {
		display: block;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	/*
	 * Mobile card hierarchy for detailed-source / fixed-format:
	 * [ product thumb | motif artwork ]
	 * meta rows
	 * commercial editor / summary
	 */
	.dtf-gsb-designer-line__content--detailed-source,
	.dtf-gsb-designer-line__content--fixed-format {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		grid-template-areas:
			'thumb art'
			'meta meta'
			'editor editor';
		column-gap: 0.65rem;
		row-gap: 0.55rem;
		align-items: start;
		width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	.dtf-gsb-designer-line__content--detailed-source:has(> .dtf-gsb-designer-line__thumb:empty),
	.dtf-gsb-designer-line__content--fixed-format:has(> .dtf-gsb-designer-line__thumb:empty) {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			'art'
			'meta'
			'editor';
	}

	.dtf-gsb-designer-line__content--detailed-source:not(:has(.dtf-gsb-designer-line__ff-artwork)):has(> .dtf-gsb-designer-line__thumb:not(:empty)),
	.dtf-gsb-designer-line__content--fixed-format:not(:has(.dtf-gsb-designer-line__ff-artwork)):has(> .dtf-gsb-designer-line__thumb:not(:empty)) {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			'thumb'
			'meta'
			'editor';
	}

	.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__thumb,
	.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__thumb {
		grid-area: thumb;
		width: 100%;
		max-width: 100%;
		height: auto;
		aspect-ratio: 1 / 1;
		justify-self: stretch;
		display: flex;
		align-items: center;
		justify-content: center;
		overflow: hidden;
		box-sizing: border-box;
	}

	.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__thumb img,
	.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__thumb .dtf-gsb-designer-line__thumb-img,
	.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__thumb img,
	.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__thumb .dtf-gsb-designer-line__thumb-img {
		width: 100%;
		height: 100%;
		max-width: 100%;
		object-fit: contain;
		object-position: center;
	}

	.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__thumb:empty,
	.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__thumb:empty {
		display: none;
	}

	.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-meta-wrap,
	.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-meta-wrap {
		display: contents;
	}

	.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-meta,
	.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-meta {
		grid-area: meta;
		display: flex;
		flex-direction: column;
		gap: 0.2rem;
		min-width: 0;
		width: 100%;
	}

	.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-artwork,
	.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-artwork {
		grid-area: art;
		margin: 0;
		justify-self: stretch;
		width: 100%;
		max-width: 100%;
		aspect-ratio: 1 / 1;
	}

	.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-artwork-trigger,
	.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-artwork-trigger {
		display: flex;
		width: 100%;
		height: 100%;
		aspect-ratio: 1 / 1;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
	}

	.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-artwork-img,
	.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-artwork-img {
		width: 100%;
		height: 100%;
		max-width: none;
		object-fit: contain;
		object-position: center;
	}

	.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__summary,
	.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__commercial-editor,
	.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__summary,
	.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__commercial-editor {
		grid-area: editor;
		padding-left: 0;
		border-left: 0;
		padding-top: 0.35rem;
		border-top: 1px solid rgba(0, 0, 0, 0.1);
		width: 100%;
		min-width: 0;
		max-width: 100%;
	}

	/* CORR-03 — ~40% label / ~60% value (no Desktop rem rails) */
	.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__ff-meta .dtf-gsb-designer-line__summary-row,
	.dtf-gsb-designer-line__content--detailed-source > .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-row:not(.dtf-gsb-designer-line__summary-row--badge),
	.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__ff-meta .dtf-gsb-designer-line__summary-row,
	.dtf-gsb-designer-line__content--fixed-format > .dtf-gsb-designer-line__summary .dtf-gsb-designer-line__summary-row:not(.dtf-gsb-designer-line__summary-row--badge) {
		grid-template-columns: minmax(0, 42%) minmax(0, 58%);
		column-gap: 0.55rem;
		width: 100%;
		min-width: 0;
	}

	.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__summary-label,
	.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__summary-label,
	.dtf-gsb-designer-line__content--detailed-source .dtf-gsb-designer-line__summary-value,
	.dtf-gsb-designer-line__content--fixed-format .dtf-gsb-designer-line__summary-value {
		min-width: 0;
		overflow-wrap: break-word;
		word-break: normal;
		white-space: normal;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-cart-editor-row {
		grid-template-columns: minmax(0, 42%) minmax(0, 58%);
		column-gap: 0.55rem;
		width: 100%;
		min-width: 0;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-cart-editor-row__label,
	tr.dtf-gsb-designer-line .dtf-gsb-cart-editor-row__value {
		min-width: 0;
		white-space: normal;
		overflow-wrap: break-word;
		word-break: normal;
	}

	/* CORR-03 — [-] qty [+] Stück stay one coherent control group */
	tr.dtf-gsb-designer-line .dtf-gsb-cart-qty {
		display: inline-flex;
		flex-wrap: nowrap;
		align-items: center;
		gap: 0.35rem;
		max-width: 100%;
		white-space: nowrap;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-cart-qty__unit {
		white-space: nowrap;
		flex: 0 0 auto;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-cart-editor-row--qty .dtf-gsb-cart-editor-row__value {
		min-width: 0;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-cart-sla {
		grid-template-columns: minmax(0, 1fr);
		width: 100%;
		min-width: 0;
	}

	/*
	 * MOBILE-05-CORR-02 — single lead row, vertically centered:
	 * [variant][PRIO] [struck] [discount] …gap… [Gesamtpreis block]
	 * Product / file / SKU remain full-width rows below (order 2–4).
	 * CORR-01: total-block stays sibling of .comparison (not nested).
	 */
	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-row {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: flex-start;
		column-gap: 0.35rem;
		row-gap: 0.35rem;
		width: 100%;
		min-width: 0;
		max-width: 100%;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-main {
		display: contents;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-aside {
		display: contents;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__price-meta {
		display: inline-flex;
		flex: 1 1 auto;
		order: 1;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: flex-end;
		gap: 0.55rem;
		margin-left: auto;
		min-width: 0;
		max-width: 100%;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__comparison {
		display: inline-flex;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: flex-end;
		gap: 0.35rem;
		min-width: 0;
		flex: 0 1 auto;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__reference-total {
		font-size: 0.82rem;
		opacity: 0.7;
		flex: 0 1 auto;
		min-width: 0;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__discount-badge {
		flex: 0 0 auto;
		font-size: 0.78rem;
		padding: 0.12rem 0.4rem;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-text {
		flex: 1 1 100%;
		order: 2;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		overflow-wrap: break-word;
		word-break: normal;
		white-space: normal;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-dash {
		display: none;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-filename {
		flex: 1 1 100%;
		order: 3;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		font-weight: 600;
		overflow-wrap: break-word;
		word-break: normal;
		white-space: normal;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-sep {
		display: none;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__sku {
		flex: 1 1 100%;
		order: 4;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		display: block;
		opacity: 0.72;
		font-size: 0.82em;
		overflow-wrap: break-word;
		word-break: normal;
		white-space: normal;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__file-identity-badge,
	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__prio-badge {
		flex: 0 0 auto;
		order: 1;
		align-self: center;
		max-width: 100%;
	}

	/* Modest badge size bump vs V279 base (0.78 / 0.72). */
	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__file-identity-badge {
		font-size: 0.86rem;
		padding: 0.16rem 0.48rem;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__prio-badge {
		font-size: 0.8rem;
		padding: 0.14rem 0.5rem;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__total-block {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		justify-content: center;
		align-self: center;
		gap: 0.05rem;
		text-align: right;
		min-width: 0;
		flex: 0 0 auto;
		/* Deliberate gap after discount / comparison before result total. */
		margin-left: 0.2rem;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__total-label {
		font-size: 0.7rem;
		font-weight: 600;
		opacity: 0.78;
		line-height: 1.15;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__line-total {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		gap: 0.05rem;
		font-weight: 700;
		font-variant-numeric: tabular-nums;
		line-height: 1.15;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__line-total-amount {
		white-space: nowrap;
		font-size: 1.05rem;
		font-weight: 800;
		line-height: 1.15;
	}

	tr.dtf-gsb-designer-line .dtf-gsb-designer-line__total-tax {
		font-size: 0.68rem;
		font-weight: 500;
		opacity: 0.72;
		white-space: nowrap;
	}

	/* Hide Woo Gesamtpreis column duplicate — total is in title meta on Mobile */
	.woocommerce-cart tr.dtf-gsb-designer-line td.product-subtotal,
	.woocommerce-cart-form tr.dtf-gsb-designer-line td.product-subtotal {
		display: none !important;
	}

	/*
	 * MOBILE-CART-CORR-03 — Cart identity parity with accepted Mobile Checkout.
	 *
	 * Required hierarchy (own rows, no dash concatenation):
	 *   1. product title
	 *   2. filename (stronger than SKU)
	 *   3. Art.-Nr. / SKU (smaller, muted)
	 *
	 * Markup already shared via DesignerCartPresenter::titleRowHtml.
	 * Cart-scoped reinforcement only — Mobile/Desktop Checkout unchanged.
	 */
	.woocommerce-cart tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-dash,
	.woocommerce-cart-form tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-dash,
	.woocommerce-cart tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-sep,
	.woocommerce-cart-form tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-sep {
		display: none !important;
	}

	.woocommerce-cart tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-text,
	.woocommerce-cart-form tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-text {
		display: block;
		flex: 1 1 100%;
		order: 2;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		overflow-wrap: break-word;
		word-break: normal;
		white-space: normal;
	}

	.woocommerce-cart tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-filename,
	.woocommerce-cart-form tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-filename {
		display: block;
		flex: 1 1 100%;
		order: 3;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		font-weight: 600;
		opacity: 1;
		overflow-wrap: break-word;
		word-break: normal;
		white-space: normal;
	}

	.woocommerce-cart tr.dtf-gsb-designer-line .dtf-gsb-designer-line__sku,
	.woocommerce-cart-form tr.dtf-gsb-designer-line .dtf-gsb-designer-line__sku {
		display: block;
		flex: 1 1 100%;
		order: 4;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		font-size: 0.82em;
		opacity: 0.72;
		overflow-wrap: break-word;
		word-break: normal;
		white-space: normal;
	}

	/*
	 * MOBILE-CHECKOUT-01 — Designer checkout full-width parity with Mobile Cart.
	 *
	 * Root cause: Woo review-order keeps a two-cell row
	 *   td.product-name | td.product-total
	 * while Designer FULL markup (title lead + media + 42/58 details) lives only
	 * inside product-name. product-total reserves a right column and crushes
	 * filename / SKU / labels. Cart already hides td.product-subtotal on Mobile;
	 * checkout must hide tbody designer product-total when the plugin-owned
	 * title total-block is present (CORR-01 sibling architecture).
	 *
	 * Scoped: body.woocommerce-checkout + tr.dtf-gsb-designer-line only.
	 * Desktop checkout, non-Designer rows, order-total footer cells, and Cart unchanged.
	 */
	body.woocommerce-checkout #order_review table.shop_table:has(tbody tr.dtf-gsb-designer-line),
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table:has(tbody tr.dtf-gsb-designer-line) {
		table-layout: fixed;
		width: 100%;
		box-sizing: border-box;
	}

	body.woocommerce-checkout #order_review table.shop_table tbody tr.dtf-gsb-designer-line td.product-name,
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody tr.dtf-gsb-designer-line td.product-name {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0;
		box-sizing: border-box;
		vertical-align: top;
	}

	body.woocommerce-checkout #order_review table.shop_table tbody tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__total-block) td.product-total,
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody tr.dtf-gsb-designer-line:has(.dtf-gsb-designer-line__total-block) td.product-total {
		display: none !important;
		width: 0 !important;
		max-width: 0 !important;
		min-width: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
		border: 0 !important;
		overflow: hidden !important;
	}

	body.woocommerce-checkout tr.dtf-gsb-designer-line td.product-name .fusion-product-name-wrapper,
	body.woocommerce-checkout tr.dtf-gsb-designer-line td.product-name .product-info,
	body.woocommerce-checkout tr.dtf-gsb-designer-line td.product-name .dtf-gsb-designer-line__body {
		display: block;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		margin-inline: 0;
		box-sizing: border-box;
	}

	body.woocommerce-checkout tr.dtf-gsb-designer-line td.product-name .fusion-product-name-wrapper > .product-thumbnail,
	body.woocommerce-checkout tr.dtf-gsb-designer-line td.product-name .fusion-product-name-wrapper > .fusion-product-wrapper {
		display: none;
		width: 0;
		max-width: 0;
		min-width: 0;
		flex: 0 0 0;
		overflow: hidden;
	}

	/* Identity: full usable width; avoid mid-token label/filename shredding. */
	body.woocommerce-checkout tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-text,
	body.woocommerce-checkout tr.dtf-gsb-designer-line .dtf-gsb-designer-line__title-filename,
	body.woocommerce-checkout tr.dtf-gsb-designer-line .dtf-gsb-designer-line__sku {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		overflow-wrap: break-word;
		word-break: normal;
		hyphens: manual;
	}

	body.woocommerce-checkout tr.dtf-gsb-designer-line .dtf-gsb-designer-line__summary-label,
	body.woocommerce-checkout tr.dtf-gsb-designer-line .dtf-gsb-cart-editor-row__label {
		overflow-wrap: normal;
		word-break: keep-all;
		white-space: nowrap;
	}

	body.woocommerce-checkout tr.dtf-gsb-designer-line .dtf-gsb-designer-line__summary-value,
	body.woocommerce-checkout tr.dtf-gsb-designer-line .dtf-gsb-cart-editor-row__value {
		overflow-wrap: break-word;
		word-break: normal;
		min-width: 0;
	}

	/*
	 * MOBILE-CHECKOUT-01-CORR-01 — Avada checkout outer gutter.
	 * Operator target: .woocommerce-content-box .avada-checkout → 10px L/R.
	 * Vertical padding unchanged. Cart MOBILE-05 content-box rule untouched.
	 *
	 * CORR-01/CORR-02 table display escapes (tbody block / tr flow-root / td block /
	 * non-Designer flex) are REMOVED by CORR-03 — they caused measured 140px row
	 * height vs 627px cell overflow and ~255px tbody width. Gutter kept.
	 */
	body.woocommerce-checkout .woocommerce-content-box .avada-checkout,
	body.woocommerce-checkout .woocommerce-content-box.avada-checkout {
		padding-left: 10px;
		padding-right: 10px;
	}

	/*
	 * MOBILE-CHECKOUT-01-CORR-03 — native table restoration + Designer colspan.
	 *
	 * Measured V283 failure (~433px viewport):
	 *   table ≈ 401px, tbody(display:block) ≈ 255px, tr(flow-root) height = 140px
	 *   while td.product-name height ≈ 627px → next rows start every 140px (overlap).
	 * Descendants were position:static / float:none — NOT an inner float bug.
	 *
	 * Authority: restore native table display roles. Full width via Mobile-only
	 * product-name.colSpan = 2 (assets/js/dtf-gsb-checkout-colspan.js), reapplied
	 * on updated_checkout. product-total stays presentation-hidden (CHECKOUT-01).
	 * thead/tfoot untouched. No height/min-height/z-index patches.
	 */
	/* Structural colspan is attribute authority — not a CSS display rewrite. */

	/*
	 * MOBILE-05 — Avada Woo content-box horizontal padding 10px on cart only.
	 * Classes live on the same element (.woocommerce-content-box.full-width.clearfix).
	 */
	.woocommerce-cart .woocommerce-content-box.full-width.clearfix,
	.woocommerce-cart-form .woocommerce-content-box.full-width.clearfix,
	body.woocommerce-cart .woocommerce-content-box.full-width.clearfix {
		padding-left: 10px;
		padding-right: 10px;
	}
}
