.capiano-events,
.capiano-repertoire {
	--capiano-border: #d8d4cd;
	--capiano-accent: #6e263b;
	--capiano-surface: #f7f4ef;
	margin-block: 1.5rem;
}

.capiano-events__heading { margin: 0 0 1rem; }
summary.capiano-events__heading { cursor: pointer; font-size: 1.4em; font-weight: 700; }
.capiano-events__table { width: 100%; border-collapse: collapse; }
.capiano-events__table th,
.capiano-events__table td { padding: 0.8rem; border-bottom: 1px solid var(--capiano-border); vertical-align: top; text-align: left; }
.capiano-events__table tbody tr { background: var(--capiano-row-bg); color: var(--capiano-row-text); }
.capiano-events--zebra .capiano-events__table tbody tr:nth-child(even) { background: var(--capiano-row-alt-bg); color: var(--capiano-row-alt-text); }
.capiano-events__table th { background: var(--capiano-header-bg); color: var(--capiano-header-text); }
.capiano-events--header-transparent .capiano-events__table th { background: transparent; }
.capiano-events__date { display: block; white-space: nowrap; }
.capiano-events__description > :last-child { margin-bottom: 0; }
.capiano-repertoire__views,
.capiano-repertoire__controls { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 1rem; }
.capiano-repertoire__tree { margin: 0; padding-left: 1.25rem; list-style: none; }
.capiano-repertoire__tree summary { cursor: pointer; font-weight: 600; padding-block: 0.25rem; }
.capiano-repertoire__item { padding: 0.2rem 0 0.2rem 1.1rem; }
.capiano-editor-preview { pointer-events: none; }

@media (max-width: 700px) {
	.capiano-events__table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.capiano-events__table,
	.capiano-events__table tbody,
	.capiano-events__table tr,
	.capiano-events__table td { display: block; width: 100%; }
	.capiano-events__table tr { box-sizing: border-box; padding: 1rem; border-bottom: 1px solid var(--capiano-border); }
	.capiano-events__table tr + tr { margin-top: 0.85rem; }
	.capiano-events__table td { box-sizing: border-box; padding: 0; border: 0; }
	.capiano-events__table td::before { display: none; content: none; }
	.capiano-events__event { margin-top: 0.45rem; }
	.capiano-events__description { margin-top: 0.35rem; }
	.capiano-events__location { margin-top: 0.8rem; padding-top: 0.6rem !important; border-top: 1px solid var(--capiano-border) !important; }
}