.lang { position: fixed; top: 12px; inset-inline-end: 14px; z-index: 20; }
.lang-btn {
  display: inline-flex; align-items: center; gap: 6px;
  margin: 0; padding: 6px 8px; border: 0; border-radius: 8px;
  background: transparent; color: #8aa0b5;
  font: 600 12px/1.2 system-ui, -apple-system, Segoe UI, sans-serif;
  letter-spacing: 0.02em; cursor: pointer;
}
.lang-btn:hover, .lang.open .lang-btn { color: #F7FBFF; background: rgba(247, 251, 255, 0.06); }
.lang-btn:focus { outline: none; }
.lang-btn:focus-visible { box-shadow: 0 0 0 2px #071422, 0 0 0 4px #FF4F9A; }
.lang-btn svg { width: 8px; height: 5px; fill: currentColor; flex: none; }
.lang.open .lang-btn svg { transform: rotate(180deg); }
.lang-menu {
  display: none;
  position: absolute; top: calc(100% + 6px); inset-inline-end: 0;
  min-width: 176px; max-height: min(70vh, 420px); overflow: auto;
  padding: 6px 0; margin: 0;
  background: #142C45; border: 1px solid #1c334c; border-radius: 10px;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
}
.lang.open .lang-menu { display: block; }
.lang-item {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  width: 100%; margin: 0; padding: 9px 14px; border: 0; background: none;
  color: #F7FBFF; font: 600 14px/1.25 system-ui, -apple-system, Segoe UI, sans-serif;
  cursor: pointer; text-align: start;
}
.lang-item:hover, .lang-item:focus { background: #1B3A56; outline: none; }
.lang-item .check {
  width: 14px; flex: none; color: #FF4F9A; font-weight: 700; visibility: hidden;
}
.lang-item[aria-selected="true"] .check { visibility: visible; }
