/* AM Catalogues — visionneuse flipbook (lightbox) */
.amcfb{position:fixed;inset:0;z-index:1000000;background:rgba(8,8,8,.97);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
       display:none;flex-direction:column;font-family:Inter,system-ui,sans-serif;color:#fff}
.amcfb.on{display:flex}
.amcfb *{box-sizing:border-box}

.amcfb-head{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:14px;
            padding:12px 18px;flex:0 0 auto;background:#0a0a0a;border-bottom:1px solid #1d1d1d}
.amcfb-title{font-size:15px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.amcfb-close{width:40px;height:40px;flex:0 0 auto}

.amcfb-body{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:0 64px;overflow:hidden}
.amcfb-stage{width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:transform .2s;transform-origin:center center}
.amcfb-stage.zoomed{overflow:auto;cursor:grab;align-items:flex-start}
.amcfb-book{margin:0 auto}
.amcfb-page{background:#fff;overflow:hidden}
.amcfb-page canvas{width:100%;height:100%;display:block;object-fit:contain}
/* StPageFlip : ombrage léger sur la tranche */
.amcfb-book .stf__item{box-shadow:0 6px 30px rgba(0,0,0,.45)}

/* Flèches latérales */
.amcfb-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:46px;height:46px;border-radius:50%;
           border:1px solid rgba(255,255,255,.22);background:rgba(20,20,20,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
           color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
.amcfb-nav:hover{background:rgba(40,40,40,.9)}
.amcfb-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.amcfb-prev{left:12px}.amcfb-next{right:12px}

/* Barre d'outils bas */
.amcfb-bar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
           padding:10px 18px;background:#0a0a0a;border-top:1px solid #1d1d1d}
.amcfb-grp{display:flex;align-items:center;gap:6px}
.amcfb-btn{width:38px;height:38px;border-radius:9px;border:1px solid #262626;background:#141414;color:#d8d8d8;cursor:pointer;
           display:inline-flex;align-items:center;justify-content:center;padding:0;text-decoration:none;transition:background .15s,color .15s}
.amcfb-btn:hover{background:#222;color:#fff}
.amcfb-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.amcfb-pager{gap:4px}
.amcfb-pages{font-size:13px;color:#cfcfcf;display:inline-flex;align-items:center;gap:6px;margin:0 4px}
.amcfb-pin{width:46px;text-align:center;background:#141414;border:1px solid #262626;border-radius:7px;color:#fff;font-size:13px;padding:7px 4px;font-family:inherit}
.amcfb-pin:focus{outline:none;border-color:#555}

/* Miniatures */
.amcfb-thumbs{position:absolute;inset:0;background:rgba(10,10,10,.96);z-index:8;padding:24px;overflow-y:auto;
              display:flex;flex-wrap:wrap;gap:14px;align-content:flex-start;justify-content:center}
.amcfb-th{background:none;border:1px solid #2a2a2a;border-radius:8px;padding:6px;cursor:pointer;display:flex;flex-direction:column;
          align-items:center;gap:5px;transition:border-color .15s,transform .12s}
.amcfb-th:hover{border-color:#fff;transform:translateY(-2px)}
.amcfb-th canvas{width:120px;height:auto;display:block;background:#fff;border-radius:3px}
.amcfb-th-n{font-size:11px;color:#9a9a9a}

/* Loader / erreur */
.amcfb-loader{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
              z-index:6;color:#cfcfcf;font-size:14px}
.amcfb-spin{width:34px;height:34px;border:3px solid #333;border-top-color:#fff;border-radius:50%;animation:amcfb-s .8s linear infinite}
@keyframes amcfb-s{to{transform:rotate(360deg)}}
.amcfb-err{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#e7e7e7;font-size:14px;z-index:6}
.amcfb-errdl{display:inline-block;margin-top:12px;background:#fff;color:#0a0a0a;font-weight:700;padding:10px 18px;border-radius:9px;text-decoration:none}

@media (max-width:760px){
    .amcfb-body{padding:0 8px}
    .amcfb-nav{width:38px;height:38px}.amcfb-prev{left:4px}.amcfb-next{right:4px}
    .amcfb-bar{justify-content:center}
    .amcfb-th canvas{width:90px}
}
