/*********************************************************************************
 * 
 * Propriétés modale d'alerte
 * 
 *********************************************************************************/

.modal-alert {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 300px;
  max-width: 500px;
  background: white;
  border-radius: 8px;
  box-shadow: 0 5px 30px rgba(0, 0, 0, 0.3);
  z-index: 9999;
  /* toujours au-dessus des autres modales */
}

.modal-alert-content {
  padding: 20px;
  text-align: center;
}

.modal-alert-buttons {
  margin-top: 20px;
  display: flex;
  justify-content: center;
  gap: 10px;
}



/*********************************************************************************
 * 
 * Propriétés modales standard
 * 
 *********************************************************************************/

/* Style de la modale */
.modal {
  display: none;
  /* cachée par défaut */
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.5);
  /* fond semi-transparent */
  display: flex;
  /* active le flexbox */
  justify-content: center;
  /* centre horizontalement */
  align-items: center;
  /* aligne au début pour permettre le scroll */
  z-index: 1000;
  /* Modale standard */
}

/* Modale d'information/confirmation générique */
#appModal {
  z-index: 20000;
  /* Toujours au-dessus de tout */
}

/* Dimensions de la modale (correspond à "contenu-page") */
.contenu-modal {
  width: calc(100vw - (240 / var(--base-width) * 100vw));
  box-sizing: border-box;
  background-color: var(--color-blanc);
  border: calc(4 / var(--base-width) * 100vw) solid var(--color-bleuElectic);
  padding-top: calc(40 / var(--base-width) * 100vw);
  padding-left: calc(20 / var(--base-width) * 100vw);
  padding-right: calc(20 / var(--base-width) * 100vw);
  padding-bottom: calc(40 / var(--base-width) * 100vw);
}

.contenuModal-1zone {
  display: flex;
  width: 100%;
  border-top: solid calc(2 / var(--base-width) * 100vw) var(--color-noir);
  padding-top: calc(40 / var(--base-width) * 100vw);
}

.contenuModal-2zone {
  display: flex;
  width: var(--size-column-2M);
}

.contenuModal-3zone {
  display: flex;
  width: var(--size-column-3M);
}

.contenuModal-titre {
  display: flex;
  color: var(--color-noirTitre);
  margin-bottom: calc(40 / var(--base-width) * 100vw);
  justify-content: space-between;
  align-items: center;
}

.contenuModal-horizontal {
  display: flex;
  flex-direction: row;
  gap: calc(20 / var(--base-width) * 100vw);
}

.contenuModal-vertical {
  display: flex;
  flex-direction: column;
}