/* d11 A : une seule saisie, tableau et volet au bureau, cartes au chantier. */
.visite-metadonnees { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.visite-composition { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:18px; align-items:start; }
.visite-saisie .panel { margin-bottom:16px; }
.visite-colonnes,.visite-constat { display:grid; grid-template-columns:minmax(140px,1fr) minmax(160px,2fr) 150px 130px; gap:12px; }
.visite-colonnes { font-size:12px; color:var(--muted,#656b74); padding:8px 0; border-bottom:1px solid #e6e8ed; }
.visite-constat { padding:16px 0; border-bottom:1px solid #e6e8ed; }
.visite-constat textarea,.visite-constat select,.visite-constat input { max-width:100%; width:100%; }
.visite-point { padding:12px 0; border:0; border-bottom:1px solid #e6e8ed; }
.visite-point legend { font-weight:600; font-size:13px; }
.visite-point label { display:inline-flex; gap:5px; align-items:center; padding:8px 12px 8px 0; }
.visite-photo { min-width:0; border:0; padding:0; }
.visite-photo input[type=file] { max-width:100%; font-size:12px; }
.visite-photo [role=status] { display:block; }
.visite-galerie { display:flex; flex-wrap:wrap; gap:12px; margin:16px 0; }
.visite-galerie figure { margin:0; width:160px; }
.visite-galerie img { width:160px; height:120px; object-fit:cover; border-radius:8px; }
.visite-galerie figcaption { font-size:12px; margin-top:4px; }
.visite-terminer { display:flex; align-items:center; gap:14px; padding:14px 0; }
.visite-terminaison { margin:0; flex:none; }
.visite-suivi { display:flex; flex-wrap:wrap; align-items:center; gap:8px; min-width:0; }
.visite-photo-selection { margin:8px 0; padding:8px; border:1px solid #e6e8ed; border-radius:8px; overflow-wrap:anywhere; }
.visite-photo-selection p { font-size:12px; margin:4px 0; }
.visite-compte-rendu { display:flex; align-items:center; gap:12px; padding:12px 0; }
@media(max-width:1100px) { .visite-composition { grid-template-columns:minmax(0,1fr) 260px; } .visite-colonnes { display:none; } .visite-constat { grid-template-columns:1fr 1fr; } }
@media(max-width:680px) { .visite-metadonnees,.visite-composition,.visite-constat { grid-template-columns:minmax(0,1fr); } .visite-constat { border:1px solid #e6e8ed; border-radius:10px; padding:14px; margin-bottom:12px; } .visite-terminer { position:sticky; bottom:64px; background:#fff; border:1px solid #e6e8ed; border-radius:10px; padding:12px; z-index:15; flex-wrap:wrap; } .visite-terminer .btn { width:100%; } .visite-terminer span { font-size:12px; } .visite-compte-rendu { flex-wrap:wrap; } }

.visite-tableau { width:100%; table-layout:fixed; border-collapse:collapse; }
.visite-tableau th { text-align:left; color:#656b74; font-size:12px; padding:10px 8px; }
.visite-tableau th:nth-child(1) { width:24%; }
.visite-tableau th:nth-child(2) { width:30%; }
.visite-tableau th:nth-child(3) { width:24%; }
.visite-tableau th:nth-child(4) { width:22%; }
.visite-tableau .visite-constat { display:table-row; }
.visite-tableau td { padding:12px 8px; vertical-align:top; }
@media(max-width:680px) {
  .visite-tableau,.visite-tableau tbody,.visite-tableau td { display:block; width:100%; }
  .visite-tableau thead { display:none; }
  .visite-tableau .visite-constat { display:block; }
  .visite-tableau td { padding:8px 0; }
}

.visite-tableau .visite-galerie figure,.visite-tableau .visite-galerie img { width:100%; }
.visite-tableau .visite-galerie img { height:90px; }

.visite-tableau td.field { display:table-cell; }
.visite-tableau td label { display:block; margin-bottom:5px; }
@media(max-width:680px) { .visite-tableau td.field { display:block; } }

.visite-metadonnees { grid-template-columns:repeat(2,minmax(0,1fr)); }
.visite-contexte-edit summary { cursor:pointer; padding:8px; font-weight:600; }
.visite-incident-depart { overflow-wrap:anywhere; }
.visite-photo .btn { display:inline-block; margin:4px 4px 4px 0; white-space:normal; }
@media(max-width:680px) { .visite-terminer { flex-wrap:nowrap; justify-content:space-between; } .visite-terminer .btn { width:auto; } .visite-metadonnees { grid-template-columns:minmax(0,1fr); } }
@media(max-width:680px) {
  .visite-terminer .btn,.visite-saisie .btn { min-height:44px; }
  .visite-saisie .check-line,.visite-point label { min-height:44px; cursor:pointer; }
  .visite-saisie .check-line { display:flex; align-items:center; gap:8px; }
  .visite-saisie .check-line input,.visite-point input { flex:none; width:20px; height:20px; }
}

/* V4 B : état puis Terminer restent dans la barre compacte, hors commande flottante à droite. */
@media(max-width:680px) { .visite-terminer { justify-content:flex-start; } }
