document.addEventListener('DOMContentLoaded', function() { console.log('Twitch Dashboard Ready'); const searchBar = document.getElementById('search-bar'); if (searchBar) { searchBar.addEventListener('keyup', function(e) { const term = e.target.value.toLowerCase(); // Filter Top Games const gameCards = document.querySelectorAll('.game-card'); gameCards.forEach(card => { const title = card.querySelector('.card-title').textContent.toLowerCase(); const tags = Array.from(card.querySelectorAll('.badge-genre')).map(tag => tag.textContent.toLowerCase()); if (title.includes(term) || tags.some(tag => tag.includes(term))) { card.parentElement.style.display = ''; } else { card.parentElement.style.display = 'none'; } }); // Filter Live Channels const channelCards = document.querySelectorAll('.channel-card'); channelCards.forEach(card => { const name = card.querySelector('.card-title').textContent.toLowerCase(); const game = card.querySelector('.card-text.small').textContent.toLowerCase(); const title = card.querySelector('.card-text.text-white-50').textContent.toLowerCase(); const tags = Array.from(card.querySelectorAll('.badge-genre')).map(tag => tag.textContent.toLowerCase()); if (name.includes(term) || game.includes(term) || title.includes(term) || tags.some(tag => tag.includes(term))) { card.parentElement.style.display = ''; } else { card.parentElement.style.display = 'none'; } }); }); } });