/**
 * WP Dual AI AJAX Navigation - Fixes CSS
 * Estilos para asegurar que todos los elementos interactivos funcionen correctamente
 * 
 * @version 2.1.5
 */

/* ==========================================================================
   Voice Chat - Preservar y asegurar visibilidad
   ========================================================================== */

.wp-dual-ai-voice-widget,
.wp-dual-ai-voice-chat,
.elevenlabs-convai,
[data-voice-chat],
.voice-chat-container,
.wp-dual-ai-voice-button {
    z-index: 999999 !important;
    position: relative !important;
    pointer-events: auto !important;
}

/* Asegurar que el voice chat esté siempre encima durante transiciones */
.wp-dual-ai-transitioning .wp-dual-ai-voice-widget,
.wp-dual-ai-transitioning .elevenlabs-convai {
    opacity: 1 !important;
    visibility: visible !important;
}

/* ==========================================================================
   Botones de Agregar al Carrito - Asegurar clickeabilidad
   ========================================================================== */

.single_add_to_cart_button,
.add_to_cart_button,
button[type="submit"],
.button,
.btn {
    pointer-events: auto !important;
    cursor: pointer !important;
    position: relative !important;
    z-index: 10 !important;
}

/* Estados del botón */
.single_add_to_cart_button:not(.disabled):not(.loading),
.add_to_cart_button:not(.disabled):not(.loading) {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Hover states */
.single_add_to_cart_button:not(.disabled):hover,
.add_to_cart_button:not(.disabled):hover {
    opacity: 0.9 !important;
}

/* Loading state */
.single_add_to_cart_button.loading,
.add_to_cart_button.loading {
    pointer-events: none !important;
    opacity: 0.7 !important;
}

/* ==========================================================================
   Mini-Cart del Header - Visibilidad y funcionalidad
   ========================================================================== */

.site-header-cart,
.cart-contents,
.header-cart-link,
.mini-cart-toggle {
    pointer-events: auto !important;
    cursor: pointer !important;
    position: relative !important;
    z-index: 100 !important;
}

/* Dropdown del carrito */
.widget_shopping_cart,
.cart-dropdown,
.mini-cart-dropdown {
    z-index: 99999 !important;
    position: absolute !important;
    pointer-events: auto !important;
    background-color: #fff !important;
    box-shadow: 0 3px 10px rgba(0,0,0,0.2) !important;
}

/* Asegurar visibilidad del dropdown */
.widget_shopping_cart:not(.processing),
.cart-dropdown:not(.processing) {
    opacity: 1 !important;
    visibility: visible !important;
}

/* ==========================================================================
   Formularios - Asegurar interacción
   ========================================================================== */

form.cart,
.variations_form,
form.grouped_form {
    pointer-events: auto !important;
    position: relative !important;
}

/* Campos de formulario */
form.cart input,
form.cart select,
form.cart textarea,
form.cart button {
    pointer-events: auto !important;
    cursor: auto !important;
}

/* Variaciones de producto */
.variations select {
    pointer-events: auto !important;
    cursor: pointer !important;
}

/* ==========================================================================
   Transiciones AJAX - Preservar elementos importantes
   ========================================================================== */

/* Durante la transición, mantener ciertos elementos visibles */
.wp-dual-ai-transitioning {
    min-height: 300px;
}

/* Loading indicator no debe bloquear voice chat */
.wp-dual-ai-loading {
    pointer-events: none !important;
}

.wp-dual-ai-loading > div {
    pointer-events: auto !important;
}

/* ==========================================================================
   Modales y Popups - Asegurar funcionalidad
   ========================================================================== */

.modal,
.popup,
.dialog,
[role="dialog"] {
    z-index: 100000 !important;
    pointer-events: auto !important;
}

/* Overlay de modales */
.modal-backdrop,
.popup-overlay,
.dialog-overlay {
    z-index: 99999 !important;
    pointer-events: auto !important;
}

/* ==========================================================================
   Fixes específicos para WooCommerce
   ========================================================================== */

/* Tabs de producto */
.woocommerce-tabs .wc-tabs li a {
    pointer-events: auto !important;
    cursor: pointer !important;
}

/* Galería de producto */
.woocommerce-product-gallery {
    pointer-events: auto !important;
}

.woocommerce-product-gallery__trigger {
    pointer-events: auto !important;
    cursor: pointer !important;
    z-index: 50 !important;
}

/* Cantidad */
.quantity .qty {
    pointer-events: auto !important;
    cursor: text !important;
}

.quantity .plus,
.quantity .minus {
    pointer-events: auto !important;
    cursor: pointer !important;
}

/* ==========================================================================
   Mensajes y Notificaciones
   ========================================================================== */

.woocommerce-message,
.woocommerce-error,
.woocommerce-info,
.woocommerce-notices-wrapper {
    z-index: 1000 !important;
    position: relative !important;
    pointer-events: auto !important;
}

/* ==========================================================================
   Utilidades generales
   ========================================================================== */

/* Clase para forzar elemento clickeable */
.wp-dual-ai-clickable {
    pointer-events: auto !important;
    cursor: pointer !important;
    user-select: none !important;
}

/* Clase para preservar durante navegación */
.wp-dual-ai-preserve {
    z-index: 999999 !important;
    position: relative !important;
}

/* Fix para z-index stacking context */
.wp-dual-ai-high-z {
    z-index: 2147483647 !important;
}

/* ==========================================================================
   Media Queries - Responsive fixes
   ========================================================================== */

@media (max-width: 768px) {
    /* Voice chat en móvil */
    .wp-dual-ai-voice-widget,
    .elevenlabs-convai {
        bottom: 20px !important;
        right: 20px !important;
    }
    
    /* Mini-cart en móvil */
    .widget_shopping_cart,
    .cart-dropdown {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        top: auto !important;
        bottom: 0 !important;
        max-height: 70vh !important;
        overflow-y: auto !important;
    }
}