/* Bible Reader — Page Styles */

/* Local fonts — subsetted Latin + Greek Extended */
@font-face {
  font-family: 'Noto Serif';
  src: url(../../less/fonts/noto-serif-greek.woff2) format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Noto Serif';
  src: url(../../less/fonts/noto-serif-greek-bold.woff2) format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Noto Sans';
  src: url(../../less/fonts/noto-sans-greek.woff2) format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Noto Sans';
  src: url(../../less/fonts/noto-sans-greek-bold.woff2) format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
      --bg-primary: #ffffff;
      --text-primary: #1a1a1a;
      --text-secondary: #666666;
      --verse-num-color: #e10d0d;
      --highlight-bg: #E1F0F5;
      --border-light: #e0e0e0;
      --accent: #2a6496;
      --font-bible: 'Noto Serif', 'Georgia', 'Times New Roman', serif;
      --font-ui: system-ui, -apple-system, sans-serif;
    }

    .bible-page *, .bible-page *::before, .bible-page *::after { box-sizing: border-box; }
    .bible-page .recordings-widget, .bible-page .recordings-widget * { box-sizing: content-box !important; }

    .bible-page {
      font-family: var(--font-bible);
      background: var(--bg-primary);
      color: var(--text-primary);
      line-height: 1.8;
      max-width: 1400px;
      margin: 0 auto;
      padding: 2rem;
    }

    /* ── Header ── */
    .bible-header {
      text-align: center;
      margin-bottom: 2rem;
      padding-bottom: 1.5rem;
    }
    .bible-book-name {
      font-size: 1.5rem;
      letter-spacing: 0.1em;
      font-weight: 700;
      color: var(--text-primary);
      margin-bottom: 0.25rem;
    }
    .bible-chapter-num {
      font-size: 1.1rem;
      font-weight: 600;
      color: var(--text-primary);
      letter-spacing: 0.05em;
    }

    /* Fix sticky: theme ancestors use overflow:hidden which breaks position:sticky */
    /* Fix sticky: ALL ancestors must have overflow visible */
    body.bible-reader,
    body.bible-reader .wrapper,
    body.bible-reader .site-content,
    body.bible-reader #content,
    body.bible-reader #primary,
    body.bible-reader #main,
    body.bible-reader .bible-page {
      overflow: visible !important;
      transform: none !important;
    }

    /* ── Settings Bar (sticky) ── */
    .bible-settings {
      position: sticky;
      top: 0;
      z-index: 50;
      background: #fff;
      border-bottom: 1px solid var(--border-light);
      padding: 0.6rem 0;
      margin-bottom: 0.5rem;
      display: flex;
      align-items: center;
      justify-content: space-between;
      font-family: var(--font-ui);
      font-size: 0.8rem;
      gap: 0.5rem;
      flex-wrap: wrap;
    }

    /* Left: View + Mode controls */
    .settings-left {
      display: flex;
      align-items: center;
      gap: 0.75rem;
    }

    /* Center: Font size + Theme */
    .settings-center {
      display: flex;
      align-items: center;
      gap: 1.25rem;
    }

    /* Right: Chapter nav (reserved) */
    .settings-right {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--text-secondary);
    }

    /* ── View buttons ── */
    .view-btn {
      padding: 0.35rem 0.65rem;
      border: 1px solid var(--border-light);
      background: #fff;
      border-radius: 4px;
      cursor: pointer;
      color: var(--text-secondary);
      font-family: var(--font-ui);
      font-size: 0.8rem;
      transition: all 0.15s;
    }
    .view-btn:hover {
      border-color: var(--accent);
      color: var(--accent);
    }
    .view-btn.active {
      background: var(--accent);
      color: #fff;
      border-color: var(--accent);
    }

    /* ── Mode icon buttons ── */
    .mode-btn {
      padding: 0.35rem;
      border: 1px solid transparent;
      background: none;
      border-radius: 4px;
      cursor: pointer;
      color: var(--text-secondary);
      transition: all 0.15s;
      display: flex;
      align-items: center;
    }
    .mode-btn:hover { color: var(--accent); }
    .mode-btn.active {
      color: var(--accent);
      border-color: var(--border-light);
      background: #f9f6f2;
    }

    /* ── Settings divider ── */
    .settings-divider {
      width: 1px;
      height: 20px;
      background: var(--border-light);
    }

    /* ── Font size controls ── */
    .font-size-group {
      display: flex;
      align-items: center;
      gap: 0;
      border: 1px solid var(--border-light);
      border-radius: 4px;
      overflow: hidden;
    }
    .font-size-btn {
      padding: 0.3rem 0.6rem;
      border: none;
      background: #fff;
      cursor: pointer;
      color: var(--text-secondary);
      font-family: var(--font-ui);
      transition: all 0.15s;
      line-height: 1;
    }
    .font-size-btn:hover {
      background: #f5f2ef;
      color: var(--accent);
    }
    .font-size-btn:not(:last-child) {
      border-right: 1px solid var(--border-light);
    }
    .font-size-btn.font-active {
      background: #f9f6f2;
      color: var(--accent);
    }

    /* ── Theme selector ── */
    .theme-group {
      display: flex;
      align-items: center;
      gap: 0.4rem;
    }
    .theme-swatch {
      width: 26px;
      height: 26px;
      border-radius: 5px;
      border: 2px solid transparent;
      cursor: pointer;
      transition: all 0.15s;
      position: relative;
    }
    .theme-swatch:hover { transform: scale(1.1); }
    .theme-swatch.active { border-color: var(--accent); }
    .theme-swatch.active::after {
      content: "";
      position: absolute;
      inset: -4px;
      border: 1px solid var(--accent);
      border-radius: 7px;
    }
    .theme-light { background: #fff; border-color: #ccc; }
    .theme-sepia { background: #F4EFEA; border-color: #dddbd6; }
    .theme-dark { background: #151516; border-color: #333; }

    /* ── Chapter nav placeholder ── */
    .chapter-nav-placeholder {
      display: flex;
      align-items: center;
      gap: 0.4rem;
    }
    .nav-arrow {
      padding: 0.3rem 0.5rem;
      border: 1px solid var(--border-light);
      border-radius: 4px;
      background: #fff;
      cursor: pointer;
      color: var(--text-secondary);
      font-size: 0.85rem;
      transition: all 0.15s;
    }
    .nav-arrow:hover { border-color: var(--accent); color: var(--accent); }
    .chapter-label {
      font-weight: 600;
      color: var(--text-primary);
      min-width: 2em;
      text-align: center;
    }

    /* ── Themes ── */
    body.theme-sepia-active {
      --bg-primary: #F4EFEA;
      --text-primary: #472B1A;
      --text-secondary: #7a5c48;
      --verse-num-color: #a83020;
      --border-light: #ddd5ca;
      --accent: #6b4423;
      --highlight-bg: rgba(210, 180, 120, 0.18);
    }
    body.theme-sepia-active { background-color: #EDE7E0; }
    body.theme-sepia-active .bible-settings { background: #F4EFEA; }
    body.theme-sepia-active .view-btn { background: #EFE9E2; border-color: #ddd5ca; color: #6d5d4e; }
    body.theme-sepia-active .view-btn.active { background: #3b5b8a; color: #fff; border-color: #3b5b8a; }
    body.theme-sepia-active .font-size-btn { background: #EFE9E2; }
    body.theme-sepia-active .font-type-btn { background: #EFE9E2; }
    body.theme-sepia-active .nav-trigger { background: #EFE9E2; }
    body.theme-sepia-active .tb-icon { background: transparent; }
    body.theme-sepia-active .bible-pane { background: var(--bg-primary); }
    /* Sepia modal */
    body.theme-sepia-active .nav-modal { background: #F4EFEA; --stone-50: #F4EFEA; --stone-100: #E6DFD6; --stone-150: #E0D8CE; --stone-200: #ddd5ca; --stone-300: #c8bfb2; --stone-400: #9a8e7c; --stone-500: #6d5d4e; --stone-600: #574a3c; --stone-700: #3e3228; --stone-800: #352a20; --stone-900: #221a12; --gold-400: #a08050; --gold-500: #856a3e; --gold-600: #6b5530; }
    body.theme-sepia-active .nav-header { background: #F4EFEA; }
    body.theme-sepia-active .search-input { background: #EFE9E2; border-color: #ddd5ca; color: #352a20; }
    body.theme-sepia-active .search-input:focus { border-color: #a08050; }
    body.theme-sepia-active .book-card { background: #EFE9E2; border-color: #ddd5ca; }
    body.theme-sepia-active .book-card:hover { border-color: #c8bfb2; }
    body.theme-sepia-active .ch-pill { background: #EFE9E2; border-color: #ddd5ca; color: #574a3c; }
    body.theme-sepia-active .ch-pill:hover { border-color: #9a8e7c; color: #352a20; }
    body.theme-sepia-active .nav-close { background: #EFE9E2; border-color: #ddd5ca; }
    body.theme-sepia-active .nav-header-back { background: #EFE9E2; border-color: #ddd5ca; }
    body.theme-sepia-active .today-strip { background: linear-gradient(to right, rgba(160,128,80,0.08), transparent); }
    body.theme-sepia-active .today-strip-cal { background: #EFE9E2; border-color: #ddd5ca; }
    body.theme-sepia-active .autocomplete { background: #EFE9E2; border-color: #ddd5ca; }
    body.theme-sepia-active .ac-item:hover, body.theme-sepia-active .ac-item.focused { background: #E6DFD6; }
    body.theme-sepia-active .cal-tabs { background: #F4EFEA; border-color: #ddd5ca; }
    body.theme-sepia-active .cc-hero { background: #E6DFD6; border-color: #ddd5ca; }
    body.theme-sepia-active .cc-month-arrow { border-color: #ddd5ca; }
    body.theme-sepia-active .search-clear { background: #E0D8CE; }
    /* Sepia — full viewport: header */
    body.theme-sepia-active header.menu-wrapper { background-color: #EDE7E0 !important; position: relative; }
    body.theme-sepia-active header.menu-wrapper::after { content: ''; position: absolute; inset: 0; background: #EDE7E0; opacity: 0.6; pointer-events: none; z-index: 0; }
    body.theme-sepia-active header.menu-wrapper > * { position: relative; z-index: 1; }
    body.theme-sepia-active header.menu-wrapper .bar { background-color: #3a3d3e; }
    body.theme-sepia-active header.menu-wrapper .menu-main-container { background-color: #F4EFEA; border-color: #ddd5ca; }
    body.theme-sepia-active header.menu-wrapper ul li a { color: #3e3228; }
    body.theme-sepia-active header.menu-wrapper ul li a:hover { color: #6b4423; }
    body.theme-sepia-active header.menu-wrapper ul li.current-menu-item a { color: #6b4423; }
    body.theme-sepia-active .site-content { background-color: #EDE7E0; }
    /* Sepia — footer */
    body.theme-sepia-active footer { background-color: #DDD5CA !important; background-image: url(../../images/logo-footer-black.png) !important; background-repeat: no-repeat !important; background-position: center center !important; color: #472B1A !important; }
    body.theme-sepia-active footer a,
    body.theme-sepia-active footer.col-6 section.navigation nav ul li,
    body.theme-sepia-active footer.col-6 section.navigation nav ul li a,
    body.theme-sepia-active footer.col-6 section.copyright p,
    body.theme-sepia-active footer.col-6 section.copyright p a { color: #5a3d28 !important; }
    body.theme-sepia-active footer h4,
    body.theme-sepia-active footer .widget-title { color: #472B1A !important; }
    /* Sepia — related posts widget */
    body.theme-sepia-active .bible-page .recordings-widget { background-color: #F4EFEA; }
    body.theme-sepia-active .bible-nav a { color: #6b4423; }
    body.theme-sepia-active .bible-swap-btn { background: #EFE9E2; border-color: #ddd5ca; }
    /* Sepia — widget header strip (keep original pattern, tint bg) */
    body.theme-sepia-active .bible-page .recordings-widget > .title { background-color: #EDE7E0; }
    body.theme-sepia-active .bible-page .recordings-widget > .title span { background-color: #6d645c; }

    body.theme-dark-active {
      --bg-primary: #151516;
      --text-primary: #e4e2dc;
      --text-secondary: #888690;
      --verse-num-color: #c94040;
      --border-light: #363640;
      --highlight-bg: rgba(255, 220, 80, 0.14);
    }
    body.theme-dark-active .bible-settings { background: #151516; }
    body.theme-dark-active .view-btn { background: #2a332e; color: #e4e2dc; border-color: #464650; }
    body.theme-dark-active .view-btn.active { background: var(--accent); color: #fff; }
    body.theme-dark-active .font-size-btn { background: #2a332e; color: #e4e2dc; }
    body.theme-dark-active .nav-arrow { background: #363640; color: #e4e2dc; border-color: #464650; }
    body.theme-dark-active .bible-pane { background: var(--bg-primary); }
    /* Dark modal */
    body.theme-dark-active .overlay { background: rgba(10, 10, 20, 0.7); }
    body.theme-dark-active .nav-modal { background: #2a2a32; --stone-50: #2a2a32; --stone-100: #2a2a32; --stone-150: #333338; --stone-200: #464650; --stone-300: #464650; --stone-400: #7a7a80; --stone-500: #aaa8a2; --stone-700: #e4e2dc; --stone-800: #e4e2dc; --stone-900: #e4e2dc; --gold-400: #a0a8b4; --gold-500: #8a929e; --gold-600: #a0a8b4; --wine-500: #7a4444; --ch-active: #b83030; }
    body.theme-dark-active .nav-header { background: #2a2a32; }
    body.theme-dark-active .nav-title { color: #e4e2dc; }
    body.theme-dark-active .search-input { background: #2a2a32; border-color: #464650; color: #e4e2dc; }
    body.theme-dark-active .search-input::placeholder { color: #7a7a80; }
    body.theme-dark-active .search-input:focus { border-color: #a0a8b4; box-shadow: 0 0 0 3px rgba(196,160,96,0.12); }
    body.theme-dark-active .search-clear { background: #464650; color: #aaa8a2; }
    body.theme-dark-active .book-card { background: #2a2a32; border-color: #464650; }
    body.theme-dark-active .book-card:hover { border-color: #464650; box-shadow: 0 2px 8px rgba(0,0,0,0.15); }
    body.theme-dark-active .book-card.active { border-color: #a0a8b4; background: rgba(196,160,96,0.08); }
    body.theme-dark-active .book-card-name { color: #e4e2dc; }
    body.theme-dark-active .book-card.active .book-card-name { color: #e4e2dc; }
    body.theme-dark-active .book-card-sub { color: #7a7a80; }
    body.theme-dark-active .ch-pill { background: #2a2a32; border-color: #464650; color: #aaa8a2; }
    body.theme-dark-active .ch-pill:hover { border-color: #7a7a80; color: #e4e2dc; }
    body.theme-dark-active .ch-pill.current { background: #b83030; border-color: #b83030; color: #fff; }
    body.theme-dark-active .ch-acc-head { border-color: #464650; }
    body.theme-dark-active .ch-acc-name { color: #e4e2dc; }
    body.theme-dark-active .nav-close { background: #2a2a32; border-color: #464650; color: #aaa8a2; }
    body.theme-dark-active .nav-close:hover { background: #333338; color: #e4e2dc; }
    body.theme-dark-active .nav-header-back { background: #2a2a32; border-color: #464650; color: #aaa8a2; }
    body.theme-dark-active .nav-header-back:hover { background: #333338; color: #e4e2dc; }
    body.theme-dark-active .today-strip { background: linear-gradient(to right, rgba(196,160,96,0.06), transparent); border-color: #464650; }
    body.theme-dark-active .today-strip-link { color: #a0a8b4; }
    body.theme-dark-active .today-strip-sep { background: #464650; }
    body.theme-dark-active .today-strip-cal { background: #2a2a32; border-color: #464650; color: #7a7a80; }
    body.theme-dark-active .today-strip-cal:hover { color: #a0a8b4; border-color: #a0a8b4; }
    body.theme-dark-active .cat-divider::before { background: #a0a8b4; }
    body.theme-dark-active .cat-divider-label { color: #8a929e; }
    body.theme-dark-active .cat-divider::after { background: #464650; }
    body.theme-dark-active .autocomplete { background: #2a2a32; border-color: #464650; }
    body.theme-dark-active .ac-item:hover, body.theme-dark-active .ac-item.focused { background: #333338; }
    body.theme-dark-active .ac-primary { color: #e4e2dc; }
    body.theme-dark-active .ac-secondary { color: #7a7a80; }
    body.theme-dark-active .cal-tabs { background: #2a2a32; border-color: #464650; }
    body.theme-dark-active .cal-tab { color: #7a7a80; }
    body.theme-dark-active .cal-tab.active { color: #e4e2dc; }
    body.theme-dark-active .cal-tab.active::after { background: #e4e2dc; }
    body.theme-dark-active .cal-tab[data-tab="liturgical"].active { color: #7a4444; }
    body.theme-dark-active .cal-tab[data-tab="liturgical"].active::after { background: #7a4444; }
    body.theme-dark-active .cc-hero { background: #2a2a32; border-color: #464650; }
    body.theme-dark-active .cc-hero::before { background: #a0a8b4; }
    body.theme-dark-active .cc-hero.liturgical::before { background: #7a4444; }
    body.theme-dark-active .cc-hero-badge { color: #7a7a80; }
    body.theme-dark-active .cc-hero-title { color: #e4e2dc; }
    body.theme-dark-active .cc-hero-go { color: #a0a8b4; }
    body.theme-dark-active .cc-hero.liturgical .cc-hero-go { color: #7a4444; }
    body.theme-dark-active .cc-month-label { color: #e4e2dc; }
    body.theme-dark-active .cc-month-arrow { border-color: #464650; color: #7a7a80; }
    body.theme-dark-active .cc-month-arrow:hover { border-color: #464650; color: #e4e2dc; }
    body.theme-dark-active .cc-dayname { color: #464650; }
    body.theme-dark-active .cc-cell:hover { background: #2a2a32; }
    body.theme-dark-active .cc-cell-num { color: #aaa8a2; }
    body.theme-dark-active .cc-cell.sun .cc-cell-num { color: #7a4444; }
    body.theme-dark-active .cc-cell.today { background: #e4e2dc; }
    body.theme-dark-active .cc-cell.today .cc-cell-num { color: #2a2a32; }
    body.theme-dark-active .cc-cell.today .cc-cell-label { color: rgba(30,30,53,0.7); }
    body.theme-dark-active .cc-cell-label { color: #7a7a80; }
    body.theme-dark-active .cc-cell.sun .cc-cell-label { color: #7a4444; }
    /* Dark toolbar extras */
    body.theme-dark-active .font-type-btn { background: #2a332e; color: #e4e2dc; border-color: #464650; }
    body.theme-dark-active .nav-trigger { background: #2a332e; color: #e4e2dc; border-color: #464650; }
    body.theme-dark-active .nav-trigger svg { color: #888690; }
    body.theme-dark-active .tb-icon { background: transparent; color: #888690; }
    body.theme-dark-active .mode-btn { color: #888690; }
    body.theme-dark-active .mode-btn.active { color: var(--accent); background: rgba(184,115,51,0.1); border-color: #464650; }
    body.theme-dark-active .settings-divider { background: #464650; }
    /* Dark — full viewport: header */
    body.theme-dark-active { background-color: #101010; }
    body.theme-dark-active header.menu-wrapper { background-color: #151516 !important; background-image: url(../../images/header-repeat-inv.png) !important; }
    body.theme-dark-active header.menu-wrapper .bar { background-color: #151516; }
    body.theme-dark-active header.menu-wrapper .menu-main-container { background-color: #151516; border-color: #363640; }
    /* Logo swapped to logo_white.png via JS */
    body.theme-dark-active header.menu-wrapper ul li a { color: #aaa8a2; }
    body.theme-dark-active header.menu-wrapper ul li a:hover { color: #a0a8b4; }
    body.theme-dark-active header.menu-wrapper ul li.current-menu-item a { color: #a0a8b4; }
    body.theme-dark-active header.menu-wrapper .bar a { color: #7a7a80; }
    body.theme-dark-active header.menu-wrapper ul li ul { border-color: #363640; }
    body.theme-dark-active header.menu-wrapper ul li ul li { background-color: #2a2a32; border-color: #363640; }
    body.theme-dark-active header.menu-wrapper ul li ul li a { color: #aaa8a2; }
    body.theme-dark-active header.menu-wrapper ul li ul li a:hover { color: #e4e2dc; }
    body.theme-dark-active .site-content { background-color: #151516; }
    /* Dark — footer */
    body.theme-dark-active footer { background-color: #121212 !important; background-image: url(../../images/logo-footer-white.png) !important; background-repeat: no-repeat !important; background-position: center center !important; color: #5a5a60; }
    body.theme-dark-active footer a { color: #7a7a80; }
    /* Dark — related posts widget */
    body.theme-dark-active .bible-page .recordings-widget { background-color: #151516; }
    body.theme-dark-active .bible-page .recordings-widget .title span { color: #e4e2dc; }
    body.theme-dark-active .bible-page .recordings-widget .desc .title a { color: #e4e2dc; }
    body.theme-dark-active .bible-page .recordings-widget .desc .date { color: #7a7a80; }
    body.theme-dark-active .bible-page .recordings-widget .desc .subtitle { color: #7a7a80; }
    body.theme-dark-active .bible-page .recordings-widget .meta .duration { color: #aaa8a2; }
    body.theme-dark-active .bible-page .recordings-widget .meta .wpt-date { color: #7a7a80; }
    body.theme-dark-active .bible-page .recordings-widget ul li .desc { border-color: #363640; }
    body.theme-dark-active .bible-page .recordings-widget ul li .meta { border-color: #363640; }
    body.theme-dark-active .bible-nav a { color: #a0a8b4; }
    body.theme-dark-active .bible-swap-btn { background: #363640; border-color: #464650; color: #aaa8a2; }
    body.theme-dark-active .bible-swap-btn:hover { background: #464650; }
    /* Dark — inverted patterned strip */
    body.theme-dark-active .bible-page .recordings-widget > .title { background-image: url(../../images/recordings-widget-bg-inv.png); background-color: #151516; }
    body.theme-dark-active .bible-page .recordings-widget > .title span { background-color: #363640; color: #e4e2dc; }
    /* Dark — chapter header title (needs !important to override moni.css h1 specificity) */
    body.theme-dark-active .bible-book-name { color: #e4e2dc !important; }
    body.theme-dark-active .bible-chapter-num { color: #aaa8a2 !important; }
    /* Dark — scrollbar */
    body.theme-dark-active ::-webkit-scrollbar { width: 8px; }
    body.theme-dark-active ::-webkit-scrollbar-track { background: #151516; }
    body.theme-dark-active ::-webkit-scrollbar-thumb { background: #363640; border-radius: 4px; }

    /* ── Content layouts ── */
    .bible-content { display: none; }
    .bible-content.active { display: block; }

    .bible-dual {
      grid-template-columns: 1fr 1fr;
      gap: 0;
      position: relative;
    }
    .bible-dual.active { display: grid; }
    .bible-dual::before {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: 50%;
      width: 1px;
      background: var(--border-light);
      z-index: 1;
    }

    .bible-swap-btn {
      position: fixed;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 15;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      border: 2px solid #b5a998;
      background: #fff;
      cursor: pointer;
      display: none;
      align-items: center;
      justify-content: center;
      font-size: 0.9rem;
      color: #b5a998;
      transition: opacity 0.3s ease, background 0.2s;
      box-shadow: 0 2px 8px rgba(0,0,0,0.15);
      padding: 0;
      opacity: 0;
    }
    .bible-dual.active ~ .bible-swap-btn,
    .bible-swap-btn.visible {
      display: flex;
      opacity: 0;
    }
    .bible-swap-btn:hover {
      background: #f5f5f5;
      box-shadow: 0 2px 12px rgba(0,0,0,0.2);
    }

    .bible-pane {
      padding: 1.5rem;
      background: var(--bg-primary);
    }
    .bible-pane-grc { border-top: 3px solid #7b3f00; }
    .bible-pane-el { border-top: 3px solid #4a6741; }

    .pane-label {
      font-family: var(--font-ui);
      font-size: 0.75rem;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      color: var(--text-secondary);
      margin-bottom: 1rem;
    }

    /* ── Single pane wrapper ── */
    .bible-single {
      max-width: 860px;
      margin: 0 auto;
      padding: 2rem;
      background: var(--bg-primary);
      border: 1px solid var(--border-light);
      border-radius: 6px;
    }

    /* ── Verses ── */
    .verse {
      margin-bottom: 0.75em;
      font-size: 1.125rem;
    }
    .verse-num {
      font-size: 0.7em;
      vertical-align: super;
      font-weight: 600;
      color: var(--verse-num-color);
      margin-right: 0.15em;
      font-family: var(--font-ui);
    }
    .verse-text { }
    .verse-continuation {
      display: block;
      padding-left: 1.5em;
    }

    /* ── Compact mode ── */
    .bible-compact .verse {
      display: inline;
      margin-bottom: 0;
    }
    .bible-compact .verse-continuation {
      display: inline;
      padding-left: 0;
    }
    .bible-compact .verse-continuation::before {
      content: " ";
    }
    .bible-compact .verse[data-pg-last="true"]::after {
      content: "";
      display: block;
      margin-bottom: 1em;
    }
    /* Ancient: force section-break grouping since all verses are pg-last */
    .bible-compact .section-title + .verse {
      /* First verse after a section title starts a new visual paragraph */
    }
    .bible-compact .section-title {
      display: block;
      margin-top: 1.5em;
    }
    /* Override: in compact, only break before section titles, not every verse */
    .bible-compact [lang="grc"] .verse[data-pg-last="true"]::after,
    .bible-compact [lang="grc"].verse[data-pg-last="true"]::after {
      display: none;
    }

    /* ── Section titles ── */
    .section-title {
      font-size: 1.1rem !important;
      font-weight: bold !important;
      -webkit-text-stroke: 0.4px currentColor;
      font-family: var(--font-bible) !important;
      color: var(--text-primary) !important;
      margin: 1.5em 0 0.75em 0;
    }
    .section-title:first-child {
      border-top: none;
      padding-top: 0;
      margin-top: 0;
    }

    /* ── Cross-references ── */
    .cross-reference {
      font-size: 0.8rem;
      color: var(--text-secondary);
      font-style: italic;
      margin-bottom: 0.75em;
      font-family: var(--font-ui);
    }

    /* ── Copyright ── */
    .bible-copyright {
      font-size: 0.75rem;
      color: var(--text-secondary);
      text-align: center;
      margin-top: 2em;
      padding-top: 1em;
      border-top: 1px solid var(--border-light);
      font-family: var(--font-ui);
    }

    /* ── Epistle salutation ── */
    .epistle-salutation {
      font-style: italic;
      margin-top: 1em;
      padding-top: 0.5em;
      border-top: 1px dotted var(--border-light);
    }

    /* ── OT quotation ── */
    .verse-ot-quote .verse-text {
      font-style: italic;
    }

    /* ── Verse highlighting (sentence-level) ── */
    .verse.verse-highlighted .verse-text,
    .verse.verse-highlighted .verse-continuation {
      background: var(--highlight-bg);
      border-radius: 3px;
      padding: 1px 3px;
      margin: -1px -3px;
      box-decoration-break: clone;
      -webkit-box-decoration-break: clone;
      transition: background 0.2s ease;
    }
    .verse:hover {
      cursor: pointer;
    }

    /* ── Related Posts (Σχετικές Αναρτήσεις) ── */
    .bible-page .recordings-widget {
      margin-top: 2rem;
      clear: both;
      font-family: cf_dinlight, Helvetica, Arial, sans-serif !important;
      line-height: normal !important;
    }
    .bible-page .recordings-widget ul li .desc {
      width: calc(100% - 233px) !important;
    }
    .bible-page .recordings-widget ul li .meta {
      width: 177px !important;
      margin-left: 28px !important;
      text-align: center !important;
    }
    .bible-page .recordings-widget .play.book-icon {
      margin-top: 10px !important;
      margin-left: 16px !important;
    }
    /* Title ellipsis for long titles */
    .bible-page .recordings-widget .desc .title {
      white-space: nowrap !important;
      overflow: hidden !important;
      text-overflow: ellipsis !important;
    }
    .bible-page .recordings-widget .desc .title a {
      white-space: nowrap !important;
    }

    /* ── Navigation ── */
    .bible-nav {
      display: flex;
      justify-content: space-between;
      margin-top: 2rem;
      padding-top: 1rem;
      border-top: 2px solid var(--border-light);
      font-family: 'cf_dincondensed_light', sans-serif;
      font-size: 1.4rem;
    }
    .bible-nav a {
      color: var(--accent);
      text-decoration: none;
    }
    .bible-nav a:hover { text-decoration: underline; }

    /* ── Language specific ── */
    [lang="grc"] {
      font-feature-settings: "liga" 1, "calt" 1;
      hyphens: none;
    }
    [lang="el"] {
      hyphens: auto;
    }

    /* ── Font type button ── */
    .font-type-btn {
      padding: 0.3rem 0.5rem;
      border: 1px solid var(--border-light);
      background: #fff;
      border-radius: 4px;
      cursor: pointer;
      color: var(--text-secondary);
      display: flex;
      align-items: center;
      transition: all 0.15s;
    }
    .font-type-btn:hover { border-color: var(--accent); color: var(--accent); }

    /* ── Nav trigger (right side) ── */
    .nav-trigger {
      display: inline-flex;
      align-items: center;
      gap: 0.4rem;
      padding: 0.35rem 0.7rem;
      background: #fff;
      border: 1px solid var(--border-light);
      border-radius: 6px;
      cursor: pointer;
      font-family: var(--font-ui);
      font-size: 0.8rem;
      font-weight: 600;
      color: var(--text-primary);
      transition: border-color 0.15s, box-shadow 0.15s;
    }
    .nav-trigger:hover {
      border-color: var(--accent);
      box-shadow: 0 1px 6px rgba(123, 63, 0, 0.1);
    }
    .nav-trigger svg { color: var(--text-secondary); flex-shrink: 0; }

    .tb-icon {
      display: flex; align-items: center; justify-content: center;
      border: none; border-radius: 0; padding: 0;
      background: transparent; cursor: pointer; color: var(--text-secondary);
      transition: all 0.2s;
      position: relative;
    }
    .tb-icon:hover { color: var(--accent); }
    .tb-icon.has-dot::after {
      content: '';
      position: absolute;
      top: -2px; right: -4px;
      width: 8px; height: 8px;
      border-radius: 50%;
      background: #b72439;
    }

    /* ── Copy Protection ── */
    .bible-page .verse,
    .bible-page .section-title,
    .bible-page .pane-label,
    .bible-page .bible-pane,
    .bible-page .bible-single {
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
    }

    /* ── Responsive labels ── */
    .label-short { display: none; }
    .label-full { display: inline; }

    /* ── Mobile: hidden by default ── */
    .mobile-settings-toggle { display: none; }
    .mobile-settings-panel { display: none; }
    .mobile-settings-collapse { display: none; }

    /* ── Mobile Portrait ── */
    @media (max-width: 970px) {
      /* Floating player: ensure above everything on mobile */
      .floating-player.show { z-index: 9999; }
      /* Hide burger menu when modal is open */
      body.bible-modal-open .menu-controls { display: none !important; }

      /* Responsive labels */
      .label-full { display: none !important; }
      .label-short { display: inline !important; }

      /* Hide monastery header logo + nav on bible mobile — burger handles navigation */
      body.bible-reader header.menu-wrapper nav.main-navigation { display: none; }
      body.bible-reader header.menu-wrapper { height: auto !important; }

      /* Toolbar: simplified row */
      .bible-settings { flex-wrap: wrap; padding: 0.4rem 0.6rem; position: sticky; top: 0; z-index: 50; }
      .bible-settings .settings-left { flex: 1; display: flex; align-items: center; gap: 0.4rem; }
      .bible-settings .settings-right { display: none; } /* Hide desktop settings */

      /* Hide desktop view buttons + divider from left */
      .bible-settings .settings-left .view-btn,
      .bible-settings .settings-left .settings-divider { display: none; }

      /* Show gear icon */
      .mobile-settings-toggle {
        display: flex !important; align-items: center; justify-content: center;
        width: 36px; height: 36px; border: none; border-radius: 6px;
        background: transparent; cursor: pointer; color: var(--text-secondary);
        flex-shrink: 0;
      }

      /* Nav trigger: shorter text */
      .nav-trigger { font-size: 0.8rem; padding: 0.4rem 0.6rem; max-width: 55vw; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

      /* Calendar icon smaller */
      .tb-icon svg { width: 22px; height: 22px; }

      /* Mobile settings panel */
      .mobile-settings-panel {
        display: none;
        flex-direction: column;
        gap: 0.5rem;
        padding: 0.5rem 0.6rem;
        border-top: 1px solid var(--border-light);
        background: var(--bg-primary);
      }
      .mobile-settings-panel.open { display: flex; }
      .mobile-settings-row {
        display: flex;
        align-items: center;
        gap: 0.25rem;
        flex-wrap: nowrap;
        justify-content: center;
      }
      .mobile-view-btn { font-size: 0.78rem; padding: 0.35rem 0.6rem; flex: 1; text-align: center; }

      /* Collapse button — red stroke icon */
      .mobile-settings-collapse {
        display: flex !important; align-items: center; justify-content: center;
        border: none; padding: 0; background: transparent;
        cursor: pointer; flex-shrink: 0; margin-left: auto;
      }

      /* Force single column in portrait */
      .bible-dual.active { display: block !important; }
      .bible-dual .bible-pane:first-child { display: none; } /* Hide Ancient in dual — show Modern */
      .bible-dual .bible-pane:last-child { display: block; width: 100%; }
      .bible-dual::before { display: none; } /* Hide separator */
      .bible-swap-btn { display: none !important; } /* Hide swap button */

      /* Bottom nav */
      .bible-nav { font-size: 1rem; }

      /* Bible page: full width, trim hero */
      .bible-page { padding: 0; max-width: 100%; margin: 0; }
      .bible-header { margin: 0; padding: 5px 0; }
      .bible-book-name { font-size: 1rem; margin-bottom: 0; }
      .bible-chapter-num { font-size: 0.8rem; }
      .bible-pane { padding: 0 0.75rem; }
      .site-content { padding: 0 !important; }

      /* Mobile settings panel: full width below toolbar */
      .mobile-settings-panel { width: 100%; }

      /* Related posts: stack meta below */
      .bible-page .recordings-widget ul li .desc { width: 100% !important; }
      .bible-page .recordings-widget ul li .meta { width: 100% !important; margin-left: 0 !important; text-align: left; padding-left: 60px; }
    }

    /* ── Landscape: true parallel with scaled text ── */
    @media (orientation: landscape) and (max-height: 500px), (orientation: landscape) and (max-width: 1024px) {
      .bible-settings .settings-right { display: none; }
      .mobile-settings-toggle { display: flex !important; }
      .bible-dual.active { display: grid !important; grid-template-columns: 1fr 1fr; }
      .bible-dual .bible-pane { display: block !important; width: auto !important; }
      .bible-dual .bible-pane .verse { font-size: 0.85rem; line-height: 1.5; }
      .bible-dual::before { display: block; } /* Show separator */
      .bible-swap-btn { display: none !important; }
      .bible-header { padding: 5px 0; }
      .bible-book-name { font-size: 0.9rem; }
      .bible-chapter-num { font-size: 0.75rem; }
      .nav-trigger { font-size: 0.75rem; }
    }

    /* ── Tablet: tighter ── */
    @media (min-width: 769px) and (max-width: 1024px) and (orientation: portrait) {
      .bible-settings .settings-right { flex-wrap: wrap; gap: 0.3rem; }
      .nav-trigger { font-size: 0.85rem; }
    }

    /* Block printing text — show copyright notice instead */
    @media print {
      .bible-page .bible-content,
      .bible-page .bible-settings,
      .bible-page .bible-nav,
      .bible-page .bible-swap-btn,
      .overlay {
        display: none !important;
      }
      .bible-page::after {
        content: "Copyrighted by the Hellenic Bible Society, 1997, 2003.\A Ιερόν Ανδρώον Ησυχαστήριον Αγίας Τριάδος Πανοράματος\A\A Η εκτύπωση δεν επιτρέπεται.";
        white-space: pre-wrap;
        display: block;
        text-align: center;
        padding: 4rem 2rem;
        font-family: var(--font-bible);
        font-size: 1.2rem;
        color: #333;
      }
    }