/* ============================================================
   Termine – Frontend-Styles
   ============================================================ */

/* Terminliste (Shortcode & Block)
--------------------------------------------------------------- */
.terminkasten {
	margin: 1.5em 0;
}

.ter-kategorie {
	font-size: 1.1em;
	font-weight: 700;
	margin: 1.2em 0 0.4em;
	border-bottom: 2px solid currentColor;
	padding-bottom: 0.2em;
}

.ter-termine-table {
	width: 100%;
	border-collapse: collapse;
}

.ter-termine-table tr {
	border: 0;
}

.ter-termine-table td {
	padding: 0.3em 0.5em 0.3em 0;
	vertical-align: top;
}

.ter-termine-table .ter-datum {
	white-space: nowrap;
	width: 10em;
	font-weight: 600;
}

.ter-termine-table .ter-title {
	/* Vollbreite */
}

.ter-link {
	color: inherit;
	text-decoration: none;
}

.ter-link:hover {
	text-decoration: underline;
}

.ter-keine-termine {
	font-style: italic;
	opacity: 0.75;
}

/* Einzelansicht (the_content)
--------------------------------------------------------------- */
.ter_termin {
	margin: 1.5em 0;
}

.ter_termin dt {
	font-size: 1.05em;
	font-weight: 700;
	margin-top: 0.8em;
	margin-bottom: 0;
}

.ter_termin dt small {
	font-weight: 400;
	font-size: 0.7em;
}

.ter_termin dd {
	margin-left: 10em;
	margin-bottom: 0;
}

.ter_termin dd.description {
	font-size: 0.8em;
	opacity: 0.7;
	margin-top: -0.5em;
}

.ter_termin .termin-meta {
	font-size: 0.8em;
	border-top: 1px solid #ccc;
	margin-top: 2em;
	padding-top: 1em;
	opacity: 0.75;
}

@media (max-width: 640px) {
	.ter_termin dd {
		margin-left: 0;
	}

	.ter_termin {
		font-size: 1.05em;
	}

	.ter-termine-table .ter-datum {
		width: auto;
		display: block;
	}
}
