:root{--paper:#f2ecdf;--ink:#26221c;--paper-muted:#71695d}.reader-page{background:#070908;color:#eee;min-height:100vh}.reader-top{height:72px;position:sticky;top:0;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 4vw;border-bottom:1px solid rgba(255,255,255,.1);background:rgba(5,7,6,.94);backdrop-filter:blur(12px)}.reader-back{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#d8c995}.reader-brand{display:flex;align-items:center;gap:.7rem;font-size:.68rem;letter-spacing:.16em;color:#d8c995}.reader-brand img{width:38px;height:38px;object-fit:contain}.reader-theme{justify-self:end;border:1px solid rgba(255,255,255,.15);background:transparent;color:#eee;width:38px;height:38px;border-radius:50%;cursor:pointer}.reader-shell{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,820px);justify-content:center;gap:3rem;padding:3rem 4vw 5rem}.reader-sidebar{position:sticky;top:100px;align-self:start}.reader-cover{max-width:180px;margin:0 auto 1.5rem}.reader-cover img{width:100%;aspect-ratio:2/3;object-fit:cover;box-shadow:12px 18px 38px rgba(0,0,0,.6)}.reader-meta{text-align:center}.reader-meta h1{font-size:1.8rem;margin:.4rem 0}.reader-meta p{color:#aaa}.reader-toc{margin-top:2rem;border-top:1px solid rgba(255,255,255,.1)}.reader-toc button{width:100%;text-align:left;padding:1rem .8rem;border:0;border-bottom:1px solid rgba(255,255,255,.08);background:transparent;color:#bbb;cursor:pointer}.reader-toc button.active{color:#f0d483;background:rgba(211,168,79,.07)}.reader-paper{background:var(--paper);color:var(--ink);min-height:75vh;box-shadow:0 30px 80px rgba(0,0,0,.45);position:relative}.reader-progress{height:3px;background:rgba(0,0,0,.08);position:sticky;top:72px;z-index:5}.reader-progress span{display:block;height:100%;width:0;background:#a98132;transition:width .25s}.reader-paper-inner{max-width:680px;margin:auto;padding:5rem 4.5rem}.reader-paper .eyebrow{color:#8a6a2b}.reader-paper h2{font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.03;margin:.5rem 0 2.5rem}.reader-text{font-family:Georgia,'Times New Roman',serif;font-size:1.12rem;line-height:1.9}.reader-text p{margin:0 0 1.45em}.reader-text p:first-of-type:first-letter{float:left;font-size:4.8rem;line-height:.78;padding:.13em .1em 0 0;color:#8a6a2b}.reader-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin-top:4rem;padding-top:1.5rem;border-top:1px solid rgba(0,0,0,.12)}.reader-nav button{border:0;background:transparent;color:#725b2e;cursor:pointer;font-weight:700}.reader-nav button:last-child{text-align:right}.reader-nav button:disabled{opacity:.25}.reader-nav span{font-size:.75rem;color:var(--paper-muted)}.reader-end{text-align:center;margin-top:3rem;padding:2.5rem 1rem;border-top:1px solid rgba(0,0,0,.12)}.reader-end h3{font-size:2rem;margin:.4rem}.reader-page.reader-dark{--paper:#111614;--ink:#ded9cd;--paper-muted:#8f938e}.reader-page.reader-dark .reader-paper .eyebrow{color:#d4b66b}.reader-page.reader-dark .reader-text p:first-of-type:first-letter{color:#d4b66b}.reader-page.reader-dark .reader-nav{border-color:rgba(255,255,255,.12)}.reader-page.reader-dark .reader-nav button{color:#d4b66b}
@media(max-width:850px){.reader-top{grid-template-columns:1fr auto}.reader-brand{display:none}.reader-shell{grid-template-columns:1fr;padding:0}.reader-sidebar{position:relative;top:auto;padding:2rem 1.25rem;display:grid;grid-template-columns:90px 1fr;gap:1rem;align-items:center}.reader-cover{margin:0;max-width:90px}.reader-meta{text-align:left}.reader-meta h1{font-size:1.35rem}.reader-toc{grid-column:1/-1;display:flex;overflow:auto;margin-top:.5rem;border:0}.reader-toc button{white-space:nowrap;border:1px solid rgba(255,255,255,.08);padding:.7rem .9rem}.reader-paper{min-height:100vh}.reader-paper-inner{padding:3.5rem 1.5rem}.reader-progress{top:72px}.reader-text{font-size:1.05rem;line-height:1.8}}

.reader-downloads{display:flex;gap:.7rem;flex-wrap:wrap;margin:1.2rem 0 2rem}.reader-downloads .btn{display:inline-flex}.reader-full .reader-brand span{color:#d6b35b}

/* Lector 2.1.1 — refinamiento editorial y móvil */
@media(min-width:851px){
  .reader-shell{grid-template-columns:minmax(270px,340px) minmax(0,780px);gap:3.25rem}
  .reader-paper-inner{max-width:650px;padding:5rem 4rem}
  .reader-text{font-size:1.1rem;line-height:1.92}
}
.reader-nav{margin-top:4.5rem;padding-top:1.35rem;min-height:58px}
.reader-nav button{padding:.8rem .9rem;border:1px solid transparent;letter-spacing:.02em}
.reader-nav button:not(:disabled):hover{border-color:rgba(114,91,46,.28);background:rgba(138,106,43,.06)}
.reader-nav button:last-child:not(:disabled){background:#8a6a2b;color:#fff;border-color:#8a6a2b}
.reader-page.reader-dark .reader-nav button:last-child:not(:disabled){background:#d4b66b;color:#111614;border-color:#d4b66b}
.reader-downloads{padding-top:.35rem}.reader-downloads:empty{display:none}
@media(max-width:850px){
  .reader-top{height:62px;padding:0 1rem}.reader-back{font-size:.68rem}.reader-theme{width:34px;height:34px}
  .reader-sidebar{padding:1.15rem 1rem .85rem;grid-template-columns:68px minmax(0,1fr);gap:.85rem;background:#090c0b;border-bottom:1px solid rgba(255,255,255,.08)}
  .reader-cover{max-width:68px}.reader-meta h1{font-size:1.15rem;margin:.25rem 0}.reader-meta p{font-size:.82rem;margin:.2rem 0}.reader-meta .eyebrow{font-size:.62rem}
  .reader-toc{margin:.4rem -1rem 0;padding:.2rem 1rem .25rem;scrollbar-width:thin}.reader-toc button{font-size:.78rem;padding:.65rem .8rem}
  .reader-paper{box-shadow:none}.reader-progress{top:62px}.reader-paper-inner{padding:2.6rem clamp(1.15rem,5vw,2rem) 3.5rem}.reader-paper h2{font-size:clamp(2rem,10vw,3rem);margin-bottom:2rem}.reader-text{font-size:1.03rem;line-height:1.82}
  .reader-nav{grid-template-columns:1fr auto 1fr;gap:.35rem;margin-top:3rem}.reader-nav button{font-size:.78rem;padding:.7rem .55rem}.reader-nav span{font-size:.68rem}
  .reader-downloads .btn{width:100%;justify-content:center}
}
@media(max-width:480px){.reader-paper-inner{padding-left:1.05rem;padding-right:1.05rem}.reader-text{font-size:1rem}.reader-text p:first-of-type:first-letter{font-size:4.2rem}.reader-sidebar{grid-template-columns:58px minmax(0,1fr)}.reader-cover{max-width:58px}}
