/* Scoped to the Matchcenter: preserve the widgets and their live behaviour. */
.mc { --mc-green:#6eb645; --mc-dark:#15231a; background:#f2f5f1; color:var(--mc-dark); font-family:Poppins,Arial,sans-serif; }
.mc-wrap { width:min(1360px,100%); margin:auto; padding-inline:32px; }
.mc-hero { background:var(--mc-dark); color:white; }
.mc-hero__inner { display:flex; align-items:center; justify-content:space-between; gap:32px; padding-block:48px; }
.mc-kicker { font-size:11px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; margin:0 0 12px; color:#426c32; }
.mc-hero .mc-kicker, .mc-hero h1 span { color:var(--mc-green); }
.mc h1 { font-size:clamp(34px,4.5vw,64px); line-height:1.08; letter-spacing:-.045em; margin:0; font-weight:700; }
.mc-intro { font-size:14px; color:#cad5cb; margin:20px 0 0; }
.mc-hero img { width:120px; height:120px; object-fit:contain; }
.mc-nav { background:white; border-bottom:1px solid #dae2d7; }
.mc-nav .mc-wrap { display:flex; gap:36px; }
.mc-nav a { padding:22px 0; font-size:13px; font-weight:600; text-decoration:none; color:var(--mc-dark); }
.mc-nav a span { color:#4b8130; margin-left:12px; }
.mc-nav a:last-child { margin-left:auto; }
.mc a:focus-visible,.mc button:focus-visible { outline:2px solid var(--mc-green); outline-offset:3px; }
.mc-content { padding-block:40px 56px; }
.mc-countdown[hidden] { display:none!important; }
.mc-countdown { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-bottom:28px; padding:32px 36px; border-radius:18px; background:radial-gradient(ellipse at top right,#6eb64520,transparent 65%),var(--mc-dark); color:#fff; border:1px solid #6eb64535; }
.mc-countdown .mc-kicker { color:var(--mc-green); }
.mc-countdown h2 { font-size:clamp(26px,3vw,40px); }
.mc-countdown__fixture { font-size:16px; font-weight:600; margin:14px 0 4px; }
.mc-countdown__date { color:#bac8bb; font-size:12px; margin:0; }
.mc-countdown__clock { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; flex:0 0 48%; text-align:center; }
.mc-countdown__clock strong { display:block; font-size:clamp(42px,5.4vw,76px); font-weight:700; line-height:1.1; letter-spacing:-.05em; font-variant-numeric:tabular-nums; }
.mc-countdown__clock div:last-child strong { color:var(--mc-green); }
.mc-countdown__clock span { display:block; margin-top:12px; font-size:10px; text-transform:uppercase; letter-spacing:.12em; color:#c2d0c0; }
@media(max-width:800px) {
 .mc-countdown { flex-direction:column; align-items:stretch; padding:26px 22px; gap:26px; }
 .mc-countdown__clock { flex-basis:auto; gap:10px; border-top:1px solid #ffffff20; padding-top:22px; }
 .mc-countdown__clock strong { font-size:clamp(36px,9vw,60px); }
 .mc-countdown__clock span { font-size:8px; letter-spacing:.06em; }
}
.mc-overview { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:24px; align-items:start; margin-bottom:32px; }
.mc-sidebar { display:grid; gap:24px; min-width:0; align-content:start; }
.mc-overview > #mc-live { align-self:stretch; }
.mc-panel { min-width:0; background:white; border:1px solid #e1e8dd; border-radius:18px; overflow:hidden; box-shadow:0 10px 32px #15231a06; scroll-margin-top:calc(var(--sva-header-height) + 20px); }
.mc-panel__head { padding:28px 28px 20px; }
.mc h2 { font-size:30px; font-weight:700; line-height:1.2; letter-spacing:-.035em; margin:0; }
.mc-panel__head > p:last-child:not(.mc-kicker) { font-size:12px; color:#667364; margin:10px 0 0; }
.mc-widget { padding:0 24px 20px; min-width:0; }
.mc-more { display:flex; justify-content:space-between; padding:20px 28px; border-top:1px solid #e2e8df; color:#284825; font-size:13px; font-weight:600; text-decoration:none; }
.mc-more:hover { background:#edf5e8; }
.mc-table-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.mc-team-tag { border:1px solid #c7dfba; background:#edf5e8; padding:10px 16px; border-radius:30px; font-size:12px; font-weight:600; }
.mc-table-note,.mc-source-note { font-size:11px; line-height:1.7; color:#657160; }
.mc-table-note { padding:0 28px 20px; margin:0; }
.mc-source-note { margin:20px 0 0; }
/* Third-party styles are injected after page load, so scoped overrides are explicit. */
:is(#sva-matchcenter,#sva-team) .fp-view, :is(#sva-matchcenter,#sva-team) .fp-view * { font-family:Poppins,Arial,sans-serif!important; box-sizing:border-box; }
:is(#sva-matchcenter,#sva-team) .fp-view { background:transparent!important; color:#15231a!important; border:0!important; box-shadow:none!important; padding:0!important; height:auto!important; max-height:none!important; width:100%!important; max-width:none!important; }
:is(#sva-matchcenter,#sva-team) .fp-widget-footer-container { display:flex!important; justify-content:space-between!important; width:100%!important; padding:16px 0 0!important; margin:0!important; gap:12px; }
:is(#sva-matchcenter,#sva-team) .fp-widget-footer-container a { flex:0 1 auto!important; width:auto!important; font:10px/1.5 Poppins,Arial,sans-serif!important; color:#667364!important; }
:is(#sva-matchcenter,#sva-team) .fp-widget-footer-link { font-size:10px!important; }
/* Liveticker retains its refresh control, reports and takeover link. */
:is(#sva-matchcenter,#sva-team) .fp-liveticker-view-header-container { padding:12px 0!important; border-top:1px solid #e1e8dd; }
:is(#sva-matchcenter,#sva-team) .fp-liveticker-view-heading { font-size:12px!important; font-weight:600!important; color:#55664f!important; }
:is(#sva-matchcenter,#sva-team) .match-header { display:grid!important; grid-template-columns:1fr 1fr 1fr; align-items:center; padding:26px 12px!important; background:#edf4e8!important; border-radius:12px; gap:12px; }
:is(#sva-matchcenter,#sva-team) .match-header { width:100%!important; max-width:none!important; margin:0!important; }
:is(#sva-matchcenter,#sva-team) .match-header-center { width:100%!important; align-items:center!important; justify-content:center!important; text-align:center; }
:is(#sva-matchcenter,#sva-team) .match-header-result-container { height:auto!important; min-height:0!important; align-items:center!important; justify-content:center!important; }
:is(#sva-matchcenter,#sva-team) .match-header-caption:empty { display:none!important; }
:is(#sva-matchcenter,#sva-team) .match-header-team { min-width:0; flex-direction:column!important; align-items:center!important; text-align:center; }
:is(#sva-matchcenter,#sva-team) .match-header-team-image-container { width:56px!important; height:56px!important; margin:auto; }
:is(#sva-matchcenter,#sva-team) .match-header-team-image { width:56px!important; height:56px!important; object-fit:contain; }
:is(#sva-matchcenter,#sva-team) .match-header-team-name { display:block!important; font-size:14px!important; font-weight:600!important; white-space:normal!important; margin-top:12px; }
:is(#sva-matchcenter,#sva-team) .match-header-status-text { font-size:24px!important; line-height:1.3!important; font-weight:700; color:#203d25!important; }
:is(#sva-matchcenter,#sva-team) .match-header-link { text-decoration:none!important; color:inherit!important; }
:is(#sva-matchcenter,#sva-team) .match-body { padding-top:20px!important; margin-top:0!important; }
:is(#sva-matchcenter,#sva-team) .match-body-no-ticker { padding:20px 12px!important; }
:is(#sva-matchcenter,#sva-team) .match-body-no-ticker-message { display:block!important; white-space:normal!important; text-align:center; font-size:12px!important; line-height:1.7!important; color:#657160!important; }
:is(#sva-matchcenter,#sva-team) .match-body-no-ticker-button { background:#15231a!important; padding:12px 18px!important; border-radius:6px!important; font-size:12px!important; text-decoration:none!important; }
:is(#sva-matchcenter,#sva-team) .match-body-no-ticker-button span { color:#fff!important; }
/* Compact games widget. */
:is(#sva-matchcenter,#sva-team) .fp-team-matches-view-module-header { font-size:12px!important; color:#657160!important; padding:12px 0!important; border-top:1px solid #e1e8dd; }
:is(#sva-matchcenter,#sva-team) .fp-team-matches-view-match-row-match { padding:22px 8px!important; border-bottom:1px solid #e3e9df!important; border-radius:0!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-matches-view-match-row-name { font-size:12px!important; line-height:1.4!important; white-space:normal!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-matches-view-match-row-score { font-size:20px!important; background:#edf5e8!important; color:#24472a!important; border-radius:5px!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-matches-view-match-row-score.fp-color-loss { background:#f8e9e6!important; color:#8a3628!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-matches-view-match-row-emblem { width:24px!important; min-width:24px; height:24px!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-matches-view-match-row-image { width:24px!important; height:24px!important; object-fit:contain; }
/* League table: generous rows, clear numbers and a dedicated Aubing highlight. */
:is(#sva-matchcenter,#sva-team) .fp-team-standings-view-header { display:block!important; font-size:13px!important; font-weight:500!important; color:#657160!important; text-align:left!important; padding:0 4px 20px!important; }
:is(#sva-matchcenter,#sva-team) .fp-table { width:100%!important; border:1px solid #e0e7db; border-radius:12px; overflow:hidden; }
:is(#sva-matchcenter,#sva-team) .fp-table-row { display:grid!important; grid-template-columns:28px 28px minmax(100px,1fr) 30px 58px 48px 36px 40px; align-items:center; gap:6px; padding:11px 10px!important; min-height:52px; margin:0!important; border:0!important; border-bottom:1px solid #e8ede5!important; background:#fff!important; color:#243322!important; }
:is(#sva-matchcenter,#sva-team) .fp-table-row > div { width:auto!important; min-width:0!important; max-width:none!important; height:auto!important; min-height:0!important; flex:unset!important; padding:0!important; font-size:13px!important; line-height:1.4!important; }
:is(#sva-matchcenter,#sva-team) .fp-table-header { background:#15231a!important; color:#fff!important; min-height:48px; }
:is(#sva-matchcenter,#sva-team) .fp-table-header > div { font-size:10px!important; font-weight:600!important; text-transform:uppercase; letter-spacing:.06em; color:white!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-team-full { display:block!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-team-middle { display:none!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-sun,:is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-goals { display:block!important; }
:is(#sva-matchcenter,#sva-team) .fp-table-team-name-overflow { white-space:normal!important; overflow:visible!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-team { font-weight:600; }
:is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-rank { color:#657160; font-weight:600; text-align:center; }
:is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-points:not(.fp-column-header) { background:#edf3e8; border-radius:6px; padding:7px 0!important; font-size:17px!important; font-weight:700!important; color:#203d25; }
:is(#sva-matchcenter,#sva-team) .fp-table-team-image { width:26px!important; height:26px!important; object-fit:contain; }
:is(#sva-matchcenter,#sva-team) .fp-team-link { display:block!important; text-decoration:none!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-link:hover .fp-table-row { background:#f2f7ee!important; }
:is(#sva-matchcenter,#sva-team) .fp-team-link[href*="/team/sv-aubing-muenchen-"] .fp-table-row { background:#e8f3e0!important; box-shadow:inset 4px 0 #6eb645; }
:is(#sva-matchcenter,#sva-team) .fp-team-link[href*="/team/sv-aubing-muenchen-"] .fp-column-points { background:#6eb645!important; color:#13220c!important; }
:is(#sva-matchcenter,#sva-team) .fp-table-separator { display:block; height:2px!important; width:100%!important; margin:0!important; background:#d2decc!important; }
:is(#sva-matchcenter,#sva-team) .fp-table-row:is(.fp-up1,.fp-up2,.fp-down1,.fp-down2) { position:relative; }
:is(#sva-matchcenter,#sva-team) .fp-table-row:is(.fp-up1,.fp-up2,.fp-down1,.fp-down2)::after { content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--mc-rank-color); }
:is(#sva-matchcenter,#sva-team) .fp-team-link[href*="/team/sv-aubing-muenchen-"] .fp-table-row:is(.fp-up1,.fp-up2,.fp-down1,.fp-down2) { box-shadow:none; }
:is(#sva-matchcenter,#sva-team) .fp-up1 { --mc-rank-color:#6eb645; }
:is(#sva-matchcenter,#sva-team) .fp-up2 { --mc-rank-color:#a7cf88; }
:is(#sva-matchcenter,#sva-team) .fp-down1 { --mc-rank-color:#e8ba71; }
:is(#sva-matchcenter,#sva-team) .fp-down2 { --mc-rank-color:#bf665e; }
@media(min-width:1001px) and (max-width:1200px) {
 :is(#sva-matchcenter,#sva-team) .fp-table-row { grid-template-columns:28px 26px minmax(100px,1fr) 36px 40px 44px; }
 :is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-sun,:is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-goals,:is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-team-full { display:none!important; }
 :is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-team-middle { display:block!important; }
 .mc-table-heading { flex-direction:column; align-items:flex-start; gap:12px; }
}
@media(max-width:1000px) {
 .mc-overview { grid-template-columns:1fr; }
 :is(#sva-matchcenter,#sva-team) .fp-table-row { grid-template-columns:32px 28px minmax(130px,1fr) 44px 74px 64px 48px 48px; gap:6px; padding-inline:10px!important; }
}
@media(max-width:600px) {
 .mc-wrap { padding-inline:16px; }
 .mc-hero__inner { padding-block:32px; gap:16px; }
 .mc-hero img { width:60px; height:60px; align-self:flex-start; }
 .mc h1 { font-size:32px; }
 .mc-intro { font-size:12px; }
 .mc-hero .mc-kicker { font-size:9px; }
 .mc-nav .mc-wrap { gap:18px; }
 .mc-nav a { font-size:11px; padding-block:18px; }
 .mc-nav a span { display:none; }
 .mc-content { padding-block:24px 36px; }
 .mc-panel__head { padding:22px 16px 18px; }
 .mc h2 { font-size:26px; }
 .mc-widget { padding:0 12px 16px; }
 .mc-table-heading { align-items:flex-start; flex-direction:column; gap:14px; }
 .mc-team-tag { font-size:10px; padding:7px 12px; }
 :is(#sva-matchcenter,#sva-team) .match-header { gap:8px; padding:22px 8px!important; }
 :is(#sva-matchcenter,#sva-team) .match-header-team-name { font-size:11px!important; }
 :is(#sva-matchcenter,#sva-team) .match-header-status-text { font-size:20px!important; }
 :is(#sva-matchcenter,#sva-team) .fp-table-row { grid-template-columns:24px 22px minmax(80px,1fr) 26px 32px 34px; gap:4px; padding:10px 6px!important; }
 :is(#sva-matchcenter,#sva-team) .fp-table-row > div { font-size:11px!important; }
 :is(#sva-matchcenter,#sva-team) .fp-table-header > div { font-size:9px!important; }
 :is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-team-full { display:none!important; }
 :is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-team-middle { display:block!important; }
 :is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-sun,:is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-goals { display:none!important; }
 :is(#sva-matchcenter,#sva-team) .fp-table-team-image { width:20px!important; height:20px!important; }
 :is(#sva-matchcenter,#sva-team) .fp-team-standings-view .fp-column-points:not(.fp-column-header) { font-size:14px!important; }
 .mc-table-note { padding-inline:16px; font-size:10px; }
}
