/* WS Editore — visor "Ver por dentro".
   CSS ACOTADO bajo .lb3v: no toca nada del sitio (ni body, ni resets).
   Las imágenes NO se cargan hasta que el visitante abre el visor. */

.lb3v{
  position:fixed; inset:0; z-index:9999;
  display:none; align-items:center; justify-content:center;
  background:rgba(14,10,4,.93);
  padding:clamp(3.2rem,6vh,4.5rem) clamp(1rem,5vw,3.4rem);
}
.lb3v.lb3v-abierto{ display:flex; }

.lb3v-caja{
  position:relative; width:100%; height:100%;
  min-width:0; min-height:0;      /* sin esto el hijo flex no encoge y la hoja desborda en celular */
  display:flex; align-items:center; justify-content:center;
}
.lb3v-hoja{
  max-width:100%; max-height:100%; width:auto; height:auto;
  user-select:none; -webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;
  object-fit:contain; border-radius:3px; background:#fff;
  box-shadow:0 30px 80px rgba(0,0,0,.6);
}
.lb3v-hoja[hidden]{ display:none; }

.lb3v-aviso{
  position:absolute; color:rgba(255,247,234,.8); font-size:.95rem; letter-spacing:.02em;
  display:flex; align-items:center; gap:.6rem;
}
.lb3v-aviso[hidden]{ display:none; }
.lb3v-aviso::before{
  content:''; width:15px; height:15px; border-radius:50%;
  border:2px solid rgba(255,247,234,.3); border-top-color:#FEE187;
  animation:lb3v-gira .8s linear infinite;
}
@keyframes lb3v-gira{ to{ transform:rotate(360deg); } }
@media (prefers-reduced-motion: reduce){ .lb3v-aviso::before{ animation:none; } }

.lb3v-nav{
  position:absolute; top:50%; transform:translateY(-50%);
  width:54px; height:54px; border-radius:50%; border:0; cursor:pointer;
  background:rgba(255,247,234,.15); color:#fff7ea;
  font-size:26px; line-height:1; display:flex; align-items:center; justify-content:center;
  transition:background .18s ease, opacity .18s ease;
}
.lb3v-nav:hover{ background:rgba(255,247,234,.28); }
.lb3v-nav[disabled]{ opacity:.25; cursor:default; }
.lb3v-ant{ left:0; }
.lb3v-sig{ right:0; }

.lb3v-cerrar{
  position:absolute; top:0; right:0;
  width:46px; height:46px; border-radius:50%; border:0; cursor:pointer;
  background:rgba(255,247,234,.15); color:#fff7ea; font-size:22px; line-height:1;
  display:flex; align-items:center; justify-content:center; transition:background .18s ease;
}
.lb3v-cerrar:hover{ background:rgba(255,247,234,.28); }

.lb3v-barra{
  position:absolute; top:0; left:0; right:64px; height:46px;
  display:flex; align-items:center; gap:.9rem;
  color:rgba(255,247,234,.82); font-size:.86rem; letter-spacing:.04em;
  font-family:inherit;
}
.lb3v-cuenta{ font-variant-numeric:tabular-nums; }
.lb3v-titulo{ color:#FEE187; font-weight:600; }
.lb3v-pista-lado{ opacity:.7; }

@media (max-width:720px){
  .lb3v{ padding:4rem .6rem 4.6rem; }
  .lb3v-nav{ width:44px; height:44px; font-size:22px; background:rgba(255,247,234,.22); }
  .lb3v-barra{ font-size:.78rem; }
  .lb3v-pista-lado{ display:none; }
  .lb3v-cerrar{ width:42px; height:42px; }
}
