.login-section{
    padding: 50px 0px;
}

.login-box{
    padding: 0px;
    overflow: hidden;
}

.login-box p{
    color: #777;
}

.login-banner{
    background-image: url('../img/login-image.jpg');
    background-size: cover;
    background-position: center center;
}

.login-group{
    padding: 100px 95px 100px 80px;
}

.forgot-pass-banner{
    background-image: url('../img/forgot-pass-image.jpg');
    background-size: cover;
    background-position: center center;
}

.user-section{
    padding: 50px 0px;
}

.user-sidebar{
    position: relative;
    background: #fff;
    border-radius: 20px;
    padding: 30px 40px;
    box-shadow: 0px 3px 10px 0px rgb(240, 240, 240);
    margin: 0px auto 30px;
}

.user-data h3{
    font-weight: 700;
    font-size: 20px;
    margin-bottom: 20px;
}

.user-menu{
    position: relative;
}

.user-menu a{
    display: block;
    width: 100%;
    border-top: 1px solid #ddd;
    padding: 10px 10px;
}

.user-menu a.active, .user-menu a:hover{
    color: #8C1D18;
    font-weight: 700;
}

.user-wrapper{
    padding: 30px 50px;
}

.user-wrapper .page-title{
    color: #4D0E0B;
    font-weight: 700;
    font-size: 24px;
    margin-bottom: 20px;
}

.user-content{
    position: relative;
}

.student-detail{
    position: relative;
    background: #fff;
    border-radius: 20px;
    padding: 20px;
    box-shadow: 0px 3px 10px 0px rgb(240, 240, 240);
    margin: 0px auto 30px;
    display: flex;
    flex-wrap: wrap;
}

.student-detail .detail{
    flex: 0 0 25%;
    border-right: 1px solid #ddd;
    padding: 0px 30px;
    margin: 10px 0px;
}

.student-detail .detail:last-child{
    border-right: none;
}

.student-detail .detail label{
    font-weight: 700;
    margin-bottom: 5px;
    font-size: 12px;
}

.student-detail .detail-content{
    color: #777;
}

.student-docs{
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
}

.upload-item{
    flex: 0 0 31%;
    margin-bottom: 20px;
}

.upload-header .verified-icon{
    width: 22px;
    height: 22px;
}

.upload-header .verified-icon .badge-star{
    width: 100%;
    animation: spin 6s linear infinite;
}

.upload-header .verified-icon .checkmark{
    position: absolute;
    top: 50%;
    left: 0px;
    height: 8px;
    margin-top: -3px;
}

#password-rules {
    list-style: none;
    padding-left: 0;
    font-size: 0.9em;
}

#password-rules li {
    color: #dc3545; /* merah */
    margin: 6px 0;
}

#password-rules li.valid {
    color: #198754; /* hijau */
}

#password-rules li .icon {
    font-weight: bold;
    margin-right: 6px;
}

#confirm-status.error {
    color: #dc3545;
}

#confirm-status.valid {
    color: #198754;
}
