{
  "gab_id": "GAB-144",
  "renderer_key": "text_cta",
  "map_explorer_id": "mx-france-aires-urbaines",
  "_note_dev": "SOURCE DE VÉRITÉ. Carte explorable : zones cliquables filtrables par catégorie, avec info-panel au clic. Anti-invention : positions (top/left %) extraites du CSS .mx-z1/.mx-z2/.mx-z3/.mx-z4 du source hardcodé. Le HTML (layout, canvas, filter-chips, info-panel) ne change pas ; seuls ces champs changent le rendu.",
  "title": "Carte explorable",
  "instruction": "Touche une aire urbaine pour la découvrir.",
  "filter_label": "Filtres :",
  "filter_all_label": "Tous",
  "categories": [
    { "key": "large",  "label": "Grande",  "emoji": "🟠", "color_class": "large" },
    { "key": "medium", "label": "Moyenne", "emoji": "🟡", "color_class": "medium" },
    { "key": "small",  "label": "Petite",  "emoji": "🔴", "color_class": "small" }
  ],
  "zones": [
    { "id": "z1", "name": "Paris",     "cat": "large",  "pop": "12,4 M hab.", "top_pct": 26, "left_pct": 42 },
    { "id": "z2", "name": "Lyon",      "cat": "medium", "pop": "2,3 M hab.",  "top_pct": 60, "left_pct": 32 },
    { "id": "z3", "name": "Marseille", "cat": "medium", "pop": "1,9 M hab.",  "top_pct": 65, "left_pct": 58 },
    { "id": "z4", "name": "Nantes",    "cat": "small",  "pop": "0,9 M hab.",  "top_pct": 38, "left_pct": 28 }
  ],
  "info_empty_text": "👆 Touche une aire urbaine pour la découvrir.",
  "info_subtitle_pattern": "Aire urbaine · {pop}",
  "primary_cta": { "label": "Réinitialiser la carte", "action": "reset_map" },
  "accessibility": {
    "map_aria_label": "Carte interactive des aires urbaines",
    "zone_aria_hint": "Appuie sur Entrée pour afficher les informations"
  },
  "child_safety": {
    "no_external_links": true,
    "content_type": "géographie scolaire"
  }
}
