/* Tarjetas completas en escritorio; extremos suaves sólo si quedan productos por explorar. */
/* Paleta "B - Esquina suave" (2026-09-11): flechas en petróleo, botones 8px. */
/* Relieve mate "E" (2026-09-11): los tokens --cgp-relief-* viven en calculator.css. */
.cgp-products-section .cgp-row-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.cgp-products-section .cgp-row-heading .cgp-category-title{margin:0;min-width:0}
.cgp-row-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}
.cgp-row-controls[hidden]{display:none}
.cgp-row-controls [data-row-status]{font-size:12px;color:var(--cgp-text-soft,#5b6b7a);font-variant-numeric:tabular-nums;white-space:nowrap;margin-right:4px}
.cgp-row-controls button{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid rgba(21,45,60,.3);border-radius:50%;background:#fff;color:var(--cgp-ink,#152d3c);line-height:1;cursor:pointer;touch-action:manipulation;box-shadow:none}
.cgp-row-controls button svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cgp-row-controls button:hover:not(:disabled){border-color:var(--cgp-dark,#152d3c);background:var(--cgp-dark,#152d3c);color:#fff}
.cgp-row-controls button:disabled{background:var(--cgp-chip-bg,#eef2f7);border-color:var(--cgp-line,#e2e8ee);color:var(--cgp-text-soft,#5b6b7a);cursor:default}
.cgp-row-meta{display:grid;gap:2px;text-align:right}
.cgp-row-meta small{font-size:11px;color:var(--cgp-text-soft,#5b6b7a);line-height:1.3}
.cgp-row-controls[data-invite=true] [data-row-next]:not(:disabled){animation:cgp-arrow-invite 1s ease-in-out 3}
/* Señal breve, en el petróleo de la paleta, para mostrar que hay más productos. */
@keyframes cgp-arrow-invite{50%{box-shadow:0 0 0 5px rgba(21,45,60,.16)}}
@media(prefers-reduced-motion:reduce){.cgp-row-controls button{animation:none!important;transition:none!important}}
.cgp-row-controls button:focus-visible,.cgp-product-row:focus-visible{outline:2px solid var(--cgp-teal,#087b90);outline-offset:3px}
.cgp-products-section .cgp-category-grid.cgp-product-row{position:relative;display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);gap:16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#c3cfda transparent;padding:3px 3px 14px;max-width:100%;min-width:0;--edge-before:0px;--edge-after:0px;mask-image:linear-gradient(to right,transparent,#000 var(--edge-before),#000 calc(100% - var(--edge-after)),transparent)}
.cgp-product-row[data-more-before=true]{--edge-before:18px!important}
.cgp-product-row[data-more-after=true]{--edge-after:18px!important}
.cgp-products-section .cgp-product-row .cgp-product-card{scroll-snap-align:start;display:flex;flex-direction:column;min-width:0;height:auto;animation:none}
.cgp-products-section .cgp-product-row .cgp-product-info{flex:1}
.cgp-product-row::-webkit-scrollbar{height:6px}
.cgp-product-row::-webkit-scrollbar-thumb{background:#c3cfda;border-radius:var(--cgp-radius-btn,8px)}
/* WooCommerce inserta este enlace junto a Agregar: ambos comparten geometría. */
/* Reservar la franja de herramientas fuera del borde hover/foco de la foto. */
@container cgp-products (min-width:581px){.cgp-products-section .cgp-product-row .cgp-product-image{height:210px;padding-top:56px}}
#cgp-wrapper .cgp-product-card>.cgp-add-to-cart,#cgp-wrapper .cgp-product-card>.added_to_cart{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:calc(100% - 28px);margin:0 14px 14px;min-height:44px;padding:10px 14px;border:0;border-radius:var(--cgp-radius-btn,8px);font-family:inherit;font-size:.92rem;font-weight:700;line-height:24px;text-align:center}
/* Relieve mate "E" (2026-09-11): mismo lenguaje que "Agregar", en su carmín. */
#cgp-wrapper .cgp-product-card>.added_to_cart{background-color:var(--cgp-primary,#bd3548);background-image:var(--cgp-relief-primary,none);box-shadow:var(--cgp-relief-inset-primary,none);color:#fff;text-decoration:none;transition:background .18s ease,box-shadow .18s ease,transform .12s ease}
#cgp-wrapper .cgp-product-card>.added_to_cart:hover{background-image:none;background-color:var(--cgp-primary-dark,#a72b3d);color:#fff}
#cgp-wrapper .cgp-product-card>.added_to_cart:active{background-image:none;background-color:var(--cgp-primary-press,#952a3a);transform:var(--cgp-relief-press,scale(.985))}
#cgp-wrapper .cgp-product-card>.added_to_cart:focus-visible{outline:2px solid var(--cgp-dark,#152d3c);outline-offset:3px}
@container cgp-products (min-width:581px) and (max-width:850px){.cgp-products-section .cgp-category-grid.cgp-product-row{grid-auto-columns:calc((100% - 32px)/3)}}
@container cgp-products (max-width:580px){
  .cgp-products-section .cgp-row-heading{align-items:flex-start;flex-wrap:wrap;gap:8px}
  .cgp-row-controls{margin-left:auto;gap:8px}.cgp-row-meta small{font-size:11px}
  .cgp-products-section .cgp-category-grid.cgp-product-row{grid-auto-columns:calc((100% - 10px)/2);gap:10px}
  .cgp-products-section .cgp-product-row .cgp-product-image{height:clamp(180px,48cqi,230px);margin:0;padding:80px 8px 8px;width:100%;box-sizing:border-box}
  .cgp-products-section .cgp-product-row .cgp-card-tools{inset:8px 6px auto;flex-direction:column;gap:0;align-items:flex-start}
  .cgp-products-section .cgp-product-row .cgp-card-tools [data-preview-open]{padding:4px 0;gap:4px;max-width:100%;text-align:left}
  .cgp-products-section .cgp-product-row .cgp-stock-badge{top:8px;right:12px;bottom:auto;left:auto}
  .cgp-products-section .cgp-product-row .cgp-product-info{padding:8px 8px 0}
  .cgp-products-section .cgp-product-row .cgp-product-info h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;font-size:14px;line-height:1.4}
  .cgp-products-section .cgp-product-row .cgp-fit-badge{font-size:11px;padding:4px;min-height:39px;display:flex;align-items:center}
  .cgp-products-section .cgp-product-row .cgp-product-footer{padding:10px 8px}
  #cgp-wrapper .cgp-product-row .cgp-product-card>.cgp-add-to-cart,
  #cgp-wrapper .cgp-product-row .cgp-product-card>.added_to_cart{width:calc(100% - 16px);margin:0 8px 8px;padding:8px 4px;font-size:13px;gap:4px}
}
