/* Namespace pagine legali (.lgl-*) — privacy.html, cookie.html, termini.html.
   Un solo foglio per le tre pagine: sono lo stesso oggetto tipografico e
   duplicarlo lo farebbe divergere alla prima modifica.
   Solo design tokens, nessun colore hardcoded (CSP: nessuno style inline). */

.lgl-page { max-width: 820px; margin: 0 auto; padding: var(--space-8) var(--space-5) var(--space-10); }

.lgl-top { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); margin-bottom: var(--space-8); }
.lgl-brand { display: flex; align-items: center; gap: var(--space-2); font-weight: 700; color: var(--color-text); text-decoration: none; }
.lgl-brand img { width: 28px; height: 28px; }
.lgl-back { color: var(--color-text-muted); text-decoration: none; font-size: var(--font-size-sm); }
.lgl-back:hover { color: var(--color-text); }

.lgl-hero h1 { font-size: var(--font-size-2xl, 2rem); margin: 0 0 var(--space-3); color: var(--color-text); }
.lgl-lead { color: var(--color-text-muted); font-size: var(--font-size-lg, 1.1rem); line-height: 1.55; margin: 0; }
.lgl-updated { color: var(--color-text-muted); font-size: var(--font-size-sm); margin: var(--space-3) 0 0; }

.lgl-section { margin-top: var(--space-8); }
.lgl-section > h2 { font-size: var(--font-size-xl, 1.3rem); margin: 0 0 var(--space-2); color: var(--color-text); }
.lgl-section > h3 { font-size: var(--font-size-lg, 1.05rem); margin: var(--space-5) 0 var(--space-2); color: var(--color-text); }
.lgl-section p, .lgl-section li { color: var(--color-text-muted); line-height: 1.65; }
.lgl-section p { margin: 0 0 var(--space-3); }
.lgl-section ul, .lgl-section ol { margin: 0 0 var(--space-3); padding-left: var(--space-5); }
.lgl-section li { margin-bottom: var(--space-2); }
.lgl-section strong { color: var(--color-text); }
.lgl-section a { color: var(--color-accent, var(--accent)); }

.lgl-card { background: var(--color-bg-card); border: 1px solid var(--color-border); border-radius: var(--r-md, 12px); padding: var(--space-5); margin-bottom: var(--space-4); }

.lgl-table-wrap { overflow-x: auto; }
.lgl-table { width: 100%; border-collapse: collapse; font-size: var(--font-size-sm); }
.lgl-table th, .lgl-table td { text-align: left; padding: var(--space-3); border-bottom: 1px solid var(--color-border); vertical-align: top; }
.lgl-table th { color: var(--color-text-muted); font-weight: 600; white-space: nowrap; }
.lgl-table td { color: var(--color-text-muted); line-height: 1.55; }
.lgl-table code { font-family: 'JetBrains Mono', monospace; font-size: 0.92em; color: var(--color-text); }

/* Nota di rilievo (usata per il trattamento dei dati di terzi, art. 14) */
.lgl-note { border-left: 3px solid var(--color-accent, var(--accent)); padding: var(--space-3) var(--space-4); background: var(--color-bg-card); border-radius: 0 var(--r-md, 12px) var(--r-md, 12px) 0; margin-bottom: var(--space-4); }
.lgl-note p:last-child { margin-bottom: 0; }

/* Guardia anti-pubblicazione: visibile SOLO se i dati del titolare sono ancora
   segnaposto. Serve a rendere impossibile mandare online un'informativa
   incompleta senza accorgersene. Vedi legal-entity.js. */
.lgl-incomplete { border: 2px solid var(--color-danger, #d94b4b); border-radius: var(--r-md, 12px); padding: var(--space-4) var(--space-5); margin-bottom: var(--space-6); background: var(--color-bg-card); }
.lgl-incomplete h2 { color: var(--color-danger, #d94b4b); font-size: var(--font-size-lg, 1.05rem); margin: 0 0 var(--space-2); }
.lgl-incomplete p { color: var(--color-text); margin: 0 0 var(--space-2); line-height: 1.6; }
.lgl-incomplete ul { margin: 0; padding-left: var(--space-5); color: var(--color-text-muted); }

.lgl-foot { margin-top: var(--space-9); padding-top: var(--space-5); border-top: 1px solid var(--color-border); }
.lgl-foot p { color: var(--color-text-muted); font-size: var(--font-size-sm); margin: 0 0 var(--space-2); }
.lgl-foot a { color: var(--color-text-muted); margin-right: var(--space-4); }
.lgl-foot a:hover { color: var(--color-text); }

@media (max-width: 600px) {
  .lgl-page { padding: var(--space-6) var(--space-4) var(--space-8); }
  .lgl-hero h1 { font-size: var(--font-size-xl, 1.5rem); }
}
