/* Tigrinho */
/* ---------- Tigrinho ---------- */
.tg-stage{
  flex-direction:column;justify-content:center;padding:20px 16px;overflow:hidden;isolation:isolate;
  background:
    radial-gradient(circle at 50% 18%, rgba(255,190,60,.28), transparent 45%),
    repeating-radial-gradient(circle at 50% 120%, rgba(255,210,63,.05) 0 18px, transparent 18px 36px),
    radial-gradient(ellipse at 50% 30%, #b3161b 0%, #6d0a0e 58%, #360407 100%);
}
.tg-lantern{position:absolute;top:-6px;width:46px;height:96px;transform-origin:50% 0;animation:tgSwing 3.2s ease-in-out infinite alternate;z-index:0;pointer-events:none}
.tg-lantern.l{left:5%}.tg-lantern.r{right:5%;animation-delay:-1.6s}
.tg-lantern::before{content:'';position:absolute;left:50%;top:0;width:2px;height:22px;background:#ffd23f;transform:translateX(-50%)}
.tg-lantern::after{
  content:'';position:absolute;left:0;right:0;top:22px;height:58px;border-radius:46%;
  background:radial-gradient(circle at 50% 40%, #ff7a52, #e2231a 55%, #8e0b0e);
  border-top:6px solid #ffd23f;border-bottom:6px solid #ffd23f;box-shadow:0 0 28px rgba(255,120,60,.65);
}
@keyframes tgSwing{from{transform:rotate(-6deg)}to{transform:rotate(6deg)}}
.tg-machine{position:relative;z-index:1;width:min(100%, 430px);display:flex;flex-direction:column;align-items:center;gap:10px}
.tg-top{position:relative;display:flex;flex-direction:column;align-items:center;margin-bottom:-26px;z-index:3;pointer-events:none}
.tg-tiger{width:150px;height:128px;transform-origin:50% 90%;animation:tgBreath 2.6s ease-in-out infinite}
.tg-tiger svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 6px 10px rgba(0,0,0,.45))}
.tg-tiger .eyes{transform-origin:50% 46%;animation:tgBlink 4.5s infinite}
.tg-tiger .roar-mouth{opacity:0;transition:opacity .15s}
.tg-tiger.happy{animation:tgHappy .5s ease-in-out 3}
.tg-tiger.roar{animation:tgRoar .9s ease-in-out}
.tg-tiger.roar .roar-mouth{opacity:1}
.tg-tiger.roar .mouth{opacity:0}
@keyframes tgBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.035,1.02)}}
@keyframes tgBlink{0%,93%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
@keyframes tgHappy{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-18px) rotate(-6deg)}60%{transform:translateY(-10px) rotate(6deg)}}
@keyframes tgRoar{0%{transform:scale(1)}15%{transform:scale(1.35) translateY(-8px)}20%,40%,60%{transform:scale(1.35) translate(-4px,-8px)}30%,50%,70%{transform:scale(1.35) translate(4px,-8px)}100%{transform:scale(1)}}
.tg-tiger.three{animation:none!important;width:240px;height:215px;margin-bottom:-22px}
.tg-tiger.three svg{display:none}
.tg-tiger canvas{width:100%;height:100%;display:block}
.tg-cell.land svg{animation:tgLand .22s cubic-bezier(.34,1.8,.5,1)}
@keyframes tgLand{from{transform:scale(1.12,.86) translateY(6%)}}
.tg-frame.thump{animation:tgThump .14s ease-out}
@keyframes tgThump{50%{transform:translateY(4px) scale(1.008)}}
.tg-cell.win svg{animation:tgWinPunch .35s cubic-bezier(.34,1.8,.5,1), tgWinPulse .28s ease-in-out .35s infinite alternate}
@keyframes tgWinPunch{0%{transform:scale(1)}40%{transform:scale(1.4) rotate(-6deg)}100%{transform:scale(1.1)}}
.tg-flash{position:absolute;inset:0;border-radius:20px;pointer-events:none;z-index:3;background:radial-gradient(circle,rgba(255,255,230,.95),rgba(255,220,90,.5) 50%,transparent 75%);opacity:0}
.tg-flash.show{animation:tgFlash .35s ease-out}
@keyframes tgFlash{0%{opacity:1}100%{opacity:0}}
.tg-winpop{position:absolute;left:50%;top:50%;z-index:4;pointer-events:none;opacity:0;transform:translate(-50%,-50%);
  font-size:52px;font-weight:900;font-style:italic;white-space:nowrap;font-variant-numeric:tabular-nums;
  background:linear-gradient(#fffbe0,#ffe066 40%,#ff9d00 75%,#ffd23f);-webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-text-stroke:2px #7a0a0e;filter:drop-shadow(0 4px 0 #4a0508) drop-shadow(0 0 16px rgba(255,190,0,.9))}
.tg-winpop.show{animation:tgWinPop 1.3s cubic-bezier(.2,1,.3,1) forwards}
@keyframes tgWinPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.3)}30%{transform:translate(-50%,-50%) scale(1)}75%{opacity:1;transform:translate(-50%,-62%) scale(1)}100%{opacity:0;transform:translate(-50%,-90%) scale(.9)}}
.tg-winbox.bump{animation:tgBoxBump .4s cubic-bezier(.34,1.8,.5,1)}
@keyframes tgBoxBump{40%{transform:scale(1.12);box-shadow:0 0 30px 8px rgba(255,210,63,.9),inset 0 2px 8px rgba(0,0,0,.6)}}
.tg-big .a.slam{animation:tgSlam .45s cubic-bezier(.34,1.8,.5,1)}
@keyframes tgSlam{from{transform:scale(1.8)}}
.tg-big .t{animation:tgTitleBeat .43s ease-in-out infinite alternate}
@keyframes tgTitleBeat{to{transform:scale(1.08)}}
.tg-spin.spinning{animation:tgSpinGlow .5s ease-in-out infinite alternate}
@keyframes tgSpinGlow{to{box-shadow:0 0 0 3px #7a4a00,0 6px 0 #7a4a00,0 0 26px 8px rgba(255,210,63,.9)}}
.tg-spin svg{transition:transform .2s}
@media (max-width:600px){ .tg-winpop{font-size:38px} }
/* big win: the tiger dances on top of the celebration screen */
.tg-machine,.tg-top,.tg-frame,.tg-bar{transition:transform .5s cubic-bezier(.34,1.4,.5,1),opacity .3s}
.tg-stage.big .tg-machine{z-index:9;pointer-events:none}
.tg-stage.big .tg-frame,.tg-stage.big .tg-bar{opacity:0}
.tg-top.dive{z-index:6}
.tg-top.dive .tg-title{opacity:0}
.tg-top::after{content:'';position:absolute;left:50%;bottom:6px;width:60%;height:14px;border-radius:50%;background:rgba(0,0,0,.45);filter:blur(4px);transform:translateX(-50%) scale(0);transition:transform .3s;z-index:-1}
.tg-top.dive.landed::after{transform:translateX(-50%) scale(1)}
.tg-stage.intro .tg-banner{top:15%}
.tg-stage.intro .tg-banner .sym{width:60px;height:60px;margin-top:4px}
.tg-stage.intro .tg-banner .s{margin-top:2px}
.tg-stage.big .tg-machine{z-index:10}
.tg-stage.intro .tg-machine{z-index:6}
.tg-stage.intro .tg-frame,.tg-stage.intro .tg-bar{filter:brightness(.3)}
.tg-stage.intro .tg-title{opacity:0}
.tg-stage.big .tg-big{justify-content:flex-end;padding-bottom:5%}
@media (max-width:600px){ .tg-tiger.three{width:180px;height:160px;margin-bottom:-16px} }
.tg-title{
  margin-top:-10px;padding:3px 18px;border-radius:99px;font-weight:900;font-size:20px;letter-spacing:2px;font-style:italic;
  background:linear-gradient(#e3262f,#9c0f14);border:3px solid #ffd23f;color:#ffe066;text-shadow:0 2px 0 #7a0a0e;
  box-shadow:0 4px 12px rgba(0,0,0,.4);
}
.tg-frame{
  position:relative;width:100%;padding:10px;border-radius:20px;
  background:linear-gradient(160deg,#fff1a8,#ffcf3a 30%,#d99a0b 65%,#ffe27a);
  box-shadow:0 0 0 3px #7a4a00,0 14px 34px rgba(0,0,0,.55),inset 0 2px 0 #fff8d0;
}
.tg-frame.feat{animation:tgFrameGlow .7s ease-in-out infinite alternate}
@keyframes tgFrameGlow{from{box-shadow:0 0 0 3px #7a4a00,0 0 20px 4px rgba(255,210,63,.5)}to{box-shadow:0 0 0 3px #7a4a00,0 0 46px 14px rgba(255,210,63,.9)}}
.tg-reels{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:6px;border-radius:14px;background:#4a0508;box-shadow:inset 0 4px 10px rgba(0,0,0,.6)}
.tg-reel{position:relative;overflow:hidden;aspect-ratio:1/3;border-radius:10px;background:linear-gradient(90deg,#f1dcae,#fff8e8 50%,#f1dcae)}
.tg-reel::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(0,0,0,.28),transparent 14%,transparent 86%,rgba(0,0,0,.28))}
.tg-strip{position:absolute;left:0;right:0;top:0;will-change:transform}
.tg-strip.blur{filter:blur(2.5px)}
.tg-cell{position:relative;aspect-ratio:1;display:flex;align-items:center;justify-content:center;transition:filter .25s}
.tg-cell svg{width:84%;height:84%;position:relative;z-index:1;overflow:visible}
.tg-cell.pop svg{animation:tgPop .35s cubic-bezier(.34,1.7,.5,1)}
@keyframes tgPop{from{transform:scale(.4)}to{transform:scale(1)}}
.tg-cell.rolling svg{animation:tgRoll .09s linear infinite;filter:blur(1.5px)}
@keyframes tgRoll{from{transform:translateY(-30%)}to{transform:translateY(30%)}}
.tg-reels.showing .tg-cell:not(.win){filter:brightness(.45) saturate(.5)}
.tg-cell.win svg{animation:tgWinPulse .5s ease-in-out infinite alternate}
.tg-cell.win::before{
  content:'';position:absolute;inset:3px;border-radius:12px;
  background:radial-gradient(circle,#fff6b0 0%,rgba(255,200,0,.65) 40%,transparent 72%);animation:tgGlow .8s ease-in-out infinite alternate;
}
@keyframes tgWinPulse{from{transform:scale(1)}to{transform:scale(1.14) rotate(-3deg)}}
@keyframes tgGlow{from{opacity:.55}to{opacity:1}}
.tg-cell.lock{box-shadow:inset 0 0 0 3px #ffd23f,inset 0 0 22px rgba(255,190,0,.75);border-radius:10px}
.tg-lines{position:absolute;inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);pointer-events:none;overflow:visible;z-index:2}
.tg-lines path{fill:none;stroke:#ffe066;stroke-width:7;stroke-linecap:round;filter:drop-shadow(0 0 6px #ffb800) drop-shadow(0 0 2px #fff);stroke-dasharray:1;stroke-dashoffset:1;animation:tgDraw .45s ease-out forwards}
@keyframes tgDraw{to{stroke-dashoffset:0}}
.tg-featsym{
  position:absolute;right:-10px;top:-18px;z-index:4;width:64px;height:64px;border-radius:50%;padding:6px;display:flex;
  background:radial-gradient(circle,#fff3b0,#ffcf3a 60%,#c98a00);border:3px solid #7a4a00;box-shadow:0 0 22px rgba(255,210,63,.9);
  animation:tgPop .4s cubic-bezier(.34,1.7,.5,1), tgFloat 1.6s ease-in-out .4s infinite alternate;
}
.tg-featsym svg{width:100%;height:100%}
@keyframes tgFloat{to{transform:translateY(-6px) rotate(6deg)}}
.tg-bar{display:flex;align-items:center;gap:10px;width:100%}
.tg-winbox{
  flex:1;min-width:0;height:62px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:linear-gradient(#5c070b,#2e0305);border:3px solid #ffd23f;box-shadow:inset 0 2px 8px rgba(0,0,0,.6);
}
.tg-winbox small{font-size:11px;font-weight:800;letter-spacing:1.5px;color:#ffcf6a}
.tg-winbox b{font-size:24px;font-weight:900;color:#ffe066;font-variant-numeric:tabular-nums;text-shadow:0 0 12px rgba(255,200,0,.6)}
.tg-winbox.bump b{animation:tgBump .3s ease}
@keyframes tgBump{50%{transform:scale(1.25)}}
.tg-round{
  width:46px;height:46px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(#7a0a0e,#3a0406);border:3px solid #c98a00;color:#ffcf6a;transition:transform .1s,filter .15s;
}
.tg-round svg{width:22px;height:22px}
.tg-round.on{background:linear-gradient(#ffe066,#e0a100);color:#6b0708;border-color:#fff3b0;box-shadow:0 0 16px rgba(255,210,63,.8)}
.tg-spin{
  width:76px;height:76px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;color:#7a0a0e;
  background:radial-gradient(circle at 50% 30%,#fff6c0,#ffd23f 45%,#d08e00 80%);border:4px solid #fff3b0;
  box-shadow:0 0 0 3px #7a4a00,0 6px 0 #7a4a00,0 10px 18px rgba(0,0,0,.5);transition:transform .08s,filter .15s;
}
.tg-spin svg{width:40px;height:40px}
.tg-spin:hover:not(:disabled),.tg-round:hover:not(:disabled){filter:brightness(1.12)}
.tg-spin:active:not(:disabled){transform:translateY(4px);box-shadow:0 0 0 3px #7a4a00,0 2px 0 #7a4a00,0 4px 10px rgba(0,0,0,.5)}
.tg-spin:disabled{filter:saturate(.6) brightness(.85)}
.tg-spin.spinning svg{animation:spin .5s linear infinite}
.tg-spin.stop{background:radial-gradient(circle at 50% 30%,#ffb3b3,#ff4d4d 45%,#b3001b 80%);color:#fff}
.tg-dim{position:absolute;inset:0;z-index:5;background:rgba(20,0,0,.72);opacity:0;pointer-events:none;transition:opacity .3s}
.tg-dim.show{opacity:1}
.tg-banner{
  position:absolute;left:50%;top:44%;z-index:7;transform:translate(-50%,-50%) scale(.2);opacity:0;pointer-events:none;
  text-align:center;white-space:nowrap;transition:transform .45s cubic-bezier(.34,1.7,.5,1),opacity .3s;
}
.tg-banner.show{transform:translate(-50%,-50%) scale(1);opacity:1}
.tg-banner .t{
  font-size:44px;font-weight:900;font-style:italic;letter-spacing:1px;line-height:1.05;
  background:linear-gradient(#fffbe0,#ffe066 40%,#ff9d00 75%,#ffd23f);-webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-text-stroke:2px #7a0a0e;filter:drop-shadow(0 4px 0 #4a0508) drop-shadow(0 0 18px rgba(255,190,0,.8));
}
.tg-banner .s{margin-top:8px;font-weight:800;color:#fff3b0;font-size:15px;text-shadow:0 2px 4px #000}
.tg-banner .sym{width:92px;height:92px;margin:10px auto 0;animation:tgFloat 1s ease-in-out infinite alternate}
.tg-banner .sym svg{width:100%;height:100%}
.tg-big{position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;
  background:radial-gradient(circle,rgba(90,6,10,.85),rgba(10,0,0,.94));opacity:0;pointer-events:none;transition:opacity .3s}
.tg-big.show{opacity:1;pointer-events:auto}
.tg-big::before{
  content:'';position:absolute;left:50%;top:50%;width:900px;height:900px;margin:-450px 0 0 -450px;z-index:-1;
  background:repeating-conic-gradient(rgba(255,210,63,.22) 0 10deg,transparent 10deg 20deg);animation:spin 14s linear infinite;
  mask-image:radial-gradient(circle,#000 10%,transparent 60%);-webkit-mask-image:radial-gradient(circle,#000 10%,transparent 60%);
}
.tg-big .t{font-size:54px;font-weight:900;font-style:italic;text-align:center;line-height:1;
  background:linear-gradient(#fffbe0,#ffe066 35%,#ff9d00 70%,#ffd23f);-webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-text-stroke:2px #7a0a0e;filter:drop-shadow(0 5px 0 #4a0508) drop-shadow(0 0 22px rgba(255,190,0,.9))}
.tg-big .t.tier{animation:tgTier .5s cubic-bezier(.34,1.7,.5,1)}
.tg-big.mega .t{background-image:linear-gradient(#fff,#ffb3f0 35%,#ff3da8 70%,#ffd23f)}
.tg-big.super .t{background-image:linear-gradient(#fff,#b3f0ff 30%,#3dc4ff 60%,#ffe066)}
@keyframes tgTier{from{transform:scale(2.2);opacity:0}}
.tg-big .a{display:flex;align-items:center;gap:8px;font-size:40px;font-weight:900;color:#fff3b0;font-variant-numeric:tabular-nums;text-shadow:0 0 14px rgba(255,200,0,.9),0 3px 0 #7a0a0e}
.tg-big .a .coin{width:34px;height:34px}
.tg-big .m{font-weight:800;color:#ffcf6a;font-size:16px}
.tg-big .skip{position:absolute;bottom:14px;font-size:12px;color:rgba(255,255,255,.55);font-weight:600}
.tg-x10{position:absolute;left:50%;top:50%;z-index:6;font-size:110px;font-weight:900;font-style:italic;pointer-events:none;opacity:0;
  background:linear-gradient(#fffbe0,#ffe066 40%,#ff7a00);-webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-text-stroke:3px #7a0a0e;filter:drop-shadow(0 0 30px rgba(255,190,0,1));transform:translate(-50%,-50%)}
.tg-x10.show{animation:tgX10 1.6s ease-out forwards}
@keyframes tgX10{0%{opacity:0;transform:translate(-50%,-50%) scale(4) rotate(-20deg)}25%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}75%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.6)}}
.tg-stage.shake .tg-machine{animation:shake .5s}
.tg-fx{position:absolute;inset:0;width:100%;height:100%;z-index:9;pointer-events:none}
.tg-pay{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;background:var(--bg-dark);border-radius:6px;padding:8px}
.tg-pay div{display:flex;align-items:center;gap:6px;font-weight:700;font-variant-numeric:tabular-nums;font-size:13px}
.tg-pay div.low{color:var(--muted)}
.tg-pay svg{width:26px;height:26px;flex:none}
@media (max-width:600px){
  .tg-stage{padding:12px 8px}
  .tg-tiger{width:112px;height:96px}
  .tg-title{font-size:16px}
  .tg-lantern{display:none}
  .tg-winbox{height:54px}.tg-winbox b{font-size:20px}
  .tg-spin{width:64px;height:64px}.tg-spin svg{width:32px;height:32px}
  .tg-round{width:40px;height:40px}
  .tg-banner .t{font-size:32px}
  .tg-big .t{font-size:38px}.tg-big .a{font-size:28px}
  .tg-x10{font-size:80px}
  .tg-featsym{width:52px;height:52px;right:-6px}
}
