/* Typografische Buchcover und Thementöne der Assurbanipal Bibliothek. Nur Tokens und color-mix. */
.bib-cover {
  --cover-bg: var(--lapis);
  --cover-fg: var(--auf-tief);
  position: relative; aspect-ratio: 2 / 3; container-type: inline-size;
  border-radius: var(--r-karte); overflow: hidden;
  background: var(--cover-bg); color: var(--cover-fg);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--cover-fg) 14%, transparent);
}
/* Maße in cqi: Das Cover skaliert im Raster, in der Liste und im Dialog gleich */
.bib-cover-innen { position: absolute; inset: 0; display: grid; grid-template-rows: auto 1fr auto; gap: 0.5rem; padding: 9cqi 8cqi 8cqi 14cqi; }
/* Falz wie bei einem gebundenen Buch */
.bib-cover-innen::before { content: ''; position: absolute; inset: 0 auto 0 6.5cqi; width: 1px; background: color-mix(in srgb, var(--cover-fg) 30%, transparent); }
.bib-cover-thema { display: flex; align-items: center; gap: 0.4em; font: 650 clamp(0.6875rem, 5.4cqi, 0.75rem) / 1.2 var(--font-display); font-stretch: 100%; letter-spacing: 0.1em; text-transform: uppercase; opacity: 0.88; }
.bib-cover-thema svg { width: 1.3em; height: 1.3em; flex: none; }
.bib-stern { flex: none; width: 0.95em; height: 0.95em; background: currentColor; clip-path: polygon(50% 0, 62% 38%, 100% 50%, 62% 62%, 50% 100%, 38% 62%, 0 50%, 38% 38%); }
.bib-cover-titel {
  align-self: end; font-family: var(--font-display); font-stretch: 80%; font-weight: 720; line-height: 1.06; letter-spacing: -0.01em;
  font-size: clamp(0.95rem, 10.5cqi, 2.4rem);
  hyphens: auto; hyphenate-limit-chars: 11 4 4; overflow-wrap: break-word; text-wrap: balance;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 7; line-clamp: 7; overflow: hidden;
}
.bib-laenge-k .bib-cover-titel { font-size: clamp(1.1rem, 13.5cqi, 3rem); }
.bib-laenge-l .bib-cover-titel { font-size: clamp(0.85rem, 8.4cqi, 1.9rem); }
.bib-cover-autor { font-size: clamp(0.6875rem, 6.2cqi, 0.9375rem); line-height: 1.25; font-weight: 550; opacity: 0.92; padding-top: 0.5em; border-top: 1px solid color-mix(in srgb, var(--cover-fg) 30%, transparent); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; }

/* Ton je Thema: ausschließlich Tokens und daraus gemischte Tönungen */
.bib-ton-geschichte { --cover-bg: var(--lapis); --cover-fg: var(--auf-tief); }
.bib-ton-kinder-jugend { --cover-bg: var(--blau); --cover-fg: var(--auf-akzent); }
.bib-ton-romane-erzaehlungen { --cover-bg: var(--navy); --cover-fg: var(--auf-tief); }
.bib-ton-sprache { --cover-bg: color-mix(in srgb, var(--blau) 26%, var(--flaeche)); --cover-fg: var(--text); }
.bib-ton-gesellschaft-wissen { --cover-bg: var(--blau-tief); --cover-fg: var(--auf-tief); }
.bib-ton-kultur-kunst-musik { --cover-bg: color-mix(in srgb, var(--navy) 55%, var(--blau)); --cover-fg: var(--auf-tief); }
.bib-ton-sayfo-verfolgung { --cover-bg: color-mix(in srgb, var(--auf-akzent) 82%, var(--navy)); --cover-fg: var(--auf-tief); }
.bib-ton-religion { --cover-bg: color-mix(in srgb, var(--navy) 16%, var(--flaeche)); --cover-fg: var(--text); }
.bib-ton-pdf { --cover-bg: var(--flaeche-2); --cover-fg: var(--text); }
.bib-ton-ohne { --cover-bg: var(--lapis-2); --cover-fg: var(--auf-tief); }

/* Kleiner Farbstreifen für Listen und Register, gleiche Töne */
.bib-farbe { display: block; flex: none; width: 0.875rem; height: 1.75rem; border-radius: 4px; background: var(--cover-bg, var(--lapis)); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--cover-fg, var(--auf-tief)) 18%, transparent); }
