.keen-slider:not([data-keen-slider-disabled]) {
  align-content: flex-start;
  display: flex;
  /* visible: conteúdo do slide (ex.: mesas abertas) não pode ser recortado horizontalmente. */
  overflow-x: visible;
  overflow-y: visible;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
  width: 100%;
}
/* Não aplicar a carrosséis com largura própria (ex.: Partida rápida — Keen define tamanho via perView). */
.keen-slider:not([data-keen-slider-disabled]):not(.quick-match__slider)
  .keen-slider__slide {
  position: relative;
  width: 100%;
  min-height: 100%;
}

/*
 * Dock tab slider: Support + Settings need content-height scroll, not a slide stretched to
 * min-height:100% (empty green band above the dock). Zoom-out slides carry data-slider-tab.
 */
.keen-slider.zoom-out:not([data-keen-slider-disabled]):not(.quick-match__slider)
  .keen-slider__slide[data-slider-tab="support"],
.keen-slider.zoom-out:not([data-keen-slider-disabled]):not(.quick-match__slider)
  .keen-slider__slide[data-slider-tab="settings"] {
  min-height: 0;
}

/*
 * Dock tab slider (.zoom-out): Keen places every slide side-by-side in a flex row, so intrinsic
 * width is ~n × viewport. Keeping overflow-x: visible on `.keen-slider` lets that row widen
 * scrollWidth on html/body — horizontal scroll especially on Conversas / Clubes slides.
 * Hide horizontal overflow only here; `.quick-match__slider` stays on the nested carousel with visible X.
 */
.keen-slider.zoom-out:not(.quick-match__slider):not([data-keen-slider-disabled]) {
  overflow-x: hidden;
}
.keen-slider:not([data-keen-slider-disabled])[data-keen-slider-reverse] {
  flex-direction: row-reverse;
}
.keen-slider:not([data-keen-slider-disabled])[data-keen-slider-v] {
  flex-wrap: wrap;
}
