/* ==========================================================================
   PRIDO Grilla — Estilos desacoplados de css-maestro.css
   Tienda / Categoría / Subcategoría
   ========================================================================== */

/* --- Clase reutilizable Liquid Glass --- */
.prido-glass-ui {
    background: var(--prido-grid-chip, var(--prido-glass-chip));
    -webkit-backdrop-filter: var(--prido-glass-backdrop);
    backdrop-filter: var(--prido-glass-backdrop);
    border: 1px solid var(--prido-grid-border, var(--prido-glass-border));
    box-shadow: var(--prido-grid-shadow, var(--prido-glass-shadow-soft));
    color: var(--prido-dark);
    transition: transform 0.22s ease, background 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, color 0.22s ease;
}
.prido-glass-ui:hover {
    background: var(--prido-grid-chip-hover, var(--prido-glass-chip-hover));
    color: var(--prido-dark);
    border-color: var(--prido-grid-border-strong, var(--prido-glass-accent-border));
    box-shadow: var(--prido-grid-shadow, var(--prido-glass-shadow-soft));
}

/* --- Wrapper principal --- */
.prido-grilla-wrapper {
    --prido-dark: var(--prido-theme-ink);
    --prido-muted: var(--prido-theme-muted);
    --prido-border-light: var(--prido-theme-border);
    --prido-bg-tint: var(--prido-theme-surface-alt);
    --prido-grid-surface: var(--prido-glass-shell);
    --prido-grid-surface-soft: var(--prido-glass-shell-soft);
    --prido-grid-border: var(--prido-glass-border);
    --prido-grid-border-strong: var(--prido-glass-accent-border);
    --prido-grid-shadow: var(--prido-glass-shadow-soft);
    --prido-grid-shadow-strong: var(--prido-glass-shadow);
    --prido-grid-chip: var(--prido-glass-chip);
    --prido-grid-chip-hover: var(--prido-glass-chip-hover);
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

/* --- Breadcrumbs --- */
.prido-grilla-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    width: fit-content;
    max-width: 100%;
    padding: 10px 16px;
    margin: 0 0 18px;
    font-size: var(--prido-type-small);
    line-height: 1.45;
    color: var(--prido-muted);
    background: var(--prido-grid-chip);
    border: 1px solid var(--prido-grid-border);
    border-radius: 999px;
    box-shadow: var(--prido-grid-shadow);
    backdrop-filter: blur(14px) saturate(135%);
    -webkit-backdrop-filter: blur(14px) saturate(135%);
}
.prido-grilla-breadcrumbs a {
    color: var(--prido-muted);
    text-decoration: none;
    transition: color .25s ease;
}
.prido-grilla-breadcrumbs a:hover {
    color: var(--prido-teal);
}
.prido-bc-sep {
    color: var(--prido-border-light);
    font-size: 11px;
    user-select: none;
}
.prido-bc-current {
    color: var(--prido-dark);
    font-weight: 600;
}

/* --- Toolbar — Liquid Glass --- */
.prido-grilla-toolbar {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    padding: 18px 22px;
    margin-bottom: 24px;
    background: var(--prido-grid-surface);
    -webkit-backdrop-filter: var(--prido-glass-backdrop);
    backdrop-filter: var(--prido-glass-backdrop);
    border: 1px solid var(--prido-grid-border);
    border-radius: 30px;
    box-shadow: var(--prido-grid-shadow);
    overflow: visible;
}
.prido-grilla-toolbar::before {
    display: none;
}
.prido-grilla-result-count {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    min-height: 0;
    padding: 0 6px;
    font-size: var(--prido-type-small);
    color: var(--prido-muted);
    white-space: nowrap;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.prido-grilla-controls {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

/* Orderby select — glass */
.prido-grilla-orderby {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0;
    border: 1px solid var(--prido-grid-border);
    border-radius: 999px;
    background: var(--prido-grid-chip);
    box-shadow: var(--prido-grid-shadow);
    backdrop-filter: blur(14px) saturate(140%);
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    overflow: hidden;
    transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}
.prido-grilla-orderby:hover,
.prido-grilla-orderby:focus-within {
    transform: translateY(-1px);
    border-color: var(--prido-grid-border-strong);
    background: var(--prido-grid-chip-hover);
    box-shadow: var(--prido-grid-shadow);
}
.prido-orderby-select {
    appearance: none;
    -webkit-appearance: none;
    background: transparent;
    border: 0;
    border-radius: 999px;
    padding: 0 42px 0 18px;
    min-height: 44px;
    font-size: var(--prido-type-small);
    color: var(--prido-dark);
    cursor: pointer;
    transition: border-color .22s ease, background .22s ease, box-shadow .22s ease, transform .22s ease;
    background-image: var(--prido-theme-arrow-url);
    background-repeat: no-repeat;
    background-position: right 12px center;
    min-width: 190px;
    box-shadow: none;
    outline: none;
}
.prido-orderby-select:hover,
.prido-orderby-select:focus {
    transform: none;
    border-color: transparent;
    background: transparent;
    box-shadow: none;
    outline: none;
}

/* Per page selector — glass pills */
.prido-grilla-per-page {
    display: flex;
    align-items: center;
    gap: 6px;
}
.prido-per-page-select {
    display: none;
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--prido-dark);
    cursor: pointer;
    font-size: var(--prido-type-small);
    font-weight: var(--prido-weight-semibold);
    outline: none;
}
.prido-pp-label {
    font-size: var(--prido-type-small);
    color: var(--prido-muted);
    white-space: nowrap;
}
.prido-pp-option {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid var(--prido-grid-border);
    border-radius: 999px;
    font-size: var(--prido-type-small);
    font-weight: var(--prido-weight-semibold);
    color: var(--prido-muted);
    text-decoration: none;
    transition: transform .22s ease, border-color .22s ease, color .22s ease, background .22s ease, box-shadow .22s ease;
    background: var(--prido-grid-chip);
    box-shadow: none;
}
.prido-pp-option:hover {
    transform: translateY(-1px);
    border-color: var(--prido-grid-border-strong);
    color: var(--prido-dark);
    background: var(--prido-grid-chip-hover);
    box-shadow: var(--prido-grid-shadow);
}
.prido-pp-option.is-active {
    background: var(--prido-glass-accent-fill);
    border-color: var(--prido-grid-border-strong);
    color: var(--prido-dark);
    font-weight: 700;
    pointer-events: none;
    box-shadow: var(--prido-grid-shadow);
}

/* ==========================================================================
   15-A. GRILLA ESTRICTA — Layout simétrico con alturas controladas
   ========================================================================== */

.prido-grilla-products {
    display: grid;
    grid-template-columns: repeat(var(--prido-grid-cols, 4), 1fr);
    gap: 20px;
    align-items: stretch;
    grid-auto-rows: 1fr;
    min-width: 0;
}

/* Forzar que cada celda ocupe 100% y sea un flex container vertical */
.prido-grilla-products .wd-product {
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column;
    height: 100%;
    min-width: 0;
}
.prido-grilla-products .wd-col {
    --wd-col: 100%;
    flex: none;
    max-width: 100%;
    min-width: 0;
}

/* Product wrapper — flex column para alinear zonas internas */
.prido-grilla-products .product-wrapper {
    display: flex;
    flex-direction: column;
    flex: 1;
    height: 100%;
    min-height: 100%;
    background: var(--prido-grid-surface);
    border-radius: 24px;
    border: 1px solid var(--prido-grid-border);
    transition: transform 0.28s ease, border-color 0.28s ease, box-shadow 0.28s ease, background 0.28s ease;
    box-shadow: var(--prido-grid-shadow);
    overflow: hidden;
    position: relative;
}

/* Glass highlight — reflejo sutil permanente (antes del hover) */
.prido-grilla-products .product-wrapper::before {
    display: none;
}

/* Hover — elevación + iluminación */
.prido-grilla-products .wd-product:hover .product-wrapper {
    transform: translateY(-2px);
    box-shadow: var(--prido-grid-shadow-strong);
    border-color: var(--prido-grid-border-strong);
}
.prido-grilla-products .wd-product:hover .product-wrapper::before {
    opacity: 1;
}

/* ==========================================================================
   15-B. IMAGEN DE PRODUCTO — 1:1 estricto, cover
   ========================================================================== */

.prido-grilla-products .product-element-top {
    position: relative;
    overflow: hidden;
    background: var(--prido-bg-tint);
    border-radius: 24px 24px 0 0;
    flex-shrink: 0;
    padding: 0 !important;
    margin: 0 !important;
}
.prido-grilla-products .product-image-link {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    position: relative;
    padding: 0 !important;
    margin: 0 !important;
}
.prido-grilla-products .product-image-link img,
.prido-grilla-products .attachment-woocommerce_thumbnail {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative;
    z-index: 1;
    transition: transform 0.6s ease, opacity 0.25s ease;
}
.prido-grilla-products .wd-product:hover .product-image-link img,
.prido-grilla-products .wd-product:hover .attachment-woocommerce_thumbnail,
.prido-grilla-products .prido-product-card:hover .product-image-link img,
.prido-grilla-products .prido-product-card:hover .attachment-woocommerce_thumbnail {
    transform: scale(1.03);
}

/* Hover image (secondary) — también 1:1 cover */
.prido-grilla-products .wd-hover-img-wrap,
.prido-grilla-products .prido-product-card__hover-media {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 2;
    pointer-events: none;
    transition: opacity 0.35s ease;
}
.prido-grilla-products .wd-hover-img-wrap img,
.prido-grilla-products .prido-product-card__hover-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* Hover-swap DESACTIVADO: la galería ahora se navega con flechas (no thumbnails). */
.prido-grilla-products .wd-hover-img-wrap,
.prido-grilla-products .prido-product-card__hover-media {
    display: none !important;
}

/* ==========================================================================
   15-C. ZONA DE INFO — Jerarquía tipográfica estricta
   ========================================================================== */

.prido-grilla-products .product-element-bottom {
    padding: 20px 20px 22px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 7px;
    min-width: 0;
    background: transparent;
}

.prido-product-card__body {
    gap: 7px;
}

/* Categoría — uppercase muted (+5% scale) */
.prido-grilla-products .wd-product-cats,
.prido-grilla-products .product-element-bottom .wd-product-cats {
    font-size: var(--prido-type-overline) !important;
    text-transform: uppercase;
    font-weight: var(--prido-weight-semibold);
    color: var(--prido-muted) !important;
    margin-bottom: 0 !important;
    letter-spacing: 0.08em;
    line-height: 1.25;
    min-height: 1.3em;
    overflow: hidden;
}
.prido-grilla-products .wd-product-cats a {
    color: var(--prido-muted) !important;
    text-decoration: none;
}

/* Título — semibold, 2 líneas max (+5% scale) */
.prido-grilla-products .wd-entities-title {
    margin: 0 !important;
    line-height: 1.18;
    min-height: 0;
    max-height: calc(1.18em * 2);
    overflow: hidden;
}
.prido-grilla-products .wd-entities-title a {
    font-family: var(--prido-font-heading) !important;
    font-size: var(--prido-type-large) !important;
    font-weight: var(--prido-weight-bold) !important;
    color: var(--prido-dark) !important;
    text-decoration: none;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.3s ease !important;
}
.prido-grilla-products .wd-product:hover .wd-entities-title a,
.prido-grilla-products .prido-product-card:hover .wd-entities-title a {
    color: var(--prido-primary) !important;
}

/* Precio — destacado, alineado al final (+5% scale) */
.prido-grilla-products .prido-product-card__pricing {
    margin-top: 0 !important;
    padding-top: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 2px;
    min-height: 30px;
}

.prido-product-card__details {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-height: 48px;
}

.prido-product-card__quote {
    margin-top: auto;
    padding-top: 10px;
}
.prido-grilla-products .prido-product-card__price {
    display: flex;
    align-items: center;
    min-height: 28px;
    width: 100%;
    min-width: 0;
    overflow: hidden;
}
.prido-grilla-products .prido-product-card__price:empty {
    display: block;
}
.prido-grilla-products .prido-product-card__price .price,
.prido-grilla-products .price {
    font-family: var(--prido-font-heading) !important;
    font-size: var(--prido-type-h6) !important;
    font-weight: var(--prido-weight-heavy) !important;
    color: var(--prido-dark) !important;
    line-height: var(--prido-leading-heading);
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    align-items: baseline;
    gap: 6px;
    white-space: nowrap !important;
    min-width: 0;
    max-width: 100%;
    margin: 0 !important;
}
.prido-grilla-products .prido-product-card__price .price del,
.prido-grilla-products .price del {
    display: inline-flex !important;
    align-items: baseline;
    white-space: nowrap !important;
    font-size: 0.72em !important;
    font-weight: 600 !important;
    color: #94A3B8 !important;
    margin: 0 !important;
    text-decoration-thickness: 1.5px;
    text-decoration-color: rgba(148, 163, 184, 0.92);
}
.prido-grilla-products .prido-product-card__price .price ins,
.prido-grilla-products .price ins {
    display: inline-flex !important;
    align-items: baseline;
    white-space: nowrap !important;
    text-decoration: none;
    color: var(--prido-dark) !important;
}
.prido-grilla-products .prido-price-line,
.prido-grilla-products .prido-price-current,
.prido-grilla-products .prido-price-value,
.prido-grilla-products .prido-price-regular,
.prido-grilla-products .prido-price-sale {
    display: inline-flex !important;
    align-items: baseline;
    white-space: nowrap !important;
    max-width: 100%;
    min-width: 0;
}
.prido-grilla-products .prido-price-value {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
    min-width: 0;
}
.prido-grilla-products .prido-product-card__price .woocommerce-Price-amount,
.prido-grilla-products .prido-product-card__price .amount,
.prido-grilla-products .prido-product-card__price bdi {
    display: inline-flex !important;
    align-items: baseline;
    white-space: nowrap !important;
}
.prido-grilla-products .prido-product-card__price .screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    border: 0 !important;
}
/* Sufijo de impuesto legacy (+5% scale) */
.prido-iva-suffix {
    font-size: 0.62em !important;
    font-weight: var(--prido-weight-semibold) !important;
    color: var(--prido-muted) !important;
    white-space: nowrap;
    letter-spacing: 0.02em;
}

/* ==========================================================================
   15-D. ATRIBUTOS DE VARIACIÓN VISIBLES
   ========================================================================== */

.prido-var-attrs {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 8px;
    padding-top: 8px;
    margin-top: 4px;
    border-top: 1px solid var(--prido-grid-border);
    min-height: 0;
}
.prido-var-attr {
    font-size: var(--prido-type-small);
    color: var(--prido-muted);
    line-height: 1.45;
    display: inline-block;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
    vertical-align: top;
}
.prido-var-attr-label {
    font-weight: 700;
    color: var(--prido-dark);
}

/* ==========================================================================
   15-E. BADGES — Liquid Glass + Badge dinámico de variación
   ========================================================================== */

.prido-grilla-products .onsale,
.prido-grilla-products .product-label {
    background: var(--prido-grid-chip) !important;
    -webkit-backdrop-filter: saturate(155%) blur(14px) !important;
    backdrop-filter: saturate(155%) blur(14px) !important;
    border: 1px solid var(--prido-grid-border) !important;
    color: var(--prido-dark) !important;
    font-family: 'Outfit', sans-serif;
    font-size: var(--prido-type-overline);
    font-weight: var(--prido-weight-heavy);
    padding: 6px 12px;
    border-radius: 8px;
    box-shadow: var(--prido-grid-shadow);
    letter-spacing: 0.06em;
    text-shadow: none;
}
.prido-grilla-products .wd-label-new {
    background: var(--prido-glass-accent-fill) !important;
    border-color: var(--prido-grid-border-strong) !important;
    color: var(--prido-dark) !important;
}
.prido-grilla-products .wd-label-sale {
    background: var(--prido-grid-chip) !important;
}

/* Ocultar badge nativo de Woodmart sale (evitar duplicado con badge dinámico) */
.prido-grilla-products .onsale,
.prido-grilla-products .wd-label-sale {
    display: none !important;
}

/* Badge dinámico de variación (JS) — Liquid Glass unificado */
.prido-var-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    background: var(--prido-grid-chip-hover);
    -webkit-backdrop-filter: saturate(145%) blur(12px);
    backdrop-filter: saturate(145%) blur(12px);
    border: 1px solid var(--prido-grid-border);
    color: var(--prido-dark);
    font-family: 'Outfit', sans-serif;
    font-size: var(--prido-type-small);
    font-weight: var(--prido-weight-heavy);
    padding: 6px 12px;
    border-radius: 10px;
    box-shadow: var(--prido-grid-shadow);
    z-index: 6;
    letter-spacing: 0.03em;
    line-height: 1;
    transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    text-shadow: none;
}

/* ==========================================================================
   15-F. BOTONES DE ACCIÓN — Eliminar nativos + Custom Liquid Glass
   ========================================================================== */

/* ── 1) Ocultar botones nativos de Woodmart en la grilla ── */
/* EXCEPCIÓN: NO ocultar los que están dentro de .prido-grilla-actions (nuestros botones) */
.prido-grilla-products .wd-buttons,
.prido-grilla-products .wd-add-btn,
.prido-grilla-products .wd-add-btn-wrap,
.prido-grilla-products .add_to_cart_button,
.prido-grilla-products .product_type_variable,
.prido-grilla-products .wd-quick-view-btn,
.prido-grilla-products .wd-swatches-grid,
.prido-grilla-products .wd-product-actions,
.prido-grilla-products .hover-content,
.prido-grilla-products .hover-content-inner,
.prido-grilla-products .wd-more-desc,
.prido-grilla-products > .wd-product > .product-wrapper .wd-wishlist-btn:not(.prido-grilla-wish-wrap),
.prido-grilla-products > .wd-product > .product-wrapper .wd-compare-btn:not(.prido-grilla-comp-wrap),
.prido-grilla-products > .wd-product > .product-wrapper .product-compare-button:not(.prido-grilla-comp-wrap),
.prido-grilla-products > .prido-product-card > .product-wrapper .wd-wishlist-btn:not(.prido-grilla-wish-wrap),
.prido-grilla-products > .prido-product-card > .product-wrapper .wd-compare-btn:not(.prido-grilla-comp-wrap),
.prido-grilla-products > .prido-product-card > .product-wrapper .product-compare-button:not(.prido-grilla-comp-wrap) {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
    height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
}

/* Nuestros wrappers nativos DENTRO de .prido-grilla-actions deben ser visibles */
.prido-grilla-actions .wd-wishlist-btn,
.prido-grilla-actions .wd-compare-btn,
.prido-grilla-actions .product-compare-button {
    display: block !important;
    visibility: visible !important;
    pointer-events: auto !important;
    height: auto !important;
    overflow: visible !important;
    opacity: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    position: static !important;
}

/* ── 2) Container de botones — BARRA FLOTANTE (Design A) ──
   Antes: riel vertical arriba-izquierda. Ahora: barra horizontal que
   sube sobre la foto al hover/focus. Contenedor transparente; cada
   botón lleva su propio glass/sólido. */
.prido-grilla-actions {
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 10px;
    top: auto;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 7px;
    z-index: 6;
    opacity: 0;
    transform: translateY(14px);
    pointer-events: none;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    transition: opacity 0.28s cubic-bezier(0.2, 0.7, 0.2, 1),
                transform 0.28s cubic-bezier(0.2, 0.7, 0.2, 1);
}
/* Reveal: hover (mouse) + focus-within (teclado). Sin visibility:hidden
   para que los botones sigan siendo enfocables con Tab y disparen focus-within. */
.wd-product:hover .prido-grilla-actions,
.prido-product-card:hover .prido-grilla-actions,
.wd-product:focus-within .prido-grilla-actions,
.prido-product-card:focus-within .prido-grilla-actions {
    opacity: 1;
    transform: none;
    pointer-events: auto;
}

/* ── 3) Botón de acción individual — hereda .prido-glass-ui ── */
.prido-grilla-action-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--prido-dark, var(--prido-theme-ink));
    background: transparent;
    cursor: pointer;
    position: relative;
    text-decoration: none;
    padding: 0;
    box-sizing: border-box;
    line-height: 0;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    border: 0;
}
.prido-grilla-action-btn svg {
    display: block;
    width: 19px;
    height: 19px;
    stroke-width: 2.25;
    transition: transform 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 1 !important;
    visibility: visible !important;
    fill: none !important;
    stroke: currentColor !important;
    overflow: visible;
}
.prido-grilla-action-btn svg *,
.prido-grilla-action-btn svg path,
.prido-grilla-action-btn svg line,
.prido-grilla-action-btn svg polyline,
.prido-grilla-action-btn svg circle {
    opacity: 1 !important;
    visibility: visible !important;
    fill: none !important;
    stroke: currentColor !important;
    vector-effect: non-scaling-stroke;
}
.prido-grilla-action-btn:hover {
    transform: translateY(-1px) scale(1.02);
}
.prido-grilla-action-btn:hover svg {
    transform: translate(-50%, -50%) scale(1.1);
}

/* Estado "added" — feedback visual */
.prido-grilla-action-btn.added {
    background: var(--prido-glass-accent-fill);
    border-color: var(--prido-grid-border-strong);
}
.prido-grilla-action-btn.added svg {
    fill: var(--prido-primary);
    color: var(--prido-primary);
}

/* Carrito → botón primario ancho (turquesa de marca) dentro de la barra.
   El detalle de ancho/forma/label vive en la sección "BARRA FLOTANTE" al final. */
.prido-grilla-btn-cart {
    color: #fff !important;
    background: var(--prido-secondary) !important;
}

.prido-grilla-btn-cart:hover,
.prido-grilla-btn-cart.added {
    color: #fff !important;
    background: color-mix(in srgb, var(--prido-secondary) 84%, #0b1f2e) !important;
}

/* Ensure action buttons respond to dark mode */
:root[data-theme="dark"] .prido-grilla-action-btn {
    color: var(--prido-theme-ink);
}
:root[data-theme="dark"] .prido-grilla-btn-cart {
    color: #fff !important;
    background: var(--prido-secondary) !important;
}
:root[data-theme="dark"] .prido-grilla-action-btn.added {
    background: var(--prido-glass-accent-fill);
}
:root[data-theme="dark"] .prido-grilla-action-btn.is-loading::after {
    border-color: rgba(255, 255, 255, 0.15);
    border-top-color: var(--prido-teal);
}
.prido-grilla-action-btn.is-disabled {
    opacity: 0.46;
    cursor: not-allowed;
}
.prido-grilla-action-btn.is-disabled:hover {
    transform: none;
}
.prido-grilla-action-btn.is-loading {
    opacity: 0.72;
    pointer-events: none;
}
.prido-grilla-action-btn.is-loading::after {
    content: "";
    position: absolute;
    inset: 9px;
    border-radius: 50%;
    border: 1.8px solid rgba(26, 42, 58, 0.18);
    border-top-color: var(--prido-teal);
    animation: prido-cart-spin 0.7s linear infinite;
}
@keyframes prido-cart-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Animación confirm — feedback elegante al agregar (premium, tipo Apple) */
@keyframes prido-btn-confirm {
    0%   { transform: scale(1); opacity: 1; }
    30%  { transform: scale(1.06); opacity: 0.9; }
    60%  { transform: scale(0.99); opacity: 1; }
    100% { transform: scale(1); opacity: 1; }
}
.prido-grilla-action-btn.prido-btn-confirm {
    animation: prido-btn-confirm 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* Header icon pulse — sutil, premium */
@keyframes prido-header-pulse {
    0%   { transform: scale(1); opacity: 1; }
    25%  { transform: scale(1.15); opacity: 0.85; }
    50%  { transform: scale(0.97); opacity: 1; }
    100% { transform: scale(1); opacity: 1; }
}
.prido-header-pulse {
    animation: prido-header-pulse 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
}
.prido-header-pulse .wd-tools-count {
    animation: prido-header-pulse 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) 0.1s !important;
}

/* ── Toast notification ── */
.prido-grilla-toast {
    position: fixed;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%) translateY(20px);
    background: var(--prido-grid-surface);
    -webkit-backdrop-filter: saturate(150%) blur(16px);
    backdrop-filter: saturate(150%) blur(16px);
    color: var(--prido-dark);
    font-family: 'Noto Sans', sans-serif;
    font-size: 13px;
    font-weight: 600;
    padding: 12px 24px;
    border-radius: 18px;
    border: 1px solid var(--prido-grid-border);
    box-shadow: var(--prido-grid-shadow);
    z-index: 99999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    white-space: nowrap;
    pointer-events: none;
}
.prido-grilla-toast.prido-toast-show {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

/* ── 4) Tooltip — mismo estilo que galería de productos relacionados ── */
.prido-grilla-tooltip {
    position: absolute;
    top: 50%;
    left: 100%;
    transform: translate(6px, -50%);
    background: var(--prido-grid-chip);
    -webkit-backdrop-filter: var(--prido-glass-backdrop);
    backdrop-filter: var(--prido-glass-backdrop);
    color: var(--prido-dark);
    font-family: 'Noto Sans', sans-serif;
    font-size: 11px;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 12px;
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    line-height: 1.2;
    text-transform: none;
    border: 1px solid var(--prido-grid-border);
    box-shadow: var(--prido-grid-shadow);
    z-index: 99;
}
.prido-grilla-tooltip::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 100%;
    transform: translateY(-50%);
    border-width: 5px;
    border-style: solid;
    border-color: transparent var(--prido-theme-surface-strong) transparent transparent;
}
.prido-grilla-action-btn:hover .prido-grilla-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translate(10px, -50%);
}

/* ==========================================================================
   15-D2. PRECIO TRANSFERENCIA DIRECTA
   ========================================================================== */

.prido-transfer-price {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-top: 0;
    padding-top: 8px;
    border-top: 1px dashed var(--prido-grid-border);
    min-height: 42px;
}
.prido-transfer-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: var(--prido-teal);
    opacity: 0.7;
}
.prido-transfer-icon svg {
    width: 14px;
    height: 14px;
    display: block;
}
.prido-transfer-label {
    font-size: 10.5px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.35px;
    color: var(--prido-muted);
}
.prido-transfer-amount {
    font-family: 'Outfit', sans-serif;
    font-size: 14px;
    font-weight: 800;
    color: var(--prido-teal);
}

.prido-product-card__quote .prido-cotizar-wrap--grilla {
    margin: 0;
}

/* ==========================================================================
   15-G. SELECTORES DE VARIACIÓN — Dots sobre imagen con scroll
   ========================================================================== */

/* Outer wrap — posiciona flechas + dots */
.prido-var-dots-wrap {
    position: absolute;
    bottom: 12px;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    z-index: 5;
    opacity: 0;
    transition: opacity 0.35s ease, transform 0.35s ease;
    transform: translateX(-50%) translateY(8px);
    --prido-var-nav-size: 30px;
    --prido-var-nav-gap: 6px;
    --prido-var-nav-space: 0px;
    width: min(calc(var(--prido-var-gallery-width, 60%) + var(--prido-var-nav-space)), calc(100% - 16px));
    max-width: min(calc(var(--prido-var-gallery-width, 60%) + var(--prido-var-nav-space)), calc(100% - 16px));
    min-width: 0;
    overflow: visible;
}
.prido-var-dots-wrap.has-navigation {
    gap: var(--prido-var-nav-gap);
}
.product-element-top:hover .prido-var-dots-wrap,
.wd-product:hover .prido-var-dots-wrap,
.prido-product-card:hover .prido-var-dots-wrap {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.prido-var-dots {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 6px 10px;
    background: var(--prido-grid-chip);
    -webkit-backdrop-filter: saturate(145%) blur(14px);
    backdrop-filter: saturate(145%) blur(14px);
    border: 1px solid var(--prido-grid-border);
    border-radius: 999px;
    box-shadow: var(--prido-grid-shadow);
    overflow-x: auto;
    overflow-y: hidden;
    flex-wrap: nowrap;
    scrollbar-width: none;
    -ms-overflow-style: none;
    width: 100%;
    max-width: 100%;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    touch-action: pan-x;
    justify-content: center;
    min-width: 0;
}
.prido-var-dots-wrap.is-scrollable .prido-var-dots {
    justify-content: flex-start;
}
.prido-var-dots::-webkit-scrollbar {
    display: none;
}

/* Flechas de navegación de variaciones — hereda .prido-glass-ui */
.prido-var-arrow {
    display: none !important;
    align-items: center;
    justify-content: center;
    width: var(--prido-var-nav-size);
    height: var(--prido-var-nav-size);
    border-radius: 50%;
    cursor: pointer;
    padding: 0;
    flex-shrink: 0;
    position: relative;
    color: var(--prido-dark) !important;
    border: 1px solid var(--prido-grid-border) !important;
    background: var(--prido-grid-chip) !important;
    -webkit-backdrop-filter: saturate(145%) blur(12px) !important;
    backdrop-filter: saturate(145%) blur(12px) !important;
    box-shadow: var(--prido-grid-shadow) !important;
    transition: transform 0.22s ease, background 0.22s ease, color 0.22s ease, opacity 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, visibility 0.22s ease;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.prido-var-dots-wrap.is-scrollable .prido-var-arrow {
    display: inline-flex !important;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
.prido-var-arrow svg {
    display: block;
    width: 14px;
    height: 14px;
    fill: none;
    stroke: currentColor !important;
    stroke-width: 2.35;
    stroke-linecap: round;
    stroke-linejoin: round;
    overflow: visible;
    opacity: 0 !important;
    visibility: hidden !important;
}
.prido-var-arrow svg path,
.prido-var-arrow svg polyline,
.prido-var-arrow svg line {
    stroke: currentColor !important;
    opacity: 0 !important;
    vector-effect: non-scaling-stroke;
}
.prido-var-arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 9px;
    height: 9px;
    border-right: 2.2px solid currentColor;
    border-bottom: 2.2px solid currentColor;
    transform-origin: center;
    opacity: 0.96;
}
.prido-var-arrow--prev::before {
    transform: translate(-38%, -50%) rotate(135deg);
}
.prido-var-arrow--next::before {
    transform: translate(-62%, -50%) rotate(-45deg);
}
.prido-var-arrow.prido-glass-ui:hover,
.prido-var-arrow:hover {
    transform: translateY(-1px) scale(1.02);
    background: var(--prido-grid-chip-hover);
    color: var(--prido-dark);
    border-color: var(--prido-grid-border-strong);
    box-shadow: var(--prido-grid-shadow);
}
.prido-var-arrow.is-disabled,
.prido-var-arrow.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: scale(0.92);
}

/* Flechas de galería Woodmart dentro de la grilla — Liquid Glass unificado */
.prido-grilla-products .wd-nav-arrows > div,
.prido-grilla-products .wd-btn-arrow,
.prido-grilla-products .wd-gallery-toggle,
.prido-grilla-products .flickity-prev-next-button,
.prido-grilla-products .wd-product-gallery-arrow {
    background: var(--prido-grid-chip) !important;
    -webkit-backdrop-filter: saturate(145%) blur(12px) !important;
    backdrop-filter: saturate(145%) blur(12px) !important;
    border: 1px solid var(--prido-grid-border) !important;
    box-shadow: var(--prido-grid-shadow) !important;
    border-radius: 50% !important;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    color: var(--prido-dark) !important;
}
.prido-grilla-products .wd-nav-arrows > div:hover,
.prido-grilla-products .wd-btn-arrow:hover,
.prido-grilla-products .wd-gallery-toggle:hover,
.prido-grilla-products .flickity-prev-next-button:hover,
.prido-grilla-products .wd-product-gallery-arrow:hover {
    background: var(--prido-grid-chip-hover) !important;
    color: var(--prido-dark) !important;
    border-color: var(--prido-grid-border-strong) !important;
    box-shadow: var(--prido-grid-shadow) !important;
}

/* Dot base */
.prido-var-dot {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 1.5px solid color-mix(in srgb, var(--prido-grid-border) 78%, white 22%);
    background-color: var(--prido-bg-product);
    background-size: cover;
    background-position: center;
    cursor: pointer;
    transition: all 0.25s ease;
    padding: 0;
    outline: none;
    flex-shrink: 0;
    box-shadow:
        0 8px 16px rgba(18, 29, 42, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.42);
}
/* Fallback — nunca invisible */
.prido-var-dot:not([style*="background-image"]) {
    background-color: var(--prido-muted);
    opacity: 0.5;
}
.prido-var-dot:hover {
    border-color: var(--prido-grid-border-strong);
    transform: scale(1.08);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--prido-primary) 12%, transparent 88%);
}
.prido-var-dot.is-active {
    border-color: var(--prido-grid-border-strong);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--prido-primary) 16%, transparent 84%), var(--prido-grid-shadow);
    transform: scale(1.04);
}

@media (max-width: 1024px) {
    .prido-grilla-wrapper {
        max-width: none;
        padding-left: 12px;
        padding-right: 12px;
    }
    .prido-grilla-products .wd-product-cats,
    .prido-grilla-products .product-element-bottom .wd-product-cats {
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
    }
    .prido-var-attrs {
        min-height: 0;
        max-height: none;
        overflow: visible;
        flex-wrap: wrap;
        align-content: flex-start;
        gap: 4px 6px;
        padding-top: 6px;
        margin-top: 2px;
    }
    .prido-var-attrs .prido-var-attr:not(:first-child) {
        display: inline-block;
    }
    .prido-var-attr {
        display: inline-block;
        max-width: 100%;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
    }
    .prido-transfer-price {
        min-height: 38px;
        display: grid;
        grid-template-columns: 16px minmax(0, 1fr);
        grid-template-areas:
            "icon label"
            "icon amount";
        gap: 2px 6px;
        align-items: start;
    }
    .prido-transfer-icon {
        grid-area: icon;
    }
    .prido-transfer-label {
        grid-area: label;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .prido-transfer-amount {
        grid-area: amount;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

/* ==========================================================================
   15-H. PAGINACIÓN — Liquid Glass, Desktop-first unificado con mobile
   ========================================================================== */

.prido-grilla-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    padding: 32px 0 20px;
}

/* ---- Arrows ---- */
.prido-grilla-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    color: var(--prido-dark, #1a2a3a);
    text-decoration: none;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.2s ease, transform 0.2s ease, color 0.2s ease;
}
.prido-grilla-arrow svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    width: 18px;
    height: 18px;
}
.prido-grilla-arrow:hover {
    background: var(--prido-grid-chip-hover);
    transform: scale(1.02);
}
.prido-grilla-arrow:active {
    transform: scale(0.95);
}
.prido-grilla-arrow.is-disabled {
    opacity: 0.3;
    pointer-events: none;
    cursor: default;
}

/* ---- Dots container (pill) ---- */
.prido-grilla-dots {
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 4px 6px;
    background: var(--prido-grid-chip);
    -webkit-backdrop-filter: saturate(145%) blur(14px);
    backdrop-filter: saturate(145%) blur(14px);
    border: 1px solid var(--prido-grid-border);
    border-radius: 999px;
    box-shadow: var(--prido-grid-shadow);
}

/* ---- Dot (botón de página numérico) ---- */
.prido-grilla-dot {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    min-width: 34px;
    min-height: 34px;
    border-radius: 50%;
    background: transparent;
    border: 1px solid transparent;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
    text-decoration: none;
    padding: 0;
    font-family: var(--prido-font-heading, 'Outfit', sans-serif);
    font-size: 13px;
    font-weight: 600;
    color: var(--prido-muted, #8a9bae);
    line-height: 1;
}
.prido-grilla-dot:hover {
    background: var(--prido-grid-chip-hover);
    color: var(--prido-dark, #1a2a3a);
}
.prido-grilla-dot.is-active {
    background: var(--prido-glass-accent-fill);
    color: var(--prido-dark);
    font-weight: 700;
    border: 1px solid var(--prido-grid-border-strong);
    box-shadow: var(--prido-grid-shadow);
    pointer-events: none;
}

/* ---- Ellipsis ---- */
.prido-grilla-ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 34px;
    font-size: 13px;
    color: var(--prido-border-light, #c8d1da);
    letter-spacing: 1px;
    user-select: none;
    pointer-events: none;
}

/* ---- Page indicator (X / Y) ---- */
.prido-grilla-page-indicator {
    font-family: var(--prido-font-heading, 'Outfit', sans-serif);
    font-size: var(--prido-type-small);
    font-weight: var(--prido-weight-semibold);
    color: var(--prido-muted, #8a9bae);
    white-space: nowrap;
    letter-spacing: 0.02em;
    margin-left: 4px;
    padding: 4px 10px;
    background: var(--prido-grid-chip);
    border-radius: 999px;
    border: 1px solid var(--prido-grid-border);
    box-shadow: none;
}

/* ==========================================================================
   15-I. ESTADO VACÍO
   ========================================================================== */

.prido-grilla-empty {
    text-align: center;
    padding: 80px 20px;
    color: var(--prido-muted);
    font-size: var(--prido-type-base);
    background: var(--prido-grid-surface-soft);
    -webkit-backdrop-filter: saturate(140%) blur(12px);
    backdrop-filter: saturate(140%) blur(12px);
    border: 1px solid var(--prido-grid-border);
    border-radius: 24px;
    box-shadow: var(--prido-grid-shadow);
}

.prido-product-card__quote .prido-cotizar-wrap--grilla {
    width: 100%;
}

.prido-product-card__quote .prido-cotizar-wrap--grilla .prido-cotizar-btn--grilla {
    width: 100%;
    min-height: 38px;
    padding: 8px 14px !important;
    border: none !important;
    border-radius: 999px !important;
    /* Marca Prido: azul primario (se eliminó el naranja off-brand #E8721C) */
    background: var(--prido-primary) !important;
    box-shadow: 0 2px 8px color-mix(in srgb, var(--prido-primary) 28%, transparent) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.4px !important;
    gap: 5px;
}

.prido-product-card__quote .prido-cotizar-wrap--grilla .prido-cotizar-btn--grilla svg {
    width: 14px;
    height: 14px;
}

.prido-product-card__quote .prido-cotizar-wrap--grilla .prido-cotizar-btn--grilla:hover {
    transform: translateY(-1px);
    border: none !important;
    background: color-mix(in srgb, var(--prido-primary) 86%, #0b1f2e) !important;
    box-shadow: 0 4px 16px color-mix(in srgb, var(--prido-primary) 36%, transparent) !important;
    color: #fff !important;
    text-decoration: none !important;
}

/* ==========================================================================
   15-R. GRILLA PRIDO — RESPONSIVE
   ========================================================================== */

/* Large Desktop (1400px+) */
@media (min-width: 1400px) {
    .prido-grilla-wrapper {
        max-width: 1400px;
    }
    .prido-grilla-products {
        gap: 22px;
    }
}

/* Desktop estándar */
@media (min-width: 1025px) and (max-width: 1399px) {
    .prido-grilla-products {
        gap: 18px;
    }
}

/* Tablet landscape */
@media (min-width: 769px) and (max-width: 1024px) {
    .prido-grilla-wrapper {
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding-left: 2px;
        padding-right: 2px;
    }
    .prido-grilla-products {
        grid-template-columns: repeat(var(--prido-grid-cols-tablet, 3), 1fr);
        gap: 14px;
    }
    .prido-grilla-toolbar {
        flex-direction: column;
        align-items: flex-start;
        padding: 20px 22px;
        border-radius: 26px;
    }
    .prido-grilla-products .product-wrapper {
        border-radius: 20px;
    }
    .prido-grilla-products .product-element-top {
        border-radius: 20px 20px 0 0;
    }
    .prido-grilla-products .product-wrapper::before {
        border-radius: 20px 20px 0 0;
    }
}

/* Tablet portrait */
@media (min-width: 576px) and (max-width: 768px) {
    .prido-grilla-wrapper {
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding-left: 10px;
        padding-right: 10px;
    }
    .prido-grilla-products {
        grid-template-columns: repeat(var(--prido-grid-cols-tablet, 3), 1fr);
        gap: 12px;
    }
    .prido-grilla-toolbar {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        padding: 18px 20px;
        border-radius: 24px;
    }
    .prido-grilla-controls {
        width: 100%;
        justify-content: space-between;
    }
    .prido-orderby-select {
        min-width: 160px;
        font-size: 12px;
        min-height: 42px;
    }
    .prido-var-dot {
        width: 22px;
        height: 22px;
    }
    .prido-grilla-products .product-wrapper {
        border-radius: 18px;
    }
    .prido-grilla-products .product-element-top {
        border-radius: 18px 18px 0 0;
    }
    .prido-grilla-products .product-wrapper::before {
        border-radius: 18px 18px 0 0;
    }
    .prido-grilla-products .wd-entities-title a {
        font-size: 15px !important;
    }
    .prido-grilla-products .prido-product-card__price .price,
    .prido-grilla-products .price {
        font-size: 15px !important;
    }
    /* Pagination tablet */
    .prido-grilla-arrow {
        width: 34px;
        height: 34px;
    }
    .prido-grilla-arrow svg {
        width: 16px;
        height: 16px;
    }
}

/* Mobile */
@media (max-width: 575px) {
    .prido-grilla-wrapper {
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding: 0 10px;
    }
    .prido-grilla-breadcrumbs {
        font-size: 12px;
        width: 100%;
        padding: 10px 14px;
        margin-bottom: 12px;
        gap: 4px;
        border-radius: 22px;
    }
    .prido-grilla-toolbar {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        padding: 16px 18px;
        margin-bottom: 16px;
        border-radius: 24px;
    }
    .prido-grilla-result-count {
        font-size: 12px;
    }
    .prido-grilla-controls {
        width: 100%;
        flex-direction: column;
        gap: 8px;
    }
    .prido-grilla-orderby {
        width: 100%;
    }
    .prido-orderby-select {
        width: 100%;
        min-width: unset;
        font-size: 13px;
        min-height: 42px;
        padding: 0 38px 0 16px;
        border-radius: 999px;
    }
    .prido-grilla-per-page {
        width: 100%;
        justify-content: flex-start;
    }
    .prido-pp-option {
        min-width: 38px;
        height: 36px;
        font-size: 13px;
        border-radius: 999px;
    }
    .prido-grilla-products {
        --prido-grid-cols-mobile: 1;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 8px;
    }
    /* Cards mobile */
    .prido-grilla-products .product-wrapper {
        border-radius: 18px;
    }
    .prido-grilla-products .product-wrapper::before {
        border-radius: 18px 18px 0 0;
    }
    .prido-grilla-products .product-element-top {
        border-radius: 18px 18px 0 0;
    }
    .prido-grilla-products .product-element-bottom {
        padding: 10px 10px 12px;
    }
    .prido-grilla-products .wd-product-cats {
        font-size: 10.5px !important;
        margin-bottom: 2px !important;
    }
    .prido-grilla-products .wd-entities-title a {
        font-size: 14px !important;
    }
    .prido-grilla-products .wd-entities-title {
        margin-bottom: 0 !important;
        min-height: 0;
        max-height: calc(1.18em * 2);
    }
    .prido-grilla-products .prido-product-card__price .price,
    .prido-grilla-products .price {
        font-size: 13px !important;
    }
    .prido-iva-suffix {
        font-size: 0.58em !important;
    }
    /* Var attrs mobile */
    .prido-var-attrs {
        padding-top: 4px;
    }
    .prido-var-attr {
        font-size: 10px;
    }
    .prido-var-dots {
        padding: 4px 6px;
        gap: 4px;
        border-radius: 16px;
    }
    .prido-var-arrow {
        width: 26px;
        height: 26px;
    }
    .prido-var-dot {
        width: 20px;
        height: 20px;
        border-width: 1.5px;
    }
    /* Transfer price mobile */
    .prido-transfer-price {
        margin-top: 4px;
        padding-top: 4px;
    }
    .prido-transfer-label {
        font-size: 9px;
    }
    .prido-transfer-amount {
        font-size: 12px;
    }
    /* Paginación mobile */
    .prido-grilla-pagination {
        padding: 24px 0 12px;
        gap: 4px;
    }
    .prido-grilla-arrow {
        width: 32px;
        height: 32px;
    }
    .prido-grilla-arrow svg {
        width: 15px;
        height: 15px;
    }
    .prido-grilla-dots {
        padding: 3px 4px;
        gap: 1px;
    }
    .prido-grilla-dot {
        width: 30px;
        height: 30px;
        min-width: 30px;
        min-height: 30px;
        font-size: 12px;
    }
    .prido-grilla-dot.is-active {
        font-size: 12px;
    }
    .prido-grilla-ellipsis {
        width: 20px;
        font-size: 12px;
    }
    .prido-grilla-page-indicator {
        font-size: 11px;
        padding: 3px 8px;
        margin-left: 2px;
    }
    .prido-grilla-actions {
        /* Barra flotante: anclada abajo, no arriba */
        top: auto;
        left: 8px;
        right: 8px;
        bottom: 8px;
        gap: 6px;
    }
    .prido-grilla-action-btn {
        width: 34px;
        height: 34px;
        -webkit-backdrop-filter: blur(8px);
        backdrop-filter: blur(8px);
    }
    /* Pero los botones anchos (carrito/avísame) mantienen su forma */
    .prido-grilla-cart-wrap .prido-grilla-btn-cart,
    .prido-grilla-notify-wrap .prido-grilla-btn-notify {
        width: 100%;
        height: 38px;
    }
    .prido-grilla-action-btn svg {
        width: 16px;
        height: 16px;
    }
    /* Tooltip hidden on mobile — touch tap is sufficient */
    .prido-grilla-tooltip {
        display: none;
    }
    /* Performance: reduce blur en mobile */
    .prido-grilla-products .product-wrapper::before {
        display: none; /* Glass highlight off en mobile para performance */
    }
}

@media (hover: none), (pointer: coarse) {
    .prido-grilla-actions,
    .prido-var-dots-wrap,
    .prido-var-badge {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }

    .prido-var-dots-wrap {
        transform: translateX(-50%) translateY(8px);
    }

    .prido-var-dots-wrap.is-scrollable .prido-var-arrow {
        display: inline-flex !important;
        opacity: 0;
        pointer-events: none;
        visibility: hidden;
    }

    .wd-product.is-touch-active .prido-grilla-actions,
    .prido-product-card.is-touch-active .prido-grilla-actions,
    .wd-product.is-touch-active .prido-var-dots-wrap,
    .prido-product-card.is-touch-active .prido-var-dots-wrap,
    .wd-product.is-touch-active .prido-var-badge,
    .prido-product-card.is-touch-active .prido-var-badge {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .wd-product.is-touch-active .prido-var-dots-wrap,
    .prido-product-card.is-touch-active .prido-var-dots-wrap {
        transform: translateX(-50%) translateY(0);
    }

    .wd-product.is-touch-active .prido-var-dots-wrap.is-scrollable .prido-var-arrow,
    .prido-product-card.is-touch-active .prido-var-dots-wrap.is-scrollable .prido-var-arrow {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .wd-product.is-touch-active .prido-var-dots-wrap.is-scrollable .prido-var-arrow.is-hidden,
    .prido-product-card.is-touch-active .prido-var-dots-wrap.is-scrollable .prido-var-arrow.is-hidden {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }

    .wd-product.is-touch-active .product-wrapper,
    .prido-product-card.is-touch-active .product-wrapper {
        border-color: var(--prido-grid-border-strong);
        box-shadow: var(--prido-grid-shadow-strong);
    }
}

/* ==========================================================================
   15-A. BARRA FLOTANTE (Design A) — barra de acciones + estado sin stock
   --------------------------------------------------------------------------
   Convierte el antiguo riel vertical en una barra horizontal que sube sobre
   la foto: [favorito] [comparar] [Agregar al carro]. Sin stock → "Avísame".
   Todo theme-aware vía tokens --prido-*; transiciones solo transform/opacity.
   ========================================================================== */

/* Distribución: chips de icono a la izquierda, botón ancho a la derecha */
.prido-grilla-actions > .prido-grilla-wish-wrap,
.prido-grilla-actions > .prido-grilla-comp-wrap {
    flex: 0 0 auto;
}
.prido-grilla-actions > .prido-grilla-cart-wrap,
.prido-grilla-actions > .prido-grilla-notify-wrap {
    flex: 1 1 auto;
    min-width: 0;
}

/* Chips frosted para favorito/comparar (el contenedor ya no aporta fondo) */
.prido-grilla-actions .prido-grilla-btn-wish:not(.added),
.prido-grilla-actions .prido-grilla-btn-compare:not(.added) {
    background: var(--prido-glass-chip);
    border: 1px solid var(--prido-glass-border);
    -webkit-backdrop-filter: var(--prido-glass-backdrop);
    backdrop-filter: var(--prido-glass-backdrop);
    box-shadow: var(--prido-glass-shadow-soft);
}
.prido-grilla-actions .prido-grilla-btn-wish:not(.added):hover,
.prido-grilla-actions .prido-grilla-btn-compare:not(.added):hover {
    background: var(--prido-glass-chip-hover);
}

/* Botón primario ancho: carrito (turquesa) y avísame (ghost) comparten forma */
.prido-grilla-cart-wrap .prido-grilla-btn-cart,
.prido-grilla-notify-wrap .prido-grilla-btn-notify {
    width: 100%;
    height: 40px;
    border-radius: 12px;
    gap: 6px;
    padding: 0 8px;
    font-family: var(--prido-font-ui);
    font-size: 12px;
    font-weight: var(--prido-weight-bold);
    letter-spacing: 0;
}
/* En los botones anchos el SVG va inline (no centrado absoluto) junto al label */
.prido-grilla-btn-cart svg,
.prido-grilla-btn-notify svg {
    position: static;
    top: auto;
    left: auto;
    transform: none;
    flex: none;
    width: 16px;
    height: 16px;
}
.prido-grilla-btn-cart:hover svg,
.prido-grilla-btn-notify:hover svg {
    transform: none;
}
.prido-grilla-btn-label {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1;
}
/* Los botones anchos tienen label visible → su tooltip sobra */
.prido-grilla-btn-cart .prido-grilla-tooltip,
.prido-grilla-btn-notify .prido-grilla-tooltip {
    display: none;
}

/* Botón "Avísame" (ghost de marca) */
.prido-grilla-btn-notify {
    color: var(--prido-theme-ink);
    background: var(--prido-glass-chip);
    border: 1px solid var(--prido-glass-accent-border);
    -webkit-backdrop-filter: var(--prido-glass-backdrop);
    backdrop-filter: var(--prido-glass-backdrop);
    box-shadow: var(--prido-glass-shadow-soft);
}
.prido-grilla-btn-notify:hover {
    background: var(--prido-glass-accent-fill);
    border-color: var(--prido-glass-accent-border-strong);
    color: var(--prido-theme-ink);
}

/* Intercambio carrito ↔ avísame según stock (reactivo a cambios de data-in-stock por JS) */
.prido-grilla-notify-wrap {
    display: none;
}
.prido-product-card[data-in-stock="0"] .prido-grilla-cart-wrap,
.wd-product[data-in-stock="0"] .prido-grilla-cart-wrap {
    display: none;
}
.prido-product-card[data-in-stock="0"] .prido-grilla-notify-wrap,
.wd-product[data-in-stock="0"] .prido-grilla-notify-wrap {
    display: flex;
}

/* Scrim suave para que los chips blancos se lean sobre cualquier foto */
.prido-grilla-products .product-element-top::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    border-radius: inherit;
    background: linear-gradient(to top,
        color-mix(in srgb, var(--prido-theme-overlay) 92%, transparent),
        transparent 44%);
    opacity: 0;
    transition: opacity 0.28s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.prido-grilla-products .wd-product:hover .product-element-top::after,
.prido-grilla-products .prido-product-card:hover .product-element-top::after,
.prido-grilla-products .wd-product:focus-within .product-element-top::after,
.prido-grilla-products .prido-product-card:focus-within .product-element-top::after {
    opacity: 1;
}

/* ── Estado SIN STOCK ─────────────────────────────────────────────── */
/* Badge "Agotado" — SSR en product-card.php, SIEMPRE visible (no solo hover),
   texto explícito (no transmitido solo por color). */
.prido-grilla-products .prido-product-card__stock-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 7;
    display: none;
    align-items: center;
    gap: 5px;
    padding: 5px 11px;
    border-radius: 10px;
    font-family: var(--prido-font-heading);
    font-size: var(--prido-type-small);
    font-weight: var(--prido-weight-heavy);
    letter-spacing: 0.03em;
    line-height: 1;
    background: color-mix(in srgb, #c0392b 14%, var(--prido-theme-surface-strong));
    color: #c0392b;
    border: 1px solid color-mix(in srgb, #c0392b 30%, transparent);
    -webkit-backdrop-filter: saturate(140%) blur(10px);
    backdrop-filter: saturate(140%) blur(10px);
    box-shadow: var(--prido-grid-shadow, var(--prido-glass-shadow-soft));
}
.prido-grilla-products .prido-product-card[data-in-stock="0"] .prido-product-card__stock-badge,
.prido-grilla-products .wd-product[data-in-stock="0"] .prido-product-card__stock-badge {
    display: inline-flex;
}
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__stock-badge {
    background: color-mix(in srgb, #e27a6e 20%, var(--prido-theme-surface-strong));
    color: #eca99f;
    border-color: color-mix(in srgb, #e27a6e 36%, transparent);
}
/* Desaturación sutil de la foto agotada (acompaña al texto, nunca color solo) */
.prido-grilla-products .prido-product-card[data-in-stock="0"] .product-image-link img,
.prido-grilla-products .wd-product[data-in-stock="0"] .product-image-link img {
    filter: grayscale(0.5) opacity(0.85);
}

/* ── Formulario "Avísame" (inyectado por JS) ──────────────────────── */
.prido-grilla-notify-form {
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 10px;
    z-index: 8;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px 12px 10px;
    border-radius: 14px;
    background: var(--prido-theme-surface-strong);
    border: 1px solid var(--prido-glass-border);
    box-shadow: var(--prido-glass-shadow);
    -webkit-backdrop-filter: var(--prido-glass-backdrop-strong);
    backdrop-filter: var(--prido-glass-backdrop-strong);
}
.prido-grilla-notify-form[hidden] {
    display: none;
}
.prido-grilla-notify-form__title {
    margin: 0;
    font-family: var(--prido-font-heading);
    font-size: 12.5px;
    font-weight: var(--prido-weight-bold);
    color: var(--prido-theme-ink);
    padding-right: 22px;
    line-height: 1.2;
}
.prido-grilla-notify-form__row {
    display: flex;
    gap: 6px;
}
.prido-grilla-notify-form input[type="email"] {
    flex: 1 1 auto;
    min-width: 0;
    height: 36px;
    padding: 0 10px;
    border-radius: 9px;
    border: 1px solid var(--prido-glass-border);
    background: var(--prido-theme-surface);
    color: var(--prido-theme-ink);
    font-family: var(--prido-font-ui);
    font-size: 13px;
}
.prido-grilla-notify-form button[type="submit"] {
    flex: 0 0 auto;
    height: 36px;
    padding: 0 14px;
    border: 0;
    border-radius: 9px;
    background: var(--prido-secondary);
    color: #fff;
    font-family: var(--prido-font-ui);
    font-size: 12.5px;
    font-weight: var(--prido-weight-bold);
    cursor: pointer;
}
.prido-grilla-notify-form button[type="submit"][disabled] {
    opacity: 0.6;
    cursor: progress;
}
.prido-grilla-notify-form__close {
    position: absolute;
    top: 6px;
    right: 8px;
    width: 24px;
    height: 24px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--prido-theme-muted);
    cursor: pointer;
    font-size: 17px;
    line-height: 1;
}
.prido-grilla-notify-form__status {
    margin: 0;
    font-size: 11.5px;
    line-height: 1.35;
    color: var(--prido-theme-muted);
}
.prido-grilla-notify-form__status.is-ok {
    color: var(--prido-secondary);
}
.prido-grilla-notify-form__status.is-err {
    color: #c0392b;
}
/* Mientras el form está abierto, oculta la barra para que no se solapen */
.prido-product-card.is-notify-open .prido-grilla-actions,
.wd-product.is-notify-open .prido-grilla-actions {
    opacity: 0;
    pointer-events: none;
}

/* ── Foco accesible (anillo de marca consistente) ─────────────────── */
.prido-grilla-action-btn:focus-visible,
.prido-product-card__quote .prido-cotizar-btn--grilla:focus-visible,
.prido-grilla-notify-form input:focus-visible,
.prido-grilla-notify-form button:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--prido-secondary) 70%, transparent);
    outline-offset: 2px;
}

/* ── Touch: resetear el desplazamiento al revelar con .is-touch-active ── */
@media (hover: none), (pointer: coarse) {
    .wd-product.is-touch-active .prido-grilla-actions,
    .prido-product-card.is-touch-active .prido-grilla-actions {
        transform: none;
    }
    /* El badge "Agotado" debe verse siempre, también en touch */
    .prido-grilla-products .prido-product-card[data-in-stock="0"] .prido-product-card__stock-badge,
    .prido-grilla-products .wd-product[data-in-stock="0"] .prido-product-card__stock-badge {
        opacity: 1 !important;
        visibility: visible !important;
    }
}
@media (max-width: 480px) {
    .prido-grilla-actions {
        left: 8px;
        right: 8px;
        bottom: 8px;
        gap: 6px;
    }
    .prido-grilla-cart-wrap .prido-grilla-btn-cart,
    .prido-grilla-notify-wrap .prido-grilla-btn-notify {
        height: 38px;
        font-size: 11.5px;
    }
}

/* ── Movimiento reducido ──────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
    .prido-grilla-actions,
    .prido-grilla-products .product-element-top::after,
    .prido-grilla-products .product-image-link img,
    .prido-grilla-action-btn,
    .prido-grilla-action-btn svg {
        transition: none !important;
    }
    .prido-grilla-actions {
        transform: none;
    }
    .prido-grilla-products .wd-product:hover .product-image-link img,
    .prido-grilla-products .prido-product-card:hover .product-image-link img {
        transform: none;
    }
}

/* ==========================================================================
   15-P. PREMIUM v2 — flechas de galería, Cotizar hero teal, precio mockup,
          transferencia compacta, Avísame en el body (sin stock)
   ========================================================================== */

/* token CTA: teal profundo (AA con blanco) en claro; teal brillante en oscuro */
.prido-grilla-products { --prido-cta-teal: #0b6e6a; }
:root[data-theme="dark"] .prido-grilla-products { --prido-cta-teal: #2dc6c1; }

/* ── Galería: solo flechas (sin dots/thumbnails) ── */
.prido-grilla-products .prido-var-dots,
.prido-grilla-products .prido-var-dots-wrap { display: none !important; }

.prido-grilla-products .prido-gallery-nav {
    position: absolute;
    inset: 0;
    z-index: 5;
    pointer-events: none;
}
.prido-grilla-products .prido-gallery-nav .prido-var-arrow {
    position: absolute !important;
    top: 50%;
    transform: translateY(-50%) scale(0.9);
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    display: flex !important;            /* vence al .prido-var-arrow { display:none !important } heredado */
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid var(--prido-glass-border) !important;
    background: var(--prido-glass-chip) !important;
    color: var(--prido-theme-ink) !important;
    -webkit-backdrop-filter: var(--prido-glass-backdrop) !important;
    backdrop-filter: var(--prido-glass-backdrop) !important;
    box-shadow: var(--prido-glass-shadow-soft) !important;
    cursor: pointer;
    pointer-events: none;
    opacity: 0;
    visibility: visible !important;
    transition: opacity .24s cubic-bezier(.2,.7,.2,1), transform .24s cubic-bezier(.2,.7,.2,1), background .18s;
}
.prido-grilla-products .prido-gallery-nav .prido-var-arrow--prev { left: 8px; }
.prido-grilla-products .prido-gallery-nav .prido-var-arrow--next { right: 8px; }
/* el diseño viejo ocultaba el SVG y usaba ::before; aquí mostramos el SVG real */
.prido-grilla-products .prido-gallery-nav .prido-var-arrow::before { display: none !important; content: none !important; }
.prido-grilla-products .prido-gallery-nav .prido-var-arrow svg {
    width: 18px !important;
    height: 18px !important;
    opacity: 1 !important;
    visibility: visible !important;
    stroke: currentColor !important;
}
.prido-grilla-products .prido-gallery-nav .prido-var-arrow svg path,
.prido-grilla-products .prido-gallery-nav .prido-var-arrow svg polyline,
.prido-grilla-products .prido-gallery-nav .prido-var-arrow svg line {
    opacity: 1 !important;
    visibility: visible !important;
    stroke: currentColor !important;
}
.prido-grilla-products .wd-product:hover .prido-gallery-nav .prido-var-arrow,
.prido-grilla-products .prido-product-card:hover .prido-gallery-nav .prido-var-arrow,
.prido-grilla-products .wd-product:focus-within .prido-gallery-nav .prido-var-arrow,
.prido-grilla-products .prido-product-card:focus-within .prido-gallery-nav .prido-var-arrow {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(-50%) scale(1);
}
.prido-grilla-products .prido-gallery-nav .prido-var-arrow:hover {
    background: var(--prido-glass-chip-hover) !important;
    transform: translateY(-50%) scale(1.06);
}
.prido-grilla-products .prido-gallery-nav .prido-var-arrow:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--prido-secondary) 70%, transparent);
    outline-offset: 2px;
    opacity: 1;
    pointer-events: auto;
}
@media (hover: none), (pointer: coarse) {
    .prido-grilla-products .prido-gallery-nav .prido-var-arrow {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(-50%) scale(1);
    }
}

/* ── Precio: ahora · antes · -X% (orden mockup) ── */
.prido-grilla-products .prido-price-line {
    display: flex !important;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 8px;
    white-space: normal !important;
}
.prido-grilla-products .prido-price-line ins { order: 1; text-decoration: none; }
.prido-grilla-products .prido-price-line del { order: 2; }
.prido-grilla-products .prido-price-line .prido-price-off { order: 3; }
.prido-grilla-products .prido-price-now {
    font-family: var(--prido-font-heading);
    font-size: 21px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.01em;
    color: var(--prido-theme-ink);
}
.prido-grilla-products .prido-price-was {
    font-size: 13px;
    font-weight: 600;
    color: var(--prido-muted);
    text-decoration: line-through;
}
.prido-grilla-products .prido-price-off {
    align-self: center;
    font-family: var(--prido-font-heading);
    font-size: 11.5px;
    font-weight: 800;
    color: #c0392b;
    background: color-mix(in srgb, #c0392b 12%, transparent);
    padding: 2px 7px;
    border-radius: 6px;
    line-height: 1;
}
:root[data-theme="dark"] .prido-grilla-products .prido-price-off {
    color: #eca99f;
    background: color-mix(in srgb, #e27a6e 18%, transparent);
}

/* ── Transferencia: una línea compacta ── */
.prido-grilla-products .prido-transfer-price {
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
    padding-top: 10px;
    min-height: 0;
    border-top: 1px solid var(--prido-grid-border);
}
.prido-grilla-products .prido-transfer-label {
    text-transform: none;
    letter-spacing: 0;
    font-size: 12px;
    font-weight: 600;
    color: var(--prido-muted);
}
.prido-grilla-products .prido-transfer-amount { font-size: 14px; }
.prido-grilla-products .prido-transfer-icon { opacity: 0.9; }

/* ── Cotizar: hero teal full-width (vence al CSS del plugin) ── */
.prido-grilla-products .prido-product-card__quote { width: 100%; margin-top: auto; }
.prido-grilla-products .prido-product-card__quote .prido-cotizar-wrap--grilla {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    text-align: center;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla {
    display: flex !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 44px !important;
    padding: 0 16px !important;
    gap: 8px !important;
    border: 0 !important;
    border-radius: 12px !important;
    font-family: var(--prido-font-ui) !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    background: var(--prido-cta-teal) !important;
    color: #fff !important;
    box-shadow: 0 6px 18px color-mix(in srgb, var(--prido-cta-teal) 30%, transparent) !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla svg {
    width: 16px !important;
    height: 16px !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:hover {
    background: color-mix(in srgb, var(--prido-cta-teal) 88%, #000) !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:not(.prido-cotizar-btn--disabled) {
    color: #06302d !important;  /* tinta oscura sobre teal brillante en modo oscuro */
}
/* Estado deshabilitado (visitante no-B2B / requiere variación): mismo tamaño, apagado */
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--disabled {
    background: var(--prido-glass-chip) !important;
    color: var(--prido-muted) !important;
    border: 1px solid var(--prido-glass-border) !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
}

/* ── Sin stock: ocultar Cotizar, mostrar "Avísame" hero en el body ── */
.prido-grilla-products .prido-card-notify-btn {
    display: none;
    box-sizing: border-box;
    width: 100%;
    margin-top: auto;
    min-height: 44px;
    padding: 0 16px;
    gap: 8px;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    cursor: pointer;
    font-family: var(--prido-font-ui);
    font-size: 13.5px;
    font-weight: 700;
    background: transparent;
    color: var(--prido-cta-teal);
    border: 1.6px solid color-mix(in srgb, var(--prido-cta-teal) 45%, var(--prido-glass-border));
}
.prido-grilla-products .prido-card-notify-btn svg { flex: none; }
.prido-grilla-products .prido-card-notify-btn:hover {
    background: color-mix(in srgb, var(--prido-cta-teal) 10%, transparent);
}
:root[data-theme="dark"] .prido-grilla-products .prido-card-notify-btn {
    color: var(--prido-secondary);
    border-color: color-mix(in srgb, var(--prido-secondary) 45%, var(--prido-glass-border));
}
.prido-grilla-products .prido-product-card[data-in-stock="0"] .prido-product-card__quote,
.prido-grilla-products .wd-product[data-in-stock="0"] .prido-product-card__quote {
    display: none !important;
}
.prido-grilla-products .prido-product-card[data-in-stock="0"] .prido-card-notify-btn,
.prido-grilla-products .wd-product[data-in-stock="0"] .prido-card-notify-btn {
    display: flex;
}
/* restos del notify de la barra (ya no se crea en JS) */
.prido-grilla-actions .prido-grilla-notify-wrap { display: none !important; }

/* ==========================================================================
   15-Q. MINIMALISTA v3 — alineado al SISTEMA DEL CARRITO / mini-cart
   Base B&W (ink/blanco/gris). Acentos: SOLO Agregar (teal profundo),
   monto transferencia (teal profundo) y título-hover (azul, como los links
   del carrito). Cotizar = INK (como "Finalizar compra"). -34% se deja igual.
   ========================================================================== */
.prido-grilla-products {
    --pc-ink: #0B1E2E;          /* acción primaria (como --ck-ink) */
    --pc-ink-soft: #1F2D3D;     /* hover ink */
    --pc-teal: #0E7E7A;         /* acento valor/CTA (deep teal, AA con blanco) */
    --pc-outline: #C2CAD3;      /* outline secundario (como --ck-border-strong) */
}
:root[data-theme="dark"] .prido-grilla-products {
    --pc-ink: #3F5872;          /* steel en dark (como --ck-ink dark) */
    --pc-ink-soft: #4C6680;
    --pc-teal: #2dc6c1;
    --pc-outline: rgba(255, 255, 255, 0.18);
}

/* — Cotizar → INK sólido (activo) / outline (deshabilitado/no-B2B) — */
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla {
    background: var(--pc-ink) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 6px !important;
    font-family: var(--prido-font-ui) !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:not(.prido-cotizar-btn--disabled):hover {
    background: var(--pc-ink-soft) !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:not(.prido-cotizar-btn--disabled) {
    color: #fff !important;   /* blanco sobre steel ink en dark */
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--disabled {
    background: transparent !important;
    color: var(--prido-theme-ink) !important;
    border: 1.5px solid var(--pc-outline) !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
}

/* — Agregar al carro → único acento de color fuerte (teal profundo) — */
.prido-grilla-products .prido-grilla-btn-cart {
    background: var(--pc-teal) !important;
    color: #fff !important;
    border-radius: 8px !important;
}
.prido-grilla-products .prido-grilla-btn-cart:hover,
.prido-grilla-products .prido-grilla-btn-cart.added {
    background: color-mix(in srgb, var(--pc-teal) 86%, #000) !important;
    color: #fff !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-cart {
    background: #2dc6c1 !important;
    color: #06302d !important;   /* tinta oscura sobre teal brillante en dark */
}

/* — Avísame (sin stock) → outline ink (secundario del carrito) — */
.prido-grilla-products .prido-card-notify-btn {
    background: transparent;
    color: var(--prido-theme-ink);
    border: 1.5px solid var(--pc-outline);
    border-radius: 6px;
}
.prido-grilla-products .prido-card-notify-btn:hover {
    background: color-mix(in srgb, var(--prido-theme-ink) 6%, transparent);
}
:root[data-theme="dark"] .prido-grilla-products .prido-card-notify-btn {
    color: var(--prido-theme-ink);
    border-color: var(--pc-outline);
}

/* — Transferencia: monto = acento teal profundo, Noto Sans (no Outfit 800) — */
.prido-grilla-products .prido-transfer-amount {
    color: var(--pc-teal) !important;
    font-family: var(--prido-font-ui) !important;
    font-weight: 700 !important;
}

/* — De-ruido tipográfico: pesos ≤700; Noto Sans salvo título + precio-now — */
.prido-grilla-products .prido-product-card__price .price,
.prido-grilla-products .price {
    font-weight: 700 !important;        /* baja de 800 */
}
.prido-grilla-products .prido-price-now {
    font-weight: 700;
}
.prido-grilla-products .prido-price-was {
    font-weight: 500;
}
.prido-grilla-products .wd-product-cats,
.prido-grilla-products .product-element-bottom .wd-product-cats {
    font-family: var(--prido-font-ui) !important;
    font-weight: 600 !important;
}
.prido-grilla-products .prido-transfer-label,
.prido-grilla-products .prido-var-attr,
.prido-grilla-products .prido-var-attr-label {
    font-family: var(--prido-font-ui);
}

/* — Título: mantener ink también en hover (sin azul; el lift + barra ya dan feedback) — */
.prido-grilla-products .wd-product:hover .wd-entities-title a,
.prido-grilla-products .prido-product-card:hover .wd-entities-title a,
.prido-grilla-products .wd-product:focus-within .wd-entities-title a,
.prido-grilla-products .prido-product-card:focus-within .wd-entities-title a {
    color: var(--prido-theme-ink) !important;
}

/* ==========================================================================
   15-R. FIXES v4 — tooltips de la barra arriba del chip + Cotizar activo (<a>)
   ========================================================================== */

/* (1) Tooltips favorito/comparar: posicionar ARRIBA del chip (no a la derecha),
   así no quedan detrás del chip vecino (cada chip crea su propio stacking
   context por backdrop-filter). */
.prido-grilla-actions .prido-grilla-tooltip {
    top: auto;
    bottom: calc(100% + 8px);
    left: 0;                  /* anclado al borde izq. del chip → se extiende hacia la
                                 derecha (dentro de la tarjeta), no se corta en el borde */
    right: auto;
    transform: translateY(4px);
    z-index: 60;
}
.prido-grilla-actions .prido-grilla-action-btn:hover .prido-grilla-tooltip,
.prido-grilla-actions .prido-grilla-action-btn:focus-visible .prido-grilla-tooltip {
    transform: translateY(0);
}
.prido-grilla-actions .prido-grilla-tooltip::after { display: none; } /* sin flecha lateral */

/* (2) Cotizar ACTIVO es un <a> (logged-in): forzar el mismo layout/tipografía
   que el <span> deshabilitado — centrado, sin subrayado, MAYÚSCULAS, Noto Sans.
   (El plugin ya lo intenta, pero una regla de link de mayor especificidad lo pisa.) */
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:link,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:visited,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:hover,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:focus {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    font-family: var(--prido-font-ui) !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    gap: 8px !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla > span {
    font: inherit !important;
    text-decoration: none !important;
    text-transform: inherit !important;
    color: inherit !important;
    line-height: 1 !important;
    border: 0 !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla svg {
    flex: none !important;
}

/* ==========================================================================
   15-S. FORMAS + PESOS (referencia Image #6/#7) — sin tocar la paleta minimal
   chips cuadrados, badge -34% rojo sólido arriba-izq, precio 800, radios suaves,
   borde teal en hover.
   ========================================================================== */

/* Chips favorito/comparar: cuadrado redondeado (no círculo) */
.prido-grilla-products .prido-grilla-btn-wish,
.prido-grilla-products .prido-grilla-btn-compare {
    border-radius: 11px !important;
}

/* Badge de descuento: rojo sólido, arriba-IZQUIERDA */
.prido-grilla-products .prido-var-badge,
.prido-grilla-products .prido-product-card__sale-badge {
    left: 12px;
    right: auto;
    background: #c0392b !important;
    color: #fff !important;
    border: 0 !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    box-shadow: 0 4px 12px color-mix(in srgb, #c0392b 32%, transparent) !important;
    font-weight: 800 !important;
}
/* sin stock: ocultar el badge de oferta (Agotado toma la esquina) */
.prido-grilla-products .prido-product-card[data-in-stock="0"] .prido-product-card__sale-badge,
.prido-grilla-products .wd-product[data-in-stock="0"] .prido-product-card__sale-badge {
    display: none !important;
}

/* Precio "ahora": bold 800 (como #6) */
.prido-grilla-products .prido-price-now {
    font-weight: 800 !important;
}
/* -34% en la línea de precio: texto rojo plano, sin pastilla (como #6) */
.prido-grilla-products .prido-price-off {
    background: transparent !important;
    padding: 0 !important;
    color: #c0392b !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-price-off {
    background: transparent !important;
    color: #eca99f !important;
}

/* Radios de botones más suaves (~10px, como #6) */
.prido-grilla-products .prido-grilla-btn-cart { border-radius: 10px !important; }
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla { border-radius: 10px !important; }
.prido-grilla-products .prido-card-notify-btn { border-radius: 10px; }

/* Borde teal en hover (acento, como #6/#7) */
.prido-grilla-products .wd-product:hover .product-wrapper,
.prido-grilla-products .prido-product-card:hover .product-wrapper,
.prido-grilla-products .wd-product:focus-within .product-wrapper,
.prido-grilla-products .prido-product-card:focus-within .product-wrapper {
    border-color: color-mix(in srgb, var(--prido-secondary) 45%, var(--prido-grid-border)) !important;
}

/* Eyebrow un poco más bold (como #6) */
.prido-grilla-products .wd-product-cats,
.prido-grilla-products .product-element-bottom .wd-product-cats {
    font-weight: 700 !important;
}

/* ==========================================================================
   15-T. REFERENCIA #8 — cards más ANCHAS + look premium
   3 por fila + sidebar angosto; Cotizar/Agregar TEAL; tipografía mayor;
   esquinas redondeadas; borde teal; eyebrow azul-acero.
   ========================================================================== */

/* (A) Layout: 3 columnas (desktop) + 2 (tablet) + filtro más angosto = cards anchas */
.prido-catalog-page,
.prido-catalog-archive { --prido-filters-width: 339px; } /* +50% (226→339); cards se angostan, gaps 24px simétricos */
@media (min-width: 1025px) {
    .prido-grilla-products { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (min-width: 769px) and (max-width: 1024px) {
    .prido-grilla-products { grid-template-columns: repeat(2, 1fr) !important; }
}

/* (B) Card: más redondeada + borde teal sutil en reposo */
.prido-grilla-products .product-wrapper {
    border-radius: 26px !important;
    border-color: color-mix(in srgb, var(--prido-secondary) 26%, var(--prido-grid-border)) !important;
}
.prido-grilla-products .product-element-top { border-radius: 26px 26px 0 0 !important; }
.prido-grilla-products .wd-product:hover .product-wrapper,
.prido-grilla-products .prido-product-card:hover .product-wrapper,
.prido-grilla-products .wd-product:focus-within .product-wrapper,
.prido-grilla-products .prido-product-card:focus-within .product-wrapper {
    border-color: color-mix(in srgb, var(--prido-secondary) 55%, var(--prido-grid-border)) !important;
}

/* (C) Más aire en el cuerpo */
.prido-grilla-products .product-element-bottom { padding: 22px 22px 24px; gap: 9px; }

/* (D) Eyebrow azul-acero (como #8) */
.prido-grilla-products .wd-product-cats,
.prido-grilla-products .product-element-bottom .wd-product-cats {
    color: var(--prido-primary) !important;
    font-size: 12px !important;
    letter-spacing: 0.13em;
}

/* (E) Título + precio más grandes (como #8) */
.prido-grilla-products .wd-entities-title a { font-size: 22px !important; }
.prido-grilla-products .prido-price-now { font-size: 29px !important; }
.prido-grilla-products .prido-price-was { font-size: 17px !important; }
.prido-grilla-products .prido-price-off { font-size: 16px !important; }

/* (F) Chips favorito/comparar más grandes (cuadrado redondeado) */
.prido-grilla-products .prido-grilla-btn-wish,
.prido-grilla-products .prido-grilla-btn-compare {
    width: 50px !important;
    height: 50px !important;
    border-radius: 14px !important;
}
.prido-grilla-products .prido-grilla-btn-wish svg,
.prido-grilla-products .prido-grilla-btn-compare svg {
    width: 22px !important;
    height: 22px !important;
}

/* (G) Barra: botón Agregar más alto */
.prido-grilla-products .prido-grilla-actions { left: 12px; right: 12px; bottom: 12px; gap: 9px; }
.prido-grilla-products .prido-grilla-btn-cart {
    height: 50px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
    gap: 8px !important;
}
.prido-grilla-products .prido-grilla-btn-cart svg { width: 19px !important; height: 19px !important; }

/* (H) Cotizar → TEAL (como #8), grande y redondeado; disabled = outline grande */
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:not(.prido-cotizar-btn--disabled) {
    background: var(--pc-teal) !important;
    color: #fff !important;
    min-height: 52px !important;
    border-radius: 14px !important;
    font-size: 14.5px !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:not(.prido-cotizar-btn--disabled):hover {
    background: color-mix(in srgb, var(--pc-teal) 88%, #000) !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:not(.prido-cotizar-btn--disabled) {
    background: #2dc6c1 !important;
    color: #06302d !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--disabled {
    min-height: 52px !important;
    border-radius: 14px !important;
    font-size: 14.5px !important;
}
.prido-grilla-products .prido-card-notify-btn {
    min-height: 52px;
    border-radius: 14px;
    font-size: 14.5px;
}

/* (I) Transferencia un poco más grande */
.prido-grilla-products .prido-transfer-label { font-size: 13px; }
.prido-grilla-products .prido-transfer-amount { font-size: 16px !important; }

/* (J) Badge -34%: pastilla más redondeada (como #8) */
.prido-grilla-products .prido-var-badge,
.prido-grilla-products .prido-product-card__sale-badge {
    border-radius: 999px !important;
    padding: 7px 14px !important;
    font-size: 13px !important;
}

/* ==========================================================================
   15-U. AFINADO — pesos tipográficos más livianos + iconos finos (mockup)
   ========================================================================== */

/* Pesos más livianos (como el mockup, las letras se veían muy pesadas) */
.prido-grilla-products .wd-entities-title a { font-weight: 600 !important; }
.prido-grilla-products .wd-product-cats,
.prido-grilla-products .product-element-bottom .wd-product-cats { font-weight: 600 !important; }
.prido-grilla-products .prido-product-card__price .price,
.prido-grilla-products .price { font-weight: 700 !important; }
.prido-grilla-products .prido-price-now { font-weight: 700 !important; }
.prido-grilla-products .prido-price-was { font-weight: 400 !important; }
.prido-grilla-products .prido-price-off { font-weight: 700 !important; }
.prido-grilla-products .prido-transfer-label { font-weight: 500 !important; }
.prido-grilla-products .prido-var-badge,
.prido-grilla-products .prido-product-card__sale-badge { font-weight: 700 !important; }

/* Iconos más finos (trazo 1.7, como el mockup) — vence al base 2.25 de los chips
   y al stroke=2 del SVG del plugin Cotizar */
.prido-grilla-products .prido-grilla-action-btn svg,
.prido-grilla-products .prido-grilla-action-btn svg path,
.prido-grilla-products .prido-grilla-action-btn svg circle,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla svg,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla svg path,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla svg polyline,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla svg line,
.prido-grilla-products .prido-transfer-icon svg,
.prido-grilla-products .prido-transfer-icon svg path,
.prido-grilla-products .prido-card-notify-btn svg,
.prido-grilla-products .prido-card-notify-btn svg path {
    stroke-width: 1.7 !important;
}

/* ==========================================================================
   15-V. SIMETRÍA DESKTOP — gap entre cards = gap filtro↔grilla (ref. Steelcase)
   El shell-gap (sidebar↔grilla) se fijó en 24px en prido-catalog.css; aquí el
   gap de la grilla también a 24px → espaciado uniforme en todo el catálogo.
   ========================================================================== */
@media (min-width: 1025px) {
    .prido-grilla-products { gap: 24px !important; }
}

/* ==========================================================================
   15-W. MIGRACIÓN CARRITO/CHECKOUT — de-round + 1 fuente + pesos {400,600,700}
   Paneles 12px · botones/inputs 6px · chips 8px · badges 6px · Noto Sans
   (Outfit solo en H1 hero + título de card). Solo formas+tipografía+espaciado.
   ========================================================================== */
/* Cards / paneles → 12px (vence 26px de 15-T y variantes responsive) */
.prido-grilla-products .product-wrapper { border-radius: 12px !important; }
.prido-grilla-products .product-element-top { border-radius: 12px 12px 0 0 !important; }
.prido-grilla-products .product-wrapper::before { border-radius: 12px 12px 0 0 !important; }
/* Cuerpo: padding/gap simétrico (rítmica 16/8) */
.prido-grilla-products .product-element-bottom { padding: 16px 16px 18px !important; gap: 8px !important; }
/* Chips favorito/comparar → 8px (cuadrado crisp) */
.prido-grilla-products .prido-grilla-btn-wish,
.prido-grilla-products .prido-grilla-btn-compare { border-radius: 8px !important; }
/* Botones anchos (Agregar/Cotizar/Avísame) → 6px */
.prido-grilla-products .prido-grilla-btn-cart,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
.prido-grilla-products .prido-card-notify-btn { border-radius: 6px !important; }
/* Badges → 6px + Noto Sans (sin pastilla 999px) */
.prido-grilla-products .prido-var-badge,
.prido-grilla-products .prido-product-card__sale-badge,
.prido-grilla-products .prido-product-card__stock-badge {
    border-radius: 6px !important;
    font-family: var(--prido-font-ui) !important;
}
.prido-grilla-products .prido-product-card__stock-badge { font-weight: 700 !important; }
/* Precio → Noto Sans (Outfit queda solo en el título de la card + H1 hero) */
.prido-grilla-products .prido-product-card__price .price,
.prido-grilla-products .price,
.prido-grilla-products .prido-price-now,
.prido-grilla-products .prido-price-was,
.prido-grilla-products .prido-price-off { font-family: var(--prido-font-ui) !important; }
/* Toolbar de orden/resultados → 12px, padding/gap simétricos */
.prido-grilla-toolbar { border-radius: 12px !important; padding: 16px 20px !important; gap: 12px !important; }
.prido-grilla-orderby,
.prido-orderby-select,
.prido-per-page-select,
.prido-pp-option,
.prido-grilla-dots,
.prido-grilla-page-indicator { border-radius: 8px !important; }
.prido-grilla-dot,
.prido-grilla-ellipsis,
.prido-grilla-page-indicator { font-family: var(--prido-font-ui) !important; }
/* Empty / toast / notify-form → 12px; inputs notify → 6px */
.prido-grilla-empty,
.prido-grilla-toast,
.prido-grilla-notify-form { border-radius: 12px !important; }
.prido-grilla-notify-form input[type="email"],
.prido-grilla-notify-form button[type="submit"] { border-radius: 6px !important; }
.prido-grilla-notify-form__title { font-family: var(--prido-font-ui) !important; }


/* ==========================================================================
   PREMIUM NEUTRAL v2 — 2026-05-31
   Paleta neutra (negro/blanco/gris) + descuento ROJO original (no se toca).
   Sin teal en la grilla. Botones de acción unificados y legibles. Tipografía
   simplificada: peso fuerte solo en precio (700) + título (600). Light + dark.
   ========================================================================== */

/* (0) Quitar teal: redefinir tokens de acento → ink/neutro + flat grid tokens */
.prido-grilla-products {
    --pc-teal: var(--prido-theme-ink);
    --prido-cta-teal: var(--prido-theme-ink);
    --prido-grid-surface: var(--prido-theme-surface-strong);
    --prido-grid-surface-soft: var(--prido-theme-canvas-soft);
    --prido-grid-border: var(--prido-theme-border);
    --prido-grid-border-strong: var(--prido-theme-border-strong);
    --prido-grid-shadow: none;
    --prido-grid-shadow-strong: none;
    --prido-grid-chip: var(--prido-theme-canvas-soft);
    --prido-grid-chip-hover: var(--prido-theme-surface);
}
:root[data-theme="dark"] .prido-grilla-products {
    --pc-teal: var(--prido-theme-ink);
    --prido-cta-teal: var(--prido-theme-ink);
}

/* (1) Flatten: sin glass blur / sombras; radios calmados */
.prido-grilla-toolbar,
.prido-grilla-orderby,
.prido-grilla-products .product-wrapper {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}
.prido-grilla-toolbar {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--prido-theme-border) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 4px 2px 14px !important;
    margin-bottom: 18px !important;
}
.prido-grilla-orderby { border: 1px solid var(--prido-theme-border) !important; border-radius: 10px !important; background: transparent !important; box-shadow: none !important; }
.prido-grilla-orderby:hover,
.prido-grilla-orderby:focus-within { transform: none !important; border-color: var(--prido-theme-border-strong) !important; background: var(--prido-theme-canvas-soft) !important; box-shadow: none !important; }
.prido-pp-option { border: 1px solid var(--prido-theme-border) !important; border-radius: 10px !important; background: transparent !important; box-shadow: none !important; font-weight: var(--prido-weight-medium) !important; }
.prido-pp-option:hover { transform: none !important; background: var(--prido-theme-canvas-soft) !important; border-color: var(--prido-theme-border-strong) !important; box-shadow: none !important; }
.prido-pp-option.is-active { background: var(--prido-theme-canvas-soft) !important; border-color: var(--prido-theme-border-strong) !important; box-shadow: none !important; color: var(--prido-theme-ink) !important; font-weight: var(--prido-weight-semibold) !important; }
.prido-grilla-products .product-wrapper { border: 1px solid var(--prido-theme-border) !important; border-radius: 16px !important; box-shadow: none !important; background: var(--prido-theme-surface-strong) !important; }
.prido-grilla-products .wd-product:hover .product-wrapper { box-shadow: none !important; border-color: var(--prido-theme-border-strong) !important; }
.prido-grilla-products .product-element-top { border-radius: 16px 16px 0 0 !important; }
.prido-grilla-products .product-element-top::after { opacity: 0 !important; background: none !important; }
.prido-grilla-products .product-image-link img { filter: none !important; }

/* (2) Botones de acción (wishlist · comparar · Agregar al carro) — unificados,
       opacos y legibles sobre la imagen; hover = relleno ink + texto blanco */
.prido-grilla-products .prido-grilla-action-btn,
.prido-grilla-products .prido-grilla-btn-cart {
    background: rgba(255, 255, 255, 0.94) !important;
    color: var(--prido-theme-ink) !important;
    border: 1px solid var(--prido-theme-border) !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}
.prido-grilla-products .prido-grilla-action-btn svg,
.prido-grilla-products .prido-grilla-btn-cart svg { color: var(--prido-theme-ink) !important; }
.prido-grilla-products .prido-grilla-action-btn:hover,
.prido-grilla-products .prido-grilla-action-btn.added,
.prido-grilla-products .prido-grilla-btn-cart:hover,
.prido-grilla-products .prido-grilla-btn-cart.added {
    background: #0B1E2E !important;
    color: #fff !important;
    border-color: #0B1E2E !important;
}
.prido-grilla-products .prido-grilla-action-btn:hover svg,
.prido-grilla-products .prido-grilla-btn-cart:hover svg { color: #fff !important; }
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-action-btn,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-cart {
    background: rgba(22, 30, 40, 0.94) !important;
    color: var(--prido-theme-ink) !important;
    border-color: var(--prido-theme-border) !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-action-btn:hover,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-action-btn.added,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-cart:hover,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-cart.added {
    background: #edf4f8 !important;
    color: #0B1E2E !important;
    border-color: #edf4f8 !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-action-btn:hover svg,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-cart:hover svg { color: #0B1E2E !important; }

/* (3) Transferencia → neutra (ink), sin teal; hairline */
.prido-grilla-products .prido-transfer-amount { color: var(--prido-theme-ink) !important; font-weight: var(--prido-weight-medium) !important; }
.prido-grilla-products .prido-transfer-icon { color: var(--prido-theme-muted) !important; opacity: 1 !important; }
.prido-grilla-products .prido-transfer-price { border-top: 1px solid var(--prido-theme-border) !important; }
.prido-grilla-products .prido-transfer-label { font-weight: var(--prido-weight-medium) !important; text-transform: none !important; letter-spacing: 0 !important; }

/* (4) Tipografía: peso fuerte solo en precio (700) + título (600); resto ≤500 */
.prido-grilla-products .prido-product-card__price .price,
.prido-grilla-products .price,
.prido-grilla-products .prido-price-now { font-weight: var(--prido-weight-bold) !important; }
.prido-grilla-products .wd-entities-title a { font-weight: var(--prido-weight-semibold) !important; }
.prido-grilla-products .wd-product:hover .wd-entities-title a { color: var(--prido-theme-ink) !important; }
.prido-grilla-products .wd-product-cats,
.prido-grilla-products .product-element-bottom .wd-product-cats,
.prido-grilla-products .wd-product-cats a { font-weight: var(--prido-weight-medium) !important; letter-spacing: 0.04em !important; color: var(--prido-theme-muted) !important; }
.prido-grilla-products .price del,
.prido-grilla-products .prido-price-was { color: var(--prido-theme-muted) !important; font-weight: var(--prido-weight-regular) !important; }
.prido-grilla-products .prido-grilla-btn-cart,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla { font-weight: var(--prido-weight-semibold) !important; }


/* ==========================================================================
   v3 AJUSTES — 2026-06-01: bordes rectos + precio alineado sin % inline
   ========================================================================== */
/* (1) Bordes rectos (squared) en cards, imagen, botones, badges, toolbar */
.prido-grilla-products .product-wrapper { border-radius: 4px !important; }
.prido-grilla-products .product-element-top { border-radius: 4px 4px 0 0 !important; }
.prido-grilla-products .prido-grilla-action-btn,
.prido-grilla-products .prido-grilla-btn-cart,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
.prido-grilla-products .prido-card-notify-btn { border-radius: 4px !important; }
.prido-grilla-orderby,
.prido-orderby-select,
.prido-pp-option { border-radius: 4px !important; }
.prido-grilla-products .prido-var-badge,
.prido-grilla-products .prido-product-card__sale-badge { border-radius: 4px !important; }

/* (2) Precio: alinear verticalmente normal + oferta; quitar -% inline (ya va en el badge) */
.prido-grilla-products .prido-product-card__price .price,
.prido-grilla-products .price { align-items: center !important; }
.prido-grilla-products .prido-price-off { display: none !important; }

/* COTIZAR de la tarjeta: forma RECTANGULAR igual que "Avísame" (.prido-card-notify-btn).
   Unifica el radio del botón de cotizar (anula los pill 999px heredados) en todos los
   estados, con la misma especificidad/orden para ganar la cascada. 2026-06-01 */
.prido-grilla-products .prido-product-card__quote .prido-cotizar-wrap--grilla .prido-cotizar-btn--grilla,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--disabled {
    border-radius: 4px !important;
}


/* ==========================================================================
   Skeleton de carga — placeholders grises que reservan el espacio EXACTO de las
   cards mientras llegan los productos (filtrado / "Cargar más"). Son hermanos de
   las cards en el grid (.prido-grilla-products) → fluyen en las columnas existentes.
   Dimensiones medidas de la card real (radio 4px, bg surface-strong, border
   theme-border, media 1:1 radio 4px 4px 0 0, body padding 16px 16px 18px).
   Tokens GLOBALES theme-aware (la grilla está FUERA del panel de filtros). 2026-06-01
   ========================================================================== */
.prido-grilla-skeleton {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 100%;
    background: var(--prido-theme-surface-strong, #fff);
    border: 1px solid var(--prido-theme-border, rgba(201, 212, 221, 0.74));
    border-radius: 4px;
    overflow: hidden;
}
.prido-grilla-skeleton__media {
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 4px 4px 0 0;
    flex-shrink: 0;
}
.prido-grilla-skeleton__body {
    flex: 1;
    padding: 16px 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 9px;
}
.prido-grilla-skeleton__line {
    height: 11px;
    border-radius: 6px;
}
.prido-grilla-skeleton__line--cat    { width: 38%; }
.prido-grilla-skeleton__line--title  { width: 92%; }
.prido-grilla-skeleton__line--title2 { width: 60%; }
.prido-grilla-skeleton__line--price  { width: 48%; height: 18px; margin-top: 8px; }

/* Relleno gris + shimmer (theme-aware) */
.prido-grilla-skeleton__media,
.prido-grilla-skeleton__line {
    background-color: color-mix(in srgb, var(--prido-theme-border, #c9d4dd) 78%, transparent);
    background-image: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.45) 50%, transparent 100%);
    background-size: 200% 100%;
    background-repeat: no-repeat;
    animation: prido-skeleton-shimmer 1.4s linear infinite;
}
@keyframes prido-skeleton-shimmer {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}
:root[data-theme="dark"] .prido-grilla-skeleton__media,
:root[data-theme="dark"] .prido-grilla-skeleton__line,
body.woodmart-dark .prido-grilla-skeleton__media,
body.woodmart-dark .prido-grilla-skeleton__line {
    background-color: rgba(255, 255, 255, 0.12);
    background-image: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.10) 50%, transparent 100%);
}
@media (prefers-reduced-motion: reduce) {
    .prido-grilla-skeleton__media,
    .prido-grilla-skeleton__line { animation: none; }
}


/* ==========================================================================
   16. TIENDA V1 — handoff Claude Design 2026-06-11
   Template de tienda/categoria/etiqueta/archivo del mockup, con tokens del
   sitio (Outfit/Noto Sans, --prido-secondary #2dc6c1, theme-aware):
   (A) densidad 3/4 columnas conmutable (4 por defecto; gana a 15-T por orden)
   (B) toolbar sticky en desktop (Ordenar + Mostrar + densidad); en tablet y
       mobile del archivo se mantienen las pildoras de filtros
   (C) cards compactas en 4 columnas (sin atributos, tipografia menor)
   (D) hover del mockup: lift -4px + sombra + borde teal + zoom de imagen
   (E) transferencia con monto en teal; CTA Cotizar ink solido (ghost en dark)
   (F) grilla 2 columnas en mobile con CTAs tactiles de 44px
   ========================================================================== */

/* --- (A) Densidad de columnas (desktop) --- */
@media (min-width: 1025px) {
    .prido-grilla-wrapper[data-columns="4"] .prido-grilla-products {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 18px;
    }
    .prido-grilla-wrapper[data-columns="3"] .prido-grilla-products {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
    /* sidebar del mockup: 280px (15-T lo habia ensanchado a 339px para 3-col) */
    .prido-catalog-page,
    .prido-catalog-archive { --prido-filters-width: 280px; }
}

/* Tablet (769-1024): 3 columnas como el mockup (834px = 3 col) */
@media (min-width: 769px) and (max-width: 1024px) {
    .prido-grilla-products {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 14px;
    }
}

/* --- (B) Toolbar: visible solo en desktop dentro del archivo --- */
@media (max-width: 1023px) {
    .prido-catalog-archive .prido-grilla-toolbar { display: none !important; }
}
@media (min-width: 1024px) {
    .prido-catalog-archive .prido-grilla-toolbar {
        position: sticky;
        /* compensa el zoom 0.9 del shell del catalogo (top se escala dentro del zoom) */
        top: calc(var(--prido-hs-offset, 126px) / 0.9);
        z-index: 40;
        background: var(--prido-theme-canvas) !important;
        border-top: 1px solid var(--prido-theme-border) !important;
        border-bottom: 1px solid var(--prido-theme-border) !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 10px 2px !important;
        margin-bottom: 20px !important;
        gap: 12px !important;
    }
}
.prido-grilla-result-count {
    font-size: 14px;
    color: var(--prido-theme-muted);
}

/* Toggle de densidad (segmented 3/4) */
.prido-grilla-density {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--prido-theme-border);
    border-radius: 6px;
    overflow: hidden;
    background: transparent;
}
.prido-density-option {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 9px;
    border: 0;
    border-left: 1px solid var(--prido-theme-border);
    background: transparent;
    color: var(--prido-theme-muted);
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}
.prido-density-option:first-child { border-left: 0; }
.prido-density-option:hover { color: var(--prido-theme-ink); }
.prido-density-option.is-active {
    background: var(--prido-theme-canvas-soft);
    color: var(--prido-theme-ink);
}
@media (max-width: 1024px) {
    .prido-grilla-density { display: none !important; }
}

/* --- (C) Cards compactas en 4 columnas --- */
@media (min-width: 1025px) {
    .prido-grilla-wrapper[data-columns="4"] .prido-var-attrs { display: none !important; }
    .prido-grilla-wrapper[data-columns="4"] .product-element-bottom { padding: 13px 14px 14px !important; }
    .prido-grilla-wrapper[data-columns="4"] .wd-entities-title a { font-size: 15px !important; }
    .prido-grilla-wrapper[data-columns="4"] .prido-product-card__price .price,
    .prido-grilla-wrapper[data-columns="4"] .price { font-size: 17px !important; }
}

/* --- (D) Hover del mockup: lift + sombra + borde teal + zoom imagen --- */
.prido-grilla-products .product-wrapper {
    border-radius: 14px !important;
    transition: transform 0.3s cubic-bezier(0.2, 0.6, 0.2, 1), box-shadow 0.3s cubic-bezier(0.2, 0.6, 0.2, 1), border-color 0.3s cubic-bezier(0.2, 0.6, 0.2, 1) !important;
}
.prido-grilla-products .product-element-top { border-radius: 14px 14px 0 0 !important; }
.prido-grilla-products .product-wrapper::before { border-radius: 14px 14px 0 0 !important; }
@media (hover: hover) and (pointer: fine) {
    .prido-grilla-products .wd-product:hover .product-wrapper,
    .prido-grilla-products .prido-product-card:hover .product-wrapper,
    .prido-grilla-products .wd-product:focus-within .product-wrapper {
        transform: translateY(-4px);
        box-shadow: 0 22px 44px -22px rgba(11, 30, 46, 0.35), 0 3px 10px rgba(11, 30, 46, 0.08) !important;
        border-color: color-mix(in srgb, var(--prido-secondary, #2dc6c1) 42%, var(--prido-theme-border)) !important;
    }
    .prido-grilla-products .product-image-link img {
        transition: transform 0.5s cubic-bezier(0.2, 0.6, 0.2, 1);
    }
    .prido-grilla-products .wd-product:hover .product-image-link img,
    .prido-grilla-products .prido-product-card:hover .product-image-link img {
        transform: scale(1.045);
    }
}
@media (prefers-reduced-motion: reduce) {
    .prido-grilla-products .product-wrapper,
    .prido-grilla-products .product-image-link img { transition: none !important; }
    .prido-grilla-products .wd-product:hover .product-wrapper { transform: none; }
    .prido-grilla-products .wd-product:hover .product-image-link img { transform: none; }
}

/* --- (E) Transferencia en teal + CTA Cotizar del mockup --- */
.prido-grilla-products .prido-transfer-amount {
    color: var(--prido-secondary, #2dc6c1) !important;
    font-weight: var(--prido-weight-bold, 700) !important;
}
/* Cotizar activo: ink solido, mayusculas (mockup); dark = ghost para contraste */
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active {
    background: var(--prido-theme-ink, #0b1e2e) !important;
    border: 1px solid var(--prido-theme-ink, #0b1e2e) !important;
    color: var(--prido-theme-canvas, #ffffff) !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 13px;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active:hover {
    background: color-mix(in srgb, var(--prido-theme-ink, #0b1e2e) 86%, #ffffff) !important;
    border-color: color-mix(in srgb, var(--prido-theme-ink, #0b1e2e) 86%, #ffffff) !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active,
body.woodmart-dark .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active {
    background: transparent !important;
    border: 1px solid var(--prido-theme-border-strong) !important;
    color: var(--prido-theme-ink) !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active:hover,
body.woodmart-dark .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active:hover {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: var(--prido-secondary, #2dc6c1) !important;
}

/* --- (F) Mobile: 2 columnas tactiles (mockup, antes 1 col) --- */
@media (min-width: 576px) and (max-width: 768px) {
    .prido-grilla-products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px;
    }
}
@media (max-width: 575px) {
    .prido-grilla-products {
        --prido-grid-cols-mobile: 2;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px;
    }
    .prido-grilla-products .prido-var-attrs { display: none !important; }
    .prido-grilla-products .product-element-bottom { padding: 11px 12px 12px !important; }
    .prido-grilla-products .prido-transfer-price { font-size: 11px !important; }
    /* CTAs tactiles de 44px */
    .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
    .prido-grilla-products .prido-card-notify-btn,
    .prido-grilla-products .prido-grilla-btn-cart { min-height: 44px; }
}


/* ==========================================================================
   17. TIENDA V1 R2 — revisión de fidelidad vs mockup (2026-06-11)
   Ajustes finos para igualar el handoff de Claude Design con tokens del sitio:
   (A) toolbar compacta del mockup (count "N productos", label Ordenar,
       "Mostrar" como segmented unido)
   (B) CTA Cotizar SOLIDO ink uppercase en TODOS los estados de grilla
       (la regla de §16 solo cubria --active); ghost en dark
   (C) badges pill, eyebrow azul-acero, nombre 16.5, precio 21/800
   (D) barra de acciones hover del mockup (38px radius 9, "Agregar al carro"
       con texto flex-1, hover borde teal)
   (E) load-more con barra de progreso teal + boton outline radius 9
   (F) hero: eyebrow teal 12/700, titulo hasta 56px, descripcion 540px
   ========================================================================== */

/* --- (A) Toolbar --- */
@media (min-width: 1024px) {
    .prido-catalog-archive .prido-grilla-toolbar { padding: 11px 2px !important; }
}
.prido-tb-lab {
    font-size: 12px;
    font-weight: var(--prido-weight-semibold, 600);
    color: var(--prido-theme-muted);
    white-space: nowrap;
}
.prido-grilla-result-count b {
    font-weight: var(--prido-weight-heavy, 800);
    color: var(--prido-theme-ink);
    font-variant-numeric: tabular-nums;
}
.prido-grilla-orderby { min-height: 36px; border-radius: 8px !important; }
.prido-orderby-select {
    min-height: 36px;
    padding: 0 30px 0 12px;
    font-size: 13px;
    font-weight: var(--prido-weight-semibold, 600);
    min-width: 150px;
}
/* "Mostrar" como segmented unido (extremos redondeados, bordes compartidos) */
.prido-grilla-toolbar .prido-grilla-per-page { gap: 0; }
.prido-grilla-toolbar .prido-pp-label { margin-right: 8px; font-size: 12px; }
.prido-grilla-toolbar a.prido-pp-option {
    border: 1px solid var(--prido-theme-border) !important;
    border-radius: 0 !important;
    margin-left: -1px;
    min-width: 34px;
    height: 34px;
    padding: 0 9px;
    font-size: 12.5px !important;
    font-weight: var(--prido-weight-bold, 700) !important;
    color: var(--prido-theme-muted) !important;
    background: transparent !important;
}
.prido-grilla-toolbar a.prido-pp-option:first-of-type { border-radius: 8px 0 0 8px !important; margin-left: 0; }
.prido-grilla-toolbar a.prido-pp-option:last-of-type { border-radius: 0 8px 8px 0 !important; }
.prido-grilla-toolbar a.prido-pp-option.is-active {
    background: var(--prido-theme-canvas-soft) !important;
    color: var(--prido-theme-ink) !important;
}
.prido-grilla-density { border-radius: 8px; }

/* --- (B) CTA Cotizar solido (todos los estados de la grilla) --- */
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--disabled,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--requires-variation,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active {
    background: var(--prido-theme-ink, #0b1e2e) !important;
    border: 1px solid var(--prido-theme-ink, #0b1e2e) !important;
    color: #fff !important;
    height: 42px;
    border-radius: 9px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 13px !important;
    font-weight: var(--prido-weight-heavy, 800) !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:hover {
    background: #16314a !important;
    border-color: #16314a !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--disabled,
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--requires-variation,
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active,
body.woodmart-dark .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla {
    background: transparent !important;
    border: 1px solid var(--prido-theme-border-strong) !important;
    color: var(--prido-theme-ink) !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:hover,
body.woodmart-dark .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:hover {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: var(--prido-secondary, #2dc6c1) !important;
}
/* "Avisame" ghost radius 9 (mockup .pcta.ghost) */
.prido-grilla-products .prido-card-notify-btn { border-radius: 9px !important; }

/* --- (C) Badges + tipografia de card --- */
.prido-grilla-products .prido-var-badge,
.prido-grilla-products .prido-product-card__sale-badge {
    border-radius: 999px !important;
    padding: 5px 10px !important;
    font-size: 11.5px !important;
    font-weight: var(--prido-weight-heavy, 800) !important;
    letter-spacing: 0.02em;
    line-height: 1 !important;
}
.prido-grilla-products .prido-product-card__stock-badge {
    border-radius: 999px !important;
    padding: 5px 10px !important;
    font-size: 11.5px !important;
}
.prido-grilla-products .wd-product-cats,
.prido-grilla-products .product-element-bottom .wd-product-cats,
.prido-grilla-products .wd-product-cats a,
.prido-grilla-products .prido-product-card__category-text {
    color: var(--prido-primary, #5e81a2) !important;
    font-size: 10.5px !important;
    font-weight: var(--prido-weight-bold, 700) !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
}
:root[data-theme="dark"] .prido-grilla-products .wd-product-cats,
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__category-text,
body.woodmart-dark .prido-grilla-products .wd-product-cats {
    color: color-mix(in srgb, var(--prido-primary, #5e81a2) 55%, #cfdce8) !important;
}
.prido-grilla-products .wd-entities-title a { font-size: 16.5px !important; line-height: 1.25 !important; }
.prido-grilla-products .prido-product-card__price .price,
.prido-grilla-products .price { font-size: 21px !important; }
.prido-grilla-products .prido-price-was { font-size: 13px !important; }
.prido-grilla-products .prido-transfer-price { font-size: 12px !important; }
.prido-grilla-products .prido-var-attrs { font-size: 12px !important; line-height: 1.55 !important; }
/* Compactacion 4-col del mockup (pisa lo anterior por orden) */
@media (min-width: 1025px) {
    .prido-grilla-wrapper[data-columns="4"] .wd-entities-title a { font-size: 15px !important; }
    .prido-grilla-wrapper[data-columns="4"] .prido-product-card__price .price,
    .prido-grilla-wrapper[data-columns="4"] .price { font-size: 19px !important; }
}
/* Mobile (mockup): nombre 13.5, precio 17 */
@media (max-width: 575px) {
    .prido-grilla-products .wd-entities-title a { font-size: 13.5px !important; }
    .prido-grilla-products .prido-product-card__price .price,
    .prido-grilla-products .price { font-size: 17px !important; }
}

/* --- (D) Barra de acciones hover (mockup .pactions/.pa-btn) --- */
.prido-grilla-actions {
    left: 12px;
    right: 12px;
    bottom: 12px;
    gap: 7px;
    transform: translateY(8px);
}
.prido-grilla-action-btn {
    width: 38px;
    height: 38px;
    border-radius: 9px !important;
    border: 1px solid var(--prido-theme-border) !important;
    background: rgba(255, 255, 255, 0.92) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    backdrop-filter: blur(8px) !important;
}
:root[data-theme="dark"] .prido-grilla-action-btn,
body.woodmart-dark .prido-grilla-action-btn {
    background: rgba(13, 19, 26, 0.9) !important;
}
.prido-grilla-action-btn:hover {
    transform: none;
    background: rgba(255, 255, 255, 0.92) !important;
    border-color: var(--prido-secondary, #2dc6c1) !important;
    color: color-mix(in srgb, var(--prido-secondary, #2dc6c1) 72%, var(--prido-theme-ink) 28%) !important;
}
.prido-grilla-action-btn:hover svg { color: inherit !important; transform: translate(-50%, -50%); }
:root[data-theme="dark"] .prido-grilla-action-btn:hover,
body.woodmart-dark .prido-grilla-action-btn:hover {
    background: rgba(13, 19, 26, 0.9) !important;
}
/* Boton principal "Agregar al carro" con texto, flex-1 */
.prido-grilla-cart-wrap { flex: 1 1 auto; display: flex; min-width: 0; }
.prido-grilla-btn-cart {
    width: 100% !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-family: var(--prido-font-ui);
    font-size: 12.5px;
    font-weight: var(--prido-weight-bold, 700);
    line-height: 1 !important;
    white-space: nowrap;
}
.prido-grilla-btn-cart svg {
    position: static !important;
    transform: none !important;
    width: 16px;
    height: 16px;
}
.prido-grilla-btn-cart:hover svg { transform: none !important; }
.prido-grilla-btn-cart .prido-grilla-btn-label { display: inline !important; }
.prido-grilla-btn-cart .prido-grilla-tooltip { display: none !important; }

/* --- (E) Load-more del mockup --- */
.prido-grilla-loadmore { gap: 14px; padding: 40px 0 56px; }
.prido-grilla-loadmore-count { font-size: 13px; color: var(--prido-theme-muted); }
.prido-grilla-loadmore-divider { display: none !important; }
.prido-grilla-loadmore-bar {
    width: 210px;
    height: 3px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--prido-theme-border, #c9d4dd) 80%, transparent);
    overflow: hidden;
}
.prido-grilla-loadmore-bar i {
    display: block;
    height: 100%;
    border-radius: 999px;
    background: var(--prido-secondary, #2dc6c1);
    transition: width 0.3s ease;
}
.prido-grilla-loadmore-link,
.prido-grilla-loadmore-btn {
    min-width: 0 !important;
    margin-top: 0 !important;
    padding: 13px 38px !important;
    border: 1px solid var(--prido-theme-border-strong) !important;
    border-radius: 9px !important;
    font-size: 13.5px !important;
    font-weight: var(--prido-weight-heavy, 800) !important;
}
:root[data-theme="dark"] .prido-grilla-loadmore-link:hover,
body.woodmart-dark .prido-grilla-loadmore-link:hover {
    background: rgba(255, 255, 255, 0.07) !important;
    color: var(--prido-theme-ink) !important;
    box-shadow: none !important;
}

/* --- (F) Hero --- */
.prido-catalog-page .prido-catalog-hero__eyebrow {
    color: color-mix(in srgb, var(--prido-secondary, #2dc6c1) 72%, var(--prido-theme-ink) 28%) !important;
    font-size: 12px !important;
    font-weight: var(--prido-weight-bold, 700) !important;
    letter-spacing: 0.16em !important;
}
.prido-catalog-page .prido-catalog-hero__title {
    font-size: clamp(2.25rem, 3.9vw, 3.5rem) !important;
}
.prido-catalog-hero__description { max-width: 540px; }

/* --- §17b: fixes post-verificación (2026-06-11) --- */
/* El cotizador marca --disabled (opacity .65) incluso en productos simples
   comprables → el CTA se veía gris lavado. Pleno dentro de la grilla; la
   semántica (tooltip "selecciona variación", href) no cambia. --nostock
   queda igual (lo tapa "Avísame" vía data-in-stock=0). */
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--disabled:not(.prido-cotizar-btn--nostock) {
    opacity: 1 !important;
}
/* "Agregar al carro" cabía con 1px de déficit en 4 columnas → ellipsis */
.prido-grilla-btn-cart { gap: 6px; padding: 0 8px !important; }
.prido-grilla-btn-cart .prido-grilla-btn-label { font-size: 12px; }
@media (min-width: 1025px) {
    .prido-grilla-wrapper[data-columns="4"] .prido-grilla-btn-cart .prido-grilla-btn-label { font-size: 11.5px; }
}
/* 4 columnas: el main del hover usa texto corto "Agregar" (el completo no cabe
   en cards de ~220px); en 3 col y tablet va "Agregar al carro" completo. */
@media (min-width: 1025px) {
    .prido-grilla-wrapper[data-columns="4"] .prido-grilla-btn-cart .prido-grilla-btn-label { display: none !important; }
    .prido-grilla-wrapper[data-columns="4"] .prido-grilla-btn-cart::after {
        content: "Agregar";
        font-size: 12px;
        font-weight: var(--prido-weight-bold, 700);
    }
}

/* ==========================================================================
   17d. DESKTOP ≥1200px — Aprovechar el ancho horizontal (referencia: IKEA PLP)
   El bloque grilla (filtros + productos) llena el viewport menos un gutter
   responsivo; filtros pegados al borde izquierdo; grilla fluida a la derecha.
   Mantiene el zoom:0.9 del shell (load-bearing del sticky del toolbar y de la
   altura del panel de filtros), por eso el gutter (px fijos → se escalan ×0.9
   bajo zoom) se compensa con /0.9; los % y `auto` llenan exacto sin compensar.
   Imágenes 1:1 + object-fit:cover → nunca se deforman al ensanchar las cards.
   Mobile/tablet (<1200px) quedan intactos (sin tocar sus media queries).
   Verificado e2e (CDP) @1200/1280/1440/1920: 0 overflow horizontal, ratio
   imagen = 1.0, sidebar ~281px visual (≈ IKEA 288), 4 columnas.
   GUTTER calcado a IKEA PLP: 13.333vw-144px ⇒ 48px @1440 y 112px @1920 (idéntico
   a IKEA, verificado), clamp 32–160px. El gutter (px) se compensa /0.9 por el zoom.
   ========================================================================== */
@media (min-width: 1200px) {
    /* (1) El inner zoomeado de la grilla llena el viewport menos el gutter.
           width:auto llena exacto bajo zoom; el gutter en px se compensa /0.9.
           Gutter = curva de IKEA (48px@1440, 112px@1920), clamp 32–160px. */
    .prido-catalog-shell__inner:has(.prido-shop-layout) {
        width: auto !important;
        max-width: none !important;
        margin-inline: calc(clamp(32px, 13.333vw - 144px, 160px) / 0.9) !important;
    }
    /* (2) Filtros pegados al borde izquierdo; la grilla expande hacia la derecha. */
    .prido-shop-layout.prido-catalog-archive {
        justify-content: flex-start !important;
    }
    /* (3) Sidebar de filtros ~288px visual (≈ IKEA); 312 nominal × 0.9 ≈ 281. */
    .prido-catalog-page,
    .prido-catalog-archive {
        --prido-filters-width: 312px !important;
    }
    /* (4) La grilla llena .prido-shop-main (sin cap 1300/1400 ni centrado). */
    .prido-shop-main .prido-grilla-wrapper {
        max-width: none !important;
        width: 100% !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
    }
}

/* ==========================================================================
   17e. DESKTOP — barra SUPERIOR de la grilla (toolbar) SIN sticky.
   El usuario pidió que la barra "N productos / Ordenar / Mostrar / densidad"
   scrollee con el contenido (antes era position:sticky con top:offset/0.9).
   La COLUMNA LATERAL de filtros SIGUE sticky: eso vive en prido-filtros.css
   (.prido-shop-sidebar) y NO se toca aquí. Verificado: toolbar=static,
   sidebar=sticky. Sólo donde el toolbar es visible (≥1024 en el archivo).
   ========================================================================== */
@media (min-width: 1024px) {
    .prido-catalog-archive .prido-grilla-toolbar {
        position: static !important;
        top: auto !important;
    }
}

/* ==========================================================================
   17f. DESKTOP ultra-ancho ≥2000px — AUTOCOLUMNAS.
   Hasta 2000px se mantienen las 3/4 columnas exactas del toggle de densidad.
   Desde 2000px la grilla pasa a auto-fill: agrega columnas a medida que crece
   el ancho en vez de estirar 3/4 cards enormes. minmax en coords nominales
   (dentro del zoom 0.9 → visual = nominal × 0.9). auto-fill (no auto-fit) =
   ancho de card constante aunque haya pocos productos.
   Verificado e2e (CDP) @2000/2160/2300/2400/2560: 4-modo da 4 col @2000 (sin
   bajar) → 5 col @~2300 → 6 col @2560; cards 300–376px visual; imagen ratio 1.0
   (sin deformar a cualquier nº de columnas); 0 overflow.
   ========================================================================== */
@media (min-width: 2000px) {
    .prido-grilla-wrapper[data-columns="4"] .prido-grilla-products {
        grid-template-columns: repeat(auto-fill, minmax(330px, 1fr)) !important;
    }
    .prido-grilla-wrapper[data-columns="3"] .prido-grilla-products {
        grid-template-columns: repeat(auto-fill, minmax(430px, 1fr)) !important;
    }
}

/* ════════════════════════════════════════════════════════════════
   §18 · PRODUCT CARD v3 — Dirección A "Esencial" (handoff Claude Design)
   3 estados: DISPONIBLE (carro sólido + Cotizar texto), OFERTA (badge rojo -%
   + precio anterior tachado), AGOTADO (badge coral + imagen atenuada + ghost
   "Avísame"). Tools fav+comparar arriba-derecha, tooltip a la IZQUIERDA; galería
   flechas laterales. Tokens del sitio (Outfit/Noto, theme-aware). Teal AA #147068
   claro / #2dc6c1 oscuro; rojo estado #C0392B / #E25C44. El carro lo mueve al
   cuerpo prido-grilla.r4.js (.prido-grilla-cart-wrap--cta). Contratos JS intactos.
   ════════════════════════════════════════════════════════════════ */
.prido-grilla-products {
    --pcv3-teal: #147068;
    --pcv3-out: #C0392B;
    --pcv3-out-bg: #FBE7E3;
    --pcv3-out-border: #F2C9C2;
    --pcv3-promo: #C0392B;
}
:root[data-theme="dark"] .prido-grilla-products,
body.woodmart-dark .prido-grilla-products {
    --pcv3-teal: #2dc6c1;
    --pcv3-out: #E89084;
    --pcv3-out-bg: rgba(226, 122, 110, 0.16);
    --pcv3-out-border: rgba(226, 122, 110, 0.32);
    --pcv3-promo: #E25C44;
}

/* ---- 18.1 Overlay hover: solo favorito+comparar, arriba-derecha, columna ---- */
.prido-grilla-products .prido-grilla-actions {
    top: 10px !important;
    right: 10px !important;
    bottom: auto !important;
    left: auto !important;
    width: auto !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    transform: translateY(-4px);
}
.prido-grilla-products .prido-product-card:hover .prido-grilla-actions,
.prido-grilla-products .prido-product-card:focus-within .prido-grilla-actions,
.prido-grilla-products .prido-product-card.is-touch-active .prido-grilla-actions {
    transform: none !important;
}
.prido-grilla-products .prido-grilla-actions > .prido-grilla-cart-wrap {
    display: none !important;
}

/* ---- 18.2 Chips favorito+comparar redondos 34px (overflow visible p/tooltip) ---- */
.prido-grilla-products .prido-grilla-btn-wish,
.prido-grilla-products .prido-grilla-btn-compare {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: color-mix(in srgb, var(--prido-theme-surface-strong) 88%, transparent) !important;
    border: 1px solid var(--prido-theme-border) !important;
    color: var(--prido-theme-ink) !important;
    overflow: visible !important;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
}
.prido-grilla-products .prido-grilla-btn-wish svg,
.prido-grilla-products .prido-grilla-btn-compare svg {
    width: 18px !important;
    height: 18px !important;
}
.prido-grilla-products .prido-grilla-btn-wish:hover,
.prido-grilla-products .prido-grilla-btn-compare:hover {
    color: var(--pcv3-teal) !important;
    border-color: color-mix(in srgb, var(--pcv3-teal) 50%, var(--prido-theme-border)) !important;
    background: color-mix(in srgb, var(--pcv3-teal) 14%, var(--prido-theme-surface-strong)) !important;
}
/* FIX hover: icono TEAL en hover (vence NEUTRAL v2 que lo pinta #fff claro / #0B1E2E
   oscuro para el viejo "fill"; sin esto el ícono quedaba invisible sobre el fondo claro). */
.prido-grilla-products .prido-grilla-btn-wish:hover svg,
.prido-grilla-products .prido-grilla-btn-compare:hover svg,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-wish:hover svg,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-compare:hover svg,
body.woodmart-dark .prido-grilla-products .prido-grilla-btn-wish:hover svg,
body.woodmart-dark .prido-grilla-products .prido-grilla-btn-compare:hover svg {
    color: var(--pcv3-teal) !important;
}
.prido-grilla-products .prido-grilla-btn-wish.added,
.prido-grilla-products .prido-grilla-btn-compare.added {
    background: var(--pcv3-teal) !important;
    border-color: var(--pcv3-teal) !important;
    color: #fff !important;
}
/* icono del estado .added: blanco (claro) / tinta (oscuro), sobre el relleno teal */
.prido-grilla-products .prido-grilla-btn-wish.added svg,
.prido-grilla-products .prido-grilla-btn-compare.added svg {
    color: #fff !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-wish.added svg,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-compare.added svg,
body.woodmart-dark .prido-grilla-products .prido-grilla-btn-wish.added svg,
body.woodmart-dark .prido-grilla-products .prido-grilla-btn-compare.added svg {
    color: #06302d !important;
}

/* ---- 18.2b Tooltip de chips → abre a la IZQUIERDA (no se sale por la derecha) ---- */
.prido-grilla-products .prido-grilla-actions .prido-grilla-tooltip {
    left: auto !important;
    right: calc(100% + 9px) !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    white-space: nowrap !important;
    background: var(--prido-theme-ink) !important;
    color: var(--prido-theme-canvas) !important;
    border-radius: 7px !important;
    padding: 5px 9px !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    box-shadow: 0 6px 16px -8px rgba(11, 30, 46, 0.5) !important;
    z-index: 6 !important;
}
.prido-grilla-products .prido-grilla-actions .prido-grilla-tooltip::after {
    display: none !important;
}

/* ---- 18.3 "Agregar al carro": CTA sólido primario en el cuerpo ---- */
.prido-grilla-products .prido-grilla-cart-wrap--cta {
    width: 100% !important;
    margin-top: 12px !important;
    position: relative;
    z-index: 2;
}
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart {
    position: static !important;
    width: 100% !important;
    height: 42px !important;
    min-height: 42px !important;
    border-radius: 10px !important;
    border: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    font-family: var(--prido-font-heading) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: .01em !important;
    text-transform: none !important;
    background: var(--pcv3-teal) !important;
    color: #fff !important;
    box-shadow: 0 6px 16px -10px color-mix(in srgb, var(--pcv3-teal) 80%, transparent) !important;
    cursor: pointer;
}
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart svg {
    position: static !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
}
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart .prido-grilla-btn-label {
    display: inline !important;
    position: static !important;
    font: inherit !important;
}
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart::after { content: none !important; }
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-tooltip { display: none !important; }
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:hover {
    background: color-mix(in srgb, var(--pcv3-teal) 86%, #000) !important;
}
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart.is-disabled,
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart[aria-disabled="true"] {
    background: var(--prido-theme-surface-alt) !important;
    color: var(--prido-theme-muted) !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:not(.is-disabled):not([aria-disabled="true"]),
body.woodmart-dark .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:not(.is-disabled):not([aria-disabled="true"]) {
    background: var(--pcv3-teal) !important;
    color: #06302d !important;
    box-shadow: 0 6px 16px -10px color-mix(in srgb, var(--pcv3-teal) 70%, transparent) !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:not(.is-disabled):hover,
body.woodmart-dark .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:not(.is-disabled):hover {
    background: color-mix(in srgb, var(--pcv3-teal) 88%, #000) !important;
}

/* ---- 18.4 Cotizar → TEXTO secundario teal (.__quote vence §15-R/§17 R2 0,4,0) ---- */
.prido-grilla-products .prido-product-card__quote { margin-top: 6px !important; }
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
.prido-grilla-products .prido-product-card__quote a.prido-cotizar-btn--grilla:link,
.prido-grilla-products .prido-product-card__quote a.prido-cotizar-btn--grilla:visited,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:hover,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla:focus,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--requires-variation,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--disabled,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--nostock {
    width: 100% !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 8px !important;
    font-family: var(--prido-font-ui) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: var(--pcv3-teal) !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla > span {
    font: inherit !important;
    color: inherit !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla > span::after {
    content: " para empresa";
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla svg {
    width: 15px !important;
    height: 15px !important;
    color: inherit !important;
}
.prido-grilla-products .prido-product-card__quote a.prido-cotizar-btn--grilla.prido-cotizar-btn--active:hover {
    background: color-mix(in srgb, var(--pcv3-teal) 10%, transparent) !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--requires-variation,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--disabled,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--nostock {
    cursor: not-allowed !important;
}
/* tooltip del cotizar (gate "Regístrese aquí") legible en ambos temas */
.prido-grilla-products .prido-cotizar-wrap--grilla .prido-cotizar-tooltip {
    background: var(--prido-theme-ink) !important;
    color: var(--prido-theme-canvas) !important;
    border: 1px solid var(--prido-theme-border) !important;
}
.prido-grilla-products .prido-cotizar-wrap--grilla .prido-cotizar-tooltip a {
    color: var(--pcv3-teal) !important;
    font-weight: 700 !important;
}

/* ---- 18.5 "Avísame" (sin stock): botón GHOST muted → teal en hover ----
   OJO: NO fijar `display` (lo controla el contrato: base none / [data-in-stock=0] flex). */
.prido-grilla-products .prido-card-notify-btn {
    width: 100% !important;
    height: 42px !important;
    min-height: 42px !important;
    margin-top: 12px !important;
    border-radius: 10px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    font-family: var(--prido-font-ui) !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    background: transparent !important;
    color: var(--prido-theme-muted) !important;
    border: 1.5px solid var(--prido-theme-border) !important;
}
.prido-grilla-products .prido-card-notify-btn svg { width: 16px !important; height: 16px !important; }
.prido-grilla-products .prido-card-notify-btn:hover {
    color: var(--pcv3-teal) !important;
    border-color: var(--pcv3-teal) !important;
    background: transparent !important;
}

/* ---- 18.6 OFERTA: badge -% rojo sólido arriba-izquierda ---- */
.prido-grilla-products .prido-product-card__sale-badge {
    top: 12px !important;
    left: 12px !important;
    right: auto !important;
    bottom: auto !important;
    padding: 5px 11px !important;
    border-radius: 999px !important;
    background: var(--pcv3-promo) !important;
    color: #fff !important;
    border: 1px solid var(--pcv3-promo) !important;
    font-family: var(--prido-font-ui) !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
    letter-spacing: .02em !important;
    line-height: 1 !important;
    text-transform: none !important;
    box-shadow: none !important;
}

/* ---- 18.7 Precio anterior tachado (muted) ---- */
.prido-grilla-products .prido-price-was {
    font-size: 13.5px !important;
    color: var(--prido-theme-muted) !important;
    text-decoration: line-through !important;
    font-weight: 500 !important;
}

/* ---- 18.8 AGOTADO: badge coral + imagen atenuada ---- */
.prido-grilla-products .prido-product-card__stock-badge {
    top: 12px !important;
    left: 12px !important;
    right: auto !important;
    bottom: auto !important;
    padding: 5px 11px !important;
    border-radius: 999px !important;
    background: var(--pcv3-out-bg) !important;
    color: var(--pcv3-out) !important;
    border: 1px solid var(--pcv3-out-border) !important;
    font-family: var(--prido-font-ui) !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
    line-height: 1 !important;
    text-transform: none !important;
    box-shadow: none !important;
}
.prido-grilla-products .prido-product-card[data-in-stock="0"] .product-image-link img,
.prido-grilla-products .wd-product[data-in-stock="0"] .product-image-link img {
    filter: grayscale(1) opacity(0.62) !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-product-card[data-in-stock="0"] .product-image-link img,
:root[data-theme="dark"] .prido-grilla-products .wd-product[data-in-stock="0"] .product-image-link img,
body.woodmart-dark .prido-grilla-products .prido-product-card[data-in-stock="0"] .product-image-link img,
body.woodmart-dark .prido-grilla-products .wd-product[data-in-stock="0"] .product-image-link img {
    filter: grayscale(1) opacity(0.5) !important;
}

/* ---- 18.9 Galería: flechas laterales redondas (hover) ---- */
.prido-grilla-products .prido-gallery-nav .prido-var-arrow {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: color-mix(in srgb, var(--prido-theme-surface-strong) 88%, transparent) !important;
    border: 1px solid var(--prido-theme-border) !important;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
}
.prido-grilla-products .prido-gallery-nav .prido-var-arrow:hover {
    border-color: color-mix(in srgb, var(--pcv3-teal) 50%, var(--prido-theme-border)) !important;
    background: var(--prido-theme-surface) !important;
}
.prido-grilla-products .prido-gallery-nav .prido-var-arrow:hover::before {
    border-color: var(--pcv3-teal) !important;
}

/* ───────────── DARK (doble señal: chips .added con tinta sobre teal) ───────────── */
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-wish,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-compare,
body.woodmart-dark .prido-grilla-products .prido-grilla-btn-wish,
body.woodmart-dark .prido-grilla-products .prido-grilla-btn-compare {
    background: color-mix(in srgb, var(--prido-theme-surface-strong) 90%, transparent) !important;
    border-color: var(--prido-theme-border) !important;
    color: var(--prido-theme-ink) !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-wish.added,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-btn-compare.added,
body.woodmart-dark .prido-grilla-products .prido-grilla-btn-wish.added,
body.woodmart-dark .prido-grilla-products .prido-grilla-btn-compare.added {
    background: var(--pcv3-teal) !important;
    border-color: var(--pcv3-teal) !important;
    color: #06302d !important;
}

/* ---- 18.10 Mobile 2-col (≤575px): etiquetas cortas para no truncar ---- */
@media (max-width: 575px) {
    /* "Agregar al carro" → "Agregar" */
    .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart {
        font-size: 13px !important;
        gap: 6px !important;
    }
    .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart .prido-grilla-btn-label {
        display: none !important;
    }
    .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart::after {
        content: "Agregar" !important;
        font: inherit !important;
    }
    /* "Cotizar para empresa" → "Cotizar" (quita el sufijo en mobile) */
    .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla > span::after {
        content: "" !important;
    }
    /* "Avísame cuando vuelva" más compacto para que entre */
    .prido-grilla-products .prido-card-notify-btn {
        font-size: 11.5px !important;
        gap: 6px !important;
        padding: 0 8px !important;
    }
}

/* ════════════════════════════════════════════════════════════════
   §18.11 · TIPOGRAFÍA + ESPACIADO — fidelidad fina al mockup v3 (todas las
   densidades). Vence §15-R (base) y §16/§17 (4-col) con prefijo
   .prido-grilla-wrapper[data-columns] .prido-grilla-products (0,3,0)+.
   Mockup: body 15/16/16 · eyebrow 10.5/700/.14em · título 16/700/-.01em/1.22
   (2 líneas) · precio 22/800/-.01em · anterior 13.5/500 · transferencia 12
   (monto 700). Fuente: Outfit (titular/precio) + Noto/UI (eyebrow/transfer),
   tabular-nums en montos.
   ════════════════════════════════════════════════════════════════ */
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-product-card .product-element-bottom {
    padding: 15px 16px 16px !important;
    gap: 3px !important;
}
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-product-card__category,
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-product-card .wd-product-cats {
    margin: 0 0 1px !important;
    font-family: var(--prido-font-ui) !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    line-height: 1.3 !important;
}
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-product-card__title { margin: 0 !important; }
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-product-card__title a,
.prido-grilla-wrapper[data-columns] .prido-grilla-products .wd-entities-title a {
    font-family: var(--prido-font-heading) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.22 !important;
    letter-spacing: -0.01em !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-product-card__price {
    margin-top: 7px !important;
    margin-bottom: 0 !important;
}
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-product-card__price .price.prido-price-line {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    gap: 9px !important;
}
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-price-now {
    font-family: var(--prido-font-heading) !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
    line-height: 1.05 !important;
    font-variant-numeric: tabular-nums !important;
}
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-price-was {
    font-size: 13.5px !important;
    font-weight: 500 !important;
    line-height: 1.05 !important;
    font-variant-numeric: tabular-nums !important;
}
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-transfer-price {
    margin-top: 6px !important;
}
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-transfer-label {
    font-family: var(--prido-font-ui) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
}
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-transfer-amount {
    font-size: 12px !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums !important;
}
.prido-grilla-wrapper[data-columns] .prido-grilla-products .prido-transfer-icon svg {
    width: 14px !important;
    height: 14px !important;
}

/* ---- 18.12 CTAs agrupados: carro + cotizar pegados (~6px), no separados ----
   El §18.4 dejaba al .prido-product-card__quote con padding-top:10px heredado +
   margen + gap del body → ~18px entre botones. Aquí: padding 0 + márgenes finos
   (≈13px sobre el grupo, ≈6px entre carro y cotizar contando el gap:3px del body). */
.prido-grilla-products .prido-grilla-cart-wrap--cta {
    margin-top: 10px !important;
    margin-bottom: 0 !important;
}
.prido-grilla-products .prido-product-card__quote {
    margin-top: 3px !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
}
.prido-grilla-products .prido-product-card__quote .prido-cotizar-wrap--grilla {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

/* ---- 18.13 Cotizar = TEXTO PLANO (sin caja/borde) en TODOS los estados y temas ----
   Vence el borde dark de §17 R2 (~L3235 `border:1px var(--prido-theme-border-strong)`, esp.(0,5,1))
   y cualquier fondo/borde de estado activo en light → como el mockup (texto teal, sin recuadro).
   El tinte teal sólo aparece en :hover (regla §18.4). */
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--disabled,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--requires-variation,
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--nostock,
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active,
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--disabled,
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--requires-variation,
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--nostock,
body.woodmart-dark .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla,
body.woodmart-dark .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--active,
body.woodmart-dark .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--disabled,
body.woodmart-dark .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--requires-variation,
body.woodmart-dark .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla.prido-cotizar-btn--nostock {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--pcv3-teal) !important;
}
/* el span interno hereda el teal (vence color:ink heredado) */
.prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla > span,
:root[data-theme="dark"] .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla > span,
body.woodmart-dark .prido-grilla-products .prido-product-card__quote .prido-cotizar-btn--grilla > span {
    color: var(--pcv3-teal) !important;
}

/* ---- 18.14 Ícono del carro = mismo color que el texto (blanco en light / tinta en dark),
   RESTING y hover. Vence L2818 `.prido-grilla-btn-cart svg{color:var(--prido-theme-ink)}` (icono
   oscuro en reposo) y las reglas hover viejas. Sin esto el carrito se veía negro sin hover. ---- */
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart svg,
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart svg *,
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:hover svg,
.prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:hover svg * {
    color: #fff !important;
    stroke: #fff !important;
}
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart svg,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart svg *,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:hover svg,
:root[data-theme="dark"] .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:hover svg *,
body.woodmart-dark .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart svg,
body.woodmart-dark .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart svg *,
body.woodmart-dark .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:hover svg,
body.woodmart-dark .prido-grilla-products .prido-grilla-cart-wrap--cta .prido-grilla-btn-cart:hover svg * {
    color: #06302d !important;
    stroke: #06302d !important;
}

