*{
    box-sizing: border-box;
}

body {
    /* background-color: skyblue; */
    background-size: 150%; 
}

a {
  text-decoration: none !important;
  color: black !important;
}

/* -------------------------------------------------------------------------- */
/*                                  home page                                 */
/* -------------------------------------------------------------------------- */

#home_page_section {
  margin-top: 25vh;
}


/* -------------------------------------------------------------------------- */
/*                                   navbar                                   */
/* -------------------------------------------------------------------------- */

.pp-navbar {
  
  height: 50px;
  width: 50px;
  border-radius: 50%;
  border: 2px solid rgb(56, 56, 56);
  
}

/* -------------------------------------------------------------------------- */
/*                              Registration form                             */
/* -------------------------------------------------------------------------- */

.js-verification {
  font-size: 12px;
  line-height: 1;
}

/* Add a green text color and a checkmark when the requirements are right */
.valid {
  color: green;
}

.valid:before {
  position: relative;
  left: -35px;
  content: "✔";
}

/* Add a red text color and an "x" when the requirements are wrong */
.invalid {
  color: red;
}

.invalid:before {
  position: relative;
  left: -35px;
  content: "✖";
}

/* ------------------------------- cancel game cross ------------------------------ */
.fa-solid {
  color: rgb(95, 95, 95);
}

.home-user {
  color: white !important;
}
header .navbar{
  background-color:rgb(0, 102, 255)!important;
}

.logo{
  
  /* width: 88px; */
  height: 3.5rem;
  /* border-radius: 50%; */
  margin-left: 10px;

}
.dashboard a{
  font-size: 15px ;
  color:#fff;
  font-weight: bolder;
  margin: 10px;
}

.admin-badge {
    background-color: #d896e9; /* Couleur de fond */
    color: #fff; 
    border-radius: 50%; 
    padding: 8px 15px; 
    margin-right: 10px; 
    font-weight: bold; 
    display: inline-block; /* Permet au badge d'occuper seulement l'espace nécessaire */
}

.user-badge{
    background-color: #73f3ea; 
    color: #fff; 
    border-radius: 50%;
    padding: 8px 15px; 
    margin-right: 10px;
    display: inline-block;
   
} 

h1{
    font-family:'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
    /*background-color: rgba(127, 255, 212, 0.564);*/
    text-align: center;
}

.title {
  text-align: center;
  margin-top: 50px;
}


footer {
    width: 100%;
    text-align: center; 
    margin-top: auto;
    padding: 2rem;
    color: white;
    background-color:rgb(0, 102, 255);
   
}

.buttons-container{
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 20vh auto;
  

}

/**
 * Style principal
 */

 
 .main-container {
   /* background-color: #f0f0f0; */
   min-height: 100vh;
   font-family: sans-serif;
   overflow: hidden;
 }
 
 

/* -------------------------------------------------------------------------- */
/*                        image and question container                        */
/* -------------------------------------------------------------------------- */

/* ------------------------------ progress bar ------------------------------ */
.progress-cross-container {
  width: 700px;
  margin : 10px auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* border: solid blue; */
  padding: 0 10px;
}

.progress-container {
  width: 600px;
  margin : 20px auto;
  /* border: solid pink; */
}

.progress-frame {
  width: 100%;
  height: 15px;
  background-color: #e4e3e3;
  border-radius: 7px;
}

.progress-bar-css {
  width: 10%;
  height: 15px;
  background-color: solid #fafaa6;
  border-radius: 7px;

  /* border: solid red; */
}

/* ---------------------- image and question container ---------------------- */
 .image-questions-container {
  /* border: 1px solid red; */
  /* width: 1000px; */
  margin : 20px auto;
  display: flex;
  justify-content: center;
  height: 200px;

 }

 .image-brain {
  width: 150px;
  /* border: solid green; */
 }
 
 .main-container .question-container #question {
   font-size: 1.2rem;
   background-color: rgb(0, 102, 255);
   color: white;
   border-radius: 5px;
   padding: 1rem;
   position: relative;
   text-align: justify;
   margin-left: 1rem;
   /* width: 600px; */
 }
 
 .main-container .question-container #question:before {
   content: "";
   display: inline-block;
   position: absolute;
   height: 0;
   width: 0;
   border-left: 2rem solid transparent;
   border-bottom: 2rem solid rgb(0, 102, 255);
   bottom: -0.2rem;
   left: -1rem;
   transform: rotate(-10deg);
 }
 
 /* ---------------------------- answers container --------------------------- */
 .main-container  #answers {
   /* width: 1000px; */
   display: flex;
   flex-direction: column;
   flex-wrap: wrap;
   justify-content: space-between;
   margin: 10px auto;
   padding: 0;
   /* border: 1px solid orange; */
 }
 
 /* ------------------------------ answer button ----------------------------- */
 .main-container  #answers .answer {
   /* font-size: 1.2rem; */
   background-color: white;
   color: black;
   border-radius: 7px;
   border: 2px solid rgb(230, 230, 230);
   box-shadow: 3px 3px rgb(233, 233, 233);
   transition-duration: 0.5s;
   width: 500px;
   height: 50px;
   margin: 10px auto;
   display: flex;
   justify-content: center;
   align-items: center;

 }
 
 .main-container #answers .answer:hover {
   cursor: pointer;
   background-color: rgb(230, 230, 230); 
 }

 .main-container #answers .answer:active {
  background-color: #e2ecfd;
  transition-duration: 0s;
  box-shadow: 0px 0px;
  border: 2px solid rgb(164, 190, 248);
  color:rgb(81, 135, 252)
}

ul {
  list-style-type: none;
}
 
 /**
  * Section Resultat
  */
 
 .main-container .result-container p {
   /* font-size: 1.2rem; */
   display: none;
 }
/* ---------------------------------- Timer --------------------------------- */

  .timer {
    font-size: 2rem;
    text-align: center;
  }

 /* ------------------------------- Big buttons ------------------------------ */

 
  .pushable{
    background-color: white;
    color: black;
    border: 2px solid rgb(230, 230, 230);
    border-radius: 7px;
    width : 500px;
    height: 50px;
    transition-duration: 0.5s;
    margin-bottom : 10px;
    box-shadow: 3px 3px rgb(233, 233, 233);
  }

  .pushable:hover {
    background-color: rgb(230, 230, 230); 
  }

  .pushable:active {
    background-color: #e2ecfd;
    transition-duration: 0s;
    box-shadow: 0px 0px;
    border: 2px solid rgb(164, 190, 248);
    color:rgb(81, 135, 252)

  }

  /* -------------------------------- Mini card at end game------------------------------- */

  .mini-card {
    border-radius: 10px;
    /* width: 150px; */
    height : 120px;
    font-weight: 900;
  }

  .mini-card-head {
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: Verdana, Geneva, Tahoma, sans-serif, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
    color: white;
  }

  .mini-card-body {
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: Verdana, Geneva, Tahoma, sans-serif, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
    font-size: larger;
    transform: translate(0, -5%);
  }

  #mini_card_1 {
    border : 3px solid rgb(255, 174, 0);
  }
  #mini_card_2 {
    border : 3px solid rgb(5, 142, 233);
  }
  #mini_card_3 {
    border : 3px solid rgba(38, 192, 18, 0.664);
  }

  #mini_card_head_1 {
    background-color: rgb(255, 174, 0);
  }
  #mini_card_head_2 {
    background-color: rgb(5, 142, 233);
  }
  #mini_card_head_3 {
    background-color: rgb(38, 192, 18, 0.664);
  }

  /* ------------------------------- retry game ------------------------------- */

  .retry-game {
    margin : 40vh auto;
  }

  /* -------------------------------------------------------------------------- */
  /*                               Public profile                               */
  /* -------------------------------------------------------------------------- */

  /* -------------------------------- Mini card ------------------------------- */

  .card-profile {
    min-width: 170px ;
  }

  .card-profile-text {
    font-size: 12px !important;
  }

  .badge-online-public-profile {
    transform: translate(-40px, 100px);
  }


  /* -------------------------------------------------------------------------- */
  /*                               Private profile                              */
  /* -------------------------------------------------------------------------- */

  /* ----------------------------- profile picture ---------------------------- */
  .upload {
    width : 125px;
    position: relative;
    margin: auto;
  }

  .upload img {
    border-radius: 50%;
    border: 8px solid #DCDCDC;
  }

  .upload .round {
    position: absolute;
    background: #00B4FF;
    bottom: 0;
    right: 0;
    width: 32px;
    height: 32px;
    line-height: 33px;
    text-align: center;
    border-radius: 50%;
    overflow: hidden;
  }

  .upload .round input[type = "file"] {
    position: absolute;
    transform: scale(3);
    opacity: 0;
  }

  input[type=file]::-webkit-file-upload-button {
    cursor: pointer;
  }

/* -------------------------------------------------------------------------- */
/*                                 Leaderboard                                */
/* -------------------------------------------------------------------------- */

/* ----------------------------- profile picture ---------------------------- */

.pp-leaderboard {
  height: 40px;
  width: 40px;
  border-radius: 50%;
  border: 2px solid rgb(56, 56, 56);
}

.badge-online {
  transform: translate(-25px, 30px);
}

/* ......................validator password................... */
 

input #current-password {
  border:1px solid black; 
}

form .block-input input.invalide {
  border-color: red;
}
form .block-input input.succes {
  border-color: #97df07;
}

div .validator-criters {
  display:flex;
  flex-direction: column;
  padding: 10px 50px;
  margin: auto;
}
 div .validator-criters span {
  display: block;
  color: #cacaca;
  font-size: 13px;
  margin: 5px 0;
}
 div .validator-criters span.error {
  color: #a70b0b;
}
 div .validator-criters span.succes {
  color: #97df07;
}

/* -------------------------------------------------------------------------- */
/*                              all follow table                              */
/* -------------------------------------------------------------------------- */

.badge-online-all-follow {
  transform: translate(-32px, 30px);
}