/*
 * Cartonix — cart, checkout and thank-you: one visual system.
 * Tokens → shared components (steps, cards, buttons, fields) → page specifics → mini cart / product.
 */

:root {
	--cxchk-green: #3e7b18;
	--cxchk-green-dark: #2f5f12;
	--cxchk-green-soft: #eef6e8;
	--cxchk-green-line: #cfe3c0;
	--cxchk-ink: #1f2a1a;
	--cxchk-text: #4a5145;
	--cxchk-muted: #7b8376;
	--cxchk-line: #e6eae2;
	--cxchk-field: #fbfcfa;
	--cxchk-subtle: #f7f9f5;
	--cxchk-danger: #c0392b;
	--cxchk-danger-soft: #fdf0ee;
	--cxchk-warn-bg: #fff8e6;
	--cxchk-warn-ink: #7a5a00;
	--cxchk-r-card: 16px;
	--cxchk-r: 12px;
	--cxchk-r-sm: 10px;
	--cxchk-h: 48px;
	--cxchk-shadow: 0 1px 2px rgba(31, 42, 26, .04), 0 10px 30px rgba(31, 42, 26, .06);
	--cxchk-card-pad: 24px;
}
@media (max-width: 768.98px) {
	:root { --cxchk-card-pad: 16px; }
}

.cxchk-hidden { display: none !important; }
.cxchk-sr {
	position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important;
	clip: rect(0 0 0 0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; margin: -1px !important; padding: 0 !important; border: 0 !important;
}

/* =================================================================
 * 1. Steps — identical on cart, checkout and thank-you
 * =============================================================== */
.cxchk-steps {
	margin: 0 0 20px; padding: 16px 20px;
	border: 1px solid var(--cxchk-line); border-radius: var(--cxchk-r-card);
	background: #fff; box-shadow: var(--cxchk-shadow);
}
.cxchk-steps ol { display: flex; align-items: center; justify-content: center; margin: 0; padding: 0; list-style: none; }
.cxchk-steps li { display: flex; align-items: center; margin: 0; color: var(--cxchk-muted); font-size: 14px; font-weight: 600; line-height: 1.4; }
.cxchk-steps li + li::before {
	content: ""; display: block; width: clamp(20px, 6vw, 80px); height: 2px; margin: 0 12px;
	border-radius: 2px; background: var(--cxchk-line);
}
.cxchk-steps li.is-done + li::before { background: var(--cxchk-green); }
.cxchk-steps a { display: inline-flex; align-items: center; gap: 8px; color: inherit; text-decoration: none; }
.cxchk-steps a:hover { color: var(--cxchk-green-dark); }
.cxchk-steps li > .cxchk-steps__dot { margin-left: 8px; }
.cxchk-steps__dot {
	display: inline-grid; place-items: center; flex: 0 0 auto;
	width: 30px; height: 30px; border-radius: 50%;
	border: 2px solid var(--cxchk-line); background: #fff; color: var(--cxchk-muted);
	font-size: 13px; font-weight: 800; line-height: 1;
}
.cxchk-steps__dot .cxchk-ico { width: 16px; height: 16px; stroke-width: 2.6; }
.cxchk-steps li.is-done { color: var(--cxchk-green); }
.cxchk-steps li.is-done .cxchk-steps__dot { border-color: var(--cxchk-green); background: var(--cxchk-green); color: #fff; }
.cxchk-steps li.is-current { color: var(--cxchk-ink); font-weight: 800; }
.cxchk-steps li.is-current .cxchk-steps__dot { border-color: var(--cxchk-green); color: var(--cxchk-green); box-shadow: 0 0 0 4px var(--cxchk-green-soft); }
@media (max-width: 480px) {
	.cxchk-steps { padding: 12px; }
	.cxchk-steps li { font-size: 12.5px; }
	.cxchk-steps li:not(.is-current) .cxchk-steps__label { display: none; }
	.cxchk-steps li > .cxchk-steps__dot { margin-left: 6px; }
	.cxchk-steps li + li::before { margin: 0 8px; }
}

/* The cart page's old Elementor step bar (icons + arrows) is replaced by the bar above. */
.cxchk-js .cxchk-cart .elementor-element-6dcfe7a9 { display: none !important; }

/* Checkout: the theme's big title is replaced by the step bar (kept for screen readers). */
.cxchk-checkout h1.cx-wc-title {
	position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important;
	clip: rect(0 0 0 0) !important; clip-path: inset(50%) !important; margin: -1px !important; padding: 0 !important; border: 0 !important;
}

/* =================================================================
 * 2. Cards — one surface everywhere
 * =============================================================== */
.cxchk-checkout #customer_details,
.cxchk-checkout .checkout-order-review,
.cxchk-cart .elementor-element-452e064e,
.cxchk-cart .elementor-element-4bf9c412,
.cxchk-thankyou .woocommerce-order-details,
.cxchk-thankyou .woocommerce-customer-details,
.cxchk-thankyou .cxchk-next,
.cxchk-thankyou .woocommerce-thankyou-order-received,
.cxchk-thankyou .woocommerce-thankyou-order-failed,
.cxchk-sum {
	border: 1px solid var(--cxchk-line) !important;
	border-radius: var(--cxchk-r-card) !important;
	background: #fff !important;
	box-shadow: var(--cxchk-shadow) !important;
}
.cxchk-checkout #customer_details,
.cxchk-checkout .checkout-order-review { padding: var(--cxchk-card-pad) !important; }
.cxchk-checkout #customer_details .woocommerce-billing-fields,
.cxchk-checkout #customer_details .woocommerce-shipping-fields { margin-top: 0 !important; }
.cxchk-cart .elementor-element-452e064e > .elementor-container,
.cxchk-cart .elementor-element-4bf9c412 > .elementor-container { padding: 0; }

/* Receipt zig-zag and grey panel of the theme — gone, so checkout matches cart. */
.cxchk-checkout .checkout-order-review::before,
.cxchk-checkout .checkout-order-review::after { display: none !important; content: none !important; }
.cxchk-checkout .checkout-order-review .wd-table-wrapper {
	margin: 0 0 18px; padding: 4px 16px; border: 1px solid var(--cxchk-line); border-radius: var(--cxchk-r);
	background: var(--cxchk-subtle); box-shadow: none;
}

/* Section headings */
.cxchk-checkout #customer_details h3,
.cxchk-checkout #order_review_heading,
.cxchk-cart .cart-totals-inner > h2,
.cxchk-thankyou .woocommerce-order-details__title,
.cxchk-thankyou .woocommerce-column__title,
.cxchk-thankyou .cxchk-next h2 {
	display: flex !important; align-items: center; gap: 10px;
	margin: 0 0 18px !important; padding: 0 !important; border: 0 !important;
	color: var(--cxchk-ink) !important; font-size: 18px !important; font-weight: 800 !important; line-height: 1.5 !important;
	text-transform: none !important; letter-spacing: 0 !important;
}
.cxchk-checkout .woocommerce-billing-fields > h3::before,
.cxchk-checkout #order_review_heading::before {
	display: inline-grid; place-items: center; flex: 0 0 auto;
	width: 28px; height: 28px; border-radius: 50%;
	background: var(--cxchk-green-soft); color: var(--cxchk-green);
	font-size: 14px; font-weight: 800;
}
.cxchk-checkout .woocommerce-billing-fields > h3::before { content: "۱"; }
.cxchk-checkout #order_review_heading::before { content: "۲"; }

/* =================================================================
 * 3. Buttons — rounded, same heights, one primary per step
 * =============================================================== */
.cxchk-flow .woocommerce .button:not(.add_to_cart_button),
.cxchk-flow .woocommerce button.button:not(.add_to_cart_button),
.cxchk-flow .woocommerce a.button:not(.add_to_cart_button),
.cxchk-flow .woocommerce input.button:not(.add_to_cart_button),
.cxchk-btn {
	display: inline-flex !important; align-items: center; justify-content: center; gap: 8px;
	min-height: var(--cxchk-h); padding: 0 20px !important;
	border: 1.5px solid transparent !important; border-radius: var(--cxchk-r) !important;
	background: var(--cxchk-green) !important; color: #fff !important;
	font-family: inherit; font-size: 15px !important; font-weight: 800 !important; line-height: 1.3 !important;
	text-decoration: none !important; text-transform: none !important; letter-spacing: 0 !important;
	box-shadow: none !important; cursor: pointer;
	transition: background-color .15s ease, border-color .15s ease, color .15s ease, transform .1s ease;
}
.cxchk-flow .woocommerce .button:not(.add_to_cart_button):hover,
.cxchk-btn:hover { background: var(--cxchk-green-dark) !important; color: #fff !important; }
.cxchk-flow .woocommerce .button:active,
.cxchk-btn:active { transform: translateY(1px); }
.cxchk-flow .woocommerce .button:focus-visible,
.cxchk-btn:focus-visible,
.cxchk-toggle:focus-visible,
.cxchk-sticky__btn:focus-visible { outline: 3px solid #9cc97c !important; outline-offset: 3px; }

/* Secondary (outline) */
.cxchk-flow .woocommerce .coupon .button,
.cxchk-flow .woocommerce .checkout_coupon .button,
.cxchk-flow .woocommerce button[name="update_cart"],
.cxchk-btn--ghost {
	border-color: var(--cxchk-green) !important; background: #fff !important; color: var(--cxchk-green) !important;
}
.cxchk-flow .woocommerce .coupon .button:hover,
.cxchk-flow .woocommerce .checkout_coupon .button:hover,
.cxchk-flow .woocommerce button[name="update_cart"]:hover,
.cxchk-btn--ghost:hover { background: var(--cxchk-green-soft) !important; color: var(--cxchk-green-dark) !important; }
.cxchk-flow .woocommerce button.button:disabled,
.cxchk-flow .woocommerce button.button[disabled] { opacity: .45 !important; cursor: not-allowed; }
.cxchk-btn .cxchk-ico { width: 18px; height: 18px; }

/* =================================================================
 * 4. Fields — checkout, coupons
 * =============================================================== */
.cxchk-checkout form.checkout .form-row { margin-bottom: 16px; padding: 0; }
.cxchk-checkout form.checkout .form-row label:not(.checkbox):not(.woocommerce-form__label-for-checkbox) {
	display: block; margin-bottom: 6px; color: var(--cxchk-ink); font-size: 14px; font-weight: 600; line-height: 1.6;
}
.cxchk-checkout form.checkout .form-row .required { color: var(--cxchk-danger); font-weight: 400; text-decoration: none; border: 0; }
.cxchk-checkout form.checkout .form-row .optional { color: var(--cxchk-muted); font-size: 12px; font-weight: 400; }

.cxchk-flow .woocommerce input.input-text,
.cxchk-flow .woocommerce textarea,
.cxchk-flow .woocommerce select,
.cxchk-flow .woocommerce .select2-container .select2-selection--single {
	width: 100%; min-height: var(--cxchk-h); padding: 10px 14px;
	border: 1.5px solid var(--cxchk-line) !important; border-radius: var(--cxchk-r) !important;
	background-color: var(--cxchk-field) !important; color: var(--cxchk-ink);
	font-family: inherit; font-size: 15px; line-height: 1.6; box-shadow: none !important;
	transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}
.cxchk-flow .woocommerce .select2-container .select2-selection--single { display: flex; align-items: center; padding: 0 14px; }
.cxchk-flow .woocommerce .select2-container .select2-selection__rendered { padding: 0 !important; line-height: 1.6 !important; color: var(--cxchk-ink) !important; }
.cxchk-flow .woocommerce .select2-container .select2-selection__arrow { height: 100% !important; left: 10px !important; right: auto !important; }
.cxchk-flow .woocommerce textarea { min-height: 96px; resize: vertical; }
.cxchk-flow .woocommerce input.input-text::placeholder,
.cxchk-flow .woocommerce textarea::placeholder { color: #a3aa9e; opacity: 1; }
.cxchk-flow .woocommerce input.input-text:hover,
.cxchk-flow .woocommerce textarea:hover,
.cxchk-flow .woocommerce select:hover { border-color: #cbd3c5 !important; }
.cxchk-flow .woocommerce input.input-text:focus,
.cxchk-flow .woocommerce textarea:focus,
.cxchk-flow .woocommerce select:focus,
.cxchk-flow .woocommerce .select2-container--focus .select2-selection--single,
.cxchk-flow .woocommerce .select2-container--open .select2-selection--single {
	border-color: var(--cxchk-green) !important; background-color: #fff !important; outline: 0;
	box-shadow: 0 0 0 4px var(--cxchk-green-soft) !important;
}
.cxchk-checkout form.checkout input[dir="ltr"],
.cxchk-checkout form.checkout input[dir="ltr"]::placeholder { text-align: right; }

/* Validation */
.cxchk-checkout form.checkout .woocommerce-invalid input.input-text,
.cxchk-checkout form.checkout .woocommerce-invalid select,
.cxchk-checkout form.checkout .woocommerce-invalid .select2-selection--single {
	border-color: var(--cxchk-danger) !important; background-color: var(--cxchk-danger-soft) !important;
}
.cxchk-checkout form.checkout .woocommerce-validated input.input-text { border-color: var(--cxchk-green-line) !important; }
.cxchk-hint { display: block; margin-top: 6px; color: var(--cxchk-danger); font-size: 13px; line-height: 1.6; }
.cxchk-checkout form.checkout .woocommerce-validated .cxchk-hint { display: none; }

/* Optional-part toggles: text links, never boxed buttons */
.cxchk-flow .woocommerce button.cxchk-toggle,
button.cxchk-toggle {
	display: inline-flex !important; align-items: center; gap: 8px;
	width: auto !important; min-height: 32px !important; margin: 0 0 14px !important; padding: 0 !important;
	border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important;
	color: var(--cxchk-green) !important; font-family: inherit; font-size: 14px !important; font-weight: 700 !important; line-height: 1.6 !important;
	text-transform: none !important; cursor: pointer;
}
button.cxchk-toggle:hover { color: var(--cxchk-green-dark) !important; text-decoration: underline; text-underline-offset: 4px; }
button.cxchk-toggle::before {
	content: "+"; display: inline-grid; place-items: center; flex: 0 0 auto;
	width: 22px; height: 22px; border-radius: 50%; background: var(--cxchk-green-soft); font-size: 16px; line-height: 1;
}
button.cxchk-toggle[aria-expanded="true"]::before { content: "−"; }
.cxchk-checkout .cxchk-company.is-collapsed,
.cxchk-checkout .woocommerce-additional-fields.is-collapsed .woocommerce-additional-fields__field-wrapper { display: none; }
.cxchk-checkout .woocommerce-additional-fields > h3 { display: none !important; }
.cxchk-checkout .woocommerce-additional-fields { margin-top: 4px; }

/* Ship to a different address */
.cxchk-checkout #customer_details #ship-to-different-address {
	margin: 4px 0 16px !important; padding: 12px 14px !important;
	border: 1.5px solid var(--cxchk-line) !important; border-radius: var(--cxchk-r) !important;
	background: var(--cxchk-field) !important; font-size: 15px !important; font-weight: 700 !important;
}
.cxchk-checkout #customer_details #ship-to-different-address::before { display: none !important; }
.cxchk-checkout #customer_details #ship-to-different-address label { display: flex; align-items: center; gap: 10px; margin: 0; cursor: pointer; font-size: 15px; }
.cxchk-checkout #customer_details #ship-to-different-address input { width: 18px; height: 18px; margin: 0; accent-color: var(--cxchk-green); }

/* Coupon toggle line */
.cxchk-checkout .woocommerce-form-coupon-toggle { margin: 0 0 16px; }
.cxchk-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	margin: 0 !important; padding: 12px 16px !important;
	border: 1px dashed var(--cxchk-green-line) !important; border-radius: var(--cxchk-r) !important;
	background: #fff !important; color: var(--cxchk-text) !important; font-size: 14px;
}
.cxchk-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before { display: none !important; }
.cxchk-checkout .woocommerce-form-coupon-toggle a { font-weight: 800; }
.cxchk-checkout form.checkout_coupon {
	display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 16px !important; padding: 16px !important;
	border: 1px solid var(--cxchk-line) !important; border-radius: var(--cxchk-r-card) !important; background: #fff;
}
.cxchk-checkout form.checkout_coupon .form-row { flex: 1 1 200px; margin: 0 !important; padding: 0; width: auto !important; float: none !important; }
.cxchk-checkout form.checkout_coupon .form-row-last { flex: 0 0 auto; }
.cxchk-checkout form.checkout_coupon > p:not(.form-row) { flex-basis: 100%; margin: 0; font-size: 13px; color: var(--cxchk-muted); }

/* =================================================================
 * 5. Checkout — order review, payment, pay button
 * =============================================================== */
.cxchk-checkout .woocommerce-checkout-review-order-table { margin: 0 !important; }
.cxchk-checkout .woocommerce-checkout-review-order-table th,
.cxchk-checkout .woocommerce-checkout-review-order-table td { padding-top: 12px !important; padding-bottom: 12px !important; border-color: var(--cxchk-line) !important; }
.cxchk-checkout .woocommerce-checkout-review-order-table thead th { color: var(--cxchk-muted); font-size: 13px; font-weight: 600; }
.cxchk-checkout .woocommerce-checkout-review-order-table .cart_item td { color: var(--cxchk-text); font-size: 14px; }
.cxchk-checkout .woocommerce-checkout-review-order-table .product-quantity { color: var(--cxchk-green); font-weight: 800; white-space: nowrap; }
.cxchk-checkout .woocommerce-checkout-review-order-table .order-total th { color: var(--cxchk-ink); font-size: 16px; font-weight: 800; }
.cxchk-checkout .woocommerce-checkout-review-order-table .order-total .amount { color: var(--cxchk-green); font-size: 20px; font-weight: 900; }
.cxchk-checkout .woocommerce-checkout-review-order-table .amount { white-space: nowrap; }

.cxchk-cod-note {
	display: flex; align-items: flex-start; gap: 8px;
	margin: 6px 0 0; padding: 10px 12px;
	border-radius: var(--cxchk-r-sm); background: var(--cxchk-warn-bg); color: var(--cxchk-warn-ink);
	font-size: 13px; font-weight: 500; line-height: 1.7; text-align: right;
}
.cxchk-cod-note::before {
	content: "i"; flex: 0 0 auto; display: inline-grid; place-items: center;
	width: 18px; height: 18px; margin-top: 2px; border-radius: 50%;
	background: #f1c14b; color: #fff; font: 700 12px/1 Georgia, serif;
}
.cxchk-cod-row td { padding-top: 0 !important; border-top: 0 !important; }

/* Payment */
.cxchk-checkout #payment { padding: 0 !important; background: transparent !important; border: 0 !important; }
.cxchk-checkout #payment ul.payment_methods { margin: 0 0 14px !important; padding: 0 !important; border: 0 !important; }
.cxchk-checkout #payment ul.payment_methods > li {
	margin: 0 !important; padding: 14px 16px !important; list-style: none;
	border: 1.5px solid var(--cxchk-green) !important; border-radius: var(--cxchk-r) !important;
	background: var(--cxchk-green-soft) !important;
}
.cxchk-checkout #payment ul.payment_methods > li > label { display: inline-flex; align-items: center; gap: 8px; margin: 0; color: var(--cxchk-ink); font-size: 15px; font-weight: 800; }
.cxchk-checkout #payment ul.payment_methods > li > label img { max-height: 26px; width: auto; margin: 0 6px 0 0; }
.cxchk-checkout #payment div.payment_box {
	margin: 8px 0 0 !important; padding: 0 !important; border: 0 !important;
	background: transparent !important; box-shadow: none !important; color: var(--cxchk-text); font-size: 13px; line-height: 1.8;
}
.cxchk-checkout #payment div.payment_box::before,
.cxchk-checkout #payment div.payment_box::after { display: none !important; }
.cxchk-checkout #payment div.payment_box p { margin: 0; }
.cxchk-checkout #payment .form-row.place-order { margin: 0 !important; padding: 0 !important; border: 0 !important; }

.cxchk-consent { margin: 0 0 12px; color: var(--cxchk-muted); font-size: 12.5px; line-height: 1.8; text-align: center; }
.cxchk-consent a { color: var(--cxchk-text); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }

.cxchk-checkout #place_order {
	width: 100% !important; min-height: 56px; padding: 12px 18px !important;
	border-radius: var(--cxchk-r) !important;
	font-size: 17px !important; box-shadow: 0 6px 18px rgba(62, 123, 24, .28) !important;
}
.cxchk-checkout #place_order .cxchk-ico { width: 20px; height: 20px; }
.cxchk-checkout #place_order .cxchk-pay__amount { font-weight: 900; }
.cxchk-checkout #place_order .amount,
.cxchk-checkout #place_order .amount * { color: #fff !important; font-size: inherit !important; font-weight: inherit !important; }

.cxchk-trust {
	display: grid; gap: 8px; margin: 14px 0 0; padding: 14px 0 0; list-style: none;
	border-top: 1px solid var(--cxchk-line);
}
.cxchk-trust li { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--cxchk-text); font-size: 13px; line-height: 1.6; }
.cxchk-trust .cxchk-ico { flex: 0 0 auto; width: 18px; height: 18px; color: var(--cxchk-green); }
.cxchk-trust a { color: var(--cxchk-ink); font-weight: 700; text-decoration: none; }
.cxchk-trust a:hover { color: var(--cxchk-green); text-decoration: underline; text-underline-offset: 3px; }

/* =================================================================
 * 6. Cart page
 * =============================================================== */
.cxchk-cart .elementor-column:has(.elementor-widget-wd_cart_totals) .elementor-widget-image,
.cxchk-cart .cxchk-legacy-heading { display: none !important; }

/* Table */
.cxchk-cart .woocommerce-cart-form table.shop_table { margin: 0 !important; border: 0 !important; border-collapse: collapse !important; }
.cxchk-cart .woocommerce-cart-form table.shop_table thead th {
	padding: 0 12px 14px !important; border: 0 !important; border-bottom: 1px solid var(--cxchk-line) !important;
	color: var(--cxchk-muted) !important; font-size: 13px !important; font-weight: 600 !important; text-transform: none !important;
}
.cxchk-cart .woocommerce-cart-form table.shop_table td {
	padding: 16px 12px !important; border: 0 !important; border-bottom: 1px solid var(--cxchk-line) !important; vertical-align: middle !important;
}
.cxchk-cart .woocommerce-cart-form .product-thumbnail img {
	width: 76px !important; height: 76px !important; max-width: none; object-fit: cover;
	border: 1px solid var(--cxchk-line); border-radius: var(--cxchk-r) !important;
}
.cxchk-cart .woocommerce-cart-form td.product-name,
.cxchk-cart .woocommerce-cart-form td.product-name a { color: var(--cxchk-ink) !important; font-size: 15px !important; font-weight: 800 !important; line-height: 1.6; text-decoration: none; }
.cxchk-cart .woocommerce-cart-form td.product-price { color: var(--cxchk-muted); font-size: 14px; }
.cxchk-cart .woocommerce-cart-form td.product-subtotal .amount { color: var(--cxchk-green) !important; font-size: 16px; font-weight: 900; }
.cxchk-cart .woocommerce-cart-form .amount { white-space: nowrap; }
.cxchk-cart .woocommerce-cart-form a.remove {
	display: inline-grid !important; place-items: center; width: 34px !important; height: 34px !important;
	border-radius: 50% !important; background: var(--cxchk-subtle) !important; color: var(--cxchk-muted) !important;
	font-size: 20px !important; line-height: 1 !important; text-decoration: none !important;
	transition: background-color .15s ease, color .15s ease;
}
.cxchk-cart .woocommerce-cart-form a.remove { font-size: 0 !important; }
.cxchk-cart .woocommerce-cart-form a.remove::before { font-size: 14px !important; }
.cxchk-cart .woocommerce-cart-form a.remove:hover { background: var(--cxchk-danger-soft) !important; color: var(--cxchk-danger) !important; }

/* Quantity: one rounded control with the number centred inside */
.cxchk-cart .woocommerce-cart-form .quantity {
	display: inline-flex !important; align-items: stretch; flex-wrap: nowrap;
	height: 44px; margin: 0; overflow: hidden; vertical-align: middle;
	border: 1.5px solid var(--cxchk-line) !important; border-radius: var(--cxchk-r) !important; background: #fff !important;
}
.cxchk-cart .woocommerce-cart-form .quantity input.minus,
.cxchk-cart .woocommerce-cart-form .quantity input.plus {
	flex: 0 0 40px; width: 40px !important; height: 100% !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important;
	border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important;
	color: var(--cxchk-ink) !important; font-size: 18px !important; font-weight: 700 !important; line-height: 1 !important; cursor: pointer;
}
.cxchk-cart .woocommerce-cart-form .quantity input.minus:hover:not(:disabled),
.cxchk-cart .woocommerce-cart-form .quantity input.plus:hover:not(:disabled) { background: var(--cxchk-green-soft) !important; color: var(--cxchk-green) !important; }
.cxchk-cart .woocommerce-cart-form .quantity input.minus:disabled,
.cxchk-cart .woocommerce-cart-form .quantity input.plus:disabled { opacity: .3; cursor: default; }
.cxchk-cart .woocommerce-cart-form .quantity input.qty {
	flex: 0 0 60px; width: 60px !important; height: 100% !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important;
	border: 0 !important; border-right: 1px solid var(--cxchk-line) !important; border-left: 1px solid var(--cxchk-line) !important; border-radius: 0 !important;
	background: #fff !important; box-shadow: none !important;
	color: var(--cxchk-ink) !important; font-size: 16px !important; font-weight: 800 !important; line-height: 1 !important; text-align: center !important;
	-moz-appearance: textfield; appearance: textfield;
}
.cxchk-cart .woocommerce-cart-form .quantity input.qty::-webkit-outer-spin-button,
.cxchk-cart .woocommerce-cart-form .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.cxchk-cart .woocommerce-cart-form .quantity input.qty:focus { outline: 0; background: var(--cxchk-green-soft) !important; }

/* Actions row: coupon + (auto) update */
.cxchk-cart .woocommerce-cart-form td.actions { padding: 18px 0 0 !important; border-bottom: 0 !important; }
.cxchk-cart .woocommerce-cart-form td.actions .coupon {
	display: flex !important; align-items: stretch; gap: 10px; width: auto; max-width: 440px; float: right; margin: 0 !important;
}
.cxchk-cart .woocommerce-cart-form td.actions .coupon input.input-text { flex: 1 1 auto; width: auto !important; margin: 0 !important; }
.cxchk-cart .woocommerce-cart-form td.actions .coupon .button { flex: 0 0 auto; }
.cxchk-js .cxchk-cart .woocommerce-cart-form button[name="update_cart"] { display: none !important; }
.cxchk-cart .woocommerce-cart-form table.shop_table { border-bottom: 0 !important; }
.cxchk-cart .woocommerce-cart-form table.shop_table tr:last-child td { border-bottom: 0 !important; }
@media (min-width: 769px) {
	.cxchk-cart .woocommerce-cart-form td.product-name { min-width: 170px; }
}
/* The post-size notice is about shipping, which now lives on the checkout step. */
.cxchk-cart .cart_totals table.shop_table tr.cx-post-note,
.cxchk-cart .cart_totals tr.cx-post-note,
.cxchk-cart .cart_totals tr:has(.cx-note),
.cxchk-cart .cart_totals .cx-note { display: none !important; }

/* Totals */
.cxchk-cart .cart_totals { width: 100% !important; float: none !important; }
.cxchk-cart .cart-totals-inner > h2 { display: block !important; padding-bottom: 14px !important; border-bottom: 1px solid var(--cxchk-line) !important; }
.cxchk-cart .cart_totals table.shop_table { margin: 0 0 18px !important; border: 0 !important; border-collapse: collapse !important; width: 100%; }
.cxchk-cart .cart_totals table.shop_table tr { border-bottom: 1px solid var(--cxchk-line); }
.cxchk-cart .cart_totals table.shop_table tr:last-child { border-bottom: 0; }
.cxchk-cart .cart_totals table.shop_table th,
.cxchk-cart .cart_totals table.shop_table td {
	padding: 14px 0 !important; border: 0 !important; background: none !important; vertical-align: middle !important;
}
.cxchk-cart .cart_totals table.shop_table th { color: var(--cxchk-text) !important; font-size: 14px !important; font-weight: 700 !important; text-align: right !important; }
.cxchk-cart .cart_totals table.shop_table td { color: var(--cxchk-ink); font-size: 15px; text-align: left !important; }
.cxchk-cart .cart_totals .cxchk-ship-later td { text-align: right !important; }
.cxchk-ship-note {
	display: flex; align-items: center; gap: 8px; margin: 0; padding: 10px 12px;
	border-radius: var(--cxchk-r-sm); background: var(--cxchk-subtle); color: var(--cxchk-text);
	font-size: 13px; line-height: 1.7;
}
.cxchk-ship-note .cxchk-ico { flex: 0 0 auto; width: 18px; height: 18px; color: var(--cxchk-green); }
.cxchk-cart .cart_totals .order-total th { color: var(--cxchk-ink) !important; font-size: 16px !important; font-weight: 800 !important; }
.cxchk-cart .cart_totals .order-total .amount { color: var(--cxchk-green) !important; font-size: 22px; font-weight: 900; white-space: nowrap; }
.cxchk-cart .wc-proceed-to-checkout { margin: 0 !important; padding: 0 !important; }
.cxchk-cart .wc-proceed-to-checkout .checkout-button {
	width: 100% !important; min-height: 54px; margin: 0 !important; font-size: 16px !important;
	box-shadow: 0 6px 18px rgba(62, 123, 24, .24) !important;
}
.cxchk-cart .wc-proceed-to-checkout .checkout-button::after { content: "←"; font-size: 18px; line-height: 1; }

/* Product cards (cross-sells, shop): the price wraps «تومان» under the number instead of sliding under the cart button */
.wd-products .wd-product .product-element-bottom .price { flex-wrap: wrap !important; min-width: 0 !important; row-gap: 0 !important; }
.wd-products .wd-product .product-element-bottom .price .amount { white-space: normal !important; }
.wd-products .wd-product .product-element-bottom .price bdi { display: inline-flex; flex-wrap: wrap; align-items: baseline; column-gap: 3px; }
.wd-products .wd-product .product-element-bottom .price .woocommerce-Price-currencySymbol { font-size: .72em; }
.cxchk-cart .wd-products .wd-product .wd-add-btn .button,
.cxchk-cart .wd-products .wd-product .wd-add-btn a { border-radius: var(--cxchk-r) !important; }

/* =================================================================
 * 7. Thank-you page
 * =============================================================== */
.cxchk-thankyou .woocommerce-order { max-width: 880px; margin: 0 auto; }
.cxchk-thankyou .woocommerce-order > .woodplus_factor_link { display: none !important; }

.cxchk-thankyou .woocommerce-thankyou-order-received {
	display: grid !important; justify-items: center; gap: 8px;
	margin: 0 0 20px !important; padding: 32px 24px !important; text-align: center;
	color: var(--cxchk-text) !important; font-size: 15px !important;
}
.cxchk-thankyou .woocommerce-thankyou-order-received::before { display: none !important; }
.cxchk-ty__icon {
	display: inline-grid; place-items: center; width: 64px; height: 64px; margin-bottom: 6px;
	border-radius: 50%; background: var(--cxchk-green); color: #fff;
	box-shadow: 0 0 0 8px var(--cxchk-green-soft);
}
.cxchk-ty__icon .cxchk-ico { width: 32px; height: 32px; stroke-width: 2.6; }
.cxchk-ty__title { display: block; color: var(--cxchk-ink); font-size: 22px; font-weight: 900; line-height: 1.5; }
.cxchk-ty__sub { display: block; color: var(--cxchk-muted); font-size: 14px; line-height: 1.8; }
.cxchk-ty__sub strong { color: var(--cxchk-ink); font-weight: 800; }

.cxchk-thankyou ul.woocommerce-order-overview {
	display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px;
	margin: 0 0 20px !important; padding: 0 !important; list-style: none; border: 0 !important;
}
.cxchk-thankyou ul.woocommerce-order-overview::before,
.cxchk-thankyou ul.woocommerce-order-overview::after { display: none !important; }
.cxchk-thankyou ul.woocommerce-order-overview li {
	display: grid; gap: 4px; margin: 0 !important; padding: 16px !important; float: none !important; width: auto !important;
	border: 1px solid var(--cxchk-line) !important; border-radius: var(--cxchk-r) !important; background: #fff;
	color: var(--cxchk-muted) !important; font-size: 13px !important; line-height: 1.6; text-align: right;
}
.cxchk-thankyou ul.woocommerce-order-overview li strong {
	display: block; margin: 0 !important; color: var(--cxchk-ink); font-size: 15px !important; font-weight: 800; line-height: 1.6; word-break: break-word;
}
.cxchk-thankyou ul.woocommerce-order-overview li.total strong .amount { color: var(--cxchk-green); }
@media (max-width: 768.98px) {
	.cxchk-thankyou ul.woocommerce-order-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.cxchk-thankyou .cxchk-next,
.cxchk-thankyou .woocommerce-order-details,
.cxchk-thankyou .woocommerce-customer-details { margin: 0 0 20px !important; padding: var(--cxchk-card-pad) !important; }
.cxchk-next__list { display: grid; gap: 14px; margin: 0 0 20px; padding: 0; list-style: none; }
.cxchk-next__list li { display: flex; align-items: flex-start; gap: 12px; margin: 0; }
.cxchk-next__n {
	display: inline-grid; place-items: center; flex: 0 0 auto; width: 30px; height: 30px; border-radius: 50%;
	background: var(--cxchk-green-soft); color: var(--cxchk-green); font-size: 14px; font-weight: 900;
}
.cxchk-next__list div { display: grid; gap: 2px; }
.cxchk-next__list strong { color: var(--cxchk-ink); font-size: 15px; font-weight: 800; line-height: 1.6; }
.cxchk-next__list div span { color: var(--cxchk-text); font-size: 14px; line-height: 1.8; }
.cxchk-next__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.cxchk-next__actions .cxchk-btn { flex: 1 1 200px; }

.cxchk-thankyou .woocommerce-table--order-details { margin: 0 !important; border: 0 !important; border-collapse: collapse !important; }
.cxchk-thankyou .woocommerce-table--order-details th,
.cxchk-thankyou .woocommerce-table--order-details td {
	padding: 12px 0 !important; border: 0 !important; border-bottom: 1px solid var(--cxchk-line) !important; vertical-align: middle;
}
.cxchk-thankyou .woocommerce-table--order-details thead th { color: var(--cxchk-muted); font-size: 13px; font-weight: 600; }
.cxchk-thankyou .woocommerce-table--order-details td:last-child,
.cxchk-thankyou .woocommerce-table--order-details th:last-child { text-align: left !important; }
.cxchk-thankyou .woocommerce-table--order-details .product-name { color: var(--cxchk-ink); font-weight: 700; }
.cxchk-thankyou .woocommerce-table--order-details .product-quantity { color: var(--cxchk-green); font-weight: 800; }
.cxchk-thankyou .woocommerce-table--order-details tfoot tr:last-child th,
.cxchk-thankyou .woocommerce-table--order-details tfoot tr:last-child td { border-bottom: 0 !important; }
.cxchk-thankyou .woocommerce-table--order-details tfoot th { color: var(--cxchk-text); font-weight: 700; }
.cxchk-thankyou .woocommerce-table--order-details .product-purchase-note td { color: var(--cxchk-muted); font-size: 13px; text-align: right !important; }
.cxchk-thankyou .woocommerce-table--order-details tfoot tr:nth-last-child(2) th,
.cxchk-thankyou .woocommerce-table--order-details tfoot tr:nth-last-child(2) td { color: var(--cxchk-ink); font-size: 16px; font-weight: 900; }
.cxchk-thankyou .woocommerce-table--order-details .amount { white-space: nowrap; }
.cxchk-thankyou .woocommerce-table--order-details .order-actions--heading + td .button,
.cxchk-thankyou .woocommerce-table--order-details tfoot .button,
.cxchk-thankyou .woocommerce-table--order-details tfoot a.woodplus_factor_link {
	display: inline-flex !important; align-items: center; justify-content: center; min-height: 40px; padding: 0 18px !important;
	border: 1.5px solid var(--cxchk-green) !important; border-radius: var(--cxchk-r) !important;
	background: #fff !important; color: var(--cxchk-green) !important; font-size: 14px !important; font-weight: 800 !important; text-decoration: none !important;
	width: auto !important;
}

/* =================================================================
 * 8. Phones — checkout summary, sticky pay bar, cart cards
 * =============================================================== */
.cxchk-sum { display: none; }
.cxchk-sticky { display: none; }

@media (max-width: 768.98px) {
	.cxchk-checkout form.checkout .form-row-first,
	.cxchk-checkout form.checkout .form-row-last { width: 100% !important; float: none !important; }

	/* iOS zooms into any field under 16px. */
	.cxchk-flow .woocommerce input.input-text,
	.cxchk-flow .woocommerce textarea,
	.cxchk-flow .woocommerce select,
	.cxchk-cart .woocommerce-cart-form .quantity input.qty { font-size: 16px !important; }

	/* Checkout summary */
	.cxchk-sum { display: block; margin: 0 0 16px; overflow: hidden; }
	.cxchk-sum > summary {
		display: flex; align-items: center; gap: 10px; min-height: 56px; padding: 12px 16px;
		cursor: pointer; list-style: none; user-select: none;
	}
	.cxchk-sum > summary::-webkit-details-marker { display: none; }
	.cxchk-sum__title { display: inline-flex; align-items: center; gap: 8px; flex: 1 1 auto; color: var(--cxchk-ink); font-size: 15px; font-weight: 800; }
	.cxchk-sum__title small { color: var(--cxchk-muted); font-size: 12px; font-weight: 500; }
	.cxchk-sum__title .cxchk-ico { color: var(--cxchk-green); }
	.cxchk-sum__total { color: var(--cxchk-green); font-size: 16px; font-weight: 900; white-space: nowrap; }
	.cxchk-sum__total .amount { color: inherit !important; }
	.cxchk-sum > summary > .cxchk-ico { flex: 0 0 auto; color: var(--cxchk-muted); transition: transform .2s ease; }
	.cxchk-sum[open] > summary > .cxchk-ico { transform: rotate(180deg); }
	.cxchk-sum__list { margin: 0; padding: 4px 16px 0; list-style: none; border-top: 1px solid var(--cxchk-line); }
	.cxchk-sum__item { display: flex; align-items: center; gap: 12px; margin: 0; padding: 12px 0; border-bottom: 1px dashed var(--cxchk-line); }
	.cxchk-sum__item:last-child { border-bottom: 0; }
	.cxchk-sum__img { flex: 0 0 auto; width: 48px !important; height: 48px !important; object-fit: cover; border: 1px solid var(--cxchk-line); border-radius: 8px; }
	.cxchk-sum__meta { display: grid; gap: 2px; flex: 1 1 auto; min-width: 0; }
	.cxchk-sum__name { color: var(--cxchk-ink); font-size: 14px; font-weight: 700; line-height: 1.6; }
	.cxchk-sum__qty { color: var(--cxchk-muted); font-size: 12.5px; }
	.cxchk-sum__line { color: var(--cxchk-ink); font-size: 14px; font-weight: 800; white-space: nowrap; }
	.cxchk-sum__note { margin: 0; padding: 10px 16px 14px; color: var(--cxchk-muted); font-size: 12.5px; line-height: 1.7; }

	/* Sticky pay bar; the theme's own bottom toolbar would sit on top of it */
	body.cxchk-checkout .wd-toolbar,
	body.cxchk-checkout .wd-sticky-btn { display: none !important; }
	body.cxchk-checkout { padding-bottom: 84px; }
	.cxchk-sticky:not([hidden]) {
		position: fixed; right: 0; bottom: 0; left: 0; z-index: 390;
		display: flex; align-items: center; gap: 12px;
		padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
		border-top: 1px solid var(--cxchk-line); background: rgba(255, 255, 255, .97);
		box-shadow: 0 -8px 24px rgba(31, 42, 26, .08);
		-webkit-backdrop-filter: saturate(1.4) blur(8px); backdrop-filter: saturate(1.4) blur(8px);
		transition: transform .2s ease;
	}
	.cxchk-sticky.is-away { transform: translateY(110%); }
	.cxchk-sticky__sum { display: grid; flex: 1 1 auto; line-height: 1.4; }
	.cxchk-sticky__label { color: var(--cxchk-muted); font-size: 12px; }
	.cxchk-sticky__total { color: var(--cxchk-ink); font-size: 17px; font-weight: 900; }
	.cxchk-sticky__total .amount { color: inherit !important; }
	button.cxchk-sticky__btn {
		flex: 0 0 auto; min-height: 48px !important; padding: 0 22px !important;
		border: 0 !important; border-radius: var(--cxchk-r) !important;
		background: var(--cxchk-green) !important; color: #fff !important; box-shadow: none !important;
		font-family: inherit; font-size: 15px !important; font-weight: 800 !important; line-height: 1 !important; text-transform: none !important;
	}
	button.cxchk-sticky__btn:active { background: var(--cxchk-green-dark) !important; }

	/* Cart rows as compact cards: image | name + unit price | remove, then quantity ↔ line total */
	.cxchk-cart .woocommerce-cart-form table.shop_table thead { display: none !important; }
	.cxchk-cart .woocommerce-cart-form table.shop_table,
	.cxchk-cart .woocommerce-cart-form table.shop_table tbody { display: block !important; width: 100%; }
	.cxchk-cart .woocommerce-cart-form tr.cart_item {
		position: relative;
		display: grid !important;
		grid-template-columns: 64px minmax(0, 1fr) auto;
		grid-template-areas: "thumb name name" "thumb price price" "qty qty sub";
		align-items: center; gap: 4px 12px;
		padding: 16px 0 !important; border-bottom: 1px solid var(--cxchk-line) !important;
	}
	.cxchk-cart .woocommerce-cart-form tr.cart_item td {
		display: block !important; width: auto !important; padding: 0 !important; border: 0 !important; text-align: right !important;
	}
	.cxchk-cart .woocommerce-cart-form tr.cart_item td::before { display: none !important; content: none !important; }
	.cxchk-cart .woocommerce-cart-form tr.cart_item td.product-thumbnail { grid-area: thumb; align-self: start; width: 64px !important; max-width: 64px; overflow: hidden; }
	.cxchk-cart .woocommerce-cart-form tr.cart_item td.product-thumbnail a { display: block; }
	.cxchk-cart .woocommerce-cart-form tr.cart_item td.product-thumbnail img { width: 64px !important; max-width: 64px !important; height: 64px !important; }
	.cxchk-cart .woocommerce-cart-form tr.cart_item td.product-name { grid-area: name; padding-left: 42px !important; font-size: 14px !important; }
	.cxchk-cart .woocommerce-cart-form tr.cart_item td.product-remove { position: absolute !important; top: 14px; left: 0; }
	.cxchk-cart .woocommerce-cart-form tr.cart_item td.product-price { grid-area: price; font-size: 13px; }
	.cxchk-cart .woocommerce-cart-form tr.cart_item td.product-quantity { grid-area: qty; margin-top: 10px !important; }
	.cxchk-cart .woocommerce-cart-form tr.cart_item td.product-subtotal { grid-area: sub; margin-top: 10px !important; text-align: left !important; }
	.cxchk-cart .woocommerce-cart-form tr:not(.cart_item) { display: block !important; }
	.cxchk-cart .woocommerce-cart-form td.actions { display: block !important; width: 100%; padding: 16px 0 0 !important; }
	.cxchk-cart .woocommerce-cart-form td.actions .coupon { flex-direction: row !important; flex-wrap: nowrap !important; float: none; max-width: none; }
	.cxchk-cart .woocommerce-cart-form td.actions .coupon { width: 100% !important; box-sizing: border-box; }
	.cxchk-cart .woocommerce-cart-form td.actions .coupon input.input-text { flex: 1 1 0 !important; width: 0 !important; min-width: 0; }
	.cxchk-cart .woocommerce-cart-form td.actions .coupon .button { white-space: nowrap; }
	.cxchk-cart .woocommerce-cart-form td.actions .coupon .button { padding: 0 16px !important; }
	.cxchk-cart .cart_totals .cxchk-ship-later th { padding-bottom: 0 !important; }

	.cxchk-cart .cart_totals table.shop_table,
	.cxchk-cart .cart_totals table.shop_table tbody { display: block !important; width: 100%; }
	.cxchk-cart .cart_totals table.shop_table tr {
		display: flex !important; flex-direction: row !important; flex-wrap: wrap; align-items: center !important;
		justify-content: space-between !important; gap: 4px 12px; padding: 0 !important;
	}
	.cxchk-cart .cart_totals table.shop_table tr th,
	.cxchk-cart .cart_totals table.shop_table tr td { display: block !important; width: auto !important; }
	.cxchk-cart .cart_totals table.shop_table tr th { flex: 0 0 auto; }
	.cxchk-cart .cart_totals table.shop_table tr td { flex: 1 1 auto; }
	.cxchk-cart .cart_totals table.shop_table tr td::before { display: none !important; content: none !important; }
	.cxchk-cart .cart_totals .cxchk-ship-later td { flex-basis: 100%; padding-top: 0 !important; text-align: right !important; }

	.cxchk-thankyou .woocommerce-thankyou-order-received { padding: 24px 16px !important; }
	.cxchk-ty__title { font-size: 19px; }
}

/* =================================================================
 * 8b. Notices and the empty cart
 * =============================================================== */
.cxchk-flow .woocommerce-notices-wrapper { margin-bottom: 0; }
.cxchk-flow .woocommerce-message,
.cxchk-flow .woocommerce-info,
.cxchk-flow .woocommerce-error {
	display: flex !important; align-items: center; flex-wrap: wrap; gap: 6px 10px;
	margin: 0 0 16px !important; padding: 14px 18px !important;
	border: 1px solid var(--cxchk-green-line) !important; border-radius: var(--cxchk-r) !important;
	background: var(--cxchk-green-soft) !important; color: var(--cxchk-ink) !important; box-shadow: none !important;
	font-size: 14px !important; font-weight: 600; line-height: 1.7;
}
.cxchk-flow .woocommerce-message::before,
.cxchk-flow .woocommerce-info::before { color: var(--cxchk-green) !important; }
.cxchk-flow .woocommerce-message a,
.cxchk-flow .woocommerce-info a { color: var(--cxchk-green-dark) !important; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.cxchk-flow .woocommerce-message .button,
.cxchk-flow .woocommerce-info .button { margin-inline-start: auto; min-height: 38px !important; padding: 0 14px !important; font-size: 13px !important; }
.cxchk-flow .woocommerce-error {
	display: block !important; border-color: #f2c4bd !important; background: var(--cxchk-danger-soft) !important; color: #7d241b !important;
}
.cxchk-flow .woocommerce-error li { margin: 0 !important; padding: 2px 0 !important; list-style: none; }
.cxchk-flow .woocommerce-error::before { color: var(--cxchk-danger) !important; }

.cxchk-empty {
	display: grid; justify-items: center; gap: 10px;
	max-width: 620px; margin: 8px auto 40px; padding: 40px 24px;
	border: 1px solid var(--cxchk-line); border-radius: var(--cxchk-r-card); background: #fff; box-shadow: var(--cxchk-shadow);
	text-align: center;
}
.cxchk-empty__icon {
	display: inline-grid; place-items: center; width: 84px; height: 84px; margin-bottom: 6px;
	border-radius: 50%; background: var(--cxchk-green-soft); color: var(--cxchk-green);
}
.cxchk-empty__icon .cxchk-ico { width: 40px; height: 40px; stroke-width: 1.6; }
.cxchk-empty__title { margin: 0 !important; color: var(--cxchk-ink) !important; font-size: 22px !important; font-weight: 900 !important; line-height: 1.5 !important; }
.cxchk-empty__text { max-width: 440px; margin: 0 0 8px !important; color: var(--cxchk-text); font-size: 15px; line-height: 1.9; }
.cxchk-empty__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; width: 100%; }
.cxchk-empty__actions .cxchk-btn { flex: 0 1 240px; }
/* Theme's own empty-cart block (big icon, English text, square button) is replaced by the card above. */
.cxchk-empty ~ .cart-empty,
.cxchk-empty ~ .wc-empty-cart-message,
.cxchk-empty ~ .wd-empty-block-text,
.cxchk-empty ~ .return-to-shop,
.cxchk-empty ~ p.wd-empty-block-text { display: none !important; }
@media (max-width: 768.98px) {
	.cxchk-empty { padding: 32px 16px; }
	.cxchk-empty__title { font-size: 19px !important; }
	.cxchk-empty__actions .cxchk-btn { flex: 1 1 100%; }
}

/* =================================================================
 * 9. Mini cart (site-wide)
 * =============================================================== */
.woocommerce-mini-cart .quantity.cxchk-mc,
.widget_shopping_cart .quantity.cxchk-mc {
	display: grid !important; gap: 2px; width: auto !important; height: auto !important; min-height: 0 !important;
	margin: 4px 0 0 !important; padding: 0 !important;
	border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important;
	color: var(--cxchk-muted); font-size: 12.5px; line-height: 1.7;
}
.cxchk-mc__unit .amount { color: var(--cxchk-muted) !important; font-weight: 500 !important; }
.cxchk-mc__line { color: var(--cxchk-ink); font-weight: 800; }
.cxchk-mc__line .amount { color: var(--cxchk-green) !important; font-size: 14px; font-weight: 800 !important; }
.widget_shopping_cart .woocommerce-mini-cart__buttons a.button,
.woocommerce .widget_shopping_cart .woocommerce-mini-cart__buttons a.button {
	display: flex !important; align-items: center; justify-content: center;
	min-height: 48px !important; margin: 0 0 10px !important; padding: 0 16px !important;
	border: 1.5px solid transparent !important; border-radius: var(--cxchk-r) !important;
	background: var(--cxchk-green) !important; color: #fff !important; box-shadow: none !important;
	font-size: 15px !important; font-weight: 800 !important; text-transform: none !important;
}
.widget_shopping_cart .woocommerce-mini-cart__buttons a.button:hover { background: var(--cxchk-green-dark) !important; }
.widget_shopping_cart .woocommerce-mini-cart__buttons a.button.btn-cart,
.woocommerce .widget_shopping_cart .woocommerce-mini-cart__buttons a.button.btn-cart {
	border-color: var(--cxchk-green) !important; background: #fff !important; color: var(--cxchk-green) !important;
}
.widget_shopping_cart .woocommerce-mini-cart__buttons a.button.btn-cart:hover { background: var(--cxchk-green-soft) !important; }
.widget_shopping_cart .woocommerce-mini-cart__buttons { margin: 0 !important; }

.widget_shopping_cart .woocommerce-mini-cart-item { padding-top: 14px !important; padding-bottom: 14px !important; border-color: var(--cxchk-line) !important; }
.widget_shopping_cart .woocommerce-mini-cart-item .cart-item-image img { border: 1px solid var(--cxchk-line); border-radius: var(--cxchk-r-sm) !important; }
.widget_shopping_cart .woocommerce-mini-cart-item .wd-entities-title { color: var(--cxchk-ink); font-size: 14px; font-weight: 800; line-height: 1.6; }
.widget_shopping_cart .woocommerce-mini-cart-item a.remove {
	display: inline-grid !important; place-items: center; width: 26px !important; height: 26px !important;
	border-radius: 50% !important; background: var(--cxchk-subtle) !important; color: var(--cxchk-muted) !important;
	font-size: 16px !important; line-height: 1 !important; text-decoration: none !important;
}
.widget_shopping_cart .woocommerce-mini-cart-item a.remove:hover { background: var(--cxchk-danger-soft) !important; color: var(--cxchk-danger) !important; }
.widget_shopping_cart .woocommerce-mini-cart__total {
	display: flex !important; align-items: center; justify-content: space-between; gap: 12px;
	margin: 0 0 10px !important; padding: 14px 0 0 !important; border-top: 1px solid var(--cxchk-line) !important;
}
.widget_shopping_cart .woocommerce-mini-cart__total strong { color: var(--cxchk-ink); font-size: 15px; font-weight: 800; }
.widget_shopping_cart .woocommerce-mini-cart__total .amount { color: var(--cxchk-green) !important; font-size: 19px; font-weight: 900; }
.cxchk-mc-note {
	display: flex; align-items: center; gap: 8px; margin: 0 0 12px !important; padding: 10px 12px;
	border-radius: var(--cxchk-r-sm); background: var(--cxchk-subtle); color: var(--cxchk-text);
	font-size: 12.5px; line-height: 1.7;
}
.cxchk-mc-note .cxchk-ico { flex: 0 0 auto; width: 18px; height: 18px; color: var(--cxchk-green); }
/* Empty drawer */
.widget_shopping_cart .wd-empty-mini-cart,
.widget_shopping_cart .woocommerce-mini-cart__empty-message { padding: 32px 16px !important; color: var(--cxchk-muted) !important; font-size: 15px !important; text-align: center; }
.widget_shopping_cart .wd-empty-mini-cart .btn,
.widget_shopping_cart .wd-empty-mini-cart .button {
	display: inline-flex !important; align-items: center; justify-content: center; min-height: 46px; padding: 0 22px !important;
	border-radius: var(--cxchk-r) !important; background: var(--cxchk-green) !important; color: #fff !important; font-weight: 800 !important;
}

/* =================================================================
 * 10. Product page: compare is secondary
 * =============================================================== */
.single-product .elementor-widget-wd_single_product_compare_button { width: auto !important; }
.single-product .elementor-widget-wd_single_product_compare_button > .elementor-widget-container {
	padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important;
}
.single-product .elementor-widget-wd_single_product_compare_button .wd-action-btn > a { color: var(--cxchk-muted); font-size: 13px; }
.single-product .elementor-widget-wd_single_product_compare_button .wd-action-btn > a:hover { color: var(--cxchk-green); }

@media (prefers-reduced-motion: reduce) {
	.cxchk-sticky, .cxchk-sum > summary > .cxchk-ico, .cxchk-btn,
	.cxchk-flow .woocommerce .button { transition: none !important; }
}
