/* CSS unifié pour tous les menus déroulants - Lisibilité optimale */

/* Styles de base pour tous les selects */
select {
    background: rgba(40, 40, 40, 0.95) !important;
    color: white !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 8px !important;
    padding: 8px 12px !important;
    font-size: 14px !important;
    min-height: 36px !important;
    font-family: Arial, sans-serif !important;
    transition: all 0.3s ease !important;
}

/* Options avec contraste optimal */
select option {
    background: #2a2a2a !important;
    color: white !important;
    padding: 8px !important;
    font-size: 14px !important;
    border: none !important;
}

/* Hover states pour les options */
select option:hover,
select option:focus,
select option:checked {
    background: #404040 !important;
    color: #00E5FF !important;
}

/* États focus/hover pour le select lui-même */
select:hover,
select:focus {
    border-color: #00E5FF !important;
    box-shadow: 0 0 10px rgba(0, 229, 255, 0.3) !important;
    outline: none !important;
}

/* Support pour thèmes clairs spécifiques */
select[data-light-theme="true"],
select.light-bg,
select.light-theme {
    background: white !important;
    color: #333 !important;
    border: 1px solid #ccc !important;
}

select[data-light-theme="true"] option,
select.light-bg option,
select.light-theme option {
    background: white !important;
    color: #333 !important;
}

select[data-light-theme="true"] option:hover,
select.light-bg option:hover,
select.light-theme option:hover {
    background: #f0f0f0 !important;
    color: #000 !important;
}

/* Styles spéciaux pour sélecteurs de langue */
.language-selector select {
    background: rgba(0, 0, 0, 0.8) !important;
    color: white !important;
    border: 1px solid rgba(255, 255, 255, 0.4) !important;
    padding: 8px 12px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
}

.language-selector select option {
    background: #1a1a1a !important;
    color: white !important;
    padding: 6px !important;
}

/* Support mobile avec taille de police minimum */
@media (max-width: 768px) {
    select {
        font-size: 16px !important; /* Évite le zoom sur iOS */
        padding: 10px 14px !important;
        min-height: 44px !important; /* Touch-friendly */
    }
    
    select option {
        font-size: 16px !important;
        padding: 10px !important;
    }
}

/* États disabled avec contraste */
select:disabled {
    background: rgba(100, 100, 100, 0.5) !important;
    color: rgba(255, 255, 255, 0.6) !important;
    cursor: not-allowed !important;
}

select:disabled option {
    background: #666 !important;
    color: rgba(255, 255, 255, 0.6) !important;
}