/* Оформление страниц входа и смены пароля.
   Палитра та же, что в приложении, — клубные синий и красный. */

:root{
  --blue:#034491; --blue-deep:#02305F; --red:#DE2018;
  --bg:#E7EDF5; --surface:#FFFFFF;
  --ink:#0A1E38; --ink-2:#38506E; --muted:#6B819E;
  --line:#D2DDEA;
  --on-blue:#FFFFFF; --on-blue-dim:#AEC8E8;
  --shadow:0 1px 2px rgba(10,30,56,.06), 0 18px 40px -22px rgba(10,30,56,.55);
  color-scheme:light dark;
}
@media (prefers-color-scheme: dark){
  :root{
    --blue:#1E6FD0; --blue-deep:#06203E; --red:#FF5A4B;
    --bg:#071322; --surface:#0E1E33;
    --ink:#E8EFF8; --ink-2:#C0D0E4; --muted:#8AA2BF;
    --line:#1E3455;
    --shadow:0 1px 2px rgba(0,0,0,.45), 0 20px 44px -24px rgba(0,0,0,.95);
  }
}

*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}

body.auth{
  margin:0;
  min-height:100dvh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px 18px calc(24px + env(safe-area-inset-bottom));
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 60%),
    linear-gradient(170deg, var(--blue) 0%, var(--blue-deep) 100%);
  color:var(--ink);
  font-family:"Golos Text","Helvetica Neue",Arial,sans-serif;
  font-size:15px;
  line-height:1.45;
  -webkit-font-smoothing:antialiased;
}

.auth-card{
  width:100%;
  max-width:380px;
  background:var(--surface);
  border-radius:20px;
  padding:30px 26px 24px;
  box-shadow:var(--shadow);
  text-align:center;
}

.auth-logo{
  width:88px;height:88px;
  margin:0 auto 14px;
  display:block;
  filter:drop-shadow(0 6px 16px rgba(3,68,145,.28));
}

.auth-eyebrow{
  font-family:"Oswald",Impact,sans-serif;
  font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--muted);margin:0 0 4px;
}
.auth-title{
  font-family:"Oswald",Impact,sans-serif;font-weight:700;
  font-size:32px;line-height:1;letter-spacing:.02em;text-transform:uppercase;
  margin:0;color:var(--ink);
}
.auth-sub{margin:8px 0 22px;font-size:13px;color:var(--ink-2);}

.auth-error{
  margin:0 0 18px;padding:11px 14px;
  background:rgba(222,32,24,.10);
  border-left:3px solid var(--red);
  border-radius:8px;
  font-size:14px;text-align:left;color:var(--ink);
}
.auth-ok{
  margin:0 0 18px;padding:11px 14px;
  background:rgba(3,68,145,.09);
  border-left:3px solid var(--blue);
  border-radius:8px;
  font-size:14px;text-align:left;color:var(--ink);
}

.auth-form{display:flex;flex-direction:column;gap:14px;text-align:left;}

.fld{display:block;}
.fld-label{
  display:block;
  font-size:12px;font-weight:600;letter-spacing:.02em;
  color:var(--ink-2);margin-bottom:6px;
}
.fld input{
  width:100%;
  /* 16px — иначе Safari на айфоне приближает страницу при фокусе */
  font:16px/1.4 "Golos Text","Helvetica Neue",Arial,sans-serif;
  color:var(--ink);
  background:transparent;
  padding:12px 14px;
  border:1.5px solid var(--line);
  border-radius:11px;
  transition:border-color .15s;
}
.fld input:focus{
  outline:none;
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(3,68,145,.14);
}

.remember{
  display:flex;align-items:center;gap:9px;
  font-size:13.5px;color:var(--ink-2);cursor:pointer;
}
.remember input{width:17px;height:17px;accent-color:var(--blue);margin:0;flex:0 0 auto;}

.auth-btn{
  margin-top:4px;
  appearance:none;border:0;cursor:pointer;width:100%;
  font-family:"Oswald",Impact,sans-serif;font-weight:600;
  font-size:15px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--on-blue);
  background:linear-gradient(180deg, var(--blue) 0%, var(--blue-deep) 100%);
  padding:14px;border-radius:11px;
  transition:filter .15s, transform .06s;
}
.auth-btn:hover{filter:brightness(1.08);}
.auth-btn:active{transform:translateY(1px);}

.auth-help{
  margin:20px 0 0;
  font-size:12.5px;color:var(--muted);
}
.auth-help a{color:var(--blue);}

.hint{
  margin:-4px 0 0;
  font-size:12.5px;color:var(--muted);
}
