.mm-fb-open{overflow:hidden!important}
.mm-fb-open .elementor-lightbox{display:none!important}
.mm-fb-overlay{
  position:fixed;inset:0;z-index:999999;
  display:flex;flex-direction:column;
  background:rgba(10,10,12,.94);
  backdrop-filter:blur(8px);
  opacity:0;pointer-events:none;transition:opacity .28s ease;
  padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
  box-sizing:border-box;
}
.mm-fb-overlay.is-open{opacity:1;pointer-events:auto}
.mm-fb-top{
  flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;
  gap:10px;padding:12px 16px;color:#fff;
  font-family:Lato,Helvetica,Arial,sans-serif;
}
.mm-fb-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mm-fb-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.mm-fb-btn{
  appearance:none;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);
  color:#fff;border-radius:999px;padding:8px 14px;font-size:13px;cursor:pointer;
  text-decoration:none;transition:background .2s,border-color .2s;white-space:nowrap;
}
.mm-fb-btn:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.45);color:#fff}
.mm-fb-btn-icon{width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:20px}
.mm-fb-stage{
  flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center;
  padding:8px 56px 18px;position:relative;
}
.mm-fb-book-wrap{
  width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;position:relative;
  perspective:2200px;overflow:hidden;
}
.mm-fb-spread{
  display:flex;align-items:center;justify-content:center;
  gap:0;transform-style:preserve-3d;position:relative;
  filter:drop-shadow(0 24px 40px rgba(0,0,0,.5));
  width:auto;height:auto;max-width:100%;
}
.mm-fb-leaf{
  flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;
  background:#fff;overflow:hidden;position:relative;
  box-sizing:border-box;
}
.mm-fb-left{border-radius:4px 0 0 4px;transform-origin:right center;box-shadow:inset -10px 0 16px -12px rgba(0,0,0,.22)}
.mm-fb-right{border-radius:0 4px 4px 0;transform-origin:left center;box-shadow:inset 10px 0 16px -12px rgba(0,0,0,.18)}
.mm-fb-left.is-empty{
  background:transparent!important;box-shadow:none!important;
  visibility:hidden;
}
.mm-fb-leaf canvas{
  display:block;background:#fff;
  max-width:none!important;max-height:none!important;
}
.mm-fb-spread.flip-next .mm-fb-right{animation:mmFlipNext .48s ease}
.mm-fb-spread.flip-prev .mm-fb-left{animation:mmFlipPrev .48s ease}
@keyframes mmFlipNext{
  0%{transform:rotateY(0);filter:brightness(1)}
  45%{transform:rotateY(-92deg);filter:brightness(.75)}
  100%{transform:rotateY(0);filter:brightness(1)}
}
@keyframes mmFlipPrev{
  0%{transform:rotateY(0);filter:brightness(1)}
  45%{transform:rotateY(92deg);filter:brightness(.75)}
  100%{transform:rotateY(0);filter:brightness(1)}
}
.mm-fb-nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:3;
  width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.3);
  background:rgba(0,0,0,.45);color:#fff;cursor:pointer;font-size:24px;
  display:flex;align-items:center;justify-content:center;
  -webkit-tap-highlight-color:transparent;
}
.mm-fb-nav:hover{background:rgba(218,46,51,.92)}
.mm-fb-nav.prev{left:8px}
.mm-fb-nav.next{right:8px}
.mm-fb-meta{flex:0 0 auto;text-align:center;color:rgba(255,255,255,.85);font-size:13px;padding:0 16px 16px;font-family:Lato,Helvetica,Arial,sans-serif}
.mm-fb-loader{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:14px;color:#fff;z-index:5;background:rgba(12,12,14,.55);font-family:Lato,Helvetica,Arial,sans-serif;
}
.mm-fb-spinner{width:42px;height:42px;border-radius:50%;border:3px solid rgba(255,255,255,.2);border-top-color:#da2e33;animation:mm-fb-spin .8s linear infinite}
@keyframes mm-fb-spin{to{transform:rotate(360deg)}}
.mm-fb-progress{font-size:13px;opacity:.9}

@media (max-width:767px){
  .mm-fb-top{padding:10px 12px;gap:8px}
  .mm-fb-title{font-size:13px}
  .mm-fb-btn{padding:7px 10px;font-size:12px}
  .mm-fb-btn-icon{width:36px;height:36px}
  /* Narrow side gutter so the page can use almost full width; nav floats over edges */
  .mm-fb-stage{padding:4px 8px 8px}
  .mm-fb-nav{width:36px;height:36px;font-size:20px;background:rgba(0,0,0,.55)}
  .mm-fb-nav.prev{left:2px}
  .mm-fb-nav.next{right:2px}
  .mm-fb-left{display:none!important}
  .mm-fb-right{border-radius:4px;box-shadow:none}
  .mm-fb-spread{filter:drop-shadow(0 12px 24px rgba(0,0,0,.45))}
  .mm-fb-spread.flip-next .mm-fb-right,
  .mm-fb-spread.flip-prev .mm-fb-left{animation:none}
  .mm-fb-meta{padding:0 12px 10px;font-size:12px}
}
@media (max-width:380px){
  .mm-fb-download{padding:7px 8px}
}

/* Portadas clicables (Memoria destacada sin <a>) */
img.mm-fb-cover{
  cursor:pointer;
  transition:transform .25s ease, filter .25s ease;
}
img.mm-fb-cover:hover{
  transform:scale(1.01);
  filter:brightness(1.03);
}
img.mm-fb-cover:focus-visible{
  outline:3px solid #da2e33;
  outline-offset:4px;
}
