/* ===== Lot C2 : corrections commerce et persistance ===== */

/* Parc : résumé sur une ligne, statistiques repliées, cartes compactes (photo gardée). */
.v2-resume-ligne { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 20px; margin: 10px 0 4px; padding: 8px 14px; background: #fff; border: 1px solid hsl(var(--bord)); border-radius: 12px; font-size: 13.5px; color: hsl(var(--muted-foreground)); box-shadow: var(--v2-ombre-1); }
.v2-resume-ligne strong { font-size: 17px; color: hsl(var(--foreground)); margin-right: 3px; }
.v2-stats { margin-left: auto; }
.v2-stats > summary { cursor: pointer; font-weight: 650; color: hsl(var(--azur, 214 80% 48%)); padding: 4px 8px; border-radius: 8px; }
.v2-stats > summary:hover { background: #eaf2ff; }
.v2-stats[open] { flex-basis: 100%; margin-left: 0; }
.v2-stats .v2-graphes { margin: 10px 0 4px; }
.v2-resume-ligne + .gg-toolbar, .gg-toolbar { margin: 10px 0; }
.v2-carte-visuel .v2-carte-img { height: 104px; }
.gg-car.v2-carte-photo { margin: 8px 0; }
.v2-carte-photo p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin: 4px 0 6px; }
.v2-carte-photo .gg-tags { margin: 6px 0; }
.v2-carte-photo .gg-location { margin-top: 4px; }
@media (min-width: 1900px) {
  .v2-carte-visuel .v2-carte-img { height: 118px; }
  /* Large écran : les cartes d'une étape se rangent côte à côte (plus de voitures d'un coup d'œil). */
  .gg-lane { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); column-gap: 12px; align-content: start; }
  .gg-lane > .gg-lane-title, .gg-lane > small, .gg-lane > .gg-empty { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .v2-resume-ligne { gap: 4px 14px; font-size: 12.5px; }
  .v2-stats { margin-left: 0; }
  .v2-carte-visuel .v2-carte-img { height: 140px; }
}

/* Aujourd'hui : la file des actions commerciales avant les chiffres. */
.v2-file-actions-liste { display: grid; gap: 2px; padding: 4px 8px 10px; }
.v2-action-ligne { display: grid; grid-template-columns: 76px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 8px; border-radius: 10px; color: var(--ink); text-decoration: none; }
.v2-action-ligne:hover { background: #eef5ff; }
.v2-action-ligne .v2-task-photo, .v2-action-ligne .square { width: 76px; height: 54px; }
.v2-action-ligne .grow { display: grid; gap: 2px; min-width: 0; }
.v2-action-ligne small, .v2-action-ligne .muted { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v2-stats-secondaires { margin-top: 18px; display: grid; gap: 14px; }
@media (max-width: 600px) {
  .v2-action-ligne { grid-template-columns: 60px minmax(0, 1fr); }
  .v2-action-ligne .v2-attente-ligne { grid-column: 2; }
  .v2-action-ligne .v2-task-photo, .v2-action-ligne .square { width: 60px; height: 44px; }
}

/* Nouveau dossier client. */
.v2-nouveau-dossier { display: grid; gap: 12px; }
.v2-nouveau-dossier .fw-label { margin: 0; display: grid; gap: 6px; font-weight: 600; color: hsl(var(--foreground)); }
.v2-nouveau-dossier .fw-input { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid #ccd9e8; border-radius: 8px; font: inherit; font-size: 14px; background: #fff; }
.v2-nd-champs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.v2-nd-canal { border: 0; padding: 0; margin: 0; }
.v2-nd-canal .fw-filter-row { margin: 6px 0 0; }
.v2-nd-canal .fw-filter-row button { border: 1px solid #ccd9e8; font-size: 13px; color: hsl(var(--foreground)); }
.v2-nd-voiture { display: grid; grid-template-columns: 96px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 10px; border: 1px solid hsl(var(--bord)); border-radius: 12px; background: #f8fbff; }
.v2-nd-voiture .v2-nd-photo { width: 96px; height: 66px; border-radius: 8px; overflow: hidden; }
.v2-nd-voiture span { display: grid; gap: 3px; min-width: 0; }
.v2-nd-alerte { display: grid; gap: 6px; padding: 12px; border: 1px solid #f0c3bd; background: #fff4f2; border-radius: 10px; color: #8c2f22; font-size: 13.5px; }
.v2-nd-info { margin: 0; padding: 10px 12px; background: #eef5ff; border-radius: 8px; font-size: 13.5px; color: #24456a; }
.v2-nd-actions { gap: 8px; }
@media (max-width: 700px) { .v2-nd-champs { grid-template-columns: 1fr; } .v2-nd-voiture { grid-template-columns: 72px minmax(0, 1fr); } .v2-nd-voiture .badge { grid-column: 2; justify-self: start; } .v2-nd-voiture .v2-nd-photo { width: 72px; height: 50px; } }
.v2-clients-actions { margin: 8px 0 12px; }

/* Recherche de voiture pour un client : photo, prix, statut ; engagées signalées. */
.v2-demande-raccourcis { margin: 4px 0 10px; }
.v2-resultats-voitures .v2-mini-carte.v2-resultat-voiture { display: grid; grid-template-columns: 84px minmax(0, 1fr) auto; gap: 10px; align-items: center; }
.v2-resultat-voiture .v2-mini-photo { width: 84px; height: 58px; border-radius: 8px; overflow: hidden; }
.v2-resultat-texte { display: grid; gap: 2px; min-width: 0; }
.v2-resultat-texte small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v2-resultat-prix { font-size: 13px; }
.v2-resultat-voiture.v2-engagee { background: #fbf6f5; }
.v2-confirmer-rattachement { display: grid; gap: 6px; justify-items: start; max-width: 260px; }
.v2-confirmer-rattachement small { color: #8c2f22; }
@media (max-width: 600px) {
  .v2-resultats-voitures .v2-mini-carte.v2-resultat-voiture { grid-template-columns: 64px minmax(0, 1fr); }
  .v2-resultat-voiture > .btn, .v2-resultat-voiture > .v2-confirmer-rattachement { grid-column: 1 / -1; }
  .v2-resultat-voiture .v2-mini-photo { width: 64px; height: 46px; }
}
.v2-conv-voiture { color: hsl(var(--foreground)); font-weight: 600; }

/* Montants d'un dossier, distingués. */
.v2-montants { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; margin: 10px 0 12px; }
.v2-montants > span { display: grid; gap: 2px; padding: 8px 10px; border: 1px solid hsl(var(--bord)); border-radius: 8px; background: #fff; }
.v2-montants small { color: hsl(var(--muted-foreground)); font-size: 12px; }
.v2-montants b { font-size: 13.5px; }

/* Après-vente : dossiers liés. */
.v2-sav-liens { margin: 14px 0; display: grid; gap: 6px; }
.v2-sav-liens h4 { margin: 0 0 4px; }
.v2-sav-lien { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 10px; border: 1px solid hsl(var(--bord)); border-radius: 8px; background: #fbfdff; }
.v2-sav-lien > span { display: grid; gap: 2px; min-width: 0; }
.v2-sav-lien small { color: hsl(var(--muted-foreground)); }

/* Bandeau des essais (aperçu sans serveur). */
.v2-essais button.v2-lien { font-weight: 650; }
.v2-essais-confirmer { font-weight: 650; }
.v2-conversation .conv-head .badge[data-engagee] { white-space: normal; max-width: 100%; }
.v2-resultats-voitures .v2-mini-carte .v2-confirmer-rattachement { grid-column: 1 / -1; max-width: none; justify-items: start; grid-template-columns: 1fr auto auto; align-items: center; }
.v2-confirmer-rattachement small { white-space: normal; }
@media (max-width: 600px) { .v2-resultats-voitures .v2-mini-carte .v2-confirmer-rattachement { grid-template-columns: 1fr; } }
.v2-action-ligne { grid-template-columns: 76px minmax(0, 1fr); }
.v2-action-ligne .v2-attente-ligne { grid-column: 2; font-size: 12px; }
.v2-nd-canal .fw-filter-row button.selected { background: #1f6fd1; color: #fff; border-color: #1f6fd1; }
