/* Image loading animation */
.provider-image {
    background: linear-gradient(90deg, #2D3748 0%, #374151 50%, #2D3748 100%);
    background-size: 200% 100%;
    animation: loading 1.5s infinite;
}

@keyframes loading {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.image-loaded .provider-image {
    animation: none;
    background: transparent;
}

/* Filter buttons active state */
.play-btn.active {
    box-shadow: 0 0 0 2px var(--accent);
    position: relative;
}

.play-btn.active::after {
    content: '✓';
    position: absolute;
    top: -8px;
    right: -8px;
    background: var(--accent);
    color: white;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Live badge */
.live-badge {
    position: absolute;
    top: 15px;
    right: 15px;
    background: #FF0000;
    color: white;
    padding: 5px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 5px;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% { opacity: 0.8; }
    50% { opacity: 1; }
    100% { opacity: 0.8; }
}