/*
 * Teknet Eventi — agenda.
 * Colori e misure personalizzabili, es. nel CSS dell'elemento o del tema:
 *   .tkev-agenda { --tkev-ag-accent: #0b3fa8; --tkev-ag-time-w: 90px; }
 */

.tkev-agenda {
	--tkev-ag-accent: #0b3fa8;      /* orari e sottotitoli */
	--tkev-ag-text: #1f2937;        /* titoli */
	--tkev-ag-muted: #6b7280;       /* descrizioni */
	--tkev-ag-line: #1f2937;        /* linea verticale */
	--tkev-ag-border: #e5e7eb;      /* separatori */
	--tkev-ag-time-w: 86px;         /* colonna orari */
	--tkev-ag-gap: 14px;

	margin: 0;
	padding: 0;
	list-style: none;
}

.tkev-agenda__item {
	display: grid;
	grid-template-columns: var(--tkev-ag-time-w) 1fr;
	margin: 0;
	padding: 0;
}

.tkev-agenda__item::before,
.tkev-agenda__item::marker {
	content: none;
}

/* Orario */
.tkev-agenda__time {
	padding: var(--tkev-ag-gap) 14px var(--tkev-ag-gap) 0;
	color: var(--tkev-ag-accent);
	font-size: 0.95em;
	font-weight: 600;
	line-height: 1.5;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.tkev-agenda__arrow {
	margin-right: 4px;
	font-weight: 400;
}

/* Colonna dei contenuti con la linea verticale continua a sinistra */
.tkev-agenda__body {
	border-left: 1px solid var(--tkev-ag-line);
}

.tkev-agenda__row {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	margin-left: 14px;
	padding: var(--tkev-ag-gap) 0;
	border-bottom: 1px solid var(--tkev-ag-border);
}

.tkev-agenda__item:last-child .tkev-agenda__row {
	border-bottom: 0;
}

.tkev-agenda__head {
	flex: 1;
	min-width: 0;
}

.tkev-agenda__title {
	display: block;
	color: var(--tkev-ag-text);
	font-size: 1.05em;
	font-weight: 500;
	line-height: 1.4;
}

.tkev-agenda__subtitle {
	display: block;
	margin-top: 2px;
	color: var(--tkev-ag-accent);
	font-size: 0.92em;
	font-weight: 500;
	line-height: 1.4;
}

/* Voce con descrizione: il separatore passa sotto la descrizione */
.tkev-agenda__item--has-content .tkev-agenda__row {
	border-bottom: 0;
	padding-bottom: 6px;
}

.tkev-agenda__content {
	margin-left: 14px;
	padding: 4px 40px var(--tkev-ag-gap) 0;
	border-bottom: 1px solid var(--tkev-ag-border);
	color: var(--tkev-ag-muted);
	font-size: 0.88em;
	line-height: 1.65;
}

.tkev-agenda__item:last-child .tkev-agenda__content {
	border-bottom: 0;
}

.tkev-agenda__content p {
	margin: 0 0 0.6em;
}

.tkev-agenda__content p:last-child {
	margin-bottom: 0;
}

@media (max-width: 639px) {
	.tkev-agenda {
		--tkev-ag-time-w: 68px;
		--tkev-ag-gap: 12px;
	}

	.tkev-agenda__arrow {
		display: none;
	}

	.tkev-agenda__content {
		padding-right: 0;
	}
}
