header #video-background {
    position: absolute;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100;
}

.claim {
	color: white;
	margin-top: 10rem!important;
}

.claim p {
	font-size: 2.5rem;
	font-weight: 500;
	font-family: 'Clicker Script', cursive;
}

.claim address {
	font-size: 1.2rem;
}

#main .inside {
	margin-top: 2rem;
}

h1 {
	font-size: 1.8rem;
}

h2 {
	font-size: 1.4rem;
}

h3 {
	font-size: 1.2rem;
}

h4 {
	font-size: 1rem;
}

.albumart {
	max-width: 300px;
}

/* Galerie: Vorschaubilder nebeneinander, bei Platzmangel umbrechen */
.content-gallery > ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.content-gallery > ul > li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.content-gallery > ul > li > figure {
    margin: 0;
}

.content-gallery img {
    display: block;
    max-width: 100%;
    height: auto;
}

.content-download {
    margin-bottom: 1rem;
}

/* Bei kurzen Seiten den gesamten Bildschirm ausfüllen */
#wrapper {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

/* Der Inhaltsbereich nimmt den freien Platz ein */
#wrapper > #container {
  flex: 1 0 auto;
}

/* Kopf- und Fußbereich behalten ihre natürliche Höhe */
#wrapper > #header,
#wrapper > #footer {
  flex-shrink: 0;
}

.login .form-control {
  max-width: 400px;
}

.auriga-broadcasts-responsive {
    --broadcast-font-size: .875rem;
    --broadcast-border: #dee2e6;
    min-width: 0;
}

.auriga-broadcasts-responsive .auriga-broadcasts-table {
    width: 100%;
    font-size: var(--broadcast-font-size);
    line-height: 1.4;
}

/* Kompakte, vertikal zentrierte Tabellenzellen */
.auriga-broadcasts-table > :is(thead, tbody) > tr > :is(th, td) {
    padding: .45rem .5rem;
    vertical-align: middle;
}

.auriga-broadcasts-table > tbody > tr {
    border-bottom: 1px solid var(--broadcast-border);
}

/* Nummer */
.auriga-broadcasts-table > tbody > tr > td:first-child {
    width: 1%;
    white-space: nowrap;
}

/* Sendungstitel */
.auriga-broadcasts-table > tbody > tr > td:nth-child(2) {
    overflow-wrap: anywhere;
}

/* Datum, Dauer, Frequenz und Bitrate */
.auriga-broadcasts-table > tbody > tr > td:nth-child(n+3):nth-child(-n+6) {
    white-space: nowrap;
}

/* Player */
.auriga-broadcasts-table audio {
    display: block;
    width: 16rem;
    max-width: 100%;
    height: 36px;
}

.auriga-broadcasts-table audio + audio {
    margin-top: .35rem;
}

/* Kartenansicht auf Tablets und Smartphones */
@media (max-width: 991.98px) {
    .auriga-broadcasts-responsive .auriga-broadcasts-table,
    .auriga-broadcasts-table > tbody {
        display: block;
    }

    /* Tabellenkopf visuell ausblenden */
    .auriga-broadcasts-table > thead {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
    }

    .auriga-broadcasts-table > tbody > tr {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) minmax(0, 1fr);
        gap: .4rem .65rem;
        margin-bottom: .65rem;
        padding: .75rem;
        border: 1px solid var(--broadcast-border);
        border-radius: .4rem;
    }

    .auriga-broadcasts-table > tbody > tr > td {
        width: auto;
        min-width: 0;
        padding: 0;
        border: 0;
        box-shadow: none;
    }

    /* Nummer und Titel in einer gemeinsamen Kopfzeile */
    .auriga-broadcasts-table > tbody > tr > td:first-child {
        grid-column: 1;
        grid-row: 1;
        font-weight: 600;
    }

    .auriga-broadcasts-table > tbody > tr > td:nth-child(2) {
        grid-column: 2 / -1;
        grid-row: 1;
        font-weight: 600;
        margin-bottom: .2rem;
    }

    /* Metadaten in zwei Spalten */
    .auriga-broadcasts-table > tbody > tr > td:nth-child(3),
    .auriga-broadcasts-table > tbody > tr > td:nth-child(5),
    .auriga-broadcasts-table > tbody > tr > td:nth-child(7) {
        grid-column: 1 / 3;
    }

    .auriga-broadcasts-table > tbody > tr > td:nth-child(4),
    .auriga-broadcasts-table > tbody > tr > td:nth-child(6) {
        grid-column: 3;
    }

    .auriga-broadcasts-table > tbody > tr > td:nth-child(n+3)::before {
        display: block;
        margin-bottom: .1rem;
        font-size: .8em;
        font-weight: 600;
        color: #595959;
    }

    .auriga-broadcasts-table td:nth-child(3)::before {
        content: "Datum";
    }

    .auriga-broadcasts-table td:nth-child(4)::before {
        content: "Dauer";
    }

    .auriga-broadcasts-table td:nth-child(5)::before {
        content: "Frequenz";
    }

    .auriga-broadcasts-table td:nth-child(6)::before {
        content: "Bitrate";
    }

    .auriga-broadcasts-table td:nth-child(7)::before {
        content: "Quelle";
    }

    /* Optionale Playerspalte über die gesamte Kartenbreite */
    .auriga-broadcasts-table > tbody > tr > td:nth-child(8) {
        grid-column: 1 / -1;
        margin-top: .25rem;
    }

    .auriga-broadcasts-table audio {
        width: 100%;
    }

    /* Keine leere Playerfläche bei fehlender Audiodatei */
    .auriga-broadcasts-table > tbody > tr > td:nth-child(8):not(:has(audio)) {
        display: none;
    }
}

.auriga-track-navigation {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

.auriga-tracks {
    --track-font-size: .875rem;
    --track-border: #dee2e6;
    min-width: 0;
}

.auriga-tracks .auriga-tracks-table {
    width: 100%;
    font-size: var(--track-font-size);
    line-height: 1.4;
}

.auriga-tracks-table > :is(thead, tbody) > tr > :is(th, td) {
    padding: .45rem .5rem;
    vertical-align: middle;
}

.auriga-tracks-table > tbody > tr {
    border-bottom: 1px solid var(--track-border);
}

.auriga-tracks-table td {
    overflow-wrap: anywhere;
}

.auriga-tracks-table td.cover img {
    display: block;
    width: auto;
    max-width: 4rem;
    height: auto;
    max-height: 4rem;
}

/* Spalten den Kartenbereichen zuordnen.
   Die Hintergrundmusik enthält keine laufende Nummer. */
.auriga-tracks--songs td:nth-child(1) {
    grid-area: number;
}

.auriga-tracks--songs td:nth-child(2),
.auriga-tracks--background td:nth-child(1) {
    grid-area: special;
}

.auriga-tracks--songs td:nth-child(3),
.auriga-tracks--background td:nth-child(2) {
    grid-area: title;
}

.auriga-tracks--songs td:nth-child(4),
.auriga-tracks--background td:nth-child(3) {
    grid-area: artist;
    --track-label: "Interpret";
}

.auriga-tracks--songs td:nth-child(5),
.auriga-tracks--background td:nth-child(4) {
    grid-area: cover;
}

.auriga-tracks--songs td:nth-child(6),
.auriga-tracks--background td:nth-child(5) {
    grid-area: album;
    --track-label: "Album";
}

.auriga-tracks--songs td:nth-child(7),
.auriga-tracks--background td:nth-child(6) {
    grid-area: year;
    --track-label: "Jahr";
}

.auriga-tracks--songs td:nth-child(8),
.auriga-tracks--background td:nth-child(7) {
    grid-area: label;
    --track-label: "Labelcode";
}

.auriga-tracks--songs td:nth-child(9),
.auriga-tracks--background td:nth-child(8) {
    grid-area: genres;
    --track-label: "Genres";
}

@media (max-width: 991.98px) {
    .auriga-tracks .auriga-tracks-table,
    .auriga-tracks-table > tbody {
        display: block;
    }

    /* Tabellenkopf für die Kartenansicht visuell ausblenden */
    .auriga-tracks-table > thead {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
    }

    .auriga-tracks-table > tbody > tr {
        display: grid;
        grid-template-columns: 4.5rem minmax(0, 1fr);
        gap: .4rem .75rem;
        margin-bottom: .75rem;
        padding: .75rem;
        border: 1px solid var(--track-border);
        border-radius: .4rem;
    }

    .auriga-tracks--songs > table > tbody > tr {
        grid-template-areas:
            "number title"
            "special special"
            "cover artist"
            "cover album"
            "year label"
            "genres genres";
    }

    .auriga-tracks--background > table > tbody > tr {
        grid-template-areas:
            "title title"
            "special special"
            "cover artist"
            "cover album"
            "year label"
            "genres genres";
    }

    .auriga-tracks-table > tbody > tr > td {
        min-width: 0;
        padding: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
        align-self: center;
    }

    /* Leere Zusatzkennzeichnung braucht keine eigene Zeile */
    .auriga-tracks--songs td:nth-child(2):empty,
    .auriga-tracks--background td:nth-child(1):empty {
        display: none;
    }

    /* Nummer und Titel hervorheben */
    .auriga-tracks--songs td:nth-child(1),
    .auriga-tracks--songs td:nth-child(3),
    .auriga-tracks--background td:nth-child(2) {
        font-weight: 600;
        align-self: start;
    }

    /* Beschriftungen erscheinen nur bei Metadaten */
    .auriga-tracks-table td::before {
        content: var(--track-label, none);
        display: block;
        margin-bottom: .1rem;
        font-size: .8em;
        font-weight: 600;
        color: #595959;
    }

    .auriga-tracks-table td.cover {
        align-self: start;
    }

    .auriga-tracks-table td.cover img {
        max-width: 100%;
        max-height: 5rem;
    }
}

/* Cover und CD-Platzhalter einheitlich quadratisch */
.auriga-tracks .auriga-tracks-table td.cover img {
    display: block;
    width: 4rem;
    height: 4rem;
    max-width: none;
    max-height: none;
    object-fit: cover;
    object-position: center;
}

/* Titelnummer und Jahr immer zusammenhalten */
.auriga-tracks--songs td:nth-child(1),
.auriga-tracks--songs td:nth-child(7),
.auriga-tracks--background td:nth-child(6) {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}

/* Musiktitel in der Desktop-Tabelle einzeilig */
@media (min-width: 992px) {
    .auriga-tracks--songs td:nth-child(3),
    .auriga-tracks--background td:nth-child(2) {
        white-space: nowrap;
        overflow-wrap: normal;
        word-break: normal;
    }

    /* Bei sehr langen Titeln horizontal scrollen */
    .auriga-tracks {
        overflow-x: auto;
    }
}

/* In mobilen Karten dürfen lange Titel weiterhin umbrechen */
@media (max-width: 991.98px) {
    .auriga-tracks--songs td:nth-child(3),
    .auriga-tracks--background td:nth-child(2) {
        white-space: normal;
        overflow-wrap: anywhere;
    }
}
@media screen and (max-width: 768px) {
	.claim {
		margin-top: 2rem!important;
	}
	
	.claim p {
		font-size: 1.5rem;
		font-weight: 500;
		font-family: 'Clicker Script', cursive;
	}
	
	.claim address {
		font-size: 1rem;
	}
}
