/* Zestora - WooCommerce pages (Cart, Checkout, Thank you, My Account)
   -------------------------------------------------------------
   Rang badalne ke liye sirf neeche wale variables change karein. */
:root{
	--zw-accent:#A03A13;
	--zw-accent-deep:#7C2A0C;
	--zw-ink:#241813;
	--zw-muted:#6E5B51;
	--zw-line:#E8E8E8;
	--zw-soft:#F6F6F6;
	--zw-cream:#FFFFFF;
	--zw-surface:#FFFFFF;
}

.woocommerce-cart .site-content,
.woocommerce-checkout .site-content,
.woocommerce-account .site-content,
.woocommerce-order-received .site-content{background:var(--zw-cream)}

/* page title */
.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title,
.woocommerce-account .entry-title,
.woocommerce-order-received .entry-title{
	font-family:"Playfair Display",Georgia,serif !important;
	font-weight:700 !important;
	color:var(--zw-ink) !important;
	font-size:38px !important;
	margin-bottom:22px !important;
}

/* section headings */
.woocommerce h3,
.woocommerce-checkout h3,
.woocommerce-billing-fields h3,
#order_review_heading,
.woocommerce-account h2,
.woocommerce-order-details__title,
.woocommerce-column__title,
.cart_totals h2{
	font-family:"Playfair Display",Georgia,serif !important;
	font-weight:700 !important;
	color:var(--zw-ink) !important;
	font-size:22px !important;
}

/* ---------- form fields ---------- */
.woocommerce form .form-row label,
.woocommerce-account label{
	font-size:13.5px !important;
	font-weight:700 !important;
	color:var(--zw-ink) !important;
	margin-bottom:6px !important;
}

.woocommerce form .form-row .input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="tel"],
.select2-container--default .select2-selection--single{
	background:var(--zw-surface) !important;
	border:1px solid var(--zw-line) !important;
	border-radius:12px !important;
	min-height:48px !important;
	padding:12px 14px !important;
	color:var(--zw-ink) !important;
	font-size:15px !important;
	box-shadow:none !important;
}

.woocommerce form .form-row textarea{min-height:110px !important}

.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{
	border-color:var(--zw-accent) !important;
	outline:none !important;
	box-shadow:0 0 0 3px rgba(160,58,19,.12) !important;
}

.woocommerce form .form-row.woocommerce-invalid .input-text{border-color:#C0392B !important}
.woocommerce form .form-row .required{color:var(--zw-accent) !important;text-decoration:none}

/* ---------- buttons ---------- */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #place_order,
.woocommerce .checkout-button{
	background:var(--zw-accent) !important;
	color:#FFFFFF !important;
	border:0 !important;
	border-radius:999px !important;
	padding:14px 30px !important;
	font-weight:700 !important;
	font-size:15px !important;
	line-height:1.2 !important;
	box-shadow:0 8px 20px rgba(160,58,19,.20) !important;
	transition:background .18s ease,transform .18s ease !important;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #place_order:hover,
.woocommerce .checkout-button:hover{
	background:var(--zw-accent-deep) !important;
	color:#FFFFFF !important;
	transform:translateY(-1px);
}

/* light (secondary) button */
.woocommerce .cart .button[name="update_cart"],
.woocommerce .woocommerce-message .button,
.woocommerce .return-to-shop .button{
	background:var(--zw-surface) !important;
	color:var(--zw-ink) !important;
	border:1px solid var(--zw-line) !important;
	box-shadow:none !important;
}

#place_order{width:100%;min-height:54px;font-size:16px !important}

/* ---------- notices ---------- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews{
	background:var(--zw-surface) !important;
	border:1px solid var(--zw-line) !important;
	border-top:3px solid var(--zw-accent) !important;
	border-radius:14px !important;
	color:var(--zw-ink) !important;
	padding:16px 20px 16px 46px !important;
	box-shadow:0 6px 18px rgba(36,24,19,.06) !important;
}

.woocommerce-message::before,
.woocommerce-info::before{color:var(--zw-accent) !important;top:18px !important;left:18px !important}
.woocommerce-error{border-top-color:#C0392B !important}
.woocommerce-error::before{color:#C0392B !important;top:18px !important;left:18px !important}

/* ---------- cart ---------- */
.woocommerce table.shop_table{
	background:var(--zw-surface);
	border:1px solid var(--zw-line) !important;
	border-radius:18px !important;
	overflow:hidden;
	border-collapse:separate !important;
}

.woocommerce table.shop_table th{
	background:var(--zw-soft);
	color:var(--zw-ink) !important;
	font-size:12px !important;
	letter-spacing:.09em;
	text-transform:uppercase;
	padding:16px 18px !important;
}

.woocommerce table.shop_table td{padding:16px 18px !important;border-top:1px solid var(--zw-soft) !important;color:var(--zw-ink)}
.woocommerce table.shop_table img{border-radius:10px}
.woocommerce table.shop_table .product-name a{color:var(--zw-ink) !important;font-weight:700;text-decoration:none}
.woocommerce table.shop_table .product-name a:hover{color:var(--zw-accent) !important}
.woocommerce a.remove{color:#C0392B !important;font-weight:700}
.woocommerce a.remove:hover{background:#C0392B !important;color:#FFFFFF !important}

.woocommerce .quantity .qty{
	background:var(--zw-surface) !important;
	border:1px solid var(--zw-line) !important;
	border-radius:999px !important;
	min-height:42px !important;
	width:78px !important;
	text-align:center;
	font-weight:700;
	color:var(--zw-ink) !important;
}

.cart_totals,
.woocommerce-order-details,
.woocommerce-customer-details{
	background:var(--zw-surface);
	border:1px solid var(--zw-line);
	border-radius:20px;
	padding:22px 24px;
	box-shadow:0 14px 40px rgba(36,24,19,.07);
}

.cart_totals table.shop_table,
#order_review table.shop_table,
.woocommerce-order-details table.shop_table{border:0 !important;border-radius:0 !important;box-shadow:none !important;background:transparent}
.cart_totals table.shop_table th,
#order_review table.shop_table th{background:transparent;text-transform:none;font-size:14px !important;letter-spacing:0}

#order_review .order-total .amount,
.cart_totals .order-total .amount{color:var(--zw-accent) !important;font-size:20px}

/* ---------- checkout ---------- */
.woocommerce-checkout .woocommerce-billing-fields{
	background:var(--zw-surface);
	border:1px solid var(--zw-line);
	border-radius:20px;
	padding:24px 26px 6px;
	box-shadow:0 14px 40px rgba(36,24,19,.07);
}

.woocommerce-checkout .woocommerce-additional-fields{margin-top:20px}
.woocommerce-checkout-review-order-table tfoot th{color:var(--zw-ink)}

.woocommerce-checkout #payment{background:transparent !important;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{
	background:var(--zw-surface) !important;
	border:1px solid var(--zw-line) !important;
	border-radius:16px !important;
	padding:14px 16px !important;
}
.woocommerce-checkout #payment ul.payment_methods li{padding:6px 0}
.woocommerce-checkout #payment ul.payment_methods label{font-weight:700 !important;color:var(--zw-ink) !important;font-size:15px !important}
.woocommerce-checkout #payment div.payment_box{
	background:var(--zw-surface) !important;
	border:1px solid var(--zw-line) !important;
	border-radius:14px !important;
	color:var(--zw-muted) !important;
	margin-top:10px !important;
	padding:16px 18px !important;
}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--zw-surface) !important}
.woocommerce-checkout #payment .place-order{padding-top:18px}

.woocommerce-form-coupon-toggle .woocommerce-info{border-top-color:var(--zw-accent) !important}
.checkout_coupon{
	background:var(--zw-surface) !important;
	border:1px solid var(--zw-line) !important;
	border-radius:16px !important;
	padding:20px !important;
}

/* ---------- thank you / order received ---------- */
.woocommerce-order .woocommerce-thankyou-order-received{
	font-family:"Playfair Display",Georgia,serif;
	font-size:24px;
	font-weight:700;
	color:var(--zw-ink);
}

.woocommerce-order ul.woocommerce-order-overview{
	background:var(--zw-surface);
	border:1px solid var(--zw-line);
	border-radius:18px;
	padding:18px 22px !important;
	margin:0 0 26px !important;
	display:flex;
	flex-wrap:wrap;
	gap:18px 30px;
	list-style:none;
}
.woocommerce-order ul.woocommerce-order-overview li{
	border:0 !important;
	margin:0 !important;
	padding:0 !important;
	font-size:11.5px !important;
	letter-spacing:.09em;
	text-transform:uppercase;
	color:var(--zw-muted) !important;
	flex:0 1 auto;
}
.woocommerce-order ul.woocommerce-order-overview li strong{
	display:block;
	margin-top:5px;
	font-size:16px;
	letter-spacing:0;
	text-transform:none;
	color:var(--zw-ink);
}

/* ---------- my account ---------- */
.woocommerce-account .woocommerce-MyAccount-navigation{
	background:var(--zw-surface);
	border:1px solid var(--zw-line);
	border-radius:18px;
	padding:12px;
	box-shadow:0 10px 30px rgba(36,24,19,.06);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce-account .woocommerce-MyAccount-navigation li{border:0 !important;margin:0 0 4px !important}
.woocommerce-account .woocommerce-MyAccount-navigation li a{
	display:block;
	padding:12px 16px;
	border-radius:12px;
	color:var(--zw-ink) !important;
	font-weight:600;
	text-decoration:none;
	transition:background .18s ease,color .18s ease;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:var(--zw-soft);color:var(--zw-accent) !important}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--zw-accent);color:#FFFFFF !important}

.woocommerce-account .woocommerce-MyAccount-content{
	background:var(--zw-surface);
	border:1px solid var(--zw-line);
	border-radius:18px;
	padding:26px 28px;
	box-shadow:0 10px 30px rgba(36,24,19,.06);
	color:var(--zw-ink);
}
.woocommerce-account .woocommerce-MyAccount-content a{color:var(--zw-accent)}

.woocommerce-account:not(.logged-in) .woocommerce{max-width:520px;margin:0 auto}
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register{
	background:var(--zw-surface) !important;
	border:1px solid var(--zw-line) !important;
	border-radius:20px !important;
	padding:28px 26px !important;
	box-shadow:0 14px 40px rgba(36,24,19,.08) !important;
}
.woocommerce-account .woocommerce-form-login .button,
.woocommerce-account .woocommerce-form-register .button{width:100%}
.woocommerce-account .woocommerce-form-login-toggle,
.woocommerce-account .lost_password a{color:var(--zw-accent)}

/* select2 (in case any is left) */
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:24px !important;color:var(--zw-ink) !important}
.select2-container--default .select2-selection--single .select2-selection__arrow{top:12px !important}

@media(max-width:782px){
	.woocommerce-cart .entry-title,
	.woocommerce-checkout .entry-title,
	.woocommerce-account .entry-title,
	.woocommerce-order-received .entry-title{font-size:28px !important}
	.woocommerce-checkout .woocommerce-billing-fields,
	.cart_totals,.woocommerce-checkout #order_review,
	.woocommerce-account .woocommerce-MyAccount-content{padding:18px 16px}
}

/* hide the "Checkout" title on the thank-you page - our own heading is below */
.woocommerce-order-received .entry-title{display:none !important}

/* ---------- Your order (checkout) ek hi card ---------- */
.woocommerce-checkout #order_review_heading{
	background:var(--zw-surface) !important;
	border:1px solid var(--zw-line) !important;
	border-bottom:0 !important;
	border-radius:20px 20px 0 0 !important;
	margin:0 !important;
	padding:24px 26px 0 !important;
}

.woocommerce-checkout #order_review{
	background:var(--zw-surface) !important;
	border:1px solid var(--zw-line) !important;
	border-top:0 !important;
	border-radius:0 0 20px 20px !important;
	margin:0 0 26px !important;
	padding:14px 26px 26px !important;
	box-shadow:none !important;
}

.woocommerce-checkout #order_review table.shop_table{margin:0 !important}
.woocommerce-checkout #order_review table.shop_table td,
.woocommerce-checkout #order_review table.shop_table th{padding:14px 0 !important;border-top:1px solid var(--zw-soft) !important}
.woocommerce-checkout #order_review table.shop_table thead th{border-top:0 !important;padding-top:0 !important}

.woocommerce-checkout #order_review a{color:var(--zw-accent) !important;text-decoration:none}
.woocommerce-checkout #order_review a:hover{color:var(--zw-accent-deep) !important;text-decoration:underline}

/* ---------- Thank you page ---------- */

.woocommerce-order{max-width:900px;margin:0 auto}

/* the tracker is the real heading - hide WooCommerce's duplicate lines */
.woocommerce-order > .woocommerce-thankyou-order-received,
.woocommerce-order > ul.woocommerce-order-overview{display:none !important}

/* Order details / customer details ke card */
.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-customer-details{
	background:var(--zw-surface);
	border:1px solid var(--zw-line);
	border-radius:20px;
	padding:26px 28px;
	box-shadow:0 14px 40px rgba(36,24,19,.07);
	margin:0 0 22px;
}

.woocommerce-order .woocommerce-order-details__title,
.woocommerce-order .woocommerce-column__title{
	margin:0 0 6px !important;
	padding-bottom:16px;
	border-bottom:1px solid var(--zw-line);
	font-size:20px !important;
}

/* receipt-style list - remove the table look */
.woocommerce-order .woocommerce-order-details table.shop_table{
	background:transparent !important;
	border:0 !important;
	border-radius:0 !important;
	box-shadow:none !important;
	width:100%;
	margin:0 !important;
}

.woocommerce-order .woocommerce-order-details table.shop_table thead{display:none}

.woocommerce-order .woocommerce-order-details table.shop_table tbody td{
	background:transparent !important;
	border:0 !important;
	border-bottom:1px solid #F2F2F2 !important;
	padding:15px 0 !important;
	font-size:15px;
	color:var(--zw-ink);
	vertical-align:middle;
}

.woocommerce-order .woocommerce-order-details table.shop_table tbody td.product-total{
	text-align:right;
	white-space:nowrap;
	font-weight:700;
}

.woocommerce-order .woocommerce-order-details table.shop_table tbody .product-name a{
	color:var(--zw-ink) !important;
	font-weight:700;
	text-decoration:none;
}

.woocommerce-order .woocommerce-order-details table.shop_table tbody .product-name a:hover{color:var(--zw-accent) !important}
.woocommerce-order .woocommerce-order-details table.shop_table .product-quantity{color:var(--zw-muted);font-weight:600}

/* totals */
.woocommerce-order .woocommerce-order-details table.shop_table tfoot th,
.woocommerce-order .woocommerce-order-details table.shop_table tfoot td{
	background:transparent !important;
	border:0 !important;
	padding:11px 0 !important;
	font-size:15px;
}

.woocommerce-order .woocommerce-order-details table.shop_table tfoot th{
	text-align:left;
	font-weight:600 !important;
	color:var(--zw-muted) !important;
	text-transform:none !important;
	letter-spacing:0 !important;
}

.woocommerce-order .woocommerce-order-details table.shop_table tfoot td{text-align:right;font-weight:700;color:var(--zw-ink)}

.woocommerce-order .woocommerce-order-details table.shop_table tfoot tr:first-child th,
.woocommerce-order .woocommerce-order-details table.shop_table tfoot tr:first-child td{padding-top:18px !important}

.woocommerce-order .woocommerce-order-details table.shop_table tfoot tr:last-child th,
.woocommerce-order .woocommerce-order-details table.shop_table tfoot tr:last-child td{
	border-top:2px solid var(--zw-line) !important;
	padding-top:16px !important;
	font-size:19px !important;
	font-weight:800 !important;
}

.woocommerce-order .woocommerce-order-details table.shop_table tfoot tr:last-child td{color:var(--zw-accent) !important}

/* customer details */
.woocommerce-order .woocommerce-customer-details address{
	border:0 !important;
	padding:16px 0 0 !important;
	border-radius:0 !important;
	font-style:normal;
	line-height:1.9;
	color:var(--zw-ink);
	font-size:15px;
}

.woocommerce-order .woocommerce-customer-details .woocommerce-customer-details--phone,
.woocommerce-order .woocommerce-customer-details .woocommerce-customer-details--email{
	margin:8px 0 0;
	color:var(--zw-muted);
}

/* downloads / notices */
.woocommerce-order .woocommerce-order-downloads{margin-bottom:22px}

@media(max-width:782px){
	.woocommerce-order .woocommerce-order-details,
	.woocommerce-order .woocommerce-customer-details{padding:20px 18px;border-radius:16px}
}

/* ---------- mobile: full-width fields ---------- */
@media(max-width:600px){
	.woocommerce form .form-row-first,
	.woocommerce form .form-row-last,
	.woocommerce-page form .form-row-first,
	.woocommerce-page form .form-row-last{
		width:100% !important;
		float:none !important;
		margin-right:0 !important;
	}

	.woocommerce-cart table.cart td.actions .coupon .input-text{width:100% !important;margin:0 0 10px !important}
	.woocommerce-cart table.cart td.actions .button{width:100%}
	.woocommerce table.shop_table_responsive tr td{padding:12px 14px !important}
	.woocommerce table.shop_table_responsive tr td::before{font-weight:700;color:var(--zw-ink)}
	.woocommerce .quantity .qty{width:70px !important}
	.woocommerce #place_order{min-height:52px}
}

/* ---------- tablet ---------- */
@media(max-width:1024px){
	.woocommerce-checkout .col2-set,
	.woocommerce-checkout .col2-set .col-1,
	.woocommerce-checkout .col2-set .col-2{width:100% !important;float:none !important}
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content{width:100% !important;float:none !important;margin:0 0 20px}
	.woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:6px}
	.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0 !important}
	.woocommerce-account .woocommerce-MyAccount-navigation li a{padding:10px 14px;font-size:14px}
	.woocommerce .cart-collaterals .cart_totals{width:100% !important;float:none !important}
}

@media(max-width:600px){
	.woocommerce-order .woocommerce-order-details table.shop_table tbody td{padding:12px 0 !important}
	.woocommerce-order .woocommerce-order-details table.shop_table tbody td::before{color:var(--zw-muted)}
	.woocommerce table.shop_table_responsive tbody tr td.product-remove{text-align:right}
}

/* ---------- mobile: cart page + thank you polish ---------- */
@media(max-width:600px){
	.woocommerce table.shop_table,
	.woocommerce-page table.shop_table{width:100% !important;max-width:100% !important}
	.woocommerce-cart table.cart img{width:56px !important;height:56px !important;object-fit:cover;border-radius:12px}
	.woocommerce-cart table.cart td.product-name{font-size:14px}
	.woocommerce-cart table.cart td.actions{padding:14px !important}
	.woocommerce-cart table.cart td.actions .coupon{display:block;width:100%}
	.woocommerce-cart .cart-collaterals,
	.woocommerce-cart .cart-collaterals .cart_totals{width:100% !important;float:none !important}
	.woocommerce-cart .cart_totals table th,
	.woocommerce-cart .cart_totals table td{padding:12px 0 !important;font-size:14px}
	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;text-align:center}
	.woocommerce .woocommerce-message,
	.woocommerce .woocommerce-info,
	.woocommerce .woocommerce-error{flex-wrap:wrap;gap:10px;font-size:14px}
	.woocommerce .woocommerce-message .button,
	.woocommerce .woocommerce-info .button{float:none !important;margin:0 !important}
	.woocommerce-order .woocommerce-order-details,
	.woocommerce-order .woocommerce-customer-details{padding:18px 14px !important;border-radius:14px !important}
	.woocommerce-order .woocommerce-order-details table.shop_table tfoot th,
	.woocommerce-order .woocommerce-order-details table.shop_table tfoot td{font-size:14px !important}
	.woocommerce-order .woocommerce-order-details table.shop_table tfoot tr:last-child th,
	.woocommerce-order .woocommerce-order-details table.shop_table tfoot tr:last-child td{font-size:17px !important}
	.woocommerce-checkout #order_review_heading{padding:20px 18px 0 !important}
	.woocommerce-checkout #order_review{padding:12px 18px 20px !important}
	.woocommerce-checkout #payment ul.payment_methods li label{font-size:14px}
	.woocommerce-checkout #payment div.payment_box{font-size:13.5px}
	.woocommerce form .form-row input.input-text,
	.woocommerce form .form-row textarea{font-size:16px !important}
}

@media(max-width:480px){
	.woocommerce-cart table.cart td.actions .button,
	.woocommerce-cart table.cart td.actions input.button{width:100% !important;margin:0 0 8px !important}
	.woocommerce .cart_totals h2,
	.woocommerce-checkout #order_review_heading{font-size:19px !important}
}
