.site-language-switcher { margin: 0; margin-inline-start: 12px; flex-shrink: 0; }
.site-language { position: relative; color: #24232e; }
.site-language__trigger {
    display: flex; align-items: center; gap: 9px; min-height: 48px;
    padding: 5px 13px 5px 6px; padding-inline: 6px 13px;
    border: 1px solid #e8e7ed; border-radius: 100px;
    background: #fff; box-shadow: 0 3px 10px rgb(31 28 45 / 4%);
    cursor: pointer; list-style: none; user-select: none;
    transition: border-color .2s, box-shadow .2s, background .2s;
}
.site-language__trigger::-webkit-details-marker { display: none; }
.site-language__trigger::marker { content: ''; }
.site-language__trigger:hover,
.site-language[open] > .site-language__trigger {
    border-color: #f3b5cf; background: #fffafd; box-shadow: 0 4px 16px rgb(221 0 100 / 7%);
}
.site-language__trigger:focus-visible,
.site-language__option:focus-visible { outline: 2px solid #eb086f; outline-offset: 3px; }
.site-language__globe {
    width: 34px; height: 34px; display: grid; place-items: center;
    flex-shrink: 0; border-radius: 50%; color: #e9086c; background: #fff0f6;
}
.site-language__name { font-size: 14px; font-weight: 600; line-height: 1.5; white-space: nowrap; }
.site-language__chevron { margin-inline-start: 2px; color: #85818e; transition: transform .2s; flex-shrink: 0; }
.site-language[open] .site-language__chevron { transform: rotate(180deg); }
.site-language__panel {
    position: absolute; inset-block-start: calc(100% + 12px); inset-inline-end: 0;
    width: 220px; max-width: calc(100vw - 32px); padding: 8px;
    background: #fff; border: 1px solid #eeedf2; border-radius: 18px;
    box-shadow: 0 16px 48px rgb(31 28 45 / 12%); z-index: 100;
    animation: language-panel-in .16s ease-out;
}
.site-language__heading {
    margin: 4px 10px 10px; color: #87828e; font-size: 11px;
    font-weight: 500; line-height: 1.6; text-align: start;
}
.site-language__option {
    width: 100%; display: flex; align-items: center; gap: 11px;
    min-height: 48px; padding: 8px 10px; border: 0; border-radius: 11px;
    background: transparent; color: #35313e; text-align: start;
    font-size: 14px; font-weight: 500; cursor: pointer;
    transition: background .15s, color .15s;
}
.site-language__option + .site-language__option { margin-top: 3px; }
.site-language__option:hover { background: #f6f5f8; }
.site-language__option.is-selected { background: #fff0f6; color: #d90964; }
.site-language__code {
    width: 31px; height: 29px; display: grid; place-items: center;
    border: 1px solid #e9e6ed; border-radius: 8px; font-size: 10px;
    font-weight: 600; color: #777080; background: #fff; direction: ltr;
}
.site-language__option.is-selected .site-language__code { border-color: #f8cee0; color: #d90964; }
.site-language__check { margin-inline-start: auto; flex-shrink: 0; }
@keyframes language-panel-in { from { opacity: 0; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 575px) {
    .site-language-switcher { margin-inline-start: 6px; }
    .site-language__trigger { min-height: 42px; gap: 7px; padding-inline: 5px 10px; }
    .site-language__globe { width: 29px; height: 29px; }
    .site-language__name { font-size: 13px; }
    .site-language__panel { width: 205px; }
}
@media (prefers-reduced-motion: reduce) {
    .site-language__panel { animation: none; }
    .site-language__trigger, .site-language__chevron, .site-language__option { transition: none; }
}
