/**
 * Overrides do Select2 para igualar ao padrão .form-control / .form-select do Bootstrap.
 * Este arquivo DEVE ser carregado DEPOIS de select2.min.css para prevalecer.
 */
/* Tamanho de fonte igual ao .form-control do Bootstrap (0.8125rem = 13px) */
.select2-container--default .select2-selection--single,
.select2-container .select2-selection--single {
  background-color: var(--bs-input-bg) !important;
  background-clip: padding-box;
  border: var(--bs-border-width) solid var(--bs-border-color) !important;
  border-radius: var(--bs-border-radius);
  min-height: calc(1.5em + 0.94rem + calc(var(--bs-border-width) * 2)) !important;
  height: auto !important;
  font-size: 0.8125rem !important;
  line-height: 1.5;
}
.select2-container .select2-selection--single:focus,
.select2-container--focus .select2-selection--single {
  outline: none;
  border-color: #a2d1e9 !important;
  box-shadow: 0 0 0 0.15rem rgba(45, 123, 160, 0.25);
}
.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container .select2-selection--single .select2-selection__rendered {
  display: block !important;
  line-height: 1.5 !important;
  padding: 0.47rem 2.25rem 0.47rem 0.75rem !important;
  color: var(--bs-body-color) !important;
  font-size: 0.8125rem !important;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.select2-container--default .select2-selection--single .select2-selection__arrow,
.select2-container .select2-selection--single .select2-selection__arrow {
  height: 100% !important;
  width: 2.25rem;
  right: 0;
  top: 0 !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b,
.select2-container .select2-selection--single .select2-selection__arrow b {
  border-color: var(--bs-body-color) transparent transparent transparent;
  border-width: 5px 5px 0 5px;
  margin-left: -5px;
  margin-top: -3px;
}
.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent var(--bs-body-color) transparent !important;
  border-width: 0 5px 5px 5px !important;
}

.select2-container--default .select2-selection--multiple,
.select2-container .select2-selection--multiple {
  min-height: calc(1.5em + 0.94rem + calc(var(--bs-border-width) * 2)) !important;
  background-color: var(--bs-input-bg) !important;
  border: var(--bs-border-width) solid var(--bs-border-color) !important;
  border-radius: var(--bs-border-radius);
  font-size: 0.8125rem !important;
}
.select2-container--focus .select2-selection--multiple {
  border-color: #a2d1e9 !important;
  box-shadow: 0 0 0 0.15rem rgba(45, 123, 160, 0.25);
}

/* Dropdown: mesma fonte dos inputs para opções legíveis */
.select2-dropdown,
.select2-container--default .select2-results__option,
.select2-results__option {
  font-size: 0.8125rem !important;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
  font-size: 0.8125rem !important;
}

/* Hover/seleção: select2.min.css carrega depois de app.css e sobrescreve #2d7ba0 —
   estas regras no overrides (após select2.min.css) restauram a cor do tema. */
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #2d7ba0 !important;
  color: #fff !important;
}
.select2-container--default .select2-results__option[aria-selected=true] {
  background-color: #f8f9fa !important;
  color: #06070c !important;
}
.select2-container--default .select2-results__option[aria-selected=true]:hover,
.select2-container--default .select2-results__option[aria-selected=true].select2-results__option--highlighted {
  background-color: #2d7ba0 !important;
  color: #fff !important;
}
