   /* ═══════════════════════════════════════
       STRUCTURE COMMUNE (couleur-agnostique)
    ═══════════════════════════════════════ */
   
   .diag-table-wrapper {
       box-sizing: border-box;
       width: 100%;
       overflow-x: auto;
       border-radius: 12px;
       box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
       margin: 2rem auto;
   }
   
   .diag-table {
       width: 100%;
       border-collapse: collapse;
       min-width: 420px;
       font-family: var(--font-Poppins);
       background: #fff;
       border-radius: 12px;
       overflow: hidden;
   }
   
   .diag-table tbody tr:not(:last-child) {
       border-bottom: 1px solid #00000032;
   }
   
   .diag-table thead tr th:not(:last-child) {
       border-right: 1px solid #00000032;
   }
   
   .diag-table tbody tr td:not(:last-child) {
       border-right: 1px solid #00000032;
   }
   
   .diag-table__th {
       color: #fff;
       font-weight: bold;
       font-size: 14px;
       padding: 16px 20px;
       text-align: center;
   }
   
   .diag-table__th--label {
       text-align: left;
       line-height: 1.4;
       text-align: center;
   }
   
   .diag-table__td {
       box-sizing: border-box;
       padding: 14px 20px;
       text-align: center;
       font-size: 14px;
       font-weight: 500;
       color: #333;
   }
   
   .diag-table__td--index {
       font-weight: 500;
   }
   /* ── Mobile : cartes ── */
   
   .diag-cards {
       display: none;
       box-sizing: border-box;
   }
   
   .diag-card {
       box-sizing: border-box;
       background: #fff;
       border-radius: 12px;
       box-shadow: 0 2px 10px rgba(0, 0, 0, 0.07);
       margin-bottom: 12px;
       font-family: var(--font-Poppins);
       overflow: hidden;
   }
   
   .diag-card__header {
       font-family: var(--font-Poppins);
       color: #fff;
       font-size: 13px;
       font-weight: bold;
       padding: 8px 14px;
   }
   
   .diag-card__grid {
       display: grid;
       grid-template-columns: repeat(5, 1fr);
   }
   
   .diag-card__cell {
       box-sizing: border-box;
       padding: 10px 6px;
       text-align: center;
       font-size: 13px;
       color: #333;
   }
   
   .diag-card__cell-label {
       display: block;
       font-size: 11px;
       font-weight: 500;
       margin-bottom: 4px;
       text-transform: uppercase;
       letter-spacing: 0.03em;
   }
   
   @media (max-width: 600px) {
       /* .diag-table-wrapper {
           display: none;
       } */
       /* .diag-cards {
           display: block;
       } */
   }
   /* ═══════════════════════════════════════
         THÈME ROUGE  →  .diag--red
      ═══════════════════════════════════════ */
   
   .diag--red .diag-table__head-row {
       background-color: #b85c5c;
   }
   
   .diag--red .diag-table__row--even {
       background-color: #f5e9e9;
   }
   
   .diag--red .diag-table__row--odd {
       background-color: #fff;
   }
   
   .diag--red .diag-table__td--index {
       color: #8b3a3a;
   }
   
   .diag--red .diag-card__header {
       background-color: #b85c5c;
   }
   
   .diag--red .diag-card__cell {
       border-right: 1px solid #f0e0e0;
   }
   
   .diag--red .diag-card__cell:last-child {
       border-right: none;
   }
   
   .diag--red .diag-card__cell-label {
       color: #b85c5c;
   }
   /* ═══════════════════════════════════════
         THÈME BLEU   →  .diag--blue
      ═══════════════════════════════════════ */
   
   .diag--blue .diag-table__head-row {
       background-color: #1f4e6e;
   }
   
   .diag--blue .diag-table__row--even {
       background-color: #dde8f0;
   }
   
   .diag--blue .diag-table__row--odd {
       background-color: #fff;
   }
   
   .diag--blue .diag-table__td--index {
       color: #1f4e6e;
   }
   
   .diag--blue .diag-card__header {
       background-color: #1f4e6e;
   }
   
   .diag--blue .diag-card__cell {
       border-right: 1px solid #ccdce8;
   }
   
   .diag--blue .diag-card__cell:last-child {
       border-right: none;
   }
   
   .diag--blue .diag-card__cell-label {
       color: #1f4e6e;
   }