*{
    box-sizing:border-box;
    margin:0;
    padding:0;
    font-family:
        Arial,
        "Noto Sans Devanagari",
        sans-serif;
}

body{

    min-height:100vh;

    background:
        linear-gradient(
            135deg,
            #eff6ff,
            #f8fafc
        );

    display:flex;

    align-items:center;

    justify-content:center;

    padding:20px;

}


.auth-container{

    width:100%;

    max-width:430px;

}


.auth-card{

    background:white;

    padding:35px;

    border-radius:18px;

    box-shadow:
        0 15px 50px
        rgba(15,23,42,.12);

    text-align:center;

}


.logo{

    width:65px;

    height:65px;

    margin:0 auto 15px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:16px;

    background:#2563eb;

    font-size:32px;

}


h1{

    font-size:25px;

    color:#172554;

    margin-bottom:8px;

}


.auth-card > p{

    color:#64748b;

    font-size:14px;

    margin-bottom:25px;

}


form{

    text-align:left;

}


label{

    display:block;

    margin:
        15px 0 7px;

    font-weight:600;

    color:#334155;

    font-size:14px;

}


input{

    width:100%;

    padding:13px;

    border:
        1px solid #cbd5e1;

    border-radius:8px;

    outline:none;

    font-size:15px;

}


input:focus{

    border-color:#2563eb;

    box-shadow:
        0 0 0 3px
        rgba(37,99,235,.1);

}


.primary-btn{

    width:100%;

    margin-top:22px;

    padding:13px;

    border:none;

    border-radius:8px;

    background:#2563eb;

    color:white;

    font-size:15px;

    font-weight:bold;

    cursor:pointer;

}


.primary-btn:hover{

    background:#1d4ed8;

}


#message{

    margin-top:15px;

    font-size:14px;

    line-height:1.5;

}


.auth-card a{

    display:inline-block;

    margin-top:18px;

    color:#2563eb;

    text-decoration:none;

    font-weight:600;

}


.divider{

    display:flex;

    align-items:center;

    gap:10px;

    margin:20px 0;

    color:#94a3b8;

}


.divider::before,
.divider::after{

    content:"";

    height:1px;

    background:#e2e8f0;

    flex:1;

}


#language{

    margin-top:22px;

    padding:9px 14px;

    border:
        1px solid #cbd5e1;

    border-radius:7px;

    background:white;

}


@media(max-width:500px){

    .auth-card{

        padding:25px 20px;

    }

}