/*! PhotoSwipe main CSS by Dmytro Semenov | photoswipe.com */.pswp{--pswp-bg:#000;--pswp-placeholder-bg:#222;--pswp-root-z-index:100000;--pswp-preloader-color:rgba(79, 79, 79, 0.4);--pswp-preloader-color-secondary:rgba(255, 255, 255, 0.9);--pswp-icon-color:#fff;--pswp-icon-color-secondary:#4f4f4f;--pswp-icon-stroke-color:#4f4f4f;--pswp-icon-stroke-width:2px;--pswp-error-text-color:var(--pswp-icon-color)}.pswp{position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--pswp-root-z-index);display:none;touch-action:none;outline:0;opacity:.003;contain:layout style size;-webkit-tap-highlight-color:transparent}.pswp:focus{outline:0}.pswp *{box-sizing:border-box}.pswp img{max-width:none}.pswp--open{display:block}.pswp,.pswp__bg{transform:translateZ(0);will-change:opacity}.pswp__bg{opacity:.005;background:var(--pswp-bg)}.pswp,.pswp__scroll-wrap{overflow:hidden}.pswp__bg,.pswp__container,.pswp__content,.pswp__img,.pswp__item,.pswp__scroll-wrap,.pswp__zoom-wrap{position:absolute;top:0;left:0;width:100%;height:100%}.pswp__img,.pswp__zoom-wrap{width:auto;height:auto}.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img{cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.pswp--click-to-zoom.pswp--zoomed-in .pswp__img{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,.pswp__img{cursor:-webkit-zoom-out;cursor:-moz-zoom-out;cursor:zoom-out}.pswp__button,.pswp__container,.pswp__counter,.pswp__img{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pswp__item{z-index:1;overflow:hidden}.pswp__hidden{display:none!important}.pswp__content{pointer-events:none}.pswp__content>*{pointer-events:auto}.pswp__error-msg-container{display:grid}.pswp__error-msg{margin:auto;font-size:1em;line-height:1;color:var(--pswp-error-text-color)}.pswp .pswp__hide-on-close{opacity:.005;will-change:opacity;transition:opacity var(--pswp-transition-duration) cubic-bezier(.4,0,.22,1);z-index:10;pointer-events:none}.pswp--ui-visible .pswp__hide-on-close{opacity:1;pointer-events:auto}.pswp__button{position:relative;display:block;width:50px;height:60px;padding:0;margin:0;overflow:hidden;cursor:pointer;background:0 0;border:0;box-shadow:none;opacity:.85;-webkit-appearance:none;-webkit-touch-callout:none}.pswp__button:active,.pswp__button:focus,.pswp__button:hover{transition:none;padding:0;background:0 0;border:0;box-shadow:none;opacity:1}.pswp__button:disabled{opacity:.3;cursor:auto}.pswp__icn{fill:var(--pswp-icon-color);color:var(--pswp-icon-color-secondary)}.pswp__icn{position:absolute;top:14px;left:9px;width:32px;height:32px;overflow:hidden;pointer-events:none}.pswp__icn-shadow{stroke:var(--pswp-icon-stroke-color);stroke-width:var(--pswp-icon-stroke-width);fill:none}.pswp__icn:focus{outline:0}.pswp__img--with-bg,div.pswp__img--placeholder{background:var(--pswp-placeholder-bg)}.pswp__top-bar{position:absolute;left:0;top:0;width:100%;height:60px;display:flex;flex-direction:row;justify-content:flex-end;z-index:10;pointer-events:none!important}.pswp__top-bar>*{pointer-events:auto;will-change:opacity}.pswp__button--close{margin-right:6px}.pswp__button--arrow{position:absolute;top:0;width:75px;height:100px;top:50%;margin-top:-50px}.pswp__button--arrow:disabled{display:none;cursor:default}.pswp__button--arrow .pswp__icn{top:50%;margin-top:-30px;width:60px;height:60px;background:0 0;border-radius:0}.pswp--one-slide .pswp__button--arrow{display:none}.pswp--touch .pswp__button--arrow{visibility:hidden}.pswp--has_mouse .pswp__button--arrow{visibility:visible}.pswp__button--arrow--prev{right:auto;left:0}.pswp__button--arrow--next{right:0}.pswp__button--arrow--next .pswp__icn{left:auto;right:14px;transform:scale(-1,1)}.pswp__button--zoom{display:none}.pswp--zoom-allowed .pswp__button--zoom{display:block}.pswp--zoomed-in .pswp__zoom-icn-bar-v{display:none}.pswp__preloader{position:relative;overflow:hidden;width:50px;height:60px;margin-right:auto}.pswp__preloader .pswp__icn{opacity:0;transition:opacity .2s linear;animation:pswp-clockwise .6s linear infinite}.pswp__preloader--active .pswp__icn{opacity:.85}@keyframes pswp-clockwise{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.pswp__counter{height:30px;margin-top:15px;margin-inline-start:20px;font-size:14px;line-height:30px;color:var(--pswp-icon-color);text-shadow:1px 1px 3px var(--pswp-icon-color-secondary);opacity:.85}.pswp--one-slide .pswp__counter{display:none}

/* 自定义样式 - 圆点指示器和浅色主题 */
.pswp--light{--pswp-bg:rgba(255,255,255,1);--pswp-icon-color:#333;--pswp-icon-color-secondary:#000;--pswp-icon-stroke-color:#888}
.pswp--light .pswp__bg{background:var(--pswp-bg)}
.pswp--light .pswp__button{color:#333}
.pswp--light .pswp__button:hover{color:#000}
.pswp--light .pswp__counter{color:#333;text-shadow:none}

/* 美化关闭按钮 - 无背景，仅图标 */
.pswp__button--close{
    width:44px!important;
    height:44px!important;
    background:transparent!important;
    border-radius:0!important;
    margin:8px!important;
    transition:opacity .3s cubic-bezier(.4,0,.2,1)!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
}
.pswp__button--close:hover{
    background:transparent!important;
    transform:none!important;
    box-shadow:none!important;
    opacity:.7!important;
}
.pswp__button--close:active{
    transform:none!important;
    opacity:.5!important;
}
.pswp__button--close .pswp__icn{
    top:50%!important;
    left:50%!important;
    transform:translate(-50%,-50%)!important;
    width:24px!important;
    height:24px!important;
    margin:0!important;
}
.pswp--light .pswp__button--close{
    background:transparent!important;
    box-shadow:none!important;
}
.pswp--light .pswp__button--close:hover{
    background:transparent!important;
    box-shadow:none!important;
}
.pswp-dots{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:100;pointer-events:none}
.pswp-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.5);border:none;padding:0;cursor:pointer;pointer-events:all;transition:all .2s ease;opacity:.5}
.pswp-dot:hover{opacity:.8;transform:scale(1.2)}
.pswp-dot--active{opacity:1;background:rgba(255,255,255,1);transform:scale(1.3)}
.pswp--light .pswp-dot{background:rgba(0,0,0,.3)}
.pswp--light .pswp-dot:hover{background:rgba(0,0,0,.5)}
.pswp--light .pswp-dot--active{background:rgba(0,0,0,.8)}

/* 优化切换动画，减少闪烁 */
.pswp__item{
    will-change:transform,opacity;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
    transform:translateZ(0);
    -webkit-transform:translateZ(0);
}
.pswp__img{
    will-change:transform;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
    transition:opacity .3s cubic-bezier(.4,0,.22,1);
    /* 确保不设置固定宽高，让 PhotoSwipe 自动计算 */
    max-width:none!important;
    max-height:none!important;
}
.pswp__zoom-wrap{
    will-change:transform;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
    transition:transform .3s cubic-bezier(.4,0,.22,1);
}
.pswp__container{
    will-change:transform;
    transition:transform .3s cubic-bezier(.4,0,.22,1);
}
/* 图片加载时的平滑显示 */
.pswp__img--placeholder{
    opacity:0;
    transition:opacity .2s ease;
}
.pswp__img--placeholder.pswp__img--loaded{
    opacity:1;
}
/* 减少切换时的闪烁 */
.pswp__content{
    will-change:transform;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
}
/* 优化主滚动容器的过渡 */
.pswp__scroll-wrap{
    will-change:transform;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
}