@charset "UTF-8";
/**
 * 虎纠电竞 H5 —— 样式（自动生成，请勿手改）
 * ================================================
 * 由 tools/build-css.js 生成。
 *   ① 原站样式（全局 + 落地页 + 详情页，保留 [data-v-xxx] 作用域）
 *   ② vant 2.13.2 reset
 *   ③ vant 2.13.2 按需组件样式
 *
 * ⚠️ [data-v-xxx] 属性由 assets/js/app.js 在渲染后注入，勿手工删除。
 *
 * 重跑: node tools/build-css.js
 */

/* ══════════ ① 原站全局规则 ══════════ */
html{background-color:#f7f8fa}
#app{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#2c3e50}

/* ══════════ ② 原站 · 落地页（data-v-b3cdf68a）══════════ */
.block[data-v-b3cdf68a]{width:90vw;border:3px solid #fff;-webkit-box-shadow:0 8px 25px rgba(0,0,0,.08235294117647059);box-shadow:0 8px 25px rgba(0,0,0,.08235294117647059);margin:0 auto 20px;border-radius:20px;overflow:hidden}
.block-bar[data-v-b3cdf68a]{height:55px;background:linear-gradient(135deg,#f9cfe2 100%,#fffdf7 0);font-size:1.4em;text-align:center;font-weight:700;color:#fff;line-height:2.5em;text-shadow:2px 2px 2px #ccc}
.block-content[data-v-b3cdf68a]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;padding-bottom:10px;background-color:#fff}
.item[data-v-b3cdf68a]{width:23vw;height:28vw;margin-top:15px}
.item-logo[data-v-b3cdf68a]{border-radius:40px;overflow:hidden;-webkit-box-shadow:0 8px 25px rgba(0,0,0,.08235294117647059);box-shadow:0 8px 25px rgba(0,0,0,.08235294117647059)}
.item-logo[data-v-b3cdf68a],.item-logo img[data-v-b3cdf68a]{height:80px;width:80px;margin:0 auto}
.item-title[data-v-b3cdf68a]{text-align:center;padding-top:10px;font-size:.8em;font-weight:700}
.bottom[data-v-b3cdf68a]{padding-top:20px;background:linear-gradient(135deg,#f9cfe2 100%,#fffdf7 0)}
.bottom-line[data-v-b3cdf68a]{text-align:center;margin:20px;font-size:.9em;font-weight:700}
.bottom-block[data-v-b3cdf68a]{border:1px solid hsla(0,0%,100%,.7333333333333333);text-align:center;border-radius:10px;padding:1em;width:85vw;margin:20px auto;background-color:hsla(0,0%,100%,.4);font-size:.9em;line-height:2em}
.bottom-divider[data-v-b3cdf68a]{border-bottom:2px solid hsla(0,0%,100%,.4)}
.bottom-divider-thin[data-v-b3cdf68a]{border-bottom:1px solid hsla(0,0%,100%,.4)}
.footer[data-v-b3cdf68a]{color:#2c3e50;padding:40px 0 0}
.copy-right[data-v-b3cdf68a]{text-align:center;font-size:.9em}
.tech-support[data-v-b3cdf68a]{padding:10px 0 20px}

/* ══════════ ③ 原站 · 详情页（data-v-2484fd77）══════════ */
.go-back[data-v-2484fd77]{border-radius:10px;width:90px;text-align:center;padding:.5em 0;font-size:.9em;position:relative;top:10px;left:10px;color:#fff;text-shadow:2px 2px 2px #ccc;-webkit-box-shadow:0 8px 25px rgba(0,0,0,.08235294117647059);box-shadow:0 8px 25px rgba(0,0,0,.08235294117647059);background:linear-gradient(135deg,#f9cfe2 100%,#fffdf7 0)}
.wrapper[data-v-2484fd77]{width:calc(100vw - 20px);margin:25px auto 0;border:2px solid #fff;border-radius:20px;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.08235294117647059);box-shadow:0 2px 15px rgba(0,0,0,.08235294117647059);overflow:hidden;background:linear-gradient(135deg,#f9cfe2,#fffdf7)}
.item-bag[data-v-2484fd77]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;background-color:hsla(0,0%,100%,.9490196078431372);padding-bottom:1em;margin-top:4px}
.item[data-v-2484fd77]{font-weight:700;border:2px solid #fff;padding:.8em 1em;border-radius:22px;margin:1em .6em 0;font-size:.8em;-webkit-box-shadow:0 4px 8px rgba(0,0,0,.08235294117647059);box-shadow:0 4px 8px rgba(0,0,0,.08235294117647059)}
.item-active[data-v-2484fd77]{border:2px solid #f7c0d8;background:linear-gradient(135deg,#f9cfe2 40%,#fffdf7)}
.detail-holder[data-v-2484fd77]{width:calc(100vw - 20px);margin:4px auto 0;background:#fff;padding:0 0 1em;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.08235294117647059);box-shadow:0 2px 15px rgba(0,0,0,.08235294117647059)}
.image-holder[data-v-2484fd77]{width:calc(100% - 20px);margin:0 auto}
.image-holder img[data-v-2484fd77]{width:100%}
.footer[data-v-2484fd77]{margin-top:auto}
.copy-right[data-v-2484fd77]{text-align:center;padding-top:14px;font-size:.8em;color:rgba(44,62,80,.3333333333333333)}
.tech-support[data-v-2484fd77]{padding-bottom:30px}

/* ══════════ ④ vant reset（原站依赖）══════════ */
html{-webkit-tap-highlight-color:transparent}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Helvetica,Segoe UI,Arial,Roboto,'PingFang SC',miui,'Hiragino Sans GB','Microsoft Yahei',sans-serif}
a{text-decoration:none}
button,input,textarea{color:inherit;font:inherit}
[class*=van-]:focus,a:focus,button:focus,input:focus,textarea:focus{outline:0}
ol,ul{margin:0;padding:0;list-style:none}

/* ══════════ ⑤ vant 组件按需提取（105 条）══════════ */
.van-overlay{position:fixed;top:0;left:0;z-index:1;width:100%;height:100%;background-color:rgba(0,0,0,.7)}
.van-image{position:relative;display:inline-block}
.van-image--round{overflow:hidden;border-radius:50%}
.van-image--round img{border-radius:inherit}
.van-image__error,.van-image__img,.van-image__loading{display:block;width:100%;height:100%}
.van-image__error,.van-image__loading{position:absolute;top:0;left:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;color:#969799;font-size:14px;background-color:#f7f8fa}
.van-image__loading-icon{color:#dcdee0;font-size:32px}
.van-image__error-icon{color:#dcdee0;font-size:32px}
.van-popup{position:fixed;max-height:100%;overflow-y:auto;background-color:#fff;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;-webkit-overflow-scrolling:touch}
.van-popup--center{top:50%;left:50%;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}
.van-popup--center.van-popup--round{border-radius:16px}
.van-popup--top{top:0;left:0;width:100%}
.van-popup--top.van-popup--round{border-radius:0 0 16px 16px}
.van-popup--right{top:50%;right:0;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}
.van-popup--right.van-popup--round{border-radius:16px 0 0 16px}
.van-popup--bottom{bottom:0;left:0;width:100%}
.van-popup--bottom.van-popup--round{border-radius:16px 16px 0 0}
.van-popup--left{top:50%;left:0;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}
.van-popup--left.van-popup--round{border-radius:0 16px 16px 0}
.van-popup--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}
.van-popup-slide-bottom-enter-active,.van-popup-slide-left-enter-active,.van-popup-slide-right-enter-active,.van-popup-slide-top-enter-active{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out}
.van-popup-slide-bottom-leave-active,.van-popup-slide-left-leave-active,.van-popup-slide-right-leave-active,.van-popup-slide-top-leave-active{-webkit-transition-timing-function:ease-in;transition-timing-function:ease-in}
.van-popup-slide-top-enter,.van-popup-slide-top-leave-active{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}
.van-popup-slide-right-enter,.van-popup-slide-right-leave-active{-webkit-transform:translate3d(100%,-50%,0);transform:translate3d(100%,-50%,0)}
.van-popup-slide-bottom-enter,.van-popup-slide-bottom-leave-active{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}
.van-popup-slide-left-enter,.van-popup-slide-left-leave-active{-webkit-transform:translate3d(-100%,-50%,0);transform:translate3d(-100%,-50%,0)}
.van-popup__close-icon{position:absolute;z-index:1;color:#c8c9cc;font-size:22px;cursor:pointer}
.van-popup__close-icon:active{color:#969799}
.van-popup__close-icon--top-left{top:16px;left:16px}
.van-popup__close-icon--top-right{top:16px;right:16px}
.van-popup__close-icon--bottom-left{bottom:16px;left:16px}
.van-popup__close-icon--bottom-right{right:16px;bottom:16px}
.van-loading{position:relative;color:#c8c9cc;font-size:0;vertical-align:middle}
.van-loading__spinner{position:relative;display:inline-block;width:30px;max-width:100%;height:30px;max-height:100%;vertical-align:middle;-webkit-animation:van-rotate .8s linear infinite;animation:van-rotate .8s linear infinite}
.van-loading__spinner--spinner{-webkit-animation-timing-function:steps(12);animation-timing-function:steps(12)}
.van-loading__spinner--spinner i{position:absolute;top:0;left:0;width:100%;height:100%}
.van-loading__spinner--spinner i::before{display:block;width:2px;height:25%;margin:0 auto;background-color:currentColor;border-radius:40%;content:' '}
.van-loading__spinner--circular{-webkit-animation-duration:2s;animation-duration:2s}
.van-loading__circular{display:block;width:100%;height:100%}
.van-loading__circular circle{-webkit-animation:van-circular 1.5s ease-in-out infinite;animation:van-circular 1.5s ease-in-out infinite;stroke:currentColor;stroke-width:3;stroke-linecap:round}
.van-loading__text{display:inline-block;margin-left:8px;color:#969799;font-size:14px;vertical-align:middle}
.van-loading--vertical{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center}
.van-loading--vertical .van-loading__text{margin:8px 0 0}
.van-loading__spinner--spinner i:nth-of-type(1){-webkit-transform:rotate(30deg);transform:rotate(30deg);opacity:1}
.van-loading__spinner--spinner i:nth-of-type(2){-webkit-transform:rotate(60deg);transform:rotate(60deg);opacity:.9375}
.van-loading__spinner--spinner i:nth-of-type(3){-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:.875}
.van-loading__spinner--spinner i:nth-of-type(4){-webkit-transform:rotate(120deg);transform:rotate(120deg);opacity:.8125}
.van-loading__spinner--spinner i:nth-of-type(5){-webkit-transform:rotate(150deg);transform:rotate(150deg);opacity:.75}
.van-loading__spinner--spinner i:nth-of-type(6){-webkit-transform:rotate(180deg);transform:rotate(180deg);opacity:.6875}
.van-loading__spinner--spinner i:nth-of-type(7){-webkit-transform:rotate(210deg);transform:rotate(210deg);opacity:.625}
.van-loading__spinner--spinner i:nth-of-type(8){-webkit-transform:rotate(240deg);transform:rotate(240deg);opacity:.5625}
.van-loading__spinner--spinner i:nth-of-type(9){-webkit-transform:rotate(270deg);transform:rotate(270deg);opacity:.5}
.van-loading__spinner--spinner i:nth-of-type(10){-webkit-transform:rotate(300deg);transform:rotate(300deg);opacity:.4375}
.van-loading__spinner--spinner i:nth-of-type(11){-webkit-transform:rotate(330deg);transform:rotate(330deg);opacity:.375}
.van-loading__spinner--spinner i:nth-of-type(12){-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:.3125}
.van-pull-refresh{overflow:hidden;-webkit-user-select:none;user-select:none}
.van-pull-refresh__track{position:relative;height:100%;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}
.van-pull-refresh__head{position:absolute;left:0;width:100%;height:50px;overflow:hidden;color:#969799;font-size:14px;line-height:50px;text-align:center;-webkit-transform:translateY(-100%);transform:translateY(-100%)}
.van-toast{position:fixed;top:50%;left:50%;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;box-sizing:content-box;width:88px;max-width:70%;min-height:88px;padding:16px;color:#fff;font-size:14px;line-height:20px;white-space:pre-wrap;text-align:center;word-break:break-all;background-color:rgba(0,0,0,.7);border-radius:8px;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}
.van-toast--unclickable{overflow:hidden}
.van-toast--unclickable *{pointer-events:none}
.van-toast--html,.van-toast--text{width:-webkit-fit-content;width:fit-content;min-width:96px;min-height:0;padding:8px 12px}
.van-toast--html .van-toast__text,.van-toast--text .van-toast__text{margin-top:0}
.van-toast--top{top:20%}
.van-toast--bottom{top:auto;bottom:20%}
.van-toast__icon{font-size:36px}
.van-toast__loading{padding:4px;color:#fff}
.van-toast__text{margin-top:8px}
.van-calendar__popup.van-popup--bottom,.van-calendar__popup.van-popup--top{height:80%}
.van-calendar__popup.van-popup--left,.van-calendar__popup.van-popup--right{height:100%}
.van-calendar__popup .van-popup__close-icon{top:11px}
.van-action-sheet__loading-icon .van-loading__spinner{width:22px;height:22px}
.van-swipe{position:relative;overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0);cursor:grab;-webkit-user-select:none;user-select:none}
.van-swipe__track{display:-webkit-box;display:-webkit-flex;display:flex;height:100%}
.van-swipe__track--vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column}
.van-swipe__indicators{position:absolute;bottom:12px;left:50%;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-transform:translateX(-50%);transform:translateX(-50%)}
.van-swipe__indicators--vertical{top:50%;bottom:auto;left:12px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-transform:translateY(-50%);transform:translateY(-50%)}
.van-swipe__indicators--vertical .van-swipe__indicator:not(:last-child){margin-bottom:6px}
.van-swipe__indicator{width:6px;height:6px;background-color:#ebedf0;border-radius:100%;opacity:.3;-webkit-transition:opacity .2s,background-color .2s;transition:opacity .2s,background-color .2s}
.van-swipe__indicator:not(:last-child){margin-right:6px}
.van-swipe__indicator--active{background-color:#1989fa;opacity:1}
.van-swipe-item{position:relative;-webkit-flex-shrink:0;flex-shrink:0;width:100%;height:100%}
.van-image-preview{position:fixed;top:0;left:0;width:100%;height:100%}
.van-image-preview__swipe{height:100%}
.van-image-preview__swipe-item{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;overflow:hidden}
.van-image-preview__cover{position:absolute;top:0;left:0}
.van-image-preview__image{width:100%;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}
.van-image-preview__image--vertical{width:auto;height:100%}
.van-image-preview__image img{-webkit-user-drag:none}
.van-image-preview__image .van-image__error{top:30%;height:40%}
.van-image-preview__image .van-image__error-icon{font-size:36px}
.van-image-preview__image .van-image__loading{background-color:transparent}
.van-image-preview__index{position:absolute;top:16px;left:50%;color:#fff;font-size:14px;line-height:20px;text-shadow:0 1px 1px #323233;-webkit-transform:translate(-50%,0);transform:translate(-50%,0)}
.van-image-preview__overlay{background-color:rgba(0,0,0,.9)}
.van-image-preview__close-icon{position:absolute;z-index:1;color:#c8c9cc;font-size:22px;cursor:pointer}
.van-image-preview__close-icon:active{color:#969799}
.van-image-preview__close-icon--top-left{top:16px;left:16px}
.van-image-preview__close-icon--top-right{top:16px;right:16px}
.van-image-preview__close-icon--bottom-left{bottom:16px;left:16px}
.van-image-preview__close-icon--bottom-right{right:16px;bottom:16px}
.van-swipe-cell{position:relative;overflow:hidden;cursor:grab}
.van-swipe-cell__wrapper{-webkit-transition-timing-function:cubic-bezier(.18,.89,.32,1);transition-timing-function:cubic-bezier(.18,.89,.32,1);-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}
.van-swipe-cell__left,.van-swipe-cell__right{position:absolute;top:0;height:100%}
.van-swipe-cell__left{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}
.van-swipe-cell__right{right:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}

/* ══════════ ⑥ 工具类 ══════════ */
.van-overflow-hidden{overflow:hidden!important}

/* ══════════ ⑦ 动画与转场（6 条）══════════ */
@keyframes van-fade-in{from{opacity:0}to{opacity:1}}
@keyframes van-fade-out{from{opacity:1}to{opacity:0}}
@keyframes van-rotate{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}
@keyframes van-circular{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40}100%{stroke-dasharray:90,150;stroke-dashoffset:-120}}
.van-fade-enter-active{-webkit-animation:.3s van-fade-in both ease-out;animation:.3s van-fade-in both ease-out}
.van-fade-leave-active{-webkit-animation:.3s van-fade-out both ease-in;animation:.3s van-fade-out both ease-in}

/* ══════════ ⑧ 原生实现补充 ══════════ */
/* Toast 显隐：vant 用 Transition 组件控制，其 CSS 中无透明度规则。
   此处用 CSS 过渡达到同样观感。 */
.van-toast{opacity:0;transition:opacity .2s ease;pointer-events:none}
.van-toast.is-show{opacity:1}

/* ── 官方服务号二维码卡片（可选运营模块）─────────────────────────
   渲染前提：config.js 里有 qr.image（= 后台 slots.json 的 qr 槽位有图）。
   无图时 app.js 返回空串、整块不渲染，所以这里的规则不会留下空壳。
   ★ 与乐凯站的差异：乐凯是深色 HUD，二维码用霓虹旋转光边包住；
     本站是浅色页（暖奶白 #FFFDE4 起，页脚为绿→奶白渐变），
     霓虹色在浅底上显脏 —— 改用「白卡 + 柔和落影 + 主色准星」，
     与页面既有色族（站点主色 / #2c3e50 字）同源。
   注意：不得写成全局 img 规则，build-css.js 有断言拦这个（会改变 .top 高度）。 */
.qr-card{display:block;width:-webkit-fit-content;width:fit-content;margin:14px auto 4px;text-decoration:none}
.qr-card:active{opacity:.86}
/* 方形外框：二维码必须正方。aspect-ratio 锁比例 + 图片 object-fit:contain，
   无论上传的是不是正方图都不会变形、也不会撑破布局。 */
.qr-wrap{position:relative;display:block;width:52vw;max-width:196px;aspect-ratio:1/1;margin:0 auto}
.qr-frame{position:absolute;top:0;right:0;bottom:0;left:0;display:block;padding:6px;border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(44,62,80,.18),inset 0 0 0 2px #fbe3ee}
.qr-frame > img{display:block;width:100%;height:100%;object-fit:contain;border-radius:11px;background:#fff}
.qr-corner{position:absolute;width:14px;height:14px;border:2px solid #e79ec2;pointer-events:none}
.qr-corner.tl{top:-4px;left:-4px;border-right:0;border-bottom:0;border-radius:8px 0 0 0}
.qr-corner.tr{top:-4px;right:-4px;border-left:0;border-bottom:0;border-radius:0 8px 0 0}
.qr-corner.bl{bottom:-4px;left:-4px;border-right:0;border-top:0;border-radius:0 0 0 8px}
.qr-corner.br{bottom:-4px;right:-4px;border-left:0;border-top:0;border-radius:0 0 8px 0}
.qr-caption{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;gap:7px;margin-top:14px;font-size:.82em;font-weight:700;color:#2c3e50}
.qr-dot{width:7px;height:7px;border-radius:50%;background:#e79ec2;animation:qrDotPulse 1.8s ease-in-out infinite}
@keyframes qrDotPulse{0%,100%{opacity:1}50%{opacity:.25}}

/* ══════════ 大图查看器（6 站统一，2026-10-03）══════════
   等比铺满 + 双指/双击缩放。
   此前本站用 $layer 动态生成 vant 结构（铺满但不可缩放），
   与乐凯/极趣的实现是两套；现统一为同一套：静态 #lightbox + JS 缩放。 */
.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.94)}
.lightbox[hidden]{display:none!important}
.lb-track{display:flex;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.lb-track::-webkit-scrollbar{display:none}
.lb-slide{flex:0 0 100%;scroll-snap-align:center;display:flex;align-items:center;justify-content:center}
.lb-slide img{width:100%;height:100%;object-fit:contain;touch-action:pan-x;-webkit-user-drag:none;user-select:none;-webkit-user-select:none;transform-origin:center center;backface-visibility:hidden}
.lb-track.is-zoomed{scroll-snap-type:none}
.lb-track.is-zoomed .lb-slide img{touch-action:none;cursor:grab}
.lb-track.is-zoomed .lb-slide img:active{cursor:grabbing}
.lb-close{position:absolute;top:calc(14px + env(safe-area-inset-top,0px));right:14px;z-index:3;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);color:#fff;font-size:16px;line-height:1;cursor:pointer;padding:0}
.lb-counter{position:absolute;top:calc(22px + env(safe-area-inset-top,0px));left:50%;transform:translateX(-50%);z-index:3;padding:5px 15px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);font-size:12px;letter-spacing:.08em;color:#fff}
.lb-hint{position:absolute;bottom:calc(18px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);z-index:3;font-size:12px;letter-spacing:.04em;color:rgba(255,255,255,.66);white-space:nowrap}

/* ══════════ 页脚署名 + 二维码弹层（2026-10-12）══════════ */
.ad-credit{text-align:center;font-size:.82em;line-height:1.7;color:#9aa39c;padding:6px 0 22px}
.ad-credit-link{display:inline-block;padding:0 .18em;color:#c2547f;font-weight:700;text-decoration:underline;text-underline-offset:3px;-webkit-tap-highlight-color:transparent}
.ad-credit-link:active{opacity:.55}
.ad-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2100;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(74,32,56,.74);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.ad-board{position:relative;width:min(78vw,300px);padding:20px 18px 16px;border-radius:20px;background:#fff;box-shadow:0 18px 48px rgba(44,62,80,.3),inset 0 0 0 2px #fbe3ee;animation:adPop .22s ease-out both}
.ad-close{position:absolute;top:8px;right:8px;width:30px;height:30px;margin:0;padding:0;border:0;border-radius:50%;background:rgba(44,62,80,.07);color:#2c3e50;font-size:14px;line-height:30px;text-align:center;cursor:pointer}
.ad-close:active{opacity:.55}
.ad-plate{display:block;padding:8px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 2px #e79ec2}
.ad-pic{display:block;width:100%;height:auto;border-radius:8px;background:#fff}
.ad-note{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;gap:7px;margin-top:13px;font-size:.78em;font-weight:700;color:#2c3e50}
.ad-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#e79ec2;animation:adDot 1.8s ease-in-out infinite}
@keyframes adPop{from{opacity:0;-webkit-transform:translateY(10px) scale(.96);transform:translateY(10px) scale(.96)}to{opacity:1;-webkit-transform:none;transform:none}}
@keyframes adDot{0%,100%{opacity:.3}50%{opacity:1}}
@media (prefers-reduced-motion:reduce){.ad-board{animation:none}.ad-dot{animation:none}}
