/* RC 11.100 — shared language geometry: Home, login, account and auctions.
 * Ownership: EPS_I18n::language_switcher + EPS_Assets::language_control.
 * Keep native flag glyphs uniform; do not replace a single country with an img.
 * Explicit scope/important declarations bridge older route-specific important
 * rules. Future changes belong HERE, not in another page-specific override.
 * Native details and signed links remain the only interaction mechanism.
 */
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] {
  --language-bg: #fff;
  --language-ink: #25374b;
  --language-line: #d9e1ea;
  --language-active: #f5f0e2;
  position: relative !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
html body .eps-home5-language details.eps-language-switcher.eps-language-control[data-eps-language-switcher],
html body .eps-auctions-v2 details.eps-language-switcher.eps-language-control[data-eps-language-switcher],
html.eps-theme-dark body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] {
  --language-bg: #0c2130;
  --language-ink: #f6f4ed;
  --language-line: #40505b;
  --language-active: #283b45;
}
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] > summary {
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) 8px !important;
  align-items: center !important;
  gap: 9px !important;
  box-sizing: border-box !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 44px !important;
  padding: 9px 12px !important;
  border: 1px solid var(--language-line) !important;
  border-radius: 12px !important;
  background: var(--language-bg) !important;
  color: var(--language-ink) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 650 !important;
  list-style: none !important;
  overflow: visible !important;
  cursor: pointer;
  box-shadow: none !important;
  transform: none !important;
}
html body details.eps-language-control > summary::-webkit-details-marker { display: none; }
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] > summary .eps-language-label[data-eps-language-label] {
  display: block !important;
  min-width: 0 !important;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  line-height: 1.35 !important;
  text-align: start !important;
}
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] > summary::after {
  content: '' !important;
  position: static !important;
  display: block !important;
  width: 7px !important;
  height: 7px !important;
  margin: -3px 0 0 !important;
  border: solid currentColor !important;
  border-width: 0 1.5px 1.5px 0 !important;
  background: none !important;
  transform: rotate(45deg) !important;
}
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher][open] > summary::after { transform: rotate(225deg) !important; margin-top: 3px !important; }
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] .eps-language-flag-emoji {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  font: 20px/1 'Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif !important;
  padding: 0 !important;
  margin: 0 !important;
  transform: none !important;
  filter: none !important;
}
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] .eps-language-menu {
  z-index: 1000102 !important;
  box-sizing: border-box !important;
  width: min(330px, calc(100vw - 32px)) !important;
  max-width: calc(100vw - 32px) !important;
  max-height: min(520px, 70vh) !important;
  padding: 12px !important;
  border: 1px solid var(--language-line) !important;
  border-radius: 16px !important;
  background: var(--language-bg) !important;
  color: var(--language-ink) !important;
  overflow-y: auto !important;
}
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] .eps-language-menu-head { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; padding: 0 0 8px !important; background: var(--language-bg) !important; color: var(--language-ink) !important; border-color: var(--language-line) !important; font-size: 14px !important; }
html body details.eps-language-control .eps-language-menu-head strong { font-size: 14px !important; color: inherit !important; }
html body details.eps-language-control .eps-language-menu-head button { display: grid !important; place-items: center !important; width: 44px !important; height: 44px !important; padding: 0 !important; border: 1px solid var(--language-line) !important; border-radius: 10px !important; background: var(--language-bg) !important; color: var(--language-ink) !important; font: 22px/1 sans-serif !important; cursor: pointer; }
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] .eps-language-menu-list {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 4px !important;
}
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] .eps-language-menu-list a {
  display: grid !important;
  grid-template-columns: 24px minmax(0,1fr) 16px !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 44px !important;
  box-sizing: border-box !important;
  padding: 8px 10px !important;
  border: 0 !important;
  border-radius: 9px !important;
  color: var(--language-ink) !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  direction: ltr !important;
  text-decoration: none !important;
}
html body details.eps-language-control .eps-language-menu-list a > span:not(.eps-language-flag-emoji) { white-space: normal !important; overflow-wrap: anywhere; text-align: start; }
html body details.eps-language-control .eps-language-menu-list a[dir='rtl'] > span:not(.eps-language-flag-emoji) { direction: rtl; }
html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] .eps-language-menu-list a:is(:hover,[aria-current='page']) { background: var(--language-active) !important; }
html body details.eps-language-control :is(summary,a,button):focus-visible { outline: 2px solid #bd943c !important; outline-offset: 3px !important; }
.eps-account-mobile-language { display: none; }
@media (max-width: 900px) {
  .eps-account-mobile-language { display: block; position: relative; z-index: 20; padding: 12px 16px; }
  /* The drawer is transformed while opening: keep its popup in its own
   * coordinates instead of treating that ancestor as the viewport. */
  html body .eps-account-mobile-language details.eps-language-control .eps-language-menu { position: absolute !important; inset: calc(100% + 8px) 0 auto !important; width: 100% !important; }
}
/* Login has three toolbar actions. Give language its own full-width row on
 * phones instead of shrinking its name or hiding it behind a flag-only button. */
@media (max-width: 699px) {
  /* A static, transformed toolbar trapped the fixed popup behind the brand
   * link. Taps hit Home instead of a language. Keep the popup in viewport
   * coordinates and the toolbar above the form's stacking contexts. */
  .eps-auth-v4-topbar[data-eps-auth-mobile-toolbar] { grid-template-columns: 1fr 1fr !important; position: relative !important; z-index: 1000101 !important; transform: none !important; filter: none !important; backdrop-filter: none !important; }
  /* Separate row does not mean a full-width bar. Intrinsic width preserves the
   * complete label while centring a compact 44px-touch-height control. */
  .eps-auth-v4-topbar[data-eps-auth-mobile-toolbar] details.eps-language-switcher.eps-language-control[data-eps-language-switcher] { grid-column: 1 / -1; grid-row: 2; width: max-content !important; max-width: 100% !important; justify-self: center; }
  html body details.eps-language-switcher.eps-language-control[data-eps-language-switcher] .eps-language-menu { position: fixed !important; inset: 80px 16px auto !important; margin-inline: auto !important; }
  html body .eps-account-mobile-language details.eps-language-switcher.eps-language-control[data-eps-language-switcher] .eps-language-menu { position: absolute !important; inset: calc(100% + 8px) 0 auto !important; width: 100% !important; }
}
