/* Pagina «termini» (condizioni, uso accettabile, DPA, recesso e rimborsi): stili propri del gruppo termini, con il prefisso .termini- .
   Vale il contratto di style.css: nessuna risorsa esterna, nessuna animazione, nessun attributo style. */

/* Avviso di bozza in cima alla pagina: testo e bordo non affidati al solo colore (c'e' scritto cosa significa). */
.termini-avviso { background: var(--warning-soft); color: var(--warning); border-block: 2px solid var(--warning); padding: var(--space-4) 0; }
.termini-avviso p { margin: 0; font-size: 1rem; line-height: 1.5; }
.termini-avviso strong { display: block; font-size: 1.125rem; }

/* Note per la revisione legale, tra doppie parentesi quadre: visibili finche' il testo e' una bozza. */
.termini-nota { background: var(--warning-soft); color: var(--warning); border-radius: 4px; padding: 0 4px; font-size: .9em; overflow-wrap: anywhere; }

/* Documenti collegati e indice degli articoli */
.termini-testo .termini-altri, .termini-testo .termini-indice { margin: 0 0 var(--space-6); padding: var(--space-4); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); }
.termini-testo .termini-altri-titolo { margin: 0 0 var(--space-2); font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--text-muted); }
.termini-testo .termini-altri ul, .termini-testo .termini-indice ul { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 0 var(--space-4); }
.termini-testo .termini-indice ul { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr)); }
.termini-testo .termini-altri li, .termini-testo .termini-indice li { margin: 0; }
.termini-testo .termini-altri a, .termini-testo .termini-indice a { display: inline-flex; align-items: center; min-height: 44px; }

/* Testo lungo: elenchi numerati, secondo titolo, tabelle larghe che scorrono nel loro riquadro */
.termini-testo { overflow-wrap: break-word; }
.termini-testo ol { list-style: decimal; padding-left: 1.5em; margin: var(--space-2) 0 var(--space-4); }
.termini-testo ol li + li { margin-top: var(--space-2); }
.termini-testo ul ul, .termini-testo ol ul, .termini-testo ul ol { margin: var(--space-2) 0 0; }
.termini-testo h2 { font-size: 1.375rem; scroll-margin-top: var(--space-6); }
.termini-testo .termini-sub { font-weight: 600; color: var(--text-muted); }
.termini-testo .tabella { margin: var(--space-4) 0 var(--space-6); }
.termini-testo .tabella table { min-width: 560px; }
