/* Parmeton Network — graphique de cadence (stats.html).
   Aucune couleur en dur : tout vient des variables de site.css. */

.cadence{margin:18px 0 0;padding:clamp(16px,3vw,26px);border:1px solid var(--line);border-radius:14px;background:rgba(13,21,48,.45)}

/* repères chiffrés au-dessus du tracé */
.cadence-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 20px;margin:0 0 22px}
.cadence-kpis[hidden]{display:none}
.cadence-kpis div{padding:2px 0 2px 14px;border-left:2px solid var(--line-strong)}
.cadence-kpis div:first-child{border-left-color:var(--cyan)}
.cadence-kpis dt{margin:0 0 2px;font-size:13.5px;color:var(--muted)}
.cadence-kpis dd{margin:0;font:500 1.3rem/1.2 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.cadence-kpis dd small{margin-left:6px;font:400 .8rem var(--body);color:var(--faint);letter-spacing:0}

/* légende */
.cadence-legend{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0 0 10px;font-size:13.5px;color:var(--muted)}
.cadence-legend span{display:inline-flex;align-items:center;gap:8px}
.cadence-legend i{display:inline-block;width:22px;height:0;border-top:2.5px solid var(--cyan);border-radius:2px}
.cadence-legend i.is-target{border-top:2px dashed var(--red-text)}

/* tracé */
.cadence-plot{position:relative;border-radius:10px}
.cadence-svg{display:block;max-width:100%;overflow:visible}
.cadence-empty{display:flex;align-items:center;justify-content:center;min-height:160px;padding:20px;border:1px dashed var(--line-strong);border-radius:10px;color:var(--muted);font-size:15px;text-align:center}
.cadence.is-stale .cadence-plot{opacity:.5;filter:saturate(.5)}

.cadence-svg [hidden]{display:none}
.c-grid{stroke:var(--line);stroke-width:1}
.c-base{stroke:var(--line-strong)}
.c-tick,.c-xlabel{fill:var(--faint);font:12px var(--mono)}
.c-target{stroke:var(--red-text);stroke-width:1.5;stroke-dasharray:6 5;opacity:.85}
.c-area{fill:url(#cadence-fill)}
.c-line{fill:none;stroke:var(--cyan);stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
.c-dot{fill:var(--cyan)}
.c-halo{fill:var(--cyan);opacity:.18}
.c-last{fill:var(--cyan);stroke:var(--bg);stroke-width:2}
.c-cross{stroke:var(--line-strong);stroke-width:1}
.c-hover{fill:var(--bg);stroke:var(--cyan);stroke-width:2.5}
.c-hit{fill:transparent;cursor:crosshair;touch-action:pan-y}

/* infobulle */
.cadence-tip{position:absolute;z-index:2;top:0;left:0;pointer-events:none;min-width:156px;padding:9px 12px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface-2);box-shadow:0 14px 34px -14px rgba(0,0,0,.7);font-size:13px;line-height:1.5;color:var(--muted);white-space:nowrap}
.cadence-tip[hidden]{display:none}
.cadence-tip b{display:block;font:500 1.05rem/1.35 var(--mono);color:var(--ink);font-variant-numeric:tabular-nums}
.cadence-tip span{display:block}

.cadence-note{margin:14px 0 0;font-size:14px;color:var(--faint)}

/* table des mesures */
.cadence-data{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.cadence-data summary{cursor:pointer;width:max-content;font-size:14px;color:var(--muted);border-radius:6px}
.cadence-data summary:hover,.cadence-data[open] summary{color:var(--ink)}
.cadence-data .tablewrap{max-height:280px;overflow:auto;margin-top:10px}
.cadence-data td:first-child{color:var(--ink);font-family:var(--mono)}
.cadence-data td,.cadence-data th{font-variant-numeric:tabular-nums}

/* lecteurs d'écran */
.cadence-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media (max-width:640px){
  .cadence-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cadence-kpis dd{font-size:1.1rem}
}
