/* Visor Flip PDF */
.vfp{
	--vfp-bg:#E6D8C5;--vfp-bar:#292720;--vfp-accent:#F5BE27;--vfp-h:85vh;
	position:relative;display:flex;flex-direction:column;margin:1.5rem 0;background:var(--vfp-bg);border-radius:10px;overflow:hidden;color:#292720;outline:0;
}
.vfp [hidden]{display:none!important}
.vfp .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.vfp button{font:inherit}

/* Escenario */
.vfp__stage{position:relative;flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:min(var(--vfp-h),560px);padding:clamp(.75rem,2vw,1.5rem) clamp(.5rem,1vw,1rem)}
.vfp__book-wrap{flex:1 1 auto;width:100%;margin:0 auto;transition:max-width .25s ease}
.vfp__book{margin:0 auto}
.vfp:not(.is-ready) .vfp__book-wrap{visibility:hidden}
.vfp__page{background:#fff}
.vfp__page-inner{position:relative;width:100%;height:100%;background:linear-gradient(110deg,#f3eee6 30%,#fbf8f3 50%,#f3eee6 70%) 0 0/300% 100%;animation:vfp-shimmer 1.4s linear infinite}
.vfp__page.is-rendered .vfp__page-inner{animation:none;background:#fff}
.vfp__page-inner img{display:block;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .3s;user-select:none;-webkit-user-drag:none}
.vfp__page.is-rendered img{opacity:1}
@keyframes vfp-shimmer{to{background-position:-300% 0}}
.vfp .stf__parent{margin:0 auto}
.vfp .stf__block{filter:drop-shadow(0 18px 30px rgba(41,39,32,.28))}

/* Flechas laterales */
.vfp__side{flex:0 0 44px;width:44px;height:44px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--vfp-bar) 25%,transparent);border-radius:50%;background:rgba(255,255,255,.65);color:var(--vfp-bar);cursor:pointer;transition:background .2s,color .2s,opacity .2s;z-index:2}
.vfp__side:hover:not(:disabled){background:var(--vfp-bar);color:#fff}
.vfp__side:disabled{opacity:.25;cursor:default}
@media (max-width:699px){.vfp__side{display:none}}

/* Carga */
.vfp__loading{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;text-align:center;font-size:.9rem;padding:1rem}
.vfp__spinner{width:36px;height:36px;border-radius:50%;border:3px solid color-mix(in srgb,var(--vfp-bar) 18%,transparent);border-top-color:var(--vfp-bar);animation:vfp-spin .9s linear infinite}
@keyframes vfp-spin{to{transform:rotate(360deg)}}
.vfp__progress{width:min(240px,60%);height:3px;background:color-mix(in srgb,var(--vfp-bar) 15%,transparent);border-radius:3px;overflow:hidden}
.vfp__progress span{display:block;height:100%;width:0;background:var(--vfp-accent);transition:width .2s}
.vfp.is-error .vfp__spinner,.vfp.is-error .vfp__progress{display:none}
.vfp__link{display:inline-block;padding:.6em 1.2em;border-radius:999px;background:var(--vfp-bar);color:#fff;text-decoration:none}

/* Barra */
.vfp__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.25rem .75rem;padding:.4rem .6rem;background:var(--vfp-bar);color:#fff}
.vfp__group{display:flex;align-items:center;gap:.15rem}
.vfp__bar button,.vfp__btn{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:8px;background:transparent;color:#fff;cursor:pointer;text-decoration:none;transition:background .15s,color .15s}
.vfp__bar button:hover:not(:disabled),.vfp__btn:hover,.vfp__bar button[aria-expanded="true"]{background:rgba(255,255,255,.12);color:var(--vfp-accent)}
.vfp__bar button:focus-visible,.vfp__btn:focus-visible,.vfp__side:focus-visible,.vfp__thumb:focus-visible,.vfp__input:focus-visible{outline:2px solid var(--vfp-accent);outline-offset:2px}
.vfp__bar button:disabled{opacity:.35;cursor:default}
.vfp__pager{display:flex;align-items:center;gap:.35rem;margin:0 .35rem;font-size:.9rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.vfp__input{width:3.4em;height:32px;padding:0 .3em;border:1px solid rgba(255,255,255,.3);border-radius:6px;background:rgba(255,255,255,.08);color:#fff;text-align:center;font:inherit;-moz-appearance:textfield}
.vfp__input::-webkit-outer-spin-button,.vfp__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.vfp__total{opacity:.8}
/* Teléfono: dos filas centradas (navegación / herramientas), botones táctiles de 44 px, nada se oculta */
@media (max-width:599px){
	.vfp__bar{flex-direction:column;align-items:stretch;gap:.15rem;padding:.35rem .25rem;padding-bottom:max(.35rem,env(safe-area-inset-bottom))}
	.vfp__group{justify-content:center;gap:0;flex-wrap:nowrap}
	.vfp__bar button,.vfp__btn{width:44px;height:44px}
	.vfp__pager{margin:0 .15rem}
	.vfp__input{width:3em;height:36px;font-size:16px}
	.vfp__group + .vfp__group{border-top:1px solid rgba(255,255,255,.1);padding-top:.15rem}
}
@media (max-width:340px){.vfp__bar button,.vfp__btn{width:38px}}

/* Miniaturas */
.vfp__thumbs{background:color-mix(in srgb,var(--vfp-bar) 92%,#000);padding:.6rem .6rem .8rem}
.vfp__thumbs-list{display:flex;gap:.5rem;margin:0;padding:0;list-style:none;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
.vfp__thumb{position:relative;display:block;width:72px;padding:0;border:2px solid transparent;border-radius:4px;background:#fff;cursor:pointer;overflow:hidden}
.vfp__thumb img{display:block;width:100%;aspect-ratio:var(--vfp-ratio,0.7);object-fit:cover;background:#f3eee6}
.vfp__thumb span{position:absolute;right:3px;bottom:3px;padding:0 .35em;border-radius:3px;background:rgba(41,39,32,.75);color:#fff;font-size:.68rem}
.vfp__thumb.is-current{border-color:var(--vfp-accent)}

/* Zoom */
.vfp__zoom{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;background:var(--vfp-bg)}
.vfp__zoom-scroll{flex:1;overflow:auto;overscroll-behavior:contain;outline:0;text-align:center}
.vfp__zoom-scroll img{display:inline-block;max-width:none;height:auto;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.2)}
.vfp__zoom-bar{position:absolute;left:50%;bottom:1rem;transform:translateX(-50%);display:flex;gap:.25rem;padding:.3rem;border-radius:999px;background:var(--vfp-bar)}
.vfp__zoom-bar button{min-width:40px;height:36px;padding:0 .8rem;border:0;border-radius:999px;background:transparent;color:#fff;font-size:.95rem;cursor:pointer}
.vfp__zoom-bar button:hover{background:rgba(255,255,255,.14);color:var(--vfp-accent)}

/* Pantalla completa */
.vfp.is-full,.vfp.vfp--max{margin:0;border-radius:0;height:100vh;height:100dvh}
.vfp.vfp--max{position:fixed;inset:0;z-index:100000}
.vfp.is-full .vfp__stage,.vfp.vfp--max .vfp__stage{min-height:0}

/* Ventana modal */
.vfp-dialog{width:100vw;max-width:100vw;height:100vh;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;background:transparent;overflow:hidden;overscroll-behavior:contain}
.vfp-dialog::backdrop{background:rgba(25,22,18,.82);backdrop-filter:blur(3px);overflow:hidden;overscroll-behavior:contain}
.vfp-dialog[open]{display:flex}
.vfp.vfp--modal{flex:1;margin:0;border-radius:0;height:100%}
.vfp--modal .vfp__stage{min-height:0}
.vfp-dialog__close{position:absolute;top:.6rem;right:.6rem;z-index:6;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--vfp-bar,#292720);color:#fff;cursor:pointer}
.vfp-dialog__close:hover{color:var(--vfp-accent,#F5BE27)}

/* Botones de apertura */
.vfp-launch{margin:1rem 0}
.vfp-open{display:inline-flex;align-items:center;gap:.55em;padding:.85em 1.6em;border:1px solid var(--vfp-bar);border-radius:999px;background:var(--vfp-bar);color:#fff;font:inherit;font-weight:600;font-size:.92rem;cursor:pointer;transition:background .2s,color .2s}
.vfp-open:hover{background:var(--vfp-accent);border-color:var(--vfp-accent);color:var(--vfp-bar)}
.vfp-cover-btn{display:inline-flex;flex-direction:column;gap:.75rem;padding:0;border:0;background:none;cursor:pointer;color:inherit;font:inherit;text-align:center}
.vfp-cover-btn__img{display:block;width:min(280px,70vw);aspect-ratio:.7;background:var(--vfp-bg);border-radius:4px;overflow:hidden;box-shadow:0 18px 35px -15px rgba(41,39,32,.5);transition:transform .35s}
.vfp-cover-btn__img img{width:100%;height:100%;object-fit:cover;display:block}
.vfp-cover-btn:hover .vfp-cover-btn__img{transform:translateY(-4px) rotate(-1deg)}
.vfp-cover-btn__label{font-weight:600}
.vfp-notice{padding:1rem;border:1px dashed #b9a58a;border-radius:6px;color:#746451}

@media (prefers-reduced-motion:reduce){.vfp *{transition:none!important;animation:none!important}}

/* Tapas centradas */
.vfp__book .stf__block{transition:transform .45s cubic-bezier(.3,.7,.3,1)}
.vfp.is-cover-front .vfp__book .stf__block{transform:translateX(-25%)}
.vfp.is-cover-back .vfp__book .stf__block{transform:translateX(25%)}

/* Teléfono: botones flotantes (WhatsApp / chat) no tapan la barra del visor */
@media (max-width:599px){
	.vfp-bar-visible .wa-float,
	.vfp-bar-visible .joinchat,
	.vfp-bar-visible #ht-ctc-chat,
	.vfp-bar-visible .wa__btn_popup{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .2s,visibility .2s}
}
