:root {
  --au-bg: #0D1117;
  --au-card: #12151C;
  --au-fg: #F2F1ED;
  --au-border: rgba(242,241,237,0.1);
  --au-border-2: rgba(242,241,237,0.2);
  --au-muted: rgba(242,241,237,0.5);
  --au-muted-2: rgba(242,241,237,0.4);
}
* { box-sizing: border-box; }
body.auth-body {
  margin: 0; background: var(--au-bg); color: var(--au-fg);
  font-family: 'Helvetica Neue', Arial, sans-serif;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  min-height: 100vh; width: 100%; padding: 24px; position: relative; overflow: hidden;
}
.auth-glow {
  position: absolute; top: -200px; left: 50%; transform: translateX(-50%);
  width: 900px; height: 400px;
  background: radial-gradient(ellipse at center, rgba(242,241,237,0.06), transparent 70%);
  pointer-events: none;
}
.auth-wordmark {
  position: relative; display: flex; align-items: center; gap: 9px; margin-bottom: 40px;
  font-size: 18px; font-weight: 700; letter-spacing: -0.01em; color: var(--au-fg); text-decoration: none;
}
.auth-card {
  position: relative; width: 100%; max-width: 380px; background: var(--au-card); border-radius: 8px;
  border: 1px solid var(--au-border); padding: 40px 36px; display: flex; flex-direction: column; gap: 28px;
}
.auth-head { display: flex; flex-direction: column; gap: 6px; text-align: center; }
.auth-title { font-size: 30px; font-weight: 700; letter-spacing: -0.01em; }
.auth-sub { font-size: 13px; color: var(--au-muted); }
.auth-fields { display: flex; flex-direction: column; gap: 18px; }
.auth-field { display: flex; flex-direction: column; gap: 6px; }
.auth-field label { font-size: 11px; letter-spacing: 0.08em; color: var(--au-muted-2); }
.auth-field input {
  background: transparent; border: none; border-bottom: 1px solid var(--au-border-2);
  color: var(--au-fg); font-size: 15px; padding: 9px 0; font-family: inherit; outline: none; width: 100%;
}
.auth-field input::placeholder { color: rgba(242,241,237,0.3); }
.auth-hint { font-size: 11.5px; color: rgba(242,241,237,0.35); }
.auth-submit {
  display: flex; align-items: center; justify-content: center; padding: 14px; border-radius: 4px;
  background: var(--au-fg); color: var(--au-bg); font-size: 13.5px; font-weight: 700;
  letter-spacing: 0.03em; cursor: pointer; border: none; font-family: inherit;
}
.auth-submit:disabled { background: rgba(242,241,237,0.35); cursor: not-allowed; }
.auth-footer { display: flex; flex-direction: column; align-items: center; gap: 10px; font-size: 13px; }
.auth-footer-line { color: var(--au-muted); }
.auth-footer a { color: var(--au-fg); font-weight: 600; text-decoration: none; }
.auth-guest {
  color: rgba(242,241,237,0.4); text-decoration: none;
  border-bottom: 1px solid rgba(242,241,237,0.2); padding-bottom: 1px;
}
.auth-error { font-size: 12.5px; color: #E5A15A; text-align: center; }
