/* Baromètre Énergie — styles isolés sous .baro pour cohabiter avec le thème WordPress.
   Mise en page : pupitre de salle de marché — rail par énergie, tableau des cours, fiches détaillées. */
.baro{
  --bg:#EEF0EC; --surface:#FAFBF8; --ink:#16212B; --muted:#5B6670; --line:#D5D9D2;
  --accent:#C97A00; --accent-soft:#F6E7CB;
  --up:#1F7A4D; --up-soft:#DCEFE3; --down:#B3372E; --down-soft:#F6DEDB; --flat:#6B7480;
  --f-display:"Archivo","Arial Narrow",system-ui,sans-serif;
  --f-body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  color-scheme:light;
}
.baro[data-theme="dark"]{
  --bg:#10161C; --surface:#18212A; --ink:#E6EAE6; --muted:#97A2AC; --line:#2A3540;
  --accent:#F0A532; --accent-soft:#3A2E17;
  --up:#4FC387; --up-soft:#16332A; --down:#F0776B; --down-soft:#3A1F1F; --flat:#8D97A1; color-scheme:dark;
}
@media (prefers-color-scheme:dark){.baro[data-theme="auto"]{
  --bg:#10161C; --surface:#18212A; --ink:#E6EAE6; --muted:#97A2AC; --line:#2A3540;
  --accent:#F0A532; --accent-soft:#3A2E17;
  --up:#4FC387; --up-soft:#16332A; --down:#F0776B; --down-soft:#3A1F1F; --flat:#8D97A1; color-scheme:dark}}

.baro{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.5;
  max-width:1180px;margin-inline:auto;padding:20px 16px 40px;border-radius:6px;text-align:left}
.baro *,.baro *::before,.baro *::after{box-sizing:border-box}
.baro a{color:inherit;text-decoration-thickness:1px;box-shadow:none}
.baro h1,.baro h2,.baro h3,.baro p,.baro ul,.baro ol,.baro dl,.baro table{margin:0}
.baro h1,.baro h2,.baro h3{color:var(--ink);text-transform:none;letter-spacing:normal}
.baro ul,.baro ol{list-style:none;padding:0}
.baro button{font:inherit;color:inherit;text-transform:none;letter-spacing:normal;box-shadow:none}
.baro [hidden]{display:none!important}
.baro .num{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.baro .baro-loading{color:var(--muted);padding:24px 0}

.baro .top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 24px;padding-bottom:14px;border-bottom:2px solid var(--ink)}
.baro h1{font-family:var(--f-display);font-stretch:72%;font-weight:800;font-size:clamp(30px,5vw,44px);line-height:1;letter-spacing:-.01em;text-transform:uppercase}
.baro h1 span{color:var(--accent)}
.baro .stamp{font-family:var(--f-mono);font-size:12px;color:var(--muted);text-align:right;display:grid;gap:2px}
.baro .stamp b{color:var(--ink);font-weight:500}
.baro .live{display:inline-flex;align-items:center;gap:6px}
.baro .dot{width:8px;height:8px;border-radius:50%;background:var(--up);display:inline-block}
.baro .dot.stale{background:var(--accent)}
.baro .dot.off{background:var(--down)}
@media (prefers-reduced-motion:no-preference){.baro .dot:not(.stale):not(.off){animation:baro-pulse 2s ease-in-out infinite}}
@keyframes baro-pulse{0%,100%{opacity:1}50%{opacity:.35}}
@media (max-width:600px){.baro .stamp{text-align:left}}

.baro .rail{display:flex;gap:6px;overflow-x:auto;padding-block:12px;border-bottom:1px solid var(--line);scrollbar-width:thin}
.baro .chip{flex:0 0 auto;display:flex;flex-direction:column;gap:1px;padding:7px 12px;border:1px solid var(--line);border-radius:4px;background:var(--surface);text-decoration:none;min-width:96px;color:var(--ink)}
.baro .chip .n{font-family:var(--f-display);font-stretch:80%;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.baro .chip .v{font-family:var(--f-mono);font-size:11.5px;color:var(--muted);white-space:nowrap}
.baro .chip[aria-current="page"]{border-color:var(--ink);background:var(--ink);color:var(--bg)}
.baro .chip[aria-current="page"] .v{color:var(--bg);opacity:.8}
.baro a:focus-visible,.baro button:focus-visible,.baro tr:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

.baro .view{padding-top:22px;display:grid;gap:28px}
.baro h2{font-family:var(--f-display);font-stretch:80%;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:10px}
.baro h3{font-family:var(--f-display);font-stretch:85%;font-weight:700;font-size:22px;text-wrap:balance;line-height:1.2}

.baro .context{background:var(--accent-soft);border-left:4px solid var(--accent);padding:16px 18px;border-radius:2px}
.baro .context h3{font-size:clamp(18px,2.4vw,23px);margin-bottom:6px}
.baro .context .dated{font-family:var(--f-mono);font-size:12px;color:var(--muted);margin-bottom:10px}
.baro .context ul{list-style:disc;padding-left:18px;display:grid;gap:6px;max-width:80ch}

.baro .grid2{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:28px}
@media (max-width:860px){.baro .grid2{grid-template-columns:minmax(0,1fr)}}
.baro .stack{display:grid;gap:28px;align-content:start}

.baro .tablebox{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:4px}
.baro table{border-collapse:collapse;width:100%;min-width:760px;border:0;background:transparent}
.baro th,.baro td{padding:9px 12px;text-align:right;white-space:nowrap;border:0;border-bottom:1px solid var(--line);background:transparent;vertical-align:middle;color:var(--ink)}
.baro th{font-family:var(--f-display);font-stretch:85%;font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.baro th:first-child,.baro td:first-child{text-align:left}
.baro tbody tr{cursor:pointer}
.baro tbody tr:hover td{background:var(--bg)}
.baro tbody tr:last-child td{border-bottom:0}
.baro td .grp{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.baro td .nm{font-weight:600}
.baro .unit{color:var(--muted);font-size:11.5px;margin-left:4px;font-family:var(--f-body)}
.baro .badge{font-family:var(--f-display);font-stretch:85%;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-left:6px}
.baro .pos{color:var(--up)} .baro .neg{color:var(--down)} .baro .zero{color:var(--flat)}
.baro td.spark{width:110px;padding-block:4px}
.baro td.spark svg{display:block;width:100px;height:26px}
.baro .flash-up{animation:baro-up 1.2s ease-out}
.baro .flash-down{animation:baro-down 1.2s ease-out}
@keyframes baro-up{from{background:var(--up-soft)}to{background:transparent}}
@keyframes baro-down{from{background:var(--down-soft)}to{background:transparent}}

.baro .chartbox{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:14px 14px 8px}
.baro .chartbox svg{display:block;width:100%;height:auto}
.baro .note{font-size:12px;color:var(--muted);margin:0 0 8px}

.baro .related{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.baro .rel{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:10px 12px;display:grid;gap:2px}
.baro .rel .l{font-size:12px;color:var(--muted)}
.baro .rel .p{font-family:var(--f-mono);font-size:15px}
.baro .rel .s{font-size:11.5px;color:var(--muted)}

.baro .timeline{border-left:2px solid var(--line);margin-left:6px}
.baro .timeline li{position:relative;padding:0 0 14px 18px}
.baro .timeline li::before{content:"";position:absolute;left:-6px;top:6px;width:10px;height:10px;border-radius:50%;background:var(--surface);border:2px solid var(--accent)}
.baro .timeline time{display:block;font-family:var(--f-mono);font-size:12px;color:var(--muted)}

.baro .agenda{background:var(--surface);border:1px solid var(--line);border-radius:4px}
.baro .agenda > div{display:grid;grid-template-columns:minmax(120px,170px) minmax(0,1fr);gap:12px;padding:9px 12px;border-bottom:1px solid var(--line)}
.baro .agenda > div:last-child{border-bottom:0}
.baro .agenda .w{font-family:var(--f-mono);font-size:12.5px;color:var(--accent);font-weight:500}
@media (max-width:480px){.baro .agenda > div{grid-template-columns:minmax(0,1fr);gap:2px}}

.baro .news{background:var(--surface);border:1px solid var(--line);border-radius:4px}
.baro .news article{padding:11px 14px;border-bottom:1px solid var(--line);display:grid;gap:3px;min-width:0}
.baro .news article:last-child{border-bottom:0}
.baro .news .meta{font-family:var(--f-mono);font-size:11.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.baro .news .src{color:var(--accent);font-weight:500}
.baro .news a.t{font-weight:600;text-decoration:none;line-height:1.35;overflow-wrap:anywhere}
.baro .news a.t:hover{text-decoration:underline}
.baro .news p{color:var(--muted);font-size:13.5px}
.baro .tag{font-family:var(--f-display);font-stretch:85%;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--line);border-radius:3px;padding:0 5px;color:var(--ink);background:var(--bg);text-decoration:none}
.baro .empty{padding:16px;color:var(--muted)}
.baro .more{margin-top:8px;font-size:13.5px}

.baro .filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.baro .filters button{font-size:13px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:4px;padding:4px 10px;cursor:pointer;line-height:1.4}
.baro .filters button[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}

.baro .hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:end;padding-bottom:20px;border-bottom:1px solid var(--line)}
@media (max-width:760px){.baro .hero{grid-template-columns:minmax(0,1fr)}}
.baro .hero .eyebrow{font-family:var(--f-mono);font-size:12px;color:var(--muted)}
.baro .hero h3{font-size:clamp(26px,4vw,38px);font-stretch:75%;font-weight:800;text-transform:uppercase;line-height:1.05;margin:4px 0 8px}
.baro .hero .price{font-family:var(--f-mono);font-size:clamp(34px,6vw,54px);line-height:1;letter-spacing:-.02em;display:inline-block;padding:2px 4px;margin-left:-4px;border-radius:4px}
.baro .hero .price .unit{font-size:15px}
.baro .hero .when{font-family:var(--f-mono);font-size:12px;color:var(--muted);margin-top:6px}
.baro .hero .sum{margin-top:10px;max-width:62ch}
.baro .perf{display:grid;gap:7px}
.baro .perf .r{display:grid;grid-template-columns:52px minmax(0,1fr) 86px;gap:10px;align-items:center;font-size:13px}
.baro .perf .lab{font-family:var(--f-mono);color:var(--muted)}
.baro .perf .track{position:relative;height:14px;background:var(--bg);border-radius:2px}
.baro .perf .track::after{content:"";position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:var(--muted)}
.baro .perf .bar{position:absolute;top:0;bottom:0;border-radius:2px}
.baro .perf .bar.pos{background:var(--up)} .baro .perf .bar.neg{background:var(--down)}
.baro .perf .val{text-align:right;white-space:nowrap}

.baro .bigchart{position:relative}
.baro .bigchart .tip{position:absolute;top:8px;pointer-events:none;background:var(--ink);color:var(--bg);font-family:var(--f-mono);font-size:12px;padding:3px 7px;border-radius:3px;white-space:nowrap;transform:translateX(-50%)}
.baro .ranges{display:flex;gap:6px;margin-bottom:8px}

.baro .kv{background:var(--surface);border:1px solid var(--line);border-radius:4px}
.baro .kv > div{display:flex;justify-content:space-between;gap:16px;padding:9px 12px;border-bottom:1px solid var(--line)}
.baro .kv > div:last-child{border-bottom:0}
.baro .kv dt{color:var(--muted);font-size:13.5px;min-width:0;font-weight:400}
.baro .kv dd{margin:0;font-family:var(--f-mono);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500;text-align:right}

.baro .drivers{display:grid;gap:8px}
.baro .drivers li{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;align-items:start;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:10px 12px}
.baro .tone{font-family:var(--f-display);font-stretch:85%;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.08em;text-align:center;padding:3px 4px;border-radius:3px}
.baro .tone.up{background:var(--up-soft);color:var(--up)} .baro .tone.down{background:var(--down-soft);color:var(--down)} .baro .tone.neutral{background:var(--bg);color:var(--flat);border:1px solid var(--line)}
@media (max-width:480px){.baro .drivers li{grid-template-columns:minmax(0,1fr);gap:6px}.baro .tone{justify-self:start}}

.baro .watch{display:flex;flex-wrap:wrap;gap:6px}
.baro .watch li{border:1px dashed var(--accent);border-radius:3px;padding:3px 9px;font-size:13.5px}
.baro .srcs{list-style:disc;padding-left:18px;display:grid;gap:4px;font-size:13.5px}
.baro .foot{margin-top:36px;padding-top:14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);display:grid;gap:6px;max-width:90ch}
.baro .err{background:var(--down-soft);color:var(--down);padding:14px;border-radius:4px}

.baro .baro-static{border-collapse:collapse;margin-top:8px;min-width:0;font-size:14px}
.baro .baro-static caption{text-align:left;font-weight:600;padding-bottom:6px}
.baro .baro-static th,.baro .baro-static td{padding:4px 10px;border-bottom:1px solid var(--line);text-align:left}
.baro .ranges2{display:grid;gap:8px;margin-top:16px}
.baro .rng{display:grid;grid-template-columns:64px auto minmax(0,1fr) auto;gap:10px;align-items:center;font-size:12px}
.baro .rng .lab{font-family:var(--f-mono);color:var(--muted);font-size:13px}
.baro .rng .num{color:var(--muted)}
.baro .rng .track{position:relative;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--down-soft),var(--line),var(--up-soft))}
.baro .rng .mark{position:absolute;top:-4px;width:3px;height:14px;margin-left:-1.5px;background:var(--ink);border-radius:1px}

/* Pleine largeur : sort de la colonne de texte du thème (jusqu'à 1180 px) */
.baro.baro-wide{width:min(1180px,calc(100vw - 32px));max-width:none;position:relative;left:50%;transform:translateX(-50%)}
@media (max-width:700px){.baro.baro-wide{width:auto;left:auto;transform:none}}
