/* ===== Страница входа (отдаётся без входа, поэтому стили отдельно от ui.css) ===== */
:root {
  --bg: #F3F1EC; --ink: #17191E; --muted: #6A6E76; --line-2: #D2CCC1;
  --accent: #8E1B2B; --accent-hi: #A82437; --accent-lo: #741522; --danger: #A11D2C;
  color-scheme: light;
}
* { box-sizing: border-box; }
body {
  margin: 0; min-height: 100vh; display: grid; place-items: center; padding: 16px;
  background: var(--bg); color: var(--ink); font: 16px/1.5 'Segoe UI Variable Text', 'Segoe UI', system-ui, -apple-system, Roboto, sans-serif;
}
.card {
  width: 100%; max-width: 380px; padding: 36px 32px 30px; background: #fff; border: 1px solid #E4E0D8; border-radius: 18px;
  box-shadow: 0 2px 6px rgba(18,20,25,.05), 0 18px 48px rgba(18,20,25,.10);
}
h1 { margin: 0 0 24px; font: 400 32px/1.1 Georgia, 'Times New Roman', serif; }
form { display: flex; flex-direction: column; gap: 16px; }
label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; font-size: 14px; }
input {
  min-height: 46px; padding: 10px 14px; border: 1px solid var(--line-2); border-radius: 10px; background: #FBFAF7;
  color: inherit; font: inherit; font-weight: 400; transition: border-color .15s, box-shadow .15s, background .15s;
}
input:hover { border-color: #BDB5A7; }
input:focus { outline: none; border-color: var(--accent); background: #fff; box-shadow: 0 0 0 4px rgba(142,27,43,.14); }
button {
  min-height: 48px; border: 1px solid var(--accent-lo); border-radius: 12px; cursor: pointer;
  background: linear-gradient(180deg, var(--accent-hi), var(--accent-lo)); color: #fff; font: inherit; font-weight: 700;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 2px 4px rgba(116,21,34,.25), 0 10px 24px rgba(142,27,43,.22);
  transition: transform .15s, box-shadow .15s, filter .15s;
}
button:hover:not(:disabled) { transform: translateY(-1px); filter: brightness(1.07); }
button:active:not(:disabled) { transform: translateY(0); box-shadow: inset 0 2px 6px rgba(0,0,0,.25); }
button:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
button:disabled { opacity: .6; cursor: default; }
.err { margin: -4px 0 0; color: var(--danger); min-height: 1.4em; font-size: 14px; }
