{{-- Pont iframe -> page parente (lot B). Inclus uniquement quand le formulaire est affiché dans le popup (?modal=1). Intercepte la soumission du formulaire principal, la poste en AJAX (Accept JSON), puis relaie le résultat au listing parent via postMessage — sans navigation. IMPORTANT — ordre des handlers : backend.js (validation HTML5 .needs-validation) et payment-validation.js attachent leurs handlers SUR LE FORMULAIRE et peuvent appeler stopPropagation() quand le formulaire est invalide. Un listener sur `document` ne serait alors jamais atteint (d'où le bug "rien ne se passe" quand un champ requis masqué est invalide). On attache donc le pont DIRECTEMENT sur le