/* Flyer Studio – catalogue feuilletable public (fonctionne dans n'importe quel thème) */
.fsv{--fsv-bg:#e9ebef;--fsv-ink:#1f2937;position:relative;margin:0 0 24px;padding:16px 12px 0;background:var(--fsv-bg);border-radius:16px;color:var(--fsv-ink);font:14px/1.3 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;outline:none;box-sizing:border-box;overflow:hidden}
.fsv *{box-sizing:border-box}
.fsv:focus-visible{box-shadow:0 0 0 3px #93c5fd}
.fsv-stage img{display:block;max-width:100%;height:auto;margin:0 auto 16px} /* affichage sans JavaScript */
.fsv-view{position:relative;display:flex;justify-content:center;align-items:center;perspective:2200px}
/* Pages */
.fsv-p{position:relative;width:100%;height:100%;background:#fff;user-select:none}
.fsv-p img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.fsv-p.fsv-empty{background:transparent}
.fsv-a{position:absolute;display:block;border-radius:8px;cursor:pointer;transition:background .2s,box-shadow .2s}
.fsv-a:hover,.fsv-a:focus-visible{background:rgba(37,99,235,.10);box-shadow:inset 0 0 0 2px rgba(37,99,235,.65);outline:none}
/* Livre (ordinateur) */
.fsv-book{position:relative;display:flex;transition:transform .7s cubic-bezier(.4,.1,.2,1);transform-style:preserve-3d;cursor:pointer}
.fsv-slot{position:relative;width:50%;height:100%}
.fsv-slot .fsv-p:not(.fsv-empty){box-shadow:0 10px 30px rgba(0,0,0,.18)}
.fsv-sl .fsv-p:not(.fsv-empty)::after,.fsv-sr .fsv-p:not(.fsv-empty)::after{content:"";position:absolute;top:0;bottom:0;width:14%;pointer-events:none}
.fsv-sl .fsv-p::after{right:0;background:linear-gradient(to left,rgba(0,0,0,.16),transparent)}
.fsv-sr .fsv-p::after{left:0;background:linear-gradient(to right,rgba(0,0,0,.16),transparent)}
.fsv-spine{position:absolute;left:50%;top:0;bottom:0;width:2px;margin-left:-1px;background:rgba(0,0,0,.08);pointer-events:none}
.fsv-leaf{position:absolute;top:0;width:50%;height:100%;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.45,.05,.25,1);z-index:3}
.fsv-leaf.fsv-fwd{left:50%;transform-origin:left center}
.fsv-leaf.fsv-bwd{left:0;transform-origin:right center}
.fsv-leaf.fsv-fwd.fsv-go{transform:rotateY(-180deg)}
.fsv-leaf.fsv-bwd.fsv-go{transform:rotateY(180deg)}
.fsv-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 10px 30px rgba(0,0,0,.2)}
.fsv-face::after{content:"";position:absolute;inset:0;pointer-events:none;transition:opacity .75s}
.fsv-back{transform:rotateY(180deg)}
.fsv-fwd .fsv-front::after{background:linear-gradient(to right,rgba(0,0,0,.18),transparent 30%)}
.fsv-fwd .fsv-back::after{background:linear-gradient(to left,rgba(0,0,0,.18),transparent 30%)}
.fsv-bwd .fsv-front::after{background:linear-gradient(to left,rgba(0,0,0,.18),transparent 30%)}
.fsv-bwd .fsv-back::after{background:linear-gradient(to right,rgba(0,0,0,.18),transparent 30%)}
.fsv-face .fsv-p.fsv-empty{background:#fff}
/* Défilement (mobile) */
.fsv-strip{display:flex;gap:12px;width:100%;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px calc(50% - var(--pw,88%) / 2) 6px}
.fsv-strip::-webkit-scrollbar{display:none}
.fsv-strip .fsv-p{flex:none;width:var(--pw,90%);aspect-ratio:595/842;height:auto;scroll-snap-align:center;box-shadow:0 8px 24px rgba(0,0,0,.16);border-radius:4px;overflow:hidden}
/* Barre d'outils */
.fsv-bar{position:relative;display:flex;align-items:center;gap:8px;padding:12px 2px 14px}
.fsv-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;height:44px;padding:0 12px;border:0;border-radius:999px;background:#fff;color:var(--fsv-ink);font:inherit;font-weight:600;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.fsv-btn:hover{background:#f8fafc}
.fsv-btn:disabled{opacity:.4;cursor:default}
.fsv-info{min-width:70px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}
.fsv-sp{flex:1}
.fsv-menu{position:absolute;right:0;bottom:62px;z-index:5;display:flex;flex-direction:column;min-width:210px;padding:6px;background:#fff;border-radius:14px;box-shadow:0 14px 40px rgba(0,0,0,.22)}
.fsv-menu[hidden]{display:none}
.fsv-mi{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:10px;background:none;color:var(--fsv-ink);font:inherit;text-align:left;cursor:pointer}
.fsv-mi:hover{background:#f3f4f6}
.fsv-hint{position:absolute;left:50%;bottom:84px;max-width:calc(100% - 24px);text-align:center;transform:translateX(-50%);padding:6px 12px;border-radius:99px;background:rgba(17,24,39,.78);color:#fff;font-size:12px;pointer-events:none;animation:fsv-hint 5s forwards}
@keyframes fsv-hint{0%,70%{opacity:1}100%{opacity:0;visibility:hidden}}
/* Plein écran */
.fsv:fullscreen,.fsv.fsv-max{border-radius:0;margin:0;display:flex;flex-direction:column;justify-content:center;background:#111827;--fsv-ink:#f9fafb}
.fsv.fsv-max{position:fixed;inset:0;z-index:99999}
.fsv:fullscreen .fsv-btn,.fsv.fsv-max .fsv-btn{background:rgba(255,255,255,.12);color:#fff;box-shadow:none}
.fsv:fullscreen .fsv-menu .fsv-mi,.fsv.fsv-max .fsv-menu .fsv-mi{color:#1f2937}
@media (max-width:719px){.fsv{padding:12px 0 0;border-radius:12px}.fsv-bar{padding:10px 10px 12px}.fsv-wide span{display:none}}
@media (prefers-reduced-motion:reduce){.fsv-leaf,.fsv-book{transition-duration:.01s}}
