/* =========================================================
   WOOCOMMERCE — visual re-skin only. No WooCommerce markup or
   logic is duplicated here; this file just restyles the
   classes WooCommerce itself renders.
   ========================================================= */

.wc-page{ padding-block:50px; }

/* ---------- shop archive ---------- */
ul.products{ display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:26px !important; list-style:none; margin:0; padding:0; }
@media (max-width:980px){ ul.products{ grid-template-columns:repeat(2,1fr) !important; } }
@media (max-width:560px){ ul.products{ grid-template-columns:1fr !important; } }

ul.products li.product{
  border:var(--border-w) solid var(--ink);
  border-radius:var(--radius-md);
  overflow:hidden;
  box-shadow:var(--shadow-pop-sm);
  transition:transform .25s ease, box-shadow .25s ease;
  padding:0 !important;
}
ul.products li.product:hover{ transform:translateY(-6px); box-shadow:8px 10px 0 var(--ink); }
ul.products li.product img{ border-radius:0 !important; border-bottom:var(--border-w) solid var(--ink); aspect-ratio:4/5; object-fit:cover; }
ul.products li.product .woocommerce-loop-product__title{ padding:16px 18px 4px; font-size:15px; font-weight:700; }
ul.products li.product .price{ padding:0 18px 18px; display:block; font-family:var(--ff-display); }
html[dir="rtl"] ul.products li.product .price{ font-family:var(--ff-fa); font-weight:800; }
ul.products li.product .button{
  margin:0 18px 18px;
  display:inline-block;
  border:2px solid var(--ink); border-radius:999px;
  padding:8px 18px; font-size:13px; font-weight:700;
  background:var(--ink); color:var(--paper);
}

.woocommerce-ordering select, .woocommerce-result-count{ font-family:inherit; }
.catishirt-breadcrumbs{ font-size:13px; color:#5b564c; margin-bottom:24px; }

/* ---------- single product ---------- */
.single-product .summary{ font-family:inherit; }
.single-product .product_title{ font-family:var(--ff-display); font-size:clamp(26px,3.6vw,40px); }
html[dir="rtl"] .single-product .product_title{ font-family:var(--ff-fa); font-weight:900; }
.single-product .price{ font-family:var(--ff-display); font-size:22px; }
html[dir="rtl"] .single-product .price{ font-family:var(--ff-fa); font-weight:800; }
.single-product .woocommerce-product-gallery{ border:var(--border-w) solid var(--ink); border-radius:var(--radius-lg); overflow:hidden; }

.single-product form.cart .button,
.single-product .single_add_to_cart_button{
  border:var(--border-w) solid var(--ink); border-radius:999px;
  background:var(--ink); color:var(--paper);
  font-weight:700; padding:14px 30px;
  box-shadow:var(--shadow-pop-sm);
}
.single-product .variations select{
  border:2px solid var(--ink); border-radius:10px; padding:8px 12px; font-family:inherit;
}

/* ---------- cart / checkout ---------- */
table.shop_table{ border:var(--border-w) solid var(--ink) !important; border-radius:var(--radius-md); overflow:hidden; }
table.shop_table th{ background:var(--ink); color:var(--paper); }
.woocommerce-checkout input.input-text,
.woocommerce-checkout select{
  border:2px solid var(--ink) !important; border-radius:10px !important; font-family:inherit;
}
#place_order, .checkout-button{
  border:var(--border-w) solid var(--ink) !important; border-radius:999px !important;
  background:var(--ink) !important; color:var(--paper) !important;
  font-weight:700 !important;
}

/* ---------- notices ---------- */
.woocommerce-message, .woocommerce-info{
  border-top-color:var(--teal) !important;
}
.woocommerce-error{ border-top-color:var(--coral) !important; }
