@import url("https://fonts.googleapis.com/css2?family=Hubballi&family=Yeon+Sung&display=swap");

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Yeon Sung", cursive;
  color: rgba(255, 255, 255, 0.2);
}

body {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  background: #091921;
}
body::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(#9f9009, #7a5d06);
  clip-path: circle(32% at 20% 20%);
}
body::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(#ffffff, #efeb04);
  clip-path: circle(20% at 70% 90%);
}
.container {
  position: relative;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 7rem 0rem;
  padding: 20px;
  overflow: hidden;
  z-index: 10;
  backdrop-filter: blur(15px);
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  border-left: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.2);
}
.container .box1,
.box2,
.box3,
.box4 {
  animation: animate 9s linear infinite;
  animation-delay: calc(-1s * var(--i));
}
@keyframes animate {
  0%,
  100% {
    transform: translateY(-60px);
  }
  50% {
    transform: translateY(60px);
  }
}
.box1 {
  width: 100px;
  height: 100px;
  box-shadow: rgba(255, 0, 0, 0.61) 0px 22px 70px 4px;
  border-top-left-radius: 30px;
  border-bottom-right-radius: 30px;
  position: absolute;
  bottom: 30px;
  left: -75px;
}
.box2 {
  width: 100px;
  height: 100px;
  box-shadow: rgba(0, 255, 0, 0.56) 0px 22px 70px 4px;
  border-top-left-radius: 30px;
  border-bottom-right-radius: 30px;
  position: absolute;
  right: -75px;
  top: -40px;
}
.box3 {
  width: 50px;
  height: 50px;
  box-shadow: rgba(0, 0, 255, 0.56) 0px 22px 70px 4px;
  border-top-left-radius: 15px;
  border-bottom-right-radius: 15px;
  position: absolute;
  left: 100px;
  top: 30px;
}
.box4 {
  width: 60px;
  height: 60px;
  box-shadow: rgba(44, 0, 0, 0.56) 0px 22px 70px 4px;
  border-top-left-radius: 20px;
  border-bottom-right-radius: 20px;
  position: absolute;
  right: 170px;
  top: 180px;
}
h2 {
  text-align: center;
  margin: 1rem;
  color: white;
  letter-spacing: 4px;
}

.todo-add {
  text-align: center;
}

#todo-input {
  color: tomato;
  width: 450px;
  padding: 12px;
  background: rgba(241, 248, 222, 0.849);
  border-radius: 6px;
  overflow: hidden;
  backdrop-filter: blur(15px);
  border: none;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  border-left: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.2);
  transition: all 0.8s;
}
#todo-button {
  padding: 12px;
  color: orange;
  margin: 5px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 6px;
  overflow: hidden;
  backdrop-filter: blur(15px);
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  border-left: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.2);
  transition: all 0.5s;
}

.todos {
  width: 90%;
  margin-top: 2rem;
  overflow-y: auto;
  overflow-x: hidden;
}

.todos ul {
  list-style: none;
}

ul li {
  display: flex;
  align-items: center;
  position: relative;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 1rem;
  overflow: hidden;
  backdrop-filter: blur(15px);
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  border-left: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.2);
  transition: all 0.5s;
  margin-bottom: 1rem;
}

ul li:nth-child(even) {
  background: #53555395;
}

ul li:hover {
  transform: translate(3px, 2px);
  letter-spacing: 1px;
}

li i {
  padding: 1rem;
  color: #e9ac1e;
  transform: scale(1.3);
  cursor: pointer;
}

li i:hover {
  color: red;
}

li p {
  width: 100%;
  padding: 0.4rem;
  color: rgb(255, 236, 228);
  text-transform: capitalize;
  letter-spacing: 2px;
  font-size: large;
}

li.checked .fa-check {
  color: #00e676;
}

li.checked p {
  color: rgb(152, 249, 173);
  text-decoration: line-through;
  font-weight: normal;
  font-style: italic;
  text-transform: lowercase;
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  font-size: small;
}

@media (max-width: 768px) {
  .container {
    width: 75vw;
    min-height: 40vh;
  }
  #todo-input {
    width: 300px;
  }
  .box1 {
    width: 130px;
    height: 130px;
    border-top-left-radius: 40px;
    border-bottom-right-radius: 40px;
    bottom: -65px;
    left: -65px;
  }
  .box2 {
    width: 90px;
    height: 90px;
    border-top-left-radius: 40px;
    border-bottom-right-radius: 40px;
    right: -45px;
    top: -45px;
  }
  .box4 {
    width: 60px;
    height: 60px;
    border-top-left-radius: 20px;
    border-bottom-right-radius: 20px;
    right: 100px;
    top: 400px;
  }
}

@media (max-width: 400px) {
  .container {
    width: 80vw;
    min-height: 40vh;
  }
  #todo-input {
    width: 10rem;
  }
  .box1 {
    width: 100px;
    height: 100px;
    border-top-left-radius: 30px;
    border-bottom-right-radius: 30px;
    bottom: -50px;
    left: -50px;
  }
  .box2 {
    width: 60px;
    height: 60px;
    border-top-left-radius: 20px;
    border-bottom-right-radius: 20px;
    right: -30px;
    top: -30px;
  }
  .box4 {
    width: 60px;
    height: 60px;
    border-top-left-radius: 20px;
    border-bottom-right-radius: 20px;
    right: 50px;
    top: 400px;
  }
}
