.language-selector {
  align-items: center;
  border: 0;
  border-radius: 0;
  gap: 0;
  min-height: 0;
  padding: 0;
  color: inherit;
  display: inline-flex;
  flex-shrink: 0;
  vertical-align: middle;
}
.language-selector__button {
  align-items: center;
  background: transparent;
  border: 1px solid color-mix(in srgb, currentColor 14%, transparent);
  border-radius: 50%;
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  height: 40px;
  justify-content: center;
  padding: 0;
  width: 40px;
}
.language-selector__button:hover,
.language-selector__button[aria-expanded="true"] { background: color-mix(in srgb, currentColor 8%, transparent); }
.language-selector__button:focus-visible,
.language-selector__option input:focus-visible { outline: 2px solid #198b68; outline-offset: 3px; }
.language-selector__popover {
  background: #eeeeef;
  border: 1px solid rgba(110, 116, 135, .08);
  border-radius: 16px;
  box-shadow: 0 12px 32px rgba(31, 41, 55, .12);
  box-sizing: border-box;
  color: #6e7487;
  font-family: inherit;
  font-size: 16px;
  inset: auto;
  margin: 0;
  max-width: calc(100vw - 24px);
  padding: 16px;
  position: fixed;
  width: 404px;
}
.language-selector__title { font-size: 16px; font-weight: 400; margin-bottom: 12px; }
.language-selector__options { align-items: center; display: flex; flex-wrap: wrap; gap: 12px 16px; }
.language-selector__option { align-items: center; cursor: pointer; display: inline-flex; gap: 9px; white-space: nowrap; }
.language-selector__option input {
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  border: 2px solid currentColor;
  border-radius: 50%;
  color: inherit;
  cursor: pointer;
  flex-shrink: 0;
  height: 20px;
  margin: 0;
  width: 20px;
}
.language-selector__option input:checked { background: radial-gradient(circle, currentColor 0 4px, transparent 4.5px); }
.language-selector--login { align-self: flex-end; margin-bottom: 12px; }
[data-theme="dark"] .language-selector__popover,
body[data-theme="dark"] .language-selector__popover,
.dark .language-selector__popover {
  background: #252b38;
  border-color: #41495c;
  color: #d7dce8;
}
@media (max-width: 420px) {
  .language-selector__popover { padding: 14px; }
  .language-selector__options { gap: 12px; }
  .language-selector__option { font-size: 14px; gap: 7px; }
}
