/*
 * Personnalisation DITA « alstom » du viewer : alignement visuel sur la sortie S1000D.
 *
 * Version : 0.17.2 (2026-10-19). Historique : CHANGELOG.md. La version change à chaque
 * modification des règles.
 *
 * Portée : chaque sélecteur commence par
 *   .mainContentWrapper[data-norm="DITA"][data-custo="alstom"]
 * ce qui exclut tout effet sur S1000D.
 *
 * Les valeurs reprennent les styles calculés S1000D relevés dans le viewer
 * (relevé du 2026-10-15). Les couleurs passent par les variables de thème du viewer
 * (thèmes clair et sombre), avec la valeur du thème clair en secours. Chaque règle indique l’écart traité
 * (Gnn, voir le document d’accompagnement).
 *
 * Palliatifs (recomposition de la présentation en attendant la transformation) : listés avec leur
 * fragilité dans la section « Palliatifs et limites connues » du document d’accompagnement.
 *
 * Sections : 1. Titre · 2. Conditions préalables · 3. Étapes · 4. Figures ·
 *            5. Descriptions · 6. Palliatifs (à retirer quand la transformation corrige l’écart)
 *
 * G08 (décision du 2026-10-16) : les catégories « N.A. » restent affichées, comme le « None » des
 * catégories vides S1000D ; si toutes le sont, une seule ligne « No equipment ». Question du
 * masquage à discuter avec les équipes.
 *
 * Limite connue (décision du 2026-10-16) : les libellés générés en CSS (« References » pour G21,
 * « No equipment » pour G08) sont en anglais et ne suivent pas la langue du document. Le corpus
 * est en anglais ; à revoir si d’autres langues sont livrées (règles :lang() ou transformation).
 *
 * Palliatifs non retenus (décision du 2026-10-16, à discuter avec les équipes) : G04, réordonnancement
 * des avertissements dans les conditions préalables (flex + order) ; G23, page de garde réordonnée.
 */

/* ===== 1. Titre du document ============================================================ */

/* G27 : bandeau de titre aligné sur .dm-name (marge basse, coins, retrait). */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] > h1.topictitle1 {
  display: block;
  margin: 0 0 15px;
  padding: 7.5px;
  border-radius: 4px;
  background-color: var(--du-header_bg, rgb(232, 236, 240));
  font-family: "Source Sans 3 Medium", sans-serif;
  font-size: 16.5px;
  font-weight: 400;
  line-height: 16.5px;
  color: var(--du-header-infoname_color, rgb(59, 64, 89));
}

/* G01 : nom d’information sur une seconde ligne, comme .infoname_container. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] > h1.topictitle1 .task-type {
  display: block;
  margin: 0 0 3px;
  font-family: "Source Sans 3 Bold", sans-serif;
  font-size: 21px;
  font-weight: 400;
  line-height: 21px;
  color: var(--du-header-techname_color, rgb(38, 54, 128));
}

/* G27 : sans nom d’information (rail-concept, rail-topic…), le titre prend le style de la ligne
   principale S1000D, pour garder un seul titre bien visible. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] > h1.topictitle1:not(:has(.task-type)) {
  font-family: "Source Sans 3 Bold", sans-serif;
  font-size: 21px;
  line-height: 21px;
  color: var(--du-header-techname_color, rgb(38, 54, 128));
}

/* ===== 2. Conditions préalables (procédures rail-taskbody et dépannages rail-troublebody) ======================================================= */

/* G07 : titre « Preliminary requirements » posé sur la page, comme .generic_requirements_head_title. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .section.prereq,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .section.noprereq {
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background-color: transparent;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) h3.prereq-title {
  margin: 0;
  padding: 4.5px;
  font-family: "Source Sans 3 Bold", sans-serif;
  font-size: 16.5px;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .section.prereq > :not(h3.prereq-title) {
  margin: 0;
  padding: 7.5px 15px;
  background-color: var(--section-0-container_bg, rgb(243, 244, 246));
}

/* G07 : dans les conditions préalables, le renvoi vers un autre document (div.xref enrichi par le
   viewer) prend le fond du conteneur au lieu de son fond propre ; les paragraphes vides sont masqués. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .section.prereq > div.xref {
  display: block;
  background-color: var(--section-0-container_bg, rgb(243, 244, 246));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .section.prereq > p:empty {
  display: none;
}

/* G07 : les blocs de prérequis forment un seul conteneur gris, comme .generic_requirements_container. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment {
  margin: 0;
  padding: 7.5px 15px 0;
  border: 1px solid transparent;
  border-radius: 0;
  background-color: var(--section-0-container_bg, rgb(243, 244, 246));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment {
  margin-bottom: 15px;
  padding-bottom: 7.5px;
}

/* G07 : chaque catégorie est une carte blanche, comme .generic_requirements_children_container. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .div,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .div {
  margin: 0 0 7.5px;
  border: 1px solid transparent;
  border-radius: 4px;
  background-color: var(--section-1-container_bg, rgb(255, 255, 255));
}

/* G07 : sous-titres alignés sur .generic_preliminary_subhead et son titre. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) h3.section-title,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) h3.personnel-title,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) h3.estimated-time-title {
  margin: 0;
  padding: 7.5px;
  border-radius: 4px 4px 0 0;
  background-color: var(--section-1-header_bg, rgb(232, 236, 240));
  font-family: "Source Sans 3 Bold", sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
}

/* G07 : contenu des catégories, comme .generic_preliminary_container. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) .section-content,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .div > :not(h3) {
  padding: 12px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .estimated-time > span {
  display: inline-block;
  padding: 12px 12px 12px 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .estimated-time > span.time-value {
  padding-left: 12px;
}

/* G24 (palliatif) : le temps estimé rejoint la carte du personnel, comme dans la carte Persons
   S1000D. Son sous-titre est masqué et son contenu prolonge la carte « Maintenance Competency ».
   Les libellés « Time value: » et « Time unit: » sont écrits dans le texte par la transformation
   et restent tels quels (présentation libellé / valeur : transformation). */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .personnel:has(+ .estimated-time) {
  margin-bottom: 0;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .personnel + .estimated-time {
  margin-top: -1px;
  border-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .personnel + .estimated-time > h3.estimated-time-title {
  display: none;
}
/* G24 (palliatif fragile) : « Estimated time 1,0 h » au lieu de « Time value: 1,0 Time unit: h ».
   La transformation écrit libellé et valeur dans un même texte ; la feuille décale chaque valeur de la
   largeur exacte de son préfixe et masque celui-ci (clip-path) : préfixes « Time value: » (77,375 px) et « Time unit: » (68,719 px), mesurée en Source Sans 3
   SemiBold 15 px, et ajoute le libellé « Estimated time ». Valable tant que la transformation écrit
   exactement ces préfixes ; un autre texte serait mal rogné.
   Version propre : libellé et valeur séparés par la transformation de l’export. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .personnel + .estimated-time {
  display: flex;
  align-items: baseline;
  padding: 0 12px 12px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .personnel + .estimated-time::before {
  content: "Estimated time";
  flex: 0 0 auto;
  min-width: 90px;
  margin-right: 7.5px;
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 14.25px;
  color: var(--du-text_color, rgb(59, 64, 89));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .personnel + .estimated-time > :is(span.time-value, span.time-unit) {
  display: inline-block;
  flex: 0 0 auto;
  white-space: nowrap;
  padding: 0;
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 15px;
  color: var(--box-list-value_color, rgb(38, 54, 128));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .personnel + .estimated-time > span.time-value {
  margin-left: -77.375px;
  clip-path: inset(0 0 0 77.375px);
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .personnel + .estimated-time > span.time-unit {
  margin-left: calc(4px - 68.719px);
  clip-path: inset(0 0 0 68.719px);
}

/* G08 (décision du 2026-10-16) : les catégories « N.A. » restent affichées ; quand elles le sont
   toutes, une seule carte de catégorie les remplace, comme une catégorie vide S1000D : barre
   « EQUIPMENT » avec l’icône de l’outillage et le badge 0, puis « No equipment » dans le corps.
   La carte réutilise la première catégorie (son titre et sa liste « N.A. » sont remplacés). */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment:not(:has(> .div > .section-content > :not(ul.list-not-applicable))) > .div:not(:first-child) {
  display: none;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment:not(:has(> .div > .section-content > :not(ul.list-not-applicable))) > .div:first-child {
  margin-bottom: 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment:not(:has(> .div > .section-content > :not(ul.list-not-applicable))) > .div:first-child > h3 {
  font-size: 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment:not(:has(> .div > .section-content > :not(ul.list-not-applicable))) > .div:first-child > h3::after {
  content: "Equipment";
  font-size: 15px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment:not(:has(> .div > .section-content > :not(ul.list-not-applicable))) > .div:first-child > h3::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M246.9%2018.3L271%203.8c21.6-13%2046.3-19.8%2071.5-19.8%2036.8%200%2072.2%2014.6%2098.2%2040.7l63.9%2063.9c15%2015%2023.4%2035.4%2023.4%2056.6l0%2030.9%2019.7%2019.7%200%200c15.6-15.6%2040.9-15.6%2056.6%200s15.6%2040.9%200%2056.6l-64%2064c-15.6%2015.6-40.9%2015.6-56.6%200s-15.6-40.9%200-56.6L464%20240%20433.1%20240c-21.2%200-41.6-8.4-56.6-23.4l-49.1-49.1c-15-15-23.4-35.4-23.4-56.6l0-12.7c0-11.2-5.9-21.7-15.5-27.4l-41.6-25c-10.4-6.2-10.4-21.2%200-27.4zM50.7%20402.7l222.1-222.1%2090.5%2090.5-222.1%20222.1c-25%2025-65.5%2025-90.5%200s-25-65.5%200-90.5z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M246.9%2018.3L271%203.8c21.6-13%2046.3-19.8%2071.5-19.8%2036.8%200%2072.2%2014.6%2098.2%2040.7l63.9%2063.9c15%2015%2023.4%2035.4%2023.4%2056.6l0%2030.9%2019.7%2019.7%200%200c15.6-15.6%2040.9-15.6%2056.6%200s15.6%2040.9%200%2056.6l-64%2064c-15.6%2015.6-40.9%2015.6-56.6%200s-15.6-40.9%200-56.6L464%20240%20433.1%20240c-21.2%200-41.6-8.4-56.6-23.4l-49.1-49.1c-15-15-23.4-35.4-23.4-56.6l0-12.7c0-11.2-5.9-21.7-15.5-27.4l-41.6-25c-10.4-6.2-10.4-21.2%200-27.4zM50.7%20402.7l222.1-222.1%2090.5%2090.5-222.1%20222.1c-25%2025-65.5%2025-90.5%200s-25-65.5%200-90.5z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 22.50px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment:not(:has(> .div > .section-content > :not(ul.list-not-applicable))) > .div:first-child > .section-content > ul > li {
  display: none;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment:not(:has(> .div > .section-content > :not(ul.list-not-applicable))) > .div:first-child > .section-content > ul::before {
  content: "No equipment";
}

/* ===== 3. Étapes ======================================================================== */

/* G12 : procédure sans fond ni cadre, comme section.main_procedure. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.activity {
  margin: 0 0 15px;
  padding: 15px;
  border: 0;
  border-radius: 0;
  background-color: transparent;
}

/* G12 : titre d’activité comme un titre d’étape S1000D de premier niveau. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.activity > h2.sectiontitle {
  display: block;
  margin: 0 0 7.5px;
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 16.5px;
  font-weight: 400;
  text-transform: none;
}

/* G11 : numérotation Alstom A / A1 / 10 conservée ; seule l’apparence des numéros s’aligne
   sur .procedural_step_title_number. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step::before {
  margin-right: 5px;
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 16.5px;
  font-weight: 400;
  line-height: 25px;
}

/* G12 : espacement entre étapes aligné sur .procedural_step S1000D (mesuré sur Handlebar,
   2026-10-16) : 15 px sous chaque étape, à tous les niveaux, rien sous la dernière d’un groupe
   (l’étape parente porte les 15 px suivants). */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step {
  margin-bottom: 15px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step:last-child {
  margin-bottom: 0;
}

/* G12 : étape de premier niveau (A1, A2…) qui a des sous-étapes = titre d’étape S1000D (1.1, 1.2…),
   en SemiBold 16,5 px. Vérifié sur le corpus (2026-10-16) : 124 étapes sur 132 rendues comme S1000D ;
   DITA ne distingue pas les étapes à titre, les 8 autres relèvent de la transformation. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody .activity > ol.steps > li.step:has(> ol.steps) > .cmd {
  margin: 0;
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 16.5px;
  line-height: 25px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step:not(:has(> ol.steps)) > .cmd,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step li.step > .cmd {
  margin: 0;
  line-height: 25px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step > .info {
  margin: 6px 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step > ol.steps {
  margin: 7.5px 0 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step > .info + ol.steps {
  margin-top: 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step > .info {
  margin: 13.5px 0 6px;
}
/* Le texte d’une étape est un élément de grille : les marges de son premier et de son dernier
   paragraphe ne fusionnent plus avec les siennes ; on les annule pour retrouver le rythme S1000D. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step > .info > :first-child {
  margin-top: 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step > .info > :last-child {
  margin-bottom: 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody li.step > .info:last-child {
  margin-bottom: 0;
}

/* G06 (palliatif) : bloc de fin vide (nopostreq, « B. Close out ») présenté comme la section S1000D
   « Requirements after job completion » : bandeau gris clair, titre conservé (numérotation Alstom),
   carte « REQUIRED CONDITIONS » avec l’icône cercle pointé (dessinée en dégradés, aux couleurs du
   thème) et le badge 0, puis « N.A. » (décision du 2026-10-16). Les blocs de fin avec
   conditions (postreq) restent en l’état. Libellés générés en anglais. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.nopostreq {
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 0 0 15px;
  padding: 0 4.5px 1px;
  border-radius: 4px;
  /* Liseré de 4,5 px comme les conditions préalables : le dégradé (bande du titre puis conteneur)
     est limité à la zone de contenu ; la marge intérieure garde la couleur du bandeau. */
  background: linear-gradient(var(--section-0_bg, rgb(249, 250, 251)) 33px, var(--section-0-container_bg, rgb(243, 244, 246)) 33px) content-box, var(--section-0_bg, rgb(249, 250, 251));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.nopostreq > h3.sectiontitle {
  order: 0;
  display: block;
  margin: 0;
  padding: 4.5px;
  font-family: "Source Sans 3 Bold", sans-serif;
  font-size: 16.5px;
  font-weight: 400;
  line-height: 24px;
  text-transform: uppercase;
  color: var(--section-0-header-title_color, rgb(59, 64, 89));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.nopostreq::before {
  content: "Required conditions";
  order: 1;
  margin: 7.5px 15px 0;
  padding: 7.5px 7.5px 7.5px 33.5px;
  border-radius: 4px 4px 0 0;
  background:
    radial-gradient(circle at 17.5px 50%, var(--section-1-header-title_color, rgb(59, 64, 89)) 0 3.5px, transparent 4px 6px, var(--section-1-header-title_color, rgb(59, 64, 89)) 6.5px 8.5px, transparent 9px),
    var(--section-1-header_bg, rgb(232, 236, 240));
  font-family: "Source Sans 3 Bold", sans-serif;
  font-size: 15px;
  line-height: 21px;
  text-transform: uppercase;
  color: var(--section-1-header-title_color, rgb(59, 64, 89));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.nopostreq > h3.sectiontitle::after {
  content: "0";
  position: absolute;
  top: 49px;
  left: 215px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 18px;
  border-radius: 4px;
  background-color: var(--section-1-header-badge_bg, rgb(59, 64, 89));
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 12.75px;
  line-height: 18px;
  text-transform: none;
  color: var(--section-1-header-badge_color, rgb(255, 255, 255));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.nopostreq::after {
  content: "N.A.";
  order: 2;
  margin: 0 15px 15px;
  padding: 12px;
  border: var(--section-1-container_border, 1px solid rgb(243, 244, 246));
  background-color: var(--section-1-container_bg, rgb(255, 255, 255));
}

/* G06 (décision du 2026-10-16) : la fin de procédure avec conditions (postreq) reçoit le
   même cadre que les conditions préalables : bandeau gris clair avec liseré, titre conservé
   (numérotation Alstom) en majuscules, conditions sur le fond du conteneur. Sans carte ni badge. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.postreq {
  margin: 0 0 15px;
  padding: 0 4.5px 1px;
  border: 0;
  border-radius: 4px;
  background-color: var(--section-0_bg, rgb(249, 250, 251));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.postreq > h3.sectiontitle {
  display: block;
  margin: 0;
  padding: 4.5px;
  font-family: "Source Sans 3 Bold", sans-serif;
  font-size: 16.5px;
  font-weight: 400;
  line-height: 24px;
  text-transform: uppercase;
  color: var(--section-0-header-title_color, rgb(59, 64, 89));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.postreq > :not(h3) {
  margin: 0;
  padding: 7.5px 15px;
  background-color: var(--section-0-container_bg, rgb(243, 244, 246));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-taskbody > .section.postreq > :not(h3):last-child {
  padding-bottom: 15px;
}

/* ===== 4. Figures ======================================================================= */

/* G14 : figure centrée, légende en tête de carte, comme .figure / .figure_title. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 0 22.5px;
  text-align: center;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig > br {
  display: none;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig > .figcap {
  box-sizing: border-box;
  width: 700px;
  max-width: 100%;
  padding: 7.5px 15px 0;
  border-radius: 6px 6px 0 0;
  background-color: var(--figure-block_bg, rgb(232, 236, 240));
  font-family: "Source Sans 3 Bold", sans-serif;
  font-size: 15px;
  text-align: left;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig > .svg-graphic {
  width: auto;
  margin: 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig > .figcap ~ .svg-graphic .figure {
  margin-top: 0;
  border-radius: 0 0 6px 6px;
}
/* G14 : quand on clique sur l’illustration, le viewer bleuit la carte (.svg-graphic.selected) ;
   la légende, placée à côté de la carte, prend la même couleur, comme le titre S1000D qui est
   dans la carte. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig:has(> .svg-graphic.selected) > .figcap {
  background-color: var(--figure-highlight_bg, rgb(143, 174, 233));
}

/* G14 : figures adaptées à la largeur disponible. La carte du viewer a une largeur fixe de 700 px
   (100 % seulement en mode tablette) : dans une colonne plus étroite, l’image débordait. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig > .svg-graphic,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig .figure {
  box-sizing: border-box;
  max-width: 100%;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig img {
  max-width: 100%;
  height: auto;
}

/* G14 : en colonne étroite, les tableaux de contenu trop larges défilent horizontalement dans leur
   cadre au lieu de déborder (contrôle à 600 px, 2026-10-16). Les tableaux de matériel (cartes) et le
   tableau du catalogue (composant du viewer, qui a son propre défilement) ne sont pas concernés. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] div:has(> table.table:not(.rail-task-tools-table)) {
  max-width: 100%;
  overflow-x: auto;
}

/* G23 (décision du 2026-10-16) : pages de garde DITA centrées comme S1000D, sans
   réordonner les blocs (la structure de page de garde relève de la transformation de l’export). Seuls les topics qui
   contiennent des paragraphes sont concernés : les pages de chapitre TOPIC_FOLDER, réduites à leur
   titre, restent inchangées. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"].dmType-topic:has(> p.p) {
  text-align: center;
}

/* ===== 5. Descriptions (rail-conbody) =================================================== */

/* G16 : corps sans fond, retrait comme .description_step_container. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody {
  counter-reset: als-para1;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody > .section {
  counter-increment: als-para1;
  counter-reset: als-para2;
  margin: 0 0 15px;
  padding: 15px;
  border: 0;
  border-radius: 0;
  background-color: transparent;
}

/* G16 : titre de premier niveau numéroté, comme .levelledPara_title. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody > .section > h2.sectiontitle {
  margin: 0;
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 16.5px;
  font-weight: 400;
  line-height: normal;
  text-transform: none;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody > .section > h2.sectiontitle::before {
  content: counter(als-para1) ".";
  margin-right: 5px;
}

/* G16 : sous-paragraphes en retrait. Leur titre est le premier paragraphe, réduit à un texte en
   emphase (« General », « Spokes »…) : il est numéroté et mis en forme comme un titre. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody > .section > .div {
  padding: 7.5px 0 0 22.5px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody > .section > .div:has(> p.p:first-child > .ph.em:only-child) {
  counter-increment: als-para2;
  margin-bottom: 15px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody > .section > .div > p.p:first-child:has(> .ph.em:only-child) {
  margin: 0;
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 16.5px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody > .section > .div > p.p:first-child:has(> .ph.em:only-child)::before {
  content: counter(als-para1) "." counter(als-para2) ".";
  margin-right: 5px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody > .section > .div:has(> p.p:first-child > .ph.em:only-child) > :not(:first-child) {
  margin-left: 22.5px;
}

/* G17 : listes du texte courant en retrait, comme ul.randomList. Les listes des cellules de
   tableau gardent le style du viewer (retrait de 7,5 px), déjà identique à S1000D. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody ul.ul:not(:is(td, th) ul) {
  margin: 7.5px 15px 7.5px 37.5px;
  padding: 0 0 0 22.5px;
}

/* ===== 6. Palliatifs ====================================================================
 * Corrections partielles d’écarts qui relèvent de la transformation (catégorie
 * « Transformation » du rapport). À retirer quand la transformation produit le bon balisage.
 */

/* G09 (palliatif) : matériel et pièces en cartes sur deux colonnes, comme .requirement_box S1000D :
   une carte par ligne du tableau, chaque valeur précédée de son libellé. Les champs sont reconnus
   à la classe de leur contenu, pas à leur position (4 à 6 colonnes selon le tableau). Libellés
   générés en CSS, en anglais (limite connue). Ordre S1000D : Name, Quantity, Reference, puis les
   champs propres à DITA. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody {
  display: block;
  width: 100%;
  margin: 0;
  border: 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > colgroup,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > thead {
  display: none;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody {
  display: flex;
  flex-wrap: wrap;
  gap: 7.5px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr {
  display: flex;
  flex-direction: column;
  flex: 0 0 calc(50% - 3.75px);
  box-sizing: border-box;
  padding: 7.5px;
  border-radius: 8px;
  border: 0;
  box-shadow: none;
  background-color: var(--box-0_bg, rgb(249, 250, 251));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td {
  display: flex;
  align-items: baseline;
  margin: 0 0 3.75px;
  padding: 0 0 3.75px;
  border: 0;
  background: transparent;
  text-align: left;
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 15px;
  color: var(--box-list-value_color, rgb(38, 54, 128));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td::before {
  flex: 0 0 auto;
  min-width: 90px;
  margin-right: 7.5px;
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 14.25px;
  color: var(--du-text_color, rgb(59, 64, 89));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:has(.equipment-title) { order: 1; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:has(.equipment-title)::before { content: "Name"; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:has(.quantity) { order: 2; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:has(.quantity)::before { content: "Quantity"; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:has(.part-number) { order: 3; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:has(.part-number)::before { content: "Reference"; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:has(.serial-numbers) { order: 4; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:has(.serial-numbers)::before { content: "Serial number"; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table:has(.discard) > tbody > tr > td:has(.serial-numbers)::before { content: "Fig.-Item No"; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:has(.discard) { order: 5; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:has(.discard)::before { content: "Discard"; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:not(:has(.equipment-title, .quantity, .part-number, .serial-numbers, .discard)) { order: 6; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:not(:has(.equipment-title, .quantity, .part-number, .serial-numbers, .discard))::before { content: "Applicability"; }
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td > :last-child,
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr > td:last-child {
  margin-bottom: 0;
}

/* G10 (décision du 2026-10-16) : au clic sur un renvoi, le viewer ajoute à la cible la classe
   position-relative, qui réserve 44 px à gauche pour son bouton de retour (.position-relative
   { padding-left: 44px !important }). En DITA, ce bouton n’existe pas (à produire par la transformation de l’export) : la carte se
   décalait sans raison. Règle de l’utilisateur : décalage et retour vont ensemble ; sans retour,
   pas de décalage. Le retrait normal des cibles est rétabli : cartes de matériel, figures, sous-paragraphes
   (!important nécessaire face à celui du viewer). Le lien, le défilement et le clignotement de la cible restent actifs. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] table.rail-task-tools-table > tbody > tr.position-relative {
  padding-left: 7.5px !important;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .fig.position-relative {
  padding-left: 0 !important;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] .rail-conbody > .section > .div.position-relative {
  padding-left: 22.5px !important;
}

/* G21 (palliatif) : références présentées comme la section S1000D .section_references :
   titre « References » en majuscules sur bande claire, liste sur fond gris, lignes bordées comme
   celles du tableau, sans puces ni italique. Le tableau à deux colonnes (module de données, titre / référence) reste absent. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] ul.ref-docs {
  margin: 0 0 15px;
  padding: 0 19.5px 15px;
  list-style: none;
  background: linear-gradient(var(--section-0_bg, rgb(249, 250, 251)) 33px, var(--section-0-container_bg, rgb(243, 244, 246)) 33px);
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] ul.ref-docs::before {
  content: "References";
  display: block;
  margin: 0 -15px 7.5px;
  padding: 4.5px;
  font-family: "Source Sans 3 Bold", sans-serif;
  font-size: 16.5px;
  line-height: 24px;
  text-transform: uppercase;
  color: var(--section-0-header-title_color, rgb(59, 64, 89));
}
/* Lignes comme celles de table.references_table : bordure grise, texte Regular 13,8 px. Le titre
   DITA n’est pas un lien (pas de code de module) : texte normal, comme les colonnes de titre S1000D. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] ul.ref-docs > li.ref-doc {
  margin: 0;
  padding: 3px 15px;
  border: 1px solid var(--table-td-border_color, rgb(196, 204, 214));
  background-color: var(--section-1-container_bg, rgb(255, 255, 255));
  font-family: "Source Sans 3 Regular", sans-serif;
  font-size: 13.8px;
  color: var(--du-text_color, rgb(59, 64, 89));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] ul.ref-docs > li.ref-doc + li.ref-doc {
  border-top: 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] ul.ref-docs > li.ref-doc:nth-child(even) {
  background-color: var(--section-0-container_bg, rgb(243, 244, 246));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] ul.ref-docs cite {
  font-style: normal;
}

/* ===== 7. Pictogrammes, bandeau et décomptes des conditions préalables (G06, G10) ==========
 * Le viewer n’enrichit que le balisage S1000D : pictogrammes par catégorie et par type de renvoi,
 * badges de décompte, bandeau repliable. La feuille reproduit l’apparence, à partir des classes
 * DITA. Icônes Font Awesome reprises des pages S1000D du viewer, en masques SVG à la couleur du
 * texte. Le repli de la section, qui demande du JavaScript, n’est pas reproduit.
 */

/* G10 : renvois vers le matériel, pictogramme selon le type de cible, comme les internalRef S1000D
   (outillage : marteau ; pièces : batterie ; consommables : fiole). */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] a.xref[href*="__tools-"] adam-document-s1000d-icon fa-icon {
  display: none;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] a.xref[href*="__tools-"] adam-document-s1000d-icon::before {
  content: "";
  display: inline-block;
  flex: 0 0 auto;
  vertical-align: -2.25px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M246.9%2018.3L271%203.8c21.6-13%2046.3-19.8%2071.5-19.8%2036.8%200%2072.2%2014.6%2098.2%2040.7l63.9%2063.9c15%2015%2023.4%2035.4%2023.4%2056.6l0%2030.9%2019.7%2019.7%200%200c15.6-15.6%2040.9-15.6%2056.6%200s15.6%2040.9%200%2056.6l-64%2064c-15.6%2015.6-40.9%2015.6-56.6%200s-15.6-40.9%200-56.6L464%20240%20433.1%20240c-21.2%200-41.6-8.4-56.6-23.4l-49.1-49.1c-15-15-23.4-35.4-23.4-56.6l0-12.7c0-11.2-5.9-21.7-15.5-27.4l-41.6-25c-10.4-6.2-10.4-21.2%200-27.4zM50.7%20402.7l222.1-222.1%2090.5%2090.5-222.1%20222.1c-25%2025-65.5%2025-90.5%200s-25-65.5%200-90.5z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M246.9%2018.3L271%203.8c21.6-13%2046.3-19.8%2071.5-19.8%2036.8%200%2072.2%2014.6%2098.2%2040.7l63.9%2063.9c15%2015%2023.4%2035.4%2023.4%2056.6l0%2030.9%2019.7%2019.7%200%200c15.6-15.6%2040.9-15.6%2056.6%200s15.6%2040.9%200%2056.6l-64%2064c-15.6%2015.6-40.9%2015.6-56.6%200s-15.6-40.9%200-56.6L464%20240%20433.1%20240c-21.2%200-41.6-8.4-56.6-23.4l-49.1-49.1c-15-15-23.4-35.4-23.4-56.6l0-12.7c0-11.2-5.9-21.7-15.5-27.4l-41.6-25c-10.4-6.2-10.4-21.2%200-27.4zM50.7%20402.7l222.1-222.1%2090.5%2090.5-222.1%20222.1c-25%2025-65.5%2025-90.5%200s-25-65.5%200-90.5z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 22.50px;
  height: 18px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] a.xref[href*="__supplies-"] adam-document-s1000d-icon fa-icon {
  display: none;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] a.xref[href*="__supplies-"] adam-document-s1000d-icon::before {
  content: "";
  display: inline-block;
  flex: 0 0 auto;
  vertical-align: -2.25px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M112%20448c-44.2%200-80-35.8-80-80l0-224c0-44.2%2035.8-80%2080-80l191.5%200-70.1%2064-121.4%200c-8.8%200-16%207.2-16%2016l0%20224c0%208.8%207.2%2016%2016%2016l82.2%200-5.5%2014.4c-6.3%2016.4-6.1%2034-.6%2049.6L112%20448zM451.3%20113.6c6.3-16.4%206.1-34%20.6-49.6L528%2064c44.2%200%2080%2035.8%2080%2080l0%2048c17.7%200%2032%2014.3%2032%2032l0%2064c0%2017.7-14.3%2032-32%2032l0%2048c0%2044.2-35.8%2080-80%2080l-191.5%200%2070.1-64%20121.4%200c8.8%200%2016-7.2%2016-16l0-224c0-8.8-7.2-16-16-16l-82.2%200%205.5-14.4zM397.5%2068.2c9.2%206.3%2012.9%2018%208.9%2028.4L354.8%20232%20440%20232c9.9%200%2018.8%206.1%2022.4%2015.3s1.1%2019.7-6.2%2026.4l-184%20168c-8.2%207.5-20.5%208.4-29.7%202.1s-12.9-18-8.9-28.4L285.2%20280%20200%20280c-9.9%200-18.8-6.1-22.4-15.3s-1.1-19.7%206.2-26.4l184-168c8.2-7.5%2020.5-8.4%2029.7-2.1z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M112%20448c-44.2%200-80-35.8-80-80l0-224c0-44.2%2035.8-80%2080-80l191.5%200-70.1%2064-121.4%200c-8.8%200-16%207.2-16%2016l0%20224c0%208.8%207.2%2016%2016%2016l82.2%200-5.5%2014.4c-6.3%2016.4-6.1%2034-.6%2049.6L112%20448zM451.3%20113.6c6.3-16.4%206.1-34%20.6-49.6L528%2064c44.2%200%2080%2035.8%2080%2080l0%2048c17.7%200%2032%2014.3%2032%2032l0%2064c0%2017.7-14.3%2032-32%2032l0%2048c0%2044.2-35.8%2080-80%2080l-191.5%200%2070.1-64%20121.4%200c8.8%200%2016-7.2%2016-16l0-224c0-8.8-7.2-16-16-16l-82.2%200%205.5-14.4zM397.5%2068.2c9.2%206.3%2012.9%2018%208.9%2028.4L354.8%20232%20440%20232c9.9%200%2018.8%206.1%2022.4%2015.3s1.1%2019.7-6.2%2026.4l-184%20168c-8.2%207.5-20.5%208.4-29.7%202.1s-12.9-18-8.9-28.4L285.2%20280%20200%20280c-9.9%200-18.8-6.1-22.4-15.3s-1.1-19.7%206.2-26.4l184-168c8.2-7.5%2020.5-8.4%2029.7-2.1z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 22.50px;
  height: 18px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] a.xref[href*="__consumables-"] adam-document-s1000d-icon fa-icon {
  display: none;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] a.xref[href*="__consumables-"] adam-document-s1000d-icon::before {
  content: "";
  display: inline-block;
  flex: 0 0 auto;
  vertical-align: -2.25px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20448%20512%27%3E%3Cpath%20d%3D%27M288%200L128%200C110.3%200%2096%2014.3%2096%2032s14.3%2032%2032%2032L128%20215.5%207.5%20426.3C2.6%20435%200%20444.7%200%20454.7%200%20486.4%2025.6%20512%2057.3%20512l333.4%200c31.6%200%2057.3-25.6%2057.3-57.3%200-10-2.6-19.8-7.5-28.4L320%20215.5%20320%2064c17.7%200%2032-14.3%2032-32S337.7%200%20320%200L288%200zM192%20215.5l0-151.5%2064%200%200%20151.5c0%2011.1%202.9%2022.1%208.4%2031.8l41.6%2072.7-164%200%2041.6-72.7c5.5-9.7%208.4-20.6%208.4-31.8z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20448%20512%27%3E%3Cpath%20d%3D%27M288%200L128%200C110.3%200%2096%2014.3%2096%2032s14.3%2032%2032%2032L128%20215.5%207.5%20426.3C2.6%20435%200%20444.7%200%20454.7%200%20486.4%2025.6%20512%2057.3%20512l333.4%200c31.6%200%2057.3-25.6%2057.3-57.3%200-10-2.6-19.8-7.5-28.4L320%20215.5%20320%2064c17.7%200%2032-14.3%2032-32S337.7%200%20320%200L288%200zM192%20215.5l0-151.5%2064%200%200%20151.5c0%2011.1%202.9%2022.1%208.4%2031.8l41.6%2072.7-164%200%2041.6-72.7c5.5-9.7%208.4-20.6%208.4-31.8z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 15.75px;
  height: 18px;
}

/* G06 : pictogramme des sous-titres de catégorie, comme .generic_preliminary_subhead. */
/* Une icône par catégorie de matériel (décision du 2026-10-16) : outillage standard,
   marteau (S1000D) ; équipement de sécurité, personne protégée par un bouclier (le triangle
   d’avertissement est réservé aux consignes de sécurité, comme dans le viewer) ; équipement de test,
   presse-papiers coché ; outillage spécial, clé et tournevis ; équipement spécial, caisse à outils.
   user-shield, clipboard-check, screwdriver-wrench et toolbox : Font Awesome Free 6.5.2, https://fontawesome.com, licence des
   icônes CC BY 4.0 (https://fontawesome.com/license/free). Les autres icônes viennent du viewer. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .tools > h3::before {
  content: "";
  flex: 0 0 auto;
  margin-right: 4px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M246.9%2018.3L271%203.8c21.6-13%2046.3-19.8%2071.5-19.8%2036.8%200%2072.2%2014.6%2098.2%2040.7l63.9%2063.9c15%2015%2023.4%2035.4%2023.4%2056.6l0%2030.9%2019.7%2019.7%200%200c15.6-15.6%2040.9-15.6%2056.6%200s15.6%2040.9%200%2056.6l-64%2064c-15.6%2015.6-40.9%2015.6-56.6%200s-15.6-40.9%200-56.6L464%20240%20433.1%20240c-21.2%200-41.6-8.4-56.6-23.4l-49.1-49.1c-15-15-23.4-35.4-23.4-56.6l0-12.7c0-11.2-5.9-21.7-15.5-27.4l-41.6-25c-10.4-6.2-10.4-21.2%200-27.4zM50.7%20402.7l222.1-222.1%2090.5%2090.5-222.1%20222.1c-25%2025-65.5%2025-90.5%200s-25-65.5%200-90.5z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M246.9%2018.3L271%203.8c21.6-13%2046.3-19.8%2071.5-19.8%2036.8%200%2072.2%2014.6%2098.2%2040.7l63.9%2063.9c15%2015%2023.4%2035.4%2023.4%2056.6l0%2030.9%2019.7%2019.7%200%200c15.6-15.6%2040.9-15.6%2056.6%200s15.6%2040.9%200%2056.6l-64%2064c-15.6%2015.6-40.9%2015.6-56.6%200s-15.6-40.9%200-56.6L464%20240%20433.1%20240c-21.2%200-41.6-8.4-56.6-23.4l-49.1-49.1c-15-15-23.4-35.4-23.4-56.6l0-12.7c0-11.2-5.9-21.7-15.5-27.4l-41.6-25c-10.4-6.2-10.4-21.2%200-27.4zM50.7%20402.7l222.1-222.1%2090.5%2090.5-222.1%20222.1c-25%2025-65.5%2025-90.5%200s-25-65.5%200-90.5z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 22.50px;
  height: 18px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .safety-equipment > h3::before {
  content: "";
  flex: 0 0 auto;
  margin-right: 4px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M224%20256A128%20128%200%201%200%20224%200a128%20128%200%201%200%200%20256zm-45.7%2048C79.8%20304%200%20383.8%200%20482.3C0%20498.7%2013.3%20512%2029.7%20512H418.3c1.8%200%203.5-.2%205.3-.5c-76.3-55.1-99.8-141-103.1-200.2c-16.1-4.8-33.1-7.3-50.7-7.3H178.3zm308.8-78.3l-120%2048C358%20277.4%20352%20286.2%20352%20296c0%2063.3%2025.9%20168.8%20134.8%20214.2c5.9%202.5%2012.6%202.5%2018.5%200C614.1%20464.8%20640%20359.3%20640%20296c0-9.8-6-18.6-15.1-22.3l-120-48c-5.7-2.3-12.1-2.3-17.8%200zM591.4%20312c-3.9%2050.7-27.2%20116.7-95.4%20149.7V273.8L591.4%20312z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M224%20256A128%20128%200%201%200%20224%200a128%20128%200%201%200%200%20256zm-45.7%2048C79.8%20304%200%20383.8%200%20482.3C0%20498.7%2013.3%20512%2029.7%20512H418.3c1.8%200%203.5-.2%205.3-.5c-76.3-55.1-99.8-141-103.1-200.2c-16.1-4.8-33.1-7.3-50.7-7.3H178.3zm308.8-78.3l-120%2048C358%20277.4%20352%20286.2%20352%20296c0%2063.3%2025.9%20168.8%20134.8%20214.2c5.9%202.5%2012.6%202.5%2018.5%200C614.1%20464.8%20640%20359.3%20640%20296c0-9.8-6-18.6-15.1-22.3l-120-48c-5.7-2.3-12.1-2.3-17.8%200zM591.4%20312c-3.9%2050.7-27.2%20116.7-95.4%20149.7V273.8L591.4%20312z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 22.50px;
  height: 18px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .test-equipment > h3::before {
  content: "";
  flex: 0 0 auto;
  margin-right: 4px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20384%20512%27%3E%3Cpath%20d%3D%27M192%200c-41.8%200-77.4%2026.7-90.5%2064H64C28.7%2064%200%2092.7%200%20128V448c0%2035.3%2028.7%2064%2064%2064H320c35.3%200%2064-28.7%2064-64V128c0-35.3-28.7-64-64-64H282.5C269.4%2026.7%20233.8%200%20192%200zm0%2064a32%2032%200%201%201%200%2064%2032%2032%200%201%201%200-64zM305%20273L177%20401c-9.4%209.4-24.6%209.4-33.9%200L79%20337c-9.4-9.4-9.4-24.6%200-33.9s24.6-9.4%2033.9%200l47%2047L271%20239c9.4-9.4%2024.6-9.4%2033.9%200s9.4%2024.6%200%2033.9z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20384%20512%27%3E%3Cpath%20d%3D%27M192%200c-41.8%200-77.4%2026.7-90.5%2064H64C28.7%2064%200%2092.7%200%20128V448c0%2035.3%2028.7%2064%2064%2064H320c35.3%200%2064-28.7%2064-64V128c0-35.3-28.7-64-64-64H282.5C269.4%2026.7%20233.8%200%20192%200zm0%2064a32%2032%200%201%201%200%2064%2032%2032%200%201%201%200-64zM305%20273L177%20401c-9.4%209.4-24.6%209.4-33.9%200L79%20337c-9.4-9.4-9.4-24.6%200-33.9s24.6-9.4%2033.9%200l47%2047L271%20239c9.4-9.4%2024.6-9.4%2033.9%200s9.4%2024.6%200%2033.9z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 13.50px;
  height: 18px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .special-tools > h3::before {
  content: "";
  flex: 0 0 auto;
  margin-right: 4px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20512%20512%27%3E%3Cpath%20d%3D%27M78.6%205C69.1-2.4%2055.6-1.5%2047%207L7%2047c-8.5%208.5-9.4%2022-2.1%2031.6l80%20104c4.5%205.9%2011.6%209.4%2019%209.4h54.1l109%20109c-14.7%2029-10%2065.4%2014.3%2089.6l112%20112c12.5%2012.5%2032.8%2012.5%2045.3%200l64-64c12.5-12.5%2012.5-32.8%200-45.3l-112-112c-24.2-24.2-60.6-29-89.6-14.3l-109-109V104c0-7.5-3.5-14.5-9.4-19L78.6%205zM19.9%20396.1C7.2%20408.8%200%20426.1%200%20444.1C0%20481.6%2030.4%20512%2067.9%20512c18%200%2035.3-7.2%2048-19.9L233.7%20374.3c-7.8-20.9-9-43.6-3.6-65.1l-61.7-61.7L19.9%20396.1zM512%20144c0-10.5-1.1-20.7-3.2-30.5c-2.4-11.2-16.1-14.1-24.2-6l-63.9%2063.9c-3%203-7.1%204.7-11.3%204.7H352c-8.8%200-16-7.2-16-16V102.6c0-4.2%201.7-8.3%204.7-11.3l63.9-63.9c8.1-8.1%205.2-21.8-6-24.2C388.7%201.1%20378.5%200%20368%200C288.5%200%20224%2064.5%20224%20144l0%20.8%2085.3%2085.3c36-9.1%2075.8%20.5%20104%2028.7L429%20274.5c49-23%2083-72.8%2083-130.5zM56%20432a24%2024%200%201%201%2048%200%2024%2024%200%201%201%20-48%200z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20512%20512%27%3E%3Cpath%20d%3D%27M78.6%205C69.1-2.4%2055.6-1.5%2047%207L7%2047c-8.5%208.5-9.4%2022-2.1%2031.6l80%20104c4.5%205.9%2011.6%209.4%2019%209.4h54.1l109%20109c-14.7%2029-10%2065.4%2014.3%2089.6l112%20112c12.5%2012.5%2032.8%2012.5%2045.3%200l64-64c12.5-12.5%2012.5-32.8%200-45.3l-112-112c-24.2-24.2-60.6-29-89.6-14.3l-109-109V104c0-7.5-3.5-14.5-9.4-19L78.6%205zM19.9%20396.1C7.2%20408.8%200%20426.1%200%20444.1C0%20481.6%2030.4%20512%2067.9%20512c18%200%2035.3-7.2%2048-19.9L233.7%20374.3c-7.8-20.9-9-43.6-3.6-65.1l-61.7-61.7L19.9%20396.1zM512%20144c0-10.5-1.1-20.7-3.2-30.5c-2.4-11.2-16.1-14.1-24.2-6l-63.9%2063.9c-3%203-7.1%204.7-11.3%204.7H352c-8.8%200-16-7.2-16-16V102.6c0-4.2%201.7-8.3%204.7-11.3l63.9-63.9c8.1-8.1%205.2-21.8-6-24.2C388.7%201.1%20378.5%200%20368%200C288.5%200%20224%2064.5%20224%20144l0%20.8%2085.3%2085.3c36-9.1%2075.8%20.5%20104%2028.7L429%20274.5c49-23%2083-72.8%2083-130.5zM56%20432a24%2024%200%201%201%2048%200%2024%2024%200%201%201%20-48%200z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 18.00px;
  height: 18px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .special-equipment > h3::before {
  content: "";
  flex: 0 0 auto;
  margin-right: 4px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20512%20512%27%3E%3Cpath%20d%3D%27M176%2088l0%2040%20160%200%200-40c0-4.4-3.6-8-8-8L184%2080c-4.4%200-8%203.6-8%208zm-48%2040l0-40c0-30.9%2025.1-56%2056-56l144%200c30.9%200%2056%2025.1%2056%2056l0%2040%2028.1%200c12.7%200%2024.9%205.1%2033.9%2014.1l51.9%2051.9c9%209%2014.1%2021.2%2014.1%2033.9l0%2092.1-128%200%200-32c0-17.7-14.3-32-32-32s-32%2014.3-32%2032l0%2032-128%200%200-32c0-17.7-14.3-32-32-32s-32%2014.3-32%2032l0%2032L0%20320l0-92.1c0-12.7%205.1-24.9%2014.1-33.9l51.9-51.9c9-9%2021.2-14.1%2033.9-14.1l28.1%200zM0%20416l0-64%20128%200c0%2017.7%2014.3%2032%2032%2032s32-14.3%2032-32l128%200c0%2017.7%2014.3%2032%2032%2032s32-14.3%2032-32l128%200%200%2064c0%2035.3-28.7%2064-64%2064L64%20480c-35.3%200-64-28.7-64-64z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20512%20512%27%3E%3Cpath%20d%3D%27M176%2088l0%2040%20160%200%200-40c0-4.4-3.6-8-8-8L184%2080c-4.4%200-8%203.6-8%208zm-48%2040l0-40c0-30.9%2025.1-56%2056-56l144%200c30.9%200%2056%2025.1%2056%2056l0%2040%2028.1%200c12.7%200%2024.9%205.1%2033.9%2014.1l51.9%2051.9c9%209%2014.1%2021.2%2014.1%2033.9l0%2092.1-128%200%200-32c0-17.7-14.3-32-32-32s-32%2014.3-32%2032l0%2032-128%200%200-32c0-17.7-14.3-32-32-32s-32%2014.3-32%2032l0%2032L0%20320l0-92.1c0-12.7%205.1-24.9%2014.1-33.9l51.9-51.9c9-9%2021.2-14.1%2033.9-14.1l28.1%200zM0%20416l0-64%20128%200c0%2017.7%2014.3%2032%2032%2032s32-14.3%2032-32l128%200c0%2017.7%2014.3%2032%2032%2032s32-14.3%2032-32l128%200%200%2064c0%2035.3-28.7%2064-64%2064L64%20480c-35.3%200-64-28.7-64-64z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 18.00px;
  height: 18px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .consumables > h3::before {
  content: "";
  flex: 0 0 auto;
  margin-right: 4px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20448%20512%27%3E%3Cpath%20d%3D%27M288%200L128%200C110.3%200%2096%2014.3%2096%2032s14.3%2032%2032%2032L128%20215.5%207.5%20426.3C2.6%20435%200%20444.7%200%20454.7%200%20486.4%2025.6%20512%2057.3%20512l333.4%200c31.6%200%2057.3-25.6%2057.3-57.3%200-10-2.6-19.8-7.5-28.4L320%20215.5%20320%2064c17.7%200%2032-14.3%2032-32S337.7%200%20320%200L288%200zM192%20215.5l0-151.5%2064%200%200%20151.5c0%2011.1%202.9%2022.1%208.4%2031.8l41.6%2072.7-164%200%2041.6-72.7c5.5-9.7%208.4-20.6%208.4-31.8z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20448%20512%27%3E%3Cpath%20d%3D%27M288%200L128%200C110.3%200%2096%2014.3%2096%2032s14.3%2032%2032%2032L128%20215.5%207.5%20426.3C2.6%20435%200%20444.7%200%20454.7%200%20486.4%2025.6%20512%2057.3%20512l333.4%200c31.6%200%2057.3-25.6%2057.3-57.3%200-10-2.6-19.8-7.5-28.4L320%20215.5%20320%2064c17.7%200%2032-14.3%2032-32S337.7%200%20320%200L288%200zM192%20215.5l0-151.5%2064%200%200%20151.5c0%2011.1%202.9%2022.1%208.4%2031.8l41.6%2072.7-164%200%2041.6-72.7c5.5-9.7%208.4-20.6%208.4-31.8z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 15.75px;
  height: 18px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .supplies > h3::before {
  content: "";
  flex: 0 0 auto;
  margin-right: 4px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M112%20448c-44.2%200-80-35.8-80-80l0-224c0-44.2%2035.8-80%2080-80l191.5%200-70.1%2064-121.4%200c-8.8%200-16%207.2-16%2016l0%20224c0%208.8%207.2%2016%2016%2016l82.2%200-5.5%2014.4c-6.3%2016.4-6.1%2034-.6%2049.6L112%20448zM451.3%20113.6c6.3-16.4%206.1-34%20.6-49.6L528%2064c44.2%200%2080%2035.8%2080%2080l0%2048c17.7%200%2032%2014.3%2032%2032l0%2064c0%2017.7-14.3%2032-32%2032l0%2048c0%2044.2-35.8%2080-80%2080l-191.5%200%2070.1-64%20121.4%200c8.8%200%2016-7.2%2016-16l0-224c0-8.8-7.2-16-16-16l-82.2%200%205.5-14.4zM397.5%2068.2c9.2%206.3%2012.9%2018%208.9%2028.4L354.8%20232%20440%20232c9.9%200%2018.8%206.1%2022.4%2015.3s1.1%2019.7-6.2%2026.4l-184%20168c-8.2%207.5-20.5%208.4-29.7%202.1s-12.9-18-8.9-28.4L285.2%20280%20200%20280c-9.9%200-18.8-6.1-22.4-15.3s-1.1-19.7%206.2-26.4l184-168c8.2-7.5%2020.5-8.4%2029.7-2.1z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20640%20512%27%3E%3Cpath%20d%3D%27M112%20448c-44.2%200-80-35.8-80-80l0-224c0-44.2%2035.8-80%2080-80l191.5%200-70.1%2064-121.4%200c-8.8%200-16%207.2-16%2016l0%20224c0%208.8%207.2%2016%2016%2016l82.2%200-5.5%2014.4c-6.3%2016.4-6.1%2034-.6%2049.6L112%20448zM451.3%20113.6c6.3-16.4%206.1-34%20.6-49.6L528%2064c44.2%200%2080%2035.8%2080%2080l0%2048c17.7%200%2032%2014.3%2032%2032l0%2064c0%2017.7-14.3%2032-32%2032l0%2048c0%2044.2-35.8%2080-80%2080l-191.5%200%2070.1-64%20121.4%200c8.8%200%2016-7.2%2016-16l0-224c0-8.8-7.2-16-16-16l-82.2%200%205.5-14.4zM397.5%2068.2c9.2%206.3%2012.9%2018%208.9%2028.4L354.8%20232%20440%20232c9.9%200%2018.8%206.1%2022.4%2015.3s1.1%2019.7-6.2%2026.4l-184%20168c-8.2%207.5-20.5%208.4-29.7%202.1s-12.9-18-8.9-28.4L285.2%20280%20200%20280c-9.9%200-18.8-6.1-22.4-15.3s-1.1-19.7%206.2-26.4l184-168c8.2-7.5%2020.5-8.4%2029.7-2.1z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 22.50px;
  height: 18px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .plan-info > .personnel > h3::before {
  content: "";
  flex: 0 0 auto;
  margin-right: 4px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20512%20512%27%3E%3Cpath%20d%3D%27M256%200a64%2064%200%201%201%200%20128%2064%2064%200%201%201%200-128zm96%20312c0%2025-12.7%2047-32%2059.9l0%2092.1c0%2026.5-21.5%2048-48%2048l-32%200c-26.5%200-48-21.5-48-48l0-92.1C172.7%20359%20160%20337%20160%20312l0-40c0-53%2043-96%2096-96s96%2043%2096%2096l0%2040zM96%2032a56%2056%200%201%201%200%20112%2056%2056%200%201%201%200-112zm16%20240l0%2032c0%2032.5%2012.1%2062.1%2032%2084.7l0%2075.3c0%201.2%200%202.5%20.1%203.7-8.5%207.6-19.7%2012.3-32.1%2012.3l-32%200c-26.5%200-48-21.5-48-48l0-56.6C12.9%20364.4%200%20343.7%200%20320l0-32c0-53%2043-96%2096-96%2012.7%200%2024.8%202.5%2035.9%206.9-12.6%2021.4-19.9%2046.4-19.9%2073.1zM368%20464l0-75.3c19.9-22.5%2032-52.2%2032-84.7l0-32c0-26.7-7.3-51.6-19.9-73.1%2011.1-4.5%2023.2-6.9%2035.9-6.9%2053%200%2096%2043%2096%2096l0%2032c0%2023.7-12.9%2044.4-32%2055.4l0%2056.6c0%2026.5-21.5%2048-48%2048l-32%200c-12.3%200-23.6-4.6-32.1-12.3%200-1.2%20.1-2.5%20.1-3.7zM416%2032a56%2056%200%201%201%200%20112%2056%2056%200%201%201%200-112z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20512%20512%27%3E%3Cpath%20d%3D%27M256%200a64%2064%200%201%201%200%20128%2064%2064%200%201%201%200-128zm96%20312c0%2025-12.7%2047-32%2059.9l0%2092.1c0%2026.5-21.5%2048-48%2048l-32%200c-26.5%200-48-21.5-48-48l0-92.1C172.7%20359%20160%20337%20160%20312l0-40c0-53%2043-96%2096-96s96%2043%2096%2096l0%2040zM96%2032a56%2056%200%201%201%200%20112%2056%2056%200%201%201%200-112zm16%20240l0%2032c0%2032.5%2012.1%2062.1%2032%2084.7l0%2075.3c0%201.2%200%202.5%20.1%203.7-8.5%207.6-19.7%2012.3-32.1%2012.3l-32%200c-26.5%200-48-21.5-48-48l0-56.6C12.9%20364.4%200%20343.7%200%20320l0-32c0-53%2043-96%2096-96%2012.7%200%2024.8%202.5%2035.9%206.9-12.6%2021.4-19.9%2046.4-19.9%2073.1zM368%20464l0-75.3c19.9-22.5%2032-52.2%2032-84.7l0-32c0-26.7-7.3-51.6-19.9-73.1%2011.1-4.5%2023.2-6.9%2035.9-6.9%2053%200%2096%2043%2096%2096l0%2032c0%2023.7-12.9%2044.4-32%2055.4l0%2056.6c0%2026.5-21.5%2048-48%2048l-32%200c-12.3%200-23.6-4.6-32.1-12.3%200-1.2%20.1-2.5%20.1-3.7zM416%2032a56%2056%200%201%201%200%20112%2056%2056%200%201%201%200-112z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: 18.00px;
  height: 18px;
}

/* G06 : badge de décompte après le sous-titre, comme span.badge : nombre de lignes de matériel de
   la catégorie (0 pour « N.A. »). Le contenu de la catégorie est rendu en ligne flexible pour que
   le badge, calculé après les lignes, s’affiche dans la barre du sous-titre. */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .div {
  display: flex;
  flex-wrap: wrap;
  counter-reset: als-items;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .div > h3 {
  flex: 0 0 auto;
  width: auto;
  border-radius: 4px 0 0 0;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .div > .section-content {
  display: contents;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .div > .section-content > * {
  order: 2;
  flex: 0 0 100%;
  box-sizing: border-box;
  padding: 12px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .div > .section-content > ul {
  margin: 0;
  list-style: none;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment table.rail-task-tools-table > tbody > tr {
  counter-increment: als-items;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment > .div > .section-content::after {
  content: counter(als-items);
  order: 1;
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  padding-left: 6.5px;
  border-radius: 0 4px 0 0;
  background: var(--section-1-header_bg, rgb(232, 236, 240)) linear-gradient(var(--section-1-header-badge_bg, rgb(59, 64, 89)), var(--section-1-header-badge_bg, rgb(59, 64, 89))) no-repeat left 0 center / 20px 18px;
  font-family: "Source Sans 3 SemiBold", sans-serif;
  font-size: 12.75px;
  color: var(--section-1-header-badge_color, rgb(255, 255, 255));
}

/* G06 : bandeau gris clair autour des conditions préalables, comme section.prelreqs
   (liseré de 4,5 px sur les côtés et de 1 px en bas, coins arrondis). */
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > :is(.section.prereq, .section.noprereq) {
  padding: 0 4.5px;
  border-radius: 4px 4px 0 0;
  background-color: var(--section-0_bg, rgb(249, 250, 251));
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > :is(.plan-info, .maint-equipment) {
  border: 0 solid var(--section-0_bg, rgb(249, 250, 251));
  border-width: 0 4.5px;
}
.mainContentWrapper[data-norm="DITA"][data-custo="alstom"] :is(.rail-taskbody, .rail-troublebody) > .maint-equipment {
  border-bottom-width: 1px;
  border-radius: 0 0 4px 4px;
}
