/* ============================================================================
   COAGRO — Woo Category (Repuestos & Subcategorías)
   Grid premium + tarjetas modernas + botones centrados y compactos.
   ========================================================================== */

/* ===== BASE ===== */
body.tax-product_cat { background:#f6f8fb; }
.tax-product_cat, .tax-product_cat * { font-family:'Montserrat',sans-serif !important; }

/* Contenedores del theme (por si existen) */
.container{ max-width:1240px; margin:0 auto; padding:0 28px; }
body.tax-product_cat .site-main,
body.tax-product_cat .content-area { padding-left:24px; padding-right:24px; }

/* Barra superior (contador + orden) */
.catalog-wrap{ padding:8px 0 28px; }
.catalog-top{ display:flex; gap:12px; align-items:center; margin:6px 0 18px; }
.tax-product_cat .woocommerce-result_count{ margin:0; color:#64748b; font-size:14px; }
.tax-product_cat form.woocommerce-ordering{ margin-left:auto; }
.tax-product_cat .woocommerce-ordering .orderby{
  appearance:none; padding:10px 36px 10px 12px; border-radius:12px; border:1px solid #e5e7eb;
  background:#fff url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.25 7.5L10 12.25L14.75 7.5' stroke='%236b7280' stroke-width='1.8' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 10px center/16px;
  font-weight:700; color:#111827;
}

/* ===== GRID (aire lateral real) ===== */
.tax-product_cat ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:32px !important;

  /* aire lateral responsivo */
  margin-left:clamp(1.5rem,6vw,5rem) !important;
  margin-right:clamp(1.5rem,6vw,5rem) !important;
  margin-top:20px !important;
  margin-bottom:0 !important;

  padding:0 !important;
}
@media (max-width:1120px){ .tax-product_cat ul.products{ grid-template-columns:repeat(3,1fr);} }
@media (max-width:820px){  .tax-product_cat ul.products{ grid-template-columns:repeat(2,1fr);} }
@media (max-width:520px){
  .tax-product_cat ul.products{
    grid-template-columns:1fr;
    gap:22px !important;
    margin:16px !important; /* aire global en mobile */
  }
}

/* ===== TARJETA PREMIUM (si usas .card-product en tu loop) ===== */
.card-product{
  list-style:none; background:#fff; border-radius:18px; border:1px solid #e6ebf2;
  box-shadow:0 8px 22px rgba(16,24,40,.06);
  padding:22px 22px 26px; position:relative; overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.card-product:hover{ transform:translateY(-4px); box-shadow:0 14px 32px rgba(16,24,40,.10); border-color:#dde4ee; }

/* Badge pill */
.card-product::before{
  content:attr(data-badge);
  position:absolute; top:10px; left:10px; z-index:2;
  background:#10b981; color:#fff; font-weight:900; font-size:12px;
  padding:6px 12px; border-radius:999px; letter-spacing:.2px;
  box-shadow:0 6px 16px rgba(16,185,129,.18);
}

/* Media */
.card-product__media{
  height:190px; border-radius:2px; margin-bottom:18px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(180deg,#f8fafc,#eef4fb); overflow:hidden; position:relative;
}
@media (max-width:520px){ .card-product__media{ height:180px; } }
.card-product__media img{
  max-width:90%; max-height:90%; width:auto; height:auto; object-fit:contain;
  transition:transform .22s ease; filter:drop-shadow(0 6px 12px rgba(0,0,0,.07));
}
.card-product:hover .card-product__media img{ transform:scale(1.035); }

/* Textos */
.card-product__title{
  font-size:15px; font-weight:800; color:#0f172a;
  margin:0px 10px 0px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  min-height:42px;
}
.card-product__price .price{ display:block; margin:0 2px 16px; color:#0284c7; font-weight:800; font-size:18px; }

/* CTAs */
.card-product__cta{
  display:flex !important; justify-content:center !important; align-items:center;
  margin-top:12px; padding-top:14px; padding-bottom:12px; border-top:1px solid #edf1f6; gap:12px;
}

/* Botón Añadir (compacto y centrado) */
a.button.add_to_cart_button{
  display:inline-flex; align-items:center; justify-content:center; gap:2px;
  min-width:42px; padding:10px 14px; border-radius:10px; border:0;
  color:#fff !important; font-weight:800; line-height:1.1; font-size:14px;
  background: linear-gradient(180deg, #011877, #011877);
  transition:filter .2s ease, transform .05s ease;
}
a.button.add_to_cart_button:hover{ filter:brightness(1.06); }
a.button.add_to_cart_button:active{ transform:scale(.985); }
a.button.add_to_cart_button::before{
  content:""; width:14px; height:25px; display:inline-block; flex:0 0 20px;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'><path d='M7 4h-2l-1 2h2l3.6 7.59-1.35 2.44c-.16.28-.25.61-.25.97 0 1.1.9 2 2 2h10v-2H10.42c-.14 0-.25-.11-.25-.25l.03-.12L11 14h6.55c.76 0 1.43-.43 1.77-1.09l3.58-6.49A1 1 0 0 0 22 5H7zM7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zm10 0c-1.1 0-1.99.9-1.99 2S15.9 22 17 22s2-.9 2-2-.9-2-2-2z'/></svg>") center/contain no-repeat;
}

/* Ghost */
.btn.btn--ghost, .card-product__cta .btn--ghost{
    width: 35%;
    display: inline-flex;
    align-items: center;
    gap: 1px;
    padding: 20px 5px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #dbe2ec;
    color: #0f172a;
    font-weight: 700;
    line-height: 1.1;
    font-size: 14px;     
    white-space: nowrap;
}
.card-product__cta .btn--ghost::after{ content:"›"; font-size:18px; line-height:1; opacity:.75; }
.card-product__cta .btn--ghost:hover{ background:#f8fafc; }

/* Paginación */
.tax-product_cat .woocommerce-pagination .page-numbers{
  display:flex; gap:10px; justify-content:center; padding:0; margin:22px 0 0;
}
.tax-product_cat .woocommerce-pagination .page-numbers li{ list-style:none; }
.tax-product_cat .woocommerce-pagination .page-numbers a,
.tax-product_cat .woocommerce-pagination .page-numbers span{
  min-width:38px; height:38px; display:inline-flex; align-items:center; justify-content:center;
  padding:0 10px; border-radius:12px; background:#eef3f8; color:#0f172a; font-weight:800;
}
.tax-product_cat .woocommerce-pagination .page-numbers .current{ background:#0ea5e9; color:#fff; }

/* Hotfix: algunos themes posicionan botones absolute */
.tax-product_cat ul.products li.product a.button,
.tax-product_cat ul.products li.product a.added_to_cart,
.tax-product_cat ul.products li.product .added_to_cart{
  position:static !important; inset:auto !important; transform:none !important; opacity:1 !important; display:inline-flex !important;
}

/* Hover media sutil */
.card-product:hover .card-product__media{ box-shadow:inset 0 0 0 1px rgba(14,165,233,.06); }

/* Chips (SKU/Marca) opcional */
.co-vt-chips,.card-chips{ display:flex; flex-wrap:wrap; gap:8px; margin:6px 0 8px; }
.co-vt-chip,.card-chip{ font-size:12px; font-weight:700; color:#0f172a; background:#eef3f8; border:1px solid #e5e7eb; padding:6px 10px; border-radius:999px; }
.co-vt-chip.ghost,.card-chip.ghost{ background:#fff; border:1px dashed #d6dee9; color:#475569; }

/* ===== OVERRIDES ROBUSTOS PARA EL LOOP NATIVO DE WOO ===== */
/* Tarjeta base del loop nativo (li.product) */
body.tax-product_cat .woocommerce ul.products li.product{
  background:#fff !important; border:1px solid #e6ebf2 !important; border-radius:18px !important;
  box-shadow:0 8px 22px rgba(16,24,40,.07) !important;
  padding:18px 18px 22px !important; overflow:hidden !important; display:flex !important; flex-direction:column !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
body.tax-product_cat .woocommerce ul.products li.product:hover{
  transform:translateY(-3px) !important; box-shadow:0 14px 28px rgba(16,24,40,.1) !important; border-color:#dde4ee !important;
}

/* Media nativa (a.woocommerce-LoopProduct-link) */
body.tax-product_cat .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  display:flex !important; align-items:center !important; justify-content:center !important;
  height:180px !important; margin:0 0 12px !important; border-radius:14px !important;
  background:linear-gradient(180deg,#f8fafc,#eef4fb) !important; overflow:hidden !important;
}
@media (max-width:520px){
  body.tax-product_cat .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{ height:170px !important; }
}
body.tax-product_cat .woocommerce ul.products li.product a.woocommerce-LoopProduct-link img{
  max-width:90% !important; max-height:90% !important; width:auto !important; height:auto !important; object-fit:contain !important;
  transition:transform .22s ease !important; filter:drop-shadow(0 6px 12px rgba(0,0,0,.07)) !important;
}
body.tax-product_cat .woocommerce ul.products li.product:hover a.woocommerce-LoopProduct-link img{ transform:scale(1.035) !important; }

/* Título + precio nativos */
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:'Montserrat',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif !important;
  font-weight:800 !important; font-size:14.5px !important; line-height:1.25 !important; color:#0f172a !important;
  margin:8px 2px 8px !important; min-height:40px !important;
  display:-webkit-box !important; -webkit-line-clamp:2 !important; -webkit-box-orient:vertical !important; overflow:hidden !important;
}
body.tax-product_cat .woocommerce ul.products li.product .price{
  	font-size: 2rem;
  font-weight: 800;
  background: linear-gradient(90deg, #8a2be2, #ff00ff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-top: 0.5rem;
  margin-bottom: 0.3rem;
  letter-spacing: 0.5px;
}

/* Botones nativos centrados y compactos */
body.tax-product_cat .woocommerce ul.products li.product a.button,
body.tax-product_cat .woocommerce ul.products li.product a.added_to_cart{
  position:static !important; inset:auto !important; transform:none !important; opacity:1 !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:8px !important;
  min-width:42px !important; padding:10px 14px !important; margin:0 auto !important; /* CENTRADO */
  border-radius:10px !important; border:0 !important; white-space:nowrap !important; line-height:1.1 !important; font-weight:800 !important;
  color:#fff !important; background:linear-gradient(180deg,#1fb6ff,#0ea5e9) !important; box-shadow:0 8px 18px rgba(14,165,233,.28) !important;
}
body.tax-product_cat .woocommerce ul.products li.product a.button:hover{ filter:brightness(1.06) !important; }
body.tax-product_cat .woocommerce ul.products li.product a.button:active{ transform:scale(.985) !important; }
body.tax-product_cat .woocommerce ul.products li.product a.button.add_to_cart_button::before,
body.tax-product_cat .woocommerce ul.products li.product a.added_to_cart::before{
  content:"" !important; width:14px !important; height:14px !important; display:inline-block !important; flex:0 0 14px !important;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'><path d='M7 4h-2l-1 2h2l3.6 7.59-1.35 2.44c-.16.28-.25.61-.25.97 0 1.1.9 2 2 2h10v-2H10.42c-.14 0-.25-.11-.25-.25l.03-.12L11 14h6.55c.76 0 1.43-.43 1.77-1.09l3.58-6.49A1 1 0 0 0 22 5H7zM7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zm10 0c-1.1 0-1.99.9-1.99 2S15.9 22 17 22s2-.9 2-2-.9-2-2-2z'/></svg>") center/contain no-repeat !important;
}

/* ===== ÚLTIMO FALLO DE SEGURIDAD: aire lateral contra reglas del theme ===== */
body.tax-product_cat .woocommerce .products ul,
body.tax-product_cat .woocommerce ul.products{
  margin-left:clamp(1.5rem,6vw,5rem) !important;
  margin-right:clamp(1.5rem,6vw,5rem) !important;
  padding-left:0 !important; padding-right:0 !important;
  column-gap:32px !important; row-gap:32px !important;
}

/* ===== Carrusel "Lo más vendido" + "Vistos" ===== */
.co-top-sellers,.co-recent{margin:10px clamp(1.5rem,6vw,5rem) 24px}
.co-top-sellers header h3,.co-recent header h3{font:800 20px/1.2 'Montserrat',sans-serif;color:#0f172a;margin:0 0 10px}
.co-ts-wrap{position:relative}
.co-ts{display:flex;gap:16px;overflow:auto;scroll-snap-type:x mandatory;padding:8px 44px}
.co-ts::-webkit-scrollbar{height:8px}
.co-ts::-webkit-scrollbar-thumb{background:#e6ebf2;border-radius:8px}
.co-ts-item{min-width:220px;scroll-snap-align:start;background:#fff;border:1px solid #e6ebf2;border-radius:14px;padding:12px;box-shadow:0 6px 16px rgba(16,24,40,.06)}
.co-ts-thumb{display:block;height:140px;border-radius:12px;background:linear-gradient(180deg,#f8fafc,#eef4fb);display:flex;align-items:center;justify-content:center;overflow:hidden}
.co-ts-thumb img{max-width:90%;max-height:90%;object-fit:contain}
.co-ts-title{display:block;margin:8px 0 6px;font:800 14px/1.25 'Montserrat',sans-serif;color:#0f172a}
.co-ts-price{font:800 16px 'Montserrat',sans-serif;color:#0284c7}
.co-ts-nav{position:absolute;top:50%;transform:translateY(-50%);border:0;background:#fff;border:1px solid #e6ebf2;width:36px;height:36px;border-radius:999px;box-shadow:0 8px 18px rgba(0,0,0,.06);cursor:pointer}
.co-ts-nav.prev{left:0} .co-ts-nav.next{right:0}


.woocommerce .products ul, .woocommerce ul.products {
	    margin: 0 2rem 1rem;
    padding: 0;
    list-style: none outside;
    clear: both;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) ul.products li.product .price {
  font-size: 1.1rem;
  font-weight: 700;
  background: linear-gradient(90deg, #011877, #011877);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-top: 0.5rem;
  margin-bottom: 0.3rem;
  letter-spacing: 0.5px;
  margin: 0px 15px 0px;
}

.woocommerce .woocommerce-result-count{
	margin: 0 3em 1em;
}

.term-description{
	font-weight: 700;
    margin: 1em 3em 0em;
}