/* Elevora CRM — tableaux-de-bord.css
   Trois écrans de pilotage repris le 25/09/2026 : la Vue d'ensemble rangée par catégorie,
   Rapports & Stats refaits, la Prospection complétée. Refonte de MISE EN PAGE, pas de la
   charte : aucune couleur nouvelle, uniquement les jetons de css/elevora.css, dans les deux
   thèmes — chaque paire texte / fond reprend une paire déjà vérifiée à 4,5:1 (textes --text,
   --text2, --text3, --accent, --red, --green, --amber sur --bg2, --bg3).

   Le modèle de lisibilité est celui que Célian a trouvé « très bien » : la fiche client
   (css/fiche-client.css) et la fenêtre de création de l'agenda — des sections titrées, des
   intitulés en petites capitales, des chiffres en chasse fixe, des filets plutôt que des
   boîtes, à plat (ni ombre ni dégradé).

   Chargé en dernier dans index.html : à spécificité égale, ces règles l'emportent sur
   css/elevora.css et css/mobile.css. */


/* ══════════════════════════════════════════════════════════════════════════════════════
   1. VUE D'ENSEMBLE — rangée par catégorie (index.html, #sec-dashboard ; js/04)
   ══════════════════════════════════════════════════════════════════════════════════════
   Quatre catégories titrées (Argent, À traiter, Activité, Répartition) au lieu d'une grille
   deux tiers / un tiers où la colonne de droite mélangeait l'argent, les projets et les
   alertes. Entre deux catégories, de l'air (32 px) et un titre ; dans une catégorie, le
   rythme serré de la refonte du 18/09 (16 px). */

#sec-dashboard > .vd{gap:var(--s6)}

/* Le sommaire : quatre liens, en tête de page. Cibles de 32 px de haut (2.5.8 : 24 px au moins). */
.vd-sommaire{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:calc(var(--s2) * -1)}
.vd-sommaire a{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border:1px solid var(--border2);border-radius:999px;
  font-size:13px;font-weight:500;color:var(--text2);text-decoration:none;background:var(--bg2);transition:background-color .15s,color .15s}
.vd-sommaire a:hover{background:var(--bg3);color:var(--text)}
.vd-sommaire a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Une catégorie : son titre, puis ses blocs. scroll-margin : le titre ne passe pas sous la
   barre du haut quand le sommaire y mène. */
.vd-sec{display:grid;gap:var(--s4);min-width:0;scroll-margin-top:84px}
.vd-sec > *{min-width:0}
.vd-sec-tete{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s2) var(--s4);flex-wrap:wrap;
  padding-bottom:var(--s3);border-bottom:1px solid var(--border)}
.vd-sec-t{margin:0;font-size:18px;font-weight:700;line-height:1.25;letter-spacing:-.01em;color:var(--text)}
/* Le focus posé par le sommaire se voit, sans cadre autour d'un titre cliqué à la souris. */
.vd-sec-t:focus{outline:none}
.vd-sec-t:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--rs)}
.vd-sec-s{margin:3px 0 0;font-size:13px;line-height:1.45;color:var(--text3)}
.vd-sec-liens{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4)}
.vd-sec-liens .vd-lien{min-height:24px}

/* Argent : le CA encaissé et le reste à encaisser, côte à côte. #kpi-reste passe en
   display:contents (règle de css/elevora.css) : sa cellule devient une cellule du bandeau.
   [P1] 02/10/2026 (point 3) : deux cases du style partagé .chiffres (css/elevora.css), séparées
   par un espace au lieu d'un filet. */
.vd-band.vd-band-argent{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
/* Le bloc de droite prend la hauteur des chiffres et de la courbe : un rectangle net, pas une
   colonne qui s'arrête à mi-hauteur. */
#vd-argent > .vd-cols{align-items:stretch}

/* Activité : trois chiffres de même rang (la grille auto-fit de .chiffres les met sur une ligne). */
.vd-band-activite:empty{display:none}

/* Prochains encaissements : un intertitre par groupe (en retard, à venir, sans échéance). */
.vd-groupe{display:flex;align-items:center;gap:6px;margin:12px 0 2px;font-size:10.5px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--text3)}
.vd-groupe:first-child{margin-top:0}
.vd-groupe-retard{color:var(--red)}
.vd-groupe-n{font:600 11px/18px var(--mono);letter-spacing:0;padding:0 6px;border-radius:8px;background:var(--bg3);color:var(--text2)}
.vd-rows > .vd-groupe + .vd-row{border-top:0;padding-top:6px}

/* À traiter : sur grand écran, les actions sur deux colonnes — la catégorie prend toute la
   largeur, une ligne de 1 100 px n'aurait été que du vide entre le libellé et ses boutons. */
@media (min-width:1181px){
  #vd-a-traiter #et-maintenant .vd-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s6)}
  #vd-a-traiter #et-maintenant .vd-rows > .vd-row:nth-child(2){border-top:0;padding-top:2px}
}

@media (max-width:900px){
  #sec-dashboard > .vd{gap:var(--s5)}
  .vd-sec-t{font-size:17px}
  .vd-sommaire a{padding:0 12px}
}
/* 560 px : l'argent s'empile, le CA d'abord ; l'activité va par deux (grille de .chiffres). */
@media (max-width:560px){
  .vd-band.vd-band-argent{grid-template-columns:minmax(0,1fr)}
}
body.density-compact #sec-dashboard > .vd{gap:var(--s5)}


/* ══════════════════════════════════════════════════════════════════════════════════════
   2. RAPPORTS & STATS — refaits (index.html, #sec-rapports ; js/18, js/19)
   ══════════════════════════════════════════════════════════════════════════════════════
   Plus de vide en haut : la période tient sur une ligne, et la première rangée porte déjà
   les deux choses qu'on vient faire ici — voir où en est l'objectif, et produire le rapport.
   Hiérarchie : un chiffre principal en grand (l'encaissé, sa jauge), les autres en bandeau
   de second rang, chacun avec sa comparaison ; les graphiques titrés, leurs valeurs en texte. */

.rp{display:grid;gap:var(--s4);min-width:0}
.rp > *{min-width:0}

/* La barre de période */
.rp-barre{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3) var(--s4)}
.rp-seg{display:inline-flex;gap:2px;padding:3px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--r)}
.rp-seg .pf-btn{height:auto;min-height:32px;padding:0 13px;font-size:13px;font-weight:500;color:var(--text2)}
.rp-seg .pf-btn:hover{color:var(--text)}
/* À plat : un fond et un filet pour l'onglet choisi, pas d'ombre ; aria-pressed le dit aussi. */
.rp-seg .pf-btn.active{background:var(--bg2);color:var(--text);font-weight:600;box-shadow:none;outline:1px solid var(--border2);outline-offset:-1px}
.rp-seg .pf-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.rp-nav{display:inline-flex;align-items:center;gap:6px}
.rp-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid var(--border2);
  border-radius:var(--r);background:var(--bg2);color:var(--text2);cursor:pointer}
.rp-nav-btn:hover{background:var(--bg3);color:var(--text)}
.rp-nav-btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed}
.rp-nav-btn[aria-disabled="true"]:hover{background:var(--bg2);color:var(--text2)}
.rp-periode{display:inline-block;min-width:118px;text-align:center;font-size:15px;font-weight:600;color:var(--text)}
.rp-periode::first-letter{text-transform:uppercase}
.rp-drapeau{display:inline-flex;align-items:center;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:3px 9px;border-radius:20px}
.rp-drapeau:empty{display:none}
.rp-drapeau-complete{color:var(--green);background:var(--green-bg)}
.rp-drapeau-encours{color:var(--amber);background:var(--amber-bg)}

/* Les cartes de la page */
.rp-carte{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:18px 20px;min-width:0}
.rp-carte.rp-flush{padding:0;overflow:hidden}
.rp-carte-tete{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;margin-bottom:14px}
.rp-flush > .rp-carte-tete{padding:18px 20px 0;margin-bottom:10px}
.rp-titre{margin:0;font-size:14.5px;font-weight:600;line-height:1.3;color:var(--text)}
.rp-sous{margin:3px 0 0;font-size:12.5px;line-height:1.45;color:var(--text3)}
.rp-sous:empty{display:none}
.rp-etiquette{margin:0;font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text3)}
.rp-note{margin:6px 0 0;font-size:12.5px;line-height:1.5;color:var(--text3)}
.rp-note b{color:var(--text);font-weight:600}
.rp-vide{margin:0;padding:6px 0;font-size:12.5px;line-height:1.5;color:var(--text3)}
.rp-flush .rp-vide{padding:6px 20px 20px}
.rp-leger{color:var(--text3);font-weight:400}

/* Première rangée : l'objectif (deux tiers), le rapport rédigé (un tiers). Les deux cartes ont
   la même hauteur ; le formulaire de l'objectif se range en bas de la sienne. */
.rp-haut{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:var(--s4);align-items:stretch}
.rp-objectif,.rp-ia{display:flex;flex-direction:column}

/* Le chiffre principal : un seul par écran, grand, dans la police du texte. */
.rp-chiffre-ligne{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px var(--s4)}
.rp-chiffre{font-size:clamp(34px,3.4vw,48px);font-weight:700;letter-spacing:-.025em;line-height:1.05;color:var(--text);white-space:nowrap}
.rp-chiffre-indispo{font-size:24px;color:var(--text2)}
.rp-comp{font-size:13px;color:var(--text3)}
.rp-vs{color:var(--text3);font-size:12.5px}
.vd-delta + .rp-vs{margin-left:2px}

/* La jauge d'objectif : la piste, le rempli, le repère du temps écoulé, puis les trois chiffres. */
.rp-jauge{margin-top:var(--s5)}
.rp-jauge-tete{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px var(--s2);margin-bottom:var(--s2)}
.rp-jauge-pct{font-size:20px;font-weight:700;color:var(--text)}
.rp-jauge-txt{font-size:13px;color:var(--text2)}
.rp-jauge-rythme{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text3)}
.rp-jauge-repere-cle{display:inline-block;width:2px;height:12px;border-radius:1px;background:var(--text2)}
.rp-jauge-piste{position:relative;height:12px;border-radius:6px;background:var(--bg4)}
.rp-jauge-rempli{position:absolute;left:0;top:0;bottom:0;border-radius:6px;background:var(--accent);min-width:3px}
.rp-jauge-ok .rp-jauge-rempli{background:var(--green)}
.rp-jauge-repere{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;border-radius:1px;background:var(--text2)}
.rp-jauge-vide{background:transparent;border:1px dashed var(--border2);margin-bottom:var(--s2)}
.rp-jauge-chiffres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s3);margin:14px 0 0;padding-top:var(--s3);border-top:1px solid var(--border)}
.rp-jauge-chiffres div{min-width:0}
.rp-jauge-chiffres dt{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text3)}
.rp-jauge-chiffres dd{margin:3px 0 0;font:600 16px var(--mono);color:var(--text);white-space:nowrap}

/* Le formulaire de l'objectif, en bas de la carte. */
.rp-objectif-form{margin-top:auto;padding-top:var(--s5)}
.rp-objectif-form label{display:block;margin-bottom:6px;font-size:12.5px;font-weight:500;color:var(--text2)}
.rp-objectif-ligne{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}
.rp-objectif-champ{display:flex;align-items:center;gap:6px;flex:1 1 150px;max-width:240px}
.rp-objectif-champ input{width:100%;min-width:0;min-height:36px;padding:7px 10px;background:var(--bg3);border:1px solid var(--border-input);
  border-radius:8px;color:var(--text);font:13px var(--font)}
.rp-objectif-champ input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.rp-objectif-champ input[aria-invalid="true"]{border-color:var(--red)}
.rp-objectif-champ span{font-size:13px;color:var(--text3)}
.rp-objectif-ligne .btn{min-height:36px}
.rp-err{margin:6px 0 0;font-size:12.5px;line-height:1.45;color:var(--red)}

/* Le rapport rédigé : le bouton, sa progression, les rapports enregistrés. */
/* Les précisions de l'équipe, au-dessus du bouton (25/09/2026 : « on ne peut rien écrire nous-mêmes »),
   dans le même dessin que le champ de l'objectif. */
.rp-consignes{margin:0 0 var(--s2)}
.rp-consignes label{display:block;margin-bottom:6px;font-size:12.5px;font-weight:500;color:var(--text2)}
.rp-consignes textarea{display:block;width:100%;min-width:0;min-height:76px;resize:vertical;padding:8px 10px;background:var(--bg3);
  border:1px solid var(--border-input);border-radius:8px;color:var(--text);font:13px/1.45 var(--font)}
.rp-consignes textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.rp-consignes textarea::placeholder{color:var(--text3)}
.rp-consignes-pied{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s2)}
.rp-consignes-pied .rp-note{margin-top:5px}
.rp-compte{flex-shrink:0;margin-top:6px;font:500 11.5px var(--mono);color:var(--text3);white-space:nowrap}
.rp-lira{margin:0 0 var(--s3)}
.rp-ia-btn{justify-content:center;width:100%;min-height:40px;font-size:14px;font-weight:600}
.rp-ia-zone{margin-top:var(--s3);padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--bg3)}
.rp-ia-zone-tete{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s2)}
.rp-ia-zone-txt{min-width:0}
.rp-ia-zone-t{font-size:13px;font-weight:600;color:var(--text)}
.rp-ia-zone-s{margin-top:2px;font-size:12px;line-height:1.45;color:var(--text3)}
.rp-ia-piste{height:4px;margin:10px 0 6px;border-radius:2px;background:var(--bg4);overflow:hidden}
#ai-progress-bar{height:100%;border-radius:2px;background:var(--accent);transition:width .5s}
.rp-enr{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--border)}
.rp-enr-tete{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s2)}
.rp-enr-nb{font-size:12px;color:var(--text3)}
.rp-enr-ul{list-style:none;margin:6px 0 0;padding:0}
.rp-enr-ligne{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--border)}
.rp-enr-ul > li:first-child .rp-enr-ligne{border-top:0}
.rp-enr-c{flex:1;min-width:0}
.rp-enr-t{font-size:13px;font-weight:600;line-height:1.35;color:var(--text);overflow-wrap:anywhere}
.rp-enr-s{margin-top:2px;font-size:11.5px;line-height:1.4;color:var(--text3);overflow-wrap:anywhere}
.rp-enr-etat{font-size:11.5px;font-weight:700;white-space:nowrap}
.rp-enr-pret{color:var(--green)}
.rp-enr-echec{color:var(--red)}
.rp-enr-interrompu{color:var(--text3)}
.rp-enr-encours{color:var(--amber)}
.rp-enr-plus{margin-top:6px;min-height:24px;padding:0;border:0;background:none;cursor:pointer;
  font:600 12.5px var(--font);color:var(--accent);text-decoration:underline;text-underline-offset:2px}
/* [P4] 01/10/2026 (point 19) : « Réessayer » et « Résolu » sur un échec (un .groupe-cmd, même hauteur),
   l'historique des échecs résolus et la proposition de les résoudre après un succès. Styles statiques.
   Sur un écran étroit, les boutons passent sous le texte au lieu de l'écraser (320 px). */
.rp-enr-ligne{flex-wrap:wrap}
.rp-enr-ligne > .rp-enr-c{flex-basis:12rem}
.rp-enr-cmd{margin-left:auto}
.rp-enr-resolu{color:var(--text3)}
.rp-enr-plus + .rp-enr-plus{margin-left:16px}
.rp-enr-histo{margin-top:4px}
.rp-enr-proposition{margin:6px 0 10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg2)}
.rp-enr-prop-t{margin:0 0 8px;font-size:12.5px;line-height:1.5;color:var(--text)}

/* Les bandeaux d'indicateurs : les cellules .vd-fig de la Vue d'ensemble, au style partagé
   .chiffres (css/elevora.css, [P1] 02/10/2026 point 3) : quatre puis six cases par rangée au
   bureau, sans filet collé ; la grille auto-fit les replie seule. */
.rp-indic .vd-fig-v.rp-fig-nom{font-size:16px;white-space:normal;overflow-wrap:anywhere;line-height:1.3}
.rp-indic .vd-fig-v.rp-alerte{color:var(--amber)}
.rp-indic .vd-fig-s{display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px}

/* Graphiques et barres */
/* Les deux cartes d'une rangée ont la même hauteur : une liste courte laisse de l'air DANS sa
   carte, pas un trou sous elle. */
.rp-graphes{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:var(--s4);align-items:stretch}
.rp-graph{position:relative;height:250px}
.rp-badge-chiffre{font:600 16px var(--mono);color:var(--text);white-space:nowrap}
.rp-barres-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.rp-barre-t{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s2);font-size:13px}
.rp-barre-n{min-width:0;color:var(--text);font-weight:500;overflow-wrap:anywhere}
.rp-barre-v{font:500 12.5px var(--mono);color:var(--text2);white-space:nowrap}
.rp-barre-piste{position:relative;display:block;height:6px;margin-top:6px;border-radius:3px;background:var(--bg4)}
.rp-barre-rempli{display:block;height:100%;min-width:2px;border-radius:3px;background:var(--accent)}

/* Tableaux : en-têtes en casse de phrase, chiffres alignés à droite en chasse fixe. */
.rp-table{max-width:100%;overflow-x:auto}
.rp-table thead th{padding:10px 20px;font-size:12px;font-weight:500;text-transform:none;letter-spacing:0;color:var(--text3)}
.rp-table tbody td{padding:11px 20px;font-size:13px;color:var(--text2)}
.rp-table tbody tr:last-child td{border-bottom:0}
.rp-table td.rp-num,.rp-table .rp-num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text)}
/* L'en-tête d'une colonne de chiffres s'aligne sur eux, mais reste dans la police du texte. */
.rp-table thead th.rp-num{font-family:var(--font);color:var(--text3)}
.rp-table .rp-fort{font-weight:500;color:var(--text)}
.rp-ent{display:flex;align-items:center;gap:10px}
.rp-ent .cl-nom{font-weight:500;color:var(--text)}
.rp-ca-cell{display:flex;align-items:center;gap:var(--s3);min-width:190px}
.rp-ca-cell .rp-num{min-width:84px}
.rp-ca-cell .rp-barre-piste{flex:1 1 auto;min-width:60px;margin-top:0}
/* Le tableau par source n'ouvre rien au clic : pas de main ni de survol de ligne cliquable. */
#st-source-table tbody tr{cursor:default}
#st-source-table tbody tr:hover td{background:transparent}

/* Les statistiques de toute l'activité : une catégorie à part, sous un titre et de l'air. */
.rp-stats{display:grid;gap:var(--s4);min-width:0;margin-top:var(--s5)}
.rp-stats > *{min-width:0}

/* Moins de 1 180 px : une colonne pour les rangées doubles (les bandeaux se replient seuls). */
@media (max-width:1180px){
  .rp-haut,.rp-graphes{grid-template-columns:minmax(0,1fr)}
}
/* 900 px : tableaux et graphiques resserrés. */
@media (max-width:900px){
  .rp-table table{min-width:560px}
  .rp-flush > .rp-carte-tete{padding:14px 14px 0}
  .rp-table thead th,.rp-table tbody td{padding-left:14px;padding-right:14px}
  .rp-graph{height:230px}
}
/* 560 px : une colonne ; la barre de période s'empile, le chiffre principal reste lisible. */
@media (max-width:560px){
  .rp-barre{gap:var(--s2)}
  /* Les quatre types de période en deux rangées plutôt qu'un ruban qui cache « Annuel » hors
     de l'écran (css/mobile.css fait défiler tout groupe de .pf-btn). */
  .rp-seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;overflow:visible}
  .rp-seg .pf-btn{justify-content:center}
  /* Cinq types depuis le rapport hebdomadaire (25/09/2026) : « Hebdomadaire » prend toute la
     première rangée, les quatre autres restent deux par deux — pas de bouton seul en bas. */
  .rp-seg .pf-btn:first-child{grid-column:1 / -1}
  .rp-carte{padding:14px}
  .rp-jauge-chiffres{grid-template-columns:minmax(0,1fr)}
  .rp-jauge-chiffres dd{white-space:normal}
  .rp-jauge-rythme{margin-left:0}
  .rp-objectif-champ{max-width:none}
  .rp-objectif-ligne .btn{flex:1 1 100%;justify-content:center}
}


/* ══════════════════════════════════════════════════════════════════════════════════════
   3. PROSPECTION — complétée (onglet Prospection de Pipeline ; js/39)
   ══════════════════════════════════════════════════════════════════════════════════════
   La refonte du 24/09 (colonnes façon HubSpot, cartes qui disent la prochaine étape, chiffres
   en tête) reste telle quelle. Ce qui s'ajoute comble le vide relevé par Célian : sous son
   titre, une colonne dit ce qu'elle pèse (total des besoins chiffrés) et combien de fiches
   attendent une relance ; une colonne vide dit ce qui l'amène ; une carte chiffrée montre son
   montant ; « Contact pris » garde sous ses cartes de quoi créer une fiche. */

/* Sous le titre de colonne : le total, puis les fiches à relancer, en toutes lettres (la couleur
   ne fait que doubler le texte). */
.pr-col-resume{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:6px 0 0}
.pr-col-total{font-size:12px;color:var(--text3)}
.pr-col-total b{font:600 12.5px var(--mono);color:var(--text)}
.pr-col-total-s{white-space:nowrap}
.pr-col-relance{padding:1px 8px;border-radius:var(--rs);font-size:11.5px;font-weight:600;line-height:1.5;
  color:var(--amber);background:var(--amber-bg);white-space:nowrap}

/* Le montant d'une carte : en chasse fixe, comme les montants partout ailleurs. */
.pr-carte-montant{margin-top:4px;font:600 12.5px var(--mono);color:var(--text)}

/* Une colonne vide : ce qui l'amène (la définition de l'étape), puis comment y mettre une fiche. */
.pr-col .pr-vide{flex-direction:column;gap:6px;min-height:120px;text-align:center}
.pr-vide-t{margin:0;font-size:12px;line-height:1.45;color:var(--text2)}
.pr-vide-s{margin:0;font-size:11.5px;line-height:1.45;color:var(--text3)}

/* « + Nouveau prospect » sous les cartes de la première colonne : la création, là où la fiche
   arrivera. Le même geste que le bouton de la barre d'outils, au bon endroit. */
.pr-col-ajout{min-height:32px;padding:0 10px;border:1px dashed var(--border2);border-radius:var(--r);background:transparent;
  color:var(--text2);font:500 12.5px var(--font);text-align:left;cursor:pointer}
.pr-col-ajout:hover{background:var(--bg3);color:var(--text)}
body.light .pr-col-ajout:hover{background:var(--bg2)}
.pr-col-ajout:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.pr-col .pr-vide + .pr-col-ajout{margin-top:var(--s2)}
