/* Footer legale classico (app, login, recupero password): società, P.IVA e link legali.
   File a parte perché login e recupero password non caricano redesign.css. */
.footer-legale { width: 100%; margin-top: 32px; border-top: 1px solid var(--surface-variant, #e5e2e1);
  padding: 16px 16px 88px; font-family: Manrope, sans-serif; font-size: 12px; line-height: 18px;
  color: var(--on-surface-variant, #6b6560); }
.footer-legale-in { max-width: 1440px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center;
  justify-content: space-between; gap: 8px 24px; }
.footer-legale p { margin: 0; }
.footer-legale nav { display: flex; flex-wrap: wrap; gap: 4px 20px; }
.footer-legale a { color: inherit; text-decoration: none; }
.footer-legale a:hover { color: var(--on-surface, #1b1c1c); text-decoration: underline; text-underline-offset: 2px; }
/* App: a lg+ il footer sta a destra della sidebar, come main#view */
@media (min-width: 1024px) {
  #legal-footer { padding: 16px 32px 16px calc(var(--sidebar-w, 248px) + 32px); }
  html.setup-mode #legal-footer, html.anamnesi-mode #legal-footer, html.pagina-unica #legal-footer { padding-left: 32px; }
}
/* Login e recupero password: footer in fondo alla pagina, senza spazio per la barra in basso */
.footer-legale--pagina { padding-bottom: 16px; }
@media (max-width: 767px) { .footer-legale-in { flex-direction: column; align-items: flex-start; } .footer-legale--pagina .footer-legale-in { align-items: center; text-align: center; } }
