@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #222222;
  font-family: "Roboto", sans-serif;
}
.title {
  text-align: center;
  font-size: 30px;
  color: #ffffff;
  margin-top: 25px;
  margin-bottom: 20px;
  font-weight: 600;
}
.generator {
  width: 620px;
  min-height: 500px;
  margin-top: 10px;
  margin-bottom: 30px;
  padding: 20px 20px 50px 20px;
  background-color: #fffdff;
  border-radius: 30px;
}
.generator .box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-bottom: 50px;
}

.header {
  display: flex;
  align-items: center;
  margin: 10px;
}
.header h4 {
  margin: 0 10px;
  font-size: 14px;
  font-weight: 600;
}

.controls {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  width: 480px;
}
.hex-code-input {
  background-color: #fff;
  height: 30px;
  width: 250px;
  margin: 8px;
  font-size: 17px;
  text-indent: 5px;
  border: none;
  border: 1px solid rgba(35, 35, 38, 0.5);
  outline: none;
}

.generate-button {
  font-size: 15px;
  font-weight: 600;
  height: 35px;
  width: 200px;
  color: #ffffff;
  background-color: #714593;
  border: none;
  border: 1px solid #ffffff;
  border-radius: 5px;
  cursor: pointer;
}

.palettes {
  display: flex;
  justify-content: center;
  align-items: center;
}
.color-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.color-list li {
  text-align: center;
  width: 120px;
  padding: 10px 10px;
  font-size: 19px;
  font-weight: 600;
  font-family: "Arial";
  text-transform: uppercase;
  list-style: none;
  border: 2px solid transparent;
  cursor: pointer;
}
.color-list li:hover {
  border: 2px solid #222222;
}

/* Responsive layout */

@media (max-width: 622px) {
  .generator {
    width: 500px;
    padding: 10px;
    min-height: 200px;
    border-radius: 10px;
  }
  .controls {
    flex-direction: column;
  }
  .hex-code-input {
    font-size: 15px;
  }
  .hex-code-input {
    margin: 0;
  }
  .generate-button {
    height: 40px;
    width: 250px;
    margin-bottom: 20px;
  }
  .generate-button:hover {
    color: #dcf9e4;
    background-color: #33c85b;
  }
  .palettes {
    width: 380px;
  }
}
@media (max-width: 412px) {
  .title {
    font-size: 25px;
    line-height: 1.4;
  }
  .generator {
    width: 400px;
    min-height: 200px;
    border-radius: 10px;
  }

  .hex-code-input {
    font-size: 15px;
  }
  .palettes {
    width: 280px;
  }
}
@media (max-width: 352px) {
  body {
    background-color: #ffffff;
  }
  .title {
    color: #222222;
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: 5px;
  }
  .generator {
    margin-top: 5px;
    width: 400px;
    padding: 0;
    min-height: 200px;
    border-radius: 10px;
  }
  .hex-code-input {
    font-size: 15px;
  }
  .palettes {
    width: 280px;
  }
}
