.select2-selection--single {
    background-color: mix($selection-bg-top-color, $selection-bg-bottom-color);

    border: 1px solid $border-color;
    border-radius: $border-radius;

    outline: 0;

    @include gradient-vertical($selection-bg-top-color, $selection-bg-bottom-color, 50%, 100%);

    &:focus {
        border: 1px solid $focus-border-color;
    }

    .select2-selection__rendered {
        color: #444;
        line-height: 28px;
    }

    .select2-selection__clear {
        cursor: pointer;
        float: right;
        font-weight: bold;
        height: 26px;
        margin-right: 20px;
    }

    .select2-selection__placeholder {
        color: #999;
    }

    .select2-selection__arrow {
        background-color: #ddd;

        border: none;
        border-left: 1px solid $border-color;
        border-top-right-radius: $border-radius;
        border-bottom-right-radius: $border-radius;

        height: 26px;

        position: absolute;

        top: 1px;
        right: 1px;

        width: 20px;

        @include gradient-vertical(#eeeeee, #cccccc, 50%, 100%);

        b {
            border-color: #888 transparent transparent transparent;
            border-style: solid;
            border-width: 5px 4px 0 4px;

            height: 0;
            left: 50%;

            margin-left: -4px;
            margin-top: -2px;

            position: absolute;

            top: 50%;
            width: 0;
        }
    }
}

&[dir="rtl"] {
    .select2-selection--single {
        .select2-selection__clear {
            float: left;
        }

        .select2-selection__arrow {
            border: none;
            border-right: 1px solid $border-color;

            border-radius: 0;
            border-top-left-radius: $border-radius;
            border-bottom-left-radius: $border-radius;

            left: 1px;
            right: auto;
        }
    }
}

&.select2-container--open {
    .select2-selection--single {
        border: 1px solid $focus-border-color;

        .select2-selection__arrow {
            background: transparent;

            border: none;

            b {
                border-color: transparent transparent #888 transparent;
                border-width: 0 4px 5px 4px;
            }
        }
    }

    &.select2-container--above {
        .select2-selection--single {
            border-top: none;
            border-top-left-radius: 0;
            border-top-right-radius: 0;

            @include gradient-vertical($selection-opened-bg-bottom-color, $selection-opened-bg-top-color, 0%, 50%);
        }
    }

    &.select2-container--below {
        .select2-selection--single {
            border-bottom: none;
            border-bottom-left-radius: 0;
            border-bottom-right-radius: 0;

            @include gradient-vertical($selection-opened-bg-top-color, $selection-opened-bg-bottom-color, 50%, 100%);
        }
    }
}
