/* Handball Games — публичный раздел /ext/hg */
.siteMain--pluginExtHandball {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  overflow-x: clip;
}

.siteMain--pluginExtHandball .siteMain__bound,
.siteMain--pluginExtHandball .siteMain__bound--shellGrid,
.siteMain--pluginExtHandball .grid,
.siteMain--pluginExtHandball .colMain,
.siteMain--pluginExtHandball .colMain > .wrap {
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

/* Глобальные colSide: на узком экране не занимают место в сетке (дублирует vitrine.css + ShellGrid). */
@media (max-width: 980px) {
  .siteMain--pluginExtHandball .colSide {
    display: none !important;
  }

  .siteMain--pluginExtHandball .grid-both-sides,
  .siteMain--pluginExtHandball .grid-left-side,
  .siteMain--pluginExtHandball .grid-right-side {
    grid-template-columns: 1fr !important;
  }

  .siteMain--pluginExtHandball .grid > .colMain {
    grid-column: 1 / -1 !important;
    width: 100%;
    max-width: 100%;
  }

  .siteMain--pluginExtHandball[data-hv-outer-cols="both"] .colMain > .wrap,
  .siteMain--pluginExtHandball[data-hv-outer-cols="left"] .colMain > .wrap,
  .siteMain--pluginExtHandball[data-hv-outer-cols="right"] .colMain > .wrap,
  .siteMain--pluginExtHandball .colMain > .wrap {
    max-width: none;
    width: 100%;
  }
}

html.hv-shell--narrow .siteMain--pluginExtHandball .colSide {
  display: none !important;
}

html.hv-shell--narrow .siteMain--pluginExtHandball .grid-both-sides,
html.hv-shell--narrow .siteMain--pluginExtHandball .grid-left-side,
html.hv-shell--narrow .siteMain--pluginExtHandball .grid-right-side {
  grid-template-columns: 1fr !important;
}

html.hv-shell--narrow .siteMain--pluginExtHandball .grid > .colMain {
  grid-column: 1 / -1 !important;
  width: 100%;
  max-width: 100%;
}

html.hv-shell--narrow .siteMain--pluginExtHandball .colMain > .wrap,
html.hv-shell--narrow .siteMain--pluginExtHandball[data-hv-outer-cols="both"] .colMain > .wrap,
html.hv-shell--narrow .siteMain--pluginExtHandball[data-hv-outer-cols="left"] .colMain > .wrap,
html.hv-shell--narrow .siteMain--pluginExtHandball[data-hv-outer-cols="right"] .colMain > .wrap {
  max-width: none;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.siteMain--hgBodyFull .colMain > .wrap {
  max-width: none;
}
/* Ширина colMain для @container и JS (ResizeObserver на .hgPublicColMainMeasure). */
.siteMain--pluginExtHandball .colMain > .wrap.siteMain__boundInner {
  container-type: inline-size;
  container-name: hg-col-main;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.siteMain--pluginExtHandball .colMainPrimary {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.hgPublicColMainMeasure {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

/* Десктоп с глобальными colSide: main/grid не шире вьюпорта (нет серой полосы / смещения). */
@media (min-width: 981px) {
  .siteMain--pluginExtHandball .siteMain__bound--shellGrid,
  .siteMain--pluginExtHandball .grid.grid-both-sides,
  .siteMain--pluginExtHandball .grid.grid-left-side,
  .siteMain--pluginExtHandball .grid.grid-right-side {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  .siteMain--pluginExtHandball .grid-both-sides {
    grid-template-columns: minmax(0, min(280px, 22vw)) minmax(0, 1fr) minmax(0, min(280px, 22vw));
  }

  /* Карточка матча: переопределение видимости глобальных colSide (рейка «колонки сайта»). */
  html:not(.hv-shell--narrow) .siteMain--pluginExtHandball[data-hg-game-global-sidebars="hidden"] .colSide {
    display: none !important;
  }

  html:not(.hv-shell--narrow) .siteMain--pluginExtHandball[data-hg-game-global-sidebars="hidden"] .grid-both-sides,
  html:not(.hv-shell--narrow) .siteMain--pluginExtHandball[data-hg-game-global-sidebars="hidden"] .grid-left-side,
  html:not(.hv-shell--narrow) .siteMain--pluginExtHandball[data-hg-game-global-sidebars="hidden"] .grid-right-side {
    grid-template-columns: 1fr !important;
  }

  html:not(.hv-shell--narrow) .siteMain--pluginExtHandball[data-hg-game-global-sidebars="hidden"] .grid > .colMain {
    grid-column: 1 / -1 !important;
    width: 100%;
    max-width: 100%;
  }

  html:not(.hv-shell--narrow) .siteMain--pluginExtHandball[data-hg-game-global-sidebars="hidden"] .colMain > .wrap,
  html:not(.hv-shell--narrow)
    .siteMain--pluginExtHandball[data-hg-game-global-sidebars="hidden"][data-hv-outer-cols="none"]
    .colMain
    > .wrap {
    max-width: none;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}

.siteMain--pluginExtHandball .colMainInner--bodyAsideRight .colMainPrimary:has(.hgMultiview) {
  align-self: flex-start;
  min-height: 0;
}
.hgPublic {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.hgPublic--matches.hvUiPanelMedia {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.hgPublic--matches .hvCard__actions {
  flex-wrap: nowrap;
}
.hgPublic__dateBar {
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0;
}
.hgPublic__dateBar .hvUiButton {
  flex-shrink: 0;
}
.hgPublic__dateBar .hvUiDateTime {
  min-width: 0;
  flex: 0 1 auto;
}
/* ——— Лента матчей (как GameSelect / Game в vk_front_hl) ——— */
.hgPublic--matches .hvCard__body {
  padding-top: 4px;
}

.hgMatchFeed {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.hgMatchFeed__section + .hgMatchFeed__section {
  margin-top: 8px;
}

.hgLeagueBlock + .hgLeagueBlock {
  margin-top: 2px;
}

.hgInfoRow--tournament .hvUiInfoRow__text {
  font-weight: 600;
  text-align: left;
}

.hgTournamentRow__logoImg {
  display: block;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  overflow: hidden;
  background: var(--panel2, #1e293b);
}

.hgTournamentRow__logoImg .hlLifePicture {
  width: 100%;
  height: 100%;
}

.hgTournamentRow__logoImg__img,
.hgTournamentRow__logoImg__placeholder {
  border-radius: 50%;
}

.hgTournamentRow__emoji {
  font-size: 1.25rem;
  line-height: 1;
}

/* ——— Список чемпионатов (/m, /w) ——— */
.hgPublic--championships .hvCard__body {
  padding-top: 4px;
}

.hgChampionshipList {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.hgChampionshipSections {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 0;
}

.hgChampionshipSection {
  min-width: 0;
}

.hgChampionshipSection__title {
  margin: 0 0 8px;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--text, #e2e8f0);
}

.hgChampionshipSection__count {
  font-weight: 500;
  color: var(--muted, #94a3b8);
}

.hgChampionshipList__genderNav {
  margin: 0 0 8px;
  font-size: 0.9rem;
}

.hgChampionshipList__genderLink {
  color: var(--muted, #94a3b8);
  text-decoration: none;
}

.hgChampionshipList__genderLink.is-active {
  color: var(--text, #e2e8f0);
  font-weight: 600;
}

.hgChampionshipList__genderLink:hover {
  color: var(--accent, #60a5fa);
}

.hgChampionshipRow__season {
  min-width: 0;
}

.hgInfoRow--championship .hvUiInfoRow__actions {
  flex-direction: column;
  align-items: flex-end;
  flex-wrap: nowrap;
}

.hgChampionshipRow__aside {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 2px;
  min-width: 0;
  flex-shrink: 0;
  text-align: right;
}

/* Размеры как .hgRibbonCard__matchLink в ленте матчей */
.hgChampionshipRow__dateChip.hvUiChip {
  flex: 0 0 auto;
  gap: 0;
  margin: 0;
  padding: 0 2px;
  min-height: 0;
  font-size: 0.625rem;
  line-height: 1.2;
  letter-spacing: 0.02em;
  cursor: inherit;
  opacity: 0.9;
}

.hgChampionshipRow__dateChip .hvUiChip__caption {
  display: block;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  max-width: 6.5rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hgChampionshipRow__datePrefix {
  font-style: italic;
  text-transform: lowercase;
}

.hgChampionshipRow__dateValue {
  font-style: normal;
  text-transform: none;
}

.hgChampionshipRow.hgInfoRowLink--match {
  border-radius: 6px;
}

.hgInfoRow--championship .hvUiInfoRow__text {
  font-weight: 600;
  text-align: left;
}

.hgInfoRow--championship .hvUiInfoRow__inner {
  --hg-match-logo-col: 48px;
}

.hgInfoRow--championship .hvUiInfoRow__figure {
  width: var(--hg-match-logo-col);
  max-width: var(--hg-match-logo-col);
  height: 40px;
}

.hgChampionshipRow__logo {
  width: 40px;
  height: 40px;
}

/* Мобильный список по умолчанию; десктоп-карточка скрыта */
.hgChampionshipRow__card {
  display: none;
}

.hgChampionshipRow__list {
  display: block;
  min-width: 0;
}

@media (min-width: 900px) {
  .hgChampionshipList {
    display: grid;
    /* auto-fill: пустые треки остаются — одна карточка не растягивается на всю ширину */
    grid-template-columns: repeat(auto-fill, minmax(max(260px, calc((100% - 24px) / 3)), 1fr));
    gap: 12px;
  }

  .hgChampionshipRow.hgInfoRowLink--match {
    display: block;
    height: 100%;
    border: 1px solid var(--line, #334155);
    border-radius: 8px;
    background: color-mix(in oklab, var(--panel2, #0f172a) 88%, transparent);
    overflow: hidden;
    transition:
      border-color 0.12s ease,
      background 0.12s ease,
      box-shadow 0.15s ease;
  }

  .hgChampionshipRow.hgInfoRowLink--match:hover {
    border-color: color-mix(in oklab, var(--accent, #60a5fa) 45%, var(--line, #334155));
    background: color-mix(in oklab, var(--panel2, #0f172a) 78%, var(--accent, #60a5fa));
    box-shadow: 0 4px 16px color-mix(in oklab, var(--accent, #60a5fa) 10%, transparent);
  }

  .hgChampionshipRow__list {
    display: none;
  }

  .hgChampionshipRow__card {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 12px;
    padding: 0 3px;
    min-height: 100%;
    box-sizing: border-box;
  }

  .hgChampionshipRow__cardLogo {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    min-height: 72px;
  }

  .hgChampionshipRow__cardLogo .hgChampionshipRow__logo,
  .hgChampionshipRow__cardLogo .hgChampionshipRow__emoji {
    width: 72px;
    height: 72px;
  }

  .hgChampionshipRow__cardLogo .hgChampionshipRow__emoji {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
  }

  .hgChampionshipRow__cardBody {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 8px 0;
  }

  .hgChampionshipRow__cardHead {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
  }

  .hgChampionshipRow__statusChip.hvUiChip {
    flex: 0 0 auto;
    margin: 0;
    font-size: 0.7rem;
    line-height: 1.2;
    cursor: inherit;
  }

  .hgChampionshipRow__cardDates,
  .hgChampionshipRow__cardSeason {
    margin: 0;
    font-size: 0.72rem;
    line-height: 1.35;
    letter-spacing: 0.04em;
    color: var(--muted, #94a3b8);
    text-transform: uppercase;
  }

  .hgChampionshipRow__cardSeason {
    text-transform: none;
    letter-spacing: 0.02em;
  }

  .hgChampionshipRow__cardTitle {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--text, #e2e8f0);
  }
}

/* ——— Список игроков (/players) ——— */
.hgPlayers__controls {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.hgPlayers__controls .hvUiButtonSet {
  flex: 0 0 auto;
}

.hgPlayers__controls .hgPlayers__search {
  flex: 1 1 260px;
  min-width: 220px;
}

.hgPlayers__rowLink {
  display: block;
  color: inherit;
  text-decoration: none;
}

.hgPlayers__rowLink:hover {
  color: inherit;
  text-decoration: none;
}

.hgPlayers__rowLink:hover .hvUiInfoRow {
  background: color-mix(in oklab, var(--accent, #60a5fa) 8%, transparent);
}

.hgPlayers__listItem {
  border-radius: 12px;
  transition: background-color 120ms ease-in-out;
}

.hgPlayers__listItem:hover {
  background: color-mix(in srgb, var(--panel2, #1e293b) 65%, transparent);
}

.hgInfoRow--players .hvUiInfoRow__figure {
  width: 96px;
  height: 96px;
}

.hgInfoRow--players .hvUiInfoRow__figure--icon {
  padding: 0;
  background: transparent;
}

.hgInfoRow--players .hvUiInfoRow__iconSlot {
  width: 96px;
  height: 96px;
}

.hgPlayers__photo {
  display: block;
  width: 96px;
  height: 96px;
  border-radius: 12px;
  overflow: hidden;
  background: var(--panel2, #1e293b);
}

.hgPlayers__photo__img {
  border-radius: 12px;
}

/* Карточка турнира (сезоны aside) */
.hgSeasonsAside__title {
  font-weight: 600;
  margin: 0 0 0.5rem;
  font-size: 0.95rem;
}

.hgSeasonsAside__hint {
  margin: 0;
  font-size: 0.85rem;
  opacity: 0.75;
}

.hgSeasonsAsideMount {
  min-width: 0;
}

.hgSeasonsAside__period {
  margin-bottom: 0.75rem;
}

.hgSeasonsAside__period .hvUiDateTimePeriod {
  width: 100%;
  gap: 0.5rem;
}

.hgSeasonsAside__period .hvUiDateTimePeriod__row {
  flex-wrap: nowrap;
  gap: 3px;
  width: 100%;
}

.hgSeasonsAside__period .hvUiDateTimePeriod__row > .hvUiToggle {
  --hv-datetime-period-toggle-w: 3rem;
  padding-left: 0;
  padding-right: 0;
}

.hgSeasonsAside__period .hvUiDateTimePeriod__row > .hvUiDateTime {
  margin-left: 0;
}

.hgSeasonsAside__period .hvUiDateTimePeriod__row > .hvUiDateTime {
  flex: 1 1 0;
  min-width: 0;
}

.hgTournamentDetail.hvUiPanelMedia > .hvCard__body {
  background: transparent;
}

.hgSeasonsAside__list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid color-mix(in oklab, var(--border, #334155) 65%, transparent);
}

.hgSeasonsAside__item {
  margin: 0;
}

.hgSeasonsAside__item--alt {
  background: color-mix(in oklab, var(--panel2, #1e293b) 55%, transparent);
}

.hgSeasonsAside__item.is-active {
  background: color-mix(in oklab, var(--accent, #60a5fa) 14%, var(--panel2, #1e293b));
}

.hgSeasonsAside__link {
  display: block;
  padding: 0.45rem 0.65rem;
  font-size: 0.88rem;
  line-height: 1.35;
  color: var(--text, #e2e8f0);
  text-decoration: none;
  transition: color 0.15s ease, background 0.15s ease;
}

.hgSeasonsAside__link:hover {
  color: var(--accent, #93c5fd);
}

.hgSeasonsAside__item.is-active .hgSeasonsAside__link {
  font-weight: 600;
  color: var(--accent, #93c5fd);
}

.hgTournamentDetail__header {
  margin-bottom: 1rem;
}

.hgTournamentDetail__toolbar {
  margin-bottom: 0.75rem;
}

.hgTournamentDetail__seasonRow {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: flex-end;
  margin-bottom: 1rem;
  width: 100%;
}

.hgTournamentDetail__seasonRow .hgTournamentDetail__season {
  flex: 1 1 10rem;
  min-width: min(100%, 10rem);
}

.hgTournamentDetail__seasonRow .hgTournamentDetail__period {
  flex: 1 1 14rem;
  min-width: min(100%, 14rem);
}

.hgTournamentDetail__period .hvUiDateTimePeriod {
  width: 100%;
  min-width: 0;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.65rem;
}

.hgTournamentDetail__period .hvUiDateTimePeriod__row {
  flex-wrap: nowrap;
  gap: 3px;
  flex: 0 1 auto;
  min-width: 0;
}

.hgTournamentDetail__period .hvUiDateTimePeriod__row > .hvUiToggle {
  --hv-datetime-period-toggle-w: 3rem;
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
}

.hgTournamentDetail__period .hvUiDateTimePeriod__row > .hvUiDateTime {
  flex: 1 1 0;
  min-width: 6.5rem;
  margin-left: 0;
}

.hgTournamentDetail__seasonHint {
  flex: 1 1 100%;
  margin: 0;
  font-size: 0.88rem;
  color: var(--muted, #94a3b8);
}

.hgTournamentDetail__teamRow {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: flex-end;
  margin-bottom: 1rem;
}

.hgTournamentDetail__teamRow .hgTournamentDetail__team {
  flex: 1 1 14rem;
  min-width: 12rem;
  max-width: 100%;
}

.hgTournamentDetail__teamRow .hgTournamentDetail__ha {
  flex: 0 1 auto;
}

.hgTournamentDetail__headRow {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
}

.hgTournamentDetail__title {
  margin: 0;
  font-size: 1.25rem;
  line-height: 1.3;
}

.hgTournamentDetail__season {
  margin: 0.25rem 0 0;
  font-size: 0.9rem;
  opacity: 0.8;
}

.hgTournamentDetail__toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: flex-end;
  margin-bottom: 1rem;
}

.hgTournamentDetail__team {
  min-width: 12rem;
  flex: 1 1 12rem;
}

.hgTournamentDetail__ha {
  flex: 0 1 auto;
}

.hgTournamentMatchesTab {
  min-width: 0;
}

.hgTournamentTabLoading {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 1rem 1.1rem;
  color: var(--muted, #94a3b8);
  font-size: 0.9rem;
}

.hgTournamentTabLoading__spinner {
  width: 1.1rem;
  height: 1.1rem;
  flex-shrink: 0;
  border-radius: 50%;
  border: 2px solid color-mix(in oklab, var(--accent, #60a5fa) 25%, transparent);
  border-top-color: var(--accent, #60a5fa);
  animation: hgTournamentTabLoadingSpin 0.75s linear infinite;
}

.hgTournamentTabLoading__text {
  line-height: 1.35;
}

@keyframes hgTournamentTabLoadingSpin {
  to {
    transform: rotate(360deg);
  }
}

.hgTournamentMatchesTab__slice {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-bottom: 1rem;
  flex-shrink: 0;
}

/* Как .hgGameRostersPanel__viewSet: без overflow-x на треке — ResizeObserver ↔ полоса прокрутки. */
.hgTournamentMatchesTab__slice.hvUiButtonSet--horizontal .hvUiButtonSet__track--horizontal,
.hgTournamentDetail__ha.hvUiButtonSet--horizontal .hvUiButtonSet__track--horizontal {
  overflow-x: hidden;
  overflow-y: hidden;
}

.hgTournamentDetail__toolbar .hvUiButtonSetField--stretched > .hvUiButtonSet.hvUiButtonSet--hasSlider.hvUiButtonSet--horizontal .hvUiButtonSet__btn {
  flex: 1 1 0;
  min-width: 0;
}

.hgTournamentMatchesTab__panels {
  min-width: 0;
}

.hgTournamentMatchesTab__panel[hidden] {
  display: none;
}

.hgTournamentTablesTab {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  min-width: 0;
}

.hgGameTablePanel,
.hgGameTablePanel__tables {
  min-width: 0;
}

.hgGameTablePanel__tables .hgTournamentTable__hvTable.hvUiTableWrap {
  contain: layout style;
}

.hgTournamentTable.hvUiPanel {
  margin: 0;
  min-width: 0;
}

.hgTournamentTable__pairLabel {
  margin: 0 0 0.5rem;
  font-size: 0.85rem;
  opacity: 0.85;
}

.hgTournamentTable--series .hgTournamentTable__seriesBlock + .hgTournamentTable__seriesBlock {
  margin-top: 1rem;
}

.hgTournamentTable__teamNameLink {
  color: inherit;
  text-decoration: none;
}

.hgTournamentTable__teamNameLink:hover {
  text-decoration: underline;
}

.hgTournamentTable__teamNameLink:focus-visible {
  outline: 2px solid var(--hv-focus-ring, rgba(96, 165, 250, 0.65));
  outline-offset: 2px;
}

.hgTournamentTable__hvTable.hvUiTableWrap {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.hgTournamentTable__hvTable .hvUiTable {
  width: 100%;
  table-layout: fixed;
}

.hgTournamentStatsTab__type {
  margin: 5px 0 1rem;
  width: 100%;
  max-width: none;
}

.hgTournamentStatRow__photo.hvUiImage {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
}

.hgTournamentStatRow__photo .hgTournamentStatRow__photo__picture,
.hgTournamentStatRow__photo .hgTournamentStatRow__photo__picture__img {
  border-radius: 50%;
}

.hgTournamentDetail__title[aria-busy="true"] {
  color: var(--muted, #94a3b8);
}

.hgTournamentStatsTab__list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid color-mix(in oklab, var(--border, #334155) 65%, transparent);
}

.hgTournamentStatRow {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  padding: 0.45rem 0.55rem;
  margin: 0;
}

.hgTournamentStatRow--alt {
  background: color-mix(in oklab, var(--panel2, #1e293b) 55%, transparent);
}

.hgTournamentStatRow__rank {
  width: 1.5rem;
  text-align: right;
  opacity: 0.7;
}

.hgTournamentStatRow__photo {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border-radius: 50%;
  overflow: hidden;
}

.hgTournamentStatRow__photo__img {
  border-radius: 50%;
}

.hgTournamentStatRow__fio {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}

.hgTournamentStatRow__fioName {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hgTournamentStatRow__teams {
  font-size: 0.78em;
  line-height: 1.2;
  opacity: 0.72;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hgTournamentStatRow__vals {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.hgInfoRowLink {
  display: block;
  color: inherit;
  text-decoration: none;
  min-width: 0;
}

.hgInfoRowLink--match {
  cursor: pointer;
}

.hgInfoRowLink--match:hover .hvUiInfoRow {
  background: color-mix(in oklab, var(--accent, #60a5fa) 8%, transparent);
}

.hgInfoRowLink--match:focus-visible {
  outline: 2px solid color-mix(in oklab, var(--accent, #60a5fa) 55%, transparent);
  outline-offset: -2px;
}

/* Дорожка логотипов: away (left 18px + Ø40) = 58px — иначе текст main налезает на круги. */
.hgInfoRow--match .hvUiInfoRow__inner {
  --hg-match-logo-col: 58px;
}

.hgInfoRow--match .hvUiInfoRow__figure {
  width: var(--hg-match-logo-col);
  max-width: var(--hg-match-logo-col);
  height: 40px;
  border-radius: 0;
  overflow: visible;
  background: transparent;
  box-sizing: border-box;
}

.hgMatchList {
  list-style: none;
  margin: 0;
  padding: 0 0 8px;
}

.hgMatchList > li + li {
  border-top: 1px solid color-mix(in oklab, var(--line, #334155) 45%, transparent);
}

.hgInfoRow--match .hvUiInfoRow {
  transition: background-color 0.14s ease;
  /* HvInfoRow по умолчанию overflow:hidden — длинные названия обрезали колонку счёта/статуса. */
  overflow: visible;
}

.hgInfoRow--match .hvUiInfoRow__inner {
  display: grid;
  grid-template-columns: var(--hg-match-logo-col) minmax(0, 1fr) auto;
  column-gap: 12px;
  row-gap: 4px;
  align-items: start;
}

.hgInfoRow--match .hvUiInfoRow__figure {
  grid-column: 1;
  grid-row: 1 / -1;
  align-self: center;
}

.hgInfoRow--match .hvUiInfoRow__main {
  grid-column: 2;
  grid-row: 1 / -1;
  min-width: 0;
  overflow: visible;
  width: 100%;
  max-width: 100%;
}

.hgInfoRow--match .hvUiInfoRow__text {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  display: block;
  text-align: left;
}

.hgInfoRow--match .hvUiInfoRow__actions {
  grid-column: 3;
  grid-row: 1;
  flex-shrink: 0;
  align-self: center;
  justify-self: end;
}

.hgMatchRow__logos {
  position: relative;
  flex: 0 0 auto;
  width: var(--hg-match-logo-col, 58px);
  max-width: var(--hg-match-logo-col, 58px);
  height: 40px;
  box-sizing: border-box;
}

.hgMatchRow__logo {
  position: absolute;
  top: 0;
  width: 40px;
  height: 40px;
  box-sizing: border-box;
  border: 2px solid var(--card-bg, var(--panel, #0f172a));
  border-radius: 50%;
  overflow: hidden;
  background: var(--panel2, #1e293b);
}

.hgMatchRow__logo .hlLifePicture {
  width: 100%;
  height: 100%;
}

.hgMatchRow__logo__img,
.hgMatchRow__logo__placeholder {
  border-radius: 50%;
}

.hgMatchRow__logo--home {
  left: 0;
  z-index: 2;
}

.hgMatchRow__logo--away {
  left: 18px;
  z-index: 1;
}

.hgMatchRow__mainCol {
  display: flex;
  flex-direction: column;
  gap: 3px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  text-align: left;
  box-sizing: border-box;
}

.hgMatchRow__stage,
.hgMatchRow__caption {
  font-size: 0.75rem;
  line-height: 1.3;
  color: var(--muted, #94a3b8);
}

/* Широкий экран: блок «команда — vs — команда» слева вплотную, без растягивания на всю ширину colMain. */
.hgMatchRow__teams {
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: auto;
  max-width: 100%;
  box-sizing: border-box;
  min-width: 0;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.35;
  color: var(--text, #f1f5f9);
}

.hgMatchRow__team {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}

.hgMatchRow__team--home,
.hgMatchRow__team--away {
  text-align: left;
}

.hgMatchRow__vs {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.hgMatchRow__vsChip.hvUiChip {
  flex: 0 0 auto;
  gap: 0;
  margin: 0;
  padding: 0;
  min-height: 0;
  cursor: default;
  text-transform: none;
  letter-spacing: 0;
}

.hgMatchRow__vsChip .hvUiChip__caption {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  max-width: none;
  line-height: 0;
}

.hgMatchRow__vsIcon {
  display: block;
  opacity: 0.88;
}

.hgMatchRow__media {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 16px;
}

.hgInfoRowLink--match .hgMatchRow__media,
.hgInfoRowLink--match .hgMatchRow__mediaChip.hvUiChip {
  cursor: pointer;
}

.hgMatchRow__mediaChip.hvUiChip {
  flex: 0 0 auto;
  gap: 0;
  margin: 0;
  padding: 2px 6px;
  min-height: 0;
  cursor: default;
  text-transform: none;
  letter-spacing: 0;
}

.hgMatchRow__mediaChip .hvUiChip__caption {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  padding: 0;
  max-width: none;
  line-height: 0;
}

.hgMatchRow__mediaChip .hgMatchRow__mediaIcon {
  display: block;
}

.hgMatchRow__mediaChip--rosterPartial {
  opacity: 0.88;
}

.hgMatchRow__mediaChip--rosterMuted {
  opacity: 0.78;
}

.hgInfoRow--match .hvUiInfoRow__actions {
  flex-direction: column;
  align-items: flex-end;
  flex-wrap: nowrap;
}

.hgMatchRow__aside {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 4px;
  min-width: 4.5rem;
  text-align: right;
}

.hgMatchRow__statusChip {
  max-width: 100%;
  gap: 0;
  padding: 0 4px;
  min-height: 0;
  font-size: 0.625rem;
  line-height: 1.2;
  letter-spacing: 0.02em;
}

.hgMatchRow__statusChip .hvUiChip__caption,
.hgMatchRow__mediaChip .hvUiChip__caption,
.hgMultiviewStreamRow__place .hvUiChip__caption,
.hgMultiviewStreamRow__inSlot .hvUiChip__caption {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  white-space: nowrap;
  font-size: inherit;
  line-height: inherit;
}

.hgMatchRow__statusChip .hvUiChip__caption {
  white-space: nowrap;
}

.hgMatchRow__statusLabel {
  font-size: inherit;
  line-height: inherit;
}

.hgMatchRow__scoreChip {
  font-size: 0.9375rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.hgMatchRow__scoreChip.hvUiChip--noBackground .hvUiChip__caption {
  color: var(--text, #f1f5f9);
}

@keyframes hgScoreLiveBump {
  0% {
    transform: scale(1);
    color: var(--text, #f1f5f9);
    text-shadow: none;
  }
  35% {
    transform: scale(1.1);
    color: color-mix(in oklab, var(--good, #22c55e) 40%, var(--text, #f1f5f9));
    text-shadow: 0 0 12px color-mix(in oklab, var(--good, #22c55e) 45%, transparent);
  }
  100% {
    transform: scale(1);
    color: var(--text, #f1f5f9);
    text-shadow: none;
  }
}

.hgMatchRow__scoreChip.hgScoreLiveBump.hvUiChip--noBackground .hvUiChip__caption {
  display: inline-block;
  transform-origin: center;
  animation: hgScoreLiveBump 0.58s cubic-bezier(0.22, 1, 0.36, 1);
}

@media (prefers-reduced-motion: reduce) {
  .hgMatchRow__scoreChip.hgScoreLiveBump.hvUiChip--noBackground .hvUiChip__caption {
    animation: none;
  }
}

.hgMatchRow__time {
  font-size: 1.35rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  color: var(--text, #f1f5f9);
}

.hgMatchRow__time sup {
  font-size: 0.55em;
  font-weight: 600;
  margin-left: 1px;
  vertical-align: super;
  line-height: 0;
}

/* Строка матча: «команда / под командой» — при colMain ≤600px (не viewport / hv-shell--narrow). */
@container hg-col-main (max-width: 600px) {
  .siteMain--pluginExtHandball .hgInfoRow--match .hvUiInfoRow__inner {
    --hg-match-logo-col: 52px;
    grid-template-columns: var(--hg-match-logo-col) minmax(0, 1fr) minmax(3.5rem, max-content);
    column-gap: 12px;
  }

  .siteMain--pluginExtHandball .hgInfoRow--match .hvUiInfoRow__figure {
    height: 34px;
  }

  .siteMain--pluginExtHandball .hgMatchRow__logos {
    height: 34px;
  }

  .siteMain--pluginExtHandball .hgMatchRow__logo {
    width: 34px;
    height: 34px;
  }

  .siteMain--pluginExtHandball .hgMatchRow__logo--away {
    left: 14px;
  }

  .siteMain--pluginExtHandball .hgInfoRow--match .hvUiInfoRow__main {
    padding-left: 0;
    margin-left: 0;
  }

  .siteMain--pluginExtHandball .hgMatchRow__teams {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
    width: 100%;
    font-size: 0.875rem;
  }

  .siteMain--pluginExtHandball .hgMatchRow__vs {
    display: none;
  }

  .siteMain--pluginExtHandball .hgMatchRow__team {
    width: 100%;
    max-width: 100%;
    text-align: left;
    white-space: normal;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow-wrap: anywhere;
  }

  .siteMain--pluginExtHandball .hgMatchRow__aside {
    min-width: 3.5rem;
  }

  .siteMain--pluginExtHandball .hgMatchRow__time {
    font-size: 1.15rem;
  }
}

/* Fallback без @container: ResizeObserver → .hgPublic--colNarrow */
.siteMain--pluginExtHandball .hgPublic--colNarrow .hgInfoRow--match .hvUiInfoRow__inner {
  --hg-match-logo-col: 52px;
  grid-template-columns: var(--hg-match-logo-col) minmax(0, 1fr) minmax(3.5rem, max-content);
  column-gap: 12px;
}

.siteMain--pluginExtHandball .hgPublic--colNarrow .hgInfoRow--match .hvUiInfoRow__figure {
  height: 34px;
}

.siteMain--pluginExtHandball .hgPublic--colNarrow .hgMatchRow__logos {
  height: 34px;
}

.siteMain--pluginExtHandball .hgPublic--colNarrow .hgMatchRow__logo {
  width: 34px;
  height: 34px;
}

.siteMain--pluginExtHandball .hgPublic--colNarrow .hgMatchRow__logo--away {
  left: 14px;
}

.siteMain--pluginExtHandball .hgPublic--colNarrow .hgInfoRow--match .hvUiInfoRow__main {
  padding-left: 0;
  margin-left: 0;
}

.siteMain--pluginExtHandball .hgPublic--colNarrow .hgMatchRow__teams {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 4px;
  width: 100%;
  font-size: 0.875rem;
}

.siteMain--pluginExtHandball .hgPublic--colNarrow .hgMatchRow__vs {
  display: none;
}

.siteMain--pluginExtHandball .hgPublic--colNarrow .hgMatchRow__team {
  width: 100%;
  max-width: 100%;
  text-align: left;
  white-space: normal;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow-wrap: anywhere;
}

.siteMain--pluginExtHandball .hgPublic--colNarrow .hgMatchRow__aside {
  min-width: 3.5rem;
}

.siteMain--pluginExtHandball .hgPublic--colNarrow .hgMatchRow__time {
  font-size: 1.15rem;
}

.hgPublic__empty {
  margin: 0;
  opacity: 0.75;
}
.hgPublic__stub {
  margin: 0;
  padding: 12px;
  border-radius: 8px;
  background: color-mix(in oklab, var(--border, #334155) 25%, transparent);
}
.hgPublic__stubMeta {
  margin: 0.5rem 0 0;
  font-size: 0.875rem;
  opacity: 0.8;
}
.hgPublic__head {
  margin: 0 0 4px;
}
.hgPublic__title {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
}
.hgAsideNavMount {
  min-width: 0;
}
.hgShortcodeStub {
  margin: 0;
  padding: 8px 12px;
  font-size: 0.875rem;
  opacity: 0.85;
}
.hgAccountFollowing__section + .hgAccountFollowing__section {
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--line, rgba(255, 255, 255, 0.12));
}

.hgAccountFollowing__sectionTitle {
  margin: 0 0 0.35rem;
  font-size: 1.05rem;
  font-weight: 600;
}

.hgAccountFollowing__sectionLead {
  margin: 0 0 1rem;
  color: var(--muted, #888);
  font-size: 0.9rem;
  line-height: 1.45;
}

.hgAccountFollowing {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  max-width: none;
}
.hgAccountFollowing__row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 8px;
}
.hgAccountFollowing__hint {
  margin: 16px 0 0;
  font-size: 0.875rem;
  opacity: 0.8;
}

/* ——— Multiview ——— */
.hgAsideRightMount {
  min-width: 0;
  width: 100%;
  max-width: none;
  padding: 0;
  margin: 0;
}

/* Паддинги .wrap (--hv-wrap-pad-x) из public/css/vitrine.css — оболочка ShellGrid всегда даёт wrap.layoutShellAsideContain */
.siteMain--pluginExtHandball .colMainAside--bodyLeft > .wrap.layoutShellAsideContain,
.siteMain--pluginExtHandball .colMainAside--bodyRight > .wrap.layoutShellAsideContain {
  padding-left: 0;
  padding-right: 0;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

.siteMain--pluginExtHandball .colMainAside--bodyLeft,
.siteMain--pluginExtHandball .colMainAside--bodyRight {
  padding: 0;
  min-width: 0;
  max-width: 220px;
  width: 100%;
  box-sizing: border-box;
}

.siteMain--pluginExtHandball .colMainInner--bodyAsideLeft {
  grid-template-columns: minmax(0, 220px) minmax(0, 1fr);
}

.siteMain--pluginExtHandball .colMainInner--bodyAsideRight {
  grid-template-columns: minmax(0, 1fr) minmax(0, 220px);
}

.siteMain--pluginExtHandball .colMainInner--bodyAsidesBoth {
  grid-template-columns: minmax(0, 220px) minmax(0, 1fr) minmax(0, 220px);
}

.hgMultiview {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  height: var(
    --hg-multiview-available-h,
    calc(100dvh - var(--hv-site-sticky-chrome-bottom, 0px) - 12px)
  );
  max-height: var(
    --hg-multiview-available-h,
    calc(100dvh - var(--hv-site-sticky-chrome-bottom, 0px) - 12px)
  );
  box-sizing: border-box;
  overflow: hidden;
  position: sticky;
  top: calc(var(--hv-site-sticky-chrome-bottom, 0px) + 4px);
  align-self: flex-start;
}

/* Правый aside multiview: та же высота, что у сетки плееров (задаётся из JS) */
.hgAsideRightMount.hgAsideRightMount--fitViewport {
  display: flex;
  flex-direction: column;
  height: var(--hg-multiview-available-h, auto);
  max-height: var(--hg-multiview-available-h, none);
  min-height: 0;
  overflow: hidden;
  box-sizing: border-box;
}

.hgMultiviewStage {
  flex: 1 1 0;
  display: grid;
  gap: 8px;
  min-width: 0;
  min-height: 0;
  height: 100%;
  align-content: stretch;
  align-items: stretch;
}

.hgMultiviewStage[data-slot-count="1"] {
  grid-template-columns: 1fr;
  grid-template-rows: minmax(0, 1fr);
}

.hgMultiviewStage[data-slot-count="2"] {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: minmax(0, 1fr);
}

.hgMultiviewStage[data-slot-count="4"] {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
}

/* PiP: слот 0 — фон; слот 1 — overlay справа сверху */
.hgMultiviewStage[data-view-mode="pip"] {
  --hg-slot-head-h: 36px;
  --hg-pip-width: 25%;
  position: relative;
  grid-template-columns: 1fr;
  grid-template-rows: minmax(0, 1fr);
}

.hgMultiviewStage[data-view-mode="pip"] .hgPlayerSlot--main {
  grid-column: 1;
  grid-row: 1;
  min-height: 0;
  height: 100%;
  z-index: 1;
}

.hgMultiviewStage[data-view-mode="pip"] .hgPlayerSlot--pip.hgPlayerSlot {
  height: auto;
  flex: 0 0 auto;
}

.hgMultiviewStage[data-view-mode="pip"] .hgPlayerSlot--pip {
  /* та же ячейка grid, что и main — без неявной второй строки/колонки */
  grid-column: 1;
  grid-row: 1;
  position: absolute;
  /* под шапкой слота 0, в правом верхнем углу области плеера */
  top: calc(var(--hg-pip-inset, 12px) + var(--hg-slot-head-h, 36px));
  right: var(--hg-pip-inset, 12px);
  /* 25% от .hgMultiviewStage; без max в px — иначе на широком экране упиралось в ~360px */
  width: var(--hg-pip-width, 25%);
  max-width: calc(100% - 2 * var(--hg-pip-inset, 12px));
  min-width: min(9.5rem, 88%);
  max-height: calc(100% - var(--hg-pip-inset, 12px) - var(--hg-slot-head-h, 36px) - var(--hg-pip-inset, 12px));
  display: flex;
  flex-direction: column;
  height: auto;
  min-height: 0;
  z-index: 4;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.45);
  border: 1px solid color-mix(in oklab, var(--line, #334155) 70%, transparent);
  border-radius: 8px;
  overflow: hidden;
  box-sizing: border-box;
  background: var(--panel2, #0f172a);
}

.hgMultiviewStage[data-view-mode="pip"] .hgPlayerSlot--pip .hgPlayerSlot__head {
  gap: 2px;
  padding: 2px 4px;
  flex-shrink: 0;
}

.hgMultiviewStage[data-view-mode="pip"] .hgPlayerSlot--pip .hgPlayerSlot__body {
  flex: 0 0 auto;
  width: 100%;
  min-height: 0;
  aspect-ratio: 16 / 9;
  height: auto;
  position: relative;
}

.hgMultiviewStage[data-view-mode="pip"] .hgPlayerSlot--pip .hgPlayerSlot__frame {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
}

/* Полноэкран сайта (не плеера): рамка по периметру — бордо/синий, как линии в шапке */
.hgMultiviewStage:fullscreen::before,
.hgMultiviewStage:-webkit-full-screen::before {
  content: "";
  display: block;
  position: fixed;
  inset: 0;
  box-sizing: border-box;
  padding: 2px;
  pointer-events: none;
  z-index: 2147483646;
  opacity: 0.92;
  background: linear-gradient(
    135deg,
    var(--bordeaux, #800020) 0%,
    color-mix(in oklab, var(--bordeaux, #800020) 50%, var(--accent, #60a5fa)) 38%,
    var(--accent, #60a5fa) 50%,
    color-mix(in oklab, var(--bordeaux, #800020) 50%, var(--accent, #60a5fa)) 62%,
    var(--bordeaux, #800020) 100%
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  mask-composite: exclude;
  box-shadow:
    inset 0 0 14px color-mix(in oklab, var(--bordeaux, #800020) 28%, transparent),
    inset 0 0 20px color-mix(in oklab, var(--accent, #60a5fa) 14%, transparent);
}

/* Полноэкран: только области плееров, без шапок слотов */
.hgMultiviewStage:fullscreen,
.hgMultiviewStage:-webkit-full-screen {
  gap: 4px;
  padding: 0;
  box-sizing: border-box;
  background: var(--panel2, #0f172a);
}

.hgMultiviewStage:fullscreen[data-view-mode="pip"],
.hgMultiviewStage:-webkit-full-screen[data-view-mode="pip"] {
  position: relative;
}

.hgMultiviewStage:fullscreen .hgPlayerSlot,
.hgMultiviewStage:-webkit-full-screen .hgPlayerSlot {
  gap: 0;
}

.hgMultiviewStage:fullscreen .hgPlayerSlot__head,
.hgMultiviewStage:-webkit-full-screen .hgPlayerSlot__head {
  display: none;
}

.hgMultiviewStage:fullscreen[data-view-mode="pip"] .hgPlayerSlot--pip,
.hgMultiviewStage:-webkit-full-screen[data-view-mode="pip"] .hgPlayerSlot--pip {
  /* В FS шапки слотов скрыты — отступ сверху как справа, только --hg-pip-inset */
  top: var(--hg-pip-inset, 8px);
  right: var(--hg-pip-inset, 8px);
  max-height: calc(100% - 2 * var(--hg-pip-inset, 8px));
}

/* Полноэкран: ватермарк / якорь фокуса окна (не взаимодействует с iframe плееров) */
.hgMultiviewFsAnchor {
  display: none;
  pointer-events: none;
}

.hgMultiviewStage:fullscreen .hgMultiviewFsAnchor,
.hgMultiviewStage:-webkit-full-screen .hgMultiviewFsAnchor {
  display: block;
  position: fixed;
  top: 30px;
  left: 30px;
  z-index: 2147483645;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  cursor: default;
  opacity: 0.5;
  line-height: 0;
  pointer-events: auto;
  -webkit-app-region: no-drag;
}

.hgMultiviewFsAnchor:focus-visible {
  outline: 2px solid color-mix(in oklab, var(--accent, #60a5fa) 65%, transparent);
  outline-offset: 2px;
}

.hgMultiviewFsAnchor__img.hvUiImage,
.hgMultiviewFsAnchor__img .hvUiImage__root,
.hgMultiviewFsAnchor__img .hvUiImage__media {
  width: 45px;
  height: 45px;
  padding: 0;
  margin: 0;
  background: transparent;
  border: none;
  box-shadow: none;
}

.hgMultiviewFsAnchor__imgEl {
  width: 45px;
  height: 45px;
  object-fit: contain;
  display: block;
}

/* --- Game fullscreen (card media + timeline) --- */
.hgGameFsStage {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background: var(--panel2, #0f172a);
  z-index: 2147483600;
}

/* Рамка по периметру — как у multiview fullscreen */
.hgGameFsStage:fullscreen::before,
.hgGameFsStage:-webkit-full-screen::before {
  content: "";
  display: block;
  position: fixed;
  inset: 0;
  box-sizing: border-box;
  padding: 2px;
  pointer-events: none;
  z-index: 2147483646;
  opacity: 0.92;
  background: linear-gradient(
    135deg,
    var(--bordeaux, #800020) 0%,
    color-mix(in oklab, var(--bordeaux, #800020) 50%, var(--accent, #60a5fa)) 38%,
    var(--accent, #60a5fa) 50%,
    color-mix(in oklab, var(--bordeaux, #800020) 50%, var(--accent, #60a5fa)) 62%,
    var(--bordeaux, #800020) 100%
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  mask-composite: exclude;
  box-shadow:
    inset 0 0 14px color-mix(in oklab, var(--bordeaux, #800020) 28%, transparent),
    inset 0 0 20px color-mix(in oklab, var(--accent, #60a5fa) 14%, transparent);
}

.hgGameFsLayout {
  position: relative;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

.hgGameCard,
.hgGameFsStage {
  --hg-game-timeline-width: 340px;
}

.hgGameFsStage {
  --hg-game-fs-timeline-w: var(--hg-game-timeline-width);
}

.hgGameFsPlayer {
  position: absolute;
  inset: 0;
  right: var(--hg-game-fs-timeline-w);
  box-sizing: border-box;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  container-type: size;
  container-name: hg-game-fs-player;
}

/* Строго 16/9: рамка контейнера, не поведение iframe внутри */
.hgGameFsPlayer__frame {
  position: relative;
  box-sizing: border-box;
  flex: 0 0 auto;
  aspect-ratio: 16 / 9;
  width: min(100cqw, calc(100cqh * 16 / 9));
  height: min(100cqh, calc(100cqw * 9 / 16));
  max-width: 100cqw;
  max-height: 100cqh;
  overflow: hidden;
  background: #000;
}

.hgGameFsPlayer__frame .hgGameFsPlayer__embed.hvUiAspectRatio,
.hgGameFsPlayer__frame .hgGameFsPlayer__embed.hgPlayer__aspect {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  max-height: none;
  margin: 0;
  aspect-ratio: auto;
}

.hgGameFsPlayer__frame .hgGameFsPlayer__embed.hvUiAspectRatio::before {
  display: none;
}

.hgGameFsPlayer__frame .hgGameFsPlayer__embed.hvUiAspectRatio .hvUiAspectRatio__inner {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.hgGameFsPlayer__frame .hgGameFsPlayer__embed iframe,
.hgGameFsPlayer__frame .hgGameFsPlayer__embed .hgPlayer__htmlEmbed {
  width: 100%;
  height: 100%;
}

.hgGameFsTimeline {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: var(--hg-game-fs-timeline-w);
  box-sizing: border-box;
  padding: 0;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border-left: 1px solid color-mix(in oklab, var(--accent, #60a5fa) 18%, transparent);
  background: color-mix(in oklab, var(--panel2, #0f172a) 92%, #000);
}

.hgGameFsTimeline__tabs {
  flex: 0 0 auto;
  min-width: 0;
  padding: 0;
}

.hgGameFsTimeline__tabHead {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto;
  align-items: center;
  width: 100%;
  min-width: 0;
}

.hgGameFsTimeline__tabHead .hgGameTimeline__tabs {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  width: 100%;
}

/* «Скрыть» — в слоте иконки вкладки слева (как на витрине), не справа в шапке */
.hgGameFsTimeline__tabHead .hgGameFsTimelineToggle--hide.hvUiButton {
  grid-column: 1;
  grid-row: 1;
  justify-self: start;
  align-self: center;
  z-index: 2;
  margin-inline-start: 6px;
}

.hgGameFsTimeline__tabHead:has(.hgGameFsTimelineToggle--hide)
  .hgGameTimeline__tabs
  .hvUiTabs__scroller
  > .hvUiTabs__tab
  .hvUiButton__before,
.hgGameFsTimeline__tabHead:has(.hgGameFsTimelineToggle--hide)
  .hgGameTimeline__tabs
  .hvUiTabs__scroller
  > .hvUiTabs__tab
  .hvUiTabs__iconSlot {
  display: none;
}

.hgGameFsTimeline__content {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  padding: 0;
}

.hgGameFsTimelineToggle.hvUiButton {
  opacity: 0.5;
}

.hgGameFsTimelineToggle.hvUiButton:hover:not(:disabled) {
  opacity: 0.85;
}

.hgGameFsTimelineToggle.hvUiButton:focus-visible {
  outline: 2px solid color-mix(in oklab, var(--accent, #60a5fa) 65%, transparent);
  outline-offset: 2px;
}

/* Скрыто: «показать» у правого края плеера */
.hgGameFsTimelineToggle--reveal.hvUiButton {
  position: absolute;
  top: 15px;
  right: calc(var(--hg-game-fs-timeline-w) + 8px);
  z-index: 2147483645;
}

.hgGameFsStage[data-hg-fs-timeline-collapsed="1"] .hgGameFsTimeline {
  width: 0;
  padding: 0;
  border-left: 0;
  opacity: 0;
  pointer-events: none;
}

.hgGameFsStage[data-hg-fs-timeline-collapsed="1"] .hgGameFsPlayer {
  right: 0;
}

.hgGameFsStage[data-hg-fs-timeline-collapsed="1"] .hgGameFsTimelineToggle--reveal.hvUiButton {
  right: 8px;
}

/* Ватермарк как у multiview fullscreen */
.hgGameFsAnchor {
  display: none;
  pointer-events: none;
}

.hgGameFsStage:fullscreen .hgGameFsAnchor,
.hgGameFsStage:-webkit-full-screen .hgGameFsAnchor {
  display: block;
  position: fixed;
  top: 30px;
  left: 30px;
  z-index: 2147483645;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  cursor: default;
  opacity: 0.5;
  line-height: 0;
  pointer-events: auto;
  -webkit-app-region: no-drag;
}

.hgGameFsAnchor:focus-visible {
  outline: 2px solid color-mix(in oklab, var(--accent, #60a5fa) 65%, transparent);
  outline-offset: 2px;
}

.hgGameFsAnchor__img.hvUiImage,
.hgGameFsAnchor__img .hvUiImage__root,
.hgGameFsAnchor__img .hvUiImage__media {
  width: 45px;
  height: 45px;
  padding: 0;
  margin: 0;
  background: transparent;
  border: none;
  box-shadow: none;
}

.hgGameFsAnchor__imgEl {
  width: 45px;
  height: 45px;
  object-fit: contain;
  display: block;
}

.hgPlayerSlot {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  min-height: 0;
  height: 100%;
  overflow: hidden;
}

.hgPlayerSlot--over {
  outline: 2px solid var(--accent, #3b82f6);
  outline-offset: 2px;
  border-radius: 6px;
}

.hgPlayerSlot__head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 4px;
  min-width: 0;
  flex-shrink: 0;
}

.hgPlayerSlot__select {
  min-width: 0;
}

.hgPlayerSlot__clear.hvUiButton {
  flex-shrink: 0;
  min-width: 28px;
  width: 28px;
  padding: 0;
}

.hgPlayerSlot__refresh.hvUiButton {
  flex-shrink: 0;
  min-width: 28px;
  width: 28px;
  padding: 0;
}

.hgPlayerSlot__refresh.hvUiButton:disabled {
  opacity: 0.45;
}

.hgPlayerSlot__clear.hvUiButton:disabled {
  opacity: 0.45;
}

.hgPlayerSlot__dragHandle {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 4px;
  background: color-mix(in oklab, var(--panel2, #1e293b) 80%, transparent);
  color: var(--text, #e2e8f0);
  cursor: grab;
  line-height: 1;
}

.hgPlayerSlot__swap.hvUiButton {
  flex-shrink: 0;
  min-width: 28px;
  width: 28px;
  height: 28px;
  padding: 0;
}

.hgPlayerSlot__dragHandle--idle {
  opacity: 0.45;
  cursor: default;
}

.hgPlayerSlot__dragGlyph {
  font-size: 0.7rem;
  letter-spacing: -0.12em;
  user-select: none;
}

.hgPlayerSlot__body {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 0;
  background: var(--panel2, #0f172a);
  overflow: hidden;
  container-type: size;
  container-name: hg-player-slot;
}

/* Строго 16/9: чёрная рамка обрезает фон iframe (как hgGameFsPlayer__frame) */
.hgPlayerSlot__frame {
  position: relative;
  box-sizing: border-box;
  flex: 0 0 auto;
  aspect-ratio: 16 / 9;
  width: min(100cqw, calc(100cqh * 16 / 9));
  height: min(100cqh, calc(100cqw * 9 / 16));
  max-width: 100cqw;
  max-height: 100cqh;
  overflow: hidden;
  background: #000;
}

.hgPlayerSlot__frame .hgPlayerSlot__embed.hvUiAspectRatio,
.hgPlayerSlot__frame .hgPlayerSlot__embed.hgPlayer__aspect {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  max-height: none;
  margin: 0;
  aspect-ratio: auto;
}

.hgPlayerSlot__frame .hgPlayerSlot__embed.hvUiAspectRatio::before {
  display: none;
}

.hgPlayerSlot__frame .hgPlayerSlot__embed.hvUiAspectRatio .hvUiAspectRatio__inner {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.hgPlayerSlot__frame .hgPlayerSlot__embed iframe,
.hgPlayerSlot__frame .hgPlayerSlot__embed .hgPlayer__htmlEmbed {
  width: 100%;
  height: 100%;
}

.hgPlayerSlot__placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  gap: 8px;
  color: var(--text-muted, #94a3b8);
  text-align: center;
  padding: 16px;
}

.hgPlayerSlot__placeholderIcon {
  font-size: 2.5rem;
  opacity: 0.5;
}

.hgPlayer__error {
  margin: 0;
  padding: 16px;
  text-align: center;
  font-size: 0.875rem;
}

.hgPlayer__aspect {
  position: relative;
}

/* height: 100% только в слотах с абсолютной рамкой 16/9 — не в карточке матча (там height: auto). */
.hgPlayerSlot__frame .hgPlayer__aspect,
.hgGameFsPlayer__frame .hgPlayer__aspect {
  height: 100%;
}

.hgPlayer__loadOverlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  box-sizing: border-box;
  overflow: hidden;
  background: #000;
  pointer-events: none;
}

.hgPlayer__loadOverlayArt {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.hgPlayer__loadOverlayScrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    color-mix(in oklab, #000 12%, transparent) 0%,
    color-mix(in oklab, #000 38%, transparent) 55%,
    color-mix(in oklab, #000 52%, transparent) 100%
  );
}

.hgPlayer__loadOverlaySpinner {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 16px;
  box-sizing: border-box;
  color: var(--text-muted, #94a3b8);
  text-align: center;
}

.hgPlayer__loadOverlayText {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.35;
  text-shadow: 0 1px 12px rgba(0, 0, 0, 0.85);
}

.hgPlayer__aspect--loading iframe,
.hgPlayer__aspect--loading .hgPlayer__htmlEmbed {
  visibility: hidden;
}

.hgMultiviewAside {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
  min-width: 0;
  min-height: 0;
  flex: 1 1 auto;
  height: 100%;
  max-height: 100%;
  box-sizing: border-box;
  padding: 6px 0 0;
  overflow: hidden;
}

.hgMultiviewAside__toolbar {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.hgMultiviewAside__toolbarRow {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  width: 100%;
}

/* Строка 1: дата со стрелками по центру, обновить — справа */
.hgMultiviewAside__toolbarRow--date {
  flex-wrap: nowrap;
}

.hgMultiviewAside__dateBar {
  flex: 0 1 auto;
  justify-content: flex-start;
  min-width: 0;
}

.hgMultiviewAside__dateBar .hgMultiviewAside__date {
  flex: 0 1 auto;
  width: auto;
  min-width: 0;
  max-width: 11rem;
}

.hgMultiviewAside__refresh {
  flex: 0 0 auto;
  margin-left: auto;
}

/* Строка 2: 1/2/4/PiP и полноэкран */
.hgMultiviewAside__toolbarRow--view {
  flex-wrap: wrap;
  gap: 6px;
}

.hgMultiviewAside__viewSet {
  flex: 0 0 auto;
}

.hgMultiviewAside__toolbarRow--view > .hvUiButton {
  flex: 0 0 auto;
}

/* Мобильный экран: прячем fullscreen-кнопки (нет Esc, и места мало). */
@media (max-width: 700px) {
  .hgMultiviewAside__toolbarRow--view > .hvUiButton,
  .hgGameCardToolbar__fullscreen {
    display: none !important;
  }
}

.hgMultiviewAside__list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1 1 0;
  min-height: 0;
  overflow-y: auto;
  padding: 0;
}

/* Бордо → синий разделитель списков (multiview, TV и др.) */
.hgVitrineBrandRule,
.hgMultiviewAside__matchRule {
  display: block;
  width: 100%;
  height: 2px;
  margin: 6px 0 4px;
  padding: 0;
  border: 0;
  flex-shrink: 0;
  opacity: 0.88;
  background: linear-gradient(
    90deg,
    var(--bordeaux, #800020) 0%,
    color-mix(in oklab, var(--bordeaux, #800020) 55%, var(--accent, #60a5fa)) 50%,
    var(--accent, #60a5fa) 100%
  );
  box-shadow: 0 0 8px color-mix(in oklab, var(--bordeaux, #800020) 22%, transparent);
}

.hgMultiviewAside__hint {
  flex-shrink: 0;
}

.hgMultiviewAside__loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex: 1 1 0;
  min-height: 8rem;
  padding: 1.5rem 0.75rem;
  text-align: center;
  box-sizing: border-box;
}

.hgMultiviewAside__loadingText {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.35;
  color: color-mix(in oklab, var(--text, #e2e8f0) 82%, transparent);
}

.hgMultiviewStreamRowWrap {
  cursor: grab;
  touch-action: none;
}

.hgMultiviewStreamRowWrap.hgMultiviewStreamRowWrap--inSlot {
  cursor: default;
  touch-action: auto;
}

.hgMultiviewStreamRowWrap--inSlot .hgMultiviewStreamRow,
.hgMultiviewStreamRowWrap--inSlot .hvUiInfoRow {
  cursor: default;
}

.hgMultiviewStreamRowWrap--inSlot .hgMultiviewStreamRow {
  opacity: 0.72;
}

.hgMultiviewStreamRowWrap--dragging {
  opacity: 0.35;
}

.hgMultiviewStreamRow__main {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  text-align: left;
}

.hgMultiviewStreamRow__teams {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  max-width: 100%;
  min-width: 0;
  font-size: 0.8125rem;
  line-height: 1.3;
}

.hgMultiviewStreamRow__team {
  display: block;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
  text-align: left;
}

.hgMultiviewStreamRow__place,
.hgMultiviewStreamRow__time,
.hgMultiviewStreamRow__inSlot {
  gap: 0;
  padding: 0 2px;
  font-size: 0.625rem;
  line-height: 1.2;
  letter-spacing: 0.02em;
  opacity: 0.9;
}

.hgMultiviewStreamRow__place--brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0 4px;
  line-height: 0;
  opacity: 1;
}

.hgMultiviewStreamRow__place--brand .hgMultiviewStreamRow__placeIcon {
  display: block;
}

.hgMultiviewStreamRow__inSlot {
  text-transform: lowercase;
}

.hgMultiviewStreamRow .hvUiInfoRow__subtitle {
  margin-top: 1px;
}

.hgMultiviewDragOverlay {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
  border-radius: 8px;
  background: var(--panel, #1e293b);
  max-width: 300px;
}

.hgMultiviewStreamRow--overlay {
  pointer-events: none;
}

@media (max-width: 899px) {
  .hgAsideRightMount {
    max-width: none;
  }

  .hgMultiviewStage[data-slot-count="2"]:not([data-view-mode="pip"]),
  .hgMultiviewStage[data-slot-count="4"] {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 599px) {
  .hgMultiviewAside__viewSet [data-value="4"] {
    display: none;
  }

  .hgMultiviewStage[data-view-mode="pip"] {
    --hg-pip-inset: 8px;
    --hg-slot-head-h: 32px;
  }

  .hgMultiviewStage[data-view-mode="pip"] .hgPlayerSlot--pip {
    max-width: calc(100% - 2 * var(--hg-pip-inset, 8px));
    min-width: min(8.5rem, 92%);
  }

}

.hgGameDetail__player,
.hgGameDetail__embedList > li {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

/* Карточка матча: 16/9, но высота не больше свободного viewport (актуально при скрытых colSide). */
.hgGameCard .hgGameDetail__player {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  flex: 0 0 auto;
  align-self: start;
  width: 100%;
  min-height: 0;
}

.hgGameCard .hgGameDetail__player .hgPlayer__aspect.hvUiAspectRatio {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  max-height: var(--hg-game-player-max-h);
  height: auto;
  flex: 0 0 auto;
  align-self: stretch;
  aspect-ratio: 16 / 9;
  margin-inline: 0;
}

.hgGameCard .hgGameDetail__player .hgPlayer__aspect.hvUiAspectRatio::before {
  display: none;
}

.hgGameCard .hgGameDetail__player .hgPlayer__aspect.hvUiAspectRatio .hvUiAspectRatio__inner {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.hgGameDetail__embedList {
  display: flex;
  flex-direction: column;
  gap: 16px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.hgGameDetail__sectionTitle {
  margin: 0 0 8px;
  font-size: 1rem;
  font-weight: 600;
}

/*
 * Карточка матча: адаптив по ширине colMain (контейнер), не по viewport.
 * При боковых aside центральная колонка может быть узкой (~380px) на широком экране.
 * TODO: .hgGameScoreboard--colNarrow — отдельная компактная шапка счёта (@container max-width).
 */
.hgGameCard {
  container-type: inline-size;
  container-name: hg-game-card;
  --hg-game-card-body-column-gap: 10px;
  --hg-game-timeline-track-budget: var(--hg-game-timeline-width, 340px);
  --hg-game-timeline-col-w: var(--hg-game-timeline-track-budget);
  /*
   * Запас под фиксированный chrome над плеером (задаётся из JS: site header + липкая полоска матча + вкладки).
   * Fallback до первого измерения.
   */
  --hg-game-player-viewport-reserve: calc(var(--hv-site-sticky-chrome-bottom, 0px) + 11rem);
  --hg-game-player-max-h: max(10rem, calc(100dvh - var(--hg-game-player-viewport-reserve)));
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
  min-width: 0;
}
.hgGameCard__toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  min-width: 0;
}

.hgGameCard__toolbarActions {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
  margin-left: auto;
}

.hgGameCard__hero {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
  min-width: 0;
}

.hgGameCard__body {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
  min-width: 0;
}

.hgGameCard[data-hg-timeline-collapsed="1"] {
  --hg-game-timeline-col-w: 0px;
}

/* Скрытие таймлайна при любом размере карточки (не только внутри @container 720px). */
.hgGameCard[data-hg-timeline-collapsed="1"] .hgGameCard__bodyArea--timelineRail {
  display: none;
}

/* Скрытый таймлайн: медиа/панели — обычный flex-колонка, не display:contents под grid. */
.hgGameCard[data-hg-timeline-collapsed="1"] .hgGameMediaPanel {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
  min-width: 0;
}

.hgGameCard[data-hg-timeline-collapsed="1"] .hgGameCard__bodyArea--mainPanels {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
  min-width: 0;
}

@container hg-game-card (max-width: 719px) {
  .hgGameCard .hgGameCard__body {
    display: flex;
    flex-direction: column;
    gap: 5px;
    width: 100%;
    min-width: 0;
  }

  .hgGameCard .hgGameMediaPanel,
  .hgGameCard .hgGameCard__bodyArea--mainPanels {
    display: flex;
    flex-direction: column;
    gap: 5px;
    width: 100%;
    min-width: 0;
  }
}

.hgGameCard[data-hg-timeline-animating="1"] {
  overflow-x: clip;
}

/* Compact: блок «ход матча» под контентом. */
.hgGameCard[data-hg-game-card-layout="compact"] .hgGameTimelineBlock {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "tabs"
    "content";
  row-gap: 8px;
  align-items: start;
}

.hgGameCard[data-hg-game-card-layout="compact"] .hgGameCard__bodyArea--timelineTabs {
  grid-area: tabs;
  min-width: 0;
}

.hgGameCard[data-hg-game-card-layout="compact"] .hgGameCard__bodyArea--timelineContent {
  grid-area: content;
  min-width: 0;
}

/* Compact: «Ход матча» под панелями; по умолчанию скрыт (data-hg-timeline-collapsed), как на wide. */
.hgGameCard[data-hg-game-card-layout="compact"][data-hg-timeline-collapsed="1"]
  .hgGameCard__bodyArea--timelineRail {
  display: none;
}

@container hg-game-card (min-width: 720px) {
  .hgGameCard:not([data-hg-game-card-layout="compact"]) .hgGameCard__body {
    display: grid;
    grid-template-areas:
      "main-tabs timeline-tabs"
      "main-panels timeline-content";
    grid-template-columns: minmax(0, 1fr) minmax(0, var(--hg-game-timeline-col-w));
    grid-template-rows: auto minmax(0, auto);
    column-gap: var(--hg-game-card-body-column-gap);
    row-gap: 5px;
    align-items: start;
    transition: grid-template-columns 0.26s ease, column-gap 0.26s ease;
  }

  /* Вкладки матча и полоса «Ход матча» — одна строка; лента не тянет высоту main-tabs. */
  .hgGameCard:not([data-hg-game-card-layout="compact"]) .hgGameTimelineBlock {
    display: contents;
  }

  .hgGameCard[data-hg-timeline-collapsed="1"]:not([data-hg-game-card-layout="compact"]) .hgGameCard__body {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main-tabs"
      "main-panels";
    column-gap: 0;
  }

  .hgGameCard[data-hg-timeline-collapsed="1"]:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    )
    .hgGameCard__body {
    grid-template-areas:
      "main-tabs"
      "main-media-sources"
      "main-media-player";
    grid-template-columns: minmax(0, 1fr);
  }

  .hgGameCard[data-hg-timeline-collapsed="1"]:not([data-hg-game-card-layout="compact"])
    .hgGameCard__bodyArea--timelineRail {
    display: none;
  }

  .hgGameCard:not([data-hg-game-card-layout="compact"]) .hgGameCard__bodyArea--timelineTabs {
    grid-area: timeline-tabs;
    align-self: start;
    min-width: 0;
  }

  .hgGameCard:not([data-hg-game-card-layout="compact"]) .hgGameCard__bodyArea--timelineContent {
    grid-area: timeline-content;
    align-self: stretch;
    min-width: 0;
    min-height: 0;
    max-height: min(70dvh, var(--hg-game-player-max-h));
    overflow-x: hidden;
    overflow-y: auto;
  }

  /*
   * Медиа + «Ход матча» открыт: одна левая ячейка (источники + плеер), не display:contents.
   * Иначе плеер в отдельной grid-строке растягивается по высоте ленты и визуально «по центру».
   */
  .hgGameCard:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    ):not([data-hg-timeline-collapsed="1"])
    .hgGameCard__body {
    grid-template-areas:
      "main-tabs timeline-tabs"
      "main-media-stack timeline-content";
    grid-template-rows: auto minmax(0, auto);
    align-items: start;
  }

  .hgGameCard:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    ):not([data-hg-timeline-collapsed="1"])
    .hgGameCard__bodyArea--mainPanels {
    display: block;
    grid-area: main-media-stack;
    align-self: start;
    justify-self: stretch;
    min-width: 0;
    min-height: 0;
    height: max-content;
  }

  .hgGameCard:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    ):not([data-hg-timeline-collapsed="1"])
    .hgGameMediaPanel {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 5px;
    width: 100%;
    min-width: 0;
  }

  .hgGameCard:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    ):not([data-hg-timeline-collapsed="1"])
    .hgGameCard__bodyArea--mainMediaSources {
    flex: 0 0 auto;
    margin-bottom: 0;
  }

  .hgGameCard:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    ):not([data-hg-timeline-collapsed="1"])
    .hgGameMediaPanel__body {
    flex: 0 0 auto;
    min-width: 0;
  }

  .hgGameCard:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    ):not([data-hg-timeline-collapsed="1"])
    .hgGameCard__bodyArea--timelineContent {
    grid-area: timeline-content;
    grid-row: 2;
    align-self: start;
    max-height: min(70dvh, var(--hg-game-player-max-h));
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
  }

  /* Медиа + лента скрыта: источники и плеер — отдельные строки grid. */
  .hgGameCard[data-hg-timeline-collapsed="1"]:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    )
    .hgGameCard__bodyArea--mainPanels,
  .hgGameCard[data-hg-timeline-collapsed="1"]:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    )
    .hgGameMediaPanel {
    display: contents;
  }

  .hgGameCard[data-hg-timeline-collapsed="1"]:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    )
    .hgGameCard__bodyArea--mainMediaSources {
    grid-area: main-media-sources;
    min-width: 0;
    margin-bottom: 0;
  }

  .hgGameCard[data-hg-timeline-collapsed="1"]:not([data-hg-game-card-layout="compact"])[data-hg-main-tab="media"]:has(
      .hgGameCard__bodyArea--mainMediaSources
    )
    .hgGameMediaPanel__body {
    grid-area: main-media-player;
    align-self: start;
    justify-self: stretch;
    min-width: 0;
  }
}

/* Медиа без display:contents (узкая колонка / один источник) — плеер к верху панели. */
.hgGameMediaPanel {
  justify-content: flex-start;
  align-items: stretch;
}

.hgGameCard__bodyArea--mainTabs {
  grid-area: main-tabs;
  min-width: 0;
}

.hgGameCard__bodyArea--mainPanels {
  grid-area: main-panels;
  min-width: 0;
  align-self: start;
}

.hgGameCard__bodyArea--timelineTabs,
.hgGameCard__bodyArea--timelineContent {
  min-width: 0;
}

/* HvInfoRow по умолчанию justify — в ленте только выравнивание влево. */
.hgGameTimeline__infoRow .hvUiInfoRow__text,
.hgGameTimeline__infoRow .hvUiInfoRow__textClamp {
  text-align: left;
}

.hgGameTimeline__title {
  min-width: 0;
  text-align: left;
  display: block;
}

/* ФИО как на GFX-карточке: номер на две строки, жёлтый фон; справа фамилия / имя */
.hgGameTimeline__title--player {
  display: block;
}

.hgGameTimeline__name {
  display: inline-flex;
  align-items: stretch;
  flex-wrap: nowrap;
  gap: 0.45em;
  min-width: min-content;
  max-width: 100%;
}

.hgGameTimeline__playerNum {
  box-sizing: border-box;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  min-width: 1.75em;
  padding: 0 0.42em;
  border-radius: 3px;
  background: rgba(212, 175, 55, 0.16);
  color: #f3e8b8;
  font-size: 0.9375rem;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0;
  line-height: 1.2;
}

.hgGameTimeline__nameLines {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  line-height: 1.1;
  min-width: min-content;
}

.hgGameTimeline__surname {
  white-space: nowrap;
  font-weight: 700;
}

.hgGameTimeline__given {
  white-space: nowrap;
  font-weight: 400;
}

@media (prefers-reduced-motion: reduce) {
  .hgGameCard:not([data-hg-game-card-layout="compact"]) .hgGameCard__body {
    transition: none;
  }
}

.hgGameCard__panels {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

.hvUiTabsWrap.hgGameTimeline__tabs {
  grid-template-columns: 1fr;
}

.hgGameTimeline__tabs .hvUiTabs__nav {
  display: none;
}

.hgGameTimeline__tabs .hvUiTabs__scroller {
  display: flex;
  width: 100%;
}

.hgGameTimeline__tabs .hvUiTabs__scroller > .hvUiTabs__tab {
  flex: 1 1 0;
  width: 100%;
  max-width: none;
  min-width: 0;
  justify-content: center;
}

.hgGameTimeline__tabs .hvUiTabs__scroller > .hvUiTabs__tab .hvUiButton__in {
  flex: 1;
  justify-content: center;
}

.hgGameTimeline__content {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  width: 100%;
  align-items: stretch;
}

.hgGameTimeline__stub {
  margin: 0;
  width: 100%;
}

.hgGameTimeline__stubBody {
  display: flex;
  flex-direction: column;
  gap: 1em;
}

.hgGameTimeline__stubPara {
  display: block;
  margin: 0;
}

.hgGameTimeline__cacheHint {
  margin: 0 0 6px;
  font-size: 0.8125rem;
  opacity: 0.72;
}

.hgGameTimeline__rows {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
  min-width: 0;
}

.hgGameTimeline__rowWrap {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
  width: 100%;
}

.hgGameTimeline__rowRule {
  display: block;
  width: 100%;
  height: 1px;
  margin: 0 0 8px;
  padding: 0;
  border: 0;
  flex-shrink: 0;
  opacity: 0.88;
  background: linear-gradient(
    90deg,
    var(--bordeaux, #800020) 0%,
    color-mix(in oklab, var(--bordeaux, #800020) 55%, var(--accent, #60a5fa)) 50%,
    var(--accent, #60a5fa) 100%
  );
  box-shadow: 0 0 6px color-mix(in oklab, var(--bordeaux, #800020) 18%, transparent);
}

.hgGameTimeline__row {
  min-width: 0;
}

.hgGameTimeline__infoRow.hvUiInfoRow {
  width: 100%;
}

/* Логотип над счётом: actions — колонка, не inline-flex в ряд */
.hgGameTimeline__infoRow.hvUiInfoRow--compact .hvUiInfoRow__figure--icon {
  align-self: center;
}

.hgGameTimeline__infoRow .hvUiInfoRow__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 0;
  min-width: 2.5rem;
  align-self: stretch;
}

.hgGameTimeline__asideCol {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
  width: 100%;
  line-height: 0;
}

.hgGameTimeline__teamLogo {
  display: block;
  width: 22px;
  height: 22px;
  object-fit: contain;
  flex-shrink: 0;
  border-radius: 5px;
  overflow: hidden;
}

.hgGameTimeline__scoreChip {
  flex-shrink: 0;
}

.hgGameTimeline__typeChip {
  flex-shrink: 0;
}

.hgGameTimeline__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  min-width: 0;
}

.hgGameTimeline__item {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 8px 12px 8px 10px;
  background: linear-gradient(90deg, #000a2b 0%, #000d38 100%);
  border-left: 4px solid #d4af37;
  color: #fff;
  border-radius: 0;
}

.hgGameTimeline__marker {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #e2e8f0;
}

.hgGameTimeline__markerIcon {
  display: block;
  flex-shrink: 0;
}

.hgGameTimeline__item--TwoMinutes .hgGameTimeline__markerIcon {
  display: none;
}

.hgGameTimeline__item--TwoMinutes .hgGameTimeline__marker::before {
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ef4444;
}

.hgGameTimeline__item--Goal .hgGameTimeline__markerIcon {
  color: #22c55e;
}

.hgGameTimeline__item--YellowCard .hgGameTimeline__markerIcon {
  color: #eab308;
}

.hgGameTimeline__item--RedCard .hgGameTimeline__markerIcon {
  color: #ef4444;
}

.hgGameTimeline__line {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.01em;
}

.hgGameCard__headerSentinel {
  height: 1px;
  width: 100%;
  margin: 0;
  padding: 0;
  pointer-events: none;
  visibility: hidden;
}

.hgGameCard__headerSticky {
  position: fixed;
  top: var(--hv-site-sticky-chrome-bottom, 0px);
  left: var(--hg-game-sticky-left, 0);
  width: var(--hg-game-sticky-width, 100%);
  z-index: 155;
  box-sizing: border-box;
  /* Горизонталь — только у HvInfoRow (как у compact-шапки в потоке), не доп. inset. */
  padding: 6px 0;
  display: none;
  pointer-events: none;
  background: color-mix(in oklab, var(--panel2, #1e293b) 92%, var(--panel, #0f172a));
  backdrop-filter: blur(12px) saturate(160%);
  border-bottom: 1px solid color-mix(in oklab, var(--accent, #60a5fa) 18%, transparent);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
}

.hgGameCard__headerSticky[data-visible="true"][data-layout-ready="true"] {
  display: block;
  pointer-events: auto;
}

/* Compact карточка матча: сетка как у .hgInfoRow--match (58px логотипы + main), без колонки actions */
.hgInfoRow--gameCardCompact.hvUiInfoRow {
  overflow: visible;
}

.hgInfoRow--gameCardCompact .hvUiInfoRow__inner {
  --hg-match-logo-col: 58px;
  display: grid;
  grid-template-columns: var(--hg-match-logo-col) minmax(0, 1fr);
  column-gap: 10px;
  row-gap: 4px;
  align-items: start;
}

.hgInfoRow--gameCardCompact .hvUiInfoRow__figure.hvUiInfoRow__figure--icon {
  grid-column: 1;
  grid-row: 1 / -1;
  align-self: center;
  width: var(--hg-match-logo-col);
  max-width: var(--hg-match-logo-col);
  min-width: var(--hg-match-logo-col);
  height: 40px;
  padding: 0;
  border-radius: 0;
  overflow: visible;
  background: transparent;
  box-sizing: border-box;
}

.hgInfoRow--gameCardCompact .hvUiInfoRow__iconSlot {
  display: block;
  width: 100%;
  height: 40px;
  line-height: 0;
  overflow: visible;
}

.hgInfoRow--gameCardCompact .hgMatchRow__logos {
  width: var(--hg-match-logo-col, 58px);
  max-width: var(--hg-match-logo-col, 58px);
  height: 40px;
}

.hgInfoRow--gameCardCompact .hvUiInfoRow__main {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  overflow: visible;
}

.hgInfoRow--gameCardCompact .hvUiInfoRow__text {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  display: block;
  text-align: left;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__teams {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__teamRow {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  min-width: 0;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__teamName {
  margin: 0;
  flex: 1 1 auto;
  min-width: 0;
  text-align: left;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__teamNameLink {
  color: inherit;
  text-decoration: none;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__teamNameLink:hover {
  color: var(--accent, #60a5fa);
  text-decoration: underline;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__scorePt {
  flex: 0 0 auto;
  font-size: 1.125rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1.1;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__scorePt--bump {
  animation: hgScoreLiveBump 0.45s ease-out;
}

/* Предстоящий матч: две строки команд слева, время справа (как колонка счёта). */
.hgInfoRow--gameCardCompact .hgGameCardCompact__teams--scheduled {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: repeat(2, auto);
  column-gap: 10px;
  row-gap: 6px;
  align-items: center;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__teams--scheduled .hgGameCardCompact__teamRow {
  grid-column: 1;
  justify-content: flex-start;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__teams--scheduled .hgGameCardCompact__teamRow:nth-child(1) {
  grid-row: 1;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__teams--scheduled .hgGameCardCompact__teamRow:nth-child(2) {
  grid-row: 2;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__scheduledTime {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  justify-self: end;
  margin: 0;
  text-align: right;
  font-size: 1.125rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  color: var(--text, #f1f5f9);
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__scheduledTime sup {
  font-size: 0.55em;
  font-weight: 600;
  margin-left: 1px;
  vertical-align: super;
  line-height: 0;
}

/* Статус и сеты — одна строка (как в центре scoreboard, но влево под командами). */
.hgGameCardCompact__subtitle {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  align-content: flex-start;
  gap: 6px 8px;
  width: 100%;
  min-width: 0;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__subtitle:empty {
  display: none;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__subtitle > .hgMatchRow__statusChip,
.hgInfoRow--gameCardCompact .hgGameCardCompact__statusText {
  flex: 0 0 auto;
  margin: 0;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__statusText {
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--muted, #94a3b8);
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__subtitleTime {
  flex: 0 0 auto;
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1.25;
  color: var(--muted, #94a3b8);
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__subtitleTime sup {
  font-size: 0.55em;
  font-weight: 600;
  margin-left: 1px;
  vertical-align: super;
  line-height: 0;
}

.hgInfoRow--gameCardCompact .hgGameCardCompact__periodChips {
  display: inline-flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-start;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
  min-width: 0;
}

.hgInfoRow--gameCardCompactSticky.hvUiInfoRow {
  margin: 0;
}

.hgInfoRow--gameCardCompactSticky.hvUiInfoRow {
  overflow: visible;
}

.hgInfoRow--gameCardCompactSticky .hvUiInfoRow__inner {
  display: grid;
  padding-left: var(--hv-ui-info-row-pad, 3px);
  padding-right: var(--hv-ui-info-row-pad, 3px);
  align-items: stretch;
  /* Fallback до sync в useHgStickyBarLayoutVars; дальше — измеренная ширина дорожки. */
  --hg-sticky-col-gap: 12px;
  --hg-sticky-logo-pad-y: 4px;
  --hg-sticky-logo-d: 56px;
  --hg-match-logo-col: calc(var(--hg-sticky-logo-d) * 58 / 40);
  grid-template-columns: var(--hg-match-logo-col) minmax(0, 1fr);
  column-gap: var(--hg-sticky-col-gap);
}

.hgInfoRow--gameCardCompactSticky .hvUiInfoRow__figure.hvUiInfoRow__figure--icon {
  grid-column: 1;
  grid-row: 1 / -1;
  align-self: stretch;
  flex: none;
  height: auto;
  width: var(--hg-match-logo-col);
  min-width: var(--hg-match-logo-col);
  max-width: var(--hg-match-logo-col);
  padding: var(--hg-sticky-logo-pad-y) 0;
  box-sizing: border-box;
  overflow: visible;
  background: transparent;
}

.hgInfoRow--gameCardCompactSticky .hvUiInfoRow__iconSlot {
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
}

.hgInfoRow--gameCardCompactSticky .hvUiInfoRow__main {
  grid-column: 2;
  grid-row: 1 / -1;
  min-width: 0;
}

.hgInfoRow--gameCardCompactSticky .hgMatchRow__logos {
  height: var(--hg-sticky-logo-d);
  width: var(--hg-match-logo-col);
  max-width: var(--hg-match-logo-col);
}

.hgInfoRow--gameCardCompactSticky .hgMatchRow__logo {
  width: var(--hg-sticky-logo-d);
  height: var(--hg-sticky-logo-d);
}

.hgInfoRow--gameCardCompactSticky .hgMatchRow__logo--away {
  left: calc(var(--hg-sticky-logo-d) * 18 / 40);
}

.hgInfoRow--gameCardCompactSticky .hgMatchRow__logo.hvUiImage,
.hgInfoRow--gameCardCompactSticky .hgMatchRow__logo .hvUiImage__mediaCol,
.hgInfoRow--gameCardCompactSticky .hgMatchRow__logo__img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100%;
  max-height: 100%;
}

/* Липкая полоса: сине-бордовый разделитель на всю ширину блока (логотипы + счёт). */
.hgInfoRow--gameCardCompactSticky .hgGameCardCompact__teams {
  --hg-sticky-team-stripe-inset-left: calc(var(--hg-match-logo-col, 81px) + var(--hg-sticky-col-gap, 12px));
  --hg-sticky-team-stripe-inset-right: calc(var(--hv-ui-info-row-pad, 3px) + 4px);
  gap: 0;
}

.hgInfoRow--gameCardCompactSticky .hgGameCardCompact__teams--scheduled {
  row-gap: 0;
}

.hgInfoRow--gameCardCompactSticky .hgGameCardCompact__teamRow {
  position: relative;
  padding: 6px 4px;
  margin: 0;
  border-radius: 0;
  background: transparent;
  isolation: isolate;
}

.hgInfoRow--gameCardCompactSticky .hgGameCardCompact__teamRow::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: calc(-1 * var(--hg-sticky-team-stripe-inset-left));
  right: var(--hg-sticky-team-stripe-inset-right);
  border-radius: 4px;
  pointer-events: none;
  background: transparent;
  transition: background 0.15s ease;
}

.hgInfoRow--gameCardCompactSticky .hgGameCardCompact__scorePt,
.hgInfoRow--gameCardCompactSticky .hgGameCardCompact__scheduledTime {
  margin-right: 18px;
}

.hgInfoRow--gameCardCompactSticky .hgGameCardCompact__teamRow:first-child::after {
  content: "";
  position: absolute;
  left: calc(-1 * var(--hg-sticky-team-stripe-inset-left));
  right: var(--hg-sticky-team-stripe-inset-right);
  bottom: 0;
  height: 2px;
  border-radius: 1px;
  pointer-events: none;
  opacity: 0.92;
  background: linear-gradient(
    90deg,
    var(--bordeaux, #800020) 0%,
    color-mix(in oklab, var(--bordeaux, #800020) 55%, var(--accent, #60a5fa)) 50%,
    var(--accent, #60a5fa) 100%
  );
  box-shadow: 0 0 8px color-mix(in oklab, var(--bordeaux, #800020) 22%, transparent);
}

@media (min-width: 981px) {
  .hgInfoRow--gameCardCompactSticky .hgGameCardCompact__teamRow:hover::before {
    background: color-mix(in oklab, var(--panel2, #1e293b) 55%, var(--accent, #60a5fa) 14%);
  }

  .hgInfoRow--gameCardCompactSticky .hgGameCardCompact__teamRow:hover .hgGameCardCompact__teamNameLink {
    color: var(--accent, #60a5fa);
  }
}

.hgGameScoreboard {
  --hg-score-logo: 48px;
  display: grid;
  grid-template-columns: 1fr minmax(0, 160px) 1fr;
  gap: 5px;
  align-items: stretch;
  padding: 5px;
  border-radius: 12px;
  background: color-mix(in oklab, var(--panel2, #1e293b) 88%, var(--panel, #0f172a));
  overflow: visible;
}
@container hg-game-card (min-width: 640px) {
  .hgGameScoreboard {
    --hg-score-logo: 96px;
  }
}
.hgGameScoreboard__team {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  min-width: 0;
  width: 100%;
}
.hgGameScoreboard__teamNameLink {
  color: inherit;
  text-decoration: none;
}
.hgGameScoreboard__teamNameLink:hover {
  color: var(--accent, #60a5fa);
  text-decoration: underline;
}
.hgGameScoreboard__teamNameLink:focus-visible {
  outline: 2px solid color-mix(in oklab, var(--accent, #60a5fa) 65%, transparent);
  outline-offset: 2px;
  border-radius: 2px;
}
.hgGameScoreboard__teamName {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0 2px;
  text-align: center;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--text, #e2e8f0);
  overflow-wrap: anywhere;
  word-break: break-word;
}
.hgGameScoreboard__center {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  max-width: 160px;
  min-width: 0;
  min-height: 100%;
  margin-inline: auto;
  text-align: center;
}
/* Логотип: квадрат 48×48 (96×96 на ≥640px), contain — без обрезки */
.hgGameScoreboard__logoWrap.hvUiImage {
  width: var(--hg-score-logo) !important;
  height: auto !important;
  max-width: 100%;
  margin-inline: auto;
  flex-shrink: 0;
}
.hgGameScoreboard__logoWrap.hvUiImage--ratioShell:not(.hvUiImage--descBelowFrame) {
  aspect-ratio: unset;
  min-height: 0;
}
.hgGameScoreboard__logoWrap.hvUiImage--ratioShell > .hvUiImage__figure {
  height: auto;
}
.hgGameScoreboard__logoWrap > .hvUiImage__figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  height: auto;
  min-height: 0;
}
.hgGameScoreboard__logoWrap > .hvUiImage__figure > .hvUiImage__root {
  width: var(--hg-score-logo);
  height: auto;
  flex: 0 0 auto;
}
.hgGameScoreboard__logoWrap .hvUiImage__mediaCol {
  width: var(--hg-score-logo);
  height: var(--hg-score-logo);
  flex: 0 0 auto;
  aspect-ratio: 1 / 1;
}
.hgGameScoreboard__logoWrap .hvUiImage__frame {
  width: 100%;
  height: 100%;
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #fff;
  border-radius: 8px;
}
.hgGameScoreboard__logoWrap .hvUiImage__mediaSlot {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hgGameScoreboard__logoWrap .hgGameScoreboard__logoWrap__picture,
.hgGameScoreboard__logoWrap .hgGameScoreboard__logoWrap__picture__img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain !important;
}
.hgGameInfoAccordion__title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.hgGameInfoAccordion__titleText {
  line-height: 1.35;
}
.hgGameInfoAccordion__tournament {
  font-weight: 700;
}
.hgGameInfoAccordion__stage {
  font-weight: 400;
  color: var(--muted, #94a3b8);
}
.hgGameInfoAccordion__bullet {
  font-weight: 400;
  color: var(--muted, #94a3b8);
}
.hgGameInfoAccordion__titleIcon {
  flex-shrink: 0;
  color: var(--muted, #94a3b8);
}
.hgGameInfoAccordion__facts {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.hgGameInfoAccordion__row.hvUiInfoRow {
  width: 100%;
}
.hgGameInfoAccordion__value {
  font-size: 0.9375rem;
  line-height: 1.35;
}
.hgGameInfoAccordion__date {
  font-weight: 700;
}
.hgGameInfoAccordion__time {
  font-weight: 400;
  color: var(--muted, #94a3b8);
}
.hgGameInfoAccordion__muted {
  color: var(--muted, #94a3b8);
  font-size: 0.875rem;
}
.hgInfoRow--stat .hvUiInfoRow__actions {
  flex-direction: row;
  align-items: center;
  flex-wrap: nowrap;
}
.hgGameStatRow__scoreLine {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 6px;
}
.hgGameStatRow__scoreChip {
  flex-shrink: 0;
  font-variant-numeric: tabular-nums;
}
.hgGameStatRow__scoreChip .hvUiChip__caption {
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.2;
}
.hgGameStatRow__subtitle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
}
.hgGameStatRow__tournLogo {
  flex-shrink: 0;
  border-radius: 50%;
  overflow: hidden;
}
.hgGameStatRow__subtitleText {
  font-size: 0.8125rem;
  color: var(--muted, #94a3b8);
  line-height: 1.3;
}
.hgGameMediaPanel__sources {
  margin-bottom: 12px;
}
.hgGameMediaPanel__photo {
  padding: 12px 0;
}
.hgGameRostersPanel {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow-x: clip;
}
.hgGameRostersPanel__viewSet {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-bottom: 12px;
  flex-shrink: 0;
}
.hgGameRostersPanel__viewSet.hvUiButtonSetField--stretched > .hvUiButtonSet {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
/* Без overflow-x на треке: иначе ResizeObserver слайдера ↔ полоса прокрутки ↔ ширина (мерцание на «Гости»). */
.hgGameRostersPanel__viewSet .hvUiButtonSet__track--horizontal {
  overflow-x: hidden;
  overflow-y: hidden;
}
.hgGameRostersPanel__viewSet.hvUiButtonSetField--stretched
  > .hvUiButtonSet.hvUiButtonSet--hasSlider.hvUiButtonSet--horizontal
  .hvUiButtonSet__btn {
  flex: 1 1 0;
  min-width: 0;
}
.hgGameRostersPanel__viewSet.hvUiButtonSetField--stretched
  > .hvUiButtonSet.hvUiButtonSet--hasSlider.hvUiButtonSet--horizontal
  .hvUiButtonSet__btn
  .hvUiButton__in {
  overflow: hidden;
  text-overflow: ellipsis;
}
.hgGameRostersPanel__body {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.hgGameRostersPanel__team {
  display: block;
  min-width: 0;
}
.hgGameRostersPanel__team--empty {
  display: flex;
  flex-direction: column;
  min-height: clamp(8rem, 22vh, 200px);
}
.hgGameRoster__emptyState {
  box-sizing: border-box;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 28px 20px;
  text-align: center;
  border-radius: 10px;
  border: 1px dashed color-mix(in oklab, var(--border, #334155) 65%, transparent);
  background: color-mix(in oklab, var(--panel2, #1e293b) 55%, transparent);
}
.hgGameRoster__emptyStateIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--muted, #94a3b8);
  opacity: 0.9;
}
.hgGameRoster__emptyStateIcon .hvUiIcon {
  width: 32px;
  height: 32px;
}
.hgGameRoster__emptyStateText {
  margin: 0;
  max-width: 20rem;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.45;
  color: color-mix(in oklab, var(--muted, #94a3b8) 92%, var(--text, #e2e8f0));
}
.siteMain--pluginExtHandball .hgRosterSummary {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  padding: 4px 0 8px;
}
.siteMain--pluginExtHandball .hgRosterCompare {
  min-width: 0;
}
.siteMain--pluginExtHandball .hgRosterCompare__title {
  margin: 0 0 6px;
  font-size: 0.8125rem;
  font-weight: 600;
  text-align: center;
  color: var(--accent, #60a5fa);
  line-height: 1.25;
}
.siteMain--pluginExtHandball .hgRosterCompare__row {
  display: grid;
  grid-template-columns: minmax(2.75rem, auto) minmax(0, 1fr) minmax(2.75rem, auto);
  align-items: center;
  gap: 8px;
}
.siteMain--pluginExtHandball .hgRosterCompare__value {
  font-size: 0.9375rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1.2;
  color: var(--text, #e2e8f0);
}
.siteMain--pluginExtHandball .hgRosterCompare__value--home {
  text-align: right;
}
.siteMain--pluginExtHandball .hgRosterCompare__value--away {
  text-align: left;
}
.siteMain--pluginExtHandball .hgRosterCompare__bar {
  display: flex;
  align-items: stretch;
  gap: 2px;
  min-width: 0;
  height: 20px;
  border-radius: 4px;
  overflow: hidden;
  background: color-mix(in oklab, var(--border, #334155) 55%, transparent);
}
.siteMain--pluginExtHandball .hgRosterCompare__seg {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-width: 2px;
  height: 100%;
  border-radius: 2px;
  overflow: hidden;
  transition: width 0.35s ease;
}
.siteMain--pluginExtHandball .hgRosterCompare__segPct {
  font-size: 0.6875rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  color: #fff;
  white-space: nowrap;
  text-shadow: 0 0 3px color-mix(in oklab, #000 55%, transparent);
  pointer-events: none;
  user-select: none;
}
.siteMain--pluginExtHandball .hgRosterCompare__seg--home {
  /* Темнее accent — белый % внутри сегмента читается (светлый #60a5fa — нет). */
  background: color-mix(in oklab, var(--accent, #2563eb) 78%, #020617);
}
.siteMain--pluginExtHandball .hgRosterCompare__seg--away {
  background: var(--bordeaux, #800020);
}
.hgGameStatsPanel__tabs {
  margin-bottom: 12px;
}
.hgGameStatsPanel__group {
  margin-top: 16px;
}
.hgGameStatsPanel__heading {
  margin: 0 0 8px;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--muted, #94a3b8);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.hgGameStaff__title,
.hgGameRoster__gkTitle {
  margin: 16px 0 8px;
  font-size: 0.875rem;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.hgGameStaff__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.hgGameStaff__role {
  display: block;
  font-size: 0.75rem;
  color: var(--muted, #94a3b8);
}
.hgGameStaff__name {
  display: block;
  font-size: 0.9375rem;
}
.hgGameStaffAccordion {
  margin-bottom: 12px;
}
.hgGameCard__tabs {
  margin-top: 4px;
}
/* Стрелки прокрутки вкладок: nav-back (не handball-глиф), см. hgGameCardTabIcons.tsx */
.hgTabsNavIcon {
  display: block;
  flex-shrink: 0;
  color: inherit;
}
.hgTabsNavIconSlot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}
/* Узкий colMain: вкладки с иконками (неактивные — только иконка в HvTabs <980px viewport). */
@container hg-game-card (max-width: 520px) {
  .hgGameCard__tabs:not(.hgGameTimeline__tabs) .hvUiTabs__scroller,
  .hgGameStatsPanel__tabs .hvUiTabs__scroller,
  .hgGameMediaPanel__sources .hvUiTabs__scroller,
  .hgGameTimeline__tabs .hvUiTabs__scroller {
    width: 100%;
  }
  .hgGameCard__tabs:not(.hgGameTimeline__tabs) .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab,
  .hgGameStatsPanel__tabs .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab,
  .hgGameMediaPanel__sources .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab {
    flex: 0 0 auto;
    min-width: 0;
  }
  .hgGameCard__tabs:not(.hgGameTimeline__tabs) .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="false"],
  .hgGameStatsPanel__tabs .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="false"],
  .hgGameMediaPanel__sources .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="false"] {
    flex: 0 0 auto;
    width: 2.75rem;
    max-width: 2.75rem;
  }
  .hgGameCard__tabs:not(.hgGameTimeline__tabs) .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"],
  .hgGameStatsPanel__tabs .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"],
  .hgGameMediaPanel__sources .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] {
    flex: 0 1 auto;
    width: auto;
    max-width: none;
  }
  /* Неактивные: только иконка (подпись скрыта в HvTabs @980px) — по центру узкой ячейки. */
  .hgGameCard__tabs:not(.hgGameTimeline__tabs) .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="false"],
  .hgGameStatsPanel__tabs .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="false"],
  .hgGameMediaPanel__sources .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="false"] {
    justify-content: center;
    padding-inline: 8px;
  }
  /* Активная: ширина по содержимому (иконка + подпись), не как у соседних иконок. */
  .hgGameCard__tabs:not(.hgGameTimeline__tabs) .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"],
  .hgGameStatsPanel__tabs .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"],
  .hgGameMediaPanel__sources .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] {
    justify-content: flex-start;
    gap: 6px;
    padding-inline: 8px 12px;
  }
  .hgGameCard__tabs:not(.hgGameTimeline__tabs) .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] .hvUiButton__before,
  .hgGameCard__tabs:not(.hgGameTimeline__tabs) .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] .hvUiTabs__iconSlot,
  .hgGameStatsPanel__tabs .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] .hvUiButton__before,
  .hgGameStatsPanel__tabs .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] .hvUiTabs__iconSlot,
  .hgGameMediaPanel__sources .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] .hvUiButton__before,
  .hgGameMediaPanel__sources .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] .hvUiTabs__iconSlot {
    flex-shrink: 0;
  }
  .hgGameCard__tabs:not(.hgGameTimeline__tabs) .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] .hvUiButton__in,
  .hgGameStatsPanel__tabs .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] .hvUiButton__in,
  .hgGameMediaPanel__sources .hvUiTabs__scroller .hvUiButton.hvUiTabs__tab[aria-selected="true"] .hvUiButton__in {
    flex: 0 1 auto;
    min-width: 0;
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
  }
  /* Подписи HvImage (команды) и аккордеон турнира — компактнее на узкой карточке. */
  .hgGameScoreboard__teamName {
    font-size: 0.6875rem;
    line-height: 1.2;
  }
  .hgGameInfoAccordion .hvUiAccordion__title {
    font-size: 0.8125rem;
    line-height: 1.25;
  }
  .hgGameInfoAccordion__titleText {
    line-height: 1.25;
  }
  .hgGameTvLinks__hint,
  .hgGamePhotoAlbums__hint {
    font-size: 0.75rem;
    line-height: 1.35;
  }
}
.hgGameScore {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: center;
  align-self: stretch;
  gap: 2px;
  width: 100%;
  max-width: 160px;
  min-width: 0;
  min-height: 0;
  box-sizing: border-box;
}
.hgGameScore__status {
  flex-shrink: 0;
  margin: 0;
  width: 100%;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.15;
  color: var(--muted, #94a3b8);
}
.hgGameScore__status--live {
  color: var(--good, #4ade80);
}
.hgGameScore__status--finished {
  color: var(--muted, #94a3b8);
}
html[data-theme="light"] .hgGameScore__status--live {
  color: color-mix(in oklab, var(--good, #16a34a) 88%, #14532d);
}
.hgGameScore__finalRow {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  min-height: 0;
  width: 100%;
  line-height: 1;
}
.hgGameScore__centerStack {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 100%;
  min-width: 0;
}
.hgGameScore__centerStack--tkrWithScore .hgGameScore__startTime {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--muted, #94a3b8);
}
@container hg-game-card (min-width: 640px) {
  .hgGameScore__centerStack--tkrWithScore .hgGameScore__startTime {
    font-size: 1.25rem;
  }
}
/* ТКР: время начала в центре (статус — строкой выше). */
.hgGameScore__startTime {
  margin: 0;
  text-align: center;
  font-size: 1.75rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  color: var(--text, #f1f5f9);
}
.hgGameScore__startTime sup {
  font-size: 0.55em;
  font-weight: 600;
  margin-left: 1px;
  vertical-align: super;
  line-height: 0;
}
@container hg-game-card (min-width: 640px) {
  .hgGameScore__startTime {
    font-size: 2.125rem;
  }
}
.hgGameScore__final {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: center;
  gap: 0.12em;
  margin: 0;
  font-size: 2.125rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
@container hg-game-card (min-width: 640px) {
  .hgGameScore__final {
    font-size: 2.75rem;
  }
}
.hgGameScore__finalPt {
  color: var(--text, #e2e8f0);
}
.siteMain--pluginExtHandball .hgGameScore__periodChip .hgGameScore__periodPt,
.siteMain--pluginExtHandball .hgGameScore__periodChip .hgGameScore__periodSep {
  color: var(--text, #e2e8f0);
}
html[data-theme="light"] .hgGameScore__finalPt,
html[data-theme="light"] .siteMain--pluginExtHandball .hgGameScore__periodChip .hgGameScore__periodPt,
html[data-theme="light"] .siteMain--pluginExtHandball .hgGameScore__periodChip .hgGameScore__periodSep {
  color: var(--text, #0f172a);
}
.hgGameScore__finalPt,
.siteMain--pluginExtHandball .hgGameScore__periodChip .hgGameScore__periodPt {
  transition: color 0.65s ease;
}
.hgGameScore__finalPt--bump,
.siteMain--pluginExtHandball .hgGameScore__periodChip .hgGameScore__periodPt--bump {
  color: #f87171;
}
.hgGameScore__periodSep {
  opacity: 0.9;
  font-weight: 700;
}
.hgGameScore__sep {
  opacity: 0.9;
  font-weight: 700;
}
.hgGameScore__vs {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--muted, #94a3b8);
  line-height: 0;
}
.hgGameScore__vsIcon {
  flex-shrink: 0;
  color: inherit;
}
.hgGameScore__periodChips {
  display: flex;
  flex-shrink: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 100%;
  line-height: 1;
}
.hgGameScore__periodChips > li {
  margin: 0;
  padding: 0;
  line-height: 1;
}
.siteMain--pluginExtHandball .hgGameScore__periodChip.hvUiChip {
  font-variant-numeric: tabular-nums;
}
/* 75% от прежних размеров чипа периода (0.8125rem / padding compact / буллет). */
.siteMain--pluginExtHandball .hgGameScore__periodChip.hvUiChip--compact {
  gap: 3px;
  padding: 0 !important;
  font-size: 0.61rem;
  line-height: 1.2;
  border-radius: 4px;
  letter-spacing: normal;
  text-transform: none;
}

.siteMain--pluginExtHandball .hgGameScore__periodChip.hvUiChip--compact .hvUiChip__caption {
  padding: 0;
  margin: 0;
}

/* Пляжка: без рамки/фона (hvUiChip--noBorder в разметке). */
.siteMain--pluginExtHandball .hgGameScore__periodChip--beach.hvUiChip--compact.hvUiChip--noBorder {
  border-width: 0 !important;
  border-color: transparent !important;
  background: transparent !important;
}

/* Классика: рамка поверх hvUiChip--noBorder (порядок hv-ui.css не должен сбрасывать). */
.siteMain--pluginExtHandball .hgGameScore__periodChip--classic.hvUiChip--compact.hvUiChip--noBorder {
  border-style: solid !important;
  border-width: 1px !important;
  border-color: color-mix(in oklab, var(--line, #334155) 72%, transparent) !important;
  background: color-mix(in oklab, var(--panel2, #1e293b) 55%, transparent) !important;
}

html[data-theme="light"] .siteMain--pluginExtHandball .hgGameScore__periodChip--classic.hvUiChip--compact.hvUiChip--noBorder {
  border-color: color-mix(in oklab, var(--line, #cbd5e1) 85%, transparent) !important;
  background: color-mix(in oklab, var(--panel2, #f1f5f9) 70%, transparent) !important;
}

.siteMain--pluginExtHandball .hgGameScore__periodChip.hvUiChip--tone-base {
  color: var(--text, #e2e8f0);
}

html[data-theme="light"] .siteMain--pluginExtHandball .hgGameScore__periodChip.hvUiChip--tone-base {
  color: var(--text, #0f172a);
}
.siteMain--pluginExtHandball .hgGameScore__periodChip.hvUiChip .hvUiChip__caption,
.siteMain--pluginExtHandball .hgGameScore__periodCaption {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
  font-variant-numeric: tabular-nums;
  font-size: inherit;
  font-weight: 700;
  line-height: 1.2;
  max-width: none;
  white-space: nowrap;
}
.siteMain--pluginExtHandball .hgGameScore__ggBullet {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0 1px;
  font-size: 0.79rem;
  font-weight: 800;
  line-height: 1;
}
.siteMain--pluginExtHandball .hgGameScore__ggBullet--active {
  color: #eab308;
}
.siteMain--pluginExtHandball .hgGameScore__ggBullet--placeholder {
  color: color-mix(in oklab, var(--text, #e2e8f0) 11%, var(--panel2, #1e293b));
}
.siteMain--pluginExtHandball .hgGameScore__ggBullet--spacer {
  visibility: hidden;
  pointer-events: none;
}
html[data-theme="light"] .siteMain--pluginExtHandball .hgGameScore__ggBullet--placeholder {
  color: color-mix(in oklab, var(--text, #0f172a) 9%, var(--panel2, #f1f5f9));
}
@media (prefers-reduced-motion: reduce) {
  .hgGameScore__finalPt,
  .siteMain--pluginExtHandball .hgGameScore__periodChip .hgGameScore__periodPt {
    transition: none;
  }
}
.hgGameRoster__playerLink {
  color: inherit;
  text-decoration: none;
}
.hgGameRoster__playerLink:hover {
  color: var(--accent, #60a5fa);
  text-decoration: underline;
}
.hgGameRoster__playerLink:focus-visible {
  outline: 2px solid color-mix(in oklab, var(--accent, #60a5fa) 65%, transparent);
  outline-offset: 2px;
  border-radius: 2px;
}
.hgGameRoster__scroll {
  overflow-x: auto;
  overflow-y: visible;
  max-width: 100%;
  scrollbar-gutter: stable;
}
.hgGameRoster__table {
  width: 100%;
  font-size: 0.8125rem;
}
.hgGameRoster__table .hvUiTable__th--align-center .hvUiTable__sortHeader,
.hgGameRoster__table .hvUiTable__th--align-center .hvUiTable__thLabel {
  justify-content: center;
}
.hgGameRoster__table--withTotal tbody .hvUiTable__tr--footer .hvUiTable__td {
  background: color-mix(in oklab, var(--accent, #2563eb) 6%, var(--panel2, #f8fafc));
}
.hgGameRoster__table--withTotal tbody .hvUiTable__tr--footer .hvUiTable__td:nth-child(2) {
  text-align: right;
}
.hgGameRoster__thIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
}
.hgGameRoster__thIconSr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.hgGameRoster__caption {
  margin: 0 0 8px;
  font-size: 0.9375rem;
  font-weight: 600;
}
.hgGameH2h__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.hgGameH2h__list > li > .hgVitrineBrandRule {
  margin-top: 8px;
  margin-bottom: 6px;
}

.hgGameStatRow {
  display: block;
  min-width: 0;
  cursor: pointer;
}

.hgGameStatRow:hover .hvUiInfoRow {
  background: color-mix(in oklab, var(--accent, #60a5fa) 8%, transparent);
}

.hgInfoRow--stat.hvUiInfoRow {
  transition: background-color 0.14s ease;
}

.hgGameH2h__link {
  display: block;
  text-decoration: none;
  color: inherit;
}
/* Высота = compact HvChip счёта (padding 3×2 + caption 0.9375rem×1.2 + border 2px). */
.hgH2hOutcome {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  flex-shrink: 0;
  width: calc(0.9375rem * 1.2 + 6px + 2px);
  height: calc(0.9375rem * 1.2 + 6px + 2px);
  border-radius: 4px;
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 1;
}
.hgH2hOutcome--win {
  background: color-mix(in oklab, #22c55e 35%, var(--panel2, #1e293b));
  color: #bbf7d0;
}
.hgH2hOutcome--draw {
  background: color-mix(in oklab, #94a3b8 35%, var(--panel2, #1e293b));
  color: #e2e8f0;
}
.hgH2hOutcome--loss {
  background: color-mix(in oklab, #ef4444 35%, var(--panel2, #1e293b));
  color: #fecaca;
}
.hgGameTvLinks__hint,
.hgGamePhotoAlbums__hint {
  margin: 0 0 12px;
  font-size: 0.875rem;
  color: var(--muted, #94a3b8);
}
.hgGameTvLinks__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}

.hgGameTvLinks__list > li > .hgVitrineBrandRule {
  margin-top: 8px;
  margin-bottom: 6px;
}

.hgInfoRow--tvLink.hvUiInfoRow {
  transition: background-color 0.14s ease;
}

.hgGameTvLinks__list > li:hover .hgInfoRow--tvLink.hvUiInfoRow {
  background: color-mix(in oklab, var(--accent, #60a5fa) 8%, transparent);
}

.hgInfoRow--tvLink.hvUiInfoRow .hvUiInfoRow__figure {
  width: auto;
  height: auto;
  max-height: 50px;
  border-radius: 0;
  overflow: visible;
  background: transparent;
}

.hgInfoRow--tvLink.hvUiInfoRow .hvUiInfoRow__img {
  width: auto;
  height: auto;
  max-height: 50px;
  max-width: min(120px, 36vw);
  border-radius: 0;
  object-fit: contain;
  object-position: center left;
}

/* Название канала в caption; без пометок — дублируем в text, чтобы не было пустой колонки. */
.hgInfoRow--tvLink.hvUiInfoRow .hvUiInfoRow__caption {
  text-transform: none;
  letter-spacing: normal;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--text, #f1f5f9);
}

.hgInfoRow--tvLink.hvUiInfoRow:not(.hgInfoRow--tvLinkHasNotes) .hvUiInfoRow__caption {
  display: none;
}

.hgInfoRow--tvLink.hvUiInfoRow.hgInfoRow--tvLinkHasNotes .hvUiInfoRow__text {
  display: none;
}

.hgGameTvLinksRow__title {
  font-weight: 600;
  line-height: 1.25;
}

.hgGameTvLinksRow__notes {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.hgGameTvLinksRow__note {
  display: block;
}

.hgGamePhotoAlbums__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.hgGamePhotoAlbums__card {
  flex: 1 1 200px;
  max-width: 300px;
  border-radius: 10px;
  background: var(--panel2, #1e293b);
  border: 1px solid color-mix(in oklab, var(--muted, #94a3b8) 25%, transparent);
  overflow: hidden;
  padding: 14px;
}
.hgGamePhotoAlbums__caption {
  margin: 8px 0 0;
  font-size: 0.8125rem;
  color: var(--muted, #94a3b8);
  line-height: 1.35;
}
.hgGamePhotoAlbums__preview {
  aspect-ratio: 4 / 3;
  margin-bottom: 10px;
  border-radius: 6px;
  overflow: hidden;
  background: color-mix(in oklab, var(--panel, #0f172a) 80%, #000);
  display: flex;
  align-items: center;
  justify-content: center;
}
.hgGamePhotoAlbums__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hgGamePhotoAlbums__noPreview {
  font-size: 0.8125rem;
  color: var(--muted, #94a3b8);
}
.hgPlayer__htmlEmbed iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

/* ——— Карточка команды (/team/:id) ——— */
.hgTeamCard {
  min-width: 0;
}

.hgTeamCard__toolbar {
  margin-bottom: 0.5rem;
}

.hgTeamCard__title {
  margin: 0;
  font-size: 1.15rem;
  line-height: 1.35;
  text-transform: uppercase;
}

.hgInfoRow--teamDescription.hvUiInfoRow {
  margin-top: 0.75rem;
}

.hgInfoRow--teamDescription .hvUiInfoRow__textClamp {
  white-space: pre-line;
  font-size: 0.95rem;
  line-height: 1.45;
}

.hgInfoRow--teamDescriptionLead .hvUiInfoRow__textClamp {
  color: var(--muted, #94a3b8);
}

.hgTeamCard__social {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.hgTeamCard__tabs {
  margin-top: 1rem;
}

.hgTeamCard__panel {
  margin-top: 0.75rem;
  min-width: 0;
}

.hgInfoRow--teamCard .hvUiInfoRow__figure {
  width: 96px;
  height: 96px;
}

.hgInfoRow--teamCard .hvUiInfoRow__figure--icon {
  padding: 0;
  background: transparent;
}

.hgInfoRow--teamCard .hvUiInfoRow__iconSlot {
  width: 96px;
  height: 96px;
}

.hgTeamCard__logo {
  display: block;
  width: 96px;
  height: 96px;
  border-radius: 12px;
  overflow: hidden;
  background: var(--panel2, #1e293b);
}

.hgTeamCard__logo__img {
  border-radius: 12px;
}

.hgTeamMatchesTab {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  min-width: 0;
}

.hgTeamMatchesTab__period {
  width: 100%;
}

.hgTeamMatchesTab__period .hvUiDateTimePeriod {
  width: auto;
  max-width: 100%;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0.75rem;
}

.hgTeamMatchesTab__period .hvUiDateTimePeriod__row {
  flex: 0 1 auto;
  flex-wrap: nowrap;
  gap: 0.35rem;
  min-width: 0;
}

.hgTeamMatchesTab__period .hvUiDateTimePeriod__row > .hvUiToggle {
  flex: 0 0 auto;
}

.hgTeamMatchesTab__period .hvUiDateTimePeriod__row > .hvUiDateTime {
  flex: 0 1 auto;
  width: auto;
  min-width: 9rem;
}

.hgTeamMatchesTab__slice,
.hgTeamMatchesTab__ha {
  width: 100%;
}

.hgTeamRoster {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  min-width: 0;
}

.hgTeamRoster__disciplineSet {
  width: 100%;
}

.hgTeamRoster__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.hgTeamRoster__player {
  position: relative;
  min-width: 0;
}

.hgTeamRoster__playerLink {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: none;
}

@media (min-width: 981px) {
  .hgTeamRoster__playerLink {
    display: block;
  }

  .hgTeamRoster__playerLink:hover + .hvUiInfoRow {
    background: color-mix(in oklab, var(--accent, #60a5fa) 8%, transparent);
  }

  .hgTeamRoster__playerLink:focus-visible {
    outline: 2px solid color-mix(in oklab, var(--accent, #60a5fa) 55%, transparent);
    outline-offset: -2px;
  }

  .hgTeamRoster__playerCardBtn {
    display: none !important;
  }
}

.hgInfoRow--teamRosterPlayer .hvUiInfoRow__figure {
  width: 96px;
  height: 96px;
}

.hgInfoRow--teamRosterPlayer .hvUiInfoRow__figure--icon {
  padding: 0;
  background: transparent;
}

.hgInfoRow--teamRosterPlayer .hvUiInfoRow__iconSlot {
  width: 96px;
  height: 96px;
}

.hgInfoRow--teamRosterPlayer .hvUiInfoRow__iconSlot .hgTeamRoster__photo,
.hgInfoRow--teamRosterPlayer .hvUiInfoRow__iconSlot .hgTeamRoster__photo__img {
  width: 100%;
  height: 100%;
  max-width: 96px;
  max-height: 96px;
}

.hgInfoRow--teamRosterPlayer .hvUiInfoRow__actions {
  flex-shrink: 0;
  align-self: center;
}

.hgTeamRoster__photo {
  display: block;
  width: 96px;
  height: 96px;
  border-radius: 12px;
  overflow: hidden;
  background: var(--panel2, #1e293b);
}

.hgTeamRoster__photo__img {
  border-radius: 12px;
}

.hgTeamRoster__subtitle {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.hgTeamRoster__subtitleLine {
  color: var(--muted, #94a3b8);
  font-size: 0.9rem;
}

.hgTeamRoster__title {
  margin: 0;
  font-size: 1.05rem;
  line-height: 1.35;
  font-weight: 600;
  text-transform: uppercase;
}

.hgTeamRoster__playerCardBtn.hvUiButton {
  flex-shrink: 0;
}

.hgTeamRoster__heading {
  margin: 0 0 0.5rem;
  font-size: 1rem;
  font-weight: 600;
}

.hgTeamRoster__list > li + li {
  border-top: 0;
}

.hgTeamRoster__list > li > .hgVitrineBrandRule {
  margin-top: 8px;
  margin-bottom: 6px;
}

.hgTeamRoster__meta {
  margin: 0.35rem 0 0;
  font-size: 0.88rem;
  color: var(--muted, #94a3b8);
}

/* ——— Карточка игрока (/player/:id) ——— */
.hgInfoRow--playerCard .hvUiInfoRow__figure {
  width: 96px;
  height: 96px;
}

.hgInfoRow--playerCard .hvUiInfoRow__figure--icon {
  padding: 0;
  background: transparent;
}

.hgInfoRow--playerCard .hvUiInfoRow__iconSlot {
  width: 96px;
  height: 96px;
}

.hgPlayerCard__photo {
  display: block;
  width: 96px;
  height: 96px;
  border-radius: 12px;
  overflow: hidden;
  background: var(--panel2, #1e293b);
}

.hgPlayerCard__photo__img {
  border-radius: 12px;
}

.hgPlayerCard__subtitle {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.hgPlayerCard__subtitleLine {
  color: var(--muted, #94a3b8);
  font-size: 0.9rem;
}

.hgPlayerCard__title {
  margin: 0;
  font-size: 1.15rem;
  line-height: 1.35;
  text-transform: uppercase;
}

.hgPlayerCard__toolbar {
  margin-bottom: 0.5rem;
}

.hgPlayerCard__teams {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.hgPlayerCard__meta {
  margin: 0.35rem 0 0;
  font-size: 0.9rem;
  color: var(--muted, #94a3b8);
}

.hgPlayerCard__tabs {
  margin-top: 1rem;
}

.hgPlayerCard__panel {
  margin-top: 0.75rem;
}

.hgPlayerSeasons__empty {
  margin-top: 0.75rem;
}

.hgPlayerSeasons__selectors {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
  align-items: end;
  margin-top: 0.75rem;
}

.hgPlayerSeasons__field {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  min-width: 0;
}

.hgPlayerSeasons__fieldLabel {
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--muted, #94a3b8);
}

.hgPlayerSeasons__seasonStats {
  margin-top: 0.75rem;
}

.hgPlayerSeasons__seasonStatsTitle {
  margin: 0 0 0.35rem;
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--text, #e2e8f0);
}

.hgPlayerSeasons__gameStat {
  margin-top: 0.25rem;
}

.hgPlayerSeasons__games {
  list-style: none;
  margin: 0.75rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}

.hgPlayerSeasons__game + .hgPlayerSeasons__game {
  margin-top: 0.5rem;
}

.hgPlayerSeasons__gameAccordion.hvUiAccordion {
  --hv-accordion-accent: color-mix(in oklab, var(--accent, #60a5fa) 55%, var(--bordeaux, #800020));
  border: none;
  border-radius: 0;
  background: transparent;
  container-type: inline-size;
  container-name: hg-player-season-match;
}

.hgPlayerSeasons__gameAccordion:not(.hvUiAccordion--static) .hvUiAccordion__head:hover {
  background: color-mix(in oklab, var(--hv-accordion-accent) 8%, transparent);
}

.hgPlayerSeasons__matchTeams {
  display: block;
  min-width: 0;
  max-width: 100%;
}

.hgPlayerSeasons__matchTeams .hgMatchRow__teams {
  font-size: 0.9rem;
}

@container hg-player-season-match (max-width: 420px) {
  .hgPlayerSeasons__matchTeams .hgMatchRow__teams {
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
    width: 100%;
  }

  .hgPlayerSeasons__matchTeams .hgMatchRow__vs {
    display: none;
  }

  .hgPlayerSeasons__matchTeams .hgMatchRow__team {
    width: 100%;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
  }
}

.hgPlayerSeasons__matchDate {
  display: block;
  min-width: 4.25rem;
  font-size: 0.82rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--accent, #60a5fa);
  text-align: left;
  white-space: nowrap;
}

.hgPlayerSeasons__matchScore.hgMatchRow__scoreChip .hvUiChip__caption {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.hgPlayerStat__statLine {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  width: 100%;
  min-width: 0;
}

.hgPlayerStat__label {
  color: var(--muted, #94a3b8);
}

.hgPlayerStat__value {
  color: var(--text, #e2e8f0);
  font-weight: 600;
}

.hgPlayerStat__pct {
  color: var(--muted, #94a3b8);
  font-weight: 400;
  font-size: 0.9em;
}

/* Вкладка «Статистика»: аккордеоны без карточной рамки и без зазоров между блоками */
.hgPlayerStat .hvUiAccordion {
  border: none;
  border-radius: 0;
  background: transparent;
}

.hgPlayerStat .hvUiAccordion:not(.hvUiAccordion--static) .hvUiAccordion__head:hover {
  background: color-mix(in oklab, var(--accent, #60a5fa) 8%, transparent);
}

.hgPlayerStat__tourAccordions {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.hgPlayerStat__tourAccordionWrap {
  min-width: 0;
}

.hgPlayerStat__tourAccordion.hvUiAccordion {
  --hv-accordion-accent: color-mix(in oklab, var(--accent, #60a5fa) 45%, var(--bordeaux, #800020));
  font-size: 0.92rem;
}

.hgPlayerStat__tourAccordion .hvUiAccordion__title {
  font-weight: 600;
}

/* Высота блока title + lead в шапке турнира (0.92rem) */
.hgPlayerStat__tourAccordion {
  --hg-player-stat-tour-logo-size: calc(0.92rem * 1.25 + 2px + 0.92rem * 1.3);
}

.hgPlayerStat__disciplineAccordion .hvUiAccordion__before {
  color: var(--accent, #60a5fa);
}

.hgPlayerStat__disciplineIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.hgPlayerStat__tourLogo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: var(--hg-player-stat-tour-logo-size);
  height: var(--hg-player-stat-tour-logo-size);
  line-height: 0;
  overflow: hidden;
  border-radius: 3px;
  background: color-mix(in oklab, #fff 88%, var(--panel2, #1e293b));
  box-sizing: border-box;
}

.hgPlayerStat__tourLogo__img,
.hgPlayerStat__tourLogo__img__img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  border-radius: 3px;
}

.hgPlayerStat__totalAccordion.hvUiAccordion {
  margin-top: 0;
  --hv-accordion-accent: var(--accent, #60a5fa);
}

.hgPlayerStat__totalAccordion .hvUiAccordion__title {
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 0.82rem;
}

.hgPlayerStat__statRows {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0.15rem 0 0.35rem;
}

.hgPlayerStat__totalAccordion .hvUiAccordion__body,
.hgPlayerStat__tourAccordion .hvUiAccordion__body {
  padding-top: 0.25rem;
}

.hgPlayerStat__totalRow {
  position: relative;
}

.hgPlayerStat__totalRow + .hgPlayerStat__totalRow {
  padding-top: 7px;
  margin-top: 5px;
}

.hgPlayerStat__totalRow + .hgPlayerStat__totalRow::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  border-radius: 3px;
  opacity: 0.86;
  background: linear-gradient(
    90deg,
    var(--bordeaux, #800020) 0%,
    color-mix(in oklab, var(--bordeaux, #800020) 55%, var(--accent, #60a5fa)) 50%,
    var(--accent, #60a5fa) 100%
  );
}

.hgPlayerStat__note {
  margin: 0.75rem 0 0;
  font-size: 0.88rem;
  color: var(--muted, #94a3b8);
}
