
/* =========================================================
   SWIFTROUTE NATIVE LANGUAGE MENU
   Uses <details>/<summary>, so opening does NOT depend on JS.
   ========================================================= */

#google_translate_element,
.goog-te-banner-frame.skiptranslate,
.goog-te-gadget,
.goog-te-gadget-simple{
    display:none!important;
}

body{
    top:0!important;
}

.sr-native-language{
    position:fixed!important;
    left:20px!important;
    bottom:22px!important;
    z-index:2147483640!important;
    width:118px;
    font-family:Arial,Helvetica,sans-serif;
}

.sr-native-language summary{
    list-style:none!important;
}

.sr-native-language summary::-webkit-details-marker{
    display:none!important;
}

.sr-native-language-trigger{
    width:118px;
    height:48px;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    padding:0 14px!important;
    border:1px solid #d9dee4!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#0b2435!important;
    box-shadow:0 10px 30px rgba(8,30,45,.14)!important;
    cursor:pointer!important;
    user-select:none!important;
    -webkit-user-select:none!important;
    touch-action:manipulation!important;
}

.sr-native-language-trigger > span:first-child{
    font-size:23px;
    line-height:1;
}

.sr-native-language-trigger strong{
    font-size:16px;
}

.sr-native-language-arrow{
    margin-left:auto;
    transition:transform .2s ease;
}

.sr-native-language[open] .sr-native-language-arrow{
    transform:rotate(180deg);
}

.sr-native-language-menu{
    position:absolute!important;
    left:0!important;
    bottom:58px!important;
    width:282px!important;
    max-height:370px!important;
    overflow:hidden!important;
    border:1px solid #dfe3e7!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:0 18px 45px rgba(5,28,43,.20)!important;
}

.sr-native-language-search{
    padding:12px;
    border-bottom:1px solid #eceff2;
    background:#fafbfc;
}

.sr-native-language-search input{
    width:100%;
    height:40px;
    padding:0 12px;
    border:1px solid #dfe3e7;
    border-radius:8px;
    outline:none;
    font-size:14px;
}

.sr-native-language-list{
    max-height:300px;
    overflow-y:auto;
    padding:4px 0;
}

.sr-native-language-option{
    width:100%;
    min-height:44px;
    display:flex;
    align-items:center;
    gap:11px;
    padding:0 14px;
    border:0;
    background:#fff;
    color:#263746;
    cursor:pointer;
    text-align:left;
    font-size:15px;
}

.sr-native-language-option:hover,
.sr-native-language-option.is-current{
    background:#f4f6f8;
}

.sr-native-language-option span:first-child{
    width:30px;
    font-size:22px;
    text-align:center;
}

.sr-hero-overlay,
.sr-hero-media,
.sr-hero-media img{
    pointer-events:none!important;
}

html[data-theme="dark"] .sr-native-language-trigger,
html[data-theme="dark"] .sr-native-language-menu,
html[data-theme="dark"] .sr-native-language-option,
html[data-theme="dark"] .sr-native-language-search input{
    background:#0d1d2a!important;
    color:#eef4f7!important;
    border-color:#29404f!important;
}

html[data-theme="dark"] .sr-native-language-search{
    background:#102431!important;
    border-color:#29404f!important;
}

html[data-theme="dark"] .sr-native-language-option:hover,
html[data-theme="dark"] .sr-native-language-option.is-current{
    background:#17303f!important;
}

@media(max-width:900px){
    .sr-native-language{
        left:14px!important;
        bottom:16px!important;
    }

    .sr-native-language-menu{
        width:min(282px,calc(100vw - 28px))!important;
        max-height:340px!important;
    }
}
