/* 原生控件无脚本时继续可用；仅完成增强的 select 从视觉及焦点顺序中移出。 */
.slim-select { position: relative; display: inline-flex; min-width: 0; width: 100%; vertical-align: middle; }
.slim-select[hidden], .slim-select-popup[hidden] { display: none !important; }
select.slim-select-native {
  position: absolute !important; width: 1px !important; height: 1px !important; min-width: 0 !important; min-height: 0 !important;
  margin: -1px !important; padding: 0 !important; border: 0 !important; overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; pointer-events: none !important;
}
.slim-select-trigger {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; width: 100%; min-height: 48px;
  margin: 0; padding: 11px 13px; border: 1px solid #414a3d; border-radius: 9px; background: #171c18; color: #edf1e8;
  font: inherit; font-size: 14px; line-height: 1.5; text-align: left; cursor: pointer; touch-action: manipulation;
  transition: border-color 150ms ease, background-color 150ms ease;
}
.slim-select-value { min-width: 0; overflow-wrap: anywhere; }
.slim-select-arrow { flex: 0 0 7px; width: 7px; height: 7px; margin: -4px 3px 0 0; border: solid #aeba9f; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg); }
.slim-select-trigger:hover:not(:disabled) { border-color: #758265; background: #1d241c; }
.slim-select-trigger:focus-visible { outline: 2px solid var(--accent, #d5eb9e); outline-offset: 3px; }
.slim-select-trigger[aria-expanded="true"] { border-color: var(--accent, #d5eb9e); }
.slim-select-trigger[aria-expanded="true"] .slim-select-arrow { margin-top: 4px; transform: rotate(225deg); }
.slim-select-trigger:disabled { opacity: .5; cursor: not-allowed; }
.slim-select-trigger[aria-invalid="true"] { border-color: var(--danger, #ff9898); }
.slim-select-popup {
  position: fixed; z-index: var(--z-select, 70); box-sizing: border-box; overflow-x: hidden; overflow-y: auto;
  margin: 0; padding: 5px; border: 1px solid #4e5c43; border-radius: 11px; background: #1b211b; color: #edf1e8;
  box-shadow: 0 12px 32px #060c0a66; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #67795a #1b211b;
  -webkit-overflow-scrolling: touch;
}
.slim-select-option {
  display: flex; align-items: center; justify-content: space-between; gap: 14px; box-sizing: border-box; min-height: 48px;
  padding: 10px 12px; border: 1px solid transparent; border-radius: 7px; color: #dbe3d3; font-size: 14px; line-height: 1.5;
  cursor: pointer; overflow-wrap: anywhere; touch-action: pan-y;
}
.slim-select-option::after { content: ''; flex: 0 0 6px; width: 6px; height: 11px; margin: -4px 3px 0 0; border: solid transparent; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.slim-select-option[data-active] { background: #303c27; border-color: #6f8454; }
.slim-select-option[aria-selected="true"] { color: var(--accent, #d5eb9e); font-weight: 550; }
.slim-select-option[aria-selected="true"]::after { border-color: currentColor; }
.slim-select-option[aria-disabled="true"] { color: #83907b; opacity: .6; cursor: not-allowed; }
.slim-select-group { padding: 12px 12px 5px; color: #a3b293; font-size: 12px; font-weight: 600; }
.slim-select-compact { width: auto; flex: 0 0 auto; }
.slim-select-compact .slim-select-trigger { min-height: 44px; padding: 8px 9px; gap: 9px; font-size: 12px; }
.slim-select-compact .slim-select-value { white-space: nowrap; }
.account-language-row > .slim-select-language { flex: 0 0 132px; width: 132px; max-width: 45%; }
@media (max-width: 760px) {
  .slim-select-trigger { min-height: 48px; font-size: 16px; }
  .slim-select-option { min-height: 48px; font-size: 15px; }
  .account-language-row > .slim-select-language { flex-basis: 126px; width: 126px; }
}
@media (prefers-reduced-motion: reduce) { .slim-select-trigger { transition: none; } }
