.container {
  max-width: 360px;
  width: 100%;
  padding-left: 16px;
  padding-right: 16px;
  padding-top: 16px;
  margin: 0 auto;
  text-align: left;
}

.title {
  color: var(--typography-100);
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 0;

  & > span {
    background: var(--gradient-pink-base);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }
}

.progress-container {
  position: relative;
  width: 200px;
  margin: 16px auto;

  & > .background-gradient {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    background: var(--gradient-azure);
    opacity: 0.3;
    border-radius: 50%;
    filter: blur(40px);
  }
}

.svg-defs {
  width: 0;
  height: 0;
}

.list {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 14px;
  color: var(--typography-100);
  line-height: 24px;
  max-width: 400px;
  margin: 0 auto;
  margin-top: 32px;

  @for $i from 1 through 20 {
    & > .item:nth-child(#{$i}) {
      animation-delay: $i * 5.65s;

      & > .circle {
        animation-delay: $i * 5.65s;

        & > img {
          animation-delay: $i * 5.65s;
        }
      }
    }
  }

  & > .item {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    color: var(--primary-700);
    width: 320px;
    background: var(--primary-700-with-opacity-30);
    border-radius: 20px;
    animation-duration: 1.5s;
    animation-fill-mode: both;
    animation-name: appearance-item;

    & > .circle {
      border-radius: 50%;
      margin-right: 15px;
      background: var(--primary-700-with-opacity-30);
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 12px 9px;
      animation-duration: 1.5s;
      animation-fill-mode: both;
      animation-name: appearance-circle;

      & > img {
        animation-duration: 1.5s;
        animation-fill-mode: both;
        animation-name: appearance-img;
        width: 22px;
        height: 16px;
      }
    }
  }
}

@keyframes appearance-item {
  100% {
    opacity: 1;
    color: var(--primary-100);
    background: var(--primary-with-opacity-30);
  }
}

@keyframes appearance-circle {
  100% {
    background: var(--primary-400-with-opacity-30);
  }
}

@keyframes appearance-img {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
