.language-field { display: grid; gap: .42rem; min-width: 0; }
.language-select { position: relative; min-width: 0; }
.language-select.is-enhanced > select { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.language-select-trigger { width: 100%; min-height: 2.45rem; display: flex; align-items: center; gap: .55rem; padding: .48rem .65rem; border: 1px solid #cfcfc7; border-radius: .6rem; color: #303530; background: #fff; cursor: pointer; font: inherit; }
.language-select-trigger:focus-visible { outline: 0; border-color: var(--olive, var(--accent, #56664d)); box-shadow: 0 0 0 3px rgba(86, 102, 77, .13); }
.language-select-label { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.language-select-chevron { margin-left: auto; color: #7d847e; font-size: .9rem; transition: transform .15s ease; }
.language-select-trigger[aria-expanded="true"] .language-select-chevron { transform: rotate(180deg); }
.language-select-menu { position: absolute; z-index: 100; top: calc(100% + .35rem); right: 0; min-width: max(100%, 11rem); padding: .35rem; border: 1px solid #dedbd1; border-radius: .7rem; background: #fff; box-shadow: 0 .8rem 2rem rgba(32, 37, 33, .16); }
.language-select-menu[hidden] { display: none; }
.language-select-option { width: 100%; display: flex; align-items: center; gap: .6rem; padding: .55rem .6rem; border: 0; border-radius: .45rem; color: #303530; background: transparent; cursor: pointer; text-align: left; font: inherit; white-space: nowrap; }
.language-select-option:hover, .language-select-option:focus-visible { outline: 0; background: #eef0e9; }
.language-select-option[aria-selected="true"] { color: #354130; background: #eef0e9; font-weight: 750; }
.language-select-check { margin-left: auto; visibility: hidden; color: #56664d; }
.language-select-option[aria-selected="true"] .language-select-check { visibility: visible; }
.language-flag { width: 1.5rem; height: 1.5rem; flex: 0 0 1.5rem; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 1px rgba(32, 37, 33, .09); }
.language-field.is-compact { display: block; }
.language-field.is-compact .language-select-trigger { width: auto; min-width: 8.5rem; font-size: .75rem; }
