/* ---------- Страница входа и регистрации ---------- */
.auth-body { min-height: 100vh; display: grid; place-items: center; padding: 20px; background: var(--bg); }
.auth-card { width: 100%; max-width: 400px; padding: 28px; display: flex; flex-direction: column; gap: 18px; }
.auth-brand { display: flex; align-items: center; gap: 10px; font-size: 17px; }
.auth-brand img { width: 34px; height: 34px; border-radius: 8px; object-fit: cover; }
.auth-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 4px; background: var(--surface-2); border-radius: 9px; }
.auth-tab { height: 32px; border: 0; border-radius: 7px; background: transparent; color: var(--muted); font: inherit; font-weight: 600; cursor: pointer; }
.auth-tab.active { background: var(--card); color: var(--text); box-shadow: var(--shadow); }
#auth-form { display: flex; flex-direction: column; gap: 14px; }
#auth-form .fld { display: flex; flex-direction: column; gap: 6px; font-size: 12.5px; }
#auth-form .fld > span { color: var(--muted); font-weight: 500; }
#auth-form .input { height: 38px; }
#auth-form [hidden] { display: none; }
.auth-error { margin: 0; padding: 9px 12px; border-radius: 8px; background: var(--neg-soft); color: var(--neg); font-size: 12.5px; }
.auth-back { font-size: 12.5px; text-align: center; }
.auth-tabs[hidden] { display: none; }
