*{box-sizing:border-box}
body{margin:0;font-family:"Segoe UI",Tahoma,Arial,sans-serif;
background:#f4f9fa;color:#193d46}
.login-layout{min-height:100vh;display:grid;
grid-template-columns:1fr 1fr}
.brand-panel{background:linear-gradient(145deg,#087f8c,#36b3b5);
color:white;display:flex;align-items:center;justify-content:center;
flex-direction:column;text-align:center;padding:45px}
.brand-mark{width:76px;height:76px;border-radius:22px;
display:grid;place-items:center;background:#ffffff25;
border:1px solid #ffffff75;font-size:43px;font-weight:800}
.brand-name{font-size:38px;font-weight:800;letter-spacing:4px;
margin-top:19px}
.brand-sub{font-size:15px;letter-spacing:1px;opacity:.9}
.brand-line{width:75px;height:3px;background:#ffffffa0;
margin:32px auto;border-radius:4px}
.brand-panel h1{font-size:25px;margin:0 0 8px}
.brand-panel p{margin:0;opacity:.85}
.login-panel{display:flex;align-items:center;justify-content:center;
padding:30px}
.login-card{width:100%;max-width:410px;background:white;
padding:40px;border-radius:22px;
border:1px solid #e3ecef;box-shadow:0 12px 50px #123c4a0c}
.eyebrow{color:#078a95;font-size:12px;letter-spacing:2px;
font-weight:800}
h2{font-size:28px;margin:15px 0 7px}
.subtitle{color:#789099;margin:0 0 30px;font-size:14px}
label{display:block;font-size:13px;font-weight:650;
margin:18px 0 8px}
input{width:100%;border:1px solid #d6e5e8;
background:#fafdfd;border-radius:11px;padding:14px;
font:inherit;outline:none;direction:ltr;text-align:left}
input:focus{border-color:#0d9ba5;box-shadow:0 0 0 3px #0d9ba51c}
button{border:0;background:#087f8c;color:white;
font:inherit;font-weight:700;border-radius:11px;
padding:15px;width:100%;cursor:pointer;margin-top:24px}
button:hover{background:#096c77}
button:disabled{opacity:.6;cursor:wait}
.error{color:#b93838;font-size:13px;margin:14px 0 0}
.footer{text-align:center;font-size:11px;color:#9aabb2;
margin-top:32px}
@media(max-width:800px){
.login-layout{grid-template-columns:1fr}
.brand-panel{padding:30px 20px}
.brand-mark{width:55px;height:55px;font-size:32px}
.brand-name{font-size:26px;margin-top:10px}
.brand-line{display:none}
.brand-panel h1{font-size:18px;margin-top:13px}
.login-panel{padding:20px}
.login-card{padding:28px}
}