body.login { background: var(--canvas); }
main { max-width: 420px; margin: 0 auto; padding: var(--s-8) var(--s-4); display: grid; gap: var(--s-6); }
.l-head { display: flex; align-items: center; justify-content: center; gap: var(--s-3); }
.l-head img { width: 38px; height: 29px; }
.l-head b { font: 800 var(--fs-xl)/1 var(--font-display); color: var(--text-head); }
.l-head b i { font-style: normal; color: var(--accent); }
form.card { padding: var(--s-6) var(--s-5); display: grid; gap: var(--s-4); }
form h1 { font: 800 var(--fs-xl)/1.2 var(--font-display); }
.field { display: grid; gap: 6px; font-weight: 600; color: var(--text-head); font-size: var(--fs-sm); }
.err { padding: 10px 12px; border-radius: var(--radius); background: var(--bad-bg); color: var(--bad); font-size: var(--fs-sm); }
.err[hidden] { display: none; }
.foot { text-align: center; font-size: var(--fs-xs); color: var(--text-muted); }
.foot a { color: var(--text-muted); }
