/* Novera PWA v0.1.0 */

.nvpwa-tools{
  position:fixed;
  z-index:9970;
  left:16px;
  bottom:16px;
  display:flex;
  gap:7px;
}

.nvpwa-tool,.nvpwa-download{
  border:1px solid #d7dee8;
  border-radius:10px;
  background:#fff;
  color:#172033;
  min-height:36px;
  padding:8px 12px;
  font:inherit;
  font-size:11px;
  font-weight:750;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(15,23,42,.08);
}

.nvpwa-download{
  color:#fff;
  background:#347cff;
  border-color:#347cff;
  box-shadow:none;
}

.nvpwa-chapter-action{
  display:flex;
  justify-content:flex-end;
  margin:12px 0 18px;
}

.nvpwa-download--story{margin:10px}

.nvpwa-toast{
  position:fixed;
  z-index:10050;
  left:50%;
  bottom:78px;
  transform:translate(-50%,10px);
  opacity:0;
  max-width:min(420px,calc(100vw - 32px));
  padding:10px 14px;
  border-radius:10px;
  background:#172033;
  color:#fff;
  font-size:11px;
  transition:.18s ease;
  pointer-events:none;
}

.nvpwa-toast.is-visible{
  opacity:1;
  transform:translate(-50%,0);
}

.nvpwa-library{
  width:min(620px,calc(100vw - 28px));
  max-height:min(720px,80vh);
  padding:0;
  border:1px solid #d7dee8;
  border-radius:18px;
  background:#fff;
  color:#172033;
  box-shadow:0 24px 80px rgba(15,23,42,.24);
}

.nvpwa-library::backdrop{background:rgba(15,23,42,.48)}

.nvpwa-library__head{
  position:sticky;
  top:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:18px 20px;
  border-bottom:1px solid #e8edf3;
  background:inherit;
}

.nvpwa-library__head h2{margin:3px 0 0;font-size:20px}
.nvpwa-eyebrow{font-size:8px;font-weight:800;letter-spacing:.15em;color:#347cff}
.nvpwa-library__head button{
  width:34px;height:34px;border:1px solid #d7dee8;border-radius:9px;background:transparent;color:inherit;font-size:20px;cursor:pointer
}

.nvpwa-library__list{padding:10px}
.nvpwa-item{
  display:flex;
  gap:12px;
  align-items:center;
  justify-content:space-between;
  padding:12px;
  border-bottom:1px solid #edf0f4;
}
.nvpwa-item__text{min-width:0;display:flex;flex-direction:column;gap:3px}
.nvpwa-item__text span{font-size:9px;color:#7a8595}
.nvpwa-item__text a{font-size:12px;font-weight:750;color:inherit;text-decoration:none}
.nvpwa-item button{border:1px solid #d7dee8;border-radius:8px;background:transparent;padding:7px 9px;font-size:9px;cursor:pointer}
.nvpwa-empty{display:flex;flex-direction:column;gap:5px;padding:30px;text-align:center;color:#697587;font-size:11px}

@media(max-width:600px){
  .nvpwa-tools{left:10px;bottom:10px}
  .nvpwa-tool{padding:7px 10px}
  .nvpwa-chapter-action{justify-content:center}
  .nvpwa-download{width:100%;max-width:360px}
}

@media(prefers-color-scheme:dark){
  .nvpwa-tool,.nvpwa-library{background:#18222f;color:#eef3f8;border-color:#394759}
  .nvpwa-library__head,.nvpwa-item{border-color:#334153}
  .nvpwa-item button{color:#eef3f8;border-color:#3b495b}
}


/* v0.1.1 */
.nvpwa-item__text a::after{
  content:"  ✓ offline";
  margin-left:5px;
  color:#347cff;
  font-size:8px;
  font-weight:800;
}


/* Novera PWA v0.1.2 */
.nvpwa-sw-status{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 9px;
  border:1px solid #d7dee8;
  border-radius:9px;
  background:#fff;
  color:#667386;
  font-size:8px;
  font-weight:750;
  box-shadow:0 8px 24px rgba(15,23,42,.06);
}
.nvpwa-sw-status[data-state="ready"]{color:#16834a}
.nvpwa-sw-status[data-state="error"]{color:#b42318}
.nvpwa-sw-status[data-state="pending"]{color:#946200}

@media(max-width:600px){
  .nvpwa-sw-status{display:none}
}

@media(prefers-color-scheme:dark){
  .nvpwa-sw-status{
    background:#18222f;
    border-color:#394759;
    color:#b7c1cf;
  }
}


/* ==========================================================
   Novera PWA v0.1.3 — biblioteca e indicadores refinados
   ========================================================== */

.nvpwa-chapter-action{
  justify-content:flex-end;
}

.nvpwa-chapter-action .nvpwa-download{
  width:auto!important;
  min-width:0!important;
  min-height:34px;
  padding:7px 11px;
  border-radius:9px;
  font-size:10px;
  box-shadow:none;
}

.nvpwa-chapter-action .nvpwa-download.is-saved{
  background:#eef5ff;
  border-color:#cfe0ff;
  color:#2468d7;
}

.nvpwa-library{
  overflow:hidden;
}

.nvpwa-library__head{
  padding:18px 20px 15px;
}

.nvpwa-library__count{
  display:block;
  margin-top:5px;
  color:#7a8595;
  font-size:9px;
  font-weight:650;
}

.nvpwa-library__toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 20px;
  border-bottom:1px solid #e8edf3;
  background:#f8fafc;
  color:#728094;
  font-size:9px;
}

.nvpwa-remove-all,
.nvpwa-remove-story{
  border:0;
  background:transparent;
  color:#c13a2b;
  padding:0;
  font:inherit;
  font-size:9px;
  font-weight:750;
  cursor:pointer;
}

.nvpwa-library__list{
  padding:12px;
}

.nvpwa-story-group{
  overflow:hidden;
  margin-bottom:12px;
  border:1px solid #e4e9ef;
  border-radius:13px;
  background:#fff;
}

.nvpwa-story-group:last-child{
  margin-bottom:0;
}

.nvpwa-story-group__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px 14px;
  border-bottom:1px solid #edf0f4;
  background:#fbfcfe;
}

.nvpwa-story-group__title{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}

.nvpwa-story-group__title strong{
  overflow:hidden;
  color:#172033;
  font-size:12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.nvpwa-story-group__title span{
  color:#7a8595;
  font-size:8px;
}

.nvpwa-story-group__rows{
  display:flex;
  flex-direction:column;
}

.nvpwa-item{
  padding:12px 14px;
}

.nvpwa-item:last-child{
  border-bottom:0;
}

.nvpwa-item__text a{
  font-size:11px;
}

.nvpwa-item__text span{
  color:#347cff;
  font-size:8px;
  font-weight:750;
}

.nvpwa-item button{
  color:#697587;
}

.nvpwa-item__text a::after{
  content:none!important;
}

/* Mobile */
@media(max-width:600px){
  .nvpwa-chapter-action{
    justify-content:flex-start;
    padding:0 4px;
  }

  .nvpwa-chapter-action .nvpwa-download{
    width:auto!important;
    max-width:none!important;
    min-height:32px;
    padding:7px 10px;
    border-radius:9px;
    font-size:9px;
  }

  .nvpwa-library{
    width:calc(100vw - 28px);
    max-height:82vh;
    border-radius:18px;
  }

  .nvpwa-library__head{
    padding:16px;
  }

  .nvpwa-library__toolbar{
    padding:9px 16px;
  }

  .nvpwa-library__list{
    padding:10px;
  }

  .nvpwa-story-group__head{
    padding:12px;
  }

  .nvpwa-item{
    padding:11px 12px;
  }
}

/* Dark */
@media(prefers-color-scheme:dark){
  .nvpwa-chapter-action .nvpwa-download.is-saved{
    background:#15283d;
    border-color:#2d4f73;
    color:#78aefc;
  }

  .nvpwa-library__toolbar,
  .nvpwa-story-group__head{
    background:#131d29;
    border-color:#2b3949;
  }

  .nvpwa-story-group{
    background:#18222f;
    border-color:#344255;
  }

  .nvpwa-story-group__title strong{
    color:#eef3f8;
  }
}


/* ==========================================================
   Novera PWA v0.1.4 — progresso de leitura
   ========================================================== */

.nvpwa-resume{
  position:fixed;
  z-index:10020;
  left:50%;
  bottom:22px;
  transform:translateX(-50%);
  width:min(460px,calc(100vw - 28px));
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 30px;
  align-items:center;
  gap:10px;
  padding:10px;
  border:1px solid #d7dee8;
  border-radius:14px;
  background:#fff;
  color:#172033;
  box-shadow:0 16px 44px rgba(15,23,42,.18);
}

.nvpwa-resume>span{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
  padding-left:3px;
}

.nvpwa-resume strong{
  font-size:11px;
}

.nvpwa-resume small{
  color:#7a8595;
  font-size:8px;
}

.nvpwa-resume button{
  min-height:34px;
  border:1px solid #347cff;
  border-radius:9px;
  background:#347cff;
  color:#fff;
  padding:7px 11px;
  font:inherit;
  font-size:9px;
  font-weight:750;
  cursor:pointer;
}

.nvpwa-resume .nvpwa-resume__close{
  width:30px;
  min-height:30px;
  padding:0;
  border-color:#d7dee8;
  background:transparent;
  color:#687588;
  font-size:16px;
}

@media(max-width:600px){
  .nvpwa-resume{
    bottom:78px;
    width:calc(100vw - 20px);
  }
}

@media(prefers-color-scheme:dark){
  .nvpwa-resume{
    background:#18222f;
    color:#eef3f8;
    border-color:#394759;
  }

  .nvpwa-resume .nvpwa-resume__close{
    border-color:#394759;
    color:#c7d0dc;
  }
}


/* ==========================================================
   Novera PWA v0.1.5 — biblioteca escalável
   ========================================================== */
.nvpwa-library{
  display:flex;
  flex-direction:column;
  overflow:hidden!important;
}
.nvpwa-library[open]{max-height:min(760px,86vh)!important}
.nvpwa-library__head{flex:0 0 auto}

.nvpwa-library__controls{
  flex:0 0 auto;
  display:flex;
  flex-direction:column;
  gap:9px;
  padding:11px 14px;
  border-bottom:1px solid #e8edf3;
  background:#f8fafc;
}
.nvpwa-search{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:0 11px;
  border:1px solid #dce3ec;
  border-radius:10px;
  background:#fff;
}
.nvpwa-search>span{color:#7a8595;font-size:16px}
.nvpwa-search input{
  width:100%;min-width:0;border:0!important;outline:0!important;box-shadow:none!important;
  background:transparent!important;color:#172033;font:inherit;font-size:11px
}
.nvpwa-library__filters{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
  gap:8px;align-items:center
}
.nvpwa-library__filters select{
  min-width:0;height:34px;border:1px solid #dce3ec;border-radius:9px;background:#fff;
  color:#172033;padding:0 26px 0 9px;font:inherit;font-size:9px
}
.nvpwa-remove-all{
  min-height:34px;padding:0 9px;border:1px solid #f0c8c4;border-radius:9px;background:#fff7f6
}
.nvpwa-library__list{
  flex:1 1 auto;min-height:0;overflow-y:auto!important;overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;padding:12px
}
.nvpwa-story-group{margin-bottom:10px}
.nvpwa-story-group__main{
  width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;
  gap:10px;align-items:center
}
.nvpwa-story-group__title strong{
  white-space:normal!important;display:-webkit-box;-webkit-box-orient:vertical;
  -webkit-line-clamp:2;line-clamp:2;overflow:hidden;line-height:1.25
}
.nvpwa-story-group__actions{display:flex;align-items:center;gap:6px}
.nvpwa-continue-story{
  display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 9px;
  border-radius:8px;background:#347cff;color:#fff!important;text-decoration:none!important;
  font-size:8px;font-weight:800
}
.nvpwa-story-toggle{
  width:32px;height:32px;border:1px solid #d7dee8;border-radius:8px;background:transparent;
  color:#627084;cursor:pointer
}
.nvpwa-story-more{position:relative}
.nvpwa-story-more summary{
  width:30px;height:32px;display:grid;place-items:center;list-style:none;border:1px solid #d7dee8;
  border-radius:8px;color:#627084;cursor:pointer;user-select:none
}
.nvpwa-story-more summary::-webkit-details-marker{display:none}
.nvpwa-story-more__menu{
  position:absolute;z-index:20;top:calc(100% + 6px);right:0;width:130px;padding:6px;
  border:1px solid #d7dee8;border-radius:9px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.14)
}
.nvpwa-story-more__menu button{
  width:100%;border:0;border-radius:7px;background:transparent;color:#c13a2b;padding:8px;
  text-align:left;font:inherit;font-size:9px;font-weight:750;cursor:pointer
}
.nvpwa-story-more__menu button:hover{background:#fff4f2}
.nvpwa-story-group__rows[hidden]{display:none!important}
.nvpwa-story-group__rows{
  max-height:46vh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch
}
.nvpwa-remove-chapter{
  width:30px!important;height:30px!important;min-width:30px!important;padding:0!important;
  border-radius:8px!important;font-size:15px!important
}

@media(max-width:600px){
  .nvpwa-library{width:calc(100vw - 20px)!important;max-height:88vh!important}
  .nvpwa-library__controls{padding:10px 12px}
  .nvpwa-library__filters{grid-template-columns:1fr 1fr}
  .nvpwa-remove-all{grid-column:1 / -1;width:100%}
  .nvpwa-story-group__main{grid-template-columns:1fr}
  .nvpwa-story-group__actions{justify-content:flex-start}
  .nvpwa-continue-story{flex:1;max-width:120px}
  .nvpwa-story-group__rows{max-height:44vh}
}
@media(prefers-color-scheme:dark){
  .nvpwa-library__controls,.nvpwa-search,.nvpwa-library__filters select,.nvpwa-story-more__menu{
    background:#131d29;border-color:#344255;color:#eef3f8
  }
  .nvpwa-search input{color:#eef3f8!important}
  .nvpwa-story-more summary,.nvpwa-story-toggle{border-color:#394759;color:#d4dbe5}
  .nvpwa-remove-all{background:#2a1919;border-color:#573333}
  .nvpwa-story-more__menu button:hover{background:#291a1a}
}


/* ==========================================================
   Novera PWA v0.1.6 — tema sincronizado com o site
   ========================================================== */
html.nvpwa-theme-light .nvpwa-library{
  background:#ffffff!important;
  color:#172033!important;
  border-color:#d7dee8!important;
}
html.nvpwa-theme-light .nvpwa-library__head,
html.nvpwa-theme-light .nvpwa-library__controls,
html.nvpwa-theme-light .nvpwa-story-group__head{
  background:#ffffff!important;
  color:#172033!important;
  border-color:#e3e8ef!important;
}
html.nvpwa-theme-light .nvpwa-library h2,
html.nvpwa-theme-light .nvpwa-story-group__title strong,
html.nvpwa-theme-light .nvpwa-item__text a{
  color:#172033!important;
}
html.nvpwa-theme-light .nvpwa-library__count,
html.nvpwa-theme-light .nvpwa-story-group__title span,
html.nvpwa-theme-light .nvpwa-item__text span{
  color:#748094!important;
}
html.nvpwa-theme-light .nvpwa-search,
html.nvpwa-theme-light .nvpwa-library__filters select,
html.nvpwa-theme-light .nvpwa-story-more__menu{
  background:#ffffff!important;
  color:#172033!important;
  border-color:#d7dee8!important;
}
html.nvpwa-theme-light .nvpwa-search input{
  color:#172033!important;
  -webkit-text-fill-color:#172033!important;
}
html.nvpwa-theme-light .nvpwa-search input::placeholder{color:#8b95a5!important}
html.nvpwa-theme-light .nvpwa-story-group{
  background:#ffffff!important;
  border-color:#dce3ec!important;
}
html.nvpwa-theme-light .nvpwa-item{
  background:#ffffff!important;
  border-color:#e3e8ef!important;
}
html.nvpwa-theme-light .nvpwa-story-toggle,
html.nvpwa-theme-light .nvpwa-story-more summary,
html.nvpwa-theme-light .nvpwa-remove-chapter,
html.nvpwa-theme-light [data-nvpwa-close]{
  background:#ffffff!important;
  color:#566274!important;
  border-color:#d7dee8!important;
}
html.nvpwa-theme-light .nvpwa-remove-all{
  background:#fff7f6!important;color:#b62e24!important;border-color:#efc8c4!important;
}
html.nvpwa-theme-light .nvpwa-library__list{
  background:#f8fafc!important;
}
html.nvpwa-theme-light .nvpwa-story-more__menu button{color:#b62e24!important}

html.nvpwa-theme-dark .nvpwa-library{
  background:#131e2b!important;
  color:#eef3f8!important;
  border-color:#344255!important;
}
html.nvpwa-theme-dark .nvpwa-library__head,
html.nvpwa-theme-dark .nvpwa-library__controls,
html.nvpwa-theme-dark .nvpwa-story-group__head{
  background:#131e2b!important;
  color:#eef3f8!important;
  border-color:#344255!important;
}
html.nvpwa-theme-dark .nvpwa-library h2,
html.nvpwa-theme-dark .nvpwa-story-group__title strong,
html.nvpwa-theme-dark .nvpwa-item__text a{
  color:#eef3f8!important;
}
html.nvpwa-theme-dark .nvpwa-library__count,
html.nvpwa-theme-dark .nvpwa-story-group__title span,
html.nvpwa-theme-dark .nvpwa-item__text span{
  color:#93a1b4!important;
}
html.nvpwa-theme-dark .nvpwa-search,
html.nvpwa-theme-dark .nvpwa-library__filters select,
html.nvpwa-theme-dark .nvpwa-story-more__menu{
  background:#101a26!important;
  color:#eef3f8!important;
  border-color:#3a4a5e!important;
}
html.nvpwa-theme-dark .nvpwa-search input{
  color:#eef3f8!important;
  -webkit-text-fill-color:#eef3f8!important;
}
html.nvpwa-theme-dark .nvpwa-search input::placeholder{color:#98a5b6!important}
html.nvpwa-theme-dark .nvpwa-story-group{
  background:#162230!important;
  border-color:#3a4a5e!important;
}
html.nvpwa-theme-dark .nvpwa-item{
  background:#162230!important;
  border-color:#344255!important;
}
html.nvpwa-theme-dark .nvpwa-story-toggle,
html.nvpwa-theme-dark .nvpwa-story-more summary,
html.nvpwa-theme-dark .nvpwa-remove-chapter,
html.nvpwa-theme-dark [data-nvpwa-close]{
  background:#162230!important;
  color:#d7e0eb!important;
  border-color:#405168!important;
}
html.nvpwa-theme-dark .nvpwa-remove-all{
  background:#321b1a!important;color:#ff7065!important;border-color:#6b3733!important;
}
html.nvpwa-theme-dark .nvpwa-library__list{
  background:#101923!important;
}
html.nvpwa-theme-dark .nvpwa-story-more__menu button{color:#ff7065!important}
html.nvpwa-theme-dark .nvpwa-story-more__menu button:hover{background:#291a1a!important}

/* Select nativo precisa anunciar o esquema correto ao navegador. */
html.nvpwa-theme-light .nvpwa-library{color-scheme:light}
html.nvpwa-theme-dark .nvpwa-library{color-scheme:dark}


/* ==========================================================
   Novera PWA v0.1.7 — correção dos ícones e menu ⋮
   ========================================================== */

/* Chevron do acordeão desenhado em CSS, sem glifo de fonte. */
.nvpwa-story-toggle{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  line-height:1!important;
}
.nvpwa-story-toggle::before{
  content:"";
  width:7px;
  height:7px;
  border-right:1.7px solid currentColor;
  border-bottom:1.7px solid currentColor;
  transform:rotate(45deg) translate(-1px,-1px);
  transform-origin:center;
  transition:transform .16s ease;
}
.nvpwa-story-toggle.is-open::before{
  transform:rotate(225deg) translate(-1px,-1px);
}

/* Três pontos desenhados em CSS para não depender da fonte do aparelho. */
.nvpwa-story-more summary.nvpwa-kebab{
  position:relative!important;
  font-size:0!important;
}
.nvpwa-story-more summary.nvpwa-kebab::before{
  content:"";
  width:3px;
  height:3px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor;
}

/* X de remover capítulo: duas linhas reais, centralizadas. */
.nvpwa-remove-chapter.nvpwa-icon-x{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:0!important;
  line-height:1!important;
}
.nvpwa-remove-chapter.nvpwa-icon-x::before,
.nvpwa-remove-chapter.nvpwa-icon-x::after{
  content:"";
  position:absolute;
  width:10px;
  height:1.4px;
  border-radius:2px;
  background:currentColor;
}
.nvpwa-remove-chapter.nvpwa-icon-x::before{transform:rotate(45deg)}
.nvpwa-remove-chapter.nvpwa-icon-x::after{transform:rotate(-45deg)}

/* O menu ⋮ usa fixed para não ser cortado pelos containers com scroll. */
.nvpwa-story-more__menu{
  position:fixed!important;
  z-index:10080!important;
  top:var(--nvpwa-menu-top,0)!important;
  left:var(--nvpwa-menu-left,0)!important;
  right:auto!important;
  width:150px!important;
  padding:6px!important;
  border-radius:10px!important;
}
.nvpwa-story-more:not([open]) .nvpwa-story-more__menu{
  display:none!important;
}
.nvpwa-story-more[open] .nvpwa-story-more__menu{
  display:block!important;
}

/* Evita foco/borda nativa estranha no summary sem perder acessibilidade. */
.nvpwa-story-more summary{
  outline:none;
}
.nvpwa-story-more summary:focus-visible,
.nvpwa-story-toggle:focus-visible,
.nvpwa-remove-chapter:focus-visible{
  outline:2px solid #347cff!important;
  outline-offset:2px!important;
}

/* Mobile: alvos um pouco maiores e consistentes. */
@media(max-width:600px){
  .nvpwa-story-toggle,
  .nvpwa-story-more summary,
  .nvpwa-remove-chapter{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
  }
}


/* ==========================================================
   Novera PWA v0.1.8 — downloads organizados
   ========================================================== */

/* Capítulo individual */
.nvpwa-chapter-action{
  margin:12px 0 20px!important;
  padding:0!important;
  justify-content:flex-start!important;
}
.nvpwa-chapter-action .nvpwa-download{
  width:auto!important;
  min-width:0!important;
  min-height:34px!important;
  padding:7px 11px!important;
  border-radius:10px!important;
  font-size:9px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
.nvpwa-chapter-action .nvpwa-download.is-saved{
  background:transparent!important;
  color:#347cff!important;
  border-color:#9fc1ff!important;
}

/* Página da obra */
.nvpwa-story-download{
  position:relative;
  z-index:60;
  display:inline-flex;
  flex-direction:column;
  width:min(340px,100%);
  margin:12px 0;
}

.nvpwa-story-download__main{
  width:100%;
  min-height:46px;
  display:grid;
  grid-template-columns:28px minmax(0,1fr) auto 18px;
  grid-template-areas:
    "icon text meta chevron";
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border:1px solid #347cff;
  border-radius:12px;
  background:#347cff;
  color:#fff;
  font:inherit;
  cursor:pointer;
  box-shadow:0 6px 18px rgba(52,124,255,.14);
}

.nvpwa-story-download__main:disabled{
  cursor:progress;
  opacity:.92;
}

.nvpwa-story-download__icon{
  grid-area:icon;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:rgba(255,255,255,.14);
}

.nvpwa-story-download__icon::before{
  content:"↓";
  font-size:15px;
  font-weight:800;
}

.nvpwa-story-download__text{
  grid-area:text;
  min-width:0;
  text-align:left;
  font-size:10px;
  font-weight:850;
  white-space:nowrap;
}

.nvpwa-story-download__meta{
  grid-area:meta;
  color:rgba(255,255,255,.86);
  font-size:8px;
  font-weight:650;
  white-space:nowrap;
}

.nvpwa-story-download__chevron{
  grid-area:chevron;
  position:relative;
  width:18px;
  height:18px;
}

.nvpwa-story-download__chevron::before{
  content:"";
  position:absolute;
  left:5px;
  top:4px;
  width:6px;
  height:6px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);
  transition:transform .16s ease;
}

.nvpwa-story-download__main.is-open .nvpwa-story-download__chevron::before{
  top:7px;
  transform:rotate(225deg);
}

.nvpwa-story-download__main.is-complete{
  border-color:#9fc1ff;
  background:#eef5ff;
  color:#2468d7;
  box-shadow:none;
}
.nvpwa-story-download__main.is-complete .nvpwa-story-download__icon{
  background:#dbe9ff;
}
.nvpwa-story-download__main.is-complete .nvpwa-story-download__icon::before{
  content:"✓";
}
.nvpwa-story-download__main.is-complete .nvpwa-story-download__meta{
  color:#5d83bb;
}

.nvpwa-story-download__menu{
  position:absolute;
  z-index:10030;
  top:calc(100% + 7px);
  left:0;
  width:100%;
  overflow:hidden;
  padding:6px;
  border:1px solid #d7dee8;
  border-radius:12px;
  background:#fff;
  color:#172033;
  box-shadow:0 16px 44px rgba(15,23,42,.16);
}

.nvpwa-story-download__menu[hidden]{
  display:none!important;
}

.nvpwa-story-download__option{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:10px 11px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:inherit;
  text-align:left;
  font:inherit;
  cursor:pointer;
}

.nvpwa-story-download__option:hover{
  background:#f3f7fd;
}

.nvpwa-story-download__option strong{
  font-size:10px;
}

.nvpwa-story-download__option span{
  color:#788496;
  font-size:8px;
}

.nvpwa-story-download__option:disabled{
  opacity:.48;
  cursor:not-allowed;
}

/* Tema real do site */
html.nvpwa-theme-dark .nvpwa-story-download__menu{
  background:#131e2b;
  color:#eef3f8;
  border-color:#3a4a5e;
}
html.nvpwa-theme-dark .nvpwa-story-download__option:hover{
  background:#1b2a3a;
}
html.nvpwa-theme-dark .nvpwa-story-download__option span{
  color:#99a7b8;
}
html.nvpwa-theme-dark .nvpwa-story-download__main.is-complete{
  background:#15283d;
  border-color:#2d4f73;
  color:#78aefc;
}
html.nvpwa-theme-dark .nvpwa-story-download__main.is-complete .nvpwa-story-download__icon{
  background:#1d3550;
}
html.nvpwa-theme-dark .nvpwa-story-download__main.is-complete .nvpwa-story-download__meta{
  color:#8cb4e8;
}

@media(max-width:600px){
  .nvpwa-story-download{
    width:calc(100% - 24px);
    margin:10px 12px 14px;
  }

  .nvpwa-story-download__main{
    grid-template-columns:28px minmax(0,1fr) 18px;
    grid-template-areas:
      "icon text chevron"
      "icon meta chevron";
    min-height:52px;
  }

  .nvpwa-story-download__text{
    align-self:end;
  }

  .nvpwa-story-download__meta{
    justify-self:start;
    align-self:start;
  }

  .nvpwa-story-download__menu{
    top:calc(100% + 6px);
  }

  .nvpwa-chapter-action{
    padding:0 4px!important;
  }
}


/* ==========================================================
   Novera PWA v0.1.9 — refinamentos de posicionamento
   ========================================================== */

/* Desktop: o controle da obra fica centralizado e compacto. */
@media (min-width: 601px){
  .nvpwa-story-download{
    width:min(380px, calc(100% - 32px))!important;
    margin:14px auto 18px!important;
  }

  .nvpwa-story-download__main{
    margin-inline:auto!important;
  }
}

/* Mobile: o botão do capítulo acompanha o eixo do título/autor. */
@media (max-width: 600px){
  .nvpwa-chapter-action{
    width:100%!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    padding-inline:0!important;
    margin:12px auto 20px!important;
  }

  .nvpwa-chapter-action .nvpwa-download{
    margin-inline:auto!important;
  }
}


/* ==========================================================
   Novera PWA v0.1.11 — organização desktop da ação Offline
   ========================================================== */
@media (min-width: 1024px){
  .story__actions .nvpwa-story-download--responsive{
    display:inline-flex!important;
    vertical-align:middle!important;
    width:190px!important;
    max-width:190px!important;
    margin:8px 8px 0 0!important;
    position:relative!important;
    z-index:80!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__main{
    min-height:38px!important;
    grid-template-columns:24px minmax(0,1fr) 15px!important;
    grid-template-areas:"icon text chevron"!important;
    gap:6px!important;
    padding:5px 8px!important;
    border-radius:8px!important;
    box-shadow:none!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__icon{
    width:24px!important;
    height:24px!important;
    border-radius:6px!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__text{
    font-size:10px!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__meta{
    display:none!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__menu{
    top:calc(100% + 7px)!important;
    left:0!important;
    width:280px!important;
    max-width:min(280px, calc(100vw - 32px))!important;
    padding:7px!important;
    border-radius:10px!important;
    box-shadow:0 14px 36px rgba(15,23,42,.16)!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__option{
    padding:9px 10px!important;
  }
}

/* Explicitly preserve the approved mobile/tablet layout. */
@media (max-width: 1023px){
  .nvpwa-story-download--responsive{
    position:relative;
  }
}


/* ==========================================================
   Novera PWA v0.1.12 — popover desktop fora do card Fictioneer
   ========================================================== */
@media (min-width: 1024px){
  body > .nvpwa-story-download__menu.is-desktop-popover{
    position:fixed!important;
    z-index:2147483000!important;
    right:auto!important;
    bottom:auto!important;
    max-width:calc(100vw - 24px)!important;
    overflow:visible!important;
    margin:0!important;
    padding:7px!important;
    border-radius:11px!important;
    box-shadow:0 18px 48px rgba(15,23,42,.22)!important;
  }

  body > .nvpwa-story-download__menu.is-desktop-popover::before{
    content:"";
    position:absolute;
    left:20px;
    top:-5px;
    width:9px;
    height:9px;
    background:inherit;
    border-left:1px solid #d7dee8;
    border-top:1px solid #d7dee8;
    transform:rotate(45deg);
  }

  body > .nvpwa-story-download__menu.is-desktop-popover.opens-up::before{
    top:auto;
    bottom:-5px;
    border-left:0;
    border-top:0;
    border-right:1px solid #d7dee8;
    border-bottom:1px solid #d7dee8;
  }

  html.nvpwa-theme-dark body > .nvpwa-story-download__menu.is-desktop-popover::before{
    border-color:#3a4a5e;
  }
}


/* ==========================================================
   Novera PWA v0.1.13 — alinhamento visual das ações desktop
   ========================================================== */
@media (min-width: 1024px){
  .story__actions .nvpwa-story-download--responsive{
    width:auto!important;
    max-width:none!important;
    margin:0 0 0 3px!important;
    align-self:stretch!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__main{
    min-height:0!important;
    height:100%!important;
    min-width:158px!important;
    padding:0 10px!important;
    grid-template-columns:22px minmax(0,1fr) 14px!important;
    grid-template-areas:"icon text chevron"!important;
    gap:6px!important;
    border-radius:0!important;
    box-shadow:none!important;
    line-height:1!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__icon{
    width:22px!important;
    height:22px!important;
    border-radius:5px!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__icon::before{
    font-size:12px!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__text{
    font-size:10px!important;
    font-weight:750!important;
    line-height:1!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__chevron{
    width:14px!important;
    height:14px!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__chevron::before{
    left:3px!important;
    top:2px!important;
    width:5px!important;
    height:5px!important;
  }

  .story__actions .nvpwa-story-download--responsive .nvpwa-story-download__main.is-open .nvpwa-story-download__chevron::before{
    top:5px!important;
  }

  /* Keep the offline action joined visually with the Fictioneer button row. */
  .story__actions{
    align-items:stretch!important;
  }
}

/* Keep mobile/tablet exactly as before. */
@media (max-width: 1023px){
  .nvpwa-story-download--responsive .nvpwa-story-download__main{
    height:auto;
  }
}

/* ==========================================================
   Novera PWA v0.1.17 — botão offline acima do card no desktop
   ========================================================== */
@media (min-width: 1024px){
  body > .nvpwa-story-download--desktop-top{
    position:absolute!important;
    z-index:120!important;
    width:158px!important;
    max-width:158px!important;
    margin:0!important;
    transform:translateX(-50%)!important;
    display:inline-flex!important;
  }

  body > .nvpwa-story-download--desktop-top .nvpwa-story-download__main{
    width:158px!important;
    min-width:158px!important;
    min-height:36px!important;
    height:36px!important;
    padding:0 9px!important;
    grid-template-columns:22px minmax(0,1fr) 14px!important;
    grid-template-areas:"icon text chevron"!important;
    gap:6px!important;
    border-radius:8px!important;
    box-shadow:none!important;
    line-height:1!important;
  }

  body > .nvpwa-story-download--desktop-top .nvpwa-story-download__icon{
    width:22px!important;
    height:22px!important;
    border-radius:5px!important;
  }

  body > .nvpwa-story-download--desktop-top .nvpwa-story-download__icon::before{
    font-size:12px!important;
  }

  body > .nvpwa-story-download--desktop-top .nvpwa-story-download__text{
    font-size:10px!important;
    font-weight:750!important;
    line-height:1!important;
    text-align:left!important;
  }

  body > .nvpwa-story-download--desktop-top .nvpwa-story-download__meta{
    display:none!important;
  }

  body > .nvpwa-story-download--desktop-top .nvpwa-story-download__chevron{
    width:14px!important;
    height:14px!important;
  }
}

/* ==========================================================
   Novera PWA v0.1.18 — capítulo: ação offline centralizada no desktop
   ========================================================== */
@media (min-width: 1024px){
  .chapter__headline .nvpwa-chapter-action{
    width:100%!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin:12px auto 8px!important;
    padding:0!important;
  }

  .chapter__headline .nvpwa-chapter-action .nvpwa-download{
    margin-inline:auto!important;
  }

  /* Aproxima a ação offline do início do conteúdo sem tocar no mobile. */
  .chapter__headline:has(.nvpwa-chapter-action){
    padding-bottom:1rem!important;
  }
}

/* ==========================================================
   Novera PWA v0.1.19 — capítulo: aproxima conteúdo no mobile
   ========================================================== */
@media (max-width: 600px){
  /* Mantém título, autor e botão centralizados; reduz apenas o vazio
     entre a ação offline e o início do conteúdo do capítulo. */
  .chapter__headline:has(.nvpwa-chapter-action){
    padding-bottom:0!important;
    margin-bottom:0!important;
  }

  .chapter__headline .nvpwa-chapter-action{
    margin-bottom:4px!important;
  }
}


/* Novera PWA v0.1.20 — remove apenas o indicador visual de status "Offline pronto".
   O Service Worker e toda a lógica offline permanecem ativos. */
.nvpwa-sw-status{display:none!important;}


/* ==========================================================
   Novera PWA v0.1.22 — biblioteca sem scroll-lock residual
   ========================================================== */
.nvpwa-library-backdrop{
  position:fixed;
  z-index:10040;
  inset:0;
  background:rgba(15,23,42,.48);
  opacity:0;
  pointer-events:none;
  touch-action:none;
}

.nvpwa-library-backdrop.is-visible{
  opacity:1;
  pointer-events:auto;
}

/* O dialog agora abre com show(), sem top-layer modal nativo. */
.nvpwa-library[open]{
  position:fixed!important;
  z-index:10041!important;
  inset:50% auto auto 50%!important;
  margin:0!important;
  transform:translate(-50%,-50%)!important;
}

/* O backdrop nativo nao e mais usado nesta versao. */
.nvpwa-library::backdrop{
  background:transparent!important;
}


/* ==========================================================
   Novera Reader v0.1.4 — biblioteca offline compacta
   ========================================================== */
.nvpwa-library__list{padding:10px!important}
.nvpwa-story-group{
  margin:0 0 8px!important;border:1px solid #334153;border-radius:12px;
  overflow:hidden;background:#142131
}
.nvpwa-story-group__head{padding:11px 12px!important}
.nvpwa-story-group__main{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}
.nvpwa-story-group__title{min-width:0}
.nvpwa-story-group__title strong{font-size:12px!important;line-height:1.25!important;-webkit-line-clamp:1!important;line-clamp:1!important}
.nvpwa-story-group__title span{display:block;margin-top:3px;font-size:8px!important;line-height:1.35;color:#8f9bad}
.nvpwa-story-group__actions{gap:5px!important;flex-wrap:nowrap!important}
.nvpwa-continue-story,.nvpwa-story-toggle,.nvpwa-remove-story{min-height:34px!important;height:34px!important}
.nvpwa-continue-story{padding:0 11px!important;font-size:8px!important;white-space:nowrap}
.nvpwa-story-toggle{width:34px!important;min-width:34px!important}
.nvpwa-remove-story{
  display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border:1px solid #5a3434;
  border-radius:8px;background:#281a1d;color:#ff7b70;font:inherit;font-size:8px;font-weight:800;cursor:pointer
}
.nvpwa-story-group__rows{border-top:1px solid #334153;max-height:none!important;overflow:visible!important;background:#101b28}
.nvpwa-item{min-height:48px!important;padding:9px 11px!important;gap:8px!important}
.nvpwa-item__text a{font-size:10px!important;line-height:1.3!important}
.nvpwa-item__text span{font-size:8px!important;margin-top:3px!important}
.nvpwa-remove-chapter{width:34px!important;height:34px!important;min-width:34px!important}

@media(max-width:600px){
  .nvpwa-library{width:calc(100vw - 12px)!important;max-height:calc(100dvh - 84px)!important;border-radius:14px!important}
  .nvpwa-library__head{padding:13px 14px!important}
  .nvpwa-library__controls{padding:9px 10px!important;gap:7px!important}
  .nvpwa-library__list{padding:8px!important}
  .nvpwa-story-group__head{padding:10px!important}
  .nvpwa-story-group__main{grid-template-columns:1fr!important;gap:8px!important}
  .nvpwa-story-group__actions{display:grid!important;grid-template-columns:minmax(0,1fr) 38px minmax(70px,auto)!important;width:100%}
  .nvpwa-continue-story{max-width:none!important;width:100%!important}
  .nvpwa-remove-story{width:100%!important;padding:0 8px!important}
  .nvpwa-story-group__rows{max-height:42vh!important;overflow-y:auto!important;overscroll-behavior:contain}
  .nvpwa-item{min-height:52px!important}
}

html.nvpwa-theme-light .nvpwa-story-group{background:#fff;border-color:#dce3ec}
html.nvpwa-theme-light .nvpwa-story-group__rows{background:#f8fafc;border-color:#e3e9f0}
html.nvpwa-theme-light .nvpwa-remove-story{background:#fff7f6;border-color:#f0c8c4;color:#b62e24}

/* ==========================================================
   Novera PWA v0.1.23 — Offline nativo na lista de capítulos/volumes
   ========================================================== */
body.single-fcn_story #nvpwa-story-download,
body.single-fcn_story > .nvpwa-story-download__menu{
  display:none!important;
}

/* O host recebe apenas o espaço necessário; o visual original do tema continua intacto. */
.nvpwa-inline-chapter-host{
  position:relative!important;
  padding-right:58px!important;
}
.nvpwa-inline-volume-host{
  position:relative!important;
  padding-right:170px!important;
}

.nvpwa-inline-chapter-download,
.nvpwa-inline-volume-download{
  appearance:none;
  -webkit-appearance:none;
  font:inherit;
  color:inherit;
  cursor:pointer;
  box-shadow:none;
  transition:border-color .16s ease,background .16s ease,color .16s ease,opacity .16s ease;
}

/* Capítulo: ação iconográfica do mesmo porte dos controles do Fictioneer. */
.nvpwa-inline-chapter-download{
  position:absolute;
  z-index:4;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  width:36px;
  height:36px;
  min-width:36px;
  display:inline-grid;
  place-items:center;
  padding:0;
  border:1px solid color-mix(in srgb,currentColor 18%,transparent);
  border-radius:9px;
  background:color-mix(in srgb,currentColor 3%,transparent);
  font-size:17px;
  font-weight:800;
  line-height:1;
}
.nvpwa-inline-chapter-download:hover{
  border-color:#347cff;
  color:#347cff;
  background:color-mix(in srgb,#347cff 8%,transparent);
}
.nvpwa-inline-chapter-download.is-saved{
  color:#347cff;
  border-color:color-mix(in srgb,#347cff 48%,transparent);
  background:color-mix(in srgb,#347cff 9%,transparent);
  cursor:default;
}
.nvpwa-inline-chapter-download.is-loading{opacity:.72;cursor:progress}

/* Volume: texto discreto integrado ao cabeçalho, não um CTA separado. */
.nvpwa-inline-volume-download{
  position:absolute;
  z-index:4;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  max-width:156px;
  min-height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:0 10px;
  border:1px solid color-mix(in srgb,currentColor 16%,transparent);
  border-radius:9px;
  background:transparent;
  font-size:10px;
  font-weight:750;
  white-space:nowrap;
}
.nvpwa-inline-volume-download__icon{font-size:14px;line-height:1;color:#347cff}
.nvpwa-inline-volume-download:hover{
  border-color:color-mix(in srgb,#347cff 55%,transparent);
  background:color-mix(in srgb,#347cff 7%,transparent);
}
.nvpwa-inline-volume-download.is-partial{color:#8eb7ff}
.nvpwa-inline-volume-download.is-saved{
  color:#77aaff;
  border-color:color-mix(in srgb,#347cff 36%,transparent);
  background:color-mix(in srgb,#347cff 6%,transparent);
  cursor:default;
}
.nvpwa-inline-volume-download.is-loading{opacity:.78;cursor:progress}

@media(max-width:720px){
  .nvpwa-inline-chapter-host{padding-right:50px!important}
  .nvpwa-inline-chapter-download{right:8px;width:34px;height:34px;min-width:34px;border-radius:8px}
  .nvpwa-inline-volume-host{padding-right:52px!important}
  .nvpwa-inline-volume-download{
    right:8px;
    width:34px;
    min-width:34px;
    max-width:34px;
    height:34px;
    min-height:34px;
    padding:0;
    border-radius:8px;
  }
  .nvpwa-inline-volume-download__label{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
  }
}

/* ==========================================================
   Novera Reader v0.2.0 — Story integrado: ações offline nativas
   ========================================================== */
body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group__list-item.nvpwa-inline-chapter-host{
  position:relative!important;
  padding-right:54px!important;
}
body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group__list-item.nvpwa-inline-chapter-host > .nvpwa-inline-chapter-download{
  right:10px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
}
body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host{
  padding-right:13px!important;
}
body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host > .nvpwa-inline-volume-download{
  position:static!important;
  transform:none!important;
  grid-column:3!important;
  grid-row:1 / span 2!important;
  align-self:center!important;
  justify-self:end!important;
  margin:0!important;
}
@media(max-width:720px){
  body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group__list-item.nvpwa-inline-chapter-host{padding-right:48px!important}
  body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host > .nvpwa-inline-volume-download{
    width:34px!important;min-width:34px!important;max-width:34px!important;
  }
}

/* Novera Reader v0.3.8 — download de volume mais claro no mobile. */
@media(max-width:720px){
  body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host{
    padding-right:98px!important;
  }
  body.single-fcn_story .novera-story .nvpwa-inline-volume-download{
    right:8px!important;
    width:auto!important;
    min-width:72px!important;
    max-width:92px!important;
    height:34px!important;
    min-height:34px!important;
    padding:0 9px!important;
    gap:5px!important;
    border-radius:8px!important;
  }
  body.single-fcn_story .novera-story .nvpwa-inline-volume-download__label{
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    clip:auto!important;
    white-space:nowrap!important;
    border:0!important;
    font-size:9px!important;
    line-height:1!important;
  }
}


/* Novera Reader v0.3.9 — corrige exclusivamente o alinhamento do ícone de Baixar volume no mobile. */
@media(max-width:720px){
  body.single-fcn_story .novera-story .nvpwa-inline-volume-download{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    column-gap:6px!important;
    padding:0 10px!important;
    overflow:hidden!important;
  }
  body.single-fcn_story .novera-story .nvpwa-inline-volume-download__icon{
    position:static!important;
    inset:auto!important;
    display:inline-flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    justify-content:center!important;
    width:12px!important;
    min-width:12px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    line-height:1!important;
  }
  body.single-fcn_story .novera-story .nvpwa-inline-volume-download__label{
    display:inline-block!important;
    flex:0 0 auto!important;
    margin:0!important;
    transform:none!important;
  }
}


/* Novera Reader v0.3.10 — correção definitiva do botão Baixar volume no mobile.
   O símbolo passa a fazer parte do próprio texto no breakpoint móvel, evitando
   qualquer regra herdada que desloque o span de ícone para fora do botão. */
@media(max-width:720px){
  body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host{
    padding-right:132px!important;
  }
  body.single-fcn_story .novera-story .nvpwa-inline-volume-download{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:82px!important;
    max-width:126px!important;
    height:36px!important;
    min-height:36px!important;
    padding:0 12px!important;
    gap:0!important;
    text-align:center!important;
    overflow:hidden!important;
    line-height:1!important;
  }
  body.single-fcn_story .novera-story .nvpwa-inline-volume-download__icon{
    display:none!important;
  }
  body.single-fcn_story .novera-story .nvpwa-inline-volume-download__label{
    position:static!important;
    display:block!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    clip:auto!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
    font-size:10px!important;
    font-weight:750!important;
    line-height:1!important;
    transform:none!important;
  }
}

/* Novera Reader v0.3.11 — botão de volume mobile com largura real.
   Esta regra usa a mesma especificidade do override legado que forçava 34px,
   garantindo que o rótulo "↓ Baixar" permaneça totalmente visível. */
@media(max-width:720px){
  body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host{
    padding-right:112px!important;
  }
  body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host > .nvpwa-inline-volume-download{
    position:static!important;
    transform:none!important;
    grid-column:3!important;
    grid-row:1 / span 2!important;
    align-self:center!important;
    justify-self:end!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:88px!important;
    min-width:88px!important;
    max-width:88px!important;
    height:36px!important;
    min-height:36px!important;
    padding:0 10px!important;
    margin:0!important;
    overflow:visible!important;
    white-space:nowrap!important;
    text-align:center!important;
    border-radius:9px!important;
  }
  body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host > .nvpwa-inline-volume-download .nvpwa-inline-volume-download__icon{
    display:none!important;
  }
  body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host > .nvpwa-inline-volume-download .nvpwa-inline-volume-download__label{
    position:static!important;
    display:block!important;
    width:auto!important;
    min-width:max-content!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    clip:auto!important;
    white-space:nowrap!important;
    text-overflow:clip!important;
    font-size:10px!important;
    font-weight:750!important;
    line-height:1!important;
    transform:none!important;
  }
}

/* Novera Reader v0.3.13 — mantém “↓ Baixar” encostado à direita no mobile,
   igual ao desktop. O botão já participa da terceira coluna do grid, portanto
   o host não deve reservar um grande padding à direita. */
@media (max-width:720px){
  body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host{
    padding-right:10px!important;
  }
  body.single-fcn_story .novera-story .nv-story-native-chapters .chapter-group > .chapter-group__name.nvpwa-inline-volume-host > .nvpwa-inline-volume-download{
    grid-column:3!important;
    grid-row:1 / span 2!important;
    justify-self:end!important;
    align-self:center!important;
    margin-left:auto!important;
    margin-right:0!important;
  }
}
