*{box-sizing:border-box}
body{margin:0;font-family:Arial,sans-serif;color:#172033;background:linear-gradient(135deg,#eaf4ff,#f7fff7)}
.page{min-height:100vh;display:grid;place-items:center;padding:20px}
.login-card{width:min(450px,100%);background:#fff;padding:38px;border-radius:24px;box-shadow:0 20px 60px #0002}
.logo{width:72px;height:72px;margin:auto;border-radius:18px;background:linear-gradient(135deg,#155ab6,#08732f);color:#fff;display:grid;place-items:center;font-size:42px;font-weight:900}
h1{text-align:center;color:#153d80;margin:18px 0 5px;font-size:34px}.sub{text-align:center;color:#667085;margin:0 0 25px}
.error{background:#fff0f0;color:#b42318;border:1px solid #fecdca;padding:12px;border-radius:9px;margin-bottom:16px}
label{display:block;font-weight:700;font-size:14px;margin:17px 0}
input{width:100%;padding:14px;border:1px solid #d8e0ea;border-radius:10px;margin-top:7px;font-size:15px}
.pass{display:flex}.pass input{border-radius:10px 0 0 10px}.pass button{margin-top:7px;border:1px solid #d8e0ea;border-left:0;background:#f7f9fb;padding:0 14px;border-radius:0 10px 10px 0}
.remember{display:flex;align-items:center;gap:8px;font-weight:400}.remember input{width:auto;margin:0}
.login-btn{width:100%;padding:15px;border:0;border-radius:10px;background:linear-gradient(90deg,#155ab6,#08732f);color:#fff;font-size:18px;font-weight:800}
.single{margin-top:18px;text-align:center;background:#edf5ff;border-radius:12px;padding:14px;color:#155ab6}.single span{display:block;color:#667085;font-size:13px;margin-top:4px}
.register{display:block;text-align:center;margin-top:18px;color:#08732f;font-weight:700}
@media(max-width:480px){.login-card{padding:28px 18px;border-radius:20px}h1{font-size:29px}}
