.mod-kaderliste {
	width: 100%;
	font-size: 0.95rem;
}

.mod-kaderliste h3 {
	margin-bottom: 1rem;
}

/* =========================
   Desktop
   ========================= */
.mod-kaderliste .kader-header,
.mod-kaderliste .kader-row {
	display: grid;
	grid-template-columns: 1fr 2fr 2fr 1fr 2fr;
	gap: 0.5rem;
	align-items: center;
}

.mod-kaderliste .kader-header {
	font-weight: 600;
	border-bottom: 2px solid #ccc;
	padding: 0.5rem 0;
	margin-bottom: 0.25rem;
}

.mod-kaderliste .kader-row {
	padding: 0.4rem 0;
	border-bottom: 1px solid #e5e5e5;
}

.mod-kaderliste .kader-row:nth-child(even) {
	background-color: #f9f9f9;
}

.mod-kaderliste .kader-cell {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* =========================
   Mobile – Label | Wert
   ========================= */
@media (max-width: 768px) {

	.mod-kaderliste .kader-header {
		display: none;
	}

	.mod-kaderliste .kader-row {
		display: block;
		padding: 0.75rem;
		margin-bottom: 0.75rem;
		border: 1px solid #ddd;
		border-radius: 6px;
		background: #fff;
	}

	.mod-kaderliste .kader-cell {
		display: grid;
		grid-template-columns: 6.5rem 1fr;
		column-gap: 0.5rem;
		white-space: normal;
		margin-bottom: 0.4rem;
	}

	.mod-kaderliste .kader-cell:last-child {
		margin-bottom: 0;
	}

	.mod-kaderliste .kader-cell::before {
		font-weight: 600;
		color: #555;
	}

	.mod-kaderliste .kader-cell:nth-child(1)::before { content: "Kader"; }
	.mod-kaderliste .kader-cell:nth-child(2)::before { content: "Name"; }
	.mod-kaderliste .kader-cell:nth-child(3)::before { content: "Vorname"; }
	.mod-kaderliste .kader-cell:nth-child(4)::before { content: "Jahrgang"; }
	.mod-kaderliste .kader-cell:nth-child(5)::before { content: "Verein"; }
}
