@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600&family=Lora:ital,wght@0,400;0,500;1,400&display=swap');
/* Default tokens = "reader" theme (first paint before JS; editorial / spiritual reading) */
:root{
  --bg:#FAFAF8;--bg2:#F2EFE8;--card:#FFFFFF;--border:#DDD8CE;
  --text:#1C1917;--muted:#57534E;--accent:#9A3412;--vnum:#B45309;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  #sidebar,#vbar,#tsheet,.v-row,.icon-btn{transition:none!important}
}
body{background:var(--bg);color:var(--text);font-family:'Lora',Georgia,serif;min-height:100vh;overflow-x:hidden;touch-action:manipulation}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}

/* Top bar */
#topbar{position:fixed;top:0;left:0;right:0;height:52px;background:var(--bg2);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 16px;gap:10px;z-index:100}
#topbar .logo{font-family:'Cinzel',serif;font-size:14px;color:var(--accent);white-space:nowrap;font-weight:600}
#topbar .crumb{font-size:13px;color:var(--muted);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.icon-btn{background:none;border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 10px;cursor:pointer;font-size:13px;font-family:'Cinzel',serif;white-space:nowrap}
.icon-btn:hover{background:var(--card)}
.icon-btn:focus-visible,.book-btn:focus-visible,.ch-btn:focus-visible,.cta-btn:focus-visible,#s-search:focus-visible,.par-ver-select:focus-visible,.t-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#menu-btn.icon-btn--menu{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:44px;min-height:44px;padding:10px}
#menu-btn.icon-btn--menu .hb-line{display:block;width:18px;height:2px;background:var(--text);border-radius:1px}

/* Sidebar */
#sidebar{position:fixed;top:52px;left:0;bottom:0;width:280px;background:var(--bg2);border-right:1px solid var(--border);overflow-y:auto;transform:translateX(-100%);transition:transform .25s ease;z-index:90}
#sidebar.open{transform:translateX(0)}
#overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:80}
#overlay.active{display:block}
@media(min-width:900px){
  #sidebar{transform:translateX(0)}
  #wrap{margin-left:280px}
  body.sidebar-collapsed #sidebar{transform:translateX(-100%)}
  body.sidebar-collapsed #wrap{margin-left:0}
}

/* Sidebar internals */
.s-section{font-family:'Cinzel',serif;font-size:10px;letter-spacing:.15em;color:var(--muted);padding:14px 14px 5px;text-transform:uppercase}
.s-ver{width:100%;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-family:'Lora',serif;font-size:13px;margin:0 14px 10px;width:calc(100% - 28px);cursor:pointer}
.book-btn{display:block;width:100%;text-align:left;background:none;border:none;color:var(--text);padding:9px 14px;font-size:13px;font-family:'Lora',serif;cursor:pointer;transition:background .1s}
.book-btn:hover,.book-btn.on{background:var(--card);color:var(--accent)}
#ch-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;padding:8px 14px 14px}
.ch-btn{background:var(--card);border:1px solid var(--border);color:var(--muted);border-radius:5px;padding:7px 3px;font-size:11px;font-family:'Cinzel',serif;cursor:pointer;text-align:center;transition:all .1s}
.ch-btn:hover,.ch-btn.on{background:var(--accent);color:var(--bg);border-color:var(--accent)}
#s-search{width:calc(100% - 28px);margin:10px 14px;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-family:'Lora',serif;font-size:13px}
#s-search::placeholder{color:var(--muted)}
.sr-item{padding:9px 14px;border-bottom:1px solid var(--border);cursor:pointer}
.sr-item:hover{background:var(--card)}
.sr-ref{font-family:'Cinzel',serif;font-size:10px;color:var(--accent);margin-bottom:3px}
.sr-txt{font-size:12px;color:var(--muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Main content */
#wrap{padding-top:52px}
#reader{max-width:700px;margin:0 auto;padding:40px 20px 120px}
.ch-head{text-align:center;margin-bottom:36px}
.ch-head h1{font-family:'Cinzel',serif;font-size:clamp(20px,5vw,30px);color:var(--accent);margin-bottom:6px}
.ch-head h2{font-family:'Cinzel',serif;font-size:clamp(12px,3vw,16px);color:var(--muted);letter-spacing:.06em;font-weight:400}
.ch-head .version-tag{display:inline-block;margin-top:8px;font-size:11px;font-family:'Cinzel',serif;color:var(--muted);border:1px solid var(--border);border-radius:20px;padding:3px 12px}

/* Verses */
.v-row{display:flex;gap:10px;padding:9px 10px;cursor:pointer;border-radius:7px;transition:background .12s;-webkit-tap-highlight-color:transparent;border-left:3px solid transparent;color:inherit;text-decoration:none}
.v-row:hover{background:var(--card)}
.v-row.sel{background:var(--card);border-left-color:var(--accent);padding-left:7px}
.v-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.v-num{font-family:'Cinzel',serif;font-size:11px;color:var(--vnum);min-width:26px;padding-top:5px;flex-shrink:0;text-align:right;font-weight:600}
.v-txt{font-family:'Lora',Georgia,serif;font-size:var(--verse-font-size,clamp(16px,4vw,19px));line-height:1.9;color:var(--text)}

/* Verse detail */
.verse-detail-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:20px;margin-bottom:20px}
.verse-detail-ref{font-family:'Cinzel',serif;font-size:12px;letter-spacing:.08em;color:var(--accent);margin-bottom:10px}
.verse-detail-text{font-family:'Lora',Georgia,serif;font-size:clamp(20px,4vw,28px);line-height:1.7;color:var(--text)}
.verse-detail-meta{font-size:13px;color:var(--muted);line-height:1.6;margin-top:14px}
.verse-detail-links{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 0}
.verse-detail-links a{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:12px;font-family:'Cinzel',serif}
.detail-grid{display:grid;grid-template-columns:1fr;gap:14px;margin:18px 0}
.detail-panel{background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:14px}
.detail-panel h3{font-family:'Cinzel',serif;font-size:12px;letter-spacing:.08em;color:var(--accent);margin:0 0 10px}
.xref-list{display:flex;flex-direction:column;gap:8px}
.xref-item{display:flex;flex-direction:column;gap:3px;padding:9px;border:1px solid var(--border);border-radius:8px;background:var(--card)}
.xref-item a{font-family:'Cinzel',serif;font-size:11px;letter-spacing:.04em}
.xref-item .x-txt{font-size:13px;color:var(--muted);line-height:1.5}
@media(min-width:900px){
  .detail-grid{grid-template-columns:1fr 1fr}
}

/* Chapter nav */
.ch-nav{display:flex;justify-content:space-between;gap:10px;margin-top:48px;padding-top:24px;border-top:1px solid var(--border)}
.ch-nav a{background:var(--card);color:var(--accent);border:1px solid var(--border);padding:12px 20px;border-radius:8px;font-family:'Cinzel',serif;font-size:12px;transition:background .12s;flex:1;text-align:center}
.ch-nav a:hover{background:var(--border);text-decoration:none}
.ch-nav a.disabled{opacity:.35;pointer-events:none}

/* App CTA banner */
.app-cta{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:18px 20px;margin:36px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.app-cta p{font-size:13px;color:var(--muted);line-height:1.5}
.app-cta strong{color:var(--text);display:block;font-family:'Cinzel',serif;font-size:13px;margin-bottom:3px}
.cta-btn{background:var(--accent);color:var(--bg);border:none;border-radius:8px;padding:11px 20px;font-family:'Cinzel',serif;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-block}
.cta-btn:hover{opacity:.88;text-decoration:none}

/* Verse action bar */
#vbar{position:fixed;bottom:0;left:0;right:0;background:var(--card);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px;padding:10px 14px 14px;z-index:100;align-items:stretch}
#vbar .vbar-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;width:100%}
#vbar .vbar-row--primary button{flex:1;min-width:0}
#vbar button{background:var(--bg2);color:var(--text);border:1px solid var(--border);border-radius:7px;padding:10px 12px;font-family:'Cinzel',serif;font-size:11px;cursor:pointer}
#vbar button.on{border-color:var(--accent);color:var(--accent)}
#vbar .vbar-more{flex:0 0 auto;min-width:72px}
#vbar #vbar-close-btn{flex:0 0 auto;min-width:auto;padding:10px 12px}
#vbar .vbar-meta{font-size:11px;color:var(--muted);font-family:'Cinzel',serif;letter-spacing:.04em}
#vbar .vbar-advanced{display:none;flex-wrap:wrap;gap:8px;align-items:center;padding-top:4px;border-top:1px solid var(--border)}
#vbar.vbar-expanded .vbar-advanced{display:flex}
#vbar .vbar-speed{display:flex;align-items:center;gap:6px;background:var(--bg2);border:1px solid var(--border);border-radius:7px;padding:6px 10px;flex:1;min-width:160px;max-width:100%}
#vbar .vbar-speed label{font-size:11px;color:var(--muted);font-family:'Cinzel',serif;white-space:nowrap}
#vbar .vbar-speed input{flex:1;min-width:80px}
body.vbar-hidden #vbar{transform:translateY(100%)}
@media(max-width:899px){
  #vbar{transition:transform .2s ease}
  #reader{padding-bottom:120px}
  body.vbar-expanded #reader{padding-bottom:220px}
  body.vbar-hidden #reader{padding-bottom:40px}
}

/* Theme sheet */
#tsheet{position:fixed;bottom:0;left:0;right:0;background:var(--bg2);border-top:1px solid var(--border);padding:16px 14px 28px;transform:translateY(100%);transition:transform .25s ease;z-index:110}
#tsheet.on{transform:translateY(0)}
#tsheet h3{font-family:'Cinzel',serif;font-size:12px;letter-spacing:.1em;color:var(--muted);margin-bottom:12px}
.t-swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.t-btn{border-radius:8px;padding:10px 6px;font-size:11px;font-family:'Cinzel',serif;cursor:pointer;border:2px solid transparent;transition:border-color .15s;text-align:center}
.t-btn.on{border-color:var(--accent)}

/* Parallel panel */
#par-panel{display:none;border-top:1px solid var(--border);background:var(--bg2);padding:20px}
#par-panel.on{display:block}
@media(min-width:1100px){
  #par-panel.on{display:block;position:fixed;top:52px;right:0;bottom:0;width:360px;overflow-y:auto;border-top:none;border-left:1px solid var(--border);padding:20px}
  #wrap.par-open #reader{margin-right:360px}
}
.par-ver-select{width:100%;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-family:'Lora',serif;font-size:13px;margin-bottom:16px;cursor:pointer}
.par-head{font-family:'Cinzel',serif;font-size:11px;letter-spacing:.1em;color:var(--muted);margin-bottom:12px}
.par-jump-select{width:100%;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-family:'Lora',serif;font-size:13px;margin:0 14px 10px;width:calc(100% - 28px);cursor:pointer}

/* Parallel reader (two-column chapter) */
#reader.parallel-reader{max-width:min(1160px,calc(100vw - 40px))}
.par-rows{display:flex;flex-direction:column;gap:0}
.par-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start;padding:10px 0;border-bottom:1px solid var(--border)}
@media(max-width:720px){.par-row{grid-template-columns:1fr}}
.par-cell{min-width:0}
.par-cell .v-row{margin:0}
.par-col-label{font-family:'Cinzel',serif;font-size:10px;letter-spacing:.1em;color:var(--muted);margin-bottom:8px;text-transform:uppercase}

/* Loading */
.loading{text-align:center;padding:60px 20px;color:var(--muted);font-family:'Cinzel',serif;font-size:13px;letter-spacing:.1em}

/* Bible index page */
.ver-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin:24px 0}
.ver-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:16px;cursor:pointer;transition:border-color .15s;text-decoration:none;display:block}
.ver-card:hover{border-color:var(--accent);text-decoration:none}
.ver-card .vc-label{font-family:'Cinzel',serif;font-size:13px;color:var(--accent);margin-bottom:4px}
.ver-card .vc-sub{font-size:12px;color:var(--muted)}
.group-title{font-family:'Cinzel',serif;font-size:11px;letter-spacing:.15em;color:var(--muted);margin:28px 0 10px;text-transform:uppercase}
.hero{text-align:center;padding:48px 20px 32px}
.hero h1{font-family:'Cinzel',serif;font-size:clamp(22px,5vw,36px);color:var(--accent);margin-bottom:10px}
.hero p{font-size:15px;color:var(--muted);line-height:1.7;max-width:560px;margin:0 auto 24px}
:lang(te) body,:lang(te) .v-txt,:lang(te) .verse-detail-text,:lang(te) .book-btn,:lang(te) #s-search,:lang(te) .sr-txt{font-family:'Noto Sans Telugu','Lora',Georgia,serif}
:lang(hi) body,:lang(hi) .v-txt,:lang(hi) .verse-detail-text,:lang(hi) .book-btn,:lang(hi) #s-search,:lang(hi) .sr-txt{font-family:'Noto Sans Devanagari','Lora',Georgia,serif}
:lang(mr) body,:lang(mr) .v-txt,:lang(mr) .verse-detail-text,:lang(mr) .book-btn,:lang(mr) #s-search,:lang(mr) .sr-txt{font-family:'Noto Sans Devanagari','Lora',Georgia,serif}
:lang(ne) body,:lang(ne) .v-txt,:lang(ne) .verse-detail-text,:lang(ne) .book-btn,:lang(ne) #s-search,:lang(ne) .sr-txt{font-family:'Noto Sans Devanagari','Lora',Georgia,serif}
:lang(ta) body,:lang(ta) .v-txt,:lang(ta) .verse-detail-text,:lang(ta) .book-btn,:lang(ta) #s-search,:lang(ta) .sr-txt{font-family:'Noto Sans Tamil','Lora',Georgia,serif}
:lang(kn) body,:lang(kn) .v-txt,:lang(kn) .verse-detail-text,:lang(kn) .book-btn,:lang(kn) #s-search,:lang(kn) .sr-txt{font-family:'Noto Sans Kannada','Lora',Georgia,serif}
:lang(ml) body,:lang(ml) .v-txt,:lang(ml) .verse-detail-text,:lang(ml) .book-btn,:lang(ml) #s-search,:lang(ml) .sr-txt{font-family:'Noto Sans Malayalam','Lora',Georgia,serif}
:lang(bn) body,:lang(bn) .v-txt,:lang(bn) .verse-detail-text,:lang(bn) .book-btn,:lang(bn) #s-search,:lang(bn) .sr-txt{font-family:'Noto Sans Bengali','Lora',Georgia,serif}
:lang(gu) body,:lang(gu) .v-txt,:lang(gu) .verse-detail-text,:lang(gu) .book-btn,:lang(gu) #s-search,:lang(gu) .sr-txt{font-family:'Noto Sans Gujarati','Lora',Georgia,serif}
:lang(or) body,:lang(or) .v-txt,:lang(or) .verse-detail-text,:lang(or) .book-btn,:lang(or) #s-search,:lang(or) .sr-txt{font-family:'Noto Sans Oriya','Lora',Georgia,serif}

.chapter-meta-line{margin-top:6px;font-size:13px}
.book-intro{font-size:15px;color:var(--muted);line-height:1.75;margin:0 0 20px}
.book-intro p{margin:0 0 10px}
.book-famous{margin-bottom:20px}
.faq-item{border-bottom:1px solid var(--border);padding:10px 0}
.faq-item summary{cursor:pointer;font-family:'Cinzel',serif;font-size:13px;color:var(--accent)}
.faq-item p{margin-top:8px;font-size:14px;color:var(--text)}
.chapter-attribution{margin-top:32px}
.english-parallel-block{margin:18px 0}
.verse-detail-text--secondary{font-size:clamp(16px,3.5vw,20px);color:var(--muted)}
.popular-landing{margin-bottom:12px}
