/* La vue « Valeur » de l'onglet Propriétaires (src/parc-valeur.js), agence seulement. Les tableaux, boutons et notes
   sont ceux de la vue « Parcelles » (.fc-table, .pm-table, .bouton, .pm-aide) ; ici : la phrase de prudence, la
   progression, les chiffres alignés, la confiance. Aucune couleur d'interface : la confiance est une encre plus ou
   moins pleine (élevée pleine, moyenne à demi, faible au trait), dans les deux thèmes. */
.pc .pv { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.pc .pv-limites { margin: 0; padding: 8px 10px; border-radius: var(--r-bouton); background: var(--i-survol, var(--survol)); box-shadow: inset 0 0 0 1px var(--i-trait, var(--filet)); color: var(--i-encre-2, var(--encre-2)); font-size: var(--t-12); line-height: 1.45; }
.pc .pv-limites b { color: var(--i-encre, var(--encre)); font-weight: 600; }
.pc .pv-action { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; }
.pc .pv-action .bouton-primaire { width: auto; margin: 0; }
.pc .pv-progres { font-size: var(--t-13); color: var(--i-encre, var(--encre)); font-variant-numeric: tabular-nums; }
.pc .pv-aide { font-size: var(--t-12); color: var(--i-lib, var(--encre-3)); }
/* la classe globale .num de style.css (marge de 14 px, chiffres espacés, gris) ne vaut pas ici */
.pc .pv .num { margin: 0; letter-spacing: 0; font-size: inherit; font-variant-numeric: tabular-nums; white-space: nowrap; }
.pc .pv .pv-central { font-weight: 600; color: var(--i-encre, var(--encre)); }
.pc .pv th[scope="row"] { font-weight: 500; }
.pc .pv th[scope="row"] small { display: block; margin-top: 1px; font-size: var(--t-11); font-weight: 400; color: var(--i-lib, var(--encre-3)); }
/* les propriétaires : une grille, nom et confiance à gauche, valeur centrale et fourchette alignées à droite */
.pc .pv-proprios ul { list-style: none; margin: 0; padding: 0; }
.pc .pv-proprios :is(li, .pv-tete) { display: grid; grid-template-columns: minmax(0, 1fr) 72px 124px; column-gap: 12px; align-items: baseline; }
.pc .pv-tete { margin: 0; padding: 0 0 6px; border-bottom: 1px solid var(--i-trait, var(--filet)); font-size: var(--t-11); color: var(--i-lib, var(--encre-3)); }
.pc .pv-tete span + span { text-align: right; }
.pc .pv-proprios li { row-gap: 0; min-height: 0; padding: 7px 0; line-height: 1.3; border-bottom: 1px solid var(--i-trait, var(--filet)); font-size: var(--t-13); }
.pc .pv-proprios li.pv-ensemble { border-bottom: 0; border-top: 1px solid var(--i-encre-2, var(--encre-2)); }
.pc .pv-qui { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pc .pv-qui b { font-weight: 500; color: var(--i-encre, var(--encre)); }
.pc .pv-qui small { margin-left: 8px; font-size: var(--t-11); color: var(--i-lib, var(--encre-3)); }
.pc .pv-qui .rf-pastille { vertical-align: 0; }
.pc .pv-proprios .pv-central { text-align: right; }
.pc .pv-four { text-align: right; color: var(--i-encre-2, var(--encre-2)); }
.pc .pv-proprios .pv-c { grid-column: 1 / -1; }
/* la confiance : un point (plein, à demi, au trait) et le mot */
.pc .pv-conf { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; color: var(--i-encre-2, var(--encre-2)); }
.pc .pv-conf i, .pc .pv-barre i { background: var(--i-encre, var(--encre)); }
.pc .pv-conf i { width: 7px; height: 7px; border-radius: 50%; }
.pc [data-conf="moyenne"] i, .pc .pv-barre i[data-conf="moyenne"] { opacity: .5; }
.pc .pv-conf[data-conf="faible"] i { background: transparent; box-shadow: inset 0 0 0 1.5px var(--i-encre-2, var(--encre-2)); }
.pc .pv-barre i[data-conf="faible"] { background: var(--jauge); opacity: 1; }
/* la part de la valeur par niveau de confiance : une barre fine, puis les pourcentages */
.pc .pv-c { display: flex; align-items: center; gap: 8px; margin-top: 4px; min-width: 0; line-height: 1; }
.pc .pv-c .pv-parts { margin: 0; }
.pc .pv-barre { display: flex; flex: none; width: 96px; height: 6px; overflow: hidden; border-radius: var(--r-fin); background: var(--i-survol, var(--survol)); }
.pc .pv-barre i { display: block; height: 100%; }
.pc .pv-parts { display: block; margin-top: 3px; font-size: var(--t-11); color: var(--i-lib, var(--encre-3)); font-variant-numeric: tabular-nums; white-space: nowrap; }
.pc .pv-notes { display: inline-flex; align-items: center; justify-content: center; min-width: 16px; height: 16px; margin-left: 4px; padding: 0 4px; border-radius: var(--r-bouton); background: var(--i-survol, var(--survol)); box-shadow: inset 0 0 0 1px var(--i-trait, var(--filet)); color: var(--i-encre-2, var(--encre-2)); font-size: var(--t-10); font-variant-numeric: tabular-nums; vertical-align: 1px; }
/* la ligne choisie déplie sa fiche (src/parc-valeur-rapport.js) : la valeur retenue et ses actions, puis comment la
   valeur se forme, la situation, les bâtiments et ce qu'il faut vérifier ; les lignes reprennent la grille des
   propriétaires (nom à gauche, centrale et fourchette alignées à droite) */
.pc .pv-detail td { padding: 0 10px 14px; white-space: normal; }
.pc .pv-carte { display: flex; flex-direction: column; gap: 14px; padding-top: 10px; }
.pc .pv-carte-tete { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; padding-bottom: 10px; border-bottom: 1px solid var(--i-trait, var(--filet)); }
.pc .pv-carte-lib { margin: 0; min-width: 0; font-size: var(--t-12); color: var(--i-encre-2, var(--encre-2)); }
.pc .pv-carte-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.pc .pv-carte-actions .bouton, .pc .pv-rapports .bouton { width: auto; margin: 0; }
.pc .pv-rapports { display: inline-flex; gap: 6px; margin-left: auto; }
.pc .pv-carte-corps { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px 28px; }
@container (min-width: 760px) {
  .pc .pv-carte-corps { grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); }
  .pc .pv-bloc-large { grid-column: 1 / -1; }
}
.pc .pv-bloc { min-width: 0; }
.pc .pv-bloc h4 { margin: 0 0 2px; padding-bottom: 5px; border-bottom: 1px solid var(--i-encre-2, var(--encre-2)); font-size: var(--t-11); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--i-lib, var(--encre-3)); }
.pc .pv-bloc h4 small { margin-left: 6px; font-weight: 400; letter-spacing: 0; text-transform: none; }
.pc .pv-lignes { list-style: none; margin: 0; padding: 0; }
.pc .pv-lignes li { display: grid; grid-template-columns: minmax(0, 1fr) 72px 124px; column-gap: 12px; align-items: baseline; padding: 6px 0; border-bottom: 1px solid var(--i-trait, var(--filet)); font-size: var(--t-13); line-height: 1.3; }
.pc .pv-lignes .pv-central, .pc .pv-lignes .pv-four { text-align: right; }
.pc .pv-l-qui { min-width: 0; }
.pc .pv-chiffres { display: contents; }
.pc .pv-l-qui b { font-weight: 500; color: var(--i-encre, var(--encre)); }
.pc .pv-l-qui small { display: block; margin-top: 1px; font-size: var(--t-11); line-height: 1.35; color: var(--i-lib, var(--encre-3)); overflow-wrap: anywhere; }
.pc .pv-lignes li.pv-retenue { border-bottom: 0; }
.pc .pv-lignes li.pv-retenue b { font-weight: 600; }
.pc .pv-sit { margin: 0; }
.pc .pv-sit div { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; border-bottom: 1px solid var(--i-trait, var(--filet)); font-size: var(--t-12); line-height: 1.35; }
.pc .pv-sit dt { flex: none; color: var(--i-lib, var(--encre-3)); }
.pc .pv-sit dd { margin: 0; min-width: 0; text-align: right; color: var(--i-encre, var(--encre)); overflow-wrap: anywhere; }
.pc .pv-vide { margin: 6px 0 0; font-size: var(--t-12); color: var(--i-encre-2, var(--encre-2)); }
.pc .pv-liste { margin: 6px 0 0; padding-left: 16px; font-size: var(--t-12); line-height: 1.45; color: var(--i-encre-2, var(--encre-2)); }
.pc .pv-liste li + li { margin-top: 2px; }
/* étroit : la fourchette passe sous la valeur centrale */
@container (max-width: 520px) {
  .pc .pv-lignes li { grid-template-columns: minmax(0, 1fr) auto; }
  .pc .pv-lignes .pv-chiffres { display: flex; flex-direction: column; align-items: flex-end; justify-content: flex-start; align-self: start; gap: 2px; }
  .pc .pv-lignes .pv-four { font-size: var(--t-11); }
}
/* le rapport : les classes des rapports de la carte (src/rapports.css), plus le titre de chapitre et la ligne en gras */
.rapport .pvr-h2 { margin: 24px 0 12px; padding: 10px 0 0; border-top: 1px solid var(--encre); font-size: var(--t-15); font-weight: 600; letter-spacing: -0.01em; break-after: avoid; }
.rapport .pvr-h2 small { margin-left: 6px; font-size: var(--t-11); font-weight: 400; letter-spacing: 0; color: var(--encre-3); }
.rapport .pvr .rapport-h3 { break-after: avoid; }
.rapport .pvr .rapport-h3 small { margin-left: 6px; font-size: var(--t-11); font-weight: 400; color: var(--encre-3); }
.rapport .pvr .table-defile { margin: 0 0 8px; overflow-x: auto; }
.rapport .pvr-table tr.pvr-gras > * { font-weight: 600; border-top: 1px solid var(--encre); }
.rapport .pvr .pvr-chapo { font-family: var(--rc-serif, Georgia, serif); font-size: var(--t-17); line-height: 1.5; color: var(--rc-encre, #15181D); }
.rapport .pvr-figure { margin: 4px 0 18px; break-inside: avoid; }
.rapport .pvr-figure svg { display: block; width: 100%; height: auto; }
.rapport .pvr-figure figcaption { margin-top: 6px; font-size: var(--t-12); line-height: 1.45; color: var(--rc-gris, #5C6470); }
.rapport .pvr-table { table-layout: fixed; width: 100%; }
.rapport .pvr-table td.num, .rapport .pvr-table th.num { white-space: nowrap; }
/* téléphone : un tableau à colonnes fixes s'écraserait (chiffres qui se chevauchent) ; il garde sa largeur et défile de côté */
@media (max-width: 700px) { .rapport .pvr-table:not(.pvr-sit) { min-width: 640px; } .rapport .pvr .table-defile { -webkit-overflow-scrolling: touch; } }
.rapport .pvr-table td, .rapport .pvr-table th { overflow-wrap: break-word; }
.rapport .pvr-table.pvr-sit th[scope="row"] { width: auto; font-weight: 400; color: var(--rc-gris, #5C6470); }
.rapport .pvr-sources-titre { margin: 10px 0 4px; font-size: var(--t-10); font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--rc-gris, #5C6470); }
.rapport .pvr-sources { margin: 0 0 14px; padding: 0 0 0 14px; font-size: var(--t-11); line-height: 1.45; color: var(--rc-gris, #5C6470); }
.rapport .pvr-sources li + li { margin-top: 2px; }
.rapport .pvr .rapport-pied { margin-top: 24px; padding-top: 8px; border-top: 1px solid var(--filet); font-size: var(--t-11); color: var(--encre-3); }
/* téléphone : Word et Excel s'ajoutent aux boutons des autres modules (dossier, e-mail) : la barre défile de côté,
   chaque bouton sur une ligne, plutôt que des libellés coupés en trois */
@media (max-width: 560px) {
  .rapport .rapport-barre:has([data-pvr-word]) { overflow-x: auto; scrollbar-width: none; }
  .rapport .rapport-barre:has([data-pvr-word]) .bouton { flex: none; white-space: nowrap; padding: 0 12px; }
  .rapport .rapport-barre:has([data-pvr-word]) .rapport-barre-titre { display: none; }
}
@media (max-width: 899px) {
  .pc .pv-action .bouton { min-height: 44px; }
  .pc .pv-action .bouton-primaire { width: 100%; }
  .pc .pv-proprios li { font-size: var(--t-14); }
  .pc .pv-qui { white-space: normal; overflow-wrap: anywhere; }
  .pc .pv-qui small { display: block; margin: 2px 0 0; }
  .pc .pv-parcelles .pv-detail { display: block; padding: 0 0 12px; }
  .pc .pv-parcelles .pv-detail td { display: block; padding: 0; }
  .pc .pv-parcelles .pv-detail td::before { display: none; }
  .pc .pv-carte-actions .bouton, .pc .pv-rapports .bouton { min-height: 44px; }
  .pc .pv-rapports { margin-left: 0; }
}
/* la fiche dépliée reste dans la largeur visible du cadre, même quand le tableau défile de côté */
.pc .pv .fc-table-cadre { container-type: inline-size; }
.pc .pv-detail td > * { position: sticky; left: 10px; max-width: calc(100cqw - 20px); box-sizing: border-box; }
.pc .pv-parcelles :is(th, td):nth-child(4) { padding-left: 16px; }
@media (max-width: 899px) {
  /* en cartes, la fiche dépliée suit sa carte, pleine largeur, sans « sticky » */
  html[data-theme] .page-app .pc .pv-parcelles tbody tr.pv-detail { display: block; height: auto; min-height: 0; padding: 0 0 14px; }
  html[data-theme] .page-app .pc .pv-parcelles tbody tr.pv-detail td { position: static; height: auto; min-height: 0; max-height: none; }
  .pc .pv-parcelles .pv-detail td > * { position: static; max-width: none; }
}

/* Alerte « recherche très longue » de la vue Sociétés : sobre, le liseré lumineux de src/lueur.js la borde tant que l'analyse dure */
.pc .ps-longue { display: flex; flex-direction: column; gap: 4px; margin: 10px 0; padding: 12px 14px; border-radius: 10px; background: var(--i-fond, #fff); color: var(--i-encre, var(--encre)); font-size: var(--t-13); line-height: 1.45; }
.pc .ps-longue b { font-size: var(--t-14, 14px); }
.pc .ps-longue span { color: var(--i-encre-2, #555); }
