/* Language Selector - Custom Dropdown */ .language-selector { position: relative; margin-right: 15px; } .language-selector-toggle { display: flex; align-items: center; gap: 8px; padding: 8px 14px; background-color: var(--color-bg-muted); border: 1px solid var(--color-border); border-radius: 50px; cursor: pointer; font-size: 14px; font-weight: 500; color: var(--color-text-secondary); transition: all 0.2s ease; user-select: none; } .language-selector-toggle:hover { background-color: var(--color-border); border-color: var(--color-border-medium); } .language-selector-toggle i { font-size: 14px; color: var(--color-text-muted); } .language-selector-toggle .lang-code { font-weight: 600; color: var(--color-text); } .language-selector-toggle .dropdown-arrow { font-size: 10px; color: var(--color-text-muted); transition: transform 0.2s ease; margin-left: 2px; } .language-selector.open .dropdown-arrow { transform: rotate(180deg); } .language-selector-dropdown { position: absolute; top: calc(100% + 8px); right: 0; min-width: 160px; max-height: 420px; overflow-y: auto; background-color: var(--color-bg-surface); border-radius: 12px; box-shadow: 0 4px 20px var(--color-shadow-lg); border: 1px solid var(--color-border); opacity: 0; visibility: hidden; transform: translateY(-10px); transition: all 0.2s ease; z-index: 1000; } /* Custom scrollbar */ .language-selector-dropdown::-webkit-scrollbar { width: 6px; } .language-selector-dropdown::-webkit-scrollbar-track { background: transparent; margin: 8px 0; } .language-selector-dropdown::-webkit-scrollbar-thumb { background-color: var(--color-border-medium); border-radius: 3px; } .language-selector-dropdown::-webkit-scrollbar-thumb:hover { background-color: var(--color-text-placeholder); } .language-selector.open .language-selector-dropdown { opacity: 1; visibility: visible; transform: translateY(0); } .language-option { display: flex; align-items: center; gap: 10px; padding: 12px 16px; cursor: pointer; font-size: 14px; color: var(--color-text-secondary); transition: background-color 0.15s ease; } .language-option:hover { background-color: var(--color-bg-alt); } .language-option.active { background-color: var(--color-accent-bg-sm); color: var(--color-accent); } .language-option .lang-flag { font-size: 18px; line-height: 1; } .language-option .lang-name { flex: 1; } .language-option .lang-check { color: var(--color-accent); font-size: 12px; opacity: 0; } .language-option.active .lang-check { opacity: 1; }