*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    list-style-type: none;
    text-decoration: none;
}

html,body{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: yellow;
}

.container{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

.progress-container{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 100px;
    position: relative;
    width: 700px;
    z-index: 1;
}

.step-wrapper{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.step{
    width: 45px;
    aspect-ratio: 1 / 1;
    height: 45px;
    border: 4px solid lightgray;
    background-color: white;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.step-checked{
    border-color: green;
    transition: border-color 0.5s ease 0.3s;
    -webkit-transition: border-color 0.5s ease 0.3s;
    -moz-transition: border-color 0.5s ease 0.3s;
    -ms-transition: border-color 0.5s ease 0.3s;
    -o-transition: border-color 0.5s ease 0.3s;
}

.step-checked::after{
    content: '\2713';
    font-family: cursive;
    font-size: 20px;
    font-weight: bold;
    color: lightgray;
    animation: colorFade 0.5s ease 0.5s forwards;
    -webkit-animation: colorFade 0.5s ease 0.5s forwards;
}

@keyframes colorFade {
    from{
        color: lightgray
    }
    to{
        color: green;
    }
}

.step-unchecked::before{
    content: '\2717';
    font-family: cursive;
    font-size: 20px;
    font-weight: bold;
    color: lightgray;
}

.btn-container{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 25px;
}

#previous-step-btn, #next-step-btn{
    padding: 10px 16px;
    margin-top: 100px;
    border: none;
    box-shadow: 0px 2px 10px 0px rgb(159, 159, 0);
    font-weight: bold;
    color: white;
    background-color: rgb(152, 74, 225);
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    transition: all 0.3s ease, transform 0.05s ease;
    -webkit-transition: all 0.3s ease, transform 0.05s ease;
    -moz-transition: all 0.3s ease, transform 0.05s ease;
    -ms-transition: all 0.3s ease, transform 0.05s ease;
    -o-transition: all 0.3s ease, transform 0.05s ease;
}

#previous-step-btn:hover, #next-step-btn:hover{
    cursor: pointer;
    background-color: rgb(163, 90, 231);
}

#previous-step-btn:active, #next-step-btn:active{
    transform: scale(0.95);
    -webkit-transform: scale(0.95);
    -moz-transform: scale(0.95);
    -ms-transform: scale(0.95);
    -o-transform: scale(0.95);
    cursor: pointer;
    background-color: rgb(152, 74, 225);
}

#previous-step-btn:disabled, #next-step-btn:disabled{
    background-color: lightgray;
    cursor: pointer;
    transform: none;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
}

#progress-bar-back{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: lightgray;
    width: 100%;
    height: 4px;
    border: none;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    z-index: -1;
}

#progress-bar-front{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: green;
    height: 4px;
    border: none;
    z-index: -1;
    width: 0%;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
}

.step-text{
    font-family: cursive;
    font-size: 15px;
    position: absolute;
    bottom: -20px;
    text-align: center;
    width: 100px;

}

.text-animate{
    color: lightgray;
    animation: colorFade 0.5s ease 0.5s forwards;
    -webkit-animation: colorFade 0.5s ease 0.5s forwards;
}