.qfx-locale-selector {
  align-items: center;
  display: inline-flex;
  position: relative;
  z-index: 180;
}

.qfx-locale-selector__control {
  position: relative;
}

.qfx-locale-selector__native,
.qfx-locale-selector__trigger,
.qfx-locale-selector noscript button {
  appearance: none;
  background: linear-gradient(145deg, rgba(9, 35, 55, .96), rgba(7, 24, 40, .96));
  border: 1px solid rgba(140, 233, 255, .34);
  border-radius: 999px;
  box-shadow: 0 14px 34px rgba(0, 8, 22, .24), inset 0 1px 0 rgba(255, 255, 255, .05);
  color: #f4ead0;
  cursor: pointer;
  font: inherit;
  font-size: .84rem;
  font-weight: 800;
  min-height: 44px;
  min-width: 8.75rem;
  padding-block: .55rem;
  padding-inline: 1rem 2.4rem;
}

.qfx-locale-selector__trigger {
  align-items: center;
  display: inline-flex;
  gap: .75rem;
  justify-content: space-between;
  min-width: 0;
  padding-inline: .95rem .85rem;
  text-align: start;
  width: max-content;
}

.qfx-locale-selector__trigger:hover,
.qfx-locale-selector__trigger[aria-expanded="true"] {
  border-color: rgba(140, 233, 255, .72);
  box-shadow: 0 18px 42px rgba(0, 8, 22, .34), 0 0 24px rgba(140, 233, 255, .12), inset 0 1px 0 rgba(255, 255, 255, .08);
}

.qfx-locale-selector__trigger:focus-visible,
.qfx-locale-selector__option:focus-visible {
  outline: 3px solid #8ce9ff;
  outline-offset: 3px;
}

.qfx-locale-selector__current {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.qfx-locale-selector__chevron {
  border-bottom: 1px solid currentColor;
  border-inline-end: 1px solid currentColor;
  color: #8ce9ff;
  flex: 0 0 auto;
  height: .38rem;
  pointer-events: none;
  rotate: 45deg;
  transition: rotate .18s ease, translate .18s ease;
  width: .38rem;
}

.qfx-locale-selector__trigger[aria-expanded="true"] .qfx-locale-selector__chevron {
  rotate: 225deg;
  translate: 0 .16rem;
}

.qfx-locale-selector.qfx-locale-selector.is-enhanced
  > .qfx-locale-selector__control
  > select.qfx-locale-selector__native[data-qfx-locale-native] {
  appearance: none !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  inset-block-start: 0 !important;
  inset-inline-start: 0 !important;
  margin: -1px !important;
  max-height: 1px !important;
  max-width: 1px !important;
  min-height: 1px !important;
  min-width: 1px !important;
  opacity: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
  z-index: -1 !important;
}

.qfx-locale-selector.is-enhanced .qfx-locale-selector__trigger {
  position: relative;
  z-index: 2;
}

.qfx-locale-selector.is-open {
  z-index: 2147483000;
}

.qfx-locale-selector__menu {
  backdrop-filter: blur(28px) saturate(1.2);
  -webkit-backdrop-filter: blur(28px) saturate(1.2);
  background:
    radial-gradient(circle at 12% 0%, rgba(140, 233, 255, .12), transparent 38%),
    linear-gradient(155deg, rgba(10, 38, 59, .985), rgba(4, 17, 31, .99));
  border: 1px solid rgba(140, 233, 255, .38);
  border-radius: 20px;
  box-shadow: 0 26px 74px rgba(0, 5, 18, .58), inset 0 1px 0 rgba(255, 255, 255, .08);
  display: grid;
  gap: .28rem;
  inset-block-start: calc(100% + .65rem);
  inset-inline-end: 0;
  max-height: min(25rem, calc(100dvh - 6.5rem));
  min-width: max(100%, 12.5rem);
  overflow-x: hidden;
  overflow-y: auto;
  padding: .55rem;
  position: absolute;
  scrollbar-color: rgba(140, 233, 255, .45) transparent;
  width: max-content;
  z-index: 2147483000;
}

.qfx-locale-selector__menu[hidden] {
  display: none;
}

.qfx-locale-selector__option {
  align-items: center;
  appearance: none;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 13px;
  color: rgba(244, 234, 208, .82);
  cursor: pointer;
  display: flex;
  font: inherit;
  font-size: .88rem;
  font-weight: 760;
  gap: 1rem;
  justify-content: space-between;
  min-height: 44px;
  padding: .7rem .8rem;
  text-align: start;
  width: 100%;
}

.qfx-locale-selector__option:hover,
.qfx-locale-selector__option:focus-visible {
  background: rgba(140, 233, 255, .09);
  border-color: rgba(140, 233, 255, .22);
  color: #fff4cf;
}

.qfx-locale-selector__option[aria-selected="true"] {
  background: linear-gradient(135deg, rgba(215, 200, 143, .19), rgba(140, 233, 255, .11));
  border-color: rgba(215, 200, 143, .38);
  color: #fff0b5;
}

.qfx-locale-selector__check {
  color: #8ce9ff;
  opacity: 0;
}

.qfx-locale-selector__option[aria-selected="true"] .qfx-locale-selector__check {
  opacity: 1;
}

.qfx-locale-menu-open .qfx-site-header {
  overflow: visible !important;
  z-index: 2147482998 !important;
}

.qfx-locale-menu-open .qfx-entry-locale {
  overflow: visible !important;
  z-index: 2147482999 !important;
}

/* The auth launcher intentionally sits above the normal page at 2147483001.
   Elevate only the open, body-level login locale overlay above that launcher so
   its first menu row cannot leak pointer events to the underlying trigger. */
html.qfx-locale-menu-open body > .qfx-login-entry-locale.qfx-entry-locale {
  isolation: isolate;
  z-index: 2147483646 !important;
}

.qfx-entry-locale {
  inset-block-start: max(1rem, env(safe-area-inset-top));
  inset-inline-end: auto;
  inset-inline-start: auto;
  left: auto;
  position: fixed;
  right: max(1rem, env(safe-area-inset-right));
  transform: none;
  z-index: 180;
}

 (min-width: 761px) {
  .qfx-login-entry-locale.qfx-entry-locale {
    right: calc(max(1rem, env(safe-area-inset-right)) + 7rem);
  }
}

[dir="rtl"] .qfx-locale-selector__native,
[dir="rtl"] .qfx-locale-selector__trigger {
  padding-inline: 1.9rem .8rem;
}

[dir="rtl"] .qfx-locale-selector__menu {
  inset-inline-end: auto;
  inset-inline-start: 0;
}

[dir="rtl"] .quant-login-page,
[dir="rtl"] .qauth-shell-content,
[dir="rtl"] .qauth-form-card {
  direction: rtl;
  text-align: right;
}

[dir="rtl"] input[type="email"],
[dir="rtl"] input[type="password"],
[dir="rtl"] input[inputmode="email"],
[dir="rtl"] .qfx-signal-metrics strong,
[dir="rtl"] .qfx-metric-rail strong {
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
}

@media (max-width: 760px) {
  .qfx-locale-selector--marketing { display: none; }
  .qfx-locale-selector--mobile { display: flex; margin-block: .5rem; width: 100%; }
  .qfx-locale-selector--mobile .qfx-locale-selector__control,
  .qfx-locale-selector--mobile .qfx-locale-selector__native,
  .qfx-locale-selector--mobile .qfx-locale-selector__trigger { min-width: 100%; width: 100%; }
  .qfx-entry-locale { inset-block-start: max(.75rem, env(safe-area-inset-top)); }
  .qfx-entry-locale .qfx-locale-selector__native,
  .qfx-entry-locale .qfx-locale-selector__trigger { min-width: 7.5rem; max-width: 52vw; }
  .qfx-entry-locale .qfx-locale-selector__menu { max-width: calc(100vw - 1.5rem); min-width: min(18rem, calc(100vw - 1.5rem)); }
}
