.lang-selector {
    position: relative !important;
    display: inline-block !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", sans-serif;
    z-index: 9999 !important;
}
.lang-btn {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding:8px 14px !important;
    background: #fff !important;
    border:1px solid #e2e8f0 !important;
    border-radius:10px !important;
    cursor: pointer !important;
    font-size:14px !important;
    color:#1e293b !important;
    box-shadow:0 1px 3px rgba(0,0,0,.06) !important;
    transition:all .2s ease !important;
    user-select:none !important;
    white-space:nowrap !important;
}
.lang-btn:hover {
    border-color:#3b82f6 !important;
    box-shadow:0 2px 8px rgba(59,130,246,.15) !important;
}
.lang-btn .flag {
    width:22px !important;height:16px !important;
    object-fit:cover !important;
    border-radius:2px !important;
    flex-shrink:0 !important;
    box-shadow:0 0 0 1px rgba(0,0,0,.08) !important;
}
.lang-btn .arrow {
    margin-left:4px !important;
    transition:transform .25s ease !important;
    font-size:10px !important;
    color:#64748b !important;
}
.lang-selector.open .lang-btn .arrow { transform:rotate(180deg) !important; }
.lang-dropdown {
    position:absolute !important;
    top:calc(100% + 6px) !important;
    right:0 !important;
    min-width:140px !important;
    max-width:180px !important;
    max-height:380px !important;
    overflow-y:auto !important;
    background:#fff !important;
    border:1px solid #e2e8f0 !important;
    border-radius:12px !important;
    box-shadow:0 10px 40px rgba(0,0,0,.12) !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translateY(-6px) scale(.98) !important;
    transition:all .2s cubic-bezier(.2,.8,.2,1) !important;
    padding:6px !important;
    z-index:99999 !important;
}
.lang-selector.open .lang-dropdown {
    opacity:1 !important;
    visibility:visible !important;
    transform:translateY(0) scale(1) !important;
}
.lang-search {
    width:100% !important;
    padding:8px 12px !important;
    border:1px solid #e2e8f0 !important;
    border-radius:8px !important;
    font-size:14px !important;
    outline:none !important;
    margin-bottom:4px !important;
    box-sizing:border-box !important;
}
.lang-search:focus { border-color:#3b82f6 !important; }
.lang-option {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    padding:8px 12px !important;
    border-radius:8px !important;
    cursor:pointer !important;
    font-size:15px !important;
    color:#334155 !important;
    transition:background .15s !important;
}
.lang-option:hover { background:#f1f5f9 !important; }
.lang-option.active { background:#eff6ff !important;color:#1d4ed8 !important;font-weight:600 !important; }
.lang-option .flag { width:22px !important;height:16px !important;border-radius:2px !important; }
.lang-option .lang-name { flex:1 !important; text-align:left !important; }
.lang-option .lang-native { color:#94a3b8 !important;font-size:13px !important;margin-left:6px !important; }
 
#translateSelectLanguage, .translateSelectLanguage { display:none !important; }
#custom_translate {
    display:inline-block !important;
    overflow:visible !important;
}
.lang-dropdown::-webkit-scrollbar { width:6px; }
.lang-dropdown::-webkit-scrollbar-thumb { background:#cbd5e1;border-radius:3px; }
.lang-dropdown::-webkit-scrollbar-track { background:transparent; }
/* ========== PC ≥992px ========== */
@media (min-width:992px){
    .lang-btn{padding:8px 14px !important;font-size:14px !important;}
    .lang-dropdown{min-width:140px !important;max-width:180px !important;max-height:380px !important;}
}
 
@media (min-width:769px) and (max-width:991px){
    #custom_translate {
        width:auto !important;
        margin-bottom:0 !important;
    }
    .lang-selector {
        display:inline-block !important;
        text-align:initial !important;
    }
    .lang-btn {
        display:inline-flex !important;
        padding:7px 12px !important;
        font-size:13px !important;
    }
    .lang-btn .flag{width:20px !important;height:14px !important;}
    .lang-dropdown{
        right:0 !important;
        left:auto !important;
        min-width:150px !important;
        max-width: min(180px, calc(100vw - 20px)) !important;
        max-height:320px !important;
    }
    .lang-option{font-size:14px !important;padding:7px 10px !important;}
    .lang-option .lang-native{font-size:12px !important;}
}
 
@media (max-width:768px){
    #custom_translate {
        width:auto !important;
        margin-bottom:0 !important;
    }
    .lang-selector {
        display:inline-block !important;
        text-align:initial !important;
    }
    .lang-btn {
        display:inline-flex !important;
        padding:6px 10px !important;
        font-size:12px !important;
        gap:6px !important;
    }
    .lang-btn .flag{width:18px !important;height:13px !important;}
    .lang-dropdown{
        right:0 !important;
        left:auto !important;
        min-width:120px !important;
        max-width: min(160px, calc(100vw - 20px)) !important;
        max-height:280px !important;
    }
    .lang-option{font-size:13px !important;padding:6px 8px !important;gap:6px !important;}
    .lang-option .lang-native{font-size:11px !important;}
}
