/* A handful of tokens is a purse mark, never a second numeric balance. */
.lf .has-purse{--purse-ink:#e3bb68}
.lf .purse-stack{position:relative;display:inline-block;flex:0 0 36px;width:36px;height:32px;color:var(--purse-ink);vertical-align:middle}
.lf .purse-token{width:32px;height:32px;flex:none;color:var(--purse-ink);overflow:visible}
.lf .purse-stack .purse-token{position:absolute;inset:0;filter:drop-shadow(0 1px 1px #0005)}
.lf .purse-stack .purse-token:nth-child(1){transform:translate(-3px,3px) rotate(-16deg)}
.lf .purse-stack .purse-token:nth-child(2){transform:translate(3px,1px) rotate(12deg)}
.lf .purse-stack .purse-token:nth-child(3){transform:translate(0,-2px)}
.lf.rule-card-game .run-wallet.has-purse{align-items:center;gap:7px;min-height:44px;padding:5px 10px}
.lf.rule-card-game .run-wallet.has-purse>span:not(.purse-stack){font-size:10px;letter-spacing:.6px}
.lf.rule-card-game .shop-wallet.has-purse{display:flex;align-items:center;gap:12px}
.lf .purse-balance{flex:1;min-width:0}
.lf .purse-transfer{position:fixed;z-index:120;pointer-events:none;isolation:isolate;color:var(--purse-ink)}
.lf .purse-change{display:flex;align-items:center;justify-content:center;gap:9px;min-height:49px;padding:7px 12px;border:1px solid #c8ae7466;border-radius:5px;background:#17231df5;box-shadow:0 4px 20px #0005}
.lf .purse-delta{font:25px/1 var(--serif);font-variant-numeric:tabular-nums;color:#f4e2b9}
.lf .purse-change-label{font:11px/1.3 var(--sans);color:#e4dfcf}
.lf .purse-traveller{position:absolute;left:calc(50% - 16px);top:8px;z-index:-1;opacity:0;animation:purse-collect 660ms cubic-bezier(.22,.7,.32,1) var(--coin-delay) both}
.lf .purse-transfer[data-direction=spend] .purse-traveller{animation-name:purse-pay}
.lf .purse-transfer[data-motion=animated] .purse-change{animation:purse-receipt 1.05s ease-out both}
@keyframes purse-collect{0%{opacity:0;transform:translate(var(--coin-x),70px) rotate(var(--coin-turn)) scale(.65)}20%{opacity:1}75%{opacity:1;transform:translate(0,0) rotate(0) scale(.92)}100%{opacity:0;transform:translate(0,0) scale(.65)}}
@keyframes purse-pay{0%{opacity:0;transform:translate(0,0) scale(.65)}20%{opacity:1}75%{opacity:1}100%{opacity:0;transform:translate(var(--coin-x),65px) rotate(var(--coin-turn)) scale(.65)}}
@keyframes purse-receipt{0%{opacity:0;transform:translateY(-4px) scale(.96)}12%,78%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.lf .purse-transfer *{animation:none!important}}
