/*!
 * Bible Séquencée — feuille de style du lecteur
 * Toutes les règles sont limitées au conteneur .bsq.bsq et toutes les classes
 * portent le préfixe « bsq- » : aucune fuite vers le thème, et le thème
 * ne peut pas déformer le formulaire.
 */
.bsq.bsq{all:initial;display:block;box-sizing:border-box;max-width:var(--bsq-w,760px);margin:0 auto;padding:0 0 24px;color:#1d2430;font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-text-size-adjust:100%;--bg:#fff;--pearl:#f6f8fc;--ink:#1d2430;--soft:#667085;--gold:#b88a2c;--gold2:#e6c775;--dia:#dcefff;--dia2:#a9d4f2;--line:#e6ebf3;--bad:#b0402a;--ok:#3f7d3a;--serif:Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--gg:linear-gradient(135deg,#9a7019,#e6c775 45%,#b88a2c);--gold-rgb:184,138,44;--gold2-rgb:230,199,117;--on-gold:#2a1d02}
.bsq.bsq,.bsq.bsq *,.bsq.bsq *::before,.bsq.bsq *::after{box-sizing:border-box}
.bsq.bsq{color:var(--ink);font-family:var(--sans)}
.bsq.bsq [hidden]{display:none!important}
.bsq.bsq .bsq-bible{padding:8px 0}
.bsq.bsq .bsq-h{font-family:var(--serif);font-weight:600;line-height:1.2;margin:0;padding:0;color:inherit;text-transform:none;letter-spacing:normal;text-shadow:none;border:0;background:none}
.bsq.bsq p,.bsq.bsq ul,.bsq.bsq li{margin:0;padding:0;list-style:none}
.bsq.bsq button,.bsq.bsq input:not([type=range]):not([type=file]){font:inherit;color:inherit;margin:0;text-transform:none;letter-spacing:normal;text-shadow:none;box-shadow:none;min-height:0;-webkit-appearance:none;appearance:none;border-radius:0;background:none;border:0;padding:0;width:auto;max-width:none;float:none}
.bsq.bsq button{cursor:pointer;text-decoration:none;transition:none}
.bsq.bsq svg{display:inline-block;max-width:none}
.bsq.bsq dialog{color:var(--ink)}
.bsq.bsq,.bsq.bsq *{-webkit-tap-highlight-color:transparent}
.bsq.bsq button:focus,.bsq.bsq button:focus-visible,.bsq.bsq button:active,.bsq.bsq dialog:focus,.bsq.bsq dialog:focus-visible,.bsq.bsq #reader:focus,.bsq.bsq #reader:focus-visible,.bsq.bsq .bsq-v:focus,.bsq.bsq .bsq-v:focus-visible{outline:0!important;outline-offset:0!important}
.bsq.bsq #q:focus,.bsq.bsq #q:focus-visible{outline:0!important;border-color:var(--gold2)}
.bsq.bsq .bsq-ttl>.bsq-h{font-size:26px}
.bsq.bsq .bsq-ttl>.bsq-h::after{content:"";display:block;width:36px;height:2px;background:var(--gg);margin-top:10px}
.bsq.bsq .bsq-sub{color:var(--soft);margin:12px 0 18px}
.bsq.bsq .bsq-note{font-size:13px;color:var(--soft)}
.bsq.bsq .bsq-conn{border:1px solid var(--line);background:var(--pearl);border-radius:16px;padding:12px 16px;margin:0 0 18px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.bsq.bsq .bsq-conn[hidden]{display:none}
.bsq.bsq .bsq-conn .bsq-msg{flex:1;min-width:200px;margin:0;font-size:14px;color:var(--soft)}
.bsq.bsq .bsq-conn .bsq-msg.bsq-err{color:var(--bad)}
.bsq.bsq .bsq-conn .bsq-ib[hidden]{display:none}
.bsq.bsq #connBtn{background:var(--gg);border-color:var(--gold);color:var(--on-gold);font-weight:700}
.bsq.bsq .bsq-sb{position:relative;margin-bottom:16px}
.bsq.bsq .bsq-sb #q{display:block;width:100%;max-width:100%;border:1px solid var(--line);background:var(--pearl);border-radius:99px;padding:11px 18px}
.bsq.bsq #sug{list-style:none;margin:0;padding:6px;position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 14px 36px rgba(60,100,140,.22);max-height:340px;overflow:auto;z-index:30}
.bsq.bsq #sug li{display:flex;align-items:baseline;gap:10px;padding:10px 12px;border-radius:10px;cursor:pointer}
.bsq.bsq #sug li.bsq-act,.bsq.bsq #sug li:hover{background:rgba(var(--gold2-rgb),.25)}
.bsq.bsq #sug b{font-family:var(--serif);font-weight:600;white-space:nowrap}
.bsq.bsq #sug .bsq-s{flex:1;min-width:0;color:var(--soft);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bsq.bsq #sug .bsq-t{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold2);border-radius:99px;padding:1px 8px;margin-left:auto}
.bsq.bsq #sug li.bsq-none{cursor:default;color:var(--soft);justify-content:center}
.bsq.bsq .bsq-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.bsq.bsq .bsq-ib{border:1px solid var(--line);background:var(--pearl);border-radius:12px;padding:11px 14px}
.bsq.bsq .bsq-seg{display:flex;gap:4px;background:var(--pearl);border:1px solid var(--line);border-radius:99px;padding:4px;margin:0 0 14px}
.bsq.bsq .bsq-seg button{flex:1;border:0;background:transparent;border-radius:99px;padding:10px 6px;font-weight:600;font-size:14px;color:var(--soft)}
.bsq.bsq .bsq-seg button[aria-selected=true]{background:#fff;color:var(--ink);box-shadow:0 1px 8px rgba(var(--gold-rgb),.35),inset 0 0 0 1.5px var(--gold2)}
.bsq.bsq .bsq-sel{position:relative;flex:1;min-width:200px}
.bsq.bsq #bookBtn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;background:linear-gradient(#fff,var(--pearl));border:1.5px solid var(--line);border-radius:14px;padding:12px 16px;font-family:var(--serif);font-size:18px;font-weight:600;box-shadow:0 2px 8px rgba(60,100,140,.08);transition:border-color .15s,box-shadow .15s}
.bsq.bsq #bookBtn:hover,.bsq.bsq #bookBtn[aria-expanded=true]{border-color:var(--gold2);box-shadow:0 4px 14px rgba(var(--gold-rgb),.2)}
.bsq.bsq #bookBtn svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--gold);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.bsq.bsq #bookBtn[aria-expanded=true] svg{transform:rotate(180deg)}
.bsq.bsq #bookList{list-style:none;margin:0;padding:6px;position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--dia2);border-radius:16px;box-shadow:0 16px 40px rgba(60,100,140,.25);max-height:300px;overflow:auto;z-index:30}
.bsq.bsq #bookList[hidden]{display:none}
.bsq.bsq #bookList li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;cursor:pointer;font-family:var(--serif);font-size:17px}
.bsq.bsq #bookList li small{font:12px var(--sans);color:var(--soft)}
.bsq.bsq #bookList li.bsq-act,.bsq.bsq #bookList li:hover{background:var(--pearl)}
.bsq.bsq #bookList li.bsq-sel{background:var(--gg);color:var(--on-gold);font-weight:700}
.bsq.bsq #bookList li.bsq-sel small{color:var(--on-gold)}
.bsq.bsq .bsq-chaps{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(44px,12vw,62px),1fr));gap:clamp(6px,1.6vw,10px);margin:16px 0;max-height:clamp(190px,38vh,340px);overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.bsq.bsq .bsq-chaps button{border:1px solid var(--line);background:#fff;border-radius:10px;padding:0;min-height:44px;font-size:clamp(14px,3.8vw,17px)}
.bsq.bsq .bsq-chaps button.bsq-on{background:var(--gg);border-color:var(--gold);color:var(--on-gold);font-weight:700}
.bsq.bsq .bsq-ttl{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px}
.bsq.bsq .bsq-vm{position:relative;flex:none;width:58px;height:32px;padding:0;border:1px solid var(--line);border-radius:99px;background:#e3e8f0;box-shadow:inset 0 1px 3px rgba(0,0,0,.08);transition:background .25s,border-color .25s}
.bsq.bsq .bsq-vm .bsq-th{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.28);transition:transform .25s cubic-bezier(.4,.1,.2,1)}
.bsq.bsq .bsq-vm .bsq-ic{position:absolute;top:5px;left:5px;width:14px;height:14px;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:opacity .2s}
.bsq.bsq .bsq-vm .bsq-ic-off{stroke:var(--soft);opacity:1}
.bsq.bsq .bsq-vm .bsq-ic-on{stroke:var(--gold);opacity:0}
.bsq.bsq .bsq-vm[aria-checked=true]{background:var(--gg);border-color:var(--gold)}
.bsq.bsq .bsq-vm[aria-checked=true] .bsq-th{transform:translateX(26px)}
.bsq.bsq .bsq-vm[aria-checked=true] .bsq-ic-off{opacity:0}
.bsq.bsq .bsq-vm[aria-checked=true] .bsq-ic-on{opacity:1}
.bsq.bsq .bsq-pg{margin:0 0 16px}
.bsq.bsq .bsq-pg:last-child{margin-bottom:6px}
.bsq.bsq .bsq-v{font-family:var(--serif);font-size:calc(20px*var(--bsq-z,1));line-height:1.8;padding:4px 8px;border-radius:10px;cursor:pointer}
.bsq.bsq .bsq-v sup{color:var(--gold);font:700 calc(12px*var(--bsq-z,1)) var(--sans);margin-right:5px}
.bsq.bsq .bsq-v.bsq-now{background:rgba(var(--gold2-rgb),.3)}
.bsq.bsq .bsq-v.bsq-nt{font-family:var(--sans);font-size:calc(14px*var(--bsq-z,1));color:var(--soft)}
.bsq.bsq .bsq-v.bsq-miss{opacity:.5}
.bsq.bsq .bsq-v.bsq-miss::after{content:" · audio absent";font:12px var(--sans);color:var(--bad)}
.bsq.bsq dialog{border:0;border-radius:22px;padding:24px;max-width:420px;width:calc(100% - 28px);background:#fff;color:var(--ink)}
.bsq.bsq dialog::backdrop{background:rgba(20,30,50,.45);backdrop-filter:blur(3px)}
.bsq.bsq #reader{--pad:18px;padding:0;margin:auto;width:calc(100% - 20px);max-width:760px;height:90vh;height:90dvh;max-height:none;border:1px solid var(--dia2);border-radius:24px;overflow:hidden;box-shadow:0 20px 60px rgba(60,100,140,.3);background:linear-gradient(#fff,var(--pearl))}
.bsq.bsq #reader[open]{display:flex;flex-direction:column}
.bsq.bsq .bsq-rh{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:18px var(--pad) 8px}
.bsq.bsq .bsq-rh .bsq-h{font-size:24px;flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bsq.bsq .bsq-x{padding:6px 14px;order:3;flex:none}
.bsq.bsq .bsq-zm{order:2;flex:none;display:flex;align-items:center;gap:2px;background:#fff;border:1px solid var(--line);border-radius:99px;padding:2px;box-shadow:0 1px 4px rgba(0,0,0,.06)}
.bsq.bsq .bsq-zm button{display:inline-flex;align-items:center;justify-content:center;height:34px;min-width:38px;padding:0 8px;border-radius:99px;color:var(--ink);font-weight:700;transition:background .15s,color .15s}
.bsq.bsq .bsq-zm button:hover:not(:disabled){background:var(--pearl);color:var(--gold)}
.bsq.bsq .bsq-zm button:disabled{opacity:.35;cursor:default}
.bsq.bsq .bsq-zm .bsq-ta{font:700 15px/1 var(--serif);white-space:nowrap}
.bsq.bsq .bsq-zm .bsq-ta.bsq-big{font-size:21px}
.bsq.bsq .bsq-zm .bsq-ta i{font:700 12px/1 var(--sans);font-style:normal;position:relative;top:-5px;margin-left:1px;color:var(--gold)}
.bsq.bsq .bsq-zm .bsq-zp{min-width:54px;font:700 12px var(--sans);color:var(--soft)}
@media(max-width:480px){
.bsq.bsq .bsq-rh{flex-wrap:nowrap;gap:6px}
.bsq.bsq .bsq-rh .bsq-h{font-size:18px;line-height:1.2;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
.bsq.bsq .bsq-zm button{height:30px;min-width:30px;padding:0 5px}
.bsq.bsq .bsq-zm .bsq-ta{font-size:13px}
.bsq.bsq .bsq-zm .bsq-ta.bsq-big{font-size:18px}
.bsq.bsq .bsq-zm .bsq-zp{min-width:40px;font-size:11px;padding:0 2px}
.bsq.bsq .bsq-x{padding:6px 11px}
}
@media(max-width:600px){
.bsq.bsq .bsq-chaps{max-height:clamp(128px,22vh,164px);margin:12px 0;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--pearl)}
.bsq.bsq .bsq-chaps button{min-height:42px}
}
.bsq.bsq #reader #vc{padding:4px var(--pad) 10px}
.bsq.bsq #vs{flex:1;overflow-y:auto;padding:0 calc(var(--pad) - 6px);min-height:0}
.bsq.bsq .bsq-mus{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:8px var(--pad) 6px}
.bsq.bsq .bsq-mus .bsq-note{margin-right:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bsq.bsq .bsq-mus button{height:36px;min-width:42px;padding:0 12px;border-radius:99px;border:1px solid var(--line);background:#fff;font-size:13px;font-weight:700;color:var(--ink);box-shadow:0 1px 4px rgba(0,0,0,.06)}
.bsq.bsq .bsq-mus button:disabled{opacity:.4;cursor:default}
.bsq.bsq #mt{width:42px;font-size:18px;color:var(--gold);border-color:var(--gold2)}
.bsq.bsq #mb,.bsq.bsq #mf{font-size:16px}
.bsq.bsq #mt.bsq-off{color:var(--soft);border-color:var(--line);text-decoration:line-through;text-decoration-thickness:2px}
.bsq.bsq #shr svg,.bsq.bsq .bsq-vb svg{display:block;width:20px;height:20px;margin:0 auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bsq.bsq .bsq-mus .bsq-vb svg{width:18px;height:18px}
.bsq.bsq .bsq-vb.bsq-mute{color:var(--soft)}
.bsq.bsq .bsq-vb[aria-expanded=true]{border-color:var(--gold2);color:var(--gold)}
.bsq.bsq .bsq-vp{position:absolute;left:var(--pad);right:var(--pad);bottom:calc(100% + 6px);z-index:40;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--dia2);border-radius:14px;padding:10px 14px;box-shadow:0 12px 30px rgba(60,100,140,.3)}
.bsq.bsq .bsq-vp[hidden]{display:none}
.bsq.bsq .bsq-vp .bsq-pt{font:700 12px var(--sans);color:var(--ink);width:58px;flex:none}
.bsq.bsq .bsq-vp input{flex:1;min-width:0;height:28px;margin:0;accent-color:var(--gold)}
.bsq.bsq .bsq-vp .bsq-pc{font:700 12px var(--sans);color:var(--soft);width:40px;text-align:right;flex:none}
.bsq.bsq #gapTrack{height:3px;margin:8px var(--pad) 0;background:var(--line);border-radius:3px;overflow:hidden}
.bsq.bsq #gapBar{height:100%;width:0;background:var(--gg)}
.bsq.bsq .bsq-ctl{position:relative;display:flex;gap:6px;padding:10px var(--pad) calc(14px + env(safe-area-inset-bottom,0px))}
.bsq.bsq .bsq-ctl button{flex:1;border:0;border-radius:14px;padding:12px 0;font-size:17px;min-width:0;background:var(--gg);color:var(--on-gold);font-weight:700}
.bsq.bsq .bsq-ctl .bsq-pl{flex:1.7;font-size:20px}
.bsq.bsq .bsq-ctl button.bsq-sec{background:#fff;color:var(--ink);border:1px solid var(--line)}
.bsq.bsq .bsq-ctl button.bsq-sec.bsq-o{color:var(--gold);border-color:var(--gold2)}
@media(prefers-reduced-motion:reduce){.bsq.bsq #bookBtn svg,.bsq.bsq .bsq-vm,.bsq.bsq .bsq-vm .bsq-th,.bsq.bsq .bsq-vm .bsq-ic{transition:none}}
