/* ============================================
   BOTONES DE CANTIDAD
   ============================================ */
.qty-wrapper {
    display: inline-flex;
    align-items: center;
    gap: 0;
    border: 1px solid #ddd;
    border-radius: 4px;
    overflow: hidden;
    background: #fff;
}

.qty-wrapper .qty {
    border: none !important;
    text-align: center;
    width: 60px;
    padding: 10px 5px;
    margin: 0 !important;
    -moz-appearance: textfield;
    font-size: 16px;
    font-weight: 500;
    background: transparent;
    box-shadow: none !important;
}

.qty-wrapper .qty::-webkit-outer-spin-button,
.qty-wrapper .qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.qty-btn {
    background: #f5f5f5;
    border: none;
    cursor: pointer;
    font-size: 20px;
    font-weight: bold;
    line-height: 1;
    padding: 10px 14px;
    transition: all 0.2s ease;
    color: #333;
    min-width: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    user-select: none;
}

.qty-btn:hover {
    background: #e0e0e0;
    color: #000;
}

.qty-btn:active {
    transform: scale(0.95);
    background: #d0d0d0;
}

.qty-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
    background: #f5f5f5;
}

.qty-btn:disabled:hover {
    background: #f5f5f5;
    color: #333;
}

@media (max-width: 768px) {
    .qty-wrapper {
        max-width: 140px;
    }
    
    .qty-wrapper .qty {
        width: 50px;
        font-size: 14px;
    }
    
    .qty-btn {
        min-width: 35px;
        padding: 8px 12px;
        font-size: 18px;
    }
}

/* ============================================
   ICONOS DE PAPELERA - OVERRIDE COMPLETO
   ============================================ */

/* FORZAR ocultar el ícono × de Elementor */
.elementor-menu-cart__product-remove a::before,
.elementor-menu-cart__product-remove a::after,
.elementor_remove_from_cart_button::before,
.elementor_remove_from_cart_button::after,
.remove_from_cart_button::before,
.remove_from_cart_button::after,
.product-remove a::before,
.product-remove a::after {
    content: "" !important;
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
}

/* Resetear completamente los enlaces */
.elementor-menu-cart__product-remove a,
.elementor_remove_from_cart_button,
.remove_from_cart_button,
a.remove,
.product-remove a,
.woocommerce-cart-form__cart-item .product-remove a {
    /* Ocultar texto */
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
    
    /* Layout */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    
    /* Estilo */
    border: none !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: #E7000B !important;
    
    /* Transición */
    transition: all 0.3s ease !important;
    
    /* Otros */
    text-decoration: none !important;
    overflow: visible !important;
    position: relative !important;
}

/* SVG de papelera */
.cart-remove-icon {
    display: inline-block !important;
    width: 20px !important;
    height: 20px !important;
    vertical-align: middle !important;
    transition: transform 0.3s ease !important;
    flex-shrink: 0 !important;
    position: relative !important;
    z-index: 10 !important;
}

/* Hover */
.elementor-menu-cart__product-remove a:hover,
.elementor_remove_from_cart_button:hover,
.remove_from_cart_button:hover,
a.remove:hover,
.product-remove a:hover {
    background: rgba(231, 0, 11, 0.1) !important;
    transform: scale(1.15) !important;
}

/* Active */
.elementor-menu-cart__product-remove a:active,
.elementor_remove_from_cart_button:active,
.remove_from_cart_button:active,
a.remove:active,
.product-remove a:active {
    transform: scale(0.9) !important;
}

/* Contenedor */
.elementor-menu-cart__product-remove {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 32px !important;
    font-size: 0 !important;
}

/* Ocultar spans internos */
.elementor-menu-cart__product-remove a span,
.elementor-menu-cart__product-remove a > *:not(.cart-remove-icon),
.remove_from_cart_button span,
.remove_from_cart_button > *:not(.cart-remove-icon) {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Clase para enlaces procesados */
.trash-icon-replaced {
    overflow: visible !important;
}

.trash-icon-replaced svg {
    pointer-events: none !important;
}

/* Responsive para mini-cart */
@media (max-width: 768px) {
    .cart-remove-icon {
        width: 18px !important;
        height: 18px !important;
    }
    
    .elementor-menu-cart__product-remove a,
    .elementor_remove_from_cart_button,
    .remove_from_cart_button {
        width: 28px !important;
        height: 28px !important;
        min-width: 28px !important;
        min-height: 28px !important;
    }
}

/* Override específico para el widget de Elementor */
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-remove a {
    text-indent: -9999px !important;
    overflow: visible !important;
}

/* Asegurar que solo el SVG sea visible */
.elementor-menu-cart__product-remove a > * {
    display: none !important;
}

.elementor-menu-cart__product-remove a > svg,
.elementor-menu-cart__product-remove a > .cart-remove-icon {
    display: inline-block !important;
}

/* ============================================
   OVERRIDE NUCLEAR PARA ELEMENTOR MINI-CART
   ============================================ */

/* Forzar que el contenedor tenga font-size 0 */
.elementor-menu-cart__product-remove {
    font-size: 0 !important;
    line-height: 0 !important;
}

/* IMPORTANTE: Forzar ocultar cualquier contenido de texto */
.elementor-menu-cart__product-remove a {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
}

/* Ocultar el × que Elementor pone con CSS */
.elementor-menu-cart__product-remove a::before,
.elementor-menu-cart__product-remove a::after {
    content: none !important;
    display: none !important;
    font-size: 0 !important;
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Forzar que SOLO el SVG sea visible */
.elementor-menu-cart__product-remove a svg,
.elementor-menu-cart__product-remove a .cart-remove-icon {
    font-size: initial !important;
    color: #E7000B !important;
    -webkit-text-fill-color: initial !important;
}

/* Si Elementor usa un ícono de fuente, ocultarlo */
.elementor-menu-cart__product-remove a i,
.elementor-menu-cart__product-remove a [class*="icon"],
.elementor-menu-cart__product-remove a [class*="fa-"] {
    display: none !important;
}