/* SD ONE · lot 117 (25/10/2026, Hassan) : alerte « Vérifier s'il y a eu un rajout » (dépassement de l'heure de fin, MAD plus longue,
   bouton « en retard » de SD Driver). Orange ou rouge discrets, bleu nuit et argent autour ; jamais de doré.
   Étiquette de la case État non cliquable (pointer-events: none) : le clic sur la case État reste celui d'avant. */
:root {
  --sd117-nuit: #0B1B3A; --sd117-bleu: #123A6B; --sd117-argent: #EEF2F7; --sd117-bord: #C6D0DD;
  --sd117-orange: #A8461C; --sd117-orange-f: #FFF3EA; --sd117-orange-b: #EBB894;
  --sd117-rouge: #A61B1B; --sd117-rouge-f: #FDEEEE; --sd117-rouge-b: #EDB1AC;
}
/* --- étiquette dans la case État, sous celles du lot 105 --- */
#v2-contenu tr.lg > td.c-st > .sd117 {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 3px; margin: 4px 0 0; padding: 0;
  pointer-events: none; max-width: 100%; box-sizing: border-box; line-height: 1;
}
.sd117-p {
  display: inline-flex; align-items: center; gap: 4px; box-sizing: border-box; max-width: 100%;
  padding: 2px 7px 2px 6px; border-radius: 10px; border: 1px solid var(--sd117-orange-b); background: var(--sd117-orange-f);
  color: var(--sd117-orange); font: 700 10.5px/1.3 Manrope, system-ui, sans-serif; letter-spacing: 0; white-space: nowrap;
  overflow: hidden; text-overflow: ellipsis; animation: none !important; transition: none !important;
}
.sd117-p::before { content: "!"; flex: 0 0 12px; width: 12px; height: 12px; border-radius: 50%; background: var(--sd117-orange); color: #fff; font: 800 9px/12px Manrope, system-ui, sans-serif; text-align: center; }
.sd117-p.sd117-g { border-color: var(--sd117-rouge-b); background: var(--sd117-rouge-f); color: var(--sd117-rouge); }
.sd117-p.sd117-g::before { background: var(--sd117-rouge); }

/* --- panneau de la course --- */
#v2-pan .sd117-pan { margin: 0 0 12px; }
.sd117-t {
  border: 1px solid var(--sd117-orange-b); border-left: 4px solid var(--sd117-orange); border-radius: 10px;
  background: var(--sd117-orange-f); padding: 10px 12px; color: var(--sd117-nuit); font: 500 13px/1.45 Manrope, system-ui, sans-serif;
}
.sd117-titre { display: block; color: var(--sd117-orange); font: 800 12.5px/1.3 Manrope, system-ui, sans-serif; letter-spacing: .02em; text-transform: uppercase; margin-bottom: 4px; }
.sd117-msg { margin: 0 0 8px; overflow-wrap: anywhere; }
.sd117-att { margin: 0 0 8px; font-size: 12px; color: var(--sd117-bleu); }
.sd117-bts { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.sd117-b {
  position: relative; overflow: hidden; display: inline-flex; align-items: center; justify-content: center; min-height: 36px;
  padding: 7px 13px; border-radius: 9px; border: 1px solid var(--sd117-nuit); cursor: pointer;
  font: 700 12.5px/1.2 Manrope, system-ui, sans-serif; color: #fff; white-space: nowrap;
  background-color: var(--sd117-nuit);
  background-image: linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px), linear-gradient(160deg, #1B3B6F 0%, #0B1B3A 70%);
  background-size: 8px 8px, 8px 8px, 100% 100%;
  box-shadow: 0 1px 0 rgba(255,255,255,.12) inset, 0 2px 6px rgba(11,27,58,.25);
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
}
.sd117-b:hover { transform: translateY(-1px); box-shadow: 0 1px 0 rgba(255,255,255,.16) inset, 0 4px 12px rgba(11,27,58,.32); filter: brightness(1.08); }
.sd117-b:active { transform: translateY(0); }
.sd117-b:focus-visible, .sd117-lien:focus-visible, .sd117-x:focus-visible { outline: 2px solid var(--sd117-bleu); outline-offset: 2px; }
.sd117-b:disabled { opacity: .55; cursor: wait; }
.sd117-b.sd117-vu { color: var(--sd117-nuit); border-color: var(--sd117-bord); background-color: var(--sd117-argent);
  background-image: linear-gradient(rgba(11,27,58,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(11,27,58,.05) 1px, transparent 1px), linear-gradient(160deg, #FFFFFF 0%, #E3E9F1 100%); }
.sd117-b.sd117-h { color: var(--sd117-bleu); border-color: var(--sd117-bord); background: #fff; box-shadow: none; }
.sd117-t.sd117-ok { border-color: var(--sd117-bord); border-left-color: var(--sd117-bleu); background: var(--sd117-argent); display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; justify-content: space-between; }
.sd117-lien { background: none; border: 0; padding: 4px 2px; color: var(--sd117-bleu); font: 700 12.5px/1.2 Manrope, system-ui, sans-serif; text-decoration: underline; cursor: pointer; }

/* --- accueil : ligne sous « Alertes » --- */
a.sd117-ac > b.sd117-n { background: #8C97A8 !important; background-image: none !important; }
a.sd117-ac > b.sd117-n.sd117-n-on { background: var(--sd117-orange) !important; background-image: none !important; }
.sd117-ps { display: inline-flex; flex-wrap: wrap; gap: 3px; vertical-align: 1px; margin-left: 4px; }

/* --- fenêtre de la liste --- */
.sd117-voile { position: fixed; inset: 0; z-index: 9000; display: none; align-items: flex-start; justify-content: center; padding: 6vh 16px 16px; background: rgba(11,27,58,.45); box-sizing: border-box; }
.sd117-voile.on { display: flex; }
.sd117-fen { width: min(760px, 100%); max-height: 86vh; overflow: auto; background: #fff; border-radius: 14px; border: 1px solid var(--sd117-bord); box-shadow: 0 18px 50px rgba(11,27,58,.35); padding: 14px 16px 16px; box-sizing: border-box; color: var(--sd117-nuit); font: 500 13px/1.45 Manrope, system-ui, sans-serif; }
.sd117-fh { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 4px; }
.sd117-fh b { font: 800 16px/1.3 Montserrat, Manrope, system-ui, sans-serif; color: var(--sd117-nuit); }
.sd117-x { width: 44px; height: 44px; border-radius: 10px; border: 1px solid var(--sd117-bord); background: var(--sd117-argent); color: var(--sd117-nuit); font: 700 22px/1 Manrope, system-ui, sans-serif; cursor: pointer; }
.sd117-intro { margin: 0 0 8px; color: #44536B; font-size: 12.5px; }
.sd117-tous { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 10px; font-size: 12.5px; color: var(--sd117-bleu); cursor: pointer; min-height: 32px; }
.sd117-it { border: 1px solid var(--sd117-orange-b); border-left: 4px solid var(--sd117-orange); border-radius: 10px; background: var(--sd117-orange-f); padding: 9px 11px; margin-bottom: 8px; }
.sd117-it.sd117-it-vu { border-color: var(--sd117-bord); border-left-color: var(--sd117-bleu); background: var(--sd117-argent); }
.sd117-ih { margin-bottom: 4px; overflow-wrap: anywhere; }
.sd117-ok-t { font-weight: 700; color: var(--sd117-bleu); }
.sd117-vide { margin: 12px 0; color: #44536B; }

@media (max-width: 760px) {
  #v2-contenu tr.lg > td.c-st > .sd117 { justify-content: flex-start; }
  .sd117-p { font-size: 11px; }
  .sd117-b { min-height: 44px; padding: 9px 14px; font-size: 13.5px; }
  .sd117-lien { min-height: 44px; }
  .sd117-voile { padding: 0; align-items: stretch; }
  .sd117-fen { width: 100%; max-height: none; height: 100%; border-radius: 0; }
}
@media print { .sd117, .sd117-pan, .sd117-voile { display: none !important; } }
