/* ==========================================================================
   Deliver — adattamenti a WordPress
   tokens.css e main.css sono copie del prototipo approvato e non si modificano qui:
   questo file aggiunge solo ciò che serve dentro WordPress.
   ========================================================================== */

/* Barra di amministrazione (solo utenti collegati): l'header fisso scende sotto la barra */
.admin-bar .site-header { top: 32px; }
.admin-bar .mobile-menu { top: calc(var(--header-h) + 32px); }
@media (max-width: 782px) {
  .admin-bar .site-header { top: 46px; }
  .admin-bar .mobile-menu { top: calc(var(--header-h) + 46px); }
}
@media (max-width: 600px) {
  /* Sotto i 600px WordPress fa scorrere la barra con la pagina e coprirebbe l'header fisso:
     per gli utenti collegati la barra resta fissa in alto. */
  .admin-bar #wpadminbar { position: fixed; }
}

/* Testo per lettori di schermo usato da WordPress e dai plugin */
.screen-reader-text {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* Pagina 404 */
.not-found { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-5) var(--s-7); }

/* Articoli: blocchi nativi (Tabella, Gruppo "callout", Elenco) con l'aspetto del prototipo.
   Gli stili predefiniti dei blocchi di WordPress vengono neutralizzati con selettori più specifici. */
.prose figure.wp-block-table { margin: 1.15em 0 0; }
.prose > figure.wp-block-table:first-child { margin-top: 0; }
.prose .wp-block-table table { width: 100%; border-collapse: collapse; }
.prose .wp-block-table thead,
.prose .wp-block-table tfoot { border: 0; }
.prose .wp-block-table th,
.prose .wp-block-table td { border-left: 0; border-right: 0; }
.prose .wp-block-table th { border-top: 0; padding: .75rem 1rem; }
.prose .wp-block-table td { border-bottom: 0; padding: .75rem 1rem; }
@media (max-width: 639.98px) {
  .prose .wp-block-table td { border: 0; padding: .35rem 0; }
}
.prose .callout.wp-block-group > * { margin-block: 0; }
.prose .callout.wp-block-group > * + * { margin-top: .8em; }
.prose .callout.wp-block-group .wp-block-table { margin-top: var(--s-3); }

/* Approfondimenti: nessuna data nell'interfaccia, solo il tempo di lettura su una riga. */
.archive-meta { white-space: nowrap; }

/* Copertine degli articoli: immagine in evidenza (illustrazione) al posto della copertina astratta.
   Riempie il riquadro nei tre formati del prototipo (card 2:1, evidenza 16:9, articolo 4:3). */
.article-cover--img { padding: 0; background: var(--blu); }
.article-cover--img::after { content: none; }
.article-cover--img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

/* Editor a blocchi (solo dentro l'editor: .is-root-container non esiste sul sito pubblico).
   Rende il testo degli articoli leggibile come nella pagina: spaziature, elenchi, tabelle. */
.is-root-container { font-size: 1.0625rem; line-height: 1.75; color: var(--text); }
.is-root-container > * + * { margin-top: 1.15em; }
.is-root-container > h2 { margin-top: 2em; font-size: clamp(1.4rem, 1.2rem + .8vw, 1.85rem); }
.is-root-container ul.wp-block-list { list-style: disc; padding-left: 1.4em; }
.is-root-container ol.wp-block-list { list-style: decimal; padding-left: 1.6em; }
.is-root-container .wp-block-list li + li { margin-top: .4em; }
.is-root-container .wp-block-table th,
.is-root-container .wp-block-table td { border: 1px solid var(--line); padding: .5rem .75rem; vertical-align: top; text-align: left; }
.is-root-container .callout { padding: var(--s-5); background: var(--surface-alt); border-left: 3px solid var(--arancio); }

/* Diagramma a D della hero con cinque livelli (20/10/2026): il viewBox è più largo (500 invece di 450)
   per lasciare spazio alle etichette lunghe; la larghezza massima mantiene l'altezza del diagramma
   vicina a quella del blocco di testo, come nel prototipo. Su smartphone corpo più grande senza spaziatura
   aggiuntiva (il monospazio è già arioso): ~10,5 px reali a 375 px, con margine dagli archi. */
.layers.layers--cinque { max-width: 455px; }
@media (max-width: 1023.98px) { .layers.layers--cinque { max-width: 460px; } }
@media (max-width: 640px) { .layers--cinque .layers-svg text { font-size: 15.5px; letter-spacing: 0; } }

/* Contenuto Gutenberg generico (pagine senza sezioni dedicate, es. Privacy e Cookie Policy):
   stessa misura di lettura degli articoli (.post-main) */
.prose.entry-content { max-width: 46rem; }
.entry-content > * + * { margin-top: var(--s-4); }
.entry-content .wp-block-image figcaption,
.entry-content .wp-element-caption { margin-top: var(--s-2); font-size: var(--fs-xs); color: var(--muted); }
.entry-content .alignleft { float: left; margin: 0 var(--s-5) var(--s-4) 0; }
.entry-content .alignright { float: right; margin: 0 0 var(--s-4) var(--s-5); }
.entry-content .aligncenter { margin-inline: auto; }
