/* D17: geprüfte Restkorrekturen; gemeinsame Regeln für Deutsch und Englisch. */
/* Befund 3 */
@media screen {
  html body .topbar, html body .topbar.is-scrolled { background:#100d0a !important; }
}
/* Befund 4 */
html body[data-d17-page="labor"] :is(.vstage,.hero .bg) {
  left:0 !important; right:auto !important; transform:none !important;
  width:100% !important; max-width:100% !important; min-width:0 !important;
}
/* Befund 8: Faktorenkarten sind bereits Buttons; ihre Hinweise bleiben darin. */
html body button.bs-tile-hint {
  position:static !important; inset:auto !important; margin-top:16px !important;
  height:auto !important; min-height:44px; pointer-events:auto !important; padding:8px 12px;
  border:1px solid #f5d778; background:#100d0a !important; color:#f5d778 !important;
  font:inherit; cursor:pointer;
}
html body button.bs-tile-hint:focus-visible { outline:3px solid #f5d778; outline-offset:3px; }
/* Befund 9 */
html body .kk-label { display:none !important; }
html body .kk-nodes {
  position:relative !important; inset:auto !important; display:grid !important;
  grid-template-columns:repeat(5,minmax(44px,1fr)); gap:6px; height:auto !important;
  margin-top:8px; pointer-events:auto !important;
}
html body .kk-nodes :is(.kk-btn,.d17-kk-ball) {
  position:relative !important; inset:auto !important; transform:none !important;
  width:100% !important; height:auto !important; min-width:44px; min-height:58px !important;
  margin:0; padding:6px 2px; border:1px solid #f5d778; border-radius:6px;
  background:#100d0a !important; color:#f5d778 !important;
  font:14px/1.4 var(--serif-text); overflow-wrap:anywhere; cursor:pointer;
}
html body .kk-nodes button:focus-visible { outline:3px solid #f5d778; outline-offset:3px; }
/* Befund 10 */
html body .d17-question-email {
  flex-basis:100%; text-align:center; min-height:54px;
  background:#f5d778 !important; color:#100d0a !important;
}
/* Befund 11 */
html body .bfl-ctrl output {
  display:block; font-size:16px; line-height:1.4; color:#f5d778; font-variant-numeric:tabular-nums;
}
/* Die ruhende Dekoration enthält keine Vergleichsdaten; nur die berechnete Kurve zeigen. */
html body #ballflug-labor #bfl-ruhe { display:none !important; }
/* Befund 13 */
html body a.d17-research-link, html body .bs-vortrag-tuer a.d17-research-link {
  display:flex !important; align-items:center; justify-content:center;
  gap:12px; width:100%; box-sizing:border-box;
}
html body .d17-research-link .d17-arrow { flex-shrink:0; }
/* Befund 15 */
html body .topnav a, html body .langswitch button, html body .topbar .back {
  font-size:16px !important; font-weight:500 !important;
}
html body .topnav a[aria-current="page"] { text-decoration:underline !important; text-underline-offset:5px; }
/* Befund 17 */
html body .contact-grid { align-items:start !important; }
/* Befund 18: 55ch berücksichtigt die breiten Ziffern der vorhandenen Schrift. */
html body p:not(#ki-schild-r153 p):not([class*="ki-"]):not([class*="caption"]):not(.ai-honesty),
html body p.ki-klarstellung {
  max-width:55ch !important; line-height:1.6 !important; text-shadow:none !important;
}
/* Befund 19 */
html body :is(section,.hero) { padding-block:64px !important; }
html body :is(.hero,.hero-grid) { height:auto !important; min-height:0 !important; }
html body .hero-rhs { min-height:0 !important; }
html body :is(.vstage,.mband,.h2-cine-sec):not(:has(.vf-panel)) {
  min-height:0 !important; height:auto !important; padding-block:0 !important;
  aspect-ratio:16/9; max-height:45svh !important;
}
@media (max-width:768px) {
  html body :is(section,.hero) { padding-block:40px !important; }
  html body :is(.vstage,.mband,.h2-cine-sec):not(:has(.vf-panel)) {
    padding:0 !important; aspect-ratio:16/9; height:auto !important; max-height:45svh !important;
  }
}
/* Befund 28 */
html body .flutlicht-bar .fl-count .label { letter-spacing:.03em !important; }
/* Befund 29 */
html body a.d17-faq-target {
  position:static !important; display:inline-flex; align-items:center; min-height:44px;
  margin-top:12px; color:#f5d778 !important; opacity:1 !important;
  text-decoration:underline; pointer-events:auto !important;
}
/* Befund 30 */
html body nav.d17-footer-links {
  display:flex !important; flex-wrap:wrap; align-items:center; gap:12px 16px;
  white-space:normal !important; margin-block:12px;
}
html body nav.d17-footer-links > a {
  display:inline-flex !important; align-items:center; min-height:44px; padding:4px 0 !important;
  color:#eee7da !important; text-decoration:underline; text-underline-offset:3px;
}
/* Befund 32 */
html body .siegel-band .siegel-chip { color:#e8e5df !important; filter:none !important; opacity:1 !important; }
html body .siegel-band .siegel-chip > span:first-child {
  display:inline-flex !important; align-items:center; justify-content:center;
  width:44px !important; height:44px !important; min-width:44px; flex:0 0 44px !important;
  color:#e8e5df !important;
}
html body .siegel-band .siegel-chip img {
  width:40px !important; height:40px !important; object-fit:contain; opacity:1 !important; filter:none !important;
}
html body .siegel-band .siegel-chip :is(.siegel-chip-long,.siegel-chip-short) {
  color:#e8e5df !important; text-decoration:underline; text-underline-offset:3px;
}
/* Befund 33 */
html body .gallery [data-full="img/ab56eda3_image-768x512.jpg"] img {
  height:auto !important; aspect-ratio:3/2; object-fit:contain !important; object-position:50% 0%;
}

/* Befund 8 */
html body .factor-card .bs-tile-hint { display:block !important; position:static !important; }

/* Befund 19 */
/* Beschriftete Medien wachsen mit ihrem Text; keine Titel werden abgeschnitten. */
html body .vstage:has(> .cap):not(:has(.vf-panel)) { height:auto !important; max-height:none !important; min-height:0 !important; aspect-ratio:auto !important; padding-block:0 !important; }
html body .vstage:has(> .cap):not(:has(.vf-panel)) > .cap { position:relative !important; inset:auto !important; margin-top:128px !important; margin-bottom:0 !important; padding:24px !important; }
