/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://ak-murcia.com
 Description:  Tema hijo de GeneratePress para AK Murcia
 Author:       AK Murcia
 Author URI:   https://ak-murcia.com
 Template:     generatepress
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  generatepress-child
*/

/* ============================================================
   PÁGINA DE RESULTADOS DE BÚSQUEDA - AK MURCIA
   ============================================================ */

/* Ocultar elementos innecesarios */
.search-results .woocommerce-breadcrumb,
.search-results .woocommerce-result-count,
.search-results .woocommerce-ordering {
    display: none !important;
}
/* Chips de filtro - descomentar para ocultar en búsqueda
.search-results .wpc-filter-chips-list {
    display: none !important;
}
*/

/* Título de búsqueda */
.search-results .woocommerce-products-header__title {
    font-size: 26px;
    color: #000;
    text-align: center;
    margin: 20px 0 40px 0;
    font-weight: 600;
    letter-spacing: 0.5px;
}

/* Grid 4 columnas */
.search-results ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 25px !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Tarjeta producto */
.search-results ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    background: #fff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 12px !important;
    padding: 15px !important;
    margin: 0 !important;
    width: 100% !important;
    float: none !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.search-results ul.products li.product:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12) !important;
}

/* Imagen */
.search-results ul.products li.product a img {
    width: 100% !important;
    height: 180px !important;
    object-fit: contain !important;
    background: #fafafa !important;
    border-radius: 8px !important;
    margin-bottom: 15px !important;
    transition: transform 0.3s ease !important;
}

.search-results ul.products li.product:hover a img {
    transform: scale(1.03) !important;
}

/* Título producto */
.search-results ul.products li.product .woocommerce-loop-product__title {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #000 !important;
    text-align: center !important;
    margin: 0 0 10px 0 !important;
    line-height: 1.4 !important;
    min-height: 40px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

/* Precio */
.search-results ul.products li.product .price {
    text-align: center !important;
    margin-bottom: 12px !important;
}

.search-results ul.products li.product .price .woocommerce-Price-amount {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #000 !important;
}

.search-results ul.products li.product .price .woocommerce-price-suffix {
    font-size: 11px !important;
    color: #666 !important;
}

/* Stock */
.search-results ul.products li.product .price .woo-custom-stock-status {
    font-size: 11px !important;
    margin-top: 5px !important;
    text-align: center !important;
}

/* Botón añadir carrito */
.search-results ul.products li.product .button,
.search-results ul.products li.product .add_to_cart_button {
    display: block !important;
    width: 100% !important;
    background: #000 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 25px !important;
    padding: 12px 20px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    transition: all 0.3s ease !important;
    margin-top: auto !important;
    text-decoration: none !important;
}

.search-results ul.products li.product .button:hover,
.search-results ul.products li.product .add_to_cart_button:hover {
    background: #D0CEB2 !important;
    color: #000 !important;
}

.search-results ul.products li.product .button.added {
    background: #1a741a !important;
}

/* Responsive */
@media (max-width: 1024px) {
    .search-results ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 20px !important;
    }
}

@media (max-width: 768px) {
    .search-results ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 15px !important;
    }
    
    .search-results ul.products li.product a img {
        height: 140px !important;
    }
}

@media (max-width: 480px) {
    .search-results ul.products {
        gap: 10px !important;
    }
    
    .search-results ul.products li.product {
        padding: 10px !important;
    }
    
    .search-results ul.products li.product .button {
        padding: 10px 15px !important;
        font-size: 11px !important;
    }
}
@media (max-width: 768px) {
    /* Eliminar espacio superior */
    .search-results .woocommerce-products-header {
        margin-top: -10px !important;
        padding-top: 0 !important;
    }
    
    .search-results .woocommerce-products-header__title {
        font-size: 18px !important;
        margin: 0 0 15px 0 !important;
    }
    
    .search-results .site-main,
    .search-results #main,
    .search-results .entry-content {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }
    
    .search-results .inside-article {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }
    
    .search-results #primary {
        padding-top: 5px !important;
    }
}

@media (max-width: 480px) {
    .search-results .woocommerce-products-header__title {
        font-size: 16px !important;
        margin: 0 0 10px 0 !important;
    }
    
    .search-results .woocommerce-products-header {
        margin-top: -15px !important;
    }
}
@media (max-width: 768px) {
    /* Paginación en una sola línea */
    .search-results .woocommerce-pagination ul {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        gap: 5px !important;
        overflow: hidden !important;
    }
    
    /* Ocultar páginas después de la 3ra */
    .search-results .woocommerce-pagination ul li:nth-child(n+5) {
        display: none !important;
    }
    
    /* Mostrar siempre flechas prev/next */
    .search-results .woocommerce-pagination ul li a.prev,
    .search-results .woocommerce-pagination ul li a.next {
        display: flex !important;
    }
    
    /* Mantener visible el último (next) */
    .search-results .woocommerce-pagination ul li:last-child {
        display: flex !important;
    }
    
    /* Tamaño más compacto */
    .search-results .woocommerce-pagination ul li a,
    .search-results .woocommerce-pagination ul li span {
        min-width: 35px !important;
        height: 35px !important;
        padding: 0 8px !important;
        font-size: 14px !important;
    }
}
/* Ocultar sidebar y ancho completo en búsqueda */
body.search-results #right-sidebar,
body.search-results .sidebar,
body.search-results .widget-area {
    display: none !important;
    width: 0 !important;
}

body.search-results .site-content,
body.search-results #content {
    width: 100% !important;
    max-width: 100% !important;
}

body.search-results #primary,
body.search-results .content-area {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

body.search-results .inside-article {
    width: 100% !important;
}

/* Fix grid - Eliminar floats de WooCommerce */
.search-results ul.products li.product.first,
.search-results ul.products li.product.last {
    clear: none !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.search-results ul.products li.product:nth-child(4n+1) {
    clear: none !important;
}

/* Eliminar pseudo-elemento que rompe el grid */
.search-results ul.products::before,
.search-results ul.products::after {
    display: none !important;
    content: none !important;
}

/* ============================================================
   PAGINACIÓN - PÁGINA DE BÚSQUEDA
   ============================================================ */

.search-results .woocommerce-pagination {
    margin-top: 50px !important;
    padding-top: 30px !important;
    text-align: center !important;
    border-top: 1px solid #e5e5e5 !important;
}

.search-results .woocommerce-pagination ul {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.search-results .woocommerce-pagination ul li {
    border: none !important;
    background: none !important;
}

.search-results .woocommerce-pagination ul li a,
.search-results .woocommerce-pagination ul li span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 40px !important;
    height: 40px !important;
    padding: 0 12px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #333 !important;
    text-decoration: none !important;
    border: none !important;
    background: none !important;
    transition: color 0.3s ease !important;
}

.search-results .woocommerce-pagination ul li a:hover {
    color: #D0CEB2 !important;
}

.search-results .woocommerce-pagination ul li span.current {
    color: #000 !important;
    font-weight: 700 !important;
    border-bottom: 2px solid #000 !important;
}

/* Ocultar puntos suspensivos extra */
.search-results .woocommerce-pagination ul li .dots {
    color: #999 !important;
}

/* Flechas de navegación */
.search-results .woocommerce-pagination ul li a.prev,
.search-results .woocommerce-pagination ul li a.next {
    font-size: 18px !important;
    font-weight: 700 !important;
}

.search-results .woocommerce-pagination ul li a.prev::before {
    content: "←" !important;
    margin-right: 5px !important;
}

.search-results .woocommerce-pagination ul li a.next::after {
    content: "→" !important;
    margin-left: 5px !important;
}
/* Eliminar todos los bordes de paginación */
.search-results .woocommerce-pagination,
.search-results .woocommerce-pagination ul,
.search-results .woocommerce-pagination ul li,
.search-results .woocommerce-pagination ul li a,
.search-results .woocommerce-pagination ul li span {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    background: transparent !important;
}

.search-results .woocommerce-pagination ul {
    border-radius: 0 !important;
}

/* ============================================================
   BÚSQUEDA - FIXES PARA MÓVIL
   ============================================================ */

@media (max-width: 768px) {
    /* Ocultar sidebar en móvil */
    body.search-results #right-sidebar,
    body.search-results .sidebar,
    body.search-results .widget-area,
    body.search #right-sidebar {
        display: none !important;
    }
    
    /* Ancho completo */
    body.search-results #primary,
    body.search-results .content-area,
    body.search-results #content {
        width: 100% !important;
        max-width: 100% !important;
        padding: 15px !important;
    }
    
    /* Fix primer producto - eliminar ::before */
    .search-results ul.products::before,
    .search-results ul.products::after {
        display: none !important;
        content: none !important;
    }
    
    /* Grid 2 columnas en móvil */
    .search-results ul.products {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }
    
    .search-results ul.products li.product.first,
    .search-results ul.products li.product.last {
        clear: none !important;
        float: none !important;
    }
    
    /* Mostrar paginación */
    .search-results .woocommerce-pagination {
        display: block !important;
        margin-top: 30px !important;
    }
    
    .search-results .woocommerce-pagination ul {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 5px !important;
    }
    
    .search-results .woocommerce-pagination,
    .search-results .woocommerce-pagination ul,
    .search-results .woocommerce-pagination ul li,
    .search-results .woocommerce-pagination ul li a,
    .search-results .woocommerce-pagination ul li span {
        border: none !important;
        box-shadow: none !important;
        background: transparent !important;
    }
}

@media (max-width: 480px) {
    .search-results ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }
    
    .search-results ul.products li.product {
        padding: 8px !important;
    }
    
    .search-results ul.products li.product a img {
        height: 120px !important;
    }
}

/* Stock en página de producto */
p.in-stock,
.wpr-product-stock .in-stock,
.in-stock {
    color: #1a741a !important;
}

p.out-of-stock,
.out-of-stock {
    color: #ff0000 !important;
}

p.on-backorder,
.on-backorder {
    color: #c60505 !important;
}

/* Stock en categorías - forzar colores correctos */
.uc-product-stock p.in-stock,
.uc-product-stock .in-stock {
    color: #1a741a !important;
}

.uc-product-stock p.out-of-stock,
.uc-product-stock .out-of-stock {
    color: #ff0000 !important;
}

.uc-product-stock p.on-backorder,
.uc-product-stock .on-backorder {
    color: #c60505 !important;
}

/* PAGINACION CON SOLO 5 PAGINAS */

/* Ocultar números del 6º en adelante, excepto el último número y el botón Siguiente */
.archive_pagination .page-numbers:nth-child(n+6):not(:nth-last-child(2)):not(.next) {
    display: none !important;
}

/* Añadir puntos suspensivos después del 5º número */
.archive_pagination .page-numbers:nth-child(5)::after {
    content: "...";
    margin: 0 8px;
    color: #666;
    pointer-events: none;
}

/* Evitar puntos suspensivos si hay 6 o menos páginas */
.archive_pagination .page-numbers:nth-child(5):nth-last-child(3)::after,
.archive_pagination .page-numbers:nth-child(5):nth-last-child(2)::after {
    content: none;
}
/* PAGINACION MÓVIL - SOLO 3 PÁGINAS */
@media (max-width: 768px) {
    /* Ocultar números del 4º en adelante, excepto el último número y el botón Siguiente */
    .archive_pagination .page-numbers:nth-child(n+4):not(:nth-last-child(2)):not(.next) {
        display: none !important;
    }
    
    /* Quitar los puntos suspensivos del 5º (ya no se ve) */
    .archive_pagination .page-numbers:nth-child(5)::after {
        content: none !important;
    }
    
    /* Añadir puntos suspensivos después del 3er número */
    .archive_pagination .page-numbers:nth-child(3)::after {
        content: "..." !important;
        margin: 0 8px;
        color: #666;
        pointer-events: none;
    }
    
    /* Evitar puntos suspensivos si hay 4 o menos páginas */
    .archive_pagination .page-numbers:nth-child(3):nth-last-child(3)::after,
    .archive_pagination .page-numbers:nth-child(3):nth-last-child(2)::after {
        content: none !important;
    }
}

/* BARRA DE FILTROS EN MOVIL AZUL */

/* Botón de filtros en móvil - Estilo barra completa */
@media (max-width: 768px) {
    .wpc-open-close-filters-button {
        display: flex !important;
        justify-content: center;
        align-items: center;
        width: 100%;
        background-color: #1e2a3a !important;
        border: none !important;
        border-radius: 50px !important; /* Más redondeado con !important */
        padding: 14px 20px !important;
        margin: 10px 0;
        box-sizing: border-box;
        overflow: hidden !important;
    }
    
    .wpc-open-close-filters-button .wpc-button-inner {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    /* Ocultar el icono de líneas original */
    .wpc-open-close-filters-button .wpc-icon-html-wrapper {
        display: none !important;
    }
    
    /* Ocultar texto original y mostrar nuevo */
    .wpc-open-close-filters-button .wpc-filters-button-text {
        color: #ffffff !important;
        font-size: 0 !important;
        font-weight: 500;
    }

    .wpc-open-close-filters-button .wpc-filters-button-text::before {
        content: "Abrir filtros";
        font-size: 14px !important;
        visibility: visible;
    }

    /* CUANDO LOS FILTROS ESTÁN ABIERTOS - Cambiar texto a "Cerrar filtros" */
    .wpc-open-close-filters-button.wpc-opened .wpc-filters-button-text::before {
        content: "Cerrar filtros" !important;
    }

    /* Icono de embudo */
    .wpc-open-close-filters-button .wpc-filters-button-text::after {
        content: "";
        display: inline-block;
        width: 12px;
        height: 12px;
        margin-left: 8px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='white'%3E%3Cpath d='M3.9 54.9C10.5 40.9 24.5 32 40 32H472c15.5 0 29.5 8.9 36.1 22.9s4.6 30.5-5.2 42.5L320 320.9V448c0 12.1-6.8 23.2-17.7 28.6s-23.8 4.3-33.5-3l-64-48c-8.1-6-12.8-15.5-12.8-25.6V320.9L9 97.3C-.7 85.4-2.8 68.8 3.9 54.9z'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-size: contain;
        vertical-align: middle;
    }

    /* Icono X cuando está abierto */
    .wpc-open-close-filters-button.wpc-opened .wpc-filters-button-text::after {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512' fill='white'%3E%3Cpath d='M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z'/%3E%3C/svg%3E") !important;
    }
}

/*  TEXTO MUY JUSTO A BORDES AJUSTE DESCRIPCION - ESCRITORIO Y MOVIL */
.wpr-product-description pre {
    white-space: pre-wrap;
    word-wrap: break-word;
    overflow-wrap: break-word;
    max-width: 100%;
    overflow-x: hidden;
    font-family: inherit;
    margin: 0;
    padding: 0 10px !important;
}

.wpr-product-description {
    max-width: 100%;
    overflow-x: hidden;
    padding: 0 15px !important;
}

.producto-descripcion {
    max-width: 100%;
    padding-right: 10px !important;
}

.producto-descripcion ul {
    padding-left: 30px !important;
    padding-right: 10px !important;
    margin-left: 0 !important;
}

.producto-info > div[style*="grid"] {
    padding: 0 10px !important;
}

/* Ajustes adicionales solo para móvil */
@media (max-width: 768px) {
    .producto-info > div[style*="grid"] {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 5px !important;
    }
}

/* CENTRAR IMAGENES CATEGORÍAS EN MOVIL */

/* Centrar botón Ver en overlay de productos - TODOS */
.product-img .product-img-overlay {
    justify-content: center !important;
}

/* BREADCUMBS */
/* Breadcrumbs sobre el banner de Elementor */
.ak-breadcrumbs {
    position: absolute;
    left: 0;
    right: 0;
    padding: 10px 15px;
    font-size: 15px;
    font-weight: 600;
    z-index: 100;
    background: rgba(0, 0, 0, 0.4);
    line-height: 1.2;
    display: flex;
    align-items: center;
}

.ak-breadcrumbs .rank-math-breadcrumb,
.ak-breadcrumbs .rank-math-breadcrumb p {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.2;
    display: flex;
    align-items: center;
}

.ak-breadcrumbs a {
    color: #d0d0d0;
    text-decoration: none;
}

.ak-breadcrumbs a:hover {
    color: #ffffff;
}

.ak-breadcrumbs span,
.ak-breadcrumbs .separator {
    color: #d0d0d0;
}

/* Hacer que la sección de Elementor tenga position relative */
.elementor-section.elementor-top-section:first-of-type {
    position: relative;
    padding-top: 38px;
}

/* Ajuste móvil */
@media (max-width: 768px) {
    .ak-breadcrumbs {
        font-size: 12px;
        padding: 8px 10px;
    }
    
    .elementor-section.elementor-top-section:first-of-type {
        padding-top: 32px;
    }
}
/* Ocultar breadcrumbs en páginas de producto */
.single-product .ak-breadcrumbs {
    display: none !important;
}

/* ZOOM IMAGEN PRODUCTO MENOR */
/* Reducir zoom lightGallery al 80% */
.lg-outer .lg-inner .lg-item .lg-img-wrap {
    max-width: 80% !important;
    max-height: 80% !important;
    margin: auto !important;
}

.lg-outer .lg-inner .lg-item .lg-object.lg-image {
    max-width: 100% !important;
    max-height: 75vh !important;
    object-fit: contain !important;
}