/* =========================================================
   Yadaki Cart UI — 2026 RTL
   Safe: فقط روی body.yadaki-cart / body.yadaki-checkout
========================================================= */

:root{
  --p-border:#e5e7eb;
  --p-muted:#64748b;
  --p-text:#0f172a;
  --p-accent:#2563eb;
  --p-radius:22px;
  --p-shadow2: 0 10px 28px rgba(15,23,42,.06);
  --p-bg:#f8fafc;
}

body.yadaki-cart,
body.yadaki-checkout{
  direction: rtl;
  background: var(--p-bg);
}

/* Shell */
.yadakiCartShell{
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 18px 0 70px;
}

.yadakiCartGrid{
  display: grid;
  grid-template-columns: 1fr minmax(320px, 420px);
  gap: 18px;
  align-items: start;
}

@media (max-width: 980px){
  .yadakiCartGrid{ grid-template-columns: 1fr; }
}

/* Cards */
.yadakiCartItems,
.yadakiCartSummary{
  background: #fff;
  border: 1px solid var(--p-border);
  border-radius: var(--p-radius);
  box-shadow: var(--p-shadow2);
  overflow: hidden;
}

.yadakiCartItems{ padding: 14px; }
.yadakiSummaryCard{ padding: 14px; }

.yadakiSectionHead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding: 10px 10px 14px;
  border-bottom: 1px solid #eef2f7;
  margin-bottom: 12px;
}

.yadakiSectionTitle{
  margin: 0;
  font-size: 18px;
  font-weight: 950;
  color: var(--p-text);
}

/* =========================================================
   Woo Cart Table -> Modern layout
========================================================= */

/* Hide legacy table head */
body.yadaki-cart .shop_table thead{ display:none; }

/* Remove old table look */
body.yadaki-cart .shop_table,
body.yadaki-cart .shop_table tbody,
body.yadaki-cart .shop_table tr,
body.yadaki-cart .shop_table td{
  border: 0 !important;
}

/* Make each row a card */
body.yadaki-cart .shop_table tbody tr.cart_item{
  display: grid;
  grid-template-columns: 84px 1fr 140px 170px 44px;
  gap: 12px;
  align-items: center;
  padding: 12px;
  margin-bottom: 12px;
  border: 1px solid #eef2f7;
  border-radius: 18px;
  background: #fff;
}

@media (max-width: 860px){
  body.yadaki-cart .shop_table tbody tr.cart_item{
    grid-template-columns: 72px 1fr 44px;
    grid-template-areas:
      "thumb title remove"
      "thumb meta  remove"
      "thumb qty   remove";
    gap: 10px;
  }
}

/* Thumbnail */
body.yadaki-cart td.product-thumbnail{
  width:auto !important;
}
body.yadaki-cart td.product-thumbnail a{
  display:block;
  width: 84px;
  height: 84px;
  border-radius: 16px;
  border: 1px solid #eef2f7;
  background: #f8fafc;
  overflow:hidden;
}
body.yadaki-cart td.product-thumbnail img{
  width:100%;
  height:100%;
  object-fit: contain;
  display:block;
}

/* Title */
body.yadaki-cart td.product-name{
  padding: 0 !important;
}
body.yadaki-cart td.product-name a{
  color: var(--p-text);
  font-weight: 950;
  text-decoration: none;
  line-height: 1.6;
  display:block;
  font-size: 14px;
}
body.yadaki-cart td.product-name dl.variation{
  margin: 6px 0 0;
  color: var(--p-muted);
  font-weight: 800;
  font-size: 12px;
}
body.yadaki-cart td.product-name dl.variation dt,
body.yadaki-cart td.product-name dl.variation dd{
  display:inline;
  margin: 0;
}
body.yadaki-cart td.product-name dl.variation dd{ margin-left: 10px; }

/* Price + Subtotal */
body.yadaki-cart td.product-price,
body.yadaki-cart td.product-subtotal{
  padding: 0 !important;
  font-weight: 950;
  color: var(--p-text);
  font-size: 13px;
  text-align: left;
  white-space: nowrap;
}
body.yadaki-cart td.product-subtotal{
  color: var(--p-accent);
}

/* Qty */
body.yadaki-cart td.product-quantity{
  padding: 0 !important;
}
body.yadaki-cart .quantity{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap: 8px;
}

/* Qty input unified */
body.yadaki-cart .quantity .qty{
  width: 86px !important;
  height: 42px !important;
  border-radius: 12px !important;
  border: 1px solid #e5e7eb !important;
  background: #fff !important;
  font-weight: 950 !important;
  text-align:center !important;
  outline:none;
  box-shadow:none !important;
}

/* Our +/- buttons (from functions.php hooks) */
body.yadaki-cart .yadakiQtyBtn{
  width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid #eef2f7;
  background: #f8fafc;
  color: var(--p-text);
  font-weight: 950;
  cursor:pointer;
}
body.yadaki-cart .yadakiQtyBtn:hover{
  border-color: rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
}

/* Remove */
body.yadaki-cart td.product-remove{
  padding:0 !important;
  text-align:center !important;
}
body.yadaki-cart td.product-remove a.remove{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width: 40px;
  height: 40px;
  border-radius: 14px;
  border: 1px solid #eef2f7;
  background: #fff;
  color: #ef4444 !important;
  font-weight: 950;
  text-decoration:none;
}
body.yadaki-cart td.product-remove a.remove:hover{
  background: rgba(239,68,68,.08);
  border-color: rgba(239,68,68,.25);
}

/* Mobile grid-area mapping */
@media (max-width: 860px){
  body.yadaki-cart td.product-thumbnail{ grid-area: thumb; }
  body.yadaki-cart td.product-name{ grid-area: title; }
  body.yadaki-cart td.product-price{ display:none; }     /* تو موبایل لازم نیست جدا */
  body.yadaki-cart td.product-subtotal{ grid-area: meta; text-align:right; }
  body.yadaki-cart td.product-quantity{ grid-area: qty; }
  body.yadaki-cart td.product-remove{ grid-area: remove; }
}

/* =========================================================
   Coupon + Update cart
========================================================= */
body.yadaki-cart .actions{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items:center;
  justify-content: space-between;
  padding: 10px;
  border-top: 1px solid #eef2f7;
  margin-top: 14px;
}

body.yadaki-cart .coupon{
  display:flex;
  gap: 10px;
  align-items:center;
  flex-wrap: wrap;
}

body.yadaki-cart .coupon input.input-text{
  height: 44px;
  min-width: 220px;
  border-radius: 12px;
  border: 1px solid #e5e7eb;
  padding: 0 12px;
  font-weight: 900;
}

body.yadaki-cart button[name="apply_coupon"],
body.yadaki-cart button[name="update_cart"]{
  height: 44px;
  border-radius: 12px !important;
  border: 1px solid #eef2f7 !important;
  background: #fff !important;
  font-weight: 950 !important;
  cursor:pointer;
  padding: 0 14px !important;
}

body.yadaki-cart button[name="apply_coupon"]:hover,
body.yadaki-cart button[name="update_cart"]:hover{
  border-color: rgba(37,99,235,.25) !important;
  background: rgba(37,99,235,.06) !important;
}

body.yadaki-cart button[name="update_cart"][disabled]{
  opacity: .5;
  cursor: not-allowed;
}

/* Notices */
body.yadaki-cart .woocommerce-message,
body.yadaki-cart .woocommerce-error,
body.yadaki-cart .woocommerce-info{
  border-radius: 18px;
  border: 1px solid #eef2f7;
  box-shadow: var(--p-shadow2);
}

/* =========================================================
   Summary (collaterals)
========================================================= */

.yadakiCartSummary{
  position: sticky;
  top: 92px;
}
@media (max-width: 980px){
  .yadakiCartSummary{ position: static; }
}

body.yadaki-cart .cart_totals{
  width: 100% !important;
  float:none !important;
}

body.yadaki-cart .cart_totals h2{ display:none; }

body.yadaki-cart .cart_totals table{
  width: 100%;
  border-collapse: collapse;
}
body.yadaki-cart .cart_totals th,
body.yadaki-cart .cart_totals td{
  padding: 10px 0;
  border: 0;
  border-bottom: 1px solid #eef2f7;
  font-weight: 900;
  color: var(--p-text);
}
body.yadaki-cart .cart_totals tr:last-child th,
body.yadaki-cart .cart_totals tr:last-child td{
  border-bottom: 0;
}

body.yadaki-cart .order-total td{
  color: var(--p-accent);
  font-weight: 950;
}

/* Checkout button */
body.yadaki-cart .wc-proceed-to-checkout{
  padding: 14px 0 0 !important;
}
body.yadaki-cart .checkout-button{
  width: 100% !important;
  height: 54px !important;
  border-radius: 16px !important;
  background: var(--p-accent) !important;
  color: #fff !important;
  font-weight: 950 !important;
  border: 0 !important;
  text-align:center;
}

/* =========================================================
   Empty cart
========================================================= */
.yadakiEmptyCart{
  text-align:center;
  padding: 38px 16px 44px;
}
.yadakiEmptyCart__icon{
  font-size: 42px;
  margin-bottom: 10px;
}
.yadakiEmptyCart__title{
  font-weight: 950;
  font-size: 18px;
  color: var(--p-text);
  margin-bottom: 8px;
}
.yadakiEmptyCart__desc{
  color: var(--p-muted);
  font-weight: 850;
  font-size: 13px;
  margin-bottom: 14px;
}
.yadakiBtnPrimary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height: 50px;
  padding: 0 18px;
  border-radius: 16px;
  background: var(--p-accent);
  color:#fff;
  font-weight: 950;
  text-decoration:none;
}

/* Fix weird alignment in your screenshot */
body.yadaki-cart .shop_table td{
  vertical-align: middle !important;
}
