*{box-sizing:border-box}
html,body{margin:0;padding:0;min-height:100%;font-family:Arial,Helvetica,sans-serif}
body{font-size:16px;background:#f4f7f9;color:#263238}
.auth-card{width:min(430px,92%);margin:8vh auto;padding:32px;background:#fff;border-radius:18px;box-shadow:0 10px 35px rgba(0,0,0,.08)}
.auth-brand{text-align:center;font-size:27px;font-weight:700;margin-bottom:20px;color:#008f83}
.auth-card h2{text-align:center;margin:0 0 24px}
.input-group{margin:16px 0}
.input-group label{display:block;font-weight:600;margin-bottom:7px}
.input-group input,#user_type{width:100%;height:44px;padding:8px 12px;font-size:16px;border-radius:9px;border:1px solid #cfd8dc;outline:none}
.input-group input:focus{border-color:#008f83;box-shadow:0 0 0 3px rgba(0,143,131,.1)}
.btn{width:100%;padding:12px 18px;font-size:16px;font-weight:700;color:#fff;background:#008f83;border:0;border-radius:9px;cursor:pointer}
.btn:hover{background:#00796f}
.auth-card p{text-align:center;color:#607d8b;margin-top:22px}
.auth-card a{color:#00796b;text-decoration:none;font-weight:600}
.error{margin:0 0 18px;padding:12px;border:1px solid #ef9a9a;color:#b71c1c;background:#ffebee;border-radius:9px}
.success{color:#1b5e20;background:#e8f5e9;border-color:#81c784}
