diff --git a/frontend/recherche.html b/frontend/recherche.html
index 9a6944b..ba9c40d 100644
--- a/frontend/recherche.html
+++ b/frontend/recherche.html
@@ -25,22 +25,6 @@
comportements de la SPA et ne sont pas rejoués ici.
Sidebar statique (navigation de l'app) : les vaults, tags et
récents dynamiques vivent dans la SPA, pas sur cette page. -->
- Thème (défaut 4) : le thème ObsiGate n'est PAS une préférence
- serveur — il vit dans localStorage, lu par la SPA au démarrage
- (frontend/js/ui.js initTheme : mode ; frontend/js/sync.js
- init() -> themes.js initThemes : clé + mode). Étape 1 ci-dessous
- (script synchrone en tête, avant les feuilles) : pose
- data-theme = mode persisté (obsigate-theme-mode, repli
- obsigate-theme historique quand il valait déjà un mode, sinon
- 'dark', le défaut SPA) pour que la première peinture soit déjà
- dans le bon mode clair/sombre. Étape 2 en fin de page (module
- différé) : initThemes() de themes.js applique la palette
- complète — 16 thèmes intégrés, modes high-contrast/sepia
- générés, thèmes personnalisés — via variables inline sur :root,
- exactement comme la SPA. data-theme="dark" sur n'est
- plus que le repli sans JS. Aucun endpoint serveur, aucune
- police externe ajoutée (la CSP stricte de /recherche et le
- repli typographique système sont inchangés).