/**
 * Bootstrap 5 Blocks – Design-Anpassung Apollo-Theater Siegen (Theme „apollotheater“).
 *
 * Das Theme setzt Bootstrap 5.3 schwarz-weiß um: Fließtext CapitoliumNews2 (22px), Überschriften,
 * Fettes und Buttons in MNKYBananaGrotesk, Buttons eckig in Großbuchstaben, Links in Textfarbe.
 * Einige globale Theme-Regeln kollidieren mit den Blöcken; diese Datei gleicht sie nur für die
 * Plugin-Klassen aus und ergänzt die Theaterfarben (Gelb, Grün, Orange, Blau).
 *
 * Wird nach dem Theme-CSS geladen (Priorität 200) und im Editor angehängt.
 */

/* ------------------------------------------------------------------ */
/* Farben 2022 (apollosiegen.css)                                      */
/* ------------------------------------------------------------------ */

.bg-apollo-gelb { background-color: #fced6f !important; color: #000; }
.bg-apollo-gruen { background-color: #4abaab !important; color: #000; }
.bg-apollo-orange { background-color: #f59f40 !important; color: #000; }
.bg-apollo-blau { background-color: #a4bde4 !important; color: #000; }
.bg-apollo-schwarz { background-color: #000 !important; color: #fff; }
.bg-apollo-schwarz a:not(.btn) { color: #fff; }

.alert-apollo-gelb,
.alert-apollo-gruen,
.alert-apollo-orange,
.alert-apollo-blau {
	--bs-alert-color: #000;
	--bs-alert-border-color: transparent;
	--bs-alert-link-color: #000;
	color: #000;
	border-color: transparent;
}
.alert-apollo-gelb { --bs-alert-bg: #fced6f; background-color: #fced6f; }
.alert-apollo-gruen { --bs-alert-bg: #4abaab; background-color: #4abaab; }
.alert-apollo-orange { --bs-alert-bg: #f59f40; background-color: #f59f40; }
.alert-apollo-blau { --bs-alert-bg: #a4bde4; background-color: #a4bde4; }

/* ------------------------------------------------------------------ */
/* Überschriften: Das Theme setzt h4 als Kasten (Padding, 50 % breit,   */
/* min. 400 px, Großbuchstaben) und allen Überschriften margin-bottom 0. */
/* In den Blöcken wären Cards, FAQ und Tabs damit zu breit/ohne Abstand. */
/* ------------------------------------------------------------------ */

[class*="wp-block-bs5-"] :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6),
.bs5-teaser :is(h3, .h5),
.bs5-post-teasers__heading {
	margin-bottom: 0.5em;
	line-height: 1.1 !important;
}
[class*="wp-block-bs5-"] :is(h4, .h4) {
	width: auto;
	min-width: 0;
	max-width: none;
	padding: 0;
	font-size: 1.1em;
	text-transform: none;
}
@media (max-width: 767px) {
	[class*="wp-block-bs5-"] :is(h5, .h5) {
		max-width: none;
	}
}

/* ------------------------------------------------------------------ */
/* Buttons: Theme-Stil (eckig, Banana Grotesk, Großbuchstaben) bleibt.  */
/* Gefüllte Buttons in Schwarz, Umriss mit schwarzem Rahmen.           */
/* ------------------------------------------------------------------ */

.wp-block-bs5-button .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5em;
	min-height: 48px; /* Tippfläche wie im Redesign */
	padding: 0.55em 0.85em;
	font-size: 0.75em;
	line-height: 1.2;
}
.wp-block-bs5-button .btn.w-100 {
	display: flex;
}
.wp-block-bs5-button .btn:focus-visible {
	outline: 3px solid #000;
	outline-offset: 2px;
	box-shadow: 0 0 0 6px #fff;
}
.wp-block-bs5-button .btn-primary,
.wp-block-bs5-button .btn-dark {
	--bs-btn-bg: #000;
	--bs-btn-border-color: #000;
	--bs-btn-color: #fff;
	--bs-btn-hover-bg: #fff;
	--bs-btn-hover-border-color: #000;
	--bs-btn-hover-color: #000;
	--bs-btn-active-bg: #fff;
	--bs-btn-active-border-color: #000;
	--bs-btn-active-color: #000;
}
.wp-block-bs5-button .btn-outline-primary,
.wp-block-bs5-button .btn-outline-dark {
	--bs-btn-color: #000;
	--bs-btn-border-color: #000;
	--bs-btn-border-width: 2px;
	--bs-btn-hover-bg: #000;
	--bs-btn-hover-border-color: #000;
	--bs-btn-hover-color: #fff;
	--bs-btn-active-bg: #000;
	--bs-btn-active-border-color: #000;
	--bs-btn-active-color: #fff;
}
.wp-block-bs5-button .btn:hover {
	opacity: 1; /* Theme: a:hover { opacity: .75 } */
}
.wp-block-bs5-button .btn-link {
	padding-left: 0;
	padding-right: 0;
	color: #000;
	text-decoration: underline dotted;
	text-underline-offset: 0.2em;
}

/* ------------------------------------------------------------------ */
/* Cards, Alert, Jumbotron: eckig wie das Theme                        */
/* ------------------------------------------------------------------ */

.wp-block-bs5-card,
.wp-block-bs5-card .card-img-top,
.wp-block-bs5-alert,
.wp-block-bs5-jumbotron,
.bs5-toc.card,
.bs5-teaser.card,
.bs5-teaser .card-img-top {
	border-radius: 0;
}
.wp-block-bs5-card {
	--bs-card-border-color: #000;
}
.wp-block-bs5-card .card-text,
.wp-block-bs5-card .card-body > p {
	font-size: 0.85em;
}
.bs5-card-icon {
	font-size: 2rem;
}
.wp-block-bs5-jumbotron:not([class*="bg-"]):not(.bs5-jumbotron--image) {
	background-color: #fced6f;
}

/* ------------------------------------------------------------------ */
/* Akkordeon (FAQ): Fragen wie Überschriften, nicht als Button-Text     */
/* ------------------------------------------------------------------ */

.bs5-accordion > .bs5-accordion-item {
	border: 0;
	border-bottom: 1px solid #000;
	border-radius: 0;
	background: transparent;
}
.bs5-accordion > .bs5-accordion-item:first-child {
	border-top: 1px solid #000;
}
.bs5-accordion .card-header {
	padding: 0;
	background: transparent;
	border: 0;
}
.bs5-accordion .card-header > * {
	margin: 0;
	padding: 0;
	width: auto;
	min-width: 0;
	font-size: 1em;
	text-transform: none;
}
.bs5-accordion .card-header .btn {
	position: relative;
	padding: 0.75em 2.5em 0.75em 0;
	color: #000;
	font-family: "MNKYBananaGrotesk", Arial, Helvetica, sans-serif;
	font-weight: 600;
	font-size: 0.9em;
	text-transform: none;
	text-decoration: none;
	white-space: normal;
}
.bs5-accordion .card-header .btn::after {
	content: "−";
	position: absolute;
	right: 0.25em;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.4em;
}
.bs5-accordion .card-header .btn.collapsed::after {
	content: "+";
}
.bs5-accordion .card-header .btn:focus-visible {
	outline: 2px solid #000;
	outline-offset: 2px;
	box-shadow: none;
}
.bs5-accordion .card-body {
	padding: 0 0 1em;
	font-size: 0.85em;
}

/* ------------------------------------------------------------------ */
/* Inhaltsverzeichnis, Teaser, Tabs, Mehr anzeigen                     */
/* ------------------------------------------------------------------ */

.bs5-toc a {
	text-decoration: none;
}
.bs5-toc a:hover {
	text-decoration: underline dotted;
}
.bs5-toc__title {
	font-family: "MNKYBananaGrotesk", Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	font-size: 0.75em;
}
.bs5-teaser .card-title a,
.bs5-teaser__title a {
	text-decoration: none;
}
.bs5-teaser__more,
.bs5-teaser .card-link {
	font-family: "MNKYBananaGrotesk", Arial, Helvetica, sans-serif;
	font-size: 0.7em;
	text-transform: uppercase;
	color: #000;
}

.bs5-tabs__nav {
	--bs-nav-link-color: #000;
	--bs-nav-link-hover-color: #000;
	--bs-nav-tabs-border-color: #000;
	--bs-nav-tabs-link-active-color: #000;
	--bs-nav-tabs-link-active-border-color: #000 #000 #fff;
	--bs-nav-tabs-border-radius: 0;
	--bs-nav-pills-border-radius: 0;
	--bs-nav-pills-link-active-bg: #000;
	--bs-nav-pills-link-active-color: #fff;
}
.bs5-tabs__nav .nav-link {
	font-family: "MNKYBananaGrotesk", Arial, Helvetica, sans-serif;
	font-size: 0.75em;
	text-transform: uppercase;
}

.bs5-expand__toggle .btn {
	color: #000;
	text-decoration: underline dotted;
}
.bs5-expand__toggle .btn:hover {
	opacity: 0.75;
}

/* ------------------------------------------------------------------ */
/* Karussell und Slider-Pfeile: schwarz-weiß, Tippfläche ≥ 44 px        */
/* ------------------------------------------------------------------ */

.bs5-carousel .carousel-indicators [data-bs-target] {
	width: 12px;
	height: 12px;
	border-radius: 50%;
}
.bs5-carousel .carousel-caption h3 {
	font-size: 1.2em;
}
.bs5-scroller-btn {
	min-width: 44px;
	min-height: 44px;
	border-radius: 0;
}
.bs5-scroller-nav__btn.btn-outline-dark {
	--bs-btn-border-color: #000;
	--bs-btn-hover-bg: #000;
}

/* ------------------------------------------------------------------ */
/* Kleinteile                                                          */
/* ------------------------------------------------------------------ */

.bs5-faq-search__input {
	border-radius: 0;
	border-color: #000;
}
.bs5-summary--filled {
	background-color: #fced6f;
}
.bs5-route__links .btn,
.bs5-facts .btn {
	border-radius: 0;
}

/* ------------------------------------------------------------------ */
/* Redesign 2026: Schrift der neuen Stile, Abo-Karten, Karussell-Band   */
/* ------------------------------------------------------------------ */

.is-style-bs5-price,
.is-style-bs5-label,
.bs5-tag,
.is-style-bs5-chips a,
.is-style-bs5-tags > li,
.is-style-bs5-bar,
.is-style-bs5-segment > .bs5-tabs__nav .nav-link,
.wp-block-table.is-style-bs5-prices thead,
.wp-block-table.is-style-bs5-prices tbody tr > :first-child,
.bs5-band-ctl,
.bs5-band-ctl__btn {
	font-family: "MNKYBananaGrotesk", Arial, Helvetica, sans-serif;
	font-weight: 600;
}
.is-style-bs5-price {
	font-size: 1.55em;
}
.is-style-bs5-chips a,
.is-style-bs5-tags > li {
	font-size: 0.73em;
	text-transform: uppercase;
}
.is-style-bs5-chips a {
	color: #000;
}
.is-style-bs5-bar {
	font-size: 0.77em;
}
.is-style-bs5-segment > .bs5-tabs__nav .nav-link {
	font-size: 1em;
	text-transform: none;
}
.wp-block-table.is-style-bs5-prices tbody tr > :first-child {
	font-size: 0.8em;
}

/* Abo-Karte: farbige Fläche ohne Rahmen, Häkchen-Liste wie im Redesign */
.wp-block-bs5-card.is-style-bs5-offer .card-text,
.wp-block-bs5-card.is-style-bs5-offer .card-body > p {
	font-size: 1em;
}
.wp-block-bs5-card.is-style-bs5-offer .card-body > :is(h2, h3, .h2, .h3) {
	font-size: 2em;
}
.wp-block-bs5-card.is-style-bs5-offer .is-style-bs5-price {
	font-size: 1.55em;
}

/* Karussell-Band: Schrift im Band wie das Redesign (Capitolium groß, Hervorhebungen in Banana) */
.is-style-bs5-band .carousel-caption :is(b, strong) {
	font-family: "MNKYBananaGrotesk", Arial, Helvetica, sans-serif;
	font-weight: 600;
}
.is-style-bs5-band .carousel-caption :is(h2, h3) {
	font-size: 1em;
}

/* Das Theme stapelt am Handy jede Tabelle (td { float: left; width: 100% }, thead ausgeblendet),
   gedacht für den Spielplan. Tabellen-Blöcke bleiben Tabellen und lassen sich seitlich wischen. */
@media (max-width: 767px) {
	.wp-block-table thead {
		display: table-header-group;
	}
	.wp-block-table td {
		float: none;
		width: auto;
	}
}
@media (max-width: 767px) {
	.wp-block-bs5-card.is-style-bs5-offer .card-body > :is(h2, h3, .h2, .h3) {
		font-size: 1.5em;
	}
}
