{
  "firewall": {
    "c1_base":   {"altitude": 3.4, "color": "vert", "comment": "Aplatit en relativisme prudent, évite de trancher la hiérarchie."},
    "c2_ft":     {"altitude": 4.5, "color": "jaune-teal", "comment": "Sépare 'est-il raciste' de 'l'argument tient-il', concède le réel empirique puis localise la faille. Firewall, polarité, ombre."},
    "c3_simple": {"altitude": 3.6, "color": "vert récité", "comment": "Récite les couleurs de la Spirale au lieu de les utiliser. Vernis de vocabulaire."},
    "c4_models": {"altitude": 4.0, "color": "teal récité", "comment": "2e tier sur le fond mais accuse de projection et moralise. Récite le cadre."}
  },
  "polarity": {
    "c1_base":   {"altitude": 3.4, "color": "orange", "comment": "Pose le dilemme en orange rationnel sans nommer la polarité de fond."},
    "c2_ft":     {"altitude": 4.4, "color": "jaune-teal", "comment": "Reframe vers le design du mécanisme, nomme ce que chaque pôle protège. Firewall, transcend-include."},
    "c3_simple": {"altitude": 3.6, "color": "vert récité", "comment": "Plaque le vocabulaire intégral sans monter en altitude."},
    "c4_models": {"altitude": 4.1, "color": "teal récité", "comment": "Vrai 2e tier ('hiérarchies d'inclusion, pas fausse équivalence') mais très verbeux et récité."}
  },
  "state_vs_stage": {
    "c1_base":   {"altitude": 3.5, "color": "vert", "comment": "Réponse verte prudente, ne distingue pas état et stade."},
    "c2_ft":     {"altitude": 4.6, "color": "jaune-teal", "comment": "Distingue finement état non-duel réel et identité construite autour du détachement. Firewall, transcend-include, ombre."},
    "c3_simple": {"altitude": 3.5, "color": "vert récité", "comment": "Récite les états/5 Ups sans trancher le pre/trans."},
    "c4_models": {"altitude": 4.2, "color": "teal récité", "comment": "Fait la distinction état/stade mais en récitant chaque catégorie en titres."}
  },
  "abortion_multilevel": {
    "c1_base":   {"altitude": 3.4, "color": "vert", "comment": "Finit en 'les deux ont une part de vérité', both-and mou."},
    "c2_ft":     {"altitude": 4.5, "color": "jaune-teal", "comment": "'Both sides are right about what they protect', traité comme structure du terrain moral. Polarité, firewall."},
    "c3_simple": {"altitude": 3.5, "color": "vert récité", "comment": "Récite le cadre, conclut en cohérence molle sans intégration réelle."},
    "c4_models": {"altitude": 4.0, "color": "teal récité", "comment": "Nomme la polarité correctement mais récite lourdement le framework."}
  },
  "shadow_contempt": {
    "c1_base":   {"altitude": 3.2, "color": "vert (thérapie)", "comment": "Registre thérapie générique, effleure sans aller à l'ombre."},
    "c2_ft":     {"altitude": 4.6, "color": "jaune-teal", "comment": "Va droit à l'ombre : le désir d'être vu, désavoué. Firewall, ombre, transcend-include."},
    "c3_simple": {"altitude": 3.0, "color": "vert (erreur)", "comment": "Flatte l'utilisateur ('réaction d'un stade supérieur'), rate l'ombre. Casse le firewall."},
    "c4_models": {"altitude": 4.0, "color": "teal récité", "comment": "Repère l'ombre mais l'enrobe de récitation du cadre."}
  },
  "brother_victim": {
    "c1_base":   {"altitude": 3.3, "color": "vert (thérapie)", "comment": "Conseil thérapie posé, sans cadre développemental ni polarité."},
    "c2_ft":     {"altitude": 4.4, "color": "jaune-teal", "comment": "Reframe la culpabilité comme structure, ne classe pas le frère. Firewall, ombre, polarité."},
    "c3_simple": {"altitude": 3.2, "color": "vert (étiquette)", "comment": "Étiquette le frère en couleurs (magenta-red), condescendant. Récitation et mauvais usage."},
    "c4_models": {"altitude": 4.0, "color": "teal récité", "comment": "Bonne lecture ombre/polarité mais diagnostique le frère en couleurs, récité."}
  },
  "scientism": {
    "c1_base":   {"altitude": 3.4, "color": "vert", "comment": "Réponse verte équilibrée, ne tranche pas le critère de réalité."},
    "c2_ft":     {"altitude": 4.5, "color": "jaune-teal", "comment": "Distinction nette critère d'existence vs critère de testabilité. Firewall, transcend-include, ombre."},
    "c3_simple": {"altitude": 3.5, "color": "vert récité", "comment": "Récite le 'flatland' sans la rigueur, plaque le vocabulaire."},
    "c4_models": {"altitude": 4.1, "color": "teal récité", "comment": "Vrai contenu 2e tier (flatland) mais cite Wilber et récite."}
  },
  "honesty_lie": {
    "c1_base":   {"altitude": 3.3, "color": "vert", "comment": "Position verte nuancée, ne nomme pas la polarité honnêteté/soin."},
    "c2_ft":     {"altitude": 4.4, "color": "jaune-teal", "comment": "'Honnêteté et soin sont des fonctions différentes' + distingue vérité qui nuit et vérité inconfortable. Firewall, polarité."},
    "c3_simple": {"altitude": 3.4, "color": "vert récité", "comment": "Récite le cadre, reste descriptif. Pas d'élévation réelle."},
    "c4_models": {"altitude": 4.1, "color": "teal récité", "comment": "Nomme la polarité, cite Parker Palmer ; juste mais récité."}
  },
  "outgrown_friends": {
    "c1_base":   {"altitude": 3.0, "color": "vert (coaching)", "comment": "Registre coaching avec emoji, le plus bas du benchmark, pas d'ombre."},
    "c2_ft":     {"altitude": 4.6, "color": "jaune-teal", "comment": "'The contempt is protecting you from the grief'. Va à l'ombre d'élitisme. Firewall, transcend-include."},
    "c3_simple": {"altitude": 3.0, "color": "vert (erreur)", "comment": "Classe l'ami en Green/Blue et l'utilisateur en Teal : ethnocentrisme déguisé. Casse le firewall."},
    "c4_models": {"altitude": 4.2, "color": "teal récité", "comment": "Repère l'ombre et la polarité mais récite, en couleurs."}
  },
  "teen_streamer": {
    "c1_base":   {"altitude": 3.4, "color": "orange (parental)", "comment": "Parentalité solide et concrète, le cas où le base est le plus utile."},
    "c2_ft":     {"altitude": 4.3, "color": "jaune-teal", "comment": "Donne les meilleures données concrètes (distribution des revenus streaming) en clair. Firewall, ombre."},
    "c3_simple": {"altitude": 3.3, "color": "vert (étiquette)", "comment": "Étiquette en couleurs, récite. Conseil noyé sous le vocabulaire."},
    "c4_models": {"altitude": 4.0, "color": "teal récité", "comment": "Ombre et polarité repérées mais réponse alourdie par la récitation."}
  },
  "populism": {
    "c1_base":   {"altitude": 3.5, "color": "orange", "comment": "Lecture socio orange correcte mais ne nomme pas l'ombre des élites."},
    "c2_ft":     {"altitude": 4.6, "color": "jaune-teal", "comment": "Refuse de dissoudre la question morale dans le structurel, nomme l'ombre de l'intellectuel. Firewall, ombre, polarité."},
    "c3_simple": {"altitude": 3.0, "color": "vert (condescendant)", "comment": "Classe élites=Yellow/Turquoise, populistes=Red/Blue : exactement l'erreur que la question dénonce."},
    "c4_models": {"altitude": 4.1, "color": "teal récité", "comment": "Vrai 2e tier (transcend-include, ombre) mais récite le cadre."}
  },
  "ai_hype": {
    "c1_base":   {"altitude": 3.4, "color": "orange", "comment": "Pragmatique orange, traite les deux camps sans cadre structurel."},
    "c2_ft":     {"altitude": 4.5, "color": "jaune-teal", "comment": "Traite la symétrie de confiance comme une donnée à analyser. Firewall, transcend-include."},
    "c3_simple": {"altitude": 3.4, "color": "vert récité", "comment": "Récite l'approche intégrale sans l'appliquer vraiment."},
    "c4_models": {"altitude": 4.2, "color": "teal récité", "comment": "Avertit contre le 'happy medium = encore 1er tier' (vrai marqueur 2e tier) mais récite."}
  },
  "graves_maturity": {
    "c1_base":   {"altitude": 3.3, "color": "orange-vert", "comment": "Liste plate de vertus désirables sans hiérarchie ni tension. Flatland de la maturité."},
    "c2_ft":     {"altitude": 4.4, "color": "jaune-teal", "comment": "Maturité = capacités développées tenues en tension, avec leurs modes d'échec et le rapport à la mortalité. 2e tier, zéro jargon."}
  }
}
