#lfpm-root{position:relative;z-index:999999}
.lfpm-popup{position:fixed;inset:0;pointer-events:none;z-index:999999}
.lfpm-dim{position:absolute;inset:0;background:rgba(15,15,15,.42);pointer-events:auto}
.lfpm-panel{position:absolute;width:min(var(--lfpm-w),calc(100vw - 32px));pointer-events:auto;box-shadow:0 18px 60px rgba(0,0,0,.18);background:#fff;overflow:visible;transform:translate(var(--lfpm-x),var(--lfpm-y))}
.lfpm-rounded .lfpm-panel,.lfpm-rounded .lfpm-slide img{border-radius:14px}
.lfpm-h-left .lfpm-panel{left:24px}.lfpm-h-center .lfpm-panel{left:50%;transform:translate(calc(-50% + var(--lfpm-x)),var(--lfpm-y))}.lfpm-h-right .lfpm-panel{right:24px}
.lfpm-v-top .lfpm-panel{top:24px}.lfpm-v-middle .lfpm-panel{top:50%;transform:translate(var(--lfpm-x),calc(-50% + var(--lfpm-y)))}.lfpm-h-center.lfpm-v-middle .lfpm-panel{transform:translate(calc(-50% + var(--lfpm-x)),calc(-50% + var(--lfpm-y)))}.lfpm-v-bottom .lfpm-panel{bottom:24px}

.lfpm-track{position:relative;overflow:hidden}
.lfpm-slide{display:none}
.lfpm-slide.is-active{display:block}

/* Slider: true horizontal slide + mouse drag + touch swipe */
.lfpm-popup[data-mode="slider"] .lfpm-panel{overflow:hidden}
.lfpm-popup[data-mode="slider"] .lfpm-track{display:flex;overflow:visible;will-change:transform;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab}
.lfpm-popup[data-mode="slider"] .lfpm-track.is-animating{transition:transform .48s cubic-bezier(.22,.61,.36,1)}
.lfpm-popup[data-mode="slider"] .lfpm-track.is-dragging{transition:none;cursor:grabbing}
.lfpm-popup[data-mode="slider"] .lfpm-slide{display:block;flex:0 0 100%;min-width:100%}
.lfpm-popup[data-mode="slider"] .lfpm-link,.lfpm-popup[data-mode="slider"] picture{display:block;width:100%}
.lfpm-popup[data-mode="slider"] img{-webkit-user-drag:none;user-drag:none;pointer-events:none}

.lfpm-popup[data-mode="separate"] .lfpm-track{display:flex;flex-direction:column;gap:14px}
.lfpm-popup[data-mode="separate"] .lfpm-slide{display:block}
.lfpm-slide img{display:block;width:100%;height:auto}
.lfpm-link{display:block}
.lfpm-x{position:absolute;right:8px;top:8px;z-index:7;width:34px;height:34px;border:0;border-radius:50%;background:rgba(0,0,0,.58);color:#fff;font-size:26px;line-height:30px;cursor:pointer}

/* Bullets only — no left/right buttons */
.lfpm-dots{position:absolute;left:50%;bottom:44px;transform:translateX(-50%);display:flex;align-items:center;gap:7px;z-index:6;padding:6px 9px;border-radius:999px;background:rgba(0,0,0,.12);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.lfpm-dots:empty{display:none}
.lfpm-dots button{appearance:none;width:6px;height:6px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.58);cursor:pointer;transition:width .22s ease,background .22s ease,transform .22s ease}
.lfpm-dots button.is-active{width:18px;background:#fff}

.lfpm-bottom{display:flex;justify-content:space-between;gap:10px;padding:9px 12px;background:#fff;font-size:12px}
.lfpm-bottom button{border:0;background:transparent;padding:2px;cursor:pointer;color:#444}

@media(max-width:767px){
  .lfpm-panel{width:var(--lfpm-mw)}
  .lfpm-h-left .lfpm-panel{left:12px}.lfpm-h-right .lfpm-panel{right:12px}.lfpm-v-top .lfpm-panel{top:12px}.lfpm-v-bottom .lfpm-panel{bottom:12px}
  .lfpm-dots{bottom:42px}
}

@media(prefers-reduced-motion:reduce){
  .lfpm-popup[data-mode="slider"] .lfpm-track.is-animating{transition-duration:.01ms}
  .lfpm-dots button{transition:none}
}
