*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;background:#F7F9F7;color:#171E1B;font-family:"DM Sans",Arial,sans-serif}
.login-card{width:min(400px,92vw);background:#fff;border-radius:15px;padding:32px;box-shadow:0 8px 30px rgba(17,25,21,.08)}
.brand{display:flex;gap:12px;align-items:center;margin-bottom:22px}
.brand strong{font-family:Manrope,Arial,sans-serif;font-size:20px;letter-spacing:-.5px}
.brand span{color:#99ED39}
.brand small{display:block;font-size:9px;letter-spacing:3px;color:#5B6B63}
.robot{width:38px;height:38px;border-radius:11px;background:#111915;box-shadow:inset 0 0 0 4px #99ED39}
h1{font-family:Manrope,Arial,sans-serif;font-size:26px;letter-spacing:-1px;margin:0 0 6px}
.hint{margin:0 0 22px;color:#5B6B63;font-size:13px}
label{display:block;font-size:12px;font-weight:700;margin:14px 0 6px;color:#314237}
input{width:100%;height:42px;border:1px solid #DFE8DF;border-radius:10px;padding:0 12px;font:inherit;font-size:14px}
input:focus-visible,button:focus-visible{outline:3px solid #99ED39;outline-offset:2px}
button{margin-top:20px;width:100%;height:42px;border:0;border-radius:10px;background:#B3F36C;color:#203524;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
button:disabled{opacity:.6;cursor:wait}
.error{margin:14px 0 0;padding:10px 12px;border-radius:10px;background:#FDECEC;color:#8A1F1F;font-size:13px}
