document.addEventListener('DOMContentLoaded', function() { const navLinks = document.querySelectorAll('.sidebar nav a'); navLinks.forEach(link => { link.addEventListener('click', function(e) { e.preventDefault(); document.querySelector(this.getAttribute('href')).scrollIntoView({ behavior: 'smooth' }); navLinks.forEach(nav => nav.classList.remove('active')); this.classList.add('active'); }); }); // Set active link on scroll const sections = document.querySelectorAll('section'); window.addEventListener('scroll', () => { let current = ''; sections.forEach(section => { const sectionTop = section.offsetTop; if (pageYOffset >= sectionTop - 60) { current = section.getAttribute('id'); } }); navLinks.forEach(link => { link.classList.remove('active'); if (link.getAttribute('href').includes(current)) { link.classList.add('active'); } }); }); });