:root{--bg:#f7f1e7;--text:#171512;--muted:#6f675c;--line:#ded5c7;--card:#fffdf8;--gold:#b78324;--green:#12845d}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}
.book-page-header{padding:18px max(24px,calc((100% - 1180px)/2));border-bottom:1px solid var(--line)}
.back-link{color:inherit;font-weight:800;text-decoration:none}
.book-hero,.content-section,.cta-section{max-width:1120px;margin:auto;padding:64px 24px}
.book-hero-inner{display:grid;grid-template-columns:minmax(240px,350px) 1fr;gap:72px;align-items:center}
.book-cover{width:100%;max-height:530px;object-fit:contain;filter:drop-shadow(0 24px 34px rgba(0,0,0,.2))}
.eyebrow{font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
h1,h2{font-family:Georgia,serif}
.hero-content h1{font-size:clamp(44px,6vw,72px);line-height:1;margin:12px 0 18px}
.subtitle{font-size:19px;line-height:1.65;color:var(--muted)}
.author{font-weight:800}
.categories,.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.meta-pill{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--card);font-size:13px}
.start-reading-btn,.whatsapp-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 19px;border-radius:9px;text-decoration:none;font-weight:900}
.start-reading-btn{background:#111;color:#fff}
.whatsapp-btn{background:#111;color:#fff;border:1px solid #111;box-shadow:inset 4px 0 #25d366}
.content-section{padding-top:52px;padding-bottom:52px;border-top:1px solid var(--line)}
.content-section h2,.cta-section h2{font-size:clamp(30px,4vw,43px)}
.content-section p,.content-section li{font-size:17px;line-height:1.8}
.feature-list,.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.feature-list{list-style:none;padding:0}
.feature-list li,.detail-grid>div{padding:17px;border:1px solid var(--line);border-radius:11px;background:var(--card)}
.toc-list{columns:2;column-gap:50px}
.faq-item{margin:28px 0}
.cta-section{text-align:center;border-top:1px solid var(--line)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:720px){.book-hero-inner{grid-template-columns:1fr;gap:32px;text-align:center}
.book-cover{max-height:420px}
.categories,.hero-actions{justify-content:center}
.feature-list,.detail-grid{grid-template-columns:1fr}
.toc-list{columns:1}
}
.rating-widget{padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.rating-stars{display:flex;gap:5px;margin:14px 0}
.rating-star{border:0;background:transparent;color:#aaa;font-size:34px;line-height:1;cursor:pointer;padding:2px}
.rating-star.selected{color:var(--gold)}
.rating-status,.rating-disclosure{color:var(--muted);font-size:13px!important}
.plan-note{padding:17px;border-left:4px solid var(--gold);background:var(--card)}
@media(max-width:960px){.book-hero-inner{grid-template-columns:minmax(210px,280px) minmax(0,1fr);gap:36px}.book-hero,.content-section,.cta-section{padding-left:28px;padding-right:28px}.hero-content h1{font-size:clamp(40px,6vw,58px)}}
@media(max-width:780px){.book-hero-inner{grid-template-columns:1fr;gap:30px;text-align:center}.book-cover{max-height:400px}.categories,.hero-actions{justify-content:center}.feature-list,.detail-grid{grid-template-columns:1fr}.toc-list{columns:1}.start-reading-btn,.whatsapp-btn{min-height:46px}}
@media(max-width:480px){.book-hero,.content-section,.cta-section{padding:44px 18px}.book-page-header{padding:15px 18px}.hero-content h1{font-size:40px}.subtitle{font-size:17px}.hero-actions{display:grid}.start-reading-btn,.whatsapp-btn{width:100%}.content-section p,.content-section li{font-size:16px}}

/* Large-screen presentation: preserves the approved layout through 1440px. */
@media(min-width:1600px){
  .book-page-header{padding-inline:max(40px,calc((100% - 1440px)/2))}
  .book-hero,.content-section,.cta-section{max-width:1440px;padding-left:40px;padding-right:40px}
  .book-hero{padding-top:88px;padding-bottom:88px}
  .book-hero-inner{grid-template-columns:minmax(340px,440px) minmax(0,1fr);gap:104px}
  .book-cover{max-height:650px}
  .hero-content h1{font-size:76px}
  .subtitle{max-width:840px;font-size:21px}
  .content-section{padding-top:72px;padding-bottom:72px}
  .content-section h2,.cta-section h2{font-size:48px}
  .content-section p,.content-section li{font-size:18px;line-height:1.85}
  .content-section>p{max-width:1120px}
  .feature-list,.detail-grid{gap:18px}
}

@media(min-width:2560px){
  .book-page-header{padding-inline:max(56px,calc((100% - 1660px)/2))}
  .book-hero,.content-section,.cta-section{max-width:1660px;padding-left:56px;padding-right:56px}
  .book-hero{padding-top:110px;padding-bottom:110px}
  .book-hero-inner{grid-template-columns:minmax(400px,500px) minmax(0,1fr);gap:124px}
  .book-cover{max-height:740px}
  .hero-content h1{font-size:86px}
  .subtitle{max-width:940px;font-size:23px}
  .content-section{padding-top:88px;padding-bottom:88px}
  .content-section h2,.cta-section h2{font-size:54px}
  .content-section p,.content-section li{font-size:19px}
}


/* BOOK DETAIL THEME SYNC - shares readerTheme with read.html */
body.dark{--bg:#111;--text:#f7f1e7;--muted:#bdb3a6;--line:#39342d;--card:#1c1915}
body.sepia{--bg:#f2e7d1;--text:#3d3124;--muted:#75634e;--line:#d2bea0;--card:#eadbc0}
body{transition:background-color .2s,color .2s}
.book-page-header{display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative;background:var(--bg)}
.book-theme-dropdown{position:relative;margin-left:auto}
.book-theme-toggle{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--card);color:inherit;font-size:18px;line-height:1;cursor:pointer}
.book-theme-menu{display:none;position:absolute;right:0;top:48px;z-index:30;gap:6px;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:8px;box-shadow:0 14px 38px rgba(0,0,0,.16)}
.book-theme-menu.active{display:flex}
.book-theme-menu button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid transparent;border-radius:10px;background:transparent;color:inherit;font-size:24px;line-height:1;cursor:pointer}
.book-theme-menu button:hover{background:var(--card);border-color:var(--line)}
.book-theme-menu button.selected{border-color:var(--gold);background:var(--card);color:var(--gold)}
body.dark .book-theme-toggle{border-color:#665c4c;background:#29251f;color:#fff}
body.dark .book-theme-toggle:hover{border-color:var(--gold);background:#343029}
body.dark .book-theme-menu{border-color:#665c4c;background:#181613;box-shadow:0 16px 42px rgba(0,0,0,.55)}
body.dark .book-theme-menu button{color:#f7f1e7}
body.dark .book-theme-menu button:hover{border-color:#665c4c;background:#29251f}
body.dark .book-theme-menu button.selected{border-color:#d2a34d;background:#332b1d;color:#f1c66f}
@media(prefers-reduced-motion:reduce){body{transition:none}}

/* DARK THEME CONTRAST POLISH - book detail pages */
body.dark{
  --bg:#10100f;
  --text:#f7f1e7;
  --muted:#c8beb0;
  --line:#51493e;
  --card:#201d19;
  --gold:#e0b35b;
}
body.dark .book-page-header{
  border-bottom-color:#51493e;
  box-shadow:0 1px 0 rgba(255,255,255,.035),0 10px 28px rgba(0,0,0,.18);
}
body.dark .book-cover{
  filter:drop-shadow(0 28px 40px rgba(0,0,0,.68)) drop-shadow(0 1px 1px rgba(255,255,255,.18));
}
body.dark .meta-pill{
  border-color:#5a5144;
  background:#24201b;
  box-shadow:0 6px 18px rgba(0,0,0,.2);
}
body.dark .feature-list li,
body.dark .detail-grid>div,
body.dark .rating-widget,
body.dark .plan-note{
  border-color:#554c40;
  background:#211e1a;
  box-shadow:0 12px 30px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.025);
}
body.dark .plan-note{
  border-left-color:#e0b35b;
}
body.dark .content-section,
body.dark .cta-section{
  border-top-color:#464038;
}
body.dark .start-reading-btn{
  background:#d7a94f;
  color:#171109;
  box-shadow:0 8px 22px rgba(0,0,0,.3);
}
body.dark .start-reading-btn:hover,
body.dark .start-reading-btn:focus-visible{
  background:#e4b961;
}
body.dark .whatsapp-btn{
  background:#176e50;
  border-color:#2aa979;
  color:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.3),inset 4px 0 #35d28e;
}
body.dark .whatsapp-btn:hover,
body.dark .whatsapp-btn:focus-visible{
  background:#1b7d5b;
}
body.dark .faq-item{
  padding:18px 20px;
  border:1px solid #4d463c;
  border-radius:12px;
  background:#1b1916;
  box-shadow:0 10px 24px rgba(0,0,0,.22);
}
body.dark .faq-item h3{margin-top:0;color:#fff8ec}
body.dark .rating-star{color:#7a7167}
body.dark .rating-star.selected{color:#e0b35b}
