/* Livre blanc Spot The Doc : composants communs (page de lecture et PDF).
   Tout est en em : la page web fixe la taille de base a 17px, le PDF a 9.4pt. */

.lb{--lb-ink:#0A1433;--lb-ink2:#435072;--lb-ink3:#56627F;--lb-line:#DFE5F4;--lb-line2:#CBD5EE;--lb-brume:#F3F6FF;--lb-marine:#07133F;
  --lb-night:#040B26;--lb-blue:#2D7EFF;--lb-blue-ink:#1E5BD8;--lb-blue-l:#8DB4FF;--lb-blue-w:#EAF1FF;--lb-yellow:#FFD23F;--lb-green:#0CA678;
  --lb-green-w:#E3F7EF;--lb-amber:#D97706;--lb-amber-w:#FFF3DF;--lb-red:#D64545;--lb-red-w:#FDEBEB;--lb-grey:#B3BFE0}

/* ------------------------------------------------ typographie de lecture */
.lb .lb-k{display:inline-flex;align-items:center;gap:.6em;margin:0 0 1em;font-weight:700;font-size:.74em;letter-spacing:.16em;text-transform:uppercase;color:var(--lb-blue-ink)}
.lb .lb-k svg{width:1.3em;height:1.3em}
.lb h2.lb-h2{font-weight:800;font-size:2.3em;line-height:1.06;letter-spacing:-.04em;color:var(--lb-ink);text-wrap:balance;margin:0 0 .55em}
.lb h3.lb-h3{font-weight:800;font-size:1.32em;line-height:1.22;letter-spacing:-.022em;color:var(--lb-ink);text-wrap:balance;margin:1.7em 0 .55em}
.lb h4.lb-h4{font-weight:700;font-size:1em;line-height:1.3;color:var(--lb-ink);margin:0 0 .35em}
.lb p{margin:0 0 .95em;text-wrap:pretty}
.lb .lb-lead{font-size:1.2em;line-height:1.55;color:var(--lb-ink2)}
.lb strong,.lb b{font-weight:700;color:var(--lb-ink)}
.lb .lb-ref{font-size:.62em;font-weight:700;vertical-align:.55em;line-height:0;margin-left:.08em}
.lb .lb-ref a{color:var(--lb-blue-ink);text-decoration:none;padding:0 .12em}
.lb ul.lb-list{margin:0 0 1em;padding:0;list-style:none}
.lb ul.lb-list li{position:relative;padding-left:1.35em;margin:0 0 .5em}
.lb ul.lb-list li::before{content:"";position:absolute;left:.2em;top:.62em;width:.42em;height:.42em;border-radius:50%;background:var(--lb-blue)}

/* citation mise en avant */
.lb .lb-pull{margin:1.6em 0;padding:.2em 0 .2em 1em;border-left:.22em solid var(--lb-yellow);font-weight:700;font-size:1.45em;line-height:1.3;letter-spacing:-.02em;color:var(--lb-marine);text-wrap:balance}
.lb .lb-pull span{display:block;margin-top:.5em;font-weight:500;font-size:.55em;letter-spacing:0;color:var(--lb-ink3)}

/* encadres */
.lb .lb-box{margin:1.4em 0;padding:1.15em 1.3em;border-radius:.9em;background:var(--lb-brume);border:1px solid var(--lb-line)}
.lb .lb-box > :last-child{margin-bottom:0}
.lb .lb-box .lb-box-k{display:flex;align-items:center;gap:.5em;margin:0 0 .55em;font-weight:800;font-size:.78em;letter-spacing:.12em;text-transform:uppercase;color:var(--lb-blue-ink)}
.lb .lb-box .lb-box-k svg{width:1.35em;height:1.35em}
.lb .lb-box.tip{background:#FFFBEB;border-color:#F6E7A8}
.lb .lb-box.tip .lb-box-k{color:#8A6100}
.lb .lb-box.dark{background:var(--lb-marine);border-color:var(--lb-marine);color:#C9D3F0}
.lb .lb-box.dark b,.lb .lb-box.dark strong{color:#fff}
.lb .lb-box.dark .lb-box-k{color:var(--lb-yellow)}

/* figure : titre, visuel, legende et source */
.lb .lb-fig{margin:1.8em 0}
.lb .lb-fig-t{margin:0 0 .25em;font-weight:800;font-size:1.02em;line-height:1.3;color:var(--lb-ink)}
.lb .lb-fig-s{margin:0 0 .9em;font-size:.86em;color:var(--lb-ink3)}
.lb .lb-fig-src{margin:.8em 0 0;font-size:.74em;line-height:1.45;color:var(--lb-ink3)}
.lb .lb-fig-src b{color:var(--lb-ink2);font-weight:700}

/* ------------------------------------------------ chiffres */
.lb .lb-stats{display:grid;grid-template-columns:repeat(var(--n,3),1fr);gap:1px;background:var(--lb-line);border:1px solid var(--lb-line);border-radius:1em;overflow:hidden}
.lb .lb-stat{background:#fff;padding:1.2em 1.2em 1.1em}
.lb .lb-stat b{display:block;font-weight:800;font-size:2.5em;line-height:1;letter-spacing:-.045em;color:var(--lb-marine)}
.lb .lb-stat b small{font-size:.5em;letter-spacing:-.02em;margin-left:.08em}
.lb .lb-stat span{display:block;margin-top:.55em;font-size:.86em;line-height:1.4;color:var(--lb-ink2)}
.lb .lb-stat i{display:block;margin-top:.6em;font-style:normal;font-size:.7em;color:var(--lb-ink3)}
.lb .on-marine .lb-stats{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.12)}
.lb .on-marine .lb-stat{background:var(--lb-marine)}
.lb .on-marine .lb-stat b{color:#fff}
.lb .on-marine .lb-stat b em{font-style:normal;color:var(--lb-yellow)}
.lb .on-marine .lb-stat span{color:#C9D3F0}
.lb .on-marine .lb-stat i{color:#8D9CC8}

/* ------------------------------------------------ graphiques */
.lb .lb-chart{position:relative}
.lb .lb-chart svg{display:block;width:100%;height:auto;overflow:visible}
.lb .lb-chart .grid line{stroke:#E6EBF7;stroke-width:1}
.lb .lb-chart .ax text,.lb .lb-chart text.ax{font-family:inherit;font-size:11px;fill:var(--lb-ink3);font-variant-numeric:tabular-nums}
.lb .lb-chart .lbl{font-family:inherit;font-size:12px;font-weight:700;fill:var(--lb-ink)}
.lb .lb-chart .lbl2{font-family:inherit;font-size:11px;fill:var(--lb-ink2)}
.lb .lb-chart .big{font-family:inherit;font-size:22px;font-weight:800;fill:var(--lb-marine);letter-spacing:-.03em}
.lb .lb-chart .c-ln{fill:none;stroke:var(--lb-blue);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.lb .lb-chart .c-ar{fill:var(--lb-blue);opacity:.1}
.lb .lb-chart .c-pt{fill:var(--lb-blue);stroke:#fff;stroke-width:2}
.lb .lb-chart .c-pt.c-hl{fill:var(--lb-yellow);stroke:var(--lb-marine);stroke-width:2}
.lb .lb-chart .c-bar{fill:var(--lb-blue)}
.lb .lb-chart .c-bar.c-mute{fill:var(--lb-grey)}
.lb .lb-chart .track{fill:#EEF2FB}
.lb details.lb-data{margin-top:.8em;font-size:.82em;color:var(--lb-ink2)}
.lb details.lb-data summary{cursor:pointer;font-weight:700;color:var(--lb-blue-ink)}
.lb details.lb-data table{margin-top:.6em}

/* ------------------------------------------------ tableaux */
.lb table.lb-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9em;line-height:1.45}
.lb table.lb-table th,.lb table.lb-table td{padding:.7em .85em;text-align:left;vertical-align:top;border-bottom:1px solid var(--lb-line)}
.lb table.lb-table thead th{font-weight:800;font-size:.82em;letter-spacing:.06em;text-transform:uppercase;color:var(--lb-ink3);border-bottom:2px solid var(--lb-line2)}
.lb table.lb-table tbody th{font-weight:700;color:var(--lb-ink);width:24%}
.lb table.lb-table code{font-family:var(--mono,ui-monospace,Menlo,monospace);font-size:.92em;background:var(--lb-brume);border:1px solid var(--lb-line);border-radius:.35em;padding:.05em .35em;color:var(--lb-marine);white-space:nowrap}
.lb table.lb-table tr.lb-same td{background:var(--lb-green-w);font-weight:600;color:#085C44}

/* ------------------------------------------------ parcours du patient */
.lb .lb-path{display:grid;grid-template-columns:repeat(6,1fr);gap:.7em;counter-reset:st;position:relative}
.lb .lb-path::before{content:"";position:absolute;left:1.45em;right:calc((100% - 3.5em) / 6 - 1.45em);top:1.45em;height:2px;background:linear-gradient(90deg,var(--lb-blue-l),var(--lb-blue))}
.lb .lb-path li{position:relative;list-style:none;padding-top:3.3em}
.lb .lb-path li::before{counter-increment:st;content:counter(st);position:absolute;top:0;left:0;width:2.9em;height:2.9em;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid var(--lb-blue);font-weight:800;color:var(--lb-blue-ink);font-size:1em}
.lb .lb-path li.hl::before{background:var(--lb-yellow);border-color:var(--lb-marine);color:var(--lb-marine)}
.lb .lb-path b{display:block;font-weight:800;font-size:.95em;line-height:1.25;margin-bottom:.35em;color:var(--lb-ink)}
.lb .lb-path span{display:block;font-size:.8em;line-height:1.45;color:var(--lb-ink2)}
.lb .lb-path em{display:block;margin-top:.45em;font-style:normal;font-size:.74em;line-height:1.4;color:var(--lb-blue-ink);font-weight:600}
ol.lb-path{margin:0;padding:0}

/* ------------------------------------------------ deux chemins */
.lb .lb-two{display:grid;grid-template-columns:1fr auto 1fr;gap:1em;align-items:stretch}
.lb .lb-two > div{padding:1.1em 1.2em;border-radius:.9em;border:1px solid var(--lb-line);background:#fff}
.lb .lb-two > div h4{display:flex;align-items:center;gap:.5em}
.lb .lb-two > div h4 svg{width:1.25em;height:1.25em;color:var(--lb-blue)}
.lb .lb-two > div p{font-size:.88em;color:var(--lb-ink2);margin:0}
.lb .lb-two .lb-two-mid{display:grid;place-items:center;border:0;background:none;padding:0;font-weight:800;font-size:.75em;letter-spacing:.12em;text-transform:uppercase;color:var(--lb-ink3)}
.lb .lb-two-base{margin-top:.8em;padding:.8em 1.1em;border-radius:.9em;background:var(--lb-marine);color:#fff;font-weight:700;font-size:.92em;text-align:center}
.lb .lb-two-base span{color:var(--lb-yellow)}

/* ------------------------------------------------ maquettes d'interface (abstraites, sans nom reel) */
.lb .mk{--mk-r:.8em;position:relative;border-radius:var(--mk-r);background:#fff;border:1px solid var(--lb-line2);box-shadow:0 1px 2px rgba(7,19,63,.05),0 18px 40px -24px rgba(7,19,63,.35);overflow:hidden;font-size:.86em;color:var(--lb-ink)}
.lb .mk-bar{display:flex;align-items:center;gap:.6em;padding:.75em 1em;border-bottom:1px solid var(--lb-line)}
.lb .mk-q{flex:1;display:flex;align-items:center;gap:.55em;padding:.5em .9em;border-radius:99px;border:1px solid var(--lb-line2);font-weight:600;color:var(--lb-ink)}
.lb .mk-q svg{width:1.1em;height:1.1em;color:var(--lb-ink3)}
.lb .mk-g{width:1.3em;height:1.3em;flex:none}
.lb .mk-body{padding:1em}
.lb .mk-l{display:block;height:.55em;border-radius:99px;background:#E8EDF8;margin:.42em 0}
.lb .mk-l.w55{width:55%}.lb .mk-l.w78{width:78%}.lb .mk-l.w35{width:35%}
.lb .mk-zone{position:relative;border-radius:.6em;padding:.8em .9em;margin-bottom:.7em;border:1px solid var(--lb-line)}
.lb .mk-zone:last-child{margin-bottom:0}
.lb .mk-zone.mk-ai{background:linear-gradient(180deg,#F4F7FF,#fff);border-color:#D6E2FF}
.lb .mk-zone-k{display:flex;align-items:center;gap:.45em;font-weight:700;font-size:.82em;color:var(--lb-blue-ink);margin-bottom:.35em}
.lb .mk-zone-k svg{width:1.15em;height:1.15em}
.lb .mk-chips{display:flex;gap:.4em;flex-wrap:wrap;margin-top:.55em}
.lb .mk-chip{display:inline-flex;align-items:center;gap:.35em;padding:.25em .6em;border-radius:99px;background:#fff;border:1px solid var(--lb-line2);font-size:.78em;font-weight:600;color:var(--lb-ink2)}
.lb .mk-chip i{width:.95em;height:.95em;border-radius:.2em;background:var(--lb-blue-l);display:inline-block}
.lb .mk-map{display:grid;grid-template-columns:38% 1fr;gap:.8em}
.lb .mk-mapart{border-radius:.5em;min-height:7.5em;background:
  radial-gradient(circle at 30% 40%,var(--lb-red) 0 .32em,transparent .34em),
  radial-gradient(circle at 62% 62%,var(--lb-red) 0 .32em,transparent .34em),
  radial-gradient(circle at 70% 28%,var(--lb-red) 0 .32em,transparent .34em),
  linear-gradient(115deg,transparent 46%,#fff 46% 50%,transparent 50%),
  linear-gradient(28deg,transparent 60%,#fff 60% 63%,transparent 63%),
  #E4ECD9}
.lb .mk-place{display:flex;align-items:center;justify-content:space-between;gap:.6em;padding:.38em 0;border-bottom:1px solid #EEF2FB}
.lb .mk-place:last-child{border-bottom:0}
.lb .mk-place b{font-size:.92em}
.lb .mk-stars{color:#F4B400;letter-spacing:.05em;font-size:.9em;white-space:nowrap}
.lb .mk-stars span{color:var(--lb-ink3);letter-spacing:0;font-size:.85em;margin-left:.3em}
.lb .mk-res{padding:.45em 0;border-bottom:1px solid #EEF2FB}
.lb .mk-res:last-child{border-bottom:0}
.lb .mk-res u{display:block;text-decoration:none;font-size:.74em;color:var(--lb-ink3)}
.lb .mk-res b{display:block;color:#1A3FB0;font-weight:700;font-size:.95em}
.lb .mk-pin{position:absolute;right:-.75em;top:.65em;width:1.7em;height:1.7em;border-radius:50%;display:grid;place-items:center;background:var(--lb-yellow);color:var(--lb-marine);font-weight:800;font-size:.92em;box-shadow:0 0 0 .2em #fff}

/* maquette annotee : maquette + notes numerotees */
.lb .lb-anno{display:grid;grid-template-columns:1.15fr .85fr;gap:1.6em;align-items:start}
.lb .lb-notes{margin:0;padding:0;list-style:none}
.lb .lb-notes li{position:relative;padding:0 0 0 2.4em;margin:0 0 1em;font-size:.9em;line-height:1.45;color:var(--lb-ink2)}
.lb .lb-notes li b{display:block;color:var(--lb-ink);margin-bottom:.15em}
.lb .lb-notes li i{position:absolute;left:0;top:-.05em;width:1.7em;height:1.7em;border-radius:50%;display:grid;place-items:center;background:var(--lb-yellow);color:var(--lb-marine);font-style:normal;font-weight:800;font-size:.95em}

/* conversation avec un assistant */
.lb .mk-chat{padding:1em;display:grid;gap:.8em}
.lb .mk-ask{justify-self:end;max-width:82%;padding:.65em .9em;border-radius:1em 1em .25em 1em;background:var(--lb-marine);color:#fff;font-weight:600;line-height:1.4}
.lb .mk-ans{max-width:94%;line-height:1.55;color:var(--lb-ink)}
.lb .mk-ans p{margin:0 0 .5em}
.lb .mk-cite{display:inline-grid;place-items:center;min-width:1.35em;height:1.35em;padding:0 .3em;border-radius:.4em;background:var(--lb-blue-w);color:var(--lb-blue-ink);font-weight:800;font-size:.72em;vertical-align:.12em}
.lb .mk-srcs{display:grid;gap:.4em;padding-top:.7em;border-top:1px solid var(--lb-line)}
.lb .mk-src{display:flex;align-items:center;gap:.55em;font-size:.82em;color:var(--lb-ink2)}
.lb .mk-src .mk-cite{flex:none}
.lb .mk-src b{color:var(--lb-ink);font-weight:700}
.lb .mk-engines{display:flex;align-items:center;gap:.55em;padding:.7em 1em;border-top:1px solid var(--lb-line);background:var(--lb-brume);font-size:.76em;color:var(--lb-ink3)}
.lb .mk-engines img{width:1.35em;height:1.35em}

/* page qui repond : maquette de page de site */
.lb .mk-page .mk-body{padding:1.1em 1.2em}
.lb .mk-crumb{font-size:.72em;color:var(--lb-ink3);margin-bottom:.5em}
.lb .mk-h1{font-weight:800;font-size:1.25em;line-height:1.2;letter-spacing:-.02em;margin:0 0 .5em}
.lb .mk-answer{padding:.65em .8em;border-radius:.5em;background:var(--lb-green-w);border-left:.22em solid var(--lb-green);font-size:.9em;line-height:1.5;margin-bottom:.8em}
.lb .mk-h2{font-weight:800;font-size:.92em;margin:.75em 0 .2em}
.lb .mk-faq{display:grid;gap:.3em;margin-top:.3em}
.lb .mk-faq span{display:flex;justify-content:space-between;padding:.4em .6em;border-radius:.4em;background:var(--lb-brume);font-size:.8em;font-weight:600}
.lb .mk-sign{display:flex;align-items:center;gap:.6em;margin-top:.8em;padding-top:.7em;border-top:1px solid var(--lb-line);font-size:.78em;color:var(--lb-ink2)}
.lb .mk-sign i{width:2.1em;height:2.1em;border-radius:50%;background:linear-gradient(135deg,#C9D6F5,#8DB4FF);flex:none}
.lb .mk-sign b{color:var(--lb-ink)}
.lb .mk-cta{display:inline-block;margin-top:.7em;padding:.45em .9em;border-radius:99px;background:var(--lb-yellow);font-weight:800;font-size:.78em;color:var(--lb-marine)}
.lb .mk-code{margin-top:.8em;padding:.5em .7em;border-radius:.4em;background:var(--lb-marine);color:#8DB4FF;font-family:var(--mono,ui-monospace,Menlo,monospace);font-size:.68em}

/* code JSON-LD */
.lb pre.lb-code{margin:0;padding:1.1em 1.2em;border-radius:.9em;background:var(--lb-night);color:#C9D3F0;font-family:var(--mono,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:.74em;line-height:1.6;overflow:auto;white-space:pre}
.lb pre.lb-code .cc{color:#6F7FA8}
.lb pre.lb-code .ck{color:#8DB4FF}
.lb pre.lb-code .cs{color:#FFD23F}
.lb .lb-machine{display:grid;gap:.45em}
.lb .lb-machine div{display:grid;grid-template-columns:7.5em 1fr;gap:.6em;padding:.55em .75em;border-radius:.55em;background:#fff;border:1px solid var(--lb-line);font-size:.84em}
.lb .lb-machine dt{font-weight:700;color:var(--lb-ink3);margin:0}
.lb .lb-machine dd{margin:0;font-weight:600;color:var(--lb-ink)}
.lb .lb-split{display:grid;grid-template-columns:1.1fr .9fr;gap:1.2em;align-items:start}

/* cycle des avis */
.lb .lb-cycle{display:grid;grid-template-columns:repeat(5,1fr);gap:.6em}
.lb .lb-cycle div{position:relative;padding:.9em .8em;border-radius:.8em;background:#fff;border:1px solid var(--lb-line)}
.lb .lb-cycle div:not(:last-child)::after{content:"";position:absolute;right:-.62em;top:50%;width:.62em;height:2px;background:var(--lb-blue-l)}
.lb .lb-cycle svg{width:1.4em;height:1.4em;color:var(--lb-blue);margin-bottom:.4em}
.lb .lb-cycle b{display:block;font-size:.86em;line-height:1.25;margin-bottom:.25em}
.lb .lb-cycle span{display:block;font-size:.74em;line-height:1.4;color:var(--lb-ink2)}
.lb .lb-cycle-back{margin-top:.6em;font-size:.78em;color:var(--lb-ink3);text-align:center}

/* modeles de reponse aux avis */
.lb .lb-replies{display:grid;gap:.9em}
.lb .lb-reply{border-radius:.9em;border:1px solid var(--lb-line);background:#fff;overflow:hidden}
.lb .lb-reply-h{display:flex;align-items:center;justify-content:space-between;gap:1em;padding:.7em 1em;background:var(--lb-brume);border-bottom:1px solid var(--lb-line)}
.lb .lb-reply-h b{font-size:.9em}
.lb .lb-reply-h .mk-stars{font-size:.9em}
.lb .lb-reply-a{padding:.75em 1em 0;font-size:.84em;color:var(--lb-ink2);font-style:italic}
.lb .lb-reply-r{padding:.6em 1em .85em;font-size:.88em;line-height:1.55}
.lb .lb-reply-r::before{content:"Réponse du cabinet";display:block;font-weight:800;font-size:.72em;letter-spacing:.1em;text-transform:uppercase;color:var(--lb-green);margin-bottom:.3em}
.lb .lb-reply-why{padding:.55em 1em;border-top:1px dashed var(--lb-line2);font-size:.76em;color:var(--lb-ink3)}
.lb .lb-reply-why b{color:var(--lb-ink2)}

/* E-E-A-T */
.lb .lb-eeat{display:grid;grid-template-columns:repeat(4,1fr);gap:.7em}
.lb .lb-eeat div{padding:1em .95em;border-radius:.9em;background:#fff;border:1px solid var(--lb-line)}
.lb .lb-eeat big{display:block;font-weight:800;font-size:2.2em;line-height:1;letter-spacing:-.04em;color:var(--lb-blue)}
.lb .lb-eeat b{display:block;margin:.35em 0 .3em;font-size:.95em}
.lb .lb-eeat span{display:block;font-size:.8em;line-height:1.45;color:var(--lb-ink2)}
.lb .lb-eeat em{display:block;margin-top:.55em;padding-top:.5em;border-top:1px solid var(--lb-line);font-style:normal;font-size:.76em;line-height:1.4;color:var(--lb-blue-ink);font-weight:600}

/* mecanisme en quatre temps */
.lb .lb-mech{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-radius:1em;overflow:hidden;border:1px solid var(--lb-line)}
.lb .lb-mech div{position:relative;padding:1.1em 1em 1.1em;background:#fff}
.lb .lb-mech div + div{border-left:1px solid var(--lb-line)}
.lb .lb-mech i{display:block;font-style:normal;font-weight:800;font-size:.75em;letter-spacing:.14em;color:var(--lb-blue-ink);margin-bottom:.6em}
.lb .lb-mech svg{width:1.6em;height:1.6em;color:var(--lb-marine);margin-bottom:.45em}
.lb .lb-mech b{display:block;font-size:1em;margin-bottom:.3em}
.lb .lb-mech span{display:block;font-size:.8em;line-height:1.45;color:var(--lb-ink2)}
.lb .lb-mech div:last-child{background:var(--lb-marine)}
.lb .lb-mech div:last-child b{color:#fff}
.lb .lb-mech div:last-child span{color:#C9D3F0}
.lb .lb-mech div:last-child i{color:var(--lb-yellow)}
.lb .lb-mech div:last-child svg{color:var(--lb-yellow)}

/* feu vert, vigilance, interdit */
.lb .lb-lights{display:grid;grid-template-columns:repeat(3,1fr);gap:.8em}
.lb .lb-light{border-radius:.9em;padding:1em 1.05em;border:1px solid}
.lb .lb-light h4{display:flex;align-items:center;gap:.5em;font-size:.95em;margin-bottom:.6em}
.lb .lb-light h4 i{width:.8em;height:.8em;border-radius:50%;display:inline-block}
.lb .lb-light ul{margin:0;padding:0;list-style:none}
.lb .lb-light li{font-size:.8em;line-height:1.45;padding:.42em 0;border-top:1px solid rgba(7,19,63,.07);color:var(--lb-ink)}
.lb .lb-light li:first-child{border-top:0}
.lb .lb-light.l-go{background:var(--lb-green-w);border-color:#BDE9D6}.lb .lb-light.l-go h4{color:#08704F}.lb .lb-light.l-go h4 i{background:var(--lb-green)}
.lb .lb-light.l-care{background:var(--lb-amber-w);border-color:#F6D9A6}.lb .lb-light.l-care h4{color:#8F4F00}.lb .lb-light.l-care h4 i{background:var(--lb-amber)}
.lb .lb-light.l-no{background:var(--lb-red-w);border-color:#F4C6C6}.lb .lb-light.l-no h4{color:#A12A2A}.lb .lb-light.l-no h4 i{background:var(--lb-red)}

/* texte de loi */
.lb blockquote.lb-law{margin:1.4em 0;padding:1.3em 1.4em 1.2em;border-radius:1em;background:var(--lb-marine);color:#E6EBFA;font-size:1em;line-height:1.6}
.lb blockquote.lb-law p{margin:0 0 .7em}
.lb blockquote.lb-law cite{display:block;font-style:normal;font-size:.74em;letter-spacing:.06em;color:var(--lb-blue-l);font-weight:700;text-transform:uppercase}
.lb blockquote.lb-law mark{background:none;color:var(--lb-yellow);font-weight:700}

/* frise 90 jours */
.lb .lb-gantt{display:grid;grid-template-columns:9.5em repeat(12,1fr);gap:.28em .2em;font-size:.82em;align-items:center}
.lb .lb-gantt .lgt-h{font-weight:800;font-size:.78em;letter-spacing:.08em;text-transform:uppercase;color:var(--lb-ink3);text-align:center;padding-bottom:.35em}
.lb .lb-gantt .lgt-p{grid-column:span 4;text-align:center;font-weight:800;font-size:.8em;padding:.45em 0;border-radius:.5em;color:var(--lb-marine)}
.lb .lb-gantt .lgt-p.p1{background:#E4EDFF}.lb .lb-gantt .lgt-p.p2{background:#D4E3FF}.lb .lb-gantt .lgt-p.p3{background:var(--lb-yellow)}
.lb .lb-gantt .lgt-r{font-weight:700;color:var(--lb-ink);line-height:1.25;padding-right:.4em}
.lb .lb-gantt .lgt-b{height:1.9em;border-radius:.45em;background:var(--lb-blue);color:#fff;font-weight:700;font-size:.78em;display:flex;align-items:center;padding:0 .6em;white-space:nowrap;overflow:hidden}
.lb .lb-gantt .lgt-b.gl{background:#7FA9FF}
.lb .lb-gantt .lgt-b.gy{background:var(--lb-yellow);color:var(--lb-marine)}
.lb .lb-gantt .lgt-w{height:1.9em}
.lb .lb-phases{display:grid;grid-template-columns:repeat(3,1fr);gap:.8em;margin-top:1.2em}
.lb .lb-phase{border-radius:.9em;padding:1em 1.05em;background:#fff;border:1px solid var(--lb-line)}
.lb .lb-phase i{display:block;font-style:normal;font-weight:800;font-size:.72em;letter-spacing:.14em;text-transform:uppercase;color:var(--lb-blue-ink)}
.lb .lb-phase b{display:block;font-size:1.1em;margin:.2em 0 .5em}
.lb .lb-phase ul{margin:0;padding:0;list-style:none}
.lb .lb-phase li{position:relative;padding-left:1.25em;font-size:.82em;line-height:1.45;margin:0 0 .45em;color:var(--lb-ink2)}
.lb .lb-phase li::before{content:"";position:absolute;left:0;top:.35em;width:.7em;height:.7em;border-radius:.2em;border:1.5px solid var(--lb-blue)}

/* auto-diagnostic */
.lb .lb-check{display:grid;grid-template-columns:1fr 1fr;gap:1em}
.lb .lb-check fieldset{margin:0;padding:1em 1.05em .6em;border-radius:.9em;border:1px solid var(--lb-line);background:#fff;min-width:0}
.lb .lb-check legend{float:left;width:100%;display:flex;align-items:center;gap:.5em;padding:0;margin:0 0 .5em;font-weight:800;font-size:.92em;color:var(--lb-ink)}
.lb .lb-check legend svg{width:1.25em;height:1.25em;color:var(--lb-blue)}
.lb .lb-check label{clear:both;display:flex;gap:.65em;align-items:flex-start;padding:.42em 0;border-top:1px solid #EEF2FB;font-size:.84em;line-height:1.4;color:var(--lb-ink2);cursor:pointer}
.lb .lb-check input{appearance:none;-webkit-appearance:none;flex:none;width:1.25em;height:1.25em;margin:.05em 0 0;border-radius:.35em;border:1.5px solid var(--lb-line2);background:#fff;display:grid;place-items:center;cursor:pointer}
.lb .lb-check input:checked{background:var(--lb-blue);border-color:var(--lb-blue)}
.lb .lb-check input:checked::after{content:"";width:.34em;height:.62em;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-.08em) rotate(45deg)}
.lb .lb-check input:focus-visible{outline:3px solid var(--lb-blue);outline-offset:2px}
.lb .lb-scale{display:grid;grid-template-columns:repeat(3,1fr);gap:.7em;margin-top:1em}
.lb .lb-scale div{padding:.8em .95em;border-radius:.8em;border:1px solid var(--lb-line);background:#fff;font-size:.82em;line-height:1.45;color:var(--lb-ink2)}
.lb .lb-scale b{display:block;font-size:1.05em;color:var(--lb-ink);margin-bottom:.15em}
.lb .lb-scale div.on{border-color:var(--lb-blue);box-shadow:0 0 0 2px var(--lb-blue) inset;background:var(--lb-blue-w)}

/* indicateurs */
.lb .lb-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:.8em}
.lb .lb-kpi{padding:1em 1.05em;border-radius:.9em;background:#fff;border:1px solid var(--lb-line)}
.lb .lb-kpi svg{width:1.45em;height:1.45em;color:var(--lb-blue);margin-bottom:.45em}
.lb .lb-kpi b{display:block;font-size:.95em;margin-bottom:.3em}
.lb .lb-kpi span{display:block;font-size:.8em;line-height:1.45;color:var(--lb-ink2)}
.lb .lb-kpi em{display:block;margin-top:.55em;font-style:normal;font-size:.72em;font-weight:700;letter-spacing:.04em;color:var(--lb-ink3)}

/* glossaire, sources */
.lb dl.lb-gloss{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:.2em 2em}
.lb dl.lb-gloss div{padding:.6em 0;border-top:1px solid var(--lb-line);break-inside:avoid}
.lb dl.lb-gloss dt{font-weight:800;font-size:.92em;color:var(--lb-ink);margin-bottom:.15em}
.lb dl.lb-gloss dd{margin:0;font-size:.84em;line-height:1.5;color:var(--lb-ink2)}
.lb ol.lb-sources{margin:0;padding:0 0 0 1.6em;font-size:.8em;line-height:1.5;color:var(--lb-ink2)}
.lb ol.lb-sources li{margin:0 0 .55em;padding-left:.3em;break-inside:avoid}
.lb ol.lb-sources li::marker{font-weight:800;color:var(--lb-blue-ink)}
.lb ol.lb-sources a{color:var(--lb-blue-ink);word-break:break-word}

/* l'essentiel */
.lb .lb-ess{margin:0;padding:0;list-style:none;counter-reset:es;display:grid;gap:.1em}
.lb .lb-ess li{counter-increment:es;display:grid;grid-template-columns:3em 1fr;gap:1em;padding:1em 0;border-top:1px solid var(--lb-line)}
.lb .lb-ess li::before{content:"0" counter(es);font-weight:800;font-size:1.6em;line-height:1;letter-spacing:-.04em;color:var(--lb-blue)}
.lb .lb-ess b{display:block;font-size:1.06em;line-height:1.3;margin-bottom:.25em}
.lb .lb-ess span{display:block;font-size:.92em;line-height:1.5;color:var(--lb-ink2)}

/* quatre fondations, vue d'ensemble */
.lb .lb-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:.7em}
.lb .lb-pillar{padding:1.05em 1em;border-radius:.9em;background:#fff;border:1px solid var(--lb-line);border-top:.25em solid var(--lb-blue)}
.lb .lb-pillar i{display:block;font-style:normal;font-weight:800;font-size:.72em;letter-spacing:.14em;color:var(--lb-blue-ink);margin-bottom:.5em}
.lb .lb-pillar svg{width:1.5em;height:1.5em;color:var(--lb-marine);margin-bottom:.4em}
.lb .lb-pillar b{display:block;font-size:.98em;line-height:1.25;margin-bottom:.35em}
.lb .lb-pillar span{display:block;font-size:.8em;line-height:1.45;color:var(--lb-ink2)}
.lb .lb-pillars-base{display:grid;grid-template-columns:1fr 1fr;gap:.7em;margin-top:.7em}
.lb .lb-pillars-base div{display:flex;align-items:center;justify-content:center;gap:.6em;padding:.75em;border-radius:.9em;background:var(--lb-marine);color:#fff;font-weight:700;font-size:.9em}
.lb .lb-pillars-base img,.lb .lb-pillars-base svg{width:1.3em;height:1.3em;flex:none}

/* six signaux */
.lb .lb-signals{display:grid;grid-template-columns:repeat(3,1fr);gap:.7em}
.lb .lb-signals div{padding:.9em .95em;border-radius:.8em;background:#fff;border:1px solid var(--lb-line)}
.lb .lb-signals b{display:flex;align-items:center;gap:.45em;font-size:.9em;margin-bottom:.3em}
.lb .lb-signals b svg{width:1.2em;height:1.2em;color:var(--lb-green);flex:none}
.lb .lb-signals span{display:block;font-size:.78em;line-height:1.45;color:var(--lb-ink2)}

/* ------------------------------------------------ couverture (PDF et apercu web), dimensions A4 en mm */
.lbcover{position:relative;width:210mm;height:297mm;overflow:hidden;background:#07133F;color:#fff;font-family:"Plus Jakarta Sans",system-ui,sans-serif;line-height:1.4}
.lbcover *{box-sizing:border-box}
.lbcover p{margin:0}
.lbcover .halo{position:absolute;border-radius:50%;filter:blur(2mm)}
.lbcover .ha1{width:170mm;height:170mm;right:-60mm;top:-50mm;background:radial-gradient(closest-side,rgba(45,126,255,.55),rgba(45,126,255,0))}
.lbcover .ha2{width:140mm;height:140mm;left:-55mm;bottom:40mm;background:radial-gradient(closest-side,rgba(45,126,255,.28),rgba(45,126,255,0))}
.lbcover .ha3{width:90mm;height:90mm;right:10mm;bottom:-30mm;background:radial-gradient(closest-side,rgba(255,210,63,.18),rgba(255,210,63,0))}
.cover-top{position:absolute;top:16mm;left:18mm;right:18mm;display:flex;justify-content:space-between;align-items:center}
.cover-top img{height:9mm;width:auto}
.cover-top span{font-size:7.4pt;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#8DB4FF}
.cover-k{position:absolute;left:18mm;top:52mm;display:flex;align-items:center;gap:3mm;font-size:8pt;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#FFD23F}
.cover-k::before{content:"";width:10mm;height:.6mm;background:#FFD23F}
.lbcover h1{position:absolute;left:18mm;right:18mm;top:61mm;margin:0;font-weight:800;font-size:45pt;line-height:1.02;letter-spacing:-.045em;text-wrap:balance}
.lbcover h1 em{font-style:normal;color:#FFD23F}
.cover-sub{position:absolute;left:18mm;width:120mm;top:134mm;font-size:11.2pt;line-height:1.5;color:#C9D3F0}
.cover-art{position:absolute;left:18mm;right:18mm;bottom:30mm;height:98mm}
.cover-foot{position:absolute;left:18mm;right:18mm;bottom:13mm;display:flex;justify-content:space-between;align-items:flex-end;font-size:7.6pt;color:#8D9CC8}
.cover-foot b{display:block;color:#fff;font-size:8.6pt;font-weight:800;margin-bottom:.6mm}

/* composition de la couverture : telephone + reponse IA + fiche */
.ca-phone{position:absolute;right:8mm;bottom:0;width:62mm;height:98mm;border-radius:9mm;background:#0B1A4E;border:1.2mm solid #1B2C6B;box-shadow:0 14mm 26mm -10mm rgba(0,0,0,.6);padding:7mm 4.2mm 4mm;overflow:hidden}
.ca-phone::before{content:"";position:absolute;top:2.6mm;left:50%;width:14mm;height:2.2mm;margin-left:-7mm;border-radius:2mm;background:#040B26}
.ca-ask{margin-left:7mm;padding:2.4mm 3mm;border-radius:3mm 3mm 1mm 3mm;background:#2D7EFF;color:#fff;font-size:6.6pt;font-weight:600;line-height:1.35}
.ca-ans{margin-top:3.2mm;padding:2.8mm 3mm;border-radius:3mm;background:#fff;color:#0A1433;font-size:6.2pt;line-height:1.5}
.ca-ans p{margin:0 0 1.4mm}
.ca-ans i{display:inline-grid;place-items:center;min-width:3.3mm;height:3.3mm;border-radius:1mm;background:#EAF1FF;color:#1E5BD8;font-style:normal;font-weight:800;font-size:5.2pt;vertical-align:.3mm;margin-left:.4mm}
.ca-src{display:flex;align-items:center;gap:1.6mm;margin-top:1.4mm;padding-top:1.4mm;border-top:.25mm solid #E6EBF7;font-size:5.6pt;color:#435072}
.ca-src b{color:#0A1433}
.ca-card{position:absolute;background:#fff;color:#0A1433;border-radius:3.4mm;box-shadow:0 8mm 18mm -8mm rgba(0,0,0,.55);padding:3.2mm 3.6mm}
.ca-search{left:0;bottom:56mm;width:96mm;display:flex;align-items:center;gap:2.4mm;border-radius:20mm;padding:3mm 4.5mm;font-size:8.4pt;font-weight:600}
.ca-search img{width:4.6mm;height:4.6mm}
.ca-search svg{width:4mm;height:4mm;color:#56627F;margin-left:auto}
.ca-place{left:12mm;bottom:20mm;width:84mm}
.ca-place b{display:block;font-size:8.2pt;margin-bottom:.8mm}
.ca-place .ca-st{color:#F4B400;font-size:8pt;letter-spacing:.06em}
.ca-place .ca-st span{color:#56627F;letter-spacing:0;font-size:6.8pt;margin-left:1mm}
.ca-place .ca-ln{display:block;height:1.6mm;border-radius:2mm;background:#E8EDF8;margin-top:1.6mm;width:80%}
.ca-place .ca-ln.ca-s{width:52%}
.ca-engines{position:absolute;left:12mm;bottom:2mm;display:flex;gap:2.2mm;align-items:center;padding:2.4mm 3.2mm;border-radius:20mm;background:rgba(255,255,255,.08);border:.3mm solid rgba(255,255,255,.14)}
.ca-engines img{width:4.6mm;height:4.6mm;background:#fff;border-radius:50%;padding:.6mm}
.ca-engines span{font-size:6.4pt;color:#C9D3F0;margin-left:1mm}


/* ================================================ page web de lecture */
.lbw{font-size:17px;background:#fff;color:var(--lb-ink)}
.lbw .container{position:relative}
.lbw-hero{position:relative;overflow:hidden;background:var(--lb-marine);color:#C9D3F0;padding:calc(var(--hdr,92px) + 34px) 0 clamp(64px,7vw,96px)}
.lbw-hero::before{content:"";position:absolute;width:900px;height:900px;right:-260px;top:-320px;border-radius:50%;background:radial-gradient(closest-side,rgba(45,126,255,.42),rgba(45,126,255,0));pointer-events:none}
.lbw-hero::after{content:"";position:absolute;width:700px;height:700px;left:-300px;bottom:-380px;border-radius:50%;background:radial-gradient(closest-side,rgba(45,126,255,.2),rgba(45,126,255,0));pointer-events:none}
.lbw-hero .crumbs a,.lbw-hero .crumbs li{color:#8D9CC8}
.lbw-hero-in{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,5vw,72px);align-items:center;margin-top:26px}
.lbw-hero-t .eyebrow{color:var(--lb-yellow)}
.lbw-hero-t h1{margin:0 0 20px;font:800 clamp(38px,4.7vw,64px)/1.02 var(--f);letter-spacing:-.045em;color:#fff;text-wrap:balance}
.lbw-hero-t .t-lead{color:#C9D3F0;max-width:36em}
.lbw-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin:26px 0 30px;padding:0;list-style:none;font-size:14.5px;font-weight:600;color:#EAF0FF}
.lbw-meta li{display:flex;align-items:center;gap:8px}
.lbw-meta svg{width:18px;height:18px;color:var(--lb-yellow)}
.lbw-hero .btn-row{display:flex;flex-wrap:wrap;gap:12px}
.lbw-hero .btn svg{width:18px;height:18px}
.lbw-cover{display:grid;place-items:center;perspective:1600px}
.lbw-book{--s:.4788;position:relative;width:380px;max-width:100%;aspect-ratio:210/297;border-radius:3px 10px 10px 3px;overflow:hidden;
  box-shadow:-2px 0 0 rgba(255,255,255,.12) inset,0 40px 80px -30px rgba(0,0,0,.75),0 18px 30px -18px rgba(0,0,0,.6);transform:rotateY(-13deg) rotateX(3deg);transform-origin:40% 50%;transition:transform .8s var(--ease,ease)}
.lbw-book::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.28),rgba(255,255,255,.06) 4%,transparent 9%,transparent 80%,rgba(255,255,255,.07));pointer-events:none}
.lbw-book .lbcover{position:absolute;top:0;left:0;transform:scale(var(--s));transform-origin:0 0}
@media (hover:hover) and (pointer:fine){.lbw-book:hover{transform:rotateY(-4deg) rotateX(1deg)}}

.lbw-sec{padding:clamp(72px,8vw,112px) 0}
.lbw-two{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(36px,5vw,80px);align-items:start}
.lbw .t-h2{color:var(--lb-ink);margin-bottom:22px}
.lbw-edito{padding:30px 32px;border-radius:24px;background:var(--lb-brume);border:1px solid var(--lb-line);font-size:15.5px;line-height:1.65;color:var(--lb-ink2)}
.lbw-edito p{margin:0 0 12px}
.lbw-edito-k{display:flex;align-items:center;gap:8px;font-weight:800;font-size:12.5px!important;letter-spacing:.15em;text-transform:uppercase;color:var(--lb-blue-ink)}
.lbw-edito-k svg{width:18px;height:18px}
.lbw-sign{display:flex;align-items:center;gap:14px;margin-top:18px}
.lbw-sign img{width:60px;height:60px;border-radius:50%;background:#fff}
.lbw-sign b{display:block;font-size:16px;color:var(--lb-ink)}
.lbw-sign span{font-size:13.5px;color:var(--lb-ink3)}

.lbw-keys{padding:clamp(72px,8vw,104px) 0;background:var(--lb-marine);color:#C9D3F0}
.lbw-keys .t-h2{color:#fff}
.lbw-keys .eyebrow{color:var(--lb-blue-l)}
.lbw-keys .lb-stats{--n:3!important}
.lbw-keys .lb-stat{padding:28px 26px}
.lbw-keys .lb-stat b{font-size:clamp(40px,4vw,54px)}
.lbw-keys-n{margin-top:18px;font-size:13.5px;color:#8D9CC8}

.lbw-open{position:relative;overflow:hidden;background:var(--lb-marine);color:#C9D3F0;padding:clamp(64px,7vw,100px) 0}
.lbw-open::before{content:"";position:absolute;width:760px;height:760px;left:-280px;top:-300px;border-radius:50%;background:radial-gradient(closest-side,rgba(45,126,255,.3),rgba(45,126,255,0));pointer-events:none}
.lbw-open-in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:center}
.lbw-num{display:block;font:800 clamp(88px,10vw,150px)/.8 var(--f);letter-spacing:-.06em;color:var(--lb-yellow);margin-bottom:22px}
.lbw-part{margin:0 0 10px;font-weight:800;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--lb-blue-l)}
.lbw-open h2{margin:0 0 18px;font:800 clamp(32px,3.6vw,48px)/1.05 var(--f);letter-spacing:-.04em;color:#fff;text-wrap:balance}
.lbw-open-t p:last-child{font-size:18px;line-height:1.6;margin:0;max-width:34em}
.lbw-open-ph{border-radius:24px;overflow:hidden;box-shadow:0 40px 80px -40px rgba(0,0,0,.7);aspect-ratio:4/3}
.lbw-open-ph img{display:block;width:100%;height:100%;object-fit:cover}

.lbw-body{padding:clamp(56px,6vw,88px) 0 clamp(64px,7vw,104px);background:#fff}
.lbw-col{max-width:1080px}
.lbw-col > p,.lbw-col > h3,.lbw-col > ul,.lbw-col > aside,.lbw-col > .lb-pull{max-width:740px}
.lbw-col > p{font-size:18px;line-height:1.72}
.lbw-col > p.lb-lead{font-size:21px;line-height:1.6}
.lbw-col .lb-fig{margin:44px 0}
.lbw-col .lb-fig-t{font-size:18px}
.lbw-col h3.lb-h3{font-size:clamp(23px,2.2vw,28px);margin-top:56px}
.lbw-annex{background:var(--lb-brume)}

/* barre de progression et sommaire flottant */
.lbw-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:80;pointer-events:none}
.lbw-progress i{display:block;height:100%;background:var(--lb-yellow);transform-origin:0 50%;transform:scaleX(0)}
.lbw-nav{position:fixed;left:20px;bottom:20px;z-index:56;display:none}
.lbw-nav-b{display:flex;align-items:center;gap:10px;min-height:46px;max-width:340px;padding:10px 18px 10px 14px;border-radius:99px;border:1px solid rgba(255,255,255,.14);background:rgba(7,19,63,.92);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font:700 14px/1.2 var(--f);cursor:pointer;box-shadow:0 18px 40px -18px rgba(7,19,63,.7)}
.lbw-nav-b svg{width:18px;height:18px;color:var(--lb-yellow);flex:none}
.lbw-nav-b span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lbw-nav ol{position:absolute;left:0;bottom:56px;width:360px;margin:0;padding:8px;list-style:none;border-radius:18px;background:#fff;border:1px solid var(--lb-line);box-shadow:0 30px 60px -24px rgba(7,19,63,.45);
  opacity:0;transform:translateY(6px);visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s}
.lbw-nav.open ol{opacity:1;transform:none;visibility:visible}
.lbw-nav li a{display:flex;gap:12px;align-items:baseline;padding:10px 12px;border-radius:12px;text-decoration:none;font-weight:700;font-size:14.5px;line-height:1.35;color:var(--lb-ink)}
.lbw-nav li a i{font-style:normal;font-weight:800;color:var(--lb-blue);min-width:22px}
.lbw-nav li a:hover,.lbw-nav li a.on{background:var(--lb-brume)}
@media (min-width:1100px){.lbw-nav{display:block}}

/* graphique : trace au defilement, info-bulle */
html.lb-anim .lb-chart[data-chart=line] .c-ln{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.8s cubic-bezier(.4,.1,.2,1)}
html.lb-anim .lb-chart[data-chart=line] .c-ar{opacity:0;transition:opacity .9s ease .9s}
html.lb-anim .lb-chart[data-chart=line] .c-hit{opacity:0;transition:opacity .35s ease}
html.lb-anim .lb-chart[data-chart=line] text.big,html.lb-anim .lb-chart[data-chart=line] text.lbl,html.lb-anim .lb-chart[data-chart=line] text.lbl2{opacity:0;transition:opacity .5s ease 1.6s}
html.lb-anim .lb-chart.is-in .c-ln{stroke-dashoffset:0}
html.lb-anim .lb-chart.is-in .c-ar{opacity:.1}
html.lb-anim .lb-chart.is-in .c-hit,html.lb-anim .lb-chart.is-in text{opacity:1!important}
.lb-chart .c-hit{cursor:pointer;outline:none}
.lb-chart .c-hit:focus-visible circle.c-pt{stroke:var(--lb-marine);stroke-width:3}
.lb-tip{position:absolute;z-index:3;padding:7px 11px;border-radius:9px;background:var(--lb-marine);color:#fff;font-size:13px;font-weight:700;white-space:nowrap;pointer-events:none;transform:translate(-50%,calc(-100% - 12px))}

/* auto-diagnostic */
.lb-score{display:flex;align-items:baseline;gap:8px;margin:18px 0 0;font-size:16px;font-weight:700;color:var(--lb-ink3)}
.lb-score b{font-size:44px;line-height:1;letter-spacing:-.04em;color:var(--lb-marine)}

/* --------- adaptations */
@media screen and (max-width:1000px){
  .lbw-hero-in,.lbw-two,.lbw-open-in{grid-template-columns:1fr}
  .lbw-cover{order:-1;margin-bottom:8px}
  .lbw-book{width:240px;transform:rotateY(-10deg) rotateX(2deg)}
  .lbw-open-ph{order:-1}
  .lb .lb-anno,.lb .lb-split{grid-template-columns:1fr}
  .lb .lb-path{grid-template-columns:repeat(3,1fr);row-gap:1.6em}
  .lb .lb-path::before{display:none}
  .lb .lb-pillars,.lb .lb-eeat,.lb .lb-mech{grid-template-columns:repeat(2,1fr)}
  .lb .lb-mech div + div{border-left:0}
  .lb .lb-mech div{border-top:1px solid var(--lb-line)}
  .lb .lb-cycle{grid-template-columns:1fr}
  .lb .lb-cycle div::after{display:none}
  .lb .lb-lights,.lb .lb-phases,.lb .lb-kpis,.lb .lb-signals,.lb .lb-scale{grid-template-columns:1fr 1fr}
  .lb .lb-check{grid-template-columns:1fr}
  .lbw-keys .lb-stats{--n:2!important}
}
@media screen and (max-width:640px){
  .lbw{font-size:15.5px}
  .lbw-hero{padding-top:calc(var(--hdr,92px) + 10px)}
  .lbw-book{width:200px}
  .lbw-hero .btn-row .btn{width:100%}
  .lbw-col > p{font-size:17px}
  .lbw-col > p.lb-lead{font-size:19px}
  .lb .lb-path{grid-template-columns:1fr 1fr}
  .lb .lb-pillars,.lb .lb-eeat,.lb .lb-mech,.lb .lb-lights,.lb .lb-phases,.lb .lb-kpis,.lb .lb-signals,.lb .lb-scale,.lb .lb-pillars-base,.lb .lb-two{grid-template-columns:1fr}
  .lb .lb-two .lb-two-mid{padding:.2em 0}
  .lb .lb-stats{--n:1!important}
  .lbw-keys .lb-stats{--n:1!important}
  .lb dl.lb-gloss{grid-template-columns:1fr}
  .lb .lb-gantt-wrap{overflow-x:auto;margin:0 -18px;padding:0 18px}
  .lb .lb-gantt{min-width:640px}
  .lb .lb-tablewrap{overflow-x:auto}
  .lbw-edito{padding:24px 22px}
}
@media (prefers-reduced-motion:reduce){.lbw-book{transform:none!important;transition:none}}

/* ================================================ page du formulaire */
.lbt-in{display:grid;grid-template-columns:190px 1fr;gap:30px;align-items:start;margin-top:30px}
.lbt-book{font-size:16px}
.lbt-book .lbw-book{width:190px;transform:rotateY(-12deg) rotateX(3deg)}
.lbt-k{margin:0 0 10px;font-weight:800;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue-l,#8DB4FF)}
.lbt-parts{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:9px}
.lbt-parts li{display:flex;gap:12px;align-items:baseline;font-size:15.5px;font-weight:600;line-height:1.35;color:#EAF0FF}
.lbt-parts i{font-style:normal;font-weight:800;color:var(--yellow,#FFD23F);min-width:22px}
.lbt .inc li svg{width:18px;height:18px;flex:none;color:#4FDCAA}
.form-ok p{margin:0 0 12px}
.lbt-go{display:grid;gap:10px}
.lbt-go .btn{width:100%;margin:0}
.lbt-pdf{background:#fff;color:var(--marine,#07133F);border-color:#B9D8C9}
@media screen and (max-width:640px){.lbt-in{grid-template-columns:1fr}.lbt-book{display:none}}
.lb .lb-chart-m{display:none}
.lbw .lb-chart-d .lb-chart{max-width:860px}
@media screen and (max-width:640px){
  .lb .lb-chart-d{display:none}
  .lb .lb-chart-m{display:block}
  .lb .lb-gantt-fig{display:none}
  .lb .lb-chart .ax text,.lb .lb-chart text.ax{font-size:12px}
}
.lb ol.lb-testq{margin:.4em 0 0;padding:0 0 0 1.5em;columns:2;column-gap:2em;font-size:.88em;line-height:1.45;color:var(--lb-ink)}
.lb ol.lb-testq li{margin:0 0 .5em;break-inside:avoid}
.lb ol.lb-testq li::marker{font-weight:800;color:var(--lb-blue-ink)}
@media screen and (max-width:640px){.lb ol.lb-testq{columns:1}}
.lb .lb-serp2{display:grid;grid-template-columns:1fr 1fr;gap:1.2em;align-items:start;margin-bottom:1.3em}
.lb .lb-serp2-k{display:flex;align-items:center;gap:.45em;margin:0 0 .6em;font-weight:800;font-size:.82em;letter-spacing:.06em;text-transform:uppercase;color:var(--lb-ink2)}
.lb .lb-serp2-k svg{width:1.25em;height:1.25em;color:var(--lb-blue)}
.lb ol.lb-notes-2{display:grid;grid-template-columns:repeat(5,1fr);gap:1em}
.lb ol.lb-notes-2 li{margin:0;padding:2.2em 0 0;font-size:.84em}
.lb ol.lb-notes-2 li i{top:0}
/* barres horizontales HTML */
.lb .lb-hbars{display:grid;gap:.75em}
.lb .hb-r{display:grid;grid-template-columns:minmax(8em,13em) 1fr 4.2em;gap:.9em;align-items:center}
.lb .hb-l{font-size:.9em;font-weight:600;color:var(--lb-ink2);line-height:1.3}
.lb .hb-t{position:relative;height:1.15em;border-radius:.3em;background:#EEF2FB;overflow:hidden}
.lb .hb-t i{position:absolute;left:0;top:0;bottom:0;width:var(--w);border-radius:0 .3em .3em 0;background:var(--lb-blue)}
.lb .hb-r.mute .hb-t i{background:var(--lb-grey)}
.lb .hb-v{font-weight:800;font-size:1.05em;color:var(--lb-ink);font-variant-numeric:tabular-nums;text-align:right}
.lb .hb-r:not(.mute) .hb-v{color:var(--lb-marine)}
@media screen and (max-width:1000px){.lb ol.lb-notes-2{grid-template-columns:1fr 1fr}.lb .lb-serp2{grid-template-columns:1fr}}
@media screen and (max-width:640px){.lb ol.lb-notes-2{grid-template-columns:1fr}.lb .hb-r{grid-template-columns:1fr 3.6em;gap:.3em .8em}.lb .hb-l{grid-column:1/-1}}

.ca-page{margin-top:3.2mm;padding:2.6mm 3mm;border-radius:3mm;background:#fff;color:#0A1433}
.ca-page small{display:block;font-size:5pt;color:#56627F;margin-bottom:.8mm}
.ca-page b{display:block;font-size:6.6pt;line-height:1.25;margin-bottom:1.4mm}
.ca-page .ca-an{display:block;padding:1.4mm 1.8mm;border-radius:1.4mm;background:#E3F7EF;border-left:.6mm solid #0CA678;font-size:5.4pt;line-height:1.4;color:#085C44}
.ca-page .ca-sg{display:flex;align-items:center;gap:1.4mm;margin-top:1.6mm;font-size:5.2pt;color:#435072}
.ca-page .ca-sg i{width:3.6mm;height:3.6mm;border-radius:50%;background:linear-gradient(135deg,#C9D6F5,#8DB4FF)}
.ca-page .ca-rdv{display:inline-block;margin-top:1.8mm;padding:.9mm 2.4mm;border-radius:2mm;background:#FFD23F;font-weight:800;font-size:5.2pt;color:#07133F}
.lb .lb-split > *,.lb .lb-anno > *,.lb .lb-serp2 > *,.lbw-col > *{min-width:0}
.lb pre.lb-code{max-width:100%}
@media screen and (max-width:640px){.lb pre.lb-code{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}}
