/* ══════════ BUILD 221 · 五款新游戏(GM 测试)══════════
   闪电骰宝(#lsicboview,沿用骰宝 .sbwrap 那一套,这里只换火焰主题)· Andar Bahar(.ab-*)· 三张牌扑克(.tc-*)· Ludo(.ld-*)· 幸运嘉年华(.bw-*)
   后四款和德州 / 闪电百家乐共用 uth.css 的舞台(.uth-stage / .uth-scene 16:9,--u = 牌桌宽 1%)、顶栏、筹码、按钮;.g221 = 这四款共用的小件 */

/* ── 视图(整屏)── */
#abaharview,#tcpview,#ludoview,#bwheelview{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;overflow:hidden}
#abaharview.hide,#tcpview.hide,#ludoview.hide,#bwheelview.hide{display:none}
#abaharview{background:#120406 !important}#tcpview{background:#030a07 !important}#ludoview{background:#0b0705 !important}#bwheelview{background:#07041a !important}
#abaharview::before,#tcpview::before,#ludoview::before,#bwheelview::before{content:"";position:absolute;inset:-40px;filter:blur(22px) brightness(.35) saturate(1.1);pointer-events:none;background-position:center;background-size:cover}
#abaharview::before{background-image:url(abahar-bg.webp?v=054ecf31)}#tcpview::before{background-image:url(tcp-bg.webp?v=08d145f7)}#ludoview::before{background-image:url(ludo-bg.webp?v=a0107a9a)}#bwheelview::before{background-image:url(bw-bg.webp?v=dcde0a1e)}
#abaharwrap,#tcpwrap,#ludowrap,#bwheelwrap{display:flex;align-items:center;justify-content:center}

/* ── 四款共用:倒计时 / 在场人数 / 历史 / 筹码条 ── */
.g221 .lb-clock{position:absolute;left:calc(var(--u)*1.6);top:calc(var(--u)*5.2);z-index:5;display:flex;align-items:center;gap:calc(var(--u)*.6);padding:calc(var(--u)*.3) calc(var(--u)*1.1) calc(var(--u)*.3) calc(var(--u)*.35);border-radius:99px;
  background:rgba(6,6,10,.72);border:1px solid rgba(246,221,155,.45);backdrop-filter:blur(6px);color:#f7f1e3;box-shadow:0 calc(var(--u)*.3) calc(var(--u)*1) rgba(0,0,0,.4)}
.g221 .lb-clock b{display:grid;place-items:center;width:calc(var(--u)*2.8);height:calc(var(--u)*2.8);border-radius:50%;font:900 max(calc(var(--u)*1.4),12px)/1 var(--ff);color:#1d1304;background:radial-gradient(circle at 35% 30%,#fff6cf,#f0c95c 60%,#b8862e);box-shadow:0 0 calc(var(--u)*.8) rgba(240,201,92,.55)}
.g221 .lb-clock i{font-style:normal;font-weight:800;font-size:max(calc(var(--u)*.9),10px);letter-spacing:.06em}
.g221 .lb-clock.hurry b{background:radial-gradient(circle at 35% 30%,#ffd1c8,#ff6b55 60%,#a5281a);color:#fff;animation:g2Hurry .5s ease-in-out infinite alternate}
.g221 .lb-clock:not(.betting){padding:calc(var(--u)*.55) calc(var(--u)*1.2)}
@keyframes g2Hurry{to{transform:scale(1.12)}}
.g221 .lb-online{position:absolute;left:calc(var(--u)*1.8);top:calc(var(--u)*9.1);z-index:5;font:700 max(calc(var(--u)*.72),9px) var(--ff);color:rgba(247,241,227,.6);letter-spacing:.04em}
.g221 .lb-left{bottom:calc(var(--u)*.9 + env(safe-area-inset-bottom,0px))}
.g221 .lb-left .uth-pick{flex-direction:row;align-items:center;gap:calc(var(--u)*.6);padding:calc(var(--u)*.45) calc(var(--u)*.9);border-radius:99px}
.g221 .lb-left .uth-chiprow{gap:calc(var(--u)*.4)}
.g221 .lb-left .uth-chiprow button{width:calc(var(--u)*3.4);height:calc(var(--u)*3.4)}
.g221 .lb-right{flex-direction:row;align-items:flex-end;bottom:calc(var(--u)*.9 + env(safe-area-inset-bottom,0px));min-width:0}
.g221 .lb-right .lb-row .uth-btn{height:calc(var(--u)*3.8);padding:0 calc(var(--u)*1.1)}
.g221 .lb-right .uth-btn.big{height:calc(var(--u)*3.8);min-width:calc(var(--u)*12);font-size:max(calc(var(--u)*1.3),12px)}
.g221 .lb-row{display:flex;gap:calc(var(--u)*.6)}
.g221 .lb-row:empty{display:none}
.g221 .uth-msg{z-index:4}
.g221 .stack{position:absolute;width:calc(var(--u)*2.8);height:calc(var(--u)*2.8);pointer-events:none}
.g221 .stack.sm{width:calc(var(--u)*2.3);height:calc(var(--u)*2.3)}
.g221 .stack.drop .tstk:last-child{animation:g2Drop .26s cubic-bezier(.2,.9,.3,1.2)}
@keyframes g2Drop{from{transform:translateY(calc(var(--u)*-3)) scaleY(.82);opacity:.2}to{transform:scaleY(.82);opacity:1}}
.g221 .amt{position:absolute;z-index:3;font:900 max(calc(var(--u)*.78),9px) var(--ff);font-variant-numeric:tabular-nums;color:#1a1207;background:linear-gradient(180deg,#fbe7a6,#d8ad4c);padding:0 calc(var(--u)*.4);border-radius:99px;box-shadow:0 1px 3px rgba(0,0,0,.5);pointer-events:none}
.g221 .amt:empty{display:none}
.g221 .pay{position:absolute;z-index:4;font:900 max(calc(var(--u)*.85),9px) var(--ff);text-decoration:none;opacity:0;transition:.3s;white-space:nowrap;padding:0 calc(var(--u)*.5);border-radius:99px;background:rgba(4,6,8,.86);border:1px solid currentColor;pointer-events:none}
.g221 .pay.on{opacity:1}
.g221 .pay.w{color:#8ff0b8}.g221 .pay.l{color:#ff9b9b}.g221 .pay.p{color:#ddd}
.g221 .pay i{font-style:normal;margin-left:.4em;opacity:.8}
.g221 .uth-result{top:calc(var(--u)*24);flex-direction:column;gap:calc(var(--u)*.15);padding:calc(var(--u)*.7) calc(var(--u)*1.8);border-radius:calc(var(--u)*1.2)}
.g221 .uth-result b{font-size:calc(var(--u)*2.1)}
.g221 .uth-result:not(.on){visibility:hidden}

/* ════════ Andar Bahar(酒红绒 + 金,印度宫廷风)════════ */
.ab-bg{background:url(abahar-bg.webp?v=054ecf31) center/cover no-repeat,radial-gradient(ellipse 70% 60% at 50% 45%,#6b1424,#3a0912 60%,#170307)}
.ab-vig{background:radial-gradient(ellipse 85% 75% at 50% 50%,transparent 58%,rgba(10,0,2,.6) 100%)}
.ab-stage{--gold:#f0c95c;--gold2:#ffe7a8;--maroon:#5a0f1c}
.ab-joker{position:absolute;left:calc(var(--u)*4.2);top:calc(var(--u)*12.6);width:calc(var(--u)*11);height:calc(var(--u)*19.4);z-index:3;display:flex;flex-direction:column;align-items:center;gap:calc(var(--u)*.6);
  padding:calc(var(--u)*.9) calc(var(--u)*.8);border-radius:calc(var(--u)*1.2);background:linear-gradient(180deg,rgba(40,6,12,.82),rgba(18,2,6,.9));border:calc(var(--u)*.16) solid rgba(240,201,92,.75);
  box-shadow:inset 0 0 0 calc(var(--u)*.35) rgba(0,0,0,.35),inset 0 0 0 calc(var(--u)*.45) rgba(240,201,92,.35),0 calc(var(--u)*.4) calc(var(--u)*1.6) rgba(0,0,0,.55)}
.ab-joker.lit{box-shadow:inset 0 0 0 calc(var(--u)*.35) rgba(0,0,0,.35),inset 0 0 0 calc(var(--u)*.45) rgba(240,201,92,.5),0 0 calc(var(--u)*2.4) rgba(240,201,92,.55)}
.ab-jlbl{display:flex;flex-direction:column;align-items:center;line-height:1.05}
.ab-jlbl b{font:800 max(calc(var(--u)*1.25),12px) Georgia,serif;color:var(--gold2);letter-spacing:.06em}
.ab-jlbl i{font:800 max(calc(var(--u)*.62),8px) var(--ff);font-style:normal;letter-spacing:.32em;color:rgba(240,201,92,.75)}
.ab-jslot{position:relative;width:calc(var(--u)*8.6);aspect-ratio:5/7}
.ab-jslot .uth-card{width:100%}
.ab-jslot .ab-jback{width:100%;height:100%;border-radius:calc(var(--u)*.5);overflow:hidden;opacity:.85;box-shadow:0 calc(var(--u)*.4) calc(var(--u)*1) rgba(0,0,0,.5)}
.ab-jslot .ab-jback svg{width:100%;height:100%;display:block}
.ab-jcard>div{box-shadow:0 0 0 calc(var(--u)*.18) var(--gold),0 0 calc(var(--u)*2) rgba(240,201,92,.75),0 calc(var(--u)*.5) calc(var(--u)*1) rgba(0,0,0,.5) !important}
.ab-lane{position:absolute;left:calc(var(--u)*17.2);width:calc(var(--u)*79);height:calc(var(--u)*9.1);z-index:3;border-radius:calc(var(--u)*1);
  background:linear-gradient(90deg,rgba(24,3,8,.78),rgba(24,3,8,.48) 70%,rgba(24,3,8,.3));border:1px solid rgba(240,201,92,.45);box-shadow:inset 0 0 calc(var(--u)*1.4) rgba(0,0,0,.45)}
.ab-lane.l-andar{top:calc(var(--u)*12.6)}.ab-lane.l-bahar{top:calc(var(--u)*22.9)}
.ab-lane.won{border-color:var(--gold2);box-shadow:inset 0 0 calc(var(--u)*1.4) rgba(0,0,0,.35),0 0 calc(var(--u)*2) rgba(240,201,92,.6)}
.ab-tag{position:absolute;left:0;top:0;bottom:0;width:calc(var(--u)*8);display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:calc(var(--u)*1) 0 0 calc(var(--u)*1);
  background:linear-gradient(180deg,#7a1526,#3b0710);border-right:1px solid rgba(240,201,92,.55)}
.ab-tag b{font:800 max(calc(var(--u)*1.35),12px) Georgia,serif;color:var(--gold2);letter-spacing:.04em}
.ab-tag i{font:700 max(calc(var(--u)*.58),8px) var(--ff);font-style:normal;color:rgba(255,231,168,.7);letter-spacing:.06em}
.l-bahar .ab-tag{background:linear-gradient(180deg,#14385e,#081a30)}
.ab-cards{position:absolute;left:calc(var(--u)*9);right:calc(var(--u)*1);top:calc(var(--u)*.7);bottom:calc(var(--u)*.7)}
.ab-cards .ab-card{position:absolute;top:0;width:calc(var(--u)*5.6);transition:left .3s cubic-bezier(.3,.7,.3,1)}
.ab-card.ab-deal{animation:abDeal .42s cubic-bezier(.2,.85,.3,1)}
@keyframes abDeal{from{transform:translate(calc(var(--u)*30),calc(var(--u)*-14)) rotate(-14deg) scale(.6);opacity:0}60%{opacity:1}to{transform:none;opacity:1}}
.ab-card.ab-match>div{box-shadow:0 0 0 calc(var(--u)*.22) #ffe7a8,0 0 calc(var(--u)*2.2) rgba(255,215,120,.95) !important}
.ab-card.ab-match{z-index:50 !important;animation:abDeal .42s cubic-bezier(.2,.85,.3,1),abPop .6s .5s ease-out}
@keyframes abPop{50%{transform:scale(1.18) translateY(calc(var(--u)*-.6))}}
.ab-hit{position:absolute;right:calc(var(--u)*1);top:50%;transform:translateY(-50%) scale(.6);opacity:0;z-index:60;padding:calc(var(--u)*.3) calc(var(--u)*1);border-radius:99px;font:900 max(calc(var(--u)*1.2),12px) Georgia,serif;
  color:#1d1304;background:linear-gradient(180deg,#fff6cf,#f0c95c);box-shadow:0 0 calc(var(--u)*1.6) rgba(240,201,92,.8);transition:.35s cubic-bezier(.2,.9,.3,1.3)}
.ab-hit.on{opacity:1;transform:translateY(-50%) scale(1)}
.ab-count{position:absolute;left:calc(var(--u)*4.2);top:calc(var(--u)*32.6);width:calc(var(--u)*11);display:flex;align-items:baseline;justify-content:center;gap:calc(var(--u)*.4);z-index:3;color:var(--gold2);text-shadow:0 1px 4px #000}
.ab-count b{font:900 max(calc(var(--u)*1.7),14px) Georgia,serif}
.ab-count i{font:700 max(calc(var(--u)*.7),9px) var(--ff);font-style:normal;opacity:.8}
.ab-shoe{position:absolute;right:calc(var(--u)*1.6);top:calc(var(--u)*5.2);width:calc(var(--u)*7.6);height:calc(var(--u)*5.2);z-index:2;border-radius:calc(var(--u)*.8);
  background:linear-gradient(160deg,#2b1a0a,#0d0703);border:1px solid rgba(240,201,92,.5);box-shadow:inset 0 calc(var(--u)*-1.6) 0 rgba(240,201,92,.12),0 calc(var(--u)*.4) calc(var(--u)*1) rgba(0,0,0,.5)}
.ab-shoe::after{content:"";position:absolute;left:12%;right:12%;top:18%;height:42%;border-radius:calc(var(--u)*.3);background:linear-gradient(90deg,#a3182f,#5a0a17);opacity:.9}
.ab-spot{position:absolute;z-index:3;padding:0;cursor:pointer;color:#f7f1e3;font-family:var(--ff);-webkit-tap-highlight-color:transparent;transition:transform .1s,box-shadow .2s,border-color .2s}
.ab-spot:active{transform:scale(.985)}
.ab-main{top:calc(var(--u)*33.6);height:calc(var(--u)*11.2);width:calc(var(--u)*19);border-radius:calc(var(--u)*1.4);border:calc(var(--u)*.18) solid rgba(255,231,168,.75);
  box-shadow:inset 0 0 0 calc(var(--u)*.4) rgba(0,0,0,.25),inset 0 0 0 calc(var(--u)*.5) rgba(255,231,168,.3),0 calc(var(--u)*.5) calc(var(--u)*1.4) rgba(0,0,0,.5)}
.ab-main.s-andar{left:calc(var(--u)*17.2);background:radial-gradient(ellipse at 30% 20%,rgba(255,120,140,.35),transparent 60%),linear-gradient(160deg,#a01e33,#5a0a17 55%,#2a040b)}
.ab-main.s-bahar{right:calc(var(--u)*4);background:radial-gradient(ellipse at 70% 20%,rgba(120,180,255,.35),transparent 60%),linear-gradient(200deg,#1d5a96,#0c2c52 55%,#051428)}
.ab-main .nm{position:absolute;left:0;right:0;top:calc(var(--u)*1.1);display:flex;flex-direction:column;align-items:center;line-height:1.05;pointer-events:none}
.ab-main .nm b{font:800 max(calc(var(--u)*2.1),16px) Georgia,serif;letter-spacing:.05em;color:#fff3d0;text-shadow:0 2px 6px rgba(0,0,0,.6)}
.ab-main .nm i{font:800 max(calc(var(--u)*.95),10px) var(--ff);font-style:normal;color:var(--gold2);letter-spacing:.08em;margin-top:calc(var(--u)*.2)}
.ab-main .stack{left:calc(var(--u)*1.2);bottom:calc(var(--u)*.8)}
.ab-main .amt{left:calc(var(--u)*4.4);bottom:calc(var(--u)*1)}
.ab-main .pay{left:50%;top:calc(var(--u)*-1.5);transform:translateX(-50%)}
.ab-main .pool{position:absolute;right:calc(var(--u)*1);bottom:calc(var(--u)*.8);font:700 max(calc(var(--u)*.7),8px) var(--ff);text-decoration:none;color:rgba(255,231,168,.7)}
.ab-spot.has{border-color:#fff3c4}
.ab-spot.win{animation:abWin .9s ease-in-out 3;border-color:#fff3c4 !important}
@keyframes abWin{50%{box-shadow:0 0 0 calc(var(--u)*.25) #fff3c4,0 0 calc(var(--u)*2.6) rgba(255,215,120,.9)}}
.ab-sides{position:absolute;left:calc(var(--u)*37.6);width:calc(var(--u)*37.4);top:calc(var(--u)*33.2);z-index:3}
.ab-sides h6{margin:0 0 calc(var(--u)*.4);text-align:center;font:800 max(calc(var(--u)*.7),8px) var(--ff);letter-spacing:.18em;color:rgba(255,231,168,.8);text-transform:uppercase}
.ab-sgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(var(--u)*.45)}
.ab-side{position:relative;height:calc(var(--u)*5);border-radius:calc(var(--u)*.7);border:1px solid rgba(240,201,92,.5);background:linear-gradient(180deg,rgba(60,10,20,.85),rgba(20,3,7,.92));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;box-shadow:inset 0 0 calc(var(--u)*.8) rgba(0,0,0,.4)}
.ab-side b{font:800 max(calc(var(--u)*1.05),11px) var(--ff);color:#fff3d0;font-variant-numeric:tabular-nums}
.ab-side i{font:800 max(calc(var(--u)*.72),9px) var(--ff);font-style:normal;color:var(--gold)}
.ab-side .stack{right:calc(var(--u)*.2);top:calc(var(--u)*-.4);width:calc(var(--u)*1.9);height:calc(var(--u)*1.9)}
.ab-side .amt{left:calc(var(--u)*.3);top:calc(var(--u)*-.6);font-size:max(calc(var(--u)*.62),8px)}
.ab-side .pay{left:50%;bottom:calc(var(--u)*-1.4);transform:translateX(-50%);font-size:max(calc(var(--u)*.7),8px)}
.ab-side.live{border-color:#fff3c4;background:linear-gradient(180deg,rgba(150,40,60,.9),rgba(60,8,18,.92));box-shadow:0 0 calc(var(--u)*1.2) rgba(240,201,92,.55)}
.ab-banner{position:absolute;left:calc(var(--u)*56.6);top:calc(var(--u)*19.4);transform:translate(-50%,-50%) scale(.6);opacity:0;z-index:70;pointer-events:none;display:flex;flex-direction:column;align-items:center;
  padding:calc(var(--u)*.6) calc(var(--u)*2.2);border-radius:calc(var(--u)*1.2);background:rgba(20,3,7,.88);border:calc(var(--u)*.16) solid #ffe7a8;box-shadow:0 0 calc(var(--u)*3) rgba(240,201,92,.6);transition:.4s cubic-bezier(.2,.9,.3,1.3)}
.ab-banner.on{opacity:1;transform:translate(-50%,-50%) scale(1)}
.ab-banner b{font:900 max(calc(var(--u)*2.4),18px) Georgia,serif;color:#ffe7a8;letter-spacing:.04em;text-shadow:0 0 calc(var(--u)*1) rgba(240,201,92,.7)}
.ab-banner i{font:700 max(calc(var(--u)*.85),10px) var(--ff);font-style:normal;color:#fff3d0;opacity:.8}
.ab-banner.bahar{border-color:#9fd0ff;box-shadow:0 0 calc(var(--u)*3) rgba(80,150,255,.55)}.ab-banner.bahar b{color:#cfe6ff}
.ab-hist,.ld-hist{display:flex;gap:calc(var(--u)*.25);align-items:center;margin-right:calc(var(--u)*.4)}
.ab-hist i{display:grid;place-items:center;width:calc(var(--u)*1.6);height:calc(var(--u)*1.6);border-radius:50%;font:900 max(calc(var(--u)*.7),8px) var(--ff);font-style:normal;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.ab-hist i.a{background:#a01e33}.ab-hist i.b{background:#1d5a96}
.ab-stage .uth-msg{top:calc(var(--u)*45.6)}
.ab-result{top:calc(var(--u)*19.4);left:calc(var(--u)*56.6)}
.ab-stage:has(.ab-result.on) .ab-banner{opacity:0}

/* ════════ 三张牌扑克(祖母绿 + 金)════════ */
.tc-bg{background:url(tcp-bg.webp?v=08d145f7) center/cover no-repeat,radial-gradient(ellipse 70% 55% at 50% 60%,#1d7a5b 0%,#0e4a37 45%,#062419 72%,#020806 100%)}
.tc-row{position:absolute;left:50%;transform:translateX(-50%);display:flex;gap:calc(var(--u)*1.2);z-index:3}
.tc-dcards{top:calc(var(--u)*7.4)}
.tc-pcards{top:calc(var(--u)*31.2)}
.tc-dcards .tc-card{width:calc(var(--u)*6.4)}
.tc-pcards .tc-card{width:calc(var(--u)*8)}
.tc-card.folded{filter:grayscale(.7) brightness(.55);transition:filter .3s}
.tc-lbl{position:absolute;left:50%;transform:translateX(-50%);z-index:4;font-size:max(calc(var(--u)*.95),10px);white-space:nowrap;text-shadow:0 1px 6px rgba(0,0,0,.8);padding:calc(var(--u)*.25) calc(var(--u)*1);border-radius:99px;background:rgba(4,8,6,.72);border:1px solid rgba(233,196,106,.3)}
.tc-lbl:empty{display:none}
.tc-lbl b{font:700 max(calc(var(--u)*1.1),11px) Georgia,serif;color:#f6dd9b}
.tc-lbl .q{color:#8ff0b8}.tc-lbl .nq{color:#ffb38a}
.tc-dlbl{top:calc(var(--u)*17.2)}
.tc-plbl{top:calc(var(--u)*43.2)}
.tc-plbl.pop{animation:tcPop .5s cubic-bezier(.2,.9,.3,1.4)}
@keyframes tcPop{from{transform:translateX(-50%) scale(.6);opacity:0}}
#tcStage .tc-spot{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:50%;
  border:calc(var(--u)*.2) solid #d8b25a;background:radial-gradient(circle at 50% 40%,rgba(255,255,255,.06),rgba(0,0,0,.28));
  box-shadow:inset 0 0 0 calc(var(--u)*.35) rgba(0,0,0,.2),inset 0 0 0 calc(var(--u)*.48) rgba(233,196,106,.38),0 calc(var(--u)*.3) calc(var(--u)*1) rgba(0,0,0,.35)}
#tcStage .tc-spot.s-pp{left:calc(var(--u)*24.2);top:calc(var(--u)*27.6);width:calc(var(--u)*5.6);height:calc(var(--u)*5.6);border-radius:calc(var(--u)*.9);transform:translate(-50%,-50%) rotate(45deg)}
#tcStage .tc-spot.s-pp>*{transform:rotate(-45deg)}
#tcStage .tc-spot.s-ante{left:calc(var(--u)*20.4);top:calc(var(--u)*36.2);width:calc(var(--u)*6.6);height:calc(var(--u)*6.6)}
#tcStage .tc-spot.s-play{left:calc(var(--u)*28.2);top:calc(var(--u)*36.2);width:calc(var(--u)*6.6);height:calc(var(--u)*6.6)}
#tcStage .tc-spot.lit{border-color:#fbe7a6;box-shadow:inset 0 0 0 calc(var(--u)*.35) rgba(0,0,0,.2),inset 0 0 0 calc(var(--u)*.48) rgba(246,221,155,.55),0 0 calc(var(--u)*1.4) rgba(246,221,155,.5)}
#tcStage .tc-spot em{position:absolute;display:block;font:800 max(calc(var(--u)*.62),8px) var(--ff);font-style:normal;letter-spacing:.16em;color:rgba(250,226,160,.95);text-transform:uppercase;white-space:nowrap;top:calc(100% + var(--u)*.2)}
#tcStage .tc-spot.s-pp em{top:50%;left:50%;bottom:auto;transform-origin:0 0;transform:rotate(-45deg) translate(-50%,calc(var(--u)*-4.9))}
#tcStage .tc-spot .stack{position:relative;width:calc(var(--u)*3);height:calc(var(--u)*3)}
#tcStage .tc-spot .amt{position:absolute;left:calc(50% + var(--u)*1.2);top:55%;bottom:auto;transform:none;background:linear-gradient(180deg,#fbe7a6,#d8ad4c);color:#1a1207;font-weight:900;padding:0 calc(var(--u)*.45);border-radius:99px;font-size:max(calc(var(--u)*.78),9px)}
#tcStage .tc-spot .amt:empty{display:none}
#tcStage .tc-spot .pay{position:absolute;right:calc(100% + var(--u)*.4);top:50%;transform:translateY(-50%);left:auto;bottom:auto;white-space:nowrap;padding:calc(var(--u)*.08) calc(var(--u)*.55);border-radius:99px;background:rgba(4,10,8,.86);border:1px solid currentColor;font:800 max(calc(var(--u)*.82),9px) var(--ff);text-decoration:none;opacity:0;transition:.3s}
#tcStage .tc-spot.s-play .pay{left:calc(100% + var(--u)*.4);right:auto}
#tcStage .tc-spot.s-pp .pay{right:auto;left:50%;top:50%;transform-origin:0 0;transform:rotate(-45deg) translate(calc(var(--u)*3.7),-50%)}
#tcStage .tc-spot.s-pp .amt{left:50%;top:50%;transform-origin:0 0;transform:rotate(-45deg) translate(calc(var(--u)*1.1),calc(var(--u)*.1))}
#tcStage .tc-spot .pay.on{opacity:1}
#tcStage .tc-spot .pay.w{color:#8ff0b8}#tcStage .tc-spot .pay.l{color:#ff8b8b}#tcStage .tc-spot .pay.p{color:#d9d4c6}
#tcStage .tc-spot .pay i{font-style:normal;margin-left:.4em;opacity:.8}
#tcStage .tc-spot.push .stack{animation:uthPush .38s cubic-bezier(.2,.8,.3,1)}
.tc-felt{position:absolute;left:calc(var(--u)*68.4);top:calc(var(--u)*27.6);width:calc(var(--u)*21);display:grid;grid-template-columns:1fr;gap:calc(var(--u)*.9);z-index:2;pointer-events:none;
  padding:calc(var(--u)*.9) calc(var(--u)*1.2);border-radius:calc(var(--u)*1);border:1px solid rgba(233,196,106,.45);background:rgba(2,16,10,.45);box-shadow:inset 0 0 0 calc(var(--u)*.25) rgba(0,0,0,.2),inset 0 0 0 calc(var(--u)*.32) rgba(233,196,106,.2);
  color:rgba(246,221,160,.9);font:700 max(calc(var(--u)*.7),8px)/1.35 var(--ff)}
.tc-felt h6{margin:0 0 calc(var(--u)*.2);font:800 max(calc(var(--u)*.68),8px) var(--ff);letter-spacing:.14em;text-transform:uppercase;color:#f6dd9b;border-bottom:1px solid rgba(233,196,106,.3);padding-bottom:calc(var(--u)*.15)}
.tc-felt .tb{display:grid;grid-template-columns:1fr 1fr;column-gap:calc(var(--u)*.8)}
.tc-felt p{margin:0;display:flex;justify-content:space-between;gap:calc(var(--u)*.3);white-space:nowrap}
.tc-felt p b{color:#ffe6a8}
.tc-stage .uth-msg{top:calc(var(--u)*47.2)}
.tc-result{top:calc(var(--u)*24.6)}

/* ════════ Ludo(胡桃木 + 宝石色)════════ */
.ld-bg{background:url(ludo-bg.webp?v=a0107a9a) center/cover no-repeat,radial-gradient(ellipse 70% 60% at 50% 45%,#2a1b10,#120a05 70%)}
.ld-vig{background:radial-gradient(ellipse 85% 75% at 50% 50%,transparent 55%,rgba(0,0,0,.55) 100%)}
.ld-board{position:absolute;left:calc(var(--u)*29.5);top:calc(var(--u)*5.6);width:calc(var(--u)*41);height:calc(var(--u)*41);z-index:3;border-radius:calc(var(--u)*1.4);
  box-shadow:0 0 0 calc(var(--u)*.35) #6b4a1a,0 0 0 calc(var(--u)*.55) #f0c95c,0 calc(var(--u)*1) calc(var(--u)*3) rgba(0,0,0,.65),0 0 calc(var(--u)*5) rgba(240,201,92,.15)}
.ld-board canvas{display:block;width:100%;height:100%;border-radius:calc(var(--u)*1.4)}
.ld-banner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.6);opacity:0;pointer-events:none;z-index:4;white-space:nowrap;padding:calc(var(--u)*.5) calc(var(--u)*1.6);border-radius:99px;
  background:rgba(10,6,3,.82);border:calc(var(--u)*.14) solid #f0c95c;box-shadow:0 0 calc(var(--u)*2) rgba(240,201,92,.45);transition:.3s cubic-bezier(.2,.9,.3,1.3)}
.ld-banner.on{opacity:1;transform:translate(-50%,-50%) scale(1)}
.ld-banner b{font:900 max(calc(var(--u)*1.5),13px) Georgia,serif;color:#ffe7a8;letter-spacing:.03em}
.ld-banner.round{top:9%}
.ld-banner.extra{top:9%;border-color:#ff6b6b}.ld-banner.extra b{color:#ffd0d0}
.ld-banner.kick{border-color:#ff9a3c;box-shadow:0 0 calc(var(--u)*2.4) rgba(255,140,60,.6)}
.ld-banner.win b{font-size:max(calc(var(--u)*2.4),18px)}
.ld-banner.win.c-red{border-color:#ff5a63}.ld-banner.win.c-green{border-color:#4fe08e}.ld-banner.win.c-yellow{border-color:#ffe066}.ld-banner.win.c-blue{border-color:#69a8ff}
.ld-panel{position:absolute;top:calc(var(--u)*11);z-index:3;width:calc(var(--u)*25);display:flex;flex-direction:column;gap:calc(var(--u)*.55);padding:calc(var(--u)*.9);border-radius:calc(var(--u)*1.2);
  background:linear-gradient(180deg,rgba(26,16,8,.82),rgba(10,6,3,.88));border:1px solid rgba(240,201,92,.4);box-shadow:0 calc(var(--u)*.5) calc(var(--u)*1.6) rgba(0,0,0,.5);backdrop-filter:blur(4px)}
.ld-pl{left:calc(var(--u)*2)}.ld-pr{right:calc(var(--u)*2)}
.ld-panel h6{margin:0;display:flex;justify-content:space-between;align-items:baseline;font:800 max(calc(var(--u)*.8),9px) var(--ff);letter-spacing:.12em;color:#f6dd9b;text-transform:uppercase}
.ld-panel h6 i{font-style:normal;color:#ffe7a8;letter-spacing:.02em}
.ld-g4{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*.45)}
.ld-g4.sm{grid-template-columns:repeat(4,1fr)}
.ld-g2{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*.45)}
.ld-g3{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*.45)}
.ld-spot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--u)*.15);height:calc(var(--u)*5.4);padding:0;border-radius:calc(var(--u)*.8);cursor:pointer;color:#fff;
  border:1px solid rgba(255,255,255,.2);background:linear-gradient(180deg,rgba(60,40,20,.85),rgba(20,12,5,.92));box-shadow:inset 0 calc(var(--u)*.2) calc(var(--u)*.6) rgba(255,255,255,.08);transition:transform .1s,box-shadow .2s;-webkit-tap-highlight-color:transparent}
.ld-spot:active{transform:scale(.97)}
.ld-spot b{font:800 max(calc(var(--u)*1),10px) var(--ff)}
.ld-spot i{font:800 max(calc(var(--u)*.72),8px) var(--ff);font-style:normal;color:#f6dd9b}
.ld-spot.win{height:calc(var(--u)*6.2)}
.ld-g4.sm .ld-spot{height:calc(var(--u)*4.3)}
.ld-g4.sm .ld-spot b{font-size:max(calc(var(--u)*.8),9px)}
.ld-spot .pawn,.ld-rank .pawn{width:calc(var(--u)*1.5);height:calc(var(--u)*1.8);border-radius:50% 50% 40% 40% / 45% 45% 55% 55%;box-shadow:inset 0 calc(var(--u)*-.3) 0 rgba(0,0,0,.35),inset 0 calc(var(--u)*.2) calc(var(--u)*.3) rgba(255,255,255,.6),0 1px 3px rgba(0,0,0,.6)}
.ld-g4.sm .ld-spot .pawn{width:calc(var(--u)*1.1);height:calc(var(--u)*1.3)}
.c-red .pawn{background:radial-gradient(circle at 40% 30%,#ffb3b8,#d81f33 55%,#7a0b18)}
.c-green .pawn{background:radial-gradient(circle at 40% 30%,#b8f5d2,#14a352 55%,#06502a)}
.c-yellow .pawn{background:radial-gradient(circle at 40% 30%,#fff3b0,#f0b400 55%,#7a5600)}
.c-blue .pawn{background:radial-gradient(circle at 40% 30%,#c4dcff,#2463d8 55%,#0b2d6e)}
.ld-spot.c-red{background:linear-gradient(180deg,rgba(216,31,51,.55),rgba(60,6,12,.92));border-color:rgba(255,120,130,.6)}
.ld-spot.c-green{background:linear-gradient(180deg,rgba(20,163,82,.55),rgba(4,40,20,.92));border-color:rgba(120,240,170,.6)}
.ld-spot.c-yellow{background:linear-gradient(180deg,rgba(240,180,0,.55),rgba(60,40,0,.92));border-color:rgba(255,224,102,.65)}
.ld-spot.c-blue{background:linear-gradient(180deg,rgba(36,99,216,.55),rgba(6,22,60,.92));border-color:rgba(130,180,255,.6)}
.ld-spot.has{box-shadow:0 0 0 calc(var(--u)*.14) #fbe7a6,inset 0 calc(var(--u)*.2) calc(var(--u)*.6) rgba(255,255,255,.1)}
.ld-spot .stack{right:calc(var(--u)*.2);top:calc(var(--u)*-.5)}
.ld-spot .amt{left:calc(var(--u)*.2);top:calc(var(--u)*-.6);font-size:max(calc(var(--u)*.62),8px)}
.ld-spot .pay{left:50%;bottom:calc(var(--u)*-1.2);transform:translateX(-50%);font-size:max(calc(var(--u)*.68),8px)}
.ld-spot.win{animation:ldWin .9s ease-in-out 3}
.ld-spot.win:not(:hover){box-shadow:0 0 0 calc(var(--u)*.2) #fff3c4,0 0 calc(var(--u)*1.6) rgba(255,215,120,.85)}
@keyframes ldWin{50%{transform:scale(1.04)}}
.ld-g4 .ld-spot.win{height:calc(var(--u)*6.2)}.ld-g4.sm .ld-spot.win{height:calc(var(--u)*4.3)}
.ld-rank{margin-top:calc(var(--u)*.3);display:flex;flex-direction:column;gap:calc(var(--u)*.3)}
.ld-rank p{margin:0;display:grid;grid-template-columns:calc(var(--u)*1.2) calc(var(--u)*1.6) calc(var(--u)*2.6) 1fr calc(var(--u)*2.4);align-items:center;gap:calc(var(--u)*.35);font:700 max(calc(var(--u)*.75),9px) var(--ff);color:#f7f1e3}
.ld-rank p em{font-style:normal;color:#f6dd9b;font-weight:900;text-align:center}
.ld-rank p .pawn{width:calc(var(--u)*1.1);height:calc(var(--u)*1.3)}
.ld-rank p u{height:calc(var(--u)*.55);border-radius:99px;background:rgba(255,255,255,.1);overflow:hidden}
.ld-rank p u i{display:block;height:100%;border-radius:99px;transition:width .2s linear}
.ld-rank .c-red u i{background:#ff5a63}.ld-rank .c-green u i{background:#4fe08e}.ld-rank .c-yellow u i{background:#ffd23f}.ld-rank .c-blue u i{background:#69a8ff}
.ld-rank p s{text-decoration:none;text-align:right;font-variant-numeric:tabular-nums;color:rgba(247,241,227,.7)}
.ld-rank p.won{color:#ffe7a8}.ld-rank p.won em::before{content:"★ "}
.ld-hist i{width:calc(var(--u)*1.25);height:calc(var(--u)*1.5);border-radius:50% 50% 40% 40% / 45% 45% 55% 55%}
.ld-hist i.c-red{background:#d81f33}.ld-hist i.c-green{background:#14a352}.ld-hist i.c-yellow{background:#f0b400}.ld-hist i.c-blue{background:#2463d8}
.ld-stage .uth-msg{top:calc(var(--u)*47.6)}
.ld-result{top:calc(var(--u)*26)}

/* ════════ 幸运嘉年华(夜游乐园霓虹)════════ */
.bw-bg{background:url(bw-bg.webp?v=dcde0a1e) center/cover no-repeat,radial-gradient(ellipse 70% 60% at 40% 50%,#2a0d4a,#0b0420 70%)}
.bw-vig{background:radial-gradient(ellipse 85% 75% at 50% 50%,transparent 55%,rgba(4,0,14,.55) 100%)}
.bw-wheel{position:absolute;left:calc(var(--u)*6.4);top:calc(var(--u)*7);width:calc(var(--u)*46.5);height:calc(var(--u)*46.5);z-index:3;filter:drop-shadow(0 calc(var(--u)*.8) calc(var(--u)*2) rgba(0,0,0,.6))}
.bw-wheel canvas{display:block;width:100%;height:100%}
.bw-slot{position:absolute;left:calc(var(--u)*56.2);top:calc(var(--u)*4.9);width:calc(var(--u)*41.6);z-index:4;display:flex;align-items:center;justify-content:space-between;gap:calc(var(--u)*.8);padding:calc(var(--u)*.45) calc(var(--u)*.6) calc(var(--u)*.45) calc(var(--u)*1.2);border-radius:calc(var(--u)*1);
  background:linear-gradient(180deg,#3a1a06,#1a0a02);border:calc(var(--u)*.16) solid #f0c95c;box-shadow:0 0 calc(var(--u)*1.4) rgba(240,201,92,.35),inset 0 0 calc(var(--u)*.8) rgba(0,0,0,.6)}
.bw-slot.hit{box-shadow:0 0 calc(var(--u)*2.4) rgba(255,220,120,.85),inset 0 0 calc(var(--u)*.8) rgba(0,0,0,.6)}
.bw-slot h6{margin:0;font:900 max(calc(var(--u)*1.1),11px) Georgia,serif;letter-spacing:.06em;color:#ffe7a8;white-space:nowrap;text-shadow:0 0 calc(var(--u)*.6) rgba(240,201,92,.6)}
.bw-slot h6::before{content:"★ ";color:#ffd23f}
.bw-reels{display:flex;gap:calc(var(--u)*.4)}
.bw-reel{display:grid;place-items:center;width:calc(var(--u)*5.2);height:calc(var(--u)*3.4);border-radius:calc(var(--u)*.5);background:linear-gradient(180deg,#fffaf0,#e3d6bc 50%,#fffaf0);box-shadow:inset 0 calc(var(--u)*.3) calc(var(--u)*.5) rgba(0,0,0,.35);overflow:hidden}
.bw-reel.m{width:calc(var(--u)*14)}
.bw-reel i{font:900 max(calc(var(--u)*1.6),13px)/1 "Avenir Next","Segoe UI",sans-serif;font-style:normal;color:var(--c,#3a1a06);display:flex;align-items:center;justify-content:center}
.bw-reel i .ic{width:calc(var(--u)*2.2);height:calc(var(--u)*2.2)}
.bw-reel i.q{color:#9a7a3a}
.bw-reel i.spin{animation:bwSpin .09s linear infinite;filter:blur(.6px)}
@keyframes bwSpin{from{transform:translateY(-40%)}to{transform:translateY(40%)}}
.bw-reel i.land{animation:bwLand .45s cubic-bezier(.2,.9,.3,1.4)}
.bw-reel i.land.m{color:#c0168a}
.bw-reel i.miss{font-size:max(calc(var(--u)*.72),8px);color:#7a6a4a;font-weight:700;text-align:center;line-height:1.1;padding:0 calc(var(--u)*.3)}
@keyframes bwLand{from{transform:translateY(-60%) scale(1.3)}}
.bw-board{position:absolute;left:calc(var(--u)*56.2);top:calc(var(--u)*11.6);width:calc(var(--u)*41.6);display:grid;grid-template-columns:repeat(4,1fr);gap:calc(var(--u)*.7);z-index:3}
.bw-tix{position:relative;height:calc(var(--u)*10.4);padding:0;border-radius:calc(var(--u)*1);cursor:pointer;color:#fff;-webkit-tap-highlight-color:transparent;
  background:radial-gradient(ellipse at 50% 15%,var(--c1),transparent 65%),linear-gradient(170deg,var(--c),var(--c2));border:calc(var(--u)*.18) solid rgba(255,255,255,.85);
  box-shadow:inset 0 0 0 calc(var(--u)*.35) rgba(0,0,0,.18),0 calc(var(--u)*.4) calc(var(--u)*1.2) rgba(0,0,0,.5);transition:transform .1s,box-shadow .2s}
.bw-tix::before,.bw-tix::after{content:"";position:absolute;top:50%;width:calc(var(--u)*1.1);height:calc(var(--u)*1.1);margin-top:calc(var(--u)*-.55);border-radius:50%;background:#0b0420}
.bw-tix::before{left:calc(var(--u)*-.62)}.bw-tix::after{right:calc(var(--u)*-.62)}
.bw-tix:active{transform:scale(.97)}
.bw-tix .nm{position:absolute;left:0;right:0;top:calc(var(--u)*1.1);display:flex;flex-direction:column;align-items:center;gap:calc(var(--u)*.2);pointer-events:none}
.bw-tix .nm b{font:900 max(calc(var(--u)*1.05),11px) "Segoe UI","PingFang SC",sans-serif;text-shadow:0 1px 3px rgba(0,0,0,.6);white-space:nowrap}
.bw-tix .nm b.num{font:900 max(calc(var(--u)*3.6),26px)/1 "Avenir Next","Segoe UI",sans-serif;text-shadow:0 calc(var(--u)*.2) 0 rgba(0,0,0,.35),0 0 calc(var(--u)*1) rgba(255,255,255,.45)}
.bw-tix .nm .ic{width:calc(var(--u)*3);height:calc(var(--u)*3);color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}
.bw-tix .od{position:absolute;left:0;right:0;bottom:calc(var(--u)*.9);text-align:center;font:800 max(calc(var(--u)*.72),8px) var(--ff);font-style:normal;color:rgba(255,255,255,.88);letter-spacing:.04em}
.bw-tix .boost{position:absolute;right:calc(var(--u)*-.5);top:calc(var(--u)*-.9);z-index:5;opacity:0;transform:scale(.4);padding:0 calc(var(--u)*.5);border-radius:99px;font:900 max(calc(var(--u)*.95),10px) var(--ff);font-style:normal;color:#3a1a00;
  background:linear-gradient(180deg,#fff6cf,#f0b400);box-shadow:0 0 calc(var(--u)*1) rgba(255,210,80,.9);transition:.35s cubic-bezier(.2,.9,.3,1.5)}
.bw-tix .boost.on{opacity:1;transform:none}
.bw-tix .stack{left:calc(var(--u)*.5);top:calc(var(--u)*.4)}
.bw-tix .amt{left:calc(var(--u)*.4);bottom:calc(var(--u)*2.5)}
.bw-tix .pay{left:50%;bottom:calc(var(--u)*-1.3);transform:translateX(-50%)}
.bw-tix.has{border-color:#fff3c4;box-shadow:0 0 0 calc(var(--u)*.16) #fff3c4,0 calc(var(--u)*.4) calc(var(--u)*1.2) rgba(0,0,0,.5)}
.bw-tix.hit{animation:bwHit .7s ease-in-out infinite alternate}
@keyframes bwHit{to{box-shadow:0 0 0 calc(var(--u)*.25) #fff,0 0 calc(var(--u)*3) var(--c1)}}
.bw-hist{position:absolute;left:calc(var(--u)*56.2);top:calc(var(--u)*34);width:calc(var(--u)*41.6);z-index:3;display:flex;align-items:center;gap:calc(var(--u)*.35);flex-wrap:wrap}
.bw-hist h6{margin:0 calc(var(--u)*.3) 0 0;font:800 max(calc(var(--u)*.68),8px) var(--ff);letter-spacing:.14em;color:rgba(255,231,168,.75);text-transform:uppercase}
.bw-hist i{position:relative;display:grid;place-items:center;width:calc(var(--u)*2.3);height:calc(var(--u)*2.3);border-radius:50%;font:900 max(calc(var(--u)*.85),9px) var(--ff);font-style:normal;color:#fff;background:linear-gradient(160deg,var(--c),var(--c2));box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.bw-hist i .ic{width:calc(var(--u)*1.3);height:calc(var(--u)*1.3)}
.bw-hist i em{position:absolute;bottom:calc(var(--u)*-1);font:900 max(calc(var(--u)*.55),7px) var(--ff);font-style:normal;color:#ffe7a8;white-space:nowrap}
.bw-callout{position:absolute;left:calc(var(--u)*29.65);top:calc(var(--u)*30.25);transform:translate(-50%,-50%) scale(.5);opacity:0;z-index:8;pointer-events:none;display:flex;flex-direction:column;align-items:center;white-space:nowrap;
  padding:calc(var(--u)*.6) calc(var(--u)*2);border-radius:calc(var(--u)*1.4);background:rgba(10,4,24,.86);border:calc(var(--u)*.18) solid #fff3c4;box-shadow:0 0 calc(var(--u)*3) rgba(255,90,200,.55);transition:.35s cubic-bezier(.2,.9,.3,1.4)}
.bw-callout.on{opacity:1;transform:translate(-50%,-50%) scale(1)}
.bw-callout b{font:900 max(calc(var(--u)*2.6),20px) Georgia,serif;color:#fff3c4;text-shadow:0 0 calc(var(--u)*1.2) rgba(255,90,200,.8)}
.bw-callout i{font:900 max(calc(var(--u)*1.1),11px) var(--ff);font-style:normal;color:#ffd23f}
/* 小游戏舞台:盖住整个牌桌层 */
.bw-bonus{position:absolute;inset:0;z-index:7;display:none;overflow:hidden;background:#07041a}
.bw-bonus.on{display:block;animation:bwIn .5s ease-out}
@keyframes bwIn{from{opacity:0;transform:scale(1.04)}}
.bw-bbg{position:absolute;inset:0;background:center/cover no-repeat}
.bw-bbg::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 70% at 50% 55%,rgba(0,0,0,.15),rgba(0,0,0,.55))}
.bw-bonus canvas{position:absolute;inset:0;width:100%;height:100%}
.bw-bhud{position:absolute;left:50%;top:calc(var(--u)*5.6);transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;white-space:nowrap;pointer-events:none;text-shadow:0 2px 8px rgba(0,0,0,.8)}
.bw-bhud b{font:900 max(calc(var(--u)*2),16px) Georgia,serif;color:#fff3c4}
.bw-bhud b.big{font-size:max(calc(var(--u)*3.4),24px);color:#ffe066;text-shadow:0 0 calc(var(--u)*1.5) rgba(255,210,80,.8),0 2px 8px #000;animation:bwBig .5s cubic-bezier(.2,.9,.3,1.5)}
.bw-bhud b.dbl{color:#ff8ad8;text-shadow:0 0 calc(var(--u)*1.5) rgba(255,90,200,.9)}
.bw-bhud i{font:800 max(calc(var(--u)*.95),10px) var(--ff);font-style:normal;color:#e8e0ff;letter-spacing:.14em}
@keyframes bwBig{from{transform:scale(1.6);opacity:0}}
.bw-hunt{position:absolute;left:calc(var(--u)*14);right:calc(var(--u)*14);top:calc(var(--u)*11.4);bottom:calc(var(--u)*5);z-index:2;display:none;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(9,1fr);gap:calc(var(--u)*.4)}
.k-hunt .bw-hunt{display:grid}
.bw-tg{position:relative;padding:0;border:0;border-radius:50%;cursor:pointer;background:none;perspective:400px}
.bw-tg span{position:absolute;inset:0;display:grid;place-items:center;border-radius:50%;backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:transform .45s cubic-bezier(.3,.7,.3,1)}
.bw-tg .f{font:900 max(calc(var(--u)*.85),8px) var(--ff);color:#3a1a00;background:radial-gradient(circle at 40% 30%,#fffaf0,#ffd27a 55%,#c98a1c);box-shadow:inset 0 0 0 calc(var(--u)*.15) #fff,0 1px 3px rgba(0,0,0,.6)}
.bw-tg.big .f{background:radial-gradient(circle at 40% 30%,#fff,#ff7ad0 55%,#a0126a);color:#fff}
.bw-tg .c{transform:rotateY(180deg);background:repeating-radial-gradient(circle,#e8262c 0 18%,#fff 18% 34%,#e8262c 34% 50%,#fff 50% 66%,#e8262c 66% 82%);box-shadow:0 1px 3px rgba(0,0,0,.6)}
.m-shuffle .bw-tg .f,.m-pick .bw-tg .f{transform:rotateY(180deg)}
.m-shuffle .bw-tg .c,.m-pick .bw-tg .c{transform:rotateY(0)}
.m-shuffle .bw-tg{animation:bwShuf .5s ease-in-out infinite alternate}
.m-shuffle .bw-tg:nth-child(3n){animation-delay:.15s}.m-shuffle .bw-tg:nth-child(3n+1){animation-delay:.3s}
@keyframes bwShuf{to{transform:translate(calc(var(--u)*.6),calc(var(--u)*-.4)) rotate(8deg)}}
.m-pick .bw-tg:hover:not(:disabled) .c{transform:scale(1.12)}
.bw-tg.mine .c,.bw-tg.mine .f{box-shadow:0 0 0 calc(var(--u)*.3) #00e5ff,0 0 calc(var(--u)*1.4) #00e5ff}
.m-reveal .bw-tg:not(.mine){opacity:.75}
.bw-tg:disabled{cursor:default}
.bw-stage .uth-msg{top:calc(var(--u)*41.4);left:calc(var(--u)*77);transform:translateX(-50%)}
.bw-result{top:calc(var(--u)*30.25);left:calc(var(--u)*29.65)}
.bw-stage .lb-left{left:auto;right:calc(var(--u)*25.5 + env(safe-area-inset-right,0px))}

/* ════════ 闪电骰宝(火焰:橙金)════════ */
#app #lsicboview{display:flex;flex-direction:column;min-height:0}
#app #xswrap{--fx1:#ffb020;--fx2:#ff5a1f;--fx3:#fff1c2;
  background:radial-gradient(120% 80% at 50% 0%,rgba(255,110,30,.22),rgba(0,0,0,0) 60%),linear-gradient(180deg,rgba(18,6,2,.55),rgba(14,4,1,.88)),url('lsicbo-bg.webp?v=166d885e') center/cover no-repeat,#120502}
#app #xswrap .lsname.xsname i{color:var(--fx1);text-shadow:0 0 8px rgba(255,140,30,.8)}
#app #xswrap .lsgrid{background:radial-gradient(52% 80% at 50% 20%,rgba(255,200,120,.1),transparent 62%),radial-gradient(120% 110% at 50% 45%,transparent 50%,rgba(0,0,0,.55) 100%),url(felt-ember.webp?v=1384f61e) 0 0/256px 256px,#3a0e08;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.7),inset 0 0 0 4px #24100a,inset 0 0 0 5px rgba(240,170,90,.55),inset 0 0 50px rgba(0,0,0,.45),0 0 26px rgba(255,110,30,.22)}
#app #xswrap .sbboard{background:transparent}
#app #xswrap .xsstorm{position:absolute;inset:0;z-index:20;pointer-events:none;display:flex;align-items:center;justify-content:center;opacity:0}
#app #xswrap .xsstorm b{font-family:var(--display);font-weight:900;font-size:clamp(20px,5vmin,40px);letter-spacing:.14em;color:#fff6d8;text-shadow:0 0 10px #ffb020,0 0 26px #ff5a1f,0 2px 0 #4a1400;transform:scale(.8)}
#app #xswrap .xsstorm.in{opacity:1;background:radial-gradient(circle at 50% 40%,rgba(255,130,30,.32),rgba(30,6,0,.25) 70%)}
#app #xswrap .xsstorm.in b{animation:xsWord .7s ease-out forwards}
#app #xswrap .xsstorm.pre b,#app #xswrap .xsstorm.flash b{display:none}
#app #xswrap .xsstorm.pre{opacity:1}
#app #xswrap .xsstorm.pre.go{animation:xsPre .16s steps(2) forwards}
#app #xswrap .xsstorm.flash{opacity:1}
#app #xswrap .xsstorm.flash.go{animation:xsFlash .55s ease-out forwards}
#app #xswrap .xsstorm.flash.go.big{animation:xsFlashBig .75s ease-out forwards}
@keyframes xsWord{0%{transform:scale(1.6);opacity:0;filter:blur(4px)}60%{transform:scale(.96);opacity:1;filter:none}100%{transform:scale(1);opacity:1}}
@keyframes xsPre{0%{background:rgba(255,200,120,.26)}50%{background:rgba(255,200,120,0)}100%{background:rgba(255,200,120,.16)}}
@keyframes xsFlash{0%{background:rgba(255,220,150,.36)}100%{background:rgba(255,220,150,0)}}
@keyframes xsFlashBig{0%{background:rgba(255,240,200,.66)}12%{background:rgba(255,120,40,.25)}22%{background:rgba(255,240,200,.42)}100%{background:rgba(255,200,120,0)}}
#app #xswrap.xsdark .sbspot:not(.xsbolt){filter:brightness(.5) saturate(.7);transition:filter .4s}
#app #xswrap .sbspot{transition:filter .45s}
#app #xswrap .sbspot.xsbolt{z-index:4;border-color:#ffd27a !important;background:radial-gradient(circle at 50% 45%,rgba(255,170,60,.55),rgba(160,40,10,.35) 60%,rgba(40,6,0,.2)) !important;
  box-shadow:0 0 0 calc(1px) #fff1c2,0 0 10px 2px rgba(255,140,30,.85),0 0 22px 5px rgba(255,80,20,.45) !important;animation:xsPulse 1.2s ease-in-out infinite}
@keyframes xsPulse{50%{box-shadow:0 0 0 1px #fff,0 0 16px 4px rgba(255,170,50,1),0 0 34px 9px rgba(255,90,20,.6) !important}}
#app #xswrap .sbspot.xsbolt i{color:#fff1c2 !important;font-weight:900;text-shadow:0 0 6px #ff7a1f}
#app #xswrap .sbspot .xsmul{position:absolute;left:50%;top:-8px;transform:translateX(-50%);z-index:7;padding:1px 6px;font:900 10px/1.1 var(--num);color:#3a1000;white-space:nowrap;pointer-events:none;
  clip-path:polygon(8% 0,92% 0,100% 50%,92% 100%,8% 100%,0 50%);background:linear-gradient(180deg,#fff3c4,#ffb020 55%,#e0560c);filter:drop-shadow(0 0 4px rgba(255,140,30,.9));animation:xsSlam .5s cubic-bezier(.2,1.7,.4,1) both}
@keyframes xsSlam{0%{transform:translate(-50%,-22px) scale(2.2);opacity:0}60%{opacity:1}100%{transform:translateX(-50%) scale(1);opacity:1}}
#app #xswrap .sbspot.xsboom{animation:xsBoom .6s ease-out}
@keyframes xsBoom{0%{filter:brightness(3) saturate(1.4)}100%{filter:none}}
#app #xswrap .sbspot.xsboltwon{animation:xsWon .8s ease-in-out infinite alternate}
@keyframes xsWon{to{box-shadow:0 0 0 2px #fff,0 0 26px 8px rgba(255,200,80,1),0 0 50px 14px rgba(255,90,20,.7) !important}}
#app #xswrap .xszap{position:absolute;left:0;top:0;z-index:30;pointer-events:none}
#app #xswrap .xszap svg{display:block;overflow:visible}
#app #xswrap .xszap path{fill:none;stroke-linejoin:round;stroke-linecap:round}
#app #xswrap .xszap .g{stroke:rgba(255,120,30,.75);stroke-width:22px;filter:blur(8px);animation:xsZapG .8s ease-out forwards}
#app #xswrap .xszap .bg{stroke:rgba(255,140,40,.55);stroke-width:9px;filter:blur(5px);animation:xsZapG .8s ease-out forwards}
#app #xswrap .xszap .c{stroke:#fff6dc;stroke-width:4.5px;filter:drop-shadow(0 0 5px #ffb020) drop-shadow(0 0 14px #ff5a1f);stroke-dasharray:1400;stroke-dashoffset:1400;animation:xsZapC .8s ease-out forwards}
#app #xswrap .xszap .b{stroke:#ffe2a0;stroke-width:1.8px;stroke-dasharray:400;stroke-dashoffset:400;filter:drop-shadow(0 0 4px #ff7a1f);animation:xsZapB .8s .06s ease-out forwards}
#app #xswrap .xszap .h{fill:rgba(255,230,170,.9);filter:blur(10px);transform-box:fill-box;transform-origin:center;opacity:0;animation:xsZapH .75s ease-out forwards}
#app #xswrap .xszap .ring{fill:none;stroke:#ffd27a;stroke-width:3px;transform-box:fill-box;transform-origin:center;opacity:0;animation:xsRing .7s .12s ease-out forwards}
#app #xswrap .xszap .sp{fill:#ffe9a8;opacity:0;animation:xsSpark .7s ease-out forwards}
@keyframes xsZapC{0%{stroke-dashoffset:1400;opacity:1}28%{stroke-dashoffset:0;opacity:1}45%{opacity:.35}55%{opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@keyframes xsZapB{0%{stroke-dashoffset:400;opacity:1}35%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@keyframes xsZapG{0%{opacity:0}25%{opacity:1}100%{opacity:0}}
@keyframes xsZapH{0%{opacity:0;transform:scale(.3)}30%{opacity:1;transform:scale(1.4)}100%{opacity:0;transform:scale(2.2)}}
@keyframes xsRing{0%{opacity:1;transform:scale(.5)}100%{opacity:0;transform:scale(7)}}
@keyframes xsSpark{0%{opacity:1;transform:none}100%{opacity:0;transform:translate(var(--dx),var(--dy))}}
#app #xswrap .xsboltwin{position:absolute;left:50%;top:10%;transform:translateX(-50%) scale(.6);opacity:0;z-index:9;pointer-events:none;display:flex;flex-direction:column;align-items:center;white-space:nowrap;
  padding:6px 18px;border-radius:14px;background:rgba(30,8,0,.88);border:2px solid #ffd27a;box-shadow:0 0 30px rgba(255,120,30,.7);transition:.35s cubic-bezier(.2,.9,.3,1.4)}
#app #xswrap .xsboltwin.on{opacity:1;transform:translateX(-50%) scale(1)}
#app #xswrap .xsboltwin b{font:900 clamp(16px,3.6vmin,28px) var(--display);color:#fff1c2;text-shadow:0 0 10px #ff7a1f}
#app #xswrap .xsboltwin i{font:700 12px var(--num);font-style:normal;color:#ffd27a}
#app #xswrap .xsrules{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;background:rgba(12,4,0,.7);padding:16px}
#app #xswrap .xsrc{max-width:520px;width:100%;max-height:90%;overflow:auto;border-radius:16px;padding:16px 18px 14px;color:#fff1dc;background:linear-gradient(180deg,#2a1004,#160702);border:1px solid rgba(255,170,60,.5);box-shadow:0 0 40px rgba(255,100,20,.35)}
#app #xswrap .xsrc h3{margin:0 0 8px;font-family:var(--display);font-size:16px;color:#fff;text-shadow:0 0 8px rgba(255,140,30,.8)}
#app #xswrap .xsrc ol{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:12.5px;line-height:1.5}
#app #xswrap .xsrb{display:flex;justify-content:flex-end;margin-top:12px}
#app #xswrap .xsrb button{border-radius:999px;padding:7px 16px;font-weight:700;font-size:12px;border:0;cursor:pointer;color:#2a0e00;background:linear-gradient(180deg,#ffe08a,#ff9a1f)}
.cart-xs,.cart-ab,.cart-tc,.cart-ld,.cart-bw{background:#120a08}
@media (prefers-reduced-motion:reduce){.ab-card.ab-deal,.ab-card.ab-match,.ab-spot.win,.ld-spot.win,.bw-tix.hit,.m-shuffle .bw-tg{animation:none}#app #xswrap .xszap{display:none}#app #xswrap .sbspot.xsbolt{animation:none}}
/* 闪电骰宝:开盅的那块台呢也换成火焰红(普通骰宝是绿的)*/
#app #xswrap .sbover{background:radial-gradient(60% 70% at 50% 50%,rgba(30,8,2,.84),rgba(8,2,0,.92) 75%)}
#app #xswrap .sbover .sbstage{background:radial-gradient(80% 70% at 50% 30%,rgba(255,220,170,.12),transparent 64%),radial-gradient(120% 110% at 50% 45%,transparent 50%,rgba(0,0,0,.5) 100%),url(felt-ember.webp?v=1384f61e) 0 0/256px 256px,#3a0e08;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.7),inset 0 0 0 5px #24100a,inset 0 0 0 6px rgba(240,170,90,.6),inset 0 0 40px rgba(0,0,0,.4),0 0 40px rgba(255,100,20,.35),0 24px 60px rgba(0,0,0,.65)}

/* ═════════ BUILD 223:闪电系列规则小窗(lrules.js)═════════ */
.lrx{--a:#b77bff;--a2:#eadbff;--bg1:#170a2e;--bg2:#07030f;position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:max(10px,2vh) 12px;
  background:radial-gradient(80% 70% at 50% 40%,color-mix(in srgb,var(--a) 18%,transparent),rgba(0,0,0,.82) 70%),rgba(0,0,0,.6);backdrop-filter:blur(6px);opacity:0;transition:opacity .22s ease;font-family:var(--ff,inherit)}
.lrx.in{opacity:1}.lrx.out{opacity:0}
.lrx-lsicbo{--a:#ff9a3c;--a2:#ffe1b3;--bg1:#2a0c04;--bg2:#0d0301}
.lrx-lroul{--a:#b77bff;--a2:#eadbff;--bg1:#190b33;--bg2:#06020f}
.lrx-lbac{--a:#5fbaff;--a2:#d5ecff;--bg1:#071a33;--bg2:#02060f}
.lrx-card{position:relative;width:min(980px,100%);max-height:100%;overflow:auto;overscroll-behavior:contain;border-radius:22px;color:#f3eee6;
  background:linear-gradient(160deg,var(--bg1),var(--bg2) 70%);border:1px solid color-mix(in srgb,var(--a) 45%,transparent);
  box-shadow:0 0 0 1px rgba(255,255,255,.04) inset,0 30px 80px rgba(0,0,0,.6),0 0 60px color-mix(in srgb,var(--a) 22%,transparent);transform:translateY(14px) scale(.98);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.lrx.in .lrx-card{transform:none}
.lrx-glow{position:absolute;inset:0 0 auto 0;height:180px;pointer-events:none;border-radius:22px 22px 0 0;
  background:radial-gradient(60% 100% at 18% 0%,color-mix(in srgb,var(--a) 40%,transparent),transparent 70%),radial-gradient(40% 80% at 90% 0%,color-mix(in srgb,var(--a) 22%,transparent),transparent 70%)}
.lrx-hero{position:relative;padding:22px 26px 14px}
.lrx-k{display:inline-block;font:700 11px/1 var(--ff,inherit);letter-spacing:.18em;text-transform:uppercase;color:var(--a);padding:5px 10px;border-radius:99px;border:1px solid color-mix(in srgb,var(--a) 55%,transparent);background:rgba(0,0,0,.25)}
.lrx-hero h2{display:flex;align-items:center;gap:10px;margin:10px 0 6px;font:900 clamp(24px,4.2vw,38px)/1.05 var(--display);letter-spacing:.01em;color:#fff;text-shadow:0 0 18px color-mix(in srgb,var(--a) 60%,transparent)}
.lrx-b{display:inline-grid;place-items:center;width:1.15em;height:1.15em;border-radius:50%;color:#1a0d02;background:radial-gradient(circle at 35% 30%,#fff,var(--a2) 35%,var(--a) 80%);box-shadow:0 0 22px var(--a);animation:lrxPulse 1.8s ease-in-out infinite}
.lrx-b svg{width:68%;height:68%}
@keyframes lrxPulse{0%,100%{box-shadow:0 0 14px var(--a)}50%{box-shadow:0 0 32px var(--a),0 0 6px #fff}}
.lrx-hero p{margin:0;max-width:60ch;color:color-mix(in srgb,var(--a2) 85%,#fff);font-size:14px;line-height:1.5;text-wrap:balance}
.lrx-body{display:grid;grid-template-columns:1fr;gap:18px;padding:6px 26px 8px}
@media(min-width:760px){.lrx-body{grid-template-columns:1.05fr 1fr;gap:26px}}
.lrx h4{margin:0 0 10px;font:800 11px/1 var(--ff,inherit);letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb,var(--a) 75%,#fff)}
.lrx-steps ol{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:s}
.lrx-steps li{position:relative;display:grid;grid-template-columns:42px 1fr;column-gap:12px;align-items:start}
.lrx-steps li:not(:last-child)::after{content:"";position:absolute;left:20px;top:44px;bottom:-12px;width:2px;background:linear-gradient(var(--a),transparent);opacity:.45}
.lrx-steps .ic{grid-row:span 2;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:var(--a2);background:color-mix(in srgb,var(--a) 18%,rgba(0,0,0,.35));border:1px solid color-mix(in srgb,var(--a) 50%,transparent)}
.lrx-steps li:nth-child(2) .ic{color:#1a0d02;background:radial-gradient(circle at 35% 30%,#fff,var(--a2) 30%,var(--a) 85%);box-shadow:0 0 18px color-mix(in srgb,var(--a) 70%,transparent)}
.lrx-steps .ic svg{width:22px;height:22px}
.lrx-steps b{font:800 15px/1.3 var(--display);color:#fff;padding-top:2px}
.lrx-steps p{margin:3px 0 0;font-size:13px;line-height:1.5;color:rgba(243,238,230,.78)}
.lrx-ex{margin-top:16px;padding:12px 14px;border-radius:14px;background:rgba(0,0,0,.28);border:1px dashed color-mix(in srgb,var(--a) 45%,transparent)}
.lrx-ex h4{margin-bottom:6px}.lrx-ex p{margin:0;font-size:13.5px;line-height:1.5;color:#fff}
.lrx-side{display:grid;gap:18px;align-content:start}
.lrx-mult ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.lrx-mult li{display:grid;grid-template-columns:62px 1fr 64px;align-items:center;gap:10px}
.lrx-mult li b{font:900 22px/1 var(--display);color:var(--a2);text-shadow:0 0 12px color-mix(in srgb,var(--a) 70%,transparent);font-variant-numeric:tabular-nums;text-align:right}
.lrx-mult li b small{font-size:.6em;margin-left:1px;opacity:.85}
.lrx-mult .bar{height:9px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden}
.lrx-mult .bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--a) 60%,#000),var(--a),var(--a2));box-shadow:0 0 10px color-mix(in srgb,var(--a) 60%,transparent);transform-origin:left;animation:lrxBar .9s cubic-bezier(.2,.8,.2,1) both}
.lrx-mult li:nth-child(2) .bar i{animation-delay:.08s}.lrx-mult li:nth-child(3) .bar i{animation-delay:.16s}.lrx-mult li:nth-child(4) .bar i{animation-delay:.24s}.lrx-mult li:nth-child(5) .bar i{animation-delay:.32s}
@keyframes lrxBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.lrx-mult em{font-style:normal;font-size:12px;color:rgba(243,238,230,.7)}
.lrx-mult .note{margin:8px 0 0;font-size:12px;color:rgba(243,238,230,.55)}
.lrx-diff table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}
.lrx-diff th,.lrx-diff td{padding:6px 10px;text-align:left;border-bottom:1px solid rgba(255,255,255,.06);font-variant-numeric:tabular-nums}
.lrx-diff thead th{font:700 11px/1.2 var(--ff,inherit);letter-spacing:.06em;color:rgba(243,238,230,.6);background:rgba(0,0,0,.3)}
.lrx-diff tbody th{font-weight:600;color:rgba(243,238,230,.88)}
.lrx-diff td{color:rgba(243,238,230,.62);white-space:nowrap}
.lrx-diff .bolt{color:var(--a2);font-weight:800;background:color-mix(in srgb,var(--a) 10%,transparent)}
.lrx-diff thead .bolt{color:var(--a)}
.lrx-diff tr:last-child>*{border-bottom:0}
.lrx-foot{position:sticky;bottom:0;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;padding:12px 26px 16px;background:linear-gradient(transparent,var(--bg2) 35%);border-top:1px solid rgba(255,255,255,.05)}
.lrx-foot button{font:800 14px/1 var(--display);border-radius:99px;padding:13px 22px;cursor:pointer;min-height:44px}
.lrx-go{color:#170b02;border:0;background:linear-gradient(180deg,#fff,var(--a2) 25%,var(--a));box-shadow:0 6px 22px color-mix(in srgb,var(--a) 45%,transparent)}
.lrx-orig{color:#f6dd9b;background:rgba(0,0,0,.35);border:1px solid rgba(246,221,155,.55)}
.lrx-foot button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.lrx.intro .lrx-hero h2{font-size:clamp(28px,5vw,44px)}
@media(max-height:460px){.lrx-hero{padding:14px 20px 8px}.lrx-hero h2{margin:6px 0 4px}.lrx-body{padding:4px 20px}.lrx-foot{padding:10px 20px 12px}.lrx-steps ol{gap:8px}}
@media(prefers-reduced-motion:reduce){.lrx,.lrx-card{transition:none}.lrx-b,.lrx-mult .bar i{animation:none}}

/* ═════════ BUILD 223:大厅「普通版 | 闪电版」成对摆 ═════════ */
#app .catbar.v2 .cat-pair{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;position:relative;padding:30px 7px 7px;border-radius:20px;
  background:linear-gradient(90deg,rgba(246,221,155,.06) 0 50%,rgba(150,95,255,.1) 50% 100%);border:1px solid rgba(246,221,155,.16)}
@media(min-width:640px){#app .catbar.v2 .cat-pair{grid-column:span 2;gap:12px}}
#app .catbar.v2 .cat-pair.hidecat,#app .catbar.v2 .cat-pair:not(:has(.cat:not(.hidecat))){display:none}
#app .catbar.v2 .cat-pair .cp-h{position:absolute;left:7px;right:7px;top:7px;display:grid;grid-template-columns:1fr 1fr;gap:10px;pointer-events:none}
#app .catbar.v2 .cat-pair .cp-h span{display:flex;align-items:center;justify-content:center;gap:5px;height:18px;font:800 10.5px/1 var(--ff,inherit);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;overflow:hidden}
#app .catbar.v2 .cat-pair .cp-h .l{color:#f6dd9b}
#app .catbar.v2 .cat-pair .cp-h .r{color:#d8b8ff;text-shadow:0 0 10px rgba(170,110,255,.8)}
#app .catbar.v2 .cat-pair .cp-h .r::before{content:"";width:11px;height:11px;flex:0 0 11px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13.5 2 5 13.4h6L9.8 22 19 9.8h-6.2L13.5 2Z' fill='%23e3c6ff'/%3E%3C/svg%3E")}
#app .catbar.v2 .cat-pair .cat{min-width:0}
#app .catbar.v2 .cat-pair .cat.wide{grid-column:auto}
#app .catbar.v2 .cat.cat-bolt{border-color:rgba(176,120,255,.55);box-shadow:0 0 0 1px rgba(176,120,255,.25) inset,0 0 18px rgba(150,90,255,.28)}
#app .catbar.v2 .cat.cat-bolt .ctx b::before{content:"";display:inline-block;width:.8em;height:.8em;margin-right:.25em;vertical-align:-.05em;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13.5 2 5 13.4h6L9.8 22 19 9.8h-6.2L13.5 2Z' fill='%23c79bff'/%3E%3C/svg%3E")}
