{"id":4986,"date":"2026-07-03T10:19:25","date_gmt":"2026-07-03T10:19:25","guid":{"rendered":"https:\/\/aiper.com\/blogs\/assistant-diagnostic-eau-piscine\/"},"modified":"2026-10-21T09:13:49","modified_gmt":"2026-10-21T09:13:49","slug":"assistant-diagnostic-eau-piscine","status":"publish","type":"page","link":"https:\/\/aiper.com\/blogs\/fr\/assistant-diagnostic-eau-piscine\/","title":{"rendered":"Assistant de diagnostic d&#8217;eau de piscine \u2013 Eau verte ou trouble"},"content":{"rendered":"\n<style>\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   Pool Water Troubleshooting Wizard \u2014 Brand: #1ecad3 + #9486f7 blended\n   v2: LABELS-driven for i18n. All UI strings injected via {\"steps\": {\"1\": \"Couleur\", \"2\": \"Texture\", \"3\": \"Chimie\", \"4\": \"Diagnostic\"}, \"colorQ\": \"A quoi ressemble l'eau de votre piscine ?\", \"colorHint\": \"Choisissez la correspondance la plus proche pour identifier la cause.\", \"colorKeys\": [\"green\", \"cloudy\", \"yellow\", \"clear\", \"brown\", \"black\"], \"colors\": {\"green\": {\"line1\": \"Verte\", \"line2\": \"(toutes nuances)\"}, \"cloudy\": {\"line1\": \"Trouble \/\", \"line2\": \"Blanc laiteux\"}, \"yellow\": {\"line1\": \"Jaune \/\", \"line2\": \"Teinte moutarde\"}, \"clear\": {\"line1\": \"Claire mais\", \"line2\": \"odeur \/ irritation\"}, \"brown\": {\"line1\": \"Marron \/\", \"line2\": \"Couleur thee\"}, \"black\": {\"line1\": \"Taches noires\", \"line2\": \"sur parois\/fond\"}}, \"textureQ\": \"Touchez la paroi de la piscine. Quelle sensation ?\", \"textureHint\": \"La texture revele le type d'algues ou de depots presents.\", \"textureKeys\": [\"slimy\", \"rough\", \"smooth\"], \"textures\": {\"slimy\": \"Visqueuse \/ Glissante\", \"rough\": \"Rugueuse \/ Sableuse\", \"smooth\": \"Lisse \/ Normale\"}, \"chemQ\": \"Quels sont vos derniers resultats d'analyse ?\", \"chemHint\": \"Des valeurs precises permettent un diagnostic fiable. Estimez si vous n'etes pas sur.\", \"cyaLabel\": \"Taux de CYA (Acide Cyanurique \/ Stabilisant)\", \"phLabel\": \"Taux de pH\", \"cyaKeys\": [\"\", \"low\", \"normal\", \"elevated\", \"high\", \"unknown\"], \"cyaOptions\": {\"\": \"-- Selectionner --\", \"low\": \"Inferieur a 30 ppm (bas)\", \"normal\": \"30 a 50 ppm (plage ideale)\", \"elevated\": \"50 a 80 ppm (eleve)\", \"high\": \"Superieur a 80 ppm (trop eleve)\", \"unknown\": \"Je ne connais pas mon taux de CYA\"}, \"phKeys\": [\"\", \"low\", \"normal\", \"high\", \"unknown\"], \"phOptions\": {\"\": \"-- Selectionner --\", \"low\": \"Inferieur a 7,2 (trop bas)\", \"normal\": \"7,2 a 7,6 (plage ideale)\", \"high\": \"Superieur a 7,6 (trop eleve)\", \"unknown\": \"Je ne connais pas mon taux de pH\"}, \"btnNext\": \"Suivant\", \"btnBack\": \"Retour\", \"btnDiagnose\": \"Diagnostiquer ma piscine\", \"btnRestart\": \"Diagnostiquer un autre probleme\", \"stepLabel\": \"Etape\", \"ctaText\": \"<strong>Reduisez le brossage manuel :<\/strong> Un robot de piscine nettoie automatiquement les parois, le fond et la ligne d'eau \u2014 empechant les algues de s'installer entre les traitements.\", \"ctaLink\": \"Decouvrir les robots Aiper\", \"toolLinks\": {\"chlorine\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-chlorine-calculator\/\", \"label\": \"calculateur de chlore\"}, \"volume\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-volume-calculator\/\", \"label\": \"calculateur de volume\"}, \"ph\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-ph-calculator\/\", \"label\": \"calculateur de pH\"}, \"shock\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-shock-calculator\/\", \"label\": \"calculateur de choc\"}, \"turnover\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-turnover-rate-calculator\/\", \"label\": \"calculateur de renouvellement\"}, \"chemical\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-chemical-calculator\/\", \"label\": \"calculateur chimique\"}}, \"diagnoses\": {\"green_algae\": {\"cssClass\": \"diag-algae\", \"title\": \"Proliferation d'algues vertes\", \"summary\": \"Votre piscine a une infestation active d'algues vertes, generalement causee par un faible taux de chlore libre permettant aux spores d'algues de s'installer.\", \"steps\": [{\"title\": \"Brosser et faire circuler\", \"body\": \"Brossez vigoureusement toutes les surfaces de la piscine \u2014 parois, fond, marches et derriere les echelles. Faites fonctionner la pompe <strong>24h\/24 et 7j\/7<\/strong> jusqu'a ce que l'eau s'eclaircisse. Les algues adherent aux surfaces ; le brossage les detache pour que le chlore puisse les attaquer.\"}, {\"title\": \"Chlorage choc au niveau SLAM\", \"body\": \"En fonction de votre taux de CYA, elevez le chlore libre au <strong>niveau SLAM<\/strong> (40% du CYA). Par exemple, CYA 40 signifie un FC cible de 16 ppm. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-chlorine-calculator\/\\\">calculateur de chlore<\/a> pour un dosage precis. Utilisez du chlore liquide pour des resultats plus rapides.\"}, {\"title\": \"Filtrer, laver et verifier\", \"body\": \"Lavez le filtre a contre-courant ou nettoyez-le quotidiennement. Faites fonctionner la pompe en continu jusqu'a ce que l'eau soit cristalline <strong>ET<\/strong> que la perte de FC nocturne soit inferieure a 1 ppm. Cela prend generalement 3 a 7 jours.\"}], \"note\": \"<strong>Conseil de prevention :<\/strong> Maintenez le FC a 7,5% du CYA en permanence. Ne laissez jamais le FC descendre sous ce seuil \u2014 les spores d'algues sont toujours presentes et attendent une baisse de chlore.\", \"tools\": [\"chlorine\", \"volume\"]}, \"black_algae\": {\"cssClass\": \"diag-algae\", \"title\": \"Algues noires\", \"summary\": \"Les algues noires sont les plus tenaces a eliminer. Elles forment une couche cireuse protectrice et s'enracinent dans le crepi ou les joints. Un brossage cible et une chloration agressive sont obligatoires.\", \"steps\": [{\"title\": \"Briser la couche protectrice\", \"body\": \"Utilisez une <strong>brosse en acier inoxydable<\/strong> (pas en nylon) pour frotter vigoureusement chaque tache noire. Vous devez percer la couche cireuse. Pour les liners en vinyle, utilisez une brosse en nylon avec une pression supplementaire \u2014 PAS de brosse metallique sur le vinyle.\"}, {\"title\": \"Traiter localement au chlore granule\", \"body\": \"Arretez la pompe. Saupoudrez <strong>du chlore choc cal-hypo directement sur les taches noires<\/strong> et laissez agir 15 a 30 minutes. Vous pouvez aussi utiliser un algicide a base de cuivre specialement concu pour les algues noires. Puis rallumez la pompe.\"}, {\"title\": \"Maintenir un chlore eleve et surveiller\", \"body\": \"Maintenez le FC a <strong>20% du CYA pendant 1 a 2 semaines<\/strong> apres la disparition des taches. Brossez les taches quotidiennement. Les algues noires s'enracinent profondement \u2014 arreter trop tot garantit une rechute. Remplacez le media filtrant affecte apres le traitement.\"}], \"note\": \"<strong>Critique :<\/strong> Les algues noires peuvent survivre dans le media filtrant, les brosses et les tetes d'aspirateur. Desinfectez TOUT le materiel avec une solution d'eau de Javel apres le traitement, sinon vous les reintroduirez.\", \"tools\": [\"chlorine\", \"volume\"]}, \"chlorine_lock\": {\"cssClass\": \"diag-lock\", \"title\": \"Blocage du chlore (sur-stabilisation par le CYA)\", \"summary\": \"Votre CYA est si eleve que les molecules de chlore sont trop liees pour etre efficaces. Meme si vous ajoutez du chlore, il ne peut pas desinfecter l'eau \u2014 les algues et les bacteries proliferent malgre des lectures de FC normales.\", \"steps\": [{\"title\": \"Vidange partielle et remplissage\", \"body\": \"Pour baisser le CYA, vous devez diluer l'eau. <strong>Vidangez et remplacez 25 a 50% de l'eau de votre piscine<\/strong> par de l'eau fraiche. Le pourcentage exact : si le CYA est a 100 et que vous voulez 40, vidangez 60%. Testez le CYA apres remplissage pour confirmer que le nouveau taux est sous 50 ppm.\"}, {\"title\": \"Super-choc apres remplissage\", \"body\": \"Une fois le CYA dans la plage cible, faites un choc a <strong>30+ ppm de FC<\/strong> pour eliminer les algues ou bacteries qui se sont installees pendant la periode de blocage. Faites fonctionner la pompe en continu pendant 48 heures et retestez.\"}, {\"title\": \"Changer de source de chlore\", \"body\": \"A l'avenir, utilisez UNIQUEMENT du <strong>chlore non stabilise<\/strong> (chlore liquide \/ hypochlorite de sodium). Evitez les galets de trichlore et le dichlore granule \u2014 ils ajoutent continuellement du CYA. Testez le CYA chaque mois pour vous assurer qu'il reste sous 50 ppm.\"}], \"note\": \"<strong>Pourquoi est-ce arrive ?<\/strong> Les galets de trichlore et le choc au dichlore ajoutent tous deux du CYA a chaque dose. Au fil des mois, le CYA augmente silencieusement. La seule facon d'eliminer le CYA est la dilution \u2014 aucun produit chimique ne le decompose.\", \"tools\": [\"chlorine\", \"volume\"]}, \"mustard_algae\": {\"cssClass\": \"diag-algae\", \"title\": \"Algues moutarde (algues jaunes)\", \"summary\": \"Les algues moutarde sont resistantes au chlore et connues pour leur reinfection. Elles apparaissent comme une poussiere jaune ou moutarde, souvent dans les zones ombragees, et se propagent facilement via les maillots de bain, les jouets et le materiel de nettoyage.\", \"steps\": [{\"title\": \"Brossage energique et nettoyage du materiel\", \"body\": \"Brossez soigneusement toutes les surfaces. Retirez et <strong>faites tremper tout le materiel de piscine, les jouets, les flotteurs et les maillots de bain dans une solution d'eau de Javel<\/strong> (dilution 1:10) pendant 30 minutes. Les algues moutarde s'accrochent a tout ce qui touche l'eau.\"}, {\"title\": \"Choc au niveau algues moutarde\", \"body\": \"Elevez le FC a <strong>60% du CYA<\/strong> (l'objectif SLAM pour les algues moutarde). Exemple : CYA 40 signifie un FC cible de 24 ppm. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-shock-calculator\/\\\">calculateur de choc<\/a> pour la dose exacte. Brossez 3 fois par jour pendant le traitement.\"}, {\"title\": \"Maintenir un FC eleve pendant 72 heures\", \"body\": \"Maintenez le FC au niveau algues moutarde pendant <strong>au moins 72 heures apres l'eclaircissement de l'eau<\/strong>. Cela garantit l'eradication des spores resistantes au chlore. Ramenez ensuite le FC au niveau d'entretien normal (7,5% du CYA).\"}], \"note\": \"<strong>Risque de reinfection :<\/strong> Les spores d'algues moutarde peuvent survivre sur les couvertures de piscine, les echelles et les plongeoirs. Essuyez tout ce qui surplombe l'eau avec une solution d'eau de Javel, y compris le dessous de la couverture.\", \"tools\": [\"shock\", \"volume\"]}, \"calcium_clouding\": {\"cssClass\": \"diag-cloudy\", \"title\": \"Precipitation calcaire (trouble lie au pH eleve)\", \"summary\": \"Un pH eleve a provoque la precipitation du calcium dissous, creant un voile blanc laiteux. C'est un probleme de chimie de l'eau, pas un probleme d'algues ou de filtration.\", \"steps\": [{\"title\": \"Baisser le pH immediatement\", \"body\": \"Ajoutez <strong>de l'acide muriatique ou de l'acide sec (reducteur de pH)<\/strong> pour ramener le pH entre 7,0 et 7,2. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-ph-calculator\/\\\">calculateur de pH<\/a> pour un dosage precis. Ajoutez l'acide par petites quantites, en attendant 4 heures entre chaque ajout.\"}, {\"title\": \"Tester la durete calcique\", \"body\": \"Testez votre durete calcique (CH). Si la CH est au-dessus de <strong>400 ppm<\/strong>, le trouble reapparaitra des que le pH remontera. La CH ideale est de 200 a 400 ppm pour les piscines en crepi et de 150 a 250 ppm pour le vinyle\/fibre de verre.\"}, {\"title\": \"Diluer ou utiliser un anti-tartre\", \"body\": \"Si la CH depasse 400 ppm, <strong>vidangez partiellement et remplissez<\/strong> avec de l'eau fraiche (moins calcaire). Si la CH est limite, ajoutez un <strong>anti-tartre \/ sequestrant<\/strong> pour maintenir le calcium dissous. Maintenez le pH entre 7,4 et 7,6 a l'avenir.\"}], \"note\": \"<strong>Cause racine :<\/strong> Le calcium precipite lorsque le pH depasse environ 7,8 (le seuil exact depend de la temperature et de l'alcalinite totale). Les piscines chauffees et les generateurs de chlore au sel (qui augmentent constamment le pH) sont particulierement sujets a ce phenomene.\", \"tools\": [\"ph\", \"volume\"]}, \"dead_algae_filter\": {\"cssClass\": \"diag-filter\", \"title\": \"Algues mortes \/ Probleme de filtration\", \"summary\": \"De fines particules \u2014 probablement des algues mortes tuees par un traitement choc precedent \u2014 sont en suspension dans l'eau parce que votre filtre ne les capture pas efficacement. La chimie est probablement equilibree, mais l'eau reste trouble.\", \"steps\": [{\"title\": \"Nettoyer le filtre en profondeur\", \"body\": \"Filtre a sable : <strong>lavez abondamment a contre-courant<\/strong> jusqu'a ce que le voyant soit clair, puis rincez 30 secondes. Filtre a cartouche : retirez et <strong>nettoyez chaque pli au jet d'eau<\/strong>, puis faites tremper une nuit dans un nettoyant pour filtre. Filtre a DE : lavez a contre-courant et <strong>rechargez en poudre DE fraiche<\/strong>.\"}, {\"title\": \"Ajouter un clarifiant ou un floculant\", \"body\": \"Si l'eau reste trouble apres le nettoyage du filtre, ajoutez un <strong>clarifiant pour piscine<\/strong> (qui coagule les particules fines pour que le filtre puisse les capturer). Dans les cas extremes, utilisez un <strong>floculant<\/strong> \u2014 laissez les particules se deposer pendant la nuit, puis <strong>aspirez vers L'EGOUT<\/strong> (en contournant le filtre).\"}, {\"title\": \"Verifier le debit et la duree de fonctionnement\", \"body\": \"Verifiez que votre pompe fonctionne assez longtemps pour assurer au moins <strong>2 renouvellements complets par jour<\/strong>. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-turnover-rate-calculator\/\\\">calculateur de renouvellement<\/a>. Verifiez aussi les paniers de skimmer obstrues, le prefiltre de pompe sale ou une turbine bloquee.\"}], \"note\": \"<strong>Verification rapide :<\/strong> Eclairez l'eau avec une lampe torche la nuit. Si vous voyez des millions de minuscules particules flotter (pas nager), c'est de la matiere morte qui necessite une elimination mecanique \u2014 plus de produits chimiques n'y changeront rien.\", \"tools\": [\"turnover\", \"volume\"]}, \"bacterial_bloom\": {\"cssClass\": \"diag-cloudy\", \"title\": \"Proliferation bacterienne (desinfectant insuffisant)\", \"summary\": \"Une proliferation bacterienne se produit lorsque le niveau de desinfectant est trop bas, permettant aux bacteries de se multiplier rapidement. L'eau semble terne ou legerement trouble, souvent avec une odeur subtile. Cela peut arriver du jour au lendemain, surtout apres une utilisation intensive ou la pluie.\", \"steps\": [{\"title\": \"Choc au point de rupture\", \"body\": \"Elevez le FC a <strong>10 fois le niveau de chlore combine (CC)<\/strong> \u2014 c'est ce qu'on appelle la chloration au point de rupture. Si vous ne connaissez pas le CC, faites un choc a 30 ppm par defaut. Utilisez du chlore liquide pour une action plus rapide. Faites fonctionner la pompe 24h\/24 et 7j\/7.\"}, {\"title\": \"Oxyder et faire circuler\", \"body\": \"Maintenez un FC eleve pendant <strong>24 a 48 heures<\/strong>. L'eau devrait commencer a s'eclaircir dans les 12 heures. Si vous utilisez un choc sans chlore (MPS), notez qu'il oxyde mais ne DESINFECTE PAS \u2014 associez-le a du chlore.\"}, {\"title\": \"Retester et stabiliser\", \"body\": \"Apres 48 heures, testez FC, CC et CYA. Le CC doit etre <strong>inferieur a 0,5 ppm<\/strong> et le FC au niveau d'entretien normal (7,5% du CYA). Si le CC est encore eleve, repetez le choc. Ne reprenez le programme normal de la pompe que lorsque l'eau est cristalline.\"}], \"note\": \"<strong>Prevention :<\/strong> Une proliferation bacterienne precede souvent une proliferation d'algues. Si vous l'avez detectee au stade terne\/trouble, vous avez peut-etre evite un episode d'eau verte. Testez le FC 2 a 3 fois par semaine pendant la saison de baignade.\", \"tools\": [\"turnover\", \"volume\"]}, \"chloramines\": {\"cssClass\": \"diag-chem\", \"title\": \"Chloramines (accumulation de chlore combine)\", \"summary\": \"L'odeur de chlore n'est pas du chlore \u2014 ce sont des chloramines, formees lorsque le chlore se lie a l'ammoniac de la sueur, de l'urine et des huiles corporelles. Des chloramines elevees signifient que votre chlore libre est consomme plus vite qu'il n'est renouvele.\", \"steps\": [{\"title\": \"Tester FC et TC pour trouver le CC\", \"body\": \"Testez le Chlore Libre (FC) et le Chlore Total (TC). <strong>Chlore Combine (CC) = TC moins FC<\/strong>. Tout CC au-dessus de 0,5 ppm indique des chloramines a oxyder. Plus le CC est eleve, plus l'odeur est forte.\"}, {\"title\": \"Choc au point de rupture\", \"body\": \"Ajoutez du chlore pour atteindre <strong>10 fois la valeur du CC<\/strong> (point de rupture). Exemple : CC = 2 ppm signifie ajouter assez de chlore pour augmenter le FC de 20 ppm. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-shock-calculator\/\\\">calculateur de choc<\/a>. Utilisez du chlore non stabilise (liquide).\"}, {\"title\": \"Verifier que le CC passe sous 0,5 ppm\", \"body\": \"Faites fonctionner la pompe en continu. Retestez apres 8 a 12 heures. <strong>Le CC doit passer sous 0,5 ppm<\/strong>. Si ce n'est pas le cas, continuez le choc. Les chloramines sont totalement oxydees lorsque vous ne sentez plus d'odeur de chlore et que l'eau est douce, non irritante.\"}], \"note\": \"<strong>Le saviez-vous ?<\/strong> Une piscine bien entretenue ne devrait avoir pratiquement AUCUNE odeur de chlore. Cette odeur acre est la signature des chloramines. Quand quelqu'un dit que le chlore est trop fort, ce qu'il veut vraiment dire, c'est que les chloramines sont trop elevees \u2014 la solution est plus de chlore (pour les oxyder), pas moins.\", \"tools\": [\"shock\", \"volume\"]}, \"metals\": {\"cssClass\": \"diag-metals\", \"title\": \"Contamination metallique (Fer \/ Cuivre \/ Manganese)\", \"summary\": \"Des metaux dissous dans votre eau \u2014 le plus souvent du fer provenant de l'eau de puits ou du cuivre provenant de la corrosion des echangeurs thermiques \u2014 s'oxydent et provoquent une decoloration. La couleur brune\/thee est un signe revelateur.\", \"steps\": [{\"title\": \"Tester les metaux\", \"body\": \"Apportez un echantillon d'eau a un magasin de piscine pour un <strong>test de metaux<\/strong> (fer, cuivre, manganese). Les kits de test domestiques detectent rarement les metaux a faible concentration. Le fer au-dessus de 0,3 ppm, le cuivre au-dessus de 0,2 ppm ou le manganese au-dessus de 0,05 ppm peuvent provoquer des colorations et taches visibles.\"}, {\"title\": \"Ajouter un sequestrant pour metaux\", \"body\": \"Ajoutez un <strong>sequestrant \/ anti-taches pour metaux<\/strong> en suivant le dosage indique selon le volume de votre piscine. Les sequestrants se lient aux metaux dissous et les maintiennent en solution pour qu'ils puissent etre filtres. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-volume-calculator\/\\\">calculateur de volume<\/a> si vous n'etes pas sur de la taille de votre piscine.\"}, {\"title\": \"Identifier et corriger la source\", \"body\": \"Si vous remplissez a partir d'un puits, installez un <strong>prefiltre sur la conduite de remplissage<\/strong>. Si vous avez un chauffe-eau a gaz, inspectez l'echangeur thermique pour la corrosion (cuivre). Verifiez les composants rouilles de la piscine (fer). Sans corriger la source, les metaux reviendront a chaque remplissage.\"}], \"note\": \"<strong>Attention :<\/strong> NE PAS faire de choc au chlore tant que des metaux sont presents \u2014 le chlore oxyde le fer et le cuivre dissous, les transformant en taches visibles bien plus difficiles a eliminer. TOUJOURS sequestrer les metaux d'ABORD, puis ajuster la chimie.\", \"tools\": [\"volume\", \"chemical\"]}, \"low_fc_early_algae\": {\"cssClass\": \"diag-algae\", \"title\": \"Chlore libre bas \/ Debut de proliferation d'algues\", \"summary\": \"Votre chlore est trop bas et les algues commencent a s'installer \u2014 mais vous les avez detectees tot, avant une proliferation complete. La teinte verte avec des parois lisses signifie que les algues sont en suspension dans l'eau mais n'ont pas encore adhere aux surfaces.\", \"steps\": [{\"title\": \"Tester votre panel chimique complet\", \"body\": \"Obtenez des lectures precises pour <strong>FC, CC, CYA, pH et TA<\/strong>. Vous avez besoin des cinq pour calculer l'objectif SLAM correct. Le ratio FC\/CYA determine la quantite de chlore dont vous avez reellement besoin \u2014 ignorez la regle obsolete des 1 a 3 ppm.\"}, {\"title\": \"Amener le FC au niveau SLAM immediatement\", \"body\": \"Objectif SLAM FC = <strong>40% de votre taux de CYA<\/strong>. (CYA 30 signifie FC 12 ppm ; CYA 50 signifie FC 20 ppm). Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-chlorine-calculator\/\\\">calculateur de chlore<\/a> pour votre dose exacte. Ajoutez le chlore liquide au crepuscule.\"}, {\"title\": \"Maintenir jusqu'a ce que la perte nocturne de FC soit inferieure a 1 ppm\", \"body\": \"Testez le FC au coucher du soleil et de nouveau au lever du soleil (avant que les UV n'agissent). Si la perte nocturne est <strong>inferieure a 1 ppm<\/strong>, les algues sont mortes. Si elle est superieure a 1 ppm, continuez le SLAM. C'est le test de reference \u2014 une eau claire seule n'est pas une preuve suffisante.\"}], \"note\": \"<strong>Vous l'avez detecte tot !<\/strong> Une intervention precoce signifie que cela s'eclaircira probablement en 1 a 2 jours au lieu de 5 a 7. Mais n'attendez PAS \u2014 une teinte verte aujourd'hui signifie un marais le week-end prochain.\", \"tools\": [\"chlorine\", \"volume\"]}}} JSON.\n   \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n#pool-wizard {\n    max-width: 650px;\n    margin: 20px auto;\n    padding: 0 16px;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\n    box-sizing: border-box;\n}\n#pool-wizard *, #pool-wizard *::before, #pool-wizard *::after { box-sizing: border-box; }\n\n\/* \u2500\u2500 Step Indicator \u2500\u2500 *\/\n.wiz-steps { display: flex; justify-content: center; gap: 0; margin-bottom: 28px; }\n.wiz-step {\n    display: flex; align-items: center; gap: 8px;\n    padding: 10px 16px; font-size: 13px; font-weight: 600;\n    color: #94a3b8; background: #f5f7fa; border: 1px solid #e2e8f0;\n    transition: all 0.3s ease;\n}\n.wiz-step:first-child { border-radius: 8px 0 0 8px; }\n.wiz-step:last-child { border-radius: 0 8px 8px 0; }\n.wiz-step .step-num {\n    width: 26px; height: 26px; border-radius: 50%;\n    background: #cbd5e1; color: #fff;\n    display: flex; align-items: center; justify-content: center;\n    font-size: 12px; font-weight: 700; flex-shrink: 0;\n}\n.wiz-step.active {\n    color: #1ecad3; background: #e8f7f8;\n    border-color: #1ecad3;\n}\n.wiz-step.active .step-num {\n    background: linear-gradient(135deg, #1ecad3, #9486f7);\n}\n.wiz-step.done {\n    color: #fff;\n    background: linear-gradient(135deg, #1ecad3, #9486f7);\n    border-color: transparent;\n}\n.wiz-step.done .step-num { background: #fff; color: #6b5ce7; }\n@media (max-width: 500px) {\n    .wiz-steps { flex-wrap: wrap; }\n    .wiz-step { flex: 1; min-width: 70px; justify-content: center; padding: 8px 6px; font-size: 11px; }\n    .wiz-step .step-num { width: 22px; height: 22px; font-size: 11px; }\n}\n\n\/* \u2500\u2500 Question Cards \u2500\u2500 *\/\n.wiz-panel { display: none; }\n.wiz-panel.active { display: block; animation: fadeIn 0.35s ease; }\n@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }\n\n.wiz-q-label {\n    font-size: 1.15rem; font-weight: 700; color: #1a202c;\n    margin-bottom: 6px; text-align: center;\n}\n.wiz-q-hint { font-size: 13px; color: #64748b; text-align: center; margin-bottom: 20px; }\n\n\/* Color option cards *\/\n.color-options { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 12px; margin-bottom: 20px; }\n.color-card {\n    display: flex; align-items: center; gap: 12px;\n    padding: 14px 16px; border: 2px solid #e2e8f0; border-radius: 12px;\n    cursor: pointer; transition: all 0.2s ease; background: #fff;\n}\n.color-card:hover { border-color: #b2dfdb; background: #f8fdfc; }\n.color-card:focus, .color-card:active { color: #2c3e50; outline: none; }\n.color-card.selected {\n    border-color: #9486f7;\n    background: #f5f3ff;\n    color: #2c3e50;\n    box-shadow: 0 0 0 3px rgba(148,134,247,0.12);\n}\n.color-swatch {\n    width: 36px; height: 36px; border-radius: 50%; flex-shrink: 0;\n    border: 2px solid rgba(0,0,0,0.08);\n}\n.swatch-green { background: linear-gradient(135deg, #68d391, #276749); }\n.swatch-cloudy { background: linear-gradient(135deg, #e2e8f0, #a0aec0); }\n.swatch-yellow { background: linear-gradient(135deg, #f6e05e, #b7791f); }\n.swatch-clear { background: linear-gradient(135deg, #bee3f8, #2b6cb0); }\n.swatch-brown { background: linear-gradient(135deg, #d6bcb0, #7b4b3a); }\n.swatch-black { background: linear-gradient(135deg, #718096, #1a202c); }\n.color-label { font-size: 13px; font-weight: 600; color: #2c3e50; line-height: 1.3; }\n\n\/* Texture options *\/\n.texture-options { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 20px; }\n.texture-btn {\n    flex: 1; min-width: 120px; padding: 16px 12px;\n    border: 2px solid #e2e8f0; border-radius: 12px;\n    background: #fff; cursor: pointer; text-align: center;\n    font-size: 14px; font-weight: 600; color: #2c3e50;\n    transition: all 0.2s ease;\n}\n.texture-btn:hover { border-color: #b2dfdb; }\n.texture-btn:focus, .texture-btn:active { color: #2c3e50; outline: none; }\n.texture-btn.selected {\n    border-color: #9486f7;\n    background: #f5f3ff;\n    color: #2c3e50;\n}\n.texture-icon { font-size: 14px; display: block; margin-bottom: 4px; }\n\n\/* Dropdown fields *\/\n.wiz-field { margin-bottom: 16px; }\n.wiz-field label { display: block; font-size: 13px; font-weight: 600; color: #34495e; margin-bottom: 6px; }\n.wiz-field select {\n    width: 100%; padding: 12px 14px; border: 2px solid #e2e8f0; border-radius: 10px;\n    font-size: 15px; color: #2c3e50; background: #fff;\n    -webkit-appearance: none; appearance: none;\n    background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M6 8L1 3h10z' fill='%2394a3b8'\/%3E%3C\/svg%3E\");\n    background-repeat: no-repeat; background-position: right 14px center;\n    cursor: pointer;\n}\n.wiz-field select:focus { outline: none; border-color: #9486f7; box-shadow: 0 0 0 3px rgba(148,134,247,0.1); }\n\n\/* \u2500\u2500 Buttons \u2500\u2500 *\/\n.wiz-btn-row { display: flex; gap: 10px; justify-content: center; margin-top: 20px; flex-wrap: wrap; }\n.wiz-btn {\n    padding: 12px 32px; border: none; border-radius: 10px;\n    font-size: 15px; font-weight: 700; cursor: pointer;\n    transition: all 0.2s ease;\n}\n.wiz-btn-primary {\n    background: linear-gradient(135deg, #1ecad3, #9486f7);\n    color: #fff;\n}\n.wiz-btn-primary:hover {\n    background: linear-gradient(135deg, #169fa6, #7b6be0);\n    transform: translateY(-1px);\n    box-shadow: 0 4px 16px rgba(148,134,247,0.35);\n}\n.wiz-btn-primary:disabled {\n    background: #cbd5e1; cursor: not-allowed;\n    transform: none; box-shadow: none;\n}\n.wiz-btn-outline {\n    background: #fff; color: #6b5ce7;\n    border: 2px solid #9486f7;\n}\n.wiz-btn-outline:hover { background: #f5f3ff; }\n\n\/* \u2500\u2500 Diagnosis Result \u2500\u2500 *\/\n.wiz-result { display: none; }\n.wiz-result.active { display: block; animation: fadeIn 0.5s ease; }\n\n.diag-header {\n    padding: 24px 20px; border-radius: 4px 12px 12px 4px;\n    margin-bottom: 24px;\n    background: #f8fafc;\n    border-left: 5px solid #94a3b8;\n}\n.diag-header h2 {\n    font-size: 1.5rem; margin: 0 0 6px; font-weight: 800;\n    color: #1a202c;\n}\n.diag-header p {\n    font-size: 14px; margin: 0;\n    color: #4a5568; line-height: 1.6;\n}\n.diag-algae  { border-left-color: #38a169; background: #f0fff4; }\n.diag-lock   { border-left-color: #dd6b20; background: #fffaf0; }\n.diag-cloudy { border-left-color: #718096; background: #f7fafc; }\n.diag-metals { border-left-color: #a0523e; background: #fffaf5; }\n.diag-chem   { border-left-color: #2b6cb0; background: #ebf8ff; }\n.diag-filter { border-left-color: #2c7a7b; background: #f0fcfc; }\n\n.treat-card {\n    background: #fff; border: 1px solid #e2e8f0; border-radius: 14px;\n    padding: 20px 24px; margin-bottom: 14px;\n    box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n    position: relative; overflow: hidden;\n}\n.treat-step {\n    display: inline-block;\n    background: linear-gradient(135deg, #1ecad3, #9486f7);\n    color: #fff;\n    font-size: 11px; font-weight: 800; padding: 4px 10px; border-radius: 20px;\n    margin-bottom: 10px; text-transform: uppercase; letter-spacing: 0.5px;\n}\n.treat-card h4 { font-size: 1.05rem; font-weight: 700; color: #1a202c; margin: 0 0 6px; }\n.treat-card p { font-size: 14px; color: #4a5568; margin: 0; line-height: 1.6; }\n.treat-card a { color: #6b5ce7; text-decoration: underline; font-weight: 600; text-transform: lowercase; }\n\n.wiz-note {\n    background: #fffbeb; border-left: 4px solid #f59e0b; border-radius: 4px 10px 10px 4px;\n    padding: 14px 18px; margin-top: 16px; font-size: 13px; color: #5d4037; line-height: 1.6;\n}\n.wiz-note strong { color: #b45309; }\n\n.wiz-tools { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 20px; }\n.wiz-tool-link {\n    flex: 1; min-width: 150px; padding: 12px 16px;\n    background: #f5f3ff; border: 1px solid #ddd6fe; border-radius: 10px;\n    text-align: center; text-decoration: none; text-transform: lowercase;\n    color: #6b5ce7; font-size: 13px; font-weight: 600;\n    transition: all 0.2s ease;\n}\n.wiz-tool-link:hover {\n    background: #ede9fe; color: #5a4bd1;\n    border-color: #9486f7;\n}\n\n\/* Product CTA *\/\n.wiz-cta {\n    margin-top: 20px; padding: 16px 20px;\n    background: #f0fcfc; border-radius: 12px;\n    border: 1px solid #b2dfdb; text-align: center;\n}\n.wiz-cta p { margin: 0 0 8px; font-size: 13px; color: #475569; line-height: 1.5; }\n.wiz-cta a {\n    display: inline-block; padding: 10px 24px;\n    background: linear-gradient(135deg, #1ecad3, #9486f7);\n    color: #fff; border-radius: 8px; text-decoration: none;\n    font-weight: 700; font-size: 14px;\n    transition: all 0.2s ease;\n}\n.wiz-cta a:hover {\n    transform: translateY(-1px);\n    box-shadow: 0 4px 16px rgba(148,134,247,0.35);\n}\n\n\/* Back link *\/\n.wiz-back { text-align: center; margin-top: 20px; }\n.wiz-back a { color: #64748b; font-size: 13px; text-decoration: underline; cursor: pointer; }\n<\/style>\n\n<div id=\"pool-wizard\">\n    <!-- Step Indicator -->\n    <div class=\"wiz-steps\">\n        <div class=\"wiz-step active\" data-step=\"1\"><span class=\"step-num\">1<\/span> <span id=\"wiz-step-label-1\">Color<\/span><\/div>\n        <div class=\"wiz-step\" data-step=\"2\"><span class=\"step-num\">2<\/span> <span id=\"wiz-step-label-2\">Texture<\/span><\/div>\n        <div class=\"wiz-step\" data-step=\"3\"><span class=\"step-num\">3<\/span> <span id=\"wiz-step-label-3\">Chemistry<\/span><\/div>\n        <div class=\"wiz-step\" data-step=\"4\"><span class=\"step-num\">4<\/span> <span id=\"wiz-step-label-4\">Diagnosis<\/span><\/div>\n    <\/div>\n\n    <!-- Step 1: Color -->\n    <div class=\"wiz-panel active\" id=\"panel-color\">\n        <div class=\"wiz-q-label\" id=\"wiz-color-q\">What does your pool water look like?<\/div>\n        <div class=\"wiz-q-hint\" id=\"wiz-color-hint\">Pick the closest match to help narrow down the root cause.<\/div>\n        <div class=\"color-options\" id=\"color-options\"><\/div>\n        <div class=\"wiz-btn-row\">\n            <button class=\"wiz-btn wiz-btn-primary\" id=\"btn-color-next\" disabled>Next<\/button>\n        <\/div>\n    <\/div>\n\n    <!-- Step 2: Texture (conditional) -->\n    <div class=\"wiz-panel\" id=\"panel-texture\">\n        <div class=\"wiz-q-label\" id=\"wiz-texture-q\">Touch the pool wall. How does it feel?<\/div>\n        <div class=\"wiz-q-hint\" id=\"wiz-texture-hint\">Texture reveals which type of algae or deposit you&#8217;re dealing with.<\/div>\n        <div class=\"texture-options\" id=\"texture-options\"><\/div>\n        <div class=\"wiz-btn-row\">\n            <button class=\"wiz-btn wiz-btn-outline\" id=\"btn-texture-back\">Back<\/button>\n            <button class=\"wiz-btn wiz-btn-primary\" id=\"btn-texture-next\" disabled>Next<\/button>\n        <\/div>\n    <\/div>\n\n    <!-- Step 3: Chemistry -->\n    <div class=\"wiz-panel\" id=\"panel-chem\">\n        <div class=\"wiz-q-label\" id=\"wiz-chem-q\">What are your latest test readings?<\/div>\n        <div class=\"wiz-q-hint\" id=\"wiz-chem-hint\">Accurate numbers lead to a precise diagnosis. Estimate if unsure.<\/div>\n        <div class=\"wiz-field\">\n            <label for=\"cya-level\" id=\"wiz-cya-label\">CYA (Cyanuric Acid \/ Stabilizer) Level<\/label>\n            <select id=\"cya-level\"><\/select>\n        <\/div>\n        <div class=\"wiz-field\">\n            <label for=\"ph-level\" id=\"wiz-ph-label\">pH Level<\/label>\n            <select id=\"ph-level\"><\/select>\n        <\/div>\n        <div class=\"wiz-btn-row\">\n            <button class=\"wiz-btn wiz-btn-outline\" id=\"btn-chem-back\">Back<\/button>\n            <button class=\"wiz-btn wiz-btn-primary\" id=\"btn-diagnose\">Diagnose My Pool<\/button>\n        <\/div>\n    <\/div>\n\n    <!-- Step 4: Result -->\n    <div class=\"wiz-panel\" id=\"panel-result\">\n        <div class=\"wiz-result\" id=\"diagnosis-result\"><\/div>\n        <div class=\"wiz-back\"><a id=\"btn-restart\">Diagnose another problem<\/a><\/div>\n    <\/div>\n<\/div>\n\n<script>\n(function() {\n    var LABELS = {\"steps\": {\"1\": \"Couleur\", \"2\": \"Texture\", \"3\": \"Chimie\", \"4\": \"Diagnostic\"}, \"colorQ\": \"A quoi ressemble l'eau de votre piscine ?\", \"colorHint\": \"Choisissez la correspondance la plus proche pour identifier la cause.\", \"colorKeys\": [\"green\", \"cloudy\", \"yellow\", \"clear\", \"brown\", \"black\"], \"colors\": {\"green\": {\"line1\": \"Verte\", \"line2\": \"(toutes nuances)\"}, \"cloudy\": {\"line1\": \"Trouble \/\", \"line2\": \"Blanc laiteux\"}, \"yellow\": {\"line1\": \"Jaune \/\", \"line2\": \"Teinte moutarde\"}, \"clear\": {\"line1\": \"Claire mais\", \"line2\": \"odeur \/ irritation\"}, \"brown\": {\"line1\": \"Marron \/\", \"line2\": \"Couleur thee\"}, \"black\": {\"line1\": \"Taches noires\", \"line2\": \"sur parois\/fond\"}}, \"textureQ\": \"Touchez la paroi de la piscine. Quelle sensation ?\", \"textureHint\": \"La texture revele le type d'algues ou de depots presents.\", \"textureKeys\": [\"slimy\", \"rough\", \"smooth\"], \"textures\": {\"slimy\": \"Visqueuse \/ Glissante\", \"rough\": \"Rugueuse \/ Sableuse\", \"smooth\": \"Lisse \/ Normale\"}, \"chemQ\": \"Quels sont vos derniers resultats d'analyse ?\", \"chemHint\": \"Des valeurs precises permettent un diagnostic fiable. Estimez si vous n'etes pas sur.\", \"cyaLabel\": \"Taux de CYA (Acide Cyanurique \/ Stabilisant)\", \"phLabel\": \"Taux de pH\", \"cyaKeys\": [\"\", \"low\", \"normal\", \"elevated\", \"high\", \"unknown\"], \"cyaOptions\": {\"\": \"-- Selectionner --\", \"low\": \"Inferieur a 30 ppm (bas)\", \"normal\": \"30 a 50 ppm (plage ideale)\", \"elevated\": \"50 a 80 ppm (eleve)\", \"high\": \"Superieur a 80 ppm (trop eleve)\", \"unknown\": \"Je ne connais pas mon taux de CYA\"}, \"phKeys\": [\"\", \"low\", \"normal\", \"high\", \"unknown\"], \"phOptions\": {\"\": \"-- Selectionner --\", \"low\": \"Inferieur a 7,2 (trop bas)\", \"normal\": \"7,2 a 7,6 (plage ideale)\", \"high\": \"Superieur a 7,6 (trop eleve)\", \"unknown\": \"Je ne connais pas mon taux de pH\"}, \"btnNext\": \"Suivant\", \"btnBack\": \"Retour\", \"btnDiagnose\": \"Diagnostiquer ma piscine\", \"btnRestart\": \"Diagnostiquer un autre probleme\", \"stepLabel\": \"Etape\", \"ctaText\": \"<strong>Reduisez le brossage manuel :<\/strong> Un robot de piscine nettoie automatiquement les parois, le fond et la ligne d'eau \u2014 empechant les algues de s'installer entre les traitements.\", \"ctaLink\": \"Decouvrir les robots Aiper\", \"toolLinks\": {\"chlorine\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-chlorine-calculator\/\", \"label\": \"calculateur de chlore\"}, \"volume\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-volume-calculator\/\", \"label\": \"calculateur de volume\"}, \"ph\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-ph-calculator\/\", \"label\": \"calculateur de pH\"}, \"shock\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-shock-calculator\/\", \"label\": \"calculateur de choc\"}, \"turnover\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-turnover-rate-calculator\/\", \"label\": \"calculateur de renouvellement\"}, \"chemical\": {\"href\": \"https:\/\/aiper.com\/blogs\/pool-chemical-calculator\/\", \"label\": \"calculateur chimique\"}}, \"diagnoses\": {\"green_algae\": {\"cssClass\": \"diag-algae\", \"title\": \"Proliferation d'algues vertes\", \"summary\": \"Votre piscine a une infestation active d'algues vertes, generalement causee par un faible taux de chlore libre permettant aux spores d'algues de s'installer.\", \"steps\": [{\"title\": \"Brosser et faire circuler\", \"body\": \"Brossez vigoureusement toutes les surfaces de la piscine \u2014 parois, fond, marches et derriere les echelles. Faites fonctionner la pompe <strong>24h\/24 et 7j\/7<\/strong> jusqu'a ce que l'eau s'eclaircisse. Les algues adherent aux surfaces ; le brossage les detache pour que le chlore puisse les attaquer.\"}, {\"title\": \"Chlorage choc au niveau SLAM\", \"body\": \"En fonction de votre taux de CYA, elevez le chlore libre au <strong>niveau SLAM<\/strong> (40% du CYA). Par exemple, CYA 40 signifie un FC cible de 16 ppm. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-chlorine-calculator\/\\\">calculateur de chlore<\/a> pour un dosage precis. Utilisez du chlore liquide pour des resultats plus rapides.\"}, {\"title\": \"Filtrer, laver et verifier\", \"body\": \"Lavez le filtre a contre-courant ou nettoyez-le quotidiennement. Faites fonctionner la pompe en continu jusqu'a ce que l'eau soit cristalline <strong>ET<\/strong> que la perte de FC nocturne soit inferieure a 1 ppm. Cela prend generalement 3 a 7 jours.\"}], \"note\": \"<strong>Conseil de prevention :<\/strong> Maintenez le FC a 7,5% du CYA en permanence. Ne laissez jamais le FC descendre sous ce seuil \u2014 les spores d'algues sont toujours presentes et attendent une baisse de chlore.\", \"tools\": [\"chlorine\", \"volume\"]}, \"black_algae\": {\"cssClass\": \"diag-algae\", \"title\": \"Algues noires\", \"summary\": \"Les algues noires sont les plus tenaces a eliminer. Elles forment une couche cireuse protectrice et s'enracinent dans le crepi ou les joints. Un brossage cible et une chloration agressive sont obligatoires.\", \"steps\": [{\"title\": \"Briser la couche protectrice\", \"body\": \"Utilisez une <strong>brosse en acier inoxydable<\/strong> (pas en nylon) pour frotter vigoureusement chaque tache noire. Vous devez percer la couche cireuse. Pour les liners en vinyle, utilisez une brosse en nylon avec une pression supplementaire \u2014 PAS de brosse metallique sur le vinyle.\"}, {\"title\": \"Traiter localement au chlore granule\", \"body\": \"Arretez la pompe. Saupoudrez <strong>du chlore choc cal-hypo directement sur les taches noires<\/strong> et laissez agir 15 a 30 minutes. Vous pouvez aussi utiliser un algicide a base de cuivre specialement concu pour les algues noires. Puis rallumez la pompe.\"}, {\"title\": \"Maintenir un chlore eleve et surveiller\", \"body\": \"Maintenez le FC a <strong>20% du CYA pendant 1 a 2 semaines<\/strong> apres la disparition des taches. Brossez les taches quotidiennement. Les algues noires s'enracinent profondement \u2014 arreter trop tot garantit une rechute. Remplacez le media filtrant affecte apres le traitement.\"}], \"note\": \"<strong>Critique :<\/strong> Les algues noires peuvent survivre dans le media filtrant, les brosses et les tetes d'aspirateur. Desinfectez TOUT le materiel avec une solution d'eau de Javel apres le traitement, sinon vous les reintroduirez.\", \"tools\": [\"chlorine\", \"volume\"]}, \"chlorine_lock\": {\"cssClass\": \"diag-lock\", \"title\": \"Blocage du chlore (sur-stabilisation par le CYA)\", \"summary\": \"Votre CYA est si eleve que les molecules de chlore sont trop liees pour etre efficaces. Meme si vous ajoutez du chlore, il ne peut pas desinfecter l'eau \u2014 les algues et les bacteries proliferent malgre des lectures de FC normales.\", \"steps\": [{\"title\": \"Vidange partielle et remplissage\", \"body\": \"Pour baisser le CYA, vous devez diluer l'eau. <strong>Vidangez et remplacez 25 a 50% de l'eau de votre piscine<\/strong> par de l'eau fraiche. Le pourcentage exact : si le CYA est a 100 et que vous voulez 40, vidangez 60%. Testez le CYA apres remplissage pour confirmer que le nouveau taux est sous 50 ppm.\"}, {\"title\": \"Super-choc apres remplissage\", \"body\": \"Une fois le CYA dans la plage cible, faites un choc a <strong>30+ ppm de FC<\/strong> pour eliminer les algues ou bacteries qui se sont installees pendant la periode de blocage. Faites fonctionner la pompe en continu pendant 48 heures et retestez.\"}, {\"title\": \"Changer de source de chlore\", \"body\": \"A l'avenir, utilisez UNIQUEMENT du <strong>chlore non stabilise<\/strong> (chlore liquide \/ hypochlorite de sodium). Evitez les galets de trichlore et le dichlore granule \u2014 ils ajoutent continuellement du CYA. Testez le CYA chaque mois pour vous assurer qu'il reste sous 50 ppm.\"}], \"note\": \"<strong>Pourquoi est-ce arrive ?<\/strong> Les galets de trichlore et le choc au dichlore ajoutent tous deux du CYA a chaque dose. Au fil des mois, le CYA augmente silencieusement. La seule facon d'eliminer le CYA est la dilution \u2014 aucun produit chimique ne le decompose.\", \"tools\": [\"chlorine\", \"volume\"]}, \"mustard_algae\": {\"cssClass\": \"diag-algae\", \"title\": \"Algues moutarde (algues jaunes)\", \"summary\": \"Les algues moutarde sont resistantes au chlore et connues pour leur reinfection. Elles apparaissent comme une poussiere jaune ou moutarde, souvent dans les zones ombragees, et se propagent facilement via les maillots de bain, les jouets et le materiel de nettoyage.\", \"steps\": [{\"title\": \"Brossage energique et nettoyage du materiel\", \"body\": \"Brossez soigneusement toutes les surfaces. Retirez et <strong>faites tremper tout le materiel de piscine, les jouets, les flotteurs et les maillots de bain dans une solution d'eau de Javel<\/strong> (dilution 1:10) pendant 30 minutes. Les algues moutarde s'accrochent a tout ce qui touche l'eau.\"}, {\"title\": \"Choc au niveau algues moutarde\", \"body\": \"Elevez le FC a <strong>60% du CYA<\/strong> (l'objectif SLAM pour les algues moutarde). Exemple : CYA 40 signifie un FC cible de 24 ppm. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-shock-calculator\/\\\">calculateur de choc<\/a> pour la dose exacte. Brossez 3 fois par jour pendant le traitement.\"}, {\"title\": \"Maintenir un FC eleve pendant 72 heures\", \"body\": \"Maintenez le FC au niveau algues moutarde pendant <strong>au moins 72 heures apres l'eclaircissement de l'eau<\/strong>. Cela garantit l'eradication des spores resistantes au chlore. Ramenez ensuite le FC au niveau d'entretien normal (7,5% du CYA).\"}], \"note\": \"<strong>Risque de reinfection :<\/strong> Les spores d'algues moutarde peuvent survivre sur les couvertures de piscine, les echelles et les plongeoirs. Essuyez tout ce qui surplombe l'eau avec une solution d'eau de Javel, y compris le dessous de la couverture.\", \"tools\": [\"shock\", \"volume\"]}, \"calcium_clouding\": {\"cssClass\": \"diag-cloudy\", \"title\": \"Precipitation calcaire (trouble lie au pH eleve)\", \"summary\": \"Un pH eleve a provoque la precipitation du calcium dissous, creant un voile blanc laiteux. C'est un probleme de chimie de l'eau, pas un probleme d'algues ou de filtration.\", \"steps\": [{\"title\": \"Baisser le pH immediatement\", \"body\": \"Ajoutez <strong>de l'acide muriatique ou de l'acide sec (reducteur de pH)<\/strong> pour ramener le pH entre 7,0 et 7,2. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-ph-calculator\/\\\">calculateur de pH<\/a> pour un dosage precis. Ajoutez l'acide par petites quantites, en attendant 4 heures entre chaque ajout.\"}, {\"title\": \"Tester la durete calcique\", \"body\": \"Testez votre durete calcique (CH). Si la CH est au-dessus de <strong>400 ppm<\/strong>, le trouble reapparaitra des que le pH remontera. La CH ideale est de 200 a 400 ppm pour les piscines en crepi et de 150 a 250 ppm pour le vinyle\/fibre de verre.\"}, {\"title\": \"Diluer ou utiliser un anti-tartre\", \"body\": \"Si la CH depasse 400 ppm, <strong>vidangez partiellement et remplissez<\/strong> avec de l'eau fraiche (moins calcaire). Si la CH est limite, ajoutez un <strong>anti-tartre \/ sequestrant<\/strong> pour maintenir le calcium dissous. Maintenez le pH entre 7,4 et 7,6 a l'avenir.\"}], \"note\": \"<strong>Cause racine :<\/strong> Le calcium precipite lorsque le pH depasse environ 7,8 (le seuil exact depend de la temperature et de l'alcalinite totale). Les piscines chauffees et les generateurs de chlore au sel (qui augmentent constamment le pH) sont particulierement sujets a ce phenomene.\", \"tools\": [\"ph\", \"volume\"]}, \"dead_algae_filter\": {\"cssClass\": \"diag-filter\", \"title\": \"Algues mortes \/ Probleme de filtration\", \"summary\": \"De fines particules \u2014 probablement des algues mortes tuees par un traitement choc precedent \u2014 sont en suspension dans l'eau parce que votre filtre ne les capture pas efficacement. La chimie est probablement equilibree, mais l'eau reste trouble.\", \"steps\": [{\"title\": \"Nettoyer le filtre en profondeur\", \"body\": \"Filtre a sable : <strong>lavez abondamment a contre-courant<\/strong> jusqu'a ce que le voyant soit clair, puis rincez 30 secondes. Filtre a cartouche : retirez et <strong>nettoyez chaque pli au jet d'eau<\/strong>, puis faites tremper une nuit dans un nettoyant pour filtre. Filtre a DE : lavez a contre-courant et <strong>rechargez en poudre DE fraiche<\/strong>.\"}, {\"title\": \"Ajouter un clarifiant ou un floculant\", \"body\": \"Si l'eau reste trouble apres le nettoyage du filtre, ajoutez un <strong>clarifiant pour piscine<\/strong> (qui coagule les particules fines pour que le filtre puisse les capturer). Dans les cas extremes, utilisez un <strong>floculant<\/strong> \u2014 laissez les particules se deposer pendant la nuit, puis <strong>aspirez vers L'EGOUT<\/strong> (en contournant le filtre).\"}, {\"title\": \"Verifier le debit et la duree de fonctionnement\", \"body\": \"Verifiez que votre pompe fonctionne assez longtemps pour assurer au moins <strong>2 renouvellements complets par jour<\/strong>. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-turnover-rate-calculator\/\\\">calculateur de renouvellement<\/a>. Verifiez aussi les paniers de skimmer obstrues, le prefiltre de pompe sale ou une turbine bloquee.\"}], \"note\": \"<strong>Verification rapide :<\/strong> Eclairez l'eau avec une lampe torche la nuit. Si vous voyez des millions de minuscules particules flotter (pas nager), c'est de la matiere morte qui necessite une elimination mecanique \u2014 plus de produits chimiques n'y changeront rien.\", \"tools\": [\"turnover\", \"volume\"]}, \"bacterial_bloom\": {\"cssClass\": \"diag-cloudy\", \"title\": \"Proliferation bacterienne (desinfectant insuffisant)\", \"summary\": \"Une proliferation bacterienne se produit lorsque le niveau de desinfectant est trop bas, permettant aux bacteries de se multiplier rapidement. L'eau semble terne ou legerement trouble, souvent avec une odeur subtile. Cela peut arriver du jour au lendemain, surtout apres une utilisation intensive ou la pluie.\", \"steps\": [{\"title\": \"Choc au point de rupture\", \"body\": \"Elevez le FC a <strong>10 fois le niveau de chlore combine (CC)<\/strong> \u2014 c'est ce qu'on appelle la chloration au point de rupture. Si vous ne connaissez pas le CC, faites un choc a 30 ppm par defaut. Utilisez du chlore liquide pour une action plus rapide. Faites fonctionner la pompe 24h\/24 et 7j\/7.\"}, {\"title\": \"Oxyder et faire circuler\", \"body\": \"Maintenez un FC eleve pendant <strong>24 a 48 heures<\/strong>. L'eau devrait commencer a s'eclaircir dans les 12 heures. Si vous utilisez un choc sans chlore (MPS), notez qu'il oxyde mais ne DESINFECTE PAS \u2014 associez-le a du chlore.\"}, {\"title\": \"Retester et stabiliser\", \"body\": \"Apres 48 heures, testez FC, CC et CYA. Le CC doit etre <strong>inferieur a 0,5 ppm<\/strong> et le FC au niveau d'entretien normal (7,5% du CYA). Si le CC est encore eleve, repetez le choc. Ne reprenez le programme normal de la pompe que lorsque l'eau est cristalline.\"}], \"note\": \"<strong>Prevention :<\/strong> Une proliferation bacterienne precede souvent une proliferation d'algues. Si vous l'avez detectee au stade terne\/trouble, vous avez peut-etre evite un episode d'eau verte. Testez le FC 2 a 3 fois par semaine pendant la saison de baignade.\", \"tools\": [\"turnover\", \"volume\"]}, \"chloramines\": {\"cssClass\": \"diag-chem\", \"title\": \"Chloramines (accumulation de chlore combine)\", \"summary\": \"L'odeur de chlore n'est pas du chlore \u2014 ce sont des chloramines, formees lorsque le chlore se lie a l'ammoniac de la sueur, de l'urine et des huiles corporelles. Des chloramines elevees signifient que votre chlore libre est consomme plus vite qu'il n'est renouvele.\", \"steps\": [{\"title\": \"Tester FC et TC pour trouver le CC\", \"body\": \"Testez le Chlore Libre (FC) et le Chlore Total (TC). <strong>Chlore Combine (CC) = TC moins FC<\/strong>. Tout CC au-dessus de 0,5 ppm indique des chloramines a oxyder. Plus le CC est eleve, plus l'odeur est forte.\"}, {\"title\": \"Choc au point de rupture\", \"body\": \"Ajoutez du chlore pour atteindre <strong>10 fois la valeur du CC<\/strong> (point de rupture). Exemple : CC = 2 ppm signifie ajouter assez de chlore pour augmenter le FC de 20 ppm. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-shock-calculator\/\\\">calculateur de choc<\/a>. Utilisez du chlore non stabilise (liquide).\"}, {\"title\": \"Verifier que le CC passe sous 0,5 ppm\", \"body\": \"Faites fonctionner la pompe en continu. Retestez apres 8 a 12 heures. <strong>Le CC doit passer sous 0,5 ppm<\/strong>. Si ce n'est pas le cas, continuez le choc. Les chloramines sont totalement oxydees lorsque vous ne sentez plus d'odeur de chlore et que l'eau est douce, non irritante.\"}], \"note\": \"<strong>Le saviez-vous ?<\/strong> Une piscine bien entretenue ne devrait avoir pratiquement AUCUNE odeur de chlore. Cette odeur acre est la signature des chloramines. Quand quelqu'un dit que le chlore est trop fort, ce qu'il veut vraiment dire, c'est que les chloramines sont trop elevees \u2014 la solution est plus de chlore (pour les oxyder), pas moins.\", \"tools\": [\"shock\", \"volume\"]}, \"metals\": {\"cssClass\": \"diag-metals\", \"title\": \"Contamination metallique (Fer \/ Cuivre \/ Manganese)\", \"summary\": \"Des metaux dissous dans votre eau \u2014 le plus souvent du fer provenant de l'eau de puits ou du cuivre provenant de la corrosion des echangeurs thermiques \u2014 s'oxydent et provoquent une decoloration. La couleur brune\/thee est un signe revelateur.\", \"steps\": [{\"title\": \"Tester les metaux\", \"body\": \"Apportez un echantillon d'eau a un magasin de piscine pour un <strong>test de metaux<\/strong> (fer, cuivre, manganese). Les kits de test domestiques detectent rarement les metaux a faible concentration. Le fer au-dessus de 0,3 ppm, le cuivre au-dessus de 0,2 ppm ou le manganese au-dessus de 0,05 ppm peuvent provoquer des colorations et taches visibles.\"}, {\"title\": \"Ajouter un sequestrant pour metaux\", \"body\": \"Ajoutez un <strong>sequestrant \/ anti-taches pour metaux<\/strong> en suivant le dosage indique selon le volume de votre piscine. Les sequestrants se lient aux metaux dissous et les maintiennent en solution pour qu'ils puissent etre filtres. Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-volume-calculator\/\\\">calculateur de volume<\/a> si vous n'etes pas sur de la taille de votre piscine.\"}, {\"title\": \"Identifier et corriger la source\", \"body\": \"Si vous remplissez a partir d'un puits, installez un <strong>prefiltre sur la conduite de remplissage<\/strong>. Si vous avez un chauffe-eau a gaz, inspectez l'echangeur thermique pour la corrosion (cuivre). Verifiez les composants rouilles de la piscine (fer). Sans corriger la source, les metaux reviendront a chaque remplissage.\"}], \"note\": \"<strong>Attention :<\/strong> NE PAS faire de choc au chlore tant que des metaux sont presents \u2014 le chlore oxyde le fer et le cuivre dissous, les transformant en taches visibles bien plus difficiles a eliminer. TOUJOURS sequestrer les metaux d'ABORD, puis ajuster la chimie.\", \"tools\": [\"volume\", \"chemical\"]}, \"low_fc_early_algae\": {\"cssClass\": \"diag-algae\", \"title\": \"Chlore libre bas \/ Debut de proliferation d'algues\", \"summary\": \"Votre chlore est trop bas et les algues commencent a s'installer \u2014 mais vous les avez detectees tot, avant une proliferation complete. La teinte verte avec des parois lisses signifie que les algues sont en suspension dans l'eau mais n'ont pas encore adhere aux surfaces.\", \"steps\": [{\"title\": \"Tester votre panel chimique complet\", \"body\": \"Obtenez des lectures precises pour <strong>FC, CC, CYA, pH et TA<\/strong>. Vous avez besoin des cinq pour calculer l'objectif SLAM correct. Le ratio FC\/CYA determine la quantite de chlore dont vous avez reellement besoin \u2014 ignorez la regle obsolete des 1 a 3 ppm.\"}, {\"title\": \"Amener le FC au niveau SLAM immediatement\", \"body\": \"Objectif SLAM FC = <strong>40% de votre taux de CYA<\/strong>. (CYA 30 signifie FC 12 ppm ; CYA 50 signifie FC 20 ppm). Utilisez notre <a href=\\\"https:\/\/aiper.com\/blogs\/pool-chlorine-calculator\/\\\">calculateur de chlore<\/a> pour votre dose exacte. Ajoutez le chlore liquide au crepuscule.\"}, {\"title\": \"Maintenir jusqu'a ce que la perte nocturne de FC soit inferieure a 1 ppm\", \"body\": \"Testez le FC au coucher du soleil et de nouveau au lever du soleil (avant que les UV n'agissent). Si la perte nocturne est <strong>inferieure a 1 ppm<\/strong>, les algues sont mortes. Si elle est superieure a 1 ppm, continuez le SLAM. C'est le test de reference \u2014 une eau claire seule n'est pas une preuve suffisante.\"}], \"note\": \"<strong>Vous l'avez detecte tot !<\/strong> Une intervention precoce signifie que cela s'eclaircira probablement en 1 a 2 jours au lieu de 5 a 7. Mais n'attendez PAS \u2014 une teinte verte aujourd'hui signifie un marais le week-end prochain.\", \"tools\": [\"chlorine\", \"volume\"]}}};\n\n    var state = { color: '', texture: '', cya: '', ph: '' };\n\n    var $ = function(id) { return document.getElementById(id); };\n    var panelColor = $('panel-color');\n    var panelTexture = $('panel-texture');\n    var panelChem = $('panel-chem');\n    var panelResult = $('panel-result');\n    var diagResult = $('diagnosis-result');\n    var steps = document.querySelectorAll('.wiz-step');\n\n    \/\/ Helper: set textContent from LABELS key (dot-path like \"colors.green.line1\")\n    function L(path) {\n        var keys = path.split('.');\n        var v = LABELS;\n        for (var i = 0; i < keys.length; i++) { v = v[keys[i]]; if (v === undefined) return ''; }\n        return v;\n    }\n\n    function setText(id, txt) { var e = $(id); if (e) e.textContent = txt; }\n    function setHTML(id, html) { var e = $(id); if (e) e.innerHTML = html; }\n\n    \/\/ \u2500\u2500 Populate UI from LABELS \u2500\u2500\n    function initUI() {\n        \/\/ Step indicator labels\n        setText('wiz-step-label-1', L('steps.1'));\n        setText('wiz-step-label-2', L('steps.2'));\n        setText('wiz-step-label-3', L('steps.3'));\n        setText('wiz-step-label-4', L('steps.4'));\n\n        \/\/ Step 1: Color\n        setText('wiz-color-q', L('colorQ'));\n        setText('wiz-color-hint', L('colorHint'));\n        $('btn-color-next').textContent = L('btnNext');\n\n        \/\/ Step 2: Texture\n        setText('wiz-texture-q', L('textureQ'));\n        setText('wiz-texture-hint', L('textureHint'));\n        $('btn-texture-back').textContent = L('btnBack');\n        $('btn-texture-next').textContent = L('btnNext');\n\n        \/\/ Step 3: Chemistry\n        setText('wiz-chem-q', L('chemQ'));\n        setText('wiz-chem-hint', L('chemHint'));\n        setText('wiz-cya-label', L('cyaLabel'));\n        setText('wiz-ph-label', L('phLabel'));\n        $('btn-chem-back').textContent = L('btnBack');\n        $('btn-diagnose').textContent = L('btnDiagnose');\n\n        \/\/ Restart\n        $('btn-restart').textContent = L('btnRestart');\n\n        \/\/ Build color cards\n        var colorDiv = $('color-options');\n        colorDiv.innerHTML = '';\n        L('colorKeys').forEach(function(key) {\n            var c = L('colors.' + key);\n            var card = document.createElement('div');\n            card.className = 'color-card';\n            card.setAttribute('data-color', key);\n            card.innerHTML = '<div class=\"color-swatch swatch-' + key + '\"><\/div><span class=\"color-label\">' + c.line1 + '<br>' + c.line2 + '<\/span>';\n            colorDiv.appendChild(card);\n        });\n\n        \/\/ Build texture buttons\n        var texDiv = $('texture-options');\n        texDiv.innerHTML = '';\n        L('textureKeys').forEach(function(key) {\n            var btn = document.createElement('button');\n            btn.className = 'texture-btn';\n            btn.setAttribute('data-texture', key);\n            btn.innerHTML = '<span class=\"texture-icon\">' + L('textures.' + key) + '<\/span>';\n            texDiv.appendChild(btn);\n        });\n\n        \/\/ Build dropdowns\n        buildSelect($('cya-level'), L('cyaKeys'), 'cyaOptions');\n        buildSelect($('ph-level'), L('phKeys'), 'phOptions');\n    }\n\n    function buildSelect(el, keys, labelPath) {\n        el.innerHTML = '';\n        keys.forEach(function(key) {\n            var opt = document.createElement('option');\n            opt.value = key;\n            opt.textContent = L(labelPath + '.' + key);\n            el.appendChild(opt);\n        });\n    }\n\n    initUI();\n\n    function setStep(n) {\n        steps.forEach(function(s) {\n            var sn = parseInt(s.getAttribute('data-step'));\n            s.classList.remove('active', 'done');\n            if (sn < n) s.classList.add('done');\n            if (sn === n) s.classList.add('active');\n        });\n        [panelColor, panelTexture, panelChem, panelResult].forEach(function(p, i) {\n            p.classList.toggle('active', i === n - 1);\n        });\n        if (n === 4) { diagResult.classList.add('active'); runDiagnosis(); }\n    }\n\n    \/\/ Color selection \u2014 rebind after initUI\n    function bindColorCards() {\n        var cards = document.querySelectorAll('.color-card');\n        cards.forEach(function(card) {\n            card.addEventListener('click', function() {\n                cards.forEach(function(c) { c.classList.remove('selected'); });\n                card.classList.add('selected');\n                state.color = card.getAttribute('data-color');\n                $('btn-color-next').disabled = false;\n            });\n        });\n    }\n    bindColorCards();\n\n    $('btn-color-next').addEventListener('click', function() {\n        if (!state.color) return;\n        var needsTexture = (state.color === 'green' || state.color === 'black');\n        if (needsTexture) { setStep(2); }\n        else { state.texture = 'n\/a'; setStep(3); }\n    });\n\n    \/\/ Texture selection \u2014 rebind after initUI\n    function bindTextureBtns() {\n        var btns = document.querySelectorAll('.texture-btn');\n        btns.forEach(function(btn) {\n            btn.addEventListener('click', function() {\n                btns.forEach(function(b) { b.classList.remove('selected'); });\n                btn.classList.add('selected');\n                state.texture = btn.getAttribute('data-texture');\n                $('btn-texture-next').disabled = false;\n            });\n        });\n    }\n    bindTextureBtns();\n\n    $('btn-texture-next').addEventListener('click', function() {\n        if (!state.texture) return; setStep(3);\n    });\n    $('btn-texture-back').addEventListener('click', function() { setStep(1); });\n\n    \/\/ Chemistry\n    $('btn-chem-back').addEventListener('click', function() {\n        var needsTexture = (state.color === 'green' || state.color === 'black');\n        setStep(needsTexture ? 2 : 1);\n    });\n    $('btn-diagnose').addEventListener('click', function() {\n        state.cya = $('cya-level').value;\n        state.ph = $('ph-level').value;\n        setStep(4);\n    });\n\n    \/\/ Restart\n    $('btn-restart').addEventListener('click', function() {\n        state = { color: '', texture: '', cya: '', ph: '' };\n        var cards = document.querySelectorAll('.color-card');\n        cards.forEach(function(c) { c.classList.remove('selected'); });\n        var btns = document.querySelectorAll('.texture-btn');\n        btns.forEach(function(b) { b.classList.remove('selected'); });\n        $('btn-color-next').disabled = true;\n        $('btn-texture-next').disabled = true;\n        $('cya-level').value = '';\n        $('ph-level').value = '';\n        diagResult.classList.remove('active');\n        diagResult.innerHTML = '';\n        setStep(1);\n    });\n\n    \/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n    \/\/  DIAGNOSIS ENGINE (driven by LABELS.diagnoses)\n    \/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n    var BASE = 'https:\/\/aiper.com\/blogs';\n\n    function runDiagnosis() {\n        var c = state.color, t = state.texture, cya = state.cya, ph = state.ph;\n        var key = '';\n\n        if (c === 'green') {\n            if (t === 'slimy') key = 'green_algae';\n            else if (t === 'rough') key = 'black_algae';\n            else if (t === 'smooth') {\n                if (cya === 'high' || cya === 'elevated') key = 'chlorine_lock';\n                else key = 'low_fc_early_algae';\n            }\n        } else if (c === 'cloudy') {\n            if (ph === 'high') key = 'calcium_clouding';\n            else if (cya === 'high' || cya === 'elevated') key = 'chlorine_lock';\n            else if (cya === 'low') key = 'bacterial_bloom';\n            else key = 'dead_algae_filter';\n        } else if (c === 'yellow') {\n            key = 'mustard_algae';\n        } else if (c === 'clear') {\n            key = 'chloramines';\n        } else if (c === 'brown') {\n            key = 'metals';\n        } else if (c === 'black') {\n            key = 'black_algae';\n        }\n\n        var d = L('diagnoses.' + key);\n        if (!d || !d.title) { d = L('diagnoses.low_fc_early_algae'); }\n\n        var stepsHtml = '';\n        d.steps.forEach(function(s, i) {\n            stepsHtml += '<div class=\"treat-card\">' +\n                '<span class=\"treat-step\">' + L('stepLabel') + ' ' + (i + 1) + '<\/span>' +\n                '<h4>' + s.title + '<\/h4>' +\n                '<p>' + s.body + '<\/p>' +\n                '<\/div>';\n        });\n\n        \/\/ Tool links\n        var toolsHtml = '';\n        if (d.tools && d.tools.length) {\n            d.tools.forEach(function(tk) {\n                var tl = L('toolLinks.' + tk);\n                if (tl) {\n                    toolsHtml += '<a class=\"wiz-tool-link\" href=\"' + tl.href + '\">' + tl.label + '<\/a>';\n                }\n            });\n        }\n\n        \/\/ Product CTA (algae-related diagnoses)\n        var algaeKeys = ['green_algae', 'black_algae', 'mustard_algae', 'low_fc_early_algae', 'chlorine_lock', 'dead_algae_filter'];\n        var productHtml = '';\n        if (algaeKeys.indexOf(key) !== -1 && L('ctaText')) {\n            productHtml = '<div class=\"wiz-cta\">' +\n                '<p>' + L('ctaText') + '<\/p>' +\n                '<a href=\"https:\/\/aiper.com\/\">' + L('ctaLink') + '<\/a>' +\n                '<\/div>';\n        }\n\n        diagResult.innerHTML =\n            '<div class=\"diag-header ' + d.cssClass + '\">' +\n            '<h2>' + d.title + '<\/h2>' +\n            '<p>' + d.summary + '<\/p>' +\n            '<\/div>' +\n            stepsHtml +\n            (toolsHtml ? '<div class=\"wiz-tools\">' + toolsHtml + '<\/div>' : '') +\n            '<div class=\"wiz-note\">' + d.note + '<\/div>' +\n            productHtml;\n    }\n})();\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\">Comment fonctionne l&#8217;assistant de diagnostic d&#8217;eau de piscine<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Cet outil de diagnostic utilise un <strong>moteur d&#8217;arbre de decision<\/strong> qui croise quatre dimensions cles des symptomes \u2014 la couleur de l&#8217;eau, la texture des parois, le taux de CYA (stabilisant) et le pH \u2014 pour identifier la cause la plus probable du probleme de votre piscine. Plutot que des conseils generiques, il fournit un <strong>protocole de traitement personnalise en 3 etapes<\/strong> base sur la chimie et la physique specifiques de votre situation.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Logique de diagnostic de l&#8217;outil<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">L&#8217;assistant cartographie <strong>10 conditions de piscine distinctes<\/strong> dans une matrice de symptomes. Voici la grille de diagnostic sous-jacente :<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Symptome<\/th><th>Cause la plus probable<\/th><th>Indicateur cle<\/th><\/tr><\/thead><tbody><tr><td>Verte + parois visqueuses<\/td><td>Proliferation d&#8217;algues vertes<\/td><td>FC bas a permis aux algues de coloniser<\/td><\/tr><tr><td>Verte + taches rugueuses\/sombres<\/td><td>Algues noires<\/td><td>Couche cireuse resiste au chlore normal<\/td><\/tr><tr><td>Verte + lisse + CYA eleve<\/td><td>Blocage du chlore<\/td><td>CYA &gt;80 ppm bloque l&#8217;action du FC<\/td><\/tr><tr><td>Verte + lisse + CYA normal<\/td><td>Debut d&#8217;algues<\/td><td>FC sous 7,5% du seuil CYA<\/td><\/tr><tr><td>Trouble + pH eleve<\/td><td>Precipitation calcaire<\/td><td>pH &gt;7,8 declenche la precipitation du CaCO3<\/td><\/tr><tr><td>Trouble + pH\/CYA normaux<\/td><td>Algues mortes \/ Filtration<\/td><td>Particules traversent un filtre defaillant<\/td><\/tr><tr><td>Trouble + CYA bas<\/td><td>Proliferation bacterienne<\/td><td>Desinfectant insuffisant<\/td><\/tr><tr><td>Jaune\/teinte moutarde<\/td><td>Algues moutarde<\/td><td>Resistantes au chlore ; propagation par equipement<\/td><\/tr><tr><td>Claire + forte odeur de chlore<\/td><td>Chloramines (chlore combine)<\/td><td>CC &gt;0,5 ppm ; chlore lie a l&#8217;ammoniac<\/td><\/tr><tr><td>Marron\/couleur thee<\/td><td>Contamination metallique<\/td><td>Oxydation du fer, cuivre ou manganese<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Principes chimiques de reference<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Ratio FC\/CYA :<\/strong> La reference de l&#8217;industrie (selon les normes CDC et ANSI\/APSP) selon laquelle le chlore libre doit etre maintenu a un minimum de 7,5% du niveau d&#8217;acide cyanurique pour prevenir les algues. Les objectifs SLAM utilisent 40% du CYA pour les algues vertes et 60% pour les algues moutarde.<\/li><li><strong>Chloration au point de rupture :<\/strong> Le principe stoechiometrique selon lequel 10 fois la lecture de chlore combine (CC) est necessaire pour oxyder completement les chloramines en azote gazeux et en eau, eliminant l&#8217;odeur de chlore et l&#8217;irritation des yeux.<\/li><li><strong>LSI (Indice de Saturation de Langelier) :<\/strong> Regit l&#8217;equilibre du carbonate de calcium. Lorsque le pH depasse 7,8, le LSI devient positif et le calcium dissous precipite sous forme de trouble visible \u2014 un probleme physique, pas un probleme de desinfection.<\/li><li><strong>Sur-stabilisation par le CYA :<\/strong> L&#8217;acide cyanurique se lie de maniere reversible au chlore (chimie d&#8217;equilibre). Au-dessus d&#8217;environ 70\u201380 ppm, l&#8217;equilibre se deplace tellement que la fraction de chlore libre et actif tombe en dessous du niveau necessaire pour tuer les algues, meme si un test DPD indique toujours un FC normal.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">FAQ sur le diagnostic de l&#8217;eau de piscine<\/h2>\n\n\n\n<div class=\"schema-faq wp-block-yoast-faq-block\"><div class=\"schema-faq-section\" id=\"faq-1\"><strong class=\"schema-faq-question\">Mon eau est verte mais je viens d&#8217;ajouter du chlore hier. Pourquoi cela n&#8217;a-t-il pas fonctionne ?<\/strong> <p class=\"schema-faq-answer\">C&#8217;est presque toujours un probleme de CYA (stabilisant). Si votre niveau d&#8217;acide cyanurique est superieur a 80\u2013100 ppm, les molecules de chlore sont trop fortement liees au stabilisant pour desinfecter efficacement. Votre kit de test montrera un chlore libre adequat, mais la fraction active (acide hypochloreux) est trop faible pour tuer les algues. L&#8217;assistant detecte exactement ce scenario \u2014 si vos parois sont lisses mais que l&#8217;eau est verte avec un CYA eleve, il signale un Blocage du Chlore et recommande une vidange partielle comme seule solution fiable. Ajouter plus de chlore sans baisser le CYA aggrave le probleme car la plupart des produits chlores (galets, dichlore) ajoutent encore plus de stabilisant.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-2\"><strong class=\"schema-faq-question\">L&#8217;eau est trouble blanc laiteux mais mon chlore et mon pH sont tous deux normaux. Qu&#8217;est-ce que cela pourrait etre ?<\/strong> <p class=\"schema-faq-answer\">Lorsque la chimie est equilibree mais que l&#8217;eau reste trouble, le coupable est presque toujours mecanique \u2014 votre filtre ne capture pas les fines particules en suspension. Causes possibles : un filtre a sable qui a besoin d&#8217;un lavage a contre-courant ou dont le sable est canalise, une cartouche qui doit etre nettoyee en profondeur ou remplacee, un filtre a DE avec des grilles dechirees, ou simplement un temps de fonctionnement de pompe insuffisant (moins de 8 heures\/jour). Les cellules d&#8217;algues mortes d&#8217;un traitement choc precedent qui n&#8217;ont jamais ete aspirees a l&#8217;egout resteront egalement en suspension indefiniment. L&#8217;assistant vous guide pour nettoyer votre filtre en profondeur, ajouter un clarifiant pour agglomerer les particules fines et verifier que vous realisez au moins 2 renouvellements complets d&#8217;eau par jour.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-3\"><strong class=\"schema-faq-question\">Comment faire la difference entre les algues moutarde et les algues vertes ?<\/strong> <p class=\"schema-faq-answer\">Les algues moutarde (algues jaunes) ont trois caracteristiques distinctives : (1) elles apparaissent comme une poussiere ou un film jaune-brun \u2014 jamais vert vif ; (2) elles preferent les zones ombragees de la piscine (sous les rebords, sur le cote ombrage des murs, derriere les echelles) ; et (3) elles s&#8217;enlevent facilement au brossage mais reviennent dans les 24 heures, souvent exactement aux memes endroits. Les algues vertes, en revanche, colorent toute la colonne d&#8217;eau en vert, rendent les parois visqueuses et reagissent rapidement a des niveaux de choc normaux. L&#8217;assistant de diagnostic les traite comme des conditions completement distinctes car les algues moutarde necessitent des niveaux de chlore environ 50% plus eleves (60% contre 40% du CYA) et exigent la desinfection de tous les equipements de piscine et maillots de bain pour prevenir la reinfection.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-4\"><strong class=\"schema-faq-question\">Pourquoi ma piscine sent-elle fortement le chlore alors que la bandelette de test indique un chlore faible ?<\/strong> <p class=\"schema-faq-answer\">L&#8217;odeur acre de chlore n&#8217;est pas du chlore \u2014 ce sont des chloramines (chlore combine), formees lorsque le chlore libre reagit avec l&#8217;ammoniac de la sueur, de l&#8217;urine et des huiles corporelles. Le nez detecte le trichloramine gazeux qui se degage de la surface de l&#8217;eau. Une piscine bien entretenue avec un chlore libre adequat et zero chlore combine n&#8217;a pratiquement aucune odeur. C&#8217;est le fait le plus meconnu de la chimie de piscine : une odeur de chlore trop forte signifie en realite pas assez de chlore libre pour oxyder les dechets. Le diagnostic chloramines de l&#8217;assistant calcule votre objectif de point de rupture \u2014 vous devez ajouter 10 fois la lecture de chlore combine pour oxyder completement les chloramines \u2014 ce qui signifie souvent un choc avec beaucoup plus de chlore que les proprietaires de piscine ne s&#8217;y attendent.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-5\"><strong class=\"schema-faq-question\">Puis-je utiliser cet outil pour une piscine au sel ?<\/strong> <p class=\"schema-faq-answer\">Oui, absolument. Un generateur de chlore au sel (electrolyseur) produit exactement le meme agent desinfectant \u2014 l&#8217;acide hypochloreux \u2014 que le chlore ajoute manuellement. La logique de diagnostic (ratio FC\/CYA, chloration au point de rupture, saturation en calcium) s&#8217;applique de maniere identique. La seule difference operationnelle est que les piscines au sel ont tendance a avoir un pH naturellement croissant (en raison du degagement d&#8217;hydrogene a la cellule), ce qui les rend legerement plus sujettes a la precipitation calcaire. Si l&#8217;assistant diagnostique une precipitation calcaire pour votre piscine au sel, portez une attention particuliere au maintien du pH entre 7,4 et 7,6 avec des ajouts reguliers d&#8217;acide et verifiez l&#8217;entartrage de la cellule d&#8217;electrolyse.<\/p> <\/div> <\/div>\n","protected":false},"excerpt":{"rendered":"<p>1 Color 2 Texture 3 Chemistry 4 Diagnosis What does your pool water look like? Pick the closest match to help narrow down the root cause. Next Touch the pool wall. How does it feel? Texture reveals which type of algae or deposit you&#8217;re dealing with. Back Next What are your latest test readings? Accurate&#8230;<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"class_list":["post-4986","page","type-page","status-publish","hentry"],"lang":"fr","translations":{"fr":4986,"en":4977,"es":4987,"de":4985},"_links":{"self":[{"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/pages\/4986","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/comments?post=4986"}],"version-history":[{"count":5,"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/pages\/4986\/revisions"}],"predecessor-version":[{"id":11863,"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/pages\/4986\/revisions\/11863"}],"wp:attachment":[{"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/media?parent=4986"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}