.language-switcher {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 34px;
    margin: 8px 12px;
    padding: 0 9px;
    vertical-align: middle;
    background: #fff;
    border: 1px solid #d7e0e8;
    border-radius: 8px;
    color: #3c8dbc;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .06);
}

.language-switcher:hover {
    border-color: #9fb5c9;
}

.language-switcher:focus-within {
    border-color: #3c8dbc;
    outline: 2px solid rgba(60, 141, 188, .25);
    outline-offset: 2px;
}

.language-switcher-icon {
    display: block;
    flex: 0 0 19px;
}

/* 顶栏（navbar <li>）内：inline 元素受行盒基线影响会上下偏移，改为块级 flex 靠外边距居中 */
.navbar-custom-menu .language-switcher,
.nav > li > .language-switcher {
    display: flex;
    margin-top: 8px;
    margin-bottom: 8px;
}

.language-switcher-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.language-switcher-select {
    box-sizing: border-box;
    min-width: 94px;
    margin: 0;
    /* 不用 height:100%——原生 select 固定高度时文本不居中；改用对称内边距让浏览器自居中 */
    padding: 7px 2px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #334155;
    font-family: inherit;
    font-size: 13px;
    line-height: normal;
    cursor: pointer;
}

@media (max-width: 360px) {
    .language-switcher { margin-right: 6px; margin-left: 6px; }
    .language-switcher-select { min-width: 82px; }
}
