/* fancy select box */

.wolfoui-fancy-select {
    position: relative;
    display: inline-block;
    min-width: 110px;

    select {
        display: none !important;
    }

    .fs-disabled {
        opacity: .5;
    }

    select:focus + .fs-trigger {
        border-color: #9ac100;
    }

    //== [ currently selected ]
    .fs-trigger {
        display: block;
        width: 100%;
        height: auto;
        padding: rem(0 20px 0 0);
        font-size: rem(14px);
        position: relative;
        cursor: pointer;
        @include transition(all 0.2s ease-out);

        &:after {
            content: "\ea48";
            display: inline-block;
            font-family: $icon_font;
            font-size: 16px;
            color: $disable_color;
            @include position(absolute, -1px, 0);
        }

        &.input-rounded {
            border-radius: 20px;
            padding-left: 20px;
            padding-right: 40px;

            &:after {
                right: 20px;
            }
        }
    }

    //== [ options ]
    ul {
        background: $light_scheme;
        @include box-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
        @include transition(opacity 0.3s ease-out, visibility 0.3s ease-out, top 0.3s ease-out, bottom 0.3s ease-out);

        li {
            background: $light_scheme;
            margin-bottom: 0;
        }

        &.fs-options {
            list-style: none;
            margin: 0;
            padding: rem(5px 0);
            overflow: visible;
            width: 100%;
            min-width: 180px;
            @include position(absolute, 35px, null, null, 0, 19);
            @extend %text-opacity-hiden;

            &.fs-open {
                @extend %text-opacity-show;
                top: 25px;
            }

            &.fs-overflowing {
                @extend %text-opacity-hiden;
                top: 35px;

                &:after {
                    top: 100%;
                    border-bottom-color: transparent;
                    border-top-color: #9ac100;
                }

                &.fs-open {
                    @extend %text-opacity-show;
                    top: 25px;
                }
            }

            li {
                display: block;
                padding: rem(6px 15px);
                cursor: pointer;
                font-size: rem(13px);
                line-height: 1.384;
                @include transition(all 0.2s ease-out);

                &.fs-selected {
                    background: $primary_color;
                    color: $light_color;
                }

                &.fs-hover {
                    background: $hover_color;
                    color: $light_color;
                }

                &.fs-optgroup {
                    cursor: default;
                    padding: 10px 0 0 0;

                    span {
                        padding-left: 10px;
                        display: block;
                        font-style: italic;
                        opacity: 0.8;
                    }
                }
            }
        }

        &.fs-optgroup {
            list-style: none;
            padding: 5px 0 0 0;

            li {
                padding-left: 30px;
            }
        }
    }
}

/* end select */