.select2-selection--single {
  background-color: #fff;
  border: 1px solid $input-border-color;
  border-radius: $border-radius;
  height: $input-height;
  line-height: $line-height-base;
  padding: $padding-base-vertical $padding-base-horizontal + $caret-width*3 $padding-base-vertical $padding-base-horizontal;
  
  .select2-selection__rendered {
    color: $input-color;
    padding: 0;
  }

  .select2-selection__clear {
    color: $clear-selection-color;
    cursor: pointer;
    float: right;
    font-weight: $font-weight-bold;
    margin-right: 10px;

    &:hover {
      color: #333;
    }
  }

  .select2-selection__placeholder {
    color: $input-color-placeholder;
  }

  .select2-selection__arrow {
    position: absolute;
    bottom: 0;
    right: $padding-base-horizontal;
    top: 0;
    width: $caret-width;

    b {
      border-color: $dropdown-arrow-color transparent transparent transparent;
      border-style: solid;
      border-width: $caret-width $caret-width 0 $caret-width;
      height: 0;
      left: 0;
      margin-left: -$caret-width;
      margin-top: -$caret-width/2;
      position: absolute;
      top: 50%;
      width: 0;
    }
  }
}

&[dir="rtl"] {
  .select2-selection--single {
    padding-left: $padding-base-horizontal + $caret-width*3;
    padding-right: $padding-base-horizontal;

    .select2-selection__clear {
      float: left;
    }

    .select2-selection__arrow {
      left: $padding-base-horizontal;
      right: auto;
    }

    .select2-selection__rendered {
      padding-right: 0;
      padding-left: 0;
      text-align: right;
    }
  }
}

&.select2-container--disabled {
  .select2-selection--single {
    background-color: $input-bg-disabled;
    cursor: $cursor-disabled;

    .select2-selection__clear {
      display: none;
    }
  }

  .select2-search__field {
    background-color: $input-bg-disabled;
  }
}

&.input-sm,
.input-group-sm &,
.form-group-sm & {
  .select2-selection--single {
    border-radius: $border-radius-small;
    font-size: $font-size-sm;
    height: $input-height-sm;
    line-height: $line-height-sm;
    padding: $padding-small-vertical $padding-small-horizontal + $caret-width*3 $padding-small-vertical $padding-small-horizontal;

    .select2-selection__arrow b {
      margin-left: -$padding-small-vertical;
    }
  }
}

&.input-lg,
.input-group-lg &,
.form-group-lg & {
  .select2-selection--single {
    border-radius: $border-radius-large;
    font-size: $font-size-lg;
    height: $input-height-lg;
    line-height: $line-height-lg;
    padding: $padding-large-vertical $padding-large-horizontal + $caret-width-lg*3 $padding-large-vertical $padding-large-horizontal;

    .select2-selection__arrow {
      width: $caret-width-lg;
      b {
        border-width: $caret-width-lg $caret-width-lg 0 $caret-width-lg;
        margin-left: -$caret-width-lg;
        margin-left: -$padding-large-vertical;
        margin-top: -$caret-width-lg/2;
      }
    }
  }
}
