/* =====================================================================
   Proste strony redesignu (błąd/404, logowanie, reset hasła, rejestracja)
   Wszystko scopowane pod body.fc-redesign. Reużywa kart .fc-auth-* z design.css.
   ===================================================================== */

.fc-page {
  min-height: 100vh; background: var(--paper);
  display: flex; align-items: center; justify-content: center;
  padding: calc(var(--top-stack-h, 82px) + 96px) 24px 96px;
  position: relative; overflow: hidden;
}
.fc-page::before {
  content: ""; position: absolute; right: -160px; top: 40px;
  width: 520px; height: 520px; border-radius: 50%;
  background: radial-gradient(circle, rgba(201,168,106,0.10) 0%, transparent 70%);
  pointer-events: none;
}
.fc-page-inner { position: relative; width: 100%; max-width: 560px; }

/* ---- 404 / błąd ---- */
.fc-err { text-align: center; }
.fc-err-code {
  font-family: var(--serif); font-weight: 400; line-height: 0.9;
  font-size: clamp(110px, 22vw, 200px); letter-spacing: -0.04em;
  color: var(--navy);
  background: linear-gradient(180deg, var(--navy) 0%, var(--navy-soft) 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.fc-err-code .accent { color: var(--accent); -webkit-text-fill-color: var(--accent); }
.fc-err .tag { justify-content: center; margin: 4px 0 18px; }
.fc-err h1 {
  font-family: var(--serif); font-weight: 500; color: var(--ink);
  font-size: clamp(30px, 5vw, 46px); line-height: 1.05; letter-spacing: -0.01em; margin: 0;
}
.fc-err h1 em { font-style: italic; color: var(--navy); }
.fc-err p { font-size: 16px; color: var(--muted); line-height: 1.6; margin: 18px auto 32px; max-width: 440px; }
.fc-err-msg {
  display: inline-block; text-align: left; margin: 0 auto 28px; max-width: 460px;
  background: #FCEDED; border: 1px solid #F1C7C7; color: #9B2C2C;
  font-size: 13.5px; line-height: 1.5; padding: 12px 16px; border-radius: 12px;
}
.fc-err-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

/* ---- karta auth jako pełna strona (reużywa .fc-auth-card z design.css) ---- */
.fc-page .fc-auth-card { margin: 0 auto; animation: none; }
.fc-auth-ok { background: #ECF8F0; border: 1px solid #BFE6CC; color: #1E7D45; font-size: 13.5px; line-height: 1.5; padding: 12px 16px; border-radius: 12px; margin-bottom: 16px; }
.fc-page-sub { text-align: center; font-size: 13px; color: var(--muted); margin-top: 18px; }
.fc-page-sub a { color: var(--navy); text-decoration: none; font-weight: 600; }
.fc-page-sub a:hover { text-decoration: underline; text-underline-offset: 3px; }

/* ---- rejestracja: szerszy kontener, pola Bootstrap w estetycznej karcie ---- */
.fc-page-reg { max-width: 820px; }
.fc-reg-card { padding: 40px; }
.fc-page-reg .fc-reg-card { max-width: none; } /* karta logowania ma 460px - rejestracja ma byc szeroka */
.fc-reg-card .fc-auth-intro { margin-bottom: 28px; }
.fc-reg-card label { font-weight: 500; color: var(--ink); }
.fc-reg-card .form-control, .fc-reg-card .form-select { border-radius: 10px; border-color: var(--line); }
.fc-reg-card .form-control:focus, .fc-reg-card .form-select:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(201,168,106,0.15); }
.fc-reg-card .btn-primary { background: var(--navy); border-color: var(--navy); }

@media (max-width: 480px) {
  .fc-page { padding-top: calc(var(--top-stack-h, 82px) + 64px); }
  .fc-reg-card { padding: 28px 22px; }
}

/* karta auth jako PEŁNA strona dziedziczyła z modala max-height:100vh + własny scroll
   -> formularz rejestracji (i przycisk wysyłki) był ucięty w karcie, przewijany
   „scroll w scrollu" (telefon i desktop). Na stronie karta rośnie z treścią. */
.fc-page .fc-auth-card { max-height: none; overflow: visible; }
