# Sprint 9 — UI: engagement 2-col + global contrast pass **Base**: `sprint/8-c2` (sprint 8 not yet merged on origin/main, but its `C2ConfigCard` is the right pane). **Scope**: frontend-only. No backend, no schema. No new features. --- ## Decisions (locked) 1. **Engagement page** : passer en **2 colonnes** sur desktop (`lg:grid-cols-2`), `[engagement form | C2ConfigCard]`. Mobile/tablet : stack vertical (comportement actuel). 2. **Contraste global** : le problème est que `canvas` (page bg) et `paper` (card bg) sont **tous deux `#ffffff`** en light mode. Les cartes ne ressortent que par leur hairline 1px → fatigue oculaire confirmée par l'utilisateur. 3. **Fix retenu** : **tinter le canvas light** d'un neutre froid très pâle. `paper` reste blanc pur. Les cartes "lèvent" naturellement sans casser le brutalisme. - Proposition : `canvas` light `#f3f5f8` (gris-bleu très pâle, cohérent avec l'electric blue), `paper` light `#ffffff`. - Dark mode **inchangé** (`canvas #111827` / `paper #1f2937` déjà différenciés). 4. **Pas de shadow**, pas de radius. La brutalité reste intacte — seul le contraste de surface change. 5. **Hairline** : à vérifier sur le nouveau canvas. Si nécessaire, passer `hairline` light de la valeur actuelle à un poil plus sombre pour préserver la lisibilité du bord sur tinted canvas. Mais éviter si la lecture est déjà bonne. --- ## Task A — EngagementFormPage 2-col **File** : `frontend/src/pages/EngagementFormPage.tsx` - Remplacer le wrapper `