:root {
  --paper: oklch(0.916 0.004 88.5);
  --ink: oklch(0.231 0 0);
  --accent: #624c9a;
  --line: #bcbcb6;
  --mono: ui-monospace, Menlo, Consolas, monospace;
}
body, .login-pf body, body.login-pf, .login-pf-page {
  color: var(--ink);
  background: var(--paper);
  font-family: "Space Grotesk", "Plus Jakarta Sans", system-ui, sans-serif;
}
.card-pf, .pf-v5-c-login__main {
  background: #fff;
  border: 1px solid var(--line);
  border-top: 4px solid var(--accent);
  box-shadow: none;
}
#kc-header-wrapper {
  color: var(--ink);
  font-family: var(--mono);
  font-weight: 700;
}
#kc-page-title {
  color: var(--ink);
  font-weight: 750;
  letter-spacing: -.04em;
  text-transform: uppercase;
}
#kc-login {
  background: var(--ink);
  color: #fff;
  border: 1px solid var(--ink);
  border-radius: 0;
}
#kc-social-providers a {
  border: 1px solid var(--line);
  border-radius: 0;
  color: var(--ink);
}
#kc-social-providers a:hover { border-color: var(--accent); }
.login-pf-page :focus-visible {
  outline: 3px solid var(--accent);
  outline-offset: 3px;
}

