/* Combo de torneos más ancho */
#torneo-select {
    min-width: 220px;
    width: 260px;
    max-width: 100%;
}

/* Siempre reserva espacio para la barra de scroll vertical */
body {
    font-family: 'Inter', sans-serif;
    background-color: var(--body-bg, #1a202c);
    transition: background-color 0.5s ease-in-out;
    overflow-y: scroll; /* <-- Solución layout shift barra de scroll */
}

/* Mejorar el contenedor */
.container {
    max-width: 1024px;
    min-width: 0;
    box-sizing: border-box;
}

/* Select customizado */
.custom-select {
    appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23E5E7EB'%3e%3cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 1.5em 1.5em;
    padding-right: 2.5rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    min-height: 2.5rem;
}

/* Fondo animado del contenedor */
.bg-color-change {
    background-color: var(--container-bg);
    transition: background-color 0.5s ease-in-out;
}

/* Opcional: para evitar overflow horizontal inesperado en entrenamientos */
#entrenamientos-container {
    overflow-x: hidden;
}

/* ----- Botones menú ----- */
.botones-menu {
  display: flex;
  gap: 18px;
  justify-content: flex-start;
  align-items: center;
}

.btn-menu {
  min-width: 150px;
  height: 48px;
  padding: 0 32px;
  border-radius: 24px;
  font-family: 'Montserrat', 'Roboto', Arial, sans-serif;
  font-size: 1.12rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: box-shadow 0.2s, background 0.2s, color 0.2s, transform 0.12s;
  border: none;
  cursor: pointer;
  outline: none;
  box-shadow: 0 2px 14px 0 rgba(0,0,0,0.10);
  margin: 0;
  user-select: none;
}

.btn-menu:active {
  transform: scale(0.97);
  box-shadow: 0 2px 18px 0 rgba(0,0,0,0.15);
}

.btn-menu:focus {
  outline: 2px solid #ffd700;
  outline-offset: 2px;
}

.btn-partidos {
  background: linear-gradient(90deg, #ffe066 0%, #ffd700 100%);
  color: #222;
}
.btn-partidos:hover, .btn-partidos:focus {
  background: linear-gradient(90deg, #ffd700 0%, #ffe066 100%);
  color: #111;
}

.btn-entrenamientos {
  background: linear-gradient(90deg, #ff6060 0%, #ee2c2c 100%);
  color: #fff;
}
.btn-entrenamientos:hover, .btn-entrenamientos:focus {
  background: linear-gradient(90deg, #ee2c2c 0%, #ff6060 100%);
  color: #fff;
}

.btn-inicio {
  background: linear-gradient(90deg, blue 0%, #089ee4 100%);
  color: #353131;
}
.btn-inicio:hover, .btn-entrenamientos:focus {
  background: linear-gradient(90deg, #072486 0%, #3278d4 100%);
  color: #0eaa54;
}

.btn-cerrar {
  background: linear-gradient(90deg, #20ec05 0%, #117922 100%);
  color: #d2e908;
}
.btn-cerrar:hover, .btn-cerrar:focus {
  background: linear-gradient(90deg, #636b76 0%, #444c58 100%);
  color: #fff;
}