#menu .controller-language-picker { display:inline-block; position:relative; margin:8px 0 8px 12px; vertical-align:middle; text-align:left; text-transform:none; }
.controller-language-picker summary { display:flex; align-items:center; gap:14px; cursor:pointer; list-style:none; border:1px solid #c7ced7; border-radius:8px; padding:10px 14px; color:#212835; background:#eef1f4; font:inherit; font-weight:600; text-transform:uppercase; }
@media(max-width:1200px) { .controller-language-picker summary { font-size:13px; } }
@media(max-width:980px) { .controller-language-picker summary { font-size:18px; } }
.controller-language-picker summary::-webkit-details-marker { display:none; }
.controller-language-current { display:inline-flex; align-items:center; gap:10px; }
.controller-language-current img { display:block; width:24px; height:16px; object-fit:contain; flex-shrink:0; }
.controller-language-picker summary:focus-visible,.controller-language-picker input:focus-visible,.controller-language-options a:focus-visible { outline:3px solid #f8b100; outline-offset:2px; }
.controller-language-panel { position:absolute; right:0; top:calc(100% + 8px); width:300px; max-width:calc(100vw - 32px); padding:14px; box-sizing:border-box; background:#fff; color:#212835; border:1px solid #d5dce5; border-radius:12px; box-shadow:0 12px 32px #15213330; z-index:30; font:15px/1.4 Arial,sans-serif; }
.controller-language-search span { display:block; margin:0 0 7px; font-size:13px; font-weight:600; }
.controller-language-search input { width:100%; min-width:0; box-sizing:border-box; padding:10px; border:1px solid #b7c1ce; border-radius:6px; background:#fff; color:#212835; font:16px Arial,sans-serif; }
.controller-language-options { max-height:min(390px,55vh); overflow:auto; margin-top:10px; }
#menu .controller-language-options a { display:flex; align-items:center; gap:12px; padding:10px; color:#212835; text-align:left; text-transform:none; font:15px/1.4 Arial,sans-serif; border-radius:6px; }
#menu .controller-language-options a:hover,#menu .controller-language-options a[aria-current="page"] { background:#fff2c9; }
.controller-language-options a img { display:block; width:24px; height:16px; object-fit:contain; }
.controller-language-options a small { margin-left:auto; color:#66768a; font-size:11px; }
.controller-language-options a[hidden],.controller-language-empty[hidden] { display:none!important; }
.controller-language-empty { margin:14px 0 0; color:#66768a; }
@media(max-width:980px) { #menu .controller-language-picker { display:block; margin:12px 15px 0; } .controller-language-picker summary { justify-content:space-between; } .controller-language-panel { position:fixed; top:88px; right:16px; width:300px; max-height:calc(100dvh - 108px); } .controller-language-options { max-height:min(390px,calc(100dvh - 220px)); } }
