*{box-sizing:border-box;font-family:"Inter","Segoe UI",sans-serif}

html, body{
    width:100%;
    height:100%;
    margin:0;
    padding:0;
    overflow:hidden;   /* 🔥 SCROLL KILL */
}

.login{
    width:100vw;
    height:100vh;
    display:grid;
    grid-template-columns:50% 50%;
    overflow:hidden;   /* 🔥 IMPORTANT */
}

.login .right{
    position:relative;
    overflow:hidden;   /* 🔥 wheel bahar niklega par scroll nahi karega */
    display:grid;
    align-items:center;
    justify-content:center;
}

@media(max-width:768px){
    .login{grid-template-columns:1fr}
    .left{display:none}
}

/* LEFT */
.left{
    background:url("https://doc.pancycle.in/img/security-background-design.webp") center/cover no-repeat;
    position:relative;
}
.left::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(35,100,173,.9);
}
.left .internal{
    position:relative;
    color:#fff;
    text-align:center;
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.left img{width:220px;margin:0 auto 20px}
.left h1{font-size:36px}
.left .text{
    background:rgba(39,79,155,.45);
    padding:18px 35px;
    margin:20px auto;
}
.left .text p{font-size:18px;line-height:22px}
.left h2{position:absolute;bottom:15px;width:100%}
.left h2 span{font-size:24px;font-weight:700}

/* RIGHT */
.right{
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
}
.right .internal{
    width:100%;
    max-width:420px;
}
.right h1{color:#2364AD;font-size:30px}
.right p{color:#6A6B6C}

.mb{margin-bottom:16px}
label{font-weight:800;color:#6A6B6C}
label i{margin-right:7px}

input{
    width:100%;
    height:45px;
    border:none;
    border-radius:6px;
    box-shadow:1px 1px 6px rgba(0,0,0,.2);
    padding:0 12px;
    font-size:14px;
}

button{
    width:100%;
    height:45px;
    border:none;
    background:#2056a1;
    color:#fff;
    font-weight:700;
    border-radius:6px;
    cursor:pointer;
}

/* CAPTCHA */
.captcha{
    display:flex;
    gap:10px;
    align-items:center;
    margin:20px 0;
}
#generated-captcha{
    width:120px;
    text-align:center;
    font-weight:700;
    background:#d2d2d2;
    text-decoration:line-through;
}
.captcha i{font-size:18px}

/* FOOT */
.help{text-align:center;margin-top:2px;color:#2364AD}
h4{
    position:absolute;
    bottom:15px;
    width:100%;
    text-align:center;
    font-size:13px;
    color:#818283;
}

/* DECOR */
.konark-wheel1,.konark-wheel2{
    position:absolute;
    background:url("https://doc.pancycle.in/img/konark-wheel.png") center/cover no-repeat;
    animation:spin linear infinite;
    opacity:.15;
}
.konark-wheel1{width:200px;height:200px;top:-60px;left:-60px;animation-duration:15s}
.konark-wheel2{width:500px;height:500px;bottom:-200px;right:-200px;animation-duration:50s}

@keyframes spin{
    from{transform:rotate(0deg)}
    to{transform:rotate(360deg)}
}

.login-error{
    background:#fee2e2;
    color:#991b1b;
    padding:10px;
    border-radius:6px;
    margin-bottom:12px;
}
