/* Stylesheet der Offene-Daten-Seiten: bündelt Site-Fonts und -Styles und
   ergänzt die Komponenten, die gen_daten_page.py erwartet. */
@import url("../fonts/fonts.css");
@import url("style.css?v=ecf91133");

/* Hero der Datenseiten: kompakt statt Vollbild-Hero der Startseite.
   daten.css wird nur auf den Offene-Daten-Seiten geladen, daher unscoped. */
.hero {
  min-height: 0;
  background: var(--dark);
  display: block;
}
.hero .container { position: relative; z-index: 1; }
.hero h1 { font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 800; margin-bottom: 12px; max-width: 780px; }
.hero p { font-size: 1.05rem; opacity: .88; max-width: 680px; margin-bottom: 0; }

.breadcrumb { padding: 14px 0 0; font-size: .82rem; color: var(--muted); }
.breadcrumb a { color: var(--muted); }
.breadcrumb span { margin: 0 6px; }

.prose { max-width: 820px; }
.prose h2 { margin: 36px 0 14px; font-size: 1.4rem; }
.prose h3 { margin: 28px 0 12px; font-size: 1.15rem; }
.prose p, .prose li { line-height: 1.7; }
.prose ul { padding-left: 20px; }

.info-box {
  background: var(--bg-alt);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 20px 24px;
  margin: 24px 0;
  line-height: 1.7;
  font-size: .95rem;
}
.info-box.expert { border-left: 4px solid var(--primary); }

.table-wrapper { overflow-x: auto; margin: 24px 0; -webkit-overflow-scrolling: touch; }
.compare-table { width: 100%; border-collapse: collapse; background: var(--white); }
.compare-table th {
  background: var(--dark);
  color: var(--white);
  text-align: left;
  padding: 10px 12px;
  font-weight: 700;
  white-space: nowrap;
}
.compare-table td { padding: 9px 12px; border-bottom: 1px solid var(--border); vertical-align: top; }
.compare-table tbody tr:nth-child(even) { background: var(--bg-alt); }
.compare-table a { color: var(--primary); font-weight: 600; text-decoration: none; }
.compare-table a:hover { text-decoration: underline; }
.cell-empty { color: var(--muted); }
.src-link { font-size: .78rem; font-weight: 400; color: var(--muted); }

.changelog-list { list-style: none; padding: 0; }
.changelog-list li { padding: 8px 0; border-bottom: 1px solid var(--border); }
.changelog-list li strong { margin-right: 10px; color: var(--primary); }

.related-articles { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; margin: 20px 0; }
.related-card {
  display: block;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 18px 20px;
  background: var(--white);
  text-decoration: none;
  color: inherit;
  transition: box-shadow .15s ease;
}
.related-card:hover { box-shadow: var(--shadow-hover); }
.related-card h4 { margin: 0 0 6px; color: var(--primary); font-size: 1rem; }
.related-card p { margin: 0; font-size: .88rem; color: var(--muted); line-height: 1.5; }
