/* Match-day skin and button football. All selectors stay inside the match view. */
body:has(.match-day){background:#f6f4ec;color:#26333b}
body:has(.match-day) .topbar{background:#f6f4ec;border-color:#dddcd4;color:#26333b}
body:has(.match-day) .brand{color:#26333b}body:has(.match-day) .brand-mark{background:#fa721f;color:white}
.match-day{color:#26333b}.match-day .match-scorebar{background:#fffdf7;border:0}.match-day .match-caption,.match-day #live-ticker{color:#596772}.match-day .match-scoreline strong{color:#26333b}.match-day .club-link{color:#26333b}
.match-day button,.match-day select{background:#fffdf7;color:#26333b;border-color:#d6dad5}.match-day button.primary{background:#ee681a;border-color:#ee681a;color:#fff}.match-day label{color:#596772}
.match-day .panel,.match-day .match-bench{background:#fffdf7;border-color:#e0e2da;color:#26333b}.match-day .panel-head{border-color:#e0e2da}.match-day .panel-head h3{color:#26333b}
.match-day .match-workspace:has(.button-match){display:block}.match-view-tabs{display:flex;gap:8px;margin:8px 0}.match-view-tabs button{padding:10px 18px;border-radius:24px}.match-view-tabs .active{background:#26333b;color:#fff;border-color:#26333b}
.button-match{max-width:960px;margin:auto}.button-match canvas{display:block;width:100%;max-height:calc(100dvh - 330px);min-height:240px;aspect-ratio:1400/930;object-fit:contain;background:#548458;border-radius:12px;cursor:pointer}
.button-legend{display:flex;justify-content:space-between;gap:10px;font-size:13px;font-weight:700;padding:7px 3px}.button-legend span{display:flex;gap:8px;align-items:center}.button-legend i{display:inline-block;width:14px;height:14px;border:2px solid #fff;box-shadow:0 0 0 1px #253442;border-radius:50%}.button-legend i.away-key{border:3px double #fff;box-shadow:0 0 0 2px #253442}
.button-match-status{text-align:center;font-weight:700;padding:8px;color:#a13a04}.visual-note{font-size:12px;text-align:center;color:#63716d;margin:4px}.button-player-detail{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:10px}.button-player-detail span{font-size:13px}.button-accessible{font-size:12px;margin:8px 0}.button-accessible>button{margin:4px;padding:8px}.button-accessible summary{cursor:pointer}
.match-day .match-radio{margin:10px auto;max-width:960px}.match-day .radio-label{color:#45545c;background:transparent}.match-day .event{color:#26333b;border-color:#e0e2da}.match-day .event.goal{background:#fff0db;color:#783706;border-color:#f57420}.match-day .event time{color:#526570}.match-day .match-details>summary{color:#53636a}.match-day .footnote{color:#63716d}.match-day .bench-player small{color:#586a70}.match-day .condition>small{color:inherit}.match-day .match-toolbar{flex-wrap:wrap}.match-day .match-radio .commentary{max-height:94px;height:94px}
@media(max-width:600px){.button-match canvas{min-height:0;max-height:none}.match-view-tabs button{flex:1;padding:10px 6px;font-size:12px}.button-legend{font-size:12px}.match-day .match-toolbar label{display:flex;font-size:11px}.match-day .match-toolbar select{max-width:105px}.match-day .match-scorebar{position:sticky;top:0;z-index:5}.button-player-detail{gap:7px}.button-player-detail span{font-size:12px}.match-day .match-toolbar>button.ghost{font-size:11px}.match-day .match-toolbar>button.ghost:after{content:none}}

/* Keep the intrinsic canvas ratio: hit testing and displayed geometry agree. */
.button-match{max-width:min(1500px,calc((100dvh - 290px)*1.505))}.button-match canvas{height:auto;max-height:none;min-height:0;object-fit:initial}.match-day .match-field-radio{min-width:0}
body:has(.match-day) .topbar .export-button{color:#26333b}body:has(.match-day) .topbar input{background:#fffdf7;color:#26333b;border-color:#d5d9d1}
@media(max-width:700px){.button-match{max-width:100%}.match-day .match-toolbar{gap:5px}.match-day .match-toolbar label{font-size:11px}.match-day .match-toolbar select{padding:7px}.match-day .match-radio .commentary{height:80px}.button-match-status{padding:6px}}

.pre-match-page .page-head{align-items:flex-end}.prematch-actions{display:flex;gap:8px;flex-wrap:wrap}.pre-match-page .prematch-intro{padding:20px 24px;margin-bottom:16px;background:#173642;color:#f5f5eb;border-color:#315663}.prematch-intro .eyebrow{color:#c8dacd}.prematch-teams{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);gap:12px;align-items:center;margin:15px 0}.prematch-teams>div:last-child{text-align:right}.prematch-teams>div:last-child .club-link{justify-content:flex-end}.prematch-teams>span{text-align:center;color:#d7e6d5;font-size:24px}.prematch-intro>p{font-size:13px;color:#d4e1de}.prematch-summary{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.prematch-summary span{display:flex;gap:8px;padding:7px 10px;background:#ffffff16;border:1px solid #ffffff30;border-radius:4px;font-size:13px}.prematch-intro .prematch-guidance{font-size:14px}.prematch-warning{padding:12px 16px;margin:0 0 14px;border:1px solid #c47543;border-radius:5px;background:#6c321d;color:#fff6e9}.prematch-tools{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:0 0 14px}.prematch-tools span{font-size:13px;color:var(--muted)}.prematch-footer{display:flex;justify-content:flex-end;margin:20px 0 0}.prematch-actions .primary{min-width:210px}
@media(max-width:760px){.pre-match-page .page-head{align-items:stretch;flex-direction:column}.pre-match-page .page-head h1{font-size:34px}.prematch-actions,.prematch-footer .prematch-actions{width:100%}.prematch-actions button{flex:1}.prematch-teams{font-size:14px}.prematch-intro{padding:16px!important}.prematch-summary{gap:6px}.prematch-summary span{font-size:12px}}
@media(max-width:600px){body:has(.pre-match-page) .topbar .global-search,body:has(.pre-match-page) .topbar .export-button,body:has(.pre-match-page) .topbar .brand>.pill,body:has(.pre-match-page) .sidebar{display:none}body:has(.pre-match-page) .topbar{height:48px;padding:5px 12px}body:has(.pre-match-page) .brand{font-size:19px}body:has(.pre-match-page) .brand-mark{width:28px;height:28px;font-size:20px}body:has(.pre-match-page) .shell{display:block;min-height:0}body:has(.pre-match-page) .main{padding:14px 12px}.pre-match-page .page-head{gap:10px;margin-bottom:12px}.pre-match-page .page-head h1{font-size:29px}.pre-match-page .page-head .eyebrow{margin-bottom:5px}.prematch-intro{margin-bottom:10px!important;padding:12px!important}.prematch-teams{margin:8px 0}.prematch-teams .club-link{font-size:13px}.prematch-teams .badge{width:38px;height:38px}.prematch-intro .prematch-guidance,.prematch-tools span{display:none}.prematch-summary{margin:10px 0 0}.prematch-tools{margin-bottom:10px}.prematch-tools button{padding:8px 10px}.prematch-actions button{padding:9px 8px;font-size:12px}.prematch-actions .primary{min-width:0}}

/* Compact live pitch shown above the tactics board, so the match stays visible while adjusting. */
.match-mini-live{max-width:560px;margin:0 auto 14px}
.match-mini-live canvas{width:100%;height:auto;display:block;border-radius:8px}

/* Summary shown over the pitch while calm moments are played faster. It never intercepts clicks. */
.button-stage{position:relative}
/* Narrow panels: crop the outer side stands instead of shrinking the pitch (the pitch keeps its on-screen size). */
.match-boost-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:3%;box-sizing:border-box;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility 0s linear .3s;overflow:hidden;border-radius:12px}
.match-boost-overlay.on{opacity:1;visibility:visible;transition:opacity .3s ease,visibility 0s}
.mb-card{max-width:100%;max-height:100%;overflow:hidden;box-sizing:border-box;padding:2.2% 3%;border-radius:10px;background:#0b1722c7;border:1px solid #ffffff2e;color:#fff;font-size:clamp(10px,1.7vw,15px);line-height:1.3;box-shadow:0 6px 24px #0006}
.mb-head{text-align:center;font-weight:700;color:#f4bd4b;font-size:.85em;letter-spacing:.03em;text-transform:uppercase;margin-bottom:.4em}
.mb-score{display:flex;align-items:baseline;justify-content:center;gap:.7em;font-weight:700;margin-bottom:.5em}.mb-score strong{font-size:1.9em;line-height:1}.mb-score small{opacity:.8}
.mb-cols{display:flex;gap:1.6em;align-items:flex-start;justify-content:center}.mb-col{flex:1 1 0;min-width:0}.mb-col h4{margin:0 0 .3em;font-size:.85em;color:#9fb3bd;text-transform:uppercase;letter-spacing:.04em}
.mb-row,.mb-other{display:grid;grid-template-columns:3.6em 1fr 3.6em;gap:.5em;text-align:center;padding:.15em 0;border-top:1px solid #ffffff1a}.mb-row span{color:#c9d6dc}.mb-row b{font-variant-numeric:tabular-nums}
.mb-other{grid-template-columns:1fr auto 1fr;align-items:baseline}.mb-other span:first-child{text-align:right}.mb-other span:nth-child(3){text-align:left}.mb-other b{padding:0 .2em}.mb-other small{display:none}
@media(prefers-reduced-motion:reduce){.match-boost-overlay,.match-boost-overlay.on{transition:none}}
@media(max-width:700px){.match-boost-overlay{padding:2%}.mb-card{padding:2.5% 3%;font-size:clamp(9px,2.7vw,13px)}.mb-cols{gap:.9em}.mb-row{grid-template-columns:3.2em 1fr 3.2em;gap:.3em}}

/* ---- Match clock (HUD): ivory MM:SS on a dark screen in a graphite/petrol enclosure; accent colour via --acc ---- */
.match-day .match-scoreline{grid-template-columns:minmax(0,1fr) minmax(150px,auto) minmax(0,1fr)}
.hud-clock{--acc:#f5c518;display:flex;align-items:stretch;justify-content:center;width:max-content;max-width:100%;margin:4px auto 0;filter:drop-shadow(0 3px 5px #0005);font-family:"Bahnschrift SemiCondensed","Bahnschrift","DIN Condensed","Arial Narrow","Roboto Condensed",system-ui,sans-serif}
.hc-side{flex:none;width:clamp(14px,4vw,26px);display:flex;align-items:center;justify-content:center;background:linear-gradient(165deg,#2a6190,#0f2c44);clip-path:polygon(0 50%,42% 0,100% 0,100% 100%,42% 100%)}
.hc-side.r{clip-path:polygon(0 0,58% 0,100% 50%,58% 100%,0 100%)}
.hc-side i{display:block;width:4px;height:52%;margin-left:4px;background:var(--acc);border-radius:2px;transform:skewX(-20deg);box-shadow:0 0 6px var(--acc)}
.hc-side.r i{margin:0 4px 0 0;transform:skewX(20deg)}
.hc-body{min-width:0;padding:3px 5px 3px;margin:0 -2px;background:linear-gradient(#3a4048,#22272d);border-radius:9px;box-shadow:inset 0 1px #ffffff26,0 0 0 1px #14181c}
.hc-screen{display:flex;justify-content:center;align-items:baseline;padding:1px 14px;background:linear-gradient(#0c1113,#050708);border-radius:7px;box-shadow:inset 0 0 0 1px #000,inset 0 2px 6px #000a;color:#f6efdc;font-weight:700;font-size:34px;line-height:1.12;font-variant-numeric:tabular-nums;letter-spacing:.02em;text-shadow:0 0 6px #f6efdc33}
.hc-d,.hc-colon{display:inline-block;font-style:normal;text-align:center}.hc-d{width:.58em}.hc-colon{width:.3em;position:relative;top:-.04em}
.hc-label{margin-top:3px;padding:1px 10px;border-radius:0 0 7px 7px;background:#1b1f24;color:#f6efdc;text-align:center;font-weight:700;font-size:11px;line-height:1.5;letter-spacing:.16em;white-space:nowrap;text-transform:uppercase}
.match-day .match-scoreline #live-ticker{margin-top:3px;font-size:10px;letter-spacing:.12em;opacity:.8}
@media(max-width:700px){.match-day .match-scoreline{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.hc-screen{font-size:27px;padding:0 9px}.hc-label{font-size:9.5px;padding:1px 6px}.hc-side{width:13px}}

/* ---- Acceleration (manager-game style): players fade out, dark veil + LED scoreboard + stats fade in ---- */
.match-boost-overlay{container-type:size;background:radial-gradient(ellipse at center,#07121bcc,#050d14e6);transition:opacity .35s ease,visibility 0s linear .35s}
.match-boost-overlay.on{transition:opacity .35s ease,visibility 0s}
.mb-panel{width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;gap:2.2cqh}
.mb-tag{position:absolute;top:2cqh;right:2cqw;margin:0;padding:.25em .7em;border-radius:99px;background:#0b1722cc;border:1px solid #ffffff2e;color:#f4bd4b;font:700 clamp(9px,1.5cqw,13px)/1.3 Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.mb-card{max-width:100%;padding:1.2cqw 2.4cqw;font-size:clamp(9px,1.6cqw,15px)}
@media(max-width:700px){.match-boost-overlay{padding:2%}.mb-panel{gap:1.4cqh}.mb-card{padding:1cqw 2cqw;font-size:clamp(8px,2.5cqw,12px)}.mb-others .mb-other:nth-child(n+6){display:none}.mb-tag{top:1cqh}}
@container (max-height:260px){.mb-cols{gap:1em}.mb-row:nth-child(n+5){display:none}}

/* ---- Acceleration overlay: lineup (left) + stats and other games (right); header clock glows instead of a big scoreboard ---- */
.hud-clock{position:relative}
.hc-fast{display:none;position:absolute;right:-2px;top:-7px;z-index:2;padding:0 5px;border-radius:99px;background:var(--acc);color:#0b1722;font:700 11px/1.5 Arial,sans-serif}
.hud-clock.fast .hc-fast{display:block}
.hud-clock.fast{animation:hc-pulse 1s ease-in-out infinite}
.hud-clock.fast .hc-screen{box-shadow:inset 0 0 0 1px var(--acc),inset 0 2px 6px #000a,0 0 12px var(--acc)}
.hud-clock.fast .hc-screen{color:#fffbe8}
@keyframes hc-pulse{0%,100%{filter:drop-shadow(0 0 3px var(--acc))}50%{filter:drop-shadow(0 0 11px var(--acc))}}
@media(prefers-reduced-motion:reduce){.hud-clock.fast{animation:none;filter:drop-shadow(0 0 8px var(--acc))}}
.mb-two{width:100%;max-height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2cqw;align-items:start;padding:2cqw 2.4cqw;font-size:clamp(9px,1.5cqw,14px);overflow:hidden}
.mb-two h4{display:flex;justify-content:space-between;align-items:center;gap:.5em}
.mb-swap{pointer-events:auto;cursor:pointer;background:#ffffff14;color:#f4bd4b;border:1px solid #ffffff33;border-radius:99px;padding:.1em .7em;font:700 .95em Arial,sans-serif}
.mb-pls{display:grid;grid-template-columns:1fr 1fr;gap:0 1.2em}
.mb-pl{display:grid;grid-template-columns:1.6em minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:.4em;align-items:baseline;padding:.15em 0;border-top:1px solid #ffffff1a}
.mb-pl em{font-style:normal;font-weight:700;color:#f4bd4b;text-align:right}
.mb-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.mb-pl small{color:#9fb3bd;font-size:.85em}
.mb-bar{grid-column:2/4;display:block;height:3px;background:#ffffff22;border-radius:2px;overflow:hidden}.mb-bar u{display:block;height:100%}
.mb-yc{display:inline-block;width:.6em;height:.85em;margin-left:.4em;background:#f5c518;border-radius:1px;vertical-align:-.1em}
.mb-right{display:flex;flex-direction:column;gap:.8em;min-width:0}
@media(max-width:700px){.mb-two{grid-template-columns:1fr;gap:1.2cqw;padding:1.5cqw 2.5cqw;font-size:clamp(7.5px,2.2cqw,11px)}.mb-pl{padding:.05em 0}.mb-right .mb-others,.mb-right .mb-row:nth-child(n+5){display:none}.mb-tag{top:1cqh}}

.mb-left{display:flex;flex-direction:column;gap:.9em;min-width:0}
@media(max-width:700px){.mb-foe .mb-pl{padding:0}.mb-foe .mb-bar{display:none}.mb-foe .mb-pl small{display:none}}

/* Selo de pausa (travamento aparente): sempre que o relogio esta parado fora do intervalo, o campo diz PAUSADO e como continuar. Nunca intercepta cliques. */
.button-stage.is-paused::after{content:"⏸ PAUSADO · toque no campo ou em Continuar";position:absolute;left:50%;top:10px;transform:translateX(-50%);max-width:92%;padding:7px 16px;background:#0b1722ee;color:#f5c518;border:1px solid #f5c518aa;border-radius:999px;font:700 13px/1.25 system-ui,Arial,sans-serif;letter-spacing:.02em;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;z-index:4;box-shadow:0 2px 10px #0008}
@media(max-width:600px){.button-stage.is-paused::after{font-size:11.5px;padding:6px 12px;white-space:normal}}
