MediaWiki:Common.css

De Nephilim Wiki

Note : après avoir publié vos modifications, il se peut que vous deviez forcer le rechargement complet du cache de votre navigateur pour voir les changements.

  • Firefox / Safari : maintenez la touche Maj (Shift) en cliquant sur le bouton Actualiser ou appuyez sur Ctrl + F5 ou Ctrl + R (⌘ + R sur un Mac).
  • Google Chrome : appuyez sur Ctrl + Maj + R (⌘ + Shift + R sur un Mac).
  • Internet Explorer / Edge : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl + F5.
  • Opera : appuyez sur Ctrl + F5.
/* Le CSS placé ici sera appliqué à tous les habillages. */

/* ===================================================
   Import Google Fonts — UNIQUE (tout en haut du fichier)
   Merriweather remplace EB Garamond comme police de corps.
   Cinzel = titres · Crimson Text = sous-titres · Cormorant Garamond = MJonly
   Lora = accueil (existant) · Merriweather = corps de texte
   =================================================== */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Cormorant+Garamond:ital@1&family=Crimson+Text:ital,wght@0,400;0,600;1,400&family=Lora:ital,wght@0,400;0,500;0,600;1,400&family=Merriweather:ital,wght@0,300;0,400;0,700;1,300;1,400&display=swap');


/* ===================================================
   NEPHILIM — Points de règle (5 éditions)
   =================================================== */

/* --- Structure commune --- */
.nephilim-regle {
  margin: 1em 0;
  border-radius: 8px;
  overflow: hidden;
  border: 2px solid #33302A;
  box-shadow: 0 3px 16px rgba(30,27,22,0.2);
  font-family: 'Merriweather', Georgia, serif;
  border-collapse: separate;
  border-spacing: 0;
}
.nephilim-regle-header td {
  padding: 0.7em 0.6em;
  vertical-align: middle;
}
.nephilim-regle-icon {
  width: 40px;
  padding-right: 0 !important;
}
.nephilim-regle-icon img {
  border: 1.5px solid rgba(255,255,255,0.3);
  border-radius: 4px;
  background: rgba(0,0,0,0.15);
  padding: 4px;
}
.nephilim-regle-titre {
  font-family: 'Cinzel', serif;
  font-weight: 600;
  font-size: 1.1em;
  letter-spacing: 0.03em;
  color: #F7F6F2;
  text-shadow: 0 1px 2px rgba(0,0,0,0.3);
}
.nephilim-regle-edition {
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-size: 0.85em;
  color: #F7F6F2;
  opacity: 0.7;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.nephilim-regle-contenu {
  padding: 1em 1.2em;
  line-height: 1.7;
  color: #2A2520;
  border-top: 1px solid rgba(51,48,42,0.15);
  font-weight: 400;
  font-size: 15px;
}

/* --- N1 : 1ère édition (Brun chaud / Cuivre) --- */
.regle-n1 .nephilim-regle-header td { background: #6B5D4F; }
.regle-n1 .nephilim-regle-contenu   { background: #E8E0D3; }

/* --- N2 : 2nde édition (Olive / Or) --- */
.regle-n2 .nephilim-regle-header td { background: #727a68; }
.regle-n2 .nephilim-regle-contenu   { background: #E8E4D8; }

/* --- NR : 3ème édition Révélation (Bleu nuit / Argent) --- */
.regle-nr .nephilim-regle-header td { background: #4A5568; }
.regle-nr .nephilim-regle-contenu   { background: #DDE2E8; }

/* --- N4 : 4ème édition Anniversaire (Bordeaux / Or rose) --- */
.regle-n4 .nephilim-regle-header td { background: #6B4548; }
.regle-n4 .nephilim-regle-contenu   { background: #E8DDD8; }

/* --- N5 : 5ème édition Légende (Pourpre / Améthyste) --- */
.regle-nl .nephilim-regle-header td { background: #574B6B; }
.regle-nl .nephilim-regle-contenu   { background: #E3DEE8; }


/* ============================================= */
/* FichePNJNL — Couleurs par type de PNJ         */
/* ============================================= */

/* --- Structure commune --- */
.FichePNJNL .entete-pnj {
    text-align: center;
}
.FichePNJNL .bandeau-pnj {
    padding: .3em .8em;
    font-weight: bold;
}
.FichePNJNL .sous-titre-pnj {
    color: rgba(255,255,255,0.65);
}

/* --- Fallback / Autre créature (gris standard) --- */
.FichePNJNL .entete-pnj {
    background-color: #8C8C8C;
    color: #fff;
}
.FichePNJNL .bandeau-pnj {
    background-color: #DCDCDC;
}

/* --- Pyrim / Effet-dragon Feu (rouge) --- */
.fiche-pnj-pyrim .entete-pnj {
    background-color: #C0524E;
    color: #fff;
}
.fiche-pnj-pyrim .bandeau-pnj {
    background-color: #F2D5D3;
}

/* --- Éolim / Effet-dragon Air (bleu ciel) --- */
.fiche-pnj-eolim .entete-pnj {
    background-color: #5BA4D9;
    color: #fff;
}
.fiche-pnj-eolim .bandeau-pnj {
    background-color: #D4E9F7;
}

/* --- Hydrim / Effet-dragon Eau (bleu outremer) --- */
.fiche-pnj-hydrim .entete-pnj {
    background-color: #3B6FA0;
    color: #fff;
}
.fiche-pnj-hydrim .bandeau-pnj {
    background-color: #CEDDEF;
}

/* --- Faërim / Effet-dragon Terre (vert) --- */
.fiche-pnj-faerim .entete-pnj {
    background-color: #4A9A6A;
    color: #fff;
}
.fiche-pnj-faerim .bandeau-pnj {
    background-color: #D2EDDA;
}

/* --- Onirim / Effet-dragon Lune (violet sombre) --- */
.fiche-pnj-onirim .entete-pnj {
    background-color: #6B4E8A;
    color: #fff;
}
.fiche-pnj-onirim .bandeau-pnj {
    background-color: #E0D4EE;
}

/* --- Selenim / Effet-dragon Lune Noire (noir) --- */
.fiche-pnj-selenim .entete-pnj {
    background-color: #3A3A3A;
    color: #E8E8E8;
}
.fiche-pnj-selenim .bandeau-pnj {
    background-color: #D2D2D2;
}

/* --- Saurien (violet sombre corrompu) --- */
.fiche-pnj-saurien .entete-pnj {
    background-color: #352846;
    color: #fff;
}
.fiche-pnj-saurien .bandeau-pnj {
    background-color: #C0B8C8;
}

/* --- Humain lambda (jaune sable) --- */
.fiche-pnj-humain .entete-pnj {
    background-color: #B8A878;
    color: #fff;
}
.fiche-pnj-humain .bandeau-pnj {
    background-color: #EAE2CE;
}

/* --- Humain initié (or solaire) --- */
.fiche-pnj-humain-initie .entete-pnj {
    background-color: #D4A820;
    color: #fff;
}
.fiche-pnj-humain-initie .bandeau-pnj {
    background-color: #F5ECBA;
}

/* --- Ar-Kaïm (turquoise) --- */
.fiche-pnj-arkaim .entete-pnj {
    background-color: #2E9E9E;
    color: #fff;
}
.fiche-pnj-arkaim .bandeau-pnj {
    background-color: #C8EAEA;
}

/* --- Bohémien (mauve clair) --- */
.fiche-pnj-bohemien .entete-pnj {
    background-color: #A86CA8;
    color: #fff;
}
.fiche-pnj-bohemien .bandeau-pnj {
    background-color: #EDDCED;
}

/* --- Daïmon (gris métallique) --- */
.fiche-pnj-daimon .entete-pnj {
    background-color: #6E7A85;
    color: #fff;
}
.fiche-pnj-daimon .bandeau-pnj {
    background-color: #D8DDE2;
}

/* --- Wowakan / Loa / Shen / Jukurrpa (marron terre) --- */
.fiche-pnj-cousin .entete-pnj {
    background-color: #6B4832;
    color: #fff;
}
.fiche-pnj-cousin .bandeau-pnj {
    background-color: #E2D2C0;
}

/* --- Reflet akashique (soleil pur) --- */
.fiche-pnj-reflet .entete-pnj {
    background-color: #E8C820;
    color: #fff;
}
.fiche-pnj-reflet .bandeau-pnj {
    background-color: #FBF2C0;
}

/* --- DraKaon (dégradé arc-en-ciel des 5 Ka) --- */
.fiche-pnj-drakaon .entete-pnj {
    background: linear-gradient(135deg, #5BA4D9 0%, #3B6FA0 20%, #4A9A6A 40%, #C0524E 60%, #6B4E8A 80%, #5BA4D9 100%);
    color: #fff;
}
.fiche-pnj-drakaon .bandeau-pnj {
    background: linear-gradient(to right, #F2D5D3, #D4E9F7, #D2EDDA, #E0D4EE);
}


/* ============================================================
   NEPHILIM WIKI - STYLES MODERNISÉS POUR LA PAGE D'ACCUEIL
   À ajouter dans MediaWiki:Common.css
   ============================================================ */

/* --- Variables couleurs (via classes, MediaWiki ne supporte pas :root nativement partout) --- */

/* === BANNIÈRE HERO === */
.nph-hero {
  background: linear-gradient(135deg, #2D1B4E 0%, #4A2D6B 60%, #5E3D7A 100%);
  border-radius: 10px;
  text-align: center;
  padding: 1.8rem 2rem 1.5rem;
  position: relative;
  overflow: hidden;
  margin-bottom: 1.2rem;
}
.nph-hero-ornament {
  font-size: 0.5rem;
  color: rgba(232,213,163,0.3);
  letter-spacing: 0.5em;
  margin-bottom: 0.3rem;
}
.nph-hero-title {
  font-family: 'Cinzel', 'Georgia', serif;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.nph-hero-title a {
  color: #E8D5A3 !important;
  text-decoration: none;
}
.nph-hero-title a:hover {
  color: #F5ECD7 !important;
}
.nph-hero-tagline {
  font-style: italic;
  color: rgba(255,255,255,0.6);
  font-size: 0.95rem;
  margin-top: 0.2rem;
}
.nph-hero-badge {
  display: inline-block;
  margin-top: 0.7rem;
  font-family: 'Cinzel', 'Georgia', serif;
  font-size: 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.25em;
  color: #C49A2A;
  border: 1px solid rgba(196,154,42,0.4);
  padding: 0.2rem 1rem;
  border-radius: 20px;
}
.nph-hero-nav {
  margin-top: 1rem;
  font-size: 0.85rem;
}
.nph-hero-nav a {
  color: rgba(255,255,255,0.85) !important;
  text-decoration: none;
}
.nph-hero-nav a:hover {
  color: #E8D5A3 !important;
}
.nph-hero-sep {
  color: rgba(196,154,42,0.5);
  margin: 0 0.4rem;
}
.nph-hero-stats {
  margin-top: 0.6rem;
  font-size: 0.78rem;
  color: rgba(255,255,255,0.45);
}
.nph-hero-stats b,
.nph-hero-stats strong {
  color: #E8D5A3;
  font-weight: 700;
}

/* === LAYOUT GRILLE PRINCIPALE === */
.nph-layout {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 0.9rem;
  align-items: start;
  max-width: 100%;
}
.nph-content { min-width: 0; }
.nph-sidebar { min-width: 0; }

@media (max-width: 900px) {
  .nph-layout {
    grid-template-columns: 1fr;
  }
}

/* === CARTES CONTENU (colonne principale) === */
.nph-card {
  background: #FFFFFF;
  border-radius: 10px;
  box-shadow: 0 1px 3px rgba(45,27,78,0.06);
  margin-bottom: 0.8rem;
  overflow: hidden;
  border: 1px solid #E0D5C0;
  transition: box-shadow 0.2s;
}
.nph-card:hover {
  box-shadow: 0 4px 12px rgba(45,27,78,0.08);
}

.nph-card-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 1rem;
  border-bottom: 1px solid #E0D5C0;
  background: linear-gradient(to right, #F5ECD7, #FFFFFF);
}
.nph-card-icon {
  width: 22px;
  text-align: center;
  flex-shrink: 0;
}
.nph-card-header h2,
.nph-card-header .nph-card-title {
  font-family: 'Cinzel', 'Georgia', serif;
  font-size: 0.92rem;
  font-weight: 600;
  color: #2D1B4E;
  letter-spacing: 0.02em;
  margin: 0;
  padding: 0;
  border: none;
}
.nph-card-header .nph-edit {
  margin-left: auto;
  font-size: 0.72rem;
  color: #7A6E5E;
  opacity: 0;
  transition: opacity 0.2s;
}
.nph-card:hover .nph-card-header .nph-edit {
  opacity: 1;
}

.nph-card-body {
  padding: 0.5rem 1rem;
  font-size: 0.88rem;
  line-height: 1.45;
}
.nph-card-body b,
.nph-card-body strong {
  font-weight: 700;
}

/* === TABLEAUX DANS LES CARTES === */
.nph-card-body table.wikitable,
.nph-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.85rem;
  background: transparent;
  border: none;
}
.nph-table th {
  text-align: left;
  padding: 0.3rem 0.7rem;
  font-weight: 600;
  color: #4A2D6B;
  background: #F5ECD7;
  border-bottom: 2px solid #E8D5A3;
  font-family: 'Cinzel', 'Georgia', serif;
  font-size: 0.8rem;
}
.nph-table td {
  padding: 0.25rem 0.7rem;
  border-bottom: 1px solid rgba(224,213,192,0.5);
  vertical-align: top;
  border-left: none;
  border-right: none;
}
.nph-table tr:last-child td {
  border-bottom: none;
}
.nph-table tr:hover td {
  background: rgba(245,236,215,0.4);
}
.nph-table td:first-child {
  font-weight: 600;
  color: #4A2D6B;
  white-space: nowrap;
  width: 140px;
}
.nph-table a {
  color: #6B4D8A;
}
.nph-table a:hover {
  color: #4A2D6B;
}

/* === VARIANTE SANS EN-TÊTE (nph-table-flat) === */
.nph-table-flat {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.85rem;
  background: transparent;
  border: none;
}
.nph-table-flat td {
  padding: 0.25rem 0.7rem;
  border-bottom: 1px solid rgba(224,213,192,0.5);
  vertical-align: top;
  border-left: none;
  border-right: none;
}
.nph-table-flat tr:last-child td {
  border-bottom: none;
}
.nph-table-flat tr:hover td {
  background: rgba(245,236,215,0.4);
}
.nph-table-flat td:first-child {
  font-weight: 400;
  color: #4A2D6B;
  white-space: nowrap;
  width: 140px;
}
.nph-table-flat td:first-child b,
.nph-table-flat td:first-child strong {
  font-weight: 700;
}
.nph-table-flat a {
  color: #6B4D8A;
}
.nph-table-flat a:hover {
  color: #4A2D6B;
}

/* === CARTES SIDEBAR === */
.nph-sidebar .nph-card-header {
  background: linear-gradient(to right, #2D1B4E, #4A2D6B);
  border-bottom: none;
}
.nph-sidebar .nph-card-header h2,
.nph-sidebar .nph-card-header .nph-card-title {
  color: #E8D5A3;
}
.nph-sidebar .nph-card-header .nph-edit {
  color: #8E7BA8;
}
.nph-sidebar .nph-card-body {
  font-size: 0.82rem;
  max-height: 420px;
  overflow-y: auto;
}

/* === BLOCS NOUVEAUTÉS === */
.nph-news-item {
  padding-bottom: 0.5rem;
  margin-bottom: 0.5rem;
  border-bottom: 1px solid rgba(224,213,192,0.4);
}
.nph-news-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.nph-news-date {
  display: inline-block;
  font-family: 'Cinzel', 'Georgia', serif;
  font-size: 0.72rem;
  font-weight: 700;
  color: #8B6914;
  background: #F5ECD7;
  padding: 2px 8px;
  border-radius: 3px;
  margin-bottom: 0.3rem;
}
.nph-news-title {
  font-weight: 600;
  color: #2C2418;
  margin-bottom: 0.15rem;
}

/* === INDEX TAGS === */
.nph-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}
.nph-tag {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 4px;
  font-size: 0.78rem;
  font-weight: 500;
  text-decoration: none !important;
  transition: all 0.15s;
}
.nph-tag-primary {
  background: #2D1B4E;
  color: #E8D5A3 !important;
}
.nph-tag-primary a {
  color: #E8D5A3 !important;
  text-decoration: none !important;
}
.nph-tag-primary:hover {
  background: #4A2D6B;
}
.nph-tag-secondary {
  background: #F5ECD7;
  color: #4A2D6B !important;
  border: 1px solid #E0D5C0;
}
.nph-tag-secondary a {
  color: #4A2D6B !important;
  text-decoration: none !important;
}
.nph-tag-secondary:hover {
  background: #E8D5A3;
}

/* === BOUTON PARTICIPER === */
.nph-btn {
  display: inline-block;
  padding: 6px 16px;
  background: #4A2D6B;
  color: #E8D5A3 !important;
  text-decoration: none !important;
  border-radius: 5px;
  font-size: 0.82rem;
  font-weight: 600;
  transition: background 0.2s, transform 0.2s;
}
.nph-btn:hover {
  background: #2D1B4E;
  transform: translateY(-1px);
}
.nph-btn a {
  color: #E8D5A3 !important;
  text-decoration: none !important;
}
.nph-btn:hover a {
  color: #F5ECD7 !important;
}

/* === ÉPHÉMÉRIDES === */
.nph-ephem-day {
  font-family: 'Cinzel', 'Georgia', serif;
  font-weight: 700;
  color: #4A2D6B;
  text-align: center;
  margin-bottom: 0.5rem;
  font-size: 0.95rem;
}
.nph-ephem-icon {
  text-align: center;
  margin-bottom: 0.4rem;
}
.nph-ephem-warning {
  text-align: center;
  font-weight: 700;
  color: #A0522D;
  font-size: 0.8rem;
  margin-bottom: 0.4rem;
}
.nph-ephem-list {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.nph-ephem-list li {
  padding: 0.25rem 0 0.25rem 1.2rem;
  position: relative;
  font-size: 0.8rem;
  line-height: 1.5;
}
.nph-ephem-list li::before {
  content: '✦';
  position: absolute;
  left: 0;
  color: #C49A2A;
  font-size: 0.55rem;
  top: 0.4rem;
}
.nph-ephem-list li.nph-ephem-bonus::before {
  content: '▲';
  color: #4A8C5C;
  font-size: 0.5rem;
}
.nph-ephem-list li.nph-ephem-malus::before {
  content: '▼';
  color: #A0522D;
  font-size: 0.5rem;
}
.nph-ephem-random {
  margin-top: 0.5rem;
  padding: 0.5rem 0.7rem;
  background: #F5ECD7;
  border-radius: 6px;
  font-size: 0.78rem;
  line-height: 1.6;
}
.nph-ephem-random-title {
  font-weight: 700;
  color: #4A2D6B;
  margin-bottom: 0.2rem;
  font-size: 0.8rem;
}
.nph-ephem-random-table {
  width: 100%;
  border-collapse: collapse;
  margin: 0.4rem 0;
  font-size: 0.78rem;
}
.nph-ephem-random-table td {
  padding: 0.2rem 0.5rem;
  border-bottom: 1px solid rgba(196,154,42,0.25);
}
.nph-ephem-random-table tr:last-child td {
  border-bottom: none;
}
.nph-ephem-random-table td:first-child {
  font-weight: 700;
  color: #4A2D6B;
  text-align: center;
  width: 55px;
  background: rgba(255,255,255,0.5);
  border-radius: 3px;
  font-family: 'Cinzel', 'Georgia', serif;
  font-size: 0.75rem;
}
.nph-ephem-random-table td:last-child {
  color: #4A3F32;
  font-style: italic;
}
.nph-ephem-random-table th {
  font-size: 0.7rem;
  font-weight: 600;
  color: #4A2D6B;
  text-align: center;
  padding: 0.2rem 0.5rem;
  border-bottom: 2px solid rgba(196,154,42,0.4);
  background: rgba(255,255,255,0.4);
}
.nph-ephem-random-table td.nph-ephem-malus-cell {
  color: #A0522D;
  font-style: italic;
}
.nph-ephem-random-note {
  font-size: 0.75rem;
  color: #7A6E5E;
  font-style: italic;
  margin-top: 0.2rem;
}

/* === SIGNE ASTROLOGIQUE EN COURS === */
.nph-ephem-signe {
  text-align: center;
  font-size: 0.82rem;
  color: #4A2D6B;
  margin-bottom: 0.7rem;
  padding: 0.3rem 0.5rem;
  background: rgba(74,45,107,0.06);
  border-radius: 5px;
}

/* === ENCARTS ÉDITION (Révélation / Légende) === */
.nph-ephem-edition {
  margin-top: 0.6rem;
  border: 1px solid #E0D5C0;
  border-radius: 7px;
  overflow: hidden;
}
.nph-ephem-edition-header {
  font-family: 'Cinzel', 'Georgia', serif;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  padding: 0.3rem 0.6rem;
  text-transform: uppercase;
}
.nph-ephem-edition-revelation .nph-ephem-edition-header {
  background: #4A5568;
  color: #DDE2E8;
}
.nph-ephem-edition-revelation .nph-ephem-edition-body {
  background: #DDE2E8;
}
.nph-ephem-edition-legende .nph-ephem-edition-header {
  background: #574B6B;
  color: #E3DEE8;
}
.nph-ephem-edition-legende .nph-ephem-edition-body {
  background: #E3DEE8;
}
.nph-ephem-edition-body {
  padding: 0.5rem 0.6rem;
  font-size: 0.8rem;
}
.nph-ephem-placeholder {
  font-style: italic;
  color: #7A6E5E;
  font-size: 0.78rem;
  text-align: center;
  padding: 0.3rem 0;
}

/* === SOUS-SECTIONS DANS LES ENCARTS ÉDITION === */
.nph-ephem-section-title {
  font-family: 'Cinzel', 'Georgia', serif;
  font-size: 0.78rem;
  font-weight: 700;
  color: #2C2418;
  margin-top: 0.5rem;
  margin-bottom: 0.2rem;
  padding-bottom: 0.15rem;
  border-bottom: 1px solid rgba(0,0,0,0.1);
}
.nph-ephem-section-title:first-child {
  margin-top: 0;
}
.nph-ephem-impossible {
  font-style: italic;
  color: #7A6E5E;
  font-size: 0.78rem;
  padding: 0.2rem 0;
}
.nph-ephem-saturnales {
  margin-top: 0.4rem;
  padding: 0.35rem 0.5rem;
  background: rgba(101,101,101,0.1);
  border-left: 3px solid #656565;
  border-radius: 0 4px 4px 0;
  font-size: 0.78rem;
  color: #4A3F32;
}
.nph-ephem-grande-active {
  margin-top: 0.3rem;
  padding: 0.35rem 0.5rem;
  background: rgba(74,45,107,0.06);
  border-left: 3px solid #574B6B;
  border-radius: 0 4px 4px 0;
  font-size: 0.78rem;
}

/* === Masquer le titre H1 sur la page d'accueil === */
body.page-Accueil #firstHeading {
  display: none;
}


/* === GAMME (Pastilles d'éditions) === */
.nph-gamme {
  background: #FFFFFF;
  border-radius: 8px;
  padding: 0.6rem 1rem;
  box-shadow: 0 1px 4px rgba(0,0,0,0.06);
}
.nph-gamme-title {
  font-family: 'Cinzel', 'Georgia', serif;
  font-size: 0.85rem;
  font-weight: 600;
  color: #2D1B4E;
}
.nph-gamme-title a {
  color: #2D1B4E !important;
  text-decoration: none;
}
.nph-gamme-title a:hover {
  color: #4A2D6B !important;
  text-decoration: underline;
}
.nph-gamme-title-sep {
  color: #C49A2A;
  font-size: 0.7rem;
  margin: 0 0.2rem;
}
.nph-gamme-editions {
  margin-top: 0.35rem;
}
.nph-gamme-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.3rem;
  margin-bottom: 0.25rem;
}
.nph-gamme-row:last-child {
  margin-bottom: 0;
}
.nph-gamme-label {
  font-family: 'Cinzel', 'Georgia', serif;
  font-size: 0.65rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #C49A2A;
  min-width: 110px;
  flex-shrink: 0;
}
.nph-gamme-ed {
  display: inline-block;
  font-size: 0.75rem;
  padding: 0.15rem 0.55rem;
  border-radius: 4px;
  background: #F0EBE0;
  transition: background 0.15s;
}
.nph-gamme-ed a {
  color: #6B4D8A !important;
  text-decoration: none;
}
.nph-gamme-ed:hover {
  background: #E3D8C8;
}
.nph-gamme-ed-current {
  background: #4A2D6B;
}
.nph-gamme-ed-current a {
  color: #FFFFFF !important;
  font-weight: 600;
}
.nph-gamme-ed-current:hover {
  background: #2D1B4E;
}
.nph-gamme-links {
  margin-top: 0.35rem;
  padding-top: 0.35rem;
  border-top: 1px solid rgba(196,154,42,0.2);
  font-size: 0.8rem;
}
.nph-gamme-links a {
  color: #6B4D8A !important;
  text-decoration: none;
}
.nph-gamme-links a:hover {
  color: #2D1B4E !important;
  text-decoration: underline;
}
.nph-gamme-links-sep {
  color: #C49A2A;
  font-size: 0.55rem;
  margin: 0 0.3rem;
  vertical-align: middle;
}


/* ============================================================
   NEPHILIM LÉGENDE — CSS de base pour tous les tableaux
   Classe : neph_table_NL
   
   Charte NL : Pourpre sombre #574B6B / Parchemin mauve #E3DEE8
   Polices : Cinzel (titres), Crimson Text (sous-titres),
             Merriweather (contenu, 15px, weight 400)
   ============================================================ */


/* ===========================================================
   1. CONTENEUR À DÉFILEMENT HORIZONTAL (optionnel)
   =========================================================== */

.neph-scroll-table {
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  margin: 0 0 1.5em 0;
  border: 2px solid #33302A;
  border-radius: 0 0 8px 8px;
  background: #ffffff;
  box-shadow: 0 3px 16px rgba(30, 27, 22, 0.2);
  position: relative;
}

/* --- Barre de défilement HAUTE (div vide + spacer) --- */
.neph-scroll-top {
  overflow-x: auto;
  overflow-y: hidden;
  max-width: 100%;
  margin: 1.5em 0 0 0;
  border: 2px solid #33302A;
  border-bottom: none;
  border-radius: 8px 8px 0 0;
  background: #E3DEE8;
  height: 14px;
}
.neph-scroll-top-spacer {
  height: 1px;
}

/* Scrollbar personnalisée — barre HAUTE */
.neph-scroll-top::-webkit-scrollbar { height: 10px; }
.neph-scroll-top::-webkit-scrollbar-track {
  background: #E3DEE8;
  border-radius: 8px 8px 0 0;
}
.neph-scroll-top::-webkit-scrollbar-thumb {
  background: #574B6B;
  border-radius: 5px;
  border: 2px solid #E3DEE8;
}
.neph-scroll-top::-webkit-scrollbar-thumb:hover {
  background: #6B5D80;
}

/* Scrollbar personnalisée — barre BASSE */
.neph-scroll-table::-webkit-scrollbar { height: 10px; }
.neph-scroll-table::-webkit-scrollbar-track {
  background: #E3DEE8;
  border-radius: 0 0 8px 8px;
}
.neph-scroll-table::-webkit-scrollbar-thumb {
  background: #574B6B;
  border-radius: 5px;
  border: 2px solid #E3DEE8;
}
.neph-scroll-table::-webkit-scrollbar-thumb:hover {
  background: #6B5D80;
}

/* Firefox */
.neph-scroll-top,
.neph-scroll-table {
  scrollbar-color: #574B6B #E3DEE8;
  scrollbar-width: thin;
}

/* Quand le scroll-table est seul (sans scroll-top au-dessus) */
.neph-scroll-table:not(.neph-scroll-top + .neph-scroll-table) {
  margin-top: 1.5em;
  border-radius: 8px;
}


/* ===========================================================
   2. STYLE DE BASE DU TABLEAU NL
   =========================================================== */

.neph_table_NL {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff !important;
  color: #2A2520 !important;
  font-family: 'Merriweather', Georgia, serif;
  font-size: 15px !important;
  font-weight: 400;
  line-height: 1.4;
  border: none !important;
}

.neph_table_NL th,
.neph_table_NL td {
  border: 1px solid #c8c0d0 !important;
  padding: 4px 7px !important;
  vertical-align: middle !important;
  background: #ffffff !important;
  color: #2A2520 !important;
}

.neph_table_NL td {
  font-size: 15px !important;
}

.neph_table_NL th {
  background: #574B6B !important;
  color: #F7F6F2 !important;
  font-family: 'Cinzel', serif;
  font-weight: 600;
  font-size: 0.85em;
  letter-spacing: 0.04em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  border-color: #473D5B !important;
  border-bottom: 2px solid #33302A !important;
}

.neph_table_NL th a,
.neph_table_NL th a:visited {
  color: #ffffff !important;
  text-decoration: none;
}
.neph_table_NL th a:hover {
  color: #E3DEE8 !important;
  text-decoration: underline;
}

/* 3. LIENS DANS LES CELLULES NL */
.neph_table_NL td a {
  color: #574B6B !important;
  text-decoration: none;
}
.neph_table_NL td a:hover {
  color: #7a6a9a !important;
  text-decoration: underline;
}
.neph_table_NL a.new {
  color: #a0352a !important;
}

/* 4. SÉPARATION VISUELLE NL */
.neph_table_NL .ere-end {
  border-right: 2px solid #574B6B !important;
}

/* 5. EFFETS INTERACTIFS NL */
.neph_table_NL tbody tr:hover td {
  background: #EDE8F0 !important;
  transition: background 0.12s ease;
}
.neph_table_NL td:hover {
  outline: 1px solid #574B6B;
  outline-offset: -1px;
}

/* 6. RESPONSIVE NL */
@media (max-width: 768px) {
  .neph_table_NL {
    font-size: 12px;
  }
  .neph_table_NL th,
  .neph_table_NL td {
    padding: 3px 5px !important;
  }
}

/* 7. IMPRESSION NL */
@media print {
  .neph-scroll-table,
  .neph-scroll-top {
    overflow: visible;
    box-shadow: none;
    border: 1px solid #999;
  }
  .neph-scroll-top {
    display: none;
  }
  .neph_table_NL th,
  .neph_table_NL td {
    position: static !important;
  }
  .neph_table_NL th {
    background: #ddd !important;
    color: #000 !important;
    text-shadow: none;
  }
}


/* ============================================================
   NEPHILIM 4e — Anniversaire — neph_table_N4
   ============================================================ */

.neph_table_N4 {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff !important;
  color: #2A2520 !important;
  font-family: 'Merriweather', Georgia, serif;
  font-size: 15px !important;
  font-weight: 400;
  line-height: 1.4;
  border: none !important;
}
.neph_table_N4 th,
.neph_table_N4 td {
  border: 1px solid #d0c0c0 !important;
  padding: 4px 7px !important;
  vertical-align: middle !important;
  background: #ffffff !important;
  color: #2A2520 !important;
}
.neph_table_N4 td { font-size: 15px !important; }
.neph_table_N4 th {
  background: #6B4548 !important;
  color: #F7F6F2 !important;
  font-family: 'Cinzel', serif;
  font-weight: 600;
  font-size: 0.85em;
  letter-spacing: 0.04em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  border-color: #5B3538 !important;
  border-bottom: 2px solid #33302A !important;
}
.neph_table_N4 th a, .neph_table_N4 th a:visited { color: #ffffff !important; text-decoration: none; }
.neph_table_N4 th a:hover { color: #E8DDD8 !important; text-decoration: underline; }
.neph_table_N4 td a { color: #6B4548 !important; text-decoration: none; }
.neph_table_N4 td a:hover { color: #9a6a6d !important; text-decoration: underline; }
.neph_table_N4 a.new { color: #a0352a !important; }
.neph_table_N4 .ere-end { border-right: 2px solid #6B4548 !important; }
.neph_table_N4 tbody tr:hover td { background: #F0E8E5 !important; transition: background 0.12s ease; }
.neph_table_N4 td:hover { outline: 1px solid #6B4548; outline-offset: -1px; }
@media (max-width: 768px) {
  .neph_table_N4 { font-size: 12px; }
  .neph_table_N4 th, .neph_table_N4 td { padding: 3px 5px !important; }
}
@media print {
  .neph_table_N4 th, .neph_table_N4 td { position: static !important; }
  .neph_table_N4 th { background: #ddd !important; color: #000 !important; text-shadow: none; }
}


/* ============================================================
   NEPHILIM 3e — Révélation — neph_table_NR
   ============================================================ */

.neph_table_NR {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff !important;
  color: #2A2520 !important;
  font-family: 'Merriweather', Georgia, serif;
  font-size: 15px !important;
  font-weight: 400;
  line-height: 1.4;
  border: none !important;
}
.neph_table_NR th,
.neph_table_NR td {
  border: 1px solid #c0c8d0 !important;
  padding: 4px 7px !important;
  vertical-align: middle !important;
  background: #ffffff !important;
  color: #2A2520 !important;
}
.neph_table_NR td { font-size: 15px !important; }
.neph_table_NR th {
  background: #4A5568 !important;
  color: #F7F6F2 !important;
  font-family: 'Cinzel', serif;
  font-weight: 600;
  font-size: 0.85em;
  letter-spacing: 0.04em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  border-color: #3A4558 !important;
  border-bottom: 2px solid #33302A !important;
}
.neph_table_NR th a, .neph_table_NR th a:visited { color: #ffffff !important; text-decoration: none; }
.neph_table_NR th a:hover { color: #DDE2E8 !important; text-decoration: underline; }
.neph_table_NR td a { color: #4A5568 !important; text-decoration: none; }
.neph_table_NR td a:hover { color: #6a7a9a !important; text-decoration: underline; }
.neph_table_NR a.new { color: #a0352a !important; }
.neph_table_NR .ere-end { border-right: 2px solid #4A5568 !important; }
.neph_table_NR tbody tr:hover td { background: #E8ECF0 !important; transition: background 0.12s ease; }
.neph_table_NR td:hover { outline: 1px solid #4A5568; outline-offset: -1px; }
@media (max-width: 768px) {
  .neph_table_NR { font-size: 12px; }
  .neph_table_NR th, .neph_table_NR td { padding: 3px 5px !important; }
}
@media print {
  .neph_table_NR th, .neph_table_NR td { position: static !important; }
  .neph_table_NR th { background: #ddd !important; color: #000 !important; text-shadow: none; }
}


/* ============================================================
   NEPHILIM 2e édition — neph_table_N2
   ============================================================ */

.neph_table_N2 {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff !important;
  color: #2A2520 !important;
  font-family: 'Merriweather', Georgia, serif;
  font-size: 15px !important;
  font-weight: 400;
  line-height: 1.4;
  border: none !important;
}
.neph_table_N2 th,
.neph_table_N2 td {
  border: 1px solid #c8c8c0 !important;
  padding: 4px 7px !important;
  vertical-align: middle !important;
  background: #ffffff !important;
  color: #2A2520 !important;
}
.neph_table_N2 td { font-size: 15px !important; }
.neph_table_N2 th {
  background: #727a68 !important;
  color: #F7F6F2 !important;
  font-family: 'Cinzel', serif;
  font-weight: 600;
  font-size: 0.85em;
  letter-spacing: 0.04em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  border-color: #626A58 !important;
  border-bottom: 2px solid #33302A !important;
}
.neph_table_N2 th a, .neph_table_N2 th a:visited { color: #ffffff !important; text-decoration: none; }
.neph_table_N2 th a:hover { color: #E8E4D8 !important; text-decoration: underline; }
.neph_table_N2 td a { color: #727a68 !important; text-decoration: none; }
.neph_table_N2 td a:hover { color: #8a9a7a !important; text-decoration: underline; }
.neph_table_N2 a.new { color: #a0352a !important; }
.neph_table_N2 .ere-end { border-right: 2px solid #727a68 !important; }
.neph_table_N2 tbody tr:hover td { background: #EDE8E0 !important; transition: background 0.12s ease; }
.neph_table_N2 td:hover { outline: 1px solid #727a68; outline-offset: -1px; }
@media (max-width: 768px) {
  .neph_table_N2 { font-size: 12px; }
  .neph_table_N2 th, .neph_table_N2 td { padding: 3px 5px !important; }
}
@media print {
  .neph_table_N2 th, .neph_table_N2 td { position: static !important; }
  .neph_table_N2 th { background: #ddd !important; color: #000 !important; text-shadow: none; }
}


/* ============================================================
   NEPHILIM 1ère édition — neph_table_N1
   ============================================================ */

.neph_table_N1 {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff !important;
  color: #2A2520 !important;
  font-family: 'Merriweather', Georgia, serif;
  font-size: 15px !important;
  font-weight: 400;
  line-height: 1.4;
  border: none !important;
}
.neph_table_N1 th,
.neph_table_N1 td {
  border: 1px solid #d0c8c0 !important;
  padding: 4px 7px !important;
  vertical-align: middle !important;
  background: #ffffff !important;
  color: #2A2520 !important;
}
.neph_table_N1 td { font-size: 15px !important; }
.neph_table_N1 th {
  background: #6B5D4F !important;
  color: #F7F6F2 !important;
  font-family: 'Cinzel', serif;
  font-weight: 600;
  font-size: 0.85em;
  letter-spacing: 0.04em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  border-color: #5B4D3F !important;
  border-bottom: 2px solid #33302A !important;
}
.neph_table_N1 th a, .neph_table_N1 th a:visited { color: #ffffff !important; text-decoration: none; }
.neph_table_N1 th a:hover { color: #E8E0D3 !important; text-decoration: underline; }
.neph_table_N1 td a { color: #6B5D4F !important; text-decoration: none; }
.neph_table_N1 td a:hover { color: #9a8a7a !important; text-decoration: underline; }
.neph_table_N1 a.new { color: #a0352a !important; }
.neph_table_N1 .ere-end { border-right: 2px solid #6B5D4F !important; }
.neph_table_N1 tbody tr:hover td { background: #F0E8E0 !important; transition: background 0.12s ease; }
.neph_table_N1 td:hover { outline: 1px solid #6B5D4F; outline-offset: -1px; }
@media (max-width: 768px) {
  .neph_table_N1 { font-size: 12px; }
  .neph_table_N1 th, .neph_table_N1 td { padding: 3px 5px !important; }
}
@media print {
  .neph_table_N1 th, .neph_table_N1 td { position: static !important; }
  .neph_table_N1 th { background: #ddd !important; color: #000 !important; text-shadow: none; }
}


/* ============================================================
   NEPHILIM LÉGENDE — CSS spécifique au tableau des Incarnations
   Classe additionnelle : neph_table_incarnations
   ============================================================ */

.neph_table_incarnations {
  width: max-content;
  min-width: 100%;
}
.neph_table_incarnations td {
  white-space: nowrap;
}

/* --- Ligne des Ères (première ligne) --- */
.neph_table_incarnations tr:first-child th {
  font-size: 0.88em;
  letter-spacing: 0.06em;
  padding: 7px 8px !important;
}
.neph_table_incarnations tr:first-child th.ere-end {
  border-right: 2px solid #ffffff !important;
}

/* --- Ligne des Époques (deuxième ligne) --- */
.neph_table_incarnations tr:nth-child(2) td,
.neph_table_incarnations tr:nth-child(2) th {
  background: #E3DEE8 !important;
  color: #574B6B !important;
  font-family: 'Crimson Text', serif;
  font-size: 0.82em;
  font-weight: 600;
  text-shadow: none;
  border-bottom: 2px solid #574B6B !important;
}

/* --- Colonnes fixes (sticky) --- */
.neph_table_incarnations .neph-sticky-1 {
  position: sticky !important;
  left: 0 !important;
  z-index: 8;
  background: #E3DEE8 !important;
  color: #574B6B !important;
  font-family: 'Cinzel', serif;
  font-weight: 600;
  font-size: 0.88em;
  border-right: 2px solid #574B6B !important;
  box-sizing: border-box;
  width: 95px;
  min-width: 95px;
  max-width: 95px;
  white-space: normal;
}

.neph_table_incarnations .neph-sticky-2 {
  position: sticky !important;
  left: 95px !important;
  z-index: 7;
  background: #E3DEE8 !important;
  color: #574B6B !important;
  font-family: 'Cinzel', serif;
  font-weight: 600;
  font-size: 0.85em;
  border-right: 2px solid #574B6B !important;
  box-sizing: border-box;
  width: 60px;
  min-width: 60px;
  max-width: 60px;
  box-shadow: 3px 0 6px rgba(87, 75, 107, 0.1);
}

.neph_table_incarnations th.neph-sticky-1 {
  z-index: 15;
  background: #574B6B !important;
  color: #F7F6F2 !important;
}
.neph_table_incarnations th.neph-sticky-2 {
  z-index: 14;
  background: #574B6B !important;
  color: #F7F6F2 !important;
}

/* --- Lignes des Éléments (Vécus par Ka) --- */
.neph_table_incarnations .ka-feu .neph-sticky-2 { background: #f8e8e4 !important; color: #a0352a !important; }
.neph_table_incarnations .ka-feu td { background: #fdf6f5 !important; }
.neph_table_incarnations .ka-air .neph-sticky-2 { background: #e4eef6 !important; color: #3a6a90 !important; }
.neph_table_incarnations .ka-air td { background: #f5f8fc !important; }
.neph_table_incarnations .ka-eau .neph-sticky-2 { background: #dce8f2 !important; color: #2a5a80 !important; }
.neph_table_incarnations .ka-eau td { background: #f2f6fa !important; }
.neph_table_incarnations .ka-terre .neph-sticky-2 { background: #e4f0dc !important; color: #3a6a28 !important; }
.neph_table_incarnations .ka-terre td { background: #f5faf2 !important; }
.neph_table_incarnations .ka-lune .neph-sticky-2 { background: #ebe4f2 !important; color: #6a4a8a !important; }
.neph_table_incarnations .ka-lune td { background: #f8f5fc !important; }

.neph_table_incarnations .ka-feu .neph-sticky-1,
.neph_table_incarnations .ka-air .neph-sticky-1,
.neph_table_incarnations .ka-eau .neph-sticky-1,
.neph_table_incarnations .ka-terre .neph-sticky-1,
.neph_table_incarnations .ka-lune .neph-sticky-1 {
  background: #E3DEE8 !important;
  color: #574B6B !important;
}

.neph_table_incarnations tr.ka-feu:hover td   { background: #f3e0dc !important; }
.neph_table_incarnations tr.ka-air:hover td   { background: #dce8f2 !important; }
.neph_table_incarnations tr.ka-eau:hover td   { background: #d4e0ec !important; }
.neph_table_incarnations tr.ka-terre:hover td { background: #dcecd4 !important; }
.neph_table_incarnations tr.ka-lune:hover td  { background: #e2d8ee !important; }

/* --- Lignes spéciales --- */
.neph_table_incarnations .neph-pi td {
  text-align: center;
  font-weight: 700;
  color: #574B6B !important;
  font-family: 'Cinzel', serif;
  font-size: 1em;
  background: #f0ecf4 !important;
}
.neph_table_incarnations .neph-pi .neph-sticky-1,
.neph_table_incarnations .neph-pi .neph-sticky-2 {
  background: #E3DEE8 !important;
}

.neph_table_incarnations .neph-so td,
.neph_table_incarnations .neph-sorts td,
.neph_table_incarnations .neph-quetes td,
.neph_table_incarnations .neph-quetes-arcane td,
.neph_table_incarnations .neph-savoirs td {
  font-size: 0.82em;
  line-height: 1.5;
  white-space: normal;
  min-width: 100px;
}

.neph_table_incarnations .neph-stases td {
  font-style: italic;
  color: #6a6060 !important;
  font-size: 0.82em;
  white-space: normal;
  min-width: 150px;
}

@media (max-width: 768px) {
  .neph_table_incarnations .neph-sticky-2 {
    position: static !important;
    left: auto !important;
  }
}
@media print {
  .neph_table_incarnations .neph-sticky-1,
  .neph_table_incarnations .neph-sticky-2 {
    position: static !important;
  }
}


/* ============================================ */
/* INFOBOX EFFETMAGIQUE — Dégradés en-tête      */
/* par science occulte                          */
/* ============================================ */

/* Magie — Or royal */
.infobox-sc-magie {
  background: linear-gradient(135deg, #6A5010 0%, #B89830 25%, #E8C848 50%, #B89830 75%, #6A5010 100%) !important;
  color: #FFFFFF !important;
}

/* Kabbale — Argent sacré */
.infobox-sc-kabbale {
  background: linear-gradient(135deg, #3A3A4A 0%, #6A6A80 30%, #9898B0 50%, #6A6A80 70%, #3A3A4A 100%) !important;
  color: #F0F0F8 !important;
}

/* Alchimie — Rouge métallique */
.infobox-sc-alchimie {
  background: linear-gradient(135deg, #3A0A0A 0%, #6A1A1A 30%, #982828 50%, #6A1A1A 70%, #3A0A0A 100%) !important;
  color: #F8D8D8 !important;
}

/* Qiyas — Or classique */
.infobox-sc-qiyas {
  background: linear-gradient(135deg, #B8860B 0%, #DAA520 30%, #F0D060 50%, #DAA520 70%, #B8860B 100%) !important;
  color: #2A1F0A !important;
}

/* Nécromancie — Noir / violet sombre */
.infobox-sc-necromancie {
  background: linear-gradient(135deg, #1A1020 0%, #2A1840 30%, #402860 50%, #2A1840 70%, #1A1020 100%) !important;
  color: #D0C0E0 !important;
}

/* Kabbale noire — Noir / gris métallique */
.infobox-sc-kabbale-noire {
  background: linear-gradient(135deg, #0E0E0E 0%, #2A2A30 30%, #484850 50%, #2A2A30 70%, #0E0E0E 100%) !important;
  color: #C8C8D0 !important;
}

/* Talents — Turquoise métallique */
.infobox-sc-talents {
  background: linear-gradient(135deg, #0A3038 0%, #186068 30%, #20888C 50%, #186068 70%, #0A3038 100%) !important;
  color: #D0F4F4 !important;
}

/* Mandalas — Mauve / gris argent */
.infobox-sc-mandalas {
  background: linear-gradient(135deg, #3A2848 0%, #6A5080 30%, #8878A0 50%, #6A5080 70%, #3A2848 100%) !important;
  color: #E8E0F0 !important;
}

/* Dons — Mauve / doré */
.infobox-sc-dons {
  background: linear-gradient(135deg, #3A2040 0%, #6A4060 30%, #A07040 50%, #6A4060 70%, #3A2040 100%) !important;
  color: #F0E0D0 !important;
}


/* ============================================
   Modèle {{Définition}} — Cadres de définition
   ============================================ */

.def-cadre {
    border-left: 4px solid #999;
    padding: .8em 1.2em;
    margin: .5em 0;
    background: #fafafa;
    border-radius: 0 3px 3px 0;
}
.def-badge {
    display: inline-block;
    font-family: 'Cinzel', serif;
    font-size: .7em;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: .15em .55em;
    border-radius: 3px;
    color: #fff;
    margin-bottom: .5em;
    line-height: 1.4;
}
.def-texte {
    font-size: .95em;
    line-height: 1.55;
}
.def-source {
    margin-top: .5em;
    font-size: .82em;
    color: #888;
    font-style: italic;
}

.def-nl  { border-left-color: #574B6B; }
.def-badge-nl { background-color: #7B6D92; }
.def-n4  { border-left-color: #6B4548; }
.def-badge-n4 { background-color: #8E6568; }
.def-nr  { border-left-color: #4A5568; }
.def-badge-nr { background-color: #6B7A8E; }
.def-n2  { border-left-color: #727a68; }
.def-badge-n2 { background-color: #8E9680; }
.def-n1  { border-left-color: #6B5D4F; }
.def-badge-n1 { background-color: #8E7E6E; }
.def-wiki { border-left-color: #A08050; }
.def-badge-wiki { background-color: #B89860; }


/* ============================================
   INFOBOX SUPPLÉMENTS — Styles par édition
   ============================================ */

.infobox-supplement {
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 1px 5px rgba(0,0,0,0.1);
    font-family: 'Merriweather', 'Georgia', serif;
    font-size: 0.92em;
}
.infobox-supplement table {
    width: 100%;
    border-collapse: collapse;
}
.infobox-supplement-badge {
    font-family: 'Cinzel', serif;
    font-size: 0.65em;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    text-align: center;
    padding: 3px 8px;
    color: rgba(255,255,255,0.82);
}
.infobox-supplement-title {
    font-family: 'Cinzel', serif;
    font-size: 1.05em;
    font-weight: 700;
    text-align: center;
    padding: 10px 12px;
    color: #fff;
    text-shadow: 0 1px 2px rgba(0,0,0,0.15);
}
.infobox-supplement-cover {
    text-align: center;
    padding: 12px;
}
.infobox-supplement-cover img {
    border-radius: 2px;
    border: 1px solid rgba(0,0,0,0.08);
}
.infobox-supplement-legend {
    text-align: center;
    font-style: italic;
    font-size: 0.82em;
    color: #888;
    padding: 0 12px 8px;
}
.infobox-supplement-sep {
    height: 1px;
    padding: 0;
    line-height: 0;
    font-size: 0;
}
.infobox-supplement-section {
    font-family: 'Cinzel', serif;
    font-size: 0.68em;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 4px 10px;
    color: #fff;
}
.infobox-supplement-label {
    width: 38%;
    text-align: left;
    padding: 4px 10px;
    font-weight: 600;
    font-size: 15px;
    vertical-align: top;
    background: #fff;
    border-bottom: 1px solid #EDEDED;
}
.infobox-supplement-data {
    padding: 4px 10px;
    font-size: 15px;
    vertical-align: top;
    color: #444;
    background: #fff;
    border-bottom: 1px solid #EDEDED;
}

/* --- NL — 5e édition (Légende) — Pourpre --- */
.infobox-supplement-nl { border: 1px solid #C4BAD0; }
.infobox-supplement-nl .infobox-supplement-badge { background: #483D5C; }
.infobox-supplement-nl .infobox-supplement-title { background: linear-gradient(135deg, #574B6B, #7B6E91); }
.infobox-supplement-nl .infobox-supplement-cover { background: #E3DEE8; }
.infobox-supplement-nl .infobox-supplement-legend { background: #E3DEE8; }
.infobox-supplement-nl .infobox-supplement-sep { background: #C4BAD0; }
.infobox-supplement-nl .infobox-supplement-section { background: #7B6E91; }
.infobox-supplement-nl .infobox-supplement-label { color: #574B6B; }

/* --- N4 — 4e édition (Anniversaire) — Bordeaux --- */
.infobox-supplement-n4 { border: 1px solid #D0C0BD; }
.infobox-supplement-n4 .infobox-supplement-badge { background: #5B3538; }
.infobox-supplement-n4 .infobox-supplement-title { background: linear-gradient(135deg, #6B4548, #8B6568); }
.infobox-supplement-n4 .infobox-supplement-cover { background: #E8DDD8; }
.infobox-supplement-n4 .infobox-supplement-legend { background: #E8DDD8; }
.infobox-supplement-n4 .infobox-supplement-sep { background: #D0C0BD; }
.infobox-supplement-n4 .infobox-supplement-section { background: #8B6568; }
.infobox-supplement-n4 .infobox-supplement-label { color: #6B4548; }

/* --- NR — 3e édition (Révélation) — Bleu nuit --- */
.infobox-supplement-nr { border: 1px solid #C0C8D0; }
.infobox-supplement-nr .infobox-supplement-badge { background: #3A4558; }
.infobox-supplement-nr .infobox-supplement-title { background: linear-gradient(135deg, #4A5568, #6A7588); }
.infobox-supplement-nr .infobox-supplement-cover { background: #DDE2E8; }
.infobox-supplement-nr .infobox-supplement-legend { background: #DDE2E8; }
.infobox-supplement-nr .infobox-supplement-sep { background: #C0C8D0; }
.infobox-supplement-nr .infobox-supplement-section { background: #6A7588; }
.infobox-supplement-nr .infobox-supplement-label { color: #4A5568; }

/* --- N2 — 2e édition — Olive --- */
.infobox-supplement-n2 { border: 1px solid #C8C8C0; }
.infobox-supplement-n2 .infobox-supplement-badge { background: #626A58; }
.infobox-supplement-n2 .infobox-supplement-title { background: linear-gradient(135deg, #727a68, #8A9278); }
.infobox-supplement-n2 .infobox-supplement-cover { background: #E8E4D8; }
.infobox-supplement-n2 .infobox-supplement-legend { background: #E8E4D8; }
.infobox-supplement-n2 .infobox-supplement-sep { background: #C8C8C0; }
.infobox-supplement-n2 .infobox-supplement-section { background: #8A9278; }
.infobox-supplement-n2 .infobox-supplement-label { color: #727a68; }

/* --- N1 — 1ère édition — Brun chaud --- */
.infobox-supplement-n1 { border: 1px solid #D0C8B8; }
.infobox-supplement-n1 .infobox-supplement-badge { background: #5B4D3F; }
.infobox-supplement-n1 .infobox-supplement-title { background: linear-gradient(135deg, #6B5D4F, #8B7D6F); }
.infobox-supplement-n1 .infobox-supplement-cover { background: #E8E0D3; }
.infobox-supplement-n1 .infobox-supplement-legend { background: #E8E0D3; }
.infobox-supplement-n1 .infobox-supplement-sep { background: #D0C8B8; }
.infobox-supplement-n1 .infobox-supplement-section { background: #8B7D6F; }
.infobox-supplement-n1 .infobox-supplement-label { color: #6B5D4F; }

/* --- NUS — US édition — Gris neutre --- */
.infobox-supplement-nus { border: 1px solid #C8C8C8; }
.infobox-supplement-nus .infobox-supplement-badge { background: #5B5B5B; }
.infobox-supplement-nus .infobox-supplement-title { background: linear-gradient(135deg, #6B6B6B, #8B8B8B); }
.infobox-supplement-nus .infobox-supplement-cover { background: #E8E8E8; }
.infobox-supplement-nus .infobox-supplement-legend { background: #E8E8E8; }
.infobox-supplement-nus .infobox-supplement-sep { background: #C8C8C8; }
.infobox-supplement-nus .infobox-supplement-section { background: #8B8B8B; }
.infobox-supplement-nus .infobox-supplement-label { color: #6B6B6B; }

/* --- FAN — Fanzines — Bleu-vert --- */
.infobox-supplement-fan { border: 1px solid #B8D0C8; }
.infobox-supplement-fan .infobox-supplement-badge { background: #2D5B5B; }
.infobox-supplement-fan .infobox-supplement-title { background: linear-gradient(135deg, #3D6B6B, #5D8B8B); }
.infobox-supplement-fan .infobox-supplement-cover { background: #D8E8E4; }
.infobox-supplement-fan .infobox-supplement-legend { background: #D8E8E4; }
.infobox-supplement-fan .infobox-supplement-sep { background: #B8D0C8; }
.infobox-supplement-fan .infobox-supplement-section { background: #5D8B8B; }
.infobox-supplement-fan .infobox-supplement-label { color: #3D6B6B; }


/* ============================================================
   STYLE DES ARTICLES STANDARDS — NOUVEAU BLOC
   S'applique automatiquement à tous les articles du wiki.
   Aucun article existant n'a besoin d'être modifié.
   ============================================================ */

/* --- A1. Typographie générale du corps d'article --- */
.mw-body-content {
  font-family: 'Merriweather', 'Georgia', serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.78;
  color: #2A2520;
  -webkit-font-smoothing: antialiased;
}

.mw-body-content p {
  margin-bottom: 0.9em;
  text-align: justify;
  hyphens: auto;
  -webkit-hyphens: auto;
}

.mw-body-content b,
.mw-body-content strong {
  font-weight: 700;
  color: #1E1A16;
}

.mw-body-content i,
.mw-body-content em {
  font-style: italic;
  color: #3A3530;
}

/* --- A2. Titre principal de l'article (H1) --- */
#firstHeading,
.mw-first-heading {
  font-family: 'Cinzel', 'Georgia', serif;
  font-weight: 700;
  font-size: 2.1em;
  color: #2D1B4E;
  letter-spacing: 0.03em;
  margin-bottom: 0.2em;
  padding-bottom: 0.35em;
  border-bottom: 3px solid #C49A2A;
  line-height: 1.2;
}

/* --- A3. Titres de sections (H2 à H5) --- */

/* H2 : Sections principales (== Titre ==) */
.mw-body-content h2,
.mw-body-content .mw-heading2 h2 {
  font-family: 'Cinzel', 'Georgia', serif;
  font-weight: 600;
  font-size: 1.55em;
  color: #574B6B;
  letter-spacing: 0.04em;
  margin-top: 2em;
  margin-bottom: 0.6em;
  padding-bottom: 0.35em;
  border-bottom: 2px solid;
  border-image: linear-gradient(90deg, #574B6B 0%, #C49A2A 50%, transparent 100%) 1;
  line-height: 1.3;
}

/* Lien [modifier] */
.mw-body-content .mw-editsection {
  font-family: 'Merriweather', serif;
  font-size: 0.55em;
  font-weight: 400;
  letter-spacing: 0;
  vertical-align: baseline;
}

/* H3 : Sous-sections (=== Titre ===) */
.mw-body-content h3,
.mw-body-content .mw-heading3 h3 {
  font-family: 'Cinzel', 'Georgia', serif;
  font-weight: 500;
  font-size: 1.25em;
  color: #6B5A80;
  letter-spacing: 0.03em;
  margin-top: 1.6em;
  margin-bottom: 0.5em;
  padding-bottom: 0.25em;
  border-bottom: 1px solid #D0C4DC;
  line-height: 1.3;
}

/* H4 : Sous-sous-sections (==== Titre ====) */
.mw-body-content h4,
.mw-body-content .mw-heading4 h4 {
  font-family: 'Cinzel', 'Georgia', serif;
  font-weight: 500;
  font-size: 1.08em;
  color: #7A6D8E;
  letter-spacing: 0.02em;
  margin-top: 1.3em;
  margin-bottom: 0.4em;
  padding-left: 0.6em;
  border-left: 3px solid #C49A2A;
  line-height: 1.3;
}

/* H5 : Niveau rare */
.mw-body-content h5,
.mw-body-content .mw-heading5 h5 {
  font-family: 'Cinzel', 'Georgia', serif;
  font-weight: 500;
  font-size: 0.95em;
  color: #8A7FA0;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-top: 1.1em;
  margin-bottom: 0.35em;
}

/* --- A4. Liens --- */

/* Liens internes (articles existants) */
.mw-body-content a:not(.new):not(.external):not(.mw-editsection a) {
  color: #574B6B;
  text-decoration: none;
  border-bottom: 1px solid rgba(87, 75, 107, 0.25);
  transition: color 0.2s, border-bottom-color 0.2s;
}
.mw-body-content a:not(.new):not(.external):not(.mw-editsection a):hover {
  color: #2D1B4E;
  border-bottom-color: #C49A2A;
}
.mw-body-content a:not(.new):not(.external):not(.mw-editsection a):visited {
  color: #6B5A80;
}

/* Liens rouges (articles inexistants) */
.mw-body-content a.new {
  color: #a04030;
  border-bottom: 1px dashed rgba(160, 64, 48, 0.3);
}
.mw-body-content a.new:hover {
  color: #c05040;
  border-bottom-color: #c05040;
}

/* Liens externes */
.mw-body-content a.external {
  color: #4A6B5B;
  text-decoration: none;
  border-bottom: 1px dotted rgba(74, 107, 91, 0.4);
}
.mw-body-content a.external:hover {
  color: #2D4E3B;
  border-bottom-color: #2D4E3B;
}

/* --- A5. Table des matières (TOC) --- */
.toc,
.toccolours {
  background: linear-gradient(135deg, #F5F2F8 0%, #EDE8F2 100%);
  border: 1px solid #D0C4DC;
  border-radius: 8px;
  padding: 1em 1.4em;
  margin: 0.8em 0 1.5em 0;
  font-family: 'Merriweather', serif;
  font-size: 0.88em;
  line-height: 1.65;
  width: auto;
  display: table;
  box-shadow: 0 1px 4px rgba(87, 75, 107, 0.08);
}
.toc .toctitle,
.toc #toctitle {
  font-family: 'Cinzel', 'Georgia', serif;
  font-weight: 600;
  font-size: 1.05em;
  color: #574B6B;
  letter-spacing: 0.06em;
  text-align: center;
  margin-bottom: 0.5em;
  padding-bottom: 0.4em;
  border-bottom: 1px solid rgba(196, 154, 42, 0.35);
}
.toc .toctoggle,
.toc .togglelink,
.toc .toctogglelabel {
  font-family: 'Merriweather', serif;
  font-size: 0.85em;
  color: #7A6D8E;
}
.toc .tocnumber {
  color: #C49A2A;
  font-weight: 700;
  margin-right: 0.3em;
}
.toc a {
  color: #574B6B !important;
  text-decoration: none !important;
  border-bottom: none !important;
}
.toc a:hover {
  color: #2D1B4E !important;
  text-decoration: underline !important;
}
.toc ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.toc ul ul {
  padding-left: 1.3em;
}
.toc li {
  margin: 0.15em 0;
}

/* --- A6. Listes à puces et numérotées --- */
.mw-body-content ul:not(.toc ul) {
  list-style: none;
  padding-left: 1.6em;
  margin: 0.5em 0 1em 0;
}
.mw-body-content ul:not(.toc ul) > li {
  position: relative;
  padding-left: 0.2em;
  margin-bottom: 0.35em;
}
.mw-body-content ul:not(.toc ul) > li::before {
  content: '\25C6';
  position: absolute;
  left: -1.4em;
  color: #C49A2A;
  font-size: 0.55em;
  top: 0.55em;
}
.mw-body-content ul:not(.toc ul) ul > li::before {
  content: '\25C7';
  color: #8A7FA0;
}
.mw-body-content ol {
  padding-left: 2em;
  margin: 0.5em 0 1em 0;
}
.mw-body-content ol > li {
  margin-bottom: 0.35em;
  padding-left: 0.3em;
}
.mw-body-content ol > li::marker {
  color: #C49A2A;
  font-weight: 700;
  font-family: 'Cinzel', serif;
  font-size: 0.85em;
}

/* --- A7. Blocs de citation --- */
.mw-body-content blockquote {
  margin: 1.2em 0;
  padding: 1em 1.4em;
  background: linear-gradient(135deg, #F8F5FB 0%, #F2EEF6 100%);
  border-left: 4px solid #C49A2A;
  border-radius: 0 6px 6px 0;
  font-style: italic;
  color: #3A3530;
  font-size: 1.02em;
  line-height: 1.7;
  position: relative;
}
.mw-body-content blockquote::before {
  content: '\275D';
  position: absolute;
  top: -8px;
  left: 10px;
  font-size: 2.5em;
  color: rgba(196, 154, 42, 0.2);
  font-style: normal;
  line-height: 1;
}

/* --- A8. Séparateur horizontal --- */
.mw-body-content hr {
  border: none;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #C49A2A 20%, #574B6B 50%, #C49A2A 80%, transparent 100%);
  margin: 2em 0;
  opacity: 0.5;
}

/* --- A9. Catégories en bas de page --- */
.catlinks {
  font-family: 'Merriweather', serif;
  font-size: 0.85em;
  background: #F5F2F8;
  border: 1px solid #D0C4DC;
  border-radius: 6px;
  padding: 0.6em 1em;
  margin-top: 2em;
  color: #574B6B;
}
.catlinks a {
  color: #574B6B !important;
}
.catlinks a:hover {
  color: #2D1B4E !important;
}

/* --- A10. Images / Thumbnails --- */
.mw-body-content .thumb {
  border: 1px solid #D0C4DC;
  border-radius: 6px;
  overflow: hidden;
  background: #F8F5FB;
}
.mw-body-content .thumbcaption {
  font-family: 'Merriweather', serif;
  font-size: 0.85em;
  color: #6B5A80;
  padding: 0.4em 0.6em;
  line-height: 1.4;
  font-style: italic;
}

/* --- A11. Premier paragraphe (intro) --- */
.mw-body-content > p:first-of-type {
  font-size: 1.05em;
  line-height: 1.8;
}

/* --- A12. Impression articles --- */
@media print {
  .mw-body-content {
    font-size: 11pt;
    color: #000;
  }
  .mw-body-content h2,
  .mw-body-content h3,
  .mw-body-content h4 {
    color: #000;
    border-color: #ccc;
  }
  .toc {
    border: 1px solid #ccc;
    background: #f5f5f5;
    box-shadow: none;
  }
}