/* biboo.ch : accueil, pages rubriques, pages articles, pages émissions et grille. Généré depuis site.css + extra.css. */
.bbs { --noir:#1D1D1B; --blanc:#fff; --nuage:#F4F4F7; --trait:#E4E4E9; --gris:#5E5E5A;
  --rouge:#E30613; --orange:#F39200; --lilas:#AB8BC0; --lilas-encre:#7A5AA6;
  --f-sign:"Comfortaa","Nunito",system-ui,sans-serif;
  --f-titre:"Nunito",system-ui,sans-serif;
  --f-texte:"Nunito Sans","Nunito",system-ui,sans-serif;
  color-scheme: light; }
.bbs *, .bbs *::before, .bbs *::after { box-sizing:border-box; }
.bbs { margin:0; background:var(--blanc); color:var(--noir); font:400 16px/1.55 var(--f-texte); }
.bbs [hidden] { display:none !important; }
.bbs a { color:inherit; text-decoration:none; }
.bbs h1, .bbs h2, .bbs h3, .bbs p { margin:0; }
.bbs h1, .bbs h2 { text-wrap:balance; }
.bbs .bbs-wrap { max-width:1200px; margin:0 auto; padding-left:max(16px, env(safe-area-inset-left, 0px)); padding-right:max(16px, env(safe-area-inset-right, 0px)); }
.bbs :focus-visible { outline:3px solid var(--noir); outline-offset:2px; }
@keyframes bbs-pulse { 50% { opacity:.35; } }
.bbs .bbs-chip { display:inline-flex; align-self:flex-start; justify-self:start; background:var(--c); color:#fff; font:800 .68rem/1 var(--f-titre); letter-spacing:.08em; text-transform:uppercase; padding:6px 10px; border-radius:999px; }
.bbs .bbs-date { color:var(--gris); font-size:.8rem; font-variant-numeric:tabular-nums; }
.bbs .bbs-eyebrow { font:800 12px/1 var(--f-titre); letter-spacing:.1em; text-transform:uppercase; color:var(--orange-encre, #A35A00); }
.bbs .bbs-eyebrow.bbs-lil, .bbs .bbs-more.bbs-lil { color:var(--lilas-encre); }
.bbs .bbs-head { display:flex; justify-content:space-between; align-items:end; gap:16px; flex-wrap:wrap; margin-bottom:24px; }
.bbs h2 { font:900 clamp(1.35rem,2.4vw,1.75rem)/1.15 var(--f-titre); margin-top:8px; }
.bbs .bbs-more { font:800 .92rem var(--f-titre); white-space:nowrap; }
.bbs .bbs-more:hover { text-decoration:underline; text-underline-offset:3px; }
.bbs .bbs-im, .bbs .bbs-lim, .bbs .bbs-sim, .bbs .bbs-rim, .bbs .bbs-bim, .bbs .bbs-gim, .bbs .bbs-fim { display:block; background:#ddd center/cover no-repeat; border-radius:14px; position:relative; overflow:hidden; max-width:100%; }
.bbs .bbs-ph { background:var(--c); }
.bbs .bbs-ph i { position:absolute; width:70%; aspect-ratio:1; border-radius:50%; background:#fff; opacity:.22; right:-18%; top:-30%; }
.bbs .bbs-bubbles { position:relative; overflow:hidden; }
.bbs .bbs-bubbles > .bbs-b { position:absolute; border-radius:50%; pointer-events:none; }
.bbs section { padding-block:48px; }
.bbs .bbs-hero { padding-block:0 56px; }
.bbs .bbs-herotop { padding-block:34px 18px; }
.bbs .bbs-herotop .bbs-wrap { position:relative; display:flex; align-items:baseline; gap:14px; }
.bbs .bbs-today { font:700 1.05rem var(--f-sign); color:var(--gris); }
.bbs .bbs-herotop .bbs-b1 { width:300px; height:300px; right:-60px; top:-200px; background:var(--c); opacity:.55; }
.bbs .bbs-herotop .bbs-b2 { width:90px; height:90px; right:250px; top:-40px; background:var(--orange); opacity:.4; }
.bbs .bbs-herotop .bbs-b3 { width:18px; height:18px; right:200px; top:52px; background:var(--lilas); }
.bbs .bbs-herogrid { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,1fr); gap:32px; }
.bbs .bbs-lead { display:grid; gap:16px; }
.bbs .bbs-lim { aspect-ratio:16/9; border-radius:18px; transition:transform .2s; }
.bbs .bbs-lead:hover .bbs-lim { transform:translateY(-3px); }
.bbs .bbs-lbody { display:grid; gap:10px; }
.bbs .bbs-ltitle { font:900 clamp(1.6rem,3.2vw,2.4rem)/1.12 var(--f-titre); text-wrap:balance; }
.bbs .bbs-lead:hover .bbs-ltitle { text-decoration:underline; text-decoration-color:var(--c); text-decoration-thickness:3px; text-underline-offset:5px; }
.bbs .bbs-chapo { color:var(--gris); font-size:1.05rem; max-width:44em; }
.bbs .bbs-side { display:grid; gap:18px; align-content:start; }
.bbs .bbs-sitem { display:grid; grid-template-columns:120px minmax(0,1fr); gap:14px; align-items:start; padding-bottom:18px; border-bottom:1px solid var(--trait); }
.bbs .bbs-sitem:last-child { border-bottom:0; }
.bbs .bbs-sim { aspect-ratio:1; border-radius:12px; }
.bbs .bbs-sbody { display:grid; gap:6px; }
.bbs .bbs-stitle { font:800 1rem/1.3 var(--f-titre); }
.bbs .bbs-sitem:hover .bbs-stitle { color:var(--gris); }
.bbs .bbs-explore, .bbs .bbs-otherrub { padding-block:0; border-block:1px solid var(--trait); background:var(--nuage); }
.bbs .bbs-otherrub { border-bottom:0; }
.bbs .bbs-exin { display:flex; gap:10px; align-items:center; padding-block:16px; overflow-x:auto; scrollbar-width:none; }
.bbs .bbs-exin > span { font:800 12px var(--f-titre); letter-spacing:.1em; text-transform:uppercase; color:var(--gris); margin-right:6px; white-space:nowrap; }
.bbs .bbs-exin a { display:inline-flex; align-items:center; gap:8px; background:#fff; border:1px solid var(--trait); border-radius:999px; padding:8px 14px; font:800 .9rem var(--f-titre); white-space:nowrap; }
.bbs .bbs-exin a::before { content:""; width:9px; height:9px; border-radius:50%; background:var(--c); }
.bbs .bbs-exin a:hover { border-color:var(--c); }
.bbs .bbs-nowgrid { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,1fr); gap:40px; }
.bbs .bbs-fil { list-style:none; margin:0; padding:0; counter-reset:f; }
.bbs .bbs-fil li { border-top:1px solid var(--trait); }
.bbs .bbs-fil li:first-child { border-top:0; }
.bbs .bbs-fil a { display:grid; gap:6px; padding:14px 0 14px 44px; position:relative; }
.bbs .bbs-fil a::before { counter-increment:f; content:counter(f, decimal-leading-zero); position:absolute; left:0; top:14px; font:700 1.1rem var(--f-sign); color:#C9C9CF; }
.bbs .bbs-fmeta { display:flex; gap:10px; align-items:center; }
.bbs .bbs-ftitle { font:800 1.05rem/1.3 var(--f-titre); }
.bbs .bbs-fil a:hover .bbs-ftitle { color:var(--gris); }
.bbs .bbs-rail { display:grid; gap:18px; align-content:start; }
.bbs .bbs-radio { background:var(--noir); color:#F4F4F7; border-radius:20px; padding:22px; display:grid; gap:14px; }
.bbs .bbs-radio .bbs-r1 { width:220px; height:220px; right:-90px; top:-110px; background:var(--rouge); opacity:.85; }
.bbs .bbs-radio .bbs-r2 { width:16px; height:16px; right:110px; top:70px; background:var(--orange); }
.bbs .bbs-radio > * { position:relative; }
.bbs .bbs-rlabel { font:800 12px/1 var(--f-titre); letter-spacing:.1em; text-transform:uppercase; color:#B4B4B0; display:flex; gap:8px; align-items:center; }
.bbs .bbs-rlabel i { width:8px; height:8px; border-radius:50%; background:var(--rouge); box-shadow:0 0 0 4px rgba(227,6,19,.25); }
.bbs .bbs-rshow { font:700 1.7rem/1.1 var(--f-sign); }
.bbs .bbs-rtrack { display:grid; grid-template-columns:48px minmax(0,1fr); gap:12px; align-items:center; background:#2A2A28; border-radius:12px; padding:10px; }
.bbs .bbs-rcover { width:48px; height:48px; border-radius:8px; background:linear-gradient(135deg,#E71E73,#F39200); }
.bbs .bbs-rtrack small { display:block; color:#B4B4B0; font-size:.75rem; }
.bbs .bbs-rtrack b { font:800 .95rem/1.25 var(--f-titre); }
.bbs .bbs-rplay, .bbs .bbs-pmplay { display:inline-flex; align-items:center; gap:12px; justify-self:start; background:var(--rouge); color:#fff; border-radius:999px; padding:6px 20px 6px 6px; font:800 1rem var(--f-titre); }
.bbs .bbs-disc { width:38px; height:38px; border-radius:50%; background:#fff; color:var(--rouge); display:grid; place-items:center; flex:none; }
.bbs .bbs-disc svg { width:16px; height:16px; }
.bbs .bbs-rlink { font:700 .85rem var(--f-texte); color:#B4B4B0; }
.bbs .bbs-rlink:hover { color:#fff; }
.bbs .bbs-podmini { background:#EFE8F4; border-radius:20px; padding:18px; display:grid; gap:12px; }
.bbs .bbs-pmlabel { font:800 12px/1 var(--f-titre); letter-spacing:.1em; text-transform:uppercase; color:var(--lilas-encre); }
.bbs .bbs-pmrow { display:grid; grid-template-columns:64px minmax(0,1fr); gap:12px; align-items:center; }
.bbs .bbs-pmcover { width:64px; height:64px; border-radius:10px; background:#ddd center/cover; }
.bbs .bbs-pmseries { display:inline-flex; align-items:center; gap:6px; font:800 .7rem var(--f-titre); letter-spacing:.06em; text-transform:uppercase; }
.bbs .bbs-pmseries::before { content:""; width:8px; height:8px; border-radius:50%; background:var(--c); }
.bbs .bbs-pmtitle { display:block; font:800 .95rem/1.3 var(--f-titre); margin-top:4px; }
.bbs .bbs-pmplay { background:var(--lilas); color:var(--noir); }
.bbs .bbs-pmplay .bbs-disc { background:var(--noir); color:var(--lilas); }
.bbs .bbs-encart { padding-block:24px; text-align:center; border-block:1px solid var(--trait); }
.bbs .bbs-encart span { display:block; font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; color:var(--gris); margin-bottom:6px; }
.bbs .bbs-encart .bbs-eslot { max-width:728px; height:90px; margin:0 auto; border-radius:6px; background:repeating-linear-gradient(45deg,#E6E6EA 0 10px,#EEEEF1 10px 20px); display:grid; place-items:center; color:var(--gris); font-size:.85rem; }
.bbs .bbs-maison { padding-block:32px; }
.bbs .bbs-mslot { max-width:970px; min-height:140px; margin:0 auto; border-radius:12px; border:2px dashed var(--orange); display:grid; place-content:center; gap:6px; text-align:center; padding:20px; color:var(--gris); font-size:.9rem; }
.bbs .bbs-mslot strong { font:900 1.1rem var(--f-titre); color:#A35A00; }
.bbs .bbs-rub.bbs-alt { background:var(--nuage); }
.bbs .bbs-rhead { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:22px; padding-bottom:12px; border-bottom:3px solid var(--c); }
.bbs .bbs-rhead h2 { margin:0; display:flex; align-items:center; gap:10px; }
.bbs .bbs-rhead h2 i { width:14px; height:14px; border-radius:50%; background:var(--c); }
.bbs .bbs-rhead .bbs-more { color:var(--noir); }
.bbs .bbs-rgrid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:32px; }
.bbs .bbs-rbig { display:grid; gap:10px; align-content:start; }
.bbs .bbs-bim { aspect-ratio:16/9; transition:transform .2s; }
.bbs .bbs-rbig:hover .bbs-bim { transform:translateY(-3px); }
.bbs .bbs-btitle { font:900 1.4rem/1.2 var(--f-titre); margin-top:4px; }
.bbs .bbs-bx { color:var(--gris); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.bbs .bbs-rlist { display:grid; gap:16px; align-content:start; }
.bbs .bbs-ritem { display:grid; grid-template-columns:132px minmax(0,1fr); gap:14px; align-items:center; }
.bbs .bbs-rim { aspect-ratio:4/3; border-radius:12px; }
.bbs .bbs-rtitle { display:block; font:800 1rem/1.3 var(--f-titre); margin-bottom:4px; }
.bbs .bbs-ritem:hover .bbs-rtitle, .bbs .bbs-rbig:hover .bbs-btitle { text-decoration:underline; text-decoration-color:var(--c); text-decoration-thickness:2px; text-underline-offset:4px; }
.bbs .bbs-duogrid { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.bbs .bbs-pods { background:var(--noir); color:#F4F4F7; }
.bbs .bbs-pods .bbs-eyebrow.bbs-lil, .bbs .bbs-pods .bbs-more.bbs-lil { color:var(--lilas); }
.bbs .bbs-podgrid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.bbs .bbs-pod { display:grid; gap:8px; }
.bbs .bbs-pcover { aspect-ratio:1; border-radius:16px; background:#333 center/cover; position:relative; display:block; }
.bbs .bbs-pbtn { position:absolute; left:14px; bottom:14px; width:52px; height:52px; border-radius:50%; background:var(--lilas); color:var(--noir); display:grid; place-items:center; transition:transform .15s; }
.bbs .bbs-pbtn svg { width:20px; height:20px; }
.bbs .bbs-pod:hover .bbs-pbtn { transform:scale(1.08); }
.bbs .bbs-pseries { display:inline-flex; align-items:center; gap:6px; font:800 .72rem var(--f-titre); letter-spacing:.08em; text-transform:uppercase; color:#B4B4B0; margin-top:4px; }
.bbs .bbs-pseries::before { content:""; width:8px; height:8px; border-radius:50%; background:var(--c); }
.bbs .bbs-ptitle { font:800 1.05rem/1.3 var(--f-titre); }
.bbs .bbs-svc { background:var(--nuage); border-top:1px solid var(--trait); }
.bbs .bbs-svcgrid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.bbs .bbs-svcgrid a { display:flex; gap:12px; align-items:center; background:#fff; border:1px solid var(--trait); border-radius:14px; padding:14px 16px; }
.bbs .bbs-svcgrid a:hover { border-color:var(--noir); }
.bbs .bbs-svcgrid .bbs-ic { width:42px; height:42px; border-radius:12px; background:var(--noir); color:#fff; display:grid; place-items:center; flex:none; }
.bbs .bbs-svcgrid .bbs-ic svg { width:20px; height:20px; }
.bbs .bbs-svcgrid b { display:block; font:800 1rem var(--f-titre); }
.bbs .bbs-svcgrid small { color:var(--gris); font-size:.82rem; }
.bbs .bbs-rhero { padding-block:48px 40px; }
.bbs .bbs-rhero .bbs-b1 { width:420px; height:420px; right:-140px; top:-200px; background:var(--c); opacity:.55; }
.bbs .bbs-rhero .bbs-b2 { width:150px; height:150px; right:200px; bottom:-90px; background:var(--c); opacity:.22; }
.bbs .bbs-rhero .bbs-b3 { width:20px; height:20px; right:170px; top:60px; background:var(--orange); }
.bbs .bbs-rhero .bbs-wrap { position:relative; }
.bbs .bbs-crumb { font:800 12px var(--f-titre); letter-spacing:.1em; text-transform:uppercase; color:var(--gris); }
.bbs .bbs-crumb span { margin:0 6px; }
.bbs .bbs-rname { font:700 clamp(2.6rem,7vw,4.6rem)/1 var(--f-sign); letter-spacing:-.02em; margin-top:12px; }
.bbs .bbs-rname em { font-style:normal; color:var(--c); }
.bbs .bbs-rdesc { color:var(--gris); font-size:1.1rem; max-width:38em; margin-top:16px; }
.bbs .bbs-rcount { display:inline-flex; margin-top:16px; font:800 .8rem var(--f-titre); background:var(--nuage); border-radius:999px; padding:6px 12px; }
.bbs .bbs-rfeat { padding-block:8px 40px; }
.bbs .bbs-feat { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:36px; align-items:center; background:var(--nuage); border-radius:22px; padding:18px; }
.bbs .bbs-fim { aspect-ratio:16/10; border-radius:16px; }
.bbs .bbs-fbody { display:grid; gap:12px; padding-right:12px; }
.bbs .bbs-ftitle2 { font:900 clamp(1.5rem,2.8vw,2.1rem)/1.15 var(--f-titre); }
.bbs .bbs-fread { font:800 .95rem var(--f-titre); }
.bbs .bbs-feat:hover .bbs-fread { text-decoration:underline; text-decoration-color:var(--c); text-decoration-thickness:2px; text-underline-offset:4px; }
.bbs .bbs-rgridsec { padding-block:16px 40px; }
.bbs .bbs-ggrid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px 26px; }
.bbs .bbs-gcard { display:grid; gap:8px; align-content:start; }
.bbs .bbs-gim { aspect-ratio:16/10; margin-bottom:6px; transition:transform .2s; }
.bbs .bbs-gcard:hover .bbs-gim { transform:translateY(-3px); }
.bbs .bbs-gtitle { font:800 1.12rem/1.3 var(--f-titre); }
.bbs .bbs-gcard:hover .bbs-gtitle { text-decoration:underline; text-decoration-color:var(--c); text-decoration-thickness:2px; text-underline-offset:4px; }
.bbs .bbs-gx { color:var(--gris); font-size:.92rem; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.bbs .bbs-loadmore { display:flex; justify-content:center; margin-top:32px; }
.bbs .bbs-loadmore button { font:800 .95rem var(--f-titre); border:1px solid var(--noir); background:transparent; color:var(--noir); border-radius:999px; padding:12px 22px; cursor:pointer; }
.bbs .bbs-loadmore button:hover { background:var(--noir); color:#fff; }
.bbs .bbs-cross { background:var(--noir); color:#fff; }
.bbs .bbs-crossin { display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap; }
.bbs .bbs-cross p { font:800 1.2rem/1.3 var(--f-titre); }
.bbs .bbs-cross small { display:block; font:400 .95rem var(--f-texte); color:#B4B4B0; margin-top:4px; }
.bbs .bbs-redbtn { display:inline-flex; align-items:center; gap:10px; background:var(--rouge); color:#fff; border-radius:999px; padding:12px 22px; font:800 1rem var(--f-titre); }
.bbs .bbs-redbtn i { width:9px; height:9px; border-radius:50%; background:#fff; }
@media (max-width:960px) {
  .bbs .bbs-herogrid, .bbs .bbs-nowgrid, .bbs .bbs-rgrid, .bbs .bbs-feat { grid-template-columns:1fr; }
  .bbs .bbs-side { grid-template-columns:1fr; }
  .bbs .bbs-svcgrid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bbs .bbs-ggrid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bbs .bbs-duogrid { grid-template-columns:1fr; gap:48px; }
  .bbs .bbs-fbody { padding:0 6px 6px; }
}
@media (max-width:600px) {
  .bbs section { padding-block:36px; }
  .bbs .bbs-hero .bbs-b1 { width:240px; height:240px; right:-90px; top:-120px; }
  .bbs .bbs-hero .bbs-b2 { display:none; }
  .bbs .bbs-rhero .bbs-b1 { width:260px; height:260px; right:-110px; top:-130px; }
  .bbs .bbs-podgrid { grid-template-columns:1fr; }
  .bbs .bbs-pod { grid-template-columns:96px minmax(0,1fr); align-items:center; gap:4px 14px; }
  .bbs .bbs-pcover { grid-row:span 2; }
  .bbs .bbs-pbtn { width:36px; height:36px; left:8px; bottom:8px; }
  .bbs .bbs-pbtn svg { width:14px; height:14px; }
  .bbs .bbs-ggrid { grid-template-columns:1fr; }
  .bbs .bbs-svcgrid { grid-template-columns:1fr; }
  .bbs .bbs-sitem { grid-template-columns:96px minmax(0,1fr); }
  .bbs .bbs-ritem { grid-template-columns:104px minmax(0,1fr); }
  .bbs .bbs-encart .bbs-eslot { height:100px; }
}
@media (prefers-reduced-motion:reduce) {
  .bbs *, .bbs *::before, .bbs *::after { transition:none !important; animation:none !important; }
}
@media (max-width:600px) {
  .bbs .bbs-herotop .bbs-b1 { width:130px; height:130px; right:-56px; top:-80px; }
  .bbs .bbs-herotop .bbs-b2, .bbs .bbs-herotop .bbs-b3, .bbs .bbs-rhero .bbs-b2 { display:none; }
  .bbs .bbs-rhero .bbs-b3 { right:120px; top:40px; }
}
.bbs .bbs-hero { background:var(--noir); color:#F4F4F7; position:relative; overflow:hidden; }
.bbs .bbs-hero::before { content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(circle at -70px calc(100% + 70px), rgba(0,150,64,.5) 0 150px, transparent 151px),
             radial-gradient(circle at 190px calc(100% - 34px), rgba(243,146,0,.9) 0 9px, transparent 10px); }
.bbs .bbs-hero > * { position:relative; }
.bbs .bbs-hero .bbs-eyebrow { color:var(--orange); }
.bbs .bbs-hero .bbs-today, .bbs .bbs-hero .bbs-chapo, .bbs .bbs-hero .bbs-date { color:#B4B4B0; }
.bbs .bbs-hero .bbs-sitem { border-color:#3A3A37; }
.bbs .bbs-hero .bbs-sitem:hover .bbs-stitle { color:#fff; text-decoration:underline; text-decoration-color:var(--c); text-underline-offset:4px; }
.bbs .bbs-hero .bbs-herotop .bbs-b1 { opacity:.85; }
.bbs .bbs-hero .bbs-herotop .bbs-b2 { opacity:.55; }
.bbs .bbs-hero .bbs-lim, .bbs .bbs-hero .bbs-sim { background-color:#2A2A28; }
@media (max-width:600px) {
  .bbs .bbs-hero::before { background:radial-gradient(circle at -50px calc(100% + 50px), rgba(0,150,64,.45) 0 90px, transparent 91px); }
}
.bbs .bbs-hero .bbs-herotop { overflow:visible; position:static; }
.bbs .bbs-hero .bbs-herotop .bbs-wrap, .bbs .bbs-hero > .bbs-wrap { position:relative; z-index:1; }
.bbs .bbs-hero .bbs-herotop .bbs-b { z-index:0; }
.bbs .bbs-hero .bbs-ph { background-color:var(--c); }
.bbs .bbs-shows { background:var(--noir); color:#F4F4F7; }
.bbs .bbs-shows .bbs-s1 { width:260px; height:260px; right:-100px; top:-130px; background:var(--rouge); opacity:.85; }
.bbs .bbs-shows .bbs-s2 { width:16px; height:16px; right:200px; top:46px; background:var(--orange); }
.bbs .bbs-shows .bbs-wrap { position:relative; }
.bbs .bbs-eyebrow.bbs-red { color:#FF4D57; }
.bbs .bbs-shows .bbs-more { color:#F4F4F7; }
.bbs .bbs-showgrid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.bbs .bbs-show { display:grid; gap:6px; align-content:start; background:#2A2A28; border:1px solid #3A3A37; border-radius:16px; padding:10px 10px 16px; transition:border-color .15s; }
.bbs .bbs-show:hover { border-color:#B4B4B0; }
.bbs .bbs-show.bbs-onair { border-color:var(--rouge); }
.bbs .bbs-shimg { aspect-ratio:3/2; border-radius:10px; background:#3A3A37 center/cover; position:relative; display:block; margin-bottom:6px; }
.bbs .bbs-onair-tag { position:absolute; left:8px; top:8px; display:inline-flex; gap:6px; align-items:center; background:var(--rouge); color:#fff; font:800 .7rem/1 var(--f-titre); letter-spacing:.06em; text-transform:uppercase; padding:6px 9px; border-radius:999px; }
.bbs .bbs-onair-tag i { width:7px; height:7px; border-radius:50%; background:#fff; animation:bbs-pulse 1.6s ease-in-out infinite; }
.bbs .bbs-shtime { font:700 .85rem var(--f-sign); color:#B4B4B0; padding-inline:4px; font-variant-numeric:tabular-nums; }
.bbs .bbs-shname { font:900 1.15rem/1.2 var(--f-titre); padding-inline:4px; }
.bbs .bbs-shdesc { color:#B4B4B0; font-size:.88rem; line-height:1.4; padding-inline:4px; }
.bbs .bbs-railencart { text-align:center; }
.bbs .bbs-railencart span { display:block; font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; color:var(--gris); margin-bottom:6px; }
.bbs .bbs-railencart div { width:300px; max-width:100%; height:250px; margin:0 auto; border-radius:6px; background:repeating-linear-gradient(45deg,#E6E6EA 0 10px,#EEEEF1 10px 20px); display:grid; place-items:center; color:var(--gris); font-size:.85rem; }
.bbs .bbs-railmaison { border:2px dashed var(--orange); border-radius:12px; min-height:120px; display:grid; place-content:center; text-align:center; gap:4px; color:var(--gris); font-size:.85rem; }
.bbs .bbs-railmaison strong { font:900 1rem var(--f-titre); color:#A35A00; }
@media (max-width:960px) {
  .bbs .bbs-showgrid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
  .bbs .bbs-showgrid { grid-template-columns:1fr; }
  .bbs .bbs-show { grid-template-columns:110px minmax(0,1fr); gap:2px 12px; }
  .bbs .bbs-shimg { grid-row:span 3; margin:0; align-self:start; }
  .bbs .bbs-shows .bbs-s1 { width:160px; height:160px; right:-70px; top:-80px; }
}
.bbs .bbs-fil { display:grid; grid-template-columns:1fr 1fr; gap:28px 24px; margin-top:8px; }
.bbs .bbs-fil li, .bbs .bbs-fil li:first-child { border-top:0; }
.bbs .bbs-fil a { padding:0; gap:8px; align-content:start; }
.bbs .bbs-fil a::before { display:none; }
.bbs .bbs-fil .bbs-fim { display:block; width:100%; aspect-ratio:16/10; border-radius:12px; background-size:cover; background-position:center; margin-bottom:4px; }
.bbs .bbs-fil .bbs-ftitle { font-size:1.02rem; line-height:1.3; }
@media (max-width:640px) {
  .bbs .bbs-fil { gap:22px 14px; }
  .bbs .bbs-fil .bbs-ftitle { font-size:.9rem; }
  .bbs .bbs-fil .bbs-fim { border-radius:10px; }
  .bbs .bbs-fil .bbs-fmeta { flex-wrap:wrap; gap:4px 8px; }
}
/* ---- Intégration WordPress ---- */
/* pleine largeur, même dans un conteneur étroit du thème (--bbr-sb calculée en JS) */
.bbs {
  width: calc(100vw - var(--bbr-sb, 0px)) !important; max-width: none !important;
  margin-left: calc(50% - 50vw + var(--bbr-sb, 0px) / 2) !important; margin-right: calc(50% - 50vw + var(--bbr-sb, 0px) / 2) !important;
  margin-top: 0 !important; overflow-x: clip; text-align: left;
}
.bbs-page { padding: 0 !important; }
.bbs.bbs a, .bbs.bbs a:hover, .bbs.bbs a:focus { color: inherit; text-decoration: none; box-shadow: none; }
.bbs.bbs h1, .bbs.bbs h2, .bbs.bbs h3 { color: inherit; letter-spacing: normal; text-transform: none; padding: 0; }
.bbs.bbs h2 { font: 900 clamp(1.35rem,2.4vw,1.75rem)/1.15 var(--f-titre); margin: 8px 0 0; }
.bbs.bbs .bbs-rhead h2 { margin: 0; }
.bbs.bbs h1.bbs-rname { font: 700 clamp(2.6rem,7vw,4.6rem)/1 var(--f-sign); letter-spacing: -.02em; margin: 12px 0 0; }
.bbs.bbs p { margin: 0; padding: 0; }
.bbs ol, .bbs ul { list-style: none !important; margin: 0; padding: 0; }
.bbs li { margin: 0; list-style: none !important; }
.bbs li::before { content: none; }
.bbs.bbs section { margin: 0; border-radius: 0; }
.bbs button { font-family: var(--f-titre); border: 0; cursor: pointer; text-transform: none; letter-spacing: normal; box-shadow: none; }
.bbs .bbs-im, .bbs .bbs-lim, .bbs .bbs-sim, .bbs .bbs-rim, .bbs .bbs-bim, .bbs .bbs-gim, .bbs .bbs-fim { background-color: #E4E4E9; }
.bbs .bbs-im img, .bbs .bbs-lim img, .bbs .bbs-sim img, .bbs .bbs-rim img, .bbs .bbs-bim img, .bbs .bbs-gim img, .bbs .bbs-fim img {
  position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; display: block; margin: 0; border-radius: 0; }
.bbs .bbs-ph { background-color: var(--c) !important; }
.bbs .bbs-rshow { display: block; }
.bbs .bbs-rshow:hover { text-decoration: underline; text-decoration-color: var(--rouge); text-underline-offset: 5px; }
.bbs .bbs-rcover { background: linear-gradient(135deg,#E71E73,#F39200) center/cover; }
.bbs .bbs-rcover.bbs-has { background-size: cover; }
.bbs .bbs-rtrack b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bbs .bbs-rplay { padding: 6px 20px 6px 6px; }
.bbs .bbs-rplay:hover, .bbs .bbs-rplay:focus-visible { background: #C00510; }
.bbs .bbs-rplay[aria-pressed="true"] .bbs-disc { animation: bbs-pulse 1.6s ease-in-out infinite; }
.bbs .bbs-rplay.bbs-loading .bbs-disc svg { animation: bbs-spin 1s linear infinite; }
@keyframes bbs-spin { to { transform: rotate(360deg); } }
.bbs .bbs-disc svg { width: 16px; height: 16px; }
.bbs .bbs-pmrow:hover .bbs-pmtitle, .bbs .bbs-ptitle:hover { text-decoration: underline; text-underline-offset: 3px; }
.bbs .bbs-ptitle { display: block; }

/* boutons podcast : l'icône est dessinée en CSS, le lecteur du thème bascule lecture / pause */
.bbs .qtmplayer-play-btn { cursor: pointer; }
.bbs .qtmplayer-play-btn i.material-icons { font-size: 0 !important; width: 0; height: 0; overflow: hidden; position: absolute; }
.bbs .bbs-pbtn::before, .bbs .bbs-pmplay .bbs-disc::before { content: ""; width: 18px; height: 18px; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5.5v13l10.5-6.5z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5.5v13l10.5-6.5z'/%3E%3C/svg%3E") center / contain no-repeat; }
.bbs .bbs-pmplay .bbs-disc::before { width: 15px; height: 15px; }
.bbs .qtmplayer-played .bbs-pbtn::before, .bbs .bbs-pbtn.bbs-playing::before,
.bbs .qtmplayer-played .bbs-pmplay .bbs-disc::before, .bbs .bbs-pmplay.bbs-playing .bbs-disc::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='6.5' y='5' width='4' height='14' rx='1'/%3E%3Crect x='13.5' y='5' width='4' height='14' rx='1'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='6.5' y='5' width='4' height='14' rx='1'/%3E%3Crect x='13.5' y='5' width='4' height='14' rx='1'/%3E%3C/svg%3E"); }
.bbs .bbs-pmplay:hover { background: #BEA3D0; }

/* publicité et autopromos réelles */
.bbs .bbs-encart .bbs-eslot { height: auto; min-height: 90px; display: block; background: none; }
.bbs .bbs-railencart div { height: auto; min-height: 250px; display: block; background: none; }
.bbs .bbs-mslot { border: 0; min-height: 0; padding: 0; display: block; }
.bbs .bbs-mslot img, .bbs .bbs-railmaison img { display: block; width: 100%; height: auto; border-radius: 12px; }
.bbs .bbs-railmaison { border: 0; min-height: 0; display: block; }

/* page rubrique : bande noire, comme l'accueil, la radio et les podcasts */
.bbs .bbs-rhero { background: var(--noir); color: #F4F4F7; padding-block: 56px 48px; }
.bbs .bbs-rhero .bbs-b1 { opacity: .85; }
.bbs .bbs-rhero .bbs-b2 { opacity: .35; }
.bbs .bbs-rhero .bbs-crumb, .bbs .bbs-rhero .bbs-rdesc { color: #B4B4B0; }
.bbs .bbs-rhero .bbs-crumb a:hover { color: #fff; }
.bbs .bbs-rmeta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; align-items: center; }
.bbs .bbs-rhero .bbs-rcount { margin: 0; background: #2A2A28; color: #F4F4F7; }
.bbs .bbs-rsub { font: 800 .8rem var(--f-titre); border: 1px solid #3A3A37; border-radius: 999px; padding: 5px 12px; color: #F4F4F7; }
.bbs .bbs-rsub:hover, .bbs .bbs-rsub.bbs-on { border-color: var(--c); background: var(--c); }
.bbs .bbs-rfeat { padding-top: 40px; }
.bbs .bbs-loadmore { flex-direction: column; align-items: center; gap: 10px; }
.bbs .bbs-morebtn { font: 800 .95rem var(--f-titre); border: 1px solid var(--noir); border-radius: 999px; padding: 12px 22px; }
.bbs .bbs-morebtn:hover { background: var(--noir); color: #fff !important; }
.bbs .bbs-morebtn.bbs-busy { opacity: .5; pointer-events: none; }
.bbs .bbs-redbtn:hover { background: #C00510; }
@media (max-width:600px) { .bbs .bbs-rhero { padding-block: 40px 36px; } }
@media (max-width:600px) { .bbs .bbs-onair-tag { left:5px; top:5px; font-size:.58rem; padding:4px 6px; gap:4px; } .bbs .bbs-onair-tag i { width:5px; height:5px; } }

/* ---- Page article ---- */
.bbs .bbs-ahero { background: var(--noir); color: #F4F4F7; padding-block: 56px 44px; }
.bbs .bbs-ahero .bbs-b1 { width: 380px; height: 380px; right: -140px; top: -190px; background: var(--c); opacity: .85; }
.bbs .bbs-ahero .bbs-b2 { width: 120px; height: 120px; right: 220px; bottom: -70px; background: var(--c); opacity: .3; }
.bbs .bbs-ahero .bbs-b3 { width: 18px; height: 18px; right: 190px; top: 54px; background: var(--orange); }
.bbs .bbs-ahero .bbs-wrap { position: relative; }
.bbs .bbs-ahero .bbs-crumb { color: #B4B4B0; }
.bbs .bbs-ahero .bbs-crumb a:hover { color: #fff; }
.bbs.bbs h1.bbs-atitle { font: 900 clamp(1.8rem,4vw,3rem)/1.1 var(--f-titre); margin: 14px 0 0; max-width: 22em; }
.bbs .bbs-achapo { color: #D6D6D2; font-size: clamp(1.05rem,1.6vw,1.25rem); line-height: 1.5; max-width: 40em; margin-top: 16px; }
.bbs .bbs-ameta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-top: 20px; color: #B4B4B0; font-size: .88rem; }
.bbs .bbs-agrid { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 48px; padding-block: 40px 56px; align-items: start; }
.bbs .bbs-acol { min-width: 0; }
.bbs .bbs-afig { margin: 0 0 28px; }
.bbs .bbs-afig img { display: block; width: 100%; height: auto; border-radius: 18px; }
.bbs .bbs-afig figcaption { color: var(--gris); font-size: .82rem; margin-top: 8px; }
.bbs .bbs-prose { font-size: 1.1rem; line-height: 1.75; color: #2A2A28; }
.bbs .bbs-prose > * { margin: 0 0 1.15em; }
.bbs.bbs .bbs-prose h2 { font: 900 1.55rem/1.25 var(--f-titre); margin: 1.6em 0 .6em; }
.bbs.bbs .bbs-prose h3 { font: 800 1.25rem/1.3 var(--f-titre); margin: 1.4em 0 .5em; }
.bbs.bbs .bbs-prose p { margin: 0 0 1.15em; }
.bbs.bbs .bbs-prose a { color: var(--noir); text-decoration: underline; text-decoration-color: var(--c); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.bbs.bbs .bbs-prose a:hover { background: color-mix(in srgb, var(--c) 14%, transparent); }
.bbs .bbs-prose ul, .bbs .bbs-prose ol { padding-left: 1.4em; margin: 0 0 1.15em; }
.bbs .bbs-prose ul li { list-style: disc !important; margin-bottom: .4em; }
.bbs .bbs-prose ol li { list-style: decimal !important; margin-bottom: .4em; }
.bbs .bbs-prose ul li::marker { color: var(--c); }
.bbs .bbs-prose blockquote { margin: 1.6em 0; padding: 4px 0 4px 22px; border-left: 4px solid var(--c); font: 800 1.2rem/1.45 var(--f-titre); color: var(--noir); }
.bbs .bbs-prose blockquote p:last-child { margin: 0; }
.bbs .bbs-prose img, .bbs .bbs-prose video { max-width: 100%; height: auto; border-radius: 12px; }
.bbs .bbs-prose figure { margin: 1.6em 0; max-width: 100%; }
.bbs .bbs-prose figcaption, .bbs .bbs-prose .wp-caption-text { color: var(--gris); font-size: .82rem; margin-top: 6px; }
.bbs .bbs-prose iframe { max-width: 100%; border: 0; border-radius: 12px; }
.bbs .bbs-prose iframe[src*="youtube"], .bbs .bbs-prose iframe[src*="vimeo"] { width: 100%; height: auto; aspect-ratio: 16/9; }
.bbs .bbs-prose .wp-block-embed__wrapper { position: relative; }
.bbs .bbs-prose strong { font-weight: 700; color: var(--noir); }
.bbs .bbs-prose .bbp-slot { margin: 1.8em 0; }
.bbs .bbs-afoot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; align-items: center; border-top: 1px solid var(--trait); margin-top: 32px; padding-top: 20px; }
.bbs .bbs-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.bbs .bbs-tags a { font: 800 .82rem var(--f-titre); background: var(--nuage); border-radius: 999px; padding: 6px 12px; }
.bbs .bbs-tags a:hover { background: var(--c); color: #fff !important; }
.bbs .bbs-share { display: flex; align-items: center; gap: 8px; }
.bbs .bbs-share span { font: 800 12px var(--f-titre); letter-spacing: .1em; text-transform: uppercase; color: var(--gris); margin-right: 4px; }
.bbs .bbs-share a, .bbs .bbs-share button { width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--trait); background: #fff; color: var(--noir); display: grid; place-items: center; padding: 0; }
.bbs .bbs-share a:hover, .bbs .bbs-share button:hover, .bbs .bbs-share button.bbs-done { background: var(--noir); color: #fff !important; border-color: var(--noir); }
.bbs .bbs-share svg { width: 18px; height: 18px; }
.bbs .bbs-related { padding: 48px 0 0; }
.bbs .bbs-relgrid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.bbs .bbs-relgrid .bbs-gtitle { font-size: 1rem; }
.bbs .bbs-comments { padding-top: 40px; }

/* ---- Colonne de droite ---- */
.bbs .bbs-barre { display: grid; gap: 22px; align-content: start; min-width: 0; height: 100%; }
.bbs .bbs-barre .bbs-rshow { font-size: 1.5rem; }
.bbs .bbs-hist { border-top: 1px solid #3A3A37; padding-top: 14px; display: grid; gap: 10px; }
.bbs .bbs-histlabel { font: 800 11px/1 var(--f-titre); letter-spacing: .1em; text-transform: uppercase; color: #B4B4B0; }
.bbs .bbs-hist ol { display: grid; gap: 10px; }
.bbs .bbs-hist li { display: grid; grid-template-columns: 38px 36px minmax(0,1fr); gap: 10px; align-items: center; }
.bbs .bbs-htime { font: 700 .78rem var(--f-sign); color: #B4B4B0; font-variant-numeric: tabular-nums; }
.bbs .bbs-hcover { width: 36px; height: 36px; border-radius: 6px; background: #3A3A37 center/cover; }
.bbs .bbs-hwho { min-width: 0; }
.bbs .bbs-hwho b, .bbs .bbs-hwho small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bbs .bbs-hwho b { font: 800 .88rem/1.25 var(--f-titre); color: #F4F4F7; }
.bbs .bbs-hwho small { color: #B4B4B0; font-size: .78rem; }
.bbs .bbs-card { border: 1px solid var(--trait); border-radius: 18px; padding: 18px; background: #fff; }
.bbs .bbs-cardhead { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; margin-bottom: 14px; }
.bbs.bbs .bbs-cardhead h2 { font: 900 1.05rem/1.2 var(--f-titre); margin: 0; }
.bbs .bbs-cardhead a { font: 800 .82rem var(--f-titre); white-space: nowrap; }
.bbs .bbs-cardhead a:hover { text-decoration: underline; text-underline-offset: 3px; }
.bbs .bbs-next ul, .bbs .bbs-latest ul { display: grid; gap: 12px; }
.bbs .bbs-next a { display: grid; grid-template-columns: 64px minmax(0,1fr); gap: 12px; align-items: center; }
.bbs .bbs-nimg { width: 64px; height: 44px; border-radius: 8px; background: var(--nuage) center/cover; }
.bbs .bbs-next small { display: block; font: 700 .78rem var(--f-sign); color: var(--gris); font-variant-numeric: tabular-nums; }
.bbs .bbs-next b { font: 800 .95rem/1.25 var(--f-titre); }
.bbs .bbs-next a:hover b, .bbs .bbs-latest a:hover b { text-decoration: underline; text-underline-offset: 3px; }
.bbs .bbs-latest li + li { border-top: 1px solid var(--trait); padding-top: 12px; }
.bbs .bbs-latest a { display: grid; grid-template-columns: 72px minmax(0,1fr); gap: 12px; align-items: start; }
.bbs .bbs-lsim { display: block; position: relative; overflow: hidden; width: 72px; aspect-ratio: 1; border-radius: 10px; background-color: #E4E4E9; }
.bbs .bbs-lsim img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; object-fit: cover; }
.bbs .bbs-latest .bbs-chip { font-size: .6rem; padding: 4px 8px; margin-bottom: 5px; }
.bbs .bbs-latest b { display: block; font: 800 .9rem/1.3 var(--f-titre); }
.bbs .bbs-sticky { position: sticky; top: 100px; }
.bbs .bbs-sticky:empty { display: none; }
.bbs.bbs-solo { width: auto !important; margin: 0 !important; background: transparent; }
.bbs.bbs-solo .bbs-barre { height: auto; }

@media (max-width:960px) {
  .bbs .bbs-agrid { grid-template-columns: 1fr; gap: 40px; }
  .bbs .bbs-barre { height: auto; }
  .bbs .bbs-sticky { position: static; }
}
@media (max-width:600px) {
  .bbs .bbs-ahero { padding-block: 40px 32px; }
  .bbs .bbs-ahero .bbs-b1 { width: 180px; height: 180px; right: -80px; top: -90px; }
  .bbs .bbs-ahero .bbs-b2, .bbs .bbs-ahero .bbs-b3 { display: none; }
  .bbs .bbs-prose { font-size: 1.04rem; }
  .bbs .bbs-relgrid { grid-template-columns: 1fr; }
  .bbs .bbs-afig img { border-radius: 12px; }
}
.bbs.bbs .bbs-achapo { margin-top: 18px; }
.bbs .bbs-barre { grid-row: span 2; }
.bbs .bbs-comments { grid-column: 1; padding-top: 0; min-width: 0; }
.bbs .bbs-comments textarea, .bbs .bbs-comments input[type="text"], .bbs .bbs-comments input[type="email"], .bbs .bbs-comments input[type="url"] { width: 100%; max-width: 100%; border: 1px solid var(--trait); border-radius: 10px; padding: 10px 12px; font: 400 1rem var(--f-texte); background: #fff; color: var(--noir); }
.bbs .bbs-comments label { display: block; font: 800 .85rem var(--f-titre); margin: 12px 0 4px; }
.bbs .bbs-comments input[type="checkbox"] + label { display: inline; font-weight: 400; }
.bbs .bbs-comments input[type="submit"] { font: 800 .95rem var(--f-titre); background: var(--noir); color: #fff; border: 0; border-radius: 999px; padding: 12px 22px; cursor: pointer; margin-top: 12px; }
.bbs.bbs .bbs-comments h3 { font: 900 1.3rem/1.2 var(--f-titre); margin: 0 0 8px; }
@media (max-width:960px) { .bbs .bbs-barre { grid-row: auto; } }
/* en-tête d'article allégé : rubrique, titre, date, temps de lecture, auteur */
.bbs .bbs-ahero .bbs-crumbsec { display: inline-flex; align-items: center; gap: 7px; color: #F4F4F7; }
.bbs .bbs-ahero .bbs-crumbsec::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--c); box-shadow: 0 0 0 3px rgba(255,255,255,.12); }
.bbs .bbs-ameta { gap: 6px 0; }
.bbs .bbs-ameta span + span::before { content: "·"; margin: 0 10px; color: #6E6E6A; }
.bbs.bbs .bbs-achapo { color: var(--noir); font: 700 clamp(1.12rem,1.7vw,1.3rem)/1.5 var(--f-titre); margin: 0 0 24px; max-width: none; }
.bbs .bbs-agrid { padding-top: 36px; }
/* la colonne suit l'article : elle défile jusqu'à son dernier encart, puis reste en place */
@media (min-width:961px) {
  .bbs .bbs-agrid > .bbs-barre { position: sticky; top: var(--bbs-top, 100px); align-self: start; height: auto; grid-row: auto; }
  .bbs .bbs-agrid > .bbs-barre .bbs-sticky { position: static; }
}

/* ---- Pages émissions (1.18) ---- */
.bbs .bbs-shgrid { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 48px; align-items: center; }
.bbs .bbs-shacc { color: #D6D6D2; font-size: 1.15rem; line-height: 1.5; margin: 14px 0 0; max-width: 34em; }
.bbs .bbs-when { margin-top: 24px; display: grid; gap: 8px; }
.bbs .bbs-whenlabel { font: 800 12px/1 var(--f-titre); letter-spacing: .1em; text-transform: uppercase; color: var(--orange); }
.bbs .bbs-when ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; }
.bbs .bbs-when li { list-style: none; display: inline-flex; gap: 10px; align-items: baseline; background: #2A2A28; border: 1px solid #3A3A37; border-radius: 999px; padding: 8px 14px; font-size: .92rem; }
.bbs .bbs-when li b { font: 800 .92rem var(--f-titre); color: #fff; }
.bbs .bbs-when li span { font: 700 .9rem var(--f-sign); color: #B4B4B0; font-variant-numeric: tabular-nums; }
.bbs .bbs-when p { color: #B4B4B0; margin: 0; }
.bbs .bbs-shbtns { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 20px; margin-top: 26px; }
.bbs .bbs-shbtns .bbs-rplay { cursor: pointer; border: 0; }
.bbs .bbs-shbtns .bbs-onair-tag { position: static; }
.bbs .bbs-ghostbtn { font: 800 .95rem var(--f-titre); color: #F4F4F7; border-bottom: 2px solid var(--c); padding-bottom: 2px; }
.bbs .bbs-ghostbtn:hover { color: #fff; border-color: #fff; }
.bbs .bbs-shpic { aspect-ratio: 1; border-radius: 20px; background: #2A2A28 center/cover no-repeat; box-shadow: 0 0 0 6px rgba(255,255,255,.06); }
.bbs .bbs-rhero .bbs-shbtns { margin-top: 22px; }
.bbs .bbs-stgrid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px 22px; }
.bbs .bbs-stile { display: grid; gap: 6px; align-content: start; }
.bbs .bbs-stimg { display: block; position: relative; aspect-ratio: 3/2; border-radius: 14px; background: var(--nuage) center/cover no-repeat; margin-bottom: 6px; transition: transform .2s; }
.bbs .bbs-stile:hover .bbs-stimg { transform: translateY(-3px); }
.bbs .bbs-stile .bbs-shtime { color: var(--gris); padding: 0; font-size: .82rem; }
.bbs .bbs-stile .bbs-shname { padding: 0; }
.bbs .bbs-stile:hover .bbs-shname { text-decoration: underline; text-decoration-color: var(--c); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.bbs .bbs-stile .bbs-shdesc { color: var(--gris); padding: 0; font-size: .9rem; }
.bbs .bbs-onair-tag[hidden] { display: none !important; }
.bbs.bbs-emipage .bbs-rgridsec { padding-block: 44px 56px; }
@media (max-width: 960px) {
  .bbs .bbs-shgrid { grid-template-columns: 1fr; gap: 28px; }
  .bbs .bbs-shpic { order: -1; max-width: 220px; }
  .bbs .bbs-stgrid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
  .bbs .bbs-shpic { max-width: 150px; border-radius: 16px; }
  .bbs .bbs-stgrid { grid-template-columns: 1fr; gap: 18px; }
  .bbs .bbs-stile { grid-template-columns: 120px minmax(0,1fr); gap: 2px 14px; }
  .bbs .bbs-stimg { grid-row: span 3; margin: 0; align-self: start; }
}

/* ---- Podcasts et articles liés aux émissions, grille des programmes (1.19) ---- */
.bbs .bbs-podgrid4 { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.bbs .bbs-shpods .bbs-pod { grid-template-columns: minmax(0,1fr); min-width: 0; align-content: start; }
.bbs .bbs-shpods .bbs-pcover { width: 100%; }
.bbs .bbs-shpods .bbs-pseries { color: var(--gris); }
.bbs .bbs-shpods .bbs-ptitle { font-size: .98rem; }
.bbs .bbs-shpods .bbs-pbtn { width: 44px; height: 44px; left: 10px; bottom: 10px; }
.bbs .bbs-days { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 22px; }
.bbs .bbs-days button { font: 800 .92rem var(--f-titre); border: 1px solid var(--trait); background: #fff; color: var(--noir); border-radius: 999px; padding: 9px 16px; cursor: pointer; }
.bbs .bbs-days button:hover { border-color: var(--noir); }
.bbs .bbs-days button[aria-selected="true"] { background: var(--noir); border-color: var(--noir); color: #fff; }
.bbs .bbs-dshort { display: none; }
.bbs .bbs-gday { margin: 0 0 8px; padding: 0; display: grid; gap: 10px; }
.bbs .bbs-gday > li { list-style: none; }
.bbs .bbs-gempty { color: var(--gris); }
.bbs .bbs-gslot { display: grid; grid-template-columns: 74px 96px minmax(0,1fr) 24px; gap: 18px; align-items: center; border: 1px solid var(--trait); border-radius: 16px; padding: 12px 18px 12px 12px; transition: border-color .15s, box-shadow .15s; }
.bbs .bbs-gslot:hover { border-color: var(--noir); }
.bbs .bbs-gslot.bbs-onair { border-color: var(--rouge); box-shadow: 0 0 0 1px var(--rouge); }
.bbs .bbs-gtime { display: grid; justify-items: center; text-align: center; font-variant-numeric: tabular-nums; }
.bbs .bbs-gtime b { font: 900 1.35rem/1 var(--f-titre); }
.bbs .bbs-gtime small { font: 700 .8rem var(--f-sign); color: var(--gris); margin-top: 4px; }
.bbs .bbs-gtime small::before { content: "à "; }
.bbs .bbs-gpic { aspect-ratio: 3/2; border-radius: 10px; background: var(--nuage) center/cover no-repeat; }
.bbs .bbs-gtxt { display: grid; gap: 3px; justify-items: start; min-width: 0; }
.bbs .bbs-gtxt b { font: 900 1.1rem/1.2 var(--f-titre); }
.bbs .bbs-gtxt > span:last-child { color: var(--gris); font-size: .9rem; line-height: 1.4; }
.bbs .bbs-gtxt .bbs-onair-tag { position: static; margin-bottom: 4px; }
.bbs .bbs-garrow { font: 800 1.2rem var(--f-titre); color: var(--gris); }
.bbs .bbs-gslot:hover .bbs-garrow { color: var(--c); }
@media (max-width: 960px) { .bbs .bbs-podgrid4 { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 600px) {
  .bbs .bbs-podgrid4 { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
  .bbs .bbs-days { flex-wrap: nowrap; gap: 4px; }
  .bbs .bbs-days button { flex: 1; padding: 8px 0; font-size: .82rem; }
  .bbs .bbs-dlong { display: none; }
  .bbs .bbs-dshort { display: inline; }
  .bbs .bbs-gslot { grid-template-columns: 52px 64px minmax(0,1fr); gap: 12px; padding: 10px; }
  .bbs .bbs-gtime b { font-size: 1.1rem; }
  .bbs .bbs-garrow { display: none; }
  .bbs .bbs-gtxt > span:last-child { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
}

/* ---- Bloc chroniques en haut d'une émission (1.20) ---- */
.bbs.bbs .bbs-chron { background: var(--nuage); border-radius: 22px; padding: 28px; margin: 8px 0 8px; scroll-margin-top: 100px; }
.bbs .bbs-chhead { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 22px; }
.bbs .bbs-chkicker { display: inline-flex; align-items: center; gap: 8px; font: 800 12px/1 var(--f-titre); letter-spacing: .1em; text-transform: uppercase; color: var(--c); }
.bbs .bbs-chkicker i { width: 8px; height: 8px; border-radius: 50%; background: var(--c); animation: bbs-pulse 1.6s ease-in-out infinite; }
.bbs.bbs .bbs-chhead h2 { font: 900 clamp(1.45rem,2.6vw,1.9rem)/1.15 var(--f-titre); margin: 10px 0 0; }
.bbs.bbs .bbs-chhead p { color: var(--gris); margin: 10px 0 0; max-width: 38em; line-height: 1.5; }
.bbs .bbs-partner { display: grid; justify-items: center; gap: 6px; background: #fff; border: 1px solid var(--trait); border-radius: 14px; padding: 10px 16px; flex: none; text-align: center; }
.bbs .bbs-partner small { font: 800 10px/1 var(--f-titre); letter-spacing: .1em; text-transform: uppercase; color: var(--gris); }
.bbs .bbs-partner img { max-width: 130px; max-height: 44px; width: auto; height: auto; display: block; }
.bbs .bbs-partner b { font: 900 1rem var(--f-titre); }
.bbs .bbs-chfeat { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 24px; align-items: start; background: #fff; border-radius: 18px; padding: 16px; }
.bbs .bbs-chimg { display: block; position: relative; aspect-ratio: 1; border-radius: 14px; overflow: hidden; background: var(--c); }
.bbs .bbs-chimg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bbs .bbs-chthumb .bbs-chimg { border-radius: 10px; }
.bbs .bbs-chbody { display: grid; gap: 8px; min-width: 0; }
.bbs .bbs-chnum { font: 700 .82rem var(--f-sign); color: var(--gris); }
.bbs.bbs .bbs-chbody h3 { font: 900 1.3rem/1.25 var(--f-titre); margin: 0; }
.bbs .bbs-chbody h3 a:hover { text-decoration: underline; text-decoration-color: var(--c); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.bbs.bbs .bbs-chbody p { color: var(--gris); font-size: .95rem; line-height: 1.5; margin: 0; }
.bbs .bbs-chtracks { margin: 6px 0 4px; padding: 0; display: grid; gap: 0; counter-reset: bbs-tr; }
.bbs .bbs-chtracks li { list-style: none; display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 6px 0; border-top: 1px solid var(--trait); }
.bbs .bbs-chttl { font: 800 .95rem/1.3 var(--f-titre); }
.bbs .bbs-chttl::first-letter { text-transform: uppercase; }
.bbs .bbs-chlen { font: 700 .8rem var(--f-sign); color: var(--gris); font-variant-numeric: tabular-nums; }
.bbs .bbs-chplay { display: inline-flex; align-items: center; gap: 10px; background: var(--rouge); color: #fff; border-radius: 999px; padding: 4px; cursor: pointer; font: 800 .95rem var(--f-titre); flex: none; }
.bbs .bbs-chplay .bbs-disc { width: 30px; height: 30px; background: #fff; color: var(--rouge); }
.bbs .bbs-chplay .material-icons { font-size: 18px; }
.bbs .bbs-chplay:hover { background: #C00510; }
.bbs .bbs-chread { justify-self: start; font: 800 .9rem var(--f-titre); color: var(--noir); border-bottom: 2px solid var(--c); padding-bottom: 1px; margin-top: 4px; }
.bbs .bbs-chlist { margin: 14px 0 0; padding: 0; display: grid; }
.bbs .bbs-chlist > li { list-style: none; display: grid; grid-template-columns: 64px minmax(0,1fr); gap: 14px; align-items: start; padding: 12px 6px; border-bottom: 1px solid var(--trait); }
.bbs .bbs-chlist > li:last-child { border-bottom: 0; }
.bbs .bbs-chlist > li[hidden] { display: none; }
.bbs .bbs-chtxt { display: grid; gap: 3px; min-width: 0; }
.bbs .bbs-chtxt small { font: 700 .78rem var(--f-sign); color: var(--gris); }
.bbs .bbs-chtxt > a { font: 800 1rem/1.3 var(--f-titre); }
.bbs .bbs-chtxt > a:hover { text-decoration: underline; text-decoration-color: var(--c); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.bbs .bbs-chdet summary { cursor: pointer; display: inline-flex; align-items: center; gap: 8px; font: 800 .85rem var(--f-titre); color: var(--rouge); margin-top: 4px; list-style: none; }
.bbs .bbs-chdet summary::-webkit-details-marker { display: none; }
.bbs .bbs-chdet summary::before { content: ""; width: 0; height: 0; border-left: 7px solid currentColor; border-top: 5px solid transparent; border-bottom: 5px solid transparent; transition: transform .15s; }
.bbs .bbs-chdet[open] summary::before { transform: rotate(90deg); }
.bbs .bbs-chdet .bbs-chtracks { margin-top: 8px; }
.bbs .bbs-chall { display: block; margin: 16px auto 0; font: 800 .92rem var(--f-titre); background: #fff; border: 1px solid var(--trait); border-radius: 999px; padding: 10px 20px; cursor: pointer; color: var(--noir); }
.bbs .bbs-chall:hover { border-color: var(--noir); }
@media (max-width: 600px) {
  .bbs.bbs .bbs-chron { padding: 18px 14px; border-radius: 18px; margin: 8px -4px; }
  .bbs .bbs-chhead { flex-direction: column; }
  .bbs .bbs-chfeat { grid-template-columns: 1fr; gap: 14px; padding: 12px; }
  .bbs .bbs-chfeat .bbs-chimg { aspect-ratio: 16/10; }
  .bbs .bbs-chlist > li { grid-template-columns: 52px minmax(0,1fr); gap: 12px; }
}
