*{
    padding: 0px;
    margin: 0px;
}
body{
    height: fit-content;
    background-color: #352f5b;
}
.caption{
    text-align: center;
    border: 2px solid orange;
    color: white;
    padding: 10px 15px;
    font-family: roboto;
    margin-bottom: 20px;
    font-size: 0.8em;
    display: flex;
    flex-direction: column;
    width: fit-content;
    justify-content: flex-end;
    align-self: center;
    border-radius: 20px;
    box-shadow: 4px 4px 2px rgba(0,0,0,0.4) ;
}
.heading{
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px
}
.semester{
    color: white;
    font-family: Roboto;
}
.container{
    margin: 20px auto;
    display: flex;
    flex-direction: column;
    align-self: center;
    justify-content: center;
    overflow-x: hidden;
}
.cancel,.all{
    font-family: Roboto;
    border: 1px solid white;
    color: white;
    border-radius: 50%;
    padding: 5px;
    align-self: center;
    margin-left: 10px;
}
.wrapper{
    border: 2px solid orange;
    width: 33.5vw;
    display: flex;
    flex-direction: column;
    background-color: #423a6f;
    padding: 20px 40px;
    align-self: center;
    justify-content: center;
    box-shadow: 2px 2px 5px 2px rgba(0,0,0,0.4);
}
.cancel:hover,.all:hover {
    cursor:default;
    color: red;
    border: 1px solid red;
}
.check-cgpa{
    display: flex;
    margin-bottom: 5px;
    width: 100%;
}
.subject{
    width: 40%;
    border: 1px solid #352f5b;
    text-align: center;
}
.grade{
    width: 15%;
    border: 1px solid #352f5b;
    border-radius: 0px;
    text-align: center;
}
.course-unit{
    width: 40%;
    border: 1px solid #352f5b;
    text-align: center;
}
.extra{
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
}
.extra p{
    font-family: Roboto;
    font-size: 15px;
    align-self: center;
}
.extra p span{
    font-weight: bold;
}
.add-subject{
    border: 1.5px solid orange;
    border-radius: 20px;
    background-color: #423a6f;
    color: white;
    padding: 4px 15px;
    max-height: 30px;
}
hr{
    margin-top: 10px;
    margin-bottom: 10px;
    color: orange !important;
}
input[type="button"]:hover{
    box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.4);
    position: relative;
    bottom:2px;
    left: 2px;
    border: 1.5px solid white;
    color: orange;
    background-color: #352f5b;
}
.next-semester{
    display: flex;
    justify-content: space-between;
    margin-top: 15px;
}
.add-semester{
    color: white;
    background-color: #423a6f;
    border: 1.5px solid orange;
    border-radius: 20px;
    max-height: 30px;
    padding: 4px 15px;
}
.next-semester p{
    font-family: Roboto;
    font-size: 20px;
    align-self: center;
}
.next-semester p span{
    font-weight: bold;
}
.calculate{
    margin-top: 20px;
    color: white;
    text-align: center;
}
.calculate-gp{
    background-color: #423a6f;
    color: white;
    border: 1.5px solid orange;
    border-radius: 20px;
    max-height: 30px;
    padding: 4px 15px;
}
.calculate-gp:hover{
    box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.4);
    position: relative;
    bottom:2px;
    left: 2px;
    border: 1.5px solid white;
    color: orange;
    background-color: #352f5b;
}
.result,.total{
    color: white;
    align-self: center;
}
.total p span,.result p span{
    color: orange;
}

@media screen and (max-width:950px){
    .wrapper{
        font-size: 0.8em;
    }
    .add-semester,.add-subject{
        font-size: 10px;
    }
}
@media screen and (max-width:800px){
    .wrapper{
        width: 60vw;
    }
}
@media screen and (max-width:500px){
    .next-semester p{
        font-size: 0.8em;
    }
    .next-semester input,.add-subject{
        font-size: 6px;
    }
    .extra p{
        font-size: 10px;
    }
    .subject,.grade,.course-unit{
        font-size: 10px;
    }
    .grade{
        width: 20%;
    }
    .caption{
        font-size: 0.6em;
    }
}
@media screen and (max-width:300px){
    .extra p{
        font-size: 8px;
    }
    .subject,.grade,.course-unit{
        font-size: 8px;
    }
    .next-semester{
        margin-top: 10px;
    }
    .caption{
        font-size: 0.4em;
    }
}
@media screen and (max-width:280px){
    .extra p{
        font-size: 6px;
    }
    .subject,.grade,.course-unit{
        font-size: 6px;
    }
    .next-semester input,.add-subject{
        font-size: 4px;
    }
    .next-semester p{
        font-size: 8px;
    }
}