/* ================= CART + CHECKOUT — پوستهٔ دیتاشیت (رنگ قالب، نه بنفش ووکامرس) ================= */

.woocommerce{--wc-primary:var(--safety)}
.woocommerce .wrap-page,.woocommerce-page main{background:var(--paper)}

/* --- اعلان‌ها --- */
.woocommerce-message,.woocommerce-info,.woocommerce-error li,.woocommerce-error{background:#fff !important;border:1.5px solid var(--ink) !important;border-inline-start:4px solid var(--safety) !important;color:var(--ink) !important;font-size:12.5px;padding:12px 16px !important;border-radius:0 !important}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before,.woocommerce-error li::before{content:none !important;display:none !important}
.woocommerce-error{border-inline-start-color:#C62828 !important}

/* --- فیلدها: ورودی/سلکت/تکست‌اریا --- */
.woocommerce form .form-row label{font-size:12px;font-weight:700;color:var(--ink-2);margin-bottom:4px}
.woocommerce form .form-row label .required{color:var(--safety-txt);text-decoration:none}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .cart .quantity input.qty,
.woocommerce table.cart td.actions .coupon .input-text{
  border:1.5px solid var(--line-2);background:#fff;padding:11px 12px;font-size:13px;font-family:inherit;
  border-radius:0;box-shadow:none;width:100%;color:var(--ink);transition:border-color .12s}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus,
.woocommerce table.cart td.actions .coupon .input-text:focus{outline:none;border-color:var(--safety);background:#fff}
.woocommerce form .form-row select{
  appearance:none;-webkit-appearance:none;cursor:pointer;padding-inline-end:34px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M2 5l5 5 5-5' fill='none' stroke='%23F0521B' stroke-width='2'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:left 12px center;background-size:12px}
.woocommerce input[type=checkbox],.woocommerce input[type=radio]{accent-color:var(--safety);width:16px;height:16px}

/* select2 (اگر فعال شود) */
.select2-container--default .select2-selection--single{border:1.5px solid var(--line-2);border-radius:0;height:44px;padding:7px 6px}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:42px}
.select2-dropdown{border:1.5px solid var(--ink);border-radius:0}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--safety);color:#fff}
.select2-search--dropdown .select2-search__field{border:1.5px solid var(--line-2) !important}

/* --- سربرگ‌های بخش --- */
.woocommerce-billing-fields h3,#ship-to-different-address,#order_review_heading,.cart_totals h2,.cross-sells h2{
  font-family:var(--disp);font-size:16px;font-weight:800;color:var(--ink);
  display:flex;align-items:center;gap:10px;border-bottom:1.5px solid var(--ink);padding-bottom:9px;margin-bottom:16px}
.woocommerce-billing-fields h3::before,#order_review_heading::before,.cart_totals h2::before{content:'';width:18px;height:3px;background:var(--safety);flex:none}

/* --- چیدمان تسویه‌حساب: دو ستونه + خلاصهٔ چسبان --- */
@media(min-width:1121px){
  form.checkout.woocommerce-checkout{display:grid;grid-template-columns:minmax(0,1fr) 430px;grid-template-rows:auto 1fr;gap:0 26px;align-items:start}
  form.checkout.woocommerce-checkout #customer_details{grid-column:1;grid-row:1/3}
  form.checkout.woocommerce-checkout #order_review_heading{grid-column:2;grid-row:1}
  form.checkout.woocommerce-checkout #order_review{grid-column:2;grid-row:2;align-self:start;margin-top:16px}
  form.checkout.woocommerce-checkout #order_review_heading{margin-bottom:0;padding-top:8px}
  /* خلاصهٔ سفارش سر جای خودش می‌ماند (کاربر دنبال‌شدن با اسکرول را نخواست) */
}
#customer_details .col-1,#customer_details .col-2{float:none;width:100%}

/* --- جدول مرور سفارش (شیت فنی) --- */
#order_review table.shop_table,
.cart_totals table.shop_table{border:1.5px solid var(--ink);border-radius:0;background:#fff;border-collapse:collapse;margin:0}
#order_review table.shop_table th,#order_review table.shop_table td,
.cart_totals table.shop_table th,.cart_totals table.shop_table td{
  border:0;border-bottom:1px solid var(--line);padding:11px 14px;font-size:12.5px;vertical-align:middle}
#order_review table.shop_table thead th{background:var(--ink);color:#fff;font-size:11px;font-weight:800}
#order_review .woocommerce-Price-amount,.cart_totals .woocommerce-Price-amount,
.woocommerce table.cart .woocommerce-Price-amount{font-family:var(--mono);direction:ltr;display:inline-block;font-weight:700}
#order_review tr.order-total td,.cart_totals tr.order-total td{font-size:15px;background:var(--safety-tint)}
#order_review tr.order-total .woocommerce-Price-amount{color:var(--safety-deep);font-size:16px}

/* --- روش‌های ارسال: کارت‌های انتخاب --- */
ul#shipping_method{display:grid;gap:8px;padding:4px 0}
ul#shipping_method li{display:flex;align-items:center;gap:10px;border:1.5px solid var(--line-2);background:#fff;padding:11px 12px;margin:0;cursor:pointer;transition:.12s}
ul#shipping_method li:hover{border-color:var(--safety)}
ul#shipping_method li:has(input:checked){border-color:var(--safety);background:var(--safety-tint);box-shadow:inset 4px 0 0 var(--safety)}
ul#shipping_method li input{margin:0;flex:none}
ul#shipping_method li label{font-size:12.5px;font-weight:700;color:var(--ink);cursor:pointer;display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;width:100%}
ul#shipping_method li label .woocommerce-Price-amount{margin-inline-start:auto;color:var(--safety-deep)}

/* --- پرداخت --- */
#payment{background:transparent !important;border-radius:0}
#payment ul.payment_methods{border-bottom:0 !important;padding:0 !important;display:grid;gap:8px}
#payment ul.payment_methods li{border:1.5px solid var(--line-2);background:#fff;padding:12px 14px;list-style:none}
#payment ul.payment_methods li:has(input:checked){border-color:var(--safety);background:var(--safety-tint);box-shadow:inset 4px 0 0 var(--safety)}
#payment ul.payment_methods li label{font-weight:800;font-size:13px;cursor:pointer}
#payment div.payment_box{background:var(--paper) !important;border:1px solid var(--line);border-radius:0 !important;font-size:12px;color:var(--ink-2)}
#payment div.payment_box::before{display:none !important}
.woocommerce-privacy-policy-text p{font-size:11px;color:var(--ink-3);line-height:2}

/* --- دکمهٔ ثبت سفارش: نارنجی قالب + چسبان --- */
#place_order,.wc-proceed-to-checkout a.checkout-button{
  background:var(--safety) !important;color:#fff !important;border:0 !important;border-radius:0 !important;
  font-family:inherit;font-size:15px !important;font-weight:800 !important;width:100%;padding:16px 24px !important;
  clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);
  cursor:pointer;transition:background .12s}
#place_order:hover,.wc-proceed-to-checkout a.checkout-button:hover{background:var(--safety-deep) !important}
@media(max-width:920px){
  #place_order{position:fixed;left:12px;right:12px;bottom:70px;z-index:80;width:auto;box-shadow:0 8px 30px rgba(240,82,27,.35)}
  .woocommerce-checkout #payment{padding-bottom:84px}
}

/* --- جدول سبد خرید --- */
.woocommerce table.cart{border:1.5px solid var(--ink);border-radius:0;background:#fff;border-collapse:collapse}
.woocommerce table.cart th{background:var(--ink);color:#fff;font-size:11px;font-weight:800;padding:11px 12px}
.woocommerce table.cart td{border:0;border-bottom:1px solid var(--line);padding:12px;font-size:12.5px;vertical-align:middle}
.woocommerce table.cart img{width:56px;height:56px;object-fit:cover;border:1px solid var(--line)}
.woocommerce table.cart td.product-name a{font-weight:700;color:var(--ink)}
.woocommerce table.cart td.product-name .variation{font-size:10.5px;color:var(--ink-3);margin:2px 0 0}
.woocommerce table.cart a.remove{color:#C62828 !important;width:26px;height:26px;line-height:23px;border:1.5px solid var(--line-2);border-radius:0;font-size:15px;background:#fff !important;transition:.12s}
.woocommerce table.cart a.remove:hover{background:#C62828 !important;color:#fff !important;border-color:#C62828}
.woocommerce .cart .quantity{display:inline-flex;border:1.5px solid var(--line-2);height:38px;align-items:center;background:#fff}
.woocommerce .cart .quantity input.qty{border:0;width:64px;text-align:center;font-family:var(--mono);font-size:13px;direction:ltr;-moz-appearance:textfield}
.woocommerce .cart .quantity input::-webkit-inner-spin-button{-webkit-appearance:none}
.woocommerce .cart .quantity .sp-q{width:28px;height:100%;border:0;background:var(--paper);font-size:14px;cursor:pointer;flex:none}
.woocommerce .cart .quantity .sp-q:hover{background:var(--panel)}
.woocommerce table.cart td.actions{padding:12px}
.woocommerce table.cart td.actions .coupon{display:flex;gap:8px}
.woocommerce table.cart td.actions .coupon .input-text{width:180px !important;padding:9px 12px}
.woocommerce table.cart td.actions .button,
.woocommerce table.cart td.actions .coupon .button{
  background:#fff !important;color:var(--ink) !important;border:1.5px solid var(--ink) !important;border-radius:0 !important;font-weight:700 !important;font-size:12px !important;padding:10px 16px !important;cursor:pointer}
.woocommerce table.cart td.actions .button:hover{background:var(--ink) !important;color:#fff !important}
.sp-cart-busy{opacity:.45;pointer-events:none;transition:opacity .15s}

/* جمع کل سبد */
.cart_totals{width:100% !important;float:none !important}
.cart-collaterals{display:grid;grid-template-columns:minmax(0,1fr);justify-items:end}
.cart-collaterals .cart_totals{max-width:520px}
.cart_totals table.shop_table th{width:38%;background:var(--paper);font-size:12px}
@media(max-width:920px){.cart-collaterals .cart_totals{max-width:none}}

/* دکمهٔ بروزرسانی لازم نیست — تعدادها ای‌جکسی ذخیره می‌شوند */
.woocommerce table.cart td.actions > .button[name="update_cart"]{display:none}

/* --- موبایل: جلوگیری از زوم خودکار iOS روی فیلدها (فونت زیر 16px) --- */
@media(max-width:920px){
  .woocommerce input[type=text],.woocommerce input[type=tel],.woocommerce input[type=email],
  .woocommerce input[type=password],.woocommerce input[type=number],.woocommerce select,
  .woocommerce textarea,.select2-search__field,
  .woocommerce .select2-selection__rendered{font-size:16px !important}
  .woocommerce .form-row input.input-text,.woocommerce .form-row select{min-height:46px}
}

/* موبایل: فونت ورودی‌های تسویه ≥16px تا iOS زوم نکند (تجربهٔ «ورودی‌ها گیج‌کننده») */
@media(max-width:680px){
  .woocommerce form .form-row input.input-text,
  .woocommerce form .form-row textarea,
  .woocommerce form .form-row select,
  .woocommerce .cart .quantity input.qty,
  .woocommerce table.cart td.actions .coupon .input-text{font-size:16px}
}

/* گارد سرریز افقی — همهٔ اندازه‌های گوشی؛ hidden سراسری + clip برای مرورگرِ نو */
html{overflow-x:hidden}
body{overflow-x:hidden;overflow-x:clip}
.screen-reader-text,[class*="live_region"],.widget_shopping_cart_live_region{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}

/* fallback for browsers without :has() — JS in theme.js toggles .sel (a :has() in a selector list would invalidate the whole rule on old engines, so these stay separate) */
ul#shipping_method li.sel{border-color:var(--safety);background:var(--safety-tint);box-shadow:inset 4px 0 0 var(--safety)}
#payment ul.payment_methods li.sel{border-color:var(--safety);background:var(--safety-tint);box-shadow:inset 4px 0 0 var(--safety)}
