/**
 * Admin – Contrat de vente : mise en page responsive (mobile, tablette, desktop).
 * Scopé à .validation-contrat-vente-admin pour ne pas impacter le reste de l'app.
 */
.validation-contrat-vente-admin {
  --contrat-vente-preview-height: 400px;
  --contrat-vente-preview-min: 350px;
}

@media (min-width: 768px) {
  .validation-contrat-vente-admin {
    --contrat-vente-preview-height: 500px;
    --contrat-vente-preview-min: 450px;
  }
}

@media (min-width: 992px) {
  .validation-contrat-vente-admin {
    --contrat-vente-preview-height: 600px;
    --contrat-vente-preview-min: 500px;
  }
}

/* ----- En-tête de la card : empiler sur mobile, en ligne sur desktop ----- */
.validation-contrat-vente-admin .validation-contrat-vente-header {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: stretch;
}

@media (min-width: 992px) {
  .validation-contrat-vente-admin .validation-contrat-vente-header {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }
}

/* ----- Sections : largeur pleine sur mobile, bordures adaptées ----- */
.validation-contrat-vente-admin .validation-contrat-vente-section {
  min-width: 0;
}

.validation-contrat-vente-admin .validation-contrat-vente-doc {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.validation-contrat-vente-admin .validation-contrat-vente-doc .d-flex.align-items-center.mb-2 {
  min-width: 0;
  max-width: 100%;
  width: 100%;
}

.validation-contrat-vente-admin .validation-contrat-vente-doc .text-truncate {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (min-width: 992px) {
  .validation-contrat-vente-admin .validation-contrat-vente-doc {
    align-items: center;
    flex: 0 0 auto;
  }
}

.validation-contrat-vente-admin .validation-contrat-vente-recap {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0.75rem 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

@media (min-width: 992px) {
  .validation-contrat-vente-admin .validation-contrat-vente-recap {
    border-top: none;
    border-left: 1px solid rgba(0, 0, 0, 0.1);
    border-right: 1px solid rgba(0, 0, 0, 0.1);
    padding-left: 1rem;
    padding-right: 1rem;
    flex: 0 0 auto;
  }
}

.validation-contrat-vente-admin .validation-contrat-vente-recap .row {
  width: 100%;
  max-width: 280px;
}

@media (min-width: 576px) {
  .validation-contrat-vente-admin .validation-contrat-vente-recap .row {
    max-width: 100%;
  }
}

.validation-contrat-vente-admin .validation-contrat-vente-signature {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

@media (min-width: 992px) {
  .validation-contrat-vente-admin .validation-contrat-vente-signature {
    border-top: none;
    flex: 1 1 auto;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1rem;
  }
}

/* ----- Bloc DocuSign : pleine largeur sur mobile, 25 % sur desktop ----- */
.validation-contrat-vente-admin .validation-contrat-vente-docusign-block {
  width: 100%;
  min-width: 0;
}

@media (min-width: 992px) {
  .validation-contrat-vente-admin .validation-contrat-vente-docusign-block {
    width: 25%;
    flex: 0 0 auto;
  }
}

.validation-contrat-vente-admin .validation-contrat-vente-docusign-block .list-group-item {
  word-break: break-word;
}

.validation-contrat-vente-admin .validation-contrat-vente-docusign-block .list-group-item .text-end {
  flex-shrink: 0;
  margin-left: 0.5rem;
}

/* ----- Aperçu PDF : hauteur responsive ----- */
.validation-contrat-vente-admin .validation-contrat-vente-preview {
  height: var(--contrat-vente-preview-height);
}

.validation-contrat-vente-admin .validation-contrat-vente-preview-canvas {
  min-height: var(--contrat-vente-preview-min);
}

/* ----- Barre d’outils de l’aperçu (navigation des pages) ----- */
.validation-contrat-vente-admin .validation-contrat-vente-preview-toolbar {
  flex-wrap: wrap;
}

.validation-contrat-vente-admin .validation-contrat-vente-preview canvas {
  max-width: 100%;
  height: auto;
}

/* ----- Modal GED : éviter les débordements sur petit écran ----- */
.validation-contrat-vente-admin #gedSelectModalContratVente .modal-body {
  overflow-x: hidden;
}

.validation-contrat-vente-admin #gedSelectModalContratVente .modal-dialog {
  margin: 0.5rem;
  max-width: calc(100vw - 1rem);
}

@media (min-width: 1200px) {
  .validation-contrat-vente-admin #gedSelectModalContratVente .modal-dialog {
    max-width: 1140px;
  }
}
