/* ==================================================
   VARIÁVEIS GLOBAIS
================================================== */
:root{
  --gold:#c9a84c;
  --dark:#0d0b14;
  --darker:#080610;
  --text:#e8e0f0;
  --muted:#8a7fa0;
  --accent:#9b6dff;
  --paper:#f5eeda;
  --paper2:#efe6cc;
  --ink:#3a3226;
  --book-font:.8rem;          /* controlado pelos botões A+ / A− */
  --transition:.3s ease;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Georgia',serif;background:var(--dark);color:var(--text)}
img{max-width:100%;display:block}

/* ==================================================
   NAVEGAÇÃO
================================================== */
.site-nav{position:sticky;top:0;width:100%;z-index:100;background:rgba(8,6,16,.95);backdrop-filter:blur(10px);border-bottom:1px solid rgba(201,168,76,.2);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}
.nav-logo{font-size:1.3rem;color:var(--gold);letter-spacing:3px;font-style:italic}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{color:var(--muted);text-decoration:none;font-size:.85rem;letter-spacing:1.5px;text-transform:uppercase;transition:var(--transition);padding:.3rem 0;border-bottom:1px solid transparent}
.nav-links a:hover{color:var(--gold);border-bottom-color:rgba(201,168,76,.4)}

/* ==================================================
   HERO
================================================== */
.hero{min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:6rem 2rem 4rem;background:radial-gradient(ellipse at center top,#1a0f3d 0%,var(--darker) 70%)}
.hero-title{font-size:clamp(4rem,12vw,9rem);color:#fff;letter-spacing:10px;line-height:1.05;font-style:italic;text-shadow:0 0 40px rgba(201,168,76,.6),0 0 100px rgba(155,109,255,.4);border-bottom:2px solid rgba(201,168,76,.5);padding-bottom:.3em;margin-bottom:.2em}
.hero-tagline{font-size:clamp(1.3rem,3vw,1.8rem);color:var(--gold);letter-spacing:3px;margin:.8rem 0 .5rem;text-shadow:0 0 20px rgba(201,168,76,.7)}
.hero-sub{font-size:clamp(.95rem,2vw,1.15rem);letter-spacing:2px;color:#c8b8e8;font-style:italic;text-shadow:0 0 16px rgba(155,109,255,.5)}

/* ==================================================
   SEÇÕES — BASE
================================================== */
section{padding:5rem 2rem}
.section-label{font-size:.75rem;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:.75rem;text-align:center}
.section-title{font-size:2rem;color:#fff;text-align:center;margin-bottom:.5rem}
.divider{width:60px;height:2px;background:var(--gold);margin:.75rem auto 3rem;opacity:.6}

/* ==================================================
   DESTAQUE LEITURA PRÉVIA (index)
================================================== */
.previa-destaque{background:linear-gradient(180deg,var(--darker),var(--dark))}
.previa-grid{display:grid;grid-template-columns:280px 1fr;gap:3.5rem;max-width:860px;margin:0 auto;align-items:center}
.previa-capa img{border:2px solid rgba(201,168,76,.35);border-radius:8px;box-shadow:0 0 40px rgba(155,109,255,.3),0 18px 40px rgba(0,0,0,.6)}
.previa-info h3{font-size:1.6rem;color:#fff;margin-bottom:1rem}
.previa-info p{color:var(--muted);line-height:1.9;margin-bottom:2rem}
.cta-btn{display:inline-block;padding:1rem 2.4rem;background:var(--gold);color:#0d0b14;font-weight:bold;letter-spacing:2px;text-transform:uppercase;font-size:.85rem;text-decoration:none;border-radius:6px;transition:var(--transition);box-shadow:0 8px 26px rgba(201,168,76,.25)}
.cta-btn:hover{background:#e0bc6a;transform:translateY(-3px);box-shadow:0 14px 34px rgba(201,168,76,.4)}

/* ==================================================
   SOBRE
================================================== */
.sobre{background:var(--dark)}
.sobre-grid{display:grid;grid-template-columns:1fr 2fr;gap:4rem;max-width:900px;margin:0 auto;align-items:start}
.sobre-book-mini img{border:1px solid rgba(201,168,76,.4);border-radius:4px}
.sobre-content h3{font-size:1.5rem;color:#fff;margin-bottom:.5rem}
.sobre-author{font-size:.8rem;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:1.5rem}
.sobre-sinopse{color:var(--muted);line-height:1.9;margin-bottom:1.2rem;font-size:.95rem}
.destaque-gold{font-style:italic;color:var(--gold);opacity:.85}

/* ==================================================
   COMPRAR
================================================== */
.comprar{background:radial-gradient(ellipse at center,#1a0f3d 0%,var(--darker) 70%);text-align:center}
.comprar-intro{max-width:640px;margin:0 auto 2.6rem;color:var(--muted);font-size:1rem;line-height:1.8;font-style:italic}
.store-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;max-width:820px;margin:0 auto}
.store-card{background:rgba(255,255,255,.03);border:1px solid rgba(201,168,76,.25);border-radius:14px;padding:2.2rem 1.8rem 2rem;display:flex;flex-direction:column;align-items:center;transition:var(--transition);position:relative;overflow:hidden}
.store-card:hover{transform:translateY(-6px);border-color:rgba(201,168,76,.6);box-shadow:0 22px 55px rgba(0,0,0,.55)}
.store-badge{position:absolute;top:0;right:0;font-size:.58rem;font-weight:bold;letter-spacing:1.5px;text-transform:uppercase;padding:.32rem .85rem;border-radius:0 14px 0 12px}
.store-name{font-size:1.5rem;letter-spacing:1px;margin-bottom:.15rem;font-weight:bold}
.store-format{font-size:.7rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--muted);margin-bottom:1rem}
.store-price{font-size:2.3rem;line-height:1}
.store-price small{font-size:.85rem;color:var(--muted);font-weight:normal}
.store-price-note{font-size:.72rem;color:var(--muted);margin-bottom:1.1rem}
.store-feats{list-style:none;display:flex;flex-direction:column;gap:.35rem;margin:0 0 1.3rem;font-size:.74rem;color:var(--muted)}
.store-feats span{color:#7bc47f;margin-right:.35rem}
.store-qr{width:148px;height:148px;background:#fff;padding:9px;border-radius:10px;margin-bottom:.5rem;box-shadow:0 6px 18px rgba(0,0,0,.35)}
.store-qr-label{font-size:.65rem;color:var(--muted);margin-bottom:1.3rem}
.store-btn{display:block;width:100%;padding:.95rem 1rem;font-size:.85rem;letter-spacing:1.5px;text-transform:uppercase;transition:var(--transition);border-radius:7px;text-decoration:none;text-align:center;font-weight:bold;margin-top:auto}
.card-uiclap .store-name,.card-uiclap .store-price{color:#ff8a1e}
.card-uiclap .store-badge{background:linear-gradient(90deg,#ffb04d,#ff6a00);color:#1a1004}
.card-uiclap .store-btn{background:linear-gradient(90deg,#ffb04d,#ff6a00);color:#1a1004}
.card-uiclap .store-btn:hover{filter:brightness(1.08);transform:translateY(-2px)}
.card-amazon .store-name,.card-amazon .store-price{color:var(--gold)}
.card-amazon .store-badge{background:var(--gold);color:#1a1004}
.card-amazon .store-btn{background:var(--gold);color:#0d0b14}
.card-amazon .store-btn:hover{background:#e0bc6a;transform:translateY(-2px)}
.buy-trust{margin-top:2.4rem;font-size:.8rem;color:var(--muted);line-height:1.7}
.buy-stars{color:var(--gold);font-size:1.05rem;letter-spacing:3px}

/* ==================================================
   VISUALIZADOR 3D DA CAPA
================================================== */
.livro3d-section{background:linear-gradient(180deg,var(--darker),var(--dark));text-align:center}
#livro3d{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:310px;margin:0 auto;user-select:none}
#livro3d .l3d-stage{width:100%;aspect-ratio:760/1040;display:flex;align-items:center;justify-content:center;cursor:grab;touch-action:none}
#livro3d .l3d-stage.l3d-drag{cursor:grabbing}
#livro3d .l3d-book{height:96%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 0 34px rgba(155,109,255,.32)) drop-shadow(0 18px 30px rgba(0,0,0,.6))}
#livro3d .l3d-controls{display:flex;gap:10px}
#livro3d .l3d-btn{width:42px;height:42px;border-radius:50%;cursor:pointer;font-size:15px;display:grid;place-items:center;color:var(--gold);background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.35);transition:var(--transition)}
#livro3d .l3d-btn:hover{background:rgba(201,168,76,.28);border-color:var(--gold);transform:translateY(-2px)}
#livro3d .l3d-track{position:relative;width:78%;height:4px;border-radius:3px;background:rgba(201,168,76,.22);cursor:pointer}
#livro3d .l3d-track i{position:absolute;top:-3px;width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px var(--gold);transition:left .06s}
#livro3d .l3d-hint{font-size:.8rem;color:#c8b8e8;font-style:italic;transition:opacity .5s}

/* ==================================================
   RODAPÉ
================================================== */
.site-footer{background:var(--darker);border-top:1px solid rgba(255,255,255,.06);padding:2.5rem;text-align:center}
.footer-title{font-size:1rem;color:var(--gold);font-style:italic;letter-spacing:2px;margin-bottom:.5rem}
.footer-copy{font-size:.75rem;color:var(--muted)}

/* ==================================================
   PÁGINA DO LEITOR (leitura-previa.html)
================================================== */
.reader-page{background:radial-gradient(ellipse at center top,#160c33 0%,var(--darker) 70%);min-height:100vh;display:flex;flex-direction:column}

.reader-toolbar{position:sticky;top:0;z-index:200;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1.4rem;background:rgba(8,6,16,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(201,168,76,.25)}
.tb-title{color:var(--gold);font-style:italic;letter-spacing:2px;font-size:1rem}
.tb-title span{color:var(--muted);font-size:.75rem;letter-spacing:1px}
.tb-actions{display:flex;gap:.5rem}
.tb-btn{background:transparent;border:1px solid rgba(201,168,76,.45);color:var(--gold);padding:.5rem 1rem;cursor:pointer;font-size:.75rem;letter-spacing:1.5px;text-transform:uppercase;font-family:inherit;border-radius:4px;transition:var(--transition);text-decoration:none;display:inline-flex;align-items:center}
.tb-btn:hover{background:rgba(201,168,76,.14);border-color:var(--gold)}

.reader{flex:1;display:flex;flex-direction:column;justify-content:center;padding:1.5rem 1rem 2rem}
.book-hint{text-align:center;color:var(--muted);font-size:.8rem;font-style:italic;margin-bottom:1.4rem}
.book-stage{display:flex;justify-content:center;align-items:center}

/* ----- Modo livro aberto (spread) ----- */
.book-scaler{transform-origin:center top}
.book{position:relative;width:760px;height:520px;perspective:2400px;user-select:none;touch-action:pan-y}
.book-base{position:absolute;inset:0;display:flex;border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,.7),0 0 60px rgba(155,109,255,.12)}
.book-base .half{width:50%;height:100%;background:var(--paper2)}
.book-base .half.left{border-radius:6px 0 0 6px;box-shadow:inset -12px 0 24px rgba(0,0,0,.12)}
.book-base .half.right{border-radius:0 6px 6px 0;box-shadow:inset 12px 0 24px rgba(0,0,0,.12)}
.spine{position:absolute;left:50%;top:0;width:4px;height:100%;transform:translateX(-50%);background:linear-gradient(90deg,rgba(0,0,0,.25),rgba(0,0,0,.4),rgba(0,0,0,.25));z-index:60;pointer-events:none}

.sheet{position:absolute;top:0;right:0;width:50%;height:100%;transform-origin:left center;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.4,.05,.3,1);cursor:grab}
.sheet.dragging{transition:none;cursor:grabbing}
.sheet.flipped{transform:rotateY(-180deg)}
.face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;background:var(--paper)}
.face.front{border-radius:0 6px 6px 0;background:linear-gradient(90deg,#e9dfc4 0%,var(--paper) 8%,var(--paper) 100%)}
.face.back{transform:rotateY(180deg);border-radius:6px 0 0 6px;background:linear-gradient(-90deg,#e9dfc4 0%,var(--paper) 8%,var(--paper) 100%)}

/* ----- Conteúdo das páginas (usado nos 2 modos) ----- */
.page-inner{height:100%;display:flex;flex-direction:column;padding:2.2rem 2.4rem 1.6rem;color:var(--ink)}
.page-chapter{font-size:.62rem;letter-spacing:2.5px;text-transform:uppercase;color:#8a6d2f;text-align:center;margin-bottom:1.1rem;flex-shrink:0}
.page-body{flex:1;overflow-y:auto;font-size:var(--book-font);line-height:1.75;text-align:justify;padding-right:.3rem;scrollbar-width:thin;scrollbar-color:#c9b98a transparent}
.page-body::-webkit-scrollbar{width:4px}
.page-body::-webkit-scrollbar-thumb{background:#c9b98a;border-radius:2px}
.page-body p{margin-bottom:.8rem}
.page-body .chapter-epigraph{text-align:center;font-style:italic;color:#8a6d2f;font-size:.9em;line-height:1.5;margin:0 auto 1.1rem;max-width:90%}
.page-body .drop-cap::first-letter{float:left;font-size:3.4em;line-height:.78;margin:.04em .1em 0 0;color:#8a6d2f}
.page-num{flex-shrink:0;text-align:center;font-size:.65rem;color:#a08c5a;letter-spacing:1px;padding-top:.7rem}

.cover-face .page-inner,.single-page .cover-face{background:linear-gradient(160deg,#1e1440,#2d1b6e);align-items:center;justify-content:center;text-align:center;color:#fff}
.cv-title{font-size:2.4rem;letter-spacing:6px;font-style:italic;color:#fff;text-shadow:0 0 30px rgba(201,168,76,.6);border-bottom:1px solid rgba(201,168,76,.5);padding-bottom:.4rem;margin-bottom:1rem}
.cv-sub{font-size:.95rem;color:var(--gold);letter-spacing:2px;margin-bottom:2rem}
.cv-note{font-size:.7rem;color:#c8b8e8;font-style:italic;letter-spacing:1px}
.end-face .page-inner{align-items:center;justify-content:center;text-align:center}
.end-face h4{font-size:1.3rem;color:#8a6d2f;margin-bottom:1rem;font-style:italic}
.end-face p{font-size:.85rem;margin-bottom:1.5rem;color:var(--ink)}
.end-face a{padding:.8rem 1.8rem;background:#8a6d2f;color:#fff;letter-spacing:2px;text-transform:uppercase;font-size:.75rem;cursor:pointer;border-radius:3px;transition:var(--transition);text-decoration:none;display:inline-block}
.end-face a:hover{background:#a58540}

/* ----- Modo página única (celular) ----- */
.single-view{width:min(92vw,430px);overflow:hidden}
.single-page{background:var(--paper);border-radius:8px;height:72vh;min-height:440px;box-shadow:0 20px 60px rgba(0,0,0,.6);transition:transform .35s ease,opacity .35s ease;touch-action:pan-y}
.single-page .page-inner{padding:1.8rem 1.5rem 1.2rem}
.single-page.slide-out-left{transform:translateX(-70px);opacity:0}
.single-page.slide-out-right{transform:translateX(70px);opacity:0}

/* ----- Controles ----- */
.book-controls{display:flex;justify-content:center;align-items:center;gap:2rem;margin-top:2rem}
.book-btn{background:transparent;border:1px solid rgba(201,168,76,.4);color:var(--gold);padding:.6rem 1.6rem;cursor:pointer;font-size:.78rem;letter-spacing:2px;text-transform:uppercase;font-family:inherit;transition:var(--transition);border-radius:4px}
.book-btn:hover:not(:disabled){background:rgba(201,168,76,.12);border-color:var(--gold)}
.book-btn:disabled{opacity:.25;cursor:default}
.book-progress{text-align:center;color:var(--muted);font-size:.72rem;letter-spacing:1.5px}
.progress-bar{width:220px;height:2px;background:#252545;margin:.4rem auto 0;border-radius:2px;overflow:hidden}
.progress-fill{height:100%;background:var(--gold);transition:.4s}

/* Tela cheia (fallback CSS caso a Fullscreen API não esteja disponível) */
.reader-page.fs-fallback .reader{position:fixed;inset:0;z-index:1000;background:radial-gradient(ellipse at center top,#160c33 0%,var(--darker) 70%);padding-top:4rem}

/* ==================================================
   RESPONSIVO
================================================== */
@media(max-width:860px){
  .previa-grid{grid-template-columns:1fr;max-width:420px;text-align:center}
  .previa-capa{max-width:240px;margin:0 auto}
  .sobre-grid{grid-template-columns:1fr;gap:2rem;max-width:440px}
  .sobre-book-mini{max-width:250px;margin:0 auto}
  .sobre-content{text-align:center}
}
@media(max-width:768px){
  .site-nav{padding:.85rem 1.1rem}
  .nav-links{gap:1.1rem}
  .nav-links a{font-size:.74rem}
  section{padding:4rem 1.4rem}
}
@media(max-width:640px){
  .store-grid{grid-template-columns:1fr;max-width:360px}
}
@media(max-width:560px){
  .site-nav{flex-direction:column;gap:.55rem;padding:.75rem 1rem}
  .nav-links{flex-wrap:wrap;justify-content:center;gap:.5rem .9rem}
  .nav-links a{font-size:.7rem}
  .hero{min-height:auto;padding:4rem 1.2rem 3rem}
  .hero-title{letter-spacing:3px}
  .section-title{font-size:1.55rem}
  .reader-toolbar{flex-wrap:wrap;justify-content:center;gap:.5rem}
  .tb-title{order:-1;width:100%;text-align:center}
  .book-controls{gap:.8rem;flex-wrap:wrap}
  .book-btn{padding:.5rem 1.05rem;font-size:.7rem}
  .progress-bar{width:150px}
}
/* ==================================================
   SOBRE O LIVRO — subtítulo "Sinopse do Livro"
================================================== */
.sobre-subtitulo{
  margin:1.6em 0 .6em;
  font-size:1rem;
  font-weight:600;
  letter-spacing:3px;
  text-transform:uppercase;
  color:var(--gold);
  display:flex;
  align-items:center;
  gap:.75em;
}
.sobre-subtitulo::after{
  content:"";
  flex:1;
  height:1px;
  background:linear-gradient(to right,rgba(201,168,76,.45),transparent);
}
