body:has(> main.container) {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-color: #f8f9fa;
}

main.container {
    flex: 1;
}

.episode-card {
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.episode-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.spin {
    display: inline-block;
    animation: spin 1s linear infinite;
}

audio {
    border-radius: 8px;
}

.card-header[role="button"] {
    cursor: pointer;
}

.card-header[role="button"]:hover {
    background-color: #e9ecef;
}
