body.login {
  min-height: 100vh;
  min-height: 100dvh;
  margin: 0;
  display: grid;
  place-items: center;
  padding: var(--s-5);
  background-color: var(--ct-page-bg);
  background-image: var(--ct-page-ambient);
}
.login-card {
  width: 100%;
  max-width: 420px;
  background: var(--ct-c-card-bg);
  border: 1px solid var(--ct-c-card-border);
  border-radius: var(--ct-radius-island);
  box-shadow: var(--ct-shadow-island);
  overflow: hidden;
}
.login-accent { display: none; }
.login-body {
  padding: var(--s-10) var(--s-8) var(--s-8);
  display: flex;
  flex-direction: column;
  gap: var(--s-6);
}
.login-brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--s-3);
  text-align: center;
}
.login-brand img {
  width: 168px;
  height: auto;
  display: block;
  box-sizing: content-box;
}
@media screen {
  :root[data-theme="dark"] .login-brand img {
    background: #fff;
    padding: 10px 16px;
    border-radius: 14px;
    box-shadow: 0 12px 30px -14px rgba(0, 0, 0, 0.45);
  }
}
.login-slogan {
  font-family: 'Caretta Office', var(--font);
  font-weight: 400;
  font-size: var(--t-sm);
  color: var(--ct-fg-2);
}
.login-titlu {
  text-align: center;
  font-size: var(--t-sm);
  color: var(--ct-fg-3);
  padding-top: var(--s-4);
  border-top: 1px solid var(--ct-c-hairline);
}
.login-form {
  display: flex;
  flex-direction: column;
  gap: var(--s-4);
}
.login-foot {
  text-align: center;
  font-size: var(--t-xs);
  color: var(--ct-fg-3);
  padding-top: var(--s-2);
}
#login-eroare[hidden] { display: none; }
@media (max-width: 420px) {
  .login-body { padding: var(--s-8) var(--s-5) var(--s-6); }
  .login-brand img { width: 140px; }
}
