
.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;
}
