/* Вход и регистрация техпаков — экран входа даша (static/login.html даша, ДИЗАЙН.md §6 и §21): кадр кампании во весь
   экран, поверх карточка листа — белая, рамка в толщину контура, прямые углы, все ряды одной высоты 58, поле ввода —
   сама ячейка. Фон подобран из кадра (#6a0e11): пока картинка грузится, экран уже нужного цвета. */
:root { --card:#fff; --text:#1d262e; --mut:#838786; --line:#cfd2d4; --rule:#e4e6e8;
  --accent:#9e222c; --hover:#f7f7f8; --red:#6a0e11; }
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { height: 100%; }
body { min-height: 100%; background: var(--red); color: var(--text);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; letter-spacing: .3px; font-size: 12px;
  -webkit-font-smoothing: antialiased; }
.shot { position: fixed; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 42%; }
.wrap { position: relative; min-height: 100%; display: flex; flex-direction: column;
  align-items: center; justify-content: center; gap: 26px; padding: 24px; }
.mark { width: 148px; height: auto; fill: #fff; display: block; }
.card { width: 340px; max-width: 100%; background: var(--card); border: 1px solid var(--line); }
.row { height: 58px; border-bottom: 1px solid var(--rule); }
.row input { width: 100%; height: 100%; padding: 0 14px; border: 0; border-radius: 0; background: none;
  font: inherit; font-size: 14px; letter-spacing: .3px; color: var(--accent); caret-color: var(--accent); }
.row input:focus { outline: none; background: var(--hover); }
.row input::placeholder { color: var(--line); }
.foot { height: 58px; display: flex; align-items: stretch; }
.st { display: flex; align-items: center; padding: 0 14px; font-size: 12px; color: var(--mut); min-width: 0; line-height: 1.3; }
.st.bad { color: var(--accent); }
.act { margin-left: auto; padding: 0 22px; border: 0; border-left: 1px solid var(--rule); background: none;
  color: var(--accent); font: inherit; font-size: 11px; font-weight: 600; letter-spacing: .88px;
  text-transform: uppercase; cursor: pointer; white-space: nowrap; transition: background .18s ease; }
.act:hover:not(:disabled) { background: var(--hover); }
.act:disabled { color: var(--mut); cursor: default; }
/* Под карточкой — вторые двери и язык: белым текстом по кадру, капителью, через черту 1×12 (§41). */
.alts { display: flex; align-items: center; gap: 13px; color: #fff; font-size: 11px; letter-spacing: .88px;
  text-transform: uppercase; }
.alts a, .alts button { color: inherit; text-decoration: none; background: none; border: 0; font: inherit;
  letter-spacing: inherit; text-transform: inherit; cursor: pointer; opacity: .75; }
.alts a:hover, .alts button:hover, .alts button.on { opacity: 1; }
.alts i { width: 1px; height: 12px; background: rgba(255, 255, 255, .5); }
.alts [hidden] { display: none; }
@media (orientation: portrait) {
  .shot { object-position: 50% 34%; }
  .wrap { justify-content: flex-end; gap: 22px; padding: 24px 10px 34px; }
}
