/* ===== Lien au-dessus du tableau ===== */
a.lien_telechargement {
  font-size: 13pt;
  padding: 9px 0;
  display: block;
}

/* ===== Wrapper tableau ===== */
.cr-schedule.wrapper,
.cr-schedule {
  display: flex;
  justify-content: center;
  padding-bottom: 30px;
}

.cr-schedule .table-responsive {
  width: 100%;
  box-shadow: 0 5px 11px rgba(0,0,0,.1), 0 4px 11px rgba(0,0,0,.08);
  border-radius: 4px;

  /* === scroll horizontal mobile === */
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

/* ===== Tableau horaires ===== */
.cr-table {
  margin-bottom: 0 !important;
  border-collapse: separate;
  border-spacing: 0;
  background: #B9034F;
  color: #fff !important;
  font-size: 13pt;
  min-width: 400px;
}

/* Header bordeaux foncé */
.cr-table thead th {
  background-color: #9f0646;
  color: #fff;
  font-weight: 700;
  text-align: center;
  padding: 15px;
  border: 0;
  font-size: 15pt;
}

/* Zebra + hover */
.cr-table tbody tr:nth-child(even) { background-color: #b9044f; }
.cr-table tbody tr:nth-child(odd)  { background-color: #B9034F; }
.cr-table tbody tr:hover { background-color: #e73062; }

/* Cellules */
.cr-table td {
  padding: 14px 12px;
  border-top: 1px solid rgba(255,255,255, .12);
  vertical-align: middle;
  text-align: center;
  color: #fff !important;
}

/* Colonnes spécifiques */
.cr-time,
.cr-distance,
.cr-price,
.cr-podium { white-space: nowrap; }

.cr-title { text-align: left; }
.cr-title a {
  color: #fff;
  font-weight: 600;
  text-decoration: none;
}
.cr-title a:hover,
.cr-title a:focus { color: #ffff00; text-decoration: underline; }

/* Texte secondaire sous le titre */
.cr-title .small {
  color: rgba(255,255,255,.85);
  margin-top: .2rem;
  font-size: 12pt;
}

/* Liens “horaires” */
.horairesLiens { color: #fff !important; font-size: 13pt; }
.horairesLiens:hover,
.horairesLiens:focus { color: #ffff00 !important; }

/* En-tête style texte au-dessus */
.headerHoraireTable {
  font-weight: bold;
  text-align: center;
  color: #fff;
  margin: 10px auto;
  font-size: 13pt;
}

/* Icônes */
#iconChevron { float: right; margin-right: 1%; font-size: 150%; transition: transform .3s ease; }
#iconHoraire, #iconCalendrier { margin-right: 10px; font-size: 120%; }

/* Ligne cliquable */
tr.cr-row { cursor: pointer; }
tr.cr-row a,
tr.cr-row .btn { cursor: pointer; }

/* Responsive : masque certaines colonnes sur mobile */
@media (max-width: 768px) {
  .cr-table thead th:nth-child(5),
  .cr-table tbody td:nth-child(5),
  .cr-table thead th:nth-child(6),
  .cr-table tbody td:nth-child(6) { }
}

/* Cache une éventuelle image de course sur mobile */
@media (max-width: 550px) {
  .imgCourse,
  .horaireImgCourse { display: none; }
}
