:root{
  --bg:#0a0a0a;
  --surface:#141414;
  --border:#2a2a2a;
  --text:#f2f2f2;
  --text-dim:#9a9a9a;
  --accent:#2f7bff;
  --accent-hover:#4d90ff;
  --danger:#ff3b30;
  --field-h:52px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  background:var(--bg);color:var(--text);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing:antialiased;
}

.field{
  height:var(--field-h);width:100%;padding:0 16px;
  background:#0a0a0a;color:var(--text);
  border:1px solid var(--border);border-radius:0;
  outline:none;
}
.field:focus{border-color:var(--accent)}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  height:var(--field-h);min-width:130px;padding:0 24px;
  border:1px solid transparent;border-radius:0;
  font-weight:600;letter-spacing:.02em;white-space:nowrap;cursor:pointer;
  background:transparent;color:var(--text);
}
.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}

.auth-body{display:flex;align-items:center;justify-content:center;min-height:100vh}
.auth-card{width:100%;max-width:400px;padding:32px;background:var(--surface);border:1px solid var(--border)}
.auth-form{display:flex;flex-direction:column;gap:16px}
.auth-error{color:var(--danger);font-size:14px}
