body { font-family: Georgia, serif; background: #ffffff; color: #1f2328;
       max-width: 720px; margin: 0 auto; padding: 20px 20px 60px; line-height: 1.75; }
h2 { color: #1f6feb; margin: 10px 0 4px; }
.sub { color: #6a737d; font-size: .85em; margin-bottom: 14px; }
.goto { display:flex; gap:8px; margin: 14px 0 20px; flex-wrap:wrap; align-items:center; }
.goto select, .goto input { background:#ffffff; color:#1f2328; border:1px solid #e5e8ec;
       border-radius:6px; padding:8px 10px; font-family:inherit; font-size:1em; }
.goto button { background:#1f6feb; color:#fff; border:none; border-radius:6px;
       padding:8px 16px; cursor:pointer; font-size:1em; }
.goto button:hover { background:#388bfd; }
.v { margin: 6px 0; padding: 4px 8px; border-radius: 6px; }
.vn { color: #d2991d; font-weight: bold; font-size: .8em; margin-right: 8px; vertical-align: super; }
.hl { background:#ffffff; border-left: 6px solid #f0c040; box-shadow: 0 0 18px rgba(240,192,64,0.5), inset 0 0 30px rgba(240,192,64,0.08); border-radius: 4px; animation: hlPulse 2s ease-out; }
@keyframes hlPulse { 0% { background: #ff8800; box-shadow: 0 0 40px rgba(240,192,64,1), 0 0 80px rgba(255,136,0,0.6); } 30% { background: #cc6600; box-shadow: 0 0 25px rgba(240,192,64,0.8); } 60% { background:#ffffff; box-shadow: 0 0 15px rgba(240,192,64,0.5); } 100% { background:#ffffff; box-shadow: 0 0 18px rgba(240,192,64,0.5), inset 0 0 30px rgba(240,192,64,0.08); } }
.nav { display: flex; justify-content: space-between; gap: 10px; margin: 22px 0; }
.nav a { color: #1f6feb; text-decoration: none; padding: 8px 14px; border: 1px solid #e5e8ec; border-radius: 6px; }
.nav a:hover { border-color: #1f6feb; }
.back { display:inline-block; margin-top: 18px; color: #6a737d; }
a { color: #1f6feb; }
.sec-title { color: #0f766e; font-style: italic; font-weight: bold; margin: 18px 0 6px; padding-left: 10px; border-left: 3px solid #0f766e; font-size: .95em; }
/* ---- Verset cliquable (exhaustivité : note / commentaire / carte en dessous) ---- */
div.v { cursor: pointer; transition: background .15s ease; position: relative; }
div.v:hover { background: #f8fafc; border-radius: 6px; }
div.v.vopen { background: #fff8e6; border-radius: 6px; box-shadow: inset 0 0 0 1px #f0c040; }
div.v.v-hl { background: #fff3c4; box-shadow: inset 0 0 0 1px #f0c040; }
.sel-hl { border-radius: 2px; padding: 0 1px; transition: background .15s ease; }
/* Zones d'etude : selection autorisee, menu natif mobile neutralise */
div.v, .vp-text, .vp-comment { -webkit-touch-callout: none; -webkit-tap-highlight-color: transparent; }
div.v { user-select: text; }
.vn { cursor: pointer; }
/* ---- Paroles de Jésus en rouge (red-letter) ---- */
.jesus { color: inherit; }
body.red-letter-on .jesus { color: #b91c1c; }
.redtoggle { background:#fff; border:1px solid #e5e8ec; color:#1f2328; padding:4px 12px; border-radius:14px; cursor:pointer; font-size:.82em; transition:all .12s; white-space:nowrap; }
.redtoggle.on { background:#b91c1c; color:#fff; border-color:#b91c1c; }
/* Panneau contextuel sous le verset cliqué */
.verse-panel { margin: 8px 0 14px 18px; border-left: 4px solid #d2991d; background:#fffdf5; border-radius: 0 8px 8px 0; padding: 10px 14px; animation: vpIn .18s ease-out; }
@keyframes vpIn { from { opacity:0; transform: translateY(-4px);} to { opacity:1; transform: translateY(0);} }
.vp-head { font-size:.82em; color:#6a737d; display:flex; gap:8px; flex-wrap:wrap; margin-bottom:8px; }
.vp-tab { background:#fff; border:1px solid #e5e8ec; color:#1f2328; padding:4px 12px; border-radius:14px; cursor:pointer; font-size:.82em; transition:all .12s; }
.vp-tab:hover { border-color:#d2991d; }
.vp-tab.active { background:#d2991d; color:#fff; border-color:#d2991d; }
.vp-listen { margin-left:auto; background:#fff; border:1px solid #3fb950; color:#3fb950; padding:4px 12px; border-radius:14px; cursor:pointer; font-size:.82em; transition:all .12s; white-space:nowrap; }
.vp-listen:hover { background:#3fb950; color:#fff; }
.pn-listen { background:none; border:1px solid #3fb950; color:#3fb950; font-size:.8em; padding:2px 10px; border-radius:12px; cursor:pointer; margin-left:10px; white-space:nowrap; }
.pn-listen:hover { background:#3fb950; color:#fff; }
.vp-body { color:#1f2328; font-size:1.05em; line-height:1.6; }
.vp-map { height:260px; width:100%; border-radius:8px; margin-top:8px; border:1px solid #e5e8ec; }
.vp-loc { padding:3px 0; }
.vp-loc a { color:#3fb950; }
.vp-empty { color:#6a737d; font-style:italic; }
.vp-comment { border-left:3px solid #d2991d; padding-left:12px; margin:8px 0; }
.vp-comment small { color:#6a737d; display:block; margin-top:4px; font-style:italic; }
/* Références croisées (Bible d'étude) — accordéon */
.xref { margin: 18px 0; padding: 0; background:#ffffff; border: 1px solid #1f6feb; border-left: 5px solid #1f6feb; border-radius: 8px; overflow: hidden; }
.xref-head { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; cursor: pointer; user-select: none; }
.xref-head:hover { background:#ffffff; }
.xref-head h3 { color: #1f6feb; margin: 0; font-size: 1.05em; }
.xref-caret { color: #1f6feb; font-size: 1.1em; transition: transform .2s; }
.xref-caret.open { transform: rotate(90deg); }
.xref-preview { padding: 0 16px 12px; }
.xref-full { padding: 0 16px 14px; border-top: 1px solid #e8eff6; margin-top: 6px; }
.xr { display: block; padding: 8px 10px; margin: 6px 0; background: #ffffff; border: 1px solid #e5e8ec; border-radius: 6px; color: #1f2328; text-decoration: none; font-size: .9em; line-height: 1.5; }
.xr:hover { border-color: #1f6feb; background:#ffffff; }
.xr b { color: #d2991d; }
.xr span { color: #6a737d; }
.xr.manuel { border: 1px solid #d2991d; background:#ffffff; }
.xr.manuel:hover { border-color:#a07c1f; background:#ffffff; }
.xr .badge { display: inline-block; font-size: .7em; color: #d2991d; border: 1px solid #d2991d; border-radius: 4px; padding: 1px 5px; margin-left: 6px; vertical-align: middle; }
.xr .xr-del { float: right; color: #884; background: none; border: none; cursor: pointer; font-size: .9em; padding: 0 4px; }
.xr .xr-del:hover { color: #f55; }
.xref-add { display: inline-flex; align-items: center; gap: 4px; margin-top: 8px; background:#ffffff; border: 1px solid #d2991d; color: #d2991d; padding: 5px 12px; border-radius: 6px; cursor: pointer; font-size: .82em; }
.xref-add:hover { background:#ffffff; }
.xref-add-form { margin-top: 10px; display: none; }
.xref-add-form input { background: #ffffff; color: #1f2328; border: 1px solid #e5e8ec; border-radius: 4px; padding: 5px 8px; font-size: .85em; width: 130px; margin: 2px; }
.xref-add-form button { background: #238636; color: #fff; border: none; border-radius: 4px; padding: 5px 12px; cursor: pointer; font-size: .85em; margin: 2px; }
/* Concordance (Bible d'étude) */
.concord { margin: 18px 0; padding: 0; background:#ffffff; border: 1px solid #d2991d; border-left: 5px solid #d2991d; border-radius: 8px; overflow: hidden; }
.concord-head { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; cursor: pointer; user-select: none; }
.concord-head:hover { background:#ffffff; }
.concord-head h3 { color: #d2991d; margin: 0; font-size: 1.05em; }
.concord-caret { color: #d2991d; font-size: 1.1em; transition: transform .2s; }
.concord-caret.open { transform: rotate(90deg); }
.concord-body { padding: 0 16px 14px; border-top: 1px solid #e8eff6; margin-top: 6px; }
.concord-search { display: flex; gap: 6px; margin: 10px 0; flex-wrap: wrap; }
.concord-search input { flex: 1; min-width: 140px; background: #ffffff; color: #1f2328; border: 1px solid #e5e8ec; border-radius: 4px; padding: 6px 10px; font-size: .85em; }
.concord-search button { background: #d2991d; color: #ffffff; border: none; border-radius: 4px; padding: 6px 14px; cursor: pointer; font-size: .85em; font-weight: bold; }
.concord-results { max-height: 400px; overflow-y: auto; }
.concord-hint { color: #6a737d; font-size: .8em; margin: 6px 0; }
.concord-results mark { background: #ffe600; color: #000; padding: 0 3px; border-radius: 3px; font-weight: bold; }

/* Verse prev/next navigation */
/* Audio player bar */
.ap-bar { display:none; position:fixed; bottom:0; left:0; right:0; background:#ffffff; border-top:2px solid #1f6feb; padding:.7rem 1.2rem; z-index:9999; box-shadow:0 -4px 20px rgba(0,0,0,.5); }
.ap-bar .ap-inner { max-width:720px; margin:0 auto; display:flex; align-items:center; gap:.6rem; flex-wrap:wrap; }
.ap-bar span { font-size:1rem; }
.ap-bar button { background:none; border:1px solid #1f6feb; color:#1f6feb; padding:.3rem .6rem; border-radius:6px; cursor:pointer; font-size:1rem; }
.ap-bar button:hover { background:#ffffff; }
.ap-bar input[type=range] { flex:2; min-width:100px; accent-color:#1f6feb; }
.ap-bar select { background:#ffffff; color:#1f6feb; border:1px solid #e5e8ec; border-radius:6px; padding:.2rem .4rem; font-size:1rem; }
.btn-listen { display:inline-flex; align-items:center; gap:4px; background:#ffffff; border:1px solid #1f6feb; color:#1f6feb; padding:6px 14px; border-radius:6px; cursor:pointer; font-size:1.05rem; margin-bottom:8px; }
.btn-listen:hover { background:#ffffff; }
.btn-listen:disabled { opacity:.4; }
.cv-wrap{display:block;clear:both;margin:8px 0 8px 20px;border-left:2px solid #e5e8ec;padding-left:2px}
.cv{display:block;font-size:1.08em;line-height:1.5;padding:6px 10px;border-radius:6px;margin:6px 0;color:#1f2328}
.cv-tag{font-weight:bold;font-size:.95em;text-transform:uppercase;letter-spacing:.5px;margin-right:8px}
.cv-lsg{background:#ffffff;border:1px solid #ebeff5;border-left:3px solid #1f6feb}
.cv-lsg .cv-tag{color:#1f6feb}
.cv-darby{background:#ffffff;border:1px solid #efeaf4;border-left:3px solid #8957e5}
.cv-darby .cv-tag{color:#a371f7}
.cv-crampon{background:#ffffff;border:1px solid #e6f0ec;border-left:3px solid #3fb950}
.cv-crampon .cv-tag{color:#3fb950}
.cv-kjv{background:#ffffff;border:1px solid #f2eee2;border-left:3px solid #d2991d}
.cv-kjv .cv-tag{color:#d2991d}
.cv-ln{background:#ffffff;border:1px solid #e6f0ec;border-left:3px solid #3fb950}
.cv-ln .cv-tag{color:#3fb950}
.cv-zadoc{background:#ffffff;border:1px solid #e0e8f0;border-left:3px solid #1f3a5f}
.cv-zadoc .cv-tag{color:#1f3a5f}
.cv-tag-default{font-weight:bold;font-size:.95em;text-transform:uppercase;letter-spacing:.5px;margin-right:8px}
.cv-tag-def-lsg{color:#1f6feb}
.cv-tag-def-darby{color:#a371f7}
.cv-tag-def-crampon{color:#3fb950}
.cv-tag-def-kjv{color:#d2991d}
.cv-tag-def-ln{color:#3fb950}
.cv-tag-def-zadoc{color:#1f3a5f}
.ver-indicator{display:block;position:absolute;top:0;right:0;bottom:0;width:4px;border-radius:0 6px 6px 0;pointer-events:none}
div.v.ver-lsg .ver-indicator{background:#1f6feb}
div.v.ver-darby .ver-indicator{background:#8957e5}
div.v.ver-crampon .ver-indicator{background:#3fb950}
div.v.ver-kjv .ver-indicator{background:#d2991d}
div.v.ver-ln .ver-indicator{background:#3fb950}
div.v.ver-zadoc .ver-indicator{background:#1f3a5f}
.ver-abbr{position:absolute;top:50%;right:6px;transform:translateY(-50%);font-size:.72em;font-weight:bold;letter-spacing:.5px;color:#ffffff;background:#6a737d;border-radius:4px;padding:1px 5px;pointer-events:none;line-height:1.2}
div.v.ver-lsg .ver-abbr{background:#1f6feb}
div.v.ver-darby .ver-abbr{background:#8957e5}
div.v.ver-crampon .ver-abbr{background:#3fb950;color:#ffffff}
div.v.ver-kjv .ver-abbr{background:#d2991d;color:#1f2328}
div.v.ver-ln .ver-abbr{background:#3fb950;color:#ffffff}
div.v.ver-zadoc .ver-abbr{background:#1f3a5f}
.orig-wrap{margin:4px 0 4px 20px;border-left:2px solid #e5e8ec}
.orig{font-size:1.15em;line-height:1.6;padding:6px 10px;border-radius:6px;margin:4px 0;color:#1f2328}
.orig-heb{background:#ffffff;border:1px solid #ebeff5;border-left:3px solid #1f6feb;font-size:1.15em}
.orig-gk{background:#ffffff;border:1px solid #e6f0ec;border-left:3px solid #3fb950}
.orig-tag{font-weight:bold;font-size:.92em;text-transform:uppercase;letter-spacing:.5px;margin-right:8px;vertical-align:middle}
.orig-heb .orig-tag{color:#1f6feb}
.orig-gk .orig-tag{color:#3fb950}
.gk-w{cursor:pointer;border-bottom:1px dotted #1f6feb;margin:0 2px}
.gk-w:hover{background:#1f6feb33;border-radius:3px}
.hb-w{cursor:pointer;border-bottom:1px dotted #d2991d;margin:0 1px}
.hb-w:hover{background:#d2991d26;border-radius:3px}
.gk-s{color:#6a737d;font-size:.85em;margin-left:1px}
.strong-pop{position:fixed;z-index:9999;max-width:380px;background:#ffffff;border:1px solid #d2991d;border-radius:10px;box-shadow:0 8px 30px rgba(0,0,0,.6);padding:14px 16px;font-size:1.08em;line-height:1.55;color:#1f2328;display:none}
.strong-pop .sp-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.strong-pop .sp-code{color:#d2991d;font-weight:bold;font-size:1.15em}
.strong-pop .sp-orig{color:#6a737d;font-size:1em}
.strong-pop .sp-def{margin-top:6px;color:#1f2328}
.strong-pop .sp-def ol,.strong-pop .sp-def ul{margin:6px 0 6px 20px;padding:0}
.strong-pop .sp-def a{color:#d2991d}
.strong-pop .sp-close{cursor:pointer;color:#6a737d;font-size:1.1rem;border:none;background:none;padding:0 4px}