/* Isolated sign-in theme; authenticated screens retain their existing design. */
.login-screen {
  /* Colors verified from ubreakifix.com; do not inherit the FirstJet palette. */
  --login-ink: #0c0e11;
  --login-charcoal: #252629;
  --login-purple: #8223d2;
  --login-purple-hover: #6b19b2;
  display: grid;
  grid-template-columns: 45% 55%;
  min-height: 100vh;
  min-height: 100svh;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}
.login-brand-panel {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 56px;
  background: var(--login-charcoal);
  border-right: 5px solid var(--login-purple);
}
.login-wordmark {
  display: block;
  width: 100%;
  height: auto;
}
.login-brand-panel .brand-lockup { width:min(100%,442px); }
.login-auth-panel {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 64px;
}
.login-card {
  width: 100%;
  max-width: 400px;
}
.login-card h1 {
  color: var(--login-ink);
  font-size: 40px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: -1.5px;
  margin: 0 0 32px;
}
.login-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 48px;
  padding: 14px 48px;
  border-radius: 999px;
  background: var(--login-purple);
  color: #fff;
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
}
.login-button:hover { color: #fff; background: var(--login-purple-hover); }
.login-button:focus-visible { outline: 3px solid var(--login-purple); outline-offset: 4px; }
.discord-icon { position: absolute; left: 18px; width: 22px; height: 22px; }
.login-card .small-note { margin: 18px 0 0; color: #52606a; font-size: 13px; line-height: 1.6; }
@media (max-width: 700px) {
  .login-screen { grid-template-columns: 1fr; grid-template-rows: minmax(200px, 35svh) 1fr; }
  .login-brand-panel { padding: 40px; border-right: 0; border-bottom: 4px solid var(--login-purple); }
  .login-brand-panel .brand-lockup { width:min(100%,300px); }
  .login-auth-panel { padding: 48px 28px 64px; align-items: flex-start; }
  .login-card h1 { font-size: 32px; letter-spacing: -1px; margin-bottom: 28px; }
}
