*{margin:0;padding:0;box-sizing:border-box;font-family:Cambria,"Times New Roman",serif}
body{min-height:100vh;display:flex;justify-content:center;align-items:center;background:#eef2ff;padding:12px}

.container{display:flex;max-width:900px;width:100%;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,.1)}
.left{flex:1;background:#1e3a8a;color:#fff;padding:40px 25px;text-align:center;display:flex;flex-direction:column;justify-content:center;gap:15px}
.left h2{font-size:28px;font-weight:700}
.left p{font-size:15px;color:rgba(255,255,255,.85)}

.right{flex:1.2;padding:40px 30px}
.right h2{text-align:center;margin-bottom:20px;color:#1e3a8a;font-size:24px}

.msg{background:#ffe6e6;color:#d60000;padding:10px;border-radius:8px;text-align:center;margin-bottom:15px;font-size:14px}

.input-group{position:relative;margin-bottom:15px}
.input-group i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#1e3a8a}
.input-group input{width:100%;padding:14px 16px 14px 42px;border-radius:8px;border:1px solid #ccc;font-size:15px}
.input-group input:focus{outline:none;border-color:#1e3a8a;box-shadow:0 0 6px rgba(30,60,114,.2)}

.captcha-box{ display:flex; align-items:center; gap:12px; margin-top:12px; } .captcha{ background:#1e3a8a; color:#fff; font-weight:700; font-size:18px; letter-spacing:3px; padding:12px 18px; border-radius:10px; min-width:110px; text-align:center; user-select:none; } .captcha-box input{ font-family:Cambria,"Times New Roman",serif; flex:1; padding:14px; border-radius:10px; border:1px solid #ccc; font-size:14px; outline:none; transition:0.2s; } .captcha-box input:focus{ border-color:#2563eb; box-shadow:0 0 0 2px rgba(37,99,235,.15); }
.rem-line{text-align:right;margin-bottom:15px;font-size:13px}
.rem-line a{color:#1e3a8a;text-decoration:none;font-weight:600}

button{width:100%;padding:14px;border:none;border-radius:8px;background:#1e3a8a;color:#fff;font-size:15px;font-weight:600;cursor:pointer}
button:hover{background:#1e3c72;transform:translateY(-2px)}

.links{text-align:center;font-size:13px;margin-top:10px}
.links a{color:#1e3a8a;font-weight:600;text-decoration:none}

.left h2{ font-size:28px; font-weight:700; color:#fff; } /* blinking cursor */ 
.cursor{ animation:blink 0.7s infinite; } @keyframes blink{ 0%,100%{opacity:1;} 50%{opacity:0;} }

@media(max-width:768px){
body{padding:0;}
.container{flex-direction:column;max-width:100%;height:100vh;border-radius:0;box-shadow:none}
.left,.right{padding:25px;width:100%}
.left{height:40vh}.right{height:60vh;overflow-y:auto}
.left h2{font-size:30px}.left p{font-size:20px}
}