/**
 * Geo Language Detector - Estilos del Selector
 * Version: 1.0.0
 */

/* Contenedor principal */
.gld-language-selector {
    display: inline-block;
    font-family: inherit;
    line-height: 1;
    position: relative;
}

/* Reset completo para evitar interferencias de temas */
.gld-language-selector *,
.gld-language-selector *:before,
.gld-language-selector *:after {
    box-sizing: border-box !important;
}

/* DROPDOWN MINIMALISTA - SIN FONDO, SIN BORDES */
.gld-selector-dropdown .gld-dropdown-wrapper {
    position: relative;
    display: inline-block;
}

.gld-selector-dropdown .gld-dropdown-trigger {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 10px 16px !important;
    background: transparent !important;
    border: none !important;
    color: #000000 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    min-width: 80px !important;
    box-shadow: none !important;
    outline: none !important;
    user-select: none !important;
    margin: 0 !important;
    text-decoration: none !important;
    line-height: 1 !important;
    vertical-align: baseline !important;
    font-family: inherit !important;
}

/* Forzar estilos sobre Elementor y otros temas */
.elementor-widget .gld-selector-dropdown .gld-dropdown-trigger,
.elementor-element .gld-selector-dropdown .gld-dropdown-trigger,
.gld-selector-dropdown .gld-dropdown-trigger.gld-dropdown-trigger {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: #000000 !important;
    text-shadow: none !important;
    outline: none !important;
    outline-offset: 0 !important;
}

.gld-selector-dropdown .gld-dropdown-trigger:hover,
.gld-selector-dropdown .gld-dropdown-trigger:focus,
.gld-selector-dropdown .gld-dropdown-trigger:active,
.elementor-widget .gld-selector-dropdown .gld-dropdown-trigger:hover,
.elementor-widget .gld-selector-dropdown .gld-dropdown-trigger:focus,
.elementor-widget .gld-selector-dropdown .gld-dropdown-trigger:active {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: #000000 !important;
    text-shadow: none !important;
    outline: none !important;
    transform: none !important;
    text-decoration: none !important;
}

.gld-selector-dropdown .gld-dropdown-trigger[aria-expanded="true"],
.elementor-widget .gld-selector-dropdown .gld-dropdown-trigger[aria-expanded="true"] {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: #000000 !important;
}

.gld-selector-dropdown .gld-current-lang {
    margin-right: 8px !important;
    color: #000000 !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
}

.gld-selector-dropdown .gld-dropdown-arrow {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    color: #000000 !important;
    width: 12px !important;
    height: 12px !important;
}

.gld-selector-dropdown .gld-dropdown-trigger[aria-expanded="true"] .gld-dropdown-arrow {
    transform: rotate(180deg) !important;
}

.gld-dropdown-menu {
	width: fit-content;
}

/* Menú dropdown minimalista */
.gld-selector-dropdown .gld-dropdown-menu {
    position: absolute !important;
    top: 100% ;
    left: 0 ;
    right: 0 ;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    z-index: 1000 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(-10px) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

.gld-selector-dropdown .gld-dropdown-wrapper.open .gld-dropdown-menu {
	
	background-color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

.gld-selector-dropdown .gld-dropdown-content {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}

.gld-selector-dropdown .gld-dropdown-wrapper.open .gld-dropdown-content {
    max-height: 200px !important;
}

/* Items del dropdown minimalistas */
.gld-selector-dropdown .gld-dropdown-item {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 12px 16px !important;
    color: #000000 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: all 0.2s ease !important;
    border: none !important;
    background: transparent !important;
    opacity: 0 !important;
    transform: translateX(-10px) !important;
    animation: slideInItem 0.3s ease forwards !important;
    margin: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

.gld-selector-dropdown .gld-dropdown-item:last-child {
    border-bottom: none !important;
}

.gld-selector-dropdown .gld-dropdown-item:hover,
.gld-selector-dropdown .gld-dropdown-item:focus {
    background: transparent !important;
    color: #000000 !important;
    text-decoration: underline !important;
    transform: translateX(0) !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

.gld-selector-dropdown .gld-dropdown-item.gld-current {
    background: transparent !important;
    color: #000000 !important;
    font-weight: 700 !important;
}

.gld-selector-dropdown .gld-dropdown-item.gld-current:hover,
.gld-selector-dropdown .gld-dropdown-item.gld-current:focus {
    background: transparent !important;
    cursor: default !important;
    text-decoration: none !important;
}

.gld-selector-dropdown .gld-lang-code {
    flex: 1 !important;
    color: #000000 !important;
}

.gld-selector-dropdown .gld-check-icon {
    color: #000000 !important;
    margin-left: 8px !important;
    width: 16px !important;
    height: 16px !important;
}

/* Forzar sobre todos los selectores de Elementor */
.elementor-widget .gld-selector-dropdown .gld-dropdown-item,
.elementor-element .gld-selector-dropdown .gld-dropdown-item,
.elementor-widget .gld-selector-dropdown .gld-dropdown-item:hover,
.elementor-element .gld-selector-dropdown .gld-dropdown-item:hover,
.elementor-widget .gld-selector-dropdown .gld-dropdown-item:focus,
.elementor-element .gld-selector-dropdown .gld-dropdown-item:focus {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    color: #000000 !important;
    outline: none !important;
    text-shadow: none !important;
}

.elementor-widget .gld-selector-dropdown .gld-dropdown-item:hover,
.elementor-element .gld-selector-dropdown .gld-dropdown-item:hover {
    text-decoration: underline !important;
}

/* Animaciones de entrada para los items */
@keyframes slideInItem {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Delay escalonado para los items */
.gld-selector-dropdown .gld-dropdown-item:nth-child(1) { animation-delay: 0.05s !important; }
.gld-selector-dropdown .gld-dropdown-item:nth-child(2) { animation-delay: 0.1s !important; }
.gld-selector-dropdown .gld-dropdown-item:nth-child(3) { animation-delay: 0.15s !important; }
.gld-selector-dropdown .gld-dropdown-item:nth-child(4) { animation-delay: 0.2s !important; }
.gld-selector-dropdown .gld-dropdown-item:nth-child(5) { animation-delay: 0.25s !important; }

/* RESPONSIVE MINIMALISTA */
@media (max-width: 768px) {
    .gld-selector-dropdown .gld-dropdown-trigger {
        padding: 8px 12px !important;
        font-size: 13px !important;
        min-width: 70px !important;
    }
    
    .gld-selector-dropdown .gld-dropdown-item {
        padding: 10px 12px !important;
        font-size: 13px !important;
    }
}

/* ANIMACIÓN DE ENTRADA PRINCIPAL */
.gld-language-selector {
    animation: gld-fade-in 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

@keyframes gld-fade-in {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ESTADO DE CARGA */
.gld-language-selector.loading {
    opacity: 0.6 !important;
    pointer-events: none !important;
}

.gld-language-selector.loading .gld-dropdown-trigger {
    cursor: wait !important;
}

/* INTEGRACIÓN CON ELEMENTOR - FORZAR ESTILOS */
.elementor-widget .gld-language-selector,
.elementor-element .gld-language-selector {
    width: auto !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-widget .gld-selector-dropdown .gld-dropdown-wrapper,
.elementor-element .gld-selector-dropdown .gld-dropdown-wrapper {
    width: auto !important;
    display: inline-block !important;
}

/* Reset de botones de Elementor */
.elementor-widget button.gld-dropdown-trigger,
.elementor-element button.gld-dropdown-trigger,
.elementor-widget .gld-dropdown-trigger,
.elementor-element .gld-dropdown-trigger {
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-radius: 0 !important;
    padding: 10px 16px ;
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
    min-height: auto ;
    max-width: none !important;
    vertical-align: baseline !important;
    white-space: nowrap !important;
}

/* Reset de enlaces de Elementor */
.elementor-widget a.gld-dropdown-item,
.elementor-element a.gld-dropdown-item,
.elementor-widget .gld-dropdown-item,
.elementor-element .gld-dropdown-item {
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-radius: 0 !important;
    padding: 12px 16px !important;
    margin: 0 !important;
    width: 100% !important;
    display: flex !important;
}

/* ACCESIBILIDAD MEJORADA */
.gld-dropdown-trigger:focus,
.gld-dropdown-item:focus {
    outline: 1px dotted #000000 !important;
    outline-offset: 2px !important;
}

/* SOPORTE RTL */
[dir="rtl"] .gld-selector-dropdown .gld-dropdown-trigger {
    flex-direction: row-reverse !important;
}

[dir="rtl"] .gld-selector-dropdown .gld-current-lang {
    margin-right: 0 !important;
    margin-left: 8px !important;
}

[dir="rtl"] .gld-selector-dropdown .gld-dropdown-item {
    flex-direction: row-reverse !important;
}

[dir="rtl"] .gld-selector-dropdown .gld-check-icon {
    margin-left: 0 !important;
    margin-right: 8px !important;
}

/* Z-INDEX FIXES */
.gld-selector-dropdown .gld-dropdown-menu {
    z-index: 999999 !important;
}

/* Asegurar que esté sobre elementos de Elementor */
.elementor-element .gld-selector-dropdown .gld-dropdown-menu {
    z-index: 99999 !important;
}

/* RESET ESPECÍFICO PARA TEMAS POPULARES */
.gld-language-selector button,
.gld-language-selector a {
    all: unset !important;
}

.gld-language-selector .gld-dropdown-trigger {
    all: unset !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 10px 16px ;
    background: transparent !important;
    border: none !important;
    color: #000000 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    min-width: 80px;
    user-select: none !important;
    box-sizing: border-box !important;
}

.gld-language-selector .gld-dropdown-item {
    all: unset !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 12px 16px !important;
    color: #000000 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

@media (max-width: 768px) {

	.gld-language-selector .gld-dropdown-trigger {		
			padding: 0 !important;		
			min-width: 0px !important;			
	}
	
	.gld-selector-dropdown .gld-dropdown-menu  {
    top: 36px !important;  
    left: -13px !important;
	}
	
}