/* Shared language switcher, independent from the legacy router markup. */
html body .dy-header-actions .dy-lang-switch,
html body .dy-header-actions .dy-lang-menu {
  width: 66px !important;
  min-width: 66px !important;
  flex: 0 0 66px !important;
  overflow: visible !important;
}

html body .dy-header-actions .dy-lang-menu summary {
  display: flex !important;
  width: 66px !important;
  min-width: 66px !important;
  height: 44px !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 0 15px 0 8px !important;
  box-sizing: border-box !important;
}

html body .dy-header-actions .dy-lang-menu summary > .dy-lang-menu-icon,
html body .dy-header-actions .dy-lang-menu summary > .dy-lang-menu-current {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  align-items: center !important;
  padding: 0 !important;
}

html body .dy-header-actions .dy-lang-menu-icon svg {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
}

html body .dy-header-actions .dy-lang-menu-current {
  color: currentColor !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  letter-spacing: 0.04em !important;
}

html body .dy-header-actions .dy-lang-menu-name {
  display: none !important;
}

html body .dy-header-actions .dy-lang-menu-list {
  top: calc(100% + 8px) !important;
  right: 0 !important;
  z-index: 80 !important;
  width: max-content !important;
  min-width: 178px !important;
  max-width: min(230px, calc(100vw - 24px)) !important;
  max-height: min(440px, calc(100vh - 92px)) !important;
  padding: 5px !important;
  overflow-y: auto !important;
  border: 1px solid rgb(216 180 122 / 45%) !important;
  background: #090806 !important;
  box-shadow: 0 16px 34px rgb(0 0 0 / 55%) !important;
}

html body .dy-header-actions details.dy-lang-menu:not([open]) > .dy-lang-menu-list {
  display: none !important;
}

html body .dy-header-actions details.dy-lang-menu[open] > .dy-lang-menu-list {
  display: grid !important;
}

html body .dy-header-actions .dy-lang-menu-list > a,
html body .dy-header-actions .dy-lang-menu-list > span,
html body .dy-header-actions .dy-lang-menu-list > li > a,
html body .dy-header-actions .dy-lang-menu-list > li > span {
  display: flex !important;
  min-height: 44px !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 11px !important;
  box-sizing: border-box !important;
  color: var(--dy-cream, #fff0cf) !important;
  background: transparent !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

html body .dy-header-actions .dy-lang-menu-list > li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html body .dy-header-actions .dy-lang-menu-list > a:hover,
html body .dy-header-actions .dy-lang-menu-list > a:focus-visible,
html body .dy-header-actions .dy-lang-menu-list > li > a:hover,
html body .dy-header-actions .dy-lang-menu-list > li > a:focus-visible {
  color: var(--dy-gold, #d8b47a) !important;
  background: rgb(216 180 122 / 12%) !important;
}

html body .dy-header-actions .dy-lang-menu-list > [aria-current="page"] {
  display: flex !important;
  color: var(--dy-gold, #d8b47a) !important;
  background: rgb(216 180 122 / 12%) !important;
}

html body .dy-header-actions .dy-lang-menu-list > li > [aria-current="page"] {
  color: var(--dy-gold, #d8b47a) !important;
  background: rgb(216 180 122 / 12%) !important;
}

html body .dy-header-actions .dy-lang-code {
  min-width: 24px !important;
  color: var(--dy-gold, #d8b47a) !important;
  font-family: var(--dy-display, Georgia, serif) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
}

html body .dy-header-actions .dy-lang-label {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

@media (max-width: 420px) {
  html body .dy-header-actions .dy-lang-switch,
  html body .dy-header-actions .dy-lang-menu,
  html body .dy-header-actions .dy-lang-menu summary {
    width: 60px !important;
    min-width: 60px !important;
    flex-basis: 60px !important;
  }

  html body .dy-header-actions .dy-lang-menu summary {
    gap: 4px !important;
    padding-right: 13px !important;
  }

  html body .dy-header-actions .dy-lang-menu-list {
    right: -2px !important;
  }
}
