.be-bet{position:absolute;max-width:42%;width:max-content;height:42px;display:flex;align-items:center;gap:8px;font:800 22px 'Bahnschrift Condensed',sans-serif;color:var(--side);isolation:isolate;animation:be-bet-life 1.8s ease-out both;text-shadow:-1px -1px #080909,1px 1px #080909,0 2px #080909}.be-bet.side0{left:22px;--side:#e2c26b}.be-bet.side1{right:22px;--side:#8cc5d3}.be-bet .label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;z-index:2}.be-bet svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:-1}.be-bet.coin{padding-left:32px}.be-bet.coin svg{width:28px;left:0;z-index:1}.be-bet.coin circle{fill:#e2c26b;stroke:#fff0b4;stroke-width:1.6}.be-bet.coin text{fill:#47381a;font:bold 17px sans-serif;text-anchor:middle}.be-bet.coin svg{animation:be-coin-flip .65s ease-out}.be-bet.electric path{fill:none;stroke:#e4fbff;stroke-width:1.8;stroke-dasharray:270;animation:be-arc .8s ease-out both}.be-bet.electric .label{animation:be-electric-text 1.8s ease-out}.be-bet.fire svg{top:17px;height:28px}.be-bet.fire path{fill:#f39038;transform-origin:center bottom;animation:be-flame .25s ease-in-out infinite alternate}.be-bet.fire path:nth-child(2){fill:#ffda6b;animation-delay:-.12s}.be-bet.fire .label{color:#ffe1b0}.be-bet.jackpot .label{background:linear-gradient(110deg,#c59d48 20%,#fff4c0 40%,#e0b95c 55%,#fff 65%,#d2a747 80%);background-size:250% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:be-gold-sweep 1.4s ease-out;text-shadow:none;filter:drop-shadow(0 2px 1px #000)}.be-bet .particle{position:absolute;width:5px;height:5px;background:var(--side);left:var(--x);top:55%;animation:be-particle 1.3s ease-out both;animation-delay:var(--delay)}.be-bet.jackpot .particle{border-radius:50%;background:#efce71;border:1px solid #fff1a5;width:7px;height:7px}.be-bet.pixel .particle{animation:be-pixel-build 1.5s ease-out both}.be-bet.pixel .label{animation:be-pixel-label 1.8s steps(5)}.be-bet.random{animation:be-random-life 2.2s ease-out both}body.reduced .be-bet{animation:be-quiet-life 1.8s linear both}body.reduced .be-bet *{animation:none!important}.reduced .be-bet .particle{display:none}@keyframes be-bet-life{0%{opacity:0;transform:translateY(8px) scale(.96)}12%,80%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-10px)}}@keyframes be-random-life{0%{opacity:0;transform:translateY(10px)}12%,75%{opacity:1}100%{opacity:0;transform:translateY(-110px)}}@keyframes be-coin-flip{0%{transform:translateY(-12px) rotateY(0)}65%{transform:translateY(3px) rotateY(720deg)}100%{transform:translateY(0) rotateY(1080deg)}}@keyframes be-arc{0%{stroke-dashoffset:270;opacity:0}20%{opacity:1}70%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:-270;opacity:0}}@keyframes be-electric-text{15%,30%{filter:drop-shadow(0 0 4px #a5e9ff)}25%,40%,100%{filter:none}}@keyframes be-flame{from{transform:scaleY(.7) skewX(-5deg)}to{transform:scaleY(1) skewX(5deg)}}@keyframes be-gold-sweep{from{background-position:100% 0}to{background-position:0 0}}@keyframes be-particle{0%{opacity:0;transform:translate(0,0)}20%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(180deg)}}@keyframes be-pixel-build{0%{opacity:0;transform:translate(var(--dx),var(--dy))}25%{opacity:1;transform:translate(0,0)}65%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy))}}@keyframes be-pixel-label{0%{clip-path:inset(0 100% 0 0)}20%,100%{clip-path:inset(0)}}@keyframes be-quiet-life{0%,100%{opacity:0}10%,90%{opacity:1}}@media(prefers-reduced-motion:reduce){.be-bet{animation:be-quiet-life 1.8s linear both}.be-bet *{animation:none!important}.be-bet .particle{display:none}}
.be-bet.coin .joncoin{position:absolute;left:0;width:28px;height:28px;object-fit:contain;animation:be-coin-flip .65s ease-out}.be-bet.slash .cut{fill:#f4edd9;filter:drop-shadow(0 0 2px var(--side));transform-origin:center;animation:be-slash-cut .55s ease-out both}.be-bet.slash .second{animation-delay:.15s;fill:var(--side)}.be-bet.stamp{padding:0 13px}.be-bet.stamp svg{animation:be-stamp-hit .5s ease-out both}.be-bet.stamp path{fill:none;stroke:var(--side);stroke-width:1.5;stroke-dasharray:8 3}.be-bet.stamp path+path{stroke-width:.7;stroke-dasharray:none}.be-bet.stamp .label{animation:be-stamp-text .5s ease-out}.be-bet.portal{padding-left:37px}.be-bet.portal svg{width:34px;z-index:1;animation:be-portal-open .8s ease-out both}.be-bet.portal ellipse,.be-bet.portal path{fill:none;stroke:var(--side);stroke-width:2;stroke-dasharray:12 4}.be-bet.portal ellipse+ellipse{stroke:#e7fbff;stroke-width:1;stroke-dasharray:4 3}.be-bet.portal .label{animation:be-portal-text .55s ease-out both}.be-bet.sonar{padding:0 13px}.be-bet.sonar .target{fill:none;stroke:var(--side);stroke-width:2;animation:be-target-lock .5s ease-out}.be-bet.sonar .scan{fill:none;stroke:#e9ffff;stroke-width:2;animation:be-radar-scan 1.1s ease-in-out both}.be-bet.ribbon{padding:0 19px}.be-bet.ribbon svg{animation:be-ribbon-open .55s ease-out both;transform-origin:center}.be-bet.ribbon .band{fill:var(--side)}.be-bet.ribbon .tail{fill:var(--side);filter:brightness(.7)}.be-bet.ribbon .fold{fill:#252a28}.be-bet.ribbon .label{color:#141a17;text-shadow:none;animation:be-portal-text .4s ease-out both;animation-delay:.1s}@keyframes be-slash-cut{0%{opacity:0;transform:scaleX(.1) translateX(-35px)}25%{opacity:1;transform:scaleX(1)}100%{opacity:0;transform:translateX(20px)}}@keyframes be-stamp-hit{0%{opacity:0;transform:scale(1.25) rotate(-6deg)}55%{opacity:1;transform:scale(.98) rotate(1deg)}100%{opacity:1;transform:scale(1) rotate(0)}}@keyframes be-stamp-text{40%{transform:translateY(2px)}70%{transform:translateY(-1px)}100%{transform:none}}@keyframes be-portal-open{0%{opacity:0;transform:scaleY(.1) rotate(-25deg)}60%{opacity:1;transform:scaleY(1.08) rotate(10deg)}100%{opacity:1;transform:scale(1) rotate(0)}}@keyframes be-portal-text{0%{opacity:0;transform:translateX(-15px);clip-path:inset(0 100% 0 0)}100%{opacity:1;transform:none;clip-path:inset(0)}}@keyframes be-target-lock{0%{opacity:0;transform:scale(1.14)}100%{opacity:1;transform:scale(1)}}@keyframes be-radar-scan{0%{opacity:0;transform:translateX(0)}15%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translateX(280px)}}@keyframes be-ribbon-open{0%{transform:scaleX(.05);opacity:0}30%{opacity:1}80%{transform:scaleX(1.04)}100%{transform:scaleX(1);opacity:1}}

.bet-effect-preview{position:relative;overflow:hidden}.be-bet{max-width:42%;font-size:22px}.be-bet.side0{left:22px}.be-bet.side1{right:22px}@keyframes be-shop-loop{0%,100%{opacity:0}10%,80%{opacity:1}}@media(max-width:650px){.be-bet{font-size:14px;height:34px}.be-bet.side0{left:8px}.be-bet.side1{right:8px}}
@media(prefers-reduced-motion:reduce){.be-bet,.be-bet *{animation:none!important}.be-bet .be-bet .particle{display:none}}
#shopView.previews-paused .be-bet,#shopView.previews-paused .be-bet *{animation-play-state:paused!important}

/* Fit complete previews into narrow shop cards without side offsets. */
.bet-effect-preview .be-bet.side0,.bet-effect-preview .be-bet.side1{left:auto;right:auto;max-width:100%;font-size:12px}.bet-effect-preview{padding:6px}.bet-effect-preview .be-bet.coin{padding-left:24px}.bet-effect-preview .joncoin{width:20px;height:20px}

/* Preview uses the same 1.8-second renderer, restarted rather than stretched. */
#shopView .bet-effects-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
#shopView .bet-effects-grid .shop-card{grid-template-rows:140px minmax(48px,auto) 40px}
#shopView .bet-effect-preview{padding:0;overflow:hidden}
.be-preview-stage{position:relative;width:100%;height:100%;overflow:hidden;background:#252623 url('/assets/goblin/NewYork.png') center 80%/cover}
.be-preview-stage::before{content:'';position:absolute;inset:0;background:#08101566}
.be-preview-caption{position:absolute;left:12px;top:12px;font:700 11px sans-serif;color:#e2c26b;text-shadow:0 1px #000}
#shopView .be-replay{position:absolute;right:8px;top:6px;width:auto!important;min-height:30px;padding:5px 8px;background:#101515dd;border:1px solid #788675;color:#eee8d8;font:12px sans-serif;z-index:3}
#shopView .be-preview-stage .be-bet{left:12px;right:auto;bottom:30px;max-width:calc(100% - 24px);font-size:22px;height:42px;animation:be-bet-life 1.8s ease-out both}
#shopView .be-preview-stage .joncoin{width:28px;height:28px}
@media(max-width:650px){#shopView .bet-effects-grid{grid-template-columns:1fr}#shopView .be-preview-stage .be-bet{font-size:22px}}
