class CustomNavbar extends HTMLElement { connectedCallback() { this.attachShadow({ mode: 'open' }); this.shadowRoot.innerHTML = ` `; // Mobile menu toggle const mobileMenuButton = this.shadowRoot.getElementById('mobileMenuButton'); const mobileMenu = this.shadowRoot.getElementById('mobileMenu'); mobileMenuButton.addEventListener('click', () => { mobileMenu.classList.toggle('hidden'); const icon = mobileMenuButton.querySelector('i'); if (mobileMenu.classList.contains('hidden')) { icon.setAttribute('data-feather', 'menu'); } else { icon.setAttribute('data-feather', 'x'); } feather.replace(); }); } } customElements.define('custom-navbar', CustomNavbar);