/**
 * JD eSIM redesigned WooCommerce cart page.
 *
 * WPCode usage:
 * - Snippet type: CSS Snippet
 * - Auto insert: Site Wide Header, or only on the Cart page if available.
 */

body.woocommerce-cart.jdesim-cart-redesign {
	background: #f7f9fc;
}

body.woocommerce-cart.jdesim-cart-redesign .site-content .ast-container {
	max-width: 1500px;
	padding-left: 24px;
	padding-right: 24px;
}

body.woocommerce-cart.jdesim-cart-redesign .entry-title {
	margin: 0 0 24px;
	color: var(--ast-global-color-2, #1f2a3d);
	font-size: 36px;
	line-height: 1.25;
	font-weight: 700;
}

body.woocommerce-cart.jdesim-cart-redesign .entry-content > .woocommerce {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 24px;
	align-items: start;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce-notices-wrapper,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce-message,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce-error,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce-info {
	grid-column: 1 / -1;
}

body.woocommerce-cart.jdesim-cart-redesign form.woocommerce-cart-form {
	grid-column: 1;
	margin: 0;
}

body.woocommerce-cart.jdesim-cart-redesign .cart-collaterals {
	grid-column: 2;
	width: 100%;
	margin: 0;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table {
	margin: 0;
	border: 1px solid #d8e0ea;
	border-radius: 8px;
	border-collapse: separate;
	border-spacing: 0;
	background: #fff;
	overflow: hidden;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table th {
	padding: 18px 16px;
	border-bottom: 1px solid #d8e0ea;
	background: #fbfcfe;
	color: var(--ast-global-color-2, #1f2a3d);
	font-size: 15px;
	font-weight: 700;
	text-align: left;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td {
	padding: 18px 16px;
	border-top: 0;
	border-bottom: 1px solid #d8e0ea;
	color: var(--ast-global-color-3, #334155);
	vertical-align: middle;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table tr:last-child td,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table tr.cart-subtotal td,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table tr.order-total td {
	border-bottom: 0;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table .product-remove {
	width: 44px;
	text-align: center;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table a.remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border: 1px solid #cbd5e1;
	border-radius: 50%;
	color: #94a3b8 !important;
	font-size: 22px;
	line-height: 1;
	text-decoration: none;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table a.remove:hover,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table a.remove:focus {
	border-color: #ef4444;
	background: #fff1f2;
	color: #ef4444 !important;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table .product-thumbnail {
	width: 90px;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table .product-thumbnail img {
	width: 72px;
	height: 50px;
	border-radius: 4px;
	object-fit: cover;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table .product-name a {
	color: var(--ast-global-color-0, #046bd2);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.45;
	text-decoration: none;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table .product-price,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table .product-subtotal {
	color: var(--ast-global-color-2, #1f2a3d);
	font-size: 16px;
	font-weight: 600;
	white-space: nowrap;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table .product-quantity {
	width: 78px;
	text-align: center;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table th.product-price,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table th.product-quantity,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table th.product-subtotal,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-price,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-quantity,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-subtotal {
	text-align: center;
}

body.woocommerce-cart.jdesim-cart-redesign .jdesim-cart-quantity-static {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 34px;
	padding: 0 10px;
	border: 1px solid #cbd5e1;
	border-radius: 6px;
	background: #f8fafc;
	color: var(--ast-global-color-2, #1f2a3d);
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .quantity .qty {
	width: 68px;
	height: 40px;
	padding: 8px 10px;
	border: 1px solid #cbd5e1;
	border-radius: 4px;
	text-align: center;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions {
	padding: 18px 16px;
	background: #fff;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions .coupon {
	display: flex;
	float: left;
	gap: 10px;
	align-items: center;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions #coupon_code {
	width: 220px;
	height: 44px;
	margin: 0;
	border-color: #cbd5e1;
	box-shadow: none;
	font-size: 15px;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce button.button,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce a.button,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce .button {
	min-height: 44px;
	border-radius: 6px;
	font-weight: 700;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions .button {
	padding: 12px 18px;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions button[name="update_cart"] {
	float: right;
	background: #8fb7ea;
	color: #fff;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions button[name="update_cart"]:not(:disabled) {
	background: var(--ast-global-color-0, #046bd2);
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals {
	float: none;
	width: 100%;
	margin: 0;
	padding: 26px 28px;
	border: 1px solid #d8e0ea;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 14px 30px rgba(15, 23, 42, 0.06);
	position: sticky;
	top: 24px;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals h2 {
	margin: 0 0 20px;
	padding: 0 0 18px;
	border-bottom: 1px solid #d8e0ea;
	color: var(--ast-global-color-2, #1f2a3d);
	font-size: 26px;
	line-height: 1.25;
	font-weight: 700;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals table {
	width: 100%;
	margin-bottom: 20px;
	border: 0;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals th,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals td {
	padding: 16px 0;
	border-bottom: 1px solid #d8e0ea;
	background: transparent;
	color: var(--ast-global-color-3, #334155);
	font-size: 16px;
	text-align: left;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals td {
	text-align: right;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals tr {
	display: table-row;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals th,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals td {
	display: table-cell;
	width: 50%;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals .order-total th,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals .order-total td {
	color: var(--ast-global-color-2, #1f2a3d);
	font-size: 18px;
	font-weight: 800;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .wc-proceed-to-checkout {
	margin: 0;
	padding: 0;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .wc-proceed-to-checkout .checkout-button,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce .wc-proceed-to-checkout .jdesim-cart-checkout-button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 54px;
	margin: 0;
	padding: 15px 18px;
	border-radius: 6px;
	background: var(--ast-global-color-0, #046bd2);
	color: #fff;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.25;
	text-decoration: none;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce .wc-proceed-to-checkout .checkout-button:hover,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce .wc-proceed-to-checkout .checkout-button:focus {
	background: var(--ast-global-color-1, #045cb4);
	color: #fff;
}

body.woocommerce-cart.jdesim-cart-redesign .woocommerce-shipping-totals,
body.woocommerce-cart.jdesim-cart-redesign tr.shipping,
body.woocommerce-cart.jdesim-cart-redesign .shipping,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce-shipping-destination,
body.woocommerce-cart.jdesim-cart-redesign .woocommerce-shipping-calculator,
body.woocommerce-cart.jdesim-cart-redesign .wc-ppcp-cart-payments__container,
body.woocommerce-cart.jdesim-cart-redesign .wc-ppcp-cart__container,
body.woocommerce-cart.jdesim-cart-redesign .wc-ppcp-express-checkout,
body.woocommerce-cart.jdesim-cart-redesign .wc-ppcp-cart-or,
body.woocommerce-cart.jdesim-cart-redesign .wc-ppcp-separator,
body.woocommerce-cart.jdesim-cart-redesign .ppc-button-wrapper,
body.woocommerce-cart.jdesim-cart-redesign .paypal-button-container,
body.woocommerce-cart.jdesim-cart-redesign .paypal-buttons,
body.woocommerce-cart.jdesim-cart-redesign #wc-ppcp-cart,
body.woocommerce-cart.jdesim-cart-redesign #wc-ppcp-cart-button-container,
body.woocommerce-cart.jdesim-cart-redesign #ppc-button,
body.woocommerce-cart.jdesim-cart-redesign #ppcp-messages,
body.woocommerce-cart.jdesim-cart-redesign .wc-stripe-payment-request-wrapper,
body.woocommerce-cart.jdesim-cart-redesign #wc-stripe-payment-request-wrapper,
body.woocommerce-cart.jdesim-cart-redesign .wc-stripe-express-checkout,
body.woocommerce-cart.jdesim-cart-redesign .express-payment-methods,
body.woocommerce-cart.jdesim-cart-redesign .wc-block-components-express-payment,
body.woocommerce-cart.jdesim-cart-redesign .wc-block-components-express-payment-continue-rule,
body.woocommerce-cart.jdesim-cart-redesign [id*="applepay"],
body.woocommerce-cart.jdesim-cart-redesign [id*="googlepay"],
body.woocommerce-cart.jdesim-cart-redesign [id*="gpay"],
body.woocommerce-cart.jdesim-cart-redesign [class*="applepay"],
body.woocommerce-cart.jdesim-cart-redesign [class*="googlepay"],
body.woocommerce-cart.jdesim-cart-redesign [class*="gpay"] {
	display: none !important;
}

@media (max-width: 921px) {
	body.woocommerce-cart.jdesim-cart-redesign .site-content .ast-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	body.woocommerce-cart.jdesim-cart-redesign .entry-title {
		margin-bottom: 18px;
		font-size: 30px;
	}

	body.woocommerce-cart.jdesim-cart-redesign .entry-content > .woocommerce {
		display: block;
	}

	body.woocommerce-cart.jdesim-cart-redesign form.woocommerce-cart-form,
	body.woocommerce-cart.jdesim-cart-redesign .cart-collaterals {
		width: 100%;
		margin: 0 0 18px;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table {
		border: 0;
		background: transparent;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table thead {
		display: none;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table tbody,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table tr,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td {
		display: block;
		width: 100%;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table tr.cart_item {
		display: grid;
		grid-template-columns: 32px 78px minmax(0, 1fr);
		gap: 8px 12px;
		margin-bottom: 14px;
		padding: 16px;
		border: 1px solid #d8e0ea;
		border-radius: 8px;
		background: #fff;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table tr.cart_item td {
		padding: 0;
		border: 0;
		text-align: left !important;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-remove {
		grid-column: 1;
		grid-row: 1 / span 2;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-thumbnail {
		grid-column: 2;
		grid-row: 1 / span 2;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-name {
		grid-column: 3;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-price,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-quantity,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-subtotal {
		grid-column: 3;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 14px;
		min-height: 34px;
		font-size: 14px;
		line-height: 1.4;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-price > *,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-quantity > *,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-subtotal > * {
		margin-left: auto;
		text-align: right;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-quantity .quantity {
		display: flex;
		justify-content: flex-end;
		width: auto;
		margin-left: auto;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-quantity .qty {
		width: 68px;
		margin-left: auto;
		text-align: center;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-price::before,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-quantity::before,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-subtotal::before {
		content: attr(data-title);
		flex: 0 0 54px;
		min-width: 54px;
		color: var(--ast-global-color-2, #1f2a3d);
		font-weight: 700;
		text-align: left;
		white-space: nowrap;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-thumbnail::before,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-name::before,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.product-remove::before {
		display: none;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table .product-thumbnail img {
		width: 78px;
		height: 54px;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table .product-name a {
		font-size: 15px;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table tr:last-child {
		display: block;
		padding: 16px;
		border: 1px solid #d8e0ea;
		border-radius: 8px;
		background: #fff;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions {
		padding: 0;
		border: 0;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions .coupon {
		display: flex;
		float: none;
		flex-direction: column;
		gap: 10px;
		width: 100%;
		margin-bottom: 10px;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions #coupon_code,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions .button,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td.actions button[name="update_cart"] {
		float: none;
		width: 100%;
		margin: 0;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals {
		padding: 20px;
		position: static;
		box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals h2 {
		font-size: 23px;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals table.shop_table,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals table,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals tbody {
		display: block;
		width: 100%;
		margin: 0 0 18px;
		border: 0;
		background: transparent;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals tr.cart-subtotal,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals tr.order-total {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 18px;
		width: 100%;
		padding: 0;
		border: 0;
		background: transparent;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals tr.cart-subtotal {
		margin-bottom: 14px;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals tr.order-total {
		margin-top: 4px;
		padding-top: 16px;
		border-top: 1px solid #d8e0ea;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals th,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals td {
		display: block !important;
		width: auto !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
		line-height: 1.45;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals th {
		flex: 0 0 auto;
		min-width: 64px;
		text-align: left !important;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals td {
		flex: 1 1 auto;
		text-align: right !important;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .cart-collaterals .cart_totals td::before {
		display: none !important;
		content: none !important;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce .wc-proceed-to-checkout .checkout-button {
		min-height: 52px;
		font-size: 17px;
	}
}

@media (min-width: 922px) and (max-width: 1120px) {
	body.woocommerce-cart.jdesim-cart-redesign .entry-content > .woocommerce {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}

	body.woocommerce-cart.jdesim-cart-redesign .cart-collaterals {
		grid-column: 1;
	}

	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table th,
	body.woocommerce-cart.jdesim-cart-redesign .woocommerce table.shop_table td {
		padding-left: 16px;
		padding-right: 16px;
	}
}