`).join('')}
Grounded in: ${idea.cite}
`).join(''); } function openTab(btn,type){ const card=btn.closest('.idea-card'); const panels={details:card.querySelector('.details-panel'),kit:card.querySelector('.kit-panel'),code:card.querySelector('.code-panel')}; const btns={details:card.querySelector('.details-tab'),kit:card.querySelector('.kit-tab'),code:card.querySelector('.code-tab')}; const isOpen=!panels[type].hidden && btns[type].classList.contains('active-tab'); Object.values(panels).forEach(p=>p.hidden=true); Object.values(btns).forEach(b=>b.classList.remove('active-tab')); if(!isOpen){panels[type].hidden=false;btns[type].classList.add('active-tab');} } function copyPrompt(btn){ const text=btn.previousElementSibling.textContent; navigator.clipboard.writeText(text).then(()=>{ btn.textContent='Copied!';btn.classList.add('copied'); setTimeout(()=>{btn.textContent='Copy';btn.classList.remove('copied');},2000); }); } function copyCode(btn){ const text=btn.previousElementSibling.textContent; navigator.clipboard.writeText(text).then(()=>{ btn.textContent='Copied!';btn.classList.add('copied'); setTimeout(()=>{btn.textContent='Copy';btn.classList.remove('copied');},2000); }); } document.querySelectorAll('.filter-btn').forEach(btn=>{ btn.addEventListener('click',()=>{ document.querySelectorAll('.filter-btn').forEach(b=>b.classList.remove('active')); btn.classList.add('active'); const filter=btn.dataset.filter; document.querySelectorAll('.idea-card').forEach(card=>{ card.classList.toggle('hidden',filter!=='all'&&card.dataset.cat!==filter); }); }); }); renderIdeas();