document.addEventListener('DOMContentLoaded', () => { // Select all
 elements that contain code blocks
    const preBlocks = document.querySelectorAll('pre');

    const copyIcon = '';
    const checkIcon = '';

    preBlocks.forEach((pre) => {
        // Create the copy button
        const button = document.createElement('button');
        button.innerHTML = copyIcon;
        button.className = 'copy-code-btn';
        button.setAttribute('aria-label', 'Copy code');
        button.setAttribute('title', 'Copy code');

        // Add the button to the 
 block
        // Assuming pre is position relative in CSS
        pre.appendChild(button);

        button.addEventListener('click', async () => {
            // Find the  element within the 
            const code = pre.querySelector('code');
            if (!code) return;

            // Get the text content, removing any leading/trailing whitespace
            const text = code.innerText;

            try {
                // Wait for the clipboard API
                await navigator.clipboard.writeText(text);

                // Add visual feedback
                button.innerHTML = checkIcon;
                button.classList.add('copied');
                button.setAttribute('aria-label', 'Copied');
                button.setAttribute('title', 'Copied!');

                // Revert back after 2 seconds
                setTimeout(() => {
                    button.innerHTML = copyIcon;
                    button.classList.remove('copied');
                    button.setAttribute('aria-label', 'Copy code');
                    button.setAttribute('title', 'Copy code');
                }, 2000);
            } catch (err) {
                console.error('Failed to copy code: ', err);
            }
        });
    });
});