User:Tractopelle-jaune/CodeMirror/CodeMirror-dark-Advanced-CSS4.css

From Meta, a Wikimedia project coordination wiki

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
/** CSS dark-style for CodeMirror **/
/** More details on : https://fr.wikipedia.org/wiki/Utilisateur:Tractopelle-jaune/CodeMirror-dark **/

/* Arrière-plan et couleur de texte par défaut */
.CodeMirror-code
{
   background: black;
   color: white;
}

/* Curseur */
.CodeMirror-cursor
{
   border-left: 1px solid white;
}

.CodeMirror-selected
{
   background: darkslategray;
}


.CodeMirror-focused .CodeMirror-selected
{
   background: dimgray;
}

/* Équilibrage des délimiteurs */
.cm-mw-matchingbracket
{
   background: darkgray;
}

/* Classes diverses à usage indéterminé */
/* .cm-mw-pagename | .cm-mw-matching | .CodeMirror-selectedtext */

/* Suppression des colorations d'arrière-plan sous forme d'images en semi-transparence */
.cm-mw-template-ground,
.cm-mw-template2-ground,
.cm-mw-template3-ground,
.cm-mw-template-ext-ground,
.cm-mw-template-ext2-ground,
.cm-mw-template-ext3-ground,
.cm-mw-template-link-ground,
.cm-mw-template-ext-link-ground,
.cm-mw-template-ext2-link-ground,
.cm-mw-template-ext3-link-ground,
.cm-mw-template2-ext-ground,
.cm-mw-template2-ext2-ground,
.cm-mw-template2-ext3-ground,
.cm-mw-template2-link-ground,
.cm-mw-template2-ext-link-ground,
.cm-mw-template2-ext2-link-ground,
.cm-mw-template2-ext3-link-ground,
.cm-mw-template3-ext-ground,
.cm-mw-template3-ext2-ground,
.cm-mw-template3-ext3-ground,
.cm-mw-template3-link-ground,
.cm-mw-template3-ext-link-ground,
.cm-mw-template3-ext2-link-ground,
.cm-mw-template3-ext3-link-ground,
.cm-mw-ext-ground,
.cm-mw-ext2-ground,
.cm-mw-ext3-ground,
.cm-mw-ext-link-ground,
.cm-mw-ext2-link-ground,
.cm-mw-ext3-link-ground,
.cm-mw-link-ground
{
   background-image: none;
}



/** DIVERS **/

/* Espace blanc en début de ligne (utilisé pour indiquer qu'il s'agit de code) */
.cm-mw-skipformatting
{
   background: lime;
}

/* Liste à puces (* ou #) */
.cm-mw-list,
.cm-mw-accessible-colors .cm-mw-list
{
   color: red;
   font-weight: bold;
   border-radius: 50%;
   border: gold 1px solid;
   background: gold;
}

/* __TOC__, __NOTOC__, et compagnie */
.cm-mw-signature,
.cm-mw-hr,
.cm-mw-doubleUnderscore,
.cm-mw-accessible-colors .cm-mw-signature,
.cm-mw-accessible-colors .cm-mw-hr,
.cm-mw-accessible-colors .cm-mw-doubleUnderscore
{
   font-weight: bold;
   color: red;
   background: yellow;
   text-decoration: underline double yellow;
}

/* Indentation des discussions (caractères ':' en début de ligne) */
.cm-mw-indenting,
.cm-mw-accessible-colors .cm-mw-indenting
{
   color: red;
   font-weight: bold;
   background: gold;
   text-shadow: 
      -0.10em 0.0em red;
}

/* Entités HTML */
/* !important pour éviter les problèmes de couleurs ou bordures redéfinies (style prioritaire) */
.cm-mw-mnemonic,
.cm-mw-accessible-colors .cm-mw-mnemonic
{
   color: red !important;
   font-weight: bold;
   border: 1px dotted darkorange !important;
   border-radius: 5% !important;
}

/* Commentaire HTML */
.cm-mw-comment,
.cm-mw-accessible-colors .cm-mw-comment
{
   color: rgb(132, 160, 160);
   font-style: italic;
}

/* Erreurs de wikicode (balises ouvrantes ou fermantes oubliées) */
.cm-error,
.cm-mw-accessible-colors .cm-error
{
   color: red;
   font-weight: bold;
   background: yellow;
   border: solid 4px red !important; /* pour éviter sa suppression par le système d'expansion de l'indication gras/italique */
}

/* Caractères invalides et/ou problématiques (ex : Left-to-right mark) */
.cm-invalidchar,
.cm-mw-accessible-colors .cm-invalidchar
{
   color: black;
   background: repeating-linear-gradient(45deg, red, red 2px, gold 2px, gold 4px);
   border: white 2px solid;
   font-weight: bold;
   text-shadow: none; /* Annulation d'éventuelles ombres noires autour, si caractère invalide présent dans une imbrication de fonctions parseurs ou modèles */
}

/* Tabulations */
/* Ajout d'une bordure verticale en pointillés entre les tabulations (plus facile à se repérer) - Les tabulations sont souvent utilisées dans certaines balises comme "templatedata" */
.cm-tab + .cm-tab /* Permet de ne pas colorer la première tabulation */
{
   border-left: dotted 1px steelblue;
}
/** FIN DIVERS **/



/** GRAS/ITALIQUE **/
/* Apostrophes - gras */
.cm-mw-apostrophes-bold,
.cm-mw-accessible-colors .cm-mw-apostrophes-bold
{
   color: yellow;
   font-weight: bold;
   border: 1px dashed orange;
   border-radius: 5%;
}

/* Italique - Apostrophes */
.cm-mw-apostrophes-italic,
.cm-mw-accessible-colors .cm-mw-apostrophes-italic
{
   color: lawngreen;
   font-weight: bold;
   border: 1px dashed lawngreen;
   border-radius: 5%;
}

/* Apostrophes - type non-spécifié */
/* Classe non spécifique, présente dans certains cas, comme le texte des liens internes ou les légendes d'images - utilisation des mêmes couleurs que pour les apostrophes italique+gras combinées */
.cm-mw-apostrophes,
.cm-mw-accessible-colors .cm-mw-apostrophes
{
   color: rgb(192, 192, 0);
   font-weight: bold;
   border: 1px dashed rgb(192, 192, 0);
   border-radius: 5%;
}

/* Gras - Tout contenu */
.cm-strong
{
   font-weight: bold;
   border-top: 1px dashed orange;
   border-bottom: 1px dashed orange;
   border-radius: 5%;
}

/* Gras - Texte */
.cm-strong:not(.cm-mw-link-ground)
{
   color: yellow;
}

/* Italique - Tout contenu */
.cm-em
{
   border-top: 1px dashed lawngreen;
   border-bottom: 1px dashed lawngreen;
   border-radius: 5%;
}

/* Italique - Texte */
.cm-em:not(.cm-mw-link-ground)
{
   color: lawngreen;
}

/* Gras+italique - Tout contenu */
.cm-strong.cm-em
{
   border-top: 1px dashed rgb(192, 192, 0);
   border-bottom: 1px dashed rgb(192, 192, 0);
   border-radius: 5%;
}

/* Gras+italique - Texte */
.cm-strong.cm-em:not(.cm-mw-link-ground):not(.cm-mw-template-link-ground)
{
   color: rgb(192, 192, 0);
}

/* CSS4 */
/* Gras ou italique - Expansion - Expansion en continuité */
/* Permet l'expansion des bordures signalant une zone en gras/italique sur des segments non identifiés comme tels (crochets, modèles, balises HTML, etc.) */
/* Expansion de la coloration gras/italique depuis un segment en gras ou italique (apostrophes non comprises), expansion sur max 9 segments, tant que l'on ne rencontre pas une des classes suivantes : cm-strong, cm-em, cm-mw-apostrophes-bold, cm-mw-apostrophes-italic ou cm-mw-apostrophes */
/* le ":not(#rien)" à la fin sert juste à ajouter de la spécificité à la règle */
pre.CodeMirror-line span:is(.cm-strong, .cm-em) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes):not(#rien),
pre.CodeMirror-line span:is(.cm-strong, .cm-em) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes):not(#rien),
pre.CodeMirror-line span:is(.cm-strong, .cm-em) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes):not(#rien),
pre.CodeMirror-line span:is(.cm-strong, .cm-em) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes):not(#rien),
pre.CodeMirror-line span:is(.cm-strong, .cm-em) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes):not(#rien),
pre.CodeMirror-line span:is(.cm-strong, .cm-em) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes):not(#rien),
pre.CodeMirror-line span:is(.cm-strong, .cm-em) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes):not(#rien),
pre.CodeMirror-line span:is(.cm-strong, .cm-em) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes):not(#rien),
pre.CodeMirror-line span:is(.cm-strong, .cm-em) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes) + :not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes):not(#rien)
{
   border-top: 1px dashed rgb(192, 192, 0);
   border-bottom: 1px dashed rgb(192, 192, 0);
   border-radius: 5%;
}

/* CSS4 */
/* Gras ou italique - Expansion - Expansion par séquence */
/* Permet l'expansion des bordures signalant une zone en gras/italique sur des segments non identifiés comme tels (crochets, modèles, balises HTML, etc.) */
/* Expansion de la coloration gras/italique dès qu'une zone en gras/italique est identifiée, expansion sur max 10 séquences (sauf sur des éléments contenant une des classes suivantes : cm-strong, cm-em, cm-mw-apostrophes-bold, cm-mw-apostrophes-italic ou cm-mw-apostrophes) */
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes)
{
   border-top: 1px dashed rgb(192, 192, 0);
   border-bottom: 1px dashed rgb(192, 192, 0);
   border-radius: 5%;
}

/* CSS4 */
/* Gras ou italique - Expansion - Destruction expansion par séquence */
/* Destruction de l'expansion de la coloration gras/italique au-delà de la fin de la séquence de gras/italique */
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes)
{
   border: none;
   border-radius: 0;
}

/* CSS4 */
/* Gras+italique - Expansion - Expansion par séquence (par redéfinition) */
/* Pour les combinaisons gras+italique - fonctionne correctement que tant qu'il n'y a pas eu de séquences de gras ou italique seul auparavant sur la même ligne */
/* Cette règle doit impérativement se trouver APRÈS la destruction de l'expansion par séquence, car elle possède une spécificité identique, nécessaire à son bon fonctionnement */
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes),
pre.CodeMirror-line span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes)+span:is(.cm-mw-apostrophes-bold,.cm-mw-apostrophes-italic,.cm-mw-apostrophes) ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic):not(.cm-mw-apostrophes)
{
   border-top: 1px dashed rgb(192, 192, 0);
   border-bottom: 1px dashed rgb(192, 192, 0);
   border-radius: 5%;
}
/** FIN GRAS+ITALIQUE **/



/** MODÈLES **/

/* Modèle - Accolades ouvrantes ou fermantes */
span.cm-mw-template-bracket,
.cm-mw-accessible-colors span.cm-mw-template-bracket
{
   color: darkorange;
   text-shadow: 
      -0.10em 0.0em red,
      0.05em 0.0em red;
}

/* Modèle - Accolades - Équilibrage */
span.cm-mw-template-bracket.cm-mw-matchingbracket,
span.cm-mw-parserfunction-bracket.cm-mw-matchingbracket
{
   background: darkgray !important;
   color: red !important;
   text-shadow: 
      -0.10em 0.0em darkred,
      0.05em 0.0em darkred
      !important;
}

/* Modèle - Nom du modèle */
.cm-mw-template-name,
.cm-mw-accessible-colors .cm-mw-template-name
{
   color: rgb(255, 90, 0);
}

/* Modèle - Délimiteur */
span.cm-mw-template-delimiter,
.cm-mw-accessible-colors span.cm-mw-template-delimiter
{
   color: red;
   font-weight: bold;
   text-shadow: 
      -0.10em -0.15em darkorange,
      -0.10em 0.0em darkorange,
      -0.10em 0.15em darkorange,
      0.0em -0.15em darkorange,
      0.0em 0.15em darkorange,
      0.05em -0.15em darkorange,
      0.05em 0.0em darkorange,
      0.05em 0.15em darkorange;
}

/* Modèle - Nom de paramètre */
.cm-mw-template-argument-name,
.cm-mw-accessible-colors .cm-mw-template-argument-name
{
   color: rgb(255, 140, 0);
}

/* Modèle - Contenu */
.cm-mw-template,
.cm-mw-accessible-colors .cm-mw-template
{
   color: yellow;
}

/* Modèles - Correspondance des délimiteurs */
.cm-mw-template.cm-mw-matchingbracket
{
   color: gold;
   background: gray
}

/* Modèle - Modèles imbriqués - n2 */
.cm-mw-template2-ground,
.cm-mw-template2-link-ground
{
   background: rgba(255, 0, 0, 0.4);
}

/* Modèle - Modèles imbriqués - n3 */
.cm-mw-template3-ground,
.cm-mw-template3-link-ground
{
   background: rgba(255, 0, 0, 0.75);
}

/** FIN MODÈLES **/



/** VARIABLES **/

/* Variable - Accolades d'ouverture/fermeture */
span.cm-mw-templatevariable-bracket,
.cm-mw-accessible-colors span.cm-mw-templatevariable-bracket
{
   color: white;
   font-weight: bold;
   text-shadow:
     -1px 0 gray,
     0 1px gray,
      1px 0 gray,
     0 -1px gray;
}

/* Variable - Nom de la variable */
span.cm-mw-templatevariable-name,
.cm-mw-accessible-colors span.cm-mw-templatevariable-name
{
   color: orange;
   font-weight: bold;
   text-decoration: underline solid yellow;
   text-shadow:
     -1px 0 red,
     0 1px red,
      1px 0 red,
     0 -1px red;
}

/* Variable - Séparateur */
span.cm-mw-templatevariable-delimiter,
.cm-mw-accessible-colors span.cm-mw-templatevariable-delimiter
{
   color: gold; /* old : color: orangered; */
   font-weight: bold;
   text-shadow: 
      -0.10em -0.15em orangered,
      -0.10em 0 orangered,
      -0.10em 0.15em orangered,
      0 -0.15em orangered,
      0 0.15em orangered,
      0.05em -0.15em orangered,
      0.05em 0 orangered,
      0.05em 0.15em orangered;
}

/* Variable - Contenu si variable inexistante */
.cm-mw-templatevariable,
.cm-mw-accessible-colors .cm-mw-templatevariable
{
   color: gold;
   font-weight: bold;
}

/* Variable - Expansion */
/* Ajoute une bordure blanche supérieure en pointillés au-dessus des variables pour mieux les repérer dans le code complexe des modèles */
pre.CodeMirror-line span.cm-mw-templatevariable-bracket,
pre.CodeMirror-line span.cm-mw-templatevariable-name,
pre.CodeMirror-line span.cm-mw-templatevariable-delimiter,
pre.CodeMirror-line span.cm-mw-templatevariable
{
   border-top: dotted 2px white;
}

/* Variable - Expansion en continuité */
/* Permet l'expansion de la bordure haute en pointillés blancs (signalant que l'on est à l'intérieur d'une variable) sur des segments non identifiés comme tels (crochets, modèles, balises HTML, etc.) */
/* Expansion en continuité, sur max 10 segments, tant que l'on ne rencontre pas des accolades d'ouverture ou fermeture de variables (classe .cm-mw-templatevariable-bracket) */
pre.CodeMirror-line span.cm-mw-templatevariable-bracket+span.cm-mw-templatevariable-name+span.cm-mw-templatevariable-delimiter + span:not(.cm-mw-templatevariable-bracket),
pre.CodeMirror-line span.cm-mw-templatevariable-bracket+span.cm-mw-templatevariable-name+span.cm-mw-templatevariable-delimiter + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket),
pre.CodeMirror-line span.cm-mw-templatevariable-bracket+span.cm-mw-templatevariable-name+span.cm-mw-templatevariable-delimiter + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket),
pre.CodeMirror-line span.cm-mw-templatevariable-bracket+span.cm-mw-templatevariable-name+span.cm-mw-templatevariable-delimiter + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket),
pre.CodeMirror-line span.cm-mw-templatevariable-bracket+span.cm-mw-templatevariable-name+span.cm-mw-templatevariable-delimiter + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket),
pre.CodeMirror-line span.cm-mw-templatevariable-bracket+span.cm-mw-templatevariable-name+span.cm-mw-templatevariable-delimiter + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket),
pre.CodeMirror-line span.cm-mw-templatevariable-bracket+span.cm-mw-templatevariable-name+span.cm-mw-templatevariable-delimiter + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket),
pre.CodeMirror-line span.cm-mw-templatevariable-bracket+span.cm-mw-templatevariable-name+span.cm-mw-templatevariable-delimiter + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket),
pre.CodeMirror-line span.cm-mw-templatevariable-bracket+span.cm-mw-templatevariable-name+span.cm-mw-templatevariable-delimiter + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket),
pre.CodeMirror-line span.cm-mw-templatevariable-bracket+span.cm-mw-templatevariable-name+span.cm-mw-templatevariable-delimiter + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket) + span:not(.cm-mw-templatevariable-bracket)
{
   border-top: dotted 2px white;
}
/** FIN VARIABLES **/



/** PARSER FUNCTIONS / MOTS MAGIQUES **/

/* Parser function - Accolades ouvrantes/fermantes */
/* le span devant la classe permet d'ajouter de la spécificité (problème de couleur dans les réfs sinon) */
span.cm-mw-parserfunction-bracket,
.cm-mw-accessible-colors span.cm-mw-parserfunction-bracket
{
   color: lime;
   font-weight: bold;
   text-shadow: 
      -0.10em 0.0em limegreen,
      0.05em 0.0em limegreen;
}

/* Parser function - Nom de la parser function */
span.cm-mw-parserfunction-name,
.cm-mw-accessible-colors span.cm-mw-parserfunction-name
{
   color: lime;
   font-weight: bold;
   text-decoration: underline solid yellow;
}

/* Parser function - Délimiteur */
span.cm-mw-parserfunction-delimiter,
.cm-mw-accessible-colors span.cm-mw-parserfunction-delimiter
{
   color: yellow;
   font-weight: bold;
   text-shadow: 
      -0.10em -0.15em green,
      -0.10em 0.0em green,
      -0.10em 0.15em green,
      0.0em -0.15em green,
      0.0em 0.15em green,
      0.05em -0.15em green,
      0.05em 0.0em green,
      0.05em 0.15em green;
}

/* Parser function - Contenu */
span.cm-mw-parserfunction,
.cm-mw-accessible-colors span.cm-mw-parserfunction
{
   color: limegreen;
   font-weight: bold;
}

/* Parser function - Ombre noire tout autour du texte, afin de le rendre plus facilement lisible malgré le hachurage */
/* L'absence du span devant la classe permet d'avoir une spécificité moindre, et permet d'éviter d'écraser les différents text-shadow des délimiteurs en tout genre, qui comportent eux un span devant la classe, afin d'augmenter leur spécificité */
.cm-mw-ext2-ground,
.cm-mw-ext2-link-ground,
.cm-mw-ext3-ground,
.cm-mw-ext3-link-ground,
.cm-mw-template-ext-ground,
.cm-mw-template-ext-link-ground,
.cm-mw-template-ext2-ground,
.cm-mw-template-ext2-link-ground,
.cm-mw-template-ext3-ground,
.cm-mw-template-ext3-link-ground,
.cm-mw-template2-ext-ground,
.cm-mw-template2-ext-link-ground,
.cm-mw-template2-ext2-ground,
.cm-mw-template2-ext2-link-ground,
.cm-mw-template2-ext3-ground,
.cm-mw-template2-ext3-link-ground,
.cm-mw-template3-ext-ground,
.cm-mw-template3-ext-link-ground,
.cm-mw-template3-ext2-ground,
.cm-mw-template3-ext2-link-ground,
.cm-mw-template3-ext3-ground,
.cm-mw-template3-ext3-link-ground
{
   text-shadow:
      -0.1em -0.1em 0.3em black,
      -0.1em 0.1em 0.3em black,
      0.1em -0.1em 0.3em black,
      0.1em 0.1em 0.3em black;
}

/* Parser function - Arrière-plan - Parser n1 */
.cm-mw-ext-ground,
.cm-mw-ext-link-ground
{
   /* Aucun style particulier actuellement, utilise l'arrière-plan en cours */
}

/* Parser function - Arrière-plan - Parser n2 */
.cm-mw-ext2-ground,
.cm-mw-ext2-link-ground
{
   background: repeating-linear-gradient(
      -45deg,
      rgb(0, 51, 255), /* Segment parser */
      transparent 5px, /* Segment modèle */
      transparent 5px, /* Segment modèle */
      transparent 10px /* Segment modèle */
   );
}

/* Parser function - Arrière-plan - Parser n3 */
.cm-mw-ext3-ground,
.cm-mw-ext3-link-ground
{
   background: repeating-linear-gradient(
      45deg,
      rgb(102, 51, 255), /* Segment parser */
      rgb(102, 51, 255) 5px, /* Segment modèle */
      transparent 5px, /* Segment modèle */
      transparent 10px /* Segment modèle */
   );
}

/* Parser function - Modèle n1 - Parser n1 */
.cm-mw-template-ext-ground,
.cm-mw-template-ext-link-ground
{
   background: repeating-linear-gradient(
      45deg,
      navy, /* Segment parser */
      rgba(255, 0, 0, 0.2) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.2) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.2) 10px /* Segment modèle */
   );
}

/* Parser function - Modèle n1 - Parser n2 */
.cm-mw-template-ext2-ground,
.cm-mw-template-ext2-link-ground
{
   background: repeating-linear-gradient(
      -45deg,
      rgb(0, 51, 255), /* Segment parser */
      rgb(0, 51, 255) 5px, /* Segment parser */
      rgba(255, 0, 0, 0.2) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.2) 10px /* Segment modèle */
   );
}

/* Parser function - Modèle n1 - Parser n3 */
.cm-mw-template-ext3-ground,
.cm-mw-template-ext3-link-ground
{
   background: repeating-linear-gradient(
      45deg,
      rgb(102, 51, 255), /* Segment parser */
      rgb(102, 51, 255) 8px, /* Segment parser */
      rgb(102, 51, 255) 5px, /* Segment parser */
      rgba(255, 0, 0, 0.2) 10px /* Segment modèle */
   );
}

/* Parser function - Modèle n2 - Parser n1 */
.cm-mw-template2-ext-ground,
.cm-mw-template2-ext-link-ground
{
   background: repeating-linear-gradient(
      -45deg,
      rgba(0, 0, 255, 0.5), /* Segment parser */
      rgba(0, 0, 255, 0.5) 5px, /* Segment parser */
      rgba(255, 0, 0, 0.4) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.4) 10px /* Segment modèle */
   );
}

/* Parser function - Modèle n2 - Parser n2 */
.cm-mw-template2-ext2-ground,
.cm-mw-template2-ext2-link-ground
{
   background: repeating-linear-gradient(
      45deg,
      rgb(0, 51, 255), /* Segment parser */
      rgb(0, 51, 255) 5px, /* Segment parser */
      rgba(255, 0, 0, 0.4) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.4) 10px /* Segment modèle */
   );
}

/* Parser function - Modèle n2 - Parser n3 */
.cm-mw-template2-ext3-ground,
.cm-mw-template2-ext3-link-ground
{
   background: repeating-linear-gradient(
      -45deg,
      rgb(102, 51, 255), /* Segment parser */
      rgb(102, 51, 255) 5px, /* Segment parser */
      rgba(255, 0, 0, 0.4) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.4) 10px /* Segment modèle */
   );
}

/* Parser function - Modèle n3 - Parser n1 */
.cm-mw-template3-ext-ground,
.cm-mw-template3-ext-link-ground
{
   background: repeating-linear-gradient(
      45deg,
      rgba(0, 0, 255, 0.5), /* Segment parser */
      rgba(255, 0, 0, 0.75) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.75) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.75) 10px /* Segment modèle */
   );
}

/* Parser function - Modèle n3 - Parser n2 */
.cm-mw-template3-ext2-ground,
.cm-mw-template3-ext2-link-ground
{
   background: repeating-linear-gradient(
      -45deg,
      rgb(0, 51, 255), /* Segment parser */
      rgba(255, 0, 0, 0.75) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.75) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.75) 10px /* Segment modèle */
   );
}

/* Parser function - Modèle n3 - Parser n3 */
.cm-mw-template3-ext3-ground,
.cm-mw-template3-ext3-link-ground
{
   background: repeating-linear-gradient(
      45deg,
      rgb(102, 51, 255), /* Segment parser */
      rgba(255, 0, 0, 0.75) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.75) 5px, /* Segment modèle */
      rgba(255, 0, 0, 0.75) 10px /* Segment modèle */
   );
}
/** FIN PARSER FUNCTIONS **/



/** TITRES DE SECTION **/

/* Titre de section - Signes '=' */
.cm-mw-section-header,
.cm-mw-accessible-colors .cm-mw-section-header
{
   color: orange;
}

/* Titre de section - Titre */
pre.cm-mw-section-1.CodeMirror-line,
pre.cm-mw-section-2.CodeMirror-line,
pre.cm-mw-section-3.CodeMirror-line,
pre.cm-mw-section-4.CodeMirror-line,
pre.cm-mw-section-5.CodeMirror-line,
pre.cm-mw-section-6.CodeMirror-line
{
   color: lightsalmon;
   text-decoration: underline lightsalmon;
   background: rgba(225, 0, 0, 0.5);
}

/* Titre de section - Lien/modèle */
/* On force le soulignement couleur "titre de section" à la place des couleurs spécifiques aux liens/modèles */
pre > span > .cm-mw-section-header ~ .cm-mw-link-pagename,
pre > span > .cm-mw-section-header ~ .cm-mw-template-name,
pre > span > .cm-mw-section-header ~ .cm-mw-link,
pre > span > .cm-mw-section-header ~ .cm-mw-link-tosection
{
   text-decoration: underline lightsalmon;
}

/* Titre de section - Modèle - Séparateur de paramètre */
/* Correction esthétique séparateur de paramètre - Redéfinition du text-shadow pour le retirer dans l'axe vertical, qui provoque l'apparition de deux lignes de soulignement au-dessus et au-dessous du soulignement du titre de section */
pre > span > .cm-mw-section-header ~ span.cm-mw-template-delimiter
{
   text-shadow: 
      -0.10em 0.0em darkorange,
      0.05em 0.0em darkorange;
}

/* Titre de section - Parser function - Séparateur de paramètre */
/* Correction esthétique séparateur de paramètre - Redéfinition du text-shadow pour le retirer dans l'axe vertical, qui provoque l'apparition de deux lignes de soulignement au-dessus et au-dessous du soulignement du titre de section */
pre > span > .cm-mw-section-header ~ span.cm-mw-parserfunction-delimiter
{
   text-shadow: 
      -0.10em 0.0em green,
      0.05em 0.0em green;
}
/** FIN TITRE DE SECTION **/



/** LIENS INTERNES **/

/* Lien interne - Crochets */
/* Prend en compte toutes les configurations d'imbrication pouvant être rencontrées */
.cm-mw-link-bracket,
.cm-mw-link-ground.cm-mw-link-bracket,
.cm-mw-template-link-ground.cm-mw-link-bracket,
.cm-mw-template-ext-link-ground.cm-mw-link-bracket,
.cm-mw-template-ext2-link-ground.cm-mw-link-bracket,
.cm-mw-template-ext3-link-ground.cm-mw-link-bracket,
.cm-mw-template2-link-ground.cm-mw-link-bracket,
.cm-mw-template2-ext-link-ground.cm-mw-link-bracket,
.cm-mw-template2-ext2-link-ground.cm-mw-link-bracket,
.cm-mw-template2-ext3-link-ground.cm-mw-link-bracket,
.cm-mw-template3-link-ground.cm-mw-link-bracket,
.cm-mw-template3-ext-link-ground.cm-mw-link-bracket,
.cm-mw-template3-ext2-link-ground.cm-mw-link-bracket,
.cm-mw-template3-ext3-link-ground.cm-mw-link-bracket,
.cm-mw-ext-link-ground.cm-mw-link-bracket,
.cm-mw-ext2-link-ground.cm-mw-link-bracket,
.cm-mw-ext3-link-ground.cm-mw-link-bracket
{
   color: dodgerblue;
   font-weight: bold;
   text-shadow: 
      -0.10em 0.0em blue,
      0.05em 0.0em blue;
}

/* Lien interne - Nom de la page */
.cm-mw-link-pagename,
.cm-mw-link-ground.cm-mw-link-pagename,
.cm-mw-template-link-ground.cm-mw-link-pagename,
.cm-mw-template-ext-link-ground.cm-mw-link-pagename,
.cm-mw-template-ext2-link-ground.cm-mw-link-pagename,
.cm-mw-template-ext3-link-ground.cm-mw-link-pagename,
.cm-mw-template2-link-ground.cm-mw-link-pagename,
.cm-mw-template2-ext-link-ground.cm-mw-link-pagename,
.cm-mw-template2-ext2-link-ground.cm-mw-link-pagename,
.cm-mw-template2-ext3-link-ground.cm-mw-link-pagename,
.cm-mw-template3-link-ground.cm-mw-link-pagename,
.cm-mw-template3-ext-link-ground.cm-mw-link-pagename,
.cm-mw-template3-ext2-link-ground.cm-mw-link-pagename,
.cm-mw-template3-ext3-link-ground.cm-mw-link-pagename,
.cm-mw-ext-link-ground.cm-mw-link-pagename,
.cm-mw-ext2-link-ground.cm-mw-link-pagename,
.cm-mw-ext3-link-ground.cm-mw-link-pagename
{
   color: dodgerblue;
   font-weight: bold;
   text-decoration: underline solid blue;
}

/* Lien interne - Séparateur */
.cm-mw-link-delimiter,
.cm-mw-link-ground.cm-mw-link-delimiter,
.cm-mw-template-link-ground.cm-mw-link-delimiter,
.cm-mw-template-ext-link-ground.cm-mw-link-delimiter,
.cm-mw-template-ext2-link-ground.cm-mw-link-delimiter,
.cm-mw-template-ext3-link-ground.cm-mw-link-delimiter,
.cm-mw-template2-link-ground.cm-mw-link-delimiter,
.cm-mw-template2-ext-link-ground.cm-mw-link-delimiter,
.cm-mw-template2-ext2-link-ground.cm-mw-link-delimiter,
.cm-mw-template2-ext3-link-ground.cm-mw-link-delimiter,
.cm-mw-template3-link-ground.cm-mw-link-delimiter,
.cm-mw-template3-ext-link-ground.cm-mw-link-delimiter,
.cm-mw-template3-ext2-link-ground.cm-mw-link-delimiter,
.cm-mw-template3-ext3-link-ground.cm-mw-link-delimiter,
.cm-mw-ext-link-ground.cm-mw-link-delimiter,
.cm-mw-ext2-link-ground.cm-mw-link-delimiter,
.cm-mw-ext3-link-ground.cm-mw-link-delimiter
{
   color: dodgerblue;
   font-weight: bold;
   text-shadow: 
      -0.10em 0.0em dodgerblue,
      0.05em 0.0em dodgerblue;
}

/* Lien interne - Texte du lien */
.cm-mw-link-text,
.cm-mw-link-ground.cm-mw-link-text,
.cm-mw-template-link-ground.cm-mw-link-text,
.cm-mw-template-ext-link-ground.cm-mw-link-text,
.cm-mw-template-ext2-link-ground.cm-mw-link-text,
.cm-mw-template-ext3-link-ground.cm-mw-link-text,
.cm-mw-template2-link-ground.cm-mw-link-text,
.cm-mw-template2-ext-link-ground.cm-mw-link-text,
.cm-mw-template2-ext2-link-ground.cm-mw-link-text,
.cm-mw-template2-ext3-link-ground.cm-mw-link-text,
.cm-mw-template3-link-ground.cm-mw-link-text,
.cm-mw-template3-ext-link-ground.cm-mw-link-text,
.cm-mw-template3-ext2-link-ground.cm-mw-link-text,
.cm-mw-template3-ext3-link-ground.cm-mw-link-text,
.cm-mw-ext-link-ground.cm-mw-link-text,
.cm-mw-ext2-link-ground.cm-mw-link-text,
.cm-mw-ext3-link-ground.cm-mw-link-text
{
   color: darkturquoise;
}

/* Lien interne - Ancre - Caractère '#' */
.cm-mw-link,
.cm-mw-link-ground.cm-mw-link,
.cm-mw-template-link-ground.cm-mw-link,
.cm-mw-template-ext-link-ground.cm-mw-link,
.cm-mw-template-ext2-link-ground.cm-mw-link,
.cm-mw-template-ext3-link-ground.cm-mw-link,
.cm-mw-template2-link-ground.cm-mw-link,
.cm-mw-template2-ext-link-ground.cm-mw-link,
.cm-mw-template2-ext2-link-ground.cm-mw-link,
.cm-mw-template2-ext3-link-ground.cm-mw-link,
.cm-mw-template3-link-ground.cm-mw-link,
.cm-mw-template3-ext-link-ground.cm-mw-link,
.cm-mw-template3-ext2-link-ground.cm-mw-link,
.cm-mw-template3-ext3-link-ground.cm-mw-link,
.cm-mw-ext-link-ground.cm-mw-link,
.cm-mw-ext2-link-ground.cm-mw-link,
.cm-mw-ext3-link-ground.cm-mw-link
{
   color: darkseagreen;
   font-weight: bold;
   text-decoration: underline;
}

/* Lien interne - Ancre - Nom de l'ancre */
.cm-mw-link-tosection,
.cm-mw-link-ground.cm-mw-link-tosection,
.cm-mw-template-link-ground.cm-mw-link-tosection,
.cm-mw-template-ext-link-ground.cm-mw-link-tosection,
.cm-mw-template-ext2-link-ground.cm-mw-link-tosection,
.cm-mw-template-ext3-link-ground.cm-mw-link-tosection,
.cm-mw-template2-link-ground.cm-mw-link-tosection,
.cm-mw-template2-ext-link-ground.cm-mw-link-tosection,
.cm-mw-template2-ext2-link-ground.cm-mw-link-tosection,
.cm-mw-template2-ext3-link-ground.cm-mw-link-tosection,
.cm-mw-template3-link-ground.cm-mw-link-tosection,
.cm-mw-template3-ext-link-ground.cm-mw-link-tosection,
.cm-mw-template3-ext2-link-ground.cm-mw-link-tosection,
.cm-mw-template3-ext3-link-ground.cm-mw-link-tosection,
.cm-mw-ext-link-ground.cm-mw-link-tosection,
.cm-mw-ext2-link-ground.cm-mw-link-tosection,
.cm-mw-ext3-link-ground.cm-mw-link-tosection
{
   color: darkseagreen;
   text-decoration: underline;
}
/** FIN LIEN INTERNE **/



/** TABLE **/

/* Table - Ouverture/fermeture */
span.cm-mw-table-bracket,
.cm-mw-accessible-colors span.cm-mw-table-bracket
{
   color: white;
   font-weight: bold;
   text-shadow: 
      -0.10em 0.0em white,
      0.05em 0.0em white;
   background: rgba(0, 255, 0, 0.6);
   border-top: solid 2px gold;
   border-bottom: solid 2px gold;
}

span.cm-mw-table-bracket:first-child
{
   border-left: solid 2px gold;
}

span.cm-mw-table-bracket:last-child
{
   border-right: solid 2px gold;
}

span.cm-mw-table-bracket.cm-mw-matchingbracket
{
   color: red;
   text-shadow: 
      -0.10em 0.0em red,
      0.05em 0.0em red;
}

/* Table - Attribut (class, border, etc.) */
.cm-mw-table-definition,
.cm-mw-accessible-colors .cm-mw-table-definition
{
   color: white;
   font-weight: bold;
   text-decoration: underline solid forestgreen;
   background: rgba(0, 255, 0, 0.6);
   border-top: solid 2px gold;
   border-right: solid 2px gold;
   border-bottom: solid 2px gold;
}

/* Table - Titre du tableau (caption) */
.cm-mw-table-caption
{
   color: springgreen;
   font-weight: bold;
}

/* Table - Délimiteur */
span.cm-mw-table-delimiter,
.cm-mw-accessible-colors span.cm-mw-table-delimiter
{
   color: green;
   font-weight: bold;
   text-shadow: 
      -0.10em -0.15em lime,
      -0.10em 0.0em lime,
      -0.10em 0.15em lime,
      0.0em -0.15em lime,
      0.0em 0.15em lime,
      0.05em -0.15em lime,
      0.05em 0.0em lime,
      0.05em 0.15em lime;
}

/* Table - En-tête - Contenu **/
/* La règle ".cm-mw-table-delimiter:first-child + .cm-strong" permet d'identifier qu'il s'agit d'un en-tête de tableau, car il n'est pas possible de rencontrer cette combinaison dans d'autres circonstances, une zone de gras étant systématiquement précédée d'une séquence .cm-mw-apostrophes-bold */
/* Et la règle .cm-mw-table-delimiter:first-child + .cm-strong ~ .cm-strong:not(.cm-mw-link-ground) permet d'agir sur tous les éléments suivants le premier élément */
/* Les règles pre.CodeMirror-line > span > .cm-strong:first-child permettent d'agir à partir de la seconde ligne en cas d'un en-tête sur plusieurs lignes, car dans ce cas, on retrouve généralement la classe .cm-strong en :first-child (sauf sur certains types d'éléments, comme les modèles, dans ce cas, au-delà du modèle, le reste de l'en-tête sera affiché en gras, sans pouvoir l'éviter), hors cette classe ne peut normalement se retrouver au mieux qu'en seconde position, après un .cm-mw-apostrophes-bold  */
.cm-mw-table-delimiter:first-child + .cm-strong,
.cm-mw-table-delimiter:first-child + .cm-strong ~ .cm-strong:not(.cm-mw-link-ground),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong, /* Au cas où le premier élément est un lien interne, on vérifie la présence ou non du .cm-strong à l'intérieur du lien */
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong ~ .cm-strong:not(.cm-mw-link-ground),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong,
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong ~ .cm-strong:not(.cm-mw-link-ground),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong,
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong ~ .cm-strong:not(.cm-mw-link-ground),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong,
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong ~ .cm-strong:not(.cm-mw-link-ground),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong,
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong ~ .cm-strong:not(.cm-mw-link-ground),
pre.CodeMirror-line > span > .cm-strong:first-child,
pre.CodeMirror-line > span > .cm-strong:first-child ~ .cm-strong:not(.cm-mw-link-ground)
{
   color: lime;
}

/* Table - En-tête - Délimiteur - Suppression bordures gras haut+bas sur les délimiteurs de cellules */
/* Suppression de toutes les bordures gras et/ou italique */
/* Règle spécifique aux délimiteurs de cellule, pour ne pas avoir les pointillés jaunes en soulignement sur d'éventuels délimiteurs d'en-têtes situés sur la même ligne (les pointillés jaunes correspondent au contenu) */
.cm-mw-table-delimiter:first-child + .cm-strong ~ .cm-mw-table-delimiter
{
   border-top: none !important;
   border-bottom: none !important;
}


/* Table - En-tête - Contenu */
/* Suppression de toutes les bordures gras et/ou italique */
/* Mise en place d'un soulignement en petits pointillés jaunes, permettant de repérer plus facilement les en-têtes de tableaux */
.cm-mw-table-delimiter:first-child + .cm-strong:not(.cm-mw-mnemonic), /* Permet de cibler le premier segment du contenu de l'en-tête (sauf les entités HTML) */
.cm-mw-table-delimiter:first-child + .cm-strong ~ span:not(.cm-mw-table-delimiter):not(.cm-mw-mnemonic), /* Segments suivants (excepté les délimiteurs et les entités HTML) */
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong:not(.cm-mw-mnemonic), /* Au cas où le premier élément est un lien interne, on vérifie la présence ou non du .cm-strong à l'intérieur du lien */
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong ~ span:not(.cm-mw-table-delimiter):not(.cm-mw-mnemonic),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong:not(.cm-mw-mnemonic),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong ~ span:not(.cm-mw-table-delimiter):not(.cm-mw-mnemonic),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong:not(.cm-mw-mnemonic),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong ~ span:not(.cm-mw-table-delimiter):not(.cm-mw-mnemonic),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong:not(.cm-mw-mnemonic),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong ~ span:not(.cm-mw-table-delimiter):not(.cm-mw-mnemonic),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong:not(.cm-mw-mnemonic),
.cm-mw-table-delimiter:first-child + .cm-mw-link-bracket + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-ground:not(.cm-strong) + .cm-mw-link-bracket + .cm-strong ~ span:not(.cm-mw-table-delimiter):not(.cm-mw-mnemonic),
pre.CodeMirror-line > span > .cm-strong:first-child:not(.cm-mw-mnemonic),
pre.CodeMirror-line > span > .cm-strong:first-child ~ span:not(.cm-mw-table-delimiter):not(.cm-mw-mnemonic)
{
   border-top: none !important;
   border-bottom: none !important;
   border-radius: 0 !important;
   text-decoration: underline dotted yellow !important;
}

/* Table - En-tête - Contenu - Apostrophes gras (erreurs de wikicode) */
/* Signalement en rouge du gras ajouté "en plus" aux en-têtes de tableaux (il s'agit d'erreurs de wikicode, les en-têtes étant déjà affichés en gras, en ajouter ne va rien changer (ni augmenter ni réduire) */
.cm-mw-table-delimiter:first-child + .cm-strong ~ .cm-mw-apostrophes-bold,
pre.CodeMirror-line > span > .cm-strong:first-child ~ .cm-mw-apostrophes-bold
{
   color: gold;
   background: red;
   border-left: none;
   border-right: none;
}

/* Table - En-tête - Contenu - Apostrophes gras (erreurs de wikicode) */
/* Signalement en rouge du gras ajouté "en plus" aux en-têtes de tableaux (il s'agit d'erreurs de wikicode, les en-têtes étant déjà affichés en gras, en ajouter ne va rien changer (ni augmenter ni réduire) */
span.cm-strong[class="cm-strong cm-strong"] /* le sélecteur d'attribut span.cm-strong[class="cm-strong cm-strong"] permet de cibler les segments présentant un "double gras" (le code HTML contient deux fois la classe ".cm-strong", le seul moyen de cibler ce code est d'utiliser un sélecteur d'attribut sur l'attribut "class") */
{
   color: black;
   background: red;
}

/* Table - En-tête - Italique - Apostrophes */
/* Le :not(#rien) sert à ajouter de la spécificité, nécessaire pour surpasser les règles supprimant les bordures provoquées par l'usage par CodeMirror de la classe .cm-strong dans les en-têtes, qui sont aussi en !important */
.cm-mw-table-delimiter:first-child + .cm-strong ~ .cm-mw-apostrophes-italic:not(#rien),
pre.CodeMirror-line > span > .cm-strong:first-child ~ .cm-mw-apostrophes-italic:not(#rien)
{
   color: rgb(192, 192, 0);
   border-left: 1px dashed rgb(192, 192, 0) !important;
   border-right: 1px dashed rgb(192, 192, 0) !important;
   border-top: 1px dashed rgb(192, 192, 0) !important;
   border-radius: 5% !important;
}

/* Table - En-tête - Italique - Contenu */
.cm-mw-table-delimiter:first-child + .cm-strong ~ .cm-em:not(#rien),
pre.CodeMirror-line > span > .cm-strong:first-child ~ .cm-em:not(#rien)
{
   border-top: 1px dashed rgb(192, 192, 0) !important;
   border-radius: 5% !important;
}

/* Table - En-tête - Italique - Contenu */
/* Utilisation de la couleur gras+italique (vu que les en-têtes de tableaux sont déjà en gras) - Couleur appliquée sauf sur les liens internes */
.cm-mw-table-delimiter:first-child + .cm-strong ~ .cm-em:not(.cm-mw-link-ground):not(.cm-mw-template-link-ground),
pre.CodeMirror-line > span > .cm-strong:first-child ~ .cm-em:not(.cm-mw-link-ground):not(.cm-mw-template-link-ground)
{
   color: rgb(192, 192, 0);
}

/* Table - En-tête - Italique - Expansion par séquence */
/* Permet l'expansion des bordures signalant une zone en italique sur les segments non identifiés comme tels (crochets, modèles, balises HTML, etc.) */
/* Expansion de la coloration italique dès qu'une zone en italique est identifiée, expansion sur max 5 séquences (sauf sur des éléments contenant une des classes suivantes : cm-strong, cm-em, cm-mw-apostrophes-bold ou cm-mw-apostrophes-italic) */
pre.CodeMirror-line span.cm-mw-table-delimiter:first-child + span.cm-strong ~ span.cm-mw-apostrophes-italic ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic),
pre.CodeMirror-line span.cm-mw-table-delimiter:first-child + span.cm-strong ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic),
pre.CodeMirror-line span.cm-mw-table-delimiter:first-child + span.cm-strong ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic),
pre.CodeMirror-line span.cm-mw-table-delimiter:first-child + span.cm-strong ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic),
pre.CodeMirror-line span.cm-mw-table-delimiter:first-child + span.cm-strong ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic)
{
   border-top: 1px dashed rgb(192, 192, 0) !important;
   border-radius: 5% !important;
}

/* Table - En-tête - Italique - Destruction expansion par séquence */
pre.CodeMirror-line span.cm-mw-table-delimiter:first-child + span.cm-strong ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic),
pre.CodeMirror-line span.cm-mw-table-delimiter:first-child + span.cm-strong ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic),
pre.CodeMirror-line span.cm-mw-table-delimiter:first-child + span.cm-strong ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic),
pre.CodeMirror-line span.cm-mw-table-delimiter:first-child + span.cm-strong ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic),
pre.CodeMirror-line span.cm-mw-table-delimiter:first-child + span.cm-strong ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span.cm-mw-apostrophes-italic ~ span:not(.cm-strong):not(.cm-em):not(.cm-mw-apostrophes-bold):not(.cm-mw-apostrophes-italic)
{
   border: none !important;
   border-radius: 0 !important;
}

/* Table - En-tête - Modèle - Séparateur de paramètre */
/* Correction esthétique séparateur de paramètre - Redéfinition du text-shadow pour retirer le text-shadow dans l'axe vertical, qui provoque l'apparition de deux lignes de soulignement au-dessus et au-dessous du soulignement en pointillés jaunes */
.cm-mw-table-delimiter:first-child + .cm-strong ~ span.cm-mw-template-delimiter,
pre.CodeMirror-line > span > .cm-strong:first-child ~ span.cm-mw-template-delimiter
{
   text-shadow: 
      -0.10em 0.0em darkorange,
      0.05em 0.0em darkorange;
}

/* Table - En-tête - Parser function - Séparateur de paramètre */
/* Correction esthétique séparateur de paramètre - Redéfinition du text-shadow pour retirer le text-shadow dans l'axe vertical, qui provoque l'apparition de deux lignes de soulignement au-dessus et au-dessous du soulignement en pointillés jaunes */
.cm-mw-table-delimiter:first-child + .cm-strong ~ span.cm-mw-parserfunction-delimiter,
pre.CodeMirror-line > span > .cm-strong:first-child ~ span.cm-mw-parserfunction-delimiter
{
   text-shadow: 
      -0.10em 0.0em green,
      0.05em 0.0em green;
}
/** FIN TABLES **/



/** LIENS EXTERNES **/

/* Lien externe - URL (sans le "http(s)://") */
.cm-mw-extlink,
.cm-mw-free-extlink,
.cm-mw-accessible-colors .cm-mw-extlink,
.cm-mw-accessible-colors .cm-mw-free-extlink
{
   color: darkcyan;
   text-decoration: underline;
}

/* Lien externe - Texte du lien */
.cm-mw-extlink-text,
.cm-mw-accessible-colors .cm-mw-extlink-text
{
   color: mediumaquamarine;
}

/* Lien externe - Protocole ("http://" ou "https://") */
.cm-mw-extlink-protocol,
.cm-mw-free-extlink-protocol,
.cm-mw-accessible-colors .cm-mw-extlink-protocol,
.cm-mw-accessible-colors .cm-mw-free-extlink-protocol
{
   color: cyan;
   font-weight: bold;
   text-decoration: underline darkcyan;
}

/* Lien externe - Crochets */
.cm-mw-extlink-bracket,
.cm-mw-accessible-colors .cm-mw-extlink-bracket
{
   color: aquamarine;
   font-weight: bold;
   text-shadow: 
      -0.10em 0.0em teal,
      0.05em 0.0em teal;
}
/** FIN LIENS EXTERNES **/



/** BALISES HTML+WIKI (XML-like) **/

/* Balise - Chevrons ouvrant ou fermants (inclut la barre '/' des balises auto-fermantes) */
.cm-mw-exttag-bracket,
.cm-mw-htmltag-bracket,
.cm-mw-accessible-colors .cm-mw-exttag-bracket,
.cm-mw-accessible-colors .cm-mw-htmltag-bracket
{
   color: fuchsia;
   font-weight: bold;
   text-shadow: 
      -0.10em 0.0em purple,
      0.05em 0.0em purple;
}

/* Balise - Nom */
.cm-mw-exttag-name,
.cm-mw-htmltag-name,
.cm-mw-accessible-colors .cm-mw-exttag-name,
.cm-mw-accessible-colors .cm-mw-htmltag-name
{
   color: fuchsia;
   font-weight: bold;
}

/* Balise - Attribut */
.cm-mw-exttag-attribute,
.cm-mw-htmltag-attribute,
.cm-mw-accessible-colors .cm-mw-exttag-attribute,
.cm-mw-accessible-colors .cm-mw-htmltag-attribute
{
   color: violet;
   font-weight: bold;
   text-decoration: underline solid;
}

/* Balise - Contenu spécial (utilisé pour le contenu de certaines extensions MediaWiki, comme <math>) */
span.cm-mw-exttag,
.cm-mw-accessible-colors span.cm-mw-exttag,
pre.CodeMirror-line.cm-mw-exttag /* Nécessaire pour le contenu multiligne, dans ce cas la classe .cm-mw-exttag se trouve sur le pre au lieu du span */
{
   color: lightskyblue;
}

/* Balise - Contenu spécial - Équilibrage des délimiteurs */
span.cm-mw-exttag.cm-mw-matchingbracket,
pre.CodeMirror-line.cm-mw-exttag .cm-mw-matchingbracket
{
   color: red;
   font-weight: bold;
   text-shadow: 
      -0.10em 0.0em darkred,
      0.05em 0.0em darkred;
   background: darkgray;
}
/* Balise - Balises "pre" et "nowiki" */
pre.cm-mw-tag-pre.CodeMirror-line,
.cm-mw-tag-pre,
.cm-mw-accessible-colors .cm-mw-tag-pre,
pre.cm-mw-tag-nowiki.CodeMirror-line,
.cm-mw-tag-nowiki,
.cm-mw-accessible-colors .cm-mw-tag-nowiki
{
   color: white;
   background: rgba(0, 255, 0, 0.5);
}

/* Équilibrage des délimiteurs */
.cm-mw-tag-pre.cm-mw-matchingbracket,
.cm-mw-tag-nowiki.cm-mw-matchingbracket,
pre.cm-mw-tag-pre .cm-mw-matchingbracket,
pre.cm-mw-tag-nowiki .cm-mw-matchingbracket
{
   color: red;
   font-weight: bold;
   text-shadow: 
      -0.10em 0.0em darkorange,
      0.05em 0.0em darkorange;
   background: rgba(0, 255, 0, 0.5);
}

/* Balise - Balises "pre" et "nowiki" mutli-lignes */
/* Permet d'empêcher une double coloration en cas de présence d'entités HTML (ou d'un simple '&') dans des balises pre ou nowiki multi-lignes */
/* Tant qu'aucune entité HTMl ou caractère '&' n'est présente sur une pleine ligne, aucun segment n'est présent (c'est comme du texte libre), et pas de .cm-mw-tag-pre ou cm-mw-tag-noiwki sur le span parent intermédiaire, la classe est uniquement sur la balise parent pre.CodeMirror-line, mais les segments suivants la contiennent, ce qui provoque une double coloration verte (problématique avec les arrières-plans en transparence alpha à 0.5) */
/* Le principe est donc que en cas de contenu "pre" ou "nowkiki" multi-ligne (à partir de la seconde ligne), on supprime l'arrière-plan sur les éventuels segments span, pour ne laisser que le pre.CodeMirror-line avec ces styles - cela est détecté avec le code "pre.cm-mw-tag-pre span.cm-mw-tag-pre" ou "pre.cm-mw-tag-nowiki span.cm-mw-tag-nowiki" */
pre.cm-mw-tag-pre span.cm-mw-tag-pre,
pre.cm-mw-tag-nowiki span.cm-mw-tag-nowiki
{
   background: unset;
}
/** FIN BALISES HTML+WIKI **/



/** REFERENCES **/

/* Réf - Balise ref ouvrantes et fermantes */
.cm-mw-ext-ref,
.cm-mw-accessible-colors .cm-mw-ext-ref
{
   border-bottom: solid 2px dimgray !important;
   color: white;
   background: rgba(0, 0, 255, 0.5);
}

.cm-mw-ext-ref.cm-mw-exttag-bracket,
.cm-mw-ext-ref.cm-mw-htmltag-bracket
{
   color: white;
   text-shadow: none;
}

/* Réf - Balise ref - Attribut (comme name="" ou group="") */
.cm-mw-ext-ref.cm-mw-exttag-attribute
{
   color: gold;
}

/* Réf - Contenu */
/* Particularité, cette classe peut se retrouver sur une balise pre de CodeMirror au lieu de span, en cas de référence sur plusieurs lignes */
pre.cm-mw-tag-ref.CodeMirror-line,
.cm-mw-tag-ref,
.cm-mw-accessible-colors .cm-mw-tag-ref
{
   border-bottom: solid 2px dimgray !important; /* !important pour imposer la bordure grise de type "ref", nécessaire pour outrepasser la suppression des bordures gras et/ou italiques, qui sont supprimées en !important */
   color: darkgray;
   background: rgba(0, 0, 255, 0.5);
}

/* Réf - Contenu multi-ligne */
/* Permet d'empêcher une double coloration du bloc du modèle avec l'arrière-plan bleu foncé pour les blocs réf */
/* Dans certains cas, le premier segment d'une réf multiligne ne comporte pas la classe .cm-mw-tag-ref sur le span, elle est uniquement sur la balise parent pre, mais les segments suivants la contiennent, ce qui provoque un double soulignement gris (une fois sur le pre, puis une fois sur le span, hors les deux ont quelques pixels d'écart) */
/* Le principe est donc que en cas de réf multiligne (à partir de la seconde ligne), on supprime l'arrière-plan ET la bordure basse sur le span, pour ne laisser que le pre avec ces styles - cela est détecté avec le code "pre.cm-mw-tag-ref span.cm-mw-tag-ref" */
pre.cm-mw-tag-ref span.cm-mw-tag-ref
{
   background: unset;
   border-bottom: none !important;
}

/* Réf - Contenu - Apostrophes gras */
/* Redéfinition nécessaire ici, car d'autres règles prennent le dessus, et il faut éviter d'augmenter la spécificité de la règle générique */
.cm-mw-tag-ref.cm-mw-apostrophes-bold
{
   color: yellow;
   font-weight: bold;
}

/* Réf - Contenu - Apostrophes italique */
/* Redéfinition nécessaire ici, car d'autres règles prennent le dessus, et il faut éviter d'augmenter la spécificité de la règle générique */
.cm-mw-tag-ref.cm-mw-apostrophes-italic
{
   color: lawngreen;
   font-weight: bold;
}

/* Réf - Contenu - Gras/italique */
/* Coloration des parties en gras et/ou italique dans les références avec une couleur spécifique aux réfs, sauf s'il s'agit d'un lien interne */
.cm-mw-tag-ref.cm-strong:not(.cm-mw-link-ground):not(.cm-mw-template-link-ground):not(.cm-mw-template2-link-ground):not(.cm-mw-template3-link-ground),
.cm-mw-tag-ref.cm-em:not(.cm-mw-link-ground):not(.cm-mw-template-link-ground):not(.cm-mw-template2-link-ground):not(.cm-mw-template3-link-ground)
{
   color: thistle;
}

/* Réf - Contenu - Modèle - Accolades d'ouverture/fermeture */
/* Un jeu de couleur spécial est utilisé pour les modèles se trouvant dans les références */
.cm-mw-tag-ref.cm-mw-template-bracket,
pre.cm-mw-tag-ref span.cm-mw-template-bracket /* Règle nécessaire pour le premier segment d'une réf multiligne, car le span ne contient pas la classe .cm-mw-tag-ref, seul la balise parente pre la contient */
{
   color: red;
   text-shadow: 
      -0.10em 0.0em brown,
      0.05em 0.0em brown;
}

/* Réf - Contenu - Modèle - Nom du modèle */
.cm-mw-tag-ref.cm-mw-template-name,
pre.cm-mw-tag-ref span.cm-mw-template-name /* Règle nécessaire pour le premier segment d'une réf multiligne, car le span ne contient pas la classe .cm-mw-tag-ref, seul la balise parente pre la contient */
{
   color: sandybrown;
}

/* Réf - Contenu - Modèle - Séparateu de paramètre */
.cm-mw-tag-ref.cm-mw-template-delimiter,
pre.cm-mw-tag-ref span.cm-mw-template-delimiter /* Règle nécessaire pour le premier segment d'une réf multiligne, car le span ne contient pas la classe .cm-mw-tag-ref, seul la balise parente pre la contient */
{
   color: red;
   font-weight: bold;
   text-shadow: 
      -0.10em -0.15em brown,
      -0.10em 0.0em brown,
      -0.10em 0.15em brown,
      0.0em -0.15em brown,
      0.0em 0.15em brown,
      0.05em -0.15em brown,
      0.05em 0.0em brown,
      0.05em 0.15em brown;
   padding-left: 1px;
   padding-right: 1px;
}

/* Réf - Contenu - Modèle - Nom du paramètre */
.cm-mw-tag-ref.cm-mw-template-argument-name,
pre.cm-mw-tag-ref span.cm-mw-template-argument-name /* Règle nécessaire pour le premier segment d'une réf multiligne, car le span ne contient pas la classe .cm-mw-tag-ref, seul la balise parente pre la contient */
{
   color: goldenrod;
   padding-left: 1px;
   padding-right: 1px;
}

/* Réf - Contenu - Modèle - Contenu du modèle */
.cm-mw-tag-ref.cm-mw-template,
pre.cm-mw-tag-ref span.cm-mw-template /* Règle nécessaire pour le premier segment d'une réf multiligne, car le span ne contient pas la classe .cm-mw-tag-ref, seul la balise parente pre la contient */
{
   color: peru;
   padding-left: 1px;
   padding-right: 1px;
}

/* Réf - Contenu - Modèle n2 */
/* Arrière-plan spécifique pour les modèles imbriqués - second niveau d'imbrication - Couleur un peu plus foncée que le bleu référence normal */
.cm-mw-tag-ref.cm-mw-template2-ground,
.cm-mw-tag-ref.cm-mw-template2-link-ground,
.cm-mw-tag-ref.cm-mw-template2-ext-ground,
.cm-mw-tag-ref.cm-mw-template2-ext2-ground,
.cm-mw-tag-ref.cm-mw-template2-ext3-ground,
.cm-mw-tag-ref.cm-mw-template2-ext-link-ground,
.cm-mw-tag-ref.cm-mw-template2-ext2-link-ground,
.cm-mw-tag-ref.cm-mw-template2-ext3-link-ground
{
   background: rgba(0, 0, 255, 0.3);
}

/* Réf multi-lignes - Contenu - Modèle n2 */
/* Règles nécessaires pour le premier segment d'une réf multiligne, car le span ne contient pas la classe .cm-mw-tag-ref, seul la balise parente pre la contient */
pre.cm-mw-tag-ref span.cm-mw-template2-ground,
pre.cm-mw-tag-ref span.cm-mw-template2-link-ground,
pre.cm-mw-tag-ref span.cm-mw-template2-ext-ground,
pre.cm-mw-tag-ref span.cm-mw-template2-ext2-ground,
pre.cm-mw-tag-ref span.cm-mw-template2-ext3-ground,
pre.cm-mw-tag-ref span.cm-mw-template2-ext-link-ground,
pre.cm-mw-tag-ref span.cm-mw-template2-ext2-link-ground,
pre.cm-mw-tag-ref span.cm-mw-template2-ext3-link-ground
{
   background: rgba(0, 0, 0, 0.4);
}

/* Réf - Contenu - Modèle n3 */
/* Arrière-plan spécifique pour les modèles imbriqués - troisième niveau d'imbrication - Couleur un peu plus foncée que le second niveau */
.cm-mw-tag-ref.cm-mw-template3-ground,
.cm-mw-tag-ref.cm-mw-template3-link-ground,
.cm-mw-tag-ref.cm-mw-template3-ext-ground,
.cm-mw-tag-ref.cm-mw-template3-ext2-ground,
.cm-mw-tag-ref.cm-mw-template3-ext3-ground,
.cm-mw-tag-ref.cm-mw-template3-ext-link-ground,
.cm-mw-tag-ref.cm-mw-template3-ext2-link-ground,
.cm-mw-tag-ref.cm-mw-template3-ext3-link-ground
{
   background: rgba(0, 0, 255, 0.2);
}

/* Réf multi-lignes - Contenu - Modèle n3 */
/* Règles nécessaires pour le premier segment d'une réf multiligne, car le span ne contient pas la classe .cm-mw-tag-ref, seul la balise parente pre la contient */
pre.cm-mw-tag-ref span.cm-mw-template3-ground,
pre.cm-mw-tag-ref span.cm-mw-template3-link-ground,
pre.cm-mw-tag-ref span.cm-mw-template3-ext-ground,
pre.cm-mw-tag-ref span.cm-mw-template3-ext2-ground,
pre.cm-mw-tag-ref span.cm-mw-template3-ext3-ground,
pre.cm-mw-tag-ref span.cm-mw-template3-ext-link-ground,
pre.cm-mw-tag-ref span.cm-mw-template3-ext2-link-ground,
pre.cm-mw-tag-ref span.cm-mw-template3-ext3-link-ground
{
   background: rgba(0, 0, 0, 0.6);
}

/* Réf - Contenu - Parser function - Modèle n1 - Parseur n1 */
/* Seul ce niveau d'imbrication est spécifiquement redéfini, les autres niveaux d'imbrication sont exceptionnellement rares dans les réfs */
.cm-mw-tag-ref.cm-mw-template-ext-ground,
.cm-mw-tag-ref.cm-mw-template-ext-link-ground
{
   background: none; /* On retire le hachurage */
   background: rgba(0, 0, 255, 0.5);
}

/* Réf multiligne - Contenu - Parser function - Modèle n1 - Parseur n1 */
.cm-mw-tag-ref .cm-mw-template-ext-ground,
.cm-mw-tag-ref .cm-mw-template-ext-link-ground
{
   background: none; /* On retire le hachurage */
   background: transparent;
}

/* Réf - Contenu - Lien externe - Protocole+URL */
.cm-mw-tag-ref.cm-mw-extlink,
.cm-mw-tag-ref.cm-mw-free-extlink,
.cm-mw-tag-ref.cm-mw-extlink-protocol,
.cm-mw-tag-ref.cm-mw-free-extlink-protocol,
.cm-mw-tag-ref.cm-mw-extlink
{
   color: cyan;
   text-decoration: underline;
}

/* Réf - Contenu - Lien externe - Crochets */
.cm-mw-tag-ref.cm-mw-extlink-bracket
{
   color: cyan;
   font-weight: bold;
   text-shadow: 
      -0.10em 0.0em lightseagreen,
      0.05em 0.0em lightseagreen;
}

/* Réf - Contenu - Lien externe - Texte du lien */
.cm-mw-tag-ref.cm-mw-extlink-text
{
   color: aquamarine;
}

/* Réf - Contenu - Liste à puces */
/* Utilisation d'un arrière-plan ovale bleu ciel au lieu de jaune pour les listes à puces incluses dans une réf */
.cm-mw-tag-ref.cm-mw-list,
pre.cm-mw-tag-ref span.cm-mw-list /* Règle nécessaire pour le premier segment d'une réf multiligne, car le span ne contient pas la classe .cm-mw-tag-ref, seul la balise parente pre la contient */
{
   color: black;
   font-weight: bold;
   border-radius: 50%;
   border: aqua 1px solid;
   background: aqua;
}
/** FIN RÉFÉRENCES **/