:root {
  color-scheme: dark;
  --fond: #07100f;
  --surface: #0d1917;
  --surface-2: #12211e;
  --ligne: rgba(191, 225, 213, 0.15);
  --texte: #f2f7f5;
  --secondaire: #9aada7;
  --accent: #e5ff3d;
  --accent-sombre: #a8bb31;
  --danger: #ff6b66;
  --alerte: #f3bb49;
  --ok: #63dda5;
  --rayon: 18px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }

html, body { width: 100%; min-height: 100%; margin: 0; background: var(--fond); color: var(--texte); }
body { overflow-x: hidden; }
button, select { font: inherit; }
button { color: inherit; }
[hidden] { display: none !important; }

.application { min-height: 100dvh; background: radial-gradient(circle at 10% 0%, rgba(91, 170, 135, .12), transparent 36%), var(--fond); }

.barre-mobile {
  min-height: 66px;
  padding: calc(10px + env(safe-area-inset-top)) 14px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid var(--ligne);
  background: rgba(7, 16, 15, .94);
  backdrop-filter: blur(14px);
  position: relative;
  z-index: 20;
}

.sur-titre { margin: 0 0 3px; color: var(--accent); font-size: 10px; font-weight: 800; letter-spacing: .18em; }
h1, h2, h3, p { margin-top: 0; }
.barre-mobile h1 { margin: 0; max-width: 58vw; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: clamp(16px, 4.4vw, 21px); letter-spacing: -.02em; }
.etat-actions { display: flex; align-items: center; gap: 8px; }

.pastille {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  padding: 7px 9px;
  border: 1px solid var(--ligne);
  border-radius: 999px;
  background: rgba(255,255,255,.035);
  color: var(--secondaire);
  font-size: 11px;
  font-weight: 750;
  white-space: nowrap;
}
.pastille i { width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 10px currentColor; }
.pastille.connecte { color: var(--ok); }
.pastille.deconnecte { color: var(--danger); }
.pastille.attente { color: var(--alerte); }

.bouton-icone, .bouton-retour, .bouton-texte, .bouton-principal {
  border: 1px solid var(--ligne);
  background: var(--surface);
  cursor: pointer;
}
.bouton-icone { width: 36px; height: 36px; border-radius: 11px; font-size: 20px; line-height: 1; }
.bouton-texte { min-height: 36px; padding: 0 10px; border-radius: 11px; color: #dce6e2; font-size: 11px; font-weight: 750; }
.bouton-principal { padding: 11px 14px; border-color: rgba(229,255,61,.45); border-radius: 12px; color: var(--accent); font-weight: 800; }
.bouton-icone:hover, .bouton-retour:hover, .bouton-texte:hover, .bouton-principal:hover { border-color: rgba(229,255,61,.55); }

.vue-attente {
  min-height: calc(100dvh - 66px);
  padding: 28px 18px calc(28px + env(safe-area-inset-bottom));
  display: grid;
  place-items: center;
}
.carte-attente { width: min(100%, 520px); padding: 28px 22px; border: 1px solid var(--ligne); border-radius: 22px; background: var(--surface); text-align: center; box-shadow: 0 22px 60px rgba(0,0,0,.24); }
.carte-attente > span, .entete-historique > div > span { color: var(--accent); font-size: 10px; font-weight: 900; letter-spacing: .15em; }
.carte-attente h2 { margin: 8px 0 10px; font-size: 24px; }
.carte-attente p { margin: 0 auto 20px; max-width: 390px; color: var(--secondaire); font-size: 13px; line-height: 1.55; }

.vue-historique { max-width: 980px; min-height: calc(100dvh - 66px); margin: 0 auto; padding: 16px 12px 36px; }
.entete-historique { display: flex; flex-direction: column; gap: 18px; margin-bottom: 16px; }
.entete-historique h2 { margin: 4px 0 3px; font-size: 25px; }
.entete-historique p { margin: 0; color: var(--secondaire); font-size: 12px; }
.liste-journees { display: grid; gap: 9px; }
.journee-historique { width: 100%; padding: 14px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 8px 14px; border: 1px solid var(--ligne); border-radius: 14px; background: var(--surface); text-align: left; cursor: pointer; }
.journee-historique:hover { border-color: rgba(229,255,61,.45); background: var(--surface-2); }
.journee-historique strong { font-size: 16px; }
.journee-historique span { color: var(--secondaire); font-size: 11px; }
.journee-historique b { grid-row: 1 / 3; grid-column: 2; color: var(--accent); font-size: 19px; }
.classement-historique { overflow: hidden; border: 1px solid var(--ligne); border-radius: 16px; background: var(--surface); }

.alerte-reseau {
  position: fixed;
  inset: calc(72px + env(safe-area-inset-top)) 10px auto;
  z-index: 50;
  padding: 10px 12px;
  border: 1px solid rgba(255,107,102,.55);
  border-radius: 12px;
  background: rgba(88, 26, 24, .96);
  box-shadow: 0 14px 36px rgba(0,0,0,.3);
  display: flex;
  gap: 8px;
  align-items: baseline;
  font-size: 12px;
}
.alerte-reseau span { color: #f2c2c0; }

.vue-direct { min-height: calc(100dvh - 66px); position: relative; }
.quitter-plein-ecran { display: none; position: absolute; top: 10px; right: 10px; z-index: 45; width: 38px; height: 38px; border: 1px solid var(--ligne); border-radius: 11px; background: rgba(7,16,15,.9); color: var(--texte); font-size: 25px; line-height: 1; cursor: pointer; }
.zone-carte { height: calc(100dvh - 66px); min-height: 520px; position: relative; overflow: hidden; background: #0b1513; }
.carte-live { position: absolute; inset: 0; overflow: hidden; background: #0d1c18; }
.fond-circuit, .fond-circuit-secours { position: absolute; top: 0; left: 0; display: block; object-fit: contain; object-position: center; pointer-events: none; }
.fond-circuit-secours { width: 100%; }
.marqueurs-pilotes { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.marqueur-pilote { position: absolute; top: 0; left: 0; width: 0; height: 0; opacity: 1; transform: translate3d(-100px,-100px,0); transition: opacity .2s ease; will-change: transform; }
.marqueur-pilote.inactif { opacity: .5; }
.fleche-pilote { position: absolute; top: -12px; left: -8px; width: 16px; height: 22px; background: var(--pilote); clip-path: polygon(50% 0,100% 78%,50% 62%,0 78%); filter: drop-shadow(0 3px 4px rgba(0,0,0,.75)); transform-origin: 50% 50%; will-change: transform; }
.marqueur-pilote.pit .fleche-pilote { background: #7f8b87; }
.etiquette-pilote { position: absolute; min-width: 76px; max-width: 120px; height: 28px; padding: 0 8px; display: flex; align-items: center; overflow: hidden; border: 1px solid var(--pilote); border-radius: 7px; background: rgba(6,14,12,.92); color: #f4f8f6; font: 700 11px/1 "Segoe UI",sans-serif; text-overflow: ellipsis; white-space: nowrap; box-shadow: 0 3px 9px rgba(0,0,0,.35); }
.marqueur-pilote.pit .etiquette-pilote { border-color: #7f8b87; }
#carte-tour { display: block; width: 100%; height: 100%; }

.cartouche-carte {
  position: absolute;
  top: 12px;
  left: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 9px;
  border: 1px solid var(--ligne);
  border-radius: 10px;
  background: rgba(7,16,15,.78);
  backdrop-filter: blur(8px);
  font-size: 10px;
}
.cartouche-carte span { color: var(--accent); font-weight: 900; letter-spacing: .12em; }
.cartouche-carte strong { color: #d6e1dd; font-weight: 650; }

.legende-pilotes {
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 312px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  pointer-events: none;
  transition: bottom .25s ease;
}
.legende-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 8px;
  border: 1px solid var(--ligne);
  border-radius: 999px;
  background: rgba(7,16,15,.82);
  backdrop-filter: blur(8px);
  color: #dce6e2;
  font-size: 10px;
  font-weight: 700;
}
.legende-item i, .pastille-couleur { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--pilote, var(--accent)); }
.attribution-carte { position: absolute; right: 8px; bottom: 304px; margin: 0; color: rgba(255,255,255,.45); font-size: 8px; }

.panneau-classement {
  position: absolute;
  z-index: 10;
  left: 0;
  right: 0;
  bottom: 0;
  height: 294px;
  border-top: 1px solid var(--ligne);
  border-radius: 22px 22px 0 0;
  background: rgba(8, 18, 16, .96);
  box-shadow: 0 -18px 40px rgba(0,0,0,.36);
  backdrop-filter: blur(18px);
  transition: height .25s ease;
  overflow: hidden;
}
.panneau-classement.ouvert { height: min(70dvh, 620px); }
.panneau-classement.ouvert ~ * { pointer-events: none; }

.poignee-classement {
  width: 100%;
  height: 54px;
  padding: 5px 14px 9px;
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  grid-template-rows: 9px 1fr;
  align-items: center;
  gap: 0 9px;
  border: 0;
  background: transparent;
  cursor: pointer;
  text-align: left;
}
.poignee { grid-column: 1 / -1; justify-self: center; width: 42px; height: 4px; border-radius: 4px; background: #56635f; }
.poignee-classement strong { font-size: 15px; }
.poignee-classement small { color: var(--secondaire); font-size: 10px; }
.chevron { color: var(--accent); font-size: 18px; transition: transform .25s; }
.panneau-classement.ouvert .chevron { transform: rotate(180deg); }

.contenu-classement { height: calc(100% - 54px); overflow: auto; padding-bottom: env(safe-area-inset-bottom); }
.table-scroll { width: 100%; min-width: 0; overflow-x: hidden; }
.classement { width: 100%; table-layout: fixed; border-collapse: collapse; font-size: clamp(7px, 2.15vw, 10px); font-variant-numeric: tabular-nums; }
.classement thead { display: table-header-group; }
.classement tbody { display: table-row-group; }
.classement th { position: sticky; top: 0; z-index: 2; height: 27px; padding: 6px 2px; overflow: hidden; background: #0c1816; color: var(--secondaire); font-size: clamp(5.5px, 1.55vw, 8px); line-height: 1; text-align: left; text-overflow: ellipsis; text-transform: uppercase; letter-spacing: 0; white-space: nowrap; }
.classement th:nth-child(1) { width: 11%; text-align: center; }
.classement th:nth-child(2) { width: 18%; }
.classement th:nth-child(3), .classement th:nth-child(4) { width: 17%; }
.classement th:nth-child(5) { width: 13%; }
.classement th:nth-child(6) { width: 13%; }
.classement th:nth-child(7) { width: 11%; text-align: right; }
.classement td { height: 43px; padding: 8px 2px; border-top: 1px solid rgba(191,225,213,.09); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.classement tr[data-pilote] { display: table-row; cursor: pointer; }
.classement tr[data-pilote] td:nth-child(1) { text-align: center; }
.classement tr[data-pilote] td:nth-child(7) { text-align: right; }
.classement tr[data-pilote]:hover { background: rgba(229,255,61,.045); }
.classement td:first-child { font-size: 12px; font-weight: 850; }
.nom-classement { font-weight: 800; }
.nom-classement i { display: inline-block; width: 3px; height: 16px; margin-right: 3px; border-radius: 3px; background: var(--pilote); vertical-align: middle; }
.nom-classement span { vertical-align: middle; }
.etat-course { display: inline-flex; max-width: 100%; padding: 3px 4px; overflow: hidden; border-radius: 999px; background: rgba(99,221,165,.1); color: var(--ok); font-size: .82em; font-weight: 750; text-overflow: ellipsis; }
.etat-course.pit { color: #aeb8b5; background: rgba(174,184,181,.1); }
.etat-course.alerte { color: var(--alerte); background: rgba(243,187,73,.1); }
.etat-course.perdu { color: var(--danger); background: rgba(255,107,102,.1); }
.etat-vide { margin: 20px; color: var(--secondaire); text-align: center; font-size: 12px; }

.vue-pilote { max-width: 1060px; margin: 0 auto; padding: 14px 12px 36px; }
.entete-pilote { display: flex; flex-direction: column; gap: 18px; margin-bottom: 16px; }
.bouton-retour { align-self: flex-start; padding: 9px 12px; border-radius: 11px; color: #dce6e2; }
.entete-pilote > div { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 5px 9px; }
.entete-pilote .pastille-couleur { width: 12px; height: 32px; border-radius: 6px; grid-row: 1 / 3; }
.entete-pilote h2 { margin: 0; font-size: 27px; }
.entete-pilote p { margin: 0; color: var(--secondaire); font-size: 12px; }

.statistiques-pilote { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-bottom: 12px; }
.statistiques-pilote article, .detail-tour, .historique-tours, .graphique-chronos { border: 1px solid var(--ligne); background: var(--surface); }
.statistiques-pilote article { min-height: 74px; padding: 12px; border-radius: 14px; }
.statistiques-pilote span, .stats-tour span, .titre-tour span, .titre-section span { display: block; color: var(--secondaire); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.statistiques-pilote strong { display: block; margin-top: 7px; font-size: 18px; }

.detail-tour, .historique-tours, .graphique-chronos { border-radius: var(--rayon); overflow: hidden; margin-top: 12px; }
.detail-tour { display: none; }
.titre-tour, .titre-section { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; padding: 14px; }
.titre-tour h3, .titre-section h3 { margin: 3px 0 0; font-size: 17px; }
.titre-tour > strong { color: var(--accent); font-size: 24px; }
.zone-graphique { position: relative; min-height: 190px; padding: 6px 8px 10px; }
#graphique-chronos { display: block; width: 100%; min-height: 190px; overflow: visible; }
.graphique-grille { stroke: rgba(191,225,213,.11); stroke-width: 1; }
.graphique-ligne { fill: none; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.graphique-point { cursor: pointer; stroke: #07100f; stroke-width: 3; transition: r .15s ease; }
.graphique-point:hover, .graphique-point:focus { r: 8; outline: none; }
.graphique-point.selectionne { stroke: #fff; stroke-width: 4; }
.graphique-texte { fill: #869a93; font: 700 11px Inter, sans-serif; }
.graphique-valeur { fill: #dce6e2; font: 800 11px Inter, sans-serif; }
.carte-tour-wrapper { position: relative; height: 46dvh; min-height: 330px; border-block: 1px solid var(--ligne); background: #0b1513; }
#carte-tour { touch-action: none; cursor: grab; }
#carte-tour.navigation { cursor: grabbing; }
.commandes-carte { position: absolute; top: 10px; right: 10px; z-index: 4; display: grid; gap: 6px; }
.commandes-carte button { width: 36px; height: 36px; border: 1px solid var(--ligne); border-radius: 10px; background: rgba(7,16,15,.9); color: var(--texte); font-size: 20px; font-weight: 800; cursor: pointer; backdrop-filter: blur(8px); }
.commandes-carte button:hover { border-color: var(--accent); color: var(--accent); }
.aide-carte { position: absolute; left: 10px; bottom: 9px; z-index: 3; margin: 0; padding: 5px 7px; border-radius: 7px; background: rgba(7,16,15,.8); color: var(--secondaire); font-size: 9px; pointer-events: none; }
.trace-indisponible { position: absolute; inset: 50% auto auto 50%; transform: translate(-50%,-50%); width: 80%; padding: 12px; border-radius: 10px; background: rgba(7,16,15,.88); color: var(--secondaire); text-align: center; }
.stats-tour { display: grid; grid-template-columns: repeat(2,1fr); }
.stats-tour p { margin: 0; padding: 12px 14px; border-right: 1px solid var(--ligne); border-top: 1px solid var(--ligne); }
.stats-tour p:nth-child(2n) { border-right: 0; }
.stats-tour strong { display: block; margin-top: 4px; }

.titre-section { border-bottom: 1px solid var(--ligne); }
.titre-section small { color: var(--secondaire); font-size: 10px; }
.liste-tours-pilote { display: grid; }
.groupe-session { border-bottom: 1px solid var(--ligne); background: rgba(7,16,15,.2); }
.groupe-session:last-child { border-bottom: 0; }
.entete-session { position: relative; display: grid; grid-template-columns: minmax(88px,auto) 1fr auto; align-items: center; gap: 4px 10px; min-height: 66px; padding: 10px 42px 10px 14px; cursor: pointer; list-style: none; }
.entete-session::-webkit-details-marker { display: none; }
.entete-session::after { content: "⌄"; position: absolute; right: 15px; top: 50%; color: var(--accent); font-size: 20px; transform: translateY(-50%); transition: transform .2s ease; }
.groupe-session[open] > .entete-session::after { transform: translateY(-50%) rotate(180deg); }
.nom-session { font-size: 13px; letter-spacing: .06em; }
.plage-session, .nombre-tours-session { color: var(--secondaire); font-size: 10px; }
.nombre-tours-session { grid-column: 1 / 2; }
.meilleur-session { grid-column: 3; grid-row: 1 / 3; text-align: right; }
.meilleur-session small { display: block; color: var(--secondaire); font-size: 8px; letter-spacing: .08em; }
.meilleur-session strong { display: block; margin-top: 3px; color: var(--accent); font-size: 14px; }
.tours-session { border-top: 1px solid rgba(191,225,213,.09); }
.graphique-separateur-session { stroke: rgba(229,255,61,.45); stroke-width: 1.5; stroke-dasharray: 5 5; }
.graphique-libelle-session { fill: #c8d8d2; font: 800 9px Inter, sans-serif; letter-spacing: .05em; }
.ligne-tour { width: 100%; padding: 12px 14px; display: grid; grid-template-columns: 52px 1fr auto; align-items: center; gap: 10px; border: 0; border-bottom: 1px solid rgba(191,225,213,.09); background: transparent; text-align: left; cursor: pointer; }
.ligne-tour:hover, .ligne-tour.selectionne { background: rgba(229,255,61,.055); }
.ligne-tour.meilleur { box-shadow: inset 3px 0 var(--accent); }
.ligne-tour .numero { color: var(--secondaire); font-size: 11px; font-weight: 750; }
.ligne-tour .chrono { font-size: 17px; font-weight: 850; }
.ligne-tour .meta { color: var(--secondaire); font-size: 10px; text-align: right; }
.ligne-tour .record { display: block; margin-top: 3px; color: var(--accent); font-size: 9px; font-weight: 850; }

.compatibilite { display: none !important; }

@media (min-width: 760px) {
  .barre-mobile { min-height: 74px; padding-inline: 24px; }
  .barre-mobile h1 { max-width: none; }
  .vue-direct { height: calc(100dvh - 74px); min-height: 620px; display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,430px); }
  .zone-carte { height: 100%; min-height: 0; }
  .panneau-classement, .panneau-classement.ouvert { position: relative; height: 100%; border-radius: 0; border-top: 0; border-left: 1px solid var(--ligne); box-shadow: none; }
  .poignee-classement { pointer-events: none; }
  .poignee, .chevron { display: none; }
  .contenu-classement { height: calc(100% - 54px); }
  .table-scroll { min-width: 0; }
  .classement { table-layout: fixed; font-size: 9px; }
  .classement th:nth-child(1) { width: 9%; }
  .classement th:nth-child(2) { width: 19%; }
  .classement th:nth-child(3), .classement th:nth-child(4) { width: 17%; }
  .classement th:nth-child(5) { width: 13%; }
  .classement th:nth-child(6) { width: 14%; }
  .classement th:nth-child(7) { width: 11%; }
  .classement thead { display: table-header-group; }
  .classement tbody { display: table-row-group; }
  .classement tr[data-pilote] { min-height: 0; padding: 0; display: table-row; border: 0; }
  .classement tr[data-pilote] td { display: table-cell; padding: 10px 5px; border-top: 1px solid rgba(191,225,213,.09); overflow: hidden; text-overflow: ellipsis; }
  .classement tr[data-pilote] td::before { display: none !important; }
  .legende-pilotes { bottom: 16px; }
  .attribution-carte { bottom: 8px; }
  .statistiques-pilote { grid-template-columns: repeat(4,1fr); }
  .entete-pilote { flex-direction: row; align-items: center; }
  .entete-pilote > div { margin-left: auto; }
  .stats-tour { grid-template-columns: repeat(4,1fr); }
  .stats-tour p:nth-child(2n) { border-right: 1px solid var(--ligne); }
  .stats-tour p:last-child { border-right: 0; }
}

@media (max-width: 520px) {
  .pastille span { max-width: 66px; overflow: hidden; text-overflow: ellipsis; }
  .bouton-texte { width: 36px; padding: 0; overflow: hidden; color: transparent; font-size: 0; }
  .bouton-texte::before { content: "↶"; color: var(--texte); font-size: 19px; }
}

:fullscreen .application, .application.plein-ecran { min-height: 100dvh; }
:fullscreen .barre-mobile, .application.plein-ecran .barre-mobile { display: none; }
:fullscreen .quitter-plein-ecran, .application.plein-ecran .quitter-plein-ecran { display: block; }
:fullscreen .vue-direct, .application.plein-ecran .vue-direct {
  height: 100dvh;
  min-height: 0;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: minmax(0, 62fr) minmax(230px, 38fr);
}
:fullscreen .zone-carte, .application.plein-ecran .zone-carte { height: 100%; min-height: 0; }
:fullscreen .panneau-classement, .application.plein-ecran .panneau-classement {
  position: relative;
  height: 100%;
  min-height: 0;
  border-radius: 0;
  border-top: 1px solid var(--ligne);
  border-left: 0;
  box-shadow: none;
}
:fullscreen .poignee-classement, .application.plein-ecran .poignee-classement { pointer-events: none; }
:fullscreen .poignee, :fullscreen .chevron, .application.plein-ecran .poignee, .application.plein-ecran .chevron { display: none; }
:fullscreen .table-scroll, .application.plein-ecran .table-scroll { min-width: 0; }
:fullscreen .legende-pilotes, .application.plein-ecran .legende-pilotes { bottom: 12px; }
:fullscreen .attribution-carte, .application.plein-ecran .attribution-carte { bottom: 7px; }
:fullscreen .contenu-classement, .application.plein-ecran .contenu-classement { height: calc(100% - 54px); }
:fullscreen .classement, .application.plein-ecran .classement { table-layout: fixed; }
:fullscreen .classement thead, .application.plein-ecran .classement thead { display: table-header-group; }
:fullscreen .classement tbody, .application.plein-ecran .classement tbody { display: table-row-group; }
:fullscreen .classement tr[data-pilote], .application.plein-ecran .classement tr[data-pilote] { min-height: 0; padding: 0; display: table-row; border: 0; }
:fullscreen .classement tr[data-pilote] td, .application.plein-ecran .classement tr[data-pilote] td { display: table-cell; padding: 9px 7px; border-top: 1px solid rgba(191,225,213,.09); }
:fullscreen .classement tr[data-pilote] td::before, .application.plein-ecran .classement tr[data-pilote] td::before { display: none !important; }

@media (max-height: 620px) and (orientation: landscape) {
  :fullscreen .vue-direct, .application.plein-ecran .vue-direct { grid-template-rows: minmax(0, 54fr) minmax(190px, 46fr); }
  :fullscreen .poignee-classement, .application.plein-ecran .poignee-classement { height: 42px; padding-block: 4px; }
  :fullscreen .contenu-classement, .application.plein-ecran .contenu-classement { height: calc(100% - 42px); }
  :fullscreen .classement th, .application.plein-ecran .classement th { padding-block: 5px; }
  :fullscreen .classement tr[data-pilote] td, .application.plein-ecran .classement tr[data-pilote] td { padding-block: 7px; }
}


/* Signalétique propre à la page de démonstration autonome. */
.sur-titre::after {
  content: "SIMULATION";
  display: inline-block;
  margin-left: .55rem;
  padding: .15rem .45rem;
  border: 1px solid #e5ff3d;
  border-radius: 999px;
  color: #07100f;
  background: #e5ff3d;
  font-size: .62rem;
  letter-spacing: .08em;
  vertical-align: middle;
}
