/* ── 画廊基础 ── */
.mkl-gallery{width:100%}
.mkl-main-image-wrap{position:relative;width:100%;aspect-ratio:1/1;background:#F5F5F7;border-radius:12px;overflow:hidden;cursor:zoom-in}
.mkl-main-slide{display:none;width:100%;height:100%}
.mkl-main-slide.active{display:flex;align-items:center;justify-content:center}
.mkl-main-slide img{width:100%;height:100%;object-fit:contain}
.mkl-zoom-btn{position:absolute;top:10px;right:10px;background:rgba(255,255,255,.85);border:none;border-radius:6px;width:32px;height:32px;font-size:16px;cursor:pointer;opacity:0;transition:opacity .2s;display:flex;align-items:center;justify-content:center;z-index:2}
.mkl-main-image-wrap:hover .mkl-zoom-btn{opacity:1}
.mkl-thumbs{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.mkl-thumb{position:relative;width:60px;height:60px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;cursor:pointer;background:#F5F5F7;transition:border-color .2s;flex-shrink:0}
.mkl-thumb img{width:100%;height:100%;object-fit:contain}
.mkl-thumb.active{border-color:#0071e3}
.mkl-thumb-dot{display:block;width:6px;height:6px;border-radius:50%;background:#C7C7CC;margin:4px auto 0;transition:background .2s}
.mkl-thumb.active .mkl-thumb-dot{background:#0071e3}

/* ── 视频缩略图 ▶ 叠加 ── */
.mkl-thumb-video{position:relative}
.mkl-thumb-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:24px;height:24px;background:rgba(0,0,0,.55);border-radius:50%;pointer-events:none;z-index:2;display:flex;align-items:center;justify-content:center}
.mkl-thumb-play::after{content:'';display:block;width:0;height:0;border-style:solid;border-width:5px 0 5px 9px;border-color:transparent transparent transparent #fff;margin-left:2px}
.mkl-thumb-video:hover .mkl-thumb-play{background:rgba(0,0,0,.72)}

/* ── 视频播放器 ── */
.mkl-video-player{display:none;position:absolute;top:0;left:0;width:100%;height:100%;background:#000;z-index:3;align-items:center;justify-content:center}
.mkl-video-player.is-active{display:flex}
.mkl-video-player video{width:100%;height:100%;object-fit:contain}
.mkl-video-close{position:absolute;top:10px;right:10px;width:32px;height:32px;background:rgba(255,255,255,.2);border:none;border-radius:50%;cursor:pointer;z-index:4;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;transition:background .2s}
.mkl-video-close:hover{background:rgba(255,255,255,.4)}
.mkl-video-player.is-active ~ .mkl-zoom-btn{display:none}

/* ── Lightbox ── */
.mkl-lb-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.93);z-index:2147483647;align-items:center;justify-content:center}
.mkl-lb-overlay.open{display:flex}
.mkl-lb-img-wrap{display:flex;align-items:center;justify-content:center;width:90vw;height:85vh;max-width:1000px;position:relative}
.mkl-lb-img-wrap img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;transition:opacity .2s}
.mkl-lb-spinner{position:absolute;width:36px;height:36px;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:mkl-spin .7s linear infinite}
@keyframes mkl-spin{to{transform:rotate(360deg)}}
.mkl-lb-close-btn{position:fixed;top:16px;right:20px;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:18px;width:36px;height:36px;border-radius:50%;cursor:pointer;z-index:2147483647;display:flex;align-items:center;justify-content:center;transition:background .2s}
.mkl-lb-close-btn:hover{background:rgba(255,255,255,.3)}
.mkl-lb-prev-btn,.mkl-lb-next-btn{position:fixed;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.15);border:none;color:#fff;font-size:36px;width:50px;height:50px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:2147483647}
.mkl-lb-prev-btn{left:16px}
.mkl-lb-next-btn{right:16px}
.mkl-lb-prev-btn:hover,.mkl-lb-next-btn:hover{background:rgba(255,255,255,.3)}
.mkl-lb-counter-wrap{position:fixed;top:22px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.8);font-size:13px;font-family:"JetBrains Mono",monospace;z-index:2147483647;pointer-events:none}
