/*
 * ACSI — template-elenco-consulenti.php
 *
 * A differenza dell'elenco Bandi, qui le righe NON sono cliccabili nel loro
 * insieme (nessuna pagina di dettaglio) — è una <table> semantica reale,
 * con i link ai singoli file (CV, allegati) dentro le celle.
 */

.acsi-elenco-consulenti__intro {
	font-size: 15px;
	line-height: 1.6;
	color: var(--colore-testo);
	margin-bottom: 24px;
}

.acsi-elenco-consulenti__intro:empty {
	margin-bottom: 0;
}

.acsi-elenco-consulenti__nessun-risultato {
	font-size: 15px;
	color: var(--colore-grigio);
	background: var(--colore-sfondo-alt);
	border-radius: var(--raggio-bordo-card, 12px);
	padding: 32px;
	text-align: center;
}

.acsi-elenco-consulenti__titolo-anno {
	font-family: var(--font-titoli);
	font-size: 18px;
	color: var(--colore-testo);
	margin: 32px 0 12px;
}

.acsi-elenco-consulenti__titolo-anno:first-of-type {
	margin-top: 8px;
}

/* --- <details>/<summary> per anno (aggiunti a mano nell'HTML incollato) --- */

.acsi-elenco-consulenti__anno {
	margin-bottom: 20px;
	border: 1px solid var(--colore-sfondo-alt);
	border-radius: var(--raggio-bordo-card, 12px);
	overflow: hidden;
}

.acsi-elenco-consulenti__anno > .acsi-elenco-consulenti__scorrimento {
	padding: 4px 4px 0;
}

.acsi-elenco-consulenti__anno > .acsi-elenco-consulenti__note-tabella {
	padding: 8px 16px 14px;
}

summary.acsi-elenco-consulenti__titolo-anno {
	cursor: pointer;
	list-style: none; /* toglie il triangolo di default in Firefox */
	background: var(--colore-primario-chiaro);
	font-size: 16px;
	margin: 0;
	padding: 12px 18px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	transition: background-color .15s ease, color .15s ease, padding .2s ease;
}

summary.acsi-elenco-consulenti__titolo-anno::-webkit-details-marker {
	display: none; /* toglie il triangolo di default in Chrome/Safari */
}

summary.acsi-elenco-consulenti__titolo-anno::after {
	content: '';
	width: 9px;
	height: 9px;
	border-right: 2px solid var(--colore-primario);
	border-bottom: 2px solid var(--colore-primario);
	transform: rotate(45deg);
	transition: transform .2s ease, border-color .15s ease;
	flex: 0 0 auto;
	margin-left: 12px;
}

summary.acsi-elenco-consulenti__titolo-anno:hover {
	background: var(--colore-primario);
	color: #FFFFFF;
}

summary.acsi-elenco-consulenti__titolo-anno:hover::after {
	border-color: #FFFFFF;
}

.acsi-elenco-consulenti__anno[open] > summary.acsi-elenco-consulenti__titolo-anno::after {
	transform: rotate(-135deg);
}

/* Tabella aperta: il titolo c'è già dentro la tabella, quindi qui il testo
   e la freccia svaniscono — ma la barra resta come striscia cliccabile
   (altezza ridotta, non zero) per poter richiudere. Un'area con altezza
   zero non riceve click e bloccherebbe la tabella aperta per sempre. */
.acsi-elenco-consulenti__anno[open] > summary.acsi-elenco-consulenti__titolo-anno {
	color: transparent;
	padding: 6px 18px;
}

.acsi-elenco-consulenti__anno[open] > summary.acsi-elenco-consulenti__titolo-anno::after {
	border-color: transparent;
}

/* Passando il mouse sulla striscia (anche a tabella aperta) il titolo
   torna visibile — un indizio per capire cosa si sta per richiudere,
   invece di una striscia muta senza alcun indizio. */
.acsi-elenco-consulenti__anno[open] > summary.acsi-elenco-consulenti__titolo-anno:hover {
	color: #FFFFFF;
}

.acsi-elenco-consulenti__anno[open] > summary.acsi-elenco-consulenti__titolo-anno:hover::after {
	border-color: #FFFFFF;
}

.acsi-elenco-consulenti__nota {
	font-size: 11px;
	color: var(--colore-grigio);
}

/* Scorrimento orizzontale su schermi stretti, invece di rompere il layout
   a schede impilate come per i Bandi — qui i dati (mansione, procedura,
   periodo) restano più leggibili in riga che spezzati in etichette. */
.acsi-elenco-consulenti__scorrimento {
	overflow-x: auto;
}

/* --- Mobile: la tabella diventa una serie di schede impilate --- */
/* Motivo (non solo estetico): su un sito di Pubblica Amministrazione lo
   scorrimento orizzontale rischia di nascondere colonne intere senza che
   chi legge se ne accorga — inaccettabile per dati come compensi/incarichi
   che esistono apposta per essere trasparenti. Stesso principio già
   applicato alla tabella Bandi. */
@media (max-width: 780px) {
	.acsi-elenco-consulenti__tabella thead {
		display: none; /* le etichette per riga arrivano da data-etichetta, vedi sotto */
	}
	.acsi-elenco-consulenti__tabella,
	.acsi-elenco-consulenti__tabella tbody,
	.acsi-elenco-consulenti__tabella tr,
	.acsi-elenco-consulenti__tabella td {
		display: block;
		width: 100% !important; /* sovrascrive eventuali larghezze fisse impostate a mano sulle colonne */
	}
	.acsi-elenco-consulenti__tabella tr {
		margin-bottom: 14px;
		border: 1px solid var(--colore-sfondo-alt);
		border-radius: var(--raggio-bordo, 8px);
		overflow: hidden;
	}
	.acsi-elenco-consulenti__tabella td {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 9px 12px;
		border-bottom: 1px solid var(--colore-sfondo-alt);
		text-align: right;
	}
	.acsi-elenco-consulenti__tabella td:last-child {
		border-bottom: none;
	}
	.acsi-elenco-consulenti__tabella td[data-etichetta]::before {
		content: attr(data-etichetta);
		font-size: 11px;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: .03em;
		color: var(--colore-grigio);
		flex: 0 0 auto;
		text-align: left;
	}
	.acsi-elenco-consulenti__scorrimento {
		overflow-x: visible; /* non serve più scorrere: la tabella è impilata */
	}
}

.acsi-elenco-consulenti__tabella {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	font-family: var(--font-testo);
	font-size: 13px;
	color: var(--colore-testo);
}

.acsi-elenco-consulenti__tabella th {
	text-align: center;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--colore-testo);
	background: var(--colore-primario-chiaro);
	padding: 6px 12px;
	white-space: nowrap;
	border-bottom: 2px solid var(--colore-primario);
}

.acsi-elenco-consulenti__tabella td {
	padding: 4px 12px;
	text-align: center;
	vertical-align: middle;
	border-bottom: 1px solid var(--colore-sfondo-alt);
}

/* Font più compatto per le colonne più "dense" di testo — non per il
   Nominativo, che resta a dimensione piena. */
.acsi-elenco-consulenti__cella-compatta {
	font-size: 11px;
}

/* Righe alternate — due verdi scelti apposta per questa tabella, fuori
   dalla palette standard del sito (decisione esplicita, non un errore). */
.acsi-elenco-consulenti__tabella tbody tr:nth-child(odd) {
	background: #ECF3E9;
}

.acsi-elenco-consulenti__tabella tbody tr:nth-child(even) {
	background: #F2F1CD;
}

.acsi-elenco-consulenti__link-file {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: var(--colore-primario);
	text-decoration: none;
	font-weight: 500;
	white-space: nowrap;
}

.acsi-elenco-consulenti__link-file svg {
	flex: 0 0 auto;
}

.acsi-elenco-consulenti__link-file:hover {
	text-decoration: underline;
}

.acsi-elenco-consulenti__assente {
	color: var(--colore-grigio);
}

/* Più icone di dichiarazioni affiancate (quando ce n'è più di una) */
.acsi-elenco-consulenti__gruppo-icone {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

/* Blocco della vecchia legenda a piè di tabella (es. riferimenti normativi),
   tenuto fuori dalla tabella invece che come riga-dato. */
.acsi-elenco-consulenti__note-tabella {
	margin-top: 8px;
	font-size: 11px;
	color: var(--colore-grigio);
	line-height: 1.5;
}

.acsi-elenco-consulenti__note-tabella p {
	margin: 2px 0;
}
