/*
 * Checkout themes commonly render shipping-method rows with flexbox.
 * Keep the method radio/title on the first line and give the selector
 * panel a complete line so it can never collapse into a narrow column.
 */
body .cart_totals table.shop_table.shop_table_responsive > tbody > tr.woocommerce-shipping-totals.shipping,
body .cart_totals table.shop_table > tbody > tr.woocommerce-shipping-totals.shipping {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

/* Mobile cart and checkout: keep every method, price and locker control usable. */
@media (max-width: 767px) {
	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method,
	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .agp-tcg-card,
	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .woocommerce-shipping-destination,
	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .woocommerce-shipping-calculator,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row .agp-tcg-card,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-destination,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-calculator {
		width: calc(100% - 10px) !important;
		max-width: calc(100% - 10px) !important;
		min-width: 0 !important;
		margin-left: 10px !important;
		margin-right: 0 !important;
	}

	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method > li,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method > li {
		grid-template-columns: 20px minmax(0, 1fr) !important;
		column-gap: 8px !important;
		padding: 12px 10px !important;
	}

	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method > li > label,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method > li > label {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		gap: 8px !important;
		align-items: start !important;
		font-size: 15px !important;
		line-height: 1.35 !important;
	}

	html body .agp-tcg-card.agp-tcg-relocated {
		padding: 14px !important;
		border-radius: 11px !important;
	}

	html body .agp-tcg-card.agp-tcg-relocated .agp-tcg-card__intro {
		grid-template-columns: 30px minmax(0, 1fr) !important;
		gap: 10px !important;
	}

	html body .agp-tcg-card.agp-tcg-relocated .agp-tcg-field,
	html body .agp-tcg-card.agp-tcg-relocated .agp-tcg-find {
		grid-column: 1 / -1 !important;
		width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
	}

	html body .agp-tcg-card.agp-tcg-relocated .agp-tcg-field select {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		height: 48px !important;
		padding-right: 36px !important;
		font-size: 16px !important;
		text-overflow: ellipsis !important;
		box-sizing: border-box !important;
	}

	.agp-tcg-selected,
	.woocommerce-shipping-destination {
		overflow-wrap: anywhere !important;
		word-break: normal !important;
	}
}

body .cart_totals table.shop_table.shop_table_responsive > tbody > tr.woocommerce-shipping-totals.shipping > th,
body .cart_totals table.shop_table.shop_table_responsive > tbody > tr.woocommerce-shipping-totals.shipping > td,
body .cart_totals table.shop_table > tbody > tr.woocommerce-shipping-totals.shipping > th,
body .cart_totals table.shop_table > tbody > tr.woocommerce-shipping-totals.shipping > td {
	display: block !important;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

body .cart_totals table.shop_table > tbody > tr.woocommerce-shipping-totals.shipping > td {
	padding-top: 0 !important;
}

body .cart_totals #shipping_method,
body .cart_totals .woocommerce-shipping-methods,
body .cart_totals #shipping_method > li,
body .cart_totals .woocommerce-shipping-methods > li {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

body .cart_totals .agp-tcg-card,
body .cart_totals .agp-tcg-card.agp-tcg-relocated {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping,
.woocommerce-checkout-review-order-table tr.shipping,
#order_review tr.woocommerce-shipping-totals.shipping,
.cart_totals tr.woocommerce-shipping-totals.shipping,
.cart_totals tr.shipping {
	display: flex !important;
	flex-flow: column nowrap !important;
	align-items: stretch !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping > th,
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping > td,
.woocommerce-checkout-review-order-table tr.shipping > th,
.woocommerce-checkout-review-order-table tr.shipping > td,
#order_review tr.woocommerce-shipping-totals.shipping > th,
#order_review tr.woocommerce-shipping-totals.shipping > td,
.cart_totals tr.woocommerce-shipping-totals.shipping > th,
.cart_totals tr.woocommerce-shipping-totals.shipping > td,
.cart_totals tr.shipping > th,
.cart_totals tr.shipping > td {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping > th,
.woocommerce-checkout-review-order-table tr.shipping > th,
#order_review tr.woocommerce-shipping-totals.shipping > th,
.cart_totals tr.woocommerce-shipping-totals.shipping > th,
.cart_totals tr.shipping > th {
	padding-bottom: 10px !important;
}

.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping > td,
.woocommerce-checkout-review-order-table tr.shipping > td,
#order_review tr.woocommerce-shipping-totals.shipping > td,
.cart_totals tr.woocommerce-shipping-totals.shipping > td,
.cart_totals tr.shipping > td {
	padding-top: 0 !important;
}

#shipping_method,
.woocommerce-shipping-methods {
	display: flex !important;
	flex-flow: column nowrap !important;
	gap: 10px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

#shipping_method > li,
.woocommerce-shipping-methods > li {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

#shipping_method li:has(.agp-tcg-card),
.woocommerce-shipping-methods li:has(.agp-tcg-card) {
	display: flex !important;
	flex-flow: row wrap !important;
	align-items: flex-start !important;
	column-gap: 10px !important;
	width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

#shipping_method li:has(.agp-tcg-card) > input[type="radio"],
.woocommerce-shipping-methods li:has(.agp-tcg-card) > input[type="radio"] {
	flex: 0 0 auto !important;
}

#shipping_method li:has(.agp-tcg-card) > label,
.woocommerce-shipping-methods li:has(.agp-tcg-card) > label {
	flex: 1 1 180px !important;
	width: auto !important;
	min-width: 0 !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
}

#shipping_method .agp-tcg-card,
.woocommerce-shipping-methods .agp-tcg-card {
	flex: 0 0 100% !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	clear: both !important;
	box-sizing: border-box !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
}

#shipping_method .agp-tcg-card__intro,
#shipping_method .agp-tcg-field,
#shipping_method .agp-tcg-find,
.woocommerce-shipping-methods .agp-tcg-card__intro,
.woocommerce-shipping-methods .agp-tcg-field,
.woocommerce-shipping-methods .agp-tcg-find {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	word-break: normal !important;
}

#shipping_method .agp-tcg-field select,
.woocommerce-shipping-methods .agp-tcg-field select {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

.agp-tcg-card.agp-tcg-relocated {
	display: none;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 14px 0 0 !important;
	padding: 18px !important;
	box-sizing: border-box !important;
	float: none !important;
	clear: both !important;
}

.agp-tcg-card.agp-tcg-relocated.is-active {
	display: block !important;
}

.agp-tcg-card.agp-tcg-relocated .agp-tcg-card__intro {
	display: none !important;
}

.agp-tcg-card.agp-tcg-relocated .agp-tcg-field,
.agp-tcg-card.agp-tcg-relocated .agp-tcg-find {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	white-space: normal !important;
}

.agp-tcg-card.agp-tcg-relocated .agp-tcg-field select {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
}

body table.shop_table tr.agp-tcg-shipping-row {
	display: table-row !important;
	width: auto !important;
}

body table.shop_table tr.agp-tcg-shipping-row > th {
	display: none !important;
}

body table.shop_table tr.agp-tcg-shipping-row > td {
	display: table-cell !important;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	padding: 20px 22px !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

body .cart_totals table.shop_table > tbody > tr.agp-tcg-shipping-row > td[colspan="2"],
body #order_review table.shop_table > tbody > tr.agp-tcg-shipping-row > td[colspan="2"],
body table.woocommerce-checkout-review-order-table > tbody > tr.agp-tcg-shipping-row > td[colspan="2"] {
	display: table-cell !important;
	width: auto !important;
	min-width: 100% !important;
	max-width: none !important;
}

.agp-tcg-shipment-heading {
	display: block !important;
	width: 100% !important;
	margin: 0 0 12px !important;
	padding: 0 0 10px !important;
	border-bottom: 1px solid #e5e7eb;
	color: inherit;
	font: inherit;
	font-weight: 700 !important;
	text-align: left !important;
	box-sizing: border-box !important;
}

body table.shop_table tr.agp-tcg-shipping-row #shipping_method,
body table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-methods,
body table.shop_table tr.agp-tcg-shipping-row .agp-tcg-card,
body table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-destination,
body table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-calculator {
	width: calc(100% - 22px) !important;
	max-width: calc(100% - 22px) !important;
	margin-left: 22px !important;
	margin-right: 0 !important;
	box-sizing: border-box !important;
}

body table.shop_table tr.agp-tcg-shipping-row #shipping_method > li,
body table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-methods > li {
	width: 100% !important;
	max-width: none !important;
	text-align: left !important;
}

@media (max-width: 480px) {
	body table.shop_table tr.agp-tcg-shipping-row > td {
		padding: 16px !important;
	}

	body table.shop_table tr.agp-tcg-shipping-row #shipping_method,
	body table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-methods,
	body table.shop_table tr.agp-tcg-shipping-row .agp-tcg-card,
	body table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-destination,
	body table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-calculator {
		width: calc(100% - 14px) !important;
		max-width: calc(100% - 14px) !important;
		margin-left: 14px !important;
	}
}

/*
 * Awesome Prints cart totals use fixed 26%/74% table columns and later
 * !important alignment rules. Switch only that totals table to an explicit
 * block/grid layout so Shipment can occupy a real full-width row.
 */
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	table-layout: auto !important;
	box-sizing: border-box !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.cart-subtotal,
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.order-total {
	display: grid !important;
	grid-template-columns: 26% minmax(0, 74%) !important;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.cart-subtotal > th,
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.cart-subtotal > td,
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.order-total > th,
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.order-total > td {
	display: block !important;
	float: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.agp-tcg-shipping-row {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.agp-tcg-shipping-row > td[colspan="2"] {
	display: block !important;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	padding: 20px 22px !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	width: calc(100% - 22px) !important;
	max-width: calc(100% - 22px) !important;
	margin: 0 0 0 22px !important;
	padding: 0 !important;
	text-align: left !important;
	box-sizing: border-box !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method > li {
	display: grid !important;
	grid-template-columns: 20px minmax(0, 1fr) !important;
	align-items: start !important;
	justify-content: stretch !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 0 10px !important;
	padding: 11px 12px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 11px !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method > li > label {
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 16px !important;
	width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	text-align: left !important;
	overflow-wrap: break-word !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method > li > label .woocommerce-Price-amount {
	flex: 0 0 auto !important;
	margin-left: auto !important;
	white-space: nowrap !important;
	text-align: right !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .agp-tcg-card,
html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .woocommerce-shipping-destination,
html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .woocommerce-shipping-calculator {
	display: block !important;
	float: none !important;
	width: calc(100% - 22px) !important;
	max-width: calc(100% - 22px) !important;
	min-width: 0 !important;
	margin-left: 22px !important;
	margin-right: 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

@media (max-width: 767px) {
	html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.cart-subtotal,
	html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.order-total {
		grid-template-columns: minmax(0, 1fr) auto !important;
	}

	html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table > tbody > tr.agp-tcg-shipping-row > td[colspan="2"] {
		padding: 16px !important;
	}

	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method,
	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .agp-tcg-card,
	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .woocommerce-shipping-destination,
	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .woocommerce-shipping-calculator {
		width: calc(100% - 14px) !important;
		max-width: calc(100% - 14px) !important;
		margin-left: 14px !important;
	}
}

/* Cart before a destination is entered: keep the shipping placeholder at the
 * value edge of the row. Block method lists retain their own left alignment. */
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals.shipping > td,
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.shipping > td {
	text-align: right !important;
}

html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals.shipping > td > .agp-tcg-shipment-heading,
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.shipping > td > .agp-tcg-shipment-heading,
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.shipping > td > ul,
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.shipping > td > .agp-tcg-card,
html body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.shipping > td > .woocommerce-shipping-destination {
	text-align: left !important;
}

/* Use the site blue for keyboard, mouse and mobile focus on every locker
 * selector, overriding the original coral plugin and theme focus styles. */
html body .agp-tcg-card select.agp-tcg-size:focus,
html body .agp-tcg-card select.agp-tcg-size:focus-visible,
html body .agp-tcg-card select.agp-tcg-province:focus,
html body .agp-tcg-card select.agp-tcg-province:focus-visible,
html body .agp-tcg-card select.agp-tcg-locker:focus,
html body .agp-tcg-card select.agp-tcg-locker:focus-visible {
	border-color: #0bc6f2 !important;
	outline: 0 !important;
	box-shadow: 0 0 0 3px rgba(11, 198, 242, 0.20) !important;
}

@media (max-width: 767px) {
	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method > li > label,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method > li > label {
		grid-template-columns: minmax(0, 1fr) auto !important;
		column-gap: 12px !important;
		white-space: normal !important;
	}

	html body ul#shipping_method > li > label > .agp-tcg-method-name,
	html body .woocommerce-shipping-methods > li > label > .agp-tcg-method-name {
		grid-column: 1 !important;
		min-width: 0 !important;
		white-space: normal !important;
		word-break: normal !important;
		overflow-wrap: break-word !important;
	}

	html body ul#shipping_method > li > label > .woocommerce-Price-amount,
	html body .woocommerce-shipping-methods > li > label > .woocommerce-Price-amount {
		grid-column: 2 !important;
		align-self: start !important;
		justify-self: end !important;
		white-space: nowrap !important;
	}

	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .woocommerce-shipping-destination {
		display: block !important;
		width: calc(100% - 10px) !important;
		max-width: calc(100% - 10px) !important;
		min-width: 0 !important;
		margin: 0 0 0 10px !important;
		padding-right: 10px !important;
		white-space: normal !important;
		word-break: normal !important;
		overflow-wrap: anywhere !important;
		box-sizing: border-box !important;
	}

	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row .woocommerce-shipping-destination strong {
		white-space: normal !important;
		word-break: normal !important;
		overflow-wrap: anywhere !important;
	}
}

.agp-tcg-card .agp-tcg-find,
.agp-tcg-card .agp-tcg-find:link,
.agp-tcg-card .agp-tcg-find:visited,
.agp-tcg-card .agp-tcg-find:hover,
.agp-tcg-card .agp-tcg-find:focus,
.agp-tcg-card .agp-tcg-find:active {
	color: #0bc6f2 !important;
}

/*
 * Checkout: the theme caps shipping cells at 76–85% and makes labels block
 * elements. The transformed row has one colspan cell, so allow it to span
 * the review table and separate the method name from its price.
 */
html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row {
	display: table-row !important;
	width: auto !important;
}

html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row > td[colspan="2"] {
	display: table-cell !important;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 100% !important;
	padding: 18px 12px !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	width: calc(100% - 22px) !important;
	max-width: calc(100% - 22px) !important;
	margin: 0 0 0 22px !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method > li {
	display: grid !important;
	grid-template-columns: 20px minmax(0, 1fr) !important;
	align-items: start !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method > li > label {
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 16px !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
	overflow-wrap: break-word !important;
}

html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method > li > label .woocommerce-Price-amount {
	flex: 0 0 auto !important;
	margin-left: auto !important;
	white-space: nowrap !important;
	text-align: right !important;
}

html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row .agp-tcg-card,
html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-destination,
html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-calculator {
	width: calc(100% - 22px) !important;
	max-width: calc(100% - 22px) !important;
	min-width: 0 !important;
	margin-left: 22px !important;
	margin-right: 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

@media (max-width: 600px) {
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row > td[colspan="2"] {
		padding: 14px 6px !important;
	}

	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row .agp-tcg-card,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-destination,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row .woocommerce-shipping-calculator {
		width: calc(100% - 14px) !important;
		max-width: calc(100% - 14px) !important;
		margin-left: 14px !important;
	}

	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method > li > label {
		gap: 10px !important;
	}
}

/* Final narrow-screen overrides must follow the desktop theme corrections. */
@media (max-width: 767px) {
	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method > li > label,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method > li > label {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: start !important;
		gap: 8px !important;
	}

	html body.woocommerce-cart .cart-collaterals .cart_totals tr.agp-tcg-shipping-row ul#shipping_method > li > label .woocommerce-Price-amount,
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.agp-tcg-shipping-row ul#shipping_method > li > label .woocommerce-Price-amount {
		justify-self: end !important;
		margin-left: 0 !important;
		white-space: nowrap !important;
	}
}

/* Visibility is state-driven on desktop and mobile. Theme display rules must
 * never expose the locker controls for another selected shipping method. */
html body .agp-tcg-card.agp-tcg-relocated:not(.is-active) {
	display: none !important;
}

html body .agp-tcg-card.agp-tcg-relocated.is-active {
	display: block !important;
}

/* Cart safeguard: the controls follow the checked shipping method itself.
 * This prevents a card with stale AJAX state from remaining visible. */
html body.woocommerce-cart tr.agp-tcg-shipping-row .agp-tcg-card {
	display: none !important;
}

html body.woocommerce-cart tr.agp-tcg-shipping-row:has(input.shipping_method[value^="agp_tcg_l2l"]:checked) .agp-tcg-card.is-active {
	display: block !important;
}

/* Match WooCommerce required-field feedback for the locker selector. */
html body .agp-tcg-card .agp-tcg-field abbr.required {
	color: #d63638 !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
	border: 0 !important;
	cursor: inherit !important;
}

html body .agp-tcg-card .agp-tcg-field.agp-tcg-invalid > span {
	color: #d63638 !important;
}

html body .agp-tcg-card .agp-tcg-field.agp-tcg-invalid select.agp-tcg-locker,
html body .agp-tcg-card .agp-tcg-field.agp-tcg-invalid select.agp-tcg-locker:focus,
html body .agp-tcg-card .agp-tcg-field.agp-tcg-invalid select.agp-tcg-locker:focus-visible {
	border-color: #e2404d !important;
	outline: 0 !important;
	box-shadow: 0 0 0 3px rgba(226, 64, 77, 0.14) !important;
}

html body .agp-tcg-card .agp-tcg-field-error {
	display: block !important;
	width: 100% !important;
	margin: 7px 0 0 !important;
	color: #d63638 !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	text-align: left !important;
}

/* Progressive selector: reveal each decision only when the previous one is
 * complete. This applies identically on cart/checkout and at every viewport. */
html body .agp-tcg-card .agp-tcg-field.agp-tcg-progress-hidden {
	display: none !important;
}

html body .agp-tcg-card .agp-tcg-size-recommendation.agp-tcg-progress-hidden {
	display: none !important;
}

html body .agp-tcg-card .agp-tcg-smaller-size-warning.agp-tcg-progress-hidden {
	display: none !important;
}

html body .agp-tcg-card .agp-tcg-selected {
	margin: -5px 0 14px !important;
	color: #0bc6f2 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.45 !important;
	text-align: left !important;
	white-space: normal !important;
	overflow-wrap: anywhere !important;
}

html body .agp-tcg-card .agp-tcg-size-recommendation {
	margin: 10px 0 0 !important;
	color: #0bc6f2 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.45 !important;
	text-align: left !important;
	white-space: normal !important;
	overflow-wrap: anywhere !important;
}

html body .agp-tcg-card .agp-tcg-smaller-size-warning {
	display: none;
	margin: 8px 0 0 !important;
	padding: 10px 12px !important;
	border-left: 3px solid #a84a44 !important;
	border-radius: 6px !important;
	background: #fff4f3 !important;
	color: #8f3f3a !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.45 !important;
	text-align: left !important;
	white-space: normal !important;
	overflow-wrap: anywhere !important;
}

html body .agp-tcg-card .agp-tcg-smaller-size-warning.is-visible {
	display: block;
}

@media (max-width: 600px) {
	html body .agp-tcg-card .agp-tcg-field,
	html body .agp-tcg-card .agp-tcg-field select.agp-tcg-size,
	html body .agp-tcg-card .agp-tcg-field select.agp-tcg-locker,
	html body .agp-tcg-card .agp-tcg-field select.agp-tcg-province {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
	}

	html body .agp-tcg-card .agp-tcg-field select.agp-tcg-size,
	html body .agp-tcg-card .agp-tcg-field select.agp-tcg-locker {
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		white-space: nowrap !important;
	}
}

/* Checkout total: amount first, complete VAT note on one right-aligned line. */
html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.order-total > td {
	text-align: right !important;
}

html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.order-total > td > strong {
	display: block !important;
	width: 100% !important;
	text-align: right !important;
}

html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.order-total > td > small.includes_tax {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin-top: 4px !important;
	white-space: nowrap !important;
	text-align: right !important;
	line-height: 1.35 !important;
}

@media (max-width: 600px) {
	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.order-total > td {
		width: auto !important;
		min-width: max-content !important;
		padding-left: 8px !important;
	}

	html body.woocommerce-checkout form.checkout.woocommerce-checkout #order_review table.shop_table tr.order-total > td > small.includes_tax {
		font-size: 13px !important;
	}
}
