/* global window */
// ============================================================================
// MELR · Catalogue des diagnostics GFP — TADAT & DeMPA (statique)
// ----------------------------------------------------------------------------
// Phase 4d du module ÉVALUATIONS. Structures officielles extraites des guides
// présents dans la documentation locale :
//   - TADAT : Field Guide 2019 (EN) — 9 POA, 32 indicateurs, 55 dimensions,
//     notes A-D, agrégation M1/M2 avec la MÊME table de conversion que PEFA
//     (Table 2 du guide ≡ Table 1 PEFA) → réutilise window.pefaAggregate.
//   - DeMPA : Debt Management Performance Assessment, édition 2021 (Banque
//     mondiale) — 5 domaines, 15 DPI, 31 dimensions, notes A-D + N/R,
//     PAS d'agrégation par indicateur (notation par dimension uniquement).
//
// Libellés EN : extraits mot à mot des guides. Libellés FR : traduction de
// travail (guides officiels FR : tadat.org ; la traduction FR DeMPA locale
// correspond à l'édition 2015 à 14 DPI — l'édition 2021 fait foi).
// PIMA (FMI) et MAPS (OCDE) suivront dans ce même catalogue.
// ============================================================================

(function () {
  const d = (s, fr, en, es) => ({ s, fr, en, es: es != null ? es : en });

  // ── TADAT — Field Guide 2019 ─────────────────────────────────────────────
  const TADAT_AREAS = [
    { key: "poa1", num: "POA 1", fr: "Intégrité de la base des contribuables immatriculés", en: "Integrity of the Registered Taxpayer Base", es: "Integridad de la base de contribuyentes registrados", inds: [
      { n: "P1-1", method: "M1", fr: "Informations exactes et fiables sur les contribuables", en: "Accurate and reliable taxpayer information", es: "Información exacta y fiable sobre los contribuyentes", dims: [
        d(1, "Adéquation des informations détenues sur les contribuables immatriculés et capacité de la base d'immatriculation à soutenir des interactions efficaces", "Adequacy of information held in respect of registered taxpayers and the extent to which the registration database supports effective interactions", "Adecuación de la información sobre los contribuyentes registrados y capacidad de la base de registro para respaldar interacciones eficaces"),
        d(2, "Exactitude des informations détenues dans la base d'immatriculation", "Accuracy of information held in the registration database", "Exactitud de la información contenida en la base de datos de registro"),
      ]},
      { n: "P1-2", method: "M1", fr: "Connaissance de la base potentielle de contribuables", en: "Knowledge of the potential taxpayer base", es: "Conocimiento de la base potencial de contribuyentes", dims: [
        d(1, "Étendue des initiatives de détection des entreprises et particuliers tenus de s'immatriculer qui ne le font pas", "Extent of initiatives to detect businesses and individuals who are required to register but fail to do so", "Alcance de las iniciativas para detectar a empresas y personas físicas obligadas a registrarse que no lo hacen"),
      ]},
    ]},
    { key: "poa2", num: "POA 2", fr: "Gestion efficace des risques", en: "Effective Risk Management", es: "Gestión eficaz de riesgos", inds: [
      { n: "P2-3", method: "M1", fr: "Identification, évaluation, classement et quantification des risques d'indiscipline fiscale", en: "Identification, assessment, ranking and quantification of compliance risks", es: "Identificación, evaluación, jerarquización y cuantificación de los riesgos de cumplimiento", dims: [
        d(1, "Étendue du renseignement et de la recherche pour identifier les risques d'indiscipline sur les principales obligations fiscales", "Extent of intelligence gathering and research to identify compliance risks in respect of the main tax obligations", "Alcance de la recopilación de información de inteligencia y la investigación para identificar los riesgos de cumplimiento respecto de las principales obligaciones tributarias"),
        d(2, "Processus d'évaluation, de classement et de quantification des risques d'indiscipline des contribuables", "Process used to assess, rank, and quantify taxpayer compliance risks", "Proceso utilizado para evaluar, jerarquizar y cuantificar los riesgos de cumplimiento de los contribuyentes"),
      ]},
      { n: "P2-4", method: "M1", fr: "Atténuation des risques par un plan d'amélioration du civisme fiscal", en: "Mitigation of risks through a compliance improvement plan", es: "Mitigación de riesgos mediante un plan de mejora del cumplimiento", dims: [
        d(1, "Degré d'atténuation des risques évalués au moyen d'un plan d'amélioration du civisme fiscal", "Degree to which the tax administration mitigates assessed risks through a compliance improvement plan", "Grado en que la administración tributaria mitiga los riesgos evaluados mediante un plan de mejora del cumplimiento"),
      ]},
      { n: "P2-5", method: "M1", fr: "Suivi et évaluation des activités d'atténuation des risques d'indiscipline", en: "Monitoring and evaluation of compliance risk mitigation activities", es: "Seguimiento y evaluación de las actividades de mitigación de los riesgos de cumplimiento", dims: [
        d(1, "Processus de suivi et d'évaluation de l'impact des activités d'atténuation des risques d'indiscipline", "Process used to monitor and evaluate the impact of compliance risk mitigation activities", "Proceso utilizado para hacer seguimiento y evaluar el impacto de las actividades de mitigación de los riesgos de cumplimiento"),
      ]},
      { n: "P2-6", method: "M1", fr: "Gestion des risques opérationnels", en: "Management of operational risks", es: "Gestión de los riesgos operativos", dims: [
        d(1, "Processus d'identification, d'évaluation et d'atténuation des risques opérationnels", "Process used to identify, assess, and mitigate operational risks", "Proceso utilizado para identificar, evaluar y mitigar los riesgos operativos"),
        d(2, "Degré de test, de suivi et d'évaluation de l'efficacité du programme de continuité d'activité", "Extent to which the effectiveness of the business continuity program is tested, monitored and evaluated", "Grado en que se prueba, se hace seguimiento y se evalúa la eficacia del programa de continuidad de las operaciones"),
      ]},
      { n: "P2-7", method: "M1", fr: "Gestion des risques liés au capital humain", en: "Management of human capital risks", es: "Gestión de los riesgos del capital humano", dims: [
        d(1, "Capacités et structures en place pour gérer les risques liés au capital humain", "Extent to which the tax administration has in place the capacity and structures to manage human capital risks", "Capacidad y estructuras establecidas para gestionar los riesgos del capital humano"),
        d(2, "Degré d'évaluation de l'état des risques de capital humain et des mesures d'atténuation associées", "Degree to which the tax administration evaluates the status of human capital risks and related mitigation interventions", "Grado en que la administración tributaria evalúa el estado de los riesgos del capital humano y las medidas de mitigación asociadas"),
      ]},
    ]},
    { key: "poa3", num: "POA 3", fr: "Appui au civisme fiscal", en: "Supporting Voluntary Compliance", es: "Apoyo al cumplimiento voluntario", inds: [
      { n: "P3-8", method: "M1", fr: "Étendue, actualité et accessibilité de l'information", en: "Scope, currency, and accessibility of information", es: "Alcance, vigencia y accesibilidad de la información", dims: [
        d(1, "Gamme d'informations et d'assistance expliquant clairement aux contribuables leurs obligations et leurs droits", "Range of information available and assistance given to taxpayers to explain their obligations and entitlements", "Gama de información y asistencia que explica con claridad a los contribuyentes sus obligaciones y derechos"),
        d(2, "Actualité de l'information au regard de la loi et de la doctrine administrative", "Degree to which information is current in terms of the law and administrative policy", "Vigencia de la información respecto de la ley y la doctrina administrativa"),
        d(3, "Disponibilité pour les contribuables de l'information et des orientations de l'administration fiscale", "Availability to taxpayers of information and guidance from the tax administration", "Disponibilidad para los contribuyentes de la información y la orientación de la administración tributaria"),
      ]},
      { n: "P3-9", method: "M1", fr: "Délai de réponse aux demandes d'information", en: "Time taken to respond to information requests", es: "Plazo de respuesta a las solicitudes de información", dims: [
        d(1, "Délai de réponse aux demandes d'information des contribuables et des intermédiaires fiscaux", "Time taken to respond to taxpayers and tax intermediaries' requests for information", "Plazo de respuesta a las solicitudes de información de los contribuyentes y los intermediarios tributarios"),
      ]},
      { n: "P3-10", method: "M1", fr: "Étendue des initiatives de réduction des coûts de discipline fiscale", en: "Scope of initiatives to reduce taxpayer compliance costs", es: "Alcance de las iniciativas para reducir los costos de cumplimiento de los contribuyentes", dims: [
        d(1, "Étendue des initiatives de réduction des coûts de discipline fiscale", "Extent of initiatives to reduce taxpayer compliance costs", "Alcance de las iniciativas para reducir los costos de cumplimiento de los contribuyentes"),
      ]},
      { n: "P3-11", method: "M1", fr: "Recueil des avis des contribuables sur les produits et services", en: "Obtaining taxpayer feedback on products and services", es: "Obtención de la opinión de los contribuyentes sobre los productos y servicios", dims: [
        d(1, "Utilisation et fréquence des méthodes de recueil des avis des contribuables sur la qualité des services", "Use and frequency of methods to obtain feedback from taxpayers on the standard of services provided", "Uso y frecuencia de los métodos para obtener la opinión de los contribuyentes sobre la calidad de los servicios prestados"),
        d(2, "Prise en compte des avis des contribuables dans la conception des processus et produits administratifs", "Extent to which taxpayer input is taken into account in the design of administrative processes and products", "Grado en que la opinión de los contribuyentes se tiene en cuenta en el diseño de los procesos y productos administrativos"),
      ]},
    ]},
    { key: "poa4", num: "POA 4", fr: "Dépôt des déclarations dans les délais", en: "Timely Filing of Tax Declarations", es: "Presentación oportuna de las declaraciones tributarias", inds: [
      { n: "P4-12", method: "M2", fr: "Taux de dépôt des déclarations dans les délais", en: "On-time filing rate", es: "Tasa de presentación dentro del plazo", dims: [
        d(1, "Déclarations d'IS déposées dans le délai légal, en % des déclarations attendues des contribuables IS immatriculés", "Number of CIT declarations filed by the statutory due date as a percentage of declarations expected from registered CIT taxpayers", "Declaraciones del IS (impuesto sobre sociedades) presentadas dentro del plazo legal, en porcentaje de las declaraciones esperadas de los contribuyentes del IS registrados"),
        d(2, "Déclarations d'IR déposées dans le délai légal, en % des déclarations attendues des contribuables IR immatriculés", "Number of PIT declarations filed by the statutory due date as a percentage of declarations expected from registered PIT taxpayers", "Declaraciones de IRPF presentadas dentro del plazo legal, en porcentaje de las declaraciones esperadas de los contribuyentes del IRPF registrados"),
        d(3, "Déclarations de TVA déposées dans le délai légal, en % des déclarations attendues des assujettis immatriculés", "Number of VAT declarations filed by the statutory due date as a percentage of declarations expected from registered VAT taxpayers", "Declaraciones del IVA presentadas dentro del plazo legal, en porcentaje de las declaraciones esperadas de los contribuyentes del IVA registrados"),
        d(4, "Déclarations d'accises intérieures déposées dans le délai légal, en % des déclarations attendues", "Number of domestic excise tax declarations filed by the statutory due date as a percentage of declarations expected", "Declaraciones de impuestos especiales internos presentadas dentro del plazo legal, en porcentaje de las declaraciones esperadas"),
        d(5, "Déclarations de retenues à la source (salaires) déposées par les employeurs dans le délai légal, en % des déclarations attendues", "Number of PAYE withholding declarations filed by employers by the statutory due date as a percentage of declarations expected", "Declaraciones de retenciones en la fuente sobre salarios presentadas por los empleadores dentro del plazo legal, en porcentaje de las declaraciones esperadas"),
      ]},
      { n: "P4-13", method: "M1", fr: "Gestion des défaillants déclaratifs", en: "Management of non-filers", es: "Gestión de los omisos en la presentación", dims: [
        d(1, "Actions de relance des défaillants déclaratifs", "Action taken to follow up non-filers", "Medidas adoptadas para dar seguimiento a los omisos en la presentación"),
      ]},
      { n: "P4-14", method: "M1", fr: "Utilisation de la télédéclaration", en: "Use of electronic filing facilities", es: "Uso de la presentación electrónica", dims: [
        d(1, "Part des déclarations fiscales déposées par voie électronique", "Extent to which tax declarations are filed electronically", "Grado en que las declaraciones tributarias se presentan por vía electrónica"),
      ]},
    ]},
    { key: "poa5", num: "POA 5", fr: "Paiement des impôts dans les délais", en: "Timely Payment of Taxes", es: "Pago oportuno de los impuestos", inds: [
      { n: "P5-15", method: "M1", fr: "Utilisation des paiements électroniques", en: "Use of electronic payment methods", es: "Uso de los métodos de pago electrónico", dims: [
        d(1, "Part des impôts principaux payés par voie électronique", "Extent to which core taxes are paid electronically", "Grado en que los principales impuestos se pagan por vía electrónica"),
      ]},
      { n: "P5-16", method: "M1", fr: "Utilisation de systèmes de recouvrement efficients", en: "Use of efficient collection systems", es: "Uso de sistemas de recaudación eficientes", dims: [
        d(1, "Recours à la retenue à la source et aux systèmes d'acomptes", "Extent to which withholding at source and advance payment systems are used", "Grado en que se utilizan la retención en la fuente y los sistemas de pago anticipado"),
      ]},
      { n: "P5-17", method: "M1", fr: "Ponctualité des paiements", en: "Timeliness of payments", es: "Puntualidad de los pagos", dims: [
        d(1, "Nombre de paiements de TVA effectués dans le délai légal, en % du nombre total de paiements dus", "Number of VAT payments made by the statutory due date in percent of the total number of payments due", "Número de pagos del IVA efectuados dentro del plazo legal, en porcentaje del número total de pagos debidos"),
        d(2, "Valeur des paiements de TVA effectués dans le délai légal, en % de la valeur totale des paiements dus", "Value of VAT payments made by the statutory due date in percent of the total value of payments due", "Valor de los pagos del IVA efectuados dentro del plazo legal, en porcentaje del valor total de los pagos debidos"),
      ]},
      { n: "P5-18", method: "M2", fr: "Stock et flux d'arriérés fiscaux", en: "Stock and flow of tax arrears", es: "Volumen y flujo de los atrasos tributarios", dims: [
        d(1, "Valeur des arriérés totaux d'impôts principaux en fin d'exercice, en % des recettes recouvrées de l'exercice", "Value of total core tax arrears at fiscal year-end as a percentage of total core tax revenue collections", "Valor del total de atrasos de los principales impuestos al cierre del ejercicio, en porcentaje de la recaudación total de dichos impuestos del ejercicio"),
        d(2, "Valeur des arriérés recouvrables d'impôts principaux en fin d'exercice, en % des recettes recouvrées", "Value of collectible core tax arrears at fiscal year-end as a percentage of total core tax revenue collections", "Valor de los atrasos cobrables de los principales impuestos al cierre del ejercicio, en porcentaje de la recaudación total de dichos impuestos"),
        d(3, "Valeur des arriérés de plus de 12 mois, en % de la valeur totale des arriérés", "Value of core tax arrears more than 12 months old as a percentage of all core tax arrears", "Valor de los atrasos de más de 12 meses de antigüedad, en porcentaje del valor total de los atrasos"),
      ]},
    ]},
    { key: "poa6", num: "POA 6", fr: "Exactitude des informations déclarées", en: "Accurate Reporting in Declarations", es: "Exactitud de la información declarada", inds: [
      { n: "P6-19", method: "M1", fr: "Étendue des actions de vérification pour détecter et décourager les déclarations inexactes", en: "Scope of verification actions taken to detect and deter inaccurate reporting", es: "Alcance de las medidas de verificación adoptadas para detectar y disuadir la presentación de declaraciones inexactas", dims: [
        d(1, "Nature et étendue du programme de vérification fiscale pour détecter et décourager l'inexactitude", "Nature and scope of the tax audit program in place to detect and deter inaccurate reporting", "Naturaleza y alcance del programa de fiscalización tributaria para detectar y disuadir la inexactitud"),
        d(2, "Degré de systématisation du programme de vérification autour de pratiques uniformes", "Extent to which the audit program is systematized around uniform practices", "Grado en que el programa de fiscalización está sistematizado en torno a prácticas uniformes"),
        d(3, "Degré de suivi de la qualité des vérifications", "Degree to which the quality of taxpayer audits is monitored", "Grado en que se hace seguimiento de la calidad de las fiscalizaciones"),
        d(4, "Degré de suivi de l'efficacité de la fonction de vérification", "Degree to which the tax administration monitors the effectiveness of the taxpayer audit function", "Grado en que la administración tributaria hace seguimiento de la eficacia de la función de fiscalización"),
      ]},
      { n: "P6-20", method: "M1", fr: "Utilisation de systèmes automatisés de recoupement à grande échelle", en: "Use of large-scale automated data-matching systems to detect inaccurate reporting", es: "Uso de sistemas automatizados de cruce de datos a gran escala para detectar declaraciones inexactas", dims: [
        d(1, "Étendue des recoupements automatisés à grande échelle pour vérifier les informations déclarées", "Extent of large-scale automated crosschecking to verify information reported in tax declarations", "Alcance de los cruces de datos automatizados a gran escala para verificar la información declarada en las declaraciones tributarias"),
      ]},
      { n: "P6-21", method: "M1", fr: "Initiatives pour encourager l'exactitude des déclarations", en: "Initiatives undertaken to encourage accurate reporting", es: "Iniciativas emprendidas para fomentar la exactitud de las declaraciones", dims: [
        d(1, "Nature et étendue des initiatives proactives encourageant l'exactitude des déclarations", "Nature and scope of proactive initiatives undertaken to encourage accurate reporting", "Naturaleza y alcance de las iniciativas proactivas emprendidas para fomentar la exactitud de las declaraciones"),
      ]},
      { n: "P6-22", method: "M1", fr: "Suivi de l'écart fiscal pour évaluer l'inexactitude des déclarations", en: "Monitoring the tax gap to assess inaccuracy of reporting levels", es: "Seguimiento de la brecha tributaria para evaluar el nivel de inexactitud de las declaraciones", dims: [
        d(1, "Solidité des méthodes utilisées pour évaluer et suivre l'inexactitude des déclarations", "Soundness of the methods used by the tax administration to assess and monitor inaccurate reporting", "Solidez de los métodos utilizados por la administración tributaria para evaluar y hacer seguimiento de las declaraciones inexactas"),
      ]},
    ]},
    { key: "poa7", num: "POA 7", fr: "Règlement efficace des différends fiscaux", en: "Effective Tax Dispute Resolution", es: "Resolución eficaz de los conflictos tributarios", inds: [
      { n: "P7-23", method: "M2", fr: "Existence d'un processus de règlement des différends indépendant, opérationnel et gradué", en: "Existence of an independent, workable and graduated dispute resolution process", es: "Existencia de un proceso de resolución de conflictos independiente, funcional y gradual", dims: [
        d(1, "Disponibilité et utilisation d'un mécanisme gradué de recours administratif et juridictionnel", "Extent to which an appropriately graduated mechanism of administrative and judicial review is available to, and used by, taxpayers", "Disponibilidad y uso de un mecanismo adecuadamente gradual de revisión administrativa y judicial por parte de los contribuyentes"),
        d(2, "Indépendance du recours administratif vis-à-vis du processus de vérification", "Whether the administrative review mechanism is independent of the audit process", "Independencia del mecanismo de revisión administrativa respecto del proceso de fiscalización"),
        d(3, "Publication de l'information sur le processus de règlement des différends et sensibilisation des contribuables", "Whether information on the dispute resolution process is published, and whether taxpayers are explicitly made aware of it", "Publicación de la información sobre el proceso de resolución de conflictos y grado en que se da a conocer explícitamente a los contribuyentes"),
      ]},
      { n: "P7-24", method: "M1", fr: "Délai de règlement des différends", en: "Time taken to resolve disputes", es: "Plazo de resolución de los conflictos", dims: [
        d(1, "Délai d'achèvement des recours administratifs", "Time taken to complete administrative reviews", "Plazo para completar las revisiones administrativas"),
      ]},
      { n: "P7-25", method: "M1", fr: "Suite donnée aux issues des différends", en: "Degree to which dispute outcomes are acted upon", es: "Grado en que se da curso a los resultados de los conflictos", dims: [
        d(1, "Degré de prise en compte des issues des différends par l'administration fiscale", "Extent to which the tax administration responds to dispute outcomes", "Grado en que la administración tributaria responde a los resultados de los conflictos"),
      ]},
    ]},
    { key: "poa8", num: "POA 8", fr: "Gestion efficiente des recettes", en: "Efficient Revenue Management", es: "Gestión eficiente de los ingresos", inds: [
      { n: "P8-26", method: "M1", fr: "Contribution au processus de prévision des recettes fiscales", en: "Contribution to government tax revenue forecasting process", es: "Contribución al proceso gubernamental de previsión de los ingresos tributarios", dims: [
        d(1, "Contribution de l'administration fiscale aux prévisions et estimations des recettes fiscales de l'État", "Extent of tax administration input to government tax revenue forecasting and estimating", "Contribución de la administración tributaria a la previsión y estimación de los ingresos tributarios del Estado"),
      ]},
      { n: "P8-27", method: "M1", fr: "Adéquation de la comptabilité des recettes fiscales", en: "Adequacy of tax revenue accounting", es: "Adecuación de la contabilidad de los ingresos tributarios", dims: [
        d(1, "Adéquation du système de comptabilisation des recettes fiscales", "Adequacy of the tax administration's tax revenue accounting system", "Adecuación del sistema de contabilización de los ingresos tributarios de la administración tributaria"),
      ]},
      { n: "P8-28", method: "M2", fr: "Adéquation du traitement des remboursements", en: "Adequacy of tax refund processing", es: "Adecuación del procesamiento de las devoluciones tributarias", dims: [
        d(1, "Adéquation du système de remboursement de la TVA", "Adequacy of the VAT refund system", "Adecuación del sistema de devolución del IVA"),
        d(2, "Délai de paiement (ou d'imputation) des remboursements de TVA", "Time taken to pay (or offset) VAT refunds", "Plazo para pagar (o compensar) las devoluciones del IVA"),
      ]},
    ]},
    { key: "poa9", num: "POA 9", fr: "Redevabilité et transparence", en: "Accountability and Transparency", es: "Rendición de cuentas y transparencia", inds: [
      { n: "P9-29", method: "M2", fr: "Mécanismes d'assurance interne", en: "Internal assurance mechanisms", es: "Mecanismos de aseguramiento interno", dims: [
        d(1, "Niveau d'assurance fourni par l'audit interne", "Level of assurance provided by internal audit", "Nivel de aseguramiento proporcionado por la auditoría interna"),
        d(2, "Mécanismes d'assurance de l'intégrité du personnel", "Staff integrity assurance mechanisms", "Mecanismos de aseguramiento de la integridad del personal"),
      ]},
      { n: "P9-30", method: "M2", fr: "Contrôle externe de l'administration fiscale", en: "External oversight of the tax administration", es: "Supervisión externa de la administración tributaria", dims: [
        d(1, "Étendue du contrôle externe indépendant des opérations et de la performance financière", "Extent of independent external oversight of the tax administration's operations and financial performance", "Alcance de la supervisión externa independiente de las operaciones y el desempeño financiero de la administración tributaria"),
        d(2, "Processus d'enquête sur les soupçons de malversation et de mauvaise administration", "Investigation process for suspected wrongdoing and maladministration", "Proceso de investigación de los presuntos actos indebidos y de mala administración"),
      ]},
      { n: "P9-31", method: "M1", fr: "Perception publique de l'intégrité", en: "Public perception of integrity", es: "Percepción pública de la integridad", dims: [
        d(1, "Mécanisme de suivi de la confiance du public dans l'administration fiscale", "Mechanism for monitoring public confidence in the tax administration", "Mecanismo de seguimiento de la confianza del público en la administración tributaria"),
      ]},
      { n: "P9-32", method: "M2", fr: "Publication des activités, résultats et plans", en: "Publication of activities, results and plans", es: "Publicación de las actividades, los resultados y los planes", dims: [
        d(1, "Publication (et ponctualité de publication) de la performance financière et opérationnelle", "Extent to which the financial and operational performance is made public, and the timeliness of publication", "Grado en que se hace público el desempeño financiero y operativo, y oportunidad de su publicación"),
        d(2, "Publication (et ponctualité de publication) des orientations et plans futurs", "Extent to which the tax administration's future directions and plans are made public, and the timeliness of publication", "Grado en que se hacen públicos las orientaciones y los planes futuros, y oportunidad de su publicación"),
      ]},
    ]},
  ];

  // ── DeMPA — édition 2021 (Banque mondiale) ───────────────────────────────
  const DEMPA_AREAS = [
    { key: "gov", num: "1", fr: "Gouvernance et élaboration de la stratégie", en: "Governance and Strategy Development", es: "Gobernanza y elaboración de la estrategia", inds: [
      { n: "DPI-1", method: null, fr: "Cadre juridique", en: "Legal Framework", es: "Marco jurídico", dims: [
        d(1, "Cadre juridique de l'administration centrale", "Central Government's legal framework", "Marco jurídico del gobierno central"),
        d(2, "Cadre juridique des entités du secteur public", "Public Sector Entities' legal framework", "Marco jurídico de las entidades del sector público"),
      ]},
      { n: "DPI-2", method: null, fr: "Structure de gestion", en: "Managerial Structure", es: "Estructura de gestión", dims: [
        d(1, "Structure de gestion des emprunts et opérations liées à la dette de l'administration centrale", "Managerial structure for central government borrowing and debt-related transactions", "Estructura de gestión del endeudamiento y las operaciones relacionadas con la deuda del gobierno central"),
        d(2, "Structure de gestion de la préparation et de l'émission des garanties d'emprunt", "Managerial structure for preparation and issuance of central government loan guarantees", "Estructura de gestión de la preparación y emisión de las garantías de préstamos del gobierno central"),
      ]},
      { n: "DPI-3", method: null, fr: "Stratégie de gestion de la dette", en: "Debt Management Strategy", es: "Estrategia de gestión de la deuda", dims: [
        d(1, "Qualité du document de stratégie de gestion de la dette", "Quality of the DM strategy document", "Calidad del documento de la estrategia de GD"),
        d(2, "Processus de décision et publication de la stratégie", "Decision-making process and publication of the DM strategy", "Proceso de toma de decisiones y publicación de la estrategia de GD"),
        d(3, "Plan annuel d'emprunt", "Annual Borrowing Plan (ABP)", "Plan anual de endeudamiento (PAE)"),
      ]},
      { n: "DPI-4", method: null, fr: "Rapports sur la dette publique", en: "Public Debt Reporting", es: "Presentación de informes sobre la deuda pública", dims: [
        d(1, "Rapport sur la dette de l'administration centrale — contenu et ponctualité", "Central Government debt report — content and timeliness", "Informe sobre la deuda del gobierno central — contenido y oportunidad"),
        d(2, "Rapports au pouvoir législatif", "Reporting to the legislature", "Presentación de informes al poder legislativo"),
        d(3, "Rapport sur la dette publique — couverture des administrations", "Public debt report — government coverage", "Informe sobre la deuda pública — cobertura de los niveles de gobierno"),
      ]},
      { n: "DPI-5", method: null, fr: "Audit", en: "Audit", es: "Auditoría", dims: [
        d(1, "Fréquence et étendue des audits externes (financier, conformité, performance) et publication de leurs résultats", "Frequency and comprehensiveness of external audits and their public disclosure", "Frecuencia y exhaustividad de las auditorías externas (financiera, de cumplimiento, de desempeño) y publicación de sus resultados"),
        d(2, "Degré d'engagement à donner suite aux conclusions des audits", "Degree of commitment to address audit outcomes", "Grado de compromiso para dar curso a las conclusiones de las auditorías"),
      ]},
    ]},
    { key: "macro", num: "2", fr: "Coordination avec les politiques macroéconomiques", en: "Coordination with Macroeconomic Policies", es: "Coordinación con las políticas macroeconómicas", inds: [
      { n: "DPI-6", method: null, fr: "Coordination avec la politique budgétaire", en: "Coordination with Fiscal Policy", es: "Coordinación con la política fiscal", dims: [
        d(1, "Fourniture de prévisions du service de la dette", "Provision of debt service forecasts", "Suministro de previsiones del servicio de la deuda"),
        d(2, "Suivi des risques budgétaires du secteur public non financier", "Monitoring Fiscal Risks in the NFPS", "Seguimiento de los riesgos fiscales del SPNF"),
        d(3, "Disponibilité des principales variables macro-budgétaires et de l'analyse de viabilité de la dette", "Availability of key macro and fiscal variables and DSA", "Disponibilidad de las principales variables macroeconómicas y fiscales y del ASD"),
      ]},
      { n: "DPI-7", method: null, fr: "Coordination avec la politique monétaire", en: "Coordination with Monetary Policy", es: "Coordinación con la política monetaria", dims: [
        d(1, "Séparation entre politique monétaire et opérations de gestion de la dette", "Separation between monetary policy and DM operations", "Separación entre la política monetaria y las operaciones de GD"),
        d(2, "Coordination avec la banque centrale par échange régulier d'informations", "Coordination with the central bank through regular information sharing", "Coordinación con el banco central mediante el intercambio periódico de información"),
        d(3, "Limites de l'accès direct aux financements de la banque centrale", "Limits of direct access to central bank funding", "Límites del acceso directo al financiamiento del banco central"),
      ]},
    ]},
    { key: "borrow", num: "3", fr: "Activités d'emprunt et de financement connexes", en: "Borrowing and Related Financing Activities", es: "Actividades de endeudamiento y de financiamiento conexas", inds: [
      { n: "DPI-8", method: null, fr: "Endettement intérieur", en: "Domestic Borrowing", es: "Endeudamiento interno", dims: [
        d(1, "Publication d'un calendrier d'emprunt pour les titres de gros et des résultats d'émission", "Publication of a borrowing calendar for wholesale securities and publication of issuance results", "Publicación de un calendario de endeudamiento para los títulos mayoristas y publicación de los resultados de las emisiones"),
        d(2, "Opérations sur le marché intérieur et clarté des règles et procédures", "Domestic market operations and clarity in rules and procedures", "Operaciones en el mercado interno y claridad de las normas y los procedimientos"),
      ]},
      { n: "DPI-9", method: null, fr: "Endettement extérieur", en: "External Borrowing", es: "Endeudamiento externo", dims: [
        d(1, "Organisation et processus appropriés pour les emprunts extérieurs de toutes sources", "Appropriate organizational arrangements and processes for external borrowing from all sources", "Disposiciones organizativas y procesos adecuados para el endeudamiento externo de todas las fuentes"),
      ]},
      { n: "DPI-10", method: null, fr: "Garanties d'emprunt, rétrocession de prêts et produits dérivés", en: "Loan Guarantees, On-Lending, and Derivatives", es: "Garantías de préstamos, represtación de préstamos (on-lending) y derivados", dims: [
        d(1, "Émission des garanties d'emprunt de l'administration centrale", "Issuance of central government loan guarantees", "Emisión de las garantías de préstamos del gobierno central"),
      ]},
    ]},
    { key: "cash", num: "4", fr: "Prévision des flux et gestion de la trésorerie", en: "Cash Flow Forecasting and Cash Balance Management", es: "Previsión de los flujos de caja y gestión del saldo de caja", inds: [
      { n: "DPI-11", method: null, fr: "Prévision des flux de trésorerie et gestion du solde de trésorerie", en: "Cash Flow Forecasting and Cash Balance Management", es: "Previsión de los flujos de caja y gestión del saldo de caja", dims: [
        d(1, "Efficacité de la prévision du niveau agrégé des soldes des comptes bancaires de l'État", "Effectiveness of forecasting the aggregate level of cash balances in government bank accounts", "Eficacia de la previsión del nivel agregado de los saldos de caja en las cuentas bancarias del Estado"),
        d(2, "Efficacité de la gestion du solde de trésorerie et de la liquidité", "Effectiveness of cash balance and liquidity management", "Eficacia de la gestión del saldo de caja y de la liquidez"),
      ]},
    ]},
    { key: "ops", num: "5", fr: "Enregistrement de la dette et gestion des risques opérationnels", en: "Debt Recording and Operational Risk Management", es: "Registro de la deuda y gestión de los riesgos operativos", inds: [
      { n: "DPI-12", method: null, fr: "Enregistrement, suivi et paiements de la dette", en: "Debt Recording, Monitoring, and Payments", es: "Registro, seguimiento y pagos de la deuda", dims: [
        d(1, "Enregistrement des opérations liées à la dette", "Recording debt-related transactions", "Registro de las operaciones relacionadas con la deuda"),
        d(2, "Paiements du service de la dette", "Debt payments", "Pagos del servicio de la deuda"),
      ]},
      { n: "DPI-13", method: null, fr: "Sécurité des données et continuité d'activité", en: "Data Security and Business Continuity", es: "Seguridad de los datos y continuidad de las operaciones", dims: [
        d(1, "Accès aux données, sauvegardes et infrastructure informatique", "Data access, backups and IT infrastructure", "Acceso a los datos, copias de seguridad e infraestructura informática"),
        d(2, "Plans de continuité d'activité et de reprise après sinistre", "Business Continuity and Disaster Recovery Plans", "Planes de continuidad de las operaciones y de recuperación ante desastres"),
      ]},
      { n: "DPI-14", method: null, fr: "Dossiers et données de la dette", en: "Debt Related Records", es: "Registros y datos de la deuda", dims: [
        d(1, "Exhaustivité et actualité des dossiers de la dette de l'administration centrale", "Completeness and timeliness of central government debt records", "Exhaustividad y oportunidad de los registros de la deuda del gobierno central"),
        d(2, "Systèmes d'enregistrement sécurisés et détenteurs de titres", "Secure registry systems and debt holders", "Sistemas de registro seguros y tenedores de títulos"),
      ]},
      { n: "DPI-15", method: null, fr: "Systèmes d'information de gestion de la dette (SIGD)", en: "Debt Management Information Systems (DMIS)", es: "Sistemas de información para la gestión de la deuda (SIGD)", dims: [
        d(1, "Utilisation des systèmes d'information de gestion de la dette", "Use of Debt Management Information Systems (DMIS)", "Uso de los sistemas de información para la gestión de la deuda"),
      ]},
    ]},
  ];

  // ── PIMA — FMI (questionnaire révisé 2018) ───────────────────────────────
  // 3 phases, 15 institutions, 45 questions. Chaque question est notée deux
  // fois (faible/moyenne/élevée) : conception institutionnelle ET efficacité.
  // FR : questionnaire officiel FR (documentation locale) ; EN : cadre FMI.
  const PIMA_AREAS = [
    { key: "plan", num: "A", fr: "Planification de niveaux d'investissement public soutenables", en: "Planning sustainable levels of public investment", es: "Planificación de niveles sostenibles de inversión pública", inds: [
      { n: "1", method: null, fr: "Objectifs et règles budgétaires", en: "Fiscal targets and rules", es: "Metas y reglas fiscales", dims: [
        d("a", "Objectif ou limite fixés pour assurer la viabilité de la dette", "Target or limit to ensure debt sustainability", "Meta o límite establecido para asegurar la sostenibilidad de la deuda"),
        d("b", "Politique budgétaire encadrée par une ou plusieurs règles budgétaires permanentes", "Permanent fiscal rule(s) guiding fiscal policy", "Política fiscal regida por una o varias reglas fiscales permanentes"),
        d("c", "Cadrage macrobudgétaire à moyen terme alignant la préparation du budget sur la politique budgétaire", "Medium-term fiscal framework aligning budget preparation with fiscal policy", "Marco fiscal de mediano plazo que alinea la preparación del presupuesto con la política fiscal"),
      ]},
      { n: "2", method: null, fr: "Planifications nationale et sectorielle", en: "National and sectoral planning", es: "Planificación nacional y sectorial", dims: [
        d("a", "Stratégies d'investissement public nationales et sectorielles", "National and sectoral public investment strategies", "Estrategias nacionales y sectoriales de inversión pública"),
        d("b", "Évaluation des coûts des stratégies ou plans d'investissement", "Costing of national and sectoral investment strategies", "Estimación de costos de las estrategias o planes de inversión"),
        d("c", "Cibles mesurables de produits et de résultats dans les stratégies sectorielles", "Measurable output/outcome targets in sector strategies", "Metas medibles de productos y resultados en las estrategias sectoriales"),
      ]},
      { n: "3", method: null, fr: "Coordination entre entités", en: "Coordination between entities", es: "Coordinación entre entidades", dims: [
        d("a", "Coordination des dépenses en capital des administrations infranationales avec l'administration centrale", "Coordination of subnational capital spending with central government", "Coordinación del gasto de capital de los gobiernos subnacionales con el gobierno central"),
        d("b", "Transferts en capital aux AIN transparents et fondés sur des règles, avec information fournie à temps", "Rule-based, transparent capital transfers to subnational governments with timely information", "Transferencias de capital a los gobiernos subnacionales transparentes y basadas en reglas, con información oportuna"),
        d("c", "Communication des passifs conditionnels des AIN, sociétés publiques et PPP à l'administration centrale", "Reporting of contingent liabilities from SNGs, public corporations and PPPs", "Comunicación de los pasivos contingentes de los gobiernos subnacionales, las empresas públicas y las APP al gobierno central"),
      ]},
      { n: "4", method: null, fr: "Évaluation des projets", en: "Project appraisal", es: "Evaluación de proyectos", dims: [
        d("a", "Analyse technique, économique et financière rigoureuse des grands projets", "Rigorous technical, economic and financial appraisal of major projects", "Análisis técnico, económico y financiero riguroso de los grandes proyectos"),
        d("b", "Méthodologie standard et structure d'appui centrale pour l'évaluation des projets", "Standard appraisal methodology and central support", "Metodología estándar y estructura central de apoyo para la evaluación de proyectos"),
        d("c", "Prise en compte des risques dans l'évaluation des projets", "Risk consideration in project appraisal", "Consideración de los riesgos en la evaluación de proyectos"),
      ]},
      { n: "5", method: null, fr: "Financements alternatifs de l'infrastructure", en: "Alternative infrastructure financing", es: "Financiamiento alternativo de la infraestructura", dims: [
        d("a", "Cadre réglementaire favorisant la concurrence sur les marchés contestables d'infrastructures économiques", "Regulatory framework fostering competition in contestable infrastructure markets", "Marco regulatorio que fomenta la competencia en los mercados disputables de infraestructura económica"),
        d("b", "Stratégie/politique PPP publiée et cadre juridique guidant la préparation, la sélection et la gestion des PPP", "Published PPP strategy/policy and legal framework for PPP preparation, selection and management", "Estrategia/política de APP publicada y marco jurídico que orienta la preparación, selección y gestión de las APP"),
        d("c", "Supervision des plans d'investissement des sociétés publiques et suivi de leurs résultats financiers", "Oversight of public corporations' investment plans and monitoring of their financial performance", "Supervisión de los planes de inversión de las empresas públicas y seguimiento de sus resultados financieros"),
      ]},
    ]},
    { key: "alloc", num: "B", fr: "Affectation des investissements aux secteurs et aux projets appropriés", en: "Allocating investment to the right sectors and projects", es: "Asignación de la inversión a los sectores y proyectos adecuados", inds: [
      { n: "6", method: null, fr: "Budgétisation pluriannuelle", en: "Multiyear budgeting", es: "Presupuestación plurianual", dims: [
        d("a", "Prévision pluriannuelle des dépenses en capital par ministère ou secteur", "Medium-term projections of capital spending by ministry or sector", "Proyección plurianual del gasto de capital por ministerio o sector"),
        d("b", "Plafonds pluriannuels des dépenses en capital par ministère, secteur ou programme", "Multiyear ceilings on capital expenditure by ministry, sector or program", "Topes plurianuales del gasto de capital por ministerio, sector o programa"),
        d("c", "Publication des projections du coût total de construction des grands projets", "Publication of total construction cost projections for major projects", "Publicación de las proyecciones del costo total de construcción de los grandes proyectos"),
      ]},
      { n: "7", method: null, fr: "Exhaustivité et unité du budget", en: "Budget comprehensiveness and unity", es: "Exhaustividad y unidad del presupuesto", dims: [
        d("a", "Dépenses en capital majoritairement réalisées dans le cadre du budget", "Most capital spending undertaken through the budget", "Gasto de capital ejecutado mayoritariamente a través del presupuesto"),
        d("b", "Présentation de tous les projets, quelle que soit la source de financement, dans la documentation budgétaire", "All projects, regardless of financing source, shown in budget documentation", "Presentación de todos los proyectos, cualquiera que sea la fuente de financiamiento, en la documentación presupuestaria"),
        d("c", "Budgets d'investissement et de fonctionnement préparés et présentés ensemble", "Capital and recurrent budgets prepared and presented together", "Presupuestos de inversión y de funcionamiento preparados y presentados conjuntamente"),
      ]},
      { n: "8", method: null, fr: "Budgétisation des investissements", en: "Budgeting for investment", es: "Presupuestación de la inversión", dims: [
        d("a", "Crédits couvrant le total des dépenses du projet alloués dès son démarrage", "Appropriations covering total project costs at project start", "Créditos que cubren el costo total del proyecto asignados desde su inicio"),
        d("b", "Interdiction des virements en cours d'exercice des dépenses en capital vers les dépenses courantes", "Prohibition of in-year virements from capital to current spending", "Prohibición de las transferencias presupuestarias (virements) dentro del ejercicio, del gasto de capital al gasto corriente"),
        d("c", "Priorité à l'achèvement des projets en cours plutôt qu'au lancement de nouveaux projets", "Priority to completing ongoing projects over starting new ones", "Prioridad a la conclusión de los proyectos en curso antes que al lanzamiento de nuevos proyectos"),
      ]},
      { n: "9", method: null, fr: "Financement des activités d'entretien", en: "Maintenance funding", es: "Financiamiento de las actividades de mantenimiento", dims: [
        d("a", "Méthodologie standard d'estimation des besoins d'entretien courant et de leur financement", "Standard methodology for estimating routine maintenance needs and funding", "Metodología estándar de estimación de las necesidades de mantenimiento ordinario y de su financiamiento"),
        d("b", "Méthodologie standard pour les améliorations majeures, incluses dans les plans d'investissement", "Standard methodology for major improvements, included in investment plans", "Metodología estándar para las mejoras mayores, incluidas en los planes de inversión"),
        d("c", "Identification dans le budget des dépenses d'entretien courant et d'améliorations majeures", "Identification of routine maintenance and major improvements in the budget", "Identificación en el presupuesto del gasto de mantenimiento ordinario y de mejoras mayores"),
      ]},
      { n: "10", method: null, fr: "Sélection des projets", en: "Project selection", es: "Selección de proyectos", dims: [
        d("a", "Examen central des évaluations des grands projets avant inclusion au budget", "Central review of major project appraisals before budget inclusion", "Examen central de las evaluaciones de los grandes proyectos antes de su inclusión en el presupuesto"),
        d("b", "Critères standard de sélection publiés et respectés", "Published and followed standard selection criteria", "Criterios estándar de selección publicados y respetados"),
        d("c", "Liste de projets déjà évalués en attente d'inclusion dans le budget annuel", "Pipeline of appraised projects awaiting inclusion in the annual budget", "Cartera de proyectos ya evaluados pendientes de inclusión en el presupuesto anual"),
      ]},
    ]},
    { key: "impl", num: "C", fr: "Apport d'actifs publics productifs et durables", en: "Delivering productive and durable public assets", es: "Provisión de activos públicos productivos y duraderos", inds: [
      { n: "11", method: null, fr: "Marchés publics", en: "Procurement", es: "Contratación pública", dims: [
        d("a", "Processus de passation des marchés ouvert et transparent pour les grands projets", "Open and transparent procurement for major projects", "Proceso de contratación abierto y transparente para los grandes proyectos"),
        d("b", "Système assurant un suivi adéquat des marchés publics", "System for adequate procurement monitoring", "Sistema que asegura un seguimiento adecuado de la contratación pública"),
        d("c", "Examen des plaintes équitable et dans des délais courts", "Fair and timely procurement complaints review", "Examen de las reclamaciones justo y en plazos breves"),
      ]},
      { n: "12", method: null, fr: "Disponibilité du financement", en: "Availability of funding", es: "Disponibilidad de financiamiento", dims: [
        d("a", "Capacité des ministères à planifier et engager à l'avance sur la base de prévisions de trésorerie fiables", "Ministries can plan and commit ahead based on reliable cash-flow forecasts", "Capacidad de los ministerios para planificar y comprometer con antelación sobre la base de previsiones de tesorería fiables"),
        d("b", "Décaissement à temps des fonds destinés aux projets", "Timely disbursement of project funding", "Desembolso oportuno de los fondos destinados a los proyectos"),
        d("c", "Intégration des financements extérieurs dans la structure principale des comptes bancaires de l'État", "External (donor) project financing integrated in the main government bank account structure", "Integración del financiamiento externo en la estructura principal de las cuentas bancarias del Estado"),
      ]},
      { n: "13", method: null, fr: "Gestion et suivi du portefeuille", en: "Portfolio management and oversight", es: "Gestión y seguimiento de la cartera", dims: [
        d("a", "Suivi des grands projets durant la phase d'exécution", "Monitoring of major projects during implementation", "Seguimiento de los grandes proyectos durante la fase de ejecución"),
        d("b", "Possibilité de transférer des fonds entre projets durant l'exécution", "Possibility to reallocate funds between projects during implementation", "Posibilidad de transferir fondos entre proyectos durante la ejecución"),
        d("c", "Examen ex post systématique des projets achevés pour ajuster politiques et procédures", "Systematic ex post review of completed projects to adjust policies and procedures", "Examen ex post sistemático de los proyectos concluidos para ajustar políticas y procedimientos"),
      ]},
      { n: "14", method: null, fr: "Gestion de l'exécution des projets", en: "Management of project implementation", es: "Gestión de la ejecución de los proyectos", dims: [
        d("a", "Dispositif efficace de gestion de projet dans les ministères/organismes", "Effective project management arrangements in ministries/agencies", "Mecanismos eficaces de gestión de proyectos en los ministerios/organismos"),
        d("b", "Règles, procédures et directives standard pour les ajustements de projets", "Standard rules, procedures and guidelines for project adjustments", "Reglas, procedimientos y directrices estándar para los ajustes de proyectos"),
        d("c", "Audits externes ex post systématiques des projets d'investissement", "Systematic ex post external audit of investment projects", "Auditorías externas ex post sistemáticas de los proyectos de inversión"),
      ]},
      { n: "15", method: null, fr: "Suivi des actifs publics", en: "Monitoring of public assets", es: "Seguimiento de los activos públicos", dims: [
        d("a", "Registres d'actifs mis à jour régulièrement (stocks, valeurs, état)", "Asset registers updated regularly (stocks, values, condition)", "Registros de activos actualizados periódicamente (existencias, valores, estado)"),
        d("b", "Enregistrement de la valeur des actifs non financiers dans les comptes de l'État", "Recording of nonfinancial asset values in government financial accounts", "Registro del valor de los activos no financieros en las cuentas del Estado"),
        d("c", "Amortissement des immobilisations porté au compte de résultat de l'État", "Depreciation of fixed assets in government operating statements", "Depreciación de los activos fijos imputada al estado de resultados del Estado"),
      ]},
    ]},
  ];

  // ── MAPS — OCDE (méthodologie 2018) ──────────────────────────────────────
  // 4 piliers, 14 indicateurs, 55 sous-indicateurs. Évaluation QUALITATIVE :
  // par sous-indicateur, constat d'écart (aucun / écart / écart substantiel)
  // + drapeau rouge éventuel — pas de notes lettrées.
  // EN : méthodologie officielle ; FR : traduction de travail.
  const MAPS_AREAS = [
    { key: "p1", num: "I", fr: "Cadre juridique, réglementaire et politique", en: "Legal, Regulatory and Policy Framework", es: "Marco jurídico, regulatorio y de políticas", inds: [
      { n: "1", method: null, fr: "Le cadre juridique respecte les principes convenus et les obligations applicables", en: "The public procurement legal framework achieves the agreed principles and complies with applicable obligations", es: "El marco jurídico respeta los principios convenidos y cumple las obligaciones aplicables", dims: [
        d("a", "Champ d'application et couverture du cadre juridique et réglementaire", "Scope of application and coverage of the legal and regulatory framework", "Ámbito de aplicación y cobertura del marco jurídico y regulatorio"),
        d("b", "Méthodes de passation des marchés", "Procurement methods", "Métodos de contratación pública"),
        d("c", "Règles de publicité et délais", "Advertising rules and time limits", "Reglas de publicidad y plazos"),
        d("d", "Règles de participation", "Rules on participation", "Reglas de participación"),
        d("e", "Dossiers de marchés et spécifications", "Procurement documentation and specifications", "Documentos de licitación y especificaciones"),
        d("f", "Critères d'évaluation et d'attribution", "Evaluation and award criteria", "Criterios de evaluación y de adjudicación"),
        d("g", "Soumission, réception et ouverture des offres", "Submission, receipt and opening of tenders", "Presentación, recepción y apertura de ofertas"),
        d("h", "Droit de contestation et de recours", "Right to challenge and appeal", "Derecho de impugnación y de recurso"),
        d("i", "Gestion des contrats", "Contract management", "Gestión de contratos"),
        d("j", "Passation électronique des marchés (e-procurement)", "Electronic procurement (e-Procurement)", "Contratación electrónica (e-procurement)"),
        d("k", "Normes de conservation des dossiers, documents et données électroniques", "Norms for safekeeping of records, documents and electronic data", "Normas de conservación de los expedientes, documentos y datos electrónicos"),
        d("l", "Principes des marchés publics dans la législation spécialisée", "Public procurement principles in specialised legislation", "Principios de la contratación pública en la legislación especializada"),
      ]},
      { n: "2", method: null, fr: "Les règlements d'application et outils soutiennent le cadre juridique", en: "Implementing regulations and tools support the legal framework", es: "Los reglamentos de aplicación y las herramientas respaldan el marco jurídico", dims: [
        d("a", "Règlements d'application définissant processus et procédures", "Implementing regulations to define processes and procedures", "Reglamentos de aplicación que definen procesos y procedimientos"),
        d("b", "Modèles de documents de marchés (biens, travaux, services)", "Model procurement documents for goods, works and services", "Modelos de documentos de contratación (bienes, obras, servicios)"),
        d("c", "Conditions contractuelles types", "Standard contract conditions", "Condiciones contractuales tipo"),
        d("d", "Guide ou manuel de l'utilisateur pour les entités adjudicatrices", "User's guide or manual for procuring entities", "Guía o manual del usuario para las entidades contratantes"),
      ]},
      { n: "3", method: null, fr: "Les cadres juridique et politique soutiennent le développement durable et les obligations internationales", en: "The legal and policy frameworks support the sustainable development of the country and international obligations", es: "Los marcos jurídico y de políticas respaldan el desarrollo sostenible del país y las obligaciones internacionales", dims: [
        d("a", "Achats publics durables", "Sustainable Public Procurement (SPP)", "Contratación pública sostenible"),
        d("b", "Obligations découlant des accords internationaux", "Obligations deriving from international agreements", "Obligaciones derivadas de los acuerdos internacionales"),
      ]},
    ]},
    { key: "p2", num: "II", fr: "Cadre institutionnel et capacités de gestion", en: "Institutional Framework and Management Capacity", es: "Marco institucional y capacidad de gestión", inds: [
      { n: "4", method: null, fr: "Le système de passation des marchés est intégré à la gestion des finances publiques", en: "The public procurement system is mainstreamed and well integrated with the PFM system", es: "El sistema de contratación pública está integrado en la gestión de las finanzas públicas", dims: [
        d("a", "Planification des marchés et cycle budgétaire", "Procurement planning and the budget cycle", "Planificación de las adquisiciones y ciclo presupuestario"),
        d("b", "Procédures financières et cycle de passation", "Financial procedures and the procurement cycle", "Procedimientos financieros y ciclo de contratación"),
      ]},
      { n: "5", method: null, fr: "Le pays dispose d'une institution chargée de la fonction normative/réglementaire", en: "The country has an institution in charge of the normative/regulatory function", es: "El país dispone de una institución encargada de la función normativa/regulatoria", dims: [
        d("a", "Statut et base juridique de la fonction normative/réglementaire", "Status and legal basis of the normative/regulatory function", "Estatus y base jurídica de la función normativa/regulatoria"),
        d("b", "Responsabilités de la fonction normative/réglementaire", "Responsibilities of the normative/regulatory function", "Responsabilidades de la función normativa/regulatoria"),
        d("c", "Organisation, financement, effectifs, indépendance et autorité", "Organisation, funding, staffing, and level of independence and authority", "Organización, financiamiento, dotación de personal, independencia y autoridad"),
        d("d", "Prévention des conflits d'intérêts", "Avoiding conflict of interest", "Prevención de los conflictos de interés"),
      ]},
      { n: "6", method: null, fr: "Les entités adjudicatrices et leurs mandats sont clairement définis", en: "Procuring entities and their mandates are clearly defined", es: "Las entidades contratantes y sus mandatos están claramente definidos", dims: [
        d("a", "Définition, responsabilités et pouvoirs formels des entités adjudicatrices", "Definition, responsibilities and formal powers of procuring entities", "Definición, responsabilidades y facultades formales de las entidades contratantes"),
        d("b", "Organe centralisé de passation des marchés", "Centralised procurement body", "Órgano centralizado de contratación pública"),
      ]},
      { n: "7", method: null, fr: "La passation des marchés s'appuie sur un système d'information efficace", en: "Public procurement is embedded in an effective information system", es: "La contratación pública se apoya en un sistema de información eficaz", dims: [
        d("a", "Publication des informations sur les marchés publics appuyée par les technologies de l'information", "Publication of public procurement information supported by information technology", "Publicación de la información sobre contratación pública apoyada en las tecnologías de la información"),
        d("b", "Utilisation de la passation électronique", "Use of e-Procurement", "Uso de la contratación electrónica"),
        d("c", "Stratégies de gestion des données sur les marchés", "Strategies to manage procurement data", "Estrategias de gestión de los datos sobre contratación"),
      ]},
      { n: "8", method: null, fr: "Le système de passation des marchés a une forte capacité de développement et d'amélioration", en: "The public procurement system has a strong capacity to develop and improve", es: "El sistema de contratación pública tiene una sólida capacidad de desarrollo y mejora", dims: [
        d("a", "Formation, conseil et assistance", "Training, advice and assistance", "Formación, asesoramiento y asistencia"),
        d("b", "Reconnaissance de la passation des marchés comme profession", "Recognition of procurement as a profession", "Reconocimiento de la contratación pública como profesión"),
        d("c", "Suivi de la performance pour améliorer le système", "Monitoring performance to improve the system", "Seguimiento del desempeño para mejorar el sistema"),
      ]},
    ]},
    { key: "p3", num: "III", fr: "Opérations de passation et pratiques du marché", en: "Public Procurement Operations and Market Practices", es: "Operaciones de contratación pública y prácticas del mercado", inds: [
      { n: "9", method: null, fr: "Les pratiques de passation des marchés atteignent les objectifs fixés", en: "Public procurement practices achieve stated objectives", es: "Las prácticas de contratación pública alcanzan los objetivos establecidos", dims: [
        d("a", "Planification", "Planning", "Planificación"),
        d("b", "Sélection et contractualisation", "Selection and contracting", "Selección y contratación"),
        d("c", "Gestion des contrats en pratique", "Contract management in practice", "Gestión de contratos en la práctica"),
      ]},
      { n: "10", method: null, fr: "Le marché des marchés publics est pleinement opérationnel", en: "The public procurement market is fully functional", es: "El mercado de la contratación pública es plenamente funcional", dims: [
        d("a", "Dialogue et partenariats entre secteurs public et privé", "Dialogue and partnerships between public and private sector", "Diálogo y alianzas entre los sectores público y privado"),
        d("b", "Organisation du secteur privé et accès au marché public", "Private sector's organisation and access to the public procurement market", "Organización del sector privado y acceso al mercado de la contratación pública"),
        d("c", "Secteurs clés et stratégies sectorielles", "Key sectors and sector strategies", "Sectores clave y estrategias sectoriales"),
      ]},
    ]},
    { key: "p4", num: "IV", fr: "Redevabilité, intégrité et transparence", en: "Accountability, Integrity and Transparency", es: "Rendición de cuentas, integridad y transparencia", inds: [
      { n: "11", method: null, fr: "La transparence et l'engagement de la société civile renforcent l'intégrité", en: "Transparency and civil society engagement strengthen integrity in public procurement", es: "La transparencia y la participación de la sociedad civil fortalecen la integridad en la contratación pública", dims: [
        d("a", "Environnement favorable à la consultation publique et au suivi", "An enabling environment for public consultation and monitoring", "Entorno propicio para la consulta pública y el seguimiento"),
        d("b", "Accès adéquat et rapide du public à l'information", "Adequate and timely access to information by the public", "Acceso del público a la información adecuado y oportuno"),
        d("c", "Engagement direct de la société civile", "Direct engagement of civil society", "Participación directa de la sociedad civil"),
      ]},
      { n: "12", method: null, fr: "Le pays dispose de systèmes efficaces de contrôle et d'audit", en: "The country has effective control and audit systems", es: "El país dispone de sistemas eficaces de control y auditoría", dims: [
        d("a", "Cadre juridique, organisation et procédures du système de contrôle", "Legal framework, organisation and procedures of the control system", "Marco jurídico, organización y procedimientos del sistema de control"),
        d("b", "Coordination des contrôles et audits des marchés publics", "Co-ordination of controls and audits of public procurement", "Coordinación de los controles y auditorías de la contratación pública"),
        d("c", "Application et suivi des constats et recommandations", "Enforcement and follow-up on findings and recommendations", "Aplicación y seguimiento de las constataciones y recomendaciones"),
        d("d", "Qualification et formation pour la conduite des audits de marchés", "Qualification and training to conduct procurement audits", "Calificación y formación para la realización de auditorías de contratación"),
      ]},
      { n: "13", method: null, fr: "Les mécanismes de recours sont efficaces et efficients", en: "Procurement appeals mechanisms are effective and efficient", es: "Los mecanismos de recurso son eficaces y eficientes", dims: [
        d("a", "Processus de contestation et de recours", "Process for challenges and appeals", "Proceso de impugnación y de recurso"),
        d("b", "Indépendance et capacité de l'organe de recours", "Independence and capacity of the appeals body", "Independencia y capacidad del órgano de recurso"),
        d("c", "Décisions de l'organe de recours", "Decisions of the appeals body", "Decisiones del órgano de recurso"),
      ]},
      { n: "14", method: null, fr: "Le pays a mis en place des mesures d'éthique et de lutte contre la corruption", en: "The country has ethics and anti-corruption measures in place", es: "El país ha establecido medidas de ética y de lucha contra la corrupción", dims: [
        d("a", "Définition légale des pratiques interdites, des conflits d'intérêts, des responsabilités et des sanctions", "Legal definition of prohibited practices, conflicts of interest, and associated responsibilities and penalties", "Definición legal de las prácticas prohibidas, los conflictos de interés, las responsabilidades y las sanciones"),
        d("b", "Dispositions sur les pratiques interdites dans les dossiers de marchés", "Provisions on prohibited practices in procurement documents", "Disposiciones sobre prácticas prohibidas en los documentos de contratación"),
        d("c", "Systèmes efficaces de sanction et d'application", "Effective sanctions and enforcement systems", "Sistemas eficaces de sanción y de aplicación"),
        d("d", "Cadre anticorruption et formation à l'intégrité", "Anti-corruption framework and integrity training", "Marco anticorrupción y formación en integridad"),
        d("e", "Soutien des parties prenantes au renforcement de l'intégrité", "Stakeholder support to strengthen integrity in procurement", "Apoyo de las partes interesadas al fortalecimiento de la integridad"),
        d("f", "Mécanismes sûrs de signalement des pratiques interdites ou des comportements contraires à l'éthique", "Secure mechanisms for reporting prohibited practices or unethical behaviour", "Mecanismos seguros de denuncia de prácticas prohibidas o de comportamientos contrarios a la ética"),
        d("g", "Codes de conduite/éthique et règles de déclaration de patrimoine", "Codes of conduct/ethics and financial disclosure rules", "Códigos de conducta/ética y reglas de declaración de patrimonio"),
      ]},
    ]},
  ];

  function build(areas) {
    return areas.map((a) => ({
      ...a,
      inds: a.inds.map((ind) => ({
        code: ind.n, method: ind.method, fr: ind.fr, en: ind.en, es: ind.es != null ? ind.es : ind.en,
        dims: ind.dims.map((dd) => ({ code: ind.n + "-" + dd.s, fr: dd.fr, en: dd.en, es: dd.es != null ? dd.es : dd.en })),
      })),
    }));
  }

  // ── C-PIMA — FMI (Climate-PIMA Handbook, 1re éd., 10 nov. 2025) ────────────
  // 5 institutions climat (C1–C5) × 3 dimensions = 15 (Figure 4.1 du Handbook).
  // Notation à 3 niveaux : Non atteint / Partiellement atteint / Pleinement
  // atteint (pas encore de score d'efficacité — cf. Handbook §"scoring"). Grille
  // sur le moteur GFP existant ; alimente CRPFM-5. Le Sénégal en a eu un en
  // février 2023. Libellés EN mot à mot du Handbook ; FR/ES = traduction de
  // travail (pas d'édition officielle FR/ES) → ⚠ relecture native recommandée.
  const CPIMA_AREAS = [
    { key: "cpima", num: "C", fr: "Gestion de l'investissement public face au climat", en: "Climate-aware public investment management", es: "Gestión de la inversión pública frente al clima", inds: [
      { n: "C1", method: null, fr: "Planification tenant compte du climat", en: "Climate-aware planning", es: "Planificación que integra el clima", dims: [
        d("a", "Planification nationale et sectorielle de l'investissement public", "National and sectoral public investment planning", "Planificación nacional y sectorial de la inversión pública"),
        d("b", "Planification spatiale — réglementation de l'usage des sols et codes de construction", "Spatial planning — land use regulations and building codes", "Planificación territorial — regulación del uso del suelo y códigos de construcción"),
        d("c", "Orientation et appui centralisés à la planification", "Centralized guidance and support for planning", "Orientación y apoyo centralizados para la planificación"),
      ]},
      { n: "C2", method: null, fr: "Coordination entre entités", en: "Coordination between entities", es: "Coordinación entre entidades", dims: [
        d("a", "Coordination au sein de l'administration centrale", "Coordination across central government", "Coordinación dentro del gobierno central"),
        d("b", "Coordination avec les administrations infranationales", "Coordination with sub-national governments", "Coordinación con los gobiernos subnacionales"),
        d("c", "Coordination et supervision des sociétés publiques", "Coordination with and oversight of public corporations", "Coordinación y supervisión de las empresas públicas"),
      ]},
      { n: "C3", method: null, fr: "Évaluation et sélection des projets", en: "Project appraisal and selection", es: "Evaluación y selección de proyectos", dims: [
        d("a", "Évaluation des projets intégrant le changement climatique", "Project appraisal with climate change", "Evaluación de proyectos que integra el cambio climático"),
        d("b", "Cadre des PPP et répartition des risques climatiques", "PPP framework and allocation of climate risks", "Marco de las APP y asignación de los riesgos climáticos"),
        d("c", "Sélection des projets intégrant le changement climatique", "Project selection with climate change", "Selección de proyectos que integra el cambio climático"),
      ]},
      { n: "C4", method: null, fr: "Budgétisation et gestion de portefeuille", en: "Budgeting and portfolio management", es: "Presupuestación y gestión de cartera", dims: [
        d("a", "Étiquetage (marquage) des dépenses d'investissement public liées au climat", "Tagging of climate-related public investment expenditures", "Etiquetado del gasto de inversión pública relacionado con el clima"),
        d("b", "Revues ex post des résultats climatiques", "Ex post reviews of climate outcomes", "Revisiones ex post de los resultados climáticos"),
        d("c", "Gestion des actifs et maintenance intégrant le changement climatique", "Asset management and maintenance with climate change", "Gestión de activos y mantenimiento que integra el cambio climático"),
      ]},
      { n: "C5", method: null, fr: "Gestion des risques", en: "Risk management", es: "Gestión de riesgos", dims: [
        d("a", "Stratégie nationale de gestion des risques de catastrophe", "National disaster risk management strategy", "Estrategia nacional de gestión del riesgo de desastres"),
        d("b", "Mécanismes de financement ex ante pour gérer les risques climatiques", "Ex ante financing mechanisms to manage climate risks", "Mecanismos de financiamiento ex ante para gestionar los riesgos climáticos"),
        d("c", "Analyse des risques budgétaires intégrant le changement climatique", "Fiscal risk analysis with climate change", "Análisis de riesgos fiscales que integra el cambio climático"),
      ]},
    ]},
  ];

  window.GFP_DIAG_CATALOGS = {
    tadat: {
      code: "tadat",
      fr: "TADAT — Administration fiscale", en: "TADAT — Tax administration", es: "TADAT — Administración tributaria",
      version: "Field Guide 2019",
      // Agrégation par indicateur M1/M2 — même table de conversion que PEFA.
      aggregate: true,
      scores: ["", "A", "B", "C", "D", "NA"],
      overrides: ["A", "B+", "B", "C+", "C", "D+", "D"],
      areaLabel: { fr: "Domaine de résultats (POA)", en: "Performance Outcome Area (POA)", es: "Área de Resultados de Desempeño (POA)" },
      areas: build(TADAT_AREAS),
    },
    dempa: {
      code: "dempa",
      fr: "DeMPA — Gestion de la dette", en: "DeMPA — Debt management", es: "DeMPA — Gestión de la deuda",
      version: "2021",
      // Notation par dimension uniquement (pas d'agrégat par DPI) ; N/R
      // = non noté (« not rated »), distinct de NA.
      aggregate: false,
      scores: ["", "A", "B", "C", "D", "N/R"],
      overrides: [],
      areaLabel: { fr: "Domaine", en: "Area", es: "Área" },
      areas: build(DEMPA_AREAS),
    },
    pima: {
      code: "pima",
      fr: "PIMA — Investissement public", en: "PIMA — Public investment", es: "PIMA — Inversión pública",
      version: "FMI 2018",
      aggregate: false,
      // Double notation par question : conception institutionnelle ET
      // efficacité, sur l'échelle faible / moyenne / élevée du questionnaire.
      dual: { a: { fr: "Conception", en: "Design", es: "Diseño" }, b: { fr: "Efficacité", en: "Effectiveness", es: "Eficacia" } },
      scores: ["", "L", "M", "H"],
      labels: {
        L: { fr: "Faible",  en: "Low", es: "Baja",    color: "#b91c1c", fill: "#fee2e2" },
        M: { fr: "Moyenne", en: "Medium", es: "Media", color: "#b45309", fill: "#fef3c7" },
        H: { fr: "Élevée",  en: "High", es: "Alta",   color: "#15803d", fill: "#dcfce7" },
      },
      overrides: [],
      areaLabel: { fr: "Phase", en: "Phase", es: "Fase" },
      areas: build(PIMA_AREAS),
    },
    maps: {
      code: "maps",
      fr: "MAPS — Marchés publics", en: "MAPS — Public procurement", es: "MAPS — Contratación pública",
      version: "OCDE 2018",
      aggregate: false,
      // Évaluation qualitative par sous-indicateur : constat d'écart
      // + drapeau rouge éventuel (pas de notes lettrées dans MAPS).
      flags: true,
      scores: ["", "none", "gap", "subst"],
      labels: {
        none:  { fr: "Aucun écart",        en: "No gap", es: "Sin brecha",          color: "#15803d", fill: "#dcfce7" },
        gap:   { fr: "Écart",              en: "Gap", es: "Brecha",             color: "#b45309", fill: "#fef3c7" },
        subst: { fr: "Écart substantiel",  en: "Substantive gap", es: "Brecha sustancial", color: "#b91c1c", fill: "#fee2e2" },
      },
      overrides: [],
      areaLabel: { fr: "Pilier", en: "Pillar", es: "Pilar" },
      areas: build(MAPS_AREAS),
    },
    cpima: {
      code: "cpima",
      fr: "C-PIMA — Climat & investissement public", en: "C-PIMA — Climate & public investment", es: "C-PIMA — Clima e inversión pública",
      version: "FMI 2025",
      aggregate: false,
      // Lien : le C-PIMA constitue la base d'évidence détaillée de l'indicateur
      // PEFA-Climat CRPFM-5 (gestion sensible au climat des investissements publics).
      crossRef: {
        fr: "Alimente PEFA-Climat CRPFM-5 (gestion sensible au climat des investissements publics)",
        en: "Feeds PEFA-Climate CRPFM-5 (climate-responsive public investment management)",
        es: "Alimenta PEFA-Clima CRPFM-5 (gestión de la inversión pública sensible al clima)",
      },
      // Notation à 3 niveaux du Handbook (pas de score d'efficacité à ce stade).
      scores: ["", "NM", "PM", "FM"],
      labels: {
        NM: { fr: "Non atteint",           en: "Not met",       es: "No alcanzado",           color: "#b91c1c", fill: "#fee2e2" },
        PM: { fr: "Partiellement atteint", en: "Partially met", es: "Parcialmente alcanzado", color: "#b45309", fill: "#fef3c7" },
        FM: { fr: "Pleinement atteint",    en: "Fully met",     es: "Plenamente alcanzado",   color: "#15803d", fill: "#dcfce7" },
      },
      overrides: [],
      areaLabel: { fr: "Module", en: "Module", es: "Módulo" },
      areas: build(CPIMA_AREAS),
    },
  };
})();
