/* Interface de la veille : couleurs reprises de democia.eu (premier projet), même thème (automatique / clair / sombre, clé localStorage « theme » partagée avec le site). */
:root {
  --bg: #f4f6fa; --card: #fff; --text: #142033; --muted: #5a6577; --line: #dde3ec; --soft: #edf1f7; --th: #eef2f8;
  --accent: #0b4f94; --accent-ink: #fff; --accent-soft: #e3edf8; --accent2: #0e8a8f; --err: #b3412e; --err-soft: #f6d5d0; --orange: #a86a12;
  --warn-bg: #fff4e2; --warn-line: #f0d29d; --warn-text: #6b4708; --barre: #cfd8e3;
  --lg-arc: #0a4f94; --lg-cote: #0e9aa7; --lg-centre: #083c78; --lg-contour: #0b3d7a; --lg-bulle: #fff; --marque: #0b3d7a;
  color-scheme: light dark;
}
:root[data-theme="light"] { color-scheme: light; }
:root[data-theme="dark"] {
  --bg: #11161d; --card: #19202a; --text: #e7ecf3; --muted: #9aa6b5; --line: #2a3340; --soft: #1f2731; --th: #1f2731;
  --accent: #6aa6e6; --accent-ink: #0f141b; --accent-soft: #1f2d40; --accent2: #3cc0c9; --err: #ef8a74; --err-soft: #3a2420; --orange: #e0a54a;
  --warn-bg: #33291a; --warn-line: #6b5220; --warn-text: #f3d9a4; --barre: #3a4656;
  --lg-arc: #5b9fe0; --lg-cote: #2bb6c1; --lg-centre: #6aa6e6; --lg-contour: #6aa6e6; --lg-bulle: #f4f7fb; --marque: #e7ecf3;
  color-scheme: dark;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #11161d; --card: #19202a; --text: #e7ecf3; --muted: #9aa6b5; --line: #2a3340; --soft: #1f2731; --th: #1f2731;
    --accent: #6aa6e6; --accent-ink: #0f141b; --accent-soft: #1f2d40; --accent2: #3cc0c9; --err: #ef8a74; --err-soft: #3a2420; --orange: #e0a54a;
    --warn-bg: #33291a; --warn-line: #6b5220; --warn-text: #f3d9a4; --barre: #3a4656;
    --lg-arc: #5b9fe0; --lg-cote: #2bb6c1; --lg-centre: #6aa6e6; --lg-contour: #6aa6e6; --lg-bulle: #f4f7fb; --marque: #e7ecf3;
  }
}
*{box-sizing:border-box}
body{margin:0;font:15px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
header{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:10px 20px;background:var(--card);border-bottom:1px solid var(--line)}
.marque{font-weight:800;font-size:19px;letter-spacing:-.02em;color:var(--marque);text-decoration:none;margin-right:12px;display:inline-flex;align-items:center;gap:8px}
.marque .eu{color:var(--accent2)} .marque .sous{font-weight:600;color:var(--muted);font-size:16px;letter-spacing:0}
.logo-svg{width:34px;height:36px;flex:none}
.logo-svg .lg-arc{stroke:var(--lg-arc)} .logo-svg .lg-cote{fill:var(--lg-cote)} .logo-svg .lg-centre{fill:var(--lg-centre)}
.logo-svg .lg-sep{stroke:var(--card)} .logo-svg .lg-bulle{fill:var(--lg-bulle);stroke:var(--lg-contour)}
nav{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-left:auto}nav a{color:var(--muted);text-decoration:none}nav a:hover{color:var(--text)}
.theme{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--muted);cursor:pointer}
.theme:hover{color:var(--text)} .theme svg{width:17px;height:17px;display:none}
.theme[data-etat="auto"] .i-auto,.theme[data-etat="light"] .i-clair,.theme[data-etat="dark"] .i-sombre,.theme:not([data-etat]) .i-auto{display:block}
main{max-width:1180px;margin:0 auto;padding:16px 20px 40px}
footer{text-align:center;color:var(--muted);font-size:12px;padding:20px}
h1{font-size:24px;margin:8px 0 14px}h2{font-size:18px;margin:26px 0 10px}h3{font-size:15px;margin:0 0 8px}
a{color:var(--accent)}
table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:8px;font-size:14px}
th,td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:var(--th);font-weight:600}
small,.aide{color:var(--muted);font-size:12.5px}
.carte{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin:0 0 14px}
.etroite{max-width:380px;margin:60px auto}
.grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.chiffre{font-size:28px;font-weight:700;color:var(--accent)}
.deux{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:800px){.deux{grid-template-columns:1fr}}
input,select,textarea,button,.btn{font:inherit;padding:6px 9px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:inherit}
textarea{width:100%;resize:vertical}input:not([type=checkbox]){max-width:100%}
.carte input[name=consigne],.carte input[name=raison],.carte input[name=url_message],.etroite input{width:100%;margin:4px 0 8px}
button,.btn{cursor:pointer;text-decoration:none;display:inline-block}button:hover,.btn:hover{border-color:var(--accent)}
.primaire{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
button.lien{border:0;background:none;color:var(--accent);padding:0 3px}
button[disabled]{opacity:.5;cursor:not-allowed}
.enligne{display:inline}
.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.flash{background:var(--accent-soft);border:1px solid var(--line);border-radius:8px;padding:9px 12px;margin-bottom:14px}
.flash.avert,.avert-texte{background:var(--warn-bg);border-color:var(--warn-line);color:var(--warn-text)}
.avert-texte{padding:6px 9px;border-radius:6px;font-size:13px}
.erreur{color:var(--err)}
.badge{display:inline-block;padding:1px 7px;border-radius:9px;font-size:12px;color:#fff}.vert{background:#2c8a4f}.rouge{background:#b3412e}.orange{background:#a86a12}
.statut{font-size:11.5px;padding:1px 6px;border-radius:5px;background:var(--soft)}
.s-PROPOSED{background:var(--accent-soft)}.s-APPROVED{background:var(--accent-soft);font-weight:600}.s-POSTED{background:var(--accent);color:var(--accent-ink)}.s-IGNORED{color:var(--muted)}.s-FAILED{background:var(--err-soft)}
tr.prioritaire td:first-child b{color:var(--accent-ink);background:var(--accent);padding:1px 6px;border-radius:5px}
tr.intéressante td:first-child b{color:var(--accent)}
.raison{font-style:italic}
.filtres{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.entete-fiche{display:flex;gap:16px;align-items:flex-start}
.score-gros{min-width:84px;text-align:center;font-size:32px;font-weight:700;border-radius:12px;padding:8px;background:var(--soft)}
.score-gros small{font-size:13px;font-weight:400}.score-gros.prioritaire{background:var(--accent);color:var(--accent-ink)}.score-gros.prioritaire small{color:inherit}.score-gros.intéressante{background:var(--accent-soft)}
.texte-source{white-space:pre-wrap;background:var(--soft);border-radius:6px;padding:9px;max-height:320px;overflow:auto;font-size:14px}
.criteres{border:0}.criteres td{border:0;padding:3px 6px}.jauge{width:45%}.jauge span{display:block;height:9px;border-radius:5px;background:linear-gradient(90deg,var(--accent) var(--l),var(--soft) var(--l))}
.proposition.choisie{border:2px solid var(--accent)}
.compteur{text-align:right;margin:2px 0}.compteur.trop{color:var(--err);font-weight:600}
.case{display:block;margin:8px 0}
.barres{display:flex;gap:6px;align-items:flex-end;height:130px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px}
.barre{flex:1;position:relative;height:100%;display:flex;align-items:flex-end;justify-content:center}
.barre span{position:absolute;bottom:16px;width:70%;height:calc(var(--h) * .85);background:var(--barre);border-radius:3px 3px 0 0}
.barre span.p{background:var(--accent);width:40%}.barre small{position:absolute;bottom:0}
.termes{display:flex;flex-wrap:wrap;gap:6px}
.terme{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:2px 9px;font-size:13px}
.terme.besoin{border-color:#6f9fd0}.terme.exclusion{border-color:#d08a7c}.inactif{opacity:.45}
.ligne{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
code{background:var(--soft);padding:1px 4px;border-radius:4px}
.logo-radar{width:30px;height:30px;flex:none;color:var(--accent)}
details.projets{position:relative}details.projets summary{cursor:pointer;color:var(--muted)}
details.projets>div{position:absolute;right:0;z-index:5;display:flex;flex-direction:column;gap:6px;min-width:200px;padding:10px 12px;background:var(--card);border:1px solid var(--line);border-radius:8px}
details.projets a[aria-current]{font-weight:600;color:var(--text)}
a.carte.projet{display:block;color:inherit;text-decoration:none}a.carte.projet:hover{border-color:var(--accent)}a.carte.projet h2{margin:0 0 6px}
details.traduction{margin:4px 0 6px}details.traduction summary{cursor:pointer;color:var(--muted);font-size:13px}
.etroite label{display:block}
