.demo.svelte-2tg0xm{gap:1.2rem;display:grid}.stage.svelte-2tg0xm{touch-action:pan-y;height:min(46svh,24rem);position:relative}canvas.svelte-2tg0xm{cursor:grab;width:100%;height:100%;display:block}canvas.svelte-2tg0xm:active{cursor:grabbing}.identity.svelte-2tg0xm{max-width:13rem;position:absolute;top:0;left:0}.identity.svelte-2tg0xm p:where(.svelte-2tg0xm){color:var(--accent);font:500 clamp(2rem,4vw,3.2rem)/.94 var(--serif);letter-spacing:-.02em;margin:0}.identity.svelte-2tg0xm span:where(.svelte-2tg0xm){font:.67rem/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-top:.7rem;display:block}.rarity.svelte-2tg0xm{--rarity:var(--muted);color:var(--rarity);align-items:center;gap:3px;display:flex;position:absolute;bottom:.5rem;left:.55rem}.animals.svelte-2tg0xm button:where(.svelte-2tg0xm) .rarity:where(.svelte-2tg0xm){color:var(--rarity)}.rarity--common.svelte-2tg0xm{--rarity:var(--rarity-base,var(--ink))}.rarity--uncommon.svelte-2tg0xm{--rarity:color-mix(in srgb,var(--rarity-base,var(--ink)) 72%,var(--accent))}.rarity--rare.svelte-2tg0xm{--rarity:color-mix(in srgb,var(--rarity-base,var(--ink)) 48%,var(--accent))}.rarity--epic.svelte-2tg0xm{--rarity:color-mix(in srgb,var(--rarity-base,var(--ink)) 24%,var(--accent))}.rarity--legendary.svelte-2tg0xm{--rarity:var(--accent)}.rarity.svelte-2tg0xm i:where(.svelte-2tg0xm){background:0 0;border:1px solid;border-radius:50%;width:6px;height:6px}.rarity.svelte-2tg0xm i.filled:where(.svelte-2tg0xm){background:currentColor}.rarity.svelte-2tg0xm b:where(.svelte-2tg0xm){font:700 .48rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-left:.35rem}.identity.svelte-2tg0xm .rarity:where(.svelte-2tg0xm){font:inherit;letter-spacing:0;text-transform:none;margin-top:.55rem;display:inline-flex;position:static}.state.svelte-2tg0xm{text-align:center;font:400 .7rem/1.8 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);place-content:center;display:grid;position:absolute;inset:0}.state.svelte-2tg0xm span:where(.svelte-2tg0xm){border:1px solid;border-top-color:#0000;border-radius:50%;width:1.3rem;height:1.3rem;margin:0 auto .7rem;animation:.8s linear infinite svelte-2tg0xm-spin}.fallback.svelte-2tg0xm{background:color-mix(in srgb,var(--paper-high) 92%,transparent);max-width:24rem;font:.65rem/1.5 var(--mono);color:var(--muted);padding:.65rem .8rem;position:absolute;top:3rem;left:1.4rem}.controls.svelte-2tg0xm{border-top:1px solid var(--hairline);padding-top:1rem}.controls-note.svelte-2tg0xm{color:var(--muted);font:.62rem/1.6 var(--mono);margin:0 0 .9rem}.animals.svelte-2tg0xm{grid-template-columns:repeat(4,1fr);gap:.4rem;display:grid}.animals.svelte-2tg0xm button:where(.svelte-2tg0xm){text-align:left;border:1px solid var(--hairline);border-radius:var(--r-1);font:400 .62rem var(--mono);letter-spacing:.04em;cursor:pointer;background:0 0;gap:.15rem;padding:.5rem .55rem 1.5rem;transition:border-color .16s,background .16s,color .16s,transform .16s;display:grid;position:relative}.animals.svelte-2tg0xm button:where(.svelte-2tg0xm) span:where(.svelte-2tg0xm){color:var(--muted);font-size:.54rem;font-weight:400;line-height:1.3}.animals.svelte-2tg0xm button:where(.svelte-2tg0xm):hover,.animals.svelte-2tg0xm button:where(.svelte-2tg0xm):focus-visible{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.animals.svelte-2tg0xm button:where(.svelte-2tg0xm):active{transform:translateY(1px)}.animals.svelte-2tg0xm button.active:where(.svelte-2tg0xm){background:var(--rarity);color:var(--paper);border-color:var(--rarity)}.animals.svelte-2tg0xm button.active:where(.svelte-2tg0xm):hover,.animals.svelte-2tg0xm button.active:where(.svelte-2tg0xm):focus-visible{border-color:var(--rarity);color:var(--paper)}.animals.svelte-2tg0xm button.active:where(.svelte-2tg0xm) span:where(.svelte-2tg0xm),.animals.svelte-2tg0xm button.active:where(.svelte-2tg0xm) .rarity:where(.svelte-2tg0xm){color:var(--paper)}@keyframes svelte-2tg0xm-spin{to{transform:rotate(360deg)}}@media (width<=700px){.animals.svelte-2tg0xm{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){.state.svelte-2tg0xm span:where(.svelte-2tg0xm){animation:none}}
