File size: 1,337 Bytes
bb0deeb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
(function() {
    const menuBtn = document.getElementById('inlineMenuBtn');
    const menu = document.getElementById('inlineMenu');
    const topLink = document.getElementById('scrollTopLink');

    function closeMenu() {
        if (!menu) return;
        menu.classList.remove('open');
        menu.setAttribute('aria-hidden', 'true');
    }

    if (menuBtn && menu) {
        menuBtn.addEventListener('click', function(e) {
            e.preventDefault();
            const isOpen = menu.classList.contains('open');
            if (isOpen) {
                closeMenu();
            } else {
                menu.classList.add('open');
                menu.setAttribute('aria-hidden', 'false');
            }
        });
    }

    if (topLink) {
        topLink.addEventListener('click', function(e) {
            e.preventDefault();
            window.scrollTo({ top: 0, behavior: 'smooth' });
            closeMenu();
        });
    }

    // Close when clicking outside
    document.addEventListener('click', function(e) {
        if (!menu || !menuBtn) return;
        if (!menu.contains(e.target) && !menuBtn.contains(e.target)) {
            closeMenu();
        }
    });

    // Accessibility: close on Escape
    document.addEventListener('keydown', function(e) {
        if (e.key === 'Escape') closeMenu();
    });
})();