
/* General */

body{
    font-family:'Inter',sans-serif;
    background:#f7f9fc;
    color:#333;
}

/* Validation */

.error-text{
    color:#f44336;
    font-size:12px;
    margin-top:4px;
    display:none;
}

.invalid-input{
    border-color:#f44336 !important;
}

/* Register Button */

#submitBtn{
    background:#105fdf !important;
    color:#fff !important;
    padding:10px 24px;
    font-weight:500;
}

#submitBtn:hover{
    background:#0b5ed7 !important;
}

.w3-radio{
    width:16px !important;
    height:16px !important;
}
/* Top Message */

.top-message{
    display:none;
    position:fixed;
    top:20px;
    left:50%;
    transform:translateX(-50%);
    background:#e74c3c;
    color:#fff;
    padding:14px 30px;
    border-radius:8px;
    font-weight:600;
    z-index:9999;
    box-shadow:0 5px 15px rgba(0,0,0,.2);
}

/* Popup */

.popup-overlay{
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.4);
    justify-content:center;
    align-items:center;
    z-index:9998;
}

.popup-box{
    width:380px;
    background:#fff;
    border-radius:12px;
    padding:20px 25px;
    text-align:center;
    position:relative;
    animation:popup .3s ease;
}

@keyframes popup{
    from{
        transform:scale(.8);
        opacity:0;
    }
    to{
        transform:scale(1);
        opacity:1;
    }
}

.popup-icon{
    font-size:50px;
    margin-bottom:5px;
}

.popup-box h2{
    color:#1b8c2e;
    margin:5px 0;
    font-size:22px;
}

.close-btn{
    position:absolute;
    top:8px;
    right:12px;
    font-size:24px;
    cursor:pointer;
}

.ok-btn{
    margin-top:12px;
    background:#198754;
    color:#fff;
    border:none;
    padding:8px 25px;
    border-radius:6px;
    cursor:pointer;
    font-size:15px;
}

.ok-btn:hover{
    background:#157347;
}
/* Popup Background */

.popup-overlay{

display:none;

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:rgba(0,0,0,.55);

z-index:9999;

justify-content:center;

align-items:center;

}

/* Popup Box */

.popup-box{

background:#fff;

width:420px;

max-width:90%;

padding:35px;

border-radius:12px;

text-align:center;

position:relative;

box-shadow:0 15px 40px rgba(0,0,0,.25);

animation:popup .3s ease;

}

@keyframes popup{

from{

transform:scale(.8);

opacity:0;

}

to{

transform:scale(1);

opacity:1;

}

}

.close-btn{
    position:absolute;
    top:8px;
    right:12px;
    font-size:24px;
    cursor:pointer;
}

.popup-icon{

font-size:70px;

margin-bottom:15px;

}

.popup-box h2{
    color:#1b8c2e;
    font-size:22px;
    margin:5px 0;
}
.popup-box p{

font-size:16px;

color:#555;

}

.ok-btn{

margin-top:12px;

background:#198754;

color:#fff;

border:none;

padding:8px 25px;

border-radius:5px;

cursor:pointer;

font-size:16px;

}

.ok-btn:hover{

background:#157347;

}

/* Top Error Message */

.top-message{
    position:fixed;
    top:20px;
    left:50%;
    transform:translateX(-50%);
    min-width:420px;
    max-width:600px;

    background:#fdecec;
    border:1px solid #f5b5b5;
    color:#c62828;

    padding:14px 18px;

    border-radius:8px;

    font-size:15px;
    font-weight:500;

    display:none;

    z-index:99999;

    box-shadow:0 8px 25px rgba(0,0,0,.12);

    animation:slideDown .25s ease;
}
/* Success Message */
.success-message{
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: #81b0f7;
    color: #fff;
    padding: 14px 24px;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 500;
    display: none;
    z-index: 9999;
    box-shadow: 0 5px 15px rgba(0,0,0,.2);
}

@keyframes slideDown{

    from{
        opacity:0;
        transform:translate(-50%,-20px);
    }

    to{
        opacity:1;
        transform:translate(-50%,0);
    }

}

.popup-overlay{
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.4);
    justify-content:center;
    align-items:center;
    z-index:9998;
}

.popup-box{
    width:380px;
    background:#fff;
    border-radius:12px;
    padding:20px 25px;   /* आधी 30px होतं */
    text-align:center;
    position:relative;
}
.popup-icon{
    font-size:45px;
    margin-bottom:5px;
}

.ok-btn{
    background:#28a745;
    color:#fff;
    border:none;
    padding:10px 30px;
    border-radius:5px;
    cursor:pointer;
}

.close-btn{
    position:absolute;
    top:10px;
    right:15px;
    cursor:pointer;
    font-size:28px;
}
.error-text{
    color:red;
    font-size:13px;
    margin-top:5px;
    display:none;
}

.w3-input:focus,
.w3-select:focus{
    outline:none;
    border-color:#d9d9d9 !important;
    box-shadow:0 0 8px rgba(13,110,253,0.12);
}

.error-text{
    display: none !important;
}

/* Register Button Center */
#submitBtn{
    display:block;
    margin:20px auto;
}