:root {
  /* --fond: rgba(0, 164, 224, 0.1);   rgba(0, 172, 172, 0.1) */
  /* --fonce: rgb(0, 164, 224);    rgb(0, 172, 174) */

  /* altenative bleue rgb(78, 169, 189); y
   original rgb(78, 187, 189);*/


  --fondgris: white;
  --bruntexte: rgb(48, 101, 154);
  --bruntextelight: rgb(206, 231, 255);
  --bruntexteDark: rgb(17, 69, 120);
  --texte: rgb(66, 66, 66);
  --fondgrisclair: whitesmoke;
  /* pour buttons - hover*/
  --fondblocsgris: rgb(242, 248, 255);
  /* pour fond de blocs   original rgb(242, 242, 242)*/
  --lightgreen: rgb(198, 232, 198);
  --resultpositif: rgb(48, 101, 154);
  --resultnegatif: rgb(255, 157, 157);
  --backgrbutton: rgb(172, 172, 172);
  --champGrise: rgb(128, 128, 128);
  --highlight: rgb(48, 119, 154);


}

/* ROOT original
:root {

  --fondgris: rgb(51, 51, 51);
  --bruntexte: rgb(222, 184, 135);
  --bruntextelight: rgb(213, 194, 169);
  --bruntexteDark: rgb(224, 169, 84);
  --texte: whitesmoke;
  --fondgrisclair: rgb(144, 144, 144);
  --fondblocsgris: hwb(0 100% 0% / 0.1);
  --lightgreen: rgb(198, 232, 198);

}
*/

/* banner consentement Google Analytics*/

#cookieConsent {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.75);

  color: #fff;
  text-align: center;
  padding-top: 40px;
  padding-bottom: 40px;
  z-index: 1000;
  display: none;
  /* Masqué par défaut */
}

#cookieConsent p {
  padding-left: 20px;
  padding-right: 20px;
}



#cookieConsent a {
  color: white;
  font-size: inherit;
}

#cookieConsent a:hover {
  color: var(--bruntexte);
}

#cookieConsent button {
  background-color: var(--bruntexte);
  color: white;
  border: none;
  padding: 10px 20px;
  margin-left: 10px;
  cursor: pointer;
  font-weight: bold;
}

#cookieConsent button:hover {
  background-color: var(--bruntexteDark);
}



/* fin banner consentement*/


body {
  font-family: arial, sans-serif;
  margin: auto;
  margin-top: 0px;
  padding: 0;
  font-size: small;
  font-weight: normal;
  background-color: var(--fondgris);
  color: var(--texte);


}

#mainContainer {

  margin: auto;
  padding: 5px;

}

/* pour spans dans le texte*/
.blueFormatting {
  color: var(--bruntexte);
  font-weight: bold;
}

.highlight {
  color: var(--highlight);
  font-weight: bolder;
  text-transform: uppercase;
}

.underline {
  text-decoration: underline solid var(--bruntexte) 50%;

}

.separateur {
  width: 33%;
  margin: auto;
  background-color: var(--bruntexte);
  height: 5px;
  margin-top: 40px;
  margin-bottom: 40px;
  ;
}

/* pour fomatting des lines extrenes */
.liensExternes {
  color: var(--bruntexte);
  font-style: italic;
  text-decoration: underline;
  cursor: pointer;
}

.liensExternes:hover {
  color: var(--bruntexteDark);
}

/* css pour icones ?*/

.dropdownContentQM {
  display: none;
  font-style: italic;
  font-weight: normal;
  background-color: var(--bruntextelight);


  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  padding: 12px 16px;
  border-radius: 5px;
  z-index: 2000;
  text-align: justify;

  font-size: small;
  text-transform: none;





}


.allQM {
  cursor: pointer;
  color: #808080;
  margin-left: 0px;
  padding: 3px 6px;
  background-color: var(--bruntextelight);
  border-radius: 20px;
  position: relative;
  /* relative pour servir de référence*/
  font-size: 11px;
  font-weight: bold;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;




}

.allQM:hover {
  background-color: var(--bruntexte);
  color: black;
}

/* formatting du bouton +*/
.plus {
  position: relative;

  top: 25px;
  width: 10px;
  height: 10px;
  background-color: var(--bruntexte);
  padding: 5px;
  border-radius: 100%;
  text-align: center;
  margin: 0px;
  cursor: pointer;
  align-content: center;

}

.plus b {
  position: relative;
  color: var(--fondgris);
  top: -3px;
  font-size: medium;
}

.plus:hover {
  background-color: var(--bruntextelight);


}

.plus b:hover {
  color: var(--texte)
}

#plusSimSalaire {
  top: 10px;
  margin-top: 10px;
  margin: auto;

}

#plusFiscParent {
  top: 0px;
  margin: auto;
  margin-bottom: 10px;
}

#plusFiscEnfants {
  left: 0px;
}

/*fin formatting bouton + */

.plusbloc3,
.plusbloc3 input {

  height: 0px;
  align-items: center;
  color: transparent;
  margin-bottom: 0px;


}

#plusbloc3Result {
  margin-top: 10px;

}

.plusbloc4,
.plusbloc4 input {

  height: 0px;
  align-items: center;
  color: transparent;
  margin-bottom: 0px;

}



.plusBloc5,
.plusBloc5 input {

  height: 0px;
  align-items: center;
  color: transparent;
  margin-bottom: 0px;

}

/* header (original sauvé)*/

#navContainer {
  top: 0;
  position: -webkit-sticky;
  position: sticky;
  font-weight: bold;
  display: grid;
  grid-template-columns: 15% 0% 85%;
  align-content: center;

  box-shadow: 0px 2px 10px var(--bruntexteDark);
  grid-template-rows: 46px;
  z-index: 10;

}

#navTitre,
#navLogo {
  font-weight: bold;
  align-content: center;
  overflow: hidden;
  background-color: var(--fondgris);
}

#navLogo img {
  height: 30px;
  margin-left: 5px;
}

#hoverHome {
  /* pour mettre home en gris et ensuite en brun quand hover*/

  filter: grayscale(100%);
  padding-bottom: 5px;

}




#homeLogo {
  height: 25px;
}

#titre {
  font-size: 16px;
  color: var(--texte);
  margin-bottom: 0px;
  margin-top: 0px;

}



.topnav {

  background-color: var(--fondgris);
  display: flex;
  flex-direction: row;
  justify-content: center;


}

.topnav a {

  float: left;
  font-size: 16px;
  color: var(--texte);
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  background-color: var(--fondgris);

}

#hovercontactNav {
  font-size: 26px;
  padding: 5px;
  width: 40px;
  padding-right: 20px;
  font-weight: lighter;
}

@media screen and (min-width: 769px) {
  #hovercontactNavbis {
    display: none;

  }
}



#hoverHome {
  padding-top: 10px;
}

.dropdown {
  float: left;
}

#connectionField {
  border: 2px solid var(--bruntexte);
  border-radius: 5px;
  padding: 20px;
  margin: 5px;

  text-align: center;
}






/* drop explications Simulateur, Taches & Dépenses */
#dropHome,
#dropTravaux,
#dropDepenses,
#dropSimulation,
#dropMonCompte,
#dropContactNav {
  display: none;
  color: white;
  padding: 5px;
  margin: 0px;
  text-align: left;
  font-size: 12px;
}

#hoverHome:hover+p {
  position: absolute;
  top: 46px;
  display: block;
  background-color: var(--bruntexte);
}

#hoverTravaux:hover+p {
  position: absolute;
  top: 46px;
  display: block;
  background-color: var(--bruntexte);
}

#hoverDepenses:hover+p {
  position: absolute;
  top: 46px;
  display: block;
  background-color: var(--bruntexte);
}

#hoverSimulation:hover+p {
  position: absolute;
  top: 46px;
  display: block;
  background-color: var(--bruntexte);
}

#hoverMonCompte:hover+p {
  position: absolute;
  top: 46px;
  display: block;
  background-color: var(--bruntexte);
}

#hovercontactNav:hover+p {
  position: absolute;
  top: 46px;
  display: block;
  background-color: var(--bruntexte);
}


.dropdown .dropbtn {
  font-size: 16px;
  font-weight: bold;
  border: none;
  outline: none;
  color: var(--texte);
  padding: 14px 16px;
  background-color: var(--fondgris);
  font-family: inherit;
  margin: 0;
  cursor: pointer;


}

.dropdown {
  float: left;

}

#drowpdownNav2 {
  min-width: 0px;
}


.topnav a.icon {
  display: none;
  font-size: 22px;
  color: var(--bruntexte);
}

.topnav a:hover,
.dropdown:hover .dropbtn {
  color: var(--bruntexte);
}

#hoverHome:hover {

  filter: grayscale(0%);
}

.dropdown-content {
  display: none;
  position: absolute;

  box-shadow: 0px 5px 5px 0px var(--bruntexteDark);

}

.dropdown-content a {
  float: none;
  color: var(--texte);
  padding: 12px 16px;
  text-decoration: none;
  display: block;
  text-align: left;


}

.dropdown-content a:hover {
  background-color: var(--bruntexte);
  color: var(--fondgris);

}

.dropdown:hover .dropdown-content {
  display: block;
}

#dropdownContentButton {
  width: 230px;
}

#loginMenu:hover {
  background-color: var(--fondgris);
  color: var(--bruntexte);
}

#connectionField:hover {
  background-color: var(--bruntexte);
  color: var(--fondgris);
}


/*FIN Header */

/* Styles pour les sliders */

/* ajuster le style sliders en fonction des navigateurs */
input[type="range"] {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 8px;
  border-radius: 5px;
  background: var(--fondgris);
  box-shadow: 2px 2px 5px 0px black;
  outline: none;
}

input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: var(--fondgris);
  border: 1px solid black;
  box-shadow: 2px 2px 5px 0px black;
  cursor: pointer;
}

input[type="range"]::-moz-range-thumb {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: var(--fondgris);
  box-shadow: 2px 2px 5px 0px black;
  cursor: pointer;
}

input[type="range"]::-webkit-slider-runnable-track {
  width: 100%;
  height: 8px;
  border-radius: 5px;
  background: var(--fondgris);
  box-shadow: 2px 2px 5px 0px black;
}

input[type="range"]::-moz-range-track {
  width: 100%;
  height: 8px;
  border-radius: 5px;
  background: var(--fondgris);
  box-shadow: 2px 2px 5px 0px black;
}

/* CSS pour faire apparitre ou cacher sliders en JS */
.hidden {
  display: none;
}

.visible {
  display: inline;
}

.active {
  background-color: var(--backgrbutton) !important;
  color: var(--fondgris) !important;
  font-weight: bolder !important;
  border: 2px solid var(--backgrbutton) !important;
}

/* fin style sliders*/

/**** FOOTER*****/
footer {
  display: grid;
  grid-template-columns: 20% 20% 20% 20% 20%;
  background-color: var(--fondgris);
  align-items: center;
  text-align: center;
  bottom: 0px;

  font-size: 0.9em;
  height: 50px;
  z-index: 100000;
  color: var(--texte);
  border-top: 1px solid black;
  color: var(--fondgris);
  background-color: var(--bruntexte);
  padding: 20px;
}

#footer p {
  color: var(--texte);
}

.hoverFooter a {

  font-size: 1.2em;
  color: var(--fondgris);
  text-decoration: none;

}

.hoverFooter a:hover {
  color: black;
  font-weight: bold;

}

@media screen and (max-width: 900px) {
  #titre {
    display: none;
  }

  .topnav a,
  .dropdown .dropbtn {
    font-size: 13px;

  }

  #connectionField {
    padding: 20px 0px;
  }

  #dropdownContentButton {
    width: 180px;
  }
}



/* Header petits écrans*/
@media screen and (max-width: 768px) {

  .topnav a,
  .dropdown .dropbtn {
    display: none;

  }

  .topnav a.icon {
    float: right;
    display: block;
    padding-top: 0px;
    padding-bottom: 0px;
    font-size: 30px;
  }

  #titre {
    display: block;

    text-align: center;



  }

  #navContainer {
    grid-template-columns: 27% 60% 13%;
    background-color: var(--fondgris);
    align-content: center;
  }

  #logo {
    height: 15px;
    z-index: 10;


  }



  #hovercontactNav,
  #dropContactNav {
    display: none;
  }

}

@media screen and (max-width: 768px) {
  .topnav.responsive {
    display: block;
    position: absolute;
    right: 0;
    top: 0px;

  }


  .topnav.responsive .icon {
    position: absolute;
    right: 0;
    top: 0;
    height: 44px;
    align-content: center;
  }

  .topnav.responsive a {
    position: relative;
    float: none;
    display: block;
    text-align: center;
  }

  .topnav.responsive a:hover {
    background-color: var(--bruntexte);
    color: var(--fondgris);
    z-index: 1;
  }

  .topnav.responsive .icon:hover {
    background-color: var(--fondgris);
    color: var(--bruntexte);
    z-index: 1;
    box-shadow: none;
  }

  #hoverHome:hover #homeLogo {

    filter: invert(50%);
  }

  .topnav.responsive div {
    position: relative;
    top: 46px;


  }

  #dropbtn2 {
    display: none;
  }

  #dropdownContentButton2 {
    top: 0px
  }

  #drowpdownNav1 {
    top: 40px;
  }

  .dropdown-content {
    display: block
  }

  .topnav.responsive .dropdown {
    float: none;
    display: block;
  }

  .topnav.responsive .dropdown-content {
    position: relative;
    display: block;
  }







  .topnav.responsive .dropdown .dropbtn {
    position: absolute;
    display: block;
    width: 100%;
    text-align: center;
    background-color: var(--bruntexte);
    color: var(--fondgris);
    z-index: 20;

  }

  #dropHome,
  #dropTravaux,
  #dropDepenses,
  #dropSimulation,
  #dropMonCompte {
    display: none !important;
  }



  footer {
    grid-template-columns: 30% 30% 40%;
    height: fit-content;
  }

  #footer1 {
    grid-area: 3 /3 / 4 / 4;
  }

  #footer5 {
    grid-area: 3 /1/ 4 / 2;
  }
}