/* The original Ramp gun, recoloured and reprinted for Chopstick. */
#cash-stage { position:relative; isolation:isolate; overflow:hidden; min-height:560px; }
#cash-stage .cash-canvas { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; z-index:4; }
#cash-stage .cash-gun { position:absolute; top:0; left:0; width:clamp(300px,33vw,440px); aspect-ratio:4 / 3; z-index:3; pointer-events:none; opacity:0; transform:translate3d(var(--cash-x,0px),var(--cash-y,0px),0); transition:opacity .3s,transform .4s cubic-bezier(.2,.72,.2,1); }
#cash-stage[data-cash-ready] .cash-gun { opacity:1; }
#cash-stage[data-cash-engaged] .cash-gun { transition:opacity .2s; }
#cash-stage .cash-gun-art { display:block; position:absolute; inset:0; transform:translate(-84.2%,-25.8%) perspective(700px) rotateY(var(--cash-yaw,0deg)) rotateZ(var(--cash-tilt,0deg)); transform-origin:84.2% 25.8%; transition:transform .12s cubic-bezier(.2,.72,.2,1); }
#cash-stage .cash-gun[data-facing="left"] .cash-gun-art { transform:translate(-18%,-23.8%) perspective(700px) rotateY(var(--cash-yaw,0deg)) rotateZ(var(--cash-tilt,0deg)); transform-origin:18% 23.8%; }
#cash-stage .cash-gun-image { display:block; width:100%; height:100%; position:absolute; inset:0; object-fit:contain; opacity:0; filter:drop-shadow(0 14px 12px rgb(70 0 0 / 9%)); user-select:none; -webkit-user-drag:none; }
#cash-stage .cash-gun[data-facing="right"] .cash-gun-image--right, #cash-stage .cash-gun[data-facing="left"] .cash-gun-image--left { opacity:1; }
#cash-stage .cash-flash { position:absolute; width:25px; height:25px; top:25.8%; left:84.2%; opacity:0; background:#e3242b; clip-path:polygon(40% 0,60% 0,60% 32%,100% 32%,100% 68%,60% 68%,60% 100%,40% 100%,40% 68%,0 68%,0 32%,40% 32%); }
#cash-stage .cash-gun[data-facing="left"] .cash-flash { left:18%; top:23.8%; }
#cash-stage .cash-fire { position:absolute; bottom:28px; right:32px; z-index:6; display:inline-flex; align-items:center; gap:10px; color:inherit; background:transparent; border:1px solid currentColor; border-radius:100px; padding:12px 18px; font:inherit; font-size:13px; font-weight:500; cursor:pointer; touch-action:manipulation; }
#cash-stage .cash-fire::before { content:'//'; font-size:18px; font-weight:800; line-height:1; color:var(--red,#e3242b); }
#cash-stage .cash-fire:hover { color:var(--red,#e3242b); background:#fff; }
#cash-stage .cash-fire:focus-visible { outline:3px solid var(--red,#e3242b); outline-offset:5px; }
#cash-stage .cash-announcement { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
#cash-stage .cash-fallback-note { position:absolute; pointer-events:none; width:180px; height:90px; object-fit:contain; z-index:4; }
#cash-stage[data-cash-firing] .cash-fire { color:var(--red,#e3242b); }
@media (hover:hover) and (pointer:fine) { #cash-stage[data-cash-engaged] { cursor:none; } #cash-stage :is(a,button,input,textarea) { cursor:pointer; } }
@media (max-width:700px) {
  #cash-stage { min-height:620px; justify-content:flex-start; padding-top:92px; }
  #cash-stage .cash-gun { width:280px; }
  #cash-stage .cash-fire { bottom:24px; right:50%; transform:translateX(50%); white-space:nowrap; }
}
@media (prefers-reduced-motion:reduce) {
  #cash-stage .cash-gun, #cash-stage .cash-gun-art { transition:none; }
}
#cash-stage[data-cash-motion="reduce"] .cash-gun,
#cash-stage[data-cash-motion="reduce"] .cash-gun-art { transition:none; }

@media (hover:hover) and (pointer:fine) { #cash-stage[data-cash-ready] .cash-gun[data-cta-active] { opacity:0; transition:none; } }

html.motion-paused #cash-stage .cash-gun, html.motion-paused #cash-stage .cash-gun-art { transition:none; }
