/* Страницы входа (Flask-шаблоны вне Dash) */
.auth-body {
  margin: 0; min-height: 100vh; display: grid; place-items: center; padding: 20px;
  font-family: var(--font); color: var(--text); background: var(--bg);
}
.auth-card {
  width: 100%; max-width: 400px; background: var(--surface); border-radius: 20px; box-shadow: var(--shadow);
  padding: 32px 32px 26px;
}
.auth-brand { display: flex; align-items: center; gap: 12px; margin-bottom: 22px; }
.auth-brand__name { font-weight: 800; font-size: 24px; color: var(--indigo); line-height: 1; letter-spacing: .5px; }
.auth-brand__sub { font-size: 12px; color: var(--muted); margin-top: 4px; }
.auth-title { font-size: 22px; font-weight: 800; margin: 0 0 16px; }
.auth-error { background: #fdeaed; color: #b4233b; border-radius: 10px; padding: 10px 14px; font-size: 13.5px; font-weight: 600; margin-bottom: 14px; }
.auth-form { display: flex; flex-direction: column; }
.auth-label { font-size: 13px; font-weight: 700; color: var(--muted); margin: 10px 0 5px; }
.auth-input {
  font: inherit; font-weight: 600; padding: 11px 14px; border: 1px solid #dfe1f2; border-radius: 10px; outline: none; color: var(--text);
}
.auth-input:focus { border-color: var(--lavender); box-shadow: 0 0 0 3px rgba(143, 148, 212, .22); }
.auth-btn {
  margin-top: 20px; font: inherit; font-weight: 800; padding: 12px; border: 0; border-radius: 10px; cursor: pointer;
  color: #fff; background: var(--indigo); box-shadow: 0 4px 12px rgba(61, 63, 158, .25);
}
.auth-btn:hover { background: #33358a; }
.auth-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.auth-ico { position: relative; top: -1px; width: 16px; height: 16px; background-color: currentColor; -webkit-mask: var(--ico) center / contain no-repeat; mask: var(--ico) center / contain no-repeat; }
.auth-ico--logout { --ico: url(icons/logout.svg); transform: scaleX(-1); }
.auth-ico--check { --ico: url(icons/check.svg); }
.auth-hint { color: var(--muted); font-size: 13px; text-align: center; margin: 16px 0 0; line-height: 1.5; }
.auth-hint--top { text-align: left; margin: 0 0 4px; }
.auth-hint a { color: var(--indigo); font-weight: 700; text-decoration: none; }
.auth-hint a:hover { text-decoration: underline; }
