Aller au contenu

« MediaWiki:Common.css » : différence entre les versions

De Athéna - Le wiki Prométhée T&I
Aucun résumé des modifications
Aucun résumé des modifications
 
(5 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
/* ============================================================
/* ============================================================
   Athéna, identité visuelle Prométhée Technologies & Ingénierie
   ATHÉNA — IDENTITÉ VISUELLE PROMÉTHÉE T&I
   Feuille commune du wiki
  ============================================================
   Page cible : MediaWiki:Common.css
 
  Fichier cible :
  MediaWiki:Common.css
 
  Rôle :
   Définir l’identité visuelle commune du wiki Athéna :
   couleurs, typographie, cartes, encarts, tableaux, accordéons,
  pages d’accueil, classes utilitaires et compatibilité mode sombre.
 
  Principe de conception :
  1. Les couleurs et fonds sont pilotés par des variables CSS.
  2. Les composants utilisent les variables, jamais le thème en dur.
  3. Le mode sombre redéfinit principalement les variables.
  4. Les classes Athéna sont préfixées par .pti-
  5. Les surcharges MediaWiki restent limitées et commentées.
 
  Convention :
  .pti-bandeau      : bandeau institutionnel de page
  .pti-grille        : grille de tuiles
  .pti-carte        : tuile documentaire
  .pti-encart        : encart éditorial
  .pti-accordeon    : bloc repliable
  .pti-etiquette    : badge documentaire
  .pti-meta          : information secondaire
 
   ============================================================ */
   ============================================================ */




/* ============================================================
/* ============================================================
   1. Variables graphiques générales
   1. VARIABLES GÉNÉRALES, MODE CLAIR
  ============================================================
 
  Ces variables sont la source principale de l’identité Athéna.
  Les composants graphiques ci-dessous doivent s’appuyer sur elles.
 
   ============================================================ */
   ============================================================ */


:root {
:root {
  /* Couleurs institutionnelles */
   --pti-bleu-nuit: #111827;
   --pti-bleu-nuit: #111827;
   --pti-bleu-profond: #1f2937;
   --pti-bleu-profond: #1f2937;
Ligne 20 : Ligne 50 :
   --pti-or-fond: #f8f4ec;
   --pti-or-fond: #f8f4ec;


  --pti-vert: #3f7d5f;
  --pti-vert-fond: #f3faf6;
  --pti-rouge: #9f3a38;
  --pti-rouge-fond: #fff5f5;
  /* Fonds principaux */
   --pti-fond-page: #f7f8fb;
   --pti-fond-page: #f7f8fb;
   --pti-fond-contenu: #ffffff;
   --pti-fond-contenu: #ffffff;
   --pti-fond-carte: #ffffff;
   --pti-fond-carte: #ffffff;
   --pti-fond-encart: #fbfcfe;
   --pti-fond-encart: #fbfcfe;
  --pti-fond-secondaire: #fafbfc;


  /* Texte */
   --pti-texte: #1f2933;
   --pti-texte: #1f2933;
   --pti-texte-secondaire: #5f6b7a;
   --pti-texte-secondaire: #5f6b7a;
   --pti-texte-discret: #7b8794;
   --pti-texte-discret: #7b8794;
  --pti-texte-inverse: #ffffff;


  /* Bordures */
   --pti-bordure: #d8dde6;
   --pti-bordure: #d8dde6;
   --pti-bordure-legere: #edf0f5;
   --pti-bordure-legere: #edf0f5;


  /* Code */
  --pti-code-fond: #f3f5f8;
  --pti-code-bloc-fond: #f6f8fb;
  --pti-code-bordure: #e1e5ec;
  --pti-code-texte: #1f2937;
  /* Tableaux */
  --pti-table-entete-fond: var(--pti-bleu-nuit);
  --pti-table-entete-texte: #ffffff;
  --pti-table-ligne-paire: #fafbfc;
  /* Ombres et rayons */
   --pti-ombre-carte: 0 1px 3px rgba(17, 24, 39, 0.08);
   --pti-ombre-carte: 0 1px 3px rgba(17, 24, 39, 0.08);
   --pti-ombre-carte-survol: 0 6px 18px rgba(17, 24, 39, 0.12);
   --pti-ombre-carte-survol: 0 6px 18px rgba(17, 24, 39, 0.12);
Ligne 37 : Ligne 90 :
   --pti-rayon: 10px;
   --pti-rayon: 10px;
   --pti-rayon-petit: 8px;
   --pti-rayon-petit: 8px;
  /* Teintes de sections de l’accueil */
  --pti-section-entrees-fond: #fbf3e6;
  --pti-section-entrees-fond-survol: #f8ead2;
  --pti-section-entrees-bordure: #b08d57;
  --pti-section-entrees-separateur: #e5cfaa;
  --pti-section-referentiels-fond: #edf5ff;
  --pti-section-referentiels-fond-survol: #e4f0fc;
  --pti-section-referentiels-bordure: #6f9fca;
  --pti-section-referentiels-separateur: #c7dced;
  --pti-section-documents-fond: #f1f3f6;
  --pti-section-documents-fond-survol: #e9edf2;
  --pti-section-documents-bordure: #9aa6b5;
  --pti-section-documents-separateur: #d4dae2;
  --pti-section-espaces-fond: #edf9f1;
  --pti-section-espaces-fond-survol: #e3f5e9;
  --pti-section-espaces-bordure: #7fb891;
  --pti-section-espaces-separateur: #c7e2cf;
  --pti-section-pilotage-fond: #f4f0fb;
  --pti-section-pilotage-fond-survol: #eee7f8;
  --pti-section-pilotage-bordure: #9b86c6;
  --pti-section-pilotage-separateur: #ddd3ef;
}
/* ============================================================
  2. VARIABLES GÉNÉRALES, MODE SOMBRE
  ============================================================
  MediaWiki / Vector peut appliquer le mode sombre de deux façons :
  1. Mode sombre choisi explicitement :
      html.skin-theme-clientpref-night
  2. Mode automatique selon le système :
      html.skin-theme-clientpref-os + prefers-color-scheme: dark
  On redéfinit les variables, puis les composants suivent.
  ============================================================ */
html.skin-theme-clientpref-night {
  color-scheme: dark;
  --pti-bleu-nuit: #f3f6fb;
  --pti-bleu-profond: #d8dee9;
  --pti-bleu-lien: #8ab4f8;
  --pti-bleu-lien-visite: #c6a7ff;
  --pti-or: #d7bf8f;
  --pti-or-clair: #e8d7ad;
  --pti-or-fond: #2a2418;
  --pti-vert: #8fd0a8;
  --pti-vert-fond: #10251a;
  --pti-rouge: #f2a3a3;
  --pti-rouge-fond: #2a1414;
  --pti-fond-page: #0f1117;
  --pti-fond-contenu: #151922;
  --pti-fond-carte: #1b202b;
  --pti-fond-encart: #1b202b;
  --pti-fond-secondaire: #181e29;
  --pti-texte: #e5e7eb;
  --pti-texte-secondaire: #c3cad6;
  --pti-texte-discret: #9aa4b2;
  --pti-texte-inverse: #ffffff;
  --pti-bordure: #394150;
  --pti-bordure-legere: #2b3340;
  --pti-code-fond: #111827;
  --pti-code-bloc-fond: #111827;
  --pti-code-bordure: #374151;
  --pti-code-texte: #e5e7eb;
  --pti-table-entete-fond: #0b1220;
  --pti-table-entete-texte: #ffffff;
  --pti-table-ligne-paire: #181e29;
  --pti-ombre-carte: 0 1px 3px rgba(0, 0, 0, 0.35);
  --pti-ombre-carte-survol: 0 6px 18px rgba(0, 0, 0, 0.45);
  --pti-section-entrees-fond: #2a2418;
  --pti-section-entrees-fond-survol: #352c1d;
  --pti-section-entrees-bordure: #d7bf8f;
  --pti-section-entrees-separateur: #6f5630;
  --pti-section-referentiels-fond: #111f32;
  --pti-section-referentiels-fond-survol: #172944;
  --pti-section-referentiels-bordure: #6f9fca;
  --pti-section-referentiels-separateur: #315f96;
  --pti-section-documents-fond: #202633;
  --pti-section-documents-fond-survol: #252d3b;
  --pti-section-documents-bordure: #9aa6b5;
  --pti-section-documents-separateur: #465264;
  --pti-section-espaces-fond: #10251a;
  --pti-section-espaces-fond-survol: #173321;
  --pti-section-espaces-bordure: #7fb891;
  --pti-section-espaces-separateur: #285c3f;
  --pti-section-pilotage-fond: #21182f;
  --pti-section-pilotage-fond-survol: #2a1f3d;
  --pti-section-pilotage-bordure: #9b86c6;
  --pti-section-pilotage-separateur: #574177;
}
@media screen and (prefers-color-scheme: dark) {
  html.skin-theme-clientpref-os {
    color-scheme: dark;
    --pti-bleu-nuit: #f3f6fb;
    --pti-bleu-profond: #d8dee9;
    --pti-bleu-lien: #8ab4f8;
    --pti-bleu-lien-visite: #c6a7ff;
    --pti-or: #d7bf8f;
    --pti-or-clair: #e8d7ad;
    --pti-or-fond: #2a2418;
    --pti-vert: #8fd0a8;
    --pti-vert-fond: #10251a;
    --pti-rouge: #f2a3a3;
    --pti-rouge-fond: #2a1414;
    --pti-fond-page: #0f1117;
    --pti-fond-contenu: #151922;
    --pti-fond-carte: #1b202b;
    --pti-fond-encart: #1b202b;
    --pti-fond-secondaire: #181e29;
    --pti-texte: #e5e7eb;
    --pti-texte-secondaire: #c3cad6;
    --pti-texte-discret: #9aa4b2;
    --pti-texte-inverse: #ffffff;
    --pti-bordure: #394150;
    --pti-bordure-legere: #2b3340;
    --pti-code-fond: #111827;
    --pti-code-bloc-fond: #111827;
    --pti-code-bordure: #374151;
    --pti-code-texte: #e5e7eb;
    --pti-table-entete-fond: #0b1220;
    --pti-table-entete-texte: #ffffff;
    --pti-table-ligne-paire: #181e29;
    --pti-ombre-carte: 0 1px 3px rgba(0, 0, 0, 0.35);
    --pti-ombre-carte-survol: 0 6px 18px rgba(0, 0, 0, 0.45);
    --pti-section-entrees-fond: #2a2418;
    --pti-section-entrees-fond-survol: #352c1d;
    --pti-section-entrees-bordure: #d7bf8f;
    --pti-section-entrees-separateur: #6f5630;
    --pti-section-referentiels-fond: #111f32;
    --pti-section-referentiels-fond-survol: #172944;
    --pti-section-referentiels-bordure: #6f9fca;
    --pti-section-referentiels-separateur: #315f96;
    --pti-section-documents-fond: #202633;
    --pti-section-documents-fond-survol: #252d3b;
    --pti-section-documents-bordure: #9aa6b5;
    --pti-section-documents-separateur: #465264;
    --pti-section-espaces-fond: #10251a;
    --pti-section-espaces-fond-survol: #173321;
    --pti-section-espaces-bordure: #7fb891;
    --pti-section-espaces-separateur: #285c3f;
    --pti-section-pilotage-fond: #21182f;
    --pti-section-pilotage-fond-survol: #2a1f3d;
    --pti-section-pilotage-bordure: #9b86c6;
    --pti-section-pilotage-separateur: #574177;
  }
}
}




/* ============================================================
/* ============================================================
   2. Ambiance générale
   3. AMBIANCE GÉNÉRALE MEDIAWIKI
   ============================================================ */
   ============================================================ */


Ligne 51 : Ligne 287 :
}
}


/* Zone principale de contenu */
.mw-body,
.mw-body,
.vector-body,
.vector-body,
Ligne 58 : Ligne 293 :
.mw-page-container-inner {
.mw-page-container-inner {
   background: var(--pti-fond-contenu) !important;
   background: var(--pti-fond-contenu) !important;
  color: var(--pti-texte) !important;
}
}


/* Corps de page */
.mw-parser-output {
.mw-parser-output {
   color: var(--pti-texte) !important;
   color: var(--pti-texte) !important;
Ligne 67 : Ligne 302 :
}
}


/* Paragraphes */
.mw-parser-output * {
.mw-parser-output p {
  box-sizing: border-box;
}
 
.mw-parser-output p,
.mw-parser-output li,
.mw-parser-output td {
   color: var(--pti-texte) !important;
   color: var(--pti-texte) !important;
   line-height: 1.6;
   line-height: 1.6;
Ligne 75 : Ligne 315 :


/* ============================================================
/* ============================================================
   3. Logo et marque du wiki
   4. LOGO ET MARQUE DU WIKI
   ============================================================ */
   ============================================================ */


/* Masquage provisoire du logo MediaWiki par défaut */
.mw-logo-icon {
.mw-logo-icon {
   display: none !important;
   display: none !important;
}
}


/* Amélioration du bloc marque en haut à gauche */
.mw-logo-wordmark,
.mw-logo-wordmark,
.mw-logo-tagline {
.mw-logo-tagline {
Ligne 93 : Ligne 331 :
}
}


/* Titre du wiki dans l’en tête */
.vector-header-container .mw-logo-wordmark {
.vector-header-container .mw-logo-wordmark {
   font-weight: 700 !important;
   font-weight: 700 !important;
Ligne 105 : Ligne 342 :


/* ============================================================
/* ============================================================
   4. Titres et hiérarchie éditoriale
   5. TITRES ET HIÉRARCHIE ÉDITORIALE
   ============================================================ */
   ============================================================ */


/* Titre principal de page */
.firstHeading,
.firstHeading,
.mw-first-heading {
.mw-first-heading {
Ligne 117 : Ligne 353 :
}
}


/* Titres internes */
.mw-body h1,
.mw-body h1,
.mw-body h2,
.mw-body h2,
Ligne 132 : Ligne 367 :
}
}


/* Titres de niveau 2 */
.mw-parser-output h2 {
.mw-parser-output h2 {
   border-bottom: 1px solid var(--pti-bordure) !important;
   border-bottom: 1px solid var(--pti-bordure) !important;
Ligne 140 : Ligne 374 :
}
}


/* Titres de niveau 3 */
.mw-parser-output h3 {
.mw-parser-output h3 {
   font-weight: 650 !important;
   font-weight: 650 !important;
Ligne 148 : Ligne 381 :


/* ============================================================
/* ============================================================
   5. Liens
   6. LIENS
   ============================================================ */
   ============================================================ */


Ligne 170 : Ligne 403 :


/* ============================================================
/* ============================================================
   6. Bandeau institutionnel Athéna
   7. BANDEAU INSTITUTIONNEL ATHÉNA
   ============================================================ */
   ============================================================ */


Ligne 176 : Ligne 409 :
   border: 1px solid var(--pti-bordure) !important;
   border: 1px solid var(--pti-bordure) !important;
   border-left: 6px solid var(--pti-or) !important;
   border-left: 6px solid var(--pti-or) !important;
   background: linear-gradient(135deg, #ffffff 0%, var(--pti-or-fond) 100%) !important;
   background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-or-fond) 100%) !important;
   padding: 1.5rem 1.7rem !important;
   padding: 1.5rem 1.7rem !important;
   margin: 1rem 0 1.5rem 0 !important;
   margin: 1rem 0 1.5rem 0 !important;
Ligne 184 : Ligne 417 :
   flex-direction: column !important;
   flex-direction: column !important;
   justify-content: center !important;
   justify-content: center !important;
   box-shadow: 0 1px 3px rgba(17, 24, 39, 0.06) !important;
   box-shadow: var(--pti-ombre-carte) !important;
}
}


Ligne 205 : Ligne 438 :


/* ============================================================
/* ============================================================
   7. Grilles et tuiles
   8. GRILLES ET TUILES
   ============================================================ */
   ============================================================ */


Ligne 221 : Ligne 454 :
   border-radius: var(--pti-rayon) !important;
   border-radius: var(--pti-rayon) !important;
   box-shadow: var(--pti-ombre-carte) !important;
   box-shadow: var(--pti-ombre-carte) !important;
   transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease !important;
   transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, background 0.15s ease !important;
}
}


Ligne 253 : Ligne 486 :
}
}


/* Variante de tuile plus importante, utilisable ponctuellement */
.pti-carte-majeure {
.pti-carte-majeure {
   border-left: 5px solid var(--pti-or) !important;
   border-left: 5px solid var(--pti-or) !important;
   background: linear-gradient(135deg, #ffffff 0%, #fbfaf7 100%) !important;
   background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-or-fond) 100%) !important;
}
}




/* ============================================================
/* ============================================================
   8. Encarts documentaires
   9. ENCARTS DOCUMENTAIRES
   ============================================================ */
   ============================================================ */


Ligne 269 : Ligne 500 :
   border-left: 5px solid var(--pti-or) !important;
   border-left: 5px solid var(--pti-or) !important;
   background: var(--pti-fond-encart) !important;
   background: var(--pti-fond-encart) !important;
  color: var(--pti-texte) !important;
   padding: 1rem 1.1rem !important;
   padding: 1rem 1.1rem !important;
   margin: 1rem 0 !important;
   margin: 1rem 0 !important;
Ligne 279 : Ligne 511 :
}
}


/* Encarts spécialisés */
.pti-note {
.pti-note {
   border-left: 5px solid #245c9c !important;
   border-left-color: var(--pti-bleu-lien) !important;
   background: #f5f8fc !important;
   background: var(--pti-section-referentiels-fond) !important;
}
}


.pti-attention {
.pti-attention {
   border-left: 5px solid #b08d57 !important;
   border-left-color: var(--pti-or) !important;
   background: #fbf7ef !important;
   background: var(--pti-or-fond) !important;
}
}


.pti-validation {
.pti-validation {
   border-left: 5px solid #3f7d5f !important;
   border-left-color: var(--pti-vert) !important;
   background: #f3faf6 !important;
   background: var(--pti-vert-fond) !important;
}
 
.pti-danger {
  border-left-color: var(--pti-rouge) !important;
  background: var(--pti-rouge-fond) !important;
}
}




/* ============================================================
/* ============================================================
   9. Tableaux
   10. TABLEAUX
   ============================================================ */
   ============================================================ */


.wikitable {
.wikitable {
   border: 1px solid var(--pti-bordure) !important;
   border: 1px solid var(--pti-bordure) !important;
   background: #ffffff !important;
   background: var(--pti-fond-carte) !important;
   border-collapse: collapse !important;
   border-collapse: collapse !important;
   box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04) !important;
   box-shadow: var(--pti-ombre-carte) !important;
  max-width: 100% !important;
}
}


.wikitable th {
.wikitable th {
   background: var(--pti-bleu-nuit) !important;
   background: var(--pti-table-entete-fond) !important;
   color: #ffffff !important;
   color: var(--pti-table-entete-texte) !important;
   font-weight: 650 !important;
   font-weight: 650 !important;
}
}
Ligne 318 : Ligne 554 :
   padding: 0.55rem 0.7rem !important;
   padding: 0.55rem 0.7rem !important;
   border: 1px solid var(--pti-bordure) !important;
   border: 1px solid var(--pti-bordure) !important;
  vertical-align: top !important;
}
.wikitable td {
  background: var(--pti-fond-carte) !important;
  color: var(--pti-texte) !important;
}
}


.wikitable tr:nth-child(even) td {
.wikitable tr:nth-child(even) td {
   background: #fafbfc !important;
   background: var(--pti-table-ligne-paire) !important;
}
}




/* ============================================================
/* ============================================================
   10. Code, préformaté et éléments techniques
   11. CODE ET PRÉFORMATÉ
   ============================================================ */
   ============================================================ */


Ligne 336 : Ligne 578 :


code {
code {
   background: #f3f5f8 !important;
   background: var(--pti-code-fond) !important;
   border: 1px solid #e1e5ec !important;
   border: 1px solid var(--pti-code-bordure) !important;
   border-radius: 4px !important;
   border-radius: 4px !important;
   padding: 0.08rem 0.28rem !important;
   padding: 0.08rem 0.28rem !important;
   color: #1f2937 !important;
   color: var(--pti-code-texte) !important;
  white-space: break-spaces !important;
}
}


pre {
pre {
   background: #f6f8fb !important;
   background: var(--pti-code-bloc-fond) !important;
   border: 1px solid var(--pti-bordure) !important;
   border: 1px solid var(--pti-code-bordure) !important;
   border-left: 4px solid var(--pti-or) !important;
   border-left: 4px solid var(--pti-or) !important;
   border-radius: var(--pti-rayon-petit) !important;
   border-radius: var(--pti-rayon-petit) !important;
   padding: 1rem !important;
   padding: 1rem !important;
   color: #1f2937 !important;
   color: var(--pti-code-texte) !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  white-space: pre-wrap !important;
}
}




/* ============================================================
/* ============================================================
   11. Menus latéraux et blocs MediaWiki
   12. MENUS, ONGLETS ET BLOCS MEDIAWIKI
   ============================================================ */
   ============================================================ */


Ligne 374 : Ligne 620 :


.vector-menu-content-list li a:hover {
.vector-menu-content-list li a:hover {
   background: #f2f5f9 !important;
   background: var(--pti-fond-secondaire) !important;
   text-decoration: none !important;
   text-decoration: none !important;
}
}
/* ============================================================
  12. Onglets et actions de page
  ============================================================ */


.vector-page-titlebar-toc,
.vector-page-titlebar-toc,
Ligne 400 : Ligne 641 :


/* ============================================================
/* ============================================================
   13. Sommaire
   13. SOMMAIRE
   ============================================================ */
   ============================================================ */


Ligne 407 : Ligne 648 :
.vector-toc {
.vector-toc {
   border-color: var(--pti-bordure) !important;
   border-color: var(--pti-bordure) !important;
   background: #ffffff !important;
   background: var(--pti-fond-carte) !important;
   border-radius: var(--pti-rayon-petit) !important;
   border-radius: var(--pti-rayon-petit) !important;
}
}
Ligne 421 : Ligne 662 :


/* ============================================================
/* ============================================================
   14. Images et fichiers
   14. IMAGES ET FICHIERS
   ============================================================ */
   ============================================================ */


Ligne 431 : Ligne 672 :
.thumbinner {
.thumbinner {
   border: 1px solid var(--pti-bordure) !important;
   border: 1px solid var(--pti-bordure) !important;
   background: #ffffff !important;
   background: var(--pti-fond-carte) !important;
   border-radius: var(--pti-rayon-petit) !important;
   border-radius: var(--pti-rayon-petit) !important;
   box-shadow: 0 1px 2px rgba(17, 24, 39, 0.05) !important;
   box-shadow: var(--pti-ombre-carte) !important;
}
}


Ligne 443 : Ligne 684 :


/* ============================================================
/* ============================================================
   15. Messages système MediaWiki
   15. MESSAGES SYSTÈME MEDIAWIKI
   ============================================================ */
   ============================================================ */


Ligne 455 : Ligne 696 :


.successbox {
.successbox {
   border-left: 5px solid #3f7d5f !important;
   border-left: 5px solid var(--pti-vert) !important;
}
}


Ligne 463 : Ligne 704 :


.errorbox {
.errorbox {
   border-left: 5px solid #9f3a38 !important;
   border-left: 5px solid var(--pti-rouge) !important;
}
}




/* ============================================================
/* ============================================================
   16. Formulaires et champs
   16. FORMULAIRES ET CHAMPS
   ============================================================ */
   ============================================================ */


Ligne 495 : Ligne 736 :


/* ============================================================
/* ============================================================
   17. Petites classes utilitaires pour les pages Athéna
   17. RESPONSIVE
  ============================================================ */
 
.pti-discret {
  color: var(--pti-texte-discret) !important;
}
 
.pti-centre {
  text-align: center !important;
}
 
.pti-separateur {
  border-top: 1px solid var(--pti-bordure) !important;
  margin: 1.5rem 0 !important;
}
 
.pti-meta {
  color: var(--pti-texte-secondaire) !important;
  font-size: 0.92rem !important;
}
 
 
/* ============================================================
  18. Responsive
   ============================================================ */
   ============================================================ */


Ligne 533 : Ligne 751 :
   .pti-grille {
   .pti-grille {
     grid-template-columns: 1fr !important;
     grid-template-columns: 1fr !important;
  }
  .mw-parser-output .wikitable {
    display: block !important;
    width: 100% !important;
    overflow-x: auto !important;
   }
   }
}
}
Ligne 545 : Ligne 769 :
   }
   }


   .pti-carte {
   .pti-carte,
  .pti-encart {
     padding: 0.9rem !important;
     padding: 0.9rem !important;
   }
   }
  .mw-parser-output {
    font-size: 0.97rem !important;
  }
}
/* ============================================================
  18. TEINTES DES SECTIONS DE L’ACCUEIL
  ============================================================ */
.mw-parser-output .pti-section-entrees .pti-carte {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-entrees-fond) 100%) !important;
  border-top: 4px solid var(--pti-section-entrees-bordure) !important;
}
.mw-parser-output .pti-section-entrees .pti-carte-titre {
  border-bottom-color: var(--pti-section-entrees-separateur) !important;
}
.mw-parser-output .pti-section-referentiels .pti-carte {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-referentiels-fond) 100%) !important;
  border-top: 4px solid var(--pti-section-referentiels-bordure) !important;
}
.mw-parser-output .pti-section-referentiels .pti-carte-titre {
  border-bottom-color: var(--pti-section-referentiels-separateur) !important;
}
.mw-parser-output .pti-section-documents .pti-carte {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-documents-fond) 100%) !important;
  border-top: 4px solid var(--pti-section-documents-bordure) !important;
}
}
.mw-parser-output .pti-section-documents .pti-carte-titre {
  border-bottom-color: var(--pti-section-documents-separateur) !important;
}
.mw-parser-output .pti-section-espaces .pti-carte {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-espaces-fond) 100%) !important;
  border-top: 4px solid var(--pti-section-espaces-bordure) !important;
}
.mw-parser-output .pti-section-espaces .pti-carte-titre {
  border-bottom-color: var(--pti-section-espaces-separateur) !important;
}
.mw-parser-output .pti-section-pilotage .pti-carte {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-pilotage-fond) 100%) !important;
  border-top: 4px solid var(--pti-section-pilotage-bordure) !important;
}
.mw-parser-output .pti-section-pilotage .pti-carte-titre {
  border-bottom-color: var(--pti-section-pilotage-separateur) !important;
}
.mw-parser-output .pti-section-entrees .pti-carte-majeure {
  border-left: 5px solid var(--pti-section-entrees-bordure) !important;
}
.mw-parser-output .pti-section-entrees .pti-carte:hover {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-entrees-fond-survol) 100%) !important;
  border-color: var(--pti-section-entrees-bordure) !important;
}
.mw-parser-output .pti-section-referentiels .pti-carte:hover {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-referentiels-fond-survol) 100%) !important;
  border-color: var(--pti-section-referentiels-bordure) !important;
}
.mw-parser-output .pti-section-documents .pti-carte:hover {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-documents-fond-survol) 100%) !important;
  border-color: var(--pti-section-documents-bordure) !important;
}
.mw-parser-output .pti-section-espaces .pti-carte:hover {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-espaces-fond-survol) 100%) !important;
  border-color: var(--pti-section-espaces-bordure) !important;
}
.mw-parser-output .pti-section-pilotage .pti-carte:hover {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-pilotage-fond-survol) 100%) !important;
  border-color: var(--pti-section-pilotage-bordure) !important;
}
.mw-parser-output .pti-section-entrees .pti-carte:hover,
.mw-parser-output .pti-section-referentiels .pti-carte:hover,
.mw-parser-output .pti-section-documents .pti-carte:hover,
.mw-parser-output .pti-section-espaces .pti-carte:hover,
.mw-parser-output .pti-section-pilotage .pti-carte:hover {
  box-shadow: var(--pti-ombre-carte-survol) !important;
}


/* ============================================================
/* ============================================================
   19. Teintes sobres par section de l’accueil
   19. ACCORDÉONS ATHÉNA
   ============================================================ */
   ============================================================ */


/* Portes d’entrée principales : teinte or institutionnelle */
.mw-parser-output .pti-accordeon {
.pti-section-entrees .pti-carte {
  border: 1px solid var(--pti-bordure) !important;
   background: linear-gradient(135deg, #ffffff 0%, #fbf7ef 100%) !important;
  border-left: 5px solid var(--pti-or) !important;
  background: var(--pti-fond-carte) !important;
  color: var(--pti-texte) !important;
  border-radius: var(--pti-rayon) !important;
  margin: 1rem 0 !important;
  box-shadow: var(--pti-ombre-carte) !important;
  overflow: hidden !important;
}
 
.mw-parser-output .pti-accordeon-titre {
  font-weight: 720 !important;
  color: var(--pti-bleu-nuit) !important;
   background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-or-fond) 100%) !important;
  padding: 0.85rem 1rem !important;
  border-bottom: 1px solid var(--pti-bordure-legere) !important;
}
 
.mw-parser-output .pti-accordeon .mw-collapsible-content {
  padding: 1rem !important;
  background: var(--pti-fond-carte) !important;
  color: var(--pti-texte) !important;
}
 
.mw-parser-output .pti-accordeon .mw-collapsible-toggle {
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: var(--pti-bleu-lien) !important;
  margin: 0.85rem 1rem 0 0 !important;
}
 
.mw-parser-output .pti-accordeon .mw-collapsible-toggle:hover {
  color: var(--pti-bleu-nuit) !important;
}
 
.mw-parser-output .pti-accordeon.pti-accordeon-note {
  border-left-color: var(--pti-bleu-lien) !important;
}
}


.pti-section-entrees .pti-carte-titre {
.mw-parser-output .pti-accordeon.pti-accordeon-note .pti-accordeon-titre {
   border-bottom-color: #eadcc4 !important;
   background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-referentiels-fond) 100%) !important;
}
}


/* Référentiels et capital intellectuel : teinte bleu très pâle */
.mw-parser-output .pti-accordeon.pti-accordeon-attention {
.pti-section-referentiels .pti-carte {
   border-left-color: var(--pti-or) !important;
   background: linear-gradient(135deg, #ffffff 0%, #f3f7fc 100%) !important;
}
}


.pti-section-referentiels .pti-carte-titre {
.mw-parser-output .pti-accordeon.pti-accordeon-attention .pti-accordeon-titre {
   border-bottom-color: #dbe7f4 !important;
   background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-or-fond) 100%) !important;
}
}


/* Documents et fonctionnement interne : teinte grise très douce */
.mw-parser-output .pti-accordeon.pti-accordeon-validation {
.pti-section-documents .pti-carte {
   border-left-color: var(--pti-vert) !important;
   background: linear-gradient(135deg, #ffffff 0%, #f6f7f9 100%) !important;
}
}


.pti-section-documents .pti-carte-titre {
.mw-parser-output .pti-accordeon.pti-accordeon-validation .pti-accordeon-titre {
   border-bottom-color: #e1e5ec !important;
   background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-vert-fond) 100%) !important;
}
}


/* Espaces de travail : teinte verte très discrète */
.mw-parser-output .pti-accordeon.pti-accordeon-danger {
.pti-section-espaces .pti-carte {
   border-left-color: var(--pti-rouge) !important;
   background: linear-gradient(135deg, #ffffff 0%, #f3faf6 100%) !important;
}
}


.pti-section-espaces .pti-carte-titre {
.mw-parser-output .pti-accordeon.pti-accordeon-danger .pti-accordeon-titre {
   border-bottom-color: #d9ecdf !important;
   background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-rouge-fond) 100%) !important;
}
}


/* Pilotage du wiki : teinte mauve presque neutre */
 
.pti-section-pilotage .pti-carte {
/* ============================================================
   background: linear-gradient(135deg, #ffffff 0%, #f7f5fb 100%) !important;
  20. CLASSES DOCUMENTAIRES COMPLÉMENTAIRES
  ============================================================ */
 
.pti-bloc-sobre {
  border: 1px solid var(--pti-bordure) !important;
  background: var(--pti-fond-carte) !important;
   color: var(--pti-texte) !important;
  border-radius: var(--pti-rayon-petit) !important;
  padding: 1rem !important;
  margin: 1rem 0 !important;
}
}


.pti-section-pilotage .pti-carte-titre {
.pti-bloc-secondaire {
   border-bottom-color: #e6e0f1 !important;
  border: 1px solid var(--pti-bordure-legere) !important;
  background: var(--pti-fond-secondaire) !important;
  color: var(--pti-texte) !important;
  border-radius: var(--pti-rayon-petit) !important;
  padding: 1rem !important;
  margin: 1rem 0 !important;
}
 
.pti-etiquette {
  display: inline-block !important;
  padding: 0.18rem 0.45rem !important;
  border-radius: 999px !important;
  background: var(--pti-code-fond) !important;
  border: 1px solid var(--pti-code-bordure) !important;
  color: var(--pti-texte-secondaire) !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
}
 
.pti-etiquette-validation {
  background: var(--pti-vert-fond) !important;
   border-color: var(--pti-vert) !important;
  color: var(--pti-vert) !important;
}
}


/* Maintien d’un comportement homogène au survol */
.pti-etiquette-attention {
.pti-section-entrees .pti-carte:hover,
  background: var(--pti-or-fond) !important;
.pti-section-referentiels .pti-carte:hover,
.pti-section-documents .pti-carte:hover,
.pti-section-espaces .pti-carte:hover,
.pti-section-pilotage .pti-carte:hover {
  background: #ffffff !important;
   border-color: var(--pti-or) !important;
   border-color: var(--pti-or) !important;
  color: var(--pti-or-clair) !important;
}
.pti-etiquette-note {
  background: var(--pti-section-referentiels-fond) !important;
  border-color: var(--pti-bleu-lien) !important;
  color: var(--pti-bleu-lien) !important;
}
.pti-etiquette-danger {
  background: var(--pti-rouge-fond) !important;
  border-color: var(--pti-rouge) !important;
  color: var(--pti-rouge) !important;
}
/* ============================================================
  21. CLASSES UTILITAIRES
  ============================================================ */
.pti-discret {
  color: var(--pti-texte-discret) !important;
}
.pti-centre {
  text-align: center !important;
}
.pti-droite {
  text-align: right !important;
}
.pti-separateur {
  border-top: 1px solid var(--pti-bordure) !important;
  margin: 1.5rem 0 !important;
}
.pti-meta {
  color: var(--pti-texte-secondaire) !important;
  font-size: 0.92rem !important;
}
.pti-largeur-lisible {
  max-width: 980px !important;
}
.pti-espace-haut {
  margin-top: 1.5rem !important;
}
.pti-espace-bas {
  margin-bottom: 1.5rem !important;
}
}

Dernière version du 5 juillet 2026 à 12:46

/* ============================================================
   ATHÉNA — IDENTITÉ VISUELLE PROMÉTHÉE T&I
   ============================================================

   Fichier cible :
   MediaWiki:Common.css

   Rôle :
   Définir l’identité visuelle commune du wiki Athéna :
   couleurs, typographie, cartes, encarts, tableaux, accordéons,
   pages d’accueil, classes utilitaires et compatibilité mode sombre.

   Principe de conception :
   1. Les couleurs et fonds sont pilotés par des variables CSS.
   2. Les composants utilisent les variables, jamais le thème en dur.
   3. Le mode sombre redéfinit principalement les variables.
   4. Les classes Athéna sont préfixées par .pti-
   5. Les surcharges MediaWiki restent limitées et commentées.

   Convention :
   .pti-bandeau       : bandeau institutionnel de page
   .pti-grille        : grille de tuiles
   .pti-carte         : tuile documentaire
   .pti-encart        : encart éditorial
   .pti-accordeon     : bloc repliable
   .pti-etiquette     : badge documentaire
   .pti-meta          : information secondaire

   ============================================================ */


/* ============================================================
   1. VARIABLES GÉNÉRALES, MODE CLAIR
   ============================================================

   Ces variables sont la source principale de l’identité Athéna.
   Les composants graphiques ci-dessous doivent s’appuyer sur elles.

   ============================================================ */

:root {
  /* Couleurs institutionnelles */
  --pti-bleu-nuit: #111827;
  --pti-bleu-profond: #1f2937;
  --pti-bleu-lien: #245c9c;
  --pti-bleu-lien-visite: #4b4f9c;

  --pti-or: #b08d57;
  --pti-or-clair: #d7bf8f;
  --pti-or-fond: #f8f4ec;

  --pti-vert: #3f7d5f;
  --pti-vert-fond: #f3faf6;

  --pti-rouge: #9f3a38;
  --pti-rouge-fond: #fff5f5;

  /* Fonds principaux */
  --pti-fond-page: #f7f8fb;
  --pti-fond-contenu: #ffffff;
  --pti-fond-carte: #ffffff;
  --pti-fond-encart: #fbfcfe;
  --pti-fond-secondaire: #fafbfc;

  /* Texte */
  --pti-texte: #1f2933;
  --pti-texte-secondaire: #5f6b7a;
  --pti-texte-discret: #7b8794;
  --pti-texte-inverse: #ffffff;

  /* Bordures */
  --pti-bordure: #d8dde6;
  --pti-bordure-legere: #edf0f5;

  /* Code */
  --pti-code-fond: #f3f5f8;
  --pti-code-bloc-fond: #f6f8fb;
  --pti-code-bordure: #e1e5ec;
  --pti-code-texte: #1f2937;

  /* Tableaux */
  --pti-table-entete-fond: var(--pti-bleu-nuit);
  --pti-table-entete-texte: #ffffff;
  --pti-table-ligne-paire: #fafbfc;

  /* Ombres et rayons */
  --pti-ombre-carte: 0 1px 3px rgba(17, 24, 39, 0.08);
  --pti-ombre-carte-survol: 0 6px 18px rgba(17, 24, 39, 0.12);

  --pti-rayon: 10px;
  --pti-rayon-petit: 8px;

  /* Teintes de sections de l’accueil */
  --pti-section-entrees-fond: #fbf3e6;
  --pti-section-entrees-fond-survol: #f8ead2;
  --pti-section-entrees-bordure: #b08d57;
  --pti-section-entrees-separateur: #e5cfaa;

  --pti-section-referentiels-fond: #edf5ff;
  --pti-section-referentiels-fond-survol: #e4f0fc;
  --pti-section-referentiels-bordure: #6f9fca;
  --pti-section-referentiels-separateur: #c7dced;

  --pti-section-documents-fond: #f1f3f6;
  --pti-section-documents-fond-survol: #e9edf2;
  --pti-section-documents-bordure: #9aa6b5;
  --pti-section-documents-separateur: #d4dae2;

  --pti-section-espaces-fond: #edf9f1;
  --pti-section-espaces-fond-survol: #e3f5e9;
  --pti-section-espaces-bordure: #7fb891;
  --pti-section-espaces-separateur: #c7e2cf;

  --pti-section-pilotage-fond: #f4f0fb;
  --pti-section-pilotage-fond-survol: #eee7f8;
  --pti-section-pilotage-bordure: #9b86c6;
  --pti-section-pilotage-separateur: #ddd3ef;
}


/* ============================================================
   2. VARIABLES GÉNÉRALES, MODE SOMBRE
   ============================================================

   MediaWiki / Vector peut appliquer le mode sombre de deux façons :
   1. Mode sombre choisi explicitement :
      html.skin-theme-clientpref-night
   2. Mode automatique selon le système :
      html.skin-theme-clientpref-os + prefers-color-scheme: dark

   On redéfinit les variables, puis les composants suivent.

   ============================================================ */

html.skin-theme-clientpref-night {
  color-scheme: dark;

  --pti-bleu-nuit: #f3f6fb;
  --pti-bleu-profond: #d8dee9;
  --pti-bleu-lien: #8ab4f8;
  --pti-bleu-lien-visite: #c6a7ff;

  --pti-or: #d7bf8f;
  --pti-or-clair: #e8d7ad;
  --pti-or-fond: #2a2418;

  --pti-vert: #8fd0a8;
  --pti-vert-fond: #10251a;

  --pti-rouge: #f2a3a3;
  --pti-rouge-fond: #2a1414;

  --pti-fond-page: #0f1117;
  --pti-fond-contenu: #151922;
  --pti-fond-carte: #1b202b;
  --pti-fond-encart: #1b202b;
  --pti-fond-secondaire: #181e29;

  --pti-texte: #e5e7eb;
  --pti-texte-secondaire: #c3cad6;
  --pti-texte-discret: #9aa4b2;
  --pti-texte-inverse: #ffffff;

  --pti-bordure: #394150;
  --pti-bordure-legere: #2b3340;

  --pti-code-fond: #111827;
  --pti-code-bloc-fond: #111827;
  --pti-code-bordure: #374151;
  --pti-code-texte: #e5e7eb;

  --pti-table-entete-fond: #0b1220;
  --pti-table-entete-texte: #ffffff;
  --pti-table-ligne-paire: #181e29;

  --pti-ombre-carte: 0 1px 3px rgba(0, 0, 0, 0.35);
  --pti-ombre-carte-survol: 0 6px 18px rgba(0, 0, 0, 0.45);

  --pti-section-entrees-fond: #2a2418;
  --pti-section-entrees-fond-survol: #352c1d;
  --pti-section-entrees-bordure: #d7bf8f;
  --pti-section-entrees-separateur: #6f5630;

  --pti-section-referentiels-fond: #111f32;
  --pti-section-referentiels-fond-survol: #172944;
  --pti-section-referentiels-bordure: #6f9fca;
  --pti-section-referentiels-separateur: #315f96;

  --pti-section-documents-fond: #202633;
  --pti-section-documents-fond-survol: #252d3b;
  --pti-section-documents-bordure: #9aa6b5;
  --pti-section-documents-separateur: #465264;

  --pti-section-espaces-fond: #10251a;
  --pti-section-espaces-fond-survol: #173321;
  --pti-section-espaces-bordure: #7fb891;
  --pti-section-espaces-separateur: #285c3f;

  --pti-section-pilotage-fond: #21182f;
  --pti-section-pilotage-fond-survol: #2a1f3d;
  --pti-section-pilotage-bordure: #9b86c6;
  --pti-section-pilotage-separateur: #574177;
}

@media screen and (prefers-color-scheme: dark) {
  html.skin-theme-clientpref-os {
    color-scheme: dark;

    --pti-bleu-nuit: #f3f6fb;
    --pti-bleu-profond: #d8dee9;
    --pti-bleu-lien: #8ab4f8;
    --pti-bleu-lien-visite: #c6a7ff;

    --pti-or: #d7bf8f;
    --pti-or-clair: #e8d7ad;
    --pti-or-fond: #2a2418;

    --pti-vert: #8fd0a8;
    --pti-vert-fond: #10251a;

    --pti-rouge: #f2a3a3;
    --pti-rouge-fond: #2a1414;

    --pti-fond-page: #0f1117;
    --pti-fond-contenu: #151922;
    --pti-fond-carte: #1b202b;
    --pti-fond-encart: #1b202b;
    --pti-fond-secondaire: #181e29;

    --pti-texte: #e5e7eb;
    --pti-texte-secondaire: #c3cad6;
    --pti-texte-discret: #9aa4b2;
    --pti-texte-inverse: #ffffff;

    --pti-bordure: #394150;
    --pti-bordure-legere: #2b3340;

    --pti-code-fond: #111827;
    --pti-code-bloc-fond: #111827;
    --pti-code-bordure: #374151;
    --pti-code-texte: #e5e7eb;

    --pti-table-entete-fond: #0b1220;
    --pti-table-entete-texte: #ffffff;
    --pti-table-ligne-paire: #181e29;

    --pti-ombre-carte: 0 1px 3px rgba(0, 0, 0, 0.35);
    --pti-ombre-carte-survol: 0 6px 18px rgba(0, 0, 0, 0.45);

    --pti-section-entrees-fond: #2a2418;
    --pti-section-entrees-fond-survol: #352c1d;
    --pti-section-entrees-bordure: #d7bf8f;
    --pti-section-entrees-separateur: #6f5630;

    --pti-section-referentiels-fond: #111f32;
    --pti-section-referentiels-fond-survol: #172944;
    --pti-section-referentiels-bordure: #6f9fca;
    --pti-section-referentiels-separateur: #315f96;

    --pti-section-documents-fond: #202633;
    --pti-section-documents-fond-survol: #252d3b;
    --pti-section-documents-bordure: #9aa6b5;
    --pti-section-documents-separateur: #465264;

    --pti-section-espaces-fond: #10251a;
    --pti-section-espaces-fond-survol: #173321;
    --pti-section-espaces-bordure: #7fb891;
    --pti-section-espaces-separateur: #285c3f;

    --pti-section-pilotage-fond: #21182f;
    --pti-section-pilotage-fond-survol: #2a1f3d;
    --pti-section-pilotage-bordure: #9b86c6;
    --pti-section-pilotage-separateur: #574177;
  }
}


/* ============================================================
   3. AMBIANCE GÉNÉRALE MEDIAWIKI
   ============================================================ */

html,
body {
  background: var(--pti-fond-page) !important;
  color: var(--pti-texte) !important;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
}

.mw-body,
.vector-body,
#content,
.mw-page-container,
.mw-page-container-inner {
  background: var(--pti-fond-contenu) !important;
  color: var(--pti-texte) !important;
}

.mw-parser-output {
  color: var(--pti-texte) !important;
  font-size: 1rem;
  line-height: 1.55;
}

.mw-parser-output * {
  box-sizing: border-box;
}

.mw-parser-output p,
.mw-parser-output li,
.mw-parser-output td {
  color: var(--pti-texte) !important;
  line-height: 1.6;
}


/* ============================================================
   4. LOGO ET MARQUE DU WIKI
   ============================================================ */

.mw-logo-icon {
  display: none !important;
}

.mw-logo-wordmark,
.mw-logo-tagline {
  color: var(--pti-bleu-nuit) !important;
}

.mw-logo-container {
  padding-left: 0.5rem !important;
}

.vector-header-container .mw-logo-wordmark {
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
}

.vector-header-container .mw-logo-tagline {
  color: var(--pti-texte-secondaire) !important;
}


/* ============================================================
   5. TITRES ET HIÉRARCHIE ÉDITORIALE
   ============================================================ */

.firstHeading,
.mw-first-heading {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-weight: 650 !important;
  color: var(--pti-bleu-nuit) !important;
  letter-spacing: -0.02em !important;
}

.mw-body h1,
.mw-body h2,
.mw-body h3,
.vector-body h1,
.vector-body h2,
.vector-body h3,
.mw-parser-output h1,
.mw-parser-output h2,
.mw-parser-output h3 {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  color: var(--pti-bleu-nuit) !important;
  letter-spacing: -0.015em !important;
}

.mw-parser-output h2 {
  border-bottom: 1px solid var(--pti-bordure) !important;
  padding-bottom: 0.25em !important;
  margin-top: 1.8em !important;
  font-weight: 600 !important;
}

.mw-parser-output h3 {
  font-weight: 650 !important;
  margin-top: 1.4em !important;
}


/* ============================================================
   6. LIENS
   ============================================================ */

.mw-parser-output a,
.vector-menu-content a,
#mw-panel a {
  color: var(--pti-bleu-lien) !important;
}

.mw-parser-output a:visited {
  color: var(--pti-bleu-lien-visite) !important;
}

.mw-parser-output a:hover,
.vector-menu-content a:hover,
#mw-panel a:hover {
  color: var(--pti-bleu-nuit) !important;
  text-decoration: underline !important;
}


/* ============================================================
   7. BANDEAU INSTITUTIONNEL ATHÉNA
   ============================================================ */

.pti-bandeau {
  border: 1px solid var(--pti-bordure) !important;
  border-left: 6px solid var(--pti-or) !important;
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-or-fond) 100%) !important;
  padding: 1.5rem 1.7rem !important;
  margin: 1rem 0 1.5rem 0 !important;
  border-radius: var(--pti-rayon) !important;
  min-height: 120px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  box-shadow: var(--pti-ombre-carte) !important;
}

.pti-bandeau-titre {
  font-size: 2.1rem !important;
  line-height: 1.1 !important;
  font-weight: 750 !important;
  color: var(--pti-bleu-nuit) !important;
  margin-bottom: 0.45rem !important;
  letter-spacing: -0.025em !important;
}

.pti-bandeau-soustitre {
  max-width: 950px !important;
  font-size: 1.05rem !important;
  color: var(--pti-texte-secondaire) !important;
  line-height: 1.55 !important;
}


/* ============================================================
   8. GRILLES ET TUILES
   ============================================================ */

.pti-grille {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)) !important;
  gap: 1rem !important;
  margin: 1.2rem 0 1.4rem 0 !important;
}

.pti-carte {
  border: 1px solid var(--pti-bordure) !important;
  background: var(--pti-fond-carte) !important;
  padding: 1rem !important;
  border-radius: var(--pti-rayon) !important;
  box-shadow: var(--pti-ombre-carte) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, background 0.15s ease !important;
}

.pti-carte:hover {
  transform: translateY(-2px) !important;
  border-color: var(--pti-or) !important;
  box-shadow: var(--pti-ombre-carte-survol) !important;
}

.pti-carte-titre {
  font-size: 1.05rem !important;
  font-weight: 720 !important;
  color: var(--pti-bleu-nuit) !important;
  border-bottom: 1px solid var(--pti-bordure-legere) !important;
  padding-bottom: 0.45rem !important;
  margin-bottom: 0.6rem !important;
  letter-spacing: -0.01em !important;
}

.pti-carte-texte {
  color: var(--pti-texte-secondaire) !important;
  line-height: 1.45 !important;
}

.pti-carte-texte a {
  text-decoration: none !important;
}

.pti-carte-texte a:hover {
  text-decoration: underline !important;
}

.pti-carte-majeure {
  border-left: 5px solid var(--pti-or) !important;
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-or-fond) 100%) !important;
}


/* ============================================================
   9. ENCARTS DOCUMENTAIRES
   ============================================================ */

.pti-encart {
  border: 1px solid var(--pti-bordure) !important;
  border-left: 5px solid var(--pti-or) !important;
  background: var(--pti-fond-encart) !important;
  color: var(--pti-texte) !important;
  padding: 1rem 1.1rem !important;
  margin: 1rem 0 !important;
  border-radius: var(--pti-rayon-petit) !important;
}

.pti-encart strong,
.pti-encart b {
  color: var(--pti-bleu-nuit) !important;
}

.pti-note {
  border-left-color: var(--pti-bleu-lien) !important;
  background: var(--pti-section-referentiels-fond) !important;
}

.pti-attention {
  border-left-color: var(--pti-or) !important;
  background: var(--pti-or-fond) !important;
}

.pti-validation {
  border-left-color: var(--pti-vert) !important;
  background: var(--pti-vert-fond) !important;
}

.pti-danger {
  border-left-color: var(--pti-rouge) !important;
  background: var(--pti-rouge-fond) !important;
}


/* ============================================================
   10. TABLEAUX
   ============================================================ */

.wikitable {
  border: 1px solid var(--pti-bordure) !important;
  background: var(--pti-fond-carte) !important;
  border-collapse: collapse !important;
  box-shadow: var(--pti-ombre-carte) !important;
  max-width: 100% !important;
}

.wikitable th {
  background: var(--pti-table-entete-fond) !important;
  color: var(--pti-table-entete-texte) !important;
  font-weight: 650 !important;
}

.wikitable td,
.wikitable th {
  padding: 0.55rem 0.7rem !important;
  border: 1px solid var(--pti-bordure) !important;
  vertical-align: top !important;
}

.wikitable td {
  background: var(--pti-fond-carte) !important;
  color: var(--pti-texte) !important;
}

.wikitable tr:nth-child(even) td {
  background: var(--pti-table-ligne-paire) !important;
}


/* ============================================================
   11. CODE ET PRÉFORMATÉ
   ============================================================ */

code,
pre,
.mw-code {
  font-family: "Cascadia Mono", "Consolas", "Liberation Mono", monospace !important;
}

code {
  background: var(--pti-code-fond) !important;
  border: 1px solid var(--pti-code-bordure) !important;
  border-radius: 4px !important;
  padding: 0.08rem 0.28rem !important;
  color: var(--pti-code-texte) !important;
  white-space: break-spaces !important;
}

pre {
  background: var(--pti-code-bloc-fond) !important;
  border: 1px solid var(--pti-code-bordure) !important;
  border-left: 4px solid var(--pti-or) !important;
  border-radius: var(--pti-rayon-petit) !important;
  padding: 1rem !important;
  color: var(--pti-code-texte) !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  white-space: pre-wrap !important;
}


/* ============================================================
   12. MENUS, ONGLETS ET BLOCS MEDIAWIKI
   ============================================================ */

.vector-main-menu,
.vector-page-tools,
.vector-appearance-landmark {
  color: var(--pti-texte) !important;
}

.vector-menu-heading,
.vector-pinnable-header-label {
  color: var(--pti-bleu-nuit) !important;
  font-weight: 700 !important;
}

.vector-menu-content-list li a {
  border-radius: 4px !important;
}

.vector-menu-content-list li a:hover {
  background: var(--pti-fond-secondaire) !important;
  text-decoration: none !important;
}

.vector-page-titlebar-toc,
.vector-page-titlebar {
  border-color: var(--pti-bordure) !important;
}

.vector-menu-tabs .selected a,
.vector-menu-tabs .selected a:visited {
  color: var(--pti-bleu-nuit) !important;
  font-weight: 650 !important;
}

.vector-menu-tabs li a {
  color: var(--pti-bleu-lien) !important;
}


/* ============================================================
   13. SOMMAIRE
   ============================================================ */

.toc,
#toc,
.vector-toc {
  border-color: var(--pti-bordure) !important;
  background: var(--pti-fond-carte) !important;
  border-radius: var(--pti-rayon-petit) !important;
}

.tocnumber {
  color: var(--pti-texte-discret) !important;
}

.toctext {
  color: var(--pti-bleu-lien) !important;
}


/* ============================================================
   14. IMAGES ET FICHIERS
   ============================================================ */

.mw-parser-output img {
  max-width: 100%;
  height: auto;
}

.thumbinner {
  border: 1px solid var(--pti-bordure) !important;
  background: var(--pti-fond-carte) !important;
  border-radius: var(--pti-rayon-petit) !important;
  box-shadow: var(--pti-ombre-carte) !important;
}

.thumbcaption {
  color: var(--pti-texte-secondaire) !important;
  font-size: 0.92rem !important;
}


/* ============================================================
   15. MESSAGES SYSTÈME MEDIAWIKI
   ============================================================ */

.warningbox,
.errorbox,
.successbox,
.mw-message-box {
  border-radius: var(--pti-rayon-petit) !important;
  border-color: var(--pti-bordure) !important;
}

.successbox {
  border-left: 5px solid var(--pti-vert) !important;
}

.warningbox {
  border-left: 5px solid var(--pti-or) !important;
}

.errorbox {
  border-left: 5px solid var(--pti-rouge) !important;
}


/* ============================================================
   16. FORMULAIRES ET CHAMPS
   ============================================================ */

input,
textarea,
select,
.mw-ui-input {
  border-radius: 6px !important;
  border-color: var(--pti-bordure) !important;
}

input:focus,
textarea:focus,
select:focus,
.mw-ui-input:focus {
  border-color: var(--pti-or) !important;
  box-shadow: 0 0 0 2px rgba(176, 141, 87, 0.18) !important;
  outline: none !important;
}

.mw-ui-button,
.oo-ui-buttonElement-button {
  border-radius: 6px !important;
}


/* ============================================================
   17. RESPONSIVE
   ============================================================ */

@media screen and (max-width: 900px) {
  .pti-bandeau {
    padding: 1.2rem 1.2rem !important;
    min-height: auto !important;
  }

  .pti-bandeau-titre {
    font-size: 1.8rem !important;
  }

  .pti-grille {
    grid-template-columns: 1fr !important;
  }

  .mw-parser-output .wikitable {
    display: block !important;
    width: 100% !important;
    overflow-x: auto !important;
  }
}

@media screen and (max-width: 600px) {
  .pti-bandeau-titre {
    font-size: 1.6rem !important;
  }

  .pti-bandeau-soustitre {
    font-size: 0.98rem !important;
  }

  .pti-carte,
  .pti-encart {
    padding: 0.9rem !important;
  }

  .mw-parser-output {
    font-size: 0.97rem !important;
  }
}


/* ============================================================
   18. TEINTES DES SECTIONS DE L’ACCUEIL
   ============================================================ */

.mw-parser-output .pti-section-entrees .pti-carte {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-entrees-fond) 100%) !important;
  border-top: 4px solid var(--pti-section-entrees-bordure) !important;
}

.mw-parser-output .pti-section-entrees .pti-carte-titre {
  border-bottom-color: var(--pti-section-entrees-separateur) !important;
}

.mw-parser-output .pti-section-referentiels .pti-carte {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-referentiels-fond) 100%) !important;
  border-top: 4px solid var(--pti-section-referentiels-bordure) !important;
}

.mw-parser-output .pti-section-referentiels .pti-carte-titre {
  border-bottom-color: var(--pti-section-referentiels-separateur) !important;
}

.mw-parser-output .pti-section-documents .pti-carte {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-documents-fond) 100%) !important;
  border-top: 4px solid var(--pti-section-documents-bordure) !important;
}

.mw-parser-output .pti-section-documents .pti-carte-titre {
  border-bottom-color: var(--pti-section-documents-separateur) !important;
}

.mw-parser-output .pti-section-espaces .pti-carte {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-espaces-fond) 100%) !important;
  border-top: 4px solid var(--pti-section-espaces-bordure) !important;
}

.mw-parser-output .pti-section-espaces .pti-carte-titre {
  border-bottom-color: var(--pti-section-espaces-separateur) !important;
}

.mw-parser-output .pti-section-pilotage .pti-carte {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-pilotage-fond) 100%) !important;
  border-top: 4px solid var(--pti-section-pilotage-bordure) !important;
}

.mw-parser-output .pti-section-pilotage .pti-carte-titre {
  border-bottom-color: var(--pti-section-pilotage-separateur) !important;
}

.mw-parser-output .pti-section-entrees .pti-carte-majeure {
  border-left: 5px solid var(--pti-section-entrees-bordure) !important;
}

.mw-parser-output .pti-section-entrees .pti-carte:hover {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-entrees-fond-survol) 100%) !important;
  border-color: var(--pti-section-entrees-bordure) !important;
}

.mw-parser-output .pti-section-referentiels .pti-carte:hover {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-referentiels-fond-survol) 100%) !important;
  border-color: var(--pti-section-referentiels-bordure) !important;
}

.mw-parser-output .pti-section-documents .pti-carte:hover {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-documents-fond-survol) 100%) !important;
  border-color: var(--pti-section-documents-bordure) !important;
}

.mw-parser-output .pti-section-espaces .pti-carte:hover {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-espaces-fond-survol) 100%) !important;
  border-color: var(--pti-section-espaces-bordure) !important;
}

.mw-parser-output .pti-section-pilotage .pti-carte:hover {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-pilotage-fond-survol) 100%) !important;
  border-color: var(--pti-section-pilotage-bordure) !important;
}

.mw-parser-output .pti-section-entrees .pti-carte:hover,
.mw-parser-output .pti-section-referentiels .pti-carte:hover,
.mw-parser-output .pti-section-documents .pti-carte:hover,
.mw-parser-output .pti-section-espaces .pti-carte:hover,
.mw-parser-output .pti-section-pilotage .pti-carte:hover {
  box-shadow: var(--pti-ombre-carte-survol) !important;
}


/* ============================================================
   19. ACCORDÉONS ATHÉNA
   ============================================================ */

.mw-parser-output .pti-accordeon {
  border: 1px solid var(--pti-bordure) !important;
  border-left: 5px solid var(--pti-or) !important;
  background: var(--pti-fond-carte) !important;
  color: var(--pti-texte) !important;
  border-radius: var(--pti-rayon) !important;
  margin: 1rem 0 !important;
  box-shadow: var(--pti-ombre-carte) !important;
  overflow: hidden !important;
}

.mw-parser-output .pti-accordeon-titre {
  font-weight: 720 !important;
  color: var(--pti-bleu-nuit) !important;
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-or-fond) 100%) !important;
  padding: 0.85rem 1rem !important;
  border-bottom: 1px solid var(--pti-bordure-legere) !important;
}

.mw-parser-output .pti-accordeon .mw-collapsible-content {
  padding: 1rem !important;
  background: var(--pti-fond-carte) !important;
  color: var(--pti-texte) !important;
}

.mw-parser-output .pti-accordeon .mw-collapsible-toggle {
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: var(--pti-bleu-lien) !important;
  margin: 0.85rem 1rem 0 0 !important;
}

.mw-parser-output .pti-accordeon .mw-collapsible-toggle:hover {
  color: var(--pti-bleu-nuit) !important;
}

.mw-parser-output .pti-accordeon.pti-accordeon-note {
  border-left-color: var(--pti-bleu-lien) !important;
}

.mw-parser-output .pti-accordeon.pti-accordeon-note .pti-accordeon-titre {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-section-referentiels-fond) 100%) !important;
}

.mw-parser-output .pti-accordeon.pti-accordeon-attention {
  border-left-color: var(--pti-or) !important;
}

.mw-parser-output .pti-accordeon.pti-accordeon-attention .pti-accordeon-titre {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-or-fond) 100%) !important;
}

.mw-parser-output .pti-accordeon.pti-accordeon-validation {
  border-left-color: var(--pti-vert) !important;
}

.mw-parser-output .pti-accordeon.pti-accordeon-validation .pti-accordeon-titre {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-vert-fond) 100%) !important;
}

.mw-parser-output .pti-accordeon.pti-accordeon-danger {
  border-left-color: var(--pti-rouge) !important;
}

.mw-parser-output .pti-accordeon.pti-accordeon-danger .pti-accordeon-titre {
  background: linear-gradient(135deg, var(--pti-fond-carte) 0%, var(--pti-rouge-fond) 100%) !important;
}


/* ============================================================
   20. CLASSES DOCUMENTAIRES COMPLÉMENTAIRES
   ============================================================ */

.pti-bloc-sobre {
  border: 1px solid var(--pti-bordure) !important;
  background: var(--pti-fond-carte) !important;
  color: var(--pti-texte) !important;
  border-radius: var(--pti-rayon-petit) !important;
  padding: 1rem !important;
  margin: 1rem 0 !important;
}

.pti-bloc-secondaire {
  border: 1px solid var(--pti-bordure-legere) !important;
  background: var(--pti-fond-secondaire) !important;
  color: var(--pti-texte) !important;
  border-radius: var(--pti-rayon-petit) !important;
  padding: 1rem !important;
  margin: 1rem 0 !important;
}

.pti-etiquette {
  display: inline-block !important;
  padding: 0.18rem 0.45rem !important;
  border-radius: 999px !important;
  background: var(--pti-code-fond) !important;
  border: 1px solid var(--pti-code-bordure) !important;
  color: var(--pti-texte-secondaire) !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
}

.pti-etiquette-validation {
  background: var(--pti-vert-fond) !important;
  border-color: var(--pti-vert) !important;
  color: var(--pti-vert) !important;
}

.pti-etiquette-attention {
  background: var(--pti-or-fond) !important;
  border-color: var(--pti-or) !important;
  color: var(--pti-or-clair) !important;
}

.pti-etiquette-note {
  background: var(--pti-section-referentiels-fond) !important;
  border-color: var(--pti-bleu-lien) !important;
  color: var(--pti-bleu-lien) !important;
}

.pti-etiquette-danger {
  background: var(--pti-rouge-fond) !important;
  border-color: var(--pti-rouge) !important;
  color: var(--pti-rouge) !important;
}


/* ============================================================
   21. CLASSES UTILITAIRES
   ============================================================ */

.pti-discret {
  color: var(--pti-texte-discret) !important;
}

.pti-centre {
  text-align: center !important;
}

.pti-droite {
  text-align: right !important;
}

.pti-separateur {
  border-top: 1px solid var(--pti-bordure) !important;
  margin: 1.5rem 0 !important;
}

.pti-meta {
  color: var(--pti-texte-secondaire) !important;
  font-size: 0.92rem !important;
}

.pti-largeur-lisible {
  max-width: 980px !important;
}

.pti-espace-haut {
  margin-top: 1.5rem !important;
}

.pti-espace-bas {
  margin-bottom: 1.5rem !important;
}