.art-video-player {
    .art-bottom {
        position: absolute;
        z-index: 60;
        left: 0;
        right: 0;
        bottom: 0;
        height: 100px;
        padding: 55px 10px 0;
        opacity: 0;
        visibility: hidden;
        transition: all 0.2s ease-in-out;
        pointer-events: none;
        background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==)
            repeat-x bottom;

        .art-progress {
            position: relative;
            pointer-events: auto;
            .art-control-progress {
                position: relative;
                display: flex;
                flex-direction: row;
                align-items: center;
                height: 4px;
                cursor: pointer;

                .art-control-progress-inner {
                    position: relative;
                    height: 50%;
                    width: 100%;
                    background: rgba(255, 255, 255, 0.2);
                    .art-progress-loaded {
                        position: absolute;
                        z-index: 10;
                        left: 0;
                        top: 0;
                        right: 0;
                        bottom: 0;
                        height: 100%;
                        width: 0;
                        background: rgba(255, 255, 255, 0.4);
                    }

                    .art-progress-played {
                        position: absolute;
                        z-index: 20;
                        left: 0;
                        top: 0;
                        right: 0;
                        bottom: 0;
                        height: 100%;
                        width: 0;
                    }

                    .art-progress-highlight {
                        position: absolute;
                        z-index: 30;
                        left: 0;
                        top: 0;
                        right: 0;
                        bottom: 0;
                        height: 100%;
                        pointer-events: none;

                        span {
                            display: inline-block;
                            position: absolute;
                            left: 0;
                            top: 0;
                            width: 7px;
                            height: 100%;
                            background: #fff;
                            pointer-events: auto;
                        }
                    }

                    .art-progress-indicator {
                        display: none;
                        position: absolute;
                        z-index: 40;
                        top: -5px;
                        left: -6.5px;
                        width: 13px;
                        height: 13px;
                        border-radius: 50%;

                        &.art-show-indicator {
                            display: block;
                        }
                    }

                    .art-progress-tip {
                        display: none;
                        position: absolute;
                        z-index: 50;
                        top: -25px;
                        left: 0;
                        height: 20px;
                        padding: 0 5px;
                        line-height: 20px;
                        color: #fff;
                        font-size: 12px;
                        text-align: center;
                        background: rgba(0, 0, 0, 0.7);
                        border-radius: 3px;
                        font-weight: bold;
                        white-space: nowrap;
                    }
                }

                &:hover {
                    .art-control-progress-inner {
                        height: 100%;
                        .art-progress-indicator,
                        .art-progress-tip {
                            display: block;
                        }
                    }
                }
            }

            .art-control-thumbnails {
                display: none;
                position: absolute;
                bottom: 8px;
                left: 0;
                pointer-events: none;
                background-color: rgba(0, 0, 0, 0.7);
            }

            .art-control-loop {
                display: none;
                position: absolute;
                width: 100%;
                height: 100%;
                left: 0;
                top: 0;
                right: 0;
                bottom: 0;
                pointer-events: none;

                .art-loop-point {
                    position: absolute;
                    left: 0;
                    top: -2px;
                    width: 2px;
                    height: 8px;
                    background: rgba(255, 255, 255, 0.75);
                }
            }
        }

        .art-controls {
            position: relative;
            pointer-events: auto;
            display: flex;
            align-items: center;
            justify-content: space-between;
            height: 40px;
            padding: 5px 0;

            .art-controls-left,
            .art-controls-right {
                display: flex;
            }

            .art-control {
                opacity: 0.9;
                font-size: 12px;
                height: 40px;
                min-width: 44px;
                line-height: 40px;
                text-align: center;
                cursor: pointer;
                white-space: nowrap;
                .art-icon {
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    float: left;
                    height: 40px;
                    width: 36px;
                }
                &:hover {
                    opacity: 1;
                }
            }

            .art-control-quality {
                margin-right: 20px;
            }
            .art-control-onlyText {
                padding: 0 10px;
            }

            .art-control-volume {
                .art-volume-panel {
                    position: relative;
                    float: left;
                    width: 0;
                    height: 100%;
                    transition: margin 0.2s cubic-bezier(0.4, 0, 1, 1), width 0.2s cubic-bezier(0.4, 0, 1, 1);
                    overflow: hidden;

                    .art-volume-slider-handle {
                        position: absolute;
                        top: 50%;
                        left: 0;
                        width: 12px;
                        height: 12px;
                        border-radius: 12px;
                        margin-top: -6px;
                        background: #fff;

                        &::before {
                            left: -54px;
                            background: #fff;
                        }

                        &::after {
                            left: 6px;
                            background: rgba(255, 255, 255, 0.2);
                        }

                        &::before,
                        &::after {
                            content: '';
                            position: absolute;
                            display: block;
                            top: 50%;
                            height: 3px;
                            margin-top: -2px;
                            width: 60px;
                        }
                    }
                }

                &:hover .art-volume-panel {
                    width: 60px;
                }
            }

            .art-control-quality {
                position: relative;
                z-index: 30;
                .art-qualitys {
                    display: none;
                    position: absolute;
                    bottom: 35px;
                    width: 100px;
                    padding: 5px 0;
                    text-align: center;
                    color: #fff;
                    background: rgba(0, 0, 0, 0.8);
                    border-radius: 3px;
                    .art-quality-item {
                        height: 30px;
                        line-height: 30px;
                        overflow: hidden;
                        text-overflow: ellipsis;
                        white-space: nowrap;
                        text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
                        &:hover {
                            background-color: rgba(255, 255, 255, 0.1);
                        }
                    }
                }
                &:hover .art-qualitys {
                    display: block;
                }
            }
        }
    }

    &.art-control-show,
    &.art-hover {
        .art-bottom {
            opacity: 1;
            visibility: visible;
        }
    }

    &.art-error,
    &.art-destroy {
        .art-progress-indicator,
        .art-progress-tip {
            display: none !important;
        }
    }
}
