/* Cart page quantity controls: keep minus, value and plus on one line. */
.woocommerce-cart .woocommerce-cart-form table.cart td.product-quantity {
	text-align: center;
	vertical-align: middle;
}

.woocommerce-cart .woocommerce-cart-form table.cart td.product-quantity .detail-qty {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 8px;
	box-sizing: border-box;
	width: 166px;
	max-width: 100%;
	min-height: 42px;
	margin: 0 auto;
	padding: 0 12px;
}

.woocommerce-cart .woocommerce-cart-form table.cart td.product-quantity .detail-qty > a {
	display: inline-flex !important;
	flex: 0 0 20px;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 38px;
	line-height: 1;
	margin: 0;
}

.woocommerce-cart .woocommerce-cart-form table.cart td.product-quantity .detail-qty input.qty-val {
	display: block !important;
	flex: 1 1 auto;
	box-sizing: border-box;
	width: 44px !important;
	max-width: 44px;
	height: 38px;
	min-height: 38px;
	margin: 0;
	padding: 0;
	line-height: 38px;
	text-align: center;
}

/* Cart shipping methods: align each radio, delivery name and fee in a row. */
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th,
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td {
	vertical-align: top;
}

.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th {
	width: 35%;
	padding-top: 18px;
}

.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td {
	width: 65%;
}

.woocommerce-cart .cart_totals #shipping_method {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-cart .cart_totals #shipping_method li {
	display: flex !important;
	align-items: center;
	gap: 10px;
	margin: 0 0 12px;
	padding: 0;
}

.woocommerce-cart .cart_totals #shipping_method li input[type="radio"] {
	flex: 0 0 16px;
	width: 16px;
	margin: 0 !important;
}

.woocommerce-cart .cart_totals #shipping_method li label {
	display: flex !important;
	flex: 1 1 auto;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin: 0;
	line-height: 1.45;
}

.woocommerce-cart .cart_totals .woocommerce-shipping-destination {
	margin: 12px 0 0;
	padding-left: 26px;
}

@media (max-width: 767px) {
	/* Leave room to scroll cart totals above the fixed mobile bottom bar. */
	.woocommerce-cart .cart-custom-style2 {
		padding-bottom: 88px !important;
	}

	.woocommerce-cart .woocommerce-cart-form table.cart td.product-quantity .detail-qty {
		margin-left: auto;
		margin-right: 0;
	}

	.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th {
		display: none !important;
	}

	.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td {
		display: block !important;
		box-sizing: border-box;
		width: 100% !important;
		padding-top: 14px !important;
	}

	.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td::before {
		display: block !important;
		float: none !important;
		width: 100%;
		margin: 0 0 12px;
		text-align: left;
	}

	.woocommerce-cart .cart_totals #shipping_method {
		width: 100%;
	}

	.woocommerce-cart .cart_totals #shipping_method li {
		width: 100%;
		gap: 10px;
		margin-bottom: 14px;
	}

	.woocommerce-cart .cart_totals #shipping_method li label {
		white-space: nowrap;
	}

	.woocommerce-cart .cart_totals #shipping_method li label .woocommerce-Price-amount {
		flex: 0 0 auto;
		white-space: nowrap;
	}

	.woocommerce-cart .cart_totals .woocommerce-shipping-destination {
		margin-top: 10px;
		padding-left: 26px;
		text-align: left;
	}
}
