body.single-product .irantire-sale-mode { box-sizing:border-box; display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; width:100%; margin:0 0 20px; padding:12px 14px; border:1px solid #f3d3d1; border-radius:12px; background:#fff7f6; color:#475467; font-size:13px; line-height:1.8; direction:rtl; text-align:right; }
body.single-product .irantire-sale-mode-badge { display:inline-flex; flex:0 0 auto; align-items:center; min-height:28px; padding:2px 10px; border-radius:7px; background:#b42318; color:#fff; font-size:13px; font-weight:700; line-height:1.8; }
body.single-product .irantire-sale-mode p { flex:1 1 170px; min-width:0; margin:0; padding:0; color:inherit; font-size:13px; line-height:1.8; overflow-wrap:anywhere; }
body.single-product .irantire-sale-mode--free { border-color:#e5e7eb; background:#f8fafc; }
body.single-product .irantire-sale-mode--free .irantire-sale-mode-badge { background:#475467; }
/* Anchor the theme's floating size label to its own selector, below the sale panel. */
body.single-product .variations_form .variations td.value { position:relative; }
/* Keep each sale's conditions prominent, with one shared checkout presentation. */
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions { box-sizing:border-box; width:100%; min-width:0; max-width:100%; margin:0; padding:28px; border:1px solid #edc5c1; border-top:4px solid #d73e35; border-radius:16px; background:#fff6f5; box-shadow:0 6px 20px rgba(115,38,32,.05); direction:rtl; text-align:right; overflow-wrap:anywhere; }
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions.irantire-free-panel { border-color:#ead3c9; border-top-color:#d73e35; background:#fffaf7; }
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions>h3 { margin:0 0 22px !important; padding:0 0 18px !important; border-bottom-color:#edc5c1 !important; color:#9f2923 !important; font-size:22px !important; font-weight:800; line-height:1.7; }
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions .irantire-sale-conditions-copy,
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions .irantire-sale-conditions-copy p { margin:0; padding:0; color:#3f4652; font-size:16px; font-weight:600; line-height:2.1; overflow-wrap:anywhere; }
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions .irantire-sale-conditions-copy p+p { margin-top:14px; }
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions>.form-row { box-sizing:border-box; float:none; width:100%; margin:22px 0 0 !important; padding:18px 20px !important; border:1px solid #efd7d2; border-radius:12px; background:#fff; }
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions label.checkbox { display:flex !important; align-items:center; gap:12px; margin:0 !important; padding:0 !important; color:#344054; font-size:16px; font-weight:600; line-height:1.9; cursor:pointer; }
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions label.checkbox::before,
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions label.checkbox::after { content:none !important; }
body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions label.checkbox>span { flex:1 1 0; min-width:0; }
/* Use the same real checkbox and check mark already used by the invoice/government controls. */
body.woocommerce-checkout #content form.checkout .irantire-sale-conditions input#irantire_free_declaration { appearance:none !important; -webkit-appearance:none !important; box-sizing:border-box; position:static !important; opacity:1 !important; margin:0 !important; padding:0 !important; width:20px; height:20px; min-width:20px; flex:0 0 20px; border:2px solid #aeb3bb; border-radius:5px; background-color:#fff; background-position:center; background-repeat:no-repeat; background-size:15px 15px; accent-color:#e03131; cursor:pointer; transform:translateY(-3px); }
body.woocommerce-checkout #content form.checkout .irantire-sale-conditions input#irantire_free_declaration:checked { border-color:#e03131; background-color:#e03131; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 10l4 4 8-8' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
body.woocommerce-checkout #content form.checkout .irantire-sale-conditions input:is(#irantire_gov_declaration,#irantire_free_declaration):focus-visible { outline:2px solid #b42318 !important; outline-offset:4px; }
body.woocommerce-checkout #content form.checkout .irantire-sale-conditions input#irantire_free_declaration:disabled { opacity:.5 !important; cursor:default; }
@media(max-width:767px) {
  body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions { padding:18px; }
  body.woocommerce-checkout:not(.woocommerce-order-received) #content form.checkout .irantire-sale-conditions>.form-row { padding:14px !important; }
}

/* Correct only the sale-mode cell label generated by the product template. */
body.single-product.product-type-variable .elementor-location-single[data-elementor-type="product"] form.cart.variations_form .variations td.value:has(> select#pa_irantire-sale-mode)::before { content:"انتخاب نوع فروش" !important; }
body.single-product.product-type-variable .elementor-location-single[data-elementor-type="product"] form.cart.variations_form table.variations:has(select#pa_irantire-sale-mode) { border-collapse:separate !important; border-spacing:0 20px !important; }
body.single-product.product-type-variable .elementor-location-single[data-elementor-type="product"] form.cart.variations_form table.variations:has(select#pa_irantire-sale-mode) td.value > select:is(#pa_tire-size,#pa_irantire-sale-mode) { box-sizing:border-box !important; width:100% !important; margin:0 !important; }

/* Match the existing size control; show focus on the shared floating label. */
body.single-product.product-type-variable .elementor-location-single[data-elementor-type="product"] form.cart.variations_form table.variations:has(select#pa_irantire-sale-mode) td.value > select#pa_irantire-sale-mode { -webkit-appearance:none !important; -moz-appearance:none !important; appearance:none !important; background-image:url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%3E%0A%20%20%3Cpath%20d%3D%22M8.00001%2011.2C7.53335%2011.2%207.06668%2011.02%206.71335%2010.6667L2.36668%206.31999C2.17335%206.12666%202.17335%205.80666%202.36668%205.61332C2.56001%205.41999%202.88001%205.41999%203.07335%205.61332L7.42001%209.95999C7.74001%2010.28%208.26001%2010.28%208.58001%209.95999L12.9267%205.61332C13.12%205.41999%2013.44%205.41999%2013.6333%205.61332C13.8267%205.80666%2013.8267%206.12666%2013.6333%206.31999L9.28668%2010.6667C8.93335%2011.02%208.46668%2011.2%208.00001%2011.2Z%22%20fill%3D%22%2385858B%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E") !important; background-repeat:no-repeat !important; background-position:left 12px center !important; background-size:16px auto !important; padding-left:35px !important; cursor:pointer; outline:none !important; box-shadow:none !important; font-family:"YekanBakh" !important; }
body.single-product.product-type-variable .elementor-location-single[data-elementor-type="product"] form.cart.variations_form table.variations:has(select#pa_irantire-sale-mode) td.value:has(> select:is(#pa_tire-size,#pa_irantire-sale-mode):focus)::before { color:#b42318 !important; font-weight:600 !important; text-decoration-line:underline !important; text-underline-offset:3px !important; }
