/* ============================================
   CHOICES.JS - ESTILO CUSTOMIZADO
   ============================================ */

/* Container principal */
.choices {
    margin-bottom: 0;
    font-size: 13px;
}

.choices__inner {
    background-color: var(--color-input-bg);
    border: 1px solid var(--color-input-border);
    border-radius: var(--radius-md);
    padding: var(--spacing-xs) var(--spacing-md);
    min-height: auto;
    font-size: 13px;
}

.choices[data-type*="select-one"] .choices__inner {
    padding-bottom: var(--spacing-xs);
}

/* Texto do item selecionado */
.choices__list--single .choices__item {
    color: var(--color-text);
}

/* Placeholder */
.choices__placeholder {
    color: var(--color-text-muted);
    opacity: 1;
}

/* Seta do dropdown */
.choices[data-type*="select-one"]::after {
    border-color: var(--color-text-muted) transparent transparent transparent;
    right: var(--spacing-md);
}

.choices[data-type*="select-one"].is-open::after {
    border-color: transparent transparent var(--color-text-muted) transparent;
}

/* Focus state */
.choices.is-focused .choices__inner,
.choices.is-open .choices__inner {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(30, 188, 165, 0.1);
}

/* Dropdown container */
.choices__list--dropdown,
.choices__list[aria-expanded] {
    background-color: #1a1a1e;
    border: 1px solid var(--color-input-border);
    border-radius: var(--radius-md);
    margin-top: 4px;
    z-index: 100;
}

/* Opções do dropdown */
.choices__list--dropdown .choices__item,
.choices__list[aria-expanded] .choices__item {
    color: var(--color-text);
    padding: var(--spacing-xs) var(--spacing-md);
    font-size: 13px;
    transition: background-color 150ms ease;
}

/* Hover das opções - COR PRIMÁRIA */
.choices__list--dropdown .choices__item--selectable.is-highlighted,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
    background-color: var(--color-primary) !important;
    color: #ffffff !important;
}

/* Opção selecionada */
.choices__list--dropdown .choices__item--selectable.is-selected,
.choices__list[aria-expanded] .choices__item--selectable.is-selected {
    background-color: rgba(30, 188, 165, 0.15);
    color: var(--color-primary);
}

/* Opção selecionada + hover */
.choices__list--dropdown .choices__item--selectable.is-selected.is-highlighted,
.choices__list[aria-expanded] .choices__item--selectable.is-selected.is-highlighted {
    background-color: var(--color-primary) !important;
    color: #ffffff !important;
}

/* Opção desabilitada */
.choices__list--dropdown .choices__item--disabled,
.choices__list[aria-expanded] .choices__item--disabled {
    color: var(--color-text-muted);
    opacity: 0.5;
    cursor: not-allowed;
}

/* Sem resultados */
.choices__list--dropdown .choices__item--choice[data-choice-disabled],
.choices__list--dropdown .has-no-results {
    color: var(--color-text-muted);
}

/* Input de busca (se habilitado) */
.choices__input {
    background-color: transparent;
    color: var(--color-text);
    font-size: 13px;
    margin-bottom: 0;
}

.choices__input::placeholder {
    color: var(--color-text-muted);
}

/* Grupo de opções */
.choices__group .choices__heading {
    color: var(--color-text-muted);
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: var(--spacing-xs) var(--spacing-md);
    border-bottom: 1px solid var(--color-border);
}

/* Estado de erro */
.form-group.has-error .choices__inner {
    border-color: #ef4444 !important;
    background-color: rgba(239, 68, 68, 0.05) !important;
}

.form-group.has-error .choices.is-focused .choices__inner,
.form-group.has-error .choices.is-open .choices__inner {
    box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.1);
}

/* Scrollbar customizada no dropdown */
.choices__list--dropdown::-webkit-scrollbar,
.choices__list[aria-expanded]::-webkit-scrollbar {
    width: 6px;
}

.choices__list--dropdown::-webkit-scrollbar-track,
.choices__list[aria-expanded]::-webkit-scrollbar-track {
    background: transparent;
}

.choices__list--dropdown::-webkit-scrollbar-thumb,
.choices__list[aria-expanded]::-webkit-scrollbar-thumb {
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 3px;
}

.choices__list--dropdown::-webkit-scrollbar-thumb:hover,
.choices__list[aria-expanded]::-webkit-scrollbar-thumb:hover {
    background-color: rgba(255, 255, 255, 0.3);
}

/* Animação do dropdown */
.choices__list--dropdown {
    animation: choicesDropdown 150ms ease-out;
}

@keyframes choicesDropdown {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
