/* ==========================================================================
   PÁGINA: FAVORITOS (Diseño 1 Columna Figma Match)
   ========================================================================== */

   /* ==========================================================================
   CANDADO PARA EVITAR DESBORDES (SCROLL HORIZONTAL)
   ========================================================================== */
html, body {
    overflow-x: hidden;
    width: 100%;
} 

.axben-wishlist-layout {
    padding: 60px 0;
    max-width: 900px; /* Ancho restringido para 1 columna */
    margin: 0 auto;
    width: 100%;
    box-sizing: border-box;
}

/* Cabecera */
.axben-wishlist-header {
    display: flex;
    align-items: baseline;
    gap: 15px;
    margin-bottom: 25px;
}
.axben-page-title { margin: 0; font-size: 32px; font-weight: 600; color: #111; letter-spacing: -1px; }
.axben-wishlist-count { color: #888; font-size: 14px; }

/* ==========================================================================
   LA CAJA PRINCIPAL (Contiene toda la lista)
   ========================================================================== */
.axben-wishlist-container-card {
    background-color: #ffffff;
    border-radius: 20px;
    border: 1px solid #eee;
    box-shadow: 0 4px 30px rgba(0,0,0,0.03); /* Sombra suave global */
    overflow: hidden;
    margin-bottom: 30px;
}

.axben-wishlist-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* CADA ITEM (Separado por línea inferior) */
.axben-wishlist-item {
    display: flex;
    align-items: center;
    padding: 25px 40px;
    border-bottom: 1px solid #f0f0f0; /* Línea separadora de Figma */
    transition: background 0.2s;
}
/* El último item no lleva línea */
.axben-wishlist-item:last-child { border-bottom: none; }
.axben-wishlist-item:hover { background-color: #fafbfc; }

/* 1. Columna Imagen */
.wishlist-col-image {
    width: 90px;
    margin-right: 30px;
    flex-shrink: 0;
}
.wishlist-col-image img { width: 100%; height: auto; border-radius: 50%; /* Figma las muestra redondas o muy ovaladas */ border: 1px solid #eee; }

/* 2. Columna Info Principal */
.wishlist-col-info {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

/* Tags (Nuevo, Personalizable) */
.wishlist-tags { display: flex; gap: 8px; margin-bottom: 4px; }
.tag-nuevo { background-color: #d93846; color: #fff; font-size: 10px; font-weight: 700; padding: 3px 10px; border-radius: 20px; text-transform: uppercase;}
.tag-personalizable { background-color: #ab68f2; color: #fff; font-size: 10px; font-weight: 700; padding: 3px 10px; border-radius: 20px; }

.wishlist-sku-container { font-size: 12px; display: flex; gap: 4px; }
.sku-label { color: #a3a3a3; }
.sku-value { color: #888; }

.wishlist-product-name {
    font-size: 16px;
    font-weight: 500;
    color: #111;
    text-decoration: none;
    line-height: 1.3;
    transition: color 0.3s;
}
.wishlist-product-name:hover { color: #00b912; }

/* 3. Columna Acciones */
.wishlist-col-actions {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 15px;
    margin-left: auto;
}

/* Botón Añadir a Cotización (Verde Sólido Figma) */
.btn-wishlist-cart {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: #00b912;
    color: #ffffff;
    padding: 10px 20px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    border: none;
    transition: background-color 0.3s ease;
}
.btn-wishlist-cart:hover { background-color: #009d0f; color: #fff;}

/* Icono Borrar */
.wishlist-remove-icon {
    display: flex;
    transition: transform 0.2s;
}
.wishlist-remove-icon:hover { transform: scale(1.1); }

/* ==========================================================================
   BOTONES INFERIORES
   ========================================================================== */
.axben-wishlist-bottom-actions { display: flex; gap: 15px; }

.btn-add-all {
    background-color: #00b912;
    color: #ffffff;
    padding: 12px 24px;
    border-radius: 30px;
    font-size: 15px;
    font-weight: 600;
    border: none;
    cursor: pointer;
}
.btn-add-all:hover { background-color: #009d0f; }

.btn-clear-all {
    background-color: #f4f5f7;
    color: #555;
    padding: 12px 24px;
    border-radius: 30px;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    border: 1px solid #e2e4e8;
    transition: all 0.3s;
}
.btn-clear-all:hover { background-color: #e2e4e8; color: #111; }

/* Responsive */

/* ==========================================================================
   NUEVO: BANNER SUPERIOR (Mis Favoritos)
   ========================================================================== */
.wishlist-banner-top {
    background-color: #def1de; /* Color verde claro del fondo (Match con el carrito) */
    width: 100%;
    height: 256px; 
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
    padding: 0 20px;
    margin-bottom: -30px; /* Para acercarlo un poco a la lista */
}

.wishlist-banner-content {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
}

.wishlist-banner-title {
    font-size: 72px; /* Tamaño Desktop */
    color: #004e01; /* Verde oscuro */
    font-weight: 600; /* Semibold según tus requerimientos */
    margin: 0;
    line-height: 1.1;
    letter-spacing: -1px;
}

/* ==========================================================================
   NUEVO: BANNER INFERIOR (Anuncio Catálogo)
   ========================================================================== */
.wishlist-promo-banner {
    margin-top: 60px;
    background-color: #00b912;
    border-radius: 24px;
    display: flex;
    overflow: hidden;
    align-items: center;
    box-shadow: 0 10px 30px rgba(0, 185, 18, 0.15);
}

.promo-image-area {
    flex: 0 0 45%; /* Toma el 45% del ancho */
    height: 100%;
    min-height: 250px;
}

.promo-image-area img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Para que la imagen rellene su espacio sin deformarse */
    display: block;
}

.promo-text-area {
    flex: 1;
    padding: 40px;
    color: #ffffff;
}

.promo-text-area h3 {
    font-size: 28px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 15px 0;
    line-height: 1.2;
}

.promo-text-area p {
    font-size: 14px;
    line-height: 1.5;
    margin: 0 0 25px 0;
    opacity: 0.9;
}

.promo-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: #ffffff;
    color: #00b912;
    padding: 10px 24px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: transform 0.2s, box-shadow 0.2s;
}

.promo-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    color: #00b912; /* Mantiene el color al hacer hover */
}

/* ==========================================================================
   RESPONSIVE MÓVIL (Banners)
   ========================================================================== */
@media screen and (max-width: 991px) {
    /* Banner Superior */
    .wishlist-banner-top {
        height: auto; 
        padding: 60px 20px; 
    }
    
    .wishlist-banner-title {
        font-size: 56px; /* Tamaño Móvil */
    }

    /* Banner Inferior */
    .wishlist-promo-banner {
        flex-direction: column;
        text-align: center;
    }

    .promo-image-area {
        width: 100%;
        height: 200px;
    }

    .promo-text-area {
        padding: 30px 20px;
    }

    .promo-text-area h3 {
        font-size: 24px;
    }
}

@media screen and (max-width: 480px) {
    /* Ajuste para pantallas muy pequeñas */
    .wishlist-banner-title {
        font-size: 42px;
    }
}

/* ==========================================================================
   NUEVO: BANNER SUPERIOR (Mis Favoritos) - FULL WIDTH
   ========================================================================== */
.wishlist-banner-top {
    background-color: #def1de; /* Color verde claro del fondo (Match con el carrito) */
    
    /* TRUCO PARA FULL WIDTH DENTRO DE UN CONTENEDOR CON MÁRGENES */
    width: 100vw;
    margin-left: 50%;
    transform: translateX(-50%);
    /* FIN TRUCO */

    height: 256px; 
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
    padding: 0 20px;
}

.wishlist-banner-content {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
}

.wishlist-banner-title {
    font-size: 72px; /* Tamaño Desktop */
    color: #004e01; /* Verde oscuro */
    font-weight: 600; /* Semibold según tus requerimientos */
    margin: 0;
    line-height: 1.1;
    letter-spacing: -1px;
}

/* ==========================================================================
   OCULTAR TÍTULO PRETERMINADO DE YITH
   ========================================================================== */
.wishlist-title-container {
    display: none !important;
}

/* ==========================================================================
   NUEVO: VISTA MÓVIL (Figma Match Corregido)
   ========================================================================== */
@media screen and (max-width: 768px) {
    
    /* 1. Ajuste del contenedor principal para evitar desbordes */
    .axben-wishlist-layout {
        padding: 40px 15px;
        overflow-x: hidden; /* Corta cualquier desborde fantasma */
    }

    /* 2. Convertimos la tarjeta en una mini-grilla (Imagen Izquierda, Info Derecha) */
    .axben-wishlist-item {
        display: grid;
        grid-template-columns: 80px 1fr; /* 80px fijos para la imagen, el resto para la info */
        grid-template-rows: auto auto;   /* Fila 1: Textos | Fila 2: Botones */
        gap: 12px 15px;
        padding: 20px 15px;
        align-items: start;
    }

    /* La imagen se clava en la columna izquierda */
    .wishlist-col-image {
        grid-column: 1 / 2;
        grid-row: 1 / 3;
        width: 80px;
        height: 80px;
        margin: 0;
        display: flex;
        align-items: flex-start;
        justify-content: center;
    }

    /* Hacemos que la imagen respete los 80x80px */
    .wishlist-col-image img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    /* Resucitamos las etiquetas y las acomodamos */
    .wishlist-tags {
        display: flex !important; /* Forzamos que vuelvan a aparecer */
        flex-wrap: wrap;
        gap: 6px;
        margin-bottom: 6px;
    }

    /* La info (textos) va en la parte superior derecha */
    .wishlist-col-info {
        grid-column: 2 / 3;
        grid-row: 1 / 2;
        width: 100%;
        gap: 4px;
    }

    .wishlist-product-name {
        font-size: 14px;
    }

    .wishlist-sku-container {
        font-size: 11px;
    }

    /* Los botones van en la parte inferior derecha */
    .wishlist-col-actions {
        grid-column: 2 / 3;
        grid-row: 2 / 3;
        margin: 0;
        width: 100%;
        justify-content: flex-start; /* Alineados a la izquierda con el texto */
        gap: 10px;
    }

    /* Ajuste del botón verde para que quepa bien en móviles pequeños */
  /* Ajuste del botón verde para que quepa bien en móviles pequeños */
    .btn-wishlist-cart {
        flex-grow: 1;
        justify-content: center;
        padding: 10px 12px;
        font-size: 13px;
        white-space: normal; /* Ahora el texto es libre de acomodarse */
        text-align: center;
        line-height: 1.2;
    }

    /* 3. Reparación del desbordamiento de los botones inferiores */
    .axben-wishlist-bottom-actions {
        flex-direction: column;
        width: 100%;
        box-sizing: border-box; /* Evita que el padding rompa el 100% */
        gap: 10px;
        margin-top: 10px;
    }

    .btn-add-all, .btn-clear-all {
        width: 100%;
        box-sizing: border-box; /* El secreto para evitar el desborde */
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0;
    }
}