/* The vendor modules own the pitch and, for football, basketball and tennis, the statistics
   under it (since 2026-10-10): their menu (Statistika / Permbledhje …) and panels show 1:1
   with the original, and the match page leaves its own tabs for the same content out while
   they are on screen (LiveScout.statsTabs, Live._applyMdView). */
.live-scout-host { width: 100%; min-width: 0; overflow: hidden; background: #282828; color: #fff; }
.live-scout-host [class$="_ScoreboardContainer"] { display: none !important; }
/* The phone / tablet layouts (narrow, medium) have sticky parts of their own (the info row,
   the statistics under the menu): nothing above them may clip. */
.live-scout-host.live-scout-host-mobile { overflow: visible; }
/* The desktop panel (rhs) only — the phone / tablet layouts size their panels themselves
   ("Show more"):
   each statistics panel as tall as its own content; the carousel takes the height of the
   one in view (live-scout.js fitCarousel), not of the tallest. */
.live-scout-host .ml-MatchLiveModule-rhs .ml-MatchLiveCarousel { align-items: flex-start; }
/* bet365 caps the statistics of basketball (181px) and tennis (210px) and scrolls them inside:
   in its narrow column they sit in a fixed-height panel with a "show more" button, and only
   its wide layout (.ml-MatchLiveModule-wide) lifts the cap. Here they are part of the page:
   whole, as in the wide layout. */
.live-scout-host .ml-MatchLiveModule-rhs .ml18-StatsContainer_Main-scoreboard,
.live-scout-host .ml-MatchLiveModule-rhs .ml18-StatsContainer_Main-stats,
.live-scout-host .ml-MatchLiveModule-rhs .ml13-StatsContainer_Main-scoreboard,
.live-scout-host .ml-MatchLiveModule-rhs .ml13-StatsContainer_Main-stats { max-height: none; }
.live-scout-host > div { width: 100%; }
/* The video in front with the pitch module up in a layout with its own media button (the phone's;
   live.js _applyMediaView): the module's menu stays - its media button is the way back, its tabs
   bring the pitch back with them - and the video takes the pitch's place right under it. */
#page-live-match #live-md-scout.lmm-VideoFront .ml-MatchLiveModule:not(.ml-MatchLiveModule-rhs) > :not(.ml1-LocationEventsMenu):not(.ml-LocationEventsMenu) { display: none !important; }
/* The desktop panel (rhs): the video in the pitch's place (above it in the rail, css/style.css),
   the module's statistics bar and panel staying under it - only the pitch slide goes. */
#page-live-match #live-md-scout.lmm-VideoFront .ml-MatchLiveModule-rhs [class*="_WrapperContainer"] > .ml-MatchLiveCarouselSlide { display: none !important; }

/* The scout's message row, pinned under the header once the pitch has scrolled away
   (live-scout.js pinInfoRow). Position, left and width are set from the pitch. */
.live-scout-host.live-scout-pin {
    position: fixed;
    z-index: 95;
    display: none;
    pointer-events: none;
    background: var(--bg-deep);
    box-shadow: 0 2px 6px color-mix(in srgb, var(--bg-deep) 70%, transparent);
}
.live-scout-host.live-scout-pin.is-on { display: block; }

/* Ad boards round the pitch / court: the domain's own logo (/img/logo.svg, served per
   host by Services/BrandFeatures.cs). The vendor sheets left football's board as
   url("") — which resolves to the stylesheet itself, so the board showed nothing —
   and wrote "BAST" as text into tennis and basketball.
   Football and basketball tile the logo along the board: the tile is wider than the
   logo, and an SVG drawn into a box of another shape keeps its proportions centred
   (preserveAspectRatio), so each logo gets space either side. Tennis draws one logo
   per panel. Two classes here, one in the vendor rule: these win whatever loads last. */
.live-scout-host .ml1-AdBoardsSection_BoardLogo,
.live-scout-host .ml18-Adboard_Inner {
    background-image: var(--ls-board-logo, url("/img/logo.svg"));
    background-repeat: repeat-x;
    background-size: 64px 9px;
    background-position: 0 50%;
    /* The boards scroll. The vendor's moveLogo slides 0% -> 100% of the room LEFT OVER
       beside one tile across 120s: on a board barely wider than a tile that is ~1px a
       second, which reads as frozen (and basketball had no animation at all). Moving
       exactly one tile per loop is seamless — tile N lands where tile N+1 started. */
    animation: ls-board-scroll 2.4s linear infinite;
}
@keyframes ls-board-scroll {
    from { background-position: 0 50%; }
    to   { background-position: -64px 50%; }
}
/* Reduced motion (also what Windows reports with "Animation effects" off): the boards
   still scroll — they are meant to — but at a third of the speed, a slow drift. */
@media (prefers-reduced-motion: reduce) {
    .live-scout-host .ml1-AdBoardsSection_BoardLogo,
    .live-scout-host .ml18-Adboard_Inner { animation-duration: 7.2s; }
}
/* Ice hockey's boards are drawn as tennis's (one logo per panel); its sheet carries bet365's. */
.live-scout-host .ml13-AdBoardsSection_BoardLogo::before,
.live-scout-host .ml13-AdBoardsSection_BoardLogo::after,
.live-scout-host .ml17-AdBoardsSection_BoardLogo::before,
.live-scout-host .ml17-AdBoardsSection_BoardLogo::after {
    background-image: var(--ls-board-logo, url("/img/logo.svg"));
    background-size: auto 62%;
}
/* Football's goalscorers over the pitch (live-scout.js goalscorers): one row per goal beside
   its side's score, in bet365's white on the overlay's shade. */
.live-scout-host .ml1-GoalscorersOverlay .ls-Scorer {
    font-size: 14px;
    line-height: 20px;
    color: var(--color-whiteFF);
    white-space: nowrap;
}
/* ...and the pitch quiet under them: no ball, player, attack cone or zone (throw-in, corner,
   free kick), as on bet365. */
.live-scout-host .ls-ScorersOpen .ml1-XYBlob,
.live-scout-host .ls-ScorersOpen .ml1-MatchLiveSoccerModule_AnimationsContainer,
.live-scout-host .ls-ScorersOpen .ml1-MatchLiveSoccerModule_ConeContainer { visibility: hidden; }
/* Football's new score across the pitch (live-scout.js scoreUpdate): the score alone, with the
   clock, the scout's line and the scorers' pill out of the way until it has gone. */
.live-scout-host .ls-ScoreUpdating > .ml1-SoccerClock,
.live-scout-host .ls-ScoreUpdating > .ml1-MatchLiveSoccerModule_EventsInfoRow,
.live-scout-host .ls-ScoreUpdating > .ml1-GoalscorersSubMenu { visibility: hidden; }
/* Cricket's menu: without the feed's ball-by-ball record or scorecard the module has no Stats or
   Scorecard tab, and its media button is the page's (live.js _pitchButtonInBar) - the row would
   be empty but for the pitch's icon, under the page's own bar (Statistika · Përmbledhje). */
.live-scout-host[data-scout-sport="cricket"] .ml3-LocationEventsMenuCricket { display: none; }
