
.fptf-magazine-viewport .shadow{

	-webkit-transition: -webkit-box-shadow 0.5s;

	-moz-transition: -moz-box-shadow 0.5s;

	-o-transition: -webkit-box-shadow 0.5s;

	-ms-transition: -ms-box-shadow 0.5s;



	-webkit-box-shadow:0 0 20px #ccc;

	-moz-box-shadow:0 0 20px #ccc;

	-o-box-shadow:0 0 20px #ccc;

	-ms-box-shadow:0 0 20px #ccc;

	box-shadow:0 0 20px #ccc;

}



.fptf-magazine .page{

	-webkit-box-shadow:0 0 20px rgba(0,0,0,0.2);

	-moz-box-shadow:0 0 20px rgba(0,0,0,0.2);

	-ms-box-shadow:0 0 20px rgba(0,0,0,0.2);

	-o-box-shadow:0 0 20px rgba(0,0,0,0.2);

	box-shadow:0 0 20px rgba(0,0,0,0.2);

}




.fptf-magazine .even .gradient{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;

	background:-webkit-gradient(linear, left top, right top, color-stop(0.95, rgba(0,0,0,0)), color-stop(1, rgba(0,0,0,0.15)));
	background-image:-webkit-linear-gradient(left, rgba(0,0,0,0) 95%, rgba(0,0,0,0.15) 100%);
	background-image:-moz-linear-gradient(left, rgba(0,0,0,0) 95%, rgba(0,0,0,0.15) 100%);
	background-image:-ms-linear-gradient(left, rgba(0,0,0,0) 95%, rgba(0,0,0,0.15) 100%);
	background-image:-o-linear-gradient(left, rgba(0,0,0,0) 95%, rgba(0,0,0,0.15) 100%);
	background-image:linear-gradient(left, rgba(0,0,0,0) 95%, rgba(0,0,0,0.15) 100%);
}

.fptf-magazine .odd .gradient{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;

	background:-webkit-gradient(linear, right top, left top, color-stop(0.95, rgba(0,0,0,0)), color-stop(1, rgba(0,0,0,0.10)));
	background-image:-webkit-linear-gradient(right, rgba(0,0,0,0) 95%, rgba(0,0,0,0.10) 100%);
	background-image:-moz-linear-gradient(right, rgba(0,0,0,0) 95%, rgba(0,0,0,0.10) 100%);
	background-image:-ms-linear-gradient(right, rgba(0,0,0,0) 95%, rgba(0,0,0,0.10) 100%);
	background-image:-o-linear-gradient(right, rgba(0,0,0,0) 95%, rgba(0,0,0,0.10) 100%);
	background-image:linear-gradient(right, rgba(0,0,0,0) 95%, rgba(0,0,0,0.10) 100%);
}

.fptf-magazine-viewport .zoom-in .even .gradient,
.fptf-magazine-viewport .zoom-in .odd .gradient{

	display:none;

}

/* Il viewport di base ha il cursore normale */
.fptf-magazine-viewport {
   /* overflow: hidden;
    width: 1000px; */
    width:100%;
    max-width:100%;
    height: auto;
    position: relative;
    z-index: 1000;
}


.fptf-magazine-viewport .page{

	background-color:white;

	background-repeat:no-repeat;

	background-size:100% 100%;

}

/* Il cursore a lente appare SOLO sulla pagina */
.fptf-magazine-viewport .page {
    cursor: zoom-in;
}

/* Evita la lente sugli angoli (gestiti da Turn.js per girare pagina) */
.page .turn-page-wrapper {
    cursor: default !important;
}

/* Quando il flipbook  zoomato, il cursore diventa una manina */
.fptf-magazine-viewport.zoomed .page {
    cursor: grab;
}

/* Mentre l'utente trascina, il cursore diventa "presa" */
.fptf-magazine-viewport.zoomed.dragging .page {
    cursor: grabbing;
}

/* ?? Stile base delle frecce */
/* ?? Stile base delle frecce */
.flipbook1-arrow1 {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.3); /* Sfondo semi-trasparente */
    color: white;
    border: none;
    font-size: 20px; /* Dimensione della freccia */
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    border-radius: 50%;
    transition: background 0.3s ease-in-out;
    text-align: center;
    font-weight: bold;
    font-family: sans-serif !important; /* Evita che si trasformi in emoji */
    z-index: 100;
}

/* ?? Effetto hover */
.flipbook1-arrow1:hover {
    background: rgba(0, 0, 0, 0.6);
}

/* ?? Aggiunge il simbolo delle frecce via CSS */
.left-arrow1::before {
    content: "<"; /* Simbolo freccia sinistra */
    font-size: 16px;
}

.right-arrow1::before {
    content: ">"; /* Simbolo freccia destra */
    font-size: 16px;
}

/* ?? Posizionamento delle frecce dentro il viewport */
.left-arrow1 {
    left: 10px; /* Distanza dal bordo sinistro */
}

.right-arrow1 {
    right: 10px; /* Distanza dal bordo destro */
}


#flipbook-loader {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    background: rgba(255, 255, 255, 0.9);
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    z-index: 100;
}

.loading-spinner {
    border: 5px solid rgba(0, 0, 0, 0.1);
    border-top: 5px solid #3498db;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 1s linear infinite;
    margin: 0 auto 10px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
/* Custom background selected in admin */
.fptf-magazine-viewport.fptf-custom-background{
    padding:34px 44px;
    border-radius:18px;
    box-sizing:border-box;
    background-repeat:no-repeat;
    overflow:visible;
}
.fptf-magazine-viewport.fptf-custom-background .container{
    display:flex;
    justify-content:center;
    align-items:center;
}
@media(max-width:600px){
    .fptf-magazine-viewport.fptf-custom-background{padding:18px 12px;border-radius:12px;}
}

/* ===== UI refresh: cleaner shadow, customizable arrow icons ===== */
.fptf-magazine-viewport.fptf-custom-background{
    padding:34px 46px 56px;
    border-radius:18px;
    overflow:hidden;
}
.fptf-magazine-viewport.fptf-custom-background .container{
    position:relative;
    z-index:2;
    display:flex;
    justify-content:center;
    align-items:center;
    filter:drop-shadow(0 20px 32px rgba(0,0,0,.18));
}
.fptf-magazine-viewport.fptf-custom-background .shadow{
    -webkit-box-shadow:none !important;
    -moz-box-shadow:none !important;
    box-shadow:none !important;
}
.fptf-magazine-viewport.fptf-custom-background .page{
    -webkit-box-shadow:0 10px 24px rgba(15,23,42,.16);
    -moz-box-shadow:0 10px 24px rgba(15,23,42,.16);
    box-shadow:0 10px 24px rgba(15,23,42,.16);
}
.fptf-magazine-viewport .flipbook1-arrow1{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:44px;
    height:44px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.38);
    background:rgba(15,23,42,.54);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    z-index:6;
    transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
    box-shadow:0 12px 24px rgba(15,23,42,.18);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}
.fptf-magazine-viewport .flipbook1-arrow1:hover{
    transform:translateY(-50%) scale(1.05);
    background:rgba(15,23,42,.78);
    box-shadow:0 16px 30px rgba(15,23,42,.24);
}
.fptf-magazine-viewport .flipbook1-arrow1:focus{
    outline:none;
    box-shadow:0 0 0 3px rgba(255,255,255,.26), 0 14px 28px rgba(15,23,42,.26);
}
.fptf-magazine-viewport .flipbook1-arrow1::before{
    display:block;
    line-height:1;
    font-weight:700;
    font-family:Arial, Helvetica, sans-serif !important;
    font-size:22px;
}
.fptf-magazine-viewport.fptf-arrow-style-chevron .left-arrow1::before{content:'‹';}
.fptf-magazine-viewport.fptf-arrow-style-chevron .right-arrow1::before{content:'›';}
.fptf-magazine-viewport.fptf-arrow-style-angle .left-arrow1::before{content:'❮';font-size:18px;}
.fptf-magazine-viewport.fptf-arrow-style-angle .right-arrow1::before{content:'❯';font-size:18px;}
.fptf-magazine-viewport.fptf-arrow-style-arrow .left-arrow1::before{content:'←';font-size:19px;}
.fptf-magazine-viewport.fptf-arrow-style-arrow .right-arrow1::before{content:'→';font-size:19px;}
.fptf-magazine-viewport.fptf-arrow-style-minimal .left-arrow1::before{content:'<';font-size:18px;}
.fptf-magazine-viewport.fptf-arrow-style-minimal .right-arrow1::before{content:'>';font-size:18px;}
.fptf-magazine-viewport .left-arrow1{left:12px;}
.fptf-magazine-viewport .right-arrow1{right:12px;}
@media(max-width:600px){
    .fptf-magazine-viewport.fptf-custom-background{padding:18px 12px 46px;border-radius:12px;}
    .fptf-magazine-viewport .flipbook1-arrow1{width:38px;height:38px;}
    .fptf-magazine-viewport .flipbook1-arrow1::before{font-size:18px;}
}

/* Arrow color override */
.fptf-magazine-viewport .flipbook1-arrow1{
    background:var(--fptf-arrow-color, #374151) !important;
    border-color:rgba(255,255,255,.34) !important;
}
.fptf-magazine-viewport .flipbook1-arrow1:hover{
    filter:brightness(.95);
}


/* Prevent cropped PDF pages on unusual page sizes */
.fptf-magazine .page{overflow:hidden!important;background:#fff!important;}
.fptf-magazine .page canvas{max-width:none!important;max-height:none!important;box-sizing:border-box!important;}


/* Avoid oversized corner/fold artefacts on the final page */
.fptf-magazine-viewport.fptf-last-page .page:last-child,
.fptf-magazine-viewport.fptf-last-page .page:last-child *{
    cursor: default !important;
}
.fptf-magazine-viewport.fptf-last-page .page:last-child .gradient{
    pointer-events:none !important;
}



/* Final page as single cover, without adding artificial blank pages */
.fptf-magazine-viewport.fptf-last-page-single .fptf-magazine{
    margin-left:auto !important;
    margin-right:auto !important;
}


/* Hide any generated blank page: the last page must remain a single final cover */
.fptf-magazine-viewport.fptf-last-page-single .fptf-magazine .page:not([data-page-number]),
.fptf-magazine-viewport.fptf-last-page-single .fptf-magazine .page[data-page-number=""],
.fptf-magazine-viewport.fptf-last-page-single .fptf-magazine .fptf-blank-page{
    visibility:hidden !important;
    pointer-events:none !important;
    opacity:0 !important;
}


/* v11 final page layout: keep turn.js double geometry, hide only fake/empty internal pages */
.fptf-magazine .fptf-blank-page,
.fptf-magazine .page[aria-hidden="true"]{
    background:transparent !important;
    box-shadow:none !important;
}
.fptf-magazine .page[aria-hidden="true"] canvas,
.fptf-magazine .page[aria-hidden="true"] .gradient{
    display:none !important;
}


/* v12 cover/final single: keep double-width book area, center the actual page */
.fptf-magazine-viewport.fptf-final-or-cover-single .fptf-magazine{
    margin-left:auto !important;
    margin-right:auto !important;
}
.fptf-magazine-viewport.fptf-final-or-cover-single .fptf-magazine .page:not([aria-hidden="true"]){
    overflow:hidden !important;
}


/* v13: keep desktop double geometry on first/last page; hide only empty Turn.js pages */
.fptf-magazine-viewport.fptf-last-page-single .page[aria-hidden="true"],
.fptf-magazine-viewport.fptf-first-page-single .page[aria-hidden="true"]{
    visibility:hidden !important;
    background:transparent !important;
    box-shadow:none !important;
}

/* Standalone clickable PDF annotations */
.fptf-magazine .page { position: relative; }
.fptf-magazine .pdf-link-overlay {
  pointer-events: auto !important;
  cursor: pointer !important;
  opacity: 0 !important;
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  z-index: 2147483646 !important;
}
.fptf-magazine .pdf-link-overlay:focus-visible {
  opacity: .12 !important;
  outline: 2px solid currentColor !important;
}

/* Lazy page placeholders */
.fptf-magazine .fptf-page-placeholder{display:flex;align-items:center;justify-content:center;background:#fff;}
.fptf-page-loading{width:28px;height:28px;border:3px solid rgba(0,0,0,.10);border-top-color:#374151;border-radius:50%;animation:fptfPageSpin .8s linear infinite;}
@keyframes fptfPageSpin{to{transform:rotate(360deg)}}
.pdf-link-overlay{transition:background-color .12s ease;}
.pdf-link-overlay:hover{background:rgba(0,0,0,.02);cursor:pointer!important;}

/* Selva PDF Flipbook 2.0 - DFlip-inspired presentation */
.fptf-magazine-viewport {
    --fptf-shadow-opacity: .55;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    border-radius: 12px;
    padding: 62px 54px 68px;
    min-height: 520px;
    perspective: 1800px;
    background: #1f2937;
}
.fptf-magazine-viewport .container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: none;
    display: flex;
    align-items: center;
    justify-content: center;
}
.fptf-magazine-viewport .fptf-magazine {
    position: relative;
    margin: 0 auto;
    transform-style: preserve-3d;
    will-change: transform;
}
.fptf-magazine-viewport .page {
    background: #fff;
    box-shadow: 0 9px 26px rgba(0,0,0,var(--fptf-shadow-opacity));
    backface-visibility: hidden;
}
.fptf-magazine-viewport .gradient {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 3;
    background: linear-gradient(90deg, rgba(0,0,0,.07), transparent 18%, transparent 82%, rgba(0,0,0,.07));
}
.fptf-toolbar {
    position: absolute;
    left: 50%;
    bottom: 12px;
    transform: translateX(-50%);
    z-index: 50;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 7px 9px;
    background: rgba(17,24,39,.94);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(0,0,0,.25);
    backdrop-filter: blur(10px);
}
.fptf-toolbar button,
.fptf-toolbar-link {
    width: 34px;
    height: 34px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: transparent;
    border: 0;
    border-radius: 7px;
    text-decoration: none;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
}
.fptf-toolbar button:hover,
.fptf-toolbar-link:hover { background: rgba(255,255,255,.12); color:#fff; }
.fptf-toolbar-sep { width: 1px; height: 22px; background: rgba(255,255,255,.16); margin: 0 4px; }
.fptf-page-indicator { display:inline-flex; align-items:center; gap:6px; color:#fff; font-size:13px; padding:0 5px; }
.fptf-page-indicator input { width:42px; height:30px; text-align:center; border:1px solid rgba(255,255,255,.18); border-radius:6px; background:#111827; color:#fff; }
.fptf-page-indicator span { white-space:nowrap; }
.fptf-magazine-viewport .flipbook1-arrow1 {
    z-index: 40;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 60px;
    border-radius: 11px;
    border: 1px solid rgba(255,255,255,.15);
    background: rgba(17,24,39,.72);
    box-shadow: 0 6px 16px rgba(0,0,0,.20);
    color: #fff;
}
.fptf-magazine-viewport .left-arrow1 { left: 12px; }
.fptf-magazine-viewport .right-arrow1 { right: 12px; }
.fptf-magazine-viewport .flipbook1-arrow1:hover { background: rgba(17,24,39,.90); }
.fptf-magazine-viewport.fptf-is-zoomed .container { overflow: visible; }
.fptf-magazine-viewport.fptf-dragging { cursor: grabbing; }
.pdf-link-overlay { cursor: pointer !important; }
.fptf-page-loading { display:flex; align-items:center; justify-content:center; width:100%; height:100%; }
.fptf-page-loading span { width:28px; height:28px; border:3px solid rgba(0,0,0,.12); border-top-color:#374151; border-radius:50%; animation:fptf-spin .8s linear infinite; }
@keyframes fptf-spin { to { transform: rotate(360deg); } }
@media (max-width: 700px) {
    .fptf-magazine-viewport { padding: 48px 10px 60px; border-radius: 0; }
    .fptf-toolbar { max-width: calc(100% - 18px); overflow-x:auto; }
    .fptf-toolbar button, .fptf-toolbar-link { flex:0 0 auto; }
    .fptf-magazine-viewport .flipbook1-arrow1 { width:36px; height:52px; }
}


/* ===== Selva PDF Flipbook 2.1 responsive/container-safe layer ===== */
.fptf-magazine-viewport {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    contain: layout paint !important;
    z-index: 0 !important;
}
.fptf-magazine-viewport .container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}
.fptf-magazine-viewport .fptf-magazine {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.fptf-magazine-viewport .fptf-magazine .page,
.fptf-magazine-viewport .fptf-magazine .page-wrapper,
.fptf-magazine-viewport .fptf-magazine .turn-page-wrapper {
    box-sizing: border-box !important;
}
.fptf-magazine-viewport .fptf-magazine canvas {
    max-width: 100% !important;
}
.fptf-magazine-viewport .flipbook1-arrow1 {
    z-index: 15 !important;
}
.fptf-toolbar {
    max-width: calc(100% - 24px) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    scrollbar-width: thin;
}
.fptf-toolbar > * { flex: 0 0 auto; }
.fptf-magazine-viewport.fptf-is-zoomed .container {
    overflow: hidden !important;
}
.fptf-magazine-viewport.fptf-is-zoomed .fptf-magazine {
    max-width: none !important;
}
/* Keep the viewer below the page header and inside Elementor's stacking context. */
.elementor .fptf-magazine-viewport,
.elementor-widget .fptf-magazine-viewport {
    z-index: 0 !important;
}
@media (max-width: 767px) {
    .fptf-magazine-viewport {
        padding: 46px 6px 58px !important;
        border-radius: 10px !important;
        perspective: none !important;
    }
    .fptf-magazine-viewport .container {
        align-items: flex-start !important;
        justify-content: center !important;
    }
    .fptf-magazine-viewport .flipbook1-arrow1 {
        width: 34px !important;
        height: 46px !important;
        top: 50% !important;
    }
    .fptf-magazine-viewport .left-arrow1 { left: 4px !important; }
    .fptf-magazine-viewport .right-arrow1 { right: 4px !important; }
    .fptf-toolbar {
        left: 6px !important;
        right: 6px !important;
        bottom: 8px !important;
        transform: none !important;
        width: auto !important;
        max-width: none !important;
        justify-content: flex-start !important;
        gap: 2px !important;
        padding: 6px 7px !important;
        border-radius: 9px !important;
        -webkit-overflow-scrolling: touch;
    }
    .fptf-toolbar button,
    .fptf-toolbar-link {
        width: 32px !important;
        height: 32px !important;
        font-size: 16px !important;
    }
    .fptf-page-indicator { font-size: 12px !important; }
    .fptf-page-indicator input { width: 38px !important; }
}
@media (max-width: 420px) {
    .fptf-magazine-viewport {
        padding-left: 3px !important;
        padding-right: 3px !important;
    }
    .fptf-magazine-viewport .flipbook1-arrow1 {
        width: 30px !important;
        height: 42px !important;
        opacity: .92;
    }
}
\n\n/* ===== Selva PDF Flipbook 2.3 - responsive single-page centering + Spanish UI ===== */\n.fptf-magazine-viewport .fptf-magazine canvas { max-width:none !important; max-height:none !important; }\n.fptf-magazine-viewport .fptf-magazine .page { overflow:hidden !important; }\n.fptf-magazine-viewport:fullscreen,\n.fptf-magazine-viewport:-webkit-full-screen {\n    position:fixed !important; inset:0 !important; width:100vw !important; height:100vh !important;\n    max-width:none !important; max-height:none !important; min-width:0 !important; min-height:0 !important;\n    margin:0 !important; padding:40px 48px 70px !important; border-radius:0 !important;\n    overflow:hidden !important; box-sizing:border-box !important; z-index:2147483000 !important;\n    background:#111827 !important;\n}\n.fptf-magazine-viewport:fullscreen .container,\n.fptf-magazine-viewport:-webkit-full-screen .container {\n    width:100% !important; height:100% !important; max-width:none !important; max-height:none !important;\n    display:flex !important; align-items:center !important; justify-content:center !important; overflow:hidden !important;\n}\n.fptf-magazine-viewport:fullscreen .fptf-magazine,\n.fptf-magazine-viewport:-webkit-full-screen .fptf-magazine { flex:0 0 auto !important; max-width:none !important; }\n.fptf-magazine-viewport:fullscreen .fptf-toolbar,\n.fptf-magazine-viewport:-webkit-full-screen .fptf-toolbar { bottom:12px !important; max-width:calc(100vw - 24px) !important; }\n.fptf-magazine-viewport:fullscreen .flipbook1-arrow1,\n.fptf-magazine-viewport:-webkit-full-screen .flipbook1-arrow1 { z-index:60 !important; }\n@media (max-width:767px) {\n    .fptf-magazine-viewport:fullscreen, .fptf-magazine-viewport:-webkit-full-screen { padding:18px 10px 60px !important; }\n    .fptf-magazine-viewport:fullscreen .flipbook1-arrow1, .fptf-magazine-viewport:-webkit-full-screen .flipbook1-arrow1 { width:34px !important; height:46px !important; }\n    .fptf-magazine-viewport:fullscreen .left-arrow1, .fptf-magazine-viewport:-webkit-full-screen .left-arrow1 { left:4px !important; }\n    .fptf-magazine-viewport:fullscreen .right-arrow1, .fptf-magazine-viewport:-webkit-full-screen .right-arrow1 { right:4px !important; }\n}\n

/* ===== Selva PDF Flipbook 2.3 - centered single-page mode ===== */
.fptf-magazine-viewport.fptf-single-view .container,
.fptf-magazine-viewport.fptf-double-view .container {
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
}
.fptf-magazine-viewport.fptf-single-view .fptf-magazine {
    margin-left:auto !important;
    margin-right:auto !important;
    left:auto !important;
    right:auto !important;
}
.fptf-magazine-viewport.fptf-single-view .fptf-magazine .page,
.fptf-magazine-viewport.fptf-single-view .fptf-magazine .turn-page-wrapper {
    margin-left:auto !important;
    margin-right:auto !important;
}
@media (max-width:767px){
    .fptf-magazine-viewport.fptf-single-view .container { justify-content:center !important; }
    .fptf-magazine-viewport.fptf-single-view .fptf-magazine { margin-left:auto !important; margin-right:auto !important; }
}


/* ===== Selva PDF Flipbook 2.4.2 - toolbar clearance ===== */
/* Keep a visible breathing room between the rendered PDF and the floating controls. Normal mode reserves more space because the toolbar overlays the viewport. */
.fptf-magazine-viewport .fptf-toolbar {
    bottom: 10px !important;
}
.fptf-magazine-viewport:fullscreen .fptf-toolbar,
.fptf-magazine-viewport:-webkit-full-screen .fptf-toolbar {
    bottom: 12px !important;
}
@media (max-width: 767px) {
    .fptf-magazine-viewport .fptf-toolbar { bottom: 8px !important; }
    .fptf-magazine-viewport:fullscreen .fptf-toolbar,
    .fptf-magazine-viewport:-webkit-full-screen .fptf-toolbar { bottom: 10px !important; }
}

/* ===== Selva PDF Flipbook 2.5.1 - compact toolbar + centered zoom ===== */
.fptf-toolbar {
    --fptf-toolbar-scale: 1;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) scale(var(--fptf-toolbar-scale)) !important;
    transform-origin: center bottom !important;
    width: max-content !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: nowrap !important;
    gap: 1px !important;
    padding: 4px 6px !important;
    border-radius: 8px !important;
}
.fptf-toolbar button,
.fptf-toolbar-link {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    font-size: 14px !important;
    border-radius: 6px !important;
}
.fptf-toolbar-sep { height: 18px !important; margin: 0 2px !important; }
.fptf-page-indicator { gap: 3px !important; padding: 0 2px !important; font-size: 12px !important; }
.fptf-page-indicator input { width: 36px !important; height: 25px !important; font-size: 12px !important; }
.fptf-toolbar [data-action="zoom-reset"] { width: 34px !important; min-width: 34px !important; font-size: 12px !important; }

/* The zoom is always anchored to the center of the book; drag can still move the book after zooming. */
.fptf-magazine-viewport.fptf-is-zoomed .fptf-magazine {
    transform-origin: 50% 50% !important;
}

@media (max-width: 767px) {
    .fptf-toolbar {
        bottom: 8px !important;
        width: max-content !important;
        max-width: none !important;
        overflow: visible !important;
        justify-content: center !important;
    }
    .fptf-toolbar button,
    .fptf-toolbar-link {
        width: 26px !important;
        min-width: 26px !important;
        height: 26px !important;
        font-size: 13px !important;
    }
    .fptf-toolbar [data-action="zoom-reset"] { width: 32px !important; min-width: 32px !important; }
    .fptf-page-indicator input { width: 34px !important; height: 24px !important; }
}
