.event-state {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: bold;
    width: fit-content;
    height: fit-content;

    .isPast {
        color: lightgray;
        text-transform: uppercase;
    }

    .isGoing { color: black; }

    .isLive { color: var(--red-alert); }

    .dot {
        height: 0.75rem;
        width: 0.75rem;
        border-radius: 50%;
        color: var(--red-alert);
        background: var(--red-alert);

        &:after {
            content: "";
            height: 0.75rem;
            width: 0.75rem;
            border-radius: 50%;
            background: var(--red-alert);
            display: block;
            animation: pulse 2s ease 0s infinite;
        }
    }
}

@keyframes pulse {
    0% {
        opacity: 1;
        transform: scale(1);
    }
    80% {
        opacity: 0;
        transform: scale(2.5);
    }
    100% {
        opacity: 0;
        transform: scale(3);
    }
}
