.c-video {
    position: relative;
    overflow: hidden;
    background-color: $color--gray-3;

    &__media {
        width: 100%;
    }

    &__controls {
        $this--height = 40px;

        position: absolute;
        bottom: -($this--height);
        width: 100%;
        transition: .2s ease-out;

        ../:hover, ../:focus {
            .c-video__controls {
                bottom: 0;
            }
        }

        ../--fullscreen {
            .c-video__controls {
                position: absolute;
                bottom: 0;
                width: 100%
            }
        }

        @media (min-width: $screen--md) {
            position: relative;
            bottom: auto;
        }

        &-bar {
            flexbox();
            justify-content: space-between;
            width: 100%;
            height: $this--height;
            padding-left: 20px;
            padding-right: @padding-left;
            background-color: @background-color;
            transition: .2s ease-out;
        }

        &-left, &-right {
            flexbox();
            align-items: center;
        }

        &-btn {
            padding: 0;
            font-size: 16px;
            transition: .2s ease-out;

            &:hover {
                color: $color--main;
            }

            &:not(:last-child) {
                margin-right: 20px;
            }

            &--play {
                .c-video__icon {
                    &--play {
                        display: inline-block;
                    }
                    &--pause {
                        display: none;
                    }
                }
            }

            &--pause {
                .c-video__icon {
                    &--play {
                        display: none;
                    }
                    &--pause {
                        display: inline-block;
                    }
                }
            }

            &--fullscreen {
                .c-video__icon {
                    &--fullscreen {
                        display: inline-block;
                    }
                    &--fullscreen-exit {
                        display: none;
                    }
                }
            }

            &--fullscreen-exit {
                .c-video__icon {
                    &--fullscreen {
                        display: none;
                    }
                    &--fullscreen-exit {
                        display: inline-block;
                    }
                }
            }

            &--config {
                @media (min-width: $screen--md) {
                    display: none;
                }
            }
        }
    }

    &__volume {
        display: none;
        margin-right: 20px;

        @media (min-width: $screen--md) {
            // flexbox();
            display: block;
            align-items: center;
        }
    }

    &__slider {
        width: 52px;
        margin-top: 0;
        margin-left: -8px;
        font-size: 12px;
        color: inherit;
    }

    &__progress {
        position: absolute;
        bottom: 100%;
        left: 0;
        width: 100%;
        height: 4px;
        border-radius: 0;
        border: none;
        background-color: #7f7f7f;

        &-bar {
            position: absolute;
            top: 0;
            left: 0;
            z-index: 1;
            height: 100%;
            background-color: $color--main;
            transition: .2s ease-out;

            &--buffer {
                z-index: 0;
                background-color: #ccc;
            }
        }

        &-control {
            position: absolute;
            top: 0;
            left: 0;
            z-index: 2;
            width: 100%;
            height: 100%;
            margin: 0;
            opacity: 0;
            cursor: pointer;    
        }
    }

    &__duration {
        @media (min-width: $screen--md) {
            font-size: 12px;
        }
    }

    &__config {
        position: relative;
        @media (min-width: $screen--md) {
            margin-right: 20px;
        }
    }

    &__options {
        display: none;

        &-btn {
            &:hover {
                color: $color--main;
            }
        }

        @media (max-width: $screen--md - 1) {
            position: absolute;
            bottom: 100%
            right: 0;
            margin-bottom: 20px;
            padding-top: 4px;
            padding-bottom: @padding-top;
            width: 110px;
            border-radius: 3px;
            background-color: #fff;

            &.is-open {
                display: block;
            }

            &-btn {
                flexbox();
                align-items: center;
                justify-content: space-between;
                padding: 4px 8px;
                width: 100%;
                line-height: 18px;
                white-space: nowrap;
            }

            &-icon {
                color: $color--main;
            }
        }

        @media (min-width: $screen--md) {
            flexbox();
            font-size: 12px;

            &-btn {
                padding: 0;
                width: 50px;
                height: 20px;
                border: solid 1px currentColor;
                border-radius: 3px;
                font-size: 1em;
                text-align: center;
                line-height: 18px;
            }

            &-item {
                position: relative;

                & + & {
                    margin-left: 15px;
                }
            }
        }
    }

    &__menu {
        position: absolute;
        bottom: 100%;
        right: 0;
        display: none;
        list-style: none;
        margin: 0
        margin-bottom: 20px;
        padding: 6px 0;
        border-radius: 3px;
        background-color: #fff;

        &.is-open {
            display: block;
        }

        &-item {
            display: block;
            padding: 0 8px 0 26px;
            width: 100%;
            height: 18px;
            text-align: left;
            line-height: @height;
            white-space: nowrap;

            &:hover {
                color: $color--main;
            }

            &.is-active {
                &:before {
                    content: '';
                    position: absolute;
                    top: calc(50% - 2px);
                    left: 18px;
                    display: block;
                    width: 4px;
                    height: @width;
                    background-color: currentColor;
                    border-radius: 50em;
                }
            }

            @media (min-width: $screen--md) {
                position: relative;
                padding-left: 16px;

                &.is-active {
                    &:before {
                        left: 8px;
                    }
                }
            }
        }

        &-back {
            padding-left: 0;
            margin-bottom: 4px;
        }

        &-icon {
            width: 26px;
            color: $color--main;
        }
    }

    // Vendor


}