@import "common/var";

.el-cascader {
    display: inline-block;
    position: relative;
    font-size: $--font-size-base;
    line-height: $--input-height;
    width: 100%;
    overflow: hidden;

    &:not(.is-disabled):hover {
        .el-input__inner {
            cursor: pointer;
            border-color: $--input-hover-border;
        }
    }

    .el-input {
        cursor: pointer;

        .el-input__inner {
            text-overflow: ellipsis;
            &:focus {
                border-color: $--input-focus-border;
            }
        }

        .el-input__icon {
            transition: none;
        }

        .el-input__icon-down {
            transition: transform .3s;
            font-size: 14px;

            &.is-reverse {
                transform: rotateZ(180deg);
            }
        }

        .fa-times-circle {
            z-index: #{$--index-normal + 1};
            transition: $--color-transition-base;

            &:hover {
                color: $--color-text-secondary;
            }
        }

        &.is-focus {
            .el-input__inner {
                border-color: $--input-focus-border;
            }
        }
    }

    &.is-disabled {
        .el-cascader__label {
            z-index: #{$--index-normal + 1};
            color: $--disabled-color-base;
        }
    }
}

.el-cascader__clearIcon {
    z-index: 2;
    position: relative;
}

.el-cascader__label {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    padding: 0 25px 0 15px;
    color: $--input-color;
    width: 100%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    box-sizing: border-box;
    cursor: pointer;
    text-align: left;
    font-size: inherit;

    span {
        color: $--color-black;
    }
}

.el-cascader--medium {
    font-size: $--input-medium-font-size;
    line-height: $--input-medium-height;
}

.el-cascader--small {
    font-size: $--input-small-font-size;
    line-height: $--input-small-height;
}

.el-cascader--mini {
    font-size: $--input-mini-font-size;
    line-height: $--input-mini-height;
}

.el-cascader__dropdown {
    margin: 5px 0;
    font-size: $--cascader-menu-font-size;
    background: $--cascader-menu-fill;
    border: $--cascader-menu-border;
    border-radius: $--cascader-menu-radius;
    box-shadow: $--cascader-menu-shadow;
}

.el-cascader__tags {
    position: absolute;
    left: 0;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-wrap: wrap;
    line-height: normal;
    text-align: left;
    box-sizing: border-box;

    .el-tag {
        display: inline-flex;
        align-items: center;
        max-width: 100%;
        margin: 2px 0 2px 6px;
        text-overflow: ellipsis;

        > span {
            overflow: hidden;
            text-overflow: ellipsis;
        }
    }
}

.el-cascader__suggestion-panel {
    border-radius: $--cascader-menu-radius;
}

.el-cascader__suggestion-list {
    max-height: 204px;
    margin: 0;
    padding: 6px 0;
    font-size: $--font-size-base;
    color: $--cascader-menu-font-color;
    text-align: center;
    overflow: auto;
}

.el-cascader__suggestion-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 34px;
    padding: 0 15px;
    text-align: left;
    outline: none;
    cursor: pointer;

    &:hover, &:focus {
        background: $--cascader-node-background-hover;
    }

    &.is-checked {
        color: $--cascader-menu-selected-font-color;
        font-weight: bold;
    }

    > span {
        margin-right: 10px;
    }
}

.el-cascader__empty-text {
    margin: 10px 0;
    color: $--cascader-color-empty;
}

.el-cascader__search-input {
    flex: 1;
    height: 24px;
    min-width: 60px;
    margin: 2px 0 2px 15px;
    padding: 0;
    color: $--cascader-menu-font-color;
    border: none;
    outline: none;
    box-sizing: border-box;

    &::placeholder {
        color: $--color-text-placeholder;
    }
}
