.select2-container .select2-selection--single {
  border-color: $input-border-color;
  border-radius: $input-border-radius;
  height: $dropdown-height;

  &:focus {
    outline: 0;
  }

  .select2-selection__rendered {
    color: $text-color;
    font-weight: $font-weight-normal;
    line-height: $dropdown-height;
    padding-right: 24px;

    &:focus {
      outline: 0;
    }
  }

  .select2-selection__arrow {
    height: $dropdown-height;
    overflow: hidden;
    top: 0;
  }
}

.select2-container .select2-selection {
  @include input-status-colors();
}

.select2-container .select2-selection--multiple {
  border-color: $input-border-color;
  border-radius: $input-border-radius;
  min-height: $dropdown-height;

  .select2-selection__rendered {
    line-height: 17px;
    margin-bottom: -5px;
    padding-left: 8px;
    padding-right: 16px;
  }

  .select2-search__field::-webkit-search-cancel-button {
    display: none;
  }
}

.select2-container .select2-search--inline .select2-search__field {
  margin-top: 7px;
  // @include placeholder;
}

.select2-container .select2-selection--multiple .select2-selection__choice {
  color: $text-color;
  margin-top: 3px;
}

.select2-dropdown {
  border-color: $dropdown-border-color;
  border-radius: $dropdown-border-radius;
}

.select2-container .select2-search--dropdown .select2-search__field {
  border-color: $input-border-color;
  border-radius: $input-border-radius;

  &:focus {
    outline: 0;
  }
}

.select2-container .select2-results__option[aria-selected=true] {
  background-color: $dropdown-item-selected-background-color;
  border-left: $dropdown-item-selected-border-width solid $dropdown-item-selected-border-color;
  padding-left: $dropdown-item-selected-padding-left;
}

.select2-container .select2-results__option--highlighted[aria-selected] {
  background-color: $dropdown-item-highlighted-background-color;
  color: $text-color;
}


select.select2-hidden-accessible.input-validation-error + span.select2.select2-container {
  .select2-selection--single,
  .select2-selection--multiple {
    border-color: $validation-error !important;
  }
}

.select2-container--default .select2-selection--multiple .select2-selection__clear {
  color: $dropdown-clear-icon-color;
  font-size: 18px;
  font-weight: $font-weight-normal;
  margin-right: -10px;
  margin-top: 6px;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
  color: $dropdown-clear-icon-color;
  font-size: 18px;
  font-weight: $font-weight-normal;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  font-weight: $font-weight-normal;
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
  border-color: $input-border-color;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  border-radius: $input-border-radius;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered li.select2-selection__choice {
  background-color: $dropdown-multi-item-selected-background-color;
  border-color: $color-gray-95;
  border-radius: 20px;
  color: $dropdown-multi-item-selected-text-color;
  font-size: 12px;
  padding-bottom: 2px;
  padding-left: 8px;
  padding-right: 8px;
  padding-top: 3px;

  .select2-selection__choice__remove {
    border-color: $color-gray-70;
    color: $dropdown-multi-item-selected-clear-color;
    float: right;
    margin-left: 6px;
    margin-right: 0;

    &:hover {
      color: $dropdown-multi-item-selected-clear-color;
    }
  }
}

.select2-container--open .select2-dropdown {

  @include box-shadow($dropdown-box-shadow);

  &.select2-dropdown--below {
    border-top: 1px solid $dropdown-border-color;
    border-top-left-radius: $dropdown-border-radius;
    border-top-right-radius: $dropdown-border-radius;
    margin-top: 5px;
  }

  &.select2-dropdown--above {
    border-bottom: 1px solid $dropdown-border-color;
    border-bottom-left-radius: $dropdown-border-radius;
    border-bottom-right-radius: $dropdown-border-radius;
    margin-top: -5px;
  }
}


.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-left-radius: $input-border-radius;
  border-bottom-right-radius: $input-border-radius;
}

.select2-container--default.select2-container--open.select2-container--above .select2-selection--single,
.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: $input-border-radius;
  border-top-right-radius: $input-border-radius;
}

.select2-search--dropdown {
  border-bottom: $default-border;
  padding: 8px;
}

.select2-container--default .select2-results__group {
  font-weight: $font-weight-bold;
}

.select2-results__option,
.select2-container--default .select2-results__option .select2-results__option {
  padding: $dropdown-item-padding-vertical $dropdown-item-padding-horisontal;
}

.select2.select2-container {
  border-radius: $input-border-radius;
}

.select2.select2-container.select2-container--open,
.select2.select2-container.select2-container--focus {
  border-color: $input-border-color;
  box-shadow: $outline-box-shadow rgba($input-border-color, $outline-border-opacity);
}

.select2.select2-container:focus {
  border-color: $input-border-color;
  box-shadow: $outline-box-shadow rgba($input-border-color, $outline-border-opacity);
  outline: 0;
}

.select2-container--default .select2-selection--single .select2-selection__arrow svg.dropdown-arrow {
  fill: $icon-color;
  position: absolute;
  right: 0;
  top: 5px;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow svg.dropdown-arrow {
  fill: $color-primary;
  transform: rotate(180deg) translateY(1px);
}

//Disabled styles
.select2-container--default.select2-container--disabled .select2-selection--single,
.select2-container--default.select2-container--disabled .select2-selection--multiple {
  background-color: $dropdown-disabled-background-color;
  cursor: not-allowed;

  &:focus {
    outline: 0;
  }

  .select2-selection__rendered,
  .select2-selection__rendered li {

    color: $dropdown-disabled-color;
    cursor: not-allowed;

    * {
      cursor: not-allowed;
    }
  }
}

.select2-container--default.select2-container--disabled .select2-selection--multiple {
  .select2-selection__rendered li.select2-selection__choice {
    background-color: $dropdown-multi-item-selected-disabled-background-color;
    color: $dropdown-multi-item-selected-disabled-text-color;
  }
}

input.select2-search__field:input-placeholder {
  color: $input-color-placeholder;
  margin-left: 8px;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: $input-color-placeholder;
}
