/*
 * DM2 Pagine Pulite — foglio di stile
 *
 * Caricato SOLO sulle pagine del plugin per cui la pulizia è attiva
 * (vedi DM2_Clean_Pages_Feature::enqueue_assets). Su tutto il resto del sito
 * questo file non viene nemmeno richiesto.
 *
 * Ogni regola è ancorata a `body.dm2-clean-page`, e i tre gruppi (titolo,
 * intestazione, piè di pagina) hanno ciascuno la propria classe, così le
 * caselle nella pagina di amministrazione accendono e spengono solo la parte
 * che riguardano.
 *
 * I selettori coprono le convenzioni dei temi classici (underscores/_s, la
 * famiglia Twenty*, la gran parte dei temi commerciali) e dei temi a blocchi
 * (.wp-block-post-title, header/footer.wp-block-template-part).
 *
 * NESSUNA regola tocca i contenitori del plugin — .dm2, .dm2m, .dm2c, .dm2w,
 * .dm2k, .dm2mgr, .dm2stock — né la sua intestazione interna .dm2-header.
 */

/* ── Titolo della pagina ────────────────────────────────────────────────── */
body.dm2-clean-page.dm2-hide-title .entry-title,
body.dm2-clean-page.dm2-hide-title .page-title,
body.dm2-clean-page.dm2-hide-title .post-title,
body.dm2-clean-page.dm2-hide-title .wp-block-post-title,
body.dm2-clean-page.dm2-hide-title .entry-header,
body.dm2-clean-page.dm2-hide-title header.page-header,
body.dm2-clean-page.dm2-hide-title .page-header {
  display: none !important;
}

/* ── Intestazione, logo, menu di navigazione ────────────────────────────── */
body.dm2-clean-page.dm2-hide-header .site-header,
body.dm2-clean-page.dm2-hide-header #masthead,
body.dm2-clean-page.dm2-hide-header #site-header,
body.dm2-clean-page.dm2-hide-header .site-branding,
body.dm2-clean-page.dm2-hide-header .main-navigation,
body.dm2-clean-page.dm2-hide-header .site-navigation,
body.dm2-clean-page.dm2-hide-header .wp-site-blocks > header,
body.dm2-clean-page.dm2-hide-header header.wp-block-template-part,
body.dm2-clean-page.dm2-hide-header .breadcrumbs,
body.dm2-clean-page.dm2-hide-header .breadcrumb {
  display: none !important;
}

/* ── Piè di pagina ──────────────────────────────────────────────────────── */
body.dm2-clean-page.dm2-hide-footer .site-footer,
body.dm2-clean-page.dm2-hide-footer #colophon,
body.dm2-clean-page.dm2-hide-footer #site-footer,
body.dm2-clean-page.dm2-hide-footer .site-info,
body.dm2-clean-page.dm2-hide-footer .wp-site-blocks > footer,
body.dm2-clean-page.dm2-hide-footer footer.wp-block-template-part {
  display: none !important;
}

/* ── Barra laterale e widget ────────────────────────────────────────────── */
body.dm2-clean-page.dm2-hide-sidebar #secondary,
body.dm2-clean-page.dm2-hide-sidebar .widget-area,
body.dm2-clean-page.dm2-hide-sidebar .sidebar,
body.dm2-clean-page.dm2-hide-sidebar aside.widget-area {
  display: none !important;
}

/* ── Coda della pagina: commenti e navigazione fra articoli ─────────────── */
/* Una pagina con uno shortcode a schermo intero non ne ha bisogno, e certi
   temi li stampano comunque sotto il contenuto. */
body.dm2-clean-page #comments,
body.dm2-clean-page .comments-area,
body.dm2-clean-page .post-navigation,
body.dm2-clean-page .nav-links,
body.dm2-clean-page .entry-footer {
  display: none !important;
}

/* ── Recupero dello spazio ──────────────────────────────────────────────── */
/* Tolti header e titolo, il contenitore del tema lascia comunque margini e
   una larghezza massima da articolo. Qui il menu deve occupare tutto.
   Stessa intenzione della regola inline già presente nel core per
   `body.page-template-canvas`, estesa ai temi che quel template non ce l'hanno. */
body.dm2-clean-page .site-content,
body.dm2-clean-page .content-area,
body.dm2-clean-page .site-main,
body.dm2-clean-page #content,
body.dm2-clean-page #primary,
body.dm2-clean-page #main,
body.dm2-clean-page .entry-content,
body.dm2-clean-page .wp-site-blocks,
body.dm2-clean-page .wp-block-post-content,
body.dm2-clean-page .entry-content > .alignwide,
body.dm2-clean-page article.page {
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
  width: 100% !important;
  float: none !important;
}

/* Alcuni temi impongono una griglia a due colonne su .site-content: senza
   sidebar resterebbe una colonna vuota a destra. */
body.dm2-clean-page.dm2-hide-sidebar .site-content,
body.dm2-clean-page.dm2-hide-sidebar .content-area {
  display: block !important;
  grid-template-columns: none !important;
}

/* Lo sfondo del menu cliente è deciso dalle impostazioni del plugin: qui
   togliamo solo l'eventuale spazio bianco residuo attorno. */
body.dm2-clean-page {
  margin: 0 !important;
  padding: 0 !important;
}

/* La barra di amministrazione, quando visibile, non deve coprire il menu. */
body.dm2-clean-page.admin-bar .dm2,
body.dm2-clean-page.admin-bar .dm2m,
body.dm2-clean-page.admin-bar .dm2c,
body.dm2-clean-page.admin-bar .dm2w,
body.dm2-clean-page.admin-bar .dm2k,
body.dm2-clean-page.admin-bar .dm2mgr,
body.dm2-clean-page.admin-bar .dm2stock {
  scroll-margin-top: 32px;
}

@media print {
  body.dm2-clean-page .site-header,
  body.dm2-clean-page .site-footer,
  body.dm2-clean-page #masthead,
  body.dm2-clean-page #colophon {
    display: none !important;
  }
}
