/* FubaSport Section Unified - Phase 7b */
/* Nur auf Bundesliga, 2. Bundesliga, EM, Amateurfußball und Fußballregeln eingebunden. */

:root {
  --fsu-bg-1: #07120d;
  --fsu-bg-2: #0b160f;
  --fsu-bg-3: #050905;
  --fsu-text: #f6f8ef;
  --fsu-muted: rgba(246,248,239,0.76);
  --fsu-soft: rgba(246,248,239,0.58);
  --fsu-panel: rgba(255,255,255,0.078);
  --fsu-panel-2: rgba(255,255,255,0.108);
  --fsu-border: rgba(255,255,255,0.145);
  --fsu-gold: #ffb81c;
  --fsu-green: #20e3a2;
}

html,
body {
  background:
    radial-gradient(circle at top left, rgba(32,227,162,.14), transparent 34rem),
    radial-gradient(circle at top right, rgba(255,184,28,.10), transparent 30rem),
    linear-gradient(180deg, var(--fsu-bg-1) 0%, var(--fsu-bg-2) 48%, var(--fsu-bg-3) 100%) !important;
  color: var(--fsu-text) !important;
}

/* Hauptflächen */
main,
section,
.fs-page,
.fs-topic-page,
.fs-main,
.fs-content,
.fs-section,
.fs-topic-main,
.fs-rules-main {
  background: transparent !important;
  color: var(--fsu-text) !important;
}

/* Hero / Intro */
.fs-hero,
.fs-topic-hero,
.fs-page-hero,
.fs-wiki-hero,
.hero,
.page-hero,
.topic-hero,
main > section:first-of-type {
  background:
    linear-gradient(145deg, rgba(255,255,255,.09), rgba(255,255,255,.045)) !important;
  border: 1px solid var(--fsu-border) !important;
  border-radius: 28px !important;
  box-shadow: 0 28px 80px rgba(0,0,0,.28) !important;
  color: var(--fsu-text) !important;
}

/* Karten / Boxen / Datenbereiche */
.fs-card,
.fs-info-card,
.fs-topic-card,
.fs-news-card,
.fs-data-block,
.fs-note-box,
.fs-mini-stat,
.fs-stat-card,
.fs-wiki-card,
.fs-rule-card,
.fs-term-card,
.fs-competition-card,
.card,
.news-card,
.article-card,
.info-card,
.topic-card,
.panel,
.box,
.tile,
details,
article,
aside {
  background:
    linear-gradient(145deg, rgba(255,255,255,.085), rgba(255,255,255,.045)) !important;
  border: 1px solid var(--fsu-border) !important;
  color: var(--fsu-text) !important;
  box-shadow: 0 18px 50px rgba(0,0,0,.22) !important;
}

/* Light-Polish helle Flächen neutralisieren */
[class*="bg-white"],
[class*="bg-slate"],
[class*="bg-gray"],
[class*="bg-zinc"],
[class*="bg-neutral"],
[class*="bg-stone"],
[style*="background: white"],
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background:#ffffff"],
[style*="background: #ffffff"] {
  background: rgba(255,255,255,.075) !important;
  color: var(--fsu-text) !important;
}

/* Überschriften */
h1,
h2,
h3,
h4,
h5,
h6,
strong,
summary,
.fs-title,
.fs-headline,
.fs-card-title {
  color: #ffffff !important;
}

/* Texte */
p,
li,
td,
th,
label,
.fs-text,
.fs-description,
.fs-intro,
.fs-lead,
.fs-note,
.fs-meta {
  color: var(--fsu-muted) !important;
}

/* Kleine Labels */
small,
.fs-kicker,
.fs-label,
.fs-pill,
.fs-pill-muted,
.fs-badge,
.badge,
.pill,
.tag,
.chip {
  color: var(--fsu-muted) !important;
}

/* Kicker grün */
.fs-kicker,
.fs-topic-kicker,
.fs-section-kicker,
.fs-page-kicker {
  color: var(--fsu-green) !important;
}

/* Links */
main a,
section a {
  color: var(--fsu-gold) !important;
}

/* Buttons / Inputs */
button,
select,
input,
textarea,
.fs-filter,
.fs-filter-btn,
.fs-chip,
.fs-pill,
.fs-pill-muted {
  background: rgba(3,9,6,.82) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.18) !important;
}

input::placeholder,
textarea::placeholder {
  color: rgba(255,255,255,.45) !important;
}

select option {
  background: #07120d !important;
  color: #ffffff !important;
}

/* Aktive Elemente / CTA */
button.active,
.btn.active,
.button.active,
.fs-btn-primary,
.fs-button-primary,
.active,
.is-active,
[aria-current="page"] {
  background: var(--fsu-gold) !important;
  color: #07120d !important;
  border-color: var(--fsu-gold) !important;
}

/* Tabellen */
table,
thead,
tbody,
tr,
td,
th {
  background: transparent !important;
  color: var(--fsu-muted) !important;
  border-color: var(--fsu-border) !important;
}

/* Page-News-Block */
[data-fs-page-news],
[data-fs-page-news] .fs-page-news {
  background: transparent !important;
  color: var(--fsu-text) !important;
}

[data-fs-page-news] .fs-page-news__inner {
  background:
    linear-gradient(145deg, rgba(255,255,255,.085), rgba(255,255,255,.045)) !important;
  border: 1px solid var(--fsu-border) !important;
  box-shadow: 0 28px 80px rgba(0,0,0,.28) !important;
  color: var(--fsu-text) !important;
}

[data-fs-page-news] .fs-page-news__kicker {
  color: var(--fsu-green) !important;
  background: transparent !important;
}

[data-fs-page-news] .fs-page-news__title,
[data-fs-page-news] .fs-page-news__headline {
  color: #ffffff !important;
}

[data-fs-page-news] .fs-page-news__intro,
[data-fs-page-news] .fs-page-news__text,
[data-fs-page-news] .fs-page-news__meta {
  color: var(--fsu-muted) !important;
}

[data-fs-page-news] .fs-page-news__card {
  background:
    linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.04)) !important;
  border: 1px solid var(--fsu-border) !important;
  color: var(--fsu-text) !important;
  box-shadow: 0 18px 50px rgba(0,0,0,.22) !important;
}

[data-fs-page-news] .fs-page-news__more {
  color: var(--fsu-gold) !important;
}

[data-fs-page-news] .fs-page-news__empty {
  background: rgba(255,255,255,.075) !important;
  border: 1px dashed rgba(255,255,255,.16) !important;
  color: var(--fsu-muted) !important;
}

/* Fußballregeln / Such- und Wiki-Bereiche */
.wiki-search,
.fs-wiki-search,
.rules-search,
.search-box,
.filter-box,
.filter-row {
  background:
    linear-gradient(145deg, rgba(255,255,255,.085), rgba(255,255,255,.045)) !important;
  border: 1px solid var(--fsu-border) !important;
  color: var(--fsu-text) !important;
}

mark,
.highlight {
  background: rgba(255,184,28,.22) !important;
  color: #ffffff !important;
}

/* harte Lesbarkeits-Notbremse innerhalb main */
main * {
  border-color: rgba(255,255,255,.145);
}
