*{
    box-sizing: border-box;
}

@font-face {
font-family: 'Lato';
src: url('./font/Lato-Regular.ttf');
font-weight: normal;
font-style: normal;
}
  
body{
    height: auto;
    widows: 100vh;
    overflow: scroll;
    font-family: 'Lato',sans-serif;
    display: flex;
    font-weight: 700;
    align-items: center;
    justify-content: center;
    color: #555;
    background-color: #ecf0f3;
}

.container-login{
    margin-top: 30px;
    width: 350px;
    padding: 40px 35px 35px 35px;
    border-radius: 40px;
    background: #ecf0f3;
    overflow: hidden;
    box-shadow: 13px 13px 20px #c0ced1,
                -13px -13px 20px #ffffff;
    border: 2px solid #3498db; /* Bordure bleue */
}

.logo{
    width: 80px ;
    height: 80px;
    border-radius: 50%;
    margin: 0 auto;
    justify-content: center;
    align-items: center;
    display: flex;
    box-shadow: 0px 0px 2px #00DD80, 0px 0px 0px 5px #ecf0f3, 8px 8px 15px #a7aaaf, -8px -8px 15px #ffffff;
}

.logo img{
    width: 70px;
    height: 70px;
}

.title{
    text-align: center;
    font-size: 17px;
    padding-top: 24px;
    letter-spacing: 0.5px;
}

.sub-title{
    font-size: 12px;
    text-align: center;
    padding-top: 5px;
}

.custom-fields{
    width: 100%;
    padding: 20px 5px 5px 5px;
}

.custom-fields input{
    outline: none;
    border: none;
    background: none;
    font-size: 13px;
    color: #555;
    padding: 15px 6px 15px 2px;
}

.username-field, .password-field{
    margin-bottom: 20px;
    border-radius: 20px;
    padding: 0px 0px 0px 7px;
    box-shadow: inset 5px 5px 5px #cbccd1, inset -5px -5px 5px #ffffff;
}
   /*bouton login ici*/
.btn-submit{
    outline: none;
    border: none;
    cursor: pointer;
    width: 100%;
    height: 40px;
    border-radius: 30px;
    font-size: 15px;
    font-weight: 700;
    font-family: 'Lato', sans-serif;
    color: #fff;
    text-align: center;
    background-color: #27b403;
    box-shadow: 3px 3px 8px #b1b1b1, -6px -6px 8px #ffffff;
}

.btn-submit:hover{
    background-color: #191041;
}

.btn-submit:active{
    background-color: #191041;
}

.btn-logout{
    outline: none;
    border: none;
    cursor: pointer;
    width: 100%;
    height: 40px;
    border-radius: 30px;
    font-size: 15px;
    font-weight: 700;
    font-family: 'Lato', sans-serif;
    color: #fff;
    text-align: center;
    background-color: #27b403;
    margin-top: 10px;
    box-shadow: 3px 3px 8px #b1b1b1, -6px -6px 8px #ffffff;
}

.btn-logout:hover{
    background-color: #27b403;
}

.btn-logout:active{
    background-color: #27b403;
}

.link{
    text-align: center;
    margin-top: 10px;
}

.link a{
    color: #aaa;
    text-decoration: none;
    font-size: 15px;
}

.btn-container{
    width: 100%;
    padding: 30px 5px 5px 5px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.btn-container .btn-option{
    outline: none;
    border: none;
    cursor: pointer;
    width: 40%;
    height: 40px;
    border-radius: 30px;
    font-size: 15px;
    font-weight: 700;
    font-family: 'Lato', sans-serif;
    color: #fff;
    text-align: center;
    background-color: #27b403;
    box-shadow: 3px 3px 8px #b1b1b1, -6px -6px 8px #ffffff;
}
.btn-buy{
    outline: none;
    border: none;
    cursor: pointer;
  
    border-radius: 30px;
    font-size: 11px;
  
    font-family: 'Lato', sans-serif;
    color: #fff;
    text-align: center;
    background-color: #27b403;
    box-shadow: 3px 3px 8px #b1b1b1, -6px -6px 8px #ffffff;
}

/* .horizontal-scroll-wrapper {
    width: 100px;
    height: 300px;
    overflow-y: auto;
    overflow-x: hidden;
    transform:rotate(-90deg) translateY(-100px);
    transform-origin: right top;
  }

  .horizontal-scroll-wrapper > div {
    width: 100px;
    height: 100px;
    transform: rotate(90deg);
    transform-origin: right top; 
  } */

  .menu-items{
      margin-top: 15px;
      margin-bottom: 15px;
      width: 100%;
      padding: 0px 10px;
      padding-bottom: 15px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      border-radius: 10px;
      overflow: hidden;
      box-shadow: 3px 3px 8px #b1b1b1, -6px -6px 8px #ffffff;
  }
  .row-items{
      display: flex;
      align-items: center;
      flex-direction: row;
      justify-content: space-between;
  }

  .row-items .title, .row-items .price{
    font-size: 12px;
    font-family: 'Lato', sans-serif;
    opacity: 0.85;
    font-style: oblique;
  }

.row-items {
  display: flex;
  justify-content: center; /* centre horizontalement */
  align-items: center;     /* centre verticalement */
  text-align: center;      /* centre le texte à l'intérieur */
  flex-direction: column;  /* pour que les <br> soient respectés verticalement */
  height: 100px;           /* ajuste la hauteur selon ton besoin */
}

.row-items .title-exp {
  font-size: 14px;
  font-family: 'Lato', sans-serif;
  opacity: 0.85;
  padding-top: 1px;
  color: blue;
}


  .box{
      padding-top: 15px;
      opacity: 0.6;
      font-size: 12px;
      text-align: center;
  }

  .notice{
    padding-top: 15px;
    opacity: 0.6;
    font-size: 12px;
    text-align: center;
    color: coral;
}



#tableau {
    position: relative;
    top: 0px;
    width: 80%; /* Ajuste la largeur en fonction de l'écran */
    max-width: 280px; /* Limite la largeur pour les grands écrans */
    height: auto; /* La hauteur est automatique pour s'adapter au contenu */
    border-width: 2px;
    border-bottom-style: outset;
    border-color: #fff;
    border-top-style: outset;
    border-radius: 18px;
    text-align: center;
    padding: 10px; /* Ajuste les espaces internes */
    background-color: #add0e81a;
    margin: 0px auto;
    z-index: 2;
}

@media (max-width: 575.98px) {
  #tableau {
    position: relative;
    top: 0px;
    width: 80%; /* Ajuste la largeur en fonction de l'écran */
    max-width: 280px; /* Limite la largeur pour les grands écrans */
    height: auto; /* La hauteur est automatique pour s'adapter au contenu */
    border-width: 2px;
    border-bottom-style: outset;
    border-color: #fff;
    border-top-style: outset;
    border-radius: 18px;
    text-align: center;
    padding: 10px; /* Ajuste les espaces internes */
    background-color: #add0e81a;
    margin: 0px auto;
    z-index: 2;
  }
}


/* Button Payer */
#payTicketButton {
 background-color: #d0d0d0;
  color: #ff0808;
  background-color: #bdc4bad4;
  max-width: 100%;
  width: 94%;
  height: auto;
  border: 1px solid #0ba82b;
  border-radius: 30px;
  transition: background-color 0.3s ease, transform 0.2s ease;
  font-size: 16px;
}



@media (max-width: 576px){
  #payTicketButton  {
    font-size: 18px; /* Réduire la taille du texte sur les petits écrans */
    width: 95%; /* Le bouton occupe toute la largeur sur les petits écrans */
	margin-bottom:2px;
  }
}




#button-action{
background-color: #1a9508;
  font-size: 18px;
  border-radius: 30px !important;
  border: 1px solid #db0707;
  transition: background-color 0.3s ease, transform 0.3s ease;
  cursor: pointer;
  width: 96%;
  margin: 0 auto;
  display: block;
  text-align: center;
}


.circle-img {
  width: 150px;        /* taille de l’image */
  height: 150px;       /* même valeur pour avoir un vrai cercle */
  border-radius: 50%;  /* rend les coins arrondis jusqu’à former un cercle */
  object-fit: cover;   /* évite la déformation, recadre proprement */
  border: 3px solid #e81b1b; /* optionnel : bordure bleue foncée */
}



.spinner {
  border: 4px solid #f3f3f3;
    border-top-width: 4px;
    border-top-style: solid;
    border-top-color: rgb(243, 243, 243);
  border-top: 4px solid #3498db;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: spin 1s linear infinite;
  margin: 15px auto;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

.box-group-area {
  color: red;
  font-weight: bold;
}


.box-group-icon {
  color: bleue;
  font-weight: bold;
}
