@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Malayalam:wght@400;500;600;700&display=swap');
:root{--bg:#f3f5f7;--surface:#fff;--surface2:#f8fafb;--text:#20242a;--muted:#69717d;--line:#dfe4e9;--accent:#725335;--accent2:#956d45;--shadow:0 10px 30px rgba(20,30,40,.07);--reader-width:980px;--reader-size:20px}
[data-theme="dark"]{--bg:#0f1317;--surface:#181d22;--surface2:#20262c;--text:#edf1f5;--muted:#a9b2bc;--line:#303840;--accent:#d4a66d;--accent2:#e0b57e;--shadow:0 12px 34px rgba(0,0,0,.3)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:"Noto Sans Malayalam",sans-serif;line-height:1.85;transition:background .2s,color .2s}a{text-decoration:none;color:inherit}
.header{height:68px;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(18px,calc((100% - 1180px)/2));position:sticky;top:0;z-index:60}.logo{font-weight:700;color:var(--accent);font-size:17px}.header-right{display:flex;gap:8px;align-items:center}.top-link,.theme-toggle{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;padding:7px 13px;font:inherit;font-size:13px;cursor:pointer}.theme-toggle{min-width:82px}
.hero{background:linear-gradient(135deg,var(--surface),var(--surface2));border-bottom:1px solid var(--line);padding:58px 18px 50px}.hero-inner{max-width:1180px;margin:auto}.eyebrow{font:700 11px Arial;color:var(--muted);letter-spacing:.18em}.hero h1{font-size:clamp(34px,5vw,54px);font-weight:600;margin:8px 0 5px}.hero p{margin:0;color:var(--muted);font-size:16px}
.container{max-width:1180px;margin:auto;padding:30px 18px 75px}.reader{max-width:var(--reader-width);margin:auto;padding:26px 18px 75px}.selector-bar{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;border:1px solid var(--line);padding:14px;border-radius:14px;background:var(--surface);box-shadow:var(--shadow);margin-bottom:22px}.select-group{position:relative;min-width:0}.select-group label{display:block;font-size:12px;color:var(--muted);margin:0 0 5px}.select-button,select{height:45px;width:100%;border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:0 12px;font:inherit;text-align:left;color:var(--text)}.select-button{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.select-button span{color:var(--muted)}.dropdown{display:none;position:absolute;z-index:80;top:51px;left:0;width:100%;min-width:250px;background:var(--surface);border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);padding:7px}.dropdown.open{display:block}.book-menu{max-height:470px;overflow:auto;width:100%;min-width:100%;box-sizing:border-box}.book-section-label{font-size:11px;color:var(--muted);font-weight:700;padding:9px 10px 5px;letter-spacing:.04em}.book-option{display:block;width:100%;text-align:left;background:var(--surface);color:var(--text);border:0;border-bottom:1px solid var(--line);padding:9px 10px;font:inherit;cursor:pointer}.book-option:last-child{border:0}.book-option:hover{background:var(--surface2);color:var(--accent)}
.search-box{position:relative;max-width:820px;margin:0 auto 30px}.search-box input{width:100%;height:54px;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:11px;padding:0 17px;font:inherit;font-size:16px;box-shadow:var(--shadow)}.search-box #results{display:none;position:absolute;top:59px;left:0;right:0;background:var(--surface);border:1px solid var(--line);border-radius:11px;max-height:420px;overflow:auto;z-index:300;box-shadow:var(--shadow)}.result{display:block;padding:11px 14px;border-bottom:1px solid var(--line)}.result strong{display:block;color:var(--accent)}.result small{color:var(--muted);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.continue-card{display:none;border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:16px 18px;margin:0 auto 28px;max-width:820px;box-shadow:var(--shadow)}.continue-card.show{display:flex;align-items:center;justify-content:space-between;gap:15px}.continue-card small{display:block;color:var(--muted);font-size:12px}.continue-card strong{font-size:16px}.continue-card a{border:1px solid var(--line);border-radius:9px;padding:8px 14px;color:var(--accent);white-space:nowrap}
.section-title{font-size:25px;font-weight:600;margin:40px 0 15px;border-bottom:1px solid var(--line);padding-bottom:8px}.books{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.book-card{border:1px solid var(--line);border-radius:13px;padding:18px;background:var(--surface);box-shadow:0 4px 15px rgba(20,30,40,.03)}.book-card h2{font-size:18px;margin:0 0 11px;font-weight:600}.chapter-grid{display:flex;flex-wrap:wrap;gap:6px}.chapter-grid a{width:35px;height:33px;border:1px solid var(--line);border-radius:7px;display:grid;place-items:center;font:13px Arial;color:var(--muted)}.chapter-grid a:hover{border-color:var(--accent);color:var(--accent);background:var(--surface2)}
.breadcrumb{font-size:13px;color:var(--muted);margin:8px 0 15px}.breadcrumb span{margin:0 8px;color:var(--line)}.reader h1{font-size:clamp(22px,5vw,35px);font-weight:600;border-bottom:1px solid var(--line);padding-bottom:14px;margin:0 0 15px;text-align:center;white-space:nowrap;line-height:1.35}.reader h1 span{color:var(--muted);font-weight:400}.reading-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0 0 18px}.tool-group{display:flex;gap:6px;align-items:center}.tool-label{font-size:12px;color:var(--muted);margin-right:2px}.tool-btn{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:6px 10px;font:inherit;font-size:12px;cursor:pointer}.tool-btn:hover,.tool-btn.active{border-color:var(--accent);color:var(--accent);background:var(--surface2)}
.bible-text{font-size:var(--reader-size);line-height:2.08;background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:32px 34px;box-shadow:var(--shadow)}.bible-text p{margin:0 0 1.25em;text-align:justify}.bible-text p:last-child{margin-bottom:0}.bible-text .poetry{padding-left:18px}.bible-text .poetry .vline{display:block;margin:.1em 0}.vnum{font:600 11px Arial;color:var(--accent2);vertical-align:super;margin-right:4px;scroll-margin-top:180px;cursor:pointer}.vnum:hover{color:var(--accent)}.verse-copy{display:inline-flex;opacity:0;margin-left:5px;vertical-align:middle;border:0;background:transparent;color:var(--muted);font:11px Arial;cursor:pointer;padding:1px 3px}.verse-copy:hover{color:var(--accent)}.verse:hover .verse-copy,.vnum:focus + span + .verse-copy{opacity:1}.copy-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:var(--text);color:var(--surface);padding:8px 14px;border-radius:999px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:100}.copy-toast.show{opacity:1}
.chapter-nav{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:30px;gap:10px}.chapter-nav a{border:1px solid var(--line);border-radius:9px;padding:8px 14px;color:var(--accent);background:var(--surface)}footer{text-align:center;border-top:1px solid var(--line);padding:27px;color:var(--muted);font-size:12px;background:var(--surface)}
[data-font="14"]{--reader-size:14px}[data-font="16"]{--reader-size:16px}[data-font="18"]{--reader-size:18px}[data-font="20"]{--reader-size:20px}[data-font="22"]{--reader-size:22px}[data-font="24"]{--reader-size:24px}[data-font="26"]{--reader-size:26px}
[data-width="narrow"] .reader{max-width:800px}[data-width="wide"] .reader{max-width:1120px}
[data-width="narrow"] .reader{padding-left:28px;padding-right:28px}[data-width="normal"] .reader{padding-left:18px;padding-right:18px}[data-width="wide"] .reader{padding-left:8px;padding-right:8px}
@media(max-width:650px){.header{padding:0 12px}.top-link{display:none}.hero{padding:42px 16px}.container,.reader{padding:22px 12px 55px}.reader{max-width:none}[data-width="narrow"] .reader{padding-left:24px;padding-right:24px}[data-width="normal"] .reader{padding-left:12px;padding-right:12px}[data-width="wide"] .reader{padding-left:4px;padding-right:4px}.selector-bar{grid-template-columns:1fr}.continue-card.show{align-items:flex-start;flex-direction:column}.books{grid-template-columns:1fr}.bible-text{font-size:var(--reader-size);line-height:2;padding:23px 18px}.bible-text p{text-align:left}.reader h1{font-size:29px}.reading-tools{align-items:flex-start}.tool-group{flex-wrap:wrap}.verse-copy{opacity:.75}.chapter-nav a{padding:7px 10px}}

.share-fallback{position:fixed;inset:0;background:rgba(0,0,0,.45);display:grid;place-items:center;z-index:9999;padding:20px}.share-fallback-card{width:min(520px,100%);background:var(--surface);color:var(--text);border-radius:16px;padding:22px;box-shadow:0 20px 60px rgba(0,0,0,.25)}.share-fallback-card strong{display:block;font-size:18px;margin-bottom:12px}.share-fallback-card input{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid var(--border);border-radius:9px;background:var(--bg);color:var(--text);margin-bottom:12px}.share-fallback-card div{display:flex;gap:8px}.share-fallback-card button{padding:9px 14px;border:1px solid var(--border);border-radius:9px;background:var(--accent);color:#fff;cursor:pointer}.share-fallback-card button:last-child{background:var(--surface);color:var(--text)}

.sansnet-link{color:var(--accent);font-weight:600}.sansnet-link:hover{text-decoration:underline}

.book-option.book-placeholder{opacity:.55;cursor:default;border-bottom:1px solid var(--border);}
.book-option.book-placeholder:disabled{background:transparent;color:var(--muted);}

.select-button.disabled{opacity:.55;cursor:not-allowed}.select-button:disabled{pointer-events:none}.poetry-line{display:block;padding-left:1.5em}

/* Compact Bible navigation */
.selector-bar{align-items:end;gap:8px;padding:10px}
.selector-bar .select-group label{font-size:11px;margin-bottom:4px}
.selector-bar .select-button,.selector-bar select{height:42px;font-size:14px;padding:0 10px}
.select-button.disabled{opacity:.55;cursor:not-allowed}
.select-button:disabled{pointer-events:none}
.book-placeholder{color:var(--muted)!important;cursor:default!important}
.bible-text{font-size:var(--reader-size)}
.bible-text .verse-line{display:grid;grid-template-columns:2.1em minmax(0,1fr);column-gap:.35em;margin:0 0 .75em;padding:0}
.bible-text .verse-line .vnum{grid-column:1;grid-row:1;text-align:right;align-self:start;padding-top:.25em;font-size:.68em;font-weight:700;color:var(--accent);line-height:1.4}
.bible-text .verse-line .verse-text{grid-column:2;grid-row:1;min-width:0}
.bible-text .verse-text{overflow-wrap:anywhere;word-break:break-word;hyphens:none;max-width:100%;min-width:0}
.bible-text .verse{display:contents}
.verse-copy{grid-column:2;justify-self:end;margin-top:-1.8em;position:relative;opacity:0;border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:6px;padding:2px 6px;cursor:pointer}
.verse-line:hover .verse-copy{opacity:1}
@media (max-width:700px){
  .selector-bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:7px;border-radius:10px}
  .selector-bar .select-group label{display:none}
  .selector-bar .select-button,.selector-bar select{height:40px;font-size:12px;padding:0 7px;border-radius:7px}
  .selector-bar .select-button span{font-size:12px}
  .dropdown{min-width:180px;max-width:calc(100vw - 24px)}
  .bible-text .verse-line{grid-template-columns:1.8em minmax(0,1fr);column-gap:.3em;margin-bottom:.7em}
  .bible-text .verse-line .vnum{font-size:.64em}
  .verse-line .verse-actions{opacity:0}
  .verse-line.mobile-selected .verse-actions{opacity:1}
}
@media (max-width:380px){
  .selector-bar{gap:3px;padding:5px}
  .selector-bar .select-button,.selector-bar select{font-size:11px;padding:0 5px}
}

/* Sticky Bible navigation */
.selector-bar{
  position:sticky;
  top:68px;
  z-index:400;
  margin-bottom:22px;
  box-shadow:0 6px 20px rgba(20,30,40,.10);
}
[data-theme="dark"] .selector-bar{
  box-shadow:0 8px 24px rgba(0,0,0,.35);
}
@media (max-width:700px){
  .selector-bar{
    top:68px;
    margin-left:-2px;
    margin-right:-2px;
    margin-bottom:18px;
  }
}

/* Personal Bible study features */
.verse-line{position:relative;z-index:1;transition:background .18s,border-color .18s;padding-left:34px}
.verse-line.is-highlighted{background:var(--highlight-bg,#fff3a6);border-radius:8px;padding-top:7px;padding-bottom:7px;padding-right:8px;margin-left:-8px;margin-right:-8px}
.verse-line.is-bookmarked .vnum{color:var(--accent)}
.verse-actions{position:absolute;left:3px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:4px;width:26px;align-items:center;opacity:0;pointer-events:none;transition:opacity .15s;z-index:20}
.verse-line:hover,.verse-line:focus-within{z-index:50}.verse-line:hover .verse-actions,.verse-line:focus-within .verse-actions,.verse-line.mobile-selected .verse-actions{opacity:1;pointer-events:auto}
.verse-action{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:6px;padding:0;font-size:12px;line-height:1;cursor:pointer;box-sizing:border-box}
.verse-action:hover,.verse-action:focus-visible{color:var(--accent);border-color:var(--accent);outline:none}
.feature-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:1000;place-items:center;padding:18px}.feature-modal.show{display:grid}.feature-card{width:min(620px,100%);max-height:min(80vh,700px);overflow:hidden;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 24px 70px rgba(0,0,0,.25);position:relative;display:flex;flex-direction:column}.feature-card #bookmarkList,.feature-card #homeBookmarkList{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:4px}.feature-card h3{margin:0 0 16px}.modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;color:var(--muted);font-size:25px;cursor:pointer}.bookmarks-card a{display:block;padding:12px 4px;border-bottom:1px solid var(--line)}.bookmarks-card a strong{display:block;color:var(--accent)}.bookmarks-card a span{display:block;color:var(--muted);font-size:13px;margin-top:3px}.empty-state{color:var(--muted)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.home-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1000px;margin:0 auto 34px}.feature-home-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:18px;box-shadow:var(--shadow)}.feature-kicker{font-size:10px;letter-spacing:.08em;color:var(--accent);font-weight:700;margin-bottom:6px}.feature-home-card h3{margin:0 0 8px;font-size:19px}.feature-home-card p{color:var(--muted);line-height:1.7;margin:0 0 10px}.feature-home-card .daily-text{color:var(--text);font-size:15px}.feature-link{color:var(--accent);font-size:13px}.search-hit{background:#ffe58a;color:inherit;border-radius:3px;padding:0 1px}.daily-link{display:inline-block;margin-top:3px}
.reader:fullscreen{background:var(--bg);color:var(--text);overflow:auto;padding:20px 5vw}.reader:fullscreen .selector-bar{top:10px}.focus-reading .header,.focus-reading footer,.focus-reading .breadcrumb,.focus-reading .reading-tools{display:none}.focus-reading .reader{max-width:900px}
[data-theme="dark"] .verse-line.is-highlighted{--highlight-bg:#5b5120;background:var(--highlight-bg)}[data-theme="dark"] .search-hit{background:#665b20}
@media(max-width:760px){.vnum{scroll-margin-top:300px}.bible-text,.bible-text .verse-line,.bible-text .verse-text{max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word}}
@media(max-width:760px){.home-features{grid-template-columns:1fr}.feature-tools{width:100%;justify-content:flex-start}.verse-actions{opacity:0;pointer-events:none;left:0;width:26px}.verse-line:hover .verse-actions,.verse-line:focus-within .verse-actions{opacity:0;pointer-events:none}.verse-line.mobile-selected .verse-actions{opacity:1;pointer-events:auto}.feature-card{padding:18px}.verse-line{padding-left:32px}.verse-line.is-highlighted{margin-left:-4px;margin-right:-4px}.bible-text .verse-line{padding-bottom:8px}}
.bookmark-item{display:flex;gap:10px;align-items:center;border-bottom:1px solid var(--line)}
.bookmark-item a{flex:1;border-bottom:0}
.bookmark-remove{flex:0 0 auto;border:1px solid var(--line);background:var(--bg);color:var(--muted);border-radius:8px;padding:7px 9px;cursor:pointer;font-size:16px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.bookmark-remove:hover{color:var(--text);border-color:var(--accent)}
.page-search{margin:14px auto 24px;max-width:820px}
@media(max-width:700px){.bookmark-item{align-items:center}.bookmark-remove{font-size:12px;padding:6px 8px}}

/* Subtle Bible statistics above footer */
.bible-stats{display:flex;justify-content:center;align-items:center;gap:0;margin:34px auto 8px;padding:14px 10px;color:var(--muted);font-size:.88rem;letter-spacing:.01em;max-width:760px}
.bible-stats span{padding:0 16px}
.bible-stats span+span{border-left:1px solid var(--border)}
@media(max-width:560px){.bible-stats{margin-top:26px;font-size:.78rem;padding:12px 0}.bible-stats span{padding:0 9px}.bible-stats span+span{border-left:1px solid var(--border)}}

/* Desktop verse-action fix: keep the hovered verse above adjacent verses so the vertical action stack remains clickable. */
@media (min-width:701px){.verse-line{position:relative;z-index:1}.verse-line:hover,.verse-line:focus-within{z-index:50}.verse-line:hover .verse-actions,.verse-line:focus-within .verse-actions{pointer-events:auto}}

/* Search result list must remain above verse hover/action layers. */
.search-box, .page-search{position:relative;z-index:250;}
.search-box #results{z-index:300;}
.verse-line .verse-actions{z-index:20;}


/* Single-piece magnifier icon (circle and handle are one SVG graphic). */
.search-box::after, .mobile-search-toggle .search-icon{
  content:"";
  position:absolute;
  width:19px;
  height:19px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"black\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"%3E%3Ccircle cx=\"11\" cy=\"11\" r=\"7.5\"/%3E%3Cpath d=\"M16.25 16.25L22 22\"/%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\" fill=\"none\" stroke=\"black\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"%3E%3Ccircle cx=\"11\" cy=\"11\" r=\"7.5\"/%3E%3Cpath d=\"M16.25 16.25L22 22\"/%3E%3C/svg%3E") center/contain no-repeat;
  pointer-events:none;
}
.search-box::after{
  right:16px;
  top:50%;
  transform:translateY(-50%);
}
.search-box input{padding-right:48px}
.mobile-search-toggle{position:relative}
.mobile-search-toggle .search-icon{
  position:relative;
  display:block;
  width:17px;
  height:17px;
}

/* Final stacking order: header above sticky navigation and search. */
.header, .site-header, header.header {
  position: sticky;
  top: 0;
  z-index: 1000;
}
.selector-bar {
  z-index: 900;
}
.search-box, .page-search {
  z-index: 700;
}
.search-box #results {
  z-index: 710;
}

/* Simple daily-reading interface */
.mobile-search-toggle,.mobile-settings-toggle{display:none}
@media(max-width:700px){
  .header{min-height:58px;height:58px;z-index:500}
  .logo{font-size:16px}
  .header-right{gap:5px}
  .mobile-search-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:36px;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:9px;font-size:17px;cursor:pointer}
  .mobile-settings-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:9px;padding:9px 11px;font:inherit;font-size:13px;cursor:pointer;margin-bottom:8px}
  .reading-tools{display:block;margin:0 0 14px;padding:0;border:0}
  .reading-tools:not(.settings-open) > .tool-group{display:none}
  .reading-tools.settings-open > .tool-group{display:flex;margin-top:7px}
  .reader .page-search{display:none;margin:0 0 12px}
  .reader .page-search.mobile-search-open{display:block}
  .reader .page-search input{height:46px;font-size:15px}
  .reader .selector-bar{margin-bottom:10px;position:sticky;top:58px;z-index:400}
  .reader .breadcrumb{margin-top:9px;margin-bottom:9px}
  .reader h1{margin-bottom:10px}
  .bible-text{padding-top:18px}
}
@media(max-width:380px){
  .logo{font-size:15px}
  .mobile-search-toggle{width:34px;height:34px}
}

/* Cleaner homepage */
.home-hero{padding:56px 18px 34px;text-align:center}
.home-hero-inner{max-width:760px;margin:auto}
.home-hero .eyebrow{font-size:11px;letter-spacing:.12em;color:var(--accent);font-weight:700;margin-bottom:8px}
.home-hero h1{font-size:clamp(30px,5vw,46px);line-height:1.25;margin:0 0 8px;font-weight:600}
.home-hero p{margin:0;color:var(--muted);font-size:15px}
.home-intro{max-width:820px;margin:0 auto 24px;text-align:center;color:var(--muted);font-size:14px;line-height:1.8}
.home-section-heading{max-width:1000px;margin:34px auto 12px;font-size:18px;font-weight:600}
@media(max-width:650px){
  .home-hero{padding:34px 14px 22px}
  .home-hero h1{font-size:29px}
  .home-intro{font-size:13px;margin-bottom:18px}
  .home-section-heading{margin-top:26px}
}


/* Daily-reading mobile simplification */
@media (max-width:700px){
  .reader .selector-bar{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr) minmax(0,.7fr);
    gap:6px;
    padding:7px;
    border-radius:10px;
    margin-bottom:8px;
    top:58px;
  }
  .reader .selector-bar .select-group label{display:none}
  .reader .selector-bar .select-button,.reader .selector-bar select{
    height:40px;
    min-width:0;
    font-size:13px;
    padding:0 7px;
    border-radius:8px;
  }
  .reader .selector-bar .select-button span{margin-left:3px}
  .reader .selector-bar .dropdown{top:44px;min-width:0;max-width:calc(100vw - 24px);}
  .reader .page-search{margin:0 0 10px}
  .reader h1{font-size:clamp(20px,6vw,29px);padding-bottom:9px;text-align:center;white-space:nowrap;line-height:1.3;margin-top:10px}
  .reader .breadcrumb{display:none}
  .reader .bible-text{border-radius:11px;padding:18px 15px}
  .reading-tools{margin-bottom:9px}
}
@media (max-width:380px){
  .reader .selector-bar{grid-template-columns:minmax(0,.82fr) minmax(0,1.25fr) minmax(0,.62fr);gap:4px;padding:5px}
  .reader .selector-bar .select-button,.reader .selector-bar select{font-size:12px;padding:0 5px}
}

/* Cleaner homepage: header carries the title; content starts directly with reading actions. */
.home-hero,.home-intro{display:none!important}
.home-page-intro{max-width:760px;margin:4px auto 20px;text-align:center;color:var(--muted);font-size:14px}
.home-primary{max-width:820px;margin:0 auto 28px}
.home-primary .search-box{margin-bottom:16px}
@media(max-width:650px){
  .container{padding-top:16px}
  .home-primary{margin-bottom:22px}
  .home-page-intro{display:none}
  .continue-card{margin-bottom:18px}
  .section-title{font-size:21px;margin-top:26px}
}


/* Final simple daily-reading layout */
.home-primary .selector-bar{
  position:sticky;
  top:68px;
  z-index:900;
  background:var(--surface);
}
.home-primary .selector-bar .dropdown{z-index:950}
@media(max-width:700px){
  .header{position:sticky;top:0;z-index:1000;height:58px;min-height:58px}
  .home-primary .selector-bar{
    top:58px;
    z-index:900;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr) minmax(0,.7fr);
    gap:6px;
    padding:7px;
    margin-bottom:10px;
    border-radius:10px;
  }
  .home-primary .selector-bar .select-group label{display:none}
  .home-primary .selector-bar .select-button,
  .home-primary .selector-bar select{height:40px;min-width:0;font-size:13px;padding:0 7px;border-radius:8px}
  .home-primary .selector-bar .dropdown{top:44px;min-width:0;max-width:calc(100vw - 24px);z-index:950}
  .reader .selector-bar{top:58px;z-index:900}
  .reader .selector-bar .dropdown{z-index:950}
  .reader .page-search{display:none}
  .reader .page-search.mobile-search-open{display:block}
  .reader .reading-tools:not(.settings-open)>.tool-group{display:none}
  .reader .reading-tools.settings-open>.tool-group{display:flex}
  .reader .bible-text{overflow-wrap:break-word;word-break:normal;hyphens:none}
  .reader .verse-line,.reader .verse-text{overflow-wrap:break-word;word-break:normal;hyphens:none}
}

/* Homepage Bible navigation: guaranteed sticky layer */
.home-primary .home-selector-bar {
  position: sticky !important;
  top: 68px !important;
  z-index: 900 !important;
  align-self: flex-start;
}
.home-primary .home-selector-bar .dropdown { z-index: 950 !important; }
@media (max-width:700px) {
  .home-primary .home-selector-bar {
    top: 58px !important;
    z-index: 900 !important;
  }
}
.home-primary .home-selector-bar.home-sticky-active {
  position: fixed !important;
  top: 68px !important;
  left: 50%;
  transform: translateX(-50%);
  width: min(820px, calc(100% - 36px));
  margin-bottom: 0;
}
@media (max-width:700px){
  .home-primary .home-selector-bar.home-sticky-active {
    top: 58px !important;
    width: calc(100% - 24px);
  }
}

/* Unified custom Bible selectors: avoid native mobile <select> popups. */
.native-state-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
.selector-bar .selectbox{position:relative;width:100%;min-width:0}
.selector-bar .select-button{width:100%;box-sizing:border-box}
.selector-bar .dropdown{width:100%;min-width:100%;box-sizing:border-box;max-height:min(60vh,470px);overflow:auto}
.selector-bar .testament-menu,.selector-bar .chapter-menu{padding:7px}
.selector-bar .testament-menu .book-option,.selector-bar .chapter-menu .book-option{white-space:nowrap}
@media(max-width:700px){
  .home-primary .selector-bar .selectbox,.reader .selector-bar .selectbox{width:100%;min-width:0}
  .home-primary .selector-bar .dropdown,.reader .selector-bar .dropdown{width:100%;min-width:100%;max-width:none}
}

/* Mobile dropdown text visibility: allow long Malayalam/English labels to wrap fully. */
@media(max-width:700px){
  .selector-bar .select-button{
    min-height:40px;
    height:auto;
    line-height:1.25;
    white-space:normal;
    overflow:visible;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:4px;
    text-align:left;
  }
  .selector-bar .select-button > span{
    flex:0 0 auto;
    white-space:nowrap;
  }
  .selector-bar .dropdown .book-option{
    width:100%;
    box-sizing:border-box;
    white-space:normal;
    overflow-wrap:anywhere;
    word-break:normal;
    line-height:1.35;
    min-height:38px;
    height:auto;
    text-align:left;
  }
}




/* Chapter menu: the opened options panel is positioned by app.js on mobile. */
@media (max-width:700px){
  .reader .selector-bar .select-group:last-child .dropdown.chapter-menu,
  .home-primary .selector-bar .select-group:last-child .dropdown.chapter-menu{
    box-sizing:border-box !important;
    z-index:2000 !important;
  }
  .selector-bar .chapter-menu .book-option{
    white-space:nowrap !important;
    overflow:hidden;
    text-overflow:clip;
  }
}
}



/* FINAL CUSTOM DROPDOWN SYSTEM - opened panel sizes independently from closed button */
.selectbox{position:relative;overflow:visible;}
.selector-bar .dropdown{
  width:max-content !important;
  min-width:100% !important;
  max-width:calc(100vw - 16px) !important;
  box-sizing:border-box !important;
  white-space:nowrap;
  overflow-x:auto;
  overflow-y:auto;
}
.selector-bar .dropdown .book-option{
  width:max-content !important;
  min-width:100% !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
}
@media (max-width:700px){
  .home-primary .selector-bar .dropdown,
  .reader .selector-bar .dropdown{
    width:max-content !important;
    min-width:100% !important;
    max-width:calc(100vw - 16px) !important;
    left:0 !important;
    right:auto !important;
  }
  .home-primary .selector-bar .dropdown .book-option,
  .reader .selector-bar .dropdown .book-option{
    width:max-content !important;
    min-width:100% !important;
    white-space:nowrap !important;
    overflow:visible !important;
  }
}


/* Refined homepage visual design - no new features */

/* Give the homepage a quieter, more editorial hierarchy. */
.home-primary {
  max-width: 860px;
  margin: 0 auto 30px;
}

.home-primary .selector-bar {
  box-shadow: 0 5px 18px rgba(20,30,40,.045);
  border-radius: 12px;
  padding: 9px;
  gap: 7px;
  margin-bottom: 14px;
}

.home-primary .selector-bar .select-button {
  background: var(--surface2);
  border-color: var(--line);
}

.home-primary .search-box {
  max-width: 860px;
  margin: 0 auto 18px;
}

.home-primary .search-box input {
  height: 48px;
  border-radius: 10px;
  box-shadow: none;
  background: var(--surface);
  font-size: 15px;
}

.continue-card {
  max-width: 860px;
  margin: 0 auto 32px;
  border-radius: 11px;
  padding: 13px 16px;
  box-shadow: none;
  background: var(--surface2);
}

.continue-card strong {
  font-size: 15px;
}

.continue-card a {
  padding: 6px 11px;
  border-radius: 8px;
  font-size: 13px;
}

.section-title {
  max-width: 1180px;
  margin: 34px auto 14px;
  padding: 0 0 9px;
  border-bottom: 1px solid var(--line);
  font-size: 21px;
  font-weight: 600;
  color: var(--text);
}

.books {
  gap: 12px;
}

.book-card {
  border-radius: 11px;
  padding: 15px 16px;
  box-shadow: none;
  transition: border-color .15s ease, background .15s ease;
}

.book-card:hover {
  border-color: color-mix(in srgb, var(--accent) 35%, var(--line));
}

.book-card h2 {
  font-size: 17px;
  margin-bottom: 9px;
}

.chapter-grid {
  gap: 5px;
}

.chapter-grid a {
  width: 33px;
  height: 31px;
  border-radius: 6px;
  font-size: 12px;
  background: var(--surface2);
}

.chapter-grid a:hover {
  background: var(--surface);
}

@media (max-width: 650px) {
  .home-primary {
    margin-bottom: 20px;
  }

  .home-primary .selector-bar {
    padding: 6px;
    gap: 4px;
    margin-bottom: 10px;
  }

  .home-primary .search-box {
    margin-bottom: 12px;
  }

  .home-primary .search-box input {
    height: 44px;
    font-size: 14px;
  }

  .continue-card {
    margin-bottom: 24px;
    padding: 11px 13px;
  }

  .section-title {
    margin-top: 24px;
    margin-bottom: 11px;
    font-size: 19px;
  }

  .books {
    gap: 9px;
  }

  .book-card {
    padding: 13px 14px;
  }

  .book-card h2 {
    font-size: 16px;
  }

  .chapter-grid {
    gap: 4px;
  }

  .chapter-grid a {
    width: 32px;
    height: 30px;
  }
}


/* Smaller mobile Continue Reading button */
@media (max-width: 650px) {
  .continue-card a {
    padding: 4px 8px;
    font-size: 12px;
    line-height: 18px;
    border-radius: 6px;
  }
}


/* Mobile Continue Reading: compact version of desktop one-row layout */
@media (max-width: 650px) {
  .continue-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
  }

  .continue-card > div {
    min-width: 0;
    flex: 1 1 auto;
  }

  .continue-card small {
    display: block;
    font-size: 11px;
    line-height: 15px;
    margin-bottom: 1px;
    white-space: nowrap;
  }

  .continue-card strong {
    display: block;
    font-size: 14px;
    line-height: 19px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .continue-card a {
    flex: 0 0 auto;
    white-space: nowrap;
    padding: 4px 8px;
    font-size: 12px;
    line-height: 18px;
    border-radius: 6px;
  }
}


/* Final mobile Continue Reading: force single row */
@media (max-width: 650px) {
  .continue-card {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }

  .continue-card > div {
    display: block !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
  }

  .continue-card small {
    display: block !important;
    margin: 0 0 1px !important;
    font-size: 11px !important;
    line-height: 15px !important;
    white-space: nowrap !important;
  }

  .continue-card strong {
    display: block !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 19px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .continue-card a {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    white-space: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 4px 8px !important;
    font-size: 12px !important;
    line-height: 18px !important;
    margin: 0 !important;
  }
}


/* Final mobile Continue Reading: keep chapter number visible */
@media (max-width: 650px) {
  .continue-card > div {
    min-width: 0 !important;
    overflow: hidden !important;
  }

  .continue-card strong {
    display: flex !important;
    align-items: baseline !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  .continue-card strong .continue-book {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .continue-card strong .continue-chapter {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    margin-left: 4px !important;
  }

  .continue-card a {
    flex: 0 0 auto !important;
  }
}


/* FINAL mobile Continue Reading layout */
@media (max-width: 650px) {
  .continue-card {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }

  .continue-card > div {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  .continue-card small {
    display: block !important;
    margin: 0 0 1px !important;
    font-size: 11px !important;
    line-height: 15px !important;
    white-space: nowrap !important;
  }

  .continue-card strong {
    display: flex !important;
    align-items: baseline !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 19px !important;
    white-space: nowrap !important;
    overflow: visible !important;
  }

  .continue-card strong .continue-book {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .continue-card strong .continue-chapter {
    flex: 0 0 auto !important;
    margin-left: 5px !important;
    white-space: nowrap !important;
  }

  .continue-card a {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 4px 8px !important;
    font-size: 12px !important;
    line-height: 18px !important;
    white-space: nowrap !important;
  }
}

/* Desktop Continue Reading: space between book name and chapter */
.continue-card strong .continue-chapter {
  margin-left: 6px;
}


/* FINAL mobile reader settings and navigation */
@media (max-width: 700px) {
  /* Width controls are desktop-only on mobile. */
  .reader .reading-tools.settings-open > .tool-group:nth-of-type(2) {
    display: none !important;
  }

  /* Keep Copy chapter + Bookmarks on one row; hide Full screen. */
  .reader .reading-tools.settings-open > .tool-group:nth-of-type(3),
  .reader .reading-tools.settings-open > .feature-tools {
    display: flex !important;
    align-items: center !important;
  }

  .reader .feature-tools .tool-btn:nth-child(2) {
    display: none !important;
  }

  .reader .reading-tools.settings-open {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
  }

  .reader .reading-tools.settings-open > .mobile-settings-toggle {
    flex: 0 0 100% !important;
  }

  .reader .reading-tools.settings-open > .tool-group:nth-of-type(3) {
    flex: 1 1 0 !important;
  }

  .reader .reading-tools.settings-open > .feature-tools {
    flex: 1 1 0 !important;
    width: auto !important;
    justify-content: flex-end !important;
  }

  .reader .reading-tools.settings-open > .tool-group:nth-of-type(3) .tool-btn,
  .reader .reading-tools.settings-open > .feature-tools .tool-btn {
    min-height: 34px;
    padding: 5px 9px;
  }

  /* Sticky chapter navigation: taller and equal-width buttons. */
  .reader .chapter-nav {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 70 !important;
    margin-left: -16px !important;
    margin-right: -16px !important;
    margin-bottom: -16px !important;
    padding: 6px 12px !important;
    min-height: 42px !important;
    box-sizing: border-box !important;
    background: var(--bg, #fff) !important;
    border-top: 1px solid var(--line) !important;
    display: flex !important;
    gap: 10px !important;
  }

  .reader .chapter-nav a {
    flex: 1 1 0 !important;
    width: 0 !important;
    min-height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 5px 8px !important;
    font-size: 13px !important;
    line-height: 20px !important;
    text-align: center !important;
  }

  .reader .bible-text {
    padding-bottom: 48px !important;
  }
}

/* Mobile reading settings: keep bookmark action compact and horizontal. */
@media (max-width: 700px) {
  .reader .reading-tools.settings-open > .tool-group:nth-of-type(3) .tool-btn,
  .reader .reading-tools.settings-open > .feature-tools .tool-btn {
    min-height: 34px !important;
    height: 34px !important;
    white-space: nowrap !important;
    line-height: 1.2 !important;
    box-sizing: border-box !important;
  }

  .reader .reading-tools.settings-open > .feature-tools .tool-btn:first-child {
    white-space: nowrap !important;
    min-width: max-content;
  }
}

/* Final mobile reading-settings layout: Text label above A controls. */
@media (max-width: 700px) {
  .reader .reading-tools.settings-open {
    display: grid !important;
    grid-template-columns: 38px 38px 38px minmax(82px, 0.9fr) minmax(105px, 1.1fr) !important;
    align-items: center !important;
    column-gap: 5px !important;
    row-gap: 5px !important;
    overflow: visible !important;
  }

  .reader .reading-tools.settings-open > .mobile-settings-toggle {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    margin: 0 !important;
  }

  /* Let the Text group contents participate in the outer grid. */
  .reader .reading-tools.settings-open > .tool-group:nth-of-type(1) {
    display: contents !important;
  }

  .reader .reading-tools.settings-open > .tool-group:nth-of-type(1) .tool-label {
    grid-column: 1 / 4 !important;
    grid-row: 2 !important;
    justify-self: start !important;
    font-size: 14px !important;
    margin: 0 0 0 0 !important;
    line-height: 20px !important;
  }

  .reader .reading-tools.settings-open > .tool-group:nth-of-type(1) .tool-btn {
    height: 48px !important;
    min-height: 48px !important;
    width: 38px !important;
    min-width: 38px !important;
    padding: 4px 3px !important;
    font-size: 15px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
  }

  .reader .reading-tools.settings-open > .tool-group:nth-of-type(1) .tool-btn:nth-of-type(1) {
    grid-column: 1 !important;
    grid-row: 3 !important;
  }
  .reader .reading-tools.settings-open > .tool-group:nth-of-type(1) .tool-btn:nth-of-type(2) {
    grid-column: 2 !important;
    grid-row: 3 !important;
  }
  .reader .reading-tools.settings-open > .tool-group:nth-of-type(1) .tool-btn:nth-of-type(3) {
    grid-column: 3 !important;
    grid-row: 3 !important;
  }

  /* Hide Width group and Full screen on mobile. */
  .reader .reading-tools.settings-open > .tool-group:nth-of-type(2),
  .reader .reading-tools.settings-open > .feature-tools .tool-btn:nth-child(2) {
    display: none !important;
  }

  /* Copy chapter sits on the same row as A-, A and A+. */
  .reader .reading-tools.settings-open > .tool-group:nth-of-type(3) {
    grid-column: 4 !important;
    grid-row: 3 !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  .reader .reading-tools.settings-open > .tool-group:nth-of-type(3) .tool-btn {
    width: 100% !important;
    min-width: 0 !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 4px 5px !important;
    font-size: 13px !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
  }

  /* Bookmarks gets the remaining space, including for 3-digit counts. */
  .reader .reading-tools.settings-open > .feature-tools {
    grid-column: 5 !important;
    grid-row: 3 !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    justify-content: stretch !important;
  }

  .reader .reading-tools.settings-open > .feature-tools .tool-btn:first-child {
    width: 100% !important;
    min-width: 0 !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 4px 5px !important;
    font-size: 13px !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
  }
}

/* Slightly larger verse-side action buttons; position unchanged. */
.verse-action{width:28px;height:28px;font-size:13px}
.verse-actions{width:30px}
@media(max-width:760px){.verse-actions{width:30px;left:0}}

/* Hide Continue Reading completely when there is no saved last-read chapter. */
.continue-card:not(.show) {
  display: none !important;
}

/* Accessibility: clear keyboard focus without changing normal appearance. */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* PocketBible brand theme */
:root{--bg:#f7f6f2;--surface:#ffffff;--surface2:#fffaf0;--text:#10263b;--muted:#66727f;--line:#e1e4e7;--accent:#b77916;--accent2:#d39424;--shadow:0 8px 24px rgba(16,38,59,.06)}
[data-theme="dark"]{--bg:#0b1724;--surface:#122233;--surface2:#172b3f;--text:#eef4f8;--muted:#aab7c3;--line:#2a3b4c;--accent:#e0a52f;--accent2:#f0bd55;--shadow:0 12px 34px rgba(0,0,0,.28)}
.logo{display:flex;align-items:center;gap:9px;height:100%;line-height:1}.logo img{display:block;object-fit:contain;object-position:left center}.logo .logo-icon{width:39px;height:34px;flex:0 0 auto}.logo .logo-title{width:220px;height:auto;max-height:40px;flex:0 0 auto}.logo:hover{opacity:.94}
.header{background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom-color:#e4e6e8}.header-right .theme-toggle{border-color:#d8dee4;color:var(--text);background:var(--surface)}
.search-box input{border-color:#d9dfe4;box-shadow:0 5px 18px rgba(16,38,59,.05)}
.selector-bar,.book-card,.continue-card,.bible-text{box-shadow:0 5px 18px rgba(16,38,59,.045)}
.select-button,.search-box input,.tool-btn,.chapter-nav a{border-color:#d9dfe4}
.chapter-grid a:hover,.tool-btn:hover,.tool-btn.active,.select-button:hover{border-color:var(--accent);color:var(--accent)}
.section-title{color:var(--text)}
@media(max-width:650px){.logo img{width:155px;max-height:38px}}


/* PocketBible brand lockup: icon + title */
@media(max-width:700px){
  .logo{gap:6px}
  .logo .logo-icon{width:31px;height:27px}
  .logo .logo-title{width:185px;max-height:34px}
}
@media(max-width:380px){
  .logo{gap:5px}
  .logo .logo-icon{width:28px;height:24px}
  .logo .logo-title{width:170px;max-height:31px}
}


/* PocketBible footer branding */
footer{padding:30px 20px 26px}
.footer-logo{display:inline-flex;align-items:center;justify-content:center;margin:0 auto 12px;line-height:0}
.footer-logo img{display:block;width:170px;height:auto;max-height:70px;object-fit:contain}
.footer-text{line-height:1.7}
@media(max-width:650px){.footer-logo img{width:145px}.footer-text{font-size:11px}}
/* Slightly larger PocketBible icon in the header */
.logo .logo-icon{width:46px;height:40px}
@media(max-width:700px){.logo .logo-icon{width:40px;height:35px}}
@media(max-width:380px){.logo .logo-icon{width:35px;height:31px}}

/* PocketBible chapter pages: keep a small breathing gap above the sticky header on mobile. */
@media(max-width:700px){
  body:has(.reader) .header{top:8px}
  body:has(.reader) .reader .selector-bar{top:66px}
}
