/* ==========================================================================
   Forum — thème « chaudron » (style enfant de prosilver, phpBB 3.3)
   Rôle : appliquer au forum la charte 2026 du site (palette « Chaudron », en-tête du site, barre d'onglets,
   thème clair / sombre), sans gabarit copié. Le balisage de l'en-tête et de la barre d'onglets est posé par
   les événements de l'extension poteauxcarres/chaudron (ext/poteauxcarres/chaudron/ du même dépôt).
   Ordre de chargement : styles/chaudron/theme/stylesheet.css importe la feuille de prosilver ; celle-ci est liée
   après toutes les feuilles de la page (événement overall_header_stylesheets_after de l'extension), avec
   ?assets_version : un vidage du cache phpBB la fait recharger par les navigateurs.
   A. Tokens de la palette Chaudron : copie de la section 1 de css/poteaux-carres.css (poteauxcarres-front),
      à reporter à chaque changement de la palette du site.
   B. En-tête du site et barre d'onglets : copie des sections 4 et 9 de css/poteaux-carres.css, limitée à
      .site-header et .tabbar (la base du site, a, img, h1…, casserait prosilver), à reporter à chaque
      changement de l'en-tête du site.
   C. Surcharges de prosilver : prosilver garde sa base de 10 px et ses tailles en em ; les tailles posées
      ici sont en rem (16 px) pour ne pas dépendre de l'imbrication.
   Listes de forums et de sujets : ne jamais modifier le padding-bottom des dd. prosilver égalise la hauteur
   des colonnes par padding-bottom:999px et margin-bottom:-995px ; seul padding-top est permis. Sur les
   en-têtes de liste, ne toucher qu'aux marges verticales du dt, dont la marge droite négative réserve la
   place des colonnes.
   ========================================================================== */

/* ---------- A. Tokens (copie de la section 1 de css/poteaux-carres.css) ---------- */
:root{
  --bg:#F4F6F3; --surface:#FFFFFF; --surface-2:#E8ECE7; --border:#D3D9D2;
  --text:#161B18; --muted:#4C564D;
  --primary:#0B7A43; --primary-hover:#0A6438; --on-primary:#FFFFFF; --primary-soft:#EAF7EF;
  --hero:#0B4F2E; --on-hero:#E8ECE7; --hero-accent:#9DDBB6;
  --heritage:#8A621A; --heritage-soft:#FBF0D5; --live:#C93A2B; --focus:#C4932B;
  --shadow:0 1px 2px rgba(12,16,13,.05),0 8px 24px -12px rgba(12,16,13,.18);
  /* Puces de compétition du calendrier (Poteau feu) */
  --comp-pro-bg:#0A3B23; --comp-pro-fg:#FFFFFF; --comp-fem-bg:#136A70; --comp-fem-fg:#FFFFFF;
  --comp-esp-bg:#0B7A43; --comp-esp-fg:#FFFFFF; --comp-jeu-bg:#CDEDD9; --comp-jeu-fg:#0A3B23;

  /* Couleurs fixes, identiques dans les deux thèmes (posées sur fond vert profond) */
  --neon:#3FD98A; --laiton:#DDAE45; --laiton-300:#EBC874; --craie:#E8ECE7; --charbon:#0C100D;

  --display:"Big Shoulders Display","Arial Narrow",Impact,sans-serif;
  --body:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,Consolas,monospace;

  --head:60px;          /* hauteur de l'en-tête collant */
  --rail:4px;           /* position de la ligne du fil */
  --thumb:64px;         /* vignette des potins */
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0C100D; --surface:#161B18; --surface-2:#1C231E; --border:#2A332C;
  --text:#E8ECE7; --muted:#8A958A;
  --primary:#3FD98A; --primary-hover:#63C48D; --on-primary:#0C100D; --primary-soft:#111C15;
  --hero:#0A3B23; --on-hero:#E8ECE7; --hero-accent:#3FD98A;
  --heritage:#DDAE45; --heritage-soft:#1F1A0E; --live:#FF6B5A; --focus:#DDAE45;
  --shadow:0 1px 2px rgba(0,0,0,.4),0 10px 28px -14px rgba(0,0,0,.7);
  --comp-pro-bg:#3FD98A; --comp-pro-fg:#0C100D; --comp-fem-bg:#4FC4C0; --comp-fem-fg:#0C100D;
  --comp-jeu-bg:#173D27; --comp-jeu-fg:#9DDBB6;
  color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0C100D; --surface:#161B18; --surface-2:#1C231E; --border:#2A332C;
  --text:#E8ECE7; --muted:#8A958A;
  --primary:#3FD98A; --primary-hover:#63C48D; --on-primary:#0C100D; --primary-soft:#111C15;
  --hero:#0A3B23; --on-hero:#E8ECE7; --hero-accent:#3FD98A;
  --heritage:#DDAE45; --heritage-soft:#1F1A0E; --live:#FF6B5A; --focus:#DDAE45;
  --shadow:0 1px 2px rgba(0,0,0,.4),0 10px 28px -14px rgba(0,0,0,.7);
  --comp-pro-bg:#3FD98A; --comp-pro-fg:#0C100D; --comp-fem-bg:#4FC4C0; --comp-fem-fg:#0C100D;
  --comp-jeu-bg:#173D27; --comp-jeu-fg:#9DDBB6;
  color-scheme:dark}

/* ---------- B. En-tête du site et barre d'onglets (sections 4 et 9 de css/poteaux-carres.css) ---------- */
/* Base du site (section 2) limitée aux deux blocs : prosilver reste en content-box, 10 px, line-height:normal */
.site-header,.site-header *,.tabbar,.tabbar *{box-sizing:border-box}
.site-header,.tabbar{font-size:1rem;line-height:1.6}
.site-header a,.tabbar a{color:inherit;text-decoration:none}
.site-header svg,.tabbar svg{display:block}
.site-header button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.site-header .container{max-width:1200px;margin:0 auto;padding-inline:16px}
/* Contenu de l'en-tête aligné sur celui du forum : .wrap de prosilver est en content-box (1200 px + marges) */
.site-header .container{box-sizing:content-box}
/* Clearfix de prosilver (.container::before/::after en display:table) : ce seraient des éléments flex de .bar,
   avec 24 px d'écart avant le logo et après les outils */
.site-header .bar::before,.site-header .bar::after{content:none}
@media (min-width:760px){.site-header .container{padding-inline:28px}}

.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);font-family:var(--body)}
.site-header .bar{display:flex;align-items:center;gap:24px;height:var(--head)}
/* .logo existe aussi dans prosilver (flottant, masqué sous 700 px) : neutralisé dans l'en-tête */
.site-header .logo{float:none;display:flex;padding:0;font:900 1.5rem/1 var(--display);text-transform:uppercase;letter-spacing:.02em;align-items:center;gap:10px;white-space:nowrap;color:var(--text)}
.site-header .logo em{font-style:normal;color:var(--primary)}
.logo__mark{width:22px;height:22px;position:relative;flex:none}
.logo__mark i{position:absolute;background:var(--text);top:0}
.logo__mark i:nth-child(1){left:0;width:5px;height:22px}
.logo__mark i:nth-child(2){right:0;width:5px;height:22px}
.logo__mark i:nth-child(3){left:0;width:22px;height:5px}
.site-header .nav{display:flex;gap:22px;font-size:.88rem;font-weight:600;color:var(--muted);margin-left:8px}
.site-header .nav a{padding-block:4px}
.site-header .nav a:hover{color:var(--text)}
.site-header .nav a[aria-current="page"]{color:var(--text);box-shadow:0 2px 0 var(--primary)}
.site-header .tools{margin-left:auto;display:flex;gap:4px}
.site-header .iconbtn{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;color:var(--muted)}
.site-header .iconbtn:hover{background:var(--surface-2);color:var(--text)}
.site-header .iconbtn svg{width:20px;height:20px}
.site-header :focus-visible,.tabbar :focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}
/* Menu masqué là où la barre d'onglets prend le relais (même seuil, 760 px) : pas de largeur sans navigation */
@media (max-width:760px){.site-header .nav{display:none}}
@media (max-width:420px){.site-header .bar{gap:12px}.site-header .logo{font-size:1.2rem;gap:8px}.site-header .iconbtn{width:36px;height:36px}}

.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:25;display:none;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border);padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));font-family:var(--body)}
.tabbar__in{display:grid;grid-template-columns:repeat(5,1fr)}
.tabbar a{display:grid;justify-items:center;gap:2px;font-size:.66rem;font-weight:600;color:var(--muted);padding:6px 0}
.tabbar a svg{width:22px;height:22px}
.tabbar a:hover{color:var(--muted)} /* comme sur le site : pas le a:hover vert de la section C1 */
.tabbar a[aria-current="page"]{color:var(--primary)}
@media (max-width:760px){.tabbar{display:block}}

/* ---------- C1. Page ---------- */
html,body{background:var(--bg);color:var(--text)}
body{font-family:var(--body);padding:0;-webkit-font-smoothing:antialiased}
/* Place de la barre d'onglets, seulement sur les pages qui l'ont (pas les fenêtres simples de simple_header) */
@media (max-width:760px){body:has(> .tabbar){padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}}
/* Ancres (#p123, #unread, #start_here…) visibles sous l'en-tête collant du site */
html{scroll-padding-top:calc(var(--head) + 8px)}
a{color:var(--primary)}
a:hover{color:var(--primary-hover)}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.wrap{max-width:1200px;min-width:0;margin:0 auto;padding:0 16px 32px;border:0;border-radius:0;background:transparent}
@media (min-width:760px){.wrap{padding:0 28px 48px}}
@media (max-width:1220px){.wrap{margin:0 auto}}
@media (max-width:700px){.wrap{padding:0 12px 24px}}

/* Titres de page (forum, sujet) et de blocs */
h2.forum-title,h2.topic-title,.page-body > h2,.page-body h2.solo{font:900 clamp(2rem,6vw,3.3rem)/.95 var(--display);text-transform:uppercase;letter-spacing:-.005em;color:var(--text);margin:24px 0 10px;text-wrap:balance}
h2.forum-title a,h2.topic-title a,h2.posting-title a{color:inherit}
h2.forum-title + div,h2.topic-title + p{font-size:.85rem;color:var(--muted)}
.page-body p strong{color:var(--text)}
h3{font-family:var(--body);color:var(--text);border-bottom-color:var(--border)}

/* ---------- C2. Barre du forum (outils du membre + fil d'Ariane) ---------- */
/* En-tête de prosilver (logo, description, recherche) remplacé par celui du site : masqué, sans gabarit copié.
   La règle .headerbar + .navbar{margin-top:-5px} de prosilver (≤ 700 px) s'applique encore (sélecteur de
   frère) : neutralisée par #page-header .navbar{margin:0} ci-dessous. */
#page-header > .headerbar{display:none}
/* Lien d'évitement « Aller au contenu » : celui de prosilver était dans .headerbar ; celui de l'en-tête du
   site reprend sa classe (hors écran) et s'affiche au focus */
.site-header .skiplink:focus{left:16px;top:10px;width:auto;z-index:30;background:var(--surface);color:var(--text);border-radius:8px;padding:6px 12px;box-shadow:var(--shadow)}
#page-header .navbar{background:transparent;border-radius:0;padding:4px 0 0;margin:0}
.navbar .inner{padding:0}
ul.linklist{border:0}
ul.linklist > li{font:600 .85rem/2.6 var(--body)}
ul.linklist > li > a,ul.linklist > li > a span{color:var(--muted)}
ul.linklist > li > a:hover,ul.linklist > li > a:hover span{color:var(--text)}
ul.linklist .icon{color:inherit}
ul.navlinks,.nav-breadcrumbs{border-top:1px solid var(--border)!important;margin-top:4px}
.nav-breadcrumbs .crumb,.nav-breadcrumbs .crumb a{font:600 .7rem/2.8 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.nav-breadcrumbs .crumb a:hover{color:var(--primary)}
.crumb:before{color:var(--border)}
.header-avatar img{width:28px!important;height:28px!important;max-height:none;border-radius:8px;object-fit:cover;vertical-align:middle;margin-right:6px}
.header-avatar span.username{color:var(--text)}
.badge{background:var(--live);color:var(--on-primary);opacity:1;border-radius:99px;font:600 .62rem/1 var(--mono);padding:3px 6px;top:5px}
.badge.hidden{display:none}
/* Mobile : icônes seules (raccourcis, FAQ, messages privés, notifications), fil d'Ariane réduit au premier et
   au dernier niveau ; la recherche passe par la loupe de l'en-tête du site.
   Menu du membre : l'avatar seul ; sans avatar, une icône de silhouette (fa-user), sinon le bouton serait vide
   (0 × 0 px) et le menu (panneau de l'utilisateur, profil, déconnexion) inaccessible. Le pseudo reste lu par les
   lecteurs d'écran. */
@media (max-width:700px){
  #nav-main > li > a > span{display:none}
  #nav-main > li > a .icon{font-size:1.15rem}
  #nav-main .header-profile .username{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  #nav-main .header-avatar:not(:has(img))::before{content:"\f007";display:inline-block;width:28px;text-align:center;font:normal normal normal 1.15rem/1 FontAwesome;vertical-align:middle}
  .nav-breadcrumbs .crumb:not(:first-child):not(:last-child){display:none}
  .nav-breadcrumbs .responsive-search,.action-bar .search-box{display:none!important}
  p.right.time + p,.page-body > p.responsive-center.time:first-child{display:none}
  /* Modérateurs masqués : sous le titre d'un forum, sous le titre d'un sujet, dans la liste des forums (bloc posé par
     overall_footer_body_after.html). Sous un sujet, un paragraphe de description masqué peut précéder : ~ et non + */
  h2.forum-title + div,h2.topic-title ~ p:has(> strong),.forum-moderateurs{display:none}
}

/* Menus déroulants (raccourcis, notifications, profil) */
.dropdown .pointer,.dropdown .pointer-inner{display:none}
.dropdown .dropdown-contents{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);color:var(--text);padding:6px}
.dropdown li{border-top-color:var(--border);font:500 .85rem/1.4 var(--body)}
.dropdown li.separator{border-top-color:var(--border)}
.dropdown-contents a,.dropdown-contents a span{color:var(--text)}
.dropdown-contents a:hover{background:var(--surface-2);border-radius:8px}
.dropdown-extended .header,.dropdown-extended .footer{background:var(--surface-2);color:var(--text);border-color:var(--border);font:600 .7rem/2.4 var(--mono);text-transform:uppercase;letter-spacing:.08em;border-radius:8px}
.dropdown-extended ul li{border-color:var(--border)}
.dropdown-extended ul li:hover,.notification_list li.bg2{background:var(--primary-soft)}
.notification-title,.notification-reference{color:var(--text)}
.notification-time{color:var(--muted);font-family:var(--mono)}

/* ---------- C3. Barres d'action, boutons, pagination ---------- */
.action-bar{font-size:.85rem;margin:14px 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.action-bar > *{float:none!important}
.action-bar .pagination{margin-left:auto}
.action-bar .search-box{margin:0}
p.right.time,.page-body > p.right{font:500 .72rem/1.6 var(--mono);color:var(--muted)}

.button,a.button1,input.button1,a.button2,input.button2,input.button3{font:600 .85rem/1 var(--body);height:38px;padding:0 14px;border-radius:99px;border:1px solid var(--border);background:var(--surface);background-image:none;box-shadow:none;color:var(--text);display:inline-flex;align-items:center;justify-content:center;gap:6px;text-shadow:none}
input.button1,input.button2,input.button3{display:inline-block;width:auto!important}
.button:hover,.button:focus,a.button1:hover,input.button1:hover,a.button2:hover,input.button2:hover,input.button3:hover{border-color:var(--primary);background:var(--surface);background-image:none;color:var(--text);text-shadow:none}
/* prosilver colore l'icône en bleu au survol (.button:hover .icon) : elle garde la couleur du texte */
.button .icon,.button-secondary,.button:hover .icon,.button:focus .icon,.button-secondary:hover,.button-secondary:focus{color:currentColor}
.button-icon-only{width:38px;padding:0}
/* Actions principales : Nouveau sujet, Répondre, Nouveau message privé (mode=compose dans la barre d'action,
   pas Citer ni Transférer d'un MP), Envoyer */
a.button[href*="posting.php?mode=post"],a.button[href*="posting.php?mode=reply"],.action-bar a.button[href*="mode=compose"],input.button1{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}
a.button[href*="posting.php?mode=post"]:hover,a.button[href*="posting.php?mode=reply"]:hover,.action-bar a.button[href*="mode=compose"]:hover,input.button1:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:var(--on-primary)}
/* Prévisualiser : button1 chez prosilver comme Envoyer ; une seule action principale en vert plein */
input.button1[name="preview"]{background:var(--surface);border-color:var(--border);color:var(--text)}
input.button1[name="preview"]:hover{background:var(--surface);border-color:var(--primary);color:var(--text)}
.dropdown-select{padding-right:10px}
.caret{border-color:var(--border)}

/* Champs */
.inputbox,input.inputbox,textarea.inputbox,select{background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text);font:400 .95rem/1.4 var(--body)}
.inputbox:hover,.inputbox:focus{border-color:var(--primary)}
/* Texte indicatif : #333 chez prosilver, illisible en sombre (masqué au focus par prosilver, inchangé) */
.inputbox::placeholder,.inputbox::-webkit-input-placeholder{color:var(--muted)}
.search-box .inputbox{height:38px;padding:0 14px;border-radius:99px 0 0 99px;border-right:0}
.search-box .button-search,.search-box .button-search-end{border-radius:0;height:38px;width:38px;padding:0}
.search-box .button-search-end{border-radius:0 99px 99px 0}

/* Pagination : puces comme les filtres du site */
.pagination{font:600 .72rem/1 var(--mono);color:var(--muted)}
.pagination > ul{display:inline-flex;gap:4px;margin-left:8px}
.pagination li a,.pagination li span{min-width:32px;height:32px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border);background:var(--surface);background-image:none;color:var(--text);font:600 .75rem/1 var(--mono);box-shadow:none}
.pagination li a:hover{border-color:var(--primary);background:var(--surface);color:var(--text)}
/* Page active : prosilver la pose en inline-block, 13 px / 1.4 (chiffre collé en haut de la pastille) */
.pagination li.active span{display:inline-flex;font:600 .75rem/1 var(--mono);background:var(--text);border-color:var(--text);color:var(--bg)}
.pagination li.ellipsis span{border:0;background:none;min-width:0}
.pagination .arrow a{border-color:var(--border)}
/* Mobile : les sujets de match dépassent souvent 80 pages ; la liste (saut de page, précédent, 1 … 82 83 84 85 86
   … dernière, suivant) ne tenait pas sur une ligne et élargissait la page. Elle reste sur une ligne, en cases
   plus compactes, réduite à : première page, page en cours et ses deux voisines, dernière page (1 … 84 [85] 86),
   et sous 360 px à la première, la page en cours et la dernière (1 … [85] 86). Jamais masqués : flèches et saut
   de page. Première page = celle qui suit la flèche précédent ou le saut de page ; dernière = celle qui précède
   la flèche suivant, ou la dernière case. Là où des numéros disparaissent sans « … » de phpBB (juste après la
   première page ou juste avant la dernière), le premier ou le dernier numéro masqué s'affiche en « … ».
   !important : prosilver pose display:inline-block!important sur chaque case (common.css). Pas de :has() dans
   un :has() : le navigateur ignorerait toute la règle */
@media (max-width:700px){
  .action-bar .pagination{max-width:100%;min-width:0}
  .action-bar .pagination > ul{margin-left:0}
  .action-bar .pagination > ul > li > a,.action-bar .pagination > ul > li:not(.ellipsis) > span{box-sizing:border-box;min-width:34px;height:34px;padding:0 6px}
  .action-bar .pagination > ul > li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next),.active + li,:has(+ li.active)){display:none!important}
  .action-bar .pagination > ul > li:is(.previous,.page-jump) + li:not(.arrow,.ellipsis,.active) + li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next),.active + li,:has(+ li.active)),
  .action-bar .pagination > ul > li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next),.active + li,:has(+ li.active)):is(:has(+ li:last-child:not(.ellipsis,.active)),:has(+ li:not(.ellipsis) + li.next)){display:inline-flex!important;align-items:center;padding:0 4px;color:var(--muted)}
  .action-bar .pagination > ul > li:is(.previous,.page-jump) + li:not(.arrow,.ellipsis,.active) + li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next),.active + li,:has(+ li.active)) > a,
  .action-bar .pagination > ul > li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next),.active + li,:has(+ li.active)):is(:has(+ li:last-child:not(.ellipsis,.active)),:has(+ li:not(.ellipsis) + li.next)) > a{display:none}
  .action-bar .pagination > ul > li:is(.previous,.page-jump) + li:not(.arrow,.ellipsis,.active) + li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next),.active + li,:has(+ li.active))::before,
  .action-bar .pagination > ul > li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next),.active + li,:has(+ li.active)):is(:has(+ li:last-child:not(.ellipsis,.active)),:has(+ li:not(.ellipsis) + li.next))::before{content:"…"}
}
@media (max-width:360px){
  .action-bar .pagination > ul > li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next)){display:none!important}
  .action-bar .pagination > ul > li:is(.previous,.page-jump) + li:not(.arrow,.ellipsis,.active) + li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next)),
  .action-bar .pagination > ul > li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next)):is(:has(+ li:last-child:not(.ellipsis,.active)),:has(+ li:not(.ellipsis) + li.next)){display:inline-flex!important;align-items:center;padding:0 4px;color:var(--muted)}
  .action-bar .pagination > ul > li:is(.previous,.page-jump) + li:not(.arrow,.ellipsis,.active) + li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next)) > a,
  .action-bar .pagination > ul > li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next)):is(:has(+ li:last-child:not(.ellipsis,.active)),:has(+ li:not(.ellipsis) + li.next)) > a{display:none}
  .action-bar .pagination > ul > li:is(.previous,.page-jump) + li:not(.arrow,.ellipsis,.active) + li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next))::before,
  .action-bar .pagination > ul > li:not(.arrow,.ellipsis,.page-jump,.active,:first-child,.previous + li,.page-jump + li,:last-child,:has(+ li.next)):is(:has(+ li:last-child:not(.ellipsis,.active)),:has(+ li:not(.ellipsis) + li.next))::before{content:"…"}
}

/* ---------- C4. Listes de forums et de sujets ---------- */
.forabg,.forumbg{background:var(--surface);background-image:none;border:1px solid var(--border);border-radius:16px;padding:0;margin:0 0 20px;overflow:hidden;box-shadow:var(--shadow)}
.forabg .inner,.forumbg .inner{padding:0}
ul.topiclist li.header{background:var(--surface-2);border:0}
ul.topiclist li.header dl{padding:10px 16px 8px}
/* Marges verticales seulement : la marge droite négative du dt réserve la place des colonnes */
ul.topiclist li.header dt,ul.topiclist li.header dd{font:600 .64rem/1.6 var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-top:0;margin-bottom:0;border:0}
ul.topiclist li.header dt .list-inner{padding-left:0}
/* Catégorie (accueil) : bandeau vert profond, titre en capitales comme les sections du site */
.forabg ul.topiclist li.header{background:var(--hero)}
.forabg ul.topiclist li.header dl{padding:16px 16px 12px}
.forabg ul.topiclist li.header dt,.forabg ul.topiclist li.header dd{color:var(--hero-accent);align-self:end}
.forabg ul.topiclist li.header dt .list-inner a{font:800 1.45rem/1.05 var(--display);text-transform:uppercase;letter-spacing:.02em;color:#fff;text-wrap:balance}
.forabg ul.topiclist li.header dt .list-inner a:hover{color:var(--neon)}
.forabg ul.topiclist li.header dd{padding-top:12px}

ul.topiclist li.row{background:var(--surface);border:0;border-top:1px solid var(--border)}
ul.topiclist li.row:first-child{border-top:0}
/* Alternance des lignes de sujets et des messages : une sur deux (bg2, posée par phpBB) teintée du vert de la palette, blanc /
   vert pâle en clair, charbon / charbon vert en sombre. --alterne règle l'intensité, ici seulement ; --alterne-fort, plus
   marqué, sert au survol et aux citations des messages teintés, qui se confondraient sinon avec le fond */
:root{--alterne:10%;--alterne-fort:calc(var(--alterne) + 7%)}
ul.topiclist li.row.bg2{background:color-mix(in srgb,var(--primary) var(--alterne),var(--surface))}
ul.topiclist li.row:hover,ul.topiclist li.row.bg2:hover{background:color-mix(in srgb,var(--primary) var(--alterne-fort),var(--surface))}
/* Annonces d'un forum, repliables : les vrais sujets arrivent plus vite. data-annonces sur <html> (posé avant
   l'affichage par overall_header_head_append.html, absent sans JavaScript : annonces ouvertes) ; bouton créé par
   overall_footer_body_after.html, dont la zone cliquable couvre toute la barre */
:root[data-annonces="replie"] .forumbg.announcement ul.topics,
:root[data-annonces="replie"] .forumbg.announcement li.header dd{display:none}
.forumbg.announcement ul.topiclist li.header:has(.annonces-bascule){position:relative}
.forumbg.announcement ul.topiclist li.header:has(.annonces-bascule):hover{background:var(--primary-soft)}
.annonces-bascule{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:0;margin:0;font:600 .74rem/1.6 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text);cursor:pointer}
.annonces-bascule::after{content:"";position:absolute;inset:0}
.annonces-bascule:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.annonces-bascule .icon{font-size:.7rem;color:inherit;transition:transform .15s}
:root[data-annonces="ouvert"] .annonces-bascule .icon{transform:rotate(180deg)}
.annonces-bascule__nonlues{background:var(--live);color:var(--on-primary);border-radius:99px;padding:2px 8px;font:600 .62rem/1.3 var(--mono);text-transform:none;letter-spacing:0}
ul.topiclist li.row dl{margin:0;display:flow-root;padding:6px 0}
ul.topiclist li.row dt .list-inner{padding:8px 0 8px 60px;font-size:.9rem;color:var(--muted)}
/* Pas de padding-bottom sur les dd : prosilver égalise la hauteur des colonnes par padding-bottom:999px
   et margin-bottom:-995px */
ul.topiclist li.row dd{border:0;padding-top:8px;color:var(--muted)}
ul.topiclist dd.topics,ul.topiclist dd.posts,ul.topiclist dd.views{font:600 .85rem/1.6 var(--mono);font-variant-numeric:tabular-nums;color:var(--text)}
ul.topiclist dd.lastpost{font-size:.8rem;line-height:1.45}
ul.topiclist dd.lastpost > span{padding-right:12px;display:block}
ul.topiclist dd.lastpost time,ul.topiclist dd.lastpost > span > br + time{font:500 .7rem/1.6 var(--mono);color:var(--muted)}
a.lastsubject{font-weight:600;color:var(--text)}
a.lastsubject:hover{color:var(--primary)}
a.forumtitle,a.topictitle{font:700 1.02rem/1.3 var(--body);color:var(--text)}
a.forumtitle:hover,a.topictitle:hover{color:var(--primary)}
dl.row-item[class*="_unread"] a.forumtitle,dl.row-item[class*="_unread"] a.topictitle{font-weight:800}
a.subforum{color:var(--text)}
a.subforum:before{display:none}
.topic-poster,.list-inner .responsive-show{font-size:.8rem;color:var(--muted)}
.topic-poster time{font-family:var(--mono);font-size:.72rem}
ul.topiclist li.row strong{color:var(--text)}
.row .pagination{float:right;margin-top:-2px}
/* Pastilles des lignes : liens en display:inline chez prosilver (hauteur ignorée, pastilles de 16 px) */
.row .pagination li a,.row .pagination li span{display:inline-flex;min-width:26px;height:26px;font-size:.68rem;padding:0 6px}

/* Icônes de ligne : carré aux angles arrondis (poteau) + pictogramme, à la place des images de prosilver.
   Lu : contour, pictogramme gris ; non lu : vert plein ; annonce : laiton ; verrouillé : cadenas. */
dl.row-item,dl.row-item dt{background-image:none!important}
dl.row-item{position:relative;
  --picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8h12M6 12h12M6 16h8'/%3E%3C/svg%3E");
  --case:var(--surface-2); --trait:var(--muted)}
ul.topiclist li.row dl.row-item::before,ul.topiclist li.row dl.row-item::after{content:"";position:absolute;left:12px;top:14px;width:34px;height:34px;border-radius:10px}
ul.topiclist li.row dl.row-item::before{background:var(--case);border:1px solid var(--border)}
ul.topiclist li.row dl.row-item::after{background:var(--trait);-webkit-mask:var(--picto) center/18px no-repeat;mask:var(--picto) center/18px no-repeat}
dl.row-item[class*="forum_"]{--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v11H9l-5 4z'/%3E%3C/svg%3E")}
dl.row-item[class*="sticky_"]{--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4h6l-1 6 3 3H7l3-3zM12 13v7'/%3E%3C/svg%3E")}
dl.row-item[class*="announce_"],dl.row-item[class*="global_"]{--case:var(--heritage-soft);--trait:var(--heritage);--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10v4h3l7 4V6l-7 4zM18 9.5a3.5 3.5 0 0 1 0 5'/%3E%3C/svg%3E")}
dl.row-item[class*="_hot"]{--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3c.5 3.5 5 5.5 5 10a5 5 0 0 1-10 0c0-2.5 1.5-4 2.5-5.5.5 1.5 1.5 2.5 2.5 3 .5-2.5 0-5-0-7.5z'/%3E%3C/svg%3E")}
dl.row-item.forum_link{--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M9 7h8v8'/%3E%3C/svg%3E")}
dl.row-item.topic_moved{--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E")}
dl.row-item[class*="_locked"]{--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='9' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E")}
dl.row-item[class*="_unread"]{--case:var(--primary);--trait:var(--on-primary)}
dl.row-item[class*="announce_"][class*="_unread"],dl.row-item[class*="global_"][class*="_unread"]{--case:var(--heritage);--trait:var(--on-primary)}
ul.topiclist li.row dl.row-item[class*="_unread"]::before{border-color:transparent}
/* Sujet où le membre a écrit (_mine) : petit point laiton sur la case */
ul.topiclist li.row dl.row-item[class*="_mine"] dt::before{content:"";position:absolute;left:40px;top:10px;width:9px;height:9px;border-radius:50%;background:var(--laiton);border:2px solid var(--surface);z-index:1}
/* Icône « dernier message » de prosilver */
dd.lastpost .icon,.topic-poster .icon{color:var(--muted)}
.icon.icon-red{color:var(--live)}
/* Lien « marquer » et titres de section (Annonces / Sujets) sur mobile */
ul.topiclist dd.mark{padding:12px 0}

@media (max-width:700px){
  .forabg,.forumbg{border-radius:14px;margin-left:0;margin-right:0}
  ul.topiclist li.header dt{text-align:left;font-size:.64rem}
  .forabg ul.topiclist li.header dt .list-inner a{font-size:1.25rem}
  ul.topiclist li.row dt .list-inner{padding:12px 12px 12px 58px}
  .row .pagination{float:none;margin-top:6px}
}

/* ---------- C5. Messages ---------- */
/* Message : en-tête compact sur deux lignes, à toutes les largeurs (les sujets de match alignent des
   centaines de messages courts) :
     [avatar] Pseudo   Messages : 18057            [boutons]
              sam. 17 oct. 2026 10:37
     Texte du message, aligné sur le pseudo (à partir de 701 px)
   La colonne de profil de prosilver devient une grille (dt en display:contents) ; la date (.author, dans
   .postbody) et les boutons sont placés en absolu par rapport au message. */
.post{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px;margin-bottom:10px;box-shadow:none;background-image:none}
.post.bg1,.post.bg2,.post.bg3{background-color:var(--surface)}
/* Un message sur deux (bg2, posé par phpBB) : même teinte que les lignes des listes de sujets (--alterne, C4) */
.post.bg2{background-color:color-mix(in srgb,var(--primary) var(--alterne),var(--surface))}
/* Bandeau « En ligne » de prosilver (.online, posé par la feuille de langue fr/stylesheet.css) : sans lui, comme
   dans la maquette ; le raccourci background de .post le répéterait sur tout le message */
.post.online,.panel.online{background-image:none}
/* Profil : avatar au-dessus des détails sous 700 px, sans marge chez prosilver */
.avatar-rank-container{margin-bottom:12px}
.post:target{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}
/* Message visé par un lien (#p123 : notification, dernier message) : prosilver force le texte en noir */
.post:target .content,.post:target h3 a{color:var(--text)}
hr.divider{display:none}
.post .postprofile,.post .postbody{float:none;width:auto;min-height:0;border:0;padding:0;margin:0;position:static}
.post .postprofile{display:grid;grid-template-columns:44px auto 1fr;grid-template-rows:22px 22px;column-gap:12px;align-items:center;padding-right:270px;margin-bottom:10px;overflow:visible;color:var(--muted)}
.postprofile dt{display:contents}
.postprofile dt,.postprofile dd{margin:0}
.postprofile .avatar-container{grid-column:1;grid-row:1 / span 2;margin:0}
.postprofile .avatar-container::after{display:none}
.postprofile img.avatar{width:44px!important;height:44px!important;max-height:none;border-radius:12px;object-fit:cover;display:block;margin:0}
/* Membre sans avatar : case aux couleurs du site avec le cadre « poteaux carrés » */
.postprofile dt:not(.has-avatar)::before{content:"";grid-column:1;grid-row:1 / span 2;width:44px;height:44px;border-radius:12px;background:var(--surface-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%238A958A' d='M5 5h14v4H5zM5 5h4v14H5zM15 5h4v14h-4z'/%3E%3C/svg%3E") center/24px no-repeat}
.postprofile .username,.postprofile .username-coloured{grid-column:2;grid-row:1;font:700 .95rem/1.25 var(--body);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.postprofile dd{display:none;font:500 .68rem/1.6 var(--mono);color:var(--muted)}
.postprofile dd.profile-posts{display:block;grid-column:3;grid-row:1;white-space:nowrap}
.postprofile dd strong{font-weight:500;color:var(--muted)}
.postprofile dd a{color:var(--muted)}

.postbody{color:var(--text)}
@media (min-width:701px){.post .postbody{padding-left:56px}}
/* Titres de message ailleurs (résultats de recherche, MP, modération) : police du texte, pas celle des
   titres de bloc que .panel h3 donne aux messages placés dans un panneau */
.postbody h3,.panel .postbody h3{font:700 1rem/1.3 var(--body);text-transform:none;letter-spacing:0;border:0;margin-bottom:6px}
.postbody h3 a{color:var(--text)}
.postbody h3 a:hover{color:var(--primary)}
/* Titre de chaque message dans un sujet : sur sa propre ligne, sous la date, à la même taille qu'elle, aligné sur elle et
   sur le pseudo. phpBB préfixe les réponses de « Re: », retiré par overall_footer_body_after.html */
/* !important : prosilver pose ces marges en !important (content.css) ; -6 px rapprochent le titre de la date */
.section-viewtopic .postbody h3,.section-viewtopic .postbody h3.first{float:none;font:500 .72rem/1.4 var(--body);padding:0;margin-top:-6px!important;margin-bottom:8px!important}
.section-viewtopic .postbody h3 a{color:var(--muted)}
.section-viewtopic .postbody h3 a:hover{color:var(--primary)}
.postbody .author{font:500 .72rem/22px var(--mono);color:var(--muted);margin:0;padding:0;border:0}
.section-viewtopic .postbody .author{position:absolute;top:38px;left:72px}
.section-viewtopic .postbody .author .responsive-hide{display:none}
.postbody .author .icon{color:var(--muted)}
/* Messages non lus (comme l'ancien forum) : phpBB pose .unreadpost sur la carte et .icon-red sur l'icône de la date ; le lien
   de cette icône porte la classe .unread sur tous les messages, lus ou non, et ne sert donc pas de repère. Tout en vert
   (demande des membres) : icône, filet à gauche de la carte et pastille « Non lu » après la date ; messages lus : icône grise */
.postbody .author .icon.icon-red{color:var(--primary)}
.post.unreadpost{box-shadow:inset 4px 0 0 var(--primary)}
.post.unreadpost:target{box-shadow:inset 4px 0 0 var(--primary),0 0 0 3px var(--primary-soft)}
.post.unreadpost .postbody .author::after{content:"Non lu";display:inline-block;margin-left:8px;background:var(--primary);color:var(--on-primary);border-radius:99px;padding:0 7px;font:600 .62rem/1.6 var(--mono);vertical-align:1px}
@media (max-width:359px){.post.unreadpost .postbody .author::after{display:none}} /* plus la place après la date */
.post .post-buttons{position:absolute;top:14px;right:14px;margin:0}
/* Largeur maximale = place réservée par le padding-right de .postprofile : six boutons (43 px chacun, ceux
   d'un modérateur), trois sous 700 px. Au-delà, forum_fn.js range tous les boutons dans le menu « … » (il
   ne garde Modifier et Citer que si leurs li portent edit-icon / quote-icon, ce que prosilver 3.3 ne fait
   pas). Celle de prosilver (.hasjs … 40 %) ne fait jamais déborder la liste placée en absolu : elle
   recouvrait alors le pseudo et la date. */
.hasjs .post .post-buttons{max-width:260px}
.post-buttons .button{height:32px;width:32px;border-radius:10px}
.post-buttons .button .icon{color:var(--muted)}
.post-buttons .button:hover .icon{color:var(--primary)}

.content{font:400 1rem/1.65 var(--body);color:var(--text);font-family:var(--body);min-height:0;overflow-wrap:anywhere}
/* .content sert aussi hors des messages (connexion, inscription, FAQ, aide) : prosilver y agrandit p, li et dl
   de 1,2 em ; base de 12 px. Texte des messages : 16 px, taille de base du site, y compris dans un panneau (MP,
   modération) ; prosilver et la maquette en restaient à 1,3 em (13 px), jugé trop petit par les membres */
.panel .content{font-size:.75rem}
.postbody .content{font-size:1rem}
.content a.postlink,.signature a.postlink{color:var(--primary);border-bottom:0;text-decoration:underline;text-underline-offset:2px}
.content a.postlink:hover{color:var(--primary-hover)}
.content img.postimage,.signature img.postimage{max-width:100%;height:auto;border-radius:10px}
.content img.smilies{vertical-align:-3px}
.content ol,.content ul{margin:.5em 0 .5em 1.4em}
.content strong{font-weight:700}

/* Citations : filet vert, fond doux, auteur et date en mono */
.content blockquote{background:var(--primary-soft);border:0;border-left:3px solid var(--primary);border-radius:0 12px 12px 0;margin:12px 0;padding:10px 14px;font-size:.95em;overflow:hidden}
.content blockquote blockquote{background:var(--surface);border-left-color:var(--border);margin:8px 0 10px;font-size:1em}
.post.bg2 .content blockquote{background:color-mix(in srgb,var(--primary) var(--alterne-fort),var(--surface))}
.post.bg2 .content blockquote blockquote{background:var(--surface)}
.post.bg2 .content blockquote cite{color:var(--text)} /* gris secondaire trop peu contrasté sur ce fond, en sombre */
.content blockquote cite{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px;font:600 .7rem/1.6 var(--mono);color:var(--muted);margin-bottom:4px}
.content blockquote cite a{color:var(--text)}
.content blockquote cite .icon{color:var(--muted)}
.content blockquote cite > span:last-child{margin-left:auto;font-weight:500}

/* Code : bloc charbon et néon, comme les éléments fixes du site */
.content .codebox{background:var(--charbon);border:0;border-radius:12px;padding:0;margin:12px 0;overflow:hidden}
.content .codebox p{font:600 .66rem/1 var(--mono)!important;text-transform:uppercase;letter-spacing:.1em;color:#8A958A;border-bottom:1px solid #2A332C;padding:10px 14px;margin:0}
.content .codebox p a{color:var(--neon)}
.content .codebox code{color:var(--neon);font:500 .85rem/1.6 var(--mono);padding:12px 14px;margin:0;max-height:320px}

/* Couleurs saisies par les membres (messages et signatures) trop sombres sur fond charbon : noir et gris
   foncé ramenés au texte, verts foncés au vert du thème, rouges foncés au rouge du thème (les autres
   couleurs restent telles quelles) */
:root[data-theme="dark"] :is(.content,.signature) span:is([style^="color:#000"],[style^="color:#333"],[style^="color:black"]){color:var(--text)!important}
:root[data-theme="dark"] :is(.content,.signature) span:is([style^="color:#0B7A43"],[style^="color:#006400"],[style^="color:#008000"],[style^="color:green"]){color:var(--primary)!important}
:root[data-theme="dark"] :is(.content,.signature) span:is([style^="color:#AA0000"],[style^="color:#800000"],[style^="color:#8B0000"],[style^="color:darkred"]){color:var(--live)!important}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) :is(.content,.signature) span:is([style^="color:#000"],[style^="color:#333"],[style^="color:black"]){color:var(--text)!important}
  :root:not([data-theme="light"]) :is(.content,.signature) span:is([style^="color:#0B7A43"],[style^="color:#006400"],[style^="color:#008000"],[style^="color:green"]){color:var(--primary)!important}
  :root:not([data-theme="light"]) :is(.content,.signature) span:is([style^="color:#AA0000"],[style^="color:#800000"],[style^="color:#8B0000"],[style^="color:darkred"]){color:var(--live)!important}
}

/* Couleurs de groupe (définies dans l'ACP) ramenées aux tokens : modérateurs en vert, administrateurs en rouge.
   a[style] : légendes des groupes (« Qui est en ligne », l'équipe), liens sans la classe username-coloured ;
   les couleurs des BBCodes sont sur des span, jamais sur des liens. */
.username-coloured[style*="#00AA00"],a[style*="#00AA00"]{color:var(--primary)!important}
.username-coloured[style*="#AA0000"],a[style*="#AA0000"]{color:var(--live)!important}

.notice{font:500 .72rem/1.5 var(--mono);color:var(--muted);border-top:1px dashed var(--border);margin-top:14px;padding-top:8px}
/* Signature : nettement détachée du message, filet plein en gris de texte atténué (mélangé au transparent pour
   rester juste sur les messages blancs comme teintés, en clair comme en sombre) */
.signature{border-top:1px solid color-mix(in srgb,var(--muted) 40%,transparent);margin-top:28px;padding-top:12px;font-size:.85rem;line-height:1.5;color:var(--muted)}
.back2top{display:none}

@media (max-width:700px){
  .post{border-radius:14px;padding:14px;margin-left:0;margin-right:0}
  .panel{margin-left:0;margin-right:0} /* -5 px chez prosilver : la réponse rapide débordait des messages */
  .post .postprofile{grid-template-columns:40px 1fr;padding-right:118px}
  .postprofile img.avatar,.postprofile dt:not(.has-avatar)::before{width:40px!important;height:40px!important;border-radius:11px}
  .postprofile dd.profile-posts{display:none}
  .section-viewtopic .postbody .author{top:36px;left:66px}
  .section-viewtopic .postbody h3,.section-viewtopic .postbody h3.first{padding-left:52px}
  /* Boutons plus petits et plus haut : ils libèrent la ligne de la date (à 36 px du haut) ; trois au plus */
  .post .post-buttons{top:6px;right:10px}
  .hasjs .post .post-buttons{max-width:120px}
  .post-buttons .button{height:28px;width:28px;border-radius:9px}
}

/* ---------- C6. Panneaux, formulaires, blocs de l'accueil, pied ---------- */
.panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;color:var(--text);padding:18px}
.panel h2,.panel h3,h2.quickreply-title{font:800 1.4rem/1 var(--display);text-transform:uppercase;letter-spacing:.02em;color:var(--text);border:0}
/* Libellés : #425067 chez prosilver, peu lisible en sombre ; ceux des formulaires en colonnes (dt) en texte */
label{color:var(--muted)}
fieldset dt label,fieldset dl{color:var(--text)}
/* Connexion rapide de l'accueil (invités) : fond #F2F3F3 chez prosilver, blanc en sombre */
fieldset.quick-login input.inputbox{background-color:var(--surface)}
.stat-block{margin-top:28px}
.stat-block h3{font:600 .66rem/1 var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);border:0;margin:0 0 8px}
.stat-block h3 a{color:inherit}
.stat-block p{font-size:.85rem;line-height:1.6;color:var(--text)}
.jumpbox .dropdown-trigger{color:var(--text)}
/* Menu « Aller à » : catégorie en bandeau bleu et forums sur bleu pâle chez prosilver (colours.css), illisibles
   en sombre (texte clair sur bleu pâle). Catégorie en vert profond comme sur l'accueil, forums sur le fond du
   menu, survol vert pâle */
.jumpbox .dropdown li{border-top-color:var(--border)}
.jumpbox .dropdown-contents a{border-radius:8px;box-sizing:border-box}
.jumpbox .dropdown-contents a.jumpbox-cat-link{background:var(--hero);border-top-color:var(--hero);color:var(--on-hero);font-weight:700}
.jumpbox .dropdown-contents a.jumpbox-cat-link span{color:inherit}
.jumpbox .dropdown-contents a.jumpbox-cat-link:hover{background:var(--primary);border-top-color:var(--primary);color:var(--on-primary)}
.jumpbox .dropdown-contents a.jumpbox-forum-link,.jumpbox .dropdown-contents a.jumpbox-sub-link{background:transparent}
.jumpbox .dropdown-contents a.jumpbox-forum-link:hover,.jumpbox .dropdown-contents a.jumpbox-sub-link:hover{background:var(--primary-soft);color:var(--text)}
/* Mobile : prosilver aligne le menu sur le bord droit du bouton (à gauche de l'écran), il déborde, et
   forum_fn.js recale alors la liste seule, loin à droite et sur 140 px. Menu ancré sous le bouton, côté gauche,
   assez large pour les noms de forums ; !important contre les décalages posés en style par forum_fn.js */
@media (max-width:700px){
  .jumpbox .dropdown{left:0!important;right:auto!important;margin-left:0!important;width:min(300px,calc(100vw - 24px))}
  .jumpbox .dropdown .dropdown-contents{left:0!important;margin-left:0!important}
}
a.arrow-left,a.arrow-right{color:var(--muted);font-size:.85rem}

.page-footer .navbar{background:transparent;border-top:1px solid var(--border);border-radius:0;padding:6px 0;margin-top:24px}
.copyright{font:500 .68rem/1.7 var(--mono);color:var(--muted);padding:16px 0 32px}
.copyright a{color:var(--muted);text-decoration:underline}

/* ---------- C7. Pages hors maquette (écriture, sondage, recherche, membres, panneaux, aide) ----------
   Couleurs fixes de prosilver (colours.css) ramenées aux tokens, avec des sélecteurs au moins aussi précis
   que les siens. Aucune nouvelle couleur. */
h2,.content h2,.panel h2,.panel-container h2{color:var(--text);border-bottom-color:var(--border)}
hr,.panel-container h3,.panel-container hr,.cp-menu hr{border-color:var(--border)}
dl.details dt,dl.faq dt,table.info tbody th{color:var(--text)}
dl.details dd{color:var(--muted)}
.error{color:var(--live)}
.posthilit{background-color:var(--heritage-soft);color:var(--text)}
div.rules,p.post-notice{background-color:var(--heritage-soft);background-image:none;color:var(--text)}
.current{color:var(--text)!important}

/* Fonds alternés des tableaux et des panneaux (bg1 / bg2 / bg3 bleutés chez prosilver) */
.bg1,.bg2{background-color:var(--surface)}
.bg3,.ucprowbg,.fieldsbg{background-color:var(--surface-2)}
table.zebra-list tr:nth-child(odd) td,ul.zebra-list li:nth-child(odd){background-color:var(--surface)}
table.zebra-list tr:nth-child(even) td,ul.zebra-list li:nth-child(even){background-color:var(--surface-2)}
.panel-container .panel,.cp-main .pm,.cp-main .pm-message{background-color:var(--surface);border-color:var(--border)}
.cp-mini{background-color:var(--surface-2)}
dl.mini dt{color:var(--muted)}

/* Tableaux (membres, l'équipe, qui est en ligne, panneaux) : en-têtes comme ceux des listes de sujets */
table.table1 thead th,.panel-container table.table1 thead th{background:var(--surface-2);color:var(--muted);border-bottom-color:var(--border);font:600 .64rem/1.6 var(--mono);text-transform:uppercase;letter-spacing:.12em;padding:10px 8px}
table.table1 thead th a{color:inherit}
table.table1 tbody tr{border-color:var(--border)}
table.table1 tbody tr:hover,table.table1 tbody tr.hover{background-color:var(--primary-soft);color:var(--text)}
table.table1 td{color:var(--text)}
table.table1 tbody td{border-top-color:var(--border)}
table.table1 tbody th{border-bottom-color:var(--border);color:var(--text);background-color:var(--surface)}
.panel-container .panel li.row{border-bottom-color:var(--border);border-top-color:transparent}
ul.cplist{border-top-color:var(--border)}
.panel-container .panel li.header dd,.panel-container .panel li.header dt{color:var(--muted)}

/* Onglets (panneaux, profil, modération) */
.tabs .tab > a{background:var(--surface-2);color:var(--muted);border-color:var(--border)}
.tabs .tab > a:hover{background:var(--surface);color:var(--text)}
.tabs .activetab > a,.tabs .activetab > a:hover{background:var(--surface);background-image:none;border-color:var(--border);box-shadow:none;color:var(--text)}
.minitabs .tab > a{background-color:var(--surface-2)}
.minitabs .activetab > a,.minitabs .activetab > a:hover{background-color:var(--surface);color:var(--text)}
.responsive-tab .responsive-tab-link:before{border-color:var(--muted)}
.responsive-tab .responsive-tab-link:hover:before{border-color:var(--primary)}

/* Menu latéral des panneaux (utilisateur, modération) ; #navigation : règle de prosilver sous 900 px */
.navigation a,.rtl .navigation a,#navigation a,.rtl #navigation a{background:var(--surface-2);color:var(--text)}
.navigation a:hover,#navigation a:hover{background:var(--primary-soft);color:var(--primary)}
.navigation .active-subsection a,.navigation .active-subsection a:hover,#navigation .active-subsection a{background:var(--surface);color:var(--primary)}

/* Sondage : barres au vert du thème */
fieldset.polls dl{border-top-color:var(--border);color:var(--muted)}
fieldset.polls dl.voted{color:var(--text)}
fieldset.polls dd div{color:var(--on-primary)}
.pollbar1,.pollbar2,.pollbar3,.pollbar4,.pollbar5{background-color:var(--primary);border-bottom-color:var(--primary-hover);border-right-color:var(--primary-hover)}

/* Messages privés : marques de couleur des listes et de la légende */
.pmlist li.pm_message_reported_colour,.pm_message_reported_colour{border-left-color:var(--live);border-right-color:var(--live)}
.pmlist li.pm_marked_colour,.pm_marked_colour{border-color:var(--heritage)}
.pmlist li.pm_replied_colour,.pm_replied_colour{border-color:var(--border)}
.pmlist li.pm_friend_colour,.pm_friend_colour{border-color:var(--primary)}
.pmlist li.pm_foe_colour,.pm_foe_colour{border-color:var(--muted)}

/* Formulaires */
dd label,fieldset dl:hover dt label{color:var(--text)}
.message-box textarea{color:var(--text)}
.gallery label{background:var(--surface);border-color:var(--border)}
.gallery label:hover{background-color:var(--surface-2)}
/* Champs de recherche (barres d'action, recherche, modération) : bordure #C7C3BF chez prosilver */
.search-box .inputbox,.search-box .inputbox:hover{border-color:var(--border)}
.search-box .inputbox:focus{border-color:var(--primary)}
/* Largeurs à 320 px : un fieldset refuse par défaut de rétrécir sous son contenu (min-width:min-content),
   ce qui faisait déborder les actions des dossiers de MP et les liens précédent / suivant ; listes
   déroulantes et image du captcha (inscription) ramenées à la largeur disponible */
fieldset{min-width:0}
fieldset select{max-width:100%}
dd.captcha img{max-width:100%;height:auto}
@media (max-width:700px){
  /* « Exporter le dossier », « Déplacer vers » (MP) : libellé en bloc, pour que la liste puisse rétrécir */
  fieldset.display-actions label,fieldset.display-options label{display:block;white-space:normal}
}

/* Résultats de recherche en messages : le bloc .postprofile y porte auteur, date, forum, sujet, réponses et
   vues, sans avatar. Une ligne de méta au-dessus du message plutôt que la grille de l'en-tête compact (C5),
   et le titre du message visible (règle 5). */
.search.post .postprofile{display:block;padding-right:0;margin-bottom:8px;font:500 .72rem/1.6 var(--mono);color:var(--muted)}
.search.post .postprofile dt,.search.post .postprofile dd{display:inline;margin:0}
.search.post .postprofile dt::before{display:none}
.search.post .postprofile dd::before{content:" · "}
.search.post .postprofile dd strong{font-weight:600;color:var(--text)}
.search.post .postprofile .username,.search.post .postprofile .username-coloured{display:inline;font:700 .72rem/1.6 var(--mono)}
.search.post .postbody{padding-left:0}
.search.post .postprofile a{color:var(--text)}

/* Liste des notifications du panneau (ucp.php) : le lien entoure tout le texte, et prosilver l'agrandit en em */
/* font-size en !important chez prosilver (.notification_list p.notifications_title, 1,2 em) */
.cplist p.notifications_title{font-size:.9rem!important;line-height:1.4;color:var(--text)}
.cplist .notifications > a{color:var(--text)}
.cplist .notifications > a:hover .notifications_title{color:var(--primary)}
.cplist .notifications_reference{font-size:.85rem;color:var(--muted)}
.cplist .notifications_time{font:500 .72rem/1.6 var(--mono);color:var(--muted)}
/* « Qui est en ligne » : le titre est une phrase (« Il y a 1 utilisateur inscrit… »), plus petit qu'un titre de page */
.section-viewonline .page-body > h2{font-size:clamp(1.4rem,4vw,2rem)}
