:root { --bg:#070a10; --surface:#111927; --border:#1e2a3d; --border2:#27374f;
  --red:#E8000A; --red2:#ff2d3a; --text:#e8eef6; --muted:#8696ad; }
* { box-sizing:border-box; }
body { background:var(--bg); color:var(--text); font-family:'Inter',sans-serif;
  min-height:100vh; display:flex; align-items:center; justify-content:center;
  background-image:radial-gradient(900px 380px at 78% -8%, rgba(232,0,10,.16), transparent 60%); }
.card { background:var(--surface); border:1px solid var(--border); border-radius:14px;
  padding:32px 30px; width:340px; box-shadow:0 8px 30px rgba(0,0,0,.4); }
h1 { font-family:'Rajdhani',sans-serif; font-size:1.3rem; text-transform:uppercase;
  letter-spacing:.1em; margin:0 0 4px; }
h1 b { color:var(--red2); }
.sub { color:var(--muted); font-size:.75rem; margin-bottom:22px; letter-spacing:.05em; }
label { display:block; font-size:.75rem; color:var(--muted); margin-bottom:5px; }
input { width:100%; background:#16203094; border:1px solid var(--border2); color:var(--text);
  border-radius:8px; padding:9px 12px; font-size:14px; margin-bottom:16px; }
input:focus { outline:none; border-color:var(--red); }
button { width:100%; background:linear-gradient(135deg,var(--red),#a3000a); color:#fff;
  border:none; border-radius:10px; padding:10px; font-weight:600; font-size:14px; cursor:pointer; }
.erro { color:var(--red2); font-size:.8rem; margin-bottom:14px; }
