/* Native select retains keyboard/mobile accessibility; flag and width stay fixed. */
.language-picker{display:inline-flex;align-items:center;position:relative;flex:0 0 auto;width:12rem;max-width:100%;direction:ltr}
.language-display{position:absolute;inset-inline-start:.8rem;display:flex;align-items:center;gap:.5rem;pointer-events:none;font-size:.9rem;color:#173c46}.language-display img{width:1.3rem;height:.9rem;object-fit:contain}
.language-picker select{width:100%;min-width:0;height:44px;padding:.5rem 1.8rem .5rem 2.5rem;border:1px solid #b9cdce;border-radius:10px;background-color:#fff;color:#173c46;font:inherit;font-size:.9rem;cursor:pointer;text-overflow:ellipsis}
.language-picker select:focus-visible{outline:3px solid #397587;outline-offset:2px}
.language-picker select:disabled{opacity:.55;cursor:wait}
html[dir=rtl] body{text-align:right}
html[dir=rtl] .brand,html[dir=rtl] .leaflet-container,html[dir=rtl] .plan-map,html[dir=rtl] .plan-stage,html[dir=rtl] input[type=email],html[dir=rtl] input[type=tel],html[dir=rtl] input[type=number],html[dir=rtl] input[type=date]{direction:ltr}
html[dir=rtl] .leaflet-control,html[dir=rtl] .leaflet-tooltip,html[dir=rtl] .leaflet-popup{direction:rtl}
html[dir=rtl] .field,html[dir=rtl] th,html[dir=rtl] td{text-align:start}
html[dir=rtl] .top-actions{margin-inline-start:auto}
@media(max-width:600px){.language-picker{width:10rem}.language-picker select{font-size:.82rem;height:40px;padding-inline-end:1rem}.top-actions{gap:.4rem}}

.language-picker select{color:transparent}.language-picker option{color:#173c46}.language-picker:has(select:disabled) .language-display{opacity:.55}
.language-native-select{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.language-trigger{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;width:100%;height:44px;padding:.5rem .8rem;border:1px solid #b9cdce;border-radius:10px;background:#fff;color:#173c46;font:inherit;font-size:.9rem;text-align:start;cursor:pointer}.language-trigger img{width:1.3rem;height:.9rem;object-fit:contain;flex:none}.language-trigger span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.language-chevron{margin-inline-start:auto;font-size:1rem;line-height:1}.language-trigger:focus-visible{outline:3px solid #397587;outline-offset:2px}.language-picker:has(select:disabled) .language-trigger{opacity:.55;cursor:wait}
.language-menu{position:absolute;inset-inline-start:0;inset-inline-end:auto;top:calc(100% + 4px);z-index:1000;display:grid;gap:2px;max-height:min(360px,calc(100dvh - 100px));overflow:auto;padding:4px 0;border:1px solid #b9cdce;border-radius:10px;background:#fff;box-shadow:0 12px 30px #173c4633}.language-menu[hidden]{display:none}.language-menu .language-option{display:flex;align-items:center;justify-content:flex-start;gap:.55rem;width:100%;min-height:38px;padding:7px 10px;border:0;border-radius:0;background:#fff;color:#173c46;font:inherit;font-size:.85rem;text-align:start;cursor:pointer}.language-menu .language-option:hover,.language-menu .language-option:focus-visible{background:#edf5f3;outline:none}.language-menu .language-option.active{background:#dfeeea;font-weight:700}.language-menu .language-flag{width:1.35rem;height:.95rem;object-fit:contain;flex:none}
.topbar .language-picker{position:relative!important;width:156px;min-width:156px;border:0;overflow:visible}
.topbar .language-picker select{max-width:none;color:transparent;border:1px solid #b9cdce}
@media(max-width:760px){.topbar .language-picker{width:126px;min-width:126px}.language-display{font-size:.8rem;gap:.35rem}.language-display img{width:1.1rem}}
@media(max-width:360px){.topbar:has(.activity-center:not([hidden])) .language-picker{width:112px;min-width:112px}.language-display{font-size:.75rem}}
/* Translated footer labels wrap inside their columns rather than widening the page. */
.site-footer-inner,.site-footer-brand,.site-footer-map,.site-footer-map section{min-width:0}
.site-footer-map a,.site-footer-map h2{overflow-wrap:anywhere}
@media(max-width:900px){.site-footer-inner{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.site-footer-map{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Keep the overlaid label anchored despite legacy mobile topbar overrides. */
.topbar .top-actions .language-picker,
body.is-exploring .topbar .top-actions .language-picker{position:relative!important;inset:auto!important;overflow:visible}
.language-display{inset-inline-end:1.8rem;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
