.topbar:has(> .language-picker[open], .sresults.on) { z-index:40; }
.language-picker { position:relative; flex:none; color:var(--accent-ink); font-size:14px; }
.language-picker summary { display:flex; align-items:center; gap:6px; min-height:40px; padding:7px 10px; border:1px solid var(--line); border-radius:8px; background:var(--panel); cursor:pointer; list-style:none; white-space:nowrap; }
.language-picker summary::-webkit-details-marker { display:none; }
.language-picker summary:hover, .language-picker[open] summary { background:var(--accent-soft); }
.language-picker summary:focus-visible, .language-picker a:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.language-picker[open] summary svg { transform:rotate(180deg); }
.language-options { position:absolute; z-index:30; right:0; top:calc(100% + 8px); min-width:160px; max-width:calc(100vw - 32px); padding:5px; background:var(--panel); border:1px solid var(--line); border-radius:10px; box-shadow:0 8px 24px rgba(15,23,42,.14); }
.language-options a { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:44px; padding:8px 12px; border-radius:6px; font-size:14px; white-space:nowrap; }
.language-options a:hover, .language-options a:focus-visible { background:var(--accent-soft); }
.language-current { font-weight:600; }
@media(max-width:600px) {
  .topbar .logo { font-size:14px; letter-spacing:.04em; }
  .language-picker summary { min-height:36px; padding:5px 8px; font-size:13px; }
}
@media(max-width:360px) {
  .topbar:has(> .language-picker) { padding-inline:12px; gap:6px; }
  .topbar .logo { font-size:13px; }
}
