/* =====================================================================
 * css/screens/qiyu.css — 奇遇家族页面样式（归属：qiyu 组）
 * qy- 奇遇/共用（图标栏、剧情黑幕、场景页）  hl- 门派内室/山庄  xx- 江湖行侠  qh- 练气（气海/经脉）
 * 画布 448×780（内容区）。只覆盖自己的类，不改 theme.css / screens.css。
 * ===================================================================== */

/* ---------- 0. 根容器 ---------- */
.qy-root{position:relative;height:100%;overflow:hidden;background:#120b06}
.qy-root .icon-bar.qy-bar{position:relative;z-index:5;height:92px;padding:8px 10px;gap:8px;flex:none;
  background:var(--tex-wood),linear-gradient(180deg,#4a2a12 0%,#2a1608 100%);box-shadow:inset 0 -3px 0 #b8860b,inset 0 1px 0 rgba(255,220,150,.2),0 3px 8px rgba(0,0,0,.6)}
.qy-bar .icon-tile{position:relative;overflow:hidden;background:#1a0f08}
.qy-bar .icon-tile .tile-bg{position:absolute;inset:0;background-size:cover;background-position:center 30%;opacity:.95;transform:scale(1.05);transition:transform .25s}
.qy-bar .icon-tile .tile-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.15) 55%,rgba(20,8,2,.85) 100%)}
.qy-bar .icon-tile svg{position:relative;z-index:2;width:44px;height:44px;margin-top:-14px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.8))}
.qy-bar .icon-tile .lab{z-index:3}
.qy-bar .icon-tile.active .tile-bg{transform:scale(1.15)}
.qy-bar .icon-tile.active .lab{background:linear-gradient(180deg,#f2c245,#b8860b);color:#5a2b00;text-shadow:0 1px 0 rgba(255,245,210,.8)}
.qy-bar-end{flex:none;width:2px}

/* ---------- 1. 奇遇列表 ---------- */
.qy-list{position:relative;height:calc(100% - 92px);display:flex;flex-direction:column;background-size:cover;background-position:center;color:#f3e6c4}
/* 场景暗角：四周压暗 + 中心留亮，让立绘/标题浮出来 */
.qy-veil{position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse 78% 62% at 50% 38%,rgba(6,4,2,0) 0%,rgba(6,4,2,.35) 62%,rgba(4,2,1,.88) 100%),
    linear-gradient(180deg,rgba(6,4,2,.6) 0%,rgba(6,4,2,.62) 40%,rgba(6,4,2,.9) 100%)}
.qy-head{position:relative;z-index:1;text-align:center;padding:6px 0 2px;flex:none}
.qy-head .ribbon-title{font-size:40px;letter-spacing:6px;padding:4px 0}
.qy-sub{font-size:12px;color:#c9b48a;letter-spacing:1px;text-shadow:0 1px 0 #000;margin-top:-2px}
.qy-scroll{position:relative;z-index:1;flex:1 1 auto;min-height:0;padding:6px 10px 12px}
.qy-card{position:relative;display:flex;align-items:center;gap:10px;min-height:104px;margin:0 0 10px;padding:8px 8px 8px 10px;border-radius:8px;cursor:pointer;
  background:var(--tex-paper),linear-gradient(180deg,#ead9b0 0%,#dcc38f 55%,#c9a96e 100%);color:var(--ink);
  border:2px solid #3a1d0c;box-shadow:inset 0 0 0 1px rgba(242,194,69,.65),inset 0 0 18px rgba(120,80,30,.25),0 4px 10px rgba(0,0,0,.6);
  animation:qyCardIn .35s ease-out both;animation-delay:calc(var(--i,0) * 80ms);transition:transform .12s,filter .12s}
@keyframes qyCardIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.qy-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:6px;border-radius:6px 0 0 6px;background:linear-gradient(180deg,#e0523a,#a8261b 60%,#7e1a10)}
.qy-card:hover{filter:brightness(1.04)}
.qy-card:active{transform:scale(.985)}
.qy-card.done,.qy-card.used,.qy-card.locked{filter:saturate(.35) brightness(.8)}
/* 缩略图：底色兜底（缺图不再露白）+ 暗角与内高光 */
.qy-card .thumb{position:relative;flex:none;width:84px;height:84px;border-radius:6px;
  background-color:#241606;background-size:150% auto;background-position:50% 74%;
  box-shadow:0 0 0 2px #f2c245,0 0 0 3px #3a1d0c,inset 0 0 14px rgba(0,0,0,.6)}
.qy-card .thumb::after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:6px;
  background:
    radial-gradient(ellipse 70% 64% at 50% 36%,rgba(92,52,14,.34) 0%,rgba(46,24,6,.66) 62%,rgba(10,5,1,.92) 100%),
    linear-gradient(180deg,rgba(255,240,200,.2),rgba(255,240,200,0) 34%)}
.qy-card .thumb .seal{position:absolute;left:-6px;top:-6px;z-index:2}
.qy-card .body{flex:1 1 auto;min-width:0}
.qy-card .name{font-family:var(--font-brush);font-size:24px;letter-spacing:2px;color:#3a1d0c;line-height:1.1;text-shadow:0 1px 0 rgba(255,245,220,.8)}
.qy-card .text{font-size:12px;color:var(--ink-soft);line-height:1.35;margin:3px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.qy-card .status{font-size:12px;font-weight:700;color:var(--jade-dark)}
.qy-card .status.cd{color:#2f6fb5}.qy-card .status.done,.qy-card .status.used,.qy-card .status.locked{color:var(--red)}
.qy-card .status .cost{margin-left:8px;font-weight:400;color:#7a4f00}
.qy-card .go{flex:none}
.qy-card .go .btn-round{width:54px;height:54px;font-size:28px}
.qy-foot{position:relative;z-index:1;flex:none;display:flex;align-items:center;gap:8px;height:46px;padding:0 12px;font-size:12px;color:#e8d3a3;
  background:var(--tex-wood),linear-gradient(180deg,#4a2a12,#2a1608);box-shadow:inset 0 2px 0 rgba(242,194,69,.5),0 -3px 8px rgba(0,0,0,.5)}
.qy-foot .grow{flex:1 1 auto}
.qy-foot b{color:#ffe08a}
.qy-foot .price .v{display:inline-flex;align-items:center;gap:2px;color:#ffe08a;font-weight:700}
.qy-result-line{text-align:center;font-size:16px;line-height:1.7;padding:8px 4px;color:var(--ink)}
.qy-result-sub{text-align:center;font-size:12px;color:var(--ink-soft)}

/* ---------- 2. 剧情黑幕（逐行逐字） ---------- */
.qy-story{position:absolute;inset:0;z-index:60;cursor:pointer;background:var(--tex-noise),radial-gradient(ellipse at 50% 45%,#141010 0%,#000 70%);animation:fadeIn .3s ease-out both}
.qy-story.out{animation:qyStoryOut .25s ease-in forwards}
@keyframes qyStoryOut{to{opacity:0}}
.qy-story-scene{position:absolute;left:0;right:0;top:30%;height:40%;background-size:cover;background-position:center;opacity:.55;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 25%,#000 75%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 25%,#000 75%,transparent 100%);
  animation:qySceneDrift 12s ease-in-out infinite alternate}
@keyframes qySceneDrift{from{background-position:50% 40%;transform:scale(1)}to{background-position:50% 60%;transform:scale(1.06)}}
.qy-story-text{position:absolute;left:24px;right:24px;top:66%;transform:translateY(-10%);text-align:center;color:#f6efe0;font-family:var(--font-body);font-size:21px;line-height:1.9;letter-spacing:1.5px;text-shadow:0 0 8px rgba(0,0,0,.9),0 2px 2px #000}
.qy-story-text p{margin:0;min-height:1.9em}
.qy-story-text p span{display:inline-block;animation:qyCharIn .35s ease-out both}
@keyframes qyCharIn{from{opacity:0;transform:translateY(6px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
.qy-story-tip{position:absolute;bottom:40px;left:0;right:0;text-align:center;font-size:12px;color:#8c7355;letter-spacing:2px;animation:blink 1.6s ease-in-out infinite}

/* ---------- 3. 场景页（古墓 / 大殿 …） ---------- */
.qy-scene{position:relative;height:calc(100% - 92px);display:flex;flex-direction:column;align-items:center;background-size:cover;background-position:center;color:#f3e6c4;overflow:hidden}
.qy-scene-veil{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.05) 30%,rgba(0,0,0,.15) 65%,rgba(0,0,0,.85) 100%)}
.qy-scene-mist{position:absolute;left:-20%;right:-20%;bottom:150px;height:120px;pointer-events:none;opacity:.35;
  background:radial-gradient(ellipse 60% 50% at 30% 50%,rgba(255,255,255,.5),transparent 70%),radial-gradient(ellipse 50% 60% at 70% 40%,rgba(255,255,255,.4),transparent 70%);
  animation:qyMist 9s ease-in-out infinite alternate}
@keyframes qyMist{from{transform:translateX(-30px)}to{transform:translateX(30px)}}
.qy-scene-title{position:relative;z-index:1;margin-top:8px}
.qy-scene-title .ribbon-title{font-size:46px;letter-spacing:8px;padding:2px 0}
.qy-cd{position:relative;z-index:1;font-size:15px;color:#f3e6c4;text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.8);letter-spacing:1px;margin-top:-2px}
.qy-cd b{color:#ffe08a;font-family:var(--font-body);font-size:18px;font-weight:700;letter-spacing:1px}
.qy-desc{position:relative;z-index:1;margin:8px 22px 0;padding:8px 14px;font-size:14px;line-height:1.6;text-align:center;color:#fff3d6;text-shadow:0 1px 0 #000,0 0 4px rgba(0,0,0,.8);
  background:linear-gradient(90deg,transparent,rgba(0,0,0,.5) 15%,rgba(0,0,0,.5) 85%,transparent);border-top:1px solid rgba(242,194,69,.35);border-bottom:1px solid rgba(242,194,69,.35)}
.qy-helper{position:relative;z-index:1;flex:1 1 auto;display:flex;align-items:flex-end;justify-content:center;min-height:120px;padding-bottom:22px}
.qy-helper svg{position:relative;z-index:2;filter:drop-shadow(0 6px 6px rgba(0,0,0,.7));animation:floatY 2.6s ease-in-out infinite}
.qy-helper .shadow{position:absolute;left:50%;bottom:16px;width:110px;height:22px;margin-left:-55px;border-radius:50%;background:radial-gradient(ellipse,rgba(0,0,0,.6),transparent 70%)}
.qy-helper .spark{position:absolute;width:6px;height:6px;border-radius:50%;background:radial-gradient(circle,#fff6cf,#f2c245 60%,transparent 70%);box-shadow:0 0 8px #ffe08a;opacity:0;animation:qySpark 3.2s ease-in-out infinite}
.qy-helper .spark.s1{left:35%;bottom:60px;animation-delay:0s}.qy-helper .spark.s2{left:62%;bottom:100px;animation-delay:1.1s}.qy-helper .spark.s3{left:50%;bottom:140px;animation-delay:2.2s}
@keyframes qySpark{0%{opacity:0;transform:translateY(0) scale(.5)}30%{opacity:1}100%{opacity:0;transform:translateY(-60px) scale(1.2)}}
.qy-opts{position:relative;z-index:2;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 14px;padding:0 16px 8px}
.qy-glow.btn{min-width:190px;height:58px;flex-direction:column;gap:0;padding:0 26px;border-radius:30px;font-size:30px;letter-spacing:5px;
  background:radial-gradient(ellipse at 50% 120%,rgba(120,190,255,.7),rgba(20,60,140,.9) 60%);border:2px solid #b9e0ff;color:#f0f8ff;
  box-shadow:0 0 24px #3b8cff,0 0 60px rgba(59,140,255,.5),inset 0 0 16px rgba(160,210,255,.8);animation:qyGlowPulse 2.2s ease-in-out infinite}
.qy-glow.btn::before,.qy-glow.btn::after{display:none}
.qy-glow.btn .t{position:relative;line-height:1}
.qy-glow.btn small{font-family:var(--font-body);font-size:11px;letter-spacing:0;color:#cfe6ff;margin-top:2px;text-shadow:0 1px 0 #000}
.qy-glow.btn em{position:absolute;right:-8px;top:-10px;font-style:normal;font-family:var(--font-body);font-size:11px;letter-spacing:0;padding:1px 7px;border-radius:9px;background:var(--bg-red);color:#ffe08a;box-shadow:0 0 0 1px #3f0a06;text-shadow:0 1px 0 #3f0a06}
.qy-glow.btn.disabled,.qy-glow.btn:disabled{animation:none;filter:grayscale(.8) brightness(.6);opacity:.85}
@keyframes qyGlowPulse{0%,100%{box-shadow:0 0 18px #3b8cff,0 0 40px rgba(59,140,255,.35),inset 0 0 14px rgba(160,210,255,.7)}50%{box-shadow:0 0 30px #7fb8ff,0 0 70px rgba(59,140,255,.6),inset 0 0 22px rgba(200,230,255,.95)}}
.qy-leave.btn{min-width:110px;height:44px;font-size:22px}
.qy-info{position:relative;z-index:1;display:flex;justify-content:space-around;width:100%;padding:6px 10px 8px;font-size:12px;color:#e8d3a3;text-shadow:0 1px 0 #000;background:linear-gradient(180deg,transparent,rgba(0,0,0,.6))}
/* 喜得弟子 */
.qy-gain{display:flex;flex-direction:column;align-items:center;gap:10px;padding:4px 0}
.qy-gain-card{transform:scale(.9);transform-origin:top center;margin-bottom:-20px}
.qy-gain-line{text-align:center;font-size:15px;line-height:1.7;color:var(--ink)}
.qy-gain-line b{color:var(--red)}

/* ---------- 4. 门派内室 ---------- */
.hl-scene,.hl-idle{position:relative;height:calc(100% - 92px);background-size:cover;background-position:center top;overflow:hidden}
.hl-veil{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.05) 32%,rgba(0,0,0,.1) 60%,rgba(10,5,2,.88) 100%)}
.hl-title{position:relative;z-index:2;text-align:center;padding-top:8px}
.hl-title .ribbon-title{font-size:46px;letter-spacing:8px;padding:2px 0}
.hl-tagline{font-size:14px;color:#fff3d6;letter-spacing:1px;text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.8);margin-top:-2px}
.hl-hero{position:absolute;left:-40px;bottom:110px;width:330px;height:470px;z-index:1;pointer-events:none;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 70%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 70%,transparent 100%)}
.hl-hero .portrait{width:100%;height:100%;filter:drop-shadow(0 0 22px rgba(255,200,90,.35)) drop-shadow(0 8px 10px rgba(0,0,0,.7))}
.hl-hero .portrait img{object-position:50% 0}
.hl-hero .portrait.portrait-missing{display:none}
.hl-tags{position:absolute;left:0;right:0;bottom:22px;z-index:3;display:flex;justify-content:center;align-items:flex-end;gap:7px;padding:0 6px}
.hl-tag{position:relative;width:72px;height:140px;display:flex;align-items:flex-start;justify-content:center;cursor:pointer;writing-mode:vertical-rl;white-space:nowrap;
  font-family:var(--font-brush);font-size:20px;line-height:1;letter-spacing:2px;color:#4a1a08;text-shadow:0 1px 0 rgba(255,245,220,.9);
  background:var(--tex-paper),linear-gradient(100deg,#fff4c4 0%,#f6dc8a 40%,#e5bd55 100%);
  clip-path:polygon(0 0,100% 0,100% 100%,50% 94%,0 100%);
  box-shadow:inset 0 0 0 2px rgba(120,80,10,.4),inset 0 0 14px rgba(120,80,10,.35);
  transform:rotate(var(--rot,0deg));transform-origin:50% 0;transition:transform .15s;
  animation:hlTagIn .5s cubic-bezier(.2,.9,.3,1.2) both;animation-delay:calc(var(--i,0) * 70ms)}
@keyframes hlTagIn{from{opacity:0;transform:translateY(30px) rotate(var(--rot,0deg))}to{opacity:1;transform:rotate(var(--rot,0deg))}}
.hl-tag:nth-child(1){--rot:-7deg}.hl-tag:nth-child(2){--rot:4deg}.hl-tag:nth-child(3){--rot:-2deg}.hl-tag:nth-child(4){--rot:5deg}.hl-tag:nth-child(5){--rot:-5deg}
.hl-tag::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.35),transparent 30%,transparent 70%,rgba(120,80,10,.25))}
.hl-tag .pin{position:absolute;left:50%;top:7px;width:10px;height:10px;margin-left:-5px;border-radius:50%;z-index:2;background:radial-gradient(circle at 35% 30%,#ff8a6a,#a8261b 60%,#6e140c);box-shadow:0 0 0 1px #3f0a06,0 2px 3px rgba(0,0,0,.6)}
.hl-tag .fold{position:absolute;right:0;top:0;width:0;height:0;border-style:solid;border-width:0 18px 18px 0;border-color:transparent #3a1d0c transparent transparent;opacity:.5;z-index:2}
.hl-tag .fold::after{content:'';position:absolute;right:-18px;top:0;width:0;height:0;border-style:solid;border-width:18px 18px 0 0;border-color:#c9a96e transparent transparent transparent;filter:drop-shadow(-2px 2px 2px rgba(0,0,0,.3))}
.hl-tag .t{position:relative;z-index:1;margin-top:16px}
.hl-tag .left{position:absolute;left:50%;bottom:13px;transform:translateX(-50%);writing-mode:horizontal-tb;font-family:var(--font-body);font-size:10px;font-weight:700;letter-spacing:0;padding:1px 6px;border-radius:8px;background:rgba(58,29,12,.85);color:#ffe08a;text-shadow:none;z-index:2}
.hl-tag:hover{transform:rotate(var(--rot)) translateY(-6px)}
.hl-tag.flip{animation:hlFlip .5s ease-out}
@keyframes hlFlip{0%{transform:rotate(var(--rot,0deg)) rotateX(0)}40%{transform:rotate(var(--rot,0deg)) rotateX(-80deg) translateY(-10px)}100%{transform:rotate(var(--rot,0deg)) rotateX(0)}}
.hl-tag.done{filter:grayscale(.7) brightness(.75)}
.hl-tag.done .left{background:rgba(120,20,10,.9)}
/* 纸签弹窗 */
.hl-modal-head{display:flex;align-items:center;gap:12px;padding:2px 0 8px}
.hl-modal-head svg{flex:none;filter:drop-shadow(0 2px 2px rgba(0,0,0,.4))}
.hl-modal-desc{font-size:13px;line-height:1.6;color:var(--ink-soft)}
.hl-kv{display:flex;justify-content:space-between;align-items:center;padding:4px 2px;border-bottom:1px dashed rgba(90,60,20,.35);font-size:13px}
.hl-kv b{color:var(--ink)}.hl-kv b.ok{color:var(--jade-dark)}.hl-kv b.no{color:var(--red-bright)}
.hl-odds{display:flex;justify-content:space-around;padding:8px 0 2px;font-size:13px;font-weight:700}
.hl-odds span{display:inline-flex;align-items:center;gap:4px}
.hl-note,.hl-tip{font-size:12px;color:var(--ink-soft);line-height:1.5;padding:4px 2px}
.hl-rewards .rp-line{display:flex;flex-wrap:wrap;gap:6px 14px;padding:2px 4px;font-size:13px;font-weight:700;color:var(--ink)}
.hl-rewards .rp{display:inline-flex;align-items:center;gap:4px}
.hl-rewards .rp-items{display:flex;flex-wrap:wrap;gap:8px;padding:6px 2px 2px}
.hl-rewards .rp-item{position:relative}
.hl-rewards .rp-item .chance{position:absolute;right:-2px;top:-6px;font-size:10px;font-weight:700;padding:0 5px;border-radius:7px;background:var(--bg-red);color:#ffe08a;box-shadow:0 0 0 1px #3f0a06}
.hl-grid{display:flex;flex-wrap:wrap;gap:10px 8px;justify-content:flex-start;padding:6px 2px;max-height:300px;overflow-y:auto}
.hl-grid .avatar.in-form .frame::before{content:'阵';position:absolute;right:-4px;top:-4px;z-index:3;width:18px;height:18px;border-radius:4px;font-family:var(--font-brush);font-size:12px;line-height:18px;text-align:center;color:#ffe08a;background:var(--bg-red);box-shadow:0 0 0 1px #3f0a06}
/* 山庄挂机 */
.hl-idle{display:flex;flex-direction:column}
.hl-idle .hl-veil{background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.35) 30%,rgba(10,5,2,.8) 100%)}
.hl-rooms{position:relative;z-index:2;display:flex;justify-content:center;gap:8px;padding:8px 10px 4px}
.hl-room{position:relative;width:118px;height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;border-radius:6px;
  font-family:var(--font-brush);font-size:20px;letter-spacing:2px;color:#f6d675;text-shadow:var(--shadow-gold-text);
  background:var(--bg-wood);border:2px solid #2b150a;box-shadow:inset 0 0 0 1px rgba(242,194,69,.5),inset 0 2px 0 rgba(255,225,160,.35),inset 0 -3px 0 rgba(0,0,0,.45),0 2px 3px rgba(0,0,0,.55);transition:transform .1s}
.hl-room .f{font-family:var(--font-body);font-size:10px;letter-spacing:0;color:#e8d3a3;margin-top:1px}
.hl-room.active{background:var(--bg-red);color:#ffe08a;border-color:#3f0a06;box-shadow:inset 0 0 0 1px rgba(255,214,120,.5),0 0 12px rgba(255,120,60,.5)}
.hl-room:active{transform:scale(.96)}
.hl-slots{position:relative;z-index:2;display:flex;justify-content:center;gap:12px;padding:10px 8px 4px}
.hl-slot{position:relative;width:126px;height:186px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:22px;border-radius:10px;cursor:pointer;
  background:var(--tex-wood),linear-gradient(180deg,rgba(90,52,22,.92),rgba(36,17,10,.95));border:2px solid #24110a;
  box-shadow:inset 0 0 0 2px rgba(242,194,69,.5),inset 0 0 0 3px rgba(0,0,0,.35),inset 0 2px 0 rgba(255,220,150,.25),0 4px 10px rgba(0,0,0,.6);color:#ffe9a3}
.hl-slot .mat{position:absolute;left:50%;top:92px;width:100px;height:34px;margin-left:-50px;border-radius:50%;background:radial-gradient(ellipse at 50% 40%,#a8261b,#6e140c 60%,#3f0a06);box-shadow:inset 0 3px 4px rgba(255,140,100,.35),0 3px 6px rgba(0,0,0,.6)}
.hl-slot .mat::after{content:'';position:absolute;inset:6px 14px;border-radius:50%;border:1px solid rgba(255,214,120,.45)}
.hl-slot .box{position:relative;z-index:1;width:80px;height:80px;display:flex;align-items:center;justify-content:center}
.hl-slot .aura{position:absolute;left:50%;top:26px;width:110px;height:110px;margin-left:-55px;border-radius:50%;background:radial-gradient(circle,rgba(255,220,120,.35),transparent 65%);animation:pulseGold 2.2s ease-out infinite;pointer-events:none}
.hl-slot.empty .box{border-radius:10px;background:rgba(0,0,0,.3);box-shadow:inset 0 0 0 2px rgba(242,194,69,.45),inset 0 0 14px rgba(0,0,0,.6)}
.hl-slot .plus{font-family:var(--font-brush);font-size:44px;color:rgba(255,224,138,.8);line-height:1}
.hl-slot.locked{cursor:default;filter:brightness(.7)}
.hl-slot.locked .box{color:#c9a96e}
.hl-slot .nm{margin-top:6px;font-family:var(--font-brush);font-size:18px;letter-spacing:1px;text-shadow:0 1px 0 #000}
.hl-slot .yield{font-size:11px;color:#c8f5c8;margin-top:1px}
.hl-slot .btn{margin-top:6px}
.hl-yield{position:relative;z-index:2;margin:6px 12px 0;padding:8px 12px}
.hl-yield .row{display:flex;align-items:center;gap:8px;font-size:13px}
.hl-yield .row .k{flex:none;font-weight:700}
.hl-yield .row .bar{flex:1 1 auto;height:18px;border-radius:9px}
.hl-yield .row .bar .txt{font-size:11px}
.hl-yield-line{display:flex;justify-content:space-around;padding:8px 0 4px;font-size:13px}
.hl-yield-line span{display:inline-flex;align-items:center;gap:4px}
.hl-yield-line b{color:var(--red);font-size:15px}
.hl-per{font-size:11px;color:var(--ink-soft);text-align:center}
.hl-idle-btns{position:relative;z-index:2;display:flex;justify-content:center;padding:10px 0}

/* ---------- 5. 江湖行侠 ---------- */
.xx-root{background:#1a120a}
.xx-top{position:relative;z-index:5;display:flex;align-items:center;gap:6px;height:58px;padding:0 8px;
  background:var(--tex-paper),linear-gradient(180deg,#e2cb95,#c9a96e);box-shadow:inset 0 2px 0 #fff3cf,inset 0 -2px 0 #7a4f00,0 3px 8px rgba(0,0,0,.45);color:var(--ink)}
.xx-res{display:flex;align-items:center;gap:4px;flex:none;cursor:pointer}
.xx-res .v{line-height:1.05;font-family:var(--font-body)}
.xx-res .v b{font-size:16px;color:#3a1d0c}
.xx-res .v small{display:block;font-size:10px;color:var(--ink-soft)}
.xx-rank{display:flex;align-items:center;gap:6px;flex:1 1 auto;min-width:0;cursor:pointer;padding:3px 8px;border-radius:14px;background:rgba(58,29,12,.12);box-shadow:inset 0 0 0 1px rgba(122,79,0,.4)}
.xx-rank .lv{flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-brush);font-size:14px;line-height:1;color:#7a1e12;
  background:radial-gradient(circle at 40% 32%,#fff6cf 0%,#f2c245 40%,#d49a1e 75%,#9c6a0d 100%);box-shadow:0 0 0 2px #3a1d0c,inset 0 -3px 5px rgba(120,70,0,.5),0 0 10px rgba(255,200,80,.5)}
.xx-rank .v{min-width:0;line-height:1.05}
.xx-rank .v b{display:block;font-family:var(--font-brush);font-size:18px;letter-spacing:1px;color:#3a1d0c;white-space:nowrap}
.xx-rank .v small{display:block;font-size:10px;color:var(--ink-soft);white-space:nowrap}
.xx-shop-btn{flex:none}
.xx-view{position:relative;height:calc(100% - 92px - 58px);cursor:grab;background:#e8dcbf}
.xx-view:active{cursor:grabbing}
.xx-map{position:relative;background-size:100% 100%;background-repeat:no-repeat;box-shadow:inset 0 0 80px rgba(60,40,10,.35)}
.xx-paths{position:absolute;left:0;top:0;pointer-events:none}
.xx-paths path{fill:none;stroke:#7a4f00;stroke-width:3;stroke-dasharray:6 7;stroke-linecap:round;opacity:.55}
.xx-paths path.on{stroke:#d8321f;opacity:.85;stroke-dasharray:none;stroke-width:3.5}
.xx-region{position:absolute;left:0;right:0;pointer-events:none;z-index:1}
.xx-region .rn{position:absolute;right:8px;top:8px;writing-mode:vertical-rl;font-family:var(--font-brush);font-size:30px;letter-spacing:8px;color:rgba(58,29,12,.55);text-shadow:0 1px 0 rgba(255,245,220,.6)}
.xx-region.locked{background:repeating-linear-gradient(135deg,rgba(20,10,4,.42) 0 10px,rgba(20,10,4,.5) 10px 20px);pointer-events:auto;cursor:not-allowed}
.xx-region.locked .rn{color:rgba(255,230,180,.6);text-shadow:0 1px 0 #000}
.xx-region .rl{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 16px;border-radius:8px;color:#ffe9a3;font-size:13px;text-align:center;white-space:nowrap;
  background:rgba(20,10,4,.85);box-shadow:0 0 0 2px #f2c245,0 0 0 3px #3a1d0c,0 4px 10px rgba(0,0,0,.6)}
.xx-node{position:absolute;z-index:3;width:0;height:0;cursor:pointer}
.xx-node .orb{position:absolute;left:-26px;top:-26px;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 50% 35%,#f3e6c4,#c9a96e 60%,#8c7355);box-shadow:0 0 0 2px #7a4f00,0 0 0 4px rgba(243,230,196,.85),0 3px 6px rgba(0,0,0,.5);transition:transform .12s;filter:saturate(.25) brightness(.85)}
.xx-node .orb svg{width:34px;height:34px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.5))}
.xx-node .orb .ring{position:absolute;inset:-8px;border-radius:50%;border:2px solid transparent;pointer-events:none}
.xx-node .nm{position:absolute;left:-60px;top:28px;width:120px;text-align:center;font-family:var(--font-brush);font-size:15px;letter-spacing:1px;color:#3a1d0c;text-shadow:0 1px 0 rgba(255,245,220,.9),0 0 4px rgba(255,245,220,.9);white-space:nowrap}
.xx-node.visited .orb{filter:none;background:radial-gradient(circle at 50% 35%,#fff6cf,#f2c245 55%,#b8860b);box-shadow:0 0 0 2px #7a4f00,0 0 0 4px rgba(255,240,180,.9),0 3px 6px rgba(0,0,0,.5)}
.xx-node.reachable .orb{filter:none;background:radial-gradient(circle at 50% 35%,#fff6cf,#f2c245 55%,#d49a1e)}
.xx-node.reachable .orb .ring{border-color:#ffe08a;animation:xxRing 1.4s ease-out infinite}
@keyframes xxRing{0%{transform:scale(.7);opacity:1}100%{transform:scale(1.35);opacity:0}}
.xx-node.reachable .nm{color:#a8261b}
.xx-node.t-battle.reachable .orb{background:radial-gradient(circle at 50% 35%,#ffd0c0,#e0523a 55%,#8f1d13)}
.xx-node.t-battle.reachable .orb .ring{border-color:#ff8a6a}
.xx-node.current .orb{transform:scale(1.1);box-shadow:0 0 0 2px #7a4f00,0 0 0 4px #fff0b3,0 0 18px 4px rgba(255,210,80,.75)}
.xx-node.pending .orb{animation:pulseGold 1.2s ease-out infinite}
.xx-node.locked{opacity:.55}
.xx-node.locked .orb{filter:grayscale(1) brightness(.6)}
.xx-node .orb .badge{right:-8px;top:-8px;font-family:var(--font-brush);font-size:11px}
.xx-node:active .orb{transform:scale(.92)}
.xx-me{position:absolute;z-index:4;width:0;height:0;pointer-events:none}
.xx-me svg{position:absolute;left:-24px;top:-72px;width:48px;height:66px;filter:drop-shadow(0 4px 4px rgba(0,0,0,.6));animation:xxBob 1.6s ease-in-out infinite}
.xx-me .shadow{position:absolute;left:-16px;top:-10px;width:32px;height:10px;border-radius:50%;background:radial-gradient(ellipse,rgba(0,0,0,.45),transparent 70%)}
@keyframes xxBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.xx-scroll-top{position:absolute;left:0;right:0;top:6px;text-align:center;font-size:11px;letter-spacing:2px;color:rgba(58,29,12,.5)}
.xx-pending{position:absolute;left:10px;right:10px;bottom:10px;z-index:6;display:flex;align-items:center;gap:8px;height:46px;padding:0 10px 0 14px;border-radius:8px;cursor:pointer;color:#ffe9a3;font-size:14px;
  background:var(--tex-wood),linear-gradient(180deg,rgba(74,42,18,.97),rgba(36,17,10,.97));border:2px solid #24110a;box-shadow:inset 0 0 0 1px rgba(242,194,69,.6),0 6px 16px rgba(0,0,0,.7);animation:fadeUp .3s ease-out both}
.xx-pending .dot{width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff8a6a,#d8321f 60%,#8a140a);box-shadow:0 0 8px #ff6a4a;animation:blink 1.2s ease-in-out infinite}
.xx-pending .t{flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xx-adv{position:absolute;left:0;right:0;top:92px;bottom:0;z-index:20;animation:fadeIn .25s ease-out both}
.xx-adv .qy-scene{height:100%}
.xx-ev{text-align:center}
.xx-ev-scene{height:110px;margin:-4px -4px 8px;border-radius:4px;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 40px rgba(0,0,0,.7)}
.xx-ev-scene svg{filter:drop-shadow(0 3px 4px rgba(0,0,0,.8))}
.xx-ev-text{font-size:15px;line-height:1.7;margin:0 0 6px}
.xx-ev-en{font-size:12px;color:var(--ink-soft);line-height:1.6}
.xx-rank-head{font-size:13px;color:var(--ink-soft);line-height:1.6;padding-bottom:6px;border-bottom:1px dashed rgba(90,60,20,.35)}
.xx-rank-head b{color:var(--red);font-size:15px}
.xx-rank-list{max-height:520px;overflow-y:auto}
.xx-rank-row{display:flex;align-items:center;gap:10px;padding:6px 4px;border-bottom:1px dashed rgba(90,60,20,.3);opacity:.6}
.xx-rank-row.past,.xx-rank-row.cur{opacity:1}
.xx-rank-row.cur{background:rgba(242,194,69,.22);border-radius:6px;box-shadow:inset 0 0 0 1px rgba(184,134,11,.6)}
.xx-rank-row .b{flex:1 1 auto;min-width:0}
.xx-rank-row .n{font-family:var(--font-brush);font-size:19px;letter-spacing:1px;color:#3a1d0c}
.xx-rank-row .n small{font-family:var(--font-body);font-size:11px;letter-spacing:0;color:var(--ink-soft);margin-left:8px}
.xx-rank-row .a{font-size:12px;color:var(--jade-dark);font-weight:700}

/* ---------- 6. 练气：气海 / 经脉 ---------- */
.qh-root{background:var(--bg-paper)}
.qh-head{position:relative;z-index:4;background:var(--tex-paper),linear-gradient(180deg,#d9bf8a,#c9a96e);box-shadow:inset 0 -2px 0 #7a4f00}
.qh-head .tab-wood{padding-top:6px}
.qh-strip{position:relative;z-index:3;height:72px;padding:8px 8px 6px}
.qh-strip .avatar .lv{font-size:9px;min-width:18px;height:14px;line-height:14px}
.qh-panel{position:relative;height:calc(100% - 92px - 52px - 72px);padding-bottom:16px}
.qh-panel .panel-paper{margin:8px 10px 0;padding:8px 12px}
.qh-kv .kv .v.up{color:var(--jade-dark)}
.qh-kv .kv .v.down{color:var(--red-bright)}
.qh-none{text-align:center;font-size:13px;color:var(--ink-faint);padding:8px 0}
.qh-btns{display:flex;justify-content:center;padding:8px 0 2px}
.qh-cost-line{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;padding:6px 0 2px;font-size:13px;font-weight:700;color:var(--ink)}
.qh-cost{display:inline-flex;align-items:center;gap:3px}
.qh-cost.no{color:var(--red-bright)}
.qh-cost svg{width:20px;height:20px}
/* 丹田图 */
.qh-dantian{position:relative;width:320px;height:320px;margin:10px auto 0;border-radius:50%;
  background:radial-gradient(circle at 50% 50%,#3a2412 0%,#1a0f08 45%,#0d0704 70%,rgba(13,7,4,0) 71%)}
.qh-dantian .ring{position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.qh-dantian .r1{width:300px;height:300px;border:2px solid rgba(242,194,69,.55);box-shadow:0 0 18px rgba(242,194,69,.25),inset 0 0 30px rgba(242,194,69,.15)}
.qh-dantian .r2{width:250px;height:250px;border:1px dashed rgba(242,194,69,.5);animation:qhSpin 40s linear infinite}
.qh-dantian .r3{width:110px;height:110px;border:2px solid rgba(255,240,180,.35);animation:qhSpin 18s linear infinite reverse}
@keyframes qhSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.qh-taiji{position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;
  background:linear-gradient(90deg,#f3e6c4 50%,#1a0f08 50%);box-shadow:0 0 0 2px #f2c245,0 0 24px rgba(255,220,120,.55);animation:qhSpin 12s linear infinite}
.qh-taiji::before,.qh-taiji::after{content:'';position:absolute;left:50%;width:42px;height:42px;margin-left:-21px;border-radius:50%}
.qh-taiji::before{top:0;background:#1a0f08}.qh-taiji::after{bottom:0;background:#f3e6c4}
.qh-taiji .dot{position:absolute;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;z-index:1}
.qh-taiji .dot.a{top:15px;background:#f3e6c4}.qh-taiji .dot.b{bottom:15px;background:#1a0f08}
.qh-dantian.sealed .qh-taiji{filter:grayscale(1) brightness(.5);animation-duration:60s}
.qh-lines{position:absolute;inset:0;width:320px;height:320px;pointer-events:none}
.qh-lines line{stroke:rgba(242,194,69,.18);stroke-width:1.5;stroke-dasharray:3 4}
.qh-lines line.on{stroke:rgba(242,194,69,.45)}
.qh-center-name{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);text-align:center;font-family:var(--font-brush);font-size:18px;letter-spacing:2px;color:#3a1d0c;white-space:nowrap}
.qh-center-name small{display:block;font-family:var(--font-body);font-size:10px;letter-spacing:0;color:var(--ink-soft)}
.qh-slot{position:absolute;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;z-index:2;
  color:#ffe9a3;font-family:var(--font-brush);line-height:1;transition:transform .12s;
  background:radial-gradient(circle at 50% 35%,#4a3a2a,#1e130a 70%);box-shadow:0 0 0 2px #b8860b,0 0 0 3px #1a0f08,inset 0 0 10px rgba(0,0,0,.8)}
.qh-slot .glow{position:absolute;inset:-6px;border-radius:50%;pointer-events:none;opacity:0}
.qh-slot b{font-size:15px;letter-spacing:1px;font-weight:400;text-shadow:0 1px 0 #000}
.qh-slot small{font-family:var(--font-body);font-size:10px;margin-top:2px;color:#fff3d6}
.qh-slot .plus{font-size:30px;color:rgba(242,194,69,.75)}
.qh-slot.empty{box-shadow:0 0 0 2px rgba(184,134,11,.6),0 0 0 3px #1a0f08,inset 0 0 12px rgba(0,0,0,.8)}
.qh-slot.empty:hover{box-shadow:0 0 0 2px #f2c245,0 0 0 3px #1a0f08,0 0 14px rgba(255,210,80,.6)}
.qh-slot.locked{cursor:default;background:radial-gradient(circle at 50% 35%,#2a2a2a,#0d0d0d 70%);box-shadow:0 0 0 2px #4f4f4f,0 0 0 3px #111;color:#8d8d8d}
.qh-slot.on{--qc:#f2c245;background:radial-gradient(circle at 50% 30%,#fff 0%,var(--qc) 30%,color-mix(in srgb,var(--qc),#000 55%) 100%);box-shadow:0 0 0 2px #fff0b3,0 0 0 3px #1a0f08,0 0 16px var(--qc),inset 0 -6px 10px rgba(0,0,0,.35)}
.qh-slot.on .glow{opacity:1;background:radial-gradient(circle,var(--qc),transparent 70%);animation:qhBreath 2.4s ease-in-out infinite;filter:blur(4px)}
@keyframes qhBreath{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:.8;transform:scale(1.15)}}
.qh-slot:active{transform:scale(.94)}
.c-atk{--qc:#e0523a}.c-def{--qc:#3b82f6}.c-hp{--qc:#4caf50}.c-mp{--qc:#9b59d6}.c-sub{--qc:#f2c245}.c-all{--qc:#ffb347}.c-none{--qc:#9a8a70}
.qh-lock-card p{font-size:13px;line-height:1.6;margin:4px 0}
.qh-lock-card b{color:var(--red)}
.qh-beads{display:flex;justify-content:space-around;flex-wrap:wrap;gap:6px;padding:4px 0}
.qh-beads .item .nm{font-size:10px}
/* 真气选择 */
.qh-qi-list{max-height:560px;overflow-y:auto}
.qh-qi-row{display:flex;align-items:center;gap:10px;padding:8px 4px;border-bottom:1px dashed rgba(90,60,20,.35)}
.qh-qi-row.used{opacity:.55}
.qh-qi-row .orb,.qh-detail .orb{position:relative;flex:none;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 50% 30%,#fff 0%,var(--qc,#f2c245) 30%,color-mix(in srgb,var(--qc,#f2c245),#000 55%) 100%);box-shadow:0 0 0 2px #fff0b3,0 0 0 3px #3a1d0c,0 0 12px var(--qc,#f2c245)}
.qh-qi-row .orb i,.qh-detail .orb i{position:absolute;left:10px;top:8px;width:12px;height:8px;border-radius:50%;background:rgba(255,255,255,.75);transform:rotate(-30deg)}
.qh-qi-row .b{flex:1 1 auto;min-width:0}
.qh-qi-row .n{font-family:var(--font-brush);font-size:20px;letter-spacing:1px;color:#3a1d0c}
.qh-qi-row .n small{font-family:var(--font-body);font-size:11px;letter-spacing:0;color:var(--ink-soft);margin-left:6px}
.qh-qi-row .d{font-size:12px;color:var(--ink-soft);line-height:1.4}
.qh-qi-row .v{font-size:12px;color:var(--jade-dark);font-weight:700}
.qh-qi-row .c{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12px;font-weight:700;margin-top:2px}
.qh-qi-row .r{flex:none}
.qh-qi-row .tag{font-size:12px;color:var(--ink-faint);padding:0 6px}
.qh-detail{text-align:center}
.qh-detail .orb.big{width:74px;height:74px;margin:6px auto 4px;display:flex;align-items:center;justify-content:center;animation:qhBreath 2.4s ease-in-out infinite}
.qh-detail .orb.big b{position:relative;font-family:var(--font-brush);font-size:20px;color:#fff;text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.7)}
.qh-detail .n{font-family:var(--font-brush);font-size:26px;letter-spacing:2px;color:#3a1d0c}
.qh-detail .d{font-size:13px;color:var(--ink-soft);line-height:1.5;margin-bottom:6px}
/* 铜人经脉图 */
.qh-body{position:relative;margin:6px 10px 0;padding:6px 6px 4px;border-radius:8px;background:var(--tex-paper),radial-gradient(ellipse at 50% 40%,#f3e6c4,#e0cb98 70%,#c9a96e);box-shadow:inset 0 0 0 1px rgba(122,79,0,.5),inset 0 0 40px rgba(120,80,30,.25)}
.qh-body-title{text-align:center;font-family:var(--font-brush);font-size:20px;letter-spacing:2px;color:#3a1d0c}
.qh-body-title b{color:var(--red)}
.qh-body-svg{display:block;width:100%;height:auto;max-height:440px;margin:0 auto}
.qh-body-svg .figure{filter:drop-shadow(0 3px 3px rgba(0,0,0,.35))}
.qh-body-svg .mer{fill:none;stroke:var(--mc,#f2c245);stroke-width:2;stroke-opacity:.25;stroke-dasharray:4 4;stroke-linecap:round;stroke-linejoin:round}
.qh-body-svg .mer.half{stroke-opacity:.55}
.qh-body-svg .mer.on{stroke-opacity:.95;stroke-dasharray:none;filter:drop-shadow(0 0 3px var(--mc,#f2c245))}
.qh-body-svg .pt{cursor:pointer}
.qh-body-svg .pt .halo{fill:var(--mc,#f2c245);opacity:0}
.qh-body-svg .pt .core{fill:#2b1d12;stroke:var(--mc,#f2c245);stroke-width:1.5;stroke-opacity:.6}
.qh-body-svg .pt .lb{font-family:var(--font-body);font-size:11px;fill:#5b4630;opacity:.75;pointer-events:none}
.qh-body-svg .pt.on .halo{opacity:.35}
.qh-body-svg .pt.on .core{fill:var(--mc,#f2c245);stroke:#fff6cf;stroke-opacity:1;filter:drop-shadow(0 0 4px var(--mc,#f2c245))}
.qh-body-svg .pt.on .lb{fill:#2b1d12;opacity:1;font-weight:700}
.qh-body-svg .pt.next .core{fill:#fff6cf;stroke:var(--mc,#f2c245);stroke-width:2.5;stroke-opacity:1}
.qh-body-svg .pt.next .pulse{fill:none;stroke:var(--mc,#f2c245);stroke-width:2;animation:qhPulse 1.3s ease-out infinite;transform-origin:center}
.qh-body-svg .pt.next .lb{fill:#a8261b;opacity:1;font-weight:700}
@keyframes qhPulse{0%{transform:scale(.6);opacity:1}100%{transform:scale(2.2);opacity:0}}
.qh-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 10px;padding:4px 0 2px;font-size:11px;color:var(--ink-soft)}
.qh-legend span{display:inline-flex;align-items:center;gap:3px}
.qh-legend i{width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 1px #3a1d0c}
.qh-mdesc{font-size:13px;line-height:1.6;color:var(--ink-soft);margin:2px 0 4px}
.qh-mer-list{margin:8px 10px 0}
.qh-mer-row{display:flex;align-items:center;gap:10px;padding:6px 8px;margin-bottom:4px;border-radius:6px;background:rgba(255,248,225,.55);box-shadow:inset 0 0 0 1px rgba(122,79,0,.3)}
.qh-mer-row.full{background:rgba(242,194,69,.3);box-shadow:inset 0 0 0 1px rgba(184,134,11,.7)}
.qh-mer-row .seal{--dummy:0}
.qh-mer-row .b{flex:1 1 auto;min-width:0}
.qh-mer-row .n{font-family:var(--font-brush);font-size:18px;letter-spacing:1px;color:#3a1d0c}
.qh-mer-row .n small{font-family:var(--font-body);font-size:11px;letter-spacing:0;color:var(--ink-soft);margin-left:6px}
.qh-mer-row .dots{display:flex;gap:5px;margin:2px 0}
.qh-mer-row .dots i{width:11px;height:11px;border-radius:50%;background:#c9a96e;box-shadow:inset 0 0 0 1px rgba(58,29,12,.5)}
.qh-mer-row .dots i.on{background:var(--mc,#f2c245);box-shadow:0 0 0 1px #3a1d0c,0 0 6px var(--mc,#f2c245)}
.qh-mer-row .dots i.next{background:#fff6cf;box-shadow:0 0 0 2px var(--mc,#f2c245);animation:pulseGold 1.4s ease-out infinite}
.qh-mer-row .a{font-size:11px;color:var(--jade-dark);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
