/* A small companion, in the approved artwork, with no card or background panel. */
.mascot-layer{position:fixed;inset:0;z-index:20;overflow:hidden;pointer-events:none}
.shop-mascot{--mascot-x:0px;--mascot-y:0px;position:absolute;left:0;top:0;width:83.2px;height:124.8px;transform:translate3d(var(--mascot-x),var(--mascot-y),0);pointer-events:none;contain:layout style}
.shop-mascot[hidden]{display:none}
.mascot-poses{width:100%;height:100%;position:relative}
.mascot-pose{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;visibility:hidden}
.shop-mascot[data-state="exit"]{transition:transform .42s ease-in}
.shop-mascot[data-state="return"]{transition:transform .43s ease-out}
.shop-mascot[data-state="return"] .mascot-poses{animation:mascot-bounce .18s ease-in-out infinite alternate}
.mascot-dismiss{pointer-events:auto;position:absolute;right:-1px;top:-12px;width:24px;height:24px;border:1px solid #d4d8d0;border-radius:50%;background:#fffffff2;color:#586258;font-size:18px;line-height:18px;padding:0;cursor:pointer;opacity:0;transition:opacity .15s}
.shop-mascot:hover .mascot-dismiss,.mascot-dismiss:focus-visible{opacity:1}
.mascot-thrown{position:absolute;width:23.2px;height:26.4px;pointer-events:none;animation:mascot-toss .65s ease-in forwards}
.mascot-thrown svg{width:100%;height:100%;display:block}
@keyframes mascot-bounce{from{transform:translateY(-2px) rotate(-1deg)}to{transform:translateY(1px) rotate(1deg)}}
@keyframes mascot-toss{0%{transform:translate(0,0) rotate(0);opacity:1}25%{transform:translate(25px,-18px) rotate(55deg);opacity:1}100%{transform:translate(84px,95px) rotate(200deg);opacity:0}}
@media(max-width:600px){.shop-mascot{width:59.2px;height:88.8px}.mascot-dismiss{opacity:.65;right:0;top:-8px;width:21px;height:21px;font-size:16px}.mascot-thrown{width:18.4px;height:21.6px}}
@media(prefers-reduced-motion:reduce){.shop-mascot,.mascot-thrown{display:none!important}}
