

@keyframes glow {
    0% {
        filter: brightness(1);
    }
    50% {
        filter: brightness(1.5);
    }
    100% {
        filter: brightness(1);
    }
}

@keyframes tvOn {
    0% {
        transform: scale(0.1);
        filter: brightness(0) blur(10px);
    }
    60% {
        transform: scale(1.05);
        filter: brightness(2) blur(5px);
    }
    80% {
        transform: scale(0.95);
        filter: brightness(1.5) blur(2px);
    }
    100% {
        transform: scale(1);
        filter: brightness(1) blur(0);
    }
}

@keyframes fadeIn {
    from {
        background: rgba(0,0,0,0);
    }
    to {
        background: rgba(0,0,0,0.85);
    }
}

@keyframes dissolve {
    0% {
        opacity: 1;
        transform: scale(1);
        filter: blur(0);
    }
    20% {
        opacity: 0.8;
        transform: scale(1.02) skewX(2deg);
        filter: blur(1px);
    }
    40% {
        opacity: 0.6;
        transform: scale(0.98) skewX(-1deg);
        filter: blur(2px);
    }
    60% {
        opacity: 0.4;
        transform: scale(1.01);
        filter: blur(3px) hue-rotate(90deg);
    }
    80% {
        opacity: 0.2;
        transform: scale(0.99) skewX(1deg);
        filter: blur(4px) hue-rotate(180deg);
    }
    100% {
        opacity: 0;
        transform: scale(0.97);
        filter: blur(5px) hue-rotate(360deg);
        display: none;
    }
}

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    50% {
        transform: scale(1.1);
        opacity: 0.5;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes float {
    0% {
        transform: translate(-50%, -40%);
    }
    100% {
        transform: translate(-50%, -50%);
    }
}

.dissolve-out {
    animation: dissolve 0.5s forwards;
    position: relative;
    overflow: hidden;
}

.dissolve-in {
    animation: dissolve 0.5s reverse forwards;
    position: relative;
    overflow: hidden;
}

@keyframes scanlines {
    from {
        background-position: 0 0;
    }
    to {
        background-position: 0 4px;
    }
}

@keyframes strobeBackground {
    0% { background-color: #573641; }
    50% { background-color: #572f2f; }
    100% { background-color: #573641; }
}