/* Autodetail Child - Shop & Product Archive base styles (LIGHT theme) */

:root {
  /* Surfaces */
  --ad-surface: #f7f8fa;
  --ad-surface-2: #ffffff;
  --ad-surface-3: #f2f4f7;
  --ad-border: #e6e9ee;
  --ad-border-2: #d9dee7;
  /* Typography */
  --ad-text: #0b0d12;
  --ad-text-2: #2b2f38;
  --ad-text-3: #667085;
  --ad-link: #2463eb;
  --ad-link-hover: #1749b3;
  /* Accents */
  --ad-accent: #ff671d;
  --ad-accent-2: #ff8142;
}

/* Scope to product archive (Shop and categories) */
body.post-type-archive-product,
body.tax-product_cat {
  background-color: var(--ad-surface);
  color: var(--ad-text-2);
}

/* Archive header */
.ad-shop-archive__header {
  max-width: 1280px;
  margin: 24px auto 8px;
  padding: 0 16px;
}
.ad-shop-archive__title {
  color: var(--ad-text);
  font-size: 28px;
  font-weight: 700;
  letter-spacing: -0.2px;
  margin: 0 0 4px;
}
.woocommerce-products-header__description,
.term-description { color: var(--ad-text-3); }

/* Toolbars */
.ad-shop-archive__toolbar {
  max-width: 1280px;
  margin: 8px auto;
  padding: 8px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}
.ad-shop-archive__toolbar--before { border-bottom: 1px solid var(--ad-border); padding-bottom: 12px; }
.ad-shop-archive__toolbar--after { border-top: 1px solid var(--ad-border); padding-top: 12px; }

/* Grid area */
.woocommerce .products {
  max-width: 1280px;
  margin: 12px auto 24px;
  padding: 0 16px;
}

/* Product card baseline */
/* Product card layout: image on top, content area with clean spacing */
.woocommerce ul.products li.product {
  position: relative;
  background: var(--ad-surface-2);
  border: 1px solid var(--ad-border);
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .14s ease, box-shadow .2s ease, border-color .2s ease;
  color: #111827; /* default text color inside card */
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(16,24,40,0.08);
  border-color: var(--ad-border-2);
}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
  display: block;
}
.woocommerce ul.products li.product a img {
  width: 100%;
  height: auto;
  display: block;
}
/* Keep image area at a stable ratio for consistent card heights */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
  aspect-ratio: 1 / 1; /* keep square ratio as requested */
  overflow: hidden;
  border-bottom: 1px solid var(--ad-border);
  background: #fff; /* inner white background */
  padding: 10px; /* safe area */
  box-sizing: border-box;
}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link img {
  width: 100%;
  height: 100%;
  object-fit: contain; /* fit inside while preserving white margin */
}
/* Title & price colors with higher specificity */
body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.post-type-archive-product .woocommerce ul.products li.product h2.woocommerce-loop-product__title,
body.tax-product_cat .woocommerce ul.products li.product h2.woocommerce-loop-product__title,
body.post-type-archive-product .woocommerce ul.products li.product .product-title,
body.tax-product_cat .woocommerce ul.products li.product .product-title {
  color: #111827 !important;
  font-size: 16px !important;
  font-weight: 600;
  line-height: 1.35 !important;
  margin: 6px 0 4px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  line-clamp: 3; /* standard property for wider compatibility */
  overflow: hidden;
  /* Reserve fixed height for 3 lines (~16px * 1.35 * 3 ≈ 64.8px) */
  height: 66px;
}

/* Hard enforcement for our custom card when other global rules override */
body.post-type-archive-product .woocommerce ul.products li.product.ad-card h2.woocommerce-loop-product__title,
body.tax-product_cat .woocommerce ul.products li.product.ad-card h2.woocommerce-loop-product__title {
  font-size: 16px !important;
  line-height: 1.35 !important;
  height: 66px !important;
}
body.post-type-archive-product .woocommerce ul.products li.product.ad-card .ad-card__title-link,
body.tax-product_cat .woocommerce ul.products li.product.ad-card .ad-card__title-link {
  font-size: 16px !important;
  line-height: 1.35 !important;
}
body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title a,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title a {
  color: #111827 !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
}
/* Force any anchor inside product title wrappers to stay black */
body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title a:link,
body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title a:visited,
body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title a:active,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title a:link,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title a:visited,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title a:active {
  color: #111827 !important;
}
/* Prevent theme from recoloring titles on hover */
body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title a:hover,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title a:hover,
body.post-type-archive-product .woocommerce ul.products li.product .product-title a:hover,
body.tax-product_cat .woocommerce ul.products li.product .product-title a:hover {
  color: #111827 !important;
  text-decoration: none;
}
body.post-type-archive-product .woocommerce ul.products li.product .price,
body.tax-product_cat .woocommerce ul.products li.product .price,
body.post-type-archive-product .woocommerce ul.products li.product .price ins,
body.tax-product_cat .woocommerce ul.products li.product .price ins,
body.post-type-archive-product .woocommerce ul.products li.product .price .woocommerce-Price-amount,
body.tax-product_cat .woocommerce ul.products li.product .price .woocommerce-Price-amount {
  color: #111827 !important;
  font-weight: 700;
}
/* Catch all nested price children */
body.post-type-archive-product .woocommerce ul.products li.product .price *,
body.tax-product_cat .woocommerce ul.products li.product .price * {
  color: #111827 !important;
}
/* Price layout: original (del) above, sale/current (ins) emphasized */
.woocommerce ul.products li.product .ad-card__meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 6px 0 0; }
.woocommerce ul.products li.product .price { display: block; margin: 4px 0 8px; }
.woocommerce ul.products li.product .price del {
  display: inline-block;
  margin-right: 6px;
  font-weight: 400 !important;
}
.woocommerce ul.products li.product .price ins {
  text-decoration: none;
}

/* Custom badge placed on the right side of price row */
.woocommerce ul.products li.product .ad-badge { 
  background: #ff671d; 
  color: #fff; 
  padding: 2px 8px; 
  font-size: 12px; 
  font-weight: 700; 
  border-radius: 0; /* no rounded corners */
  line-height: 1.2;
  white-space: nowrap;
}
/* Ensure on hover or focus states price stays black */
body.post-type-archive-product .woocommerce ul.products li.product .price:hover,
body.tax-product_cat .woocommerce ul.products li.product .price:hover,
body.post-type-archive-product .woocommerce ul.products li.product .price ins:hover,
body.tax-product_cat .woocommerce ul.products li.product .price ins:hover {
  color: #111827 !important;
}

/* In our custom template, force non-button links inside card body to black */
.woocommerce ul.products li.product .ad-card__body a:not(.button) {
  color: #111827 !important;
}
/* Body padding for clean breathing room */
.woocommerce ul.products li.product .ad-card__body {
  padding: 10px 12px 12px;
  display: flex;
  flex-direction: column;
  height: 100%;
}
/* Explicitly fix the title link color across all states */
.woocommerce ul.products li.product .ad-card__title-link,
.woocommerce ul.products li.product .ad-card__title-link:link,
.woocommerce ul.products li.product .ad-card__title-link:visited,
.woocommerce ul.products li.product .ad-card__title-link:hover,
.woocommerce ul.products li.product .ad-card__title-link:active,
.woocommerce ul.products li.product .ad-card__title-link:focus {
  color: #111827 !important;
  text-decoration: none !important;
}
body.post-type-archive-product .woocommerce ul.products li.product .price del,
body.tax-product_cat .woocommerce ul.products li.product .price del {
  color: #98a2b3 !important;
}

/* Content spacing */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .star-rating,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce ul.products li.product .tinvwl_add_to_wishlist_button,
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist,
.woocommerce ul.products li.product .woosq-btn,
.woocommerce ul.products li.product .woosc-btn {
  margin-left: 16px;
  margin-right: 16px;
}

/* Primary add-to-cart button (brand color, no rounded corners) */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.added_to_cart {
  background: #ff671d;
  color: #fff !important;
  border: 0;
  border-radius: 0;
  padding: 10px 14px;
  width: calc(100% - 32px);
  text-align: center;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.added_to_cart:hover {
  background: #e65c19;
}
/* Space above button to detach from text */
.woocommerce ul.products li.product .ad-card__cta { margin-top: auto; }
.woocommerce ul.products li.product .ad-card__cta .button { margin-top: 10px; }

/* Secondary actions row: Quick View / Wishlist / Compare */
.ad-card-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: 10px 16px 14px;
}
.ad-card-actions a,
.ad-card-actions button,
.woocommerce ul.products li.product .woosq-btn,
.woocommerce ul.products li.product .woosc-btn,
.woocommerce ul.products li.product .tinvwl_add_to_wishlist_button,
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist a {
  background: var(--ad-surface-3);
  border: 1px solid var(--ad-border);
  color: var(--ad-text-3);
  border-radius: 8px;
  padding: 8px 10px;
  line-height: 1.2;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.ad-card-actions a:hover,
.ad-card-actions button:hover,
.woocommerce ul.products li.product .woosq-btn:hover,
.woocommerce ul.products li.product .woosc-btn:hover,
.woocommerce ul.products li.product .tinvwl_add_to_wishlist_button:hover,
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist a:hover {
  background: #eef2f7;
  border-color: var(--ad-border-2);
  color: #1f2937;
}

/* Remove noisy texts like "Browse wishlist" fallback links */
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist .feedback,
.woocommerce ul.products li.product .yith-wcwl-wishlistexistsbrowse,
.woocommerce ul.products li.product .yith-wcwl-wishlistaddedbrowse {
  display: none !important;
}

/* Hide Quick View, Compare, and Add to Wishlist buttons entirely */
.woocommerce ul.products li.product .woosq-btn, /* WPC Smart Quick View */
.woocommerce ul.products li.product .woosc-btn, /* WPC Smart Compare */
.woocommerce ul.products li.product a.compare,
.woocommerce ul.products li.product .compare,
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist,
.woocommerce ul.products li.product .tinvwl_add_to_wishlist_button,
.woocommerce ul.products li.product .tinvwl_add_to_wishlist,
.woocommerce ul.products li.product .tinv-wrap,
.woocommerce ul.products li.product .tinvwl-tooltip,
/* YITH Quick View */
.woocommerce ul.products li.product .yith-wcqv-button,
/* XT Woo Quick View */
.woocommerce ul.products li.product .xt_wooqv-button,
/* Generic quick-view classes */
.woocommerce ul.products li.product .quick-view,
.woocommerce ul.products li.product [class*="quick-view"],
/* Sometimes plugins append outside common wrappers */
body.post-type-archive-product .woosq-btn,
body.tax-product_cat .woosq-btn,
/* Additional fallbacks: */
body.post-type-archive-product a.woosq-btn,
body.tax-product_cat a.woosq-btn,
body.post-type-archive-product [class*="woosq"],
body.tax-product_cat [class*="woosq"],
body.post-type-archive-product [class*="quickview"],
body.tax-product_cat [class*="quickview"],
body.post-type-archive-product [data-quick-view],
body.tax-product_cat [data-quick-view] {
  display: none !important;
}

/* If an actions row exists, remove it to avoid empty space */
.ad-card-actions { display: none !important; }

/* Pagination */
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  background: var(--ad-surface-2);
  border: 1px solid var(--ad-border);
  color: var(--ad-text-2);
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover {
  background: var(--ad-surface-3);
  color: var(--ad-link);
  border-color: var(--ad-border-2);
}

/* Links (do NOT override product card titles)
   Scope link colors to toolbars/header/pagination only */
.ad-shop-archive__header a { color: var(--ad-link); }
.ad-shop-archive__header a:hover { color: var(--ad-link-hover); }
.ad-shop-archive__toolbar a { color: var(--ad-link); }
.ad-shop-archive__toolbar a:hover { color: var(--ad-link-hover); }
.woocommerce nav.woocommerce-pagination a { color: var(--ad-link); }
.woocommerce nav.woocommerce-pagination a:hover { color: var(--ad-link-hover); }

/* WooCommerce ordering dropdown: white background, black text */
.woocommerce .woocommerce-ordering select.orderby,
body.post-type-archive-product .woocommerce .woocommerce-ordering select,
body.tax-product_cat .woocommerce .woocommerce-ordering select {
  background: #ffffff !important;
  color: #111827 !important;
  border: 1px solid var(--ad-border);
  border-radius: 6px;
  padding: 8px 12px;
  height: auto;
}
.woocommerce .woocommerce-ordering select.orderby:focus,
.woocommerce .woocommerce-ordering select.orderby:hover {
  border-color: var(--ad-border-2);
  outline: none;
  box-shadow: 0 0 0 3px rgba(17,24,39,0.06);
}

/* Responsive tweaks */
@media (max-width: 768px) {
  .ad-shop-archive__toolbar { flex-wrap: wrap; }
}

/* Hide default top-right badges inside image area; we will show our own badge near price */
.woocommerce ul.products li.product .onsale,
.woocommerce ul.products li.product .yith-wcbm-badge,
.woocommerce ul.products li.product .wpc-badge,
.woocommerce ul.products li.product .percentage-badge,
.woocommerce ul.products li.product .badge-inner { display: none !important; }
