document.addEventListener("DOMContentLoaded", () => { const widgets = document.querySelectorAll('.widget'); widgets.forEach(widget => { const title = widget.querySelector('.widget-title'); if (!title) return; const content = [...widget.children].filter(el => !el.classList.contains('widget-title')); // Inicialmente cerrado widget.classList.remove('open'); content.forEach(el => el.style.display = 'none'); title.style.cursor = 'pointer'; title.addEventListener('click', () => { const isOpen = widget.classList.contains('open'); // Cerrar todos widgets.forEach(w => { w.classList.remove('open'); [...w.children].forEach(el => { if (!el.classList.contains('widget-title')) { el.style.display = 'none'; } }); }); // Abrir el clicado if (!isOpen) { widget.classList.add('open'); content.forEach(el => el.style.display = 'block'); } }); }); });