/* ════════════════════════════════════════════════════
   donna — prospects.css (v1347)
   Source : Margot v1.1, auto-scopé à .prp-scope pour éviter
   les conflits avec shell-v2.css (notamment .pg-filter).
   ════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════
   Donna — Prospects
   Page indépendante. Hérite des tokens de crm.css + noheader.css.
   Spécifique : statuts prospect, badges source, table dense,
   kanban, drawer fiche prospect.
   ══════════════════════════════════════════════════ */

/* ────────── KPI strip inline ────────── */
            
/* ────────── View toggle (table / kanban) ────────── */
 .prp-scope .pv-toggle{
  display:inline-flex; padding:2px;
  background:var(--s2); border:1px solid var(--border);
  border-radius:var(--radius);
  font-size:12px; font-weight:600;
}
 .prp-scope .pv-toggle button{
  padding:6px 12px; border-radius:var(--radius-sm);
  color:var(--text-dim); background:transparent; border:none;
  display:inline-flex; align-items:center; gap:6px; cursor:pointer;
  font:inherit;
}
 .prp-scope .pv-toggle button.on{
  background:var(--surface); color:var(--text);
  box-shadow:var(--shadow-sm);
}

/* ────────── Source badges (prédictif / manuel / pige / réf) ────────── */
 .prp-scope .src-badge{
  display:inline-flex; align-items:center; gap:4px;
  padding:2px 7px 2px 6px; border-radius:3px;
  font-family:var(--mono); font-size:10px; letter-spacing:.3px;
  font-weight:600;
  background:var(--s2); border:1px solid var(--border);
  color:var(--text-dim);
  white-space:nowrap;
}
 .prp-scope .src-badge svg{ width:11px; height:11px; opacity:.85 }
 .prp-scope .src-badge.predict{
  background:var(--accent-dim);
  border-color:color-mix(in srgb, var(--accent) 28%, var(--border));
  color:var(--accent);
}
 .prp-scope .src-badge.pige{
  background:color-mix(in srgb, var(--froid) 12%, transparent);
  border-color:color-mix(in srgb, var(--froid) 28%, var(--border));
  color:var(--froid);
}
 .prp-scope .src-badge.ref{
  background:color-mix(in srgb, var(--green) 12%, transparent);
  border-color:color-mix(in srgb, var(--green) 28%, var(--border));
  color:var(--green);
}

/* ────────── Statut prospect ────────── */
 .prp-scope .st-badge{
  display:inline-flex; align-items:center; gap:5px;
  padding:3px 9px; border-radius:99px;
  font-family:var(--mono); font-size:10.5px; letter-spacing:.3px;
  font-weight:600; white-space:nowrap;
  background:color-mix(in srgb, var(--text-dim) 12%, transparent);
  border:1px solid color-mix(in srgb, var(--text-dim) 22%, transparent);
  color:var(--text-dim);
}
 .prp-scope .st-badge .dot{ width:5px; height:5px; border-radius:50%; background:currentColor }
 .prp-scope .st-badge.nouveau{ /* à contacter */ }
 .prp-scope .st-badge.contact{ background:color-mix(in srgb, var(--accent) 14%, transparent); border-color:color-mix(in srgb, var(--accent) 30%, transparent); color:var(--accent) }
 .prp-scope .st-badge.estime{ background:color-mix(in srgb, var(--accent) 14%, transparent); border-color:color-mix(in srgb, var(--accent) 30%, transparent); color:var(--accent) }
 .prp-scope .st-badge.en_cours{ background:color-mix(in srgb, var(--chaud) 14%, transparent); border-color:color-mix(in srgb, var(--chaud) 30%, transparent); color:var(--chaud) }
 .prp-scope .st-badge.converti{ background:color-mix(in srgb, var(--green) 14%, transparent); border-color:color-mix(in srgb, var(--green) 30%, transparent); color:var(--green) }
 .prp-scope .st-badge.consentement{ background:color-mix(in srgb, var(--green) 16%, transparent); border-color:color-mix(in srgb, var(--green) 34%, transparent); color:var(--green) }
 .prp-scope .st-badge.consentement .dot{ background:var(--green) }
 .prp-scope .st-badge.perdu{ background:color-mix(in srgb, var(--muted) 12%, transparent); border-color:color-mix(in srgb, var(--muted) 25%, transparent); color:var(--muted) }
 .prp-scope .st-badge.pas_interesse{ background:color-mix(in srgb, var(--muted) 12%, transparent); border-color:color-mix(in srgb, var(--muted) 25%, transparent); color:var(--muted); text-decoration:line-through; text-decoration-color:color-mix(in srgb, var(--muted) 50%, transparent) }

/* ────────── Table ────────── */
 .prp-scope .ptbl{
  width:100%; border-collapse:separate; border-spacing:0;
  background:var(--surface);
  font-size:12.5px;
  table-layout:auto;
}
/* Colonne Bien identifié (5e) prend l'espace libre */
 .prp-scope .ptbl th:nth-child(4),
 .prp-scope .ptbl td:nth-child(4){ width:auto; min-width:280px }
/* Colonnes "Dernière action" (8e) et "Prochaine action" (9e) bornées si vides */
 .prp-scope .ptbl th:nth-child(7),
 .prp-scope .ptbl td:nth-child(7),
 .prp-scope .ptbl th:nth-child(8),
 .prp-scope .ptbl td:nth-child(8){ max-width:180px }
 .prp-scope .ptbl th{
  text-align:left;
  font-family:'Inter',-apple-system,sans-serif; font-size:11px; font-weight:600;
  letter-spacing:.5px; text-transform:uppercase; color:var(--muted);
  padding:8px 12px;
  background:var(--s2); border-bottom:1px solid var(--border);
  white-space:nowrap; user-select:none;
}
  .prp-scope .ptbl th.sorted{ color:var(--text) }
  .prp-scope .ptbl td{
  padding:8px 12px; border-bottom:1px solid var(--border);
  color:var(--text); vertical-align:middle;
}
 .prp-scope .ptbl tr:last-child td{ border-bottom:none }
 .prp-scope .ptbl tr:hover td{ background:var(--s2) }
 .prp-scope .ptbl tr.selected td{ background:var(--accent-dim) }

/* Nom + avatar */
 .prp-scope .p-nm{
  display:flex; align-items:center; gap:10px; min-width:280px;
}
 .prp-scope .p-nm .av{
  width:28px; height:28px; border-radius:50%;
  background:var(--s2); color:var(--text-dim);
  display:grid; place-items:center; flex-shrink:0;
  font-family:var(--mono); font-weight:700; font-size:10px;
  letter-spacing:.3px;
  border:1px solid var(--border);
}
  .prp-scope .p-nm .body{ min-width:0 }
 .prp-scope .p-nm .a{
  font-weight:600; color:var(--text); line-height:1.2;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:260px;
}
  .prp-scope .p-nm .b{
  font-family:var(--mono); font-size:10px; color:var(--muted);
  letter-spacing:.3px; margin-top:0; line-height:1.25;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:420px;
}

/* Bien lié — mini fiche inline */
 .prp-scope .p-bien{
  display:flex; align-items:center; gap:9px; min-width:0;
}
 .prp-scope .p-bien .thumb{
  width:28px; height:28px; border-radius:var(--radius-sm);
  background:
    repeating-linear-gradient(135deg,
      color-mix(in srgb, var(--accent) 8%, var(--s2)) 0 5px,
      var(--s2) 5px 10px);
  border:1px solid var(--border);
  flex-shrink:0;
  position:relative;
  display:grid; place-items:center;
}
 .prp-scope .p-bien .thumb .pin{
  font-family:var(--mono); font-size:6.5px; font-weight:700;
  color:var(--text-dim); letter-spacing:0; line-height:1;
  text-align:center; padding:0 1px; max-width:100%; overflow:hidden;
}
 .prp-scope .p-bien .body{ min-width:0; flex:1 }
 .prp-scope .p-bien .addr{
  font-size:12.5px; font-weight:500; color:var(--text);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  line-height:1.2;
}
 .prp-scope .p-bien .meta{
  font-family:var(--mono); font-size:10px; color:var(--muted);
  letter-spacing:.3px; margin-top:0;
  font-variant-numeric:tabular-nums; line-height:1.2;
}
 .prp-scope .p-bien .meta .sep{ color:var(--border-hi); margin:0 4px }

/* Score gauge sm — replicated from prospection */
 .prp-scope .p-gauge{
  width:36px; height:36px; position:relative;
  display:grid; place-items:center;
}
 .prp-scope .p-gauge svg{ width:100%; height:100%; transform:rotate(-90deg) }
 .prp-scope .p-gauge .track{ fill:none; stroke:var(--s3); stroke-width:3 }
 .prp-scope .p-gauge .fill{ fill:none; stroke-width:3; stroke-linecap:round }
 .prp-scope .p-gauge .fill[data-z="chaud"]{ stroke:var(--chaud) }
 .prp-scope .p-gauge .fill[data-z="tiede"]{ stroke:var(--tiede) }
 .prp-scope .p-gauge .fill[data-z="froid"]{ stroke:var(--froid) }
 .prp-scope .p-gauge .num{
  position:absolute;
  font-family:var(--font-display); font-weight:800;
  font-size:11.5px; color:var(--text); font-variant-numeric:tabular-nums;
}

/* Last / next action */
 .prp-scope .p-act{
  display:flex; flex-direction:column; gap:2px; min-width:0;
}
    .prp-scope .p-act .date{
  font-family:var(--mono); font-size:10px; color:var(--muted);
  letter-spacing:.3px;
}
 .prp-scope .p-act .suggest{
  display:inline-flex; align-items:center; gap:6px;
  font-size:12px;
  color:var(--accent); font-weight:500;
}
 .prp-scope .p-act .suggest svg{ flex-shrink:0 }
 .prp-scope .p-act .suggest b{ font-weight:600 }

/* Row actions */
 .prp-scope .p-actions-cell{ white-space:nowrap; text-align:right }
 .prp-scope .p-actions-cell .b{ height:26px; padding:0 8px; font-size:11.5px }
  
/* Checkbox */
 .prp-scope .p-cb{
  width:14px; height:14px; border-radius:3px;
  border:1.5px solid var(--border-hi); background:var(--surface);
  cursor:pointer; display:inline-block; vertical-align:middle;
}
 .prp-scope .p-cb.on{
  background:var(--text); border-color:var(--text); position:relative;
}
 .prp-scope .p-cb.on::after{
  content:''; position:absolute; left:3px; top:1px;
  width:4px; height:7px;
  border-right:1.5px solid var(--bg); border-bottom:1.5px solid var(--bg);
  transform:rotate(45deg);
}

/* Batch bar */
 .prp-scope .p-batch{
  display:flex; align-items:center; gap:14px;
  padding:11px 16px; margin-bottom:10px;
  background:var(--text); color:var(--bg);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
 .prp-scope .p-batch .ct{
  font-family:var(--mono); font-size:11px; letter-spacing:.4px; font-weight:600;
}
 .prp-scope .p-batch .ct b{ font-variant-numeric:tabular-nums }
 .prp-scope .p-batch .acts{ margin-left:auto; display:flex; gap:6px }
 .prp-scope .p-batch .acts .b{
  background:transparent; border-color:color-mix(in srgb, var(--bg) 25%, transparent);
  color:var(--bg);
}
 .prp-scope .p-batch .acts .b:hover{ background:color-mix(in srgb, var(--bg) 12%, transparent); border-color:color-mix(in srgb, var(--bg) 35%, transparent) }
 .prp-scope .p-batch .acts .b.primary{ background:var(--bg); color:var(--text); border-color:var(--bg) }
 .prp-scope .p-batch .acts .b.primary:hover{ background:color-mix(in srgb, var(--bg) 92%, var(--text)); }

/* ────────── Kanban ────────── */
 .prp-scope .p-kanban{
  display:grid; grid-template-columns:repeat(5, minmax(240px, 1fr));
  gap:12px; min-height:560px;
}
 .prp-scope .p-col{
  background:var(--s2); border:1px solid var(--border);
  border-radius:var(--radius-lg);
  display:flex; flex-direction:column;
  min-height:0;
}
 .prp-scope .p-col-hd{
  display:flex; align-items:center; gap:8px;
  padding:11px 13px;
  border-bottom:1px solid var(--border);
}
 .prp-scope .p-col-hd .dot{
  width:8px; height:8px; border-radius:50%;
  background:var(--muted);
}
 .prp-scope .p-col-hd[data-st="nouveau"]  .dot{ background:var(--text-dim) }
 .prp-scope .p-col-hd[data-st="contact"]  .dot{ background:var(--accent) }
 .prp-scope .p-col-hd[data-st="en_cours"] .dot{ background:var(--chaud) }
 .prp-scope .p-col-hd[data-st="converti"] .dot{ background:var(--green) }
 .prp-scope .p-col-hd[data-st="perdu"]    .dot{ background:var(--muted) }
 .prp-scope .p-col-hd .ttl{
  font-family:var(--mono); font-size:10.5px; letter-spacing:1.2px;
  text-transform:uppercase; font-weight:700; color:var(--text-dim);
}
 .prp-scope .p-col-hd .ct{
  margin-left:auto;
  font-family:var(--mono); font-size:11px; font-weight:700;
  color:var(--text); font-variant-numeric:tabular-nums;
  padding:1px 7px; background:var(--surface); border:1px solid var(--border);
  border-radius:99px;
}
 .prp-scope .p-col-hd .more{
  width:22px; height:22px; border-radius:3px;
  display:grid; place-items:center; color:var(--muted);
  background:transparent; border:none; cursor:pointer;
}
 .prp-scope .p-col-hd .more:hover{ background:var(--s3); color:var(--text) }

 .prp-scope .p-col-body{
  padding:8px; display:flex; flex-direction:column; gap:6px;
  flex:1; overflow:auto;
}
 .prp-scope .p-card{
  background:var(--surface); border:1px solid var(--border);
  border-radius:var(--radius);
  padding:10px 11px;
  cursor:pointer; transition:border-color .12s, transform .12s;
}
 .prp-scope .p-card:hover{ border-color:var(--border-hi); transform:translateY(-1px) }
 .prp-scope .p-card .top{ display:flex; align-items:center; gap:8px; margin-bottom:6px }
 .prp-scope .p-card .top .av{
  width:22px; height:22px; border-radius:50%;
  background:var(--s2); border:1px solid var(--border);
  color:var(--text-dim);
  font-family:var(--mono); font-weight:700; font-size:9px;
  display:grid; place-items:center; letter-spacing:.3px;
}
 .prp-scope .p-card .top .nm{
  font-size:12.5px; font-weight:600; color:var(--text);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  flex:1; min-width:0;
}
 .prp-scope .p-card .top .sc{
  font-family:var(--mono); font-size:10.5px; font-weight:700;
  padding:1px 6px; border-radius:99px;
  background:var(--s2); color:var(--text-dim);
  font-variant-numeric:tabular-nums;
}
 .prp-scope .p-card .top .sc.chaud{ background:color-mix(in srgb, var(--chaud) 14%, transparent); color:var(--chaud) }
 .prp-scope .p-card .top .sc.tiede{ background:color-mix(in srgb, var(--tiede) 14%, transparent); color:var(--tiede) }
 .prp-scope .p-card .top .sc.froid{ background:color-mix(in srgb, var(--froid) 14%, transparent); color:var(--froid) }
 .prp-scope .p-card .addr{
  font-size:11.5px; color:var(--text-dim); line-height:1.3;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  overflow:hidden;
}
 .prp-scope .p-card .meta{
  display:flex; align-items:center; gap:6px;
  margin-top:7px; padding-top:7px;
  border-top:1px dashed var(--border);
  font-family:var(--mono); font-size:9.5px; color:var(--muted);
  letter-spacing:.3px;
}
 .prp-scope .p-card .meta .dt{ width:3px; height:3px; border-radius:50%; background:var(--muted) }
 
 .prp-scope .p-card-add{
  display:flex; align-items:center; justify-content:center; gap:6px;
  padding:9px;
  background:transparent;
  border:1px dashed var(--border-hi); border-radius:var(--radius);
  font-size:11.5px; color:var(--muted); font-weight:500;
  cursor:pointer;
}
 .prp-scope .p-card-add:hover{ border-color:var(--accent); color:var(--accent); background:var(--accent-dim) }

/* ────────── Drawer (fiche prospect) ────────── */
 .prp-scope .p-drawer-bd{
  position:fixed; inset:0; z-index:90;
  background:rgba(20,22,31,.32);
  backdrop-filter:blur(2px);
}
[data-theme="noir"] .p-drawer-bd{ background:rgba(0,0,0,.55) }
 .prp-scope .p-drawer{
  position:fixed; top:0; right:0; bottom:0; z-index:91;
  width:640px; max-width:96vw;
  background:var(--surface); border-left:1px solid var(--border);
  box-shadow:var(--shadow-lg);
  display:flex; flex-direction:column;
  overflow:hidden;
  animation:p-drawer-in .22s cubic-bezier(.2,.7,.3,1);
}
@keyframes p-drawer-in{
  from{ transform:translateX(20px); opacity:.6 }
  to{ transform:translateX(0); opacity:1 }
}
 .prp-scope .p-drawer-hd{
  display:flex; align-items:center; gap:10px;
  padding:14px 18px; border-bottom:1px solid var(--border);
  background:var(--surface);
}
 .prp-scope .p-drawer-hd .av{
  width:36px; height:36px; border-radius:50%;
  background:var(--accent-dim); color:var(--accent);
  display:grid; place-items:center;
  font-family:var(--mono); font-weight:700; font-size:11px;
}
 .prp-scope .p-drawer-hd .body{ flex:1; min-width:0 }
 .prp-scope .p-drawer-hd .body .nm{
  font-family:var(--font-display); font-weight:700;
  font-size:17px; letter-spacing:-.3px; color:var(--text);
  line-height:1.2;
}
 .prp-scope .p-drawer-hd .body .sub{
  font-family:var(--mono); font-size:10.5px; color:var(--muted);
  letter-spacing:.3px; margin-top:2px;
}
 .prp-scope .p-drawer-hd .close{
  width:28px; height:28px; border-radius:3px;
  background:transparent; border:1px solid var(--border);
  color:var(--text-dim); cursor:pointer;
  display:grid; place-items:center;
}
 .prp-scope .p-drawer-hd .close:hover{ background:var(--s2); color:var(--text) }

 .prp-scope .p-drawer-body{
  flex:1; overflow:auto; padding:18px 20px 24px;
  display:flex; flex-direction:column; gap:16px;
}
 .prp-scope .p-section{
  display:flex; flex-direction:column; gap:8px;
}
 .prp-scope .p-section .ttl{
  font-family:var(--mono); font-size:10px; letter-spacing:1.3px;
  text-transform:uppercase; color:var(--muted); font-weight:700;
  display:flex; align-items:center; gap:8px;
}
 .prp-scope .p-section .ttl .ct{
  font-family:var(--font); font-size:10.5px; letter-spacing:0;
  text-transform:none; color:var(--text-dim);
  background:var(--s2); padding:0 6px; border-radius:99px;
  font-weight:600;
}
 .prp-scope .p-coords{
  display:grid; grid-template-columns:auto auto; justify-content:start; gap:7px 14px;
  font-size:12.5px; align-items:baseline;
}
 .prp-scope .p-coords .k{ color:var(--muted); font-family:var(--mono); font-size:10.5px; letter-spacing:.3px; text-transform:uppercase }
 .prp-scope .p-coords .v{ color:var(--text); font-weight:500 }
 .prp-scope .p-coords .v.mono{ font-family:var(--mono); font-variant-numeric:tabular-nums }
 .prp-scope .p-coords .v a{ color:var(--accent); text-decoration:none }

/* Linked bien mini-card */
 .prp-scope .p-linked{
  display:grid; grid-template-columns:96px 1fr; gap:12px;
  padding:12px; border:1px solid var(--border);
  border-radius:var(--radius); background:var(--s2);
}
 .prp-scope .p-linked .photo{
  width:96px; height:80px; border-radius:var(--radius-sm);
  background:
    linear-gradient(180deg,
      color-mix(in srgb, var(--froid) 14%, var(--surface)),
      color-mix(in srgb, var(--accent) 8%, var(--surface)));
  border:1px solid var(--border);
  position:relative; overflow:hidden;
  display:grid; place-items:center;
  font-family:var(--mono); font-size:9px; color:var(--text-dim);
  letter-spacing:.5px; text-transform:uppercase;
}
 .prp-scope .p-linked .body .addr{ font-size:13px; font-weight:600; color:var(--text); line-height:1.3 }
 .prp-scope .p-linked .body .meta{
  font-family:var(--mono); font-size:10.5px; color:var(--text-dim);
  letter-spacing:.3px; margin-top:4px;
}
 .prp-scope .p-linked .body .pills{
  display:flex; flex-wrap:wrap; gap:5px; margin-top:6px;
}
 .prp-scope .p-linked .body .pill{
  font-family:var(--mono); font-size:9.5px; letter-spacing:.3px;
  padding:1px 6px; border-radius:3px;
  background:color-mix(in srgb, var(--accent) 10%, transparent);
  border:1px solid color-mix(in srgb, var(--accent) 26%, transparent);
  color:var(--accent); font-weight:600;
}
 .prp-scope .p-linked .body .pill.score{
  background:color-mix(in srgb, var(--chaud) 12%, transparent);
  border-color:color-mix(in srgb, var(--chaud) 30%, transparent);
  color:var(--chaud);
}
 /* [v1520] Panneaux d'action prospect (relance/appel/planifier) au-dessus du drawer overlay */
#prp-sp-overlay{ z-index:100055 !important; }
#prp-sp{ z-index:100056 !important; }

/* [v1524] Repli filtres = rail Prospection a l'identique (.pp-filters--rail, CSS partage prospection.css) */
#page-prospects .clients-layout.is-collapsed{ grid-template-columns:44px 1fr; }
/* [v1525] Le toggle ▶ ne doit pas avoir de contour (comme sur Prospection) */
.prp-scope .pp-rail-toggle{ background:transparent !important; border:none !important; color:var(--text) !important; }
/* [v1526] Icones du rail en noir (pas gris) ; l'active reste violette */
.prp-scope .pp-rail-btn{ color:var(--text); }
.prp-scope .pp-rail-btn.is-active{ color:var(--accent); }

/* [v1522] Colonne "Marche" : pills colorees cliquables (memes teintes que le drawer) */
.prp-scope .ptbl th:nth-child(5), .prp-scope .ptbl td:nth-child(5){ min-width:230px; max-width:none; overflow:visible; }
.prp-scope .p-market{ display:inline-flex; flex-wrap:nowrap; white-space:nowrap; gap:5px; align-items:center; cursor:pointer; }
.prp-scope .p-market:hover .pill{ filter:brightness(.97); }
.prp-scope .p-market .pill{
  font-family:var(--font); font-size:10.5px; font-weight:600; text-transform:none; letter-spacing:0;
  padding:3px 9px; border-radius:99px; flex:0 0 auto;
  background:rgba(124,106,247,.12) !important; border:1px solid rgba(124,106,247,.32) !important; color:#6a5aed !important;
}
.prp-scope .p-market .pill.score{ background:rgba(255,77,109,.13) !important; border-color:rgba(255,77,109,.34) !important; color:#e0405e !important; }
.prp-scope .p-market .pill.dpe-a, .prp-scope .p-market .pill.dpe-b{ background:rgba(22,184,112,.14) !important; border-color:rgba(22,184,112,.36) !important; color:#11935a !important; }
.prp-scope .p-market .pill.dpe-c, .prp-scope .p-market .pill.dpe-d{ background:rgba(216,162,0,.16) !important; border-color:rgba(216,162,0,.38) !important; color:#9a7200 !important; }
.prp-scope .p-market .pill.dpe-e{ background:rgba(232,131,14,.16) !important; border-color:rgba(232,131,14,.38) !important; color:#bf6900 !important; }
.prp-scope .p-market .pill.dpe-f, .prp-scope .p-market .pill.dpe-g{ background:rgba(255,77,109,.13) !important; border-color:rgba(255,77,109,.34) !important; color:#e0405e !important; }

/* [v1519] Entête Filtres repliable */
.prp-scope .fside-collapse{
  display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%;
  cursor:pointer; background:var(--surface); border:1px solid var(--border); border-radius:10px;
  padding:11px 14px; font:inherit; font-weight:700; font-size:11px; letter-spacing:.5px;
  text-transform:uppercase; color:var(--muted); margin-bottom:10px;
}
.prp-scope .fside-collapse:hover{ background:color-mix(in srgb, var(--accent) 5%, var(--surface)); }
.prp-scope .fside-collapse.collapsed{ margin-bottom:0; }

 .prp-scope .p-linked .body .pill.dpe-a,
 .prp-scope .p-linked .body .pill.dpe-b{ background:color-mix(in srgb, #16b870 14%, transparent); border-color:color-mix(in srgb, #16b870 34%, transparent); color:#11935a; }
 .prp-scope .p-linked .body .pill.dpe-c,
 .prp-scope .p-linked .body .pill.dpe-d{ background:color-mix(in srgb, #d8a200 16%, transparent); border-color:color-mix(in srgb, #d8a200 36%, transparent); color:#a07700; }
 .prp-scope .p-linked .body .pill.dpe-e{ background:color-mix(in srgb, #e8830e 16%, transparent); border-color:color-mix(in srgb, #e8830e 36%, transparent); color:#c06b00; }
 .prp-scope .p-linked .body .pill.dpe-f,
 .prp-scope .p-linked .body .pill.dpe-g{ background:color-mix(in srgb, var(--chaud) 13%, transparent); border-color:color-mix(in srgb, var(--chaud) 32%, transparent); color:var(--chaud); }

/* Timeline */
 .prp-scope .p-timeline{
  display:flex; flex-direction:column; position:relative;
}
 .prp-scope .p-timeline::before{
  content:''; position:absolute; top:8px; bottom:8px; left:11px;
  width:1px; background:var(--border);
}
 .prp-scope .p-tl-row{
  display:grid; grid-template-columns:24px 1fr; gap:12px;
  padding:8px 0; position:relative;
}
 .prp-scope .p-tl-row .ic{
  width:23px; height:23px; border-radius:50%;
  background:var(--surface); border:1px solid var(--border);
  display:grid; place-items:center;
  color:var(--text-dim); z-index:1;
}
 .prp-scope .p-tl-row .ic[data-t="reveal"]{ background:var(--accent-dim); color:var(--accent); border-color:color-mix(in srgb, var(--accent) 30%, var(--border)) }
 .prp-scope .p-tl-row .ic[data-t="letter"]{ background:var(--s2); color:var(--text-dim) }
 .prp-scope .p-tl-row .ic[data-t="estim"]{ background:var(--s2); color:var(--text-dim) }
 .prp-scope .p-tl-row .ic[data-t="call"]{ background:var(--s2); color:var(--text-dim) }
 .prp-scope .p-tl-row .ic[data-t="visit"]{ background:color-mix(in srgb, var(--green) 14%, transparent); color:var(--green); border-color:color-mix(in srgb, var(--green) 30%, var(--border)) }
 .prp-scope .p-tl-row .ic[data-t="next"]{
  background:transparent; border:1px dashed color-mix(in srgb, var(--accent) 50%, var(--border));
  color:var(--accent);
}
 .prp-scope .p-tl-row .body .ttl{
  font-size:13px; color:var(--text); line-height:1.35;
}
 .prp-scope .p-tl-row .body .ttl b{ font-weight:600 }
 .prp-scope .p-tl-row .body .sub{
  font-family:var(--mono); font-size:10px; color:var(--muted);
  letter-spacing:.3px; margin-top:2px;
}
 .prp-scope .p-tl-row.next .body .ttl{ color:var(--accent); font-weight:500 }
 .prp-scope .p-tl-row.next .body .ttl b{ color:var(--accent) }

/* Bottom action row */
 .prp-scope .p-drawer-foot{
  display:flex; gap:6px; padding:12px 18px;
  border-top:1px solid var(--border);
  background:var(--surface);
}
 .prp-scope .p-drawer-foot .b{ flex:1; justify-content:center; white-space:nowrap; font-size:12.5px; padding-left:8px; padding-right:8px; }

/* ── [v1510] Champs prospect éditables inline (Tel / Email / Notes) ── */
 .prp-scope [data-pfield]{
  cursor:text; border-radius:5px; padding:1px 4px; margin:0 -4px;
  transition:background .12s, box-shadow .12s; outline:none;
}
 .prp-scope .p-coords [data-pfield]{ display:inline; }
 .prp-scope .p-notes[data-pfield]{ display:block; white-space:pre-wrap; min-height:1.3em; }
 .prp-scope [data-pfield]:hover{ background:color-mix(in srgb, var(--accent) 7%, transparent); }
 .prp-scope [data-pfield]:focus{ background:var(--surface); box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 32%, transparent); }
 /* Placeholder : même typo que le champ email (var(--font) 12px), collé au label */
 .prp-scope [data-pfield]:empty:before{ content:'+ ajouter'; color:var(--muted); font-weight:400; font-family:var(--font); font-size:12px; letter-spacing:0; text-transform:none; }
 .prp-scope .p-notes[data-pfield]:empty:before{ content:'+ ajouter une note…'; }
 /* [v1515] Lien vers le lead de prospection */
 .prp-scope .p-lead-link{
  margin-top:10px; background:none; border:none; padding:0; cursor:pointer;
  font:inherit; font-size:12px; font-weight:600; color:var(--accent);
}
 .prp-scope .p-lead-link:hover{ text-decoration:underline; }
 /* [v1518] Vignette carte cadastre */
 .prp-scope .p-linked .photo img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
   /* [v1517] Modale de confirmation style donna */
 .prp-scope .prp-confirm-ov{
  position:fixed; inset:0; z-index:100070; background:rgba(10,12,18,.55);
  display:flex; align-items:center; justify-content:center; padding:20px;
  animation:p-drawer-in .14s ease;
}
 .prp-scope .prp-confirm{
  background:var(--surface); border:1px solid var(--border); border-radius:16px;
  box-shadow:var(--shadow-lg); max-width:400px; width:100%; padding:22px 22px 18px;
}
 .prp-scope .prp-confirm-ttl{ font-size:16px; font-weight:700; color:var(--text); margin-bottom:9px; }
 .prp-scope .prp-confirm-msg{ font-size:13px; color:var(--muted); line-height:1.55; margin-bottom:20px; }
 .prp-scope .prp-confirm-msg b{ color:var(--text); font-weight:600; }
 .prp-scope .prp-confirm-actions{ display:flex; gap:9px; justify-content:flex-end; }
 .prp-scope .prp-cf-btn{ padding:9px 18px; border-radius:10px; font:inherit; font-size:13px; font-weight:600; cursor:pointer; border:1px solid var(--border); transition:opacity .12s, background .12s; }
 .prp-scope .prp-cf-btn.ghost{ background:var(--surface); color:var(--text); }
 .prp-scope .prp-cf-btn.ghost:hover{ background:color-mix(in srgb, var(--text) 6%, transparent); }
 .prp-scope .prp-cf-btn.primary{ background:var(--text); color:var(--surface); border-color:var(--text); }
 .prp-scope .prp-cf-btn.primary:hover{ opacity:.88; }

/* ── [v1510] Statut prospect cliquable + menu ── */
 .prp-scope .p-statut-btn{ display:inline-flex; align-items:center; gap:4px; background:none; border:none; padding:0; margin:0; cursor:pointer; font:inherit; color:var(--muted); }
 .prp-scope .p-statut-btn:hover{ opacity:.82; }
 .prp-scope .p-statut-btn svg{ opacity:.55; }
 .prp-scope .st-badge.custom{ background:color-mix(in srgb, var(--accent) 14%, transparent); color:var(--accent); }
 .prp-scope .st-badge.custom .dot{ background:var(--accent); }
 .prp-scope .prp-st-menu{
  position:fixed; z-index:100062; min-width:200px; max-height:60vh; overflow:auto;
  background:var(--surface); border:1px solid var(--border); border-radius:10px;
  box-shadow:var(--shadow-lg); padding:5px; display:flex; flex-direction:column; gap:1px;
  animation:p-drawer-in .14s ease;
}
 .prp-scope .prp-st-menu .prp-st-row{ display:flex; align-items:center; border-radius:7px; }
 .prp-scope .prp-st-menu .prp-st-row:hover{ background:color-mix(in srgb, var(--accent) 9%, transparent); }
 .prp-scope .prp-st-menu .prp-st-row.on .prp-st-opt{ font-weight:700; }
 .prp-scope .prp-st-menu .prp-st-opt{
  display:flex; align-items:center; gap:8px; flex:1; min-width:0; text-align:left;
  background:none; border:none; padding:7px 9px; border-radius:7px; cursor:pointer;
  font:inherit; font-size:12.5px; color:var(--text);
}
 .prp-scope .prp-st-menu .prp-st-del{
  background:none; border:none; cursor:pointer; color:var(--muted);
  font-size:16px; line-height:1; padding:4px 9px; margin-right:3px; border-radius:6px; flex:0 0 auto;
}
 .prp-scope .prp-st-menu .prp-st-del:hover{ color:var(--chaud); background:color-mix(in srgb, var(--chaud) 13%, transparent); }
 .prp-scope .prp-st-menu .prp-st-opt .dot{ width:8px; height:8px; border-radius:50%; background:var(--muted); flex:0 0 auto; }
 .prp-scope .prp-st-menu .prp-st-opt .dot.accent{ background:var(--accent); }
 .prp-scope .prp-st-menu .prp-st-opt .dot.chaud{ background:var(--chaud); }
 .prp-scope .prp-st-menu .prp-st-opt .dot.green{ background:var(--green); } /* [v1722] = badge converti (fini le --vert divergent) */
 .prp-scope .prp-st-menu .prp-st-opt .cust{ font-size:9.5px; color:var(--muted); text-transform:uppercase; letter-spacing:.4px; margin-left:auto; }
 .prp-scope .prp-st-menu .prp-st-opt.add{ color:var(--accent); border-top:1px solid var(--border); border-radius:0 0 7px 7px; margin-top:3px; padding-top:9px; }

/* ────────── Empty state ────────── */
 .prp-scope .p-empty{
  display:flex; flex-direction:column; align-items:center;
  padding:48px 20px; text-align:center; gap:8px;
  border:1px dashed var(--border-hi); border-radius:var(--radius-lg);
  background:var(--surface);
}
 .prp-scope .p-empty .ic{
  width:48px; height:48px; border-radius:var(--radius-lg);
  background:var(--accent-dim); color:var(--accent);
  display:grid; place-items:center; margin-bottom:6px;
}
 .prp-scope .p-empty .ttl{ font-size:15px; font-weight:600; color:var(--text) }
 .prp-scope .p-empty .sub{ font-size:13px; color:var(--text-dim); max-width:380px; line-height:1.5 }
 .prp-scope .p-empty .acts{ margin-top:10px; display:flex; gap:8px }

/* ────────── Theme toggle (demo) ────────── */
 .prp-scope .theme-toggle{
  position:fixed; top:14px; right:14px; z-index:200;
  display:flex; background:var(--surface); border:1px solid var(--border);
  border-radius:999px; padding:3px;
}
 .prp-scope .theme-toggle button{
  padding:5px 11px; font-size:11px; font-weight:600;
  color:var(--text-dim); border-radius:999px;
  background:transparent; border:none; cursor:pointer; font:inherit;
}
 .prp-scope .theme-toggle button.active{ background:var(--text); color:var(--bg) }

/* Pagination compact */
 .prp-scope .p-pager{
  display:flex; align-items:center; padding:10px 0 0;
  font-family:var(--mono); font-size:11px; color:var(--muted); letter-spacing:.3px;
}
 .prp-scope .p-pager .right{ margin-left:auto; display:flex; gap:4px }
 .prp-scope .p-pager .right .b{ height:26px; min-width:26px; padding:0 8px; font-size:11px; justify-content:center }

/* ════════════════════════════════════════════════════
   Ajouts donna : composants non couverts par Margot v1.1
   ════════════════════════════════════════════════════ */

/* Loading state */
.prp-loading{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:80px 20px; gap:14px; color:var(--text-dim);
  font-size:13px;
}
.prp-loading .spinner{
  width:24px; height:24px; border-radius:50%;
  border:2px solid var(--border); border-top-color:var(--accent);
  animation:prpSpin .8s linear infinite;
}
@keyframes prpSpin{ to{ transform:rotate(360deg) } }

/* Empty state */
.prp-scope .p-empty{
  padding:60px 20px; text-align:center;
  background:var(--surface); border:1px solid var(--border);
  border-radius:var(--radius-lg);
  display:flex; flex-direction:column; align-items:center; gap:10px;
}
.prp-scope .p-empty .ic{
  width:48px; height:48px; border-radius:50%;
  background:var(--s2); display:grid; place-items:center;
  color:var(--text-dim); margin-bottom:6px;
}
.prp-scope .p-empty .ttl{
  font-family:var(--font-display); font-size:16px; font-weight:700;
  color:var(--text);
}
.prp-scope .p-empty .sub{
  font-size:13px; color:var(--text-dim); max-width:420px; line-height:1.5;
}
.prp-scope .p-empty .acts{
  display:flex; gap:8px; margin-top:8px;
}

/* Drawer score pill (header right) */
.prp-scope .p-score-pill{
  font-family:var(--mono); font-size:10px; color:var(--muted);
  letter-spacing:.4px; margin-left:auto;
}
.prp-scope .p-score-pill b{
  color:var(--chaud); font-weight:700; margin-left:4px;
  font-variant-numeric:tabular-nums;
}
.prp-scope .p-drawer-row{
  display:flex; gap:6px; align-items:center; flex-wrap:wrap;
}

/* No-score / no-action placeholders */
.prp-scope .p-no-score,
.prp-scope .p-no-action{
  color:var(--muted); font-family:var(--mono); font-size:11px;
}

/* Sort label */

/* Donna suggest hint in table header */
.prp-scope .donna-suggest-hint{
  color:var(--accent); text-transform:none; letter-spacing:0;
  font-family:var(--font); font-size:10px; font-weight:600;
}

/* Counter in filter pills */
.prp-scope .pg-filter .ct{
  margin-left:4px; opacity:.7;
  font-variant-numeric:tabular-nums; font-family:var(--mono); font-size:10.5px;
}

/* Kanban col empty */
.prp-scope .p-col-empty{
  padding:18px 12px; text-align:center;
  font-family:var(--mono); font-size:10.5px; letter-spacing:.3px;
  color:var(--muted);
}

/* Notes block in drawer */
.prp-scope .p-notes{
  padding:10px 12px; background:var(--s2);
  border:1px solid var(--border); border-radius:var(--radius);
  font-size:12.5px; line-height:1.5; color:var(--text-dim);
}

/* pg-filter style (notre version, indépendante de shell-v2.css) */
.prp-scope .pg-filter{
  display:inline-flex; align-items:center; gap:4px;
  padding:5px 10px;
  background:var(--surface); border:1px solid var(--border);
  border-radius:var(--radius);
  font-size:12px; font-weight:500; color:var(--text-dim);
  cursor:pointer; transition:all .12s;
  user-select:none;
}
.prp-scope .pg-filter:hover{ background:var(--s2); color:var(--text); border-color:var(--border-hi) }
.prp-scope .pg-filter.on{
  background:var(--text); color:var(--bg); border-color:var(--text);
}
.prp-scope .pg-filter.on .ct{ opacity:1 }
.prp-scope .pg-filter-sep{
  width:1px; height:18px; background:var(--border);
  margin:0 4px;
}

/* pg-filters bar layout */
.prp-scope .pg-filters{
  display:flex; align-items:center; gap:6px; flex-wrap:wrap;
}


/* [v1348] Espacement entre modules de la page Prospects
   [v1358] Anthony : "padding top sur prospect toujours trop important
   (met le même que sur la page prospection)" — root cause : padding-top:18px
   sur .prp-scope s'ajoutait au margin-bottom:20px du .ph standard (page-header.css),
   contenu commençait à 78px du top vs 60px sur Prospection. Padding-top mis à 0 ;
   le gap:18px du flex container suffit pour aérer entre modules. Padding-bottom
   conservé pour le confort scroll. */
.prp-scope{
  display:flex; flex-direction:column;
  gap:18px;
  padding:0 24px 40px;
}
.prp-scope > .prp-table-wrap,
.prp-scope > .p-kanban,
.prp-scope > .p-empty{
  margin-top:0;
}

/* ════════════════════════════════════════════════════
   [v1349] Audit police : Anthony "utilise plus la police
   classique donna là où c'est pertinent". Mono était trop
   présent (Margot l'utilise pour donner un look "data-dense"
   mais c'est exagéré). Override ciblé : on remet var(--font)
   aux endroits où la lisibilité prime. Garde mono pour : KPI
   values tabulaires, headers table uppercase, dates relatives
   compactes, refs/IDs, codes postaux.
   ════════════════════════════════════════════════════ */

/* KPI delta sub-line : "funnel en cours", "tous traités sur ce filtre" → texte lisible */

/* Filter pills label "Tous", "À contacter", etc → font normal */
.prp-scope .pg-filter{
  font-family:var(--font);
}
/* Sauf le compteur dans la pill qui reste tabular */
.prp-scope .pg-filter .ct{
  font-family:var(--mono);
}

/* Tri label "Tri · Statut" → font normal */

/* Prospect contact ligne (tel + email) → font normal pour lisibilité */
.prp-scope .p-nm .body .b{
  font-family:var(--font);
  font-size:11.5px;
  letter-spacing:0;
  font-variant-numeric:tabular-nums;
}

/* Bien identifié meta "75010 · Maison fam. · 92 m²" → font normal */
.prp-scope .p-bien .body .meta{
  font-family:var(--font);
  font-size:11px;
  letter-spacing:0;
}

/* Source badges "Prédictif", "Pige", "Référence", "Manuel" → font normal */
.prp-scope .src-badge{
  font-family:var(--font);
  font-size:11px;
  letter-spacing:0;
  font-weight:500;
  text-transform:none;
}

/* Pager "8 sur 8 prospects · page 1/1" → font normal */
.prp-scope .p-pager{
  font-family:var(--font);
  font-size:12px;
  letter-spacing:0;
}

/* Drawer sub "PROSPECT · PP-… · révélé le …" → font normal mais compact + uppercase léger gardé */
.prp-scope .p-drawer-hd .sub{
  font-family:var(--font);
  font-size:10.5px;
  letter-spacing:.3px;
}

/* Drawer coords valeurs (sauf .mono qui reste mono pour les téléphones) */
.prp-scope .p-coords .v:not(.mono){
  font-family:var(--font);
  font-size:12.5px;
}

/* Bien identifié dans le drawer .meta */
.prp-scope .p-linked .body .meta{
  font-family:var(--font);
  font-size:12px;
  letter-spacing:0;
}

/* Timeline dans drawer : sub date "16/05/2026" garde mono compact (info date), mais pas la ttl */
.prp-scope .p-tl-row .body .ttl{
  font-family:var(--font);
  font-size:13px;
  text-transform:none;
  letter-spacing:0;
}

/* Empty state ttl + sub : font normal pour readability */
.prp-scope .p-empty .sub{
  font-family:var(--font);
}

/* Pills inline "Score 92", "17 ans" dans drawer bien identifié */
.prp-scope .p-linked .pills .pill{
  font-family:var(--font);
  font-size:11px;
  letter-spacing:0;
  font-weight:600;
  text-transform:none;
  background:rgba(124,106,247,.12) !important;
  border:1px solid rgba(124,106,247,.32) !important;
  color:#6a5aed !important;
}
.prp-scope .p-linked .pills .pill.score{
  background:rgba(255,77,109,.13) !important;
  border-color:rgba(255,77,109,.34) !important;
  color:#e0405e !important;
}
.prp-scope .p-linked .pills .pill.dpe-a,
.prp-scope .p-linked .pills .pill.dpe-b{ background:rgba(22,184,112,.14) !important; border-color:rgba(22,184,112,.36) !important; color:#11935a !important; }
.prp-scope .p-linked .pills .pill.dpe-c,
.prp-scope .p-linked .pills .pill.dpe-d{ background:rgba(216,162,0,.16) !important; border-color:rgba(216,162,0,.38) !important; color:#9a7200 !important; }
.prp-scope .p-linked .pills .pill.dpe-e{ background:rgba(232,131,14,.16) !important; border-color:rgba(232,131,14,.38) !important; color:#bf6900 !important; }
.prp-scope .p-linked .pills .pill.dpe-f,
.prp-scope .p-linked .pills .pill.dpe-g{ background:rgba(255,77,109,.13) !important; border-color:rgba(255,77,109,.34) !important; color:#e0405e !important; }

/* Statut badges : ils sont déjà en mode bizarre - on les met en font normal */
.prp-scope .st-badge{
  font-family:var(--font);
  font-size:11px;
  letter-spacing:0;
  font-weight:500;
  text-transform:none;
}


/* [v1678] Bloc .prp-strip supprimé — KPI strip retiré (Margot prospects-v2). */

/* [v1351] Complément styles pp-sp pour les panels Prospects (classes manquantes) */
.pp-sp-row-2{
  display:grid; grid-template-columns:1fr 1fr; gap:8px;
}
.pp-sp-letter-txt{
  width:100%; padding:10px 12px;
  background:var(--pp-sp-bg-2);
  border:1px solid var(--pp-sp-border);
  border-radius:var(--radius);
  color:var(--pp-sp-text);
  font-family:var(--font); font-size:13px; line-height:1.5;
  resize:vertical; outline:none;
}
.pp-sp-letter-txt:focus{
  border-color:var(--pp-sp-accent);
  box-shadow:0 0 0 3px var(--pp-sp-accent-soft);
}
.pp-sp-info-box{
  padding:10px 12px;
  background:var(--pp-sp-bg-2);
  border:1px solid var(--pp-sp-border);
  border-radius:var(--radius);
}
.pp-sp-info-row{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  font-size:12px;
}
.pp-sp-info-row b{
  color:var(--pp-sp-muted); font-weight:600;
  text-transform:uppercase; letter-spacing:.5px; font-size:10.5px;
}
.pp-sp-info-row span{ color:var(--pp-sp-text) }

/* ─── [v1373] Badge temps dans le tableau prospects ────────────────────────
   Remplace l'ancien .pp-conf-pill basique par un badge coloré selon bucket,
   complété d'une mention "J-X" précise et optionnellement d'un sous-tag
   "src" si l'événement source est plus ancien que la détection. */
.pp-time-cell{
  display:flex; flex-direction:column; align-items:flex-start; gap:2px;
  white-space:nowrap;
}
.pp-time-badge{
  display:inline-flex; align-items:center; justify-content:center;
  padding:2px 7px; border-radius:999px;
  font-family:var(--mono); font-size:9.5px; font-weight:700;
  letter-spacing:.4px; text-transform:uppercase;
  border:1px solid transparent;
}
/* 6 variantes par data-bucket : today (vif vert) → old (gris) */
.pp-time-badge[data-bucket="today"]{
  background: color-mix(in srgb, var(--succ, #16a34a) 18%, transparent);
  color: var(--succ, #16a34a);
  border-color: color-mix(in srgb, var(--succ, #16a34a) 36%, transparent);
}
.pp-time-badge[data-bucket="recent"]{
  background: color-mix(in srgb, var(--chaud) 14%, transparent);
  color: var(--chaud);
  border-color: color-mix(in srgb, var(--chaud) 30%, transparent);
}
.pp-time-badge[data-bucket="week"]{
  background: color-mix(in srgb, var(--tiede) 14%, transparent);
  color: var(--tiede);
  border-color: color-mix(in srgb, var(--tiede) 30%, transparent);
}
.pp-time-badge[data-bucket="month"]{
  background: color-mix(in srgb, var(--text-dim) 10%, transparent);
  color: var(--text-dim);
  border-color: var(--border);
}
.pp-time-badge[data-bucket="quarter"]{
  background: color-mix(in srgb, var(--muted) 8%, transparent);
  color: var(--muted);
  border-color: var(--border);
}
.pp-time-badge[data-bucket="old"]{
  background: transparent;
  color: var(--muted);
  border-color: var(--border);
  opacity:.7;
}
.pp-time-detail{
  font-family:var(--mono); font-size:10px;
  color:var(--muted); letter-spacing:.3px;
}
.pp-time-src{
  font-family:var(--mono); font-size:9px;
  color:var(--muted); letter-spacing:.3px;
  background:color-mix(in srgb, var(--muted) 8%, transparent);
  padding:1px 5px; border-radius:4px;
  margin-top:1px;
}

/* ─── [v1375] Badge détention DVF inline dans cellule "Surf · Détention" ──
   4 variantes data-det selon classe :
     0-2     → cold (bleu) : juste acheté, peu probable de revendre
     2-5     → tiede (ambre) : phase moyenne
     5+      → chaud (rouge/orange) : détention longue = signal d'intérêt
     unknown → neutral (gris) — caché par défaut côté JS */
.pp-det-pill{
  display:inline-block;
  padding:1px 6px; margin-left:4px;
  border-radius:999px;
  font-family:var(--mono); font-size:9.5px; font-weight:700;
  letter-spacing:.4px;
  border:1px solid transparent;
  vertical-align:1px;
}
.pp-det-pill[data-det="0-2"]{
  background: color-mix(in srgb, var(--froid) 12%, transparent);
  color: var(--froid);
  border-color: color-mix(in srgb, var(--froid) 26%, transparent);
}
.pp-det-pill[data-det="2-5"]{
  background: color-mix(in srgb, var(--tiede) 12%, transparent);
  color: var(--tiede);
  border-color: color-mix(in srgb, var(--tiede) 26%, transparent);
}
.pp-det-pill[data-det="5+"]{
  background: color-mix(in srgb, var(--chaud) 14%, transparent);
  color: var(--chaud);
  border-color: color-mix(in srgb, var(--chaud) 30%, transparent);
}
.pp-det-pill[data-det="unknown"]{
  background: transparent;
  color: var(--muted);
  border-color: var(--border);
  opacity:.7;
}

/* ---- Sélecteur de modèle de lettre (3 tons) ---- */
.pp-letter-tabs{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.pp-letter-tab{
  flex:1;
  min-width:fit-content;
  padding:8px 12px;
  font-family:inherit;
  font-size:12px;
  font-weight:600;
  color:var(--text-dim);
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:8px;
  cursor:pointer;
  transition:background .15s, color .15s, border-color .15s;
  white-space:nowrap;
}
.pp-letter-tab:hover{
  color:var(--text);
  border-color:var(--border-hi);
}
.pp-letter-tab.is-active{
  color:#fff;
  background:var(--accent);
  border-color:var(--accent);
}

/* ---- Bandeau d'alerte lettre (relecture avant impression) ---- */
.pp-letter-alert{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:12px 14px;
  margin-bottom:16px;
  background:color-mix(in srgb, #c08a2e 12%, var(--surface));
  border:1px solid color-mix(in srgb, #c08a2e 35%, var(--border));
  border-radius:10px;
  color:var(--text);
}
.pp-letter-alert svg{
  flex-shrink:0;
  margin-top:1px;
  color:#c08a2e;
}
.pp-letter-alert-txt{
  font-size:12.5px;
  line-height:1.5;
  color:var(--text-dim);
}

/* [v1441] Détention EXACTE connue (DVF) → signal fort mis en avant (accent donna).
   Override les couleurs par classe : un âge précis = prospect à fort potentiel. */
.pp-det-pill[data-exact="true"]{
  background: color-mix(in srgb, var(--accent) 14%, transparent) !important;
  color: var(--accent) !important;
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 16%, transparent);
}

/* [v1452] Drawer prospect ouvert en OVERLAY (portal body-level) depuis la liste
   leads : z-index au-dessus des éléments fixes de la page courante (le drawer
   in-page reste à z-index 90/91). */
#prp-drawer-portal .p-drawer-bd{ z-index:100050; }
#prp-drawer-portal .p-drawer{ z-index:100051; }

/* ════════════════════════════════════════════════════════════════
   [v1456] Refonte page prospects — layout 2 colonnes (sidebar .fside
   partagée avec clients/biens) + colonne Score triable.
   La sidebar réutilise .clients-layout / .clients-sidefilters / .fside
   → look hérité de shell-v2.css + filters-margot.css (zéro duplication).
   ════════════════════════════════════════════════════════════════ */
/* [v1458] La table est riche en colonnes : on la contient DANS la colonne main
   (.clients-main a min-width:0) et on scrolle horizontalement si besoin au lieu
   de déborder au-delà du padding droit de la page. */
.prp-scope .prp-table-wrap{ max-width:100%; }
/* [v1462] Scroll interne au tableau + thead figé (comme Clients) :
   le conteneur .prp-table-scroll porte bordure/radius/scroll, la table n'a
   plus d'overflow (sinon l'overflow:hidden de la table couperait le thead
   sticky au scroll). Bande calée sous le KPI strip. */
.prp-scope .prp-table-scroll{
  max-height:calc(100vh - 150px);
  overflow:auto;
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:var(--surface);
}
.prp-scope .ptbl thead th{ position:sticky; top:0; z-index:3; }
.prp-scope .ptbl td:nth-child(4),
.prp-scope .ptbl th:nth-child(4){ min-width:220px; }

/* ════════════════════════════════════════════════════════════════
   [v1677] PP Retour terrain — sheet de clôture + micro-dot badge
   Design Margot (handoff-pp-retour, juil. 2026), adapté aux tokens app.
   Préfixe ppfb-. Le sheet est appendé à body (hors .prp-scope). */

/* — micro-dot sur le badge source (table Développement) — */
.prp-scope .src-badge.predict{ position:relative; }
.ppfb-dot{ position:absolute; top:-3px; right:-3px; width:8px; height:8px; border-radius:50%; border:2px solid var(--surface); }
.ppfb-dot.done{ background:var(--green); }
.ppfb-dot.pending{ background:var(--tiede); }

/* — overlay + sheet — */
.ppfb-overlay{ position:fixed; inset:0; z-index:100060; /* [v1695] au-dessus du drawer portal (100051) */ background:rgba(10,11,15,.45); display:flex; align-items:center; justify-content:center; padding:20px; }
.ppfb-sheet{ width:400px; max-width:100%; background:var(--surface); border:1px solid var(--border); border-radius:10px; box-shadow:0 16px 46px rgba(0,0,0,.35); overflow:hidden; font-family:var(--font); }
.ppfb-won-strip{ height:4px; background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 70%,#fff)); }
.ppfb-sheet-top{ padding:16px 18px 0; position:relative; }
.ppfb-close{ position:absolute; top:13px; right:13px; width:27px; height:27px; border-radius:var(--radius); border:0; background:transparent; color:var(--muted); cursor:pointer; display:grid; place-items:center; }
.ppfb-close:hover{ background:var(--s2); color:var(--text); }
.ppfb-close svg{ width:15px; height:15px; }
.ppfb-badge-line{ display:flex; align-items:center; gap:8px; margin-bottom:12px; }
.ppfb-status{ font-family:var(--mono); font-size:10px; font-weight:600; text-transform:uppercase; letter-spacing:.03em; padding:3px 8px; border-radius:var(--radius); }
.ppfb-status.won{ color:var(--green); background:color-mix(in srgb,var(--green) 13%,transparent); border:1px solid color-mix(in srgb,var(--green) 32%,transparent); }
.ppfb-status.lost{ color:var(--chaud); background:color-mix(in srgb,var(--chaud) 12%,transparent); border:1px solid color-mix(in srgb,var(--chaud) 30%,transparent); }
.ppfb-title{ font-size:17px; font-weight:800; letter-spacing:-.02em; line-height:1.3; margin:0; color:var(--text); }
.ppfb-title .em{ color:var(--accent); }
.ppfb-sub{ font-size:12.5px; color:var(--text-dim); margin:5px 0 0; line-height:1.5; }
.ppfb-body{ padding:16px 18px 4px; }
.ppfb-q{ margin-bottom:16px; }
.ppfb-q-k{ font-size:12.5px; font-weight:600; color:var(--text); margin-bottom:9px; }
.ppfb-chips{ display:flex; flex-wrap:wrap; gap:7px; }
.ppfb-chip{ font:inherit; font-size:12.5px; font-weight:600; padding:7px 12px; border-radius:var(--radius); border:1px solid var(--border); background:var(--surface); color:var(--text-dim); cursor:pointer; display:inline-flex; align-items:center; gap:6px; transition:all .12s; }
.ppfb-chip:hover{ background:var(--s2); }
.ppfb-chip.on{ color:var(--text); border-color:var(--accent); background:var(--accent-dim,rgba(124,106,247,.12)); }
.ppfb-chip.on.pos{ border-color:var(--green); background:color-mix(in srgb,var(--green) 12%,transparent); color:var(--green); }
.ppfb-chip.on.neg{ border-color:var(--chaud); background:color-mix(in srgb,var(--chaud) 11%,transparent); color:var(--chaud); }
.ppfb-chip.gold.on{ border-color:var(--tiede); background:color-mix(in srgb,var(--tiede) 13%,transparent); color:var(--tiede); }
.ppfb-comment{ margin-top:4px; }
.ppfb-comment-toggle{ font-size:12px; font-weight:600; color:var(--accent); cursor:pointer; background:none; border:0; padding:0; display:inline-flex; align-items:center; gap:6px; font-family:inherit; }
.ppfb-comment textarea{ display:none; width:100%; margin-top:9px; min-height:60px; resize:vertical; font:inherit; font-size:12.5px; line-height:1.5; color:var(--text); background:var(--s2); border:1px solid var(--border); border-radius:var(--radius); padding:9px 11px; }
.ppfb-comment.open textarea{ display:block; }
.ppfb-comment textarea:focus{ outline:none; border-color:var(--accent); background:var(--surface); }
.ppfb-why{ display:flex; align-items:flex-start; gap:8px; margin:4px 18px 0; padding:9px 12px; background:var(--accent-dim,rgba(124,106,247,.10)); border:1px solid color-mix(in srgb,var(--accent) 18%,transparent); border-radius:var(--radius); }
.ppfb-why svg{ width:14px; height:14px; color:var(--accent); flex-shrink:0; margin-top:1px; }
.ppfb-why p{ margin:0; font-size:11.5px; line-height:1.45; color:var(--text-dim); }
.ppfb-foot{ display:flex; align-items:center; gap:9px; padding:14px 18px; margin-top:14px; border-top:1px solid var(--border); background:var(--s2); }
.ppfb-foot .ppfb-sp{ flex:1; }
.ppfb-btn{ display:inline-flex; align-items:center; gap:6px; font:inherit; font-size:13px; font-weight:600; padding:9px 15px; border-radius:var(--radius); border:1px solid transparent; cursor:pointer; font-family:inherit; }
.ppfb-btn.ghost{ background:transparent; color:var(--text-dim); }
.ppfb-btn.ghost:hover{ color:var(--text); }
.ppfb-btn.pri{ background:var(--accent); color:#fff; }
.ppfb-btn.pri:hover{ filter:brightness(1.08); }
.ppfb-btn.pri:disabled{ opacity:.45; cursor:default; filter:none; }

/* — mobile : bottom-sheet (tabbar auto-masquée par le pattern sheet existant) — */
body.is-mobile .ppfb-overlay{ align-items:flex-end; padding:0; }
body.is-mobile .ppfb-sheet{ width:100%; border-radius:16px 16px 0 0; border-left:0; border-right:0; border-bottom:0; padding-bottom:env(safe-area-inset-bottom, 0px); }
body.is-mobile .ppfb-grab{ width:34px; height:4px; border-radius:99px; background:var(--border); margin:9px auto 2px; }
.ppfb-grab{ display:none; }
body.is-mobile .ppfb-grab{ display:block; }

/* [v1677] Le badge modèle réutilisé DANS le sheet (body, hors .prp-scope) */
.ppfb-sheet .src-badge{
  display:inline-flex; align-items:center; gap:4px;
  padding:2px 7px 2px 6px; border-radius:3px;
  font-family:var(--mono); font-size:10px; letter-spacing:.3px; font-weight:600;
  white-space:nowrap;
}
.ppfb-sheet .src-badge svg{ width:11px; height:11px; opacity:.85 }
.ppfb-sheet .src-badge.predict{
  background:var(--accent-dim);
  border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));
  color:var(--accent);
}

/* ════════════════════════════════════════════════════════════════
   [v1678] Prospects v2 — polish Margot (handoff prospects-v2, juil. 2026)
   Table aérée, hover teinté accent, sélection barre accent, gauge animée,
   badges pills, batch inversée, toolbar toggle, vue Kanban (lecture). */

/* — toolbar (tri + toggle vue) — */
.prp-scope .prp-toolbar{ display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.prp-scope .pv-toggle{ display:inline-flex; padding:2px; background:var(--s2); border:1px solid var(--border); border-radius:var(--radius); font-size:12px; font-weight:600; }
.prp-scope .pv-toggle button{ padding:6px 12px; border-radius:calc(var(--radius) - 1px); color:var(--text-dim); background:transparent; border:none; display:inline-flex; align-items:center; gap:6px; cursor:pointer; font:inherit; transition:color .12s; }
.prp-scope .pv-toggle button.on{ background:var(--surface); color:var(--text); box-shadow:0 1px 3px rgba(0,0,0,.12); }

/* — table : hover accent, sélection barre — */
.prp-scope .ptbl tbody tr{ transition:background .1s; }
.prp-scope .ptbl tr:hover td{ background:color-mix(in srgb, var(--accent) 4%, var(--surface)); }
.prp-scope .ptbl tr.selected td{ background:color-mix(in srgb, var(--accent) 10%, var(--surface)); }
.prp-scope .ptbl tr.selected td:first-child{ box-shadow:inset 3px 0 0 var(--accent); }
.prp-scope .ptbl td{ padding:13px 16px; }
.prp-scope .ptbl th{ padding:12px 16px; }

/* — thumb bien hachuré accent — */
.prp-scope .p-bien .thumb{
  background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--accent) 8%, var(--s2)) 0 5px, var(--s2) 5px 10px);
  border:1px solid var(--border);
}

/* — gauge animée — */
.prp-scope .p-gauge .fill{ transition:stroke-dashoffset .5s cubic-bezier(.4,0,.2,1); stroke-linecap:round; }

/* — badges → pills homogènes (source + statut ; pills OK, la règle carrée = boutons) — */
.prp-scope .src-badge{ border-radius:99px; padding:2px 8px 2px 6px; }
.prp-scope .st-badge{ border-radius:99px; padding:4px 10px; }
.prp-scope .st-badge .dot{ width:6px; height:6px; }
.prp-scope .st-badge.perdu, .prp-scope .st-badge.pas_interesse{
  background:color-mix(in srgb, var(--muted) 11%, transparent);
  border-color:color-mix(in srgb, var(--muted) 24%, transparent);
  color:var(--muted);
}

/* — batch bar inversée (fond texte) — */
.prp-scope .p-batch{
  background:var(--text); color:var(--bg);
  border:0; border-radius:var(--radius-lg);
  box-shadow:0 10px 30px rgba(0,0,0,.22);
}
.prp-scope .p-batch .ct{ color:var(--bg); font-family:var(--mono); font-size:11px; letter-spacing:.3px; font-weight:600; }
.prp-scope .p-batch .acts .b{ background:transparent; border:1px solid color-mix(in srgb, var(--bg) 25%, transparent); color:var(--bg); }
.prp-scope .p-batch .acts .b:hover{ background:color-mix(in srgb, var(--bg) 12%, transparent); }
.prp-scope .p-batch .acts .b.primary{ background:var(--bg); color:var(--text); border-color:var(--bg); }

/* — avatars dégradé violet (drawer + kanban) — */
.prp-scope .p-drawer-hd .av{
  background:linear-gradient(150deg, var(--accent), color-mix(in srgb, var(--accent) 65%, #2a1f66));
  color:#fff;
}

/* — pilule "donna suggère" (drawer timeline) — */
.prp-scope .p-act .suggest,
.prp-scope .p-tl-row.next .body .ttl b{
  color:var(--accent);
}

/* [v1680] Bloc kanban p-* v1678 supprimé — remplacé par les classes vk-* de Dossiers. */

/* ════════════════════════════════════════════════════════════════
   [v1680] FIX b1679 : ce bloc (chips + toolbar) n'avait jamais été appendé
   (chaîne && cassée avant le cat >>) → chips affichées en texte nu.
   Sidebar filtres → chips barre top, alignement architecture Dossiers. */
.prp-scope .prp-onecol{ display:flex; flex-direction:column; min-width:0; }
.prp-scope .prp-toolbar{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.prp-scope .prp-chips-bar{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; flex:1; min-width:0; }
.prp-scope .prp-toolbar-right{ display:flex; align-items:center; gap:10px; margin-left:auto; flex-shrink:0; }

.prp-scope .prp-chip{
  display:inline-flex; align-items:center; gap:5px;
  font:inherit; font-size:12px; font-weight:600;
  padding:5px 11px; border-radius:99px;
  border:1px solid var(--border); background:var(--surface); color:var(--text-dim);
  cursor:pointer; white-space:nowrap; transition:all .12s;
}
.prp-scope .prp-chip:hover{ background:var(--s2); color:var(--text); }
.prp-scope .prp-chip.on{ background:var(--text); border-color:var(--text); color:var(--bg); }
.prp-scope .prp-chip.on svg{ color:var(--bg); }
.prp-scope .prp-chip .ct{
  font-family:var(--mono); font-size:10.5px; font-weight:600;
  font-variant-numeric:tabular-nums; opacity:.65; margin-left:1px;
}
.prp-scope .prp-chip svg{ flex-shrink:0; }
.prp-scope .prp-chip.reset{ border-style:dashed; color:var(--muted); }
.prp-scope .prp-chip.reset:hover{ color:var(--chaud); border-color:color-mix(in srgb, var(--chaud) 40%, var(--border)); background:transparent; }
.prp-scope .prp-chip-sep{ width:1px; height:18px; background:var(--border); margin:0 4px; flex-shrink:0; }

@media (max-width: 860px){
  .prp-scope .prp-toolbar{ flex-direction:column; align-items:stretch; gap:8px; }
  .prp-scope .prp-chips-bar{ flex-wrap:nowrap; overflow-x:auto; -webkit-overflow-scrolling:touch; padding-bottom:2px; scrollbar-width:none; }
  .prp-scope .prp-chips-bar::-webkit-scrollbar{ display:none; }
  .prp-scope .prp-toolbar-right{ margin-left:0; justify-content:space-between; }
}

/* [v1680] Kanban prospects = classes vk-* de Dossiers (style.css). Le score
   remplace le prix dans la carte ; drop de carte = changement de statut. */
.prp-scope .vend-board-wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
/* [v1692] prp-vk-score retiré — score de carte = vend-instinct-badge (UI Dossiers). */
/* [v1687] règle drag-over scoped retirée — la globale style.css (alignée Prospects) couvre les deux kanbans */

/* ════════════════════════════════════════════════════════════════
   [v1682] S1-S4 Anthony + kanban colonnes colorées. */

/* S1 — couleur par modèle de scoring (table, sheet retour terrain, kanban) */
.prp-scope .src-badge.predict.m-genesis,
.ppfb-sheet .src-badge.predict.m-genesis{
  background:var(--accent-dim);
  border-color:color-mix(in srgb, #7C6AF7 30%, var(--border));
  color:#7C6AF7;
}
.prp-scope .src-badge.predict.m-sismo,
.ppfb-sheet .src-badge.predict.m-sismo{
  background:color-mix(in srgb, #378ADD 12%, transparent);
  border-color:color-mix(in srgb, #378ADD 32%, var(--border));
  color:#378ADD;
}
.prp-scope .src-badge.predict.m-meridian,
.ppfb-sheet .src-badge.predict.m-meridian{
  background:color-mix(in srgb, #BA7517 12%, transparent);
  border-color:color-mix(in srgb, #BA7517 32%, var(--border));
  color:#BA7517;
}

/* S4 — barre de chips sur UNE ligne (scroll horizontal si déborde) */
.prp-scope .prp-chips-bar{ flex-wrap:nowrap; overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; padding-bottom:1px; }
.prp-scope .prp-chips-bar::-webkit-scrollbar{ display:none; }
.prp-scope .prp-toolbar{ flex-wrap:nowrap; }

/* S4 — rangée Filtres actifs */
.prp-scope .prp-active-bar{ display:flex; align-items:center; gap:7px; flex-wrap:wrap; margin:-4px 0 12px; }
.prp-scope .prp-active-lbl{ font-family:var(--mono); font-size:10.5px; letter-spacing:.4px; text-transform:uppercase; color:var(--muted); font-weight:600; }
.prp-scope .prp-active-chip{
  display:inline-flex; align-items:center; gap:5px;
  font:inherit; font-size:11.5px; font-weight:600;
  padding:3px 9px; border-radius:99px;
  background:var(--accent-dim); border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));
  color:var(--accent); cursor:pointer; white-space:nowrap;
}
.prp-scope .prp-active-chip svg{ width:11px; height:11px; }
.prp-scope .prp-active-chip:hover{ background:color-mix(in srgb, var(--accent) 18%, transparent); }
.prp-scope .prp-active-clear{
  font:inherit; font-size:11px; font-weight:600; color:var(--muted);
  background:none; border:none; cursor:pointer; padding:3px 6px; text-decoration:underline dotted;
}
.prp-scope .prp-active-clear:hover{ color:var(--chaud); }

/* S2 — hint de tri retiré */
/* (règle .prp-sort-hint conservée inoffensive, le span n'est plus rendu) */

/* S3 — toggle icônes seules : boutons compacts carrés */
.prp-scope .pv-toggle button{ padding:6px 9px; }

/* [v1683] Teinte de fond des colonnes kanban retirée (Anthony) — seule
   l'entête est colorée, comme le kanban Dossiers. */

/* [v1684] La barre filtres Dossiers porte .prp-scope pour hériter des chips —
   on neutralise le layout propre de .prp-scope (padding page + colonne). */
.vend-filters-bar.prp-scope{ padding:0; gap:10px; flex-direction:row; }

/* [v1685] Toolbar Dossiers : chips (flex:1) + gear + toggle sur UNE ligne,
   alignés en haut (la rangée Filtres actifs pousse dessous). */
.vend-main-toolbar{ display:flex; align-items:flex-start; gap:12px; }
.vend-main-toolbar .vend-filters-bar.prp-scope{ flex:1; min-width:0; }
.vend-main-toolbar .page-view-switcher{ margin:0; flex-shrink:0; }

/* ════════════════════════════════════════════════════════════════
   [v1686] Kanban Prospects — S1 écart, S2 couleurs entêtes (root cause :
   shell-v2.css force border-top:var(--muted)!important + label muted!important
   via data-etape, que nos colonnes data-kb-drop ne matchent pas), gear. */

/* S2 — bandeau top + label colorés par statut (bat les !important du shell :
   même !important, sélecteur plus spécifique, feuille chargée après) */
body.shell-v2-on .prp-scope .vk-col[data-kb-drop="nouveau"] .vk-col-hdr{ border-top-color:#888780 !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop="nouveau"] .vk-col-label{ color:#888780 !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop="contact"] .vk-col-hdr{ border-top-color:#378ADD !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop="contact"] .vk-col-label{ color:#378ADD !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop="en_cours"] .vk-col-hdr{ border-top-color:#BA7517 !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop="en_cours"] .vk-col-label{ color:#BA7517 !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop="converti"] .vk-col-hdr{ border-top-color:#1D9E75 !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop="converti"] .vk-col-label{ color:#1D9E75 !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop="perdu"] .vk-col-hdr{ border-top-color:#FF4444 !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop="perdu"] .vk-col-label{ color:#FF4444 !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop=""] .vk-col-hdr{ border-top-color:#6B7F68 !important; }
body.shell-v2-on .prp-scope .vk-col[data-kb-drop=""] .vk-col-label{ color:#6B7F68 !important; }

/* S1 — même écart filtres → kanban que Dossiers (qq px de plus) */
.prp-scope .vend-board-wrap{ margin-top:8px; }

/* Gear colonnes (même look que le pvs-gear Dossiers) */
.prp-scope .prp-kb-gear{
  display:inline-flex; align-items:center; justify-content:center;
  padding:6px 9px; background:var(--s2); border:1px solid var(--border);
  border-radius:var(--radius, 6px); color:var(--text-dim); cursor:pointer;
  transition:color .12s, background .12s;
}
.prp-scope .prp-kb-gear:hover{ background:var(--surface); color:var(--text); }

/* [v1687] S4 — le tableau Dossiers porte prp-scope/ptbl : variante --bare qui
   neutralise le layout de page propre à .prp-scope (padding + flex colonne). */
.prp-scope.prp-scope--bare{ display:block; padding:0; gap:0; }
/* Titre adresse des cartes kanban sans propriétaire identifié (ex-[À identifier]) */

/* ════════════════════════════════════════════════════════════════
   [v1688] S2 + S3 (retours Anthony). */
/* S2 — gears à la même hauteur que le sélecteur de vue (les deux pages) */
.prp-scope .prp-kb-gear{ padding:8px 9px; }
.page-view-switcher .pvs-gear{ padding:8px 9px; }
/* S3 — titre adresse : pas de gras, pas d'uppercase (le shell force 700 + caps) */
/* S6 — pills lead sur cartes kanban (réutilise .p-market .pill + dpe-x existants) */

/* [v1690] Bloc sécurité v1689 retiré — popover reconstruit autonome (prpcol-*). */

/* ════════════════════════════════════════════════════════════════
   [v1690] Popover Colonnes prospects — CSS AUTONOME (classes prpcol-*),
   valeurs copiées du popover Dossiers (vsp-*). Le popover vit dans
   #page-prospects → il résout les variables du thème de la page. */
#prp-kb-cols-pop{
  position:fixed; z-index:9999;
  background:var(--surface); border:1px solid var(--border);
  border-radius:10px;
  box-shadow:0 12px 32px rgba(0,0,0,.12), 0 2px 6px rgba(0,0,0,.06);
  min-width:240px; max-width:280px; padding:6px;
  font-family:'Inter',sans-serif; font-size:13px; color:var(--text);
  animation:prpcol-pop .18s cubic-bezier(.2,.8,.2,1);
}
@keyframes prpcol-pop{ from{opacity:0; transform:translateY(-4px) scale(.97)} to{opacity:1; transform:translateY(0) scale(1)} }
#prp-kb-cols-pop .prpcol-head{ display:flex; align-items:center; justify-content:space-between; padding:6px 8px 8px; border-bottom:1px solid var(--border); }
#prp-kb-cols-pop .prpcol-ttl{ font-weight:700; font-size:12px; letter-spacing:.2px; color:var(--text); }
#prp-kb-cols-pop .prpcol-close{ background:none; border:none; font-size:18px; line-height:1; color:var(--muted); cursor:pointer; padding:2px 6px; border-radius:6px; transition:background .15s, color .15s; }
#prp-kb-cols-pop .prpcol-close:hover{ background:var(--s2); color:var(--text); }
#prp-kb-cols-pop .prpcol-list{ display:flex; flex-direction:column; gap:1px; padding:6px 0; }
#prp-kb-cols-pop .prpcol-item{ display:flex; align-items:center; gap:10px; width:100%; padding:8px 10px; background:none; border:none; border-radius:6px; cursor:pointer; font-family:inherit; font-size:13px; color:var(--text); text-align:left; transition:background .12s; }
#prp-kb-cols-pop .prpcol-item:hover{ background:var(--s2); }
#prp-kb-cols-pop .prpcol-item.off{ opacity:.5; }
#prp-kb-cols-pop .prpcol-dot{ width:8px; height:8px; border-radius:50%; flex-shrink:0; }
#prp-kb-cols-pop .prpcol-lbl{ flex:1; font-weight:500; color:var(--text); }
#prp-kb-cols-pop .prpcol-toggle{ width:28px; height:16px; border-radius:99px; background:var(--border); position:relative; flex-shrink:0; transition:background .18s; }
#prp-kb-cols-pop .prpcol-toggle::after{ content:''; position:absolute; top:2px; left:2px; width:12px; height:12px; border-radius:50%; background:#fff; transition:left .18s; }
#prp-kb-cols-pop .prpcol-item.on .prpcol-toggle{ background:var(--accent); }
#prp-kb-cols-pop .prpcol-item.on .prpcol-toggle::after{ left:14px; }
#prp-kb-cols-pop .prpcol-reset{ display:block; width:calc(100% - 12px); margin:6px 6px 4px; padding:8px; background:var(--s2); border:1px solid var(--border); border-radius:7px; color:var(--muted); font-family:inherit; font-size:12px; font-weight:500; cursor:pointer; transition:background .15s, color .15s; }
#prp-kb-cols-pop .prpcol-reset:hover{ color:var(--text); }

/* ════════════════════════════════════════════════════════════════
   [v1694] Workflow retour terrain — moments manuels (drawer). */
/* Bouton lancement manuel du sheet (prospect PP en statut terminal) */
/* Bandeau dormant (Moment 2) */
/* [v1746] Bandeau dormant retravaillé : liseré tiède, horloge, une ligne,
   boutons compacts à droite (fini le cadre ambré massif + smiley). */
.prp-scope .ppfb-dormant{
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
  padding:11px 12px; /* [v1747] cadre viré, seul le liseré reste */
  background:color-mix(in srgb, var(--tiede) 5%, transparent);
  border:none;
  border-left:3px solid var(--tiede);
  border-radius:var(--radius, 6px);
}
.prp-scope .ppfb-dormant .ico{
  width:16px; height:16px; flex-shrink:0; color:var(--tiede); display:grid; place-items:center;
}
.prp-scope .ppfb-dormant .ico svg{ width:15px; height:15px; }
.prp-scope .ppfb-dormant .txt{ flex:1; min-width:180px; font-size:12px; color:var(--text); line-height:1.35; }
.prp-scope .ppfb-dormant .txt b{ font-weight:700; }
.prp-scope .ppfb-dormant .txt .sub{ display:block; font-size:11px; color:var(--muted); }
.prp-scope .ppfb-dormant .acts{ display:flex; gap:6px; flex-shrink:0; }
.prp-scope .ppfb-dormant .b{
  padding:0 11px; height:27px; font:inherit; font-size:11.5px; font-weight:600;
  background:var(--surface); color:var(--text-dim);
  border:1px solid var(--border); border-radius:var(--radius, 6px); cursor:pointer;
  transition:color .12s, border-color .12s, background .12s;
}
.prp-scope .ppfb-dormant .b:hover{ color:var(--text); border-color:var(--muted); }
.prp-scope .ppfb-dormant .b.warn{ color:var(--chaud); border-color:color-mix(in srgb, var(--chaud) 30%, var(--border)); }
.prp-scope .ppfb-dormant .b.warn:hover{ background:color-mix(in srgb, var(--chaud) 8%, transparent); }

/* [v1695] S1 — bouton retour terrain compact (rangée statut du drawer) */
.prp-scope .ppfb-entry-sm{
  display:inline-flex; align-items:center; gap:5px;
  font:inherit; font-size:11px; font-weight:600;
  padding:4px 10px; border-radius:99px;
  background:var(--accent-dim); color:var(--accent);
  border:1px solid color-mix(in srgb, var(--accent) 30%, var(--border));
  cursor:pointer; white-space:nowrap; transition:background .12s;
}
.prp-scope .ppfb-entry-sm:hover{ background:color-mix(in srgb, var(--accent) 16%, transparent); }
/* [v1721] Fait = VERT + crayon (modifiable) · à faire = ORANGE */
.prp-scope .ppfb-entry-sm.done{
  background:color-mix(in srgb, var(--green, #1D9E75) 12%, transparent);
  color:var(--green, #1D9E75);
  border:1px solid color-mix(in srgb, var(--green, #1D9E75) 32%, transparent);
}
.prp-scope .ppfb-entry-sm.done:hover{ background:color-mix(in srgb, var(--green, #1D9E75) 20%, transparent); }
.prp-scope .ppfb-entry-sm.todo{
  background:color-mix(in srgb, var(--tiede) 14%, transparent);
  color:var(--tiede);
  border:1px solid color-mix(in srgb, var(--tiede) 36%, transparent);
}
.prp-scope .ppfb-entry-sm.todo:hover{ background:color-mix(in srgb, var(--tiede) 22%, transparent); }

/* [v1711] S1 — badge score prospects : LOOK du badge Dossiers, COULEURS de
   l'échelle lead unifiée (chaud>=80 rouge · tiède ambre · froid bleu · dim gris). */
/* Score pill du drawer : la valeur prend la couleur de zone */
.prp-scope .p-score-pill b.chaud{ color:var(--chaud); }
.prp-scope .p-score-pill b.tiede{ color:var(--tiede); }
.prp-scope .p-score-pill b.froid{ color:var(--froid); }
.prp-scope .p-score-pill b.dim{ color:var(--muted); }

/* ════════════════════════════════════════════════════════════════
   [v1716] Drawer prospect OPTION F (handoff Margot drawer-prospect).
   Header orienté bien + accordéons. Styles portés du mockup, tokens donna. */
.prp-scope .p-drawer.p-drawer--f{ width:480px; max-width:94vw; display:flex; flex-direction:column; padding:0; }
.p-drawer--f .d-hd{ padding:16px 18px; border-bottom:1px solid var(--border); flex-shrink:0; }
.p-drawer--f .d-top{ display:flex; gap:12px; align-items:flex-start; }
.p-drawer--f .d-thumb{ width:46px; height:46px; border-radius:11px; background:linear-gradient(180deg,color-mix(in srgb,var(--froid) 16%,var(--surface)),color-mix(in srgb,var(--accent) 9%,var(--surface))); border:1px solid var(--border); color:var(--muted); display:grid; place-items:center; text-align:center; font-family:var(--mono); font-size:7px; line-height:1.3; letter-spacing:.3px; flex-shrink:0; overflow:hidden; }
.p-drawer--f .d-thumb.has-img img{ width:100%; height:100%; object-fit:cover; }
.p-drawer--f .d-nm{ font-family:var(--display,'Inter',sans-serif); font-size:17px; font-weight:800; letter-spacing:-.02em; line-height:1.2; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.p-drawer--f .d-idline{ display:flex; align-items:center; gap:7px; margin-top:4px; flex-wrap:wrap; }
.p-drawer--f .idref{ font-family:var(--mono); font-size:10px; color:var(--muted); }
.p-drawer--f .stp{ display:inline-flex; align-items:center; gap:5px; font:inherit; font-size:10.5px; font-weight:600; padding:3px 9px; border-radius:99px; border:1px solid; cursor:pointer; }
.p-drawer--f .stp .dot{ width:5px; height:5px; border-radius:50%; background:currentColor; }
.p-drawer--f .score-pill{ display:inline-grid; place-items:center; min-width:52px; height:38px; padding:0 14px; border-radius:12px; font-family:var(--display,'Inter',sans-serif); font-weight:800; font-size:20px; }
.p-drawer--f .score-pill.chaud{ color:var(--chaud); background:color-mix(in srgb,var(--chaud) 12%,transparent); }
.p-drawer--f .score-pill.tiede{ color:var(--tiede); background:color-mix(in srgb,var(--tiede) 12%,transparent); }
.p-drawer--f .score-pill.froid{ color:var(--froid); background:color-mix(in srgb,var(--froid) 12%,transparent); }
.p-drawer--f .score-pill.dim{ color:var(--muted); background:var(--s2); }
.p-drawer--f .d-nav, .p-drawer--f .d-close{ width:30px; height:30px; border-radius:var(--radius,6px); border:1px solid var(--border); background:var(--surface); color:var(--text-dim); cursor:pointer; display:grid; place-items:center; padding:0; }
.p-drawer--f .d-nav:hover, .p-drawer--f .d-close:hover{ background:var(--s2); color:var(--text); }
.p-drawer--f .d-nav .ico{ width:15px; height:15px; }
.p-drawer--f .d-bar{ display:flex; gap:6px; margin-top:14px; }
.p-drawer--f .d-bar .b{ flex:1; display:inline-flex; align-items:center; justify-content:center; gap:6px; font:inherit; font-size:12px; font-weight:600; padding:8px 4px; border-radius:var(--radius,6px); border:1px solid var(--border); background:var(--surface); color:var(--text); cursor:pointer; transition:background .12s; }
.p-drawer--f .d-bar .b:hover{ background:var(--s2); }
.p-drawer--f .d-bar .b.pri{ background:var(--text); color:var(--bg,#fff); border-color:var(--text); }
.p-drawer--f .d-bar .b.pri:hover{ background:var(--text-dim); }
.p-drawer--f .d-body{ overflow:auto; flex:1; padding-bottom:8px; }
/* accordéons */
.p-drawer--f .acc{ border-top:1px solid var(--border); }
.p-drawer--f .acc:first-child{ border-top:none; }
.p-drawer--f .acc-h{ display:flex; align-items:center; gap:9px; padding:13px 16px; cursor:pointer; font-size:13px; font-weight:600; user-select:none; }
.p-drawer--f .acc-h:hover{ background:var(--s2); }
.p-drawer--f .acc-h .ct{ font-family:var(--mono); font-size:10px; font-weight:600; color:var(--muted); background:var(--s2); border:1px solid var(--border); border-radius:99px; padding:0 7px; }
.p-drawer--f .acc-h .cv{ margin-left:auto; color:var(--muted); transition:transform .2s; width:15px; height:15px; }
.p-drawer--f .acc.open .acc-h .cv{ transform:rotate(90deg); }
.p-drawer--f .acc-b{ padding:2px 16px 16px; display:none; }
.p-drawer--f .acc.open .acc-b{ display:block; }
/* grid coordonnées / bien */
.p-drawer--f .grid2{ display:grid; grid-template-columns:auto 1fr; gap:8px 14px; font-size:12.5px; }
.p-drawer--f .grid2 .kk{ color:var(--muted); font-family:var(--mono); font-size:10px; letter-spacing:.3px; text-transform:uppercase; padding-top:2px; }
.p-drawer--f .grid2 .vv{ color:var(--text); font-weight:500; min-height:18px; }
.p-drawer--f .grid2 .vv.mono{ font-family:var(--mono); font-variant-numeric:tabular-nums; }
.p-drawer--f .grid2 .vv.edit{ border-radius:4px; padding:1px 4px; margin:-1px -4px; cursor:text; }
.p-drawer--f .grid2 .vv.edit:hover{ background:var(--s2); }
.p-drawer--f .grid2 .vv.edit:focus{ outline:none; background:var(--surface); box-shadow:0 0 0 2px var(--accent-dim); }
.p-drawer--f .grid2 .vv.edit.empty::before{ content:'à saisir'; color:var(--muted); font-weight:400; }
.p-drawer--f .grid2 .vv.edit.empty:focus::before{ content:''; }
/* estimation */
.p-drawer--f .estim{ margin-top:12px; display:flex; align-items:center; justify-content:space-between; padding:10px 12px; background:var(--s2); border:1px solid var(--border); border-radius:var(--radius,6px); }
.p-drawer--f .estim .lab{ font-size:11.5px; color:var(--text-dim); }
.p-drawer--f .estim .amt{ font-family:var(--display,sans-serif); font-weight:800; font-size:16px; }
.p-drawer--f .estim .pm{ font-family:var(--mono); font-size:10px; color:var(--muted); font-weight:500; }
.p-drawer--f .d-empty{ font-size:12px; color:var(--muted); }
/* signaux */
.p-drawer--f .sig{ display:flex; flex-direction:column; gap:11px; }
.p-drawer--f .sig-row .top{ display:flex; justify-content:space-between; font-size:12px; margin-bottom:5px; }
.p-drawer--f .sig-row .top b{ font-family:var(--mono); font-variant-numeric:tabular-nums; }
.p-drawer--f .sig-bar{ height:6px; border-radius:99px; background:var(--s3, var(--s2)); overflow:hidden; }
.p-drawer--f .sig-bar i{ display:block; height:100%; border-radius:99px; background:var(--accent); }
.p-drawer--f .sig-bar i.hot{ background:var(--chaud); }
/* timeline */
.p-drawer--f .tl{ position:relative; margin-left:2px; }
.p-drawer--f .tl::before{ content:''; position:absolute; top:8px; bottom:8px; left:11px; width:1px; background:var(--border); }
.p-drawer--f .tlr{ display:grid; grid-template-columns:24px 1fr; gap:12px; padding:8px 0; }
.p-drawer--f .tlr .d{ width:23px; height:23px; border-radius:50%; background:var(--surface); border:1px solid var(--border); display:grid; place-items:center; color:var(--text-dim); z-index:1; }
.p-drawer--f .tlr .d svg{ width:12px; height:12px; }
.p-drawer--f .tlr .d.a{ background:var(--accent-dim); color:var(--accent); border-color:color-mix(in srgb,var(--accent) 30%,transparent); }
.p-drawer--f .tlr .tt{ font-size:12.5px; line-height:1.35; }
.p-drawer--f .tlr .ts{ font-family:var(--mono); font-size:9.5px; color:var(--muted); margin-top:2px; letter-spacing:.3px; }
/* notes façon textarea */
.p-drawer--f .p-notes.notes-f{ width:100%; min-height:70px; font-size:12.5px; line-height:1.5; color:var(--text); background:var(--s2); border:1px solid var(--border); border-radius:var(--radius,6px); padding:9px 11px; }
.p-drawer--f .p-notes.notes-f:focus{ outline:none; border-color:var(--accent); background:var(--surface); box-shadow:0 0 0 3px var(--accent-dim); }
.p-drawer--f .p-notes.notes-f.empty::before{ content:'Ajouter une note…'; color:var(--muted); }
.p-drawer--f .p-notes.notes-f.empty:focus::before{ content:''; }
/* suppression discrète */
.p-drawer--f .d-footrow{ padding:14px 16px 18px; border-top:1px solid var(--border); }
.p-drawer--f .d-del{ font:inherit; font-size:11.5px; color:var(--muted); background:none; border:none; cursor:pointer; text-decoration:underline dotted; padding:0; }
.p-drawer--f .d-del:hover{ color:var(--chaud); }
body.is-mobile .prp-scope .p-drawer.p-drawer--f{ width:100%; max-width:100%; }

/* [v1717] Retours Anthony sur le drawer F. */
/* B2 — "à saisir" et valeurs alignés à GAUCHE */
.p-drawer--f .grid2 .vv.edit{ text-align:left; justify-self:stretch; }
.p-drawer--f .grid2 .vv.edit.empty::before{ text-align:left; }
/* S3 — score pill alignée verticalement avec la rangée statut/modèle */
.p-drawer--f .d-top{ align-items:center; }

/* [v1718] Score + nav + fermer inline avec les badges (adresse pleine largeur) */
.p-drawer--f .d-nm{ white-space:normal; }
.p-drawer--f .d-hdright{ margin-left:auto; display:inline-flex; align-items:center; gap:5px; }
.p-drawer--f .score-pill.sm{ min-width:40px; height:28px; padding:0 10px; border-radius:9px; font-size:15px; }

/* [v1719] Rangée badges : score/nav/X ne wrappent plus (réf déplacée dans la
   sous-ligne critères) — nowrap + le groupe droite reste collé aux badges. */
.p-drawer--f .d-idline:has(.d-hdright){ flex-wrap:nowrap; }
.p-drawer--f .d-hdright{ flex-shrink:0; }
.p-drawer--f .d-thumb.has-img{ border-radius:11px; }

/* ════════════════════════════════════════════════════════════════
   [v1720] S1 ligne d'aide kanban (valeurs Dossiers, blindées contre les
   héritages) + S2 modale de confirmation donna. */
.prp-scope .prp-kb-help{ padding:8px 0; }
.prp-scope .prp-kb-help span{
  font-family:var(--font, inherit); font-size:12px; color:var(--muted);
  letter-spacing:0; text-transform:none; font-weight:400;
}
/* Modale confirmation */
.prp-confirm-ov{
  position:fixed; inset:0; z-index:100070; /* > drawer portal 100051 & sheet 100060 */
  background:rgba(10,11,15,.45); display:flex; align-items:center; justify-content:center; padding:20px;
  animation:prpcf-in .16s ease;
}
@keyframes prpcf-in{ from{opacity:0} to{opacity:1} }
.prp-confirm{
  width:min(420px, 100%); background:var(--surface); border:1px solid var(--border);
  border-radius:var(--radius-lg, 12px); box-shadow:0 24px 60px rgba(0,0,0,.28);
  padding:20px;
  animation:prpcf-pop .18s cubic-bezier(.2,.8,.2,1);
}
@keyframes prpcf-pop{ from{opacity:0; transform:translateY(6px) scale(.97)} to{opacity:1; transform:none} }
.prp-confirm .ttl{ font-family:var(--display,'Inter',sans-serif); font-size:16px; font-weight:800; letter-spacing:-.01em; }
.prp-confirm .sub{ margin-top:8px; font-size:13px; color:var(--text-dim); line-height:1.5; }
.prp-confirm .sub b{ color:var(--text); }
.prp-confirm .btns{ display:flex; gap:8px; justify-content:flex-end; margin-top:18px; }
.prp-confirm .b{
  font:inherit; font-size:12.5px; font-weight:600; padding:9px 16px;
  border-radius:var(--radius, 6px); border:1px solid var(--border);
  background:var(--surface); color:var(--text); cursor:pointer; transition:background .12s;
}
.prp-confirm .b:hover{ background:var(--s2); }
.prp-confirm .b.pri{ background:var(--text); color:var(--bg, #fff); border-color:var(--text); }
.prp-confirm .b.pri:hover{ background:var(--text-dim); }

/* [v1722] S4 — barre d'actions compacte : icônes seules + nav intégrée */
.p-drawer--f .d-bar{ margin-top:12px; align-items:center; }
.p-drawer--f .d-bar .b{ flex:0 0 auto; padding:6px 12px; font-size:12px; height:30px; }
.p-drawer--f .d-bar .b.icon{ width:34px; padding:0; }
.p-drawer--f .d-bar .b.icon svg{ width:14px; height:14px; }
.p-drawer--f .d-bar .b.pri{ flex:0 1 auto; padding:6px 14px; }
.p-drawer--f .d-bar-sp{ flex:1; }
.p-drawer--f .d-bar .d-nav, .p-drawer--f .d-bar .d-close{ width:30px; height:30px; flex-shrink:0; }

/* [v1724] Barre d'actions drawer CONSOLIDÉE (les règles flex:1 de b1716
   gagnaient encore sur certains clients) : tout à 32px de haut, les 3 icônes
   CARRÉES comme les flèches, tooltips CSS visibles au survol. */
.prp-scope .p-drawer--f .d-bar .b{
  flex:0 0 auto !important; height:32px !important; padding:0 12px !important;
  font-size:12px !important;
}
.prp-scope .p-drawer--f .d-bar .b.icon{
  width:32px !important; padding:0 !important; position:relative;
}
.prp-scope .p-drawer--f .d-bar .b.icon svg{ width:14px; height:14px; }
.prp-scope .p-drawer--f .d-bar .d-nav,
.prp-scope .p-drawer--f .d-bar .d-close{ width:32px; height:32px; }
/* Tooltip visible immédiat */
.prp-scope .p-drawer--f .d-bar .b.icon::after{
  content:attr(data-tip);
  position:absolute; bottom:calc(100% + 7px); left:50%; transform:translateX(-50%) translateY(2px);
  background:var(--text); color:var(--bg, #fff);
  font-size:10.5px; font-weight:600; padding:4px 8px; border-radius:5px;
  white-space:nowrap; pointer-events:none; opacity:0; transition:opacity .12s, transform .12s;
  z-index:5;
}
.prp-scope .p-drawer--f .d-bar .b.icon:hover::after{ opacity:1; transform:translateX(-50%) translateY(0); }

/* [v1725] S1 — la barre d'actions s'aligne à gauche sur le badge statut
   (l'offset de la vignette 46px + gap 12px) */
.prp-scope .p-drawer--f .d-bar{ margin-left:58px; }

/* ════════════════════════════════════════════════════════════════
   [v1730] Carte kanban PROSPECT — option A « signal-first » (Margot). */
.prp-scope .prp-cardA{ padding:12px 13px; border-radius:var(--radius, 6px); }
.prp-scope .prp-cardA .pca-top{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.prp-scope .prp-cardA .pca-addr{ font-size:14px; font-weight:700; letter-spacing:-.01em; line-height:1.3; min-width:0; }
.prp-scope .prp-cardA .pca-pill{
  flex-shrink:0; font-family:var(--mono); font-weight:600; font-variant-numeric:tabular-nums;
  font-size:12px; padding:2px 8px; border-radius:99px; /* [v1732] taille alignée dossier */
}
.prp-scope .prp-cardA .pca-pill.chaud{ color:var(--chaud); background:color-mix(in srgb, var(--chaud) 12%, transparent); }
.prp-scope .prp-cardA .pca-pill.tiede{ color:var(--tiede); background:color-mix(in srgb, var(--tiede) 14%, transparent); }
.prp-scope .prp-cardA .pca-pill.froid{ color:var(--froid); background:color-mix(in srgb, var(--froid) 12%, transparent); }
.prp-scope .prp-cardA .pca-pill.dim{ color:var(--muted); background:var(--s2); }
.prp-scope .prp-cardA .pca-meta{ font-size:12px; color:var(--text-dim); margin-top:5px; }
.prp-scope .prp-cardA .pca-sig{
  display:inline-flex; align-items:center; gap:6px; margin-top:9px;
  font-size:11.5px; font-weight:600; border-radius:99px; padding:3px 9px;
  max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.prp-scope .prp-cardA .pca-sig .d{ width:5px; height:5px; border-radius:50%; background:currentColor; flex-shrink:0; }
.prp-scope .prp-cardA .pca-sig.chaud{ color:var(--chaud); background:color-mix(in srgb, var(--chaud) 12%, transparent); }
.prp-scope .prp-cardA .pca-sig.tiede{ color:var(--tiede); background:color-mix(in srgb, var(--tiede) 14%, transparent); }
.prp-scope .prp-cardA .pca-sig.froid{ color:var(--froid); background:color-mix(in srgb, var(--froid) 12%, transparent); }
.prp-scope .prp-cardA .pca-sig.dim{ color:var(--muted); background:var(--s2); }
.prp-scope .prp-cardA .pca-foot{
  display:flex; align-items:center; justify-content:space-between;
  margin-top:10px; padding-top:9px; border-top:1px solid var(--border);
}
.prp-scope .prp-cardA .pca-src{ font-family:var(--mono); font-size:10px; color:var(--muted); display:inline-flex; align-items:center; gap:4px; }
.prp-scope .prp-cardA .pca-age{ font-size:10.5px; color:var(--muted); }

/* [v1731] S1 — bouton Feedback à la height des autres badges de la rangée */
.prp-scope .p-drawer--f .ppfb-entry-sm{
  padding:3px 9px !important; font-size:10.5px !important; line-height:1.2 !important;
  height:auto !important; border-radius:99px !important;
}
.prp-scope .p-drawer--f .ppfb-entry-sm svg{ width:10px !important; height:10px !important; }
/* [v1731] S3 — modèle de scoring en couleur sur la carte prospect */
.prp-scope .prp-cardA .pca-src.m-genesis{ color:#7C6AF7; }
.prp-scope .prp-cardA .pca-src.m-sismo{ color:#378ADD; }
.prp-scope .prp-cardA .pca-src.m-meridian{ color:#BA7517; }

/* [v1733] S2/S3 — même géométrie de board que Dossiers : le wrap remplit la
   hauteur viewport (règle shell height:100vh-220 harmonisée), la ligne d'aide
   tombe au même niveau sur les deux kanbans. */
body.shell-v2-on .prp-scope .vend-board-wrap{
  height:calc(100vh - 220px) !important;
  max-height:calc(100vh - 220px);
}

/* [v1749] Badge "Nouveau" (prospect détecté ≤72h non traité) — vert, un coup d'œil */
.prp-scope .prp-cardA .pca-new{
  display:inline-flex; align-items:center; gap:5px; margin-bottom:7px;
  font-size:9.5px; font-weight:800; letter-spacing:.06em; text-transform:uppercase;
  color:var(--green, #1D9E75);
  background:color-mix(in srgb, var(--green, #1D9E75) 12%, transparent);
  border-radius:99px; padding:2px 8px;
}
.prp-scope .prp-cardA .pca-new .d{ width:5px; height:5px; border-radius:50%; background:currentColor; animation:prpnew-pulse 2s infinite; }
@keyframes prpnew-pulse{ 0%,100%{opacity:1} 50%{opacity:.35} }

/* [v1750] Barre de filtres : UNE ligne, scroll horizontal (scrollbar masquée) */
.prp-scope .prp-chips-bar{
  flex-wrap:nowrap !important;
  overflow-x:auto; overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  white-space:nowrap;
}
.prp-scope .prp-chips-bar::-webkit-scrollbar{ display:none; }
.prp-scope .prp-chips-bar .prp-chip{ flex-shrink:0; }
.prp-scope .prp-chips-bar .prp-chip-sep{ flex-shrink:0; }
/* Chip Nouveau : verte quand active */
.prp-scope .prp-chip.fresh.on{
  background:color-mix(in srgb, var(--green, #1D9E75) 14%, transparent);
  border-color:color-mix(in srgb, var(--green, #1D9E75) 40%, transparent);
  color:var(--green, #1D9E75);
}
.prp-scope .prp-chip.fresh.on .ct{ color:var(--green, #1D9E75); }
