document.addEventListener('DOMContentLoaded', function() {
    // Initialize confetti effect on page load
    initConfetti();
    
    // Add confetti effect to welcome section button click
    const welcomeButton = document.querySelector('.welcome-button');
    if (welcomeButton) {
        welcomeButton.addEventListener('click', function() {
            createConfetti();
        });
    }
    
    // Add confetti effect to any button with data-confetti attribute
    document.querySelectorAll('[data-confetti]').forEach(button => {
        button.addEventListener('click', function() {
            createConfetti();
        });
    });
});

function initConfetti() {
    // Create a splash confetti effect when the page loads
    setTimeout(() => {
        createConfetti();
    }, 500);
}

function createConfetti() {
    const confettiCount = 150;
    const colors = ['#ff6b6b', '#4ecdc4', '#45b7d1', '#96ceb4', '#feca57', '#ff9ff3', '#54a0ff'];
    
    for (let i = 0; i < confettiCount; i++) {
        const confetti = document.createElement('div');
        confetti.style.position = 'fixed';
        confetti.style.width = Math.random() * 10 + 5 + 'px';
        confetti.style.height = Math.random() * 10 + 5 + 'px';
        confetti.style.backgroundColor = colors[Math.floor(Math.random() * colors.length)];
        confetti.style.borderRadius = '50%';
        confetti.style.zIndex = '9999';
        confetti.style.left = Math.random() * 100 + 'vw';
        confetti.style.top = '-10px';
        
        document.body.appendChild(confetti);
        
        // Animate confetti falling
        const animationDuration = Math.random() * 3 + 2;
        const targetX = (Math.random() - 0.5) * 100;
        
        confetti.animate([
            { transform: 'translate(0, 0) rotate(0deg)', opacity: 1 },
            { transform: `translate(${targetX}vw, 100vh) rotate(${Math.random() * 360}deg)`, opacity: 0 }
        ], {
            duration: animationDuration * 1000,
            easing: 'cubic-bezier(0.1, 0.8, 0.2, 1)'
        });
        
        // Remove confetti after animation
        setTimeout(() => {
            confetti.remove();
        }, animationDuration * 1000);
    }
}
