/*
Theme Name: Fire Devil Fußball
Theme URI: https://example.com/
Author: Fire Devil
Description: Individuelles WordPress-Theme für die Hobby-Fußballmannschaft Fire Devil. Ohne Elementor/Elementor Pro.
Version: 2.6.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: firedevil
*/

:root {
  --fd-red: #ff1a12;
  --fd-red-dark: #b70d0a;
  --fd-black: #070707;
  --fd-charcoal: #121212;
  --fd-card: #1a1a1a;
  --fd-gray: #9a9a9a;
  --fd-light: #f4f4f4;
  --fd-line: rgba(255,255,255,.09);
  --fd-shadow: 0 18px 45px rgba(0,0,0,.35);
  --fd-radius: 18px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--fd-black);
  color: var(--fd-light);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
a:hover { color: var(--fd-red); }
img { max-width: 100%; height: auto; display: block; }
button, input, textarea, select { font: inherit; }

.fd-container { width: min(1180px, calc(100% - 36px)); margin: 0 auto; }
.fd-section { padding: 84px 0; position: relative; }
.fd-section--alt { background: #0d0d0d; }
.fd-section-title { margin: 0 0 10px; font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1; text-transform: uppercase; letter-spacing: -.03em; font-weight: 950; }
.fd-section-title span, .fd-accent { color: var(--fd-red); }
.fd-kicker { color: var(--fd-red); text-transform: uppercase; letter-spacing: .18em; font-weight: 800; font-size: .78rem; margin-bottom: 12px; }
.fd-muted { color: #b8b8b8; }
.fd-grid { display: grid; gap: 24px; }
.fd-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fd-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.fd-site-header {
  position: relative; z-index: 1000;
  background: rgba(7,7,7,.9); backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--fd-line);
}
.fd-header-inner { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.fd-brand { display: flex; align-items: center; gap: 12px; font-weight: 950; text-transform: uppercase; letter-spacing: .03em; }
.fd-brand-logo { width: 58px; height: 58px; object-fit: contain; filter: drop-shadow(0 0 12px rgba(255,26,18,.18)); }
.fd-brand-text small { display:block; color: var(--fd-red); font-size: .62rem; letter-spacing: .22em; line-height: 1.1; }
.fd-brand-text strong { font-size: 1.05rem; }
.fd-nav ul { display:flex; list-style:none; gap: 6px; padding:0; margin:0; align-items:center; }
.fd-nav a { display:block; padding: 12px 13px; font-weight:800; font-size:.93rem; border-radius:10px; }
.fd-nav a:hover, .fd-nav .current-menu-item > a { background: rgba(255,26,18,.1); color: var(--fd-red); }
.fd-menu-toggle { display:none; background:transparent; border:1px solid var(--fd-line); color:#fff; border-radius:10px; padding:9px 11px; cursor:pointer; }

.fd-hero {
  min-height: 730px; display:flex; align-items:center; overflow:hidden; position:relative;
  background:
    radial-gradient(circle at 75% 40%, rgba(255,26,18,.24), transparent 28%),
    radial-gradient(circle at 18% 78%, rgba(255,26,18,.13), transparent 24%),
    linear-gradient(115deg, #050505 0%, #0d0d0d 55%, #130403 100%);
}
.fd-hero::before, .fd-hero::after { content:""; position:absolute; border-radius:50%; filter: blur(30px); opacity:.35; pointer-events:none; }
.fd-hero::before { width:380px; height:380px; background:var(--fd-red); right:-180px; top:40px; }
.fd-hero::after { width:260px; height:260px; background:#ff6a00; left:-140px; bottom:30px; }
.fd-hero-inner { display:grid; grid-template-columns: 1.1fr .9fr; gap: 50px; align-items:center; position:relative; z-index:2; padding:70px 0; }
.fd-hero h1 { margin:0; font-size: clamp(3.5rem, 8.3vw, 7.8rem); line-height:.82; text-transform:uppercase; font-weight:1000; letter-spacing:-.065em; }
.fd-hero h1 span { color:var(--fd-red); text-shadow: 0 0 30px rgba(255,26,18,.2); }
.fd-hero p { max-width:650px; color:#c9c9c9; font-size:1.12rem; margin:24px 0 30px; }
.fd-hero-logo-wrap { position:relative; display:flex; justify-content:center; }
.fd-hero-logo { width:min(480px, 100%); filter: drop-shadow(0 25px 55px rgba(0,0,0,.55)) drop-shadow(0 0 28px rgba(255,26,18,.18)); animation: fd-float 5s ease-in-out infinite; }
@keyframes fd-float { 50% { transform: translateY(-10px); } }
.fd-actions { display:flex; gap:12px; flex-wrap:wrap; }
.fd-btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 20px; border-radius:12px; font-weight:900; text-transform:uppercase; letter-spacing:.04em; border:1px solid transparent; transition:.2s ease; }
.fd-btn--primary { background:var(--fd-red); color:#fff; box-shadow:0 12px 28px rgba(255,26,18,.22); }
.fd-btn--primary:hover { background:#ff3a34; color:#fff; transform:translateY(-2px); }
.fd-btn--ghost { border-color:rgba(255,255,255,.18); background:rgba(255,255,255,.03); }
.fd-btn--ghost:hover { border-color:var(--fd-red); color:#fff; transform:translateY(-2px); }

.fd-match-strip { margin-top:-46px; position:relative; z-index:5; }
.fd-match-card { background:linear-gradient(135deg, #171717, #0f0f0f); border:1px solid var(--fd-line); box-shadow:var(--fd-shadow); border-radius:var(--fd-radius); padding:24px; display:grid; grid-template-columns: 180px 1fr auto; gap:24px; align-items:center; }
.fd-match-label { color:var(--fd-red); text-transform:uppercase; font-size:.75rem; letter-spacing:.14em; font-weight:900; }
.fd-match-teams { font-size:clamp(1.35rem,3vw,2.1rem); font-weight:950; text-transform:uppercase; line-height:1.05; }
.fd-match-meta { color:#aaa; margin-top:6px; }
.fd-score { font-size:2.5rem; font-weight:1000; letter-spacing:-.05em; white-space:nowrap; }


/* Startseite v1.1: Fußball-Matchcenter */
.fd-match-center {
  margin-top: -52px;
  position: relative;
  z-index: 5;
}
.fd-match-center-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.fd-home-match {
  position: relative;
  overflow: hidden;
  min-height: 250px;
  padding: 26px;
  border: 1px solid var(--fd-line);
  border-radius: var(--fd-radius);
  background: linear-gradient(145deg, #171717 0%, #0c0c0c 72%);
  box-shadow: var(--fd-shadow);
}
.fd-home-match::after {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  right: -85px;
  bottom: -100px;
  background: rgba(255,26,18,.16);
  filter: blur(8px);
  pointer-events: none;
}
.fd-home-match--last { border-top: 3px solid #707070; }
.fd-home-match--next { border-top: 3px solid var(--fd-red); }
.fd-home-match-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:28px; }
.fd-home-match-label { color: var(--fd-red); font-size: .73rem; letter-spacing: .17em; font-weight: 950; text-transform: uppercase; }
.fd-home-match-date { color:#9e9e9e; font-size:.88rem; text-align:right; }
.fd-home-match-teams { display:grid; grid-template-columns:1fr auto 1fr; gap:14px; align-items:center; position:relative; z-index:2; }
.fd-home-team { font-size: clamp(1.15rem, 2.1vw, 1.65rem); line-height:1.08; font-weight:950; text-transform:uppercase; }
.fd-home-team:last-child { text-align:right; }
.fd-home-score { min-width:92px; text-align:center; color:#fff; font-size:clamp(2rem,4vw,3.1rem); font-weight:1000; letter-spacing:-.06em; }
.fd-home-vs { min-width:72px; text-align:center; color:var(--fd-red); font-size:1.15rem; font-weight:1000; text-transform:uppercase; }
.fd-home-match-footer { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:28px; padding-top:18px; border-top:1px solid var(--fd-line); position:relative; z-index:2; }
.fd-home-match-venue { color:#aaa; font-size:.88rem; }
.fd-result-badge { display:inline-flex; align-items:center; min-height:30px; padding:0 10px; border-radius:999px; font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; font-weight:950; }
.fd-result-badge--win { color:#aaf5bf; background:rgba(64,200,104,.12); border:1px solid rgba(64,200,104,.24); }
.fd-result-badge--draw { color:#e4e4e4; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); }
.fd-result-badge--loss { color:#ffaaa6; background:rgba(255,26,18,.11); border:1px solid rgba(255,26,18,.24); }
.fd-empty-match { display:flex; min-height:110px; align-items:center; color:#c9c9c9; font-size:1.15rem; font-weight:850; text-transform:uppercase; position:relative; z-index:2; }
.fd-match-center-actions { display:flex; justify-content:center; margin-top:18px; }

.fd-card { background:linear-gradient(180deg,#191919,#111); border:1px solid var(--fd-line); border-radius:var(--fd-radius); overflow:hidden; box-shadow:0 12px 30px rgba(0,0,0,.22); }
.fd-card-body { padding:22px; }
.fd-card h3 { margin:0 0 8px; font-size:1.2rem; }
.fd-card:hover { border-color:rgba(255,26,18,.35); }

.fd-player-card { position:relative; min-height:390px; background:#151515; }
.fd-player-photo { width:100%; aspect-ratio: 4/5; object-fit:cover; background:#222; filter:saturate(.9); }
.fd-player-overlay { position:absolute; inset:auto 0 0; padding:70px 20px 20px; background:linear-gradient(transparent,rgba(0,0,0,.95)); }
.fd-player-number { position:absolute; right:14px; top:10px; font-size:3.8rem; line-height:1; font-weight:1000; color:rgba(255,255,255,.18); }
.fd-player-name { margin:0; text-transform:uppercase; font-size:1.3rem; font-weight:950; }
.fd-player-position { color:var(--fd-red); font-size:.78rem; font-weight:900; text-transform:uppercase; letter-spacing:.12em; }

.fd-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.fd-stat { text-align:center; border:1px solid var(--fd-line); background:#121212; border-radius:16px; padding:28px 14px; }
.fd-stat strong { display:block; font-size:clamp(2rem,5vw,3.8rem); line-height:1; color:var(--fd-red); font-weight:1000; }
.fd-stat span { display:block; margin-top:9px; color:#bbb; text-transform:uppercase; letter-spacing:.08em; font-size:.75rem; font-weight:800; }

.fd-news-card img { width:100%; aspect-ratio:16/10; object-fit:cover; }
.fd-news-meta { color:var(--fd-red); font-size:.76rem; text-transform:uppercase; font-weight:900; letter-spacing:.08em; }
.fd-news-card h3 { font-size:1.35rem; line-height:1.15; margin:10px 0; }

.fd-page-hero { padding:88px 0 54px; background:radial-gradient(circle at 80% 0,rgba(255,26,18,.18),transparent 26%), #0d0d0d; border-bottom:1px solid var(--fd-line); }
.fd-page-hero h1 { margin:0; font-size:clamp(2.8rem,7vw,5.8rem); line-height:.9; text-transform:uppercase; font-weight:1000; letter-spacing:-.045em; }
.fd-content { padding:60px 0 90px; }
.fd-content > *:first-child { margin-top:0; }
.fd-content a { color:var(--fd-red); }

.fd-table-wrap { overflow-x:auto; border:1px solid var(--fd-line); border-radius:16px; }
.fd-table { width:100%; border-collapse:collapse; background:#111; min-width:760px; }
.fd-table th, .fd-table td { padding:15px 14px; border-bottom:1px solid var(--fd-line); text-align:center; }
.fd-table th { background:#171717; color:#aaa; text-transform:uppercase; font-size:.72rem; letter-spacing:.08em; }
.fd-table th:nth-child(2), .fd-table td:nth-child(2) { text-align:left; }
.fd-table tr:last-child td { border-bottom:0; }
.fd-pos { color:var(--fd-red); font-weight:950; }

.fd-fixtures { display:grid; gap:14px; }
.fd-fixture { display:grid; grid-template-columns:160px 1fr auto; gap:20px; align-items:center; border:1px solid var(--fd-line); background:#121212; border-radius:14px; padding:18px; }
.fd-fixture-date { color:#aaa; font-size:.9rem; }
.fd-fixture-teams { font-weight:900; }
.fd-fixture-result { font-size:1.4rem; font-weight:1000; color:var(--fd-red); }

.fd-sponsors { display:flex; flex-wrap:wrap; gap:18px; align-items:stretch; }
.fd-sponsor { flex:1 1 220px; min-height:150px; background:#fff; border-radius:16px; display:flex; align-items:center; justify-content:center; padding:24px; }
.fd-sponsor img { max-height:85px; max-width:190px; object-fit:contain; }
.fd-sponsor-name { color:#111; font-weight:950; text-align:center; }

.fd-contact-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:34px; }
.fd-form { background:#121212; border:1px solid var(--fd-line); border-radius:18px; padding:26px; }
.fd-form-row { display:grid; gap:8px; margin-bottom:16px; }
.fd-form label { font-weight:800; }
.fd-form input, .fd-form textarea { width:100%; border:1px solid rgba(255,255,255,.12); background:#090909; color:#fff; border-radius:10px; padding:13px 14px; }
.fd-form textarea { min-height:150px; resize:vertical; }
.fd-form input:focus, .fd-form textarea:focus { outline:2px solid rgba(255,26,18,.35); border-color:var(--fd-red); }
.fd-alert { padding:14px 16px; border-radius:10px; margin-bottom:18px; }
.fd-alert--ok { background:rgba(55,200,110,.12); border:1px solid rgba(55,200,110,.28); }
.fd-alert--error { background:rgba(255,26,18,.12); border:1px solid rgba(255,26,18,.32); }
.fd-hp { position:absolute !important; left:-9999px !important; }

.fd-site-footer { background:#050505; border-top:1px solid var(--fd-line); padding:52px 0 26px; }
.fd-footer-grid { display:grid; grid-template-columns:1.4fr .8fr .8fr; gap:30px; }
.fd-footer-logo { width:92px; margin-bottom:14px; }
.fd-footer-nav ul { list-style:none; margin:0; padding:0; }
.fd-footer-nav li { margin:7px 0; }
.fd-copyright { border-top:1px solid var(--fd-line); padding-top:20px; margin-top:34px; color:#777; font-size:.85rem; }

.alignwide { width:min(1180px,calc(100% - 36px)); margin-left:auto; margin-right:auto; }
.alignfull { width:100%; }
.wp-block-gallery { gap:12px !important; }
.wp-block-gallery img { border-radius:12px; }

@media (max-width: 980px) {
  .fd-grid--4 { grid-template-columns:repeat(2,1fr); }
  .fd-grid--3 { grid-template-columns:repeat(2,1fr); }
  .fd-hero-inner { grid-template-columns:1fr; text-align:center; }
  .fd-hero p { margin-left:auto; margin-right:auto; }
  .fd-actions { justify-content:center; }
  .fd-hero-logo { width:min(350px,76vw); }
  .fd-match-card { grid-template-columns:1fr auto; }
  .fd-match-card > :first-child { grid-column:1 / -1; }
  .fd-contact-grid { grid-template-columns:1fr; }
  .fd-footer-grid { grid-template-columns:1fr 1fr; }
  .fd-footer-grid > :first-child { grid-column:1/-1; }
}

@media (max-width: 760px) {
  .fd-match-center-grid { grid-template-columns:1fr; }
  .fd-home-match-teams { grid-template-columns:1fr; text-align:center; }
  .fd-home-team, .fd-home-team:last-child { text-align:center; }
  .fd-home-score, .fd-home-vs { justify-self:center; }
  .fd-home-match-head, .fd-home-match-footer { align-items:flex-start; }
  .fd-section { padding:64px 0; }
  .fd-menu-toggle { display:block; }
  .fd-nav { display:none; position:absolute; left:18px; right:18px; top:72px; background:#101010; border:1px solid var(--fd-line); border-radius:14px; box-shadow:var(--fd-shadow); padding:10px; }
  .fd-nav.is-open { display:block; }
  .fd-nav ul { flex-direction:column; align-items:stretch; }
  .fd-nav a { padding:12px; }
  .fd-brand-text { display:none; }
  .fd-hero { min-height:auto; }
  .fd-hero-inner { padding:62px 0 95px; gap:34px; }
  .fd-hero h1 { font-size:clamp(3.2rem,18vw,5.3rem); }
  .fd-grid--3, .fd-grid--4 { grid-template-columns:1fr; }
  .fd-stats { grid-template-columns:repeat(2,1fr); }
  .fd-match-card, .fd-fixture { grid-template-columns:1fr; text-align:center; }
  .fd-match-card > :first-child { grid-column:auto; }
  .fd-score, .fd-fixture-result { justify-self:center; }
  .fd-footer-grid { grid-template-columns:1fr; }
  .fd-footer-grid > :first-child { grid-column:auto; }
}


/* v1.2 – Kader, Trainer & Fanartikel */
.fd-roster-group{margin:0 0 52px}.fd-roster-heading{display:flex;align-items:center;gap:14px;margin:0 0 18px;text-transform:uppercase;font-size:1.45rem;font-weight:1000}.fd-roster-heading:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,rgba(255,26,18,.55),transparent)}
.fd-player-meta-line{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.fd-mini-stat{display:inline-flex;align-items:center;border:1px solid var(--fd-line);background:rgba(0,0,0,.35);border-radius:999px;padding:5px 9px;color:#bbb;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.fd-staff-grid,.fd-merch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.fd-staff-card,.fd-merch-card{background:linear-gradient(180deg,#181818,#0f0f0f);border:1px solid var(--fd-line);border-radius:18px;overflow:hidden}.fd-staff-photo,.fd-merch-photo{width:100%;aspect-ratio:4/3;object-fit:cover;background:#1d1d1d}.fd-staff-body,.fd-merch-body{padding:20px}.fd-staff-role,.fd-merch-badge{color:var(--fd-red);font-size:.73rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase}.fd-staff-card h3,.fd-merch-card h3{margin:6px 0 8px;text-transform:uppercase}.fd-merch-price{font-size:1.7rem;font-weight:1000;margin:12px 0}.fd-merch-actions{margin-top:16px}.fd-merch-card .fd-btn{width:100%;justify-content:center}
.fd-player-card .fd-player-overlay{padding-bottom:18px}.fd-player-card .fd-player-position{margin-bottom:4px}
@media(max-width:980px){.fd-staff-grid,.fd-merch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.fd-staff-grid,.fd-merch-grid{grid-template-columns:1fr}}

/* v1.3 – Spielerprofil & Kader-Feinschliff */
.fd-player-profile-page{overflow:hidden}
.fd-player-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--fd-line);background:radial-gradient(circle at 72% 30%,rgba(255,26,18,.22),transparent 28%),linear-gradient(120deg,#050505 0%,#0d0d0d 58%,#160403 100%)}
.fd-player-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent)}
.fd-player-hero-glow{position:absolute;width:420px;height:420px;border-radius:50%;background:var(--fd-red);filter:blur(110px);opacity:.12;right:-170px;top:20px;pointer-events:none}
.fd-player-hero-grid{min-height:680px;display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:72px;align-items:end;position:relative;z-index:2;padding-top:64px}
.fd-player-portrait-wrap{position:relative;min-height:610px;display:flex;align-items:flex-end;justify-content:center}
.fd-player-big-number{position:absolute;left:-8px;top:16px;color:rgba(255,255,255,.04);font-size:clamp(10rem,22vw,19rem);line-height:.8;font-weight:1000;letter-spacing:-.09em;user-select:none}
.fd-player-portrait-frame{position:relative;width:min(500px,100%);min-height:570px;display:flex;align-items:flex-end;justify-content:center}
.fd-player-portrait-frame:before{content:"";position:absolute;inset:12% 6% 0;border-radius:50% 50% 0 0;background:radial-gradient(circle at 50% 55%,rgba(255,26,18,.28),rgba(255,26,18,.05) 42%,transparent 69%);filter:blur(12px)}
.fd-player-portrait{position:relative;z-index:2;width:100%;max-height:610px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 24px 28px rgba(0,0,0,.58))}
.fd-player-profile-intro{align-self:center;padding:78px 0 90px}
.fd-player-back{display:inline-flex;margin-bottom:34px;color:#bdbdbd;font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.fd-player-back:hover{color:var(--fd-red)}
.fd-player-profile-name{margin:0;max-width:800px;font-size:clamp(3.3rem,7.8vw,7rem);line-height:.85;text-transform:uppercase;font-weight:1000;letter-spacing:-.065em}.fd-player-profile-name span{display:block;color:var(--fd-red);font-size:.46em;line-height:1.2;letter-spacing:-.03em;margin-bottom:10px}
.fd-player-profile-position{margin-top:22px;color:#fff;font-size:clamp(1.15rem,2.2vw,1.65rem);font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.fd-player-profile-role{margin-top:5px;color:#999;font-weight:750}
.fd-player-profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:38px;max-width:650px}
.fd-player-profile-stat{position:relative;overflow:hidden;padding:20px 18px;border:1px solid var(--fd-line);border-radius:15px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.015))}.fd-player-profile-stat:before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background:var(--fd-red)}.fd-player-profile-stat strong{display:block;font-size:clamp(2rem,4vw,3.1rem);line-height:1;font-weight:1000;letter-spacing:-.05em}.fd-player-profile-stat span{display:block;margin-top:7px;color:#969696;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em}
.fd-player-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:20px;max-width:650px;border:1px solid var(--fd-line);border-radius:15px;overflow:hidden;background:var(--fd-line)}.fd-player-facts>div{padding:14px 16px;background:#0c0c0c}.fd-player-facts span{display:block;color:#777;font-size:.66rem;text-transform:uppercase;letter-spacing:.09em;font-weight:850}.fd-player-facts strong{display:block;margin-top:3px;font-size:.95rem}
.fd-player-about-section{background:#080808}.fd-player-about-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:64px;align-items:start}.fd-player-about-copy{color:#c4c4c4;font-size:1.04rem}.fd-player-about-copy>*:first-child{margin-top:0}.fd-player-about-copy>*:last-child{margin-bottom:0}
.fd-related-players{border-top:1px solid var(--fd-line)}.fd-related-grid{margin-top:28px}.fd-related-actions{margin-top:30px}

/* Mannschaftskarten: etwas sportlicher */
.fd-player-card{position:relative;isolation:isolate;overflow:hidden;min-height:390px;border-color:rgba(255,255,255,.1);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.fd-player-card:hover{transform:translateY(-6px);border-color:rgba(255,26,18,.48);box-shadow:0 22px 50px rgba(0,0,0,.42),0 0 0 1px rgba(255,26,18,.08)}
.fd-player-card:before{content:"";position:absolute;inset:auto -30% -35% 20%;height:55%;z-index:1;background:radial-gradient(circle,rgba(255,26,18,.3),transparent 65%);pointer-events:none}
.fd-player-photo{transition:transform .4s ease;object-position:center top}.fd-player-card:hover .fd-player-photo{transform:scale(1.025)}
.fd-player-number{z-index:3;text-shadow:0 3px 18px rgba(0,0,0,.45)}.fd-player-overlay{z-index:3}.fd-roster-heading{font-size:clamp(1.45rem,3vw,2rem)}

@media(max-width:980px){.fd-player-hero-grid{grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);gap:34px;min-height:600px}.fd-player-portrait-wrap{min-height:540px}.fd-player-portrait-frame{min-height:510px}.fd-player-profile-intro{padding:60px 0 70px}.fd-player-facts{grid-template-columns:1fr}.fd-player-about-grid{grid-template-columns:1fr;gap:24px}}
@media(max-width:760px){.fd-player-hero-grid{display:flex;flex-direction:column-reverse;align-items:stretch;gap:0;padding-top:42px}.fd-player-profile-intro{padding:24px 0 20px}.fd-player-back{margin-bottom:28px}.fd-player-profile-name{font-size:clamp(3rem,16vw,5.1rem)}.fd-player-profile-stats{grid-template-columns:repeat(3,1fr)}.fd-player-profile-stat{padding:16px 10px}.fd-player-profile-stat strong{font-size:2rem}.fd-player-portrait-wrap{min-height:430px}.fd-player-portrait-frame{min-height:430px;max-width:420px}.fd-player-big-number{top:50px;left:0}.fd-player-about-section{padding-top:60px}.fd-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.fd-player-profile-stats{gap:7px}.fd-player-profile-stat span{font-size:.61rem;letter-spacing:.06em}.fd-related-grid{grid-template-columns:1fr}}

/* Matchcenter team logos – v1.4 */
.fd-home-match-teams--with-logos { align-items: center; }
.fd-home-team-card { display:flex; flex-direction:column; align-items:flex-start; gap:10px; min-width:0; }
.fd-home-team-card--away { align-items:flex-end; text-align:right; }
.fd-home-team-logo-wrap { width:100%; display:flex; justify-content:flex-start; align-items:center; min-height:92px; }
.fd-home-team-card--away .fd-home-team-logo-wrap { justify-content:flex-end; }
.fd-home-team-logo { width:88px; height:88px; object-fit:contain; filter:drop-shadow(0 10px 20px rgba(0,0,0,.35)); }
.fd-home-team-logo--placeholder { display:grid; place-items:center; border:1px dashed rgba(255,255,255,.18); border-radius:50%; color:#666; font-size:34px; background:rgba(255,255,255,.025); }
.fd-home-team-name { font-size:clamp(1rem, 1.9vw, 1.45rem); line-height:1.08; font-weight:950; text-transform:uppercase; word-break:normal; overflow-wrap:anywhere; }
@media (max-width: 720px) {
  .fd-home-team-logo-wrap { min-height:70px; }
  .fd-home-team-logo { width:66px; height:66px; }
  .fd-home-match-teams--with-logos { gap:8px; }
  .fd-home-team-name { font-size:.95rem; }
}

/* Fußballverwaltung / Match-Details – v1.5 */
.fd-home-ht{display:block;margin-top:5px;color:#777;font-size:.76rem}.fd-home-live-badge,.fd-home-status-badge{display:inline-flex;margin-left:9px;padding:3px 7px;border-radius:999px;font-size:.65rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.fd-home-live-badge{background:var(--fd-red);color:#fff;box-shadow:0 0 16px rgba(255,26,18,.35)}.fd-home-status-badge{background:#2a2a2a;color:#ccc;border:1px solid #3c3c3c}.fd-home-score--live{display:flex;flex-direction:column}.fd-home-score--live small{margin-top:4px;color:var(--fd-red);font-size:.65rem;letter-spacing:.12em}
.fd-player-profile-stats{grid-template-columns:repeat(5,minmax(0,1fr));max-width:820px}.fd-player-profile-stat--yellow:before{background:#f1c40f}.fd-player-profile-stat--red:before{background:#e32620}
.fd-match-detail-hero{padding:74px 0 60px;background:radial-gradient(circle at 50% -10%,rgba(255,26,18,.22),transparent 38%),#080808;border-bottom:1px solid var(--fd-line)}.fd-match-detail-topline{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap;margin:25px 0;color:#999;font-size:.85rem}.fd-match-status{display:inline-flex;padding:5px 10px;border-radius:999px;border:1px solid var(--fd-line);font-size:.7rem;font-weight:950;text-transform:uppercase;letter-spacing:.1em}.fd-match-status--live{background:var(--fd-red);color:#fff;border-color:var(--fd-red)}.fd-match-status--finished{color:#bfbfbf}.fd-match-status--cancelled{color:#ff9c98;border-color:rgba(255,26,18,.3)}.fd-match-status--postponed{color:#ffc76e;border-color:rgba(255,183,70,.3)}
.fd-match-detail-scoreboard{display:grid;grid-template-columns:1fr auto 1fr;gap:35px;align-items:center;max-width:1050px;margin:0 auto}.fd-match-detail-team{text-align:center}.fd-match-detail-team h1{margin:15px 0 0;font-size:clamp(1.5rem,3.7vw,3.6rem);line-height:.96;text-transform:uppercase;font-weight:1000}.fd-match-detail-logo-wrap{height:155px;display:grid;place-items:center}.fd-match-detail-logo-wrap img{width:145px;height:145px;object-fit:contain;filter:drop-shadow(0 14px 25px rgba(0,0,0,.4))}.fd-match-detail-logo-wrap span{font-size:70px;opacity:.35}.fd-match-detail-score{text-align:center}.fd-match-detail-score strong{display:block;font-size:clamp(3rem,7vw,6rem);line-height:1;font-weight:1000;letter-spacing:-.06em;white-space:nowrap}.fd-match-detail-score small{display:block;margin-top:10px;color:#999;font-size:.76rem;text-transform:uppercase;letter-spacing:.09em}.fd-match-detail-vs{color:var(--fd-red)!important;font-size:clamp(1.4rem,3vw,2.4rem)!important;letter-spacing:.02em!important}.fd-match-detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:60px;align-items:start}.fd-match-events-public{margin-top:25px;border:1px solid var(--fd-line);border-radius:16px;overflow:hidden}.fd-public-event{display:grid;grid-template-columns:62px 36px 1fr;gap:10px;align-items:center;padding:15px 17px;background:#111;border-bottom:1px solid var(--fd-line)}.fd-public-event:last-child{border-bottom:0}.fd-public-event-minute{color:var(--fd-red);font-weight:950}.fd-public-event-icon{font-size:1.25rem}.fd-public-event strong{display:block}.fd-public-event div span{display:block;margin-top:2px;color:#858585;font-size:.78rem}.fd-match-lineup-public{display:grid;gap:7px;margin-top:25px}.fd-match-lineup-public a{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--fd-line);border-radius:10px;background:#111;color:#fff}.fd-match-lineup-public a:hover{border-color:rgba(255,26,18,.45)}.fd-match-lineup-public a span{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#1d1d1d;color:var(--fd-red);font-weight:1000}
@media(max-width:900px){.fd-player-profile-stats{grid-template-columns:repeat(3,1fr)}.fd-match-detail-grid{grid-template-columns:1fr;gap:45px}.fd-match-detail-scoreboard{gap:16px}.fd-match-detail-logo-wrap{height:105px}.fd-match-detail-logo-wrap img{width:100px;height:100px}}
@media(max-width:620px){.fd-player-profile-stats{grid-template-columns:repeat(2,1fr)}.fd-match-detail-scoreboard{grid-template-columns:1fr auto 1fr;gap:7px}.fd-match-detail-team h1{font-size:1rem}.fd-match-detail-logo-wrap{height:78px}.fd-match-detail-logo-wrap img{width:72px;height:72px}.fd-match-detail-score strong{font-size:2.15rem}.fd-match-detail-topline{gap:8px}.fd-public-event{grid-template-columns:46px 30px 1fr;padding:12px}.fd-match-detail-hero{padding-top:52px}}


/* Tabelle, Sponsoren & Fanartikel – v1.6 */
.fd-table-wrap{overflow-x:auto;border:1px solid var(--fd-line);border-radius:18px;background:#0d0d0d}.fd-table{width:100%;border-collapse:collapse;min-width:760px}.fd-table th{padding:14px 15px;background:#151515;color:#8d8d8d;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;text-align:center}.fd-table th:nth-child(2){text-align:left}.fd-table td{padding:14px 15px;border-top:1px solid var(--fd-line);text-align:center}.fd-table td:nth-child(2){text-align:left}.fd-table-team{display:flex;align-items:center;gap:12px}.fd-table-team img{width:36px;height:36px;object-fit:contain}.fd-table-firedevil{background:linear-gradient(90deg,rgba(255,26,18,.18),rgba(255,26,18,.025))}.fd-table-firedevil td:first-child{box-shadow:inset 4px 0 0 var(--fd-red)}.fd-table-firedevil strong{color:#fff}
.fd-sponsor-groups{display:grid;gap:38px}.fd-sponsor-group>h3{margin:0 0 16px;color:#888;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.fd-sponsors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.fd-sponsor{min-height:180px;padding:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--fd-line);border-radius:16px;background:#111;transition:.2s}.fd-sponsor:hover{transform:translateY(-3px);border-color:rgba(255,26,18,.45)}.fd-sponsor img{width:100%;height:90px;object-fit:contain}.fd-sponsor-caption{margin-top:13px;font-weight:900;text-align:center}.fd-sponsor-cta{margin-top:5px;color:var(--fd-red);font-size:.72rem;font-weight:850;text-transform:uppercase}.fd-sponsor-name{font-size:1.15rem;font-weight:950;text-align:center}
.fd-merch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.fd-merch-card{overflow:hidden;border:1px solid var(--fd-line);border-radius:18px;background:#111}.fd-merch-image-wrap{position:relative;height:320px;background:#181818}.fd-merch-photo{width:100%;height:100%;object-fit:cover}.fd-merch-placeholder{height:100%;display:grid;place-items:center;color:#333;font-size:2rem;font-weight:1000}.fd-merch-badge{position:absolute;top:14px;left:14px;padding:6px 10px;background:var(--fd-red);border-radius:999px;color:#fff;font-size:.68rem;font-weight:950;text-transform:uppercase}.fd-merch-body{padding:20px}.fd-merch-body h3{margin:0 0 8px;font-size:1.35rem}.fd-merch-price{margin-bottom:9px;color:#fff;font-size:1.35rem;font-weight:1000}.fd-merch-price del{color:#777;font-size:.8em;font-weight:700}.fd-merch-variants{display:inline-block;margin-bottom:12px;padding:5px 8px;border:1px solid var(--fd-line);border-radius:7px;color:#aaa;font-size:.75rem}.fd-merch-actions{margin-top:18px}
.fd-home-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px}.fd-home-highlight{padding:22px;border:1px solid var(--fd-line);border-radius:16px;background:#111}.fd-home-highlight span{display:block;color:#777;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.fd-home-highlight strong{display:block;margin-top:5px;font-size:1.35rem}.fd-home-highlight strong em{color:var(--fd-red);font-style:normal}
@media(max-width:850px){.fd-sponsors{grid-template-columns:repeat(2,1fr)}.fd-merch-grid,.fd-home-highlights{grid-template-columns:1fr}}
@media(max-width:480px){.fd-sponsors{grid-template-columns:1fr}}

/* Saison-Dashboard, Tabelle, Sponsoren & Fanartikel – v1.7 */
.fd-season-dashboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:28px}.fd-season-card{position:relative;min-height:185px;padding:24px;border:1px solid var(--fd-line);border-radius:18px;background:linear-gradient(145deg,#141414,#0d0d0d);overflow:hidden}.fd-season-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(var(--fd-red),transparent)}.fd-season-label{display:block;color:#777;font-size:.68rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.fd-season-card>strong,.fd-season-card>div>strong{display:block;margin-top:9px;font-size:clamp(1.35rem,2vw,2rem);line-height:1.05}.fd-season-card small{display:block;margin-top:7px;color:#999}.fd-season-card a{display:inline-block;margin-top:22px;color:var(--fd-red);font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.fd-season-rank{font-size:clamp(3rem,5vw,4.5rem)!important;color:#fff}.fd-season-card--rank{background:radial-gradient(circle at 20% 0,rgba(255,26,18,.18),transparent 50%),#101010}.fd-season-card--scorer{display:flex;align-items:center;gap:16px}.fd-season-card--scorer img{width:76px;height:76px;object-fit:cover;border-radius:50%;border:2px solid rgba(255,26,18,.55);box-shadow:0 0 0 5px rgba(255,26,18,.08)}.fd-form-row{display:flex;gap:6px;margin-top:18px}.fd-form{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;font-size:.72rem;font-weight:1000}.fd-form--w{background:#163d22;color:#79e09a}.fd-form--d{background:#3d3416;color:#f2d56d}.fd-form--l{background:#401817;color:#ff8d88}
.fd-table-wrap{position:relative;box-shadow:0 24px 70px rgba(0,0,0,.28)}.fd-table th{position:sticky;top:0;z-index:3}.fd-table td{font-variant-numeric:tabular-nums}.fd-table .fd-pos span{display:grid;place-items:center;width:30px;height:30px;margin:auto;border-radius:9px;background:#181818;font-weight:1000}.fd-table-team img{width:44px;height:44px}.fd-table-logo-empty{display:grid;place-items:center;width:44px;height:44px;border:1px dashed rgba(255,255,255,.12);border-radius:50%;font-size:18px;opacity:.55}.fd-table-name{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.fd-table-you{color:var(--fd-red);font-size:.58rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.fd-table-points strong{display:inline-grid;place-items:center;min-width:38px;height:34px;padding:0 8px;border-radius:10px;background:#1b1b1b;font-size:1.05rem}.fd-table-firedevil .fd-table-points strong{background:var(--fd-red);color:#fff}.fd-table .is-positive{color:#73d995}.fd-table .is-negative{color:#ff8580}.fd-table-firedevil{background:linear-gradient(90deg,rgba(255,26,18,.22),rgba(255,26,18,.035) 68%,rgba(255,26,18,.01))}.fd-table-firedevil td{border-top-color:rgba(255,26,18,.22)}
.fd-sponsor-group--hauptsponsor .fd-sponsors{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}.fd-sponsor-group--hauptsponsor .fd-sponsor{min-height:230px;border-color:rgba(255,26,18,.24);background:radial-gradient(circle at 50% 0,rgba(255,26,18,.09),transparent 55%),#111}.fd-sponsor-logo-wrap{height:100px;width:100%;display:grid;place-items:center}.fd-sponsor-logo-wrap img{max-width:100%;max-height:90px;width:auto;height:auto}.fd-sponsor-tagline{display:block;margin-top:4px;color:#818181;font-size:.74rem;text-align:center}.fd-sponsor-caption{font-size:.95rem}.fd-sponsor-cta{transition:.2s}.fd-sponsor:hover .fd-sponsor-cta{transform:translateX(3px)}
.fd-merch-stock{position:absolute;right:14px;bottom:14px;padding:6px 9px;border-radius:999px;background:rgba(7,7,7,.88);border:1px solid rgba(255,255,255,.12);font-size:.65rem;font-weight:900}.fd-merch-stock--limited{color:#ffd26c}.fd-merch-stock--preorder{color:#8ac6ff}.fd-merch-stock--soldout{color:#ff8b86}.fd-merch-card--soldout .fd-merch-photo{filter:grayscale(.8);opacity:.58}.fd-btn--disabled{display:inline-flex;opacity:.5;cursor:not-allowed;border:1px solid var(--fd-line);background:#202020;color:#aaa}
@media(max-width:1000px){.fd-season-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.fd-sponsor-group--hauptsponsor .fd-sponsors{grid-template-columns:1fr}}
@media(max-width:760px){.fd-table-wrap{border-radius:14px}.fd-table{min-width:720px}.fd-table th:first-child,.fd-table td:first-child{position:sticky;left:0;z-index:2;background:#111}.fd-table th:nth-child(2),.fd-table td:nth-child(2){position:sticky;left:58px;z-index:2;background:#111;box-shadow:8px 0 14px rgba(0,0,0,.22)}.fd-table-firedevil td:first-child,.fd-table-firedevil td:nth-child(2){background:#25100f}.fd-table th{z-index:4}.fd-table th:first-child,.fd-table th:nth-child(2){z-index:5;background:#151515}.fd-table-team img,.fd-table-logo-empty{width:38px;height:38px}.fd-table td,.fd-table th{padding:12px 10px}.fd-table th:first-child,.fd-table td:first-child{width:58px;min-width:58px}.fd-table th:nth-child(2),.fd-table td:nth-child(2){min-width:205px}.fd-sponsors{grid-template-columns:repeat(2,1fr)}}
@media(max-width:580px){.fd-season-dashboard{grid-template-columns:1fr}.fd-season-card{min-height:150px}.fd-season-card--scorer{min-height:130px}.fd-sponsors{grid-template-columns:1fr}.fd-merch-image-wrap{height:280px}}


/* Statistik-Center & Spielberichte – v1.8 */
.fd-stats-center{display:grid;gap:30px}.fd-stats-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fd-stats-summary>div{padding:20px;border:1px solid var(--fd-line);border-radius:14px;background:#111}.fd-stats-summary span{display:block;color:#777;font-size:.68rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.fd-stats-summary strong{display:block;margin-top:6px;font-size:1.65rem}.fd-stats-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.fd-stats-panel{padding:24px;border:1px solid var(--fd-line);border-radius:18px;background:#0e0e0e}.fd-stats-panel h2{margin:6px 0 18px;font-size:1.55rem}.fd-stat-list{display:grid;gap:7px}.fd-stat-player-row{display:grid;grid-template-columns:34px 48px 1fr auto;gap:11px;align-items:center;padding:10px 12px;border:1px solid var(--fd-line);border-radius:12px;background:#131313;color:#fff;transition:.2s}.fd-stat-player-row:hover{border-color:rgba(255,26,18,.42);transform:translateX(2px)}.fd-stat-rank{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#1d1d1d;color:var(--fd-red);font-weight:1000}.fd-stat-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;overflow:hidden;background:#202020;color:#777;font-size:.7rem;font-weight:900}.fd-stat-avatar img{width:100%;height:100%;object-fit:cover}.fd-stat-player-name{min-width:0}.fd-stat-player-name strong,.fd-stat-player-name small{display:block}.fd-stat-player-name strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fd-stat-player-name small{margin-top:2px;color:#777;font-size:.68rem}.fd-stat-value{text-align:right}.fd-stat-value strong,.fd-stat-value small{display:block}.fd-stat-value strong{font-size:1.35rem}.fd-stat-value small{color:#777;font-size:.64rem;text-transform:uppercase}.fd-home-leaders{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:start}.fd-home-leaders-copy{padding-top:6px}.fd-home-leaders-copy p{max-width:560px}.fd-home-leaders-actions{margin-top:22px}.fd-match-report-card{margin-top:28px;padding:24px;border:1px solid rgba(255,26,18,.22);border-radius:16px;background:linear-gradient(145deg,rgba(255,26,18,.07),#101010)}.fd-match-report-card h3{margin:5px 0 10px;font-size:1.5rem}.fd-match-report-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.fd-match-report-pill{padding:6px 9px;border:1px solid var(--fd-line);border-radius:999px;background:#151515;color:#aaa;font-size:.72rem}.fd-motm-card{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid rgba(255,26,18,.25);border-radius:14px;background:#111}.fd-motm-card img{width:58px;height:58px;object-fit:cover;border-radius:50%;border:2px solid var(--fd-red)}.fd-motm-card span,.fd-motm-card strong{display:block}.fd-motm-card span{color:var(--fd-red);font-size:.65rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.fd-player-profile-stat--motm strong{color:#ffd05c}
@media(max-width:900px){.fd-stats-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.fd-stats-columns,.fd-home-leaders{grid-template-columns:1fr}}
@media(max-width:560px){.fd-stats-summary{grid-template-columns:1fr 1fr}.fd-stat-player-row{grid-template-columns:28px 40px 1fr auto;padding:9px}.fd-stat-avatar{width:38px;height:38px}.fd-stat-value strong{font-size:1.1rem}}


/* v1.8.1 – Trainer-/Betreuerprofil */
.fd-staff-profile-page{background:var(--fd-black)}
.fd-staff-profile-hero{position:relative;overflow:hidden;padding:70px 0 76px;background:radial-gradient(circle at 18% 30%,rgba(255,26,18,.22),transparent 34%),linear-gradient(135deg,#070707 0%,#111 60%,#080808 100%);border-bottom:1px solid var(--fd-line)}
.fd-staff-profile-hero:after{content:"";position:absolute;inset:auto -15% -55% auto;width:520px;height:520px;border-radius:50%;background:rgba(255,26,18,.10);filter:blur(40px);pointer-events:none}
.fd-staff-profile-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:54px;align-items:center}
.fd-staff-profile-photo-wrap{border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:#151515;box-shadow:var(--fd-shadow)}
.fd-staff-profile-photo{width:100%;aspect-ratio:4/5;object-fit:cover}
.fd-staff-profile-placeholder{aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;font-size:4rem;font-weight:1000;color:#333;background:linear-gradient(160deg,#171717,#0c0c0c)}
.fd-staff-profile-back{display:inline-flex;margin-bottom:22px;color:#aaa;font-weight:800}.fd-staff-profile-back:hover{color:var(--fd-red)}
.fd-staff-profile-name{font-size:clamp(2.8rem,7vw,5.6rem);line-height:.95;margin:6px 0 14px;text-transform:uppercase;letter-spacing:-.045em}
.fd-staff-profile-role{display:inline-flex;align-items:center;gap:9px;margin:0 0 26px;padding:10px 16px;border-radius:999px;background:rgba(255,26,18,.12);border:1px solid rgba(255,26,18,.35);color:#ff5b54;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.fd-staff-profile-role:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--fd-red);box-shadow:0 0 14px var(--fd-red)}
.fd-staff-profile-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;max-width:640px}
.fd-staff-profile-fact{padding:18px 20px;border:1px solid var(--fd-line);border-radius:16px;background:rgba(255,255,255,.035)}
.fd-staff-profile-fact span{display:block;color:#888;font-size:.74rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px}.fd-staff-profile-fact strong{font-size:1.05rem}
.fd-staff-profile-content{padding:64px 0}.fd-staff-profile-content-inner{max-width:850px}.fd-staff-profile-content .entry-content{color:#d6d6d6;font-size:1.05rem}
@media(max-width:800px){.fd-staff-profile-hero{padding:44px 0 52px}.fd-staff-profile-grid{grid-template-columns:1fr;gap:30px}.fd-staff-profile-photo-wrap{max-width:420px}.fd-staff-profile-facts{grid-template-columns:1fr}.fd-staff-profile-name{font-size:clamp(2.5rem,14vw,4.5rem)}}

/* v1.8.2 – Trainerteam auf der Startseite */
.fd-home-staff-section .fd-staff-grid{margin-top:8px}
.fd-home-staff-section .fd-staff-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.fd-home-staff-section .fd-staff-card:hover{transform:translateY(-4px);border-color:rgba(255,38,28,.45);box-shadow:0 16px 36px rgba(0,0,0,.28)}


/* v1.9 – Spielplan-Filter, Galerie & Shop-Feinschliff */
.fd-match-filter{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}.fd-match-filter button{appearance:none;border:1px solid var(--fd-line);border-radius:999px;background:#121212;color:#aaa;padding:10px 16px;cursor:pointer;font-weight:900;transition:.2s}.fd-match-filter button:hover,.fd-match-filter button.is-active{background:var(--fd-red);border-color:var(--fd-red);color:#fff}.fd-fixture[hidden]{display:none!important}
.fd-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.fd-gallery-card{overflow:hidden;border:1px solid var(--fd-line);border-radius:18px;background:#111;color:#fff;transition:.22s}.fd-gallery-card:hover{transform:translateY(-4px);border-color:rgba(255,26,18,.42);box-shadow:0 18px 44px rgba(0,0,0,.3)}.fd-gallery-cover{position:relative;aspect-ratio:16/10;overflow:hidden;background:#191919}.fd-gallery-cover img{width:100%;height:100%;object-fit:cover;transition:.35s}.fd-gallery-card:hover .fd-gallery-cover img{transform:scale(1.035)}.fd-gallery-placeholder{display:grid;place-items:center;height:100%;font-size:3rem}.fd-gallery-type{position:absolute;left:14px;top:14px;padding:6px 10px;border-radius:999px;background:rgba(7,7,7,.82);border:1px solid rgba(255,255,255,.13);font-size:.66rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.fd-gallery-body{padding:18px}.fd-gallery-body h3{margin:0 0 7px;font-size:1.2rem}.fd-gallery-body p{margin:0 0 12px;color:#858585;font-size:.8rem}.fd-gallery-body>span{color:var(--fd-red);font-size:.78rem;font-weight:900}.fd-gallery-album .wp-block-gallery{gap:10px}.fd-gallery-album .wp-block-image img{border-radius:12px}.fd-gallery-album-meta{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0 26px}.fd-gallery-album-meta span{padding:7px 10px;border:1px solid var(--fd-line);border-radius:999px;background:#111;color:#aaa;font-size:.75rem}
.fd-merch-category{color:var(--fd-red);font-size:.68rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.fd-merch-sku{color:#666;font-size:.68rem;margin:-4px 0 10px}.fd-home-gallery-actions{margin-top:26px}
@media(max-width:900px){.fd-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.fd-gallery-grid{grid-template-columns:1fr}.fd-match-filter button{flex:1 1 auto}}

/* v2.0 – Kontakt, Social Media, Footer & Mobile Feinschliff */
.fd-social-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.fd-social-link{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 12px;border:1px solid var(--fd-line);border-radius:999px;background:#101010;color:#d7d7d7;font-size:.78rem;font-weight:850}.fd-social-link span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--fd-red);color:#fff;font-size:.68rem}.fd-social-link:hover{border-color:rgba(255,26,18,.55);color:#fff;transform:translateY(-1px)}
.fd-contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px;align-items:start}.fd-contact-info h2{margin:0 0 12px;font-size:clamp(2rem,5vw,3.5rem);text-transform:uppercase}.fd-contact-cards{display:grid;gap:10px;margin:24px 0}.fd-contact-card{display:block;padding:15px 17px;border:1px solid var(--fd-line);border-radius:13px;background:#111;color:#fff}.fd-contact-card span,.fd-contact-card strong{display:block}.fd-contact-card span{color:#7e7e7e;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.fd-contact-card strong{margin-top:3px}.fd-contact-card[href]:hover{border-color:rgba(255,26,18,.45);color:#fff}.fd-contact-consent{display:flex;align-items:flex-start;gap:9px;color:#aaa;font-size:.8rem}.fd-contact-consent input{width:auto!important;margin-top:4px}
.fd-contact-cta-section{padding-top:34px}.fd-contact-cta{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:36px 38px;border:1px solid rgba(255,26,18,.28);border-radius:22px;background:radial-gradient(circle at 88% 50%,rgba(255,26,18,.2),transparent 30%),linear-gradient(135deg,#151515,#0a0a0a);box-shadow:var(--fd-shadow)}.fd-contact-cta h2{margin:0 0 9px;font-size:clamp(2rem,5vw,3.5rem);line-height:1;text-transform:uppercase}.fd-contact-cta p{margin:0;max-width:700px;color:#aaa}.fd-contact-cta-actions{white-space:nowrap}
.fd-footer-grid--v2{grid-template-columns:1.35fr .75fr .9fr}.fd-footer-about{max-width:470px;margin:0}.fd-footer-contact{display:grid;gap:7px;margin:0 0 18px}.fd-footer-contact a,.fd-footer-contact span{color:#aaa}.fd-footer-contact a:hover{color:var(--fd-red)}.fd-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--fd-line);padding-top:20px;margin-top:34px}.fd-footer-bottom .fd-copyright{border:0;padding:0;margin:0}.fd-legal-nav{display:flex;gap:16px;font-size:.82rem;color:#888}.fd-legal-nav a:hover{color:var(--fd-red)}
.fd-back-to-top{position:fixed;right:22px;bottom:22px;z-index:1200;width:48px;height:48px;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:#151515;color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.38);cursor:pointer;font-size:1.25rem;opacity:0;visibility:hidden;transform:translateY(10px);transition:.2s}.fd-back-to-top.is-visible{opacity:1;visibility:visible;transform:none}.fd-back-to-top:hover{background:var(--fd-red);border-color:var(--fd-red)}
.fd-nav-backdrop{display:none}
@media(max-width:980px){.fd-footer-grid--v2{grid-template-columns:1fr 1fr}.fd-contact-layout{grid-template-columns:1fr}.fd-contact-cta{grid-template-columns:1fr}.fd-contact-cta-actions{white-space:normal}.fd-footer-grid--v2>div:first-child{grid-column:1/-1}}
@media(max-width:760px){body.fd-menu-open{overflow:hidden}.fd-site-header{position:sticky;top:0}.fd-header-inner{min-height:68px}.fd-brand-logo{width:50px;height:50px}.fd-menu-toggle{display:flex;align-items:center;gap:7px}.fd-nav{display:block;position:fixed;left:12px;right:12px;top:78px;max-height:calc(100vh - 96px);overflow:auto;opacity:0;visibility:hidden;transform:translateY(-10px);pointer-events:none;background:#0d0d0d;border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 28px 70px rgba(0,0,0,.65);padding:10px;transition:.2s}.fd-nav.is-open{opacity:1;visibility:visible;transform:none;pointer-events:auto}.fd-nav ul{flex-direction:column;align-items:stretch}.fd-nav li{width:100%}.fd-nav a{padding:13px 14px}.fd-nav-backdrop{position:fixed;inset:68px 0 0;z-index:999;border:0;background:rgba(0,0,0,.68);backdrop-filter:blur(2px)}body.fd-menu-open .fd-nav-backdrop{display:block}.fd-nav{z-index:1001}.fd-contact-cta{padding:28px 22px}.fd-footer-grid--v2{grid-template-columns:1fr}.fd-footer-grid--v2>div:first-child{grid-column:auto}.fd-footer-bottom{align-items:flex-start;flex-direction:column}.fd-back-to-top{right:14px;bottom:14px;width:44px;height:44px}.fd-section{padding:58px 0}.fd-btn{min-height:46px}.fd-contact-layout .fd-form{padding:20px}}
@media(max-width:420px){.fd-container{width:min(100% - 24px,1180px)}.fd-menu-toggle-text{display:none}.fd-contact-cta .fd-btn{width:100%}.fd-social-link{flex:1 1 calc(50% - 9px);justify-content:center}.fd-stats{gap:8px}.fd-stat{padding:20px 8px}}


/* v2.0.1 – Kontaktformular Layout-Fix */
.fd-contact-layout > form,
.fd-contact-layout .fd-contact-info + form {
  width: 100%;
  margin: 0;
  padding: 28px;
  border: 1px solid var(--fd-line);
  border-radius: 18px;
  background: linear-gradient(180deg,#141414,#0d0d0d);
  box-shadow: 0 18px 45px rgba(0,0,0,.25);
}
.fd-contact-layout form .fd-hp {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.fd-contact-layout form .fd-form-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 0 0 18px;
}
.fd-contact-layout form .fd-form-row label {
  display: block;
  margin: 0;
  color: #f4f4f4;
  font-size: .82rem;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: .03em;
}
.fd-contact-layout form .fd-form-row input,
.fd-contact-layout form .fd-form-row textarea {
  display: block;
  width: 100%;
  max-width: none;
  min-width: 0;
  box-sizing: border-box;
  margin: 0;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 12px;
  background: #090909;
  color: #fff;
  font: inherit;
  font-size: 1rem;
  line-height: 1.35;
  padding: 14px 15px;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.fd-contact-layout form .fd-form-row input {
  min-height: 52px;
}
.fd-contact-layout form .fd-form-row textarea {
  min-height: 190px;
  resize: vertical;
}
.fd-contact-layout form .fd-form-row input:focus,
.fd-contact-layout form .fd-form-row textarea:focus {
  outline: none;
  border-color: var(--fd-red);
  background: #0d0d0d;
  box-shadow: 0 0 0 3px rgba(255,26,18,.14);
}
.fd-contact-layout form .fd-contact-consent {
  display: grid;
  grid-template-columns: 20px minmax(0,1fr);
  gap: 11px;
  align-items: start;
  margin: 4px 0 22px;
  color: #aaa;
  font-size: .82rem;
  line-height: 1.55;
}
.fd-contact-layout form .fd-contact-consent input[type="checkbox"] {
  appearance: auto;
  width: 18px !important;
  height: 18px !important;
  min-height: 0;
  margin: 2px 0 0 !important;
  padding: 0;
  accent-color: var(--fd-red);
}
.fd-contact-layout form > p:last-child {
  margin: 0;
}
.fd-contact-layout form .fd-btn {
  min-width: 220px;
}
@media(max-width:760px){
  .fd-contact-layout > form,
  .fd-contact-layout .fd-contact-info + form { padding: 20px; }
  .fd-contact-layout form .fd-btn { width: 100%; min-width: 0; }
}


/* v2.0.2 – Kontaktseite: festes Theme-Layout */
.fd-contact-page .fd-content { padding-top: 52px; }
.fd-contact-page .fd-contact-layout {
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(420px, 1.05fr) !important;
  gap: 54px !important;
  align-items: start !important;
  width: 100% !important;
}
.fd-contact-page .fd-contact-layout > .fd-contact-info,
.fd-contact-page .fd-contact-layout > form {
  min-width: 0 !important;
  width: 100% !important;
}
.fd-contact-page .fd-contact-layout > form {
  display: block !important;
  margin: 0 !important;
  padding: 30px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg,#151515 0%,#0e0e0e 100%) !important;
  box-shadow: 0 20px 50px rgba(0,0,0,.28) !important;
}
.fd-contact-page .fd-contact-layout > form .fd-hp {
  position: absolute !important;
  left: -10000px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}
.fd-contact-page .fd-contact-layout > form .fd-form-row {
  display: block !important;
  width: 100% !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
}
.fd-contact-page .fd-contact-layout > form .fd-form-row > label {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  color: #f4f4f4 !important;
  font-size: .86rem !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}
.fd-contact-page .fd-contact-layout > form .fd-form-row > input,
.fd-contact-page .fd-contact-layout > form .fd-form-row > textarea {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 100% !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 12px !important;
  background: #090909 !important;
  color: #fff !important;
  box-sizing: border-box !important;
  font: inherit !important;
  font-size: 1rem !important;
  line-height: 1.4 !important;
}
.fd-contact-page .fd-contact-layout > form .fd-form-row > input {
  height: 54px !important;
}
.fd-contact-page .fd-contact-layout > form .fd-form-row > textarea {
  min-height: 190px !important;
  height: 190px !important;
  resize: vertical !important;
}
.fd-contact-page .fd-contact-layout > form .fd-form-row > input:focus,
.fd-contact-page .fd-contact-layout > form .fd-form-row > textarea:focus {
  outline: none !important;
  border-color: var(--fd-red) !important;
  box-shadow: 0 0 0 3px rgba(255,26,18,.14) !important;
}
.fd-contact-page .fd-contact-layout > form .fd-contact-consent {
  display: grid !important;
  grid-template-columns: 20px minmax(0,1fr) !important;
  gap: 12px !important;
  align-items: start !important;
  width: 100% !important;
  margin: 2px 0 22px !important;
  color: #aaa !important;
  font-size: .84rem !important;
  line-height: 1.55 !important;
}
.fd-contact-page .fd-contact-layout > form .fd-contact-consent input[type="checkbox"] {
  display: block !important;
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  margin: 3px 0 0 !important;
  padding: 0 !important;
  accent-color: var(--fd-red) !important;
}
.fd-contact-page .fd-contact-layout > form p {
  margin: 0 !important;
}
.fd-contact-page .fd-contact-layout > form .fd-btn {
  width: auto !important;
  min-width: 220px !important;
}
@media (max-width: 900px) {
  .fd-contact-page .fd-contact-layout {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }
}
@media (max-width: 600px) {
  .fd-contact-page .fd-content { padding-top: 34px; }
  .fd-contact-page .fd-contact-layout > form { padding: 20px !important; }
  .fd-contact-page .fd-contact-layout > form .fd-btn {
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* v2.0.3 – Kontaktformular final: fd-form-Kollision behoben */
.fd-contact-page .fd-contact-layout > .fd-form {
  display: block !important;
  place-items: initial !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 18px !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  overflow: visible !important;
}
.fd-contact-page .fd-contact-layout > .fd-form > form {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 30px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg,#151515 0%,#0e0e0e 100%) !important;
  box-shadow: 0 20px 50px rgba(0,0,0,.28) !important;
  box-sizing: border-box !important;
}
.fd-contact-page .fd-contact-layout > .fd-form .fd-hp {
  display: none !important;
}
.fd-contact-page .fd-contact-layout > .fd-form .fd-form-row {
  display: block !important;
  width: 100% !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
}
.fd-contact-page .fd-contact-layout > .fd-form .fd-form-row > label {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #f4f4f4 !important;
  font-size: .86rem !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}
.fd-contact-page .fd-contact-layout > .fd-form .fd-form-row > input,
.fd-contact-page .fd-contact-layout > .fd-form .fd-form-row > textarea {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 12px !important;
  background: #090909 !important;
  color: #fff !important;
}
.fd-contact-page .fd-contact-layout > .fd-form .fd-form-row > input {
  height: 54px !important;
}
.fd-contact-page .fd-contact-layout > .fd-form .fd-form-row > textarea {
  height: 190px !important;
  min-height: 190px !important;
}
.fd-contact-page .fd-contact-layout > .fd-form .fd-contact-consent {
  display: grid !important;
  grid-template-columns: 20px minmax(0,1fr) !important;
  gap: 12px !important;
  align-items: start !important;
  margin: 0 0 18px !important;
}
.fd-contact-page .fd-contact-layout > .fd-form .fd-contact-consent input[type="checkbox"] {
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  margin: 3px 0 0 !important;
  padding: 0 !important;
}
.fd-contact-page .fd-contact-layout > .fd-form form > p:last-child {
  margin: 0 !important;
  padding: 0 !important;
}
.fd-contact-page .fd-contact-layout > .fd-form .fd-btn {
  display: inline-flex !important;
  width: auto !important;
  min-width: 220px !important;
  margin: 0 !important;
}
@media (max-width: 900px) {
  .fd-contact-page .fd-contact-layout > .fd-form > form { padding: 24px !important; }
}
@media (max-width: 600px) {
  .fd-contact-page .fd-contact-layout > .fd-form > form { padding: 20px !important; }
  .fd-contact-page .fd-contact-layout > .fd-form .fd-btn { width: 100% !important; min-width: 0 !important; }
}


/* v2.1 – Kaderstatus, Geburtstage, MVP & Saisonarchiv */
.fd-player-badges{position:absolute;top:16px;right:16px;z-index:4;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;max-width:72%}
.fd-player-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 9px;border-radius:999px;background:#222;border:1px solid rgba(255,255,255,.15);font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 22px rgba(0,0,0,.3)}
.fd-player-badge--captain{width:30px;padding:0;background:var(--fd-red);border-color:var(--fd-red);color:#fff;font-size:.8rem}
.fd-player-badge--mvp{background:#f2b705;border-color:#f2b705;color:#111}
.fd-player-badge--injured{background:#5b1717;border-color:#8f2929;color:#ffb2b2}
.fd-player-badge--paused{background:#433c18;border-color:#746826;color:#f5e58c}
.fd-player-badge--former{background:#282828;color:#b9b9b9}
.fd-player-card--status-former .fd-player-photo{filter:grayscale(.75);opacity:.72}
.fd-profile-badges{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0 0}
.fd-profile-badge{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#181818;font-size:.75rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.fd-profile-badge--captain{background:var(--fd-red);border-color:var(--fd-red)}
.fd-profile-badge--mvp{background:#f2b705;border-color:#f2b705;color:#111}
.fd-profile-badge--injured{color:#ff9e9e;border-color:#752828;background:#3b1515}
.fd-profile-badge--paused{color:#f5e58c;border-color:#746826;background:#332f17}
.fd-profile-badge--former{color:#aaa}
.fd-home-kader-extras{background:radial-gradient(circle at 90% 0%,rgba(255,26,18,.10),transparent 36%),#080808}
.fd-kader-extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:26px}
.fd-kader-extra-card{border:1px solid var(--fd-line);border-radius:var(--fd-radius);background:linear-gradient(145deg,#151515,#0e0e0e);padding:24px;box-shadow:var(--fd-shadow);min-width:0}
.fd-kader-extra-card--mvp{border-top:3px solid #f2b705}
.fd-kader-extra-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.fd-kader-extra-head span:first-child{color:var(--fd-red);font-size:.7rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.fd-kader-extra-head h3{margin:5px 0 0;font-size:1.35rem;text-transform:uppercase}
.fd-kader-extra-icon{font-size:1.8rem;line-height:1}
.fd-birthday-list{display:grid;gap:9px}
.fd-birthday-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:#0a0a0a;transition:.2s ease}
.fd-birthday-row:hover{border-color:rgba(255,26,18,.45);transform:translateX(3px)}
.fd-birthday-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#1b1b1b;color:var(--fd-red);font-weight:900}
.fd-birthday-avatar img{width:100%;height:100%;object-fit:cover}
.fd-birthday-row strong{display:block;font-size:.95rem}.fd-birthday-row small{display:block;color:#888;font-size:.75rem;margin-top:2px}
.fd-birthday-age{color:var(--fd-red);font-size:1.35rem;font-weight:900;text-align:center}.fd-birthday-age small{font-size:.58rem;text-transform:uppercase;letter-spacing:.1em}
.fd-mvp-card{display:grid;grid-template-columns:145px minmax(0,1fr);align-items:stretch;min-height:205px;overflow:hidden;border-radius:14px;background:#0a0a0a;border:1px solid rgba(255,255,255,.07)}
.fd-mvp-card>img{width:145px;height:100%;object-fit:cover;min-height:205px}.fd-mvp-card>div{padding:22px}.fd-mvp-card h3{font-size:1.55rem;margin:8px 0 4px;text-transform:uppercase}.fd-mvp-card p{margin:0;color:#aaa}.fd-mvp-stats{display:flex;gap:8px;margin-top:18px}.fd-mvp-stats span{padding:7px 10px;border-radius:8px;background:#181818;color:#ddd;font-size:.78rem;font-weight:800}
.fd-season-dashboard-actions{margin-top:24px;text-align:right}
.fd-season-archive{display:grid;gap:22px}.fd-season-archive-card{border:1px solid var(--fd-line);border-radius:18px;background:linear-gradient(145deg,#151515,#0c0c0c);padding:26px;box-shadow:var(--fd-shadow)}
.fd-season-archive-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--fd-line)}
.fd-season-archive-head span{color:var(--fd-red);font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.fd-season-archive-head strong{font-size:1.75rem}
.fd-season-archive-stats{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.fd-season-archive-stats div{padding:14px 8px;text-align:center;border-radius:12px;background:#0a0a0a}.fd-season-archive-stats strong{display:block;font-size:1.25rem}.fd-season-archive-stats span{display:block;color:#888;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;margin-top:3px}
@media(max-width:900px){.fd-kader-extra-grid{grid-template-columns:1fr}.fd-season-archive-stats{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.fd-kader-extra-card{padding:18px}.fd-mvp-card{grid-template-columns:105px minmax(0,1fr);min-height:170px}.fd-mvp-card>img{width:105px;min-height:170px}.fd-mvp-card>div{padding:16px}.fd-season-archive-stats{grid-template-columns:repeat(2,1fr)}.fd-season-dashboard-actions{text-align:left}.fd-player-badges{top:10px;right:10px}}

/* ===== Fire Devil Aufstellung / Spielfeld – v2.2 ===== */
.fd-lineup-wrap{margin:34px 0 70px}.fd-lineup-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.fd-lineup-head h2{margin:0;text-transform:uppercase;font-size:clamp(2rem,4vw,3.6rem);line-height:1}.fd-lineup-head p{margin:8px 0 0;color:#b9b9b9}.fd-lineup-formation{display:inline-flex;align-items:center;justify-content:center;min-width:92px;padding:11px 16px;border:1px solid rgba(255,26,18,.45);background:rgba(255,26,18,.08);border-radius:999px;color:#fff;font-weight:900;font-size:1.05rem}.fd-pitch{position:relative;width:min(820px,100%);aspect-ratio:68/105;margin:0 auto;border:3px solid rgba(255,255,255,.9);border-radius:18px;overflow:hidden;background:linear-gradient(90deg,rgba(255,255,255,.025) 50%,transparent 50%),repeating-linear-gradient(0deg,#173d20 0,#173d20 10%,#1c4726 10%,#1c4726 20%);box-shadow:0 30px 80px rgba(0,0,0,.45),0 0 50px rgba(255,26,18,.08) inset}.fd-pitch:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:rgba(255,255,255,.78);transform:translateX(-50%)}.fd-pitch:after{content:"";position:absolute;left:50%;top:50%;width:20%;aspect-ratio:1;border:2px solid rgba(255,255,255,.78);border-radius:50%;transform:translate(-50%,-50%)}.fd-pitch-slot{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);z-index:2;width:118px;text-align:center}.fd-lineup-player{display:flex;flex-direction:column;align-items:center;gap:4px;color:#fff!important}.fd-lineup-avatar{width:64px;height:64px;border-radius:50%;border:3px solid #fff;background:#111;box-shadow:0 0 0 4px rgba(255,26,18,.9),0 8px 18px rgba(0,0,0,.55);overflow:hidden;display:grid;place-items:center;font-weight:950}.fd-lineup-avatar img{width:100%;height:100%;object-fit:cover}.fd-lineup-pos{position:absolute;top:-8px;right:16px;min-width:28px;height:24px;padding:0 6px;border-radius:999px;background:#e11912;color:#fff;font-size:.68rem;font-weight:900;line-height:24px;box-shadow:0 3px 10px rgba(0,0,0,.35)}.fd-lineup-player strong{display:block;max-width:118px;padding:5px 7px;border-radius:7px;background:rgba(0,0,0,.76);font-size:.72rem;line-height:1.15;white-space:normal;text-shadow:0 1px 2px #000}.fd-lineup-player strong em{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#e11912;font-style:normal;font-size:.65rem}.fd-lineup-bench-public{max-width:820px;margin:24px auto 0}.fd-lineup-bench-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.fd-lineup-bench-list a{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--fd-line);border-radius:12px;background:#111}.fd-lineup-bench-list a span{width:40px;height:40px;border-radius:50%;overflow:hidden;background:#222;display:grid;place-items:center;font-size:.7rem;font-weight:900}.fd-lineup-bench-list img{width:100%;height:100%;object-fit:cover}.fd-lineup-bench-list strong{font-size:.9rem}.fd-lineup-empty{padding:30px;border:1px dashed rgba(255,255,255,.22);border-radius:16px;background:#111;color:#ddd}
@media(max-width:700px){.fd-lineup-head{align-items:flex-start;flex-direction:column}.fd-pitch-slot{width:82px}.fd-lineup-avatar{width:48px;height:48px}.fd-lineup-player strong{max-width:82px;font-size:.58rem;padding:4px}.fd-lineup-pos{right:2px;top:-5px;height:19px;line-height:19px;min-width:22px;font-size:.55rem}.fd-pitch{border-radius:12px}.fd-lineup-bench-list{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.fd-lineup-slot{width:72px}.fd-lineup-avatar{width:43px;height:43px}.fd-lineup-player strong{font-size:.52rem}.fd-lineup-bench-list{grid-template-columns:1fr}}


/* ===== Fire Devil Live-Ticker – v2.3 ===== */
.fd-live-ticker-section{padding-top:34px;padding-bottom:16px;background:radial-gradient(circle at 50% 0%,rgba(255,26,18,.09),transparent 40%)}
.fd-live-ticker{border:1px solid var(--fd-line);border-radius:20px;background:linear-gradient(145deg,#151515,#090909);box-shadow:var(--fd-shadow);overflow:hidden}
.fd-live-ticker--active{border-color:rgba(255,26,18,.58);box-shadow:0 20px 60px rgba(0,0,0,.45),0 0 42px rgba(255,26,18,.10)}
.fd-live-ticker-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:24px 26px 18px;border-bottom:1px solid var(--fd-line)}
.fd-live-kicker{display:block;color:var(--fd-red);font-size:.7rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.fd-live-ticker-head h2{margin:4px 0 0;font-size:clamp(1.7rem,3vw,2.6rem);text-transform:uppercase;line-height:1}
.fd-live-state{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.fd-live-badge{display:none;padding:7px 11px;border-radius:999px;background:#272727;color:#ddd;font-size:.72rem;font-weight:950;letter-spacing:.12em}.fd-live-badge:not(:empty){display:inline-flex}.fd-live-badge.is-live{background:#e11912;color:#fff;box-shadow:0 0 0 5px rgba(225,25,18,.13);animation:fdLivePulse 1.8s infinite}.fd-live-minute{font-weight:900;color:#fff}
@keyframes fdLivePulse{0%,100%{box-shadow:0 0 0 4px rgba(225,25,18,.12)}50%{box-shadow:0 0 0 9px rgba(225,25,18,0)}}
.fd-live-scoreline{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:22px 26px;background:#0b0b0b;border-bottom:1px solid var(--fd-line);text-align:center}.fd-live-scoreline>span{font-size:1rem;font-weight:900;text-transform:uppercase}.fd-live-scoreline>span:first-child{text-align:right}.fd-live-scoreline>span:last-child{text-align:left}.fd-live-scoreline strong{font-size:clamp(2rem,5vw,3.3rem);line-height:1;color:#fff}
.fd-live-events{display:grid;gap:1px;background:rgba(255,255,255,.045)}.fd-live-event{display:grid;grid-template-columns:58px 38px minmax(0,1fr);align-items:center;gap:10px;padding:13px 20px;background:#111}.fd-live-event:first-child{background:#151515}.fd-live-event-minute{font-weight:950;color:var(--fd-red);text-align:center}.fd-live-event-icon{font-size:1.25rem}.fd-live-event strong{display:block;font-size:.95rem}.fd-live-event span:last-child{display:block;color:#999;font-size:.78rem;margin-top:2px}.fd-live-event--goal{border-left:3px solid #37c871}.fd-live-event--yellow{border-left:3px solid #f1cf26}.fd-live-event--red{border-left:3px solid #e11912}.fd-live-event--substitution{border-left:3px solid #4d9cff}
.fd-live-auto-note{margin:0;padding:12px 20px;color:#777;font-size:.72rem;text-align:right;background:#090909;border-top:1px solid var(--fd-line)}
@media(max-width:650px){.fd-live-ticker-head{align-items:flex-start;flex-direction:column;padding:20px}.fd-live-state{justify-content:flex-start}.fd-live-scoreline{grid-template-columns:1fr auto 1fr;gap:8px;padding:18px 12px}.fd-live-scoreline>span{font-size:.72rem}.fd-live-event{grid-template-columns:46px 30px minmax(0,1fr);padding:12px 12px}.fd-live-auto-note{text-align:left}}

.fd-home-live-entry{padding-top:10px;padding-bottom:6px}


/* Fire Devil Liveticker home entry v2.3.2 */
.fd-home-live-entry{margin-top:32px;margin-bottom:28px;position:relative;z-index:2}
.fd-home-live-entry .fdlt-home-cta,.fd-home-live-fallback{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;max-width:1180px;margin:0 auto;padding:18px 22px;border:1px solid rgba(255,32,32,.42);border-radius:18px;background:linear-gradient(90deg,rgba(255,32,32,.16),#151515 36%,#111);box-shadow:0 16px 42px rgba(0,0,0,.32);color:#fff}
.fd-home-live-fallback__dot{width:14px;height:14px;border-radius:50%;background:#ff201a;box-shadow:0 0 0 0 rgba(255,32,26,.6);animation:fdHomeLivePulse 1.5s infinite}
.fd-home-live-fallback__copy strong,.fd-home-live-fallback__copy span{display:block}.fd-home-live-fallback__copy strong{font-size:1.08rem}.fd-home-live-fallback__copy span{margin-top:3px;color:#aaa}.fd-home-live-fallback__btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:999px;background:#ff201a;color:#fff!important;text-decoration:none!important;font-weight:900;white-space:nowrap}
@keyframes fdHomeLivePulse{0%{box-shadow:0 0 0 0 rgba(255,32,26,.6)}70%{box-shadow:0 0 0 10px rgba(255,32,26,0)}100%{box-shadow:0 0 0 0 rgba(255,32,26,0)}}
@media(max-width:760px){.fd-home-live-entry .fdlt-home-cta,.fd-home-live-fallback{grid-template-columns:auto 1fr}.fd-home-live-entry .fdlt-live-btn,.fd-home-live-fallback__btn{grid-column:1/-1;width:100%}}

/* Liveticker v1.1 slot */
.fd-live-home-slot{position:relative;z-index:2}

/* Fire Devil v2.5 – Rekorde & Vereinsstatistiken */
.fd-home-records{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.fd-home-records article{background:linear-gradient(145deg,#171717,#0d0d0d);border:1px solid rgba(255,255,255,.09);border-top:3px solid var(--fd-red);border-radius:18px;padding:24px;box-shadow:var(--fd-shadow)}.fd-home-records span,.fd-record-special span,.fd-record-hero span{display:block;color:#aaa;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}.fd-home-records strong{display:block;font-size:1.55rem;margin:8px 0 3px}.fd-home-records small{color:#aaa}.fd-home-record-actions{margin-top:28px}.fd-records-page{display:grid;gap:34px}.fd-record-hero-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.fd-record-hero{background:#151515;border:1px solid var(--fd-line);border-radius:18px;padding:24px;text-align:center}.fd-record-hero strong{display:block;font-size:3rem;line-height:1;margin-top:8px;color:var(--fd-red)}.fd-record-special-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.fd-record-special{background:linear-gradient(145deg,#191919,#0d0d0d);border:1px solid var(--fd-line);border-radius:18px;padding:24px;min-height:150px}.fd-record-special strong{display:block;font-size:1.7rem;margin:12px 0 5px}.fd-record-special small{color:#aaa}.fd-record-leaderboards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.fd-record-board{background:#111;border:1px solid var(--fd-line);border-radius:20px;padding:24px}.fd-record-board h3{margin:0 0 18px;text-transform:uppercase;font-size:1.3rem}.fd-record-player{display:grid;grid-template-columns:38px 46px 1fr auto;align-items:center;gap:12px;padding:11px 0;border-top:1px solid rgba(255,255,255,.07)}.fd-record-player:first-of-type{border-top:0}.fd-record-player img,.fd-record-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;background:#222;display:grid;place-items:center;font-weight:900;color:var(--fd-red)}.fd-record-rank{font-size:1.2rem;font-weight:950;color:#777}.fd-record-player-copy strong,.fd-record-player-copy small{display:block}.fd-record-player-copy small{color:#888;font-size:.75rem}.fd-record-player b{font-size:1.35rem;color:var(--fd-red)}.fd-record-seasons{background:#0d0d0d;border:1px solid var(--fd-line);border-radius:22px;padding:26px}.fd-record-seasons h2{margin-top:0}.fd-record-season-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.fd-record-season{background:#161616;border-radius:16px;padding:20px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;align-items:end}.fd-record-season>span,.fd-record-season>strong,.fd-record-season>em{grid-column:1/-1}.fd-record-season>span{color:var(--fd-red);font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800}.fd-record-season>strong{font-size:1.6rem}.fd-record-season div b,.fd-record-season div small{display:block}.fd-record-season div small{color:#888}.fd-record-season em{font-style:normal;color:#aaa}.fd-player-career-ranks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.fd-player-career-ranks div{background:#111;border:1px solid var(--fd-line);padding:12px 14px;border-radius:12px}.fd-player-career-ranks span,.fd-player-career-ranks strong{display:block}.fd-player-career-ranks span{font-size:.72rem;color:#999;text-transform:uppercase}.fd-player-career-ranks strong{font-size:1.4rem;color:var(--fd-red)}.fd-player-career-ranks>a{grid-column:1/-1;color:var(--fd-red);font-weight:800;font-size:.9rem}
@media(max-width:900px){.fd-home-records,.fd-record-hero-grid,.fd-record-special-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fd-record-leaderboards,.fd-record-season-grid{grid-template-columns:1fr}.fd-player-career-ranks{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:600px){.fd-home-records,.fd-record-hero-grid,.fd-record-special-grid{grid-template-columns:1fr}.fd-record-player{grid-template-columns:30px 40px 1fr auto}.fd-record-player img,.fd-record-avatar{width:40px;height:40px}.fd-record-season{grid-template-columns:repeat(2,1fr)}.fd-player-career-ranks{grid-template-columns:1fr}.fd-record-hero strong{font-size:2.3rem}}


/* Fire Devil v2.6 – Erfolge & Gegner */
.fd-achievement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.fd-achievement-card{background:linear-gradient(145deg,#171717,#0d0d0d);border:1px solid var(--fd-line);border-radius:20px;overflow:hidden;box-shadow:var(--fd-shadow);transition:.2s transform,.2s border-color}.fd-achievement-card:hover{transform:translateY(-3px);border-color:rgba(225,25,18,.5)}.fd-achievement-photo{height:210px;background:#111;display:grid;place-items:center;font-size:4rem;overflow:hidden}.fd-achievement-photo img{width:100%;height:100%;object-fit:cover}.fd-achievement-body{padding:22px}.fd-achievement-kicker{color:var(--fd-red);font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.fd-achievement-body h3{margin:7px 0 8px;font-size:1.35rem;text-transform:uppercase}.fd-achievement-place{display:block;color:#fff;font-size:1.1rem}.fd-achievement-body p{color:#ccc;margin:8px 0}.fd-achievement-meta{color:#888;font-size:.8rem;margin:12px 0}.fd-achievement-body a{color:var(--fd-red);font-weight:900;text-decoration:none}.fd-achievement-grid--home .fd-achievement-card--featured{grid-column:span 2;display:grid;grid-template-columns:1.1fr 1fr}.fd-achievement-grid--home .fd-achievement-card--featured .fd-achievement-photo{height:100%;min-height:300px}.fd-opponent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.fd-opponent-card{display:grid;grid-template-columns:92px 1fr;gap:18px;align-items:center;background:#121212;border:1px solid var(--fd-line);border-radius:18px;padding:20px}.fd-opponent-logo{width:92px;height:92px;border-radius:18px;background:#fff;display:grid;place-items:center;overflow:hidden;font-size:2rem}.fd-opponent-logo img{width:100%;height:100%;object-fit:contain;padding:7px}.fd-opponent-card h3{margin:0 0 4px;text-transform:uppercase}.fd-opponent-card p{margin:0;color:#aaa}.fd-opponent-meta{display:flex;flex-direction:column;gap:4px;margin:10px 0;color:#888;font-size:.78rem}.fd-opponent-card a{color:var(--fd-red);font-weight:800;text-decoration:none}.fd-home-achievements-actions{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap}
@media(max-width:900px){.fd-achievement-grid,.fd-opponent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fd-achievement-grid--home .fd-achievement-card--featured{grid-column:1/-1}}
@media(max-width:620px){.fd-achievement-grid,.fd-opponent-grid{grid-template-columns:1fr}.fd-achievement-grid--home .fd-achievement-card--featured{display:block}.fd-achievement-grid--home .fd-achievement-card--featured .fd-achievement-photo{min-height:0;height:230px}.fd-opponent-card{grid-template-columns:74px 1fr}.fd-opponent-logo{width:74px;height:74px}}

/* Tabelle wieder sichtbar – v2.6.1 */
.fd-home-table-section{position:relative;overflow:hidden}
.fd-home-table-section:before{content:"";position:absolute;inset:-30% auto auto -8%;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(225,38,28,.13),transparent 68%);pointer-events:none}
.fd-home-table-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}
.fd-home-table-head .fd-muted{margin:4px 0 0}
.fd-table-page-card{margin-top:26px}
.fd-table-page-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.fd-table-wrap--compact .fd-table{min-width:680px}
.fd-table-wrap--compact .fd-table td,.fd-table-wrap--compact .fd-table th{padding-top:11px;padding-bottom:11px}
@media(max-width:760px){.fd-home-table-head{align-items:flex-start;flex-direction:column}.fd-home-table-head .fd-btn{width:100%;text-align:center}.fd-table-page-actions .fd-btn{width:100%;text-align:center}}
