/* Black Bond, maquette v7 : cycle (pilier Les Fondamentaux)
   v9 (existants, 2026-10-06) : phrase « pas une méthode de contraception » (.bbcy-nocontra), repli « Autres courbes »,
   accordéons .bbcy-acc (Pas de cycle ?, Sources), indication de défilement du schéma en mobile, en-tête de module plus serré en mobile. */
.bbcy{
  --cy-bg:var(--bone,#FAF7F2); --cy-card:var(--lin,#F3ECE1); --cy-ink:var(--encre,#241E1A); --cy-muted:var(--muted,#6B6058);
  --cy-acc:var(--argile,#C4602F); --cy-sage:var(--sauge,#5B6E5E); --cy-grenat:var(--grenat,#6E2F52); --cy-line:rgba(36,30,26,.16);
  max-width:var(--wrap,1200px);margin:0 auto;padding:clamp(40px,6vw,80px) var(--gutter,24px);
  color:var(--cy-ink);font-family:var(--f-body,'Inter','Segoe UI',system-ui,sans-serif);background:var(--cy-bg);
}
.bbcy-head{max-width:66ch;margin-bottom:24px}
.bbcy-eyebrow{display:block;font:600 12px/1 var(--f-body,'Inter',system-ui,sans-serif);letter-spacing:.16em;text-transform:uppercase;color:var(--cy-acc);margin-bottom:16px}
.bbcy-head h2{margin:0 0 14px;font:600 clamp(26px,3.2vw,40px)/1.15 var(--f-display,'Poppins',system-ui,sans-serif);letter-spacing:-.02em}
.bbcy-lead{margin:0;font-size:clamp(15px,1.2vw,17px);line-height:1.65;color:var(--encre-2,#3A322C)}

.bbcy-ctrls{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;margin-bottom:14px}
.bbcy-ctl{display:flex;align-items:center;gap:12px;flex:1 1 280px}
.bbcy-ctl label{font-size:14px;font-weight:600;white-space:nowrap}
.bbcy-ctl output{font-size:13px;color:var(--cy-muted);min-width:92px}
.bbcy input[type=range]{--c:var(--cy-acc);flex:1;min-width:0;height:32px;margin:0;background:transparent;-webkit-appearance:none;appearance:none;cursor:pointer}
.bbcy input[type=range]::-webkit-slider-runnable-track{height:2px;background:rgba(36,30,26,.35)}
.bbcy input[type=range]::-moz-range-track{height:2px;background:rgba(36,30,26,.35)}
.bbcy input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-10px;border-radius:50%;background:var(--cy-bg);border:2.5px solid var(--c)}
.bbcy input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--cy-bg);border:2.5px solid var(--c)}
.bbcy input[type=range]:focus-visible,.bbcy button:focus-visible,.bbcy a:focus-visible{outline:3px solid var(--cy-acc);outline-offset:3px}
.bbcy-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 12px;border-radius:999px;border:1.5px solid var(--cy-ink);background:transparent;color:var(--cy-ink);font:600 14px var(--f-body,'Inter',system-ui,sans-serif);cursor:pointer}
.bbcy-btn:hover{background:var(--cy-ink);color:var(--cy-bg)}
.bbcy-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bbcy-btn .i-play{display:none;fill:currentColor}
.bbcy-btn.is-paused .i-play{display:block}.bbcy-btn.is-paused .i-pause{display:none}

.bbcy-legend{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.bbcy-chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:4px 12px;border-radius:999px;border:1.5px solid var(--cy-line);background:transparent;color:var(--cy-ink);font:500 13px var(--f-body,'Inter',system-ui,sans-serif);cursor:pointer}
.bbcy-chip svg{width:30px;height:8px;fill:none;stroke-width:2.6;stroke-linecap:round}
.bbcy-chip[aria-pressed=false]{opacity:.45;text-decoration:line-through}
.bbcy-accc svg{stroke:var(--cy-acc)}.bbcy-sagec svg{stroke:var(--cy-sage)}.bbcy-grenatc svg{stroke:var(--cy-grenat)}.bbcy-inkc svg{stroke:var(--cy-ink)}.bbcy-mutedc svg{stroke:var(--cy-muted)}

.bbcy-chart{background:var(--cy-card);border-radius:var(--r-l,22px);padding:16px 12px 12px;overflow-x:auto}
.bbcy-svg{display:block;width:100%;min-width:560px;height:auto}
.bbcy-band{fill:transparent}
.bbcy-band.is-regles{fill:rgba(196,96,47,.10)}
.bbcy-band.is-ovu{fill:rgba(110,47,82,.08)}
.bbcy-band.is-lut{fill:rgba(91,110,94,.07)}
.bbcy-bandl{font:600 12px var(--f-body,'Inter',system-ui,sans-serif);fill:var(--cy-muted)}
.bbcy-axis{stroke:var(--cy-ink);stroke-width:1.4;opacity:.6}
.bbcy-tick{stroke:var(--cy-ink);stroke-width:1.2;opacity:.45}
.bbcy-day{font:500 11px var(--f-body,'Inter',system-ui,sans-serif);fill:var(--cy-muted)}
.bbcy-h{fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.bbcy-acc{stroke:var(--cy-acc)}.bbcy-sage{stroke:var(--cy-sage)}.bbcy-grenat{stroke:var(--cy-grenat)}.bbcy-ink{stroke:var(--cy-ink)}.bbcy-muted{stroke:var(--cy-muted)}
.bbcy-hl{font:600 12px var(--f-body,'Inter',system-ui,sans-serif);paint-order:stroke;stroke:var(--cy-card);stroke-width:4px;stroke-linejoin:round}
.bbcy-acct{fill:var(--argile-fonce,#A44E24)}.bbcy-saget{fill:var(--cy-sage)}.bbcy-grenatt{fill:var(--cy-grenat)}.bbcy-inkt{fill:var(--cy-ink)}.bbcy-mutedt{fill:var(--cy-muted)}
.bbcy-curl{stroke:var(--cy-ink);stroke-width:1.6;stroke-dasharray:3 4}
.bbcy-knot{fill:var(--cy-card);stroke:var(--cy-acc);stroke-width:2.6}
.bbcy-note{margin:8px 6px 0;font-size:12.5px;line-height:1.5;color:var(--cy-muted)}

.bbcy-panel{margin-top:18px;padding:20px 24px;border-left:3px solid var(--cy-acc);background:var(--cy-card);border-radius:0 var(--r-m,14px) var(--r-m,14px) 0}
.bbcy[data-phase=luteale] .bbcy-panel{border-left-color:var(--cy-sage)}
.bbcy[data-phase=ovulation] .bbcy-panel{border-left-color:var(--cy-grenat)}
.bbcy-ph{margin:0 0 10px;font:600 20px var(--f-display,'Poppins',system-ui,sans-serif)}
.bbcy-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px 32px}
.bbcy-cols h4{margin:0 0 6px;font:600 12px var(--f-body,'Inter',system-ui,sans-serif);letter-spacing:.08em;text-transform:uppercase;color:var(--cy-muted)}
.bbcy-cols p{margin:0;font-size:14.5px;line-height:1.6}
.bbcy-box{margin-top:26px;padding:22px 24px;border:1.5px solid var(--cy-sage);border-radius:var(--r-m,14px)}
.bbcy-box h3{margin:0 0 10px;font:600 18px var(--f-display,'Poppins',system-ui,sans-serif)}
.bbcy-box ul{margin:0;padding-left:18px;display:grid;gap:8px}
.bbcy-box li{font-size:14px;line-height:1.55}
.bbcy-src{margin-top:24px;padding-top:16px;border-top:1px solid var(--cy-line);font-size:12.5px;line-height:1.6;color:var(--cy-muted);max-width:90ch}
.bbcy-src p{margin:0 0 8px}
.bbcy-links{display:flex;flex-wrap:wrap;gap:6px 18px}
.bbcy-links a{font-size:13.5px;font-weight:600;color:var(--argile-fonce,#A44E24);text-underline-offset:3px}
.bbcy-links a span{font-weight:400;color:var(--cy-muted)}
/* ---------- v9 ---------- */
.modroot .bbcy{padding-top:clamp(8px,3vw,40px)}
.bbcy-nocontra{margin:0 0 14px;padding:10px 14px;border-left:3px solid var(--cy-grenat);background:var(--cy-card);border-radius:0 10px 10px 0;font-size:14px;line-height:1.5;max-width:80ch}
.bbcy-nocontra a{color:var(--argile-fonce,#A44E24);font-weight:600;text-underline-offset:3px}
.bbcy-legend{align-items:center}
.bbcy-acc > summary{list-style:none;cursor:pointer;position:relative;display:flex;align-items:center;min-height:44px;padding-right:34px}
.bbcy-acc > summary::-webkit-details-marker{display:none}
.bbcy-acc > summary::after{content:"";position:absolute;right:12px;top:50%;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-70%) rotate(45deg)}
.bbcy-acc[open] > summary::after{transform:translateY(-30%) rotate(-135deg)}
.bbcy-acc > summary:focus-visible{outline:2px solid var(--encre,#241E1A);outline-offset:2px;border-radius:8px}
.bbcy-more{display:block}
.bbcy-more > summary{min-height:36px;padding:4px 32px 4px 12px;border-radius:999px;border:1.5px dashed var(--cy-line);font:500 13px var(--f-body,'Inter',system-ui,sans-serif)}
.bbcy-more > summary span{color:var(--cy-muted);margin-left:4px}
.bbcy-morel{display:flex;flex-wrap:wrap;gap:8px}
.bbcy-box{padding:6px 18px 14px}
.bbcy-box > summary h3{margin:0;font:600 18px var(--f-display,'Poppins',system-ui,sans-serif)}
.bbcy-box > summary{padding-top:6px;padding-bottom:6px}
.bbcy-box[open] > summary{margin-bottom:8px}
.bbcy-srcd > summary{font-weight:600;color:var(--cy-ink);font-size:13.5px;min-height:44px}
.bbcy-swipe{display:none}
@media (min-width:641px){.bbcy-more > summary{display:none}.bbcy-more{display:inline-block}}
@media (max-width:640px){
  .bbcy{display:flex;flex-direction:column}
  .bbcy-head{order:0}.bbcy-ctrls{order:1}.bbcy-nocontra{order:2}.bbcy-chart{order:3}.bbcy-legend{order:4;margin:10px 0 0}
  .bbcy-panel{order:5}.bbcy-box{order:6}.bbcy-src{order:7}
  .bbcy-more{display:block;flex-basis:100%}
  .bbcy-more[open] > summary{margin-bottom:8px}
  .bbcy-ctrls{gap:4px 12px;margin-bottom:8px}
  .bbcy-ctl{gap:10px}
  .bbcy-ctl label{min-width:104px}
  .bbcy-ctl output{min-width:0}
  .bbcy-btn{min-height:44px}
  .bbcy-legend{gap:6px}
  .bbcy-chart{padding:10px 8px 8px}
  .bbcy-swipe{display:block;margin:6px 6px 0;font-size:12.5px;color:var(--cy-muted)}
  .bbcy-panel{padding:16px 18px}
  .bbcy-box{margin-top:18px;padding:4px 14px 10px}
  .bbcy-box > summary h3{font-size:16px}
}
@media (max-width:720px){.bbcy-cols{grid-template-columns:1fr}.bbcy-ctl{flex-basis:100%}}
@media (prefers-reduced-motion:reduce){.bbcy-h{transition:none!important}}

