/* 
 * Translation Flags Language Switcher CSS
 * Alle CSS-Styles für die Translation-Flags (Language-Switcher)
 * Farben müssen via Custom Properties aus der colors.css genutzt werden
 */

/* Language Switcher Container - Fixed Position oben rechts */
.base-language-switcher-container {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 1000;
}

/* Language Switcher - Flaggen nebeneinander, rechts von der Navigation */
.base-language-switcher {
    position: relative;
    top: auto;
    right: auto;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 2px;
    flex-shrink: 0;
    margin-right: var(--spacing-md);
}

/* Language Switcher im Hamburger-Menü - Standard versteckt */
.base-language-switcher-mobile {
    display: none;
}

/* Mobile und Tablet bis 1023px: Header-Flaggen aus; Sprache im Overlay-Nav (011-ui-mobile.mdc 002) */
@media (width <= 1023px) {
    .base-header .base-language-switcher,
    .base-header-glass .base-language-switcher {
        display: none !important;
    }
    
    /* Flaggen im Hamburger-Menü anzeigen, wenn Menü geöffnet ist */
    .base-navigation-mobile-open .base-language-switcher-mobile {
        display: flex !important;
    }
}

/* Language Flag Link - Kein Rahmen bei Fokus (Regel 004) */
.base-language-switcher .language-flag-link,
.base-language-switcher .base-language-flag-link {
    display: inline-block;
    text-decoration: none;
    transition: opacity var(--transition-fast);
    line-height: 0;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.base-language-switcher .language-flag-link:hover,
.base-language-switcher .base-language-flag-link:hover {
    opacity: 0.7;
}

.base-language-switcher .language-flag-link.active,
.base-language-switcher .base-language-flag-link.base-active {
    opacity: 1;
}

/* VERPFLICHTEND: Flaggen dürfen keinen Rahmen haben (Regel 004) */
.base-language-switcher .flag-icon,
.base-language-switcher .base-flag-icon {
    width: 20px;
    height: 15px;
    object-fit: cover;
    border-radius: 2px;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    flex-shrink: 0;
    display: block;
}
