.rd *{box-sizing:border-box;margin:0;padding:0}
.rd{--cream:#FBF6EE;--page:#FAF9F7;--card:#FFF;--ink:#14162B;--ink2:#5A5F72;--muted:#8A8FA0;
 --line:#EDEAE3;--grid:#F1EEE7;--brand:#F7931A;--s1:#EB6834;--s2:#2A78D6;--s3:#1BAF7A;--s4:#EDA100;
 --good:#006300;--bad:#D03B3B;
 font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--page);
 min-height:100vh;-webkit-font-smoothing:antialiased}
.rd button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
.rd input,.rd select{font:inherit;color:inherit}

.rd-top{background:var(--cream);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}
.rd-ti{max-width:1200px;margin:0 auto;padding:13px 24px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.rd-logo{display:flex;align-items:center;gap:0;font-size:19px;font-weight:800;letter-spacing:-.6px}
.rd-logo svg{width:24px;height:24px;margin-right:9px}.rd-logo em{font-style:normal;color:var(--brand)}
.rd-nav{display:flex;gap:2px;flex-wrap:wrap}
.rd-nav button{padding:8px 14px;border-radius:999px;font-size:13.5px;font-weight:600;color:var(--ink2)}
.rd-nav button:hover{background:rgba(20,22,43,.05)}
.rd-nav button[aria-current="page"]{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(20,22,43,.09)}
.rd-r{margin-left:auto;display:flex;align-items:center;gap:9px}
.rd-dev{display:flex;background:#fff;border:1px solid var(--line);border-radius:999px;padding:3px}
.rd-dev button{padding:5px 12px;border-radius:999px;font-size:12.5px;font-weight:700;color:var(--muted)}
.rd-dev button[aria-pressed="true"]{background:var(--ink);color:#fff}
.rd-demo{font-size:11px;font-weight:700;color:#8a5a00;background:#FFF4DC;border:1px solid #F5DFA8;
 padding:5px 11px;border-radius:999px}

.rd-w{max-width:1200px;margin:0 auto;padding:24px 24px 80px}
.rd-intro{margin-bottom:20px}
.rd-intro h1{font-size:26px;font-weight:800;letter-spacing:-1px}
.rd-intro p{font-size:13.5px;color:var(--ink2);margin-top:7px;max-width:660px}
.rd-g{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;align-items:start}
.rd-c{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:20px 22px;position:relative}
.rd-c.l{grid-column:1/-1}
.rd-ch{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px}
.rd-ch h2 a{color:inherit;text-decoration:none;border-bottom:1px solid transparent}
.rd-ch h2 a:hover{border-bottom-color:var(--brand);color:var(--brand)}
.rd-ch h2{font-size:14.5px;font-weight:700;letter-spacing:-.2px}
.rd-ch p{font-size:12.5px;color:var(--muted);margin-top:3px}
.rd-act{margin-left:auto;display:flex;gap:4px;flex:0 0 auto}
.rd-ib{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;color:var(--muted);
 border:1px solid transparent;font-size:12px;font-weight:800}
.rd-ib:hover{background:#F6F2EA;color:var(--ink);border-color:var(--line)}
.rd-ib svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rd-info{display:none;background:#F7F4ED;border-radius:14px;padding:13px 16px;font-size:12.5px;
 color:var(--ink2);margin-bottom:14px}
.rd-info.on{display:block}
.rd-val{font-size:34px;font-weight:800;letter-spacing:-1.4px;line-height:1.05}
.rd-sub{font-size:12.5px;font-weight:600;color:var(--ink2);margin-top:7px}
.up{color:var(--good)}.dn{color:var(--bad)}
.rd-plot{position:relative;width:100%}
.rd-plot svg{display:block;width:100%;overflow:visible}
.rd-tip{position:absolute;pointer-events:none;background:#fff;border:1px solid var(--line);border-radius:14px;
 padding:10px 12px;font-size:12.5px;box-shadow:0 6px 22px rgba(20,22,43,.13);opacity:0;transition:opacity .12s;
 min-width:150px;z-index:5}
.rd-tip b{display:block;font-size:11px;color:var(--muted);font-weight:700;margin-bottom:5px}
.rd-tip div{display:flex;align-items:center;gap:8px;margin-top:3px;font-weight:600}
.rd-tip i{margin-left:auto;font-style:normal;font-variant-numeric:tabular-nums}
.rd-dot{width:9px;height:9px;border-radius:50%;flex:0 0 9px;background:#D8D4CA}
.rd-lg{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;font-weight:600;color:var(--ink2);margin-bottom:10px}
.rd-lg span{display:flex;align-items:center;gap:7px}

.rd-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.rd-chips button{padding:6px 12px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--ink2);
 border:1px solid var(--line);background:#fff}
.rd-chips button[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.rd-chips input{width:80px;padding:6px 9px;border:1px solid var(--line);border-radius:999px;font-size:12.5px;
 font-weight:600;text-align:center}
.rd-lab{font-size:11.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;
 margin-right:4px}
.rd-fld{padding:9px 12px;border:1px solid var(--line);border-radius:12px;font-size:13.5px;font-weight:600;background:#fff}
.rd-rows{display:flex;flex-direction:column}
.rd-row{display:flex;align-items:center;gap:11px;padding:10px 0;border-bottom:1px solid var(--grid);font-size:13.5px}
.rd-row:last-child{border-bottom:none}
.rd-row .nm{font-weight:600}
.rd-row .rt{margin-left:auto;text-align:right;font-variant-numeric:tabular-nums;font-weight:700}
.rd-row .rt small{display:block;font-size:11px;color:var(--muted);font-weight:600}
.rd-meth{font-size:11.5px;color:var(--muted);margin-top:12px}
.rd-meth a{color:var(--s2);font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.rd .rd-bar{grid-column:1/-1;display:flex;justify-content:center;margin-top:-6px}
.rd .rd-add{grid-column:1/-1;border:1.5px dashed #DCD7CC;border-radius:22px;padding:22px;text-align:center;
 font-size:13.5px;font-weight:700;color:var(--ink2);background:transparent}
.rd .rd-add:hover{background:#FDFBF7;border-color:var(--brand);color:var(--ink)}
.rd .rd-cp{border:1.5px solid var(--ink);border-radius:999px;padding:8px 15px;font-size:12.5px;font-weight:700}

.rd-mod{position:fixed;inset:0;background:rgba(20,22,43,.45);z-index:90;display:none;
 align-items:center;justify-content:center;padding:20px}
.rd-mod.on{display:flex}
.rd-box{background:#fff;border-radius:24px;padding:26px;max-width:600px;width:100%;max-height:82vh;overflow:auto}
.rd-box h3{font-size:18px;font-weight:800;letter-spacing:-.5px}
.rd-box>p{font-size:13px;color:var(--muted);margin:6px 0 18px}
.rd-cat{font-size:11.5px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;
 margin:16px 0 8px}
.rd-pick{display:flex;align-items:center;gap:11px;padding:11px 13px;border:1px solid var(--line);
 border-radius:14px;margin-bottom:7px;cursor:pointer;font-size:13.5px;font-weight:600}
.rd-pick:hover{background:#FBF9F4}
.rd-pick[aria-pressed="true"]{border-color:var(--ink);background:#FBF9F4}
.rd-pick i{width:18px;height:18px;border-radius:6px;border:1.5px solid #D3CFC5;flex:0 0 18px;display:grid;
 place-items:center;font-style:normal;font-size:12px;color:#fff}
.rd-pick[aria-pressed="true"] i{background:var(--ink);border-color:var(--ink)}
.rd-pick span{color:var(--muted);font-weight:500;font-size:12px;margin-left:auto;text-align:right}
.rd-close{display:block;margin:18px auto 0;background:var(--ink);color:#fff;border-radius:999px;
 padding:11px 24px;font-size:13.5px;font-weight:700}
.rd-toast{position:fixed;left:50%;transform:translateX(-50%);bottom:26px;background:var(--ink);color:#fff;
 padding:13px 20px;border-radius:14px;font-size:13.5px;font-weight:600;opacity:0;pointer-events:none;
 transition:.25s;z-index:100}
.rd-toast.on{opacity:1;transform:translateX(-50%) translateY(-6px)}
@media(max-width:860px){
 .rd-ti{padding:11px 14px;gap:11px}.rd-w{padding:18px 13px 60px}
 .rd-g{grid-template-columns:1fr}.rd-c{padding:17px 15px;border-radius:18px}
 .rd-intro h1{font-size:21px}.rd-val{font-size:27px}
 .rd-r{width:100%;margin-left:0}.rd-nav button{padding:7px 11px;font-size:12.5px}
}

/* ---- liens de navigation (pages réelles) ---- */
.rd-nav a{padding:8px 14px;border-radius:999px;font-size:13.5px;font-weight:600;color:var(--ink2);
  text-decoration:none;display:inline-block}
.rd-nav a:hover{background:rgba(20,22,43,.05)}
.rd-nav a[aria-current="page"]{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(20,22,43,.09)}
.rd-logo{text-decoration:none;color:inherit}
.rd .rd-w{display:block}
/* Liste des grandes dates : chaque ligne est un interrupteur. Cochée, son repère est
   sur la courbe ; décochée, la ligne s'efface visuellement sans disparaître. */
.rd-ev .rd-evl{display:flex;width:100%;text-align:left;align-items:flex-start;gap:18px;
  padding:13px 12px 13px 10px;border-radius:12px;border-bottom:1px solid var(--line);
  transition:background .15s,opacity .15s}
.rd-ev .rd-evl:last-child{border-bottom:0}
.rd-ev .rd-evl:hover:not([disabled]){background:#FBFAF7}
.rd-ev .rd-evl[aria-pressed="false"]{opacity:.42}
.rd-ev .rd-evl[disabled]{cursor:default;opacity:.62}
.rd-ev .nm{font-weight:600;line-height:1.45;flex:1;min-width:0}
.rd-ev .nm b{font-weight:800;margin-right:6px;color:var(--ink2)}
.rd-ev .nm small{display:block;font-weight:400;color:var(--muted);font-size:12px;margin-top:3px;max-width:62ch}
.rd-ev .nm i{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;
  border-radius:7px;font-style:normal;font-size:11px;font-weight:800;margin-right:9px;vertical-align:2px;
  border:1.5px solid #D8D2C6;background:#fff;color:var(--muted);transition:background .15s,color .15s,border-color .15s}
.rd-ev .rd-evl.on .nm i{background:var(--brand);border-color:var(--brand);color:#fff}
.rd-ev .rt{white-space:nowrap;text-align:right;font-weight:700}
.rd-vide{font-size:13px;color:var(--muted);padding:18px 0}
@media(max-width:600px){.rd-ev .rd-evl{flex-direction:column;gap:5px}.rd-ev .rt{text-align:left}}

/* Maillage interne rendu au build : ces liens doivent exister dans le HTML servi,
   pas seulement après exécution du JavaScript. */
.rd-liens{margin-top:26px;padding-top:16px;border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:12.5px}
.rd-liens span{color:var(--muted);font-weight:600}
.rd-liens a{padding:6px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;
  color:var(--ink2);text-decoration:none;font-weight:600;transition:border-color .15s,color .15s}
.rd-liens a:hover{border-color:var(--brand);color:var(--brand)}
.rd-pied{max-width:1200px;margin:0 auto;padding:26px 24px 50px;border-top:1px solid var(--line);
  font-size:12.5px;color:var(--muted)}
.rd-pied p+p{margin-top:8px}
.rd-pied a{color:var(--s2);font-weight:600;text-decoration:underline;text-underline-offset:3px}
@media(max-width:860px){.rd-nav a{padding:7px 11px;font-size:12.5px}/* Liste des grandes dates : chaque ligne est un interrupteur. Cochée, son repère est
   sur la courbe ; décochée, la ligne s'efface visuellement sans disparaître. */
.rd-ev .rd-evl{display:flex;width:100%;text-align:left;align-items:flex-start;gap:18px;
  padding:13px 12px 13px 10px;border-radius:12px;border-bottom:1px solid var(--line);
  transition:background .15s,opacity .15s}
.rd-ev .rd-evl:last-child{border-bottom:0}
.rd-ev .rd-evl:hover:not([disabled]){background:#FBFAF7}
.rd-ev .rd-evl[aria-pressed="false"]{opacity:.42}
.rd-ev .rd-evl[disabled]{cursor:default;opacity:.62}
.rd-ev .nm{font-weight:600;line-height:1.45;flex:1;min-width:0}
.rd-ev .nm b{font-weight:800;margin-right:6px;color:var(--ink2)}
.rd-ev .nm small{display:block;font-weight:400;color:var(--muted);font-size:12px;margin-top:3px;max-width:62ch}
.rd-ev .nm i{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;
  border-radius:7px;font-style:normal;font-size:11px;font-weight:800;margin-right:9px;vertical-align:2px;
  border:1.5px solid #D8D2C6;background:#fff;color:var(--muted);transition:background .15s,color .15s,border-color .15s}
.rd-ev .rd-evl.on .nm i{background:var(--brand);border-color:var(--brand);color:#fff}
.rd-ev .rt{white-space:nowrap;text-align:right;font-weight:700}
.rd-vide{font-size:13px;color:var(--muted);padding:18px 0}
@media(max-width:600px){.rd-ev .rd-evl{flex-direction:column;gap:5px}.rd-ev .rt{text-align:left}}

/* Maillage interne rendu au build : ces liens doivent exister dans le HTML servi,
   pas seulement après exécution du JavaScript. */
.rd-liens{margin-top:26px;padding-top:16px;border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:12.5px}
.rd-liens span{color:var(--muted);font-weight:600}
.rd-liens a{padding:6px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;
  color:var(--ink2);text-decoration:none;font-weight:600;transition:border-color .15s,color .15s}
.rd-liens a:hover{border-color:var(--brand);color:var(--brand)}
.rd-pied{padding:20px 14px 40px}}

/* ---------- ligne d'état et panneau de réglages ---------- */
.rd-bas{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;
  margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
/* `.rd .rd-etat` et non `.rd-etat` : la règle générale `.rd button{font:inherit}` a une
   spécificité plus forte et écrasait la taille, la ligne d'état sortait donc à 16 px au
   lieu de 11,5. C'est pour ça qu'elle ne ressemblait pas à la source juste à côté. */
.rd .rd-etat{display:inline-flex;align-items:center;gap:7px;padding:5px 12px 5px 10px;border:1px solid var(--line);
  border-radius:999px;background:#FCFBF8;cursor:pointer;font:inherit;font-size:11.5px;font-weight:400;
  letter-spacing:0;color:var(--muted);text-align:left;transition:border-color .15s,background .15s}
.rd .rd-etat:hover{border-color:var(--brand);background:#FEF9F2}
.rd .rd-etat.on{border-color:var(--brand);background:#FEF6EC;color:var(--ink2)}
.rd .rd-etat svg{width:12.5px;height:12.5px;fill:none;stroke:currentColor;stroke-width:2;flex:0 0 auto;opacity:.8}
.rd-src{font-size:11.5px;color:var(--muted);text-align:right}
.rd-pan{display:none;border:1px solid var(--line);border-radius:18px;background:#FBFAF7;
  padding:6px 18px 14px;margin-top:12px}
.rd-pan.on{display:block}
.rd-rg{display:grid;grid-template-columns:104px 1fr;gap:14px;align-items:start;
  padding:13px 0;border-bottom:1px solid #EFEBE2}
.rd-rg:last-of-type{border-bottom:0}
.rd-rg-l{font-size:11.5px;font-weight:700;color:var(--muted);text-transform:uppercase;
  letter-spacing:.07em;padding-top:8px}
.rd-rg-c{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.rd-rg-n{flex-basis:100%;font-size:11.5px;color:var(--muted)}
.rd-seg{display:inline-flex;background:#F1EDE4;border-radius:999px;padding:3px;gap:2px}
.rd-seg button{padding:6px 14px;border-radius:999px;font-size:12.5px;font-weight:600;
  color:var(--ink2);white-space:nowrap;transition:background .15s,color .15s}
.rd-seg button:hover{color:var(--ink)}
.rd-seg button[aria-pressed="true"]{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(20,22,43,.14)}
.rd-tog{display:inline-flex;align-items:center;gap:7px;padding:6px 14px 6px 11px;border:1px solid var(--line);
  border-radius:999px;background:#fff;font-size:12.5px;font-weight:600;color:var(--ink2);
  transition:border-color .15s,color .15s}
.rd-tog::before{content:"";width:14px;height:14px;border-radius:5px;border:1.5px solid #D8D2C6;
  background:#fff;flex:0 0 auto;transition:background .15s,border-color .15s}
.rd-tog[aria-pressed="true"]{border-color:var(--brand);color:var(--ink)}
.rd-tog[aria-pressed="true"]::before{background:var(--brand);border-color:var(--brand);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
  background-size:11px;background-position:center;background-repeat:no-repeat}
.rd-perso{display:inline-flex;align-items:center;gap:8px}
.rd-perso input{width:74px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;
  background:#fff;font:inherit;font-size:12.5px;font-weight:600;color:var(--ink)}
.rd-perso input:focus{outline:2px solid var(--brand);outline-offset:1px;border-color:transparent}
.rd-perso.on input{border-color:var(--brand)}
.rd-pan .rd-chips:last-of-type{margin-bottom:0}
.rd-pied-pan{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  margin-top:14px;padding-top:13px;border-top:1px solid #EFEBE2}
.rd-pied-pan > span{font-size:11.5px;color:var(--muted)}
.rd .rd-std{font-size:11.5px;font-weight:600;color:var(--muted);padding:6px 14px;
  border:1px solid var(--line);border-radius:999px;background:#fff;transition:border-color .15s,color .15s}
.rd .rd-std:hover{border-color:var(--brand);color:var(--brand)}
.rd-std:hover{border-color:var(--ink);color:var(--ink)}
@media(max-width:700px){
 .rd-rg{grid-template-columns:1fr;gap:8px}.rd-rg-l{padding-top:0}
 .rd-pan{padding:4px 13px 12px}.rd-bas{flex-direction:column;align-items:flex-start;gap:9px}
  .rd .rd-etat{white-space:normal}.rd-src{text-align:left}}

.rd-c .bd + .rd-lg{margin-top:14px}
