.mein09-blt{--m09-yellow:#ffd900;--m09-black:#0c0c0d;--m09-soft:#f4f4f5;--m09-line:#dedee2;--m09-text:#171719;max-width:980px;margin:28px auto;font-family:inherit;color:var(--m09-text);background:#fff;border:1px solid var(--m09-line);border-radius:16px;overflow:hidden;box-shadow:0 10px 34px rgba(0,0,0,.07)}
.mein09-blt *{box-sizing:border-box}.mein09-blt__header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;background:var(--m09-black);color:#fff;border-bottom:4px solid var(--m09-yellow)}
.mein09-blt__brand{display:inline-block;font-size:11px;font-weight:900;letter-spacing:.16em;color:var(--m09-yellow);margin-bottom:5px}.mein09-blt__header h2{font-size:clamp(22px,3vw,32px);line-height:1.1;margin:0;color:#fff}.mein09-blt__season{padding:7px 11px;border-radius:999px;background:var(--m09-yellow);color:#111;font-weight:900;white-space:nowrap}
.mein09-blt__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.mein09-blt__table{width:100%;min-width:720px;border-collapse:collapse;margin:0}.mein09-blt__table th,.mein09-blt__table td{padding:12px 10px;border-bottom:1px solid #ececef;text-align:center;font-size:14px}.mein09-blt__table th{background:#f5f5f6;color:#555;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.mein09-blt__table th.club,.mein09-blt__table td.club{text-align:left}.mein09-blt__table .pos{width:46px;font-weight:800}.mein09-blt__table td.pos{border-left:4px solid transparent}.mein09-blt__table .pts{width:58px}.mein09-blt__table tbody tr:hover{background:#fafafa}.mein09-blt__table tbody tr.is-highlight{background:#fff8c8}.mein09-blt__table tbody tr.is-highlight:hover{background:#fff2a2}.mein09-blt__table tbody tr.is-highlight .club{font-weight:900}.mein09-blt__table tbody tr.zone-ucl td.pos{border-left-color:#2563eb}.mein09-blt__table tbody tr.zone-uel td.pos{border-left-color:#f97316}.mein09-blt__table tbody tr.zone-uecl td.pos{border-left-color:#16a34a}.mein09-blt__table tbody tr.zone-rel td.pos{border-left-color:#f59e0b}.mein09-blt__table tbody tr.zone-down td.pos{border-left-color:#dc2626}
.mein09-club-badge{display:inline-grid;place-items:center;width:35px;height:35px;margin-right:9px;border-radius:10px;background:#171719;color:#fff;font-size:10px;font-weight:900;vertical-align:middle;letter-spacing:.02em}.is-highlight .mein09-club-badge{background:var(--m09-yellow);color:#111;outline:2px solid #111}.mein09-club-name{vertical-align:middle;white-space:nowrap}.mein09-blt__legend{display:flex;gap:12px 18px;flex-wrap:wrap;padding:13px 24px;background:#fafafa;border-top:1px solid var(--m09-line);font-size:11px;color:#666}.mein09-blt__legend span{display:inline-flex;align-items:center;gap:6px}.mein09-blt__legend i{width:9px;height:9px;border-radius:50%;display:inline-block}.mein09-blt__legend .ucl{background:#2563eb}.mein09-blt__legend .uel{background:#f97316}.mein09-blt__legend .uecl{background:#16a34a}.mein09-blt__legend .rel{background:#f59e0b}.mein09-blt__legend .down{background:#dc2626}.mein09-blt__meta{display:flex;justify-content:space-between;gap:16px;padding:11px 24px;font-size:11px;color:#777;border-top:1px solid var(--m09-line)}.mein09-blt__meta a{color:#555;text-decoration:underline;text-underline-offset:2px}.mein09-blt__teaser{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:16px 18px 18px;padding:20px 22px;border-radius:13px;background:linear-gradient(120deg,#101012,#242428);color:#fff;border-left:5px solid var(--m09-yellow)}.mein09-blt__teaser-kicker{display:block;color:var(--m09-yellow);font-size:10px;letter-spacing:.14em;font-weight:900;margin-bottom:5px}.mein09-blt__teaser h3{color:#fff;font-size:20px;line-height:1.2;margin:0 0 6px}.mein09-blt__teaser p{margin:0;color:#d5d5d8;font-size:13px;line-height:1.55;max-width:680px}.mein09-blt__button{display:inline-flex;align-items:center;justify-content:center;min-width:128px;padding:11px 16px;background:var(--m09-yellow);color:#111!important;text-decoration:none!important;border-radius:9px;font-weight:900;font-size:13px;white-space:nowrap}.mein09-blt__button:hover{transform:translateY(-1px);filter:brightness(.96)}
.mein09-blt--compact{max-width:620px;margin:18px 0}.mein09-blt--compact .mein09-blt__header{padding:15px 17px;border-bottom-width:3px}.mein09-blt--compact .mein09-blt__brand{font-size:9px}.mein09-blt--compact .mein09-blt__header h2{font-size:20px}.mein09-blt--compact .mein09-blt__season{font-size:12px;padding:5px 9px}.mein09-blt__table--compact{min-width:0}.mein09-blt__table--compact th,.mein09-blt__table--compact td{padding:9px 8px;font-size:13px}.mein09-blt__table--compact th{font-size:10px}.mein09-blt__table--compact .mein09-club-badge{width:29px;height:29px;border-radius:8px;font-size:9px;margin-right:7px}.mein09-blt__compact-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 15px;background:#fafafa;border-top:1px solid var(--m09-line);font-size:10px;color:#777}.mein09-blt--compact .mein09-blt__button{min-width:0;padding:8px 11px;font-size:11px}
@media(max-width:700px){.mein09-blt{border-radius:12px;margin:18px 0}.mein09-blt__header{padding:18px}.mein09-blt__table th,.mein09-blt__table td{padding:10px 8px}.mein09-blt__legend,.mein09-blt__meta{padding-left:18px;padding-right:18px}.mein09-blt__teaser{align-items:flex-start;flex-direction:column;padding:18px}.mein09-blt__button{width:100%}.mein09-blt--compact .mein09-blt__button{width:auto}.mein09-blt__compact-foot{align-items:flex-start;flex-direction:column}.mein09-blt__table--compact .mein09-club-name{white-space:normal;line-height:1.15}}
/* V0.3 modules */
.mein09-game-card,.mein09-form-card,.mein09-matchday{--m09-yellow:#ffd900;--m09-black:#0c0c0d;--m09-line:#dedee2;max-width:980px;margin:20px 0;background:#fff;border:1px solid var(--m09-line);border-radius:14px;overflow:hidden;box-shadow:0 8px 28px rgba(0,0,0,.06);font-family:inherit;color:#171719}
.mein09-module-head{display:flex;align-items:center;gap:10px;padding:13px 16px;background:var(--m09-black);color:#fff;border-bottom:3px solid var(--m09-yellow)}.mein09-module-head span{font-size:9px;font-weight:900;letter-spacing:.14em;color:var(--m09-yellow)}.mein09-module-head strong{font-size:16px}.mein09-module-empty{padding:18px;margin:0;color:#666}
.mein09-game-card__meta{text-align:center;padding:14px 16px 4px;font-size:12px;color:#666;font-weight:700}.mein09-game-card__teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:18px 20px 24px}.mein09-game-card__teams>div{display:flex;align-items:center;gap:8px}.mein09-game-card__teams>div:last-child{justify-content:flex-end;text-align:right}.mein09-game-card__vs{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f3f3f4;font-size:11px;font-weight:900}
.mein09-form-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:18px}.mein09-form-item{display:flex;flex-direction:column;align-items:center;gap:5px;padding:11px 7px;border:1px solid #ececef;border-radius:10px;background:#fafafa}.mein09-form-badge{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-weight:900;color:#fff;background:#737373}.mein09-form-badge.is-w{background:#16a34a}.mein09-form-badge.is-u{background:#737373}.mein09-form-badge.is-n{background:#dc2626}.mein09-form-item small{font-size:10px;color:#666;font-weight:800}.mein09-form-item b{font-size:13px}
.mein09-matchday__list{padding:6px 0}.mein09-matchday__game{display:grid;grid-template-columns:105px minmax(130px,1fr) 50px minmax(130px,1fr);align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid #ececef;font-size:13px}.mein09-matchday__game:last-child{border-bottom:0}.mein09-matchday__game time{font-size:11px;color:#666}.mein09-matchday__game .home{text-align:right}.mein09-matchday__game .score{text-align:center}.mein09-matchday__game.is-highlight{background:#fff8c8;border-left:4px solid var(--m09-yellow)}
@media(max-width:700px){.mein09-game-card__teams{grid-template-columns:1fr auto 1fr;gap:8px;padding:15px 12px 20px}.mein09-game-card__teams>div{flex-direction:column;text-align:center!important;justify-content:center!important;font-size:12px}.mein09-form-row{gap:5px;padding:12px}.mein09-form-item{padding:8px 4px}.mein09-matchday__game{grid-template-columns:76px 1fr 38px 1fr;gap:6px;padding:10px 8px;font-size:11px}.mein09-matchday__game time{font-size:9px}}

/* V0.4 – bessere Lesbarkeit, Vereinsfarben und größere Spielmodule */
.mein09-club-badge{
  position:relative;overflow:hidden;
  width:38px;height:38px;border-radius:10px;
  background:linear-gradient(135deg,var(--club-primary,#171719) 0 68%,var(--club-secondary,#777) 68% 100%);
  color:var(--club-text,#fff);border:1px solid rgba(0,0,0,.14);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 1px 3px rgba(0,0,0,.08)
}
.mein09-club-badge span{position:relative;z-index:2;font-size:10px;font-weight:900;line-height:1;letter-spacing:.01em;text-shadow:0 1px 1px rgba(0,0,0,.28)}
.is-highlight .mein09-club-badge{outline:none;box-shadow:0 0 0 2px #111,inset 0 0 0 1px rgba(255,255,255,.2)}
.mein09-blt__table th,.mein09-blt__table td{font-size:15px;padding:13px 11px}
.mein09-blt__table th{font-size:11px;font-weight:800}
.mein09-blt__table .club{min-width:255px}
.mein09-blt__table .club .mein09-club-name{font-weight:700}
.mein09-blt__table tbody tr.is-highlight .club .mein09-club-name{font-weight:900}
.mein09-blt__table--compact th,.mein09-blt__table--compact td{font-size:14px;padding:10px 9px}
.mein09-blt__table--compact .club{min-width:0}
.mein09-blt__table--compact .mein09-club-badge{width:31px;height:31px;border-radius:8px}
.mein09-blt__table--compact .mein09-club-badge span{font-size:9px}

.mein09-game-card,.mein09-form-card,.mein09-matchday{border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.07)}
.mein09-module-head{padding:15px 18px;gap:12px}
.mein09-module-head span{font-size:10px}
.mein09-module-head strong{font-size:19px;line-height:1.2}
.mein09-game-card__meta{padding:18px 18px 6px;font-size:14px;color:#4f4f55}
.mein09-game-card__teams{grid-template-columns:minmax(0,1fr) 62px minmax(0,1fr);gap:22px;padding:22px 24px 28px}
.mein09-game-card__teams>div{gap:12px;min-width:0}
.mein09-game-card__teams>div strong{font-size:18px;line-height:1.25}
.mein09-game-card__teams .mein09-club-badge{width:46px;height:46px;border-radius:12px;flex:0 0 46px}
.mein09-game-card__teams .mein09-club-badge span{font-size:11px}
.mein09-game-card__vs{width:54px;height:54px;font-size:13px;background:#111;color:#fff;border:3px solid #ffd900}

.mein09-form-row{gap:12px;padding:20px}
.mein09-form-item{gap:7px;padding:14px 8px;border-radius:12px;background:#fff}
.mein09-form-item .mein09-club-badge{width:38px;height:38px;margin:1px 0 0}
.mein09-form-item .mein09-club-badge span{font-size:10px}
.mein09-form-badge{width:34px;height:34px;font-size:13px}
.mein09-form-item small{font-size:11px;color:#4d4d52}
.mein09-form-item b{font-size:15px}

.mein09-matchday__list{padding:0}
.mein09-matchday__game{grid-template-columns:115px minmax(180px,1fr) 58px minmax(180px,1fr);gap:12px;padding:13px 18px;font-size:14px}
.mein09-matchday__game time{font-size:12px;font-weight:700;color:#5d5d62}
.mein09-matchday__game .team{display:flex;align-items:center;gap:9px;min-width:0;font-weight:700}
.mein09-matchday__game .team.home{justify-content:flex-end;text-align:right}
.mein09-matchday__game .team.away{justify-content:flex-start;text-align:left}
.mein09-matchday__game .team-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mein09-matchday__game .mein09-club-badge{width:32px;height:32px;border-radius:8px;flex:0 0 32px;margin:0}
.mein09-matchday__game .mein09-club-badge span{font-size:9px}
.mein09-matchday__game .score{font-size:16px}
.mein09-matchday__game.is-highlight{background:#fff7bf;border-left:5px solid #ffd900}

@media(max-width:700px){
  .mein09-blt__table th,.mein09-blt__table td{font-size:13px;padding:10px 8px}
  .mein09-blt__table .club{min-width:210px}
  .mein09-game-card__meta{font-size:12px;padding-top:14px}
  .mein09-game-card__teams{grid-template-columns:1fr 46px 1fr;gap:7px;padding:16px 10px 20px}
  .mein09-game-card__teams>div{gap:7px}
  .mein09-game-card__teams>div strong{font-size:13px;line-height:1.2}
  .mein09-game-card__teams .mein09-club-badge{width:40px;height:40px;flex-basis:40px}
  .mein09-game-card__vs{width:42px;height:42px;font-size:11px;border-width:2px}
  .mein09-form-row{grid-template-columns:repeat(5,minmax(50px,1fr));overflow-x:auto;gap:7px;padding:12px}
  .mein09-form-item{min-width:58px;padding:10px 5px}
  .mein09-matchday__game{grid-template-columns:82px minmax(0,1fr) 34px minmax(0,1fr);gap:5px;padding:10px 7px;font-size:11px}
  .mein09-matchday__game time{font-size:9px}
  .mein09-matchday__game .team{gap:4px}
  .mein09-matchday__game .team-name{display:none}
  .mein09-matchday__game .mein09-club-badge{width:31px;height:31px;flex-basis:31px}
  .mein09-matchday__game .team.home{justify-content:flex-end}
  .mein09-matchday__game .score{font-size:13px}
}

/* V0.5 – Lesbarkeit, konsistente Vereinsfarben und stärkere BVB-Hervorhebung */
.mein09-blt,.mein09-game-card,.mein09-form-card,.mein09-matchday{color:#111;line-height:1.35}
.mein09-module-head{min-height:54px;padding:15px 20px}.mein09-module-head strong{font-size:20px;font-weight:900}.mein09-module-head span{font-size:10px}

/* Vereinsbadges: klarer zweigeteilt statt schwer lesbarer Diagonale */
.mein09-club-badge{display:inline-grid;place-items:center;position:relative;isolation:isolate;background:var(--club-primary,#171719)!important;border:2px solid var(--club-primary,#171719);box-shadow:0 1px 3px rgba(0,0,0,.14);overflow:hidden}
.mein09-club-badge:after{content:"";position:absolute;z-index:-1;right:-1px;top:-1px;width:34%;height:calc(100% + 2px);background:var(--club-secondary,#777);border-left:1px solid rgba(255,255,255,.35)}
.mein09-club-badge span{color:var(--club-text,#fff);font-weight:950;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.club-bvb{--club-primary:#FDE100!important;--club-secondary:#111!important;--club-text:#000!important}
.club-fcb{--club-primary:#DC052D!important;--club-secondary:#0066B2!important;--club-text:#fff!important}
.club-scf{--club-primary:#E30613!important;--club-secondary:#111!important;--club-text:#fff!important}
.club-fca{--club-primary:#BA3733!important;--club-secondary:#46714D!important;--club-text:#fff!important}
.club-b04{--club-primary:#E32221!important;--club-secondary:#111!important;--club-text:#fff!important}
.club-m05{--club-primary:#C3142D!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-sve{--club-primary:#111!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-svw{--club-primary:#148754!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-rbl{--club-primary:#D5003A!important;--club-secondary:#001E45!important;--club-text:#fff!important}
.club-sge{--club-primary:#E1000F!important;--club-secondary:#111!important;--club-text:#fff!important}
.club-s04{--club-primary:#004D9D!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-scp{--club-primary:#006EB7!important;--club-secondary:#111!important;--club-text:#fff!important}
.club-koe{--club-primary:#ED1C24!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-tsg{--club-primary:#1961AE!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-vfb{--club-primary:#E32219!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-hsv{--club-primary:#005AAA!important;--club-secondary:#111!important;--club-text:#fff!important}
.club-fcu{--club-primary:#E30613!important;--club-secondary:#FFDD00!important;--club-text:#fff!important}
.club-bmg{--club-primary:#111!important;--club-secondary:#00A651!important;--club-text:#fff!important}

/* Tabellenlesbarkeit */
.mein09-blt__table th{letter-spacing:.035em;color:#45454a;background:#f7f7f8}
.mein09-blt__table td{font-weight:600}.mein09-blt__table .pos,.mein09-blt__table .pts{text-align:center}.mein09-blt__table .pts strong{font-size:16px}.mein09-blt__table tbody tr{min-height:54px}.mein09-blt__table tbody tr:hover{background:#f8f8f9}
.mein09-blt__table tbody tr.is-highlight{background:#fff2a6!important;box-shadow:inset 0 0 0 2px #111,inset 6px 0 0 #ffd900}
.mein09-blt__table tbody tr.is-highlight td{font-weight:900;color:#080808}.mein09-blt__table tbody tr.is-highlight .mein09-club-badge{box-shadow:0 0 0 2px #111,0 2px 5px rgba(0,0,0,.15)}
.mein09-blt__table--compact tbody tr.is-highlight{background:#ffe86a!important;box-shadow:inset 0 0 0 2px #111,inset 5px 0 0 #111}
.mein09-blt__table--compact th,.mein09-blt__table--compact td{font-size:15px}.mein09-blt__table--compact .mein09-club-name{font-size:14px}

/* Nächstes Spiel */
.mein09-game-card__meta{font-size:15px;font-weight:800;color:#333;padding-top:18px}.mein09-game-card__teams{padding:24px 28px 30px}.mein09-game-card__teams>div strong{font-size:19px;font-weight:900}.mein09-game-card__teams .mein09-club-badge{width:50px;height:50px;flex-basis:50px}.mein09-game-card__vs{width:58px;height:58px;font-size:14px;font-weight:950}
.mein09-game-card:has(.club-bvb){border:2px solid #111;box-shadow:0 0 0 3px #ffd900,0 12px 30px rgba(0,0,0,.08)}

/* Form */
.mein09-form-row{gap:14px}.mein09-form-item{min-height:118px;justify-content:center;border:1px solid #d9d9dd;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.035)}.mein09-form-item small{font-size:12px;font-weight:900;color:#222}.mein09-form-item b{font-size:16px}.mein09-form-badge{width:36px;height:36px;font-size:13px}

/* Spieltag: größer, klarer und BVB sofort sichtbar */
.mein09-matchday__game{grid-template-columns:125px minmax(220px,1fr) 64px minmax(220px,1fr);min-height:58px;padding:13px 20px;font-size:15px}.mein09-matchday__game time{font-size:12px;color:#333}.mein09-matchday__game .team{font-size:14px;font-weight:800}.mein09-matchday__game .mein09-club-badge{width:35px;height:35px;flex-basis:35px}.mein09-matchday__game .score{font-size:18px;font-weight:950}.mein09-matchday__game.is-highlight{position:relative;background:#ffe86a!important;border-left:0;box-shadow:inset 0 0 0 2px #111}.mein09-matchday__game.is-highlight:before{content:"BVB";position:absolute;left:0;top:0;bottom:0;width:7px;background:#111;color:transparent}.mein09-matchday__game.is-highlight .team-name,.mein09-matchday__game.is-highlight time,.mein09-matchday__game.is-highlight .score{font-weight:950;color:#000}

@media(max-width:700px){
 .mein09-module-head strong{font-size:17px}
 .mein09-blt__table--compact th,.mein09-blt__table--compact td{font-size:13px}
 .mein09-blt__table--compact .mein09-club-name{font-size:13px}
 .mein09-game-card__teams>div strong{font-size:14px}
 .mein09-matchday__game{grid-template-columns:78px minmax(0,1fr) 38px minmax(0,1fr);min-height:54px;padding:10px 9px;font-size:12px}
 .mein09-matchday__game .team-name{display:block;font-size:11px;line-height:1.1;white-space:normal}
 .mein09-matchday__game .mein09-club-badge{width:30px;height:30px;flex-basis:30px}
 .mein09-matchday__game time{font-size:9px}
}

/* V0.6 – Kontrast-Update: Vereinsfarben ohne überdeckte Schrift */
.mein09-club-badge{
  background:var(--club-primary,#171719)!important;
  color:var(--club-text,#fff)!important;
  border:2px solid rgba(0,0,0,.28)!important;
  border-bottom:5px solid var(--club-secondary,#777)!important;
  overflow:hidden;
  box-shadow:0 1px 3px rgba(0,0,0,.14),0 0 0 1px rgba(255,255,255,.18) inset;
}
.mein09-club-badge:after{display:none!important;content:none!important}
.mein09-club-badge span{
  position:relative;
  z-index:1;
  color:var(--club-text,#fff)!important;
  font-weight:950;
  text-shadow:none!important;
  line-height:1;
}
/* Helle Hauptflächen benötigen schwarze Schrift. */
.club-bvb{--club-primary:#FDE100!important;--club-secondary:#111!important;--club-text:#000!important}
/* Dunkle/satte Hauptflächen nutzen weiße Schrift; Zweitfarbe bleibt nur Akzent. */
.club-fcb{--club-primary:#DC052D!important;--club-secondary:#0066B2!important;--club-text:#fff!important}
.club-scf{--club-primary:#E30613!important;--club-secondary:#111!important;--club-text:#fff!important}
.club-fca{--club-primary:#A61E22!important;--club-secondary:#46714D!important;--club-text:#fff!important}
.club-b04{--club-primary:#D71920!important;--club-secondary:#111!important;--club-text:#fff!important}
.club-m05{--club-primary:#C3142D!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-sve{--club-primary:#171719!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-svw{--club-primary:#148754!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-rbl{--club-primary:#C8102E!important;--club-secondary:#001E45!important;--club-text:#fff!important}
.club-sge{--club-primary:#D20A0A!important;--club-secondary:#111!important;--club-text:#fff!important}
.club-s04{--club-primary:#005CA9!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-scp{--club-primary:#006EB7!important;--club-secondary:#111!important;--club-text:#fff!important}
.club-koe{--club-primary:#D71920!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-tsg{--club-primary:#1961AE!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-vfb{--club-primary:#D71920!important;--club-secondary:#fff!important;--club-text:#fff!important}
.club-hsv{--club-primary:#005AAA!important;--club-secondary:#111!important;--club-text:#fff!important}
.club-fcu{--club-primary:#D71920!important;--club-secondary:#FFDD00!important;--club-text:#fff!important}
.club-bmg{--club-primary:#171719!important;--club-secondary:#00A651!important;--club-text:#fff!important}

/* Kürzel etwas größer und klarer, ohne die Boxen unnötig aufzublähen. */
.mein09-club-badge span{font-size:10px!important;letter-spacing:.015em}
.mein09-blt__table--compact .mein09-club-badge span,.mein09-matchday__game .mein09-club-badge span{font-size:9px!important}
.mein09-game-card__teams .mein09-club-badge span{font-size:11px!important}
.mein09-form-item .mein09-club-badge span{font-size:10px!important}

/* BVB bleibt der stärkste visuelle Fokus. */
.mein09-blt__table tbody tr.is-highlight,
.mein09-blt__table--compact tbody tr.is-highlight{background:#FFE566!important}
.mein09-blt__table tbody tr.is-highlight{box-shadow:inset 0 0 0 2px #111,inset 6px 0 0 #111}
.mein09-matchday__game.is-highlight{background:#FFE566!important;box-shadow:inset 0 0 0 2px #111}

/* V0.7 – Feinschliff, bessere mobile Tabellenansicht und Spieltag-Lesbarkeit */
.mein09-matchday__game{
  padding-top:15px;
  padding-bottom:15px;
  column-gap:14px;
  transition:background-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.mein09-matchday__game time{font-size:13px;font-weight:700;line-height:1.25}
.mein09-matchday__game .team-name{font-size:15px;line-height:1.25}
.mein09-matchday__game .score{font-size:19px}
@media (hover:hover) and (pointer:fine){
  .mein09-matchday__game:not(.is-highlight):hover{background:#f7f7f8;box-shadow:inset 4px 0 0 #ffd900}
  .mein09-matchday__game.is-highlight:hover{background:#ffdf3d!important}
}

/* Auf Smartphones müssen Platz, Verein und Punkte immer ohne horizontales Scrollen sichtbar sein. */
@media(max-width:700px){
  .mein09-blt__scroll{overflow-x:visible}
  .mein09-blt__table{min-width:0;width:100%;table-layout:auto}

  /* Große Tabelle mobil auf die wichtigsten Angaben reduzieren: #, Verein, Sp, Pkt. */
  .mein09-blt__table:not(.mein09-blt__table--compact) th:nth-child(4),
  .mein09-blt__table:not(.mein09-blt__table--compact) td:nth-child(4),
  .mein09-blt__table:not(.mein09-blt__table--compact) th:nth-child(5),
  .mein09-blt__table:not(.mein09-blt__table--compact) td:nth-child(5),
  .mein09-blt__table:not(.mein09-blt__table--compact) th:nth-child(6),
  .mein09-blt__table:not(.mein09-blt__table--compact) td:nth-child(6),
  .mein09-blt__table:not(.mein09-blt__table--compact) th:nth-child(7),
  .mein09-blt__table:not(.mein09-blt__table--compact) td:nth-child(7),
  .mein09-blt__table:not(.mein09-blt__table--compact) th:nth-child(8),
  .mein09-blt__table:not(.mein09-blt__table--compact) td:nth-child(8){display:none}

  .mein09-blt__table .pos{width:36px;min-width:36px}
  .mein09-blt__table .club{min-width:0!important;width:auto}
  .mein09-blt__table .pts{width:52px;min-width:52px;font-weight:950}
  .mein09-blt__table th,.mein09-blt__table td{padding:10px 6px;font-size:13px}
  .mein09-blt__table .mein09-club-name{white-space:normal;line-height:1.18}
  .mein09-blt__table .mein09-club-badge{width:30px;height:30px;margin-right:6px;border-radius:8px}

  /* Kompakte Startseiten-Tabelle: Spielanzahl ausblenden, damit Punkte garantiert sichtbar bleiben. */
  .mein09-blt__table--compact th:nth-child(3),
  .mein09-blt__table--compact td:nth-child(3){display:none}
  .mein09-blt__table--compact .pts{width:50px;min-width:50px}

  /* Spieltag mobil: etwas mehr Zeilenhöhe und lesbarere Metadaten. */
  .mein09-matchday__game{grid-template-columns:72px minmax(0,1fr) 34px minmax(0,1fr);gap:7px;min-height:62px;padding:12px 9px}
  .mein09-matchday__game time{font-size:10px;line-height:1.25}
  .mein09-matchday__game .team-name{font-size:12px;line-height:1.2}
  .mein09-matchday__game .score{font-size:15px}
}

@media(max-width:420px){
  /* Auf sehr schmalen Geräten bleibt nur das wirklich Wichtige: Platz, Verein, Punkte. */
  .mein09-blt__table:not(.mein09-blt__table--compact) th:nth-child(3),
  .mein09-blt__table:not(.mein09-blt__table--compact) td:nth-child(3){display:none}
  .mein09-blt__table th,.mein09-blt__table td{padding-left:5px;padding-right:5px}
  .mein09-blt__table .mein09-club-name{font-size:12px}
}

/* V0.8 – echte Mobile-Tabellenansicht: Platz + Verein + Punkte immer sichtbar */
.mein09-mobile-meta,.mein09-points-label{display:none}
.mein09-club-copy{display:inline-flex;align-items:center;min-width:0}

@media(max-width:700px){
  .mein09-blt__scroll{overflow:visible!important}
  .mein09-blt__table,
  .mein09-blt__table--compact{display:block!important;width:100%!important;min-width:0!important;border-collapse:separate!important}
  .mein09-blt__table thead{display:none!important}
  .mein09-blt__table tbody{display:block!important;width:100%}
  .mein09-blt__table tbody tr{
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr) 66px;
    align-items:stretch;
    width:100%;
    min-height:74px;
    background:#fff;
    border-bottom:1px solid #e5e5e8;
    box-shadow:none!important;
  }
  .mein09-blt__table tbody tr:last-child{border-bottom:0}
  .mein09-blt__table tbody tr>td{display:none!important;border:0!important;padding:10px 8px!important;min-width:0!important;width:auto!important}
  .mein09-blt__table tbody tr>td.pos,
  .mein09-blt__table tbody tr>td.club,
  .mein09-blt__table tbody tr>td.pts{display:flex!important}

  .mein09-blt__table td.pos{
    grid-column:1;
    align-items:center;
    justify-content:center;
    font-size:18px!important;
    font-weight:950!important;
    border-left:5px solid transparent!important;
    padding-left:5px!important;
    padding-right:5px!important;
  }
  .mein09-blt__table tbody tr.zone-ucl td.pos{border-left-color:#2563eb!important}
  .mein09-blt__table tbody tr.zone-uel td.pos{border-left-color:#f97316!important}
  .mein09-blt__table tbody tr.zone-uecl td.pos{border-left-color:#16a34a!important}
  .mein09-blt__table tbody tr.zone-rel td.pos{border-left-color:#f59e0b!important}
  .mein09-blt__table tbody tr.zone-down td.pos{border-left-color:#dc2626!important}

  .mein09-blt__table td.club{
    grid-column:2;
    align-items:center;
    gap:10px;
    text-align:left!important;
    overflow:hidden;
  }
  .mein09-blt__table td.club .mein09-club-badge{
    width:40px!important;
    height:40px!important;
    flex:0 0 40px!important;
    margin:0!important;
    border-radius:10px!important;
  }
  .mein09-blt__table td.club .mein09-club-badge span{font-size:11px!important}
  .mein09-club-copy{display:flex!important;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-width:0}
  .mein09-blt__table .mein09-club-name{
    display:block;
    max-width:100%;
    font-size:15px!important;
    line-height:1.15!important;
    font-weight:850!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  .mein09-mobile-meta{
    display:block!important;
    color:#64646b;
    font-size:10.5px;
    line-height:1.2;
    font-weight:700;
    white-space:nowrap;
  }

  .mein09-blt__table td.pts{
    grid-column:3;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:1px;
    background:#f7f7f8;
    border-left:1px solid #e0e0e3!important;
    font-weight:950!important;
  }
  .mein09-blt__table td.pts strong{font-size:20px!important;line-height:1!important}
  .mein09-points-label{display:block!important;font-size:9px;line-height:1.1;text-transform:uppercase;letter-spacing:.04em;color:#6a6a70;font-weight:800}

  .mein09-blt__table tbody tr.is-highlight{
    background:#FFE566!important;
    box-shadow:inset 0 0 0 2px #111!important;
  }
  .mein09-blt__table tbody tr.is-highlight td.pts{background:#ffd900!important;border-left-color:#111!important}
  .mein09-blt__table tbody tr.is-highlight .mein09-mobile-meta,
  .mein09-blt__table tbody tr.is-highlight .mein09-points-label{color:#111}

  .mein09-blt--compact .mein09-blt__table tbody tr{min-height:66px;grid-template-columns:42px minmax(0,1fr) 58px}
  .mein09-blt--compact .mein09-blt__table td.club .mein09-club-badge{width:34px!important;height:34px!important;flex-basis:34px!important}
  .mein09-blt--compact .mein09-blt__table .mein09-club-name{font-size:13px!important}
  .mein09-blt--compact .mein09-mobile-meta{font-size:9.5px}
  .mein09-blt--compact .mein09-blt__table td.pts strong{font-size:18px!important}
}

@media(max-width:390px){
  .mein09-blt__table tbody tr{grid-template-columns:42px minmax(0,1fr) 58px;min-height:70px}
  .mein09-blt__table td.club{gap:8px;padding-left:6px!important;padding-right:6px!important}
  .mein09-blt__table td.club .mein09-club-badge{width:36px!important;height:36px!important;flex-basis:36px!important}
  .mein09-blt__table .mein09-club-name{font-size:13.5px!important}
  .mein09-mobile-meta{font-size:9.5px}
  .mein09-blt__table td.pts strong{font-size:18px!important}
}


/* V0.8.1 – truly separate phone list; legacy table CSS never controls mobile rows. */
.mein09-blt .mein09-blt__mobile{display:none}
@media(max-width:767px){
  .mein09-blt .mein09-blt__scroll{display:none!important}
  .mein09-blt .mein09-blt__mobile{display:block!important;width:100%;max-width:100%;overflow:hidden;background:#fff}
  .mein09-blt .mein09-blt__mobile-row{
    display:grid;grid-template-columns:26px 36px minmax(0,1fr) 45px;gap:9px;
    align-items:center;min-width:0;padding:12px 10px;
    border-bottom:1px solid #e5e5e8;background:#fff;color:#171719;
  }
  .mein09-blt .mein09-blt__mobile-row:last-child{border-bottom:0}
  .mein09-blt .mein09-blt__mobile-row.is-highlight{background:#ffe566;box-shadow:inset 0 0 0 2px #111;color:#111}
  .mein09-blt .mein09-blt__mobile-pos{text-align:center;font-size:15px;line-height:1.2;font-weight:900}
  .mein09-blt .mein09-blt__mobile-row.zone-ucl{border-left:4px solid #2563eb;padding-left:6px}
  .mein09-blt .mein09-blt__mobile-row.zone-uel{border-left:4px solid #f97316;padding-left:6px}
  .mein09-blt .mein09-blt__mobile-row.zone-uecl{border-left:4px solid #16a34a;padding-left:6px}
  .mein09-blt .mein09-blt__mobile-row.zone-rel{border-left:4px solid #f59e0b;padding-left:6px}
  .mein09-blt .mein09-blt__mobile-row.zone-down{border-left:4px solid #dc2626;padding-left:6px}
  .mein09-blt .mein09-blt__mobile-badge{display:flex;align-items:center;min-width:0}
  .mein09-blt .mein09-blt__mobile-badge .mein09-club-badge{width:36px!important;height:36px!important;margin:0!important;flex:0 0 36px;border-radius:9px!important}
  .mein09-blt .mein09-blt__mobile-badge .mein09-club-badge span{font-size:10px!important}
  .mein09-blt .mein09-blt__mobile-info{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
  .mein09-blt .mein09-blt__mobile-name{display:block;max-width:100%;font-size:14px;font-weight:850;line-height:1.25;overflow-wrap:break-word;hyphens:auto}
  .mein09-blt .mein09-blt__mobile-stats{display:block;max-width:100%;color:#595960;font-size:10.5px;font-weight:650;line-height:1.3;white-space:normal}
  .mein09-blt .mein09-blt__mobile-points{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;text-align:center;font-variant-numeric:tabular-nums}
  .mein09-blt .mein09-blt__mobile-points strong{font-size:21px;line-height:1;font-weight:950}
  .mein09-blt .mein09-blt__mobile-points small{color:#555;font-size:10px;line-height:1.1;font-weight:800}
  .mein09-blt .mein09-blt__mobile-row.is-highlight .mein09-blt__mobile-stats,
  .mein09-blt .mein09-blt__mobile-row.is-highlight .mein09-blt__mobile-points small{color:#222}
  .mein09-blt--compact .mein09-blt__mobile-row{padding-top:10px;padding-bottom:10px}
}
@media(max-width:360px){
  .mein09-blt .mein09-blt__mobile-row{grid-template-columns:22px 32px minmax(0,1fr) 40px;gap:6px;padding-right:7px}
  .mein09-blt .mein09-blt__mobile-badge .mein09-club-badge{width:32px!important;height:32px!important;flex-basis:32px}
  .mein09-blt .mein09-blt__mobile-name{font-size:12.5px}
  .mein09-blt .mein09-blt__mobile-stats{font-size:9.5px}
  .mein09-blt .mein09-blt__mobile-points strong{font-size:19px}
}

/* V0.9: subtle BVB outline, preserving the yellow club highlight. */
.mein09-blt__table tbody tr.is-highlight,
.mein09-blt__table--compact tbody tr.is-highlight{box-shadow:inset 0 0 0 1px rgba(17,17,17,.7),inset 4px 0 0 #111!important}
.mein09-matchday__game.is-highlight{box-shadow:inset 0 0 0 1px rgba(17,17,17,.7)!important}
@media(max-width:767px){
  .mein09-blt .mein09-blt__mobile-row.is-highlight{box-shadow:inset 0 0 0 1px rgba(17,17,17,.68)!important}
}
