*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

@font-face {
  font-family: "Billo";
  src: url("../assets/BILLO__.TTF");
}

@font-face {
  font-family: "narrowbold";
  src: url("../assets/ARLRDBD.TTF");
}

section{
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.game, #perfil, #startscreen{
  padding: 0;
  padding-top: env(safe-area-inset-top);
  margin: 0;
  width:100vw;
  height: 100vh;
}

button, h2, p, .cell{
  font-family: "narrowbold",Arial, Helvetica, sans-serif;
}

#perfil{
  background:
  linear-gradient(27deg, #151515 5px, transparent 5px) 0 5px,
  linear-gradient(207deg, #151515 5px, transparent 5px) 10px 0px,
  linear-gradient(27deg, #222 5px, transparent 5px) 0px 10px,
  linear-gradient(207deg, #222 5px, transparent 5px) 10px 5px,
  linear-gradient(90deg, #1b1b1b 10px, transparent 10px),
  linear-gradient(#1d1d1d 25%, #1a1a1a 25%, #1a1a1a 50%, transparent 50%, transparent 75%, #242424 75%, #242424);
  background-color: #131313;
  background-size: 20px 20px;
}

#menucontainer{
  display: flex;
  flex-direction: column;
  margin: 1em auto;
  width: fit-content;
}

#menucontainer button{
  border-radius: 10em;
  width: -webkit-fill-available;
  padding: 1em 1.5em;
  border: 0.15em solid black;
  margin: 0.2em;
  font-weight: bold;
  background: repeating-linear-gradient(45deg, ivory, ivory 5px, beige 5px, beige 10px);
  text-align: center;
  font-size: 1.5em;
}

.game button{
  border-radius: 10em;
  padding: 0.3em 0.5em;
  width: fit-content;
  font-size: 1.5em;
}

button{
  cursor: pointer;
}

#startscreen{
  background:
  linear-gradient(324deg, goldenrod 4%,   transparent 4%) -70px 43px,
  linear-gradient( 36deg, goldenrod 4%,   transparent 4%) 30px 43px,
  linear-gradient( 72deg, darkgoldenrod 8.5%, transparent 8.5%) 30px 43px,
  linear-gradient(288deg, darkgoldenrod 8.5%, transparent 8.5%) -70px 43px,
  linear-gradient(216deg, darkgoldenrod 7.5%, transparent 7.5%) -70px 23px,
  linear-gradient(144deg, darkgoldenrod 7.5%, transparent 7.5%) 30px 23px,

  linear-gradient(324deg, goldenrod 4%,   transparent 4%) -20px 93px,
  linear-gradient( 36deg, goldenrod 4%,   transparent 4%) 80px 93px,
  linear-gradient( 72deg, darkgoldenrod 8.5%, transparent 8.5%) 80px 93px,
  linear-gradient(288deg, darkgoldenrod 8.5%, transparent 8.5%) -20px 93px,
  linear-gradient(216deg, darkgoldenrod 7.5%, transparent 7.5%) -20px 73px,
  linear-gradient(144deg, darkgoldenrod 7.5%, transparent 7.5%) 80px 73px;
  background-color: goldenrod;
  background-size: 100px 100px;
} 

h1{
  font-family: "Billo", Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
  color: white;
  letter-spacing: 2px;
}


#g1{
  background:
    radial-gradient(circle, transparent 20%, slategray 20%, slategray 80%, transparent 80%, transparent),
    radial-gradient(circle, transparent 20%, slategray 20%, slategray 80%, transparent 80%, transparent) 50px 50px,
    linear-gradient(#A8B1BB 8px, transparent 8px) 0 -4px,
    linear-gradient(90deg, #A8B1BB 8px, transparent 8px) -4px 0;
    background-color: slategray;
    background-size:100px 100px, 100px 100px, 50px 50px, 50px 50px;
  color: black;
  font-family: Helvetica, sans-serif;
  padding: 1em;
}

  #g2{
  background:
    radial-gradient(hsl(0, 100%, 27%) 4%, hsl(0, 100%, 18%) 9%, hsla(0, 100%, 20%, 0) 9%) 0 0,
    radial-gradient(hsl(0, 100%, 27%) 4%, hsl(0, 100%, 18%) 8%, hsla(0, 100%, 20%, 0) 10%) 50px 50px,
    radial-gradient(hsla(0, 100%, 30%, 0.8) 20%, hsla(0, 100%, 20%, 0)) 50px 0,
    radial-gradient(hsla(0, 100%, 30%, 0.8) 20%, hsla(0, 100%, 20%, 0)) 0 50px,
    radial-gradient(hsla(0, 100%, 20%, 1) 35%, hsla(0, 100%, 20%, 0) 60%) 50px 0,
    radial-gradient(hsla(0, 100%, 20%, 1) 35%, hsla(0, 100%, 20%, 0) 60%) 100px 50px,
    radial-gradient(hsla(0, 100%, 15%, 0.7), hsla(0, 100%, 20%, 0)) 0 0,
    radial-gradient(hsla(0, 100%, 15%, 0.7), hsla(0, 100%, 20%, 0)) 50px 50px,
    linear-gradient(45deg, hsla(0, 100%, 20%, 0) 49%, hsla(0, 100%, 0%, 1) 50%, hsla(0, 100%, 20%, 0) 70%) 0 0,
    linear-gradient(-45deg, hsla(0, 100%, 20%, 0) 49%, hsla(0, 100%, 0%, 1) 50%, hsla(0, 100%, 20%, 0) 70%) 0 0;
    background-color: #300;
    background-size: 100px 100px;
  color: white;
}

h2, #g2 p{
  margin-bottom: 0.5em;
}

h2{
  font-size: 2em;
}

.nodisp{
  display: none;
}

/*TA TE TI CSS*/

#g1 h2{
  color:steelblue;
}

#g1 p{
  font-size: 1.5em;
}

#tatecont{
  margin: auto;
  padding: 1.5em;
  border: 0.5em solid darkgray;
  border-radius: 2em;
  background-color: white;
  width: fit-content;
  display: flex;
}

#tttheader{
  display: flex;
  justify-content:flex-start;
  flex-direction: column;
  margin-right: 1em;
}

#tttgameboard{
  display: flex;
  flex-direction: column;
  align-items: center;
}

.cell {
  width: 100px;
  height: 100px;
  border: 2px solid black;
  margin: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.5em;
  background-color: white;
  color:black
}

.row{
  display: flex;
}

.disable{
  opacity: 0.5;
  cursor:not-allowed;
}

.winner{
  background-color: midnightblue;
  color: white;
}

#tttresetbut{
  background-color: steelblue;
  color: white;
}

.material-icons{
  display: none;
}

/*GENERALA CSS*/

#g2 button {
  background-color: brown;
  color: white;
  border: antiquewhite 2px solid;
}

#g2 button[disabled="disabled"] {
  opacity: 0.5;
}

#genecont{
  display: flex;
  width: fit-content;
}

#dicezone{
  display: flex;
  width: 15em;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  gap: 2px;
  margin: auto;
}

#gentablecont{
  display: flex;
    flex-direction: column;
    align-items: center;
}

#generalatable{
  border-collapse: collapse;
  background-color: ivory;
  padding: 1em;
  box-shadow: 5px 5px 3px rgba(0, 0, 0, 0.5);
  width: 10em;
  font-family: "narrowbold",Arial, Helvetica, sans-serif;
}

#caballete{
  padding: 0.5em;
  font-size: 1.4em;
  margin: 0.2em;
}

#generalatable td, tr{
  border-bottom: 2px solid rgba(70, 130, 180, 0.9);
}

#generalatable td, tr{
  color: black;
}

#generalatable td:nth-child(1){
  font-weight: bold;
  border-right: 0.20em double tomato;
  padding: 1.5px;
}

#generalatable td:nth-child(2),#generalatable td:nth-child(3){
  border-right: 0.05em solid black;
}

#generalatable tr:nth-of-type(odd) {
  background-color: papayawhip;
}

canvas{
  border: 0.2em solid black;
  border-radius: 1em;
}

.donotreroll{
  border:0.25em solid gold;
}

.modal {
  display: none;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.4);
  color:black;
}

.modal-content {
  background-color: #fefefe;
  margin: 15% auto;
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
  border-radius: 2em;
}

#closemodal {
  color: #aaa;
  float: right;
  font-size: 2.5em;
  font-weight: bold;
}

#closemodal:hover,
#closemodal:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

/*SIMON DICE CSS*/

#g3{
  background:
  linear-gradient(27deg, #151515 5px, transparent 5px) 0 5px,
  linear-gradient(207deg, #151515 5px, transparent 5px) 10px 0px,
  linear-gradient(27deg, #222 5px, transparent 5px) 0px 10px,
  linear-gradient(207deg, #222 5px, transparent 5px) 10px 5px,
  linear-gradient(90deg, #1b1b1b 10px, transparent 10px),
  linear-gradient(#1d1d1d 25%, #1a1a1a 25%, #1a1a1a 50%, transparent 50%, transparent 75%, #242424 75%, #242424);
  background-color: #131313;
  background-size: 20px 20px;
color: white;
}

#g3 button{
  background-color: white;
  border: none;
}

#g3 button:first-child{
  font-size: 1.2em;
}

#simonscorecont p{
  font-size: 1.25em;
  margin: 0.5em;
}

#simoncont{
  display: flex;
  flex-wrap: wrap;
  width: 12.5em;
}

.simon{
  opacity: 0.25;
  transition: opacity 0.2s;
  cursor: pointer;
}

.red{
  width: 0;
  height: 0;
  border-bottom: 100px solid red;
  border-left: 100px solid transparent;
}

.blue{
  width: 0;
      height: 0;
      border-top: 100px solid blue;
      border-right: 100px solid transparent;
}

.yellow{
  width: 0;
  height: 0;
  border-top: 100px solid yellow;
  border-left: 100px solid transparent;
}

.green{
  width: 0;
      height: 0;
      border-bottom: 100px solid green;
      border-right: 100px solid transparent;
}

.sactive{
  opacity: 1;
}

audio{
  display: none;
}

#simongo{
  color: red;
}

@media screen and (max-width:500px){
  h1{font-size: 4em;}

  #menucontainer button{
    font-size: 2em;
  }

  #genecont{
    flex-direction: column;
  }

  #gentablecont{
      flex-direction:column-reverse;
  }

  #generalatable{
    font-size: 1.40em;
    width: 15em;
  }

  canvas{
    width: 5.5em;
    height: 5.5em;
  }

  #dicezone{
    width: 20em;
  }

  #g2 p{
    font-size: 1.5em;
  }

  .modal-content{
    margin: 85% auto;
  }

  #tatecont{
    display: block;
  }

  #tttheader{
    flex-direction: row;
    justify-content: space-between;
  }

  .material-icons{
    display: block;
  }

  #tttresetbut span{
    display: none;
  }

  .simon{
    border-width: 150px;
  }

  #simoncont{
    width: 19em;
  }

  #simonbutton{
    font-size: 2em;
  }

  #simonscorecont p{
    font-size: 2em;
    margin: 0.5em;
  }

  #simongo, #g3 h2{
    font-size: 3em;
  }

}

@media screen and (max-height:500px){

  #menucontainer{
    display: flex;
  }

  #g1 button {
    font-size: 1.25em;
  }

  #gentablecont{
    flex-direction: column-reverse;
  }

  #generalatable{
    font-size: 0.9em;
  }

  h2{
    margin-bottom: 0.2em;
  }

  .cell{
    width: 80px;
    height: 80px;
  }

  #tttheader button{
    font-size: 0.8em;
  }

  #g2 button{
    font-size: 1.2em;
  }

  canvas{
    width: 4.5em;
    height: 4.5em;
  }


}