.jws-history-element {
    margin-bottom: 50px;
}

.jws-my-list-element {
    margin-bottom: 50px;
}

#get_stream_key {
    &.loading {
        pointer-events: none;
        opacity: 0.5;
    }
}

.user-popup .mfp-content .jws-subscription-box {
    padding: 40px;

    .mfp-close {
        top: 20px;
        right: 20px;
    }
}

/*Report*/
#jws-submit-report-user {
    .form-group {
        margin-bottom: 16px;
    }

    button.form-submit-btn {
        width: 100%;
    }
}

.acf-live-date::-webkit-calendar-picker-indicator {
    filter: invert(1) sepia(1) saturate(5) hue-rotate(180deg);
    cursor: pointer;
}

/*Livestream container*/
.livestream-container {
    position: relative;

    .live {
        font-weight: 600;
        font-size: 13px;
        line-height: 17px;
        text-transform: uppercase;
        color: #050509;
        background: var(--main);
        border-radius: 5px;
        padding: 2px 5px;
    }

    .live-player {
        position: relative;

        .jws-pmpro_has_membership_access {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            text-align: center;
            width: 100%;
            padding: 0 15px;
            z-index: 1;

            a {
                background: linear-gradient(255deg, var(--btn-bgcolor) 12.58%, var(--btn-bgcolor2) 54.99%);
                color: var(--btn-color);
                border: 0;
                padding: 10px 25px;
                font-weight: 700;
                font-size: 16px;
                line-height: 20px;
                position: relative;
                overflow: hidden;
                display: inline-block;
                transition: .2s ease;
                border-radius: 10px;
                text-align: center;
                margin: 15px 10px 0 0;
                vertical-align: middle;
            }
        }

        .video-js {
            background: #1A1A20;
            background-size: cover;
        }

        .view-count span {
            color: var(--heading);
        }

        .live-video-content-top {
            position: absolute;
            top: 0;
            padding: 10px;
            left: 0;
            width: 100%;

            .live-view {
                display: flex;
                align-items: center;
                gap: 12px;
                margin-top: 10px;
            }
        }

        .live-content {
            align-items: center;
            flex-wrap: nowrap;
            margin-top: 0;
            background: rgba(5, 5, 9, 0.2);
            backdrop-filter: blur(5px);
            border-radius: 30px;
            padding: 2px 4px;

            .author-name {
                font-size: 16px;
                margin-bottom: 0;
            }

            .live-meta {
                gap: 6px;
            }

            .title {
                font-size: 13px;
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
            }

            .author-avatar {
                width: 40px;
                padding-bottom: 0;
                flex: 0 0 40px;
            }

            .author-info {
                max-width: calc(100% - 46px);
            }

            .live-action {
                .button-default {
                    font-size: 14px;
                    padding: 3px 6px;
                }

                .dropdown-menu {
                    bottom: -40px;
                }

                .like-button i,
                .jws-follow-btn i {
                    font-size: 16px;
                    margin-right: 2px;
                }
            }
        }

    }

    .live-action {
        .button-default {
            padding: 9px 12px;
        }

        .action-top,
        .action-bottom {
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .action-top {
            justify-content: flex-end;
            margin-bottom: 24px;
            column-gap: 24px;
        }

        a.like-button {
            position: relative;
        }

        .like-button i,
        .jws-follow-btn i {
            font-size: 20px;
            margin-right: 8px;
        }

        .jws-follow-btn,
        .jws-open-subscription {
            background: var(--input-background);
            color: var(--heading);

            &:hover {
                color: var(--btn-color);
            }
        }

        .jws-open-option,
        .jws-share a {
            width: 40px;
            height: 40px;
            line-height: 36px;
            display: block;
            text-align: center;
            border-radius: 10px;

            &:hover {
                color: var(--heading);
                background: var(--input-background);
            }
        }

        .jws-share {
            font-size: 20px;
            text-align: center;

            a {
                span {
                    display: none;
                }
            }
        }

        .jws-open-option {
            font-size: 24px;
            padding: 0;
            background: transparent;
            border: none;
            color: var(--heading);
        }

        .dropdown-menu {
            position: absolute;
            right: 0;
            width: 155px;
            bottom: 40px;
            background: var(--input-background2);
            padding: 10px 16px;
            box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.5);
            border-radius: 5px;
            visibility: hidden;
            opacity: 0;
            transition: transform .5s cubic-bezier(.215, .61, .355, 1);
            transform: translateY(10px);

            i {
                margin-right: 8px;
            }
        }

        .popup-option {
            position: relative;

            &.opened {
                .dropdown-menu {
                    visibility: visible;
                    opacity: 1;
                    transform: none;
                }
            }
        }
    }

    .live-content {
        margin-top: 18px;
        display: flex;
        align-items: end;
        gap: 16px;
        justify-content: space-between;

        .live-meta {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            flex: 0 0 50%;
            max-width: 50%;
            align-items: center;
            gap: 12px;
        }

        .author-avatar {
            position: relative;
            padding-bottom: 8px;

            img {
                border-radius: 100%;
                width: 90px;
                height: 90px;
                object-fit: cover;
            }

            .live {
                position: absolute;
                bottom: 0;
                left: 50%;
                z-index: 1;
                transform: translateX(-50%);
            }
        }

        .author-name {
            margin-bottom: 4px;
        }

        .title {
            margin-bottom: 0;
        }

        .video-cat {
            margin-top: 4px;

            a {
                font-size: 14px;
                line-height: 20px;
                padding: 4px 10px;
                background: var(--input-background);
                border-radius: 10px;
                padding-right: 8px;
                display: inline-block;

                &:hover {
                    background: transparent;
                }
            }
        }
    }

    .intro-user {
        margin-top: 32px;
        border-radius: 10px;
        background: var(--background-item);
        padding: 16px;
        min-height: 156px;

        .heading-top {
            display: flex;
            gap: 16px;
            flex-wrap: wrap;
            justify-content: space-between;

            .name {
                display: inline-block;
                margin-right: 18px;
            }

            .jws-follower-count {
                font-size: 14px;
                color: var(--heading);

                .count {
                    color: var(--main);
                    font-weight: 700;
                    margin-right: 4px;
                }
            }
        }

        .author-socials a {
            display: inline-block;
            padding: 5px 9px;
            border-radius: 10px;
            background: rgba(255, 255, 255, .2);
            margin-right: 12px;
            width: 34px;
            text-align: center;

            &:hover {
                background: var(--main);
                color: var(--btn-color);
            }
        }

        .author-description {
            margin-top: 8px;
        }
    }

    /*Gift*/
    .jws-chat-setting {
        button {
            background: transparent;
            border: none;
            padding: 0;
            font-size: 14px;
            color: var(--heading);

            &.hide-chat i {
                font-size: 20px;
                margin-right: 8px;
                position: relative;
            }

            &.hide-chat i:after {
                content: "";
                position: absolute;
                width: 16px;
                height: 1px;
                background-color: currentColor;
                opacity: 0.8;
                right: 0px;
                top: 14px;
                transform: rotate(-46deg);
            }

        }
    }

    .jws-chat-setting,
    #jws-gift-container {
        position: absolute;
        width: 100%;
        left: 0;
        bottom: 100%;
        opacity: 0;
        pointer-events: none;
        visibility: hidden;
        background-color: var(--background-item);
        border-radius: 10px;
        box-shadow: 0 0 20px 20px rgba(225, 225, 225, 0.05);
        padding: 20px;
        z-index: 1;

        &.open {
            opacity: 1;
            pointer-events: auto;
            visibility: visible;
        }
    }

    #jws-gift-container {

        .jws-action-get-credit {
            padding-top: 16px;
        }

        .gift-row {
            display: grid;
            grid-gap: 10px;
            grid-template-columns: repeat(3, 1fr);
            background-color: var(--background-item);
            overflow: auto;
            height: 225px;
            text-align: center;

            .gift-inner {
                padding: 0.5rem;
                border-radius: 10px;
                border: 1px solid rgb(255 255 255 / 10%);
                cursor: pointer;

                &:hover {
                    img {
                        transform: scale(0.9);
                    }
                }

                img {
                    border-radius: 10px;
                    transition: all .3s;
                }
            }

            h6 {
                font-size: 14px;
                text-align: center;
                font-weight: 400;
                margin-top: 8px;
                margin-bottom: 0;
                position: relative;
                display: inline-block;
                padding-right: 23px;

                .gem_icon {
                    position: absolute;
                    right: 0;
                    top: 0;
                    width: 20px;
                }
            }
        }
    }

    /*Sidebar Live*/
    .chat-sidebar {
        .chat-sidebar-inner {
            background: var(--background-item);
            border-radius: 10px;
            padding: 20px 20px;
            height: calc(-5.2rem + 100vh);
            position: absolute;
            width: 100%;
            opacity: 0.5;
            pointer-events: none;

            &.chat_open {
                opacity: 1;
                pointer-events: auto;

                .chat-messages {
                    opacity: 1;
                }
            }

            .chat-messages {
                opacity: 0;
            }
        }

        .chat-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 20px;
            height: 50px;
            position: relative;
            border-bottom: 2px solid rgba(191, 191, 203, .5);

            button {
                background: transparent;
                border: 0;
                color: var(--body);
                font-size: 16px;
                cursor: pointer;
                padding: 10px;
                width: 50%;
                font-weight: 700;
                position: relative;
                z-index: 1;

                &.active {
                    color: var(--heading);

                    &:before {
                        width: 100%;
                        background: #BFBFCB;
                    }
                }

                &:before {
                    content: '';
                    width: 0;
                    height: 2px;
                    background: transparent;
                    position: absolute;
                    left: 0;
                    bottom: -4px;
                    transition: all 0.3s;
                }
            }

        }

        #chat-actions {
            height: 100px;

            .chat-controls {
                display: flex;
                justify-content: space-between;
                position: relative;

                >div {
                    display: flex;
                    align-items: center;
                    gap: 10px;
                }

                .controls-left button:not(.hide-chat) {
                    color: var(--heading);
                    font-size: 24px;
                }
            }

            #send-message {
                border: 0;
                background-color: var(--main);
                color: var(--heading2);
                width: 44px;
                height: 44px;
                font-size: 24px;
                border-radius: 10px;

                &[disabled] {
                    opacity: .6;
                }
            }


            .chat-input {
                margin-bottom: 10px;
                position: relative;
            }

            #send-emoji {
                position: absolute;
                right: 10px;
                top: 10px;
            }

            #chat-message {
                padding-right: 45px;
                background: rgba(255, 255, 255, 0.1);
            }

        }

        .chat-participants {
            display: none;

            li {
                display: flex;
                align-items: center;
                gap: 10px;
                margin-bottom: 10px;

                img {
                    width: 30px;
                    height: 30px;
                    border-radius: 100%;
                }

                &:last-child {
                    margin-bottom: 0;
                }
            }
        }

        .live-chat {
            height: 100%;
            display: flex;
            flex-direction: column;

            .chat-content {
                height: calc(100% - 70px);
                display: flex;
                flex-direction: column;
                flex: 1;
            }

            .chat-messages {
                max-height: 100%;
                overflow-y: auto;
                scrollbar-width: none;
                flex: 1;

                .gift-image {
                    max-width: 100px;
                    border-radius: 10px;
                    margin-top: 5px;
                    display: block;
                }


                >div {
                    display: flex;
                    align-items: flex-start;
                    gap: 10px;
                    margin-block-end: 10px;

                    >img {
                        max-width: 24px;
                        border-radius: 100%;
                    }

                    strong {
                        font-weight: 600;
                        color: var(--light);
                        margin-inline-end: 5px;
                    }
                }
            }


            .scroll-hover::-webkit-scrollbar {
                width: 0;
                height: 0;
            }


            .scroll-hover:hover {
                scrollbar-width: thin;

                scrollbar-color: rgba(0, 0, 0, 0.5) transparent;
            }

            .scroll-hover:hover::-webkit-scrollbar {
                width: 6px;
            }

            .scroll-hover:hover::-webkit-scrollbar-thumb {
                background-color: rgba(0, 0, 0, 0.5);
                border-radius: 4px;
            }
        }



        .emoji-reactions-wap {
            position: relative;

            &:hover {
                #emoji-reactions {
                    opacity: 1;
                    pointer-events: auto;
                    transform: none;
                }
            }

            .icon-hover {
                border: 0;
                background-color: #FF5A79;
                color: #ffffff;
                width: 44px;
                height: 44px;
                border-radius: 10px;
                font-size: 24px;
            }

            #emoji-reactions {
                position: absolute;
                bottom: 100%;
                transition: 0.3s all;
                opacity: 0;
                pointer-events: none;
                display: flex;
                flex-direction: column;
                align-items: center;
                width: 100%;
                gap: 10px;
                padding-bottom: 10px;
                transform: translateY(10px);

                button {
                    border: 0;
                    color: #ffffff;
                    border-radius: 100%;
                    font-size: 30px;
                    background: transparent;

                    &[data-emoji="1"] {
                        color: #c72e39;
                    }

                    &[data-emoji="2"] {
                        color: #1148d7;
                    }

                    &[data-emoji="3"] {
                        color: #ffc53f;
                    }

                    &[data-emoji="4"] {
                        color: #ff3f3f;
                    }
                }
            }
        }
    }

    #join-livestream {
        position: absolute;
        left: 50%;
        top: 50%;
        z-index: 1;
        transform: translate(-50%, -50%);
    }

    #emoji-floating-container {
        position: absolute;
        bottom: 20px;
        right: 0;
        pointer-events: none;
        z-index: 9999;
        width: 300px;

        .fa-heart {
            color: #c72e39;
        }

        .fa-laugh {
            color: #1148d7;
        }

        .fa-surprise {
            color: #ffc53f;
        }

        .fa-angry {
            color: #ff3f3f;
        }

    }

    .emoji-float {
        position: absolute;
        bottom: 0;
        font-size: 32px;
        opacity: 1;
        animation: floatUp 1.5s ease-out forwards;
        width: 30px;

    }

    .videos_player:not(.has-embed) {
        margin-bottom: 0;
    }

    .chat-header {
        margin-bottom: 20px;

    }

}

@keyframes floatUp {
    0% {
        transform: translateY(0);
        opacity: 1;
    }

    100% {
        transform: translateY(-150px);
        opacity: 0;
    }
}

.button-default[disabled] {
    opacity: 0.5;
    pointer-events: none;
}

.jws-livestream-notice {
    padding: 30px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    .video-time-live i {
        font-size: 20px;
        margin-right: 3px;
    }
}

.countdown-box {
    display: flex;
    align-items: center;
    gap: 10px;
    text-align: center;
    color: #ffffff;
    margin-bottom: 20px;
    margin-top: 20px;

    .count-num {
        font-weight: 700
    }

    .count-label {
        font-size: 12px
    }
}


.jws-livestream-host {
    margin: 50px auto;

    .video-time-live i {
        font-size: 20px;
    }

    .live-rtmp {
        margin-bottom: 70px;
    }

    .stream-field {
        margin: 20px 0;
    }

    #view-you-live {
        text-decoration: underline;
        color: var(--main);
        font-weight: 700;
        text-underline-offset: 5px;
        display: flex;
        justify-content: center;
        margin-top: 20px;
    }

    .button-default {
        width: 100%;
    }

}

#emoji-reactions-total {
    position: absolute;
    left: 10px;
    top: 50%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transform: translateY(-50%);
    align-items: center;
    background: rgba(5, 5, 9, 0.2);
    border: 1px solid rgba(26, 26, 32, 0.1);
    backdrop-filter: blur(10px);
    border-radius: 30px;
    padding: 10px;
    color: #fff;
    font-size: 12px;

    button {
        display: flex;
        background: transparent;
        border: 0;
        text-align: center;
        flex-direction: column;
        align-items: center;
        gap: 2px;
        padding: 0;
    }
}


.stream-heading {
    display: flex;
    margin-bottom: 20px;

    .text {
        span {
            color: var(--body2);
            display: block;
            margin-bottom: 4px;
        }
    }

    .icon {
        width: 48px;
        height: 48px;
        line-height: 48px;
        text-align: center;
        border-radius: 10px;
        font-size: 24px;
        color: var(--light);
        margin-right: 20px;
        margin-top: 2px;
        background: linear-gradient(255deg, var(--btn-bgcolor) 12.58%, var(--btn-bgcolor2) 54.99%);
    }
}

#start-webcam-live {
    margin-right: 20px;
}

.webcam-player {
    display: none;
}

.webcam-player.open {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 720px;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    border-radius: 16px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.25);
    z-index: 9999;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 20px;

    .webcam-player-inner {
        position: relative;
        overflow: hidden;
        border-radius: 12px;
        background: #000;
        min-height: 400px;
    }

    #livekit-video video {
        width: 100%;
        height: auto;
        border-radius: 12px;
        display: block;
        background: #000;
    }

    .webcam-controls {
        text-align: center;
    }
}




@media(min-width: 1440px) {
    .livestream-container .chat-sidebar .chat-sidebar-inner {
        height: calc(-8.2rem + 100vh);
    }
}

@media(max-width:992px) {
    .livestream-container {
        .player-content {
            padding: 0;
        }

        .live-content-wrapper {
            padding: 0 10px;
        }
    }
}

@media(min-width: 767px) {
    .livestream-container {
        .live-player .live-video-content-top {
            display: none;
        }

    }

    #remote-video-container {
        .vjs-fluid:not(.vjs-audio-only-mode) {
            padding-top: 56.25% !important;
            /* 16:9 aspect ratio */
            height: auto !important;
        }
    }
}

@media(max-width: 766px) {
    .livestream-container {
        .live-content.desktop {
            .live-meta {
                display: none;
            }

            .live-action {
                flex: 0 0 100%;
                display: flex;
                align-items: center;
                justify-content: space-between;

                .action-top {
                    margin-bottom: 0;
                }

                .popup-option,
                .view-count,
                .jws-share {
                    display: none;
                }
            }
        }
    }
}

@media(max-width: 767px) {
    .livestream-container {
        .live-content {
            flex-wrap: wrap;
        }

        .live-action .action-top {
            justify-content: flex-start;
        }
    }

    .webcam-player.open {
        border-radius: 0;
        width: 100%;
        height: 100%;

        .webcam-player-inner {
            flex: 1;
        }
    }
}

@media(max-width: 768px) {
    .livestream-container {
        .chat-sidebar {
            max-height: 257px;
            bottom: 0;

            .live-chat {
                .chat-messages {
                    max-height: 200px;

                    >div {
                        background: rgba(0, 0, 0, 0.2);
                        padding: 5px;
                        border-radius: 3px;
                        color: #ffffff;
                        backdrop-filter: blur(1px);

                        >img {
                            max-width: 24px;
                        }
                    }
                }
            }
        }



        .vjs-fluid:not(.vjs-audio-only-mode) {
            padding-top: initial;
            height: 80vh !important;
        }
    }
}