/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/


/* =========================================================
   SUP-TW CART + CHECKOUT — GLACIER BLUE UI
   ========================================================= */
body.woocommerce-cart,
body.woocommerce-checkout {
	--sup-navy: #071f4a;
	--sup-blue: #0878f9;
	--sup-tech: #20a4ff;
	--sup-ice: #edf7ff;
	--sup-pale: #f7fbff;
	--sup-border: #cfe5f8;
	--sup-muted: #587493;
	--sup-white: #ffffff;
}

body.woocommerce-cart .main-page-wrapper,
body.woocommerce-checkout .main-page-wrapper {
	background:
		radial-gradient(circle at 88% 12%, rgba(32,164,255,.13), transparent 30%),
		linear-gradient(135deg, #ffffff 0%, #f7fbff 44%, #edf7ff 100%);
	padding-bottom: 80px;
}

body.woocommerce-cart .page-title,
body.woocommerce-checkout .page-title {
	border-bottom: 1px solid rgba(207,229,248,.9);
}

body.woocommerce-cart .container,
body.woocommerce-checkout .container {
	max-width: 1240px;
}

body.woocommerce-cart .cart-content-wrapper {
	gap: 38px;
	align-items: flex-start;
}

body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-totals-section,
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout .checkout-order-review {
	background: rgba(255,255,255,.94);
	border: 1px solid var(--sup-border);
	border-radius: 20px;
	box-shadow: 0 22px 55px rgba(7,31,74,.08);
}

body.woocommerce-cart .woocommerce-cart-form {
	padding: 0 24px 22px;
	overflow: hidden;
}

body.woocommerce-cart .shop_table {
	margin: 0;
}

body.woocommerce-cart .shop_table thead th {
	color: var(--sup-navy);
	font-weight: 800;
	background: linear-gradient(180deg,#fafdff,#f4faff);
	border-bottom: 1px solid var(--sup-border);
	padding-top: 20px;
	padding-bottom: 20px;
}

body.woocommerce-cart .shop_table td {
	border-color: var(--sup-border);
	padding-top: 20px;
	padding-bottom: 20px;
	color: var(--sup-navy);
}

body.woocommerce-cart .product-thumbnail img {
	border: 1px solid #b9ddfa;
	border-radius: 12px;
	background: #fff;
	padding: 4px;
}

body.woocommerce-cart .product-name a {
	color: var(--sup-navy);
	font-weight: 750;
	line-height: 1.6;
}

body.woocommerce-cart .product-price,
body.woocommerce-cart .product-subtotal {
	color: var(--sup-blue);
	font-weight: 800;
}

body.woocommerce-cart .quantity {
	border: 1px solid var(--sup-border);
	border-radius: 999px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 6px 18px rgba(8,120,249,.06);
}

body.woocommerce-cart .quantity input[type="button"],
body.woocommerce-cart .quantity input[type="number"] {
	border: 0;
	color: var(--sup-navy);
	background: #fff;
}

body.woocommerce-cart .cart-actions {
	padding: 20px 0 0;
}

body.woocommerce-cart .coupon {
	display: flex;
	gap: 10px;
	padding: 10px;
	border: 1px solid var(--sup-border);
	border-radius: 15px;
	background: var(--sup-pale);
}

body.woocommerce-cart .coupon input {
	border: 1px solid var(--sup-border);
	border-radius: 11px;
	background: #fff;
	min-height: 46px;
}

body.woocommerce-cart .coupon button,
body.woocommerce-cart button[name="update_cart"] {
	border-radius: 12px;
	min-height: 46px;
}

body.woocommerce-cart .cart-totals-section {
	padding: 26px;
	position: sticky;
	top: 30px;
}

body.woocommerce-cart .cart_totals h2,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields > h3 {
	color: var(--sup-navy);
	font-weight: 850;
	letter-spacing: -.02em;
}

body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
	border-color: var(--sup-border);
	color: var(--sup-navy);
	padding-top: 17px;
	padding-bottom: 17px;
}

body.woocommerce-cart .order-total .amount,
body.woocommerce-checkout .order-total .amount {
	color: var(--sup-blue);
	font-size: 24px;
	font-weight: 900;
}

body.woocommerce-cart .checkout-button,
body.woocommerce-checkout #place_order {
	background: linear-gradient(135deg,var(--sup-blue),var(--sup-tech)) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 14px !important;
	min-height: 52px;
	font-weight: 850;
	box-shadow: 0 14px 28px rgba(8,120,249,.22);
	transition: transform .2s ease, box-shadow .2s ease;
}

body.woocommerce-cart .checkout-button:hover,
body.woocommerce-checkout #place_order:hover {
	transform: translateY(-2px);
	box-shadow: 0 18px 34px rgba(8,120,249,.30);
}

body.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: minmax(0,1.15fr) minmax(360px,.85fr);
	gap: 42px;
	align-items: start;
}

body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #order_review {
	width: 100%;
	float: none;
}

body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-additional-fields {
	padding: 30px;
	margin-bottom: 22px;
}

body.woocommerce-checkout #order_review {
	position: sticky;
	top: 30px;
}

body.woocommerce-checkout .checkout-order-review {
	padding: 28px;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table {
	background: #fff;
	border: 0;
	margin-bottom: 20px;
}

body.woocommerce-checkout .form-row label {
	color: var(--sup-navy);
	font-weight: 750;
	margin-bottom: 8px;
}

body.woocommerce-checkout input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-selection {
	border: 1px solid var(--sup-border) !important;
	border-radius: 13px !important;
	background: #fff !important;
	min-height: 50px;
	color: var(--sup-navy);
	box-shadow: 0 7px 20px rgba(7,31,74,.035);
}

body.woocommerce-checkout textarea {
	min-height: 110px;
	padding: 14px;
}

body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout textarea:focus {
	border-color: var(--sup-tech) !important;
	box-shadow: 0 0 0 4px rgba(32,164,255,.12);
}

body.woocommerce-checkout #payment {
	background: linear-gradient(145deg,#f8fcff,#eef8ff);
	border: 1px solid var(--sup-border);
	border-radius: 16px;
	padding: 18px;
}

body.woocommerce-checkout .woocommerce-privacy-policy-text {
	color: var(--sup-muted);
	line-height: 1.75;
}

body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
body.woocommerce-checkout form.checkout_coupon,
body.woocommerce-checkout form.login {
	background: rgba(255,255,255,.92);
	border: 1px solid var(--sup-border);
	border-radius: 14px;
	color: var(--sup-navy);
	box-shadow: 0 10px 30px rgba(7,31,74,.05);
}

.sup-shipping-progress {
	margin: 0 0 22px;
	padding: 17px 18px;
	border: 1px solid var(--sup-border);
	border-radius: 15px;
	background: linear-gradient(135deg,#f7fbff,#edf7ff);
	color: var(--sup-navy);
}

.sup-shipping-progress__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 12px;
	font-weight: 750;
}

.sup-shipping-progress__amount {
	color: var(--sup-blue);
}

.sup-shipping-progress__track {
	height: 8px;
	background: #dceefc;
	border-radius: 999px;
	overflow: hidden;
}

.sup-shipping-progress__bar {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg,var(--sup-blue),var(--sup-tech));
	box-shadow: 0 0 16px rgba(32,164,255,.35);
}

.sup-shipping-progress__foot {
	margin-top: 10px;
	text-align: right;
	color: var(--sup-muted);
	font-size: 13px;
}

@media (max-width: 1024px) {
	body.woocommerce-checkout form.checkout {
		grid-template-columns: 1fr;
		gap: 24px;
	}
	body.woocommerce-checkout #order_review,
	body.woocommerce-cart .cart-totals-section {
		position: static;
	}
}

@media (max-width: 768px) {
	body.woocommerce-cart .main-page-wrapper,
	body.woocommerce-checkout .main-page-wrapper {
		padding-bottom: 46px;
	}
	body.woocommerce-cart .woocommerce-cart-form,
	body.woocommerce-cart .cart-totals-section,
	body.woocommerce-checkout .woocommerce-billing-fields,
	body.woocommerce-checkout .woocommerce-additional-fields,
	body.woocommerce-checkout .checkout-order-review {
		border-radius: 15px;
		padding-left: 16px;
		padding-right: 16px;
	}
	body.woocommerce-cart .cart-content-wrapper {
		gap: 22px;
	}
	body.woocommerce-cart .coupon {
		flex-direction: column;
	}
	body.woocommerce-checkout form.checkout {
		display: block;
	}
	body.woocommerce-checkout #order_review {
		margin-top: 24px;
	}
}


/* SUP-TW checkout grid placement */
@media (min-width: 1025px) {
	body.woocommerce-checkout form.checkout > .sup-shipping-progress {
		grid-column: 1;
		grid-row: 1;
		margin-bottom: -18px;
	}
	body.woocommerce-checkout form.checkout > #customer_details {
		grid-column: 1;
		grid-row: 2;
	}
	body.woocommerce-checkout form.checkout > #order_review {
		grid-column: 2;
		grid-row: 1 / span 2;
		margin-top: 30px;
	}
}


/* SUP-TW checkout column widths */
@media (min-width: 1025px) {
	body.woocommerce-checkout form.checkout {
		grid-template-columns: minmax(0, 1fr) 480px !important;
	}
	body.woocommerce-checkout #customer_details,
	body.woocommerce-checkout #order_review,
	body.woocommerce-checkout .checkout-order-review {
		min-width: 0;
		max-width: none !important;
		width: 100% !important;
	}
	body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name {
		width: 68%;
		white-space: normal;
	}
}


/* SUP-TW checkout vertical alignment */
@media (min-width: 1025px) {
	body.woocommerce-checkout form.checkout {
		position: relative;
		grid-template-rows: auto !important;
	}
	body.woocommerce-checkout form.checkout > .sup-shipping-progress {
		position: absolute;
		top: 0;
		left: 0;
		width: calc(100% - 522px);
		margin: 0;
		z-index: 2;
	}
	body.woocommerce-checkout form.checkout > #customer_details {
		grid-column: 1;
		grid-row: 1;
		margin-top: 138px;
	}
	body.woocommerce-checkout form.checkout > #order_review {
		grid-column: 2;
		grid-row: 1;
		margin-top: 0;
	}
}
