/* ========================================
   LANGUAGE DROPDOWN SWITCHER
   Override per header.css flex layout
   ======================================== */

/* Container - DEVE avere position relative */
.header-topbar .header-right .language-dropdown {
    position: relative !important;
    display: inline-block !important;
}

/* Bottone toggle */
.header-topbar .header-right .language-dropdown .language-toggle {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 8px 12px !important;
    background: transparent !important;
    border: 2px solid #e5e7eb !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1f2937 !important;
    transition: all 0.2s ease !important;
}

.header-topbar .header-right .language-dropdown .language-toggle:hover {
    background: #f9fafb !important;
    border-color: #d1d5db !important;
}

.header-topbar .header-right .language-dropdown .language-toggle .flag-icon {
    font-size: 18px !important;
    line-height: 1 !important;
}

.header-topbar .header-right .language-dropdown .language-toggle .lang-code {
    font-weight: 600 !important;
    text-transform: uppercase !important;
}

.header-topbar .header-right .language-dropdown .dropdown-arrow {
    width: 16px !important;
    height: 16px !important;
    transition: transform 0.2s ease !important;
    opacity: 0.6 !important;
}

.header-topbar .header-right .language-dropdown.open .dropdown-arrow {
    transform: rotate(180deg) !important;
}

/* ========================================
   MENU DROPDOWN - POSIZIONAMENTO ASSOLUTO
   ======================================== */

.header-topbar .header-right .language-dropdown .language-menu {
    /* Posizionamento */
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    margin-top: 8px !important;

    /* Dimensioni */
    min-width: 180px !important;
    width: auto !important;

    /* Aspetto */
    background: #ffffff !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.05) !important;

    /* Z-index alto */
    z-index: 99999 !important;

    /* Layout verticale */
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;

    /* Overflow */
    overflow: hidden !important;
}

/* NASCOSTO quando ha attributo hidden */
.header-topbar .header-right .language-dropdown .language-menu[hidden] {
    display: none !important;
}

/* ========================================
   OPZIONI LINGUA
   ======================================== */

.header-topbar .header-right .language-dropdown .language-menu .language-option {
    /* Layout riga */
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;

    /* Dimensioni */
    width: 100% !important;
    padding: 12px 16px !important;
    box-sizing: border-box !important;

    /* Aspetto */
    background: #ffffff !important;
    color: #374151 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    border: none !important;
    border-bottom: 1px solid #f3f4f6 !important;

    /* Posizione */
    position: relative !important;

    /* Transizioni */
    transition: all 0.15s ease !important;
}

.header-topbar .header-right .language-dropdown .language-menu .language-option:last-child {
    border-bottom: none !important;
}

.header-topbar .header-right .language-dropdown .language-menu .language-option:hover {
    background: #f9fafb !important;
    color: #1f2937 !important;
}

.header-topbar .header-right .language-dropdown .language-menu .language-option.active {
    background: #fef2f2 !important;
    color: #dc2626 !important;
    font-weight: 600 !important;
}

.header-topbar .header-right .language-dropdown .language-menu .language-option.active::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 3px !important;
    background: #dc2626 !important;
}

/* Elementi dentro le opzioni */
.header-topbar .header-right .language-dropdown .language-menu .language-option .flag-icon {
    font-size: 20px !important;
    line-height: 1 !important;
    flex-shrink: 0 !important;
}

.header-topbar .header-right .language-dropdown .language-menu .language-option .lang-code {
    font-weight: 600 !important;
    text-transform: uppercase !important;
    min-width: 24px !important;
    flex-shrink: 0 !important;
}

.header-topbar .header-right .language-dropdown .language-menu .language-option .lang-name {
    color: #6b7280 !important;
    font-size: 13px !important;
}

.header-topbar .header-right .language-dropdown .language-menu .language-option.active .lang-name {
    color: #dc2626 !important;
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 768px) {
    .header-topbar .header-right .language-dropdown .language-toggle {
        padding: 6px 10px !important;
    }

    .header-topbar .header-right .language-dropdown .language-toggle .lang-code {
        display: none !important;
    }

    .header-topbar .header-right .language-dropdown .language-menu {
        left: auto !important;
        right: 0 !important;
        min-width: 160px !important;
    }
}
