/* Fulwari Store v5.3 — Cart layout only
   Button label geometry is intentionally NOT defined here; see buttons.css.
*/
body.woocommerce-cart{overflow-x:hidden!important}
body.woocommerce-cart .woocommerce,body.woocommerce-cart .woocommerce-cart-form,body.woocommerce-cart .cart-collaterals{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
body.woocommerce-cart .woocommerce{direction:rtl!important;text-align:right!important}
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart{width:100%!important;max-width:100%!important;margin:0 0 20px!important;border:1px solid var(--fv-border)!important;border-radius:18px!important;border-collapse:separate!important;border-spacing:0!important;background:var(--fv-surface)!important;overflow:hidden!important}
body.woocommerce-cart table.shop_table.cart .product-thumbnail img{display:block!important;width:64px!important;height:64px!important;margin:auto!important;object-fit:cover!important;border:1px solid var(--fv-border)!important;border-radius:12px!important;background:#F7EFE3!important}
body.woocommerce-cart table.shop_table.cart .product-name a{color:var(--fv-dark)!important;font-weight:800!important;line-height:1.8!important}
body.woocommerce-cart table.shop_table.cart .product-remove a.remove{display:inline-grid!important;place-items:center!important;width:34px!important;min-width:34px!important;height:34px!important;margin:auto!important;border-radius:9px!important;color:#B3261E!important;line-height:1!important}
body.woocommerce-cart table.shop_table.cart .product-remove a.remove:hover{background:#FFF0EE!important;color:#8D1C16!important}
body.woocommerce-cart table.shop_table.cart input.qty{width:72px!important;min-width:72px!important;height:46px!important;min-height:46px!important;margin:0!important;text-align:center!important;border-radius:10px!important}
body.woocommerce-cart .cart-collaterals{clear:both!important;display:flex!important;justify-content:flex-end!important;align-items:flex-start!important;overflow:visible!important;width:100%!important}
body.woocommerce-cart .cart-collaterals .cart_totals{float:none!important;width:min(470px,100%)!important;max-width:100%!important;margin:0 0 0 auto!important;padding:22px!important;border:1px solid var(--fv-border)!important;border-radius:18px!important;background:var(--fv-surface)!important;box-sizing:border-box!important}
body.woocommerce-cart .cart-collaterals .checkout-button{width:100%!important;margin:14px 0 0!important}

@media(min-width:1024px){
  body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart{display:table!important;table-layout:fixed!important}
  body.woocommerce-cart table.shop_table.cart thead{display:table-header-group!important}
  body.woocommerce-cart table.shop_table.cart tbody{display:table-row-group!important}
  body.woocommerce-cart table.shop_table.cart tr{display:table-row!important;position:static!important;width:auto!important;height:auto!important;min-height:0!important}
  body.woocommerce-cart table.shop_table.cart th,body.woocommerce-cart table.shop_table.cart td{display:table-cell!important;position:static!important;inset:auto!important;float:none!important;transform:none!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;box-sizing:border-box!important;vertical-align:middle!important}
  body.woocommerce-cart table.shop_table.cart th{padding:14px 12px!important;background:#FCF8F1!important;color:var(--fv-dark)!important;font-size:var(--fv-type-body-size)!important;font-weight:800!important}
  body.woocommerce-cart table.shop_table.cart td{padding:16px 12px!important;color:var(--fv-dark)!important;font-size:var(--fv-type-body-size)!important;line-height:1.7!important}
  body.woocommerce-cart table.shop_table.cart .product-remove{width:52px!important;text-align:center!important}
  body.woocommerce-cart table.shop_table.cart .product-thumbnail{width:88px!important;text-align:center!important}
  body.woocommerce-cart table.shop_table.cart .product-name{width:auto!important;min-width:0!important;text-align:right!important;overflow-wrap:anywhere!important}
  body.woocommerce-cart table.shop_table.cart .product-price,body.woocommerce-cart table.shop_table.cart .product-subtotal{width:145px!important;text-align:center!important;white-space:nowrap!important}
  body.woocommerce-cart table.shop_table.cart .product-quantity{width:112px!important;text-align:center!important}
  body.woocommerce-cart table.shop_table.cart td.actions{display:table-cell!important;position:static!important;width:auto!important;height:auto!important;min-height:0!important;padding:16px 18px!important;background:#FCF8F1!important}
  body.woocommerce-cart table.shop_table.cart td.actions::after{content:""!important;display:block!important;clear:both!important}
  body.woocommerce-cart table.shop_table.cart td.actions>.coupon{float:right!important;display:flex!important;align-items:center!important;gap:10px!important;width:auto!important;max-width:520px!important;margin:0!important}
  body.woocommerce-cart table.shop_table.cart td.actions>.coupon input[name="coupon_code"]{width:210px!important;min-width:180px!important;height:50px!important;margin:0!important;text-align:right!important}
  body.woocommerce-cart table.shop_table.cart td.actions>.coupon button{min-width:160px!important;margin:0!important}
  body.woocommerce-cart table.shop_table.cart td.actions>button[name="update_cart"],body.woocommerce-cart table.shop_table.cart td.actions>input[name="update_cart"]{float:left!important;position:static!important;inset:auto!important;width:auto!important;min-width:210px!important;margin:0!important}
}

@media(min-width:768px) and (max-width:1023px){
  body.woocommerce-cart table.shop_table.cart td.actions{padding:14px!important}
  body.woocommerce-cart table.shop_table.cart td.actions>.coupon{float:none!important;display:grid!important;grid-template-columns:minmax(0,1fr) 180px!important;gap:10px!important;width:100%!important;max-width:none!important;margin:0 0 10px!important}
  body.woocommerce-cart table.shop_table.cart td.actions>.coupon input[name="coupon_code"]{width:100%!important;min-width:0!important;height:50px!important;margin:0!important}
  body.woocommerce-cart table.shop_table.cart td.actions>.coupon button{width:100%!important;margin:0!important}
  body.woocommerce-cart table.shop_table.cart td.actions>button[name="update_cart"],body.woocommerce-cart table.shop_table.cart td.actions>input[name="update_cart"]{float:none!important;width:100%!important;min-width:0!important;margin:0!important}
}

@media(max-width:767px){
  body.woocommerce-cart table.shop_table_responsive.cart thead{display:none!important}
  body.woocommerce-cart table.shop_table_responsive.cart,body.woocommerce-cart table.shop_table_responsive.cart tbody{display:block!important;width:100%!important;border:0!important;background:transparent!important;overflow:visible!important}
  body.woocommerce-cart table.shop_table_responsive.cart tr.cart_item{display:grid!important;grid-template-columns:70px minmax(0,1fr) 34px!important;grid-template-areas:"thumb name remove" "price price price" "qty qty qty" "subtotal subtotal subtotal"!important;column-gap:12px!important;row-gap:0!important;position:static!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0 0 14px!important;padding:14px!important;box-sizing:border-box!important;border:1px solid var(--fv-border)!important;border-radius:16px!important;background:var(--fv-surface)!important;overflow:hidden!important}
  body.woocommerce-cart table.shop_table_responsive.cart tr.cart_item>td{display:block!important;position:static!important;inset:auto!important;float:none!important;transform:none!important;width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;box-sizing:border-box!important}
  body.woocommerce-cart td.product-thumbnail{grid-area:thumb!important}
  body.woocommerce-cart td.product-thumbnail::before,body.woocommerce-cart td.product-name::before,body.woocommerce-cart td.product-remove::before{display:none!important;content:none!important}
  body.woocommerce-cart td.product-thumbnail img{width:64px!important;height:64px!important;margin:0!important;object-fit:cover!important;border-radius:12px!important}
  body.woocommerce-cart td.product-name{grid-area:name!important;display:flex!important;align-items:center!important;min-height:64px!important;text-align:right!important;font-size:var(--fv-type-body-size)!important}
  body.woocommerce-cart td.product-remove{grid-area:remove!important;display:flex!important;justify-content:flex-end!important;align-items:flex-start!important}
  body.woocommerce-cart td.product-price{grid-area:price!important}body.woocommerce-cart td.product-quantity{grid-area:qty!important}body.woocommerce-cart td.product-subtotal{grid-area:subtotal!important}
  body.woocommerce-cart td.product-price,body.woocommerce-cart td.product-quantity,body.woocommerce-cart td.product-subtotal{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;width:100%!important;min-height:49px!important;margin-top:10px!important;padding-top:10px!important;border-top:1px solid var(--fv-border)!important;text-align:left!important}
  body.woocommerce-cart td.product-price::before{content:"قیمت"!important}body.woocommerce-cart td.product-quantity::before{content:"تعداد"!important}body.woocommerce-cart td.product-subtotal::before{content:"جمع جزء"!important}
  body.woocommerce-cart td.product-price::before,body.woocommerce-cart td.product-quantity::before,body.woocommerce-cart td.product-subtotal::before{display:block!important;float:none!important;flex:0 0 auto!important;color:var(--fv-muted)!important;font-size:var(--fv-type-muted-size)!important;font-weight:700!important;text-align:right!important}
  body.woocommerce-cart table.shop_table_responsive.cart tr:not(.cart_item){display:block!important;position:static!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important}
  body.woocommerce-cart table.shop_table.cart td.actions{display:block!important;position:static!important;float:none!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:14px!important;border:1px solid var(--fv-border)!important;border-radius:16px!important;background:#FCF8F1!important;box-sizing:border-box!important}
  body.woocommerce-cart table.shop_table.cart td.actions::before,body.woocommerce-cart table.shop_table.cart td.actions::after{display:none!important;content:none!important}
  /* Mobile: deterministic vertical stack; coupon button and update button are equal width/height */
  body.woocommerce-cart table.shop_table.cart td.actions>.coupon{float:none!important;display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important;max-width:none!important;margin:0 0 10px!important}
  body.woocommerce-cart table.shop_table.cart td.actions>.coupon input[name="coupon_code"]{width:100%!important;min-width:0!important;height:50px!important;margin:0!important}
  body.woocommerce-cart table.shop_table.cart td.actions>.coupon button{width:100%!important;min-width:0!important;margin:0!important}
  body.woocommerce-cart table.shop_table.cart td.actions>button[name="update_cart"],body.woocommerce-cart table.shop_table.cart td.actions>input[name="update_cart"]{float:none!important;position:static!important;width:100%!important;min-width:0!important;margin:0!important}
  body.woocommerce-cart .cart-collaterals,body.woocommerce-cart .cart-collaterals .cart_totals{float:none!important;width:100%!important;max-width:100%!important;margin:16px 0 0!important}
}


/* =========================================================
   v6.11 CART TOTALS TYPOGRAPHY + SHIPPING ADDRESS
   ========================================================= */
body.woocommerce-cart .cart_totals h2{
  margin:0 0 14px!important;
  color:var(--fv-blue-deep)!important;
  font-size:var(--fv-type-section-size)!important;
  line-height:var(--fv-type-section-line)!important;
  font-weight:var(--fv-type-section-weight)!important;
}
body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td{
  font-size:var(--fv-type-body-size)!important;
  line-height:var(--fv-type-body-line)!important;
  font-weight:var(--fv-type-body-weight)!important;
  vertical-align:top!important;
}
body.woocommerce-cart .cart_totals table.shop_table th{
  color:var(--fv-text-2)!important;
  font-weight:600!important;
}
body.woocommerce-cart .cart_totals .order-total th{
  color:var(--fv-text)!important;
  font-size:var(--fv-type-item-size)!important;
  font-weight:var(--fv-type-item-weight)!important;
}
body.woocommerce-cart .cart_totals .order-total td,
body.woocommerce-cart .cart_totals .order-total .amount{
  color:var(--fv-blue-deep)!important;
  font-size:var(--fv-type-section-size)!important;
  line-height:var(--fv-type-section-line)!important;
  font-weight:800!important;
}
body.woocommerce-cart .woocommerce-shipping-destination,
body.woocommerce-cart .woocommerce-shipping-calculator{
  color:var(--fv-muted)!important;
  font-size:var(--fv-type-muted-size)!important;
  line-height:var(--fv-type-muted-line)!important;
}
body.woocommerce-cart .woocommerce-shipping-destination strong{
  display:block!important;
  margin-top:5px!important;
  color:var(--fv-text-2)!important;
  font-size:var(--fv-type-muted-size)!important;
  line-height:var(--fv-type-body-line)!important;
  font-weight:500!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
body.woocommerce-cart .shipping-calculator-button{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  color:var(--fv-blue-deep)!important;
  font-size:var(--fv-type-muted-size)!important;
  line-height:var(--fv-type-muted-line)!important;
  font-weight:600!important;
}
body.woocommerce-cart .shipping-calculator-button::after{
  content:""!important;
  display:inline-block!important;
  width:16px!important;
  height:16px!important;
  margin:0!important;
  background:url("../icons/edit.svg") center/16px 16px no-repeat!important;
  font-family:inherit!important;
  speak:none!important;
}


/* v6.49 — Cart UX cleanup */
body.woocommerce-cart .cart-collaterals .cart_totals{box-shadow:0 10px 30px rgba(32,55,74,.06)!important}
body.woocommerce-cart .cart_totals .shop_table tr.shipping,body.woocommerce-cart .cart_totals .shop_table tr.woocommerce-shipping-totals,body.woocommerce-cart .cart_totals .woocommerce-shipping-destination,body.woocommerce-cart .cart_totals .woocommerce-shipping-calculator,body.woocommerce-cart .cart_totals .shipping-calculator-form,body.woocommerce-cart .cart_totals #shipping_method,body.woocommerce-cart .cart_totals .woocommerce-shipping-methods{display:none!important}
@media(max-width:767px){body.woocommerce-cart .cart-collaterals{display:block!important}body.woocommerce-cart .cart-collaterals .cart_totals{margin:16px 0 0!important}}


/* =========================================================
   v6.53 — Live cart + compact desktop composition
   ========================================================= */
/* Manual update is replaced by the debounced automatic update in JS. */
body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"],
body.woocommerce-cart .woocommerce-cart-form input[name="update_cart"]{
  display:none!important;
}

/* Keep coupon controls compact after removing the manual update button. */
body.woocommerce-cart table.shop_table.cart td.actions{
  padding-top:12px!important;
  padding-bottom:12px!important;
}
body.woocommerce-cart table.shop_table.cart td.actions>.coupon{
  margin:0!important;
}

/* Subtle feedback while totals are being refreshed. */
body.woocommerce-cart .woocommerce-cart-form.fv-cart-is-updating{
  opacity:.72!important;
  transition:opacity .16s ease!important;
}

@media(min-width:1024px){
  /* Summary and cart sit beside each other to reduce vertical scrolling. */
  body.woocommerce-cart .woocommerce{
    display:grid!important;
    grid-template-columns:minmax(300px,360px) minmax(0,1fr)!important;
    grid-template-areas:
      "notices notices"
      "summary cart"!important;
    column-gap:20px!important;
    row-gap:14px!important;
    align-items:start!important;
    direction:ltr!important;
  }
  body.woocommerce-cart .woocommerce>.woocommerce-notices-wrapper,
  body.woocommerce-cart .woocommerce>.woocommerce-message,
  body.woocommerce-cart .woocommerce>.woocommerce-error,
  body.woocommerce-cart .woocommerce>.woocommerce-info{
    grid-area:notices!important;
    direction:rtl!important;
  }
  body.woocommerce-cart .woocommerce-cart-form{
    grid-area:cart!important;
    direction:rtl!important;
    margin:0!important;
  }
  body.woocommerce-cart .cart-collaterals{
    grid-area:summary!important;
    direction:rtl!important;
    display:block!important;
    width:100%!important;
    margin:0!important;
    position:sticky!important;
    top:112px!important;
  }
  body.woocommerce-cart .cart-collaterals .cart_totals{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:18px!important;
    border-radius:16px!important;
  }
  body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart{
    margin:0!important;
  }
  body.woocommerce-cart table.shop_table.cart th{
    padding:11px 10px!important;
  }
  body.woocommerce-cart table.shop_table.cart td{
    padding:12px 10px!important;
  }
  body.woocommerce-cart table.shop_table.cart .product-thumbnail{
    width:74px!important;
  }
  body.woocommerce-cart table.shop_table.cart .product-thumbnail img{
    width:54px!important;
    height:54px!important;
    border-radius:10px!important;
  }
  body.woocommerce-cart table.shop_table.cart input.qty{
    width:64px!important;
    min-width:64px!important;
    height:42px!important;
    min-height:42px!important;
  }
  body.woocommerce-cart .cart_totals h2{
    margin-bottom:9px!important;
  }
  body.woocommerce-cart .cart_totals table.shop_table th,
  body.woocommerce-cart .cart_totals table.shop_table td{
    padding-top:11px!important;
    padding-bottom:11px!important;
  }
  body.woocommerce-cart .cart-collaterals .checkout-button{
    margin-top:10px!important;
  }
}

@media(max-width:1023px){
  body.woocommerce-cart .woocommerce{
    display:block!important;
    direction:rtl!important;
  }
  body.woocommerce-cart .cart-collaterals{
    position:static!important;
  }
}

@media(max-width:767px){
  body.woocommerce-cart table.shop_table.cart td.actions>.coupon{
    margin-bottom:0!important;
  }
}
