/* ===========================================================
   ZOPANI Product Style — applies to ALL WooCommerce loops
   (shop, category, search, related, up-sells, shortcodes)
   Blue theme | vendor + verified badge | hover | mobile-first
   =========================================================== */

:root{
  --zpn-blue:#2563EB;
  --zpn-blue-dark:#1D4ED8;
  --zpn-ink:#1E1B2E;
  --zpn-grey:#6B7280;
  --zpn-line:#ECEAF3;
  --zpn-star:#FBBF24;
}

/* Reset WooCommerce default list item so our card controls everything */
ul.products li.product{
  border:none !important;
  padding:0 !important;
  margin-bottom:24px !important;
  text-align:left !important;
  background:transparent !important;
}

/* The card wrapper */
ul.products li.product .zpn-pc{
  background:#fff;
  border:1px solid var(--zpn-line);
  border-radius:16px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  height:100%;
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
ul.products li.product .zpn-pc:hover{
  transform:translateY(-6px);
  box-shadow:0 14px 30px rgba(37,99,235,.16);
  border-color:transparent;
}

/* Media */
.zpn-pc-media{
  position:relative;
  background:#EFF4FF;
  overflow:hidden;
}
.zpn-pc-media a img,
.zpn-pc-media img{
  width:100% !important;
  height:auto !important;
  aspect-ratio:1/1;
  object-fit:cover;
  margin:0 !important;
  display:block;
  transition:transform .5s ease;
}
ul.products li.product .zpn-pc:hover .zpn-pc-media img{
  transform:scale(1.07);
}

/* Discount badge */
.zpn-pc-disc{
  position:absolute;top:10px;left:10px;z-index:3;
  background:linear-gradient(135deg,#2563EB,#3B82F6);
  color:#fff;font-size:12px;font-weight:700;
  padding:4px 9px;border-radius:8px;
  box-shadow:0 4px 10px rgba(37,99,235,.35);
}
/* Hide WooCommerce's default "Sale!" flash, we use our own */
ul.products li.product .onsale{ display:none !important; }

/* Wishlist heart */
.zpn-pc-wish{
  position:absolute;top:10px;right:10px;z-index:3;
  width:34px;height:34px;border:none;cursor:pointer;border-radius:50%;
  background:rgba(255,255,255,.92);color:var(--zpn-blue);font-size:17px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 2px 6px rgba(0,0,0,.12);transition:.2s;
}
.zpn-pc-wish:hover{background:var(--zpn-blue);color:#fff;transform:scale(1.1);}

/* Body */
.zpn-pc-body{
  padding:14px;display:flex;flex-direction:column;gap:6px;flex:1;
}

/* Vendor + verified */
.zpn-pc-vendor{display:flex;align-items:center;gap:5px;margin-bottom:2px;}
.zpn-pc-vname{font-size:12px;font-weight:600;color:var(--zpn-grey);}
.zpn-pc-verified{
  width:15px;height:15px;border-radius:50%;background:var(--zpn-blue);
  color:#fff;font-size:9px;line-height:1;display:grid;place-items:center;font-weight:bold;
}

/* Product title */
ul.products li.product .zpn-pc-body .woocommerce-loop-product__title{
  font-size:14px !important;font-weight:600 !important;color:var(--zpn-ink) !important;
  line-height:1.35 !important;margin:0 !important;padding:0 !important;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;min-height:38px;
}

/* Rating stars (WooCommerce default star block) */
.zpn-pc-body .star-rating{font-size:13px !important;color:var(--zpn-star) !important;margin:2px 0 !important;}

/* Price */
ul.products li.product .zpn-pc-body .price{
  color:var(--zpn-ink) !important;font-weight:800 !important;font-size:16px !important;
  margin:2px 0 !important;
}
ul.products li.product .zpn-pc-body .price del{
  color:var(--zpn-grey) !important;font-weight:400 !important;font-size:13px !important;opacity:1 !important;
}
ul.products li.product .zpn-pc-body .price ins{text-decoration:none !important;}

/* Add to cart button */
ul.products li.product .zpn-pc-body .button,
ul.products li.product .zpn-pc-body a.add_to_cart_button{
  margin-top:auto !important;width:100% !important;text-align:center !important;
  background:var(--zpn-blue) !important;color:#fff !important;border:none !important;
  font-weight:700 !important;font-size:14px !important;
  padding:10px 0 !important;border-radius:10px !important;
  transition:.2s !important;
}
ul.products li.product .zpn-pc-body .button:hover,
ul.products li.product .zpn-pc-body a.add_to_cart_button:hover{
  background:var(--zpn-blue-dark) !important;
  box-shadow:0 6px 16px rgba(37,99,235,.35) !important;
}
.zpn-pc-body .added_to_cart{
  display:block;text-align:center;margin-top:6px;font-size:12px;color:var(--zpn-blue);
}

/* Mobile: 2 columns */
@media(max-width:768px){
  ul.products li.product .zpn-pc-body{padding:11px;}
  ul.products li.product .zpn-pc-body .woocommerce-loop-product__title{font-size:13px !important;min-height:36px;}
  ul.products li.product .zpn-pc-body .price{font-size:14px !important;}
}
