*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  -webkit-user-select: none;
  /* Safari */
  -ms-user-select: none;
  /* IE 10 and IE 11 */
  user-select: none;
  /* Standard syntax */
}


:root {
  --largura: 600px;
  --fontFamily: 'Georgia';
  --fontSize: 13px;
  --alturaCanvas: 260px;
  --larguraCanvas: 260px;
  --alturaCalendario: 0px;
  --alturaSexo: 0px;
  --larguraDatas: 100px;
}

.container {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto auto var(--alturaCalendario) var(--alturaSexo) auto auto auto auto;
  background-color: rgb(194 240 249);
  width: var(--largura);
  margin-left: auto;
  margin-right: auto;
}

.item {
  background-color: #9eecef;
  border-bottom: solid 4px rgb(194 240 249);
  overflow-y: hidden;
}

.cabecalho {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: var(--fontFamily);
  font-size: clamp(16px, 5vw, 26px);

}

.rotas {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto;
  justify-content: end;
}

.lang a {
  padding: 3px 12px 3px 12px;
  text-decoration: none;
  background-color: black;
  color: white;
  font-size: 11px;
  border-radius: 5px;
  margin-right: 3px;
}

.metod {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto auto;
}

.ometod {
  text-align: center;
  font-size: clamp(14px, 2vw, 16px);
}

.item-1 {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto auto;
  padding-top: 10px;
}

.item-2 {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto;
  justify-content: center;
}

.labelmenosVinte {
  font-family: var(--fontFamily);
  font-size: 12px;
}

.espacoIconmenosVinte {
  padding-left: 10px;
}

.faixaEtaria {
  margin: 5px 0px;
}

.calendario {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  justify-content: center;
  align-items: center;
  z-index: 10;
}

#hoje,
#nascto {
  width: var(--larguraDatas);
  margin-left: 10px;
  cursor: pointer;
  text-align: center;
}

.datas {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto auto;
  justify-content: center;
  margin: 5px 0px;
  text-align: center;
}

.datas label {
  text-align: center;
  font-size: clamp(13px, 3vw, 16px);
}

.porExtenso {
  display: grid;
  grid-area: 2/1/2/3;
  justify-content: center;
  padding: 5px 5px;
  font-size: clamp(13px, 4vw, 16px);
}

.ui-datepicker.ui-widget {
  font-size: 13px;
}

.ui-datepicker {
  z-index: 4 !important;
}

.item-4 {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto;
  justify-content: center;
  align-items: center;
}

.botaoSelect,
#sexo-menu,
#unidAltura-menu,
#unidPeso-menu {
  font-family: var(--fontFamily);
  font-size: var(--fontSize);
  text-align: center;
  padding: 3px 0px;

}

.botaoSelectText {
  text-align: center;
  margin-right: 2px !important;
}

.item-5,
.item-6 {
  display: grid;
  grid-template-columns: 40px auto 40px;
  grid-template-rows: auto auto;
  justify-items: center;
  align-items: center;
  padding: 5px 0px;
}

#altura,
#peso {
  width: 80px;
  text-align: center;
  margin: 0px 8px;
}

.topoSlide {
  display: grid;
  grid-template-columns: auto auto auto;
  grid-template-rows: auto;
  justify-items: center;
  align-items: center;
  grid-area: 1/1/1/4;
}

.menos,
.mais {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 34px;
  height: 34px;
  width: 34px;
  background-color: white;
  border-radius: 50%;
  border: 2px solid blue;
  cursor: pointer;
}

#slideAltura,
#slidePeso {
  width: 98%;
  height: 5px;
  background: black;
  margin: 0px 8px;
}

.handleSlide {
  border-radius: 50%;
  top: -8px !important;
  width: 20px !important;
  height: 20px !important;
  background: green !important;
  cursor: pointer !important;
}

.slidetrail {
  background: red;
}

.item-7 {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto auto auto auto;
  justify-items: center;
  align-items: center;
}

.normpeso {
  margin-bottom: 5px;
  font-size: clamp(14px, 3vw, 18px);
}

#pesomax,
#pesomin {
  width: 90px;
  text-align: center;
}

.classeIMC {
  padding: 5px 0px;
}

#classe {
  width: 150px;
  text-align: center;
  margin-left: 5px;
}

canvas {
  width: 100%;
  height: 100%;
}

.oscanvas {
  position: relative;
  width: var(--larguraCanvas);
  height: 260px;
}

#canvasAdulto {
  position: absolute;
  z-index: 1;
  opacity: 1;
  left: 0;
}

#canvasAdultoRfs {
  position: absolute;
  z-index: 2;
  opacity: 1;
  left: 0;
}

#canvasInfantil {
  position: absolute;
  z-index: 0;
  opacity: 0;
  left: 0;
}

#canvasInfantilRfs {
  position: absolute;
  z-index: 1;
  opacity: 0;
  left: 0;
}

.item-8 {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: repeat(3, auto);
}

.item8_R {
  font-size: .8em;
  padding-left: 10px;
  text-align: left;
}

.reinicia {
  font-size: clamp(11px, 3vw, 13px);
}

@media screen and (max-width: 610px) {
  :root {
    --largura: 100%;
  }
}