:root {
  --red-color: #c7234e;
  --purple-color: #812B70;
  --gradient-color: linear-gradient(83deg, #812B70, #CB214A);
  --size-formwidth: 532px;
}

html * {
  box-sizing: border-box;
}

body {
    overflow-x: hidden;
    margin: 0;
    padding: 0;
    width: 100vw;
}

a[title="Télécharger les éléments de la section"] {
  display: inline-block;
}

.alerts-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  z-index: 1042;
  animation: slideInOut 6s ease forwards;
}

.alert-danger, .alert-error {
  background-color: var(--red-color);
  color: #fff;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-family: "markpro";
  font-size: 16px;
  padding: 8px 0;
}

.alert-success{
  color: #fff;
  background-color: #1BE3A0;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-family: "markpro";
  font-size: 16px;
  padding: 8px 0;
}

.sign-modal-form-canvas {
  touch-action: none;
}

/* #region fonts */

@font-face{
    font-family: "markpro";
    src: url('../fonts/ff_mark_pro.otf') format('opentype');
  }
  .pdfsummary-title {
    font-family: markpro, sans-serif;
  }

@font-face{
  font-family: "markproblack";
  src: url('../fonts/ff_mark_pro_black.otf') format('opentype');
}

.flatpickr-calendar, .flatpickr-input {
  font-family: markpro, sans-serif;
}


.title-download-group{
  display: flex;
  align-items: center;
}

.title-download-group a{
  margin-left: 16px;
  display: flex;
}


/* #endregion */

/* #region animations */

@keyframes zoomIn{
    0% {
      transform: translateY(-100%);
    }
    100% {
      transform: translateY(0%);
    }
    }

  .zoomin{
    animation: zoomIn 1s forwards;
  }

  @keyframes zoomOut{
    0% {
      transform: translateY(0%);
    }
    100% {
      transform: translateY(-100%);
    }
    }

  .zoomout{
    animation: zoomOut 1s forwards;
  }

  @keyframes slideInOut {

    
    /* Apparition complète après 1 seconde (à 20% de l'animation) */
    0%, 95% {
      transform: translateY(0%);
    }
    
    /* Disparition pendant la dernière seconde (à partir de 80% de l'animation) */
    100% {
      transform: translateY(-100%);
    }
  }

/* #endregion */

/* #region messages d'erreurs */
#alert-dialog, #alert-choice-dialog {
  z-index: 30;
  position: fixed;
  max-width: 500px;
}

dialog {
  padding: 20px 40px;
  border: none;
  border-radius: 40px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-family: markpro, sans-serif;
  font-size: 14px;
}

dialog::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}

dialog button,  .alert-choice-buttons button{
  padding: 8px 15px;
  background-color: var(--red-color);;
  color: #fff;
  border: none;
  border-radius: 20px;
  cursor: pointer;
  border: solid 1px var(--red-color);
  outline: none;
}

.alert-choice-buttons .cancel-button{
  padding: 8px 15px;
  background-color: #000;
  color: #fff;
  border: none;
  border-radius: 20px;
  cursor: pointer;
  border: solid 1px #000;
  outline: none;
}

.alert-choice-buttons .cancel-button:hover{
  padding: 8px 15px;
  background-color: #fff;
  color: #000;
  border: none;
  border-radius: 20px;
  cursor: pointer;
  border: solid 1px #000;
  outline: none;
}

dialog button:hover,  .alert-choice-buttons button:hover{
  background-color: #fff;
  color: var(--red-color);
  border: solid 1px var(--red-color);
}

.alert-choice-buttons{
  display: flex;
  justify-content: space-evenly;
  gap: 16px;
}

/* #endregion */


/* #region login */

.content-login{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
}




.logo-login img {
    width: 290px;
    height: 116px;
}


.paragraph-login{
    font-family: markpro, sans-serif;
    font-size: 18px;
    width: var(--size-formwidth);
    text-align: center;
    margin: 0;
}

.bold{
    font-family: markproblack, sans-serif;
    font-size: 18px;
}

.subparagraph-login{
    font-family: markpro, sans-serif;
    font-size: 16px;
    width: var(--size-formwidth);
    text-align: center;
    margin: 0 0 26px 0;
}

.form-login {
 display: flex;
 flex-direction: column;
 align-items: center;

 width: 100%;
}

.form-login .input-login {
    width: var(--size-formwidth);
    height: 67px;
    background-color: #fff;
    border-radius: 50px;
    border: none;
    margin: 10px 0;
    font-family: markpro, sans-serif;
    font-size: 18px;
    padding-left: 40px;
}

.form-login .btn-form-login{
    width: var(--size-formwidth);
    height: 67px;
    background: linear-gradient(83deg, #812B70, #CB214A);
    border-radius: 50px;
    border: none;
    color: #fff;
    font-family: markpro, sans-serif;
    font-size: 20px;
    font-weight: 100;
    cursor: pointer;
}

.checkbox-login{
    display: flex;
    align-items: center;
}

.checkbox-login label{
    font-family: markpro, sans-serif;
    font-size: 16px;
    text-align: center;
    padding-bottom: 7px;
}

.input-checkbox-login{
    appearance: none; /* Pour la compatibilité avec les navigateurs modernes */
    -webkit-appearance: none; /* Safari */
    -moz-appearance: none; /* Firefox */
    position: relative;
    width: 20px;
    height: 20px;
    border: 2px solid var(--red-color);
    border-radius: 50%;
    cursor: pointer;
    margin: 15px 10px 25px 0;
}

.input-checkbox-login:checked{
    background-color: #fff;
    border-color: var(--red-color);
}

.input-checkbox-login:checked::before{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    background-color: var(--red-color);
    border-radius: 50%;
}

.forgotten-password-link{
    color: #707070;
    font-family: markpro, sans-serif;
    font-size: 16px;
    text-decoration: none;
    margin-top: 25px;
    cursor: pointer;
}

form[name="reset_password"] {
  width: var(--size-formwidth)
}


/* #endregion */

/* #region accueil admin */

.accueil-admin {
    display: flex;
}

.accueil-admin-content{
    display: flex;
    flex-direction: column;
}

.accueil-admin-content-cards{
    display: flex;
    flex-wrap: wrap;
}

.accueil-admin-content h2{
    margin: 63px 0 49px 40px;
    font-family: markproblack, sans-serif;
    font-size: 40px;
}

.new-company {
    cursor: pointer;
    width: 220px;
    height: 140px;
    background-color: #8CE0BE;
    border-radius: 40px;
    margin: 10.5px 22px 10.5px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.new-company svg{
  width: 63px;
  height: 63px;
}

.new-company p{
 color: #fff;
 font-family: markpro, sans-serif;
 font-size: 14px;
  }

.accueil-company-card{
    width: 220px;
    height: 140px;
    background-color: #fff;
    border-radius: 40px;
    margin: 10.5px 22px 10.5px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.accueil-company-card-date{
    color: #707070;
    font-family: markpro, sans-serif;
    font-size: 10px;
    margin: 3px 0;
}

.accueil-company-card-designation{
    color: #000;
    font-family: markpro, sans-serif;
    font-size: 18px;
    margin: 0;
    text-align: center;
}

.accueil-company-card-name{
    color: #000;
    font-family: markpro, sans-serif;
    text-align: center;
    font-size: 12px;
    margin: 3px 0;
}

.accueil-company-card-logos{
    display: flex;
    gap: 0 7px;
}

.accueil-company-card-logo-bg-black{
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background-color: #000;
    margin: 0 5px 0 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.accueil-company-card-logo-bg-black svg{
    height: 25px;
    width: auto;
}


.accueil-company-card-logo-bg-red{
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background-color: var(--red-color);
    margin: 0 5px 0 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.accueil-company-card-logo-bg-red svg{
    height: 25px;
    width: auto;
}

  .admin-nav{
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .mobile-admin-nav{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
  }

  .mobile-admin-nav-buttons-layout{
    display: flex;
    justify-content: center;
    width: 100%;
    gap: 24px;
  }

  .admin-nav *{
 text-decoration: none;
  }

  .admin-nav-logo{
    width: 156px;
    height: 63px;
    margin: 55px 32px 55px 32px;
  }

  .admin-nav-logo img{
    width: 100%;
    height: auto;
  }

  .admin-nav-item-clients{
    width: 140px;
    height: 140px;
    border-radius: 40px;
    font-family: markpro, sans-serif;
    font-size: 14px;
    color: #fff;
    background-color: var(--red-color);
    margin-bottom: 21px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    cursor: pointer;
  }

  .admin-nav-item-search{
    width: 140px;
    height: 140px;
    border-radius: 40px;
    font-family: markpro, sans-serif;
    font-size: 14px;
    color: #000;
    background-color: #fff;
    margin-bottom: 21px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    cursor: pointer;
  }

  .admin-nav-item-logout{
    width: 140px;
    height: 140px;
    border-radius: 40px;
    font-family: markpro, sans-serif;
    font-size: 14px;
    color: #fff;
    background-color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    cursor: pointer;
  }

  .admin-nav-item-clients svg, .admin-nav-item-search svg, .admin-nav-item-logout svg{
    height: 35px;
    width: auto;

  }
/* #endregion */

/* #region company searchbar */
  .company-searchbar-container{
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-100%);
    width: 100%;
    height: 100%;
    background: transparent linear-gradient(240deg, #C6224D 0%, #852B6E 100%) 0% 0% no-repeat padding-box;
  }

  .close-cross-company-searchbar{
    background: none;
    width: 70px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    top: 30px;
    right: 30px;
  }

  .close-cross-company-searchbar svg{
    width: 70px;
    height: 70px;
    fill: #fff;
  }


  .company-searchbar-form{
    position: relative;
  }

  .company-searchbar-form input{
    width: 741px;
    height: 83px;
    border: 2px dashed #fff;
    border-radius: 40px;
    background-color: unset;
    padding-left: 40px;
    caret-color: #fff;
    color: #fff;
    font-family: markpro, sans-serif;
    font-size: 28px;
  }

  .company-searchbar-form input:focus{
    outline: none;
  }

  .company-searchbar-form input:focus::placeholder{
    opacity: 0;
  }

  .company-searchbar-form input::placeholder{
    font-family: markpro, sans-serif;
    font-size: 28px;
    color: #fff;
  }

  .company-searchbar-button{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    border-radius: 50%;
    border: none;
    width: 60px;
    height: 60px;
    cursor: pointer;
  }

  .company-searchbar-button svg{
    fill: var(--red-color);
    width: 32px;
    height: auto;
  }

  .logo-company-searchbar-layout{
  position: absolute;
  bottom: 30px;
  right: 30px;
}

  .logo-company-searchbar{
    width: 213px;
    height: 84px;
 display: flex;
 justify-content: flex-end;
 cursor: pointer;
}

.logo-company-searchbar img{
    width: 100%;
    height: auto;
}
/* #endregion */

/* #region modale upload */

  .modal-uploadfile-container{
    z-index: 3;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    transform: translateY(-100%);
    width: 100%;
    height: 100%;
    background: transparent linear-gradient(240deg, #C6224D 0%, #852B6E 100%) 0% 0% no-repeat padding-box;
  }

  .close-cross-modal-uploadfile{
    background: none;
    width: 70px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    top: 30px;
    right: 30px;
  }

  .close-cross-modal-uploadfile svg{
    width: 70px;
    height: 70px;
    fill: #fff;
  }

  .modal-uploadfile-input-container{
    position: relative;
  }

  .modal-uploadfile-edited-input-container{
    position: absolute;
    top: 50%;
    z-index: 4;
    transform: translateY(-50%);
    width: 741px;
    height: 221px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .modal-uploadfile-edited-input-container svg{
    fill: #fff;
    width: 50px;
    height: auto;
    margin-bottom: 20px;
  }

  .modal-uploadfile-edited-input-text{
    font-family: markpro, sans-serif;
    font-size: 28px;
    color: #fff;
    margin: 0;
  }

  .modal-uploadfile-edited-input-subtext{
    font-family: markpro, sans-serif;
    font-size: 17px;
    color: #fff;
    margin: 0;
  }

  .modal-uploadfile-form input{
    position: relative;
    z-index: 5;
    width: 741px;
    height: 221px;
    border: 2px dashed #fff;
    border-radius: 40px;
    background-color: unset;
    padding-left: 40px;
    color: transparent;
    cursor: pointer;
  }

  .modal-uploadfile-form input::-webkit-file-upload-button {
    display: none;
  }

  .modal-uploadfile-form input::file-selector-button {
    display: none;
  }

  .logo-modal-uploadfile-layout{
    position: absolute;
    bottom: 30px;
    right: 30px;
  }

    .logo-modal-uploadfile{
      width: 213px;
      height: 84px;
   display: flex;
   justify-content: flex-end;
   cursor: pointer;
  }

  .logo-modal-uploadfile img{
      width: 100%;
      height: auto;
  }

/* #endregion */

/* #region modale cahier des charges borne */


.terminalspecs-modal-container, .terminalspecs-modal-container form{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.company-form-container, form[name="company"], form[name="company_edit"]{
  display: flex;
  flex-direction: column;
  align-items: center;
}
.terminalspecs-modal-subtitle{
  font-family: markproblack, sans-serif;
  font-size: 26px;
  text-align: center;
  margin: 40px 0 20px 0;
}

.terminalspecs-modal-text{
  font-family: markpro, sans-serif;
  font-size: 18px;
  text-align: center;
  margin: 30px 0 30px 0;
  max-width: 435px;
}

.terminalspecs-modal-textend{
  font-family: markpro, sans-serif;
  font-size: 18px;
  text-align: center;
  margin: 13px 0 47px 0;
  max-width: 435px;
}

.terminalspecs-input-list{
 width: fit-content;
}

.terminalspecs-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
 /* gap: 20px;  Espace entre les éléments */
}

.terminalspecs-input{
  background-color: #fff;
  width: var(--size-formwidth);
  height: 67px;
  border-radius: 50px;
  margin: 7px;
  border: none;
  font-family: markpro, sans-serif;
  font-size: 16px;
  text-align: center;
  border: none;
}

#categories-list .category {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  width: var(--size-formwidth);
  height: 67px;
  border-radius: 50px;
  margin: 7px 0;
  border: none;
  font-family: markpro, sans-serif;
  font-size: 16px;
  text-align: center;
  border: none;
}

#categories-list .category .delete-category{
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}


.terminalspecs-input:focus{
  outline: 2px solid var(--red-color); /* Supprime la bordure bleue par défaut */
}

.terminalspecs-input-group{
  position: relative;
}

.terminalspecs-input-group input{
width: 259px;
height: 67px;
border-radius: 40px;
appearance: none; /* Pour la compatibilité avec les navigateurs modernes */
-webkit-appearance: none; /* Safari */
-moz-appearance: none; /* Firefox */
margin: 7px;
background-color: #fff;
cursor: pointer;
}

.terminalspecs-input-group input:checked {
  background: var(--gradient-color);
}

.terminalspecs-input-group input:checked + label {
  color: #fff;
}

.terminalspecs-input-group label{
  position: absolute;
  left: 50%; /* Ajustez selon vos besoins */
  top: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  font-family: markpro, sans-serif;
  font-size: 16px;
  text-align: center;
}

.terminalspecs-accept div{
display: flex;
margin: 0 0 7px 40px;
}

.terminalspecs-accept div input{
margin-right: 8px;
order: 1;
appearance: none; /* Pour la compatibilité avec les navigateurs modernes */
-webkit-appearance: none; /* Safari */
-moz-appearance: none; /* Firefox */
width: 20px;
height: 20px;
border: 2px solid var(--red-color);
border-radius: 50%;
cursor: pointer;
position: relative;
}


  /* Apparence lorsqu'il est sélectionné */
.terminalspecs-accept div input:checked {
  background-color: #fff;
  border-color: var(--red-color);
}

  /* Ajout d'un cercle interne pour un effet visuel */
  .terminalspecs-accept div input:checked::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
  height: 10px;
  background-color: var(--red-color);
  border-radius: 50%;
}

.terminalspecs-accept div label{
  font-family: markpro, sans-serif;
  font-size: 16px;
  color: #707070;
  text-align: center;
  order: 2;
  line-height: 1.7;
}

.terminalspecs-form-select{
  margin-bottom: 40px;
}

.terminalspecs-form-select option{
  background-color: #fff;
  width: var(--size-formwidth);
  height: 67px;
  border-radius: 50px;
  margin: 7px;
  border: none;
  font-family: markpro, sans-serif;
  font-size: 16px;
  text-align: center;
  border: none;
}

.terminalspecs-form-select option:hover {
  background-color: var(--red-color);
}

.terminalspecs-form-input-container{
  position: relative;
  margin: 0;
  padding: 0;
  margin-bottom: 40px;
}

.terminalspecs-form-input-container svg{
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  fill: var(--red-color);
  width: 46px;
  height: auto;
  pointer-events: none;
}

.terminalspecs-form-submit{
  width: var(--size-formwidth);
  height: 67px;
  margin: 7px;
  background: linear-gradient(83deg, #812B70, #CB214A);
  border-radius: 50px;
  border: none;
  color: #fff;
  font-family: markpro, sans-serif;
  font-size: 20px;
  font-weight: 100;
  cursor: pointer;
}

.logo-terminalspecs-modal-layout{
  position: absolute;
    bottom: 30px;
    right: 30px;
}



/* #endregion */


/* #region modale checklist */
.modal-container-layout{
  position: fixed;
  top: 0;
  left: 0;
  transform: translateY(-100%);
  width: 100%;
  max-height: 100vh;
  height: auto;
  margin: 0;
  z-index: 5;
  overflow-y: auto;
}

.modal-container-layout .zi01{
  z-index: 6;
}

.modal-full {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    /* ne pas limiter la hauteur ici, on peut définir une marge/padding si nécessaire */
    background-image: url("../img/6xpos-bg-grain.jpg");
    background-repeat: repeat;
    padding: 80px 0 150px 0;
    min-height: 100vh;
    /* éventuellement, définir une largeur maximale */
}
.modal-full-transparent {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    /* éventuellement, définir une largeur maximale */
}

.checklist-form-input-container, .checklist-form-date-container, .login-form-container {
  position: relative;
  margin: 0;
  padding: 0;
  width: var(--size-formwidth);
}


.checklist-modal-container form {
  display: flex;
  flex-direction: column;
  width: var(--size-formwidth);
}

.checklist-form-input-container svg{
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  fill: var(--red-color);
  width: 46px;
  height: auto;
  pointer-events: none;
}


.login-form-container div{
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  background: var(--red-color);
  border-radius: 50%;
  width: 44px;
  height: 44px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
}

.checklist-form-date-container svg{
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  fill: var(--red-color);
  width: 32px;
  height: auto;
  pointer-events: none;
}

.company-form-select, .company-form-date{
  background-color: #ffffff;
  width: var(--size-formwidth);
  height: 67px;
  border-radius: 50px;
  margin: 7px 0;
  border: none;
  font-family: markpro, sans-serif;
  font-size: 16px;
  text-align: center;
  border: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
}

.company-form-select option{
  background-color: #fff;
  width: var(--size-formwidth);
  height: 67px;
  border-radius: 50px;
  margin: 7px;
  border: none;
  font-family: markpro, sans-serif;
  font-size: 16px;
  text-align: center;
  border: none;
}

.company-form-select option:hover {
  background: var(--red-color);
}

#checklist_radio_choice{
  width: var(--size-formwidth);
  display: flex;
  flex-wrap: wrap;
  margin: 25px 25px 0 25px;
  color: #707070;
  font-family: markpro, sans-serif;
  font-size: 16px;
}

#checklist_radio_choice label:nth-of-type(1),
#checklist_radio_choice label:nth-of-type(3){
width: 200px;
}

#checklist_radio_choice input{
margin-left: 45px;
margin-right: 8px;
margin-bottom: 20px;
height: 30px;

appearance: none; /* Pour la compatibilité avec les navigateurs modernes */
-webkit-appearance: none; /* Safari */
-moz-appearance: none; /* Firefox */
position: relative;
width: 20px;
height: 20px;
border: 2px solid var(--red-color);
border-radius: 50%;
cursor: pointer;
}

/* Apparence lorsqu'il est sélectionné */
#checklist_radio_choice input:checked {
  background-color: #fff;
  border-color: var(--red-color);
}

/* Ajout d'un cercle interne pour un effet visuel */
#checklist_radio_choice input:checked::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
  height: 10px;
  background-color: var(--red-color);
  border-radius: 50%;
}

#checklist_radio_choice label{
margin-right: 28px;
margin-bottom: 25px;
height: 30px;
text-align: center;
line-height: 2.1;
}

.checklist-form-submit{
  width: var(--size-formwidth);
  height: 67px;
  margin: 7px 0;
  background: linear-gradient(83deg, #812B70, #CB214A);
  border-radius: 50px;
  border: none;
  color: #fff;
  font-family: markpro, sans-serif;
  font-size: 20px;
  font-weight: 100;
  cursor: pointer;
}
/* #endregion */

/* #region modale signature */

.sign-modal, .sign-estimate-modal {
  position: fixed;
  z-index: 3;
  top: 0;
  left: 0;
  transform: translateY(-100%);
  width: 100%;
  height: 100%;
  background-image: url("../img/6xpos-bg-grain.jpg");
  background-repeat: repeat;
  margin: 0;
  padding: 0;
}

.sign-modal-container, .sign-estimate-modal-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.checklist-modal-container{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.sign-modal-title, .sign-estimate-modal-title{
  font-family: markproblack, sans-serif;
  color: #000;
  font-size: 70px;
  text-align: center;
  margin: 0 0 30px 0;
}

.sign-modal-form, .sign-estimate-modal-form {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}



.checkbox-sign-modal, .checkbox-sign-estimate-modal{
  display: flex;
  align-items: center;
  justify-content: center;
}

.checkbox-sign-modal label, .checkbox-sign-estimate-modal label{
  width: 433px;
  font-family: markpro, sans-serif;
  font-size: 16px;
  text-align: center;
}

.checkbox-sign-modal label span, .checkbox-sign-estimate-modal label span{
  font-family: markproblack, sans-serif;
}

.input-checkbox-sign-modal, .input-checkbox-sign-estimate-modal{
  appearance: none; /* Pour la compatibilité avec les navigateurs modernes */
  -webkit-appearance: none; /* Safari */
  -moz-appearance: none; /* Firefox */
  position: relative;
  width: 20px;
  height: 20px;
  border: 2px solid var(--red-color);
  border-radius: 50%;
  cursor: pointer;
  margin: 15px 10px 25px 0;
}

.input-checkbox-sign-modal:checked, .input-checkbox-sign-estimate-modal:checked{
  background-color: #fff;
  border-color: var(--red-color);
}

.input-checkbox-sign-modal:checked::before, .input-checkbox-sign-estimate-modal:checked::before{
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
  height: 10px;
  background-color: var(--red-color);
  border-radius: 50%;
}

.sign-modal-form-canvas, .sign-estimate-modal-form-canvas {
  width: var(--size-formwidth);
  height: 203px;
  background-color: #fff;
  border-radius: 40px;
  margin: 20px 0 20px 0;
}

#eraser-sign-modal, .eraser-sign-estimate-modal{
  background: linear-gradient(83deg, #812B70, #CB214A);
  margin: 0 0 20px 0;
}

#eraser-sign-modal:hover, .eraser-sign-estimate-modal:hover{
  background: #fff;
}

.sign-modal-form-submit, .sign-estimate-modal-form-submit{
  width: var(--size-formwidth);
  height: 67px;
  margin: 0;
  background: linear-gradient(83deg, #812B70, #CB214A);
  border-radius: 50px;
  border: none;
  color: #fff;
  font-family: markpro, sans-serif;
  font-size: 20px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
}

.logo-sign-modal-layout, .logo-sign-estimate-modal-layout{
  position: absolute;
    bottom: 30px;
    right: 30px;
}


.logo-sign-modal, .logo-sign-estimate-modal, .logo-company-form, .logo-checklist-modal, .logo-terminalspecs-modal, .logo-ubereat-modal, .logo-deliveroo-modal, .logo-ubereattips-modal, .logo-ubereattips-modal2, .logo-deliverootips-modal, .logo-deliverootips-modal2 {
  width: 228px;
  height: 92px;
display: flex;
justify-content: flex-end;
cursor: pointer;
}

.logo-sign-modal img, .logo-sign-estimate-modal img, .logo-company-form img, .logo-checklist-modal img, .logo-terminalspecs-modal img, .logo-ubereat-modal img, .logo-deliveroo-modal img, .logo-ubereattips-modal img, .logo-ubereattips-modal2 img, .logo-deliverootips-modal img, .logo-deliverootips-modal2 img {
  width: 100%;
  height: auto;
}

/* #endregion */

/* #region company form */

.company-form-modal-edit{
    position: absolute;
    width: 100%;
    margin: 0;
    padding: 0;
}

.company-form-container{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.company-form-title{
    font-family: markproblack, sans-serif;
    font-size: 70px;
}
.company-form-input{
    background-color: #fff;
    width: var(--size-formwidth);
    height: 67px;
    border-radius: 50px;
    margin: 7px 0;
    border: none;
    font-family: markpro, sans-serif;
    font-size: 16px;
    text-align: center;
    border: none;
}
.company-form-input::placeholder{
    font-size: 16px;
}

.company-form-input:focus{
    outline: 2px solid var(--red-color); /* Supprime la bordure bleue par défaut */
}

#company_type_operation, #company_edit_type_operation{
    width: var(--size-formwidth);
    display: flex;
    flex-wrap: wrap;
    margin: 25px 25px 0 25px;
    color: #707070;
    font-family: markpro, sans-serif;
    font-size: 16px;
}



#company_type_operation input, #company_edit_type_operation input{
 margin-left: 45px;
 margin-right: 8px;
 margin-bottom: 20px;
 height: 30px;

 appearance: none; /* Pour la compatibilité avec les navigateurs modernes */
 -webkit-appearance: none; /* Safari */
 -moz-appearance: none; /* Firefox */
 position: relative;
 width: 20px;
 height: 20px;
 border: 2px solid var(--red-color);
 border-radius: 50%;
 cursor: pointer;
}

/* Apparence lorsqu'il est sélectionné */
#company_type_operation input:checked, #company_edit_type_operation input:checked{
    background-color: #fff;
    border-color: var(--red-color);
  }

  /* Ajout d'un cercle interne pour un effet visuel */
#company_type_operation input:checked::before, #company_edit_type_operation input:checked::before{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    background-color: var(--red-color);
    border-radius: 50%;
  }

#company_type_operation label, #company_edit_type_operation label{
margin-right: 45px;
margin-bottom: 25px;
height: 30px;
text-align: center;
line-height: 2.1;
}

.company-form-submit{
    width: var(--size-formwidth);
    height: 67px;
    margin: 7px 0;
    background: linear-gradient(83deg, #812B70, #CB214A);
    border-radius: 50px;
    border: none;
    color: #fff;
    font-family: markpro, sans-serif;
    font-size: 20px;
    font-weight: 100;
    cursor: pointer;
}

.logo-company-form-layout{
  position: absolute;
    bottom: 30px;
    right: 30px;
}


.close-cross-bg, .close-cross-bg-edit{
    background: #000;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    top: 20px;
    right: 20px;
}

.close-cross-bg svg, .close-cross-bg-edit svg{
    width: 76px;
    height: auto;
}

/* #endregion */

/* #region account */

.hidden {
  display: none !important
}

.hiddenmore {
  display: none !important
}

.hiddenout{
  position: absolute; left: -9999px;
}

.displaycontent {
    display: contents;
}

.hidden-form {
  visibility: hidden;
  position: absolute;
  transform: translateY(-100%);
}


html * {
    box-sizing: border-box;
    text-decoration: none;
}

body {
    background-image: url("../img/6xpos-bg-grain.jpg");
}

main {
    display: flex;
}

.content {
    margin-left: 72px;
}

.nav-mobile {
    display: flex;
    justify-content: center;
}

.nav-mobile h1 img {
    width: 156px;
    height: 63px;
}

.burger-icon {
    position: absolute;
    top: 20px;
    right: 26px;
    cursor: pointer;
}

.nav-desktop h1 img {
    width: 156px;
    height: 63px;
    margin: 27px 0 27px 32px;
}

.nav-desktop-item {
    width: 138px;
    height: 138px;
    border-radius: 40px;
    background: #fff;
    border: solid 2px #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 21px;
    margin-left: 40px;
}


.nav-desktop-item:hover {
  background: transparent linear-gradient(180deg, #842A6E 0%, #C6214C 100%) 0% 0% no-repeat padding-box;
  color: #fff
}

.nav-desktop-item:hover svg{
  fill: #fff;
}

.nav-desktop-item:hover p{
  color: #fff;
}

.nav-desktop-item-active {
  width: 138px;
  height: 138px;
  border-radius: 40px;
  background: transparent linear-gradient(180deg, #842A6E 0%, #C6214C 100%) 0% 0% no-repeat padding-box;
  border: solid 2px #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-bottom: 21px;
  margin-left: 40px;
}

.nav-desktop-item-active svg{
  width: 35px;
  height: 35px;
  fill: #fff;
}

.nav-desktop-item-active p{
  text-decoration: none;
font-family: markpro, sans-serif;
font-size: 14px;
text-align: center;
margin: 5px 0 0 0;
  color: #fff;
}

.nav-desktop-logout {
    width: 138px;
    height: 138px;
    border-radius: 40px;
    background: #000;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 21px;
    margin-left: 40px;
    cursor: pointer;
}

.nav-desktop-logout svg{
  width: 35px;
  height: 35px;
  fill: #fff;
}

.nav-desktop-logout p {
  text-decoration: none;
  font-family: markpro, sans-serif;
  color: #fff;
  font-size: 14px;
  text-align: center;
  margin: 5px 0 0 0;
  }

  .nav-desktop-logout:hover {
    background-color: #fff;
   }

   .nav-desktop-logout:hover svg{
    fill: #000;
  }

  .nav-desktop-logout:hover p{
    color: #000;
  }


.nav-desktop-item:hover {
    cursor: pointer;
}



.nav-desktop-item svg{
  width: 35px;
  height: 35px;
  fill: var(--red-color);
}
  
  
.nav-desktop-item p {
  text-decoration: none;
  font-family: markpro, sans-serif;
  color: #000;
  font-size: 14px;
  text-align: center;
  margin: 5px 0 0 0;
}


.mobile-menu-modal{
  background: linear-gradient(205deg, #C6224D, #852B6E);
}

.mobile-menu{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.close-cross-mobile-menu{
  background: none;
  width: 70px;
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  position: absolute;
  top: 30px;
  right: 30px;
}

.close-cross-mobile-menu svg{
  width: 70px;
  height: 70px;
  fill: #fff;
}

.logo-mobile-menu{
  
  width: 213px;
  height: 84px;
  cursor: pointer;
}

.logo-mobile-menu img{
  width: 100%;
  height: auto;
}

.mobile-menu-cards{
  display: grid;
  grid-template-columns: 178px 178px;
  grid-template-rows: 178px 178px 89px;
  gap: 26px;
  max-width: 430px;
  max-height: 600px;
  margin-top: 55px;
}


.mobile-menu-cards > *:nth-child(1) {
  grid-column: 1;
  grid-row: 1;
}

.mobile-menu-cards > *:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}

.mobile-menu-cards > *:nth-child(3) {
  grid-column: 1;
  grid-row: 2;
}

.mobile-menu-cards > *:nth-child(4) {
  grid-column: 2;
  grid-row: 2;
}

.mobile-menu-card-logout{
  grid-column: 1 / span 2;
  grid-row: 3;
}

.nav-mobile-logout{
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  border-radius: 40px;
  background: #000;
  width: 100%;
  height: 100%;
}

.nav-mobile-logout svg{
  width: 35px;
  height: 35px;
  fill: #fff;
}

.nav-mobile-logout p {
  text-decoration: none;
  font-family: markpro, sans-serif;
  color: #fff;
  font-size: 14px;
  text-align: center;
  margin: 5px 0 0 0;
}

.mobile-menu h3 {
  font-family: markpro, sans-serif;
  font-size: 14px;
  text-align: center;
  max-width: 300px;
  color: #fff;
  font-weight: 400;
  margin: 0;
  margin-top: 24px;
}

.nav-mobile-item{
  width: 100%;
  height: 100%;
  border-radius: 40px;
  background: transparent;
  border: solid 2px #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0;
}

.nav-mobile-item svg{
  fill: #fff;
  width: 28%;
  height: auto;
}

.nav-mobile-item p{
  color: #fff;
  font-family: markpro, sans-serif;
  font-size: 14px;
  padding: 0 40px;
  text-align: center;
  margin-bottom: 0;
}

.nav-mobile-item-active {
  width: 100%;
  height: 100%;
  border-radius: 40px;
  background: #fff;
  border: solid 2px #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0;
}

.nav-mobile-item-active svg{
  fill: var(--red-color);
  width: 28%;
  height: auto;
}

.nav-mobile-item-active p{
  color: var(--red-color);
  font-family: markpro, sans-serif;
  font-size: 14px;
  padding: 0 40px;
  text-align: center;
  margin-bottom: 0;
}



.content-title h2, .company-form-title {
  font-family: markproblack, sans-serif;
  font-size: 40px;
  margin: 0;
  font-weight: 400;
}
.content-title{
  margin-top: 50px;
  margin-bottom: 52px;
}
.second-content-title{
  margin-top: 0;
}

.content-title h3{
  font-family: markpro, sans-serif;
  font-size: 25px;
  margin: 0;
  margin-bottom: 8px;
  font-weight: 400;
}

.cards {
  display: flex;
  flex-wrap: wrap;
}

.card {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 197px;
  margin-right: 27px;
  margin-bottom: 57px;
}

.card-img{
  width: 197px;
  height: 221px;
  border: 1px dashed #707070;
  border-radius: 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.card a{
  color: #000;
}

.card-img-custom{
  background: linear-gradient(180deg, #842A6E 0%, #C6214C 100%);
  width: 197px;
  height: 221px;
  border-radius: 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 8px;
}

.custom-logo-extension{
  position: absolute;
  top: 123px;
  left: 45px;
  color: #fff;
  font-family: markpro, sans-serif;
  font-size: 16px;
  font-weight: 600;
}

.card-img-custom-text{
  font-family: markpro, sans-serif;
  font-size: 16px;
  color: #fff;
  margin: 0;
  line-height: 1.2;
  text-align: center;
}

.card-img-custom-subtext{
  font-family: markproblack, sans-serif;
  font-size: 16px;
  color: #fff;
  margin: 0;
  line-height: 1.2;
  text-align: center;
}

.card-img-full {
  width: 197px;
  height: 221px;
  border: 2px solid var(--red-color);
  border-radius: 42px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  -webkit-box-shadow: 15px 15px 36px -21px rgba(0,0,0,0.50);
  -moz-box-shadow: 15px 15px 36px -21px rgba(0,0,0,0.50);
  box-shadow: 15px 15px 36px -21px rgba(0,0,0,0.50);
}

#card-img-cgv.card-img-full, .card-img-full.sign-estimate {
  width: 197px;
  height: 221px;
  border: 1px dashed #707070;
  border-radius: 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}



.card-img-full-other {
  width: 197px;
  height: 221px;
  border: 2px solid var(--red-color);
  border-radius: 42px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  -webkit-box-shadow: 15px 15px 36px -21px rgba(0,0,0,0.50);
  -moz-box-shadow: 15px 15px 36px -21px rgba(0,0,0,0.50);
  box-shadow: 15px 15px 36px -21px rgba(0,0,0,0.50);
}

.card-img-full-other canvas, .card-img-full-other img{
  width: 100%;
  height: 100%;
  border-radius: 40px;
  background: #fff;
  object-fit: cover;
}

.card-img-full canvas, .card-img-full img, .card-img img{
    width: 100%;
    height: 100%;
    border-radius: 40px;
    background: #fff;
    object-fit: cover;
}

.card-img p{
    font-family: markpro, sans-serif;
    font-size: 16px;
    max-width: 170px;
    text-align: center;
    margin: 0;
}

.card-img .card-img-subtitle {
    font-size: 12px;
}

.document-name {
    margin: 8px 0px;
    font-family: markpro, sans-serif;
    font-size: 16px;
}

.document-name-layout {
  min-height: 50px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.card-logos {
    display: flex;
}

.card-logos a{
 color: #000;
}



.logo-group {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0px 7px;
}

.logo-group a {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0px 7px;
}

.logo-group-eraser {
 position: absolute;
 top: 10px;
 right: 10px;
}

.logo-group-update {
  position: absolute;
  top: 10px;
  left: 10px;
 }

.logo-bg-red, .logo-bg-red-circle {
    background: var(--red-color);
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.logo-bg-red:hover , .logo-bg-red-circle:hover, .logo-bg-red-password:hover{
  background: #fff;
  border-radius: 50%;
  width: 44px;
  height: 44px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  border: 1px solid var(--red-color);
}

.logo-bg-red:hover svg, .logo-bg-red-circle:hover svg {
  fill: var(--red-color);
}

.logo-bg-purple:hover svg, .logo-bg-purple-circle:hover svg{
  fill: var(--purple-color);
}

.logo-bg-purple, .logo-bg-purple-circle {
  background: var(--purple-color);
  border-radius: 50%;
  width: 44px;
  height: 44px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.logo-bg-purple:hover , .logo-bg-purple-circle:hover, .logo-bg-purple-password:hover{
background: #fff;
border-radius: 50%;
width: 44px;
height: 44px;
display: flex;
justify-content: center;
align-items: center;
cursor: pointer;
border: 1px solid var(--purple-color);
}

.logo-bg-purple:hover svg{
fill: var(--purple-color);
}

.logo-bg-purple-circle:hover svg{
fill: var(--purple-color);
}

.logo-bg-black{
    background: #000;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.logo-bg-black:hover {
  background: #fff;
  border: solid 1px #000;
}

.logo-bg-black:hover svg {
  fill: #000;
}

.logo-bg-green{
    background: #1BE3A0;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
    fill: #fff;
}

.logo-bg-red svg, .logo-bg-black svg, .logo-bg-purple svg {
    width: 22px;
    height: auto;
    fill: #fff;
}

.logo-bg-green svg {
    width: 40px;
    height: auto;
    fill: #fff;
}

.logo-bg-red-password svg {
  width: 32px;
  height: auto;
  fill: #fff;
}

.logo-bg-red-password:hover svg{
  fill: var(--red-color);
}

.logo-bg-red-circle svg{
  fill: #fff;
}

.logo-text {
    font-family: markpro, sans-serif;
    font-size: 8px;
    font-weight: 400;
}







/* #endregion */

/* #region account main cards */

  .content-main {
    display: flex;
  }

  .content-main-left{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

  }

  .content-main-left-disclaimer{
    font-family: markpro, sans-serif;
    font-size: 20px;
    max-width: 656px;
    text-align: center;
  }

  .content-main-left-cards{
    display: flex;
    flex-wrap: wrap;
    max-width: 860px;
  }

  

  .content-main-left-cards a{
  color: #000;
  }

  .content-main-left-card{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    width: 400px;
    height: 300px;
    background-color: #fff;
    border-radius: 40px;
    font-family: markpro, sans-serif;
    text-align: center;
    padding: 40px 46px;
    margin: 0 28px 23px 0;
  }

  .content-main-left-card *{
    margin: 0;
  }

  .content-main-left-card svg{
    fill: var(--red-color);
    height: 70px;
    width: auto;
    flex-shrink: 0;
  }

  .content-main-left-card h3{
    font-size: 22px;
  }

  .content-main-left-card p{
    font-size: 14px;
  }

  .content-main-left-card-btn{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    width: 270px;
    height: 44px;
    font-size: 16px;
    background-color: #F5F5F5;
    border-radius: 60px;
    cursor: pointer;
  }

  .content-main-left-card-btn:hover{
    background: transparent linear-gradient(180deg, #842A6E 0%, #C6214C 100%) 0% 0% no-repeat padding-box;
    color: #fff;
  }

  .content-main-right{
   max-width: 530px;
   transform: translateY(-12px);
  }

  .content-main-right h2{
    font-family: markproblack, sans-serif;
    font-size: 70px;
    color: var(--red-color);
    margin: 0 0 0px 0;
  }

  .content-main-right h3{
    font-family: markpro, sans-serif;
    font-size: 22px;
    color: #000;
    margin: 15px 0;
  }

  .content-main-right-cards{
    margin: 20px 0 0 0;
  }

  .content-main-right-card, .content-main-right-card-modal{
   display: flex;
   align-items: start;
   font-family: markpro, sans-serif;
  
   color: #000;
   margin: 0 0 20px 0;
  }

  .content-main-right-card svg, .content-main-right-card-modal svg{
    fill: #9E3D7F;
    height: auto;
    width: 36px;
    flex-shrink: 0;
    margin: 0 3px 0 3px;
  }

  .content-main-right-card p{
    font-size: 18px;
   margin: 0 0 0 18px;
  }


  .content-main-right-modal{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100vh;
    z-index: 1;
    background-color: rgba(0, 0, 0, 0.85);
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .modal-content-main {
    max-height: 100vh;
    width: 100%; /* ou la largeur souhaitée */
    overflow-y: auto;
}

  .content-main-right-modal-container{
    background-image: url("../img/6xpos-bg-grain.jpg");
    width: fit-content;
    margin: 24px;
    padding: 24px;
    border-radius: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .content-main-right-modal-container h2{
    font-family: markproblack, sans-serif;
    font-size: 50px;
    color: var(--red-color);
    margin: 0 0 0px 0;
  }

  .content-main-right-modal-container h3{
    font-family: markpro, sans-serif;
    font-size: 20px;
    text-align: center;
    color: #000;
    margin: 15px 0;
  }

  .content-main-right-card-modal p{
    margin: 0 0 0 14px;
   }

  .content-main-right-modal-close{
    width: 100%;
    max-width: 360px;
    height: 67px;
    border-radius: 60px;
    font-family: markpro, sans-serif;
    font-size: 16px;
    color: #fff;
    background: linear-gradient(83deg, #812B70, #CB214A);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }

/* #endregion */

/* #region page ubereat */

.ubereat-modal-title{
  font-family: markproblack, sans-serif;
  color: #000;
  font-size: 70px;
  text-align: center;
  margin: 0;
}

.ubereat-form-input{
  background-color: #fff;
  width: var(--size-formwidth);
  height: 67px;
  border-radius: 50px;
  margin: 7px;
  border: none;
  font-family: markpro, sans-serif;
  font-size: 16px;
  text-align: center;
  border: none;
}

.ubereat-form-submit{
  width: var(--size-formwidth);
  height: 67px;
  margin: 7px;
  background: linear-gradient(83deg, #812B70, #CB214A);
  border-radius: 50px;
  border: none;
  color: #fff;
  font-family: markpro, sans-serif;
  font-size: 20px;
  font-weight: 100;
  cursor: pointer;
}


.ubereat-modal-container{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.ubereat-modal-container form{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.ubereat-modal-text{
  font-family: markpro, sans-serif;
  font-size: 18px;
  text-align: center;
  margin: 5px 0 20px 0;
  max-width: 530px;
}

.ubereat-form-input-container{
  position: relative;
  margin: 0;
  padding: 0;
  margin-bottom: 20px;
}

.ubereat-question-btn{
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  fill: var(--red-color);
  width: 46px;
  height: auto;
  cursor: pointer;
}


.logo-ubereat-modal-layout{
  position: absolute;
    bottom: 30px;
    right: 30px;
}

/* #endregion */

/* #region page deliveroo */

.deliveroo-modal-title{
  font-family: markproblack, sans-serif;
  color: #000;
  font-size: 70px;
  text-align: center;
  margin: 0;
}

.deliveroo-form-input{
  background-color: #fff;
  width: var(--size-formwidth);
  height: 67px;
  border-radius: 50px;
  margin: 7px;
  border: none;
  font-family: markpro, sans-serif;
  font-size: 16px;
  text-align: center;
  border: none;
}

.deliveroo-form-submit{
  width: var(--size-formwidth);
  height: 67px;
  margin: 7px;
  background: linear-gradient(83deg, #812B70, #CB214A);
  border-radius: 50px;
  border: none;
  color: #fff;
  font-family: markpro, sans-serif;
  font-size: 20px;
  font-weight: 100;
  cursor: pointer;
}



.deliveroo-modal-container{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.deliveroo-modal-container form{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.deliveroo-modal-text{
  font-family: markpro, sans-serif;
  font-size: 18px;
  text-align: center;
  margin: 5px 0 20px 0;
  max-width: 530px;
}

.deliveroo-form-input-container{
  position: relative;
  margin: 0;
  padding: 0;
  margin-bottom: 20px;
}

.deliveroo-question-btn{
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  fill: var(--red-color);
  width: 46px;
  height: auto;
  cursor: pointer;
}


.logo-deliveroo-modal-layout{
  position: absolute;
    bottom: 30px;
    right: 30px;
}

/* #endregion */

/* #region page ubereattips */

.ubereattips-modal-title{
  font-family: markproblack, sans-serif;
  color: #000;
  font-size: 70px;
  text-align: center;
  max-width: 586px;
  margin: 0 0 15px 0;
  line-height: 1;
}



.ubereattips-modal-container{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

.ubereattips-modal-text{
  font-family: markpro, sans-serif;
  font-size: 18px;
  font-weight: 300;
  margin: 5px 0 20px 0;
  max-width: 530px;
  min-width: 530px;
}

.logo-ubereattips-modal-layout{
  position: absolute;
    bottom: 30px;
    right: 30px;
}

/* #endregion */

/* #region page deliverootips */

.deliverootips-modal-title{
  font-family: markproblack, sans-serif;
  color: #000;
  font-size: 70px;
  text-align: center;
  max-width: 586px;
  margin: 0 0 15px 0;
  line-height: 1;
}



.deliverootips-modal-container{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

.deliverootips-modal-text{
  font-family: markpro, sans-serif;
  font-size: 18px;
  font-weight: 300;
  margin: 5px 0 20px 0;
  max-width: 530px;
  min-width: 530px;
}

.logo-deliverootips-modal-layout{
  position: absolute;
  bottom: 30px;
  right: 30px;
}

/* #endregion */



/* #region page modale zoom */
.zoommodal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  overflow: hidden;
}

/* Conteneur de l'image ou pdf dans la zoommodale */
.zoommodal-content {
  /* Utilisation de viewport units pour être certain que le contenu n'excède pas 90% de l'écran */
  width: 90vw;
  height: 90vh;
  padding-top: 80px;
  /* Optionnel : centrer le contenu dans ce conteneur */
  display: flex;
  justify-content: center;
  align-items: center;
  /* On retire overflow pour éviter le scroll interne */
  position: relative;
  
  /* Animation (si vous souhaitez toujours une animation de scale) */
  transform: scale(0);
  transition: transform 0.3s ease-out;
}

/* Bouton de fermeture */
/* .zoommodal-close {
  position: absolute;
} */

/* Style pour l'élément à l'intérieur de la zoommodale */
.zoommodal-content img {
  width: auto; 
  height: auto; 
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center; /* Pour centrer l'image dans le conteneur */
  display: block;
}


.zoommodal-content embed{
  width: 100%; /* Définir une largeur fixe */
  height: 100%; /* Définir une hauteur fixe */
  display: block;
}

.img-container {
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: default;
}

.img-container img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transform-origin: center center;
  transition: transform 0.1s ease-out;
  user-select: none;
  -webkit-user-drag: none;
}

.img-container:hover {
  cursor: grab;
}

.img-container:active {
  cursor: grabbing;
}


/* #endregion */

/* #region formulaire creation mot de passe */
form ul{
  padding: 0 16px;
}

form ul li  {
  list-style: none;
  font-family: markpro, sans-serif;
  font-size: 14px;
  width: var(--size-formwidth);
  color: var(--red-color);
  text-align: center;
}



/* #endregion */