.sporto-tournament-slider {
  --sporto-slider-ink: var(--secondary, #202a25);
  --sporto-slider-paper: var(--white, #fff);
  --sporto-slider-line: var(--secondary-light, #d3ded9);
  --sporto-slider-accent: var(--primary, #9cae62);
  color: var(--sporto-slider-ink);
  container-type: inline-size;
  inline-size: 100%;
  margin: 0;
  padding: 0;
  position: relative;
}

/*
 * Bricks keeps the former slider block spacing, while ACSS treats every
 * top-level <section> as a full page section. The shortcode is a compact
 * component, so keep both adjacent gaps on the site's regular spacing token.
 */
body.single-game .brxe-block:has(> .brxe-shortcode > .sporto-tournament-slider) {
  margin-block-start: var(--space-m, 2.4rem) !important;
}

body.single-game .brxe-block:has(> .brxe-shortcode > .sporto-tournament-slider) + .brxe-block {
  margin-block-start: var(--space-m, 2.4rem) !important;
}

.sporto-tournament-slider *,
.sporto-tournament-slider *::before,
.sporto-tournament-slider *::after { box-sizing: border-box; }

.sporto-tournament-slider__track {
  display: flex;
  gap: 12px;
  inline-size: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  padding: 4px max(54px, calc(50cqi - 146px)) 16px;
  scroll-padding-inline: max(54px, calc(50cqi - 146px));
  scroll-snap-type: none;
  scrollbar-width: none;
}

.sporto-tournament-slider__track::-webkit-scrollbar { display: none; }
.sporto-tournament-slider[aria-busy="true"] .sporto-tournament-slider__track { cursor: progress; }

.sporto-tournament-slider.is-initial-boundary .sporto-tournament-slider__track {
  scroll-padding-inline-start: 4px;
  scroll-snap-type: none;
}

.sporto-tournament-slider .sporto-team-calendar__card {
  background: var(--sporto-slider-paper);
  border: 1px solid color-mix(in srgb, var(--sporto-slider-line) 58%, transparent);
  border-block-end: 1.5px solid var(--sporto-slider-line);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(18, 28, 23, .055);
  color: inherit;
  display: block;
  flex: 0 0 280px;
  min-block-size: 210px;
  min-inline-size: 0;
  padding: 20px;
  scroll-snap-align: center;
  text-decoration: none;
}

.sporto-tournament-slider .sporto-team-calendar__card:focus-visible {
  outline: 2px solid var(--sporto-slider-accent);
  outline-offset: 3px;
}

.sporto-tournament-slider .sporto-team-calendar__card.is-live {
  border-color: color-mix(in srgb, var(--sporto-slider-accent) 60%, var(--sporto-slider-line));
  border-block-end-color: var(--sporto-slider-line);
}

.sporto-tournament-slider .sporto-team-calendar__card-head,
.sporto-tournament-slider .sporto-team-calendar__card-meta {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.sporto-tournament-slider .sporto-team-calendar__card-head {
  font-family: "Roboto Condensed", sans-serif;
  font-size: .94rem;
  font-weight: 500;
}

.sporto-tournament-slider .sporto-team-calendar__card-head-end {
  align-items: center;
  display: inline-flex;
  gap: 8px;
  margin-inline-start: auto;
}

.sporto-tournament-slider .sporto-team-calendar__card-time { text-align: end; }
.sporto-tournament-slider .sporto-team-calendar__live[hidden] { display: none; }

.sporto-tournament-slider .sporto-team-calendar__card-matchup {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  margin-block: 26px;
}

.sporto-tournament-slider .sporto-team-calendar__card-team {
  align-items: center;
  display: flex;
  justify-content: center;
  min-inline-size: 0;
}

.sporto-tournament-slider .sporto-team-calendar__logo--large {
  block-size: 62px;
  inline-size: 62px;
}

.sporto-tournament-slider .sporto-team-calendar__card-score .sporto-team-calendar__score,
.sporto-tournament-slider .sporto-team-calendar__card-score .sporto-team-calendar__status {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1.55rem;
  font-weight: 600;
  white-space: nowrap;
}

.sporto-tournament-slider .sporto-team-calendar__card-meta {
  border-block-start: 1px solid color-mix(in srgb, var(--sporto-slider-line) 45%, transparent);
  color: color-mix(in srgb, var(--sporto-slider-ink) 68%, transparent);
  font-size: .7rem;
  gap: 10px;
  padding-block-start: 12px;
  text-transform: uppercase;
}

.sporto-tournament-slider__nav {
  align-items: center;
  background: var(--sporto-slider-paper);
  border: 1px solid var(--sporto-slider-line);
  border-radius: 50%;
  color: var(--sporto-slider-ink);
  display: flex;
  font-size: 25px;
  block-size: 44px;
  inline-size: 44px;
  justify-content: center;
  padding: 0 0 3px;
  position: absolute;
  inset-block-start: 50%;
  transform: translateY(-50%);
  z-index: 3;
}

.sporto-tournament-slider__nav--prev { inset-inline-start: 2px; }
.sporto-tournament-slider__nav--next { inset-inline-end: 2px; }
.sporto-tournament-slider__nav:disabled { opacity: .32; pointer-events: none; }
.sporto-tournament-slider__notice { padding: 20px; text-align: center; }

@container (max-width: 479px) {
  .sporto-tournament-slider__track {
    gap: 14px;
    padding-inline: max(8cqi, 18px);
    scroll-padding-inline: max(8cqi, 18px);
    scroll-snap-type: x mandatory;
  }
  .sporto-tournament-slider .sporto-team-calendar__card {
    flex-basis: min(84cqi, 420px);
    min-block-size: 0;
    padding: clamp(16px, 4cqi, 24px);
  }
  .sporto-tournament-slider .sporto-team-calendar__logo--large {
    block-size: clamp(46px, 13cqi, 66px);
    inline-size: clamp(46px, 13cqi, 66px);
  }
  .sporto-tournament-slider .sporto-team-calendar__card-score .sporto-team-calendar__score,
  .sporto-tournament-slider .sporto-team-calendar__card-score .sporto-team-calendar__status {
    font-size: clamp(1.35rem, 5cqi, 1.8rem);
  }
  .sporto-tournament-slider.is-terminal-boundary .sporto-tournament-slider__track {
    scroll-snap-type: none;
  }
  .sporto-tournament-slider.is-initial-boundary .sporto-tournament-slider__track {
    scroll-snap-type: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sporto-tournament-slider__track { scroll-behavior: auto !important; }
  .sporto-tournament-slider .sporto-team-calendar__live-dot { animation: none; }
}
