/* Black Bond Outils : CSS du module (copie de la source effective de la maquette v12).
   Jetons : chaque variable de la maquette lit la variable globale --bb-* du design system (lot L1), repli sur la valeur v12. */
.bbpf{--bone:var(--bb-bone,#FAF7F2);--lin:var(--bb-lin,#F3ECE1);--encre:var(--bb-encre,#241E1A);--argile:var(--bb-argile,#C4602F);--sauge:var(--bb-sauge,#5B6E5E);--grenat:var(--bb-grenat,#6E2F52)}
.bbpf [hidden]{display:none!important}
/* Black Bond v10 - Préparer sa première fois (lot 5c). Préfixe .bbpf- */
.bbpf{--pf-bone:var(--bone,#FAF7F2);--pf-lin:var(--lin,#F3ECE1);--pf-encre:var(--encre,#241E1A);--pf-argile:var(--argile,#C4602F);--pf-sauge:var(--sauge,#5B6E5E);--pf-grenat:var(--grenat,#6E2F52);
  color:var(--pf-encre);font-family:Inter,system-ui,sans-serif;font-size:1rem;line-height:1.6;max-width:72rem;margin:0 auto}
.bbpf *{box-sizing:border-box}
.bbpf p{margin:.6em 0}
.bbpf-h{font-family:Poppins,Inter,sans-serif;font-weight:600;font-size:clamp(1.45rem,4.5vw,2rem);line-height:1.2;margin:.2em 0 .3em;display:flex;align-items:center;gap:.5rem;outline:none}
.bbpf-h3{font-family:Poppins,Inter,sans-serif;font-size:1.05rem;margin:1.6em 0 .5em}
.bbpf-kicker{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--pf-argile);font-weight:600;margin:0}
.bbpf-lead,.bbpf-q{font-size:1.08rem;color:#4a403a}
.bbpf-q{font-style:italic;margin-top:0}
.bbpf-small{font-size:.86rem;color:#62574f}
.bbpf-ico{width:1.4em;height:1.4em;flex:none;fill:none;stroke:var(--pf-argile);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bbpf-loading{padding:2rem 0;color:#62574f}

/* avertissement repliable */
.bbpf-warn{border-left:3px solid var(--pf-argile);background:var(--pf-lin);border-radius:.4rem;padding:.45rem .8rem;font-size:.88rem;margin:0 0 .8rem}
.bbpf-warn summary{cursor:pointer;font-weight:600}
.bbpf-warn p{margin:.4rem 0 .1rem}

/* entrée */
.bbpf-entry-top{display:flex;gap:1rem;align-items:center;justify-content:space-between}
.bbpf-hero{width:13rem;max-width:40%;flex:none}
.bbpf-draw{stroke-dasharray:1;stroke-dashoffset:1;animation:bbpf-draw 1.6s ease-out .1s forwards}
@keyframes bbpf-draw{to{stroke-dashoffset:0}}
.bbpf.is-reduced .bbpf-draw{animation:none;stroke-dashoffset:0}
.bbpf-grp{border:0;padding:0;margin:1rem 0 0}
.bbpf-grp legend{font-family:Poppins,Inter,sans-serif;font-weight:600;font-size:.95rem;margin-bottom:.5rem;padding:0}
.bbpf-ctxs{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.6rem}
.bbpf-ctx{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;padding:.8rem 1rem;border:1.5px solid #e2d8ca;border-radius:.8rem;background:#fff;transition:border-color .2s,transform .2s}
.bbpf-ctx b{font-family:Poppins,Inter,sans-serif;font-weight:600}
.bbpf-ctx span{font-size:.86rem;color:#62574f}
.bbpf-ctx:hover,.bbpf-ctx:focus-visible{border-color:var(--pf-argile);transform:translateY(-1px)}
.bbpf-ctx:focus-visible{outline:2px solid var(--pf-argile);outline-offset:2px}
.bbpf-ctx.is-on{border-color:var(--pf-argile);background:#fdf3ec}

/* fil de progression */
.bbpf-fil{width:100%;height:auto;display:block;max-height:4.4rem}
.bbpf-fil-bg{fill:none;stroke:#e2d8ca;stroke-width:3}
.bbpf-fil-on{fill:none;stroke:var(--pf-argile);stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset .8s ease}
.bbpf.is-reduced .bbpf-fil-on{transition:none}
.bbpf-knot circle{fill:var(--pf-bone);stroke:#cbbfae;stroke-width:2}
.bbpf-knot.is-done circle{fill:#fdf3ec;stroke:var(--pf-argile)}
.bbpf-knot.is-cur circle{fill:var(--pf-argile);stroke:var(--pf-argile)}
.bbpf-knot path{fill:none;stroke:var(--pf-argile);stroke-width:2}
.bbpf-knot.is-cur path{stroke:#fff}

/* mise en page */
.bbpf-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;margin-top:.6rem}
.bbpf-side{display:none}
.bbpf-main{min-width:0}
@media (min-width:960px){
  .bbpf-grid{grid-template-columns:17rem minmax(0,1fr);gap:2.5rem}
  .bbpf-side{display:block;position:sticky;top:1rem;align-self:start;max-height:calc(100vh - 2rem);overflow:auto}
  .bbpf-mobcl{display:none}
}
.bbpf-toc ol{list-style:none;margin:0 0 1rem;padding:0;border-left:2px solid #e2d8ca}
.bbpf-toc button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;gap:.5rem;align-items:center;width:100%;padding:.45rem .7rem;font-size:.92rem;margin-left:-2px;border-left:2px solid transparent}
.bbpf-toc button:hover,.bbpf-toc button:focus-visible{background:var(--pf-lin)}
.bbpf-toc button.is-done{color:#62574f}
.bbpf-toc button.is-cur{border-left-color:var(--pf-argile);font-weight:600;background:#fdf3ec}

/* contenus */
.bbpf-forctx{background:#fff;border:1.5px solid var(--pf-argile);border-radius:.8rem;padding:.7rem 1rem;margin:1rem 0}
.bbpf-tag{display:inline-block;font-size:.75rem;font-weight:600;color:var(--pf-argile);text-transform:uppercase;letter-spacing:.05em}
.bbpf-forctx p{margin:.3rem 0 0}
.bbpf-note{background:var(--pf-lin);border-radius:.8rem;padding:.6rem 1rem;margin:.8rem 0;border-left:3px solid var(--pf-sauge)}
.bbpf-note.is-warn{border-left-color:var(--pf-grenat)}
.bbpf-note p{margin:.2rem 0}
.bbpf-myths{display:grid;gap:.5rem}
.bbpf-myth{background:#fff;border:1px solid #e2d8ca;border-radius:.6rem;padding:.55rem .9rem}
.bbpf-myth summary{cursor:pointer;font-weight:600}
.bbpf-myth p{margin:.4rem 0 .1rem;color:#4a403a}
.bbpf-phrases{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.6rem;margin:1rem 0}
.bbpf-ph{background:#fff;border-radius:.8rem;padding:.7rem .9rem;border-top:4px solid var(--pf-sauge)}
.bbpf-ph-non{border-top-color:var(--pf-grenat)}.bbpf-ph-pasencore{border-top-color:#8C7B6B}.bbpf-ph-pause{border-top-color:var(--pf-argile)}.bbpf-ph-demander{border-top-color:#9A7A80}
.bbpf-ph ul{margin:.3rem 0 0;padding-left:1rem;font-size:.92rem}
.bbpf-ta{display:block;margin:.6rem 0}
.bbpf-ta span{display:block;font-size:.92rem;font-weight:500;margin-bottom:.25rem}
.bbpf-ta textarea{width:100%;font:inherit;font-size:.95rem;border:1.5px solid #e2d8ca;border-radius:.6rem;padding:.5rem .7rem;background:#fff;resize:vertical;min-height:3rem}
.bbpf-ta textarea:focus{outline:2px solid var(--pf-argile);border-color:transparent}
.bbpf-stepcl,.bbpf-cl-list,.bbpf-cl-list ul{list-style:none;margin:0;padding:0}
.bbpf-cb{display:flex;gap:.55rem;align-items:flex-start;cursor:pointer;padding:.3rem 0;font-size:.93rem}
.bbpf-cb input{accent-color:var(--pf-argile);width:1.1rem;height:1.1rem;margin-top:.2rem;flex:none}
.bbpf-cl{background:#fff;border-radius:.9rem;padding:.8rem 1rem;border:1px solid #e2d8ca}
.bbpf-cl-h{display:flex;justify-content:space-between;font-family:Poppins,Inter,sans-serif;font-weight:600}
.bbpf-cl-h small{color:var(--pf-argile)}
.bbpf-cl-ctx{font-size:.82rem;color:#62574f;margin:.1rem 0 .4rem}
.bbpf-cl-g>b{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#62574f;margin-top:.5rem}
.bbpf-cl .bbpf-cb{font-size:.85rem;padding:.15rem 0}
.bbpf-cl .bbpf-btn{margin-top:.7rem;width:100%}
.bbpf-mobcl{margin-top:1.5rem}
.bbpf-help{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.5rem}
.bbpf-help li{display:flex;gap:.8rem;align-items:flex-start;background:#fff;border-radius:.7rem;padding:.6rem .8rem;border:1px solid #e2d8ca}
.bbpf-num{font-family:Poppins,Inter,sans-serif;font-weight:700;color:var(--pf-grenat);text-decoration:none;white-space:nowrap;min-width:7.5rem}
.bbpf-help b{display:block;font-size:.93rem}
.bbpf-help span{display:block;font-size:.85rem;color:#4a403a}
.bbpf-arts{padding-left:1.1rem}
.bbpf-arts a{color:var(--pf-argile)}
.bbpf-sources{margin-top:1.2rem;font-size:.85rem;color:#4a403a}
.bbpf-sources summary{cursor:pointer;font-weight:600}

/* boutons et barre */
.bbpf-btn{display:inline-flex;align-items:center;justify-content:center;font:inherit;font-weight:600;font-size:.95rem;border:1.5px solid var(--pf-argile);background:var(--pf-argile);color:#fff;border-radius:999px;padding:.6rem 1.2rem;cursor:pointer;text-decoration:none;min-height:2.75rem}
.bbpf-btn-ghost{background:transparent;color:var(--pf-encre);border-color:#cbbfae}
.bbpf-btn:hover{filter:brightness(.95)}
.bbpf-btn:focus-visible{outline:2px solid var(--pf-encre);outline-offset:2px}
.bbpf-btn.is-danger{border-color:var(--pf-grenat);color:var(--pf-grenat)}
.bbpf-nav{display:flex;justify-content:space-between;gap:.6rem;margin-top:2rem;flex-wrap:wrap}
.bbpf-tools{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:2rem;padding-top:1rem;border-top:1px solid #e2d8ca;font-size:.85rem;color:#62574f}

@media (max-width:600px){
  .bbpf-hero{display:none}
  .bbpf-ctxs{grid-template-columns:1fr}
  .bbpf-ctx{padding:.65rem .85rem}
  .bbpf-help li{flex-direction:column;gap:.2rem}
  .bbpf-nav{position:sticky;bottom:0;background:var(--pf-bone);padding:.6rem 0 calc(.6rem + env(safe-area-inset-bottom,0px));margin-top:1.5rem;flex-wrap:nowrap}
  .bbpf-nav .bbpf-btn{flex:1;padding:.6rem .7rem;font-size:.9rem}
}
@media (prefers-reduced-motion:reduce){
  .bbpf-draw{animation:none;stroke-dashoffset:0}
  .bbpf-fil-on,.bbpf-ctx{transition:none}
}

/* impression : seule la fiche */
.bbpf-printsheet{display:none}
@media print{
  body *{visibility:hidden}
  .bbpf-printsheet,.bbpf-printsheet *{visibility:visible}
  .bbpf-printsheet{display:block;position:absolute;left:0;top:0;width:100%;color:#000;font:11pt/1.45 Inter,Arial,sans-serif}
  .bbpf-printsheet h2{font:600 16pt Poppins,Arial,sans-serif;margin:0 0 .3em}
  .bbpf-printsheet h3{font:600 12pt Poppins,Arial,sans-serif;margin:1em 0 .3em;break-after:avoid}
  .bbpf-printsheet ul{list-style:none;padding:0;margin:0}
  .bbpf-printsheet li{display:flex;gap:.5em;margin:.15em 0}
  .bbpf-pbox{display:inline-block;width:1em;height:1em;border:1px solid #000;text-align:center;line-height:1;flex:none}
  .bbpf-pq{margin:.4em 0 0;font-style:italic}
  .bbpf-pa{margin:.1em 0 0 1em}
  .bbpf-pl{border-bottom:1px solid #999;height:1.4em;margin:0}
  .bbpf-pmeta{font-size:9pt;color:#333}
}

