.lang-switcher { position: relative; display: inline-flex; align-items: center; margin-right: 12px; font-family: "Inter", -apple-system, sans-serif; }
.lang-switcher-trigger {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 12px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 100px;
  color: #fff; font-size: 13px; font-weight: 500;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s;
}
.lang-switcher-trigger:hover { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.2); }
.lang-switcher-flag { font-size: 14px; line-height: 1; }
.lang-switcher-code { font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; }
.lang-switcher-caret { opacity: 0.7; transition: transform 0.2s; }
.lang-switcher.is-open .lang-switcher-caret { transform: rotate(180deg); }
.lang-switcher-menu {
  position: absolute; top: calc(100% + 8px); right: 0;
  min-width: 200px;
  margin: 0; padding: 6px;
  list-style: none;
  background: rgba(20, 26, 46, 0.95);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;
  box-shadow: 0 24px 60px rgba(0,0,0,0.4);
  z-index: 200;
}
.lang-switcher-menu li { margin: 0; }
.lang-switcher-menu li a {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 12px;
  border-radius: 8px;
  color: #fff; font-size: 14px; font-weight: 500;
  text-decoration: none;
  transition: background 0.15s;
}
.lang-switcher-menu li a:hover { background: rgba(255,255,255,0.06); }
.lang-switcher-menu li[data-active] a { background: rgba(99,102,241,0.18); color: #C4B5FD; }
@media (max-width: 600px) {
  .lang-switcher-code { display: none; }
  .lang-switcher-trigger { padding: 7px 10px; }
}
html[dir="rtl"] .lang-switcher { margin-right: 0; margin-left: 12px; }
html[dir="rtl"] .lang-switcher-menu { right: auto; left: 0; }
