/* REMSIM — habillage Medtronic CareLink Network.
   Polices et couleurs relevées en direct sur le portail réel (session du
   06/08/2026, voir docs/MEDTRONIC.md) : police système "Avenir Next World"
   (repli Arial/Helvetica), bleu de marque #1010EB (nom patient, onglet actif,
   icône active, liens), filet supérieur bleu marine #140F4B (6px), bandeau
   d'alerte crème #FEF6E6 à bordure ambre #F7A800, fond de page #F5F5F5. */

.mc-bg { background: #f5f5f5; }

.mc-shell {
  font: 14px/1.4 "Avenir Next World", Arial, Helvetica, sans-serif;
  color: rgba(0,0,0,.9);
  max-width: 1100px; margin: 0 auto;
  background: #fff;
  box-shadow: 0 6px 10px rgba(0,0,0,.06);
}

/* ---------------- bandeau supérieur ---------------- */
.mc-appbar {
  display: flex; align-items: center; gap: 14px;
  padding: 10px 18px; background: #f4f5f6;
}
.mc-appbar-burger { font-size: 20px; color: #444; line-height: 1; }
.mc-appbar-logo { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; }
.mc-appbar-logo-img { display: block; height: 24px; width: auto; }
.mc-appbar-logo span { font-size: 12.5px; color: rgba(0,0,0,.55); }
.mc-appbar-sp { flex: 1 1 auto; }
.mc-appbar-clinic { border: 1px solid #ccc; border-radius: 3px; padding: 5px 10px; font-size: 12px; color: #333; background: #fff; }
.mc-appbar-ico { width: 18px; height: 18px; color: #444; flex: 0 0 auto; }
/* Filet de sécurité : toute icône SVG du portail doit rester à sa taille
   voulue même sans classe de contexte spécifique — un <svg> sans width/height
   ni règle CSS ciblée s'étire pour remplir son conteneur flex (bug rencontré :
   le triangle d'alerte occupait toute la largeur de page). */
svg.mc-picto { width: 16px; height: 16px; flex: 0 0 auto; display: inline-block; vertical-align: -3px; }
.mc-appbar-avatar {
  width: 30px; height: 30px; border-radius: 50%; background: #140f4b; color: #fff;
  display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 700;
}
.mc-navy-rule { height: 6px; background: #140f4b; }

/* ---------------- barre secondaire (fil de navigation) ---------------- */
.mc-secnav {
  display: flex; align-items: center; gap: 22px;
  padding: 11px 18px; background: #fff; border-bottom: 1px solid #e3e5e8;
  font-size: 13px; color: #24243d; overflow: hidden; white-space: nowrap;
}
.mc-secnav-arrow { color: #8a8a99; flex: 0 0 auto; }
.mc-secnav-items { display: flex; gap: 22px; overflow: hidden; }
.mc-secnav-items span { flex: 0 0 auto; }

/* ---------------- corps : rail d'icônes + contenu ---------------- */
.mc-body { display: flex; }
.mc-rail {
  flex: 0 0 56px; background: #fff; border-right: 1px solid #eceef1;
  display: flex; flex-direction: column; align-items: center; gap: 22px;
  padding: 18px 0;
}
.mc-rail-ico { width: 24px; height: 24px; color: #8a8a99; }
.mc-rail-item { position: relative; padding: 2px 16px; }
.mc-rail-item.on .mc-rail-ico { color: #1010eb; }
.mc-rail-item.on::before {
  content: ''; position: absolute; left: 0; top: -2px; bottom: -2px; width: 3px; background: #1010eb;
}
.mc-main { flex: 1 1 auto; min-width: 0; padding: 18px 22px 0; }

/* ---------------- fiche patient ---------------- */
.mc-patient-row { display: flex; align-items: flex-start; justify-content: space-between; }
.mc-patient-name { font-size: 20px; font-weight: 700; color: #1010eb; }
.mc-patient-name .mc-picto { margin-left: 6px; font-size: 15px; color: #1010eb; vertical-align: 2px; }
.mc-patient-more { color: #555; font-size: 18px; cursor: default; }
.mc-patient-age { display: flex; align-items: center; gap: 8px; margin-top: 8px; color: #24243d; font-size: 13.5px; }
.mc-patient-age .mc-picto { font-size: 15px; color: #555; }
.mc-patient-collapse { margin-left: auto; color: #666; }

/* ---------------- barre transmission / rapport ---------------- */
.mc-txrow { display: flex; flex-wrap: wrap; gap: 4px 40px; font-size: 13px; color: #24243d; margin-bottom: 6px; }
.mc-txrow b { font-weight: 700; }
.mc-txrow a { color: #1010eb; text-decoration: none; margin-left: auto; }
.mc-txrow a:hover { text-decoration: underline; }
.mc-nonbillable { display: flex; align-items: center; gap: 8px; font-size: 13px; color: #b9b9c2; margin: 10px 0; }
.mc-toggle { width: 30px; height: 16px; border-radius: 9px; background: #d8d8de; position: relative; display: inline-block; }
.mc-toggle::after { content:''; position:absolute; top:2px; left:2px; width:12px; height:12px; border-radius:50%; background:#fff; }

.mc-reportbar { display: flex; align-items: center; gap: 10px; margin: 10px 0 16px; }
.mc-reportbar select {
  font: inherit; font-size: 13px; padding: 6px 10px; border: 1px solid #c6c8cf; border-radius: 3px;
  background: #fff; color: #24243d; min-width: 140px;
}
.mc-reportbar .mc-tool { width: 20px; height: 20px; color: #1010eb; cursor: pointer; }

/* ---------------- onglets de rapport ---------------- */
.mc-tabs-wrap { display: flex; align-items: center; border-bottom: 1px solid #d8dae0; }
.mc-tabs-arrow { flex: 0 0 auto; color: #8a8a99; padding: 0 4px; }
/* overflow visible (pas hidden) : le menu déroulant « Plus de rapports »
   est un enfant positionné en absolu de .mc-tabs et serait sinon rogné
   par le débordement masqué — bug rencontré (le menu s'ouvrait dans le DOM
   mais restait invisible, cliquable nulle part). flex-wrap laisse les
   7 onglets passer à la ligne plutôt que déborder, les flèches ‹ › étant
   décoratives (non branchées à un défilement réel). */
.mc-tabs { display: flex; flex-wrap: wrap; gap: 6px 26px; flex: 1 1 auto; }
.mc-tab {
  position: relative; padding: 10px 2px 12px; font-size: 13.5px; font-weight: 500; color: #24243d;
  text-decoration: none; white-space: nowrap; flex: 0 0 auto; background: none; border: none; cursor: pointer;
  display: flex; align-items: center; gap: 4px;
}
.mc-tab.on { color: #1010eb; }
.mc-tab.on::after { content: ''; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: #1010eb; }
.mc-tab .mc-chev { font-size: 11px; }
.mc-tab.disabled { color: #b9b9c2; cursor: default; }

/* ---------------- menu déroulant "Plus de rapports" ---------------- */
.mc-menu-anchor { position: relative; }
.mc-menu {
  position: absolute; top: calc(100% + 2px); right: -40px; z-index: 40;
  background: #fff; border: 1px solid #d8dae0; box-shadow: 0 6px 18px rgba(0,0,0,.16);
  min-width: 230px; padding: 6px 0;
}
.mc-menu a, .mc-menu span.mc-menu-off {
  display: block; padding: 10px 18px; font-size: 13.5px; text-decoration: none;
}
.mc-menu a { color: #1010eb; }
.mc-menu a:hover { background: #f2f4ff; }
.mc-menu span.mc-menu-off { color: #b9b9c2; cursor: default; }

/* ---------------- contenu de rapport : en-tête dispositif ---------------- */
.mc-devhead { display: flex; flex-wrap: wrap; gap: 6px 50px; font-size: 12.5px; color: #24243d; padding: 14px 0 12px; }
.mc-devhead b { font-weight: 700; }

.mc-h { font-size: 13.5px; font-weight: 700; color: #000; border-bottom: 2px solid #1010eb; padding-bottom: 4px; margin: 18px 0 8px; }
.mc-h2 { font-size: 13px; font-weight: 700; color: #000; margin: 14px 0 6px; }

.mc-cols2 { display: grid; grid-template-columns: 1fr 1fr; gap: 0 34px; }
.mc-cols2.mc-cols-16 { grid-template-columns: 1.6fr 1fr; }

table.mc-tbl { border-collapse: collapse; width: 100%; font-size: 12.5px; margin-bottom: 8px; }
table.mc-tbl td, table.mc-tbl th { padding: 2px 8px 2px 0; vertical-align: top; text-align: left; }
table.mc-tbl th { font-weight: 700; border-bottom: 1px solid #999; }
table.mc-tbl tr.mc-total td { font-weight: 700; }
table.mc-tbl td.mc-num, table.mc-tbl th.mc-num { text-align: right; padding-right: 14px; }

.mc-note { background: #fef6e6; border: 1px solid #f0dca4; padding: 6px 10px; font-size: 12px; margin: 6px 0; }
.mc-obs { font-size: 12.5px; margin: 4px 0; }
.mc-obs-item { padding: 2px 0 2px 14px; position: relative; }
.mc-obs-item::before { content: '·'; position: absolute; left: 2px; }

/* ---------------- jauge de longévité (pile) ---------------- */
.mc-batt { margin: 6px 0 4px; }
.mc-batt-bar { position: relative; height: 12px; border-radius: 2px; overflow: visible; display: flex; width: 100%; max-width: 340px; }
.mc-batt-bar .seg-rrt { flex: 0 0 6%; background: #d0021b; border-radius: 2px 0 0 2px; }
.mc-batt-bar .seg-ok { flex: 1 1 auto; background: #4a9c2e; border-radius: 0 2px 2px 0; }
.mc-batt-marker { position: absolute; top: -4px; width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 7px solid #000; }
.mc-batt-labels { display: flex; justify-content: space-between; max-width: 340px; font-size: 11px; color: #444; margin-top: 2px; }

/* ---------------- EGM (bande temps réel) ---------------- */
.mc-egm-stage { overflow-x: auto; border: 1px solid #ccc; background: #fff; margin: 8px 0; }
.mc-egm-svg { display: block; }
/* Capture reelle (legende + trace), deux images de meme hauteur d'origine :
   la legende reste fixe, seule la trace (tres large) defile horizontalement. */
.mc-egm-real { display: flex; align-items: flex-start; }
.mc-egm-real-legend { height: 230px; width: auto; flex: 0 0 auto; display: block; }
.mc-egm-real-scroll { flex: 1 1 auto; min-width: 0; overflow-x: auto; }
.mc-egm-real-trace { height: 230px; width: auto; display: block; }
.mc-egm-chanlabel { font-size: 11.5px; font-weight: 700; fill: #000; }
.mc-egm-grid { stroke: #b3b3b3; stroke-width: .5; }
.mc-egm-trace { fill: none; stroke: #000; stroke-width: 1.1; }
.mc-egm-cal { fill: none; stroke: #000; stroke-width: 1; }
.mc-egm-tick { stroke: #000; stroke-width: 1.3; }
.mc-egm-scale { font-size: 10.5px; fill: #1010eb; }

/* ---------------- EasyEGM (cartes épisode) ---------------- */
.mc-easy-card { border: 1px solid #c6c8cf; margin: 0 0 16px; }
.mc-easy-body { display: flex; overflow-x: auto; background: #fff; }
.mc-easy-scatter, .mc-easy-strip { flex: 0 0 auto; }
.mc-easy-svg { display: block; }
.mc-easy-img { display: block; height: 169px; width: auto; }
.mc-easy-img-big { display: block; height: 335px; width: auto; }
.mc-easy-link { cursor: pointer; }
.mc-easy-link:hover .mc-easy-rowhead { filter: brightness(0.97); }

/* en-tete de colonnes (une fois par bande visible) + bandeau par episode,
   memes largeurs de colonne pour aligner les deux. */
.mc-easy-thead, .mc-easy-rowhead { display: flex; align-items: center; font-size: 12px; }
.mc-easy-thead { color: #24243d; padding: 4px 0; border-bottom: 1px solid #999; }
.mc-easy-rowhead { background: #e8edf8; color: #1a1a2e; padding: 6px 0; border-bottom: 1px solid #c6cee3; }
.mc-easy-thead > span, .mc-easy-rowhead > span, .mc-easy-rowhead > b { padding: 0 8px; box-sizing: border-box; line-height: 1.3; }
.mc-easy-col-type { width: 100px; }
.mc-easy-col-id { width: 80px; }
.mc-easy-col-date { width: 110px; }
.mc-easy-col-time { width: 80px; }
.mc-easy-col-dur { width: 90px; }
.mc-easy-col-av { width: 110px; }
.mc-easy-col-egm-head, .mc-easy-col-egm { width: 130px; }
.mc-easy-col-egm-sub { display: flex; justify-content: space-between; margin-top: 2px; font-size: 10.5px; color: #555; }
.mc-easy-col-egm { display: flex; align-items: center; justify-content: space-between; }
.mc-easy-voir-ico { width: 22px; height: 15px; }
.mc-easy-imprimer { font-size: 14px; }

/* ---------------- liste d'épisodes (table) ---------------- */
.mc-eplist-band { background: #1a3f7a; color: #fff; padding: 7px 14px; font-size: 13px; font-weight: 700; display: flex; justify-content: space-between; margin-top: 18px; }
table.mc-eplist { border-collapse: collapse; width: 100%; font-size: 12px; margin-top: 4px; }
table.mc-eplist th { text-align: left; font-weight: 700; padding: 8px 8px 4px 0; border-bottom: 1px solid #999; vertical-align: bottom; }
table.mc-eplist td { padding: 5px 8px 5px 0; border-bottom: 1px solid #eee; }
table.mc-eplist a { color: #1010eb; text-decoration: none; }
table.mc-eplist a:hover { text-decoration: underline; }
.mc-radiorow { display: flex; gap: 60px; padding: 10px 0; border-bottom: 2px solid #1010eb; margin-bottom: 12px; }
.mc-radiogrp b { display: block; font-size: 12.5px; margin-bottom: 6px; }
.mc-radio { display: flex; align-items: center; gap: 6px; font-size: 12.5px; margin-bottom: 4px; color: #24243d; }
.mc-radio .dot { width: 13px; height: 13px; border-radius: 50%; border: 1.5px solid #777; display: inline-block; position: relative; }
.mc-radio.on .dot { border-color: #1010eb; }
.mc-radio.on .dot::after { content:''; position:absolute; inset:2px; border-radius:50%; background:#1010eb; }
.mc-radio a { color: inherit; text-decoration: none; }

/* ---------------- Cardiac Compass ---------------- */
.mc-cc-scale { display: flex; gap: 30px; padding: 8px 0; border-bottom: 2px solid #1010eb; margin-bottom: 10px; font-size: 12.5px; }
.mc-cc-img { display: block; width: 100%; max-width: 720px; height: auto; }
.mc-cc-legend { font-size: 11px; color: #333; margin-bottom: 6px; }
.mc-cc-legend div { display: flex; align-items: center; gap: 6px; }
.mc-cc-panel { margin-bottom: 4px; }
.mc-cc-panel-title { font-size: 11.5px; color: #222; }
.mc-cc-panel-legend { font-size: 10.5px; color: #444; margin: 2px 0 2px 2px; }
.mc-cc-panel-legend span { margin-right: 12px; }
.mc-cc-svg { width: 100%; height: auto; display: block; }
.mc-cc-empty { font-size: 11px; fill: #777; }

/* ---------------- histogrammes ---------------- */
.mc-hist-legend { font-size: 11px; color: #333; margin: 4px 0 8px; display: flex; gap: 16px; }
.mc-hist-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; margin-bottom: 14px; }
.mc-hist-period { font-size: 11.5px; font-weight: 700; margin-bottom: 4px; }
.mc-hist-svg { width: 100%; height: auto; display: block; }

/* ---------------- infos dispositif / paramètres ---------------- */
.mc-kv { font-size: 12.5px; margin: 2px 0; display: flex; gap: 8px; }
.mc-kv b { min-width: 190px; font-weight: 400; color: #444; }
.mc-band { background: #eef1f6; font-weight: 700; font-size: 12px; padding: 5px 8px; margin: 10px 0 4px; }

/* ---------------- commentaires ---------------- */
.mc-comment-box { width: 100%; min-height: 120px; border: 1px solid #b9bcc4; font: 12.5px/1.4 monospace, monospace; padding: 8px; color: #333; resize: vertical; }
.mc-comment-meta { font-size: 12px; color: #555; text-align: right; margin: 4px 0 16px; font-style: italic; }
.mc-btn-outline { border: 1px solid #1010eb; color: #1010eb; background: #fff; border-radius: 16px; padding: 7px 16px; font-size: 12.5px; cursor: default; }
.mc-btn-flat { border: 1px solid #c6c8cf; color: #999; background: #f2f2f2; border-radius: 3px; padding: 6px 14px; font-size: 12.5px; cursor: default; }
.mc-empty-note { font-size: 12.5px; font-weight: 700; padding: 10px 0; }

/* ---------------- historique ---------------- */
.mc-histpage { display: flex; align-items: center; gap: 10px; font-size: 12px; color: #555; margin-bottom: 8px; }
table.mc-histtbl { border-collapse: collapse; width: 100%; font-size: 12.5px; }
table.mc-histtbl th { text-align: left; font-weight: 700; padding: 6px 10px 6px 0; border-bottom: 1px solid #999; }
table.mc-histtbl td { padding: 6px 10px 6px 0; border-bottom: 1px solid #eee; }

/* ---------------- modale EasyEGM (détail épisode) ---------------- */
.mc-modal-overlay { position: fixed; inset: 0; background: rgba(20,15,75,.45); display: flex; align-items: flex-start; justify-content: center; z-index: 90; padding: 30px 12px; overflow: auto; }
.mc-modal {
  background: #fff; max-width: 1040px; width: 100%; box-shadow: 0 8px 30px rgba(0,0,0,.35);
  font: 14px/1.4 "Avenir Next World", Arial, Helvetica, sans-serif; color: rgba(0,0,0,.9);
}
.mc-modal-head { display: flex; align-items: center; justify-content: space-between; background: #140f4b; color: #fff; padding: 10px 16px; font-weight: 700; font-size: 13.5px; }
.mc-modal-head button { border: none; background: none; color: #fff; font-size: 18px; cursor: pointer; opacity: .85; }
.mc-modal-head button:hover { opacity: 1; }
.mc-modal-body { padding: 14px 16px 18px; }
.mc-modal-nav { display: flex; justify-content: space-between; font-size: 12px; color: #555; margin-bottom: 8px; }

/* ---------------- visionneuse de pages PDF (épisode réel exporté) ---------------- */
.mc-pdf-viewer { border: 1px solid #ccc; background: #f2f2f4; }
/* Défilement vertical continu (toutes les pages empilées) : colonne, pas
   ligne. align-items: center (pas le stretch par defaut d'un flex column,
   qui etirerait chaque <img> dans le mauvais axe et deformerait la page —
   meme risque que le bug deja rencontre en ligne quand ce conteneur etait
   en row/justify-center, corrige a l'epoque avec flex-start). */
/* position: relative est indispensable, pas décoratif : renderPdfPageViewer()
   compare stage.scrollTop aux offsetTop des pages. Sans conteneur positionné,
   offsetParent remonte à .mc-modal-overlay et les offsetTop sont mesurés
   depuis l'overlay (170, 1164, ...) au lieu du conteneur défilant
   (10, 1003, ...) : l'étiquette « page n / N » restait bloquée sur 1 / N et
   les boutons page précédente/suivante visaient ~160 px à côté. */
.mc-pdf-page-stage { position: relative; max-height: 70vh; overflow-y: auto; background: #fff; display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 10px 0; scroll-behavior: smooth; }
.mc-pdf-page-img { width: 100%; max-width: 760px; height: auto; display: block; flex: 0 0 auto; }
.mc-pdf-page-nav { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 6px 10px; border-top: 1px solid #ccc; font-size: 12px; }
.mc-pdf-nav-btn { border: 1px solid #1010eb; background: #fff; color: #1010eb; border-radius: 3px; padding: 4px 10px; font-size: 12px; cursor: pointer; }
.mc-pdf-nav-btn:disabled { border-color: #ccc; color: #aaa; cursor: default; }
.mc-pdf-page-label { color: #333; }

/* ---------------- lien de retour au cas ---------------- */
.mc-caselink { padding: 10px 22px; font-size: 12px; background: #f2f2f4; border-top: 1px solid #ccc; }
.mc-caselink a { color: #1010eb; text-decoration: none; }

/* ---------------- mobile ---------------- */
@media (max-width: 720px) {
  .mc-rail { display: none; }
  .mc-main { padding: 14px 12px 0; }
  .mc-cols2, .mc-cols2.mc-cols-16 { grid-template-columns: 1fr; }
  .mc-radiorow { gap: 26px; flex-wrap: wrap; }
  .mc-appbar-clinic { display: none; }
  .mc-secnav { gap: 14px; }
  .mc-tabs { gap: 16px; }
  .mc-tab { font-size: 12px; }
  .mc-hist-row { grid-template-columns: 1fr; }
  .mc-menu { right: 0; left: 0; margin: 0 12px; min-width: 0; }
}

/* ---------------- « Nombre total de transmissions » (liste du patient) ----------------
   Mise en page relevée sur l'écran transmission-patient-view du portail :
   barre d'outils (sélecteur de rapports, icônes, pagination « 1 / 1 »,
   « 100 par page »), puis tableau à en-têtes gras sur filet gris ; date en
   lien bleu gras, heure dessous, étiquette « (CareAlert) »/« (Non
   planifié) » en orange ; pastille rouge en colonne Alertes ; résumé des
   événements en liste à puces. */
.mc-txlist-page { padding-top: 6px; }
.mc-txlist-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 0 12px; }
.mc-txlist-bar-left, .mc-txlist-bar-right { display: flex; align-items: center; gap: 14px; }
.mc-txlist-select { color: #8a8a99; font-size: 13px; display: inline-flex; align-items: center; gap: 6px; }
.mc-txlist-select .mc-chev { font-size: 11px; }
.mc-txlist-bar .mc-tool { width: 20px; height: 20px; color: #1010eb; }
.mc-txlist-pg { color: #8a8a99; font-size: 12px; }
.mc-txlist-scroll { overflow-x: auto; }
table.mc-txlist { min-width: 900px; font-size: 12.5px; }
table.mc-txlist th { padding: 8px 8px 8px 0; border-bottom: 1px solid #c6c8cf; border-top: 1px solid #c6c8cf; white-space: nowrap; }
table.mc-txlist td { padding: 10px 8px 10px 0; border-bottom: 1px solid #e3e5e8; vertical-align: top; }
.mc-txlist-chk { width: 26px; }
.mc-txlist-box { display: inline-block; width: 14px; height: 14px; border: 1.5px solid #8a8a99; border-radius: 2px; }
.mc-txlist-name { width: 150px; }
.mc-txlist-patient { color: #1010eb; font-weight: 700; }
.mc-txlist-date { width: 110px; }
.mc-txlist-datelink { color: #1010eb; font-weight: 700; text-decoration: none; }
a.mc-txlist-datelink:hover { text-decoration: underline; }
.mc-txlist-datelink.off { color: #1010eb; opacity: .55; cursor: default; }
.mc-txlist-time { color: #1010eb; font-weight: 700; }
.mc-txlist-tag { color: #e0640a; font-size: 11.5px; margin-top: 2px; }
.mc-txlist-alert { width: 60px; text-align: center; }
.mc-txlist-dot { display: inline-block; width: 11px; height: 11px; border-radius: 50%; background: #c8102e; box-shadow: inset 0 -2px 2px rgba(0,0,0,.25); }
.mc-txlist-events ul { margin: 0; padding-left: 16px; }
.mc-txlist-events li { margin: 0 0 2px; }
.mc-txlist-dev { white-space: nowrap; }
.mc-txlist-next { color: #1010eb; font-weight: 700; white-space: nowrap; }
.mc-txlist-blank { width: 70px; }
.mc-txlist-events { min-width: 260px; }

/* ---------------- images réelles supplémentaires (MDT-DAI-001, 2e transmission) ---------------- */
.mc-ccmini-img { display: block; width: 100%; max-width: 336px; height: auto; }
.mc-batt-img { display: block; width: 100%; max-width: 315px; height: auto; }
.mc-easy-current { margin-bottom: 14px; }
/* Tendances sondes réelles : une colonne A., une colonne VD, une image par courbe. */
.mc-lt-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; }
.mc-lt-panel { margin-bottom: 10px; }
.mc-lt-img { display: block; width: 100%; max-width: 480px; height: auto; border: 1px solid #e3e5e8; }
.mc-lt-col-full { grid-column: 1 / -1; }
.mc-lt-col-full .mc-lt-img { max-width: 600px; }
/* EGM actuel et histogrammes tirés d'un export PDF : bandes empilées, pleine largeur. */
.mc-egm-pdf-strip { display: block; width: 100%; max-width: 696px; height: auto; margin-bottom: 4px; }
.mc-hist-img { display: block; width: 100%; max-width: 696px; height: auto; margin-bottom: 14px; }
/* CareAlert : ligne de séparation « dernière session moniteur » du journal. */
.mc-ca-sep { font-style: italic; color: #555; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; padding: 4px 0 !important; }
@media (max-width: 800px) { .mc-lt-grid { grid-template-columns: 1fr; } }
table.mc-ca-events td:nth-child(1), table.mc-ca-events td:nth-child(2), table.mc-ca-events td:nth-child(4) { white-space: nowrap; }
