
/* Step 249 — Mobile Language Visual Label Fix
   Purpose: Android/native select may clip visible text. This shows a stable visual label
   while keeping the real select tappable. */

.language-switcher-visual-label {
    display: none;
}

@media (max-width: 980px) {
    .premium-site-header .language-switcher-form,
    .premium-site-header .compact-header-lang,
    .premium-site-header .tiny-lang-form {
        position: relative !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 74px !important;
        min-width: 74px !important;
        height: 42px !important;
        min-height: 42px !important;
        margin: 0 !important;
        flex: 0 0 74px !important;
        overflow: visible !important;
    }

    .premium-site-header .language-switcher-form::after {
        content: "";
        position: absolute;
        right: 12px;
        top: 50%;
        width: 8px;
        height: 8px;
        border-right: 2px solid rgba(238,244,255,.92);
        border-bottom: 2px solid rgba(238,244,255,.92);
        transform: translateY(-65%) rotate(45deg);
        pointer-events: none;
        z-index: 3;
    }

    .premium-site-header .language-switcher-form .language-switcher {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        height: 42px !important;
        min-height: 42px !important;
        opacity: 0 !important;
        z-index: 4 !important;
        cursor: pointer !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .premium-site-header .language-switcher-visual-label {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        width: 100% !important;
        height: 42px !important;
        padding: 0 28px 0 13px !important;
        border-radius: 14px !important;
        border: 1px solid rgba(241,196,75,.30) !important;
        background: rgba(255,255,255,.09) !important;
        color: #eef4ff !important;
        font-weight: 800 !important;
        font-size: .92rem !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
        pointer-events: none !important;
        z-index: 2 !important;
    }
}

@media (max-width: 520px) {
    .premium-site-header .language-switcher-form,
    .premium-site-header .compact-header-lang,
    .premium-site-header .tiny-lang-form {
        width: 70px !important;
        min-width: 70px !important;
        flex-basis: 70px !important;
    }

    .premium-site-header .language-switcher-visual-label {
        padding-left: 12px !important;
        padding-right: 26px !important;
        font-size: .9rem !important;
    }

    .premium-site-header .language-switcher-form::after {
        right: 11px !important;
    }
}
