/* Sign-in: one white pane centred on Bone. */
body.login-page { display: grid; place-items: center; overflow: auto; padding: var(--space-6) var(--space-5); }
.login-card {
  width: min(400px, 100%);
  padding: calc(var(--pad) * 1.5);
  border-radius: var(--radius);
  background: var(--surface);
  box-shadow: var(--shadow-raised);
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}
.login-head h1 { font-size: var(--fs-xl); letter-spacing: -0.025em; }
.login-head p { margin-top: var(--space-1); font-size: var(--fs-base); }
.login-form { display: flex; flex-direction: column; gap: var(--space-4); }
.login-form .btn { width: 100%; height: 42px; margin-top: var(--space-1); }
.login-error { min-height: 18px; color: var(--action-red); font-size: var(--fs-base); }
.login-error:empty { display: none; }
