/**
 * Vislun Video System — diferenças visuais do modelo Vislun Ao Vivo.
 *
 * Contém somente diferenças reais em relação à base Vislun, incluindo
 * apresentação do estado/status da transmissão. Regras migradas de public.css.
 */

.vislun-video-vislun_ao_vivo .vislun-video-cover-play {
    background: #000000;
    border-radius: 7px;

    box-shadow: none !important;
}

.vislun-video-vislun_ao_vivo .vislun-video-cover-play span {
    border-left-color: #ffffff;
}

.vislun-video-vislun_ao_vivo .vislun-video-cover:hover .vislun-video-cover-play {
    background: #000000;

    box-shadow: none !important;
}

.vislun-video-vislun_ao_vivo .vislun-video-cover-shade {
    background: rgba(0, 0, 0, 0.24);
}

.vislun-video-vislun_ao_vivo .vislun-video-cover:hover .vislun-video-cover-shade {
    background: rgba(0, 0, 0, 0.24);
}

.vislun-video-live-status {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;

    width: 100%;
    box-sizing: border-box;

    margin-top: 0;
    padding: 9px 12px;

    background: #000000;

    font-size: 12px;
    line-height: 1.3;
    font-weight: 600;
    letter-spacing: 0.02em;

    color: #ffffff;
}

.vislun-video-live-dot {
    display: inline-block;

    width: 8px;
    height: 8px;

    border-radius: 999px;

    background: #999999;
}

.vislun-video-live-status-aguardando .vislun-video-live-dot {
    background: #b8b8b8;
}

.vislun-video-live-status-pronta .vislun-video-live-dot {
    background: #1f9d55;
}

.vislun-video-live-status-no_ar .vislun-video-live-dot {
    background: #c70000;
    animation: vislun-live-pulse 1.4s ease-in-out infinite;
}

.vislun-video-live-status-encerrada .vislun-video-live-dot {
    background: #5f5f5f;
}

@keyframes vislun-live-pulse {
    0% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.45;
        transform: scale(1.28);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

