* {
 padding: 0;
 margin: 0;
 -webkit-box-sizing: border-box;
         box-sizing: border-box;
}

:root {
 --color0: rgb(11, 175, 168);
 --color1: linear-gradient(153deg, rgba(11, 175, 168, 1) 11%, rgba(11, 69, 175, 1) 21%, rgba(111, 140, 100, 1) 26%, rgba(221, 218, 18, 1) 36%, rgba(177, 69, 147, 1) 49%, rgba(24, 145, 109, 1) 65%, rgba(107, 99, 104, 1) 73%, rgba(0, 255, 128, 1) 87%);
 --color2: rgba(15, 127, 131, 0.7);
 --color3: rgb(255, 255, 255);
 --color4: rgb(133, 207, 249);
 --color5: rgb(0, 0, 0);
 --color6: rgb(223, 62, 62);
 font-family: "Montserrat", Arial, Helvetica, sans-serif;
 font-size: 20px;
}

body {
 min-height: 100vh;
 width: 100%;
 /* background: var(--color0);
 background: var(--color1); */
 background-image: url('cyber-4084728_640.jpg');
 background-size: 100%;
 ;
}

body.active {
 -webkit-filter: blur(1px);
         filter: blur(1px);
}

.containerGenerate {
 min-height: 40vh;
 width: 90%;
 margin: 50px auto 20px auto;
 padding: 10px;
 background-color: var(--color2);
 border-radius: 10px;
 -webkit-box-shadow: 0 2px 3px 3px var(--color5);
         box-shadow: 0 2px 3px 3px var(--color5);
}

.containerGenerate.active {
 -webkit-filter: blur(2px);
         filter: blur(2px);
}

label {
 display: block;
 width: 100%;
 margin: 0 auto;
 text-align: center;
 font-size: 1rem;
 font-weight: 600;
}

#numberCodes,
#lengthCodes,
select {
 display: block;
 width: 50%;
 margin: 20px auto;
 padding: 10px;
 font-size: 1rem;
 border-radius: 5px;
}

.generateBtn,
.clearBtn,
.alertBtn {
 display: block;
 margin: 20px auto;
 min-height: 50px;
 width: 300px;
 padding: 10px;
 border: 3px solid var(--color3);
 background-color: var(--color4);
 border-radius: 10px;
 color: var(--color3);
 font-size: 0.8rem;
 font-weight: 800;
 cursor: pointer;
}

.info {
 margin: 10px auto;
 text-align: center;
}

.codes {
 display: grid;
 grid-template-columns: 1fr;
 gap: 5px;
 margin: 10px auto;
 max-width: 90%;
 border-radius: 10px;
 color: var(--color3);
}

.number {
 padding: 5px;
 border: 2px solid var(--color3);
 background-color: var(--color5);
 border-radius: 5px;
 text-align: center;
}

.backAlert {
 display: none;
 position: fixed;
 left: 0%;
 top: 0%;
 width: 100%;
 height: 100%;
 background: transparent;
 z-index: 3;
}

.backAlert.active {
 display: block;
 -webkit-filter: blur(2px);
         filter: blur(2px);
}

.alert {
 display: none;
 position: fixed;
 width: 90%;
 min-height: 20%;
 left: 50%;
 top: 30%;
 -webkit-transform: translateX(-50%);
     -ms-transform: translateX(-50%);
         transform: translateX(-50%);
 background-color: var(--color0);
 border: 2px solid var(--color3);
 border-radius: 10px;
 -webkit-box-shadow: 0 4px 3px 3px var(--color4);
         box-shadow: 0 4px 3px 3px var(--color4);
 z-index: 4;
}

.alert.active {
 display: block;
}

.alertBtn {
 background-color: var(--color6);
}

.alertH4 {
 margin: 30px;
 font-family: "Roboto Mono", arial, monospace;
 text-align: center;
}

@media(min-width:1024px) {
 body {
  background-image: url('cyber-4084728_1920.jpg');
 }

 .containerGenerate {
  width: 60%;
 }

 .codes {
  width: 80%;
  margin: 10px auto;
 }

 .alert {
  max-width: 30%;
  min-height: 20%;
 }
}

@media(min-width:1360px) {
 .containerGenerate {
  width: 40%;
 }

 .codes {
  width: 80%;
  grid-template-columns: 1fr 1fr;
 }
}