// menu.jsx — Dropdown menu panel that drops down from the centered nav pill.
// The page's top-chrome pill sits at the top of the panel; this component
// only renders the panel body below.

function MenuDrawer({ open, onClose }) {
  const { useEffect } = React;

  // Close on Esc
  useEffect(() => {
    if (!open) return;
    const handleKey = (e) => { if (e.key === 'Escape') onClose(); };
    window.addEventListener('keydown', handleKey);
    return () => window.removeEventListener('keydown', handleKey);
  }, [open, onClose]);

  // Track menu state on body so styles can react
  useEffect(() => {
    document.body.dataset.menuOpen = open ? 'true' : 'false';
  }, [open]);

  return (
    <>
      {/* Invisible click-catcher so clicking outside closes the menu. */}
      <div
        className={'menu-overlay' + (open ? ' open' : '')}
        onClick={onClose}
        aria-hidden={!open}
      ></div>

      <aside
        className={'menu-drawer' + (open ? ' open' : '')}
        aria-hidden={!open}
        aria-label="Site navigation"
      >
        <div className="menu-section">
          <p className="menu-section-label">Menu</p>
          <div className="menu-primary">
            <a href="/how-it-works">How it works</a>
            <a href="/system">The system</a>
            <a href="/launch-a-church">Launch a church</a>
            <a href="/case-studies">Case studies</a>
            <a href="/about">About</a>
          </div>
        </div>

        <div className="menu-divider"></div>

        <div className="menu-section">
          <p className="menu-section-label">Other</p>
          <div className="menu-secondary">
            <a href="/privacy">Privacy policy</a>
            <a href="/terms">Terms of service</a>
            <a href="/accessibility">Accessibility</a>
          </div>
        </div>

        <div className="menu-section">
          <p className="menu-section-label">Social</p>
          <div className="menu-secondary">
            <a href="https://instagram.com">Instagram</a>
            <a href="https://linkedin.com">LinkedIn</a>
            <a href="https://youtube.com">YouTube</a>
          </div>
        </div>

        <div className="menu-footer">
          <a className="menu-contact" href="/contact">hello@arkwright.systems</a>
          <span>BUILT FOR THE LONG SUNDAY · v1.0</span>
        </div>
      </aside>
    </>
  );
}

Object.assign(window, { MenuDrawer });
