.ordo-language-picker {
  --language-panel: var(--lh-panel, var(--bg-1, #1b221e));
  --language-text: var(--lh-text, var(--t, #eff3ec));
  --language-muted: var(--lh-muted, var(--m, #aab6a5));
  --language-border: var(--lh-border-soft, var(--border, #ffffff14));
  --language-accent: var(--lh-amber, #c3dfa5);
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  margin-inline-start: 10px;
  color: var(--language-text);
  font: 13px/1.4 system-ui, sans-serif;
  z-index: 60;
}
.ordo-language-picker button {
  appearance: none;
  width: auto;
  margin: 0;
  font: inherit;
  text-transform: none;
  cursor: pointer;
  box-shadow: none;
  -webkit-tap-highlight-color: transparent;
}
.ordo-language-picker .ordo-language-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 36px;
  padding: 7px 10px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: var(--language-muted);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .04em;
  transition: background 150ms ease, color 150ms ease;
}
.ordo-language-picker .ordo-language-trigger:hover,
.ordo-language-picker .ordo-language-trigger[aria-expanded="true"] {
  color: var(--language-text);
  background: color-mix(in srgb, var(--language-text) 6%, transparent);
  border-color: transparent;
}
.ordo-language-picker svg {
  display: block;
  flex-shrink: 0;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.ordo-language-globe { width: 16px; height: 16px; opacity: .8; }
.ordo-language-chevron { width: 12px; height: 12px; opacity: .6; transition: transform 150ms ease; }
.ordo-language-trigger[aria-expanded="true"] .ordo-language-chevron { transform: rotate(180deg); }
.ordo-language-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  width: 194px;
  max-width: calc(100vw - 24px);
  padding: 5px;
  border: 1px solid var(--language-border);
  border-radius: 14px;
  background: var(--language-panel);
  box-shadow: 0 12px 36px #0002, 0 2px 6px #0001;
  animation: ordo-language-enter 130ms ease-out;
}
.ordo-language-menu[hidden] { display: none; }
.ordo-language-picker .ordo-language-option {
  display: flex;
  align-items: center;
  gap: 11px;
  width: 100%;
  min-height: 42px;
  padding: 9px 11px;
  border: 0;
  border-radius: 9px;
  color: var(--language-text);
  background: transparent;
  text-align: left;
  font-weight: 450;
  letter-spacing: 0;
}
.ordo-language-option .ordo-language-code {
  min-width: 20px;
  color: var(--language-muted);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .05em;
}
.ordo-language-picker .ordo-language-option[aria-checked="true"] {
  color: var(--language-accent);
  background: color-mix(in srgb, var(--language-accent) 9%, transparent);
}
.ordo-language-picker .ordo-language-option:hover,
.ordo-language-picker .ordo-language-option:focus-visible {
  background: color-mix(in srgb, var(--language-text) 7%, transparent);
}
.ordo-language-check { width: 15px; height: 15px; margin-inline-start: auto; visibility: hidden; }
.ordo-language-option[aria-checked="true"] .ordo-language-check { visibility: visible; }
.ordo-language-picker button:focus-visible { outline: 2px solid var(--language-accent); outline-offset: 2px; }
.ordo-language-picker.is-standalone { display: flex; width: max-content; margin: 18px 24px 0 auto; }
body:has(.auth-shell) .ordo-language-picker { --language-panel: #1b241e; --language-muted: #aab6a5; --language-border: #354337; }
.top .ordo-language-picker { margin-inline-start: 0; }
@keyframes ordo-language-enter { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) {
  .ordo-language-menu { animation: none; }
  .ordo-language-picker .ordo-language-trigger, .ordo-language-chevron { transition: none; }
}
@media (max-width: 600px) {
  .ordo-language-picker { margin-inline-start: 2px; }
  .ordo-language-picker .ordo-language-trigger { min-height: 40px; padding-inline: 8px; gap: 5px; }
  .ordo-language-picker .ordo-language-option { min-height: 44px; }
  .ordo-language-picker.is-standalone { margin: 12px 12px 0 auto; }
  .lh-appbar .lh-app-logo { margin-right: 0; }
  .top .ordo-language-picker { margin-inline-start: auto; }
  html:lang(en) .lhp .lh-appbar > .lh-link::after, html:lang(uk) .lhp .lh-appbar > .lh-link::after { content: 'CRM'; }
}
@media (max-width: 360px) {
  .lhp .lh-appbar > .lh-link { display: none; }
  .lhp .lh-appbar { gap: 4px; padding-inline: 8px; }
}
