@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@400;700&family=Noto+Sans+TC:wght@400;700&display=swap');

:root{
  --aq-deep:#006d77; --aq-main:#0096a6; --aq-mid:#35c2d1;
  --aq-light:#e9fbfc; --aq-soft:#d8f5f7; --aq-line:#9edfe5;
  --aq-gold:#7fd7cf;  --ink:#073b4c;     --muted:#216b78;
  --green:#008b8b;    --purple:#287f96;  --white:#fff;
  --maxw:980px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--aq-light);color:var(--ink);
  font-family:"Microsoft JhengHei","Noto Serif TC","Noto Sans TC",serif;line-height:1.9}
body{padding:28px 14px}

/* ── Layout ── */
.bns-wrap,.page-nav,.jump-bar,footer.copyright{
  max-width:var(--maxw)!important;width:100%!important;
  margin-left:auto!important;margin-right:auto!important}

/* ── Header ── */
.book-header{
  background:linear-gradient(135deg,#d6fbfb,#5ccbd6)!important;
  color:var(--ink)!important;padding:30px 36px!important;
  border-radius:8px 8px 0 0!important;border-bottom:4px solid var(--aq-gold)!important;
  max-width:var(--maxw);margin:0 auto}
.book-header h1{margin:0 0 4px;color:var(--ink);font-size:1.9em;letter-spacing:.04em}
.book-header .subtitle{color:var(--muted);font-size:.93em}

/* ── Nav ── */
.page-nav,.jump-bar{
  display:flex;justify-content:space-between;align-items:center;
  gap:12px;flex-wrap:wrap;background:var(--white);
  border:1px solid var(--aq-line);padding:14px 18px}
.page-nav{margin-bottom:18px}
.jump-bar{margin-bottom:22px}
.page-nav a,.page-nav .disabled{
  color:var(--ink);text-decoration:none;font-weight:700;
  padding:6px 14px;border:1px solid var(--aq-main);border-radius:5px}
.page-nav a:hover{background:var(--aq-main);color:#fff}
.page-nav .disabled{color:#7faeb5;border-color:#c4eef1}
.page-nav .qa-btn{background:var(--green);color:#fff;border-color:var(--green)}
.page-nav .qa-btn:hover{background:#006d77}
.page-nav .home-btn{background:var(--purple);color:#fff;border-color:var(--purple)}
.page-nav .home-btn:hover{background:#1f6d80}

/* ── Jump bar ── */
.jump-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.jump-group label{font-weight:700;font-size:.92em;color:var(--ink)}
.jump-group select{
  padding:7px 10px;border:1px solid var(--aq-main);border-radius:5px;
  background:#fff;color:var(--ink);min-width:220px;max-width:100%}

/* ── Bible card ── */
.bible-card{
  border:1px solid var(--aq-line);border-left:6px solid var(--aq-main);
  background:#f7ffff;border-radius:8px;
  margin:0 auto 24px;max-width:var(--maxw);padding:18px 24px}
.bible-card-header{
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:10px}
.bible-card-title{font-weight:700;color:var(--aq-deep);font-size:1.04em}
.bible-toggle-btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 14px;background:var(--aq-light);color:var(--aq-deep);
  border:1.5px solid var(--aq-main);border-radius:20px;
  font-size:.91em;font-weight:700;cursor:pointer;
  transition:background .18s,color .18s;user-select:none}
.bible-toggle-btn:hover{background:var(--aq-main);color:#fff}
.bible-toggle-btn.open .toggle-icon{transform:rotate(90deg)}
.toggle-icon{display:inline-block;transition:transform .22s;font-style:normal}
.bible-verses{
  display:none;margin-top:14px;
  border-top:1px solid var(--aq-line);padding-top:12px}
.bible-verses.open{display:block}
.bible-verses p{margin:0 0 .65em;line-height:1.9;text-align:justify;color:var(--ink)}
.bv-num{
  display:inline-block;min-width:2em;margin-right:.4em;
  color:var(--aq-deep);font-weight:700;font-size:.88em}

/* ── Article ── */
.article{
  background:#fff;border:1px solid var(--aq-line);
  padding:28px 32px!important;margin:0 auto 22px!important;max-width:var(--maxw)}
.chapter-title{
  font-size:1.4em;font-weight:700;color:var(--aq-deep);
  border-left:8px solid var(--aq-main);padding:10px 18px;
  background:var(--aq-soft);margin:0 0 22px;border-radius:0 6px 6px 0}
.verse-label{
  display:block;font-weight:700;font-size:1.02em;color:var(--aq-deep);
  margin:20px 0 4px;padding:3px 10px;
  background:var(--aq-soft);border-left:4px solid var(--aq-main);border-radius:3px}
.para{margin-bottom:1.15em;text-align:justify;font-size:1.01em;color:var(--ink)}
.para-section{
  margin:14px 0 6px;font-weight:700;color:var(--aq-deep);font-size:1.04em;
  padding-left:6px;border-left:3px solid var(--aq-main)}
.para-num{color:var(--muted);font-weight:700;margin-right:4px}
.latin-term{font-style:italic;color:var(--muted)}

/* ── Footer ── */
footer.copyright,.copyright{
  max-width:var(--maxw);margin:32px auto 0;
  background:var(--aq-soft);border-top:2px solid var(--aq-main);
  padding:18px 24px;border-radius:0 0 8px 8px;
  font-size:.86em;color:var(--ink);line-height:1.8}

/* ── Faith QA modal ── */
.faith-qa-modal{
  display:none;position:fixed;inset:0;
  background:rgba(0,0,0,.45);z-index:99999;padding:20px}
.faith-qa-modal.active{display:flex;align-items:center;justify-content:center}
.faith-qa-dialog{
  width:min(1100px,96vw);height:min(820px,92vh);background:#fff;
  border-radius:12px;overflow:hidden;
  box-shadow:0 20px 60px rgba(0,0,0,.25);display:flex;flex-direction:column}
.faith-qa-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px;background:#5ccbd6;color:var(--ink);font-weight:700}
.faith-qa-close{
  background:#fff;color:var(--aq-deep);border:1px solid var(--aq-main);
  border-radius:6px;padding:6px 12px;font-weight:700;cursor:pointer}
.faith-qa-body{flex:1}
.faith-qa-body iframe{width:100%;height:100%;border:none}

/* ── Index page extra ── */
.bns-card{
  background:#fff;border:1px solid var(--aq-line);
  padding:28px 32px;margin:0 auto 22px;max-width:var(--maxw)}
.bns-card h2{
  font-size:1.5em;font-weight:700;color:var(--aq-deep);
  border-left:8px solid var(--aq-main);padding:10px 18px;
  background:var(--aq-soft);margin:0 0 20px;border-radius:0 6px 6px 0}
.bns-select-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.bns-select-box{
  background:#fff;border:1px solid var(--aq-line);
  padding:18px;border-radius:8px}
.bns-select-box label{display:block;font-weight:700;color:var(--aq-deep);margin-bottom:8px}
.bns-select-box select{
  width:100%;padding:10px 12px;
  border:1px solid var(--aq-main);border-radius:6px;
  background:#fff;color:var(--ink);font-size:1em}
.bns-help{font-size:.92em;color:var(--muted);margin-top:10px}

/* ── Author intro headings ── */
.bns-card h3{
  color:var(--aq-deep);font-size:1.12em;font-weight:700;
  margin:22px 0 8px;border-left:4px solid var(--aq-main);padding-left:10px}
.bns-card h4{
  color:var(--ink);font-size:1.02em;font-weight:700;margin:16px 0 6px}
.bns-card ul{margin:0 0 1em 1.5em}
.bns-card li{margin:.3em 0;line-height:1.85}

@media(max-width:768px){
  body{padding:20px 10px}
  .book-header{padding:22px 20px!important}
  .book-header h1{font-size:1.45em!important}
  .article,.bns-card{padding:18px 16px!important}
  .jump-group{width:100%}
  .jump-group select{width:100%;min-width:0}
  .bns-select-grid{grid-template-columns:1fr}
  .bible-card{padding:14px 16px}
}
