/* ==========================================================================
   Perché non funziona? - stili del tema child
   Caricato DOPO style.css del tema padre.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Menu a scomparsa (overlay mobile)
   Il blocco Navigation di Twenty Twenty-Five gestisce da solo il collapse
   sotto i 600px. Qui affiniamo l'aspetto dell'overlay.
   -------------------------------------------------------------------------- */

.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close {
	border-radius: 2px;
}

/* L'overlay a tutta pagina va mantenuto leggibile anche su schermi grandi,
   dove il breakpoint del tema non lo attiva. */
@media (max-width: 599px) {
	.wp-block-navigation__responsive-container.is-menu-open {
		padding-top: var(--wp--preset--spacing--40);
	}
}

/* Menu a tendina su desktop: hover e focus coerenti con il tema. */
.wp-block-navigation-item__content {
	border-radius: 2px;
}

/* Quando il menu è aperto via overlay, l'elemento attivo va evidenziato. */
.wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content {
	font-weight: 700;
}

/* --------------------------------------------------------------------------
   2. Blocchi riusabili nei template
   -------------------------------------------------------------------------- */

/* Box "in breve" - la risposta sintetica in cima all'articolo. */
.pnf-box-in-breve {
	background-color: var(--wp--preset--color--base-2);
	border-left: 4px solid var(--wp--preset--color--accent);
	border-radius: 2px;
	padding: var(--wp--preset--spacing--30);
	margin-block: var(--wp--preset--spacing--30);
}

.pnf-box-in-breve .wp-block-heading {
	margin-top: 0;
}

/* Box di avvertenza - truffe, dati personali, operazioni irreversibili. */
.pnf-box-avvertenza {
	background-color: var(--wp--preset--color--base-2);
	border-left: 4px solid #b32d2e;
	border-radius: 2px;
	padding: var(--wp--preset--spacing--30);
	margin-block: var(--wp--preset--spacing--30);
}

/* Box procedura - i passaggi da seguire in ordine. */
.pnf-box-procedura {
	background-color: var(--wp--preset--color--base-2);
	border-left: 4px solid var(--wp--preset--color--accent);
	border-radius: 2px;
	padding: var(--wp--preset--spacing--30);
	margin-block: var(--wp--preset--spacing--30);
}

/* Griglia delle macro-categorie nella landing. */
.pnf-griglia-categorie {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: var(--wp--preset--spacing--30);
}

/* Singola card di categoria. */
.pnf-card {
	background-color: var(--wp--preset--color--base);
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 2px;
	padding: var(--wp--preset--spacing--30);
}

.pnf-card h3 {
	margin-top: 0;
	font-size: 1.25rem;
}

.pnf-card-lista {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0.95rem;
	line-height: 1.6;
}

.pnf-card-lista li {
	border-top: 1px solid rgba(0, 0, 0, 0.07);
}

.pnf-card-lista li:first-child {
	border-top: none;
}

/* Elenco degli ultimi articoli. */
.pnf-lista-articoli {
	margin: 0;
	padding: 0;
	list-style: none;
}

.pnf-lista-articoli li {
	padding-block: var(--wp--preset--spacing--20);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.pnf-lista-articoli li:first-child {
	padding-top: 0;
}

.pnf-articolo-categoria {
	font-size: 0.85rem;
	color: var(--wp--preset--color--contrast-2);
}

.pnf-vuoto {
	color: var(--wp--preset--color--contrast-2);
	font-style: italic;
}

/* Rientro dei blocchi in "in breve" senza sporcare il contenuto dell'articolo. */
.pnf-box-in-breve > *:first-child,
.pnf-box-avvertenza > *:first-child,
.pnf-box-procedura > *:first-child {
	margin-top: 0;
}

.pnf-box-in-breve > *:last-child,
.pnf-box-avvertenza > *:last-child,
.pnf-box-procedura > *:last-child {
	margin-bottom: 0;
}

/* --------------------------------------------------------------------------
   3. Legibilità - target non tecnico
   -------------------------------------------------------------------------- */

/* Corpo del testo su articoli di troubleshooting: righe piu corte. */
.pnf-articolo {
	--wp--style--global--content-size: 40rem;
	font-size: 1.125rem;
	line-height: 1.7;
}

/* I passaggi numerati devono stare bene anche a 320px di larghezza. */
.pnf-box-procedura ol {
	padding-inline-start: 1.5em;
}

@media (max-width: 480px) {
	.pnf-articolo {
		font-size: 1.0625rem;
	}
}

/* --------------------------------------------------------------------------
   4. Accessibilita - focus visibile su tutti gli elementi interattivi
   -------------------------------------------------------------------------- */

.wp-block-navigation a:focus-visible,
.wp-block-button__link:focus-visible,
a:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 2px;
}

/* --------------------------------------------------------------------------
   5. Stampa - l'utente spesso porta la pagina dall'assistenza
   -------------------------------------------------------------------------- */

@media print {
	.wp-block-navigation,
	.pnf-cta,
	.wp-block-post-navigation-link {
		display: none !important;
	}

	.pnf-box-in-breve,
	.pnf-box-avvertenza,
	.pnf-box-procedura {
		border: 1px solid #000;
		break-inside: avoid;
	}
}