// SubscribeModal.jsx — Overlay modal wrapping the Subscribe form
var SubscribeModal = function (props) {
  var open = props.open;
  var onClose = props.onClose;

  React.useEffect(function () {
    if (!open) return;
    function handleKey(e) {
      if (e.key === 'Escape') onClose();
    }
    document.addEventListener('keydown', handleKey);
    return function () { document.removeEventListener('keydown', handleKey); };
  }, [open, onClose]);

  if (!open) return null;

  return ReactDOM.createPortal(
    React.createElement('div', {
      className: 'ib-subscribe-backdrop',
      onClick: function (e) {
        if (e.target === e.currentTarget) onClose();
      },
    },
      React.createElement('div', { className: 'ib-subscribe-modal' },
        React.createElement('button', {
          type: 'button',
          className: 'ib-subscribe-close',
          onClick: onClose,
          'aria-label': 'Close',
        }, '✕'),
        React.createElement(window.Subscribe, null)
      )
    ),
    document.getElementById('overlays')
  );
};

window.SubscribeModal = SubscribeModal;
