/* Cart & Checkout — brand colors come from CSS variables printed by PHP (--og-*). */
body.woocommerce-cart .main-page-wrapper > .container,
body.woocommerce-checkout .main-page-wrapper > .container{padding-top:26px;padding-bottom:50px}
wc-order-attribution-inputs{display:none}

/* ---------- steps ---------- */
.ogcc-steps{display:flex;align-items:center;justify-content:center;gap:10px;list-style:none;margin:0 0 26px;padding:0}
.ogcc-steps li{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--og-muted)}
.ogcc-steps li + li::before{content:"";width:40px;height:2px;background:#d9dbe6;margin-inline-end:2px;border-radius:2px}
.ogcc-steps .ogcc-step-n{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid #d9dbe6;font-size:13px}
.ogcc-steps .is-active{color:var(--og-text)}
.ogcc-steps .is-active .ogcc-step-n{background:var(--og-primary);border-color:var(--og-primary);color:#fff;box-shadow:0 6px 14px rgba(var(--og-rgb),.3)}
.ogcc-steps .is-done .ogcc-step-n{background:var(--og-soft);border-color:var(--og-primary);color:var(--og-primary)}
@media (max-width:575px){.ogcc-steps{gap:6px;margin-bottom:18px}.ogcc-steps li{font-size:12px;gap:6px}.ogcc-steps li + li::before{width:16px}.ogcc-steps .ogcc-step-n{width:26px;height:26px}}

/* ---------- shared ---------- */
body.woocommerce-cart .entry-content,
body.woocommerce-checkout .entry-content{color:var(--og-text)}
body.woocommerce-cart .cart_totals h3,
body.woocommerce-checkout form.checkout h3{font-size:17px;font-weight:700;color:var(--og-text);margin:0 0 16px}
body.woocommerce-cart .woocommerce-cart-form .amount,
body.woocommerce-cart .cart_totals .amount,
body.woocommerce-checkout form.checkout .amount{color:var(--og-text);font-weight:700}

body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
	background:#fff;border:1.5px dashed var(--og-tint-2);border-radius:14px;color:var(--og-text);
	padding:12px 16px;margin-bottom:20px;font-size:14px}
body.woocommerce-checkout .woocommerce-info a{color:var(--og-primary);font-weight:700}

body.woocommerce-checkout .form-row label{font-size:13px;font-weight:600;color:var(--og-text);margin-bottom:6px;display:block}
body.woocommerce-checkout .form-row .required,
body.woocommerce-checkout .form-row .optional{color:var(--og-muted);font-weight:400;text-decoration:none}
body.woocommerce-checkout .form-row .required{color:#d6455d}
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-selection{
	height:50px;border:1.5px solid var(--og-line)!important;border-radius:14px!important;background:#fff!important;
	box-shadow:none;padding:0 14px;font-size:15px;color:var(--og-text);transition:border-color .15s,box-shadow .15s}
body.woocommerce-checkout textarea{height:auto;padding:12px 14px}
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus{
	border-color:var(--og-primary)!important;box-shadow:0 0 0 4px rgba(var(--og-rgb),.12)!important;outline:0}
body.woocommerce-checkout .form-row.woocommerce-invalid input.input-text,
body.woocommerce-checkout .form-row.woocommerce-invalid select,
body.woocommerce-checkout .form-row.woocommerce-invalid .select2-selection{border-color:#d6455d!important;box-shadow:0 0 0 4px rgba(214,69,93,.12)!important}
body.woocommerce-checkout .form-row.woocommerce-invalid label{color:#d6455d}
body.woocommerce-checkout .select2-container .select2-selection__rendered{line-height:47px;padding:0 14px}
body.woocommerce-checkout .select2-container .select2-selection__arrow{height:47px}

/* ---------- checkout layout ---------- */
body.woocommerce-checkout form.checkout{
	display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);column-gap:26px;row-gap:0;align-items:start}
body.woocommerce-checkout form.checkout > *{min-width:0}
body.woocommerce-checkout #customer_details{grid-column:1;grid-row:1}
body.woocommerce-checkout #ogcc-ship-slot{grid-column:1;grid-row:2}
body.woocommerce-checkout #ogcc-actions{grid-column:1;grid-row:3}
body.woocommerce-checkout #ogcc-pay-slot{grid-column:1;grid-row:4}
body.woocommerce-checkout .checkout-order-review{grid-column:2;grid-row:1 / span 4}
body.woocommerce-checkout .ogcc-side{grid-column:2;grid-row:1 / span 4;align-self:start}

body.woocommerce-checkout #customer_details,
body.woocommerce-checkout .ogcc-card,
body.woocommerce-checkout .checkout-order-review{
	background:#fff!important;border:1px solid var(--og-line);border-radius:var(--og-radius);box-shadow:var(--og-shadow);
	padding:24px!important;margin:0 0 20px!important;width:100%!important;max-width:none!important;float:none}
body.woocommerce-checkout .checkout-order-review{position:sticky!important;top:90px!important;max-height:calc(100vh - 110px);overflow-y:auto}
body.woocommerce-checkout .checkout-order-review::before,
body.woocommerce-checkout .checkout-order-review::after,
body.woocommerce-checkout .wd-table-wrapper::before,
body.woocommerce-checkout .wd-table-wrapper::after{display:none!important;content:none!important}
body.woocommerce-checkout .wd-table-wrapper{padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important;margin:0!important;overflow:visible}
body.woocommerce-checkout .woocommerce-additional-fields{display:none}

body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields{background:transparent!important;border:0;box-shadow:none;padding:0!important;margin:0}
body.woocommerce-checkout .woocommerce-shipping-fields::before{
	content:var(--og-ship-title,"مشخصات گیرنده و آدرس تحویل");display:block;font-size:17px;font-weight:700;color:var(--og-text);margin-bottom:16px}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:16px}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row{grid-column:1/-1;width:auto;float:none;margin:0;padding:0}
body.woocommerce-checkout #shipping_first_name_field,
body.woocommerce-checkout #shipping_last_name_field,
body.woocommerce-checkout #shipping_state_field,
body.woocommerce-checkout #shipping_city_field{grid-column:auto}

/* one visible address (shipping). Billing stays in the DOM, filled automatically, never shown.
   Unknown billing fields from other plugins are NOT hidden (an invisible required field would block orders). */
body.woocommerce-checkout #billing_first_name_field,
body.woocommerce-checkout #billing_last_name_field,
body.woocommerce-checkout #billing_phone_field,
body.woocommerce-checkout #billing_company_field,
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #billing_state_field,
body.woocommerce-checkout #billing_city_field,
body.woocommerce-checkout #billing_postcode_field,
body.woocommerce-checkout #billing_mnsjay_location_field,
body.woocommerce-checkout #shipping_company_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout .woocommerce-billing-fields.ogcc-empty,
body.woocommerce-checkout #ship-to-different-address{display:none!important}
body.woocommerce-checkout:not(.ogcc-show-postcode) #shipping_postcode_field{display:none!important}

/* map */
body.woocommerce-checkout #shipping_mnsjay_location_field label{display:none}
body.woocommerce-checkout .mnsjay-map-picker{border-radius:16px;overflow:hidden;border:1.5px solid var(--og-line)}
body.woocommerce-checkout .mnsjay-map-container:not(.leaflet-fullscreen-on):not(.leaflet-pseudo-fullscreen){height:340px!important}
body.woocommerce-checkout .mnsjay-button{border-radius:12px}

body.woocommerce-checkout .checkout-order-review{background:var(--og-sum)!important;border-color:var(--og-tint-3)}
body.woocommerce-cart .cart_totals{background:var(--og-sum);border-color:var(--og-tint-3)}

/* map popup / fullscreen above header, menus and floating buttons */
html.ogcc-map-open .leaflet-pseudo-fullscreen,
html.ogcc-map-open .mnsjay-model-box .mnsjay-map-holder,
html.ogcc-map-open .mnsjay-model-box .mnsjay-popup-background{z-index:2147483000!important}
html.ogcc-map-open .mnsjay-map-picker{overflow:visible!important}
html.ogcc-map-open .whb-header,html.ogcc-map-open .whb-sticked,html.ogcc-map-open .wd-sticky-nav,
html.ogcc-map-open .wd-sticky-nav-btn,html.ogcc-map-open .wd-toolbar,html.ogcc-map-open .wd-sticky-btn,
html.ogcc-map-open .scrollToTop,html.ogcc-map-open #ogcc-bar{z-index:1!important}
html.ogcc-map-open .wd-sticky-nav,html.ogcc-map-open .wd-sticky-nav-btn{display:none!important}

/* payment groups */
body.woocommerce-checkout #payment ul.payment_methods > li.ogcc-pay-head{
	display:block;list-style:none;border:0;background:none;padding:0;margin:18px 2px 10px;font-size:13.5px;font-weight:700;color:var(--og-muted)}
body.woocommerce-checkout #payment ul.payment_methods > li.ogcc-pay-head:first-child{margin-top:0}

/* ---------- steps on one page ---------- */
html:not(.ogcc-js) #ogcc-actions,
html:not(.ogcc-js) #ogcc-recap{display:none}
html.ogcc-js body.woocommerce-checkout:not(.ogcc-step-pay) #ogcc-pay-slot{display:none}
html.ogcc-js body.woocommerce-checkout.ogcc-step-pay #customer_details,
html.ogcc-js body.woocommerce-checkout.ogcc-step-pay #ogcc-ship-slot,
html.ogcc-js body.woocommerce-checkout.ogcc-step-pay #ogcc-actions{display:none}
body.woocommerce-checkout #ogcc-ship-slot.is-empty{display:none}

body.woocommerce-checkout #ogcc-actions{margin:0 0 20px}
body.woocommerce-checkout #ogcc-next,
body.woocommerce-checkout #place_order{
	width:100%;height:58px;margin:0;border:0;border-radius:16px;background:linear-gradient(135deg,var(--og-primary),var(--og-primary-2));color:#fff;
	font-size:17px;font-weight:700;box-shadow:0 12px 26px rgba(var(--og-rgb),.28);transition:transform .15s,box-shadow .15s;cursor:pointer}
body.woocommerce-checkout #ogcc-next:hover,
body.woocommerce-checkout #place_order:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(var(--og-rgb),.38)}

body.woocommerce-checkout #ogcc-recap{
	display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--og-soft);border-radius:14px;padding:14px 16px;margin-bottom:22px}
body.woocommerce-checkout .ogcc-recap-label{display:block;font-size:12px;color:var(--og-muted);margin-bottom:2px}
body.woocommerce-checkout #ogcc-recap-text{font-size:14px;font-weight:600;line-height:1.8}
body.woocommerce-checkout #ogcc-edit{flex:none;background:#fff;border:1.5px solid var(--og-line);border-radius:10px;color:var(--og-primary);font-weight:700;font-size:13px;padding:8px 14px;cursor:pointer}

/* ---------- order summary ---------- */
body.woocommerce-checkout #order_review_heading{margin:0 0 14px}
body.woocommerce-checkout .shop_table{border:0;margin:0 0 6px}
body.woocommerce-checkout .shop_table thead{display:none}
body.woocommerce-checkout .shop_table td,
body.woocommerce-checkout .shop_table th{border:0;padding:10px 0;background:transparent}
body.woocommerce-checkout .shop_table,
body.woocommerce-checkout .shop_table tbody,
body.woocommerce-checkout .shop_table tfoot{display:block;width:100%}
body.woocommerce-checkout .shop_table tbody tr.cart_item{
	display:block;background:transparent;border:1px solid var(--og-tint-2);border-radius:14px;padding:4px 12px;margin:0 0 10px}
body.woocommerce-checkout .shop_table tbody tr.cart_item td{display:block;padding:8px 0;border:0}
body.woocommerce-checkout .shop_table tfoot tr{display:flex;justify-content:space-between;align-items:center;gap:12px}
body.woocommerce-checkout .shop_table tfoot th,
body.woocommerce-checkout .shop_table tfoot td{display:block;width:auto}
body.woocommerce-checkout .wd-checkout-prod{padding:8px 0}
body.woocommerce-checkout .ogcc-thumb{width:58px;height:58px;flex:none;object-fit:contain;border-radius:10px;border:1px solid var(--og-tint-2);background:rgba(255,255,255,.45);padding:3px}
body.woocommerce-checkout .wd-checkout-prod-cont{display:flex;gap:12px;justify-content:space-between;align-items:flex-start}
body.woocommerce-checkout .wd-checkout-prod-title{flex:1;min-width:0;font-size:14px;line-height:1.7}
body.woocommerce-checkout .cart-product-label{
	display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:600;color:var(--og-text)}
body.woocommerce-checkout .product-quantity{color:var(--og-muted);font-weight:500;font-size:13px}
body.woocommerce-checkout .wd-checkout-prod-total{white-space:nowrap;font-size:14px}
body.woocommerce-checkout .wd-checkout-remove-btn-wrapp{opacity:.5}
body.woocommerce-checkout .wd-checkout-remove-btn-wrapp:hover{opacity:1}

body.woocommerce-checkout tfoot th{font-weight:500;color:var(--og-muted);font-size:14px;text-align:right}
body.woocommerce-checkout tfoot td{text-align:left;font-size:14px}
body.woocommerce-checkout tfoot .cart-subtotal th,
body.woocommerce-checkout tfoot .cart-subtotal td{border-bottom:1px dashed var(--og-line)}
body.woocommerce-checkout .order-total th{color:var(--og-text);font-size:16px;font-weight:700}
body.woocommerce-checkout .order-total td{font-size:22px}
body.woocommerce-checkout .order-total .amount{color:var(--og-primary);font-weight:800}
/* shipping rows are moved under the address by the script */
body.woocommerce-checkout tfoot tr.shipping,
body.woocommerce-checkout tfoot tr.woocommerce-shipping-description{display:none}
html:not(.ogcc-js) body.woocommerce-checkout tfoot tr.shipping,
html:not(.ogcc-js) body.woocommerce-checkout tfoot tr.woocommerce-shipping-description{display:table-row}

/* shipping methods */
body.woocommerce-checkout .woocommerce-shipping-methods{list-style:none;margin:0;padding:0}
body.woocommerce-checkout .woocommerce-shipping-methods li{position:relative;margin:0 0 12px}
body.woocommerce-checkout .woocommerce-shipping-methods li:last-child{margin-bottom:0}
body.woocommerce-checkout .woocommerce-shipping-methods li > input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;margin:0}
body.woocommerce-checkout .woocommerce-shipping-methods li > label::after{
	content:"";position:absolute;left:16px;top:50%;width:20px;height:20px;box-sizing:border-box;border-radius:50%;
	border:2px solid var(--og-tint-3);background:#fff;transform:translateY(-50%);transition:border .15s}
body.woocommerce-checkout .woocommerce-shipping-methods li:has(input:checked) > label::after,
body.woocommerce-checkout .woocommerce-shipping-methods li:only-child > label::after{border:6px solid var(--og-primary)}
body.woocommerce-checkout .woocommerce-shipping-methods li > label{
	display:flex;align-items:center;gap:14px;margin:0;padding:14px 16px 14px 50px;min-height:84px;
	background:#fff;border:2px solid var(--og-line);border-radius:16px;font-size:15px;font-weight:700;color:var(--og-text);
	cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
body.woocommerce-checkout .woocommerce-shipping-methods li:has(input:checked) > label,
body.woocommerce-checkout .woocommerce-shipping-methods li:only-child > label{
	border-color:var(--og-primary);background:linear-gradient(160deg,#fff,var(--og-tint-1));box-shadow:0 8px 20px rgba(var(--og-rgb),.14)}
body.woocommerce-checkout .woocommerce-shipping-methods .mnsjay-method-image{
	order:-1;margin:0!important;width:130px!important;max-width:130px!important;
	height:56px!important;min-height:56px!important;max-height:56px!important;flex:none;object-fit:cover;object-position:center}
body.woocommerce-checkout .woocommerce-shipping-methods .amount{font-size:13px;color:var(--og-muted);font-weight:600}
body.woocommerce-checkout .ogcc-ship-note{margin:12px 4px 0;color:var(--og-muted);font-size:13px}

/* payment gateways */
body.woocommerce-checkout #payment{background:transparent;border:0;border-radius:0;padding:0}
body.woocommerce-checkout #payment ul.payment_methods{list-style:none;margin:0 0 20px;padding:0;border:0}
body.woocommerce-checkout #payment .wc_payment_method{
	position:relative;margin:0 0 12px;padding:0;border:2px solid var(--og-line);border-radius:16px;background:#fff;
	display:block;transition:border-color .15s,box-shadow .15s,background .15s}
body.woocommerce-checkout #payment .wc_payment_method:has(input:checked){
	border-color:var(--og-primary);background:linear-gradient(160deg,#fff,var(--og-tint-1));box-shadow:0 8px 20px rgba(var(--og-rgb),.14)}
body.woocommerce-checkout #payment .wc_payment_method > input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;margin:0}
body.woocommerce-checkout #payment .wc_payment_method > label::after{
	content:"";position:absolute;left:18px;top:45px;width:20px;height:20px;box-sizing:border-box;border-radius:50%;
	border:2px solid var(--og-tint-3);background:#fff;transform:translateY(-50%);transition:border .15s}
body.woocommerce-checkout #payment .wc_payment_method:has(input:checked) > label::after{border:6px solid var(--og-primary)}
body.woocommerce-checkout #payment .wc_payment_method > label{
	display:flex;align-items:center;justify-content:flex-start;gap:14px;margin:0;padding:18px 18px 8px 50px;
	font-size:15px;font-weight:700;line-height:1.7;color:var(--og-text);cursor:pointer}
body.woocommerce-checkout #payment .wc_payment_method > label img{
	order:-1;height:54px!important;width:auto!important;max-width:120px;min-width:54px;object-fit:contain;margin:0!important;flex:none;
	background:#fff;border-radius:12px;padding:3px;border:1px solid var(--og-line)}
body.woocommerce-checkout #payment .payment_box{
	display:block!important;margin:0;padding:0 min(104px,32%) 16px 50px;background:transparent;color:var(--og-muted);font-size:13.5px;line-height:1.9}
body.woocommerce-checkout #payment .payment_box::before,
body.woocommerce-checkout #payment .payment_box::after{display:none!important;content:none!important}
body.woocommerce-checkout #payment .payment_box p{margin:0}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{border:0;padding:0;font-size:13px;color:var(--og-muted);margin-bottom:12px}

/* ---------- cart ---------- */
body.woocommerce-cart .shop_table.cart,
body.woocommerce-cart .shop_table.cart tbody{display:block;border:0;background:transparent}
body.woocommerce-cart .shop_table.cart thead{display:none}
body.woocommerce-cart .shop_table.cart tr.cart_item{
	display:grid;grid-template-columns:96px minmax(0,1fr) auto auto 36px;grid-template-areas:"thumb name qty sub rm";
	align-items:center;gap:14px 18px;background:#fff;border:1px solid var(--og-line);border-radius:var(--og-radius);
	box-shadow:var(--og-shadow);padding:16px 20px;margin:0 0 14px}
body.woocommerce-cart .shop_table.cart td{display:block;border:0;padding:0;background:transparent;width:auto;min-width:0}
body.woocommerce-cart .shop_table.cart td::before{display:none!important}
body.woocommerce-cart .shop_table.cart td.product-thumbnail{grid-area:thumb}
body.woocommerce-cart .shop_table.cart td.product-name{grid-area:name;max-width:none}
body.woocommerce-cart .shop_table.cart td.product-quantity{grid-area:qty}
body.woocommerce-cart .shop_table.cart td.product-subtotal{grid-area:sub;text-align:left;min-width:110px}
body.woocommerce-cart .shop_table.cart td.product-remove{grid-area:rm;text-align:center}
body.woocommerce-cart .shop_table.cart td.product-price{display:none}
body.woocommerce-cart .shop_table.cart td.product-thumbnail{width:96px!important;max-width:96px!important;min-width:0!important;overflow:hidden}
body.woocommerce-cart .shop_table.cart .product-thumbnail a{display:block;width:100%}
body.woocommerce-cart .shop_table.cart .product-thumbnail img{
	width:96px!important;height:96px!important;max-width:96px!important;min-width:0!important;aspect-ratio:1/1;object-fit:contain;
	border-radius:14px;background:var(--og-soft);padding:8px;display:block;margin:0}
body.woocommerce-cart .shop_table.cart .product-name a{
	display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
	font-size:15px;font-weight:700;line-height:1.9;color:var(--og-text)}
body.woocommerce-cart .shop_table.cart .product-subtotal .amount{color:var(--og-primary);font-weight:800;font-size:16px}
body.woocommerce-cart .shop_table.cart .product-remove a.remove{color:var(--og-tint-4)!important;background:transparent}
body.woocommerce-cart .shop_table.cart .product-remove a.remove:hover{color:#d6455d!important}
/* coupon lives on checkout only */
body.woocommerce-cart .shop_table.cart tr:has(> td.actions),
body.woocommerce-cart .shop_table.cart td.actions,
body.woocommerce-cart .coupon{display:none!important}

/* quantity stepper */
body.woocommerce-cart .quantity,
body.woocommerce-checkout .quantity{
	display:inline-flex;align-items:center;height:44px;border:1.5px solid var(--og-line);border-radius:999px;background:#fff;overflow:hidden;width:auto;margin:0}
body.woocommerce-cart .quantity input.minus,
body.woocommerce-cart .quantity input.plus,
body.woocommerce-cart .quantity .minus,
body.woocommerce-cart .quantity .plus,
body.woocommerce-checkout .quantity input.minus,
body.woocommerce-checkout .quantity input.plus,
body.woocommerce-checkout .quantity .minus,
body.woocommerce-checkout .quantity .plus{
	width:40px!important;height:44px!important;border:0!important;background:transparent!important;color:var(--og-primary)!important;
	font-size:20px;font-weight:700;padding:0!important;box-shadow:none;cursor:pointer}
body.woocommerce-cart .quantity input.qty,
body.woocommerce-checkout .quantity input.qty{
	width:44px!important;min-width:44px;height:44px!important;padding:0!important;border:0!important;background:transparent!important;
	text-align:center;font-size:16px;font-weight:800;color:var(--og-text)!important;-moz-appearance:textfield;appearance:textfield;box-shadow:none}
body.woocommerce-cart .quantity input.qty::-webkit-outer-spin-button,
body.woocommerce-cart .quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* totals */
body.woocommerce-cart .cart_totals{
	background:#fff;border:1px solid var(--og-line);border-radius:var(--og-radius);box-shadow:var(--og-shadow);padding:24px}
body.woocommerce-cart .cart_totals .cart-totals-inner,
body.woocommerce-cart .cart-totals-inner{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;margin:0!important}
body.woocommerce-cart .cart_totals h2{font-size:17px;font-weight:700;margin:0 0 16px}
body.woocommerce-cart .cart_totals .shop_table{border:0;margin:0 0 18px}
body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td{border:0;border-bottom:1px dashed var(--og-line);padding:13px 0;font-size:14px;background:transparent}
body.woocommerce-cart .cart_totals th{color:var(--og-muted);font-weight:500}
body.woocommerce-cart .cart_totals .order-total th{color:var(--og-text);font-weight:700;font-size:16px}
body.woocommerce-cart .cart_totals .order-total .amount{color:var(--og-primary);font-size:22px;font-weight:800}
body.woocommerce-cart .cart_totals .woocommerce-shipping-destination{display:none}
body.woocommerce-cart .cart_totals .mnsjay-method-image{height:32px!important;min-height:32px!important;max-height:32px!important;width:auto!important;margin:0 0 0 8px!important;vertical-align:middle}
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button{
	width:100%;height:58px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--og-primary),var(--og-primary-2));color:#fff;font-size:17px;font-weight:700;
	box-shadow:0 12px 26px rgba(var(--og-rgb),.28);display:flex;align-items:center;justify-content:center}

/* ---------- left column: summary + shipping in one darker panel ---------- */
@media (min-width:992px){
	body.woocommerce-checkout .ogcc-side{
		position:sticky;top:90px;max-height:calc(100vh - 110px);overflow-y:auto;
		background:var(--og-sum);border:1px solid var(--og-tint-3);border-radius:20px;padding:22px;margin:0 0 20px;box-shadow:var(--og-shadow)}
	body.woocommerce-checkout .ogcc-side .checkout-order-review{
		position:static!important;top:auto!important;max-height:none!important;overflow:visible!important;
		background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;margin:0!important}
	body.woocommerce-checkout .ogcc-side #ogcc-ship-slot{
		background:transparent!important;border:0!important;border-top:1px solid var(--og-tint-3)!important;border-radius:0!important;
		box-shadow:none!important;padding:20px 0 0!important;margin:12px 0 0!important}
	body.woocommerce-checkout .ogcc-side .woocommerce-shipping-methods li > label{background:transparent!important;border-color:var(--og-tint-2);box-shadow:none!important}
	body.woocommerce-checkout .ogcc-side .woocommerce-shipping-methods li:has(input:checked) > label,
	body.woocommerce-checkout .ogcc-side .woocommerce-shipping-methods li:only-child > label{background:rgba(var(--og-rgb),.07)!important;border-color:var(--og-primary)}
}
@media (max-width:991px){body.woocommerce-checkout .ogcc-side{display:contents}}

/* ---------- tablet / mobile ---------- */
#ogcc-bar,.ogcc-sum-toggle{display:none}
@media (min-width:992px){#ogcc-bar,.ogcc-sum-toggle{display:none!important}}
@media (max-width:991px){
	body.woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1fr)}
	body.woocommerce-checkout .checkout-order-review{grid-column:1;grid-row:1;position:static!important;top:auto!important;max-height:none;overflow:visible}
	body.woocommerce-checkout #customer_details{grid-column:1;grid-row:2}
	body.woocommerce-checkout #ogcc-ship-slot{grid-column:1;grid-row:3}
	body.woocommerce-checkout #ogcc-actions{display:none}
	body.woocommerce-checkout #ogcc-pay-slot{grid-column:1;grid-row:5}
	html.ogcc-js body.woocommerce-checkout #place_order{display:none}
	body.woocommerce-cart .wc-proceed-to-checkout{display:none}
	body.woocommerce-cart,body.woocommerce-checkout{padding-bottom:86px}
	body.woocommerce-cart .main-page-wrapper > .container,
	body.woocommerce-checkout .main-page-wrapper > .container{padding-top:14px!important;padding-bottom:8px!important}
	body.woocommerce-cart .woocommerce-cart-form{margin-bottom:0!important}
	body.woocommerce-cart .cart-collaterals{margin:0!important;padding:0!important}
	body.woocommerce-cart .cart_totals .shop_table{margin:0!important}
	body.woocommerce-cart .wc-proceed-to-checkout{display:none!important;margin:0!important;padding:0!important}
	body.woocommerce-checkout #payment,body.woocommerce-checkout .woocommerce-checkout-payment{margin:0!important;padding:0!important}
	body.woocommerce-checkout #ogcc-pay-slot{padding-bottom:6px!important}
	body.woocommerce-checkout #order_review_heading{display:none}
	html.ogcc-js .ogcc-sum-toggle{
		display:flex;width:100%;align-items:center;gap:10px;background:none;border:0;padding:0;font:inherit;
		font-weight:700;font-size:14px;color:var(--og-text);cursor:pointer}
	html.ogcc-js .ogcc-sum-toggle .v{margin-inline-start:auto;color:var(--og-primary);font-weight:800}
	html.ogcc-js .ogcc-sum-toggle .c{transition:transform .2s}
	html.ogcc-js .checkout-order-review.is-open .ogcc-sum-toggle{margin-bottom:14px}
	html.ogcc-js .checkout-order-review.is-open .ogcc-sum-toggle .c{transform:rotate(180deg)}
	html.ogcc-js body.woocommerce-checkout .checkout-order-review:not(.is-open) > *:not(.ogcc-sum-toggle){display:none}
	#ogcc-bar{
		display:flex;position:fixed;left:0;right:0;bottom:0;z-index:1000;background:#fff;border-top:1px solid var(--og-line);
		padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:12px;align-items:center;box-shadow:0 -8px 24px rgba(40,30,80,.08)}
	#ogcc-bar .tot{font-size:12px;color:var(--og-muted);line-height:1.5;white-space:nowrap}
	#ogcc-bar .tot b{display:block;font-size:16px;color:var(--og-primary);font-weight:800}
	#ogcc-bar-btn{
		flex:1;height:50px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--og-primary),var(--og-primary-2));color:#fff;
		font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer}
}
@media (max-width:767px){
	body.woocommerce-cart .shop_table.cart tr.cart_item{
		grid-template-columns:72px minmax(0,1fr) auto;grid-template-areas:"thumb name rm" "thumb qty sub";padding:14px;gap:10px 14px}
	body.woocommerce-cart .shop_table.cart td.product-thumbnail{width:72px!important;max-width:72px!important}
	body.woocommerce-cart .shop_table.cart .product-thumbnail img{width:72px!important;height:72px!important;max-width:72px!important;padding:6px}
	body.woocommerce-cart .shop_table.cart .product-name a{font-size:14px;line-height:1.8}
	body.woocommerce-cart .shop_table.cart td.product-subtotal{min-width:0;align-self:center;white-space:nowrap}
	body.woocommerce-cart .shop_table.cart td.product-thumbnail{align-self:start}
	body.woocommerce-cart .shop_table.cart td.product-quantity{justify-self:start}
}
@media (max-width:575px){
	body.woocommerce-checkout #customer_details,
	body.woocommerce-checkout .ogcc-card,
	body.woocommerce-checkout .checkout-order-review,
	body.woocommerce-cart .cart_totals{padding:16px!important;border-radius:16px}
	body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{gap:14px}
	body.woocommerce-checkout #shipping_first_name_field,
	body.woocommerce-checkout #shipping_last_name_field{grid-column:1/-1}
	body.woocommerce-checkout .mnsjay-map-container:not(.leaflet-fullscreen-on):not(.leaflet-pseudo-fullscreen){height:300px!important}
	body.woocommerce-checkout .woocommerce-shipping-methods li > label{min-height:64px;padding:10px 12px 10px 46px;font-size:14px}
	body.woocommerce-checkout .woocommerce-shipping-methods .mnsjay-method-image{width:104px!important;max-width:104px!important;height:44px!important;min-height:44px!important;max-height:44px!important}
	body.woocommerce-checkout #payment .wc_payment_method > label{padding:14px 12px 6px 46px;font-size:14px}
	body.woocommerce-checkout #payment .wc_payment_method > label::after{top:36px}
	body.woocommerce-checkout #payment .wc_payment_method > label img{height:44px!important;max-width:90px;min-width:44px}
	body.woocommerce-checkout #payment .payment_box{padding:0 70px 12px 46px;font-size:13px;line-height:1.8}
	body.woocommerce-checkout #payment ul.payment_methods{margin-bottom:6px}
	html.ogcc-js body.woocommerce-checkout .form-row.place-order{padding:0!important;margin:0!important}
	html.ogcc-js body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper:empty,
	html.ogcc-js body.woocommerce-checkout .woocommerce-privacy-policy-text:empty{display:none}
	body.woocommerce-checkout #ogcc-recap{flex-direction:column;align-items:stretch}
	body.woocommerce-checkout #ogcc-edit{align-self:flex-start}
}

/* ---------- phones and tablets: flat sections, light fields ---------- */
@media (max-width:991px){
	body.woocommerce-checkout #customer_details,
	body.woocommerce-checkout .ogcc-card,
	body.woocommerce-cart .shop_table.cart tr.cart_item{
		background:transparent!important;border:0!important;border-bottom:1px solid var(--og-line)!important;border-radius:0!important;
		box-shadow:none!important;padding:14px 0!important;margin:0!important}
	body.woocommerce-checkout .checkout-order-review,
	body.woocommerce-cart .cart_totals{
		background:var(--og-sum)!important;border:1px solid var(--og-tint-3)!important;border-radius:16px!important;box-shadow:none!important;
		padding:14px 16px!important;margin:0 0 8px!important}
	body.woocommerce-cart .cart_totals{margin-top:14px!important;padding:16px!important}
	body.woocommerce-checkout input.input-text,
	body.woocommerce-checkout select,
	body.woocommerce-checkout .select2-selection{background:var(--og-tint-0)!important;border-color:var(--og-line)!important;border-radius:12px!important}
	body.woocommerce-checkout .woocommerce-shipping-fields{padding-top:8px!important}
	body.woocommerce-checkout .woocommerce-shipping-methods li > label,
	body.woocommerce-checkout #payment .wc_payment_method{border-width:1.5px;border-radius:12px;box-shadow:none!important}
	body.woocommerce-checkout .woocommerce-shipping-methods li:has(input:checked) > label,
	body.woocommerce-checkout .woocommerce-shipping-methods li:only-child > label,
	body.woocommerce-checkout #payment .wc_payment_method:has(input:checked){background:var(--og-tint-0);box-shadow:none}
	body.woocommerce-checkout .mnsjay-map-picker{border-radius:12px}
	#ogcc-bar{box-shadow:none}
}
/* ---------- universal additions ---------- */
/* trust strip */
.ogcc-trust{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 18px;padding:0;list-style:none}
.ogcc-trust li{display:inline-flex;align-items:center;gap:6px;background:var(--og-soft);border:1px solid var(--og-tint-2);border-radius:999px;padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--og-text)}
@media (max-width:575px){.ogcc-trust{gap:6px;margin-bottom:12px}.ogcc-trust li{font-size:11.5px;padding:5px 10px}}
/* item meta chips (variant, source link, price, weight…) */
body.woocommerce-cart .woocommerce-cart-form ul.variation,
body.woocommerce-cart .woocommerce-cart-form dl.variation,
body.woocommerce-checkout #order_review ul.variation,
body.woocommerce-checkout #order_review dl.variation{display:flex!important;flex-wrap:wrap;gap:6px;margin:7px 0 0!important;padding:0!important;list-style:none}
body.woocommerce-cart .woocommerce-cart-form ul.variation > li,
body.woocommerce-checkout #order_review ul.variation > li{display:inline-flex!important;align-items:center;gap:4px;margin:0!important;padding:3px 9px!important;background:var(--og-soft)!important;border:1px solid var(--og-tint-2)!important;border-radius:8px;font-size:11px!important;line-height:1.6;color:var(--og-muted)!important}
body.woocommerce-cart .woocommerce-cart-form dl.variation dt,
body.woocommerce-cart .woocommerce-cart-form dl.variation dd,
body.woocommerce-checkout #order_review dl.variation dt,
body.woocommerce-checkout #order_review dl.variation dd{display:inline!important;margin:0!important;padding:0!important;font-size:11px!important;color:var(--og-muted)}
body.woocommerce-cart .woocommerce-cart-form dl.variation dd p,
body.woocommerce-checkout #order_review dl.variation dd p{display:inline;margin:0}
body.woocommerce-cart .woocommerce-cart-form .variation a{color:var(--og-primary)!important;font-weight:700;text-decoration:none}
.odubai-item-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:700;color:var(--og-text);line-height:1.8}
.odc-variant-pill,.odubai-variant-pill{display:inline-flex;align-items:center;margin-top:4px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;background:var(--og-soft);border:1px solid var(--og-tint-2);color:var(--og-primary)}
/* shipping hints */
body.woocommerce-checkout .ogcc-hint{display:flex;gap:8px;align-items:flex-start;margin:12px 0 0;padding:10px 12px;border-radius:12px;background:var(--og-soft);border:1px dashed var(--og-tint-2);color:var(--og-text);font-size:13px;line-height:1.8}
body.woocommerce-checkout .ogcc-hint.is-warn{background:#fff7e6;border-color:#f3d18a}
/* single payment gateway: no radio, just an official card (gateway logo + title + description) */
body.woocommerce-checkout.ogcc-single-pay #payment .wc_payment_method{border:1.5px solid var(--og-line);background:#fff!important;box-shadow:none!important;margin:0 0 6px;border-radius:16px;overflow:hidden}
body.woocommerce-checkout.ogcc-single-pay #payment .wc_payment_method > input,
body.woocommerce-checkout.ogcc-single-pay #payment ul.payment_methods > li.ogcc-pay-head{display:none!important}
body.woocommerce-checkout.ogcc-single-pay #payment .wc_payment_method > label::after{display:none!important}
body.woocommerce-checkout.ogcc-single-pay #payment .wc_payment_method > label{padding:16px 18px 6px!important;cursor:default;font-size:15px;font-weight:800}
body.woocommerce-checkout.ogcc-single-pay #payment .wc_payment_method > label img{height:44px!important;max-width:110px;min-width:44px;padding:4px;border:0;background:transparent}
body.woocommerce-checkout.ogcc-single-pay #payment .payment_box{padding:0 18px 16px!important;color:var(--og-muted)}
body.woocommerce-checkout.ogcc-single-pay #payment .payment_box:empty{display:none!important}
/* generic qty stepper built by script when the theme has none */
.ogcc-qty-btn{width:40px;height:44px;border:0;background:transparent;color:var(--og-primary);font-size:20px;font-weight:700;cursor:pointer;padding:0}
/* quantity number must always be readable (themes sometimes blank it) */
body.woocommerce-checkout .quantity input.qty{color:var(--og-text)!important;-webkit-text-fill-color:var(--og-text)!important;opacity:1!important;font-size:15px!important;font-weight:800!important;width:40px!important;min-width:40px!important;text-align:center}
/* theme messages ("zone matches customer" …) calm instead of loud green */
body.woocommerce-checkout .woocommerce-message{background:var(--og-soft)!important;border:1px solid var(--og-tint-2)!important;border-radius:14px!important;color:var(--og-text)!important;padding:10px 14px!important;margin:0 0 16px!important;font-size:13px!important;line-height:1.8;box-shadow:none!important}
body.woocommerce-checkout .woocommerce-message::before{color:var(--og-primary)!important}
/* admin-only debug: shipping rates as the server calculated them */
.ogcc-debug-rates{display:none;position:fixed;right:8px;bottom:8px;z-index:99998;max-width:min(92vw,520px);max-height:50vh;overflow:auto;background:#111;color:#fcd34d;font:11px/1.7 monospace;padding:8px 12px;border-radius:8px;direction:ltr;text-align:left;white-space:pre-wrap}
/* admin-only debug strip */
.ogcc-debug{position:fixed;left:8px;bottom:8px;z-index:99999;max-width:92vw;background:#111;color:#9ef;font:11px/1.6 monospace;padding:6px 10px;border-radius:8px;direction:ltr;white-space:pre-wrap}

/* ---------- polish (theme-proofing) ---------- */
body.woocommerce-checkout .form-row .woocommerce-input-wrapper{display:block;width:100%}
body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .form-row .select2-container{width:100%!important;max-width:100%;box-sizing:border-box}
body.woocommerce-cart .woocommerce-cart-form ul.variation > li,
body.woocommerce-checkout #order_review ul.variation > li{white-space:nowrap;max-width:100%}
body.woocommerce-cart .woocommerce-cart-form ul.variation .item-variation-name,
body.woocommerce-cart .woocommerce-cart-form ul.variation .item-variation-value,
body.woocommerce-cart .woocommerce-cart-form ul.variation .item-variation-value a{font-size:11px!important;font-weight:600!important}
body.woocommerce-cart .woocommerce-cart-form ul.variation .item-variation-name{color:var(--og-muted)!important;margin-inline-end:2px}
body.woocommerce-cart .shop_table.cart td.product-remove{align-self:start}
@media (max-width:767px){
	body.woocommerce-cart .shop_table.cart td.product-remove{justify-self:end}
	body.woocommerce-cart .shop_table.cart .quantity{height:40px}
	body.woocommerce-cart .shop_table.cart .ogcc-qty-btn,
	body.woocommerce-cart .shop_table.cart .quantity .minus,
	body.woocommerce-cart .shop_table.cart .quantity .plus{width:36px!important;height:40px!important}
	body.woocommerce-checkout .ogcc-trust{justify-content:flex-start}
}
@media (max-width:991px){
	body.woocommerce-checkout .mnsjay-map-container:not(.leaflet-fullscreen-on):not(.leaflet-pseudo-fullscreen){height:280px!important}
	body.woocommerce-checkout input.input-text,body.woocommerce-checkout select{font-size:16px!important} /* no iOS zoom on focus */
}
