/* ---------------------------------------------------------------------------
 * jhsf-cart-v2.css — صفحهٔ سبد خرید
 *
 * از صفر نوشته شد، بعد از اینکه نسخهٔ انباشته‌شدهٔ قبلی (۵۱۷ خط) چیدمان را شکست.
 *
 * درسِ آن دور: قالب **از قبل** سبد را دو ستونه می‌چیند —
 *   div.cart-content-wrapper ← form.woocommerce-cart-form (۸۲۷) + div.cart_totals (۴۱۳)
 * من یک گریدِ دوستونهٔ دیگر روی .woocommerce گذاشته بودم و ۳۷۲px برای
 * `.cart-collaterals` رزرو کرده بودم که **در این قالب وجود ندارد**؛ نتیجه:
 * فرم از ۸۲۷ به ۵۶۵ و ستونِ نام از ۳۶۹ به ۱۲۴ فشرده می‌شد.
 * پس اینجا هیچ چیدمانی تحمیل نمی‌شود — فقط ظاهر.
 *
 * همه‌چیز زیرِ کلاسِ body یعنی .jhcart اسکوپ شده است.
 * ------------------------------------------------------------------------- */

.jhcart{
  --o:#f4801f;--o2:#ffa14d;--o-d:#cf6207;--o-dd:#a94d02;
  --nv:#14304f;--nv2:#1e4a78;
  --ink:#16202e;--mut:#5f6c7c;--faint:#98a4b3;
  --bd:#e9edf3;--soft:#f5f8fb;
  --ok:#17925f;--ok-bg:#e8f5ef;
  --r:18px;
  --d1:0 1px 1px rgba(20,48,79,.04),0 2px 4px rgba(20,48,79,.04);
  --d2:0 2px 4px rgba(20,48,79,.05),0 8px 16px rgba(20,48,79,.06),0 20px 34px rgba(20,48,79,.05);
}

/* ===== فرمِ سبد: کارت ===== */
.jhcart .woocommerce-cart-form{
  background:#fff;border:1px solid var(--bd);border-radius:var(--r);
  box-shadow:var(--d2);overflow:hidden}

.jhcart .shop_table thead th{
  background:var(--soft);color:var(--mut);font-size:12.5px;font-weight:800;
  padding:14px 0;border:0}
.jhcart .shop_table td{
  padding:15px 0;border:0;border-top:1px solid var(--bd);vertical-align:middle}
.jhcart .shop_table tbody tr:first-child td{border-top:0}

.jhcart .cart_item img{
  width:86px;height:86px;object-fit:cover;border-radius:13px;
  border:1px solid var(--bd);background:var(--soft)}
.jhcart .cart_item .product-name a{
  font-size:14.5px;font-weight:800;line-height:1.75;color:var(--ink)}
.jhcart .cart_item .product-name a:hover{color:var(--o)}
/* کدِ کالا برای مشتری معنایی ندارد و فقط ردیف را شلوغ می‌کند */
.jhcart .cart_item .wd-product-sku,
.jhcart .cart_item .sku_wrapper{display:none}
.jhcart .cart_item .product-price{font-weight:800;color:var(--nv);font-size:14.5px}
.jhcart .cart_item .product-subtotal{font-weight:800;color:var(--o-d);font-size:15.5px}

.jhcart .quantity{border:1px solid var(--bd);border-radius:11px;overflow:hidden;background:#fff}
.jhcart .quantity input.qty{font-weight:800;color:var(--ink);font-size:14px}
.jhcart .quantity .minus:hover,.jhcart .quantity .plus:hover{color:var(--o);background:var(--soft)}

.jhcart .product-remove a.remove{
  width:36px;height:36px;line-height:36px;border-radius:10px;
  color:var(--faint);transition:.16s}
.jhcart .product-remove a.remove:hover{background:#fdecea;color:#d9342b}

.jhcart .actions{padding:14px 16px;background:var(--soft);border-top:1px solid var(--bd)}
.jhcart .coupon input[type="text"]{
  border:1px solid var(--bd);border-radius:11px;padding:10px 13px;font-size:13.5px;background:#fff}
.jhcart .coupon input[type="text"]:focus{
  border-color:var(--o);outline:0;box-shadow:0 0 0 3px rgba(244,128,31,.12)}
.jhcart .actions .button{
  background:var(--soft)!important;color:var(--nv)!important;
  border:1px solid var(--bd)!important;border-radius:11px!important;
  font-size:13.5px;font-weight:800;box-shadow:none!important}
.jhcart .actions .button:hover{border-color:var(--o)!important;color:var(--o)!important}

/* ===== کارتِ جمع‌کل — چسبان، تا دکمهٔ پرداخت همیشه در دید باشد ===== */
.jhcart .cart_totals{
  background:#fff;border:1px solid var(--bd);border-radius:var(--r);
  padding:20px;box-shadow:var(--d2)}
@media (min-width:1025px){
  .jhcart .cart_totals{position:sticky;top:100px}
}
.jhcart .cart_totals h2,
.jhcart .cart_totals .wd-el-title{
  font-size:16px;font-weight:900;color:var(--ink);margin:0 0 14px;
  padding-bottom:13px;border-bottom:1px solid var(--bd)}
.jhcart .cart_totals table th{font-size:13.5px;font-weight:700;color:var(--mut);padding:10px 0;border:0}
.jhcart .cart_totals table td{font-size:14px;padding:10px 0;border:0}
.jhcart .cart_totals .order-total th{font-size:15px;font-weight:900;color:var(--ink)}
.jhcart .cart_totals .order-total td .amount{
  font-size:20px;font-weight:900;color:var(--o-d);letter-spacing:-.4px}

/* لینکِ محاسبهٔ حمل با قرمزِ پیش‌فرض شبیهِ پیامِ خطا دیده می‌شود */
.jhcart .cart_totals .shipping-calculator-button{
  color:var(--nv2)!important;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.jhcart .cart_totals .shipping-calculator-button:hover{color:var(--o)!important}
/* «پس کرایه» برای کاربرِ تازه اصطلاحِ روشنی نیست */
.jhcart .woocommerce-shipping-totals::after{
  content:"هزینهٔ ارسال هنگام تحویل، به مأمور پست پرداخت می‌شود.";
  display:block;font-size:11.5px;color:var(--faint);line-height:1.75;margin-top:5px}

/* دکمهٔ پرداخت */
.jhcart .wc-proceed-to-checkout a.checkout-button{
  display:flex;align-items:center;justify-content:center;width:100%;height:52px;
  background:linear-gradient(180deg,var(--o2),var(--o));color:#fff;
  border-radius:14px!important;font-size:15.5px;font-weight:800;
  box-shadow:0 5px 0 var(--o-dd),0 10px 22px rgba(244,128,31,.34)!important;
  transition:transform .12s;margin-top:6px}
.jhcart .wc-proceed-to-checkout a.checkout-button:hover{transform:translateY(-2px)}
.jhcart .wc-proceed-to-checkout a.checkout-button:active{transform:translateY(3px)}

/* «دریافت پیش فاکتور» نباید هم‌وزنِ دکمهٔ اصلی باشد */
.jhcart .cart_totals .btn-prefactor{
  background:#fff!important;border:1px solid var(--bd);border-radius:13px;
  padding:0!important;height:46px;margin-top:10px;box-shadow:var(--d1);
  display:flex;align-items:center;justify-content:center;transition:.18s}
.jhcart .cart_totals .btn-prefactor:hover{border-color:var(--o)}
.jhcart .cart_totals .btn-prefactor a.get-prefactor{
  color:var(--nv)!important;font-size:14px;font-weight:800;text-decoration:none;
  width:100%;height:100%;display:flex;align-items:center;justify-content:center}

/* ===== بلوک‌های افزوده (با قلاب‌های ووکامرس تزریق می‌شوند) ===== */
.jhcart .jhcart-footbar{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  margin-top:18px;padding:15px 18px;border-radius:15px;
  background:linear-gradient(165deg,#fff8f0,#fdeedd);border:1px solid #f6dcc2}
.jhcart .jhcart-footbar .note{display:flex;gap:12px;align-items:flex-start;flex:1;min-width:240px}
.jhcart .jhcart-footbar .i{
  width:36px;height:36px;border-radius:11px;background:#fff;color:var(--o);
  display:grid;place-items:center;flex:none;box-shadow:var(--d1)}
.jhcart .jhcart-footbar b{display:block;font-size:13.5px;font-weight:800;color:var(--ink);margin-bottom:2px}
.jhcart .jhcart-footbar p{margin:0;font-size:12px;color:#7a5c3c;line-height:1.8}
.jhcart .jhcart-footbar .cont{
  display:inline-flex;align-items:center;gap:8px;flex:none;
  background:#fff;border:1px solid #f0d3b4;border-radius:12px;padding:11px 18px;
  color:var(--o-d);font-size:13.5px;font-weight:800;text-decoration:none;box-shadow:var(--d1)}
.jhcart .jhcart-footbar .cont:hover{border-color:var(--o);color:var(--o)}
.jhcart .jhcart-footbar .cont svg{width:16px;height:16px}

.jhcart .jhcart-assure{
  list-style:none;margin:16px 0 0;padding:18px;display:grid;gap:13px;
  background:#fff;border:1px solid var(--bd);border-radius:var(--r);box-shadow:var(--d2)}
.jhcart .jhcart-assure li{display:flex;gap:11px;align-items:center;margin:0}
.jhcart .jhcart-assure .i{
  width:34px;height:34px;border-radius:11px;background:var(--ok-bg);color:var(--ok);
  display:grid;place-items:center;flex:none}
.jhcart .jhcart-assure .i svg{width:18px;height:18px}
.jhcart .jhcart-assure b{display:block;font-size:13.5px;font-weight:800;color:var(--ink);line-height:1.6}
.jhcart .jhcart-assure span span{font-size:12px;color:var(--faint);line-height:1.7}

.jhcart .jhcart-help{
  display:flex;align-items:center;gap:13px;flex-wrap:wrap;
  margin-top:16px;padding:15px 17px;border-radius:15px;
  background:linear-gradient(150deg,var(--nv2),var(--nv));color:#fff;box-shadow:var(--d2)}
.jhcart .jhcart-help .i{
  width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.16);
  display:grid;place-items:center;flex:none}
.jhcart .jhcart-help .tx{flex:1;min-width:110px}
.jhcart .jhcart-help b{display:block;font-size:14px;font-weight:900;margin-bottom:1px}
.jhcart .jhcart-help p{margin:0;font-size:12px;color:#c6d7e8;line-height:1.7}
.jhcart .jhcart-help .btns{display:flex;gap:7px;flex:none}
.jhcart .jhcart-help .btns a{
  display:flex;align-items:center;gap:6px;border-radius:10px;
  font-size:12.5px;font-weight:800;padding:9px 13px;text-decoration:none}
.jhcart .jhcart-help .tel{background:#fff;color:var(--nv)}
.jhcart .jhcart-help .tel svg{width:15px;height:15px}
.jhcart .jhcart-help .wa{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.3)}

/* ===== نوارِ پیشرفتِ ارسالِ رایگان ===== */
.jhcart .wd-free-progress-bar,
.jhcart [class*="free-progress"]{
  background:#fff;border:1px solid var(--bd);border-radius:15px;
  padding:15px 18px;box-shadow:var(--d1);margin-bottom:16px}

/* ===== سبدِ خالی ===== */
.jhcart .cart-empty,
.jhcart .wc-empty-cart-message{
  background:#fff;border:1px solid var(--bd);border-radius:var(--r);
  padding:46px 26px;text-align:center;box-shadow:var(--d2);
  font-size:16.5px;font-weight:800;color:var(--ink);margin:0 0 16px}
.jhcart .return-to-shop .button{
  display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 30px;
  background:linear-gradient(180deg,var(--o2),var(--o))!important;color:#fff!important;
  border-radius:14px!important;font-size:15px;font-weight:800;
  box-shadow:0 4px 0 var(--o-dd)!important}

@media (max-width:600px){
  .jhcart .cart_item img{width:66px;height:66px;border-radius:11px}
  .jhcart .cart_item .product-name a{font-size:13px}
  .jhcart .cart_totals{padding:16px}
  .jhcart .wc-proceed-to-checkout a.checkout-button{height:48px;font-size:14.5px}
  .jhcart .jhcart-footbar,.jhcart .jhcart-help{padding:14px}
  .jhcart .jhcart-footbar .cont{width:100%;justify-content:center}
  .jhcart .jhcart-help .btns{width:100%}
  .jhcart .jhcart-help .btns a{flex:1;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.jhcart *{transition:none!important}}

/* ===== پاسخ‌های سریع ===== */
.jhcart .jhcart-faq{
  margin-top:16px;background:#fff;border:1px solid var(--bd);border-radius:var(--r);
  padding:18px;box-shadow:var(--d2)}
.jhcart .jhcart-faq .hd,
.jhcart .jhcart-picks .hd{
  display:block;font-size:14.5px;font-weight:900;color:var(--ink);
  margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--bd)}
.jhcart .jhcart-faq .rows{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.jhcart .jhcart-faq .qa{display:flex;gap:11px;align-items:flex-start}
.jhcart .jhcart-faq .i{
  width:34px;height:34px;border-radius:11px;background:var(--soft);color:var(--nv2);
  display:grid;place-items:center;flex:none}
.jhcart .jhcart-faq .i svg{width:18px;height:18px}
.jhcart .jhcart-faq b{display:block;font-size:13px;font-weight:800;color:var(--ink);margin-bottom:2px}
.jhcart .jhcart-faq p{margin:0;font-size:12px;color:var(--mut);line-height:1.85}

/* ===== مکملِ خرید ===== */
.jhcart .jhcart-picks{
  margin-top:16px;background:#fff;border:1px solid var(--bd);border-radius:var(--r);
  padding:18px;box-shadow:var(--d2)}
.jhcart .jhcart-picks .rows{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.jhcart .jhcart-picks .pk{
  display:flex;gap:10px;align-items:center;text-decoration:none;color:inherit;
  background:var(--soft);border:1px solid var(--bd);border-radius:14px;padding:9px;
  transition:transform .2s,box-shadow .2s,border-color .2s}
.jhcart .jhcart-picks .pk:hover{
  transform:translateY(-3px);border-color:var(--o);box-shadow:var(--d2);background:#fff}
.jhcart .jhcart-picks .pk img{
  width:52px;height:52px;object-fit:cover;border-radius:11px;flex:none;
  background:#fff;border:1px solid var(--bd)}
.jhcart .jhcart-picks .tx{min-width:0}
.jhcart .jhcart-picks .pk b{
  display:block;font-size:12px;font-weight:700;line-height:1.6;color:var(--ink);
  overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.jhcart .jhcart-picks .pr{display:block;font-size:12px;font-weight:900;color:var(--o-d);margin-top:3px}
.jhcart .jhcart-picks .pr del{font-weight:400;font-size:10.5px;color:var(--faint);margin-left:4px}
.jhcart .jhcart-picks .pr ins{text-decoration:none}

@media (max-width:900px){
  .jhcart .jhcart-faq .rows{grid-template-columns:1fr}
  .jhcart .jhcart-picks .rows{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
  .jhcart .jhcart-picks .rows{grid-template-columns:1fr}
}
