/**
 * AeCI — ricerca dell'archivio: anello di focus (OverPress Media, 02/09/2026)
 *
 * PROBLEMA. Il campo di ricerca dei filtri Bricks è un <input> dentro una pillola
 * arrotondata. Chrome ci disegna sopra il suo indicatore di focus predefinito
 * (`outline: auto` con `outline-offset: -2px`): un rettangolo scuro a spigoli vivi
 * DENTRO la pillola, che compare al click e mentre si scrive. Sembra un errore.
 *
 * PERCHÉ NON LO CANCELLO E BASTA. La visibilità del focus è il criterio WCAG 2.4.7,
 * che l'Allegato 2 di accessibilità AgID obbliga a dichiarare: togliere l'indicatore
 * senza sostituirlo è una non conformità certa, e chi naviga da tastiera perde il
 * punto in cui si trova. Quindi il rettangolo si toglie e l'indicazione si sposta
 * sulla PILLOLA, dove è leggibile e coerente col resto.
 *
 * Nessun controllo nativo di Bricks espone gli stili di focus: né l'elemento
 * filter-search, né i Theme Styles. Da qui questo file.
 */

/* 1. via il rettangolo di Chrome dentro il campo */
.brxe-filter-search:focus,
.brxe-filter-search:focus-visible,
.brxe-filter-search input:focus,
.brxe-filter-search input:focus-visible {
	outline: none;
	box-shadow: none;
}

/* 2. l'indicazione passa alla pillola che CONTIENE la ricerca. Agganciata con :has()
      invece che con una classe, così nessun elemento va toccato dal builder e la regola
      vale anche per le barre delle pagine specialità, che hanno id diversi.
      :focus-within si accende anche mentre si scrive, non solo al primo click. */
:is(.brxe-div, .brxe-block):has(> .brxe-filter-search):focus-within {
	outline: 2px solid var(--bricks-color-dwffpt, #356A8B);
	outline-offset: 2px;
}

/* 3. i select della stessa pillola: niente doppio anello, comanda quello della pillola */
:is(.brxe-div, .brxe-block):has(> .brxe-filter-search) select:focus,
:is(.brxe-div, .brxe-block):has(> .brxe-filter-search) select:focus-visible {
	outline: none;
}

/* Chi ha chiesto meno animazioni non perde l'indicatore: è un contorno, non un
   movimento, quindi resta invariato. Nessuna transizione da disattivare. */


/**
 * 4. `hidden` deve vincere sul display degli elementi Bricks.
 *
 * archivio-filtri.js nasconde le sezioni di esplorazione con `el.hidden = true`, ma
 * l'attributo da solo non basta: la regola dello user agent e' `[hidden] { display: none }`
 * con specificita' 0,1,0, mentre Bricks stampa `#brxe-hubgrd { display: grid }` — un ID,
 * specificita' 1,0,0 — che vince. Risultato: sparivano i titoli (che non hanno un display
 * esplicito) e restavano le griglie.
 */
[hidden] {
	display: none !important;
}
