#lang-switcher {
  position: fixed;
  right: 1rem;
  bottom: 11.5rem;
  z-index: 1000;
}

#lang-switcher .lang-toggle {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 999px;
  border: 1px solid var(--btn-border-color, #d0d0d0);
  background: var(--button-bg, #ffffff);
  color: var(--text-color, #222222);
  box-shadow: var(--card-shadow, 0 4px 12px rgba(0, 0, 0, 0.15));
  cursor: pointer;
}

#lang-switcher .lang-panel {
  margin-top: 0.5rem;
  width: 12rem;
  padding: 0.5rem;
  border-radius: 12px;
  border: 1px solid var(--main-border-color, #e5e5e5);
  background: var(--card-bg, #ffffff);
  box-shadow: var(--card-shadow, 0 8px 22px rgba(0, 0, 0, 0.2));
  display: none;
}

#lang-switcher.open .lang-panel {
  display: block;
}

#lang-switcher .lang-btn {
  width: 100%;
  margin: 0.2rem 0;
  padding: 0.45rem 0.6rem;
  border-radius: 8px;
  border: 1px solid var(--btn-border-color, #d0d0d0);
  background: var(--button-bg, #ffffff);
  color: var(--text-color, #222222);
  text-align: left;
  cursor: pointer;
}

#lang-switcher .lang-btn.active {
  border-color: var(--link-color, #0056b2);
  box-shadow: inset 0 0 0 1px var(--link-color, #0056b2);
}

#lang-switcher .lang-btn:hover {
  background: var(--sidebar-hover-bg, rgba(120, 120, 120, 0.12));
}

@media (max-width: 768px) {
  #lang-switcher {
    right: 0.75rem;
    bottom: 10.5rem;
  }
}
