.livro-pdf-viewer{
  position:relative;
  display:flex;
  flex-direction:column;
  width:100%;
  max-width:100%;
  height:100%;
  margin:0;
  padding:0;
  border:1px solid rgba(0,0,0,.12);
  border-radius:10px;
  background: transparent !important;
  color:#fff;
  overflow:hidden;
}

/* Fullscreen responsivo (modal/popup/página): ocupa a tela sem gerar scroll */
.livro-pdf-modal .livro-pdf-viewer,
.elementor-popup-modal .livro-pdf-viewer,
body.livro-pdf-page .livro-pdf-viewer{
  width:100% !important;
  max-width:100% !important;
  height:calc(var(--livro-pdf-vh, 1vh) * 100) !important;
  height:100vh !important;
  height:100dvh !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
}

/* Elementor popup: força fullscreen e remove padding/scroll apenas quando o popup contém o leitor. */
/* Elementor popup: fullscreen sem desconfigurar o layout do Elementor. */
body.livro-pdf-elementor-open{
  overflow:hidden;
}
body.livro-pdf-elementor-open .elementor-popup-modal .livro-pdf-viewer{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:0 !important;
  width:100% !important;
  max-width:100% !important;
}
body.admin-bar.livro-pdf-elementor-open .elementor-popup-modal .livro-pdf-viewer{
  top:var(--wp-admin--admin-bar--height, 32px) !important;
  height:calc(100dvh - var(--wp-admin--admin-bar--height, 32px)) !important;
  height:calc(100vh - var(--wp-admin--admin-bar--height, 32px)) !important;
}

/* Quando o mini player do YouTube (dock) estiver aberto no mobile, o leitor precisa virar conteúdo em fluxo
   para permitir rolagem até o player abaixo (sem cobrir/espremer o PDF). */
body.livro-pdf-ytdock-open .livro-pdf-modal__panel{
  overflow-y:auto;
  -webkit-overflow-scrolling: touch;
}
body.livro-pdf-elementor-open.livro-pdf-ytdock-open .elementor-popup-modal{
  overflow-y:auto !important;
  -webkit-overflow-scrolling: touch;
}
body.livro-pdf-elementor-open.livro-pdf-ytdock-open .elementor-popup-modal .livro-pdf-viewer{
  position:relative !important;
  top:auto !important;
  right:auto !important;
  bottom:auto !important;
  left:auto !important;
  height:100dvh !important;
  height:100vh !important;
}
body.admin-bar.livro-pdf-elementor-open.livro-pdf-ytdock-open .elementor-popup-modal .livro-pdf-viewer{
  top:auto !important;
  height:100dvh !important;
  height:100vh !important;
}

.livro-pdf-controls{
  position:absolute;
  right:10px;
  top:0;
  bottom:0;
  transform:none;
  z-index:20;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:8px;
  width:86px;
  height:100%;
  max-height:100%;
  padding:42px 12px;
  /* Ajuste de escala do background: -2% largura, -5% altura (a partir de 85% x 84%). */
  background: transparent url("../images/coluna-3-crop.png") center center/80.0% calc(72.0% - 90px) no-repeat;
  border:0;
  border-radius:0;
  backdrop-filter: none;
}
@media (min-width: 783px){
  /* Desktop: trava o tamanho do background para não variar com a altura da tela. */
  .livro-pdf-controls{
    background-size: 69px 491px;
  }
}

/* Toggle do controller (somente mobile) */
.livro-pdf-controls-toggle{
  display:none;
  width:31px; /* -10% */
  height:31px; /* -10% */
  border-radius:9px;
  border:1px solid rgba(164,247,0,.35);
  background:rgba(0,0,0,.35);
  color:#a4f700;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  font-size:16px;
  line-height:1;
}
@media (max-width: 782px), (pointer: coarse){
  .livro-pdf-controls-toggle{ display:flex; }
  /* Dentro do controller: fica no stack acima do botão de tema. */
  .livro-pdf-controls .livro-pdf-controls-toggle{
    position:relative;
    z-index:30;
    margin:0 0 2px 0;
  }
  /* Quando o controller está fechado, o botão é movido pelo JS e fica flutuando para reabrir. */
  .livro-pdf-controls-toggle.is-floating{
    position:absolute;
    left:10px;
    bottom:calc(env(safe-area-inset-bottom, 0px) + 10px);
    z-index:30;
  }
  .livro-pdf-viewer--controls-collapsed .livro-pdf-controls{
    display:none !important;
  }
  .livro-pdf-viewer--controls-collapsed.livro-pdf-viewer--has-controls .livro-pdf-main{
    padding-right:0 !important;
  }
}
.livro-pdf-control{
  appearance:none;
  border:0;
  background:transparent;
  color:#a4f700;
  border-radius:8px;
  padding:8px 10px;
  cursor:pointer;
}
.livro-pdf-control:hover{
  background:rgba(0,0,0,.18);
}

.livro-pdf-control--icon{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:6px;
  border-radius:10px;
}
.livro-pdf-control--icon img{
  width:30px;
  height:30px;
  display:block;
}
.livro-pdf-control--icon svg{
  width:30px;
  height:30px;
  display:block;
}

.livro-pdf-popover{
  position:absolute;
  right:100%;
  margin-right:10px;
  z-index:40;
  min-width:180px;
  max-width:240px;
  padding:10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.72);
  color:#fff;
  backdrop-filter: blur(8px);
}
.livro-pdf-popover[hidden]{ display:none !important; }
.livro-pdf-popover--themes{
  top:10px;
}
.livro-pdf-popover--timer{
  bottom:10px;
  min-width:108px;
  max-width:144px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:8px;
}
.livro-pdf-popover--search{
  bottom:10px;
  min-width:260px;
  max-width:338px;
}
.livro-pdf-search-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  margin-top:6px;
}
.livro-pdf-search-count{
  font-size:12px;
  color:#a4f700;
  min-width:44px;
  text-align:center;
}
.livro-pdf-search-nav{
  padding:4px 6px;
  border-radius:6px;
  font-size:12px;
  line-height:1;
}
.livro-pdf-search-close{
  font-size:14px;
}
.livro-pdf-search-input{
  width:100%;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(0,0,0,.45);
  color:#fff;
  border-radius:8px;
  padding:8px 10px;
  font-size:13px;
  font-family: inherit;
}
.livro-pdf-search-input::placeholder{
  color:rgba(255,255,255,.6);
}
.livro-pdf-search-input:focus{
  outline:2px solid rgba(164,247,0,.35);
  outline-offset:1px;
}
.livro-pdf-search-status{
  margin-top:6px;
  min-height:14px;
  font-size:12px;
  color:#a4f700;
}
.livro-pdf-search-overlay{
  position:absolute;
  inset:0;
  z-index:22;
  pointer-events:none;
}
.livro-pdf-search-hit{
  position:absolute;
  background:rgba(62,95,2,.45);
  outline:none;
  border-radius:0;
}
.livro-pdf-search-hit.is-active{
  background:rgba(162,253,2,.50);
}

.livro-pdf-autoplay-progress{
  position:absolute;
  left:12px;
  top:12px;
  width:56px;
  height:56px;
  z-index:25;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}
.livro-pdf-autoplay-progress__svg{
  width:56px;
  height:56px;
  transform: rotate(-90deg);
}
.livro-pdf-autoplay-progress__bg{
  fill:none;
  stroke: rgba(255,255,255,.18);
  stroke-width:6;
}
.livro-pdf-autoplay-progress__fg{
  fill:none;
  stroke: #a4f700;
  stroke-width:6;
  stroke-linecap: round;
  stroke-dasharray: 163.36;
  stroke-dashoffset: 163.36;
}
.livro-pdf-autoplay-progress__text{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family: afc173, inherit;
  font-size:14px;
  color:#a4f700;
  text-shadow: 0 1px 0 rgba(0,0,0,.35);
}

.livro-pdf-restart{
  position:absolute;
  left:12px;
  bottom:12px;
  z-index:25;
  pointer-events:auto;
}
.livro-pdf-restart__btn{
  appearance:none;
  border:1px solid rgba(164,247,0,.35);
  background:rgba(0,0,0,.55);
  color:#a4f700;
  border-radius:12px;
  padding:10px 12px;
  cursor:pointer;
  font-family: afc173, inherit;
  font-size:13px;
  letter-spacing:.02em;
}
.livro-pdf-restart__btn:hover{
  background:rgba(0,0,0,.70);
}
.livro-pdf-restart[hidden]{ display:none !important; }
.livro-pdf-restart__btn--link{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.livro-pdf-restart__extras{
  display:flex;
  gap:10px;
}
.livro-pdf-restart__extras[hidden]{ display:none !important; }
.livro-pdf-autoplay-progress .livro-pdf-restart__extras{ display:none !important; }

@media (max-width: 782px), (pointer: coarse){
  /* No mobile: progresso abaixo do ícone do timer (dentro do controller). */
  .livro-pdf-controls .livro-pdf-autoplay-progress{
    position:relative;
    left:auto;
    top:auto;
    width:44px;
    height:44px;
    margin-top:6px;
    margin-bottom:6px;
  }
  .livro-pdf-controls .livro-pdf-autoplay-progress__svg{
    width:44px;
    height:44px;
  }
  .livro-pdf-controls .livro-pdf-autoplay-progress__text{
    font-size:12px;
  }

  /* No mobile: botão "Voltar ao Início" abaixo do PDF (não sobrepor). */
  .livro-pdf-main .livro-pdf-restart:not([hidden]){
    position:relative;
    left:auto;
    bottom:auto;
    width:100%;
    margin:12px 0 0 0;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    flex-direction:column;
  }
  .livro-pdf-main .livro-pdf-restart__extras{
    flex-direction:column;
    align-items:center;
    width:100%;
    margin-top:10px;
  }
  .livro-pdf-main .livro-pdf-restart__btn{
    min-width:220px;
  }
}
[data-livro-pdf-timer-popover]{
  min-width:108px !important;
  max-width:144px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:8px !important;
  padding:8px !important;
}
.livro-pdf-popover__item{
  width:100%;
  text-align:left;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.06);
  color:#a4f700;
  border-radius:10px;
  padding:8px 10px;
  cursor:pointer;
  margin:0 0 8px 0;
}
.livro-pdf-popover__section-title{
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.85;
  margin:6px 0 8px 0;
}
.livro-pdf-popover__item:last-child{ margin-bottom:0; }
.livro-pdf-popover__item.is-active{
  border-color: rgba(164,247,0,.55);
  background: rgba(164,247,0,.12);
}
.livro-pdf-popover__empty{
  font-size:13px;
  opacity:.9;
}
.livro-pdf-timer__minus,
.livro-pdf-timer__plus{
  width:32px;
  height:32px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  font-size:16px;
}
[data-livro-pdf-timer-minus],
[data-livro-pdf-timer-plus]{
  width:32px !important;
  height:32px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  text-align:center !important;
  line-height:32px !important;
  font-size:16px !important;
}
.livro-pdf-timer__label{
  color:#a4f700;
  min-width:40px;
  text-align:center;
  font-size:13px;
  line-height:1;
}
[data-livro-pdf-timer-seconds]{
  flex:1;
  min-width:40px;
  text-align:center;
  font-size:13px;
  line-height:1;
}
.livro-pdf-cta{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.livro-pdf-control[disabled]{ opacity:.5; cursor:not-allowed; }
.livro-pdf-page-indicator{ font-size:13px; opacity:.95; text-align:center; color:#a4f700; }

.livro-pdf-nav{
  display:inline-flex;
  align-items:center;
  flex-direction:column;
  gap:8px;
}

.livro-pdf-main{
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
  height:100%;
  margin:0;
  padding:0;
  padding-right:0; /* padding depende da presença do controller */
}

.livro-pdf-viewer--has-controls .livro-pdf-main{
  padding-right:114px; /* reserva espaço para o menu lateral à direita */
}
.livro-pdf-viewer--no-controls .livro-pdf-main{
  padding-right:0 !important;
}

.livro-pdf-autoplay{
  display:inline-flex;
  align-items:center;
  flex-direction:column;
  gap:6px;
}
.livro-pdf-autoplay__toggle.is-active{
  border-color: rgba(164,247,0,.55);
  background: rgba(164,247,0,.12);
}
.livro-pdf-autoplay__label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  padding:6px 8px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.18);
  color:#a4f700;
  font-size:13px;
  line-height:1;
}

.livro-pdf-zoom{
  display:inline-flex;
  align-items:center;
  flex-direction:column;
  gap:8px;
  padding:4px 8px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.12);
}
.livro-pdf-zoom__label{
  font-size:13px;
  min-width:48px;
  text-align:center;
  opacity:.95;
  color:#a4f700;
}

.livro-pdf-resume{
  display:flex;
  align-items:center;
  gap:10px;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  background:rgba(255,255,255,.06);
}
.livro-pdf-resume__text{ font-size:13px; opacity:.95; }
.livro-pdf-resume__btn{
  appearance:none;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(0,0,0,.25);
  color:#fff;
  border-radius:10px;
  padding:6px 10px;
  cursor:pointer;
  font-size:13px;
}
.livro-pdf-resume__btn--danger{
  border-color: rgba(255, 160, 160, .25);
  background: rgba(180, 60, 60, .35);
}

.livro-pdf-stage{
  position:relative;
  flex:1;
  display:flex;
  align-items:stretch;
  justify-content:stretch;
  overflow:hidden;
  padding:0;
  margin:0;
  background: transparent;
}
.livro-pdf-loading{
  position:absolute;
  inset:0;
  /* Nao exibir "tela de carregamento": sem fundo e sem texto (evita flash ao virar pagina). */
  display:none !important;
  background:transparent !important;
  color:transparent !important;
  opacity:0 !important;
  font-size:0 !important;
  pointer-events:none;
}
.livro-pdf-message{
  padding:12px 14px;
  font-size:14px;
  background:rgba(255,255,255,.08);
  border-top:1px solid rgba(255,255,255,.10);
}
.livro-pdf-message--error{
  border:1px solid rgba(0,0,0,.12);
  border-radius:10px;
  padding:12px 14px;
  background:#fff1f1;
  color:#7a1a1a;
}

.livro-pdf-cover{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.livro-pdf-cover__img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  cursor:pointer;
  background:transparent;
}
.livro-pdf-cover__video{
  width:100%;
  height:100%;
  /* Preencher o container sem faixas (remove espaços topo/rodapé). */
  object-fit:cover;
  object-position:center center;
  display:block;
  cursor:pointer;
  background:#000;
}
.livro-pdf-cover-overlay{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#000;
  overflow:hidden;
}
.livro-pdf-cover-cta{
  position:absolute;
  right:14px;
  bottom:24px;
  z-index:30;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(164,247,0,.65);
  background:rgba(0,0,0,.45);
  color:#a4f700;
  font-family: "ACF173", Sans-serif !important;
  font-size:14px;
  line-height:1;
  letter-spacing:.2px;
  pointer-events:none; /* apenas dica visual; clique continua no vídeo/capa */
  user-select:none;
  text-transform:none;
}

.livro-pdf-single{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.livro-pdf-single__inner{
  position:relative;
  display:inline-block;
  line-height:0;
}

/* Mobile: "flip" por navegação (sem alterar desktop). */
@media (max-width: 768px){
  .livro-pdf-mobileflip .livro-pdf-single__inner{
    overflow:hidden;
  }
  .livro-pdf-mobileflip .livro-pdf-single__inner{
    touch-action: pan-y;
    perspective: 1200px;
    transform-style: preserve-3d;
  }
  .livro-pdf-mobileflip .livro-pdf-canvas{
    position:absolute;
    top:0;
    left:0;
    backface-visibility: hidden;
    transform-style: preserve-3d;
    transition: transform 340ms cubic-bezier(.2,.8,.2,1), opacity 340ms cubic-bezier(.2,.8,.2,1);
    will-change: transform, opacity;
  }
  .livro-pdf-mobileflip .livro-pdf-canvas--front{ z-index: 5; }
  .livro-pdf-mobileflip .livro-pdf-canvas--back{ z-index: 4; opacity:0; }

  /* Próxima: "vira" para a esquerda */
  .livro-pdf-mobileflip.is-nav-next .livro-pdf-canvas--front{ transform-origin: left center; transform: rotateY(0deg); opacity:1; }
  .livro-pdf-mobileflip.is-nav-next .livro-pdf-canvas--back{ transform-origin: left center; transform: rotateY(90deg); opacity:1; }
  .livro-pdf-mobileflip.is-nav-next.is-nav-run .livro-pdf-canvas--front{ transform: rotateY(-90deg); opacity:0; }
  .livro-pdf-mobileflip.is-nav-next.is-nav-run .livro-pdf-canvas--back{ transform: rotateY(0deg); opacity:1; }

  /* Anterior: "vira" para a direita */
  .livro-pdf-mobileflip.is-nav-prev .livro-pdf-canvas--front{ transform-origin: right center; transform: rotateY(0deg); opacity:1; }
  .livro-pdf-mobileflip.is-nav-prev .livro-pdf-canvas--back{ transform-origin: right center; transform: rotateY(-90deg); opacity:1; }
  .livro-pdf-mobileflip.is-nav-prev.is-nav-run .livro-pdf-canvas--front{ transform: rotateY(90deg); opacity:0; }
  .livro-pdf-mobileflip.is-nav-prev.is-nav-run .livro-pdf-canvas--back{ transform: rotateY(0deg); opacity:1; }

  .livro-pdf-mobileflip.is-nav-run .livro-pdf-single-links{ pointer-events:none; }
}
.livro-pdf-single canvas{
  max-width:100%;
  max-height:100%;
}
.livro-pdf-canvas{
  display:block;
  max-width:100%;
  max-height:100%;
  border-radius:0;
  background:transparent;
}
.livro-pdf-single-links{
  position:absolute;
  inset:0;
  z-index: 20;
  pointer-events:none;
}
.livro-pdf-single-link{
  position:absolute;
  display:block;
  pointer-events:auto;
  cursor:pointer;
  background:transparent;
}

.livro-pdf-flipbook{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:1 1 auto;
  min-height:0;
  margin:0;
  width:100%;
  height:100%;
  background: transparent !important;
  overflow:hidden;
}
.livro-pdf-flip-lock .stf__block,
.livro-pdf-flip-lock .stf__canvas{
  pointer-events: none !important;
}
.livro-pdf-viewer canvas{
  max-width: none !important;
  max-height: none !important;
}
.livro-pdf-flip-page{
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
}
.livro-pdf-flip-inner{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
}
.livro-pdf-flip-img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  background:transparent;
  border-radius:0;
}

.livro-pdf-flip-links{
  position:absolute;
  inset:0;
  z-index: 20;
  pointer-events:none;
}
.livro-pdf-flip-link{
  position:absolute;
  display:block;
  pointer-events:auto;
  cursor:pointer;
  background:transparent;
}

/* CSS defensivo: evitar fundo cinza do flipbook em qualquer estado */
.stf__parent,
.stf__block,
.sft__wrapper,
.stf__wrapper,
.stf__item,
.stf__page,
.stf__sheet{
  background: transparent !important;
  border:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  margin:0 !important;
  padding:0 !important;
}
.stf__parent{
  /* Mantém o livro centralizado no container sem distorcer o tamanho calculado pela lib */
  margin:auto !important;
}
.stf__wrapper{
  overflow:hidden !important;
}
.stf__item{
  background-color: transparent !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: contain !important;
}
.stf__item img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  background: transparent !important;
  display: block;
}
.stf__parent canvas{
  background: transparent !important;
}
.stf__outerShadow,
.stf__innerShadow,
.stf__hardShadow,
.stf__hardInnerShadow{
  opacity:0 !important;
  pointer-events:none !important;
}

.livro-pdf-flip-busy{
  position:absolute;
  inset:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
  border-radius:10px;
  /* Nao exibir nada durante o pre-carregamento do flipbook. */
  display:none !important;
  background:transparent !important;
  color:transparent !important;
  font-size:0 !important;
  backdrop-filter:none !important;
}

.livro-pdf-open{ display:flex; }
.livro-pdf-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:10px;
  border:1px solid rgba(0,0,0,.15);
  background:#111827;
  color:#fff;
  text-decoration:none;
  cursor:pointer;
}
.livro-pdf-btn:hover{ filter: brightness(1.05); }

.livro-pdf-catalog{
  width:100%;
  color:#fff;
}
.livro-pdf-catalog__title{
  margin:0 0 12px;
  font-size:18px;
  font-weight:700;
}
.livro-pdf-catalog__search{ margin:0 0 12px; }
.livro-pdf-catalog__input{
  width:100%;
  max-width:520px;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(0,0,0,.25);
  color:#a4f700;
  outline:none;
}
.livro-pdf-catalog__input::placeholder{ color:rgba(164,247,0,.65); }
.livro-pdf-catalog__grid{
  display:grid;
  grid-template-columns: repeat( auto-fit, minmax(220px, 1fr) );
  gap:12px;
}
.livro-pdf-card{
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  padding:12px;
  background:rgba(0,0,0,.18);
}
.livro-pdf-card__title{
  font-weight:700;
  font-size:15px;
  margin:0 0 10px;
  color:#fff;
}
.livro-pdf-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.livro-pdf-catalog__btn{
  border-color: rgba(164,247,0,.35);
  color:#a4f700;
}
.livro-pdf-catalog__empty{
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(0,0,0,.18);
}
.livro-pdf-catalog__inline{ margin-top:14px; }

.livro-pdf-modal{
  position:fixed;
  inset:0;
  display:none;
  z-index:999999;
}
.livro-pdf-modal.is-open{ display:block; }
.livro-pdf-modal__overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.7);
}
.livro-pdf-modal__panel{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  padding:0;
  overflow:hidden;
}
.livro-pdf-modal__close{
  position:absolute;
  top:12px;
  right:12px;
  z-index:1000000;
  width:44px;
  height:44px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(0,0,0,.35);
  color:#fff;
  font-size:26px;
  line-height:1;
  cursor:pointer;
  margin:0;
}
.livro-pdf-modal .livro-pdf-viewer{
  height:calc(var(--livro-pdf-vh, 1vh) * 100) !important;
  height:100vh !important;
  height:100dvh !important;
}
.livro-pdf-modal-open{ overflow:hidden; }

.livro-pdf-page{ margin:0; background:#0b0d10; color:#fff; }
html, body.livro-pdf-page{ height:100%; overflow:hidden; }
.livro-pdf-page__wrap{ min-height:100vh; padding:0; height:100%; overflow:hidden; }

/* Ajuste: centralizar conteúdo dentro do container, mantendo espaço do menu lateral */
.livro-pdf-main{ padding-left:88px; }

/* YouTube popup player (arrastável) */
.livro-pdf-ytpop{
  position:fixed;
  left:12vw;
  top:12vh;
  width:480px;
  height:270px;
  max-width:calc(100vw - 24px);
  max-height:calc(100vh - 24px);
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(17,24,39,.92);
  box-shadow: 0 16px 40px rgba(0,0,0,.35);
  overflow:hidden;
  display:none;
  resize: both;
  z-index: 999999;
}
.livro-pdf-ytpop.is-open{ display:block; }
.livro-pdf-ytpop__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  background:rgba(0,0,0,.28);
  cursor:move;
  user-select:none;
}
.livro-pdf-ytpop__title{
  font-size:13px;
  color:#a4f700;
  opacity:.95;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.livro-pdf-ytpop__close{
  appearance:none;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(0,0,0,.25);
  color:#a4f700;
  border-radius:10px;
  width:34px;
  height:28px;
  cursor:pointer;
  line-height:1;
  font-size:18px;
}
.livro-pdf-ytpop__body{
  width:100%;
  height:calc(100% - 44px);
  display:flex;
  align-items:stretch;
  justify-content:stretch;
}
.livro-pdf-ytpop__iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
  background:#000;
}

/* Override defensivo: manter conteúdo centralizado */
.livro-pdf-main{ padding-left:0 !important; }

/* YouTube dock player (mobile): fixed-size, below the reader */
.livro-pdf-ytdock{
  width:100%;
  max-width:100%;
  border-radius:12px;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:hidden;
  margin-top:12px;

  /* No mobile, não pode "espremer" o PDF:
     usamos overlay fixo no rodapé (fora do fluxo) e só exibimos quando estiver aberto. */
  /* No mobile, o mini player deve ficar abaixo do leitor (no fluxo), gerando scroll para visualizar. */
}
.livro-pdf-ytdock__bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  background:transparent;
}
.livro-pdf-ytdock__title{
  font-size:13px;
  color:#a4f700;
  opacity:.95;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.livro-pdf-ytdock__close{
  appearance:none;
  border:1px solid rgba(164,247,0,.35);
  background:transparent;
  color:#a4f700;
  border-radius:10px;
  width:34px;
  height:28px;
  cursor:pointer;
  line-height:1;
  font-size:18px;
}
.livro-pdf-ytdock__body{
  width:100%;
  height:180px; /* tamanho fixo no mobile */
  background:transparent;
}
.livro-pdf-ytdock__iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
  background:transparent !important;
}
@media (min-width: 783px){
  /* Em telas maiores, preferimos o popup arrastável existente */
  .livro-pdf-ytdock{ display:none !important; }
}
