.lang-switcher { position: relative; display: inline-block; margin-left: 8px; }
.lang-current {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 10px; border: 1px solid rgba(255,255,255,0.2);
  background: transparent; color: inherit; border-radius: 6px;
  font: inherit; font-size: 13px; cursor: pointer;
  line-height: 1; min-height: 32px;
}
.lang-current:hover { background: rgba(255,255,255,0.06); }
.lang-current:focus-visible { outline: 2px solid var(--accent, #4f7cff); outline-offset: 2px; }
.lang-current svg { transition: transform 0.15s ease; }
.lang-current[aria-expanded="true"] svg { transform: rotate(180deg); }
.lang-current-code { font-weight: 600; letter-spacing: 0.02em; }
.lang-menu {
  position: absolute; right: 0; top: calc(100% + 6px);
  list-style: none; margin: 0; padding: 6px; min-width: 160px;
  background: #ffffff; color: #0B1B34;
  border: 1px solid rgba(0,0,0,0.08); border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  z-index: 1000;
}
.lang-menu[hidden] { display: none; }
.lang-menu li { margin: 0; padding: 0; }
.lang-menu li[aria-checked="true"] a { font-weight: 700; background: rgba(79,124,255,0.08); }
.lang-menu a {
  display: block; padding: 8px 12px; border-radius: 4px;
  color: inherit; text-decoration: none; font-size: 14px;
  white-space: nowrap;
}
.lang-menu a:hover { background: rgba(0,0,0,0.04); }
.lang-menu a:focus-visible { outline: 2px solid var(--accent, #4f7cff); outline-offset: -2px; }
.lang-switcher-mobile {
  margin-top: 12px; padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,0.1);
  font-size: 14px;
}
.lang-switcher-mobile a { color: inherit; text-decoration: none; padding: 4px 8px; display: inline-block; }
.lang-switcher-mobile a:hover { text-decoration: underline; }
@media (prefers-color-scheme: dark) {
  .lang-menu { background: #0f1a2e; color: #fff; border-color: rgba(255,255,255,0.12); }
  .lang-menu li[aria-checked="true"] a { background: rgba(79,124,255,0.18); }
  .lang-menu a:hover { background: rgba(255,255,255,0.06); }
}
@media (max-width: 768px) {
  .lang-switcher { margin-left: 0; margin-top: 8px; }
  .lang-current { width: 100%; justify-content: space-between; }
  .lang-menu { right: auto; left: 0; min-width: 100%; }
}
