#wgh-root{--wgh-purple:#873ae3;--wgh-orange:#ffad43;font:15px/1.5 system-ui,-apple-system,sans-serif;color:#291a43}#wgh-root *{box-sizing:border-box}#wgh-root.wgh-night{--wgh-purple:#a96bff;--wgh-orange:#ffbe63;color:#f7eaff}.wgh-hud{position:fixed;z-index:2147482990;bottom:18px;left:18px;display:flex;align-items:center;gap:11px;max-width:calc(100vw - 36px);padding:9px 13px;border-radius:18px;background:linear-gradient(135deg,#fff9ed,#f2e4ff);box-shadow:0 10px 35px #21113d3d;border:1px solid #d9b6f4}.wgh-night .wgh-hud{background:linear-gradient(135deg,#241437,#402060);border-color:#7447b8;box-shadow:0 8px 32px #a56aff55}.wgh-hud-icon{font-size:27px}.wgh-hud b,.wgh-hud small{display:block}.wgh-hud b{font-size:13px;letter-spacing:.01em}.wgh-hud small{font-size:10px;opacity:.8}.wgh-hud-toggle,.wgh-close{border:0;background:transparent;color:inherit;cursor:pointer;font-size:24px;line-height:1;padding:3px 6px}.wgh-mute{position:fixed;bottom:22px;left:290px;z-index:2147482990;border:0;border-radius:50%;width:34px;height:34px;background:#543180;color:white;cursor:pointer}.wgh-ghost{position:fixed;z-index:2147483000;width:var(--size);height:calc(var(--size)*1.22);border:0;padding:0;background:transparent;cursor:pointer;touch-action:manipulation;filter:drop-shadow(0 0 15px #a768f3);animation:wgh-drift var(--speed) ease-in-out infinite alternate;will-change:transform}.wgh-night .wgh-ghost{filter:drop-shadow(0 0 22px #9c45ff)}.wgh-ghost svg{width:100%;height:calc(100% - 8px)}.wgh-ghost.wgh-hide{animation:wgh-peek 1.6s ease-in-out infinite alternate}.wgh-ghost:hover{filter:drop-shadow(0 0 25px #ffb447);scale:1.12}.wgh-ghost:focus-visible,.wgh-hud button:focus-visible,.wgh-modal button:focus-visible{outline:3px solid #fcb548;outline-offset:3px}.wgh-timer{position:absolute;bottom:0;left:10%;width:80%;height:4px;border-radius:5px;background:#ffffff70;overflow:hidden}.wgh-timer span{display:block;height:100%;background:linear-gradient(90deg,#ffa12d,#ed59b0);transform-origin:left;animation:wgh-time linear forwards}@keyframes wgh-time{to{transform:scaleX(0)}}@keyframes wgh-drift{0%{transform:translate(-18px,-12px) rotate(-10deg)}50%{transform:translate(8px,10px) rotate(7deg)}100%{transform:translate(25px,-4px) rotate(12deg)}}@keyframes wgh-peek{from{opacity:.55;transform:scale(.76) translateY(16px) rotate(-8deg)}to{opacity:1;transform:scale(1.08) translateY(-10px) rotate(6deg)}}.wgh-particle{position:fixed;z-index:2147483003;width:9px;height:9px;border-radius:50%;background:var(--h);pointer-events:none;box-shadow:0 0 9px var(--h);animation:wgh-burst 1s ease-out forwards}@keyframes wgh-burst{to{opacity:0;transform:translate(var(--x),var(--y)) scale(0)}}.wgh-modal{position:fixed;z-index:2147483002;right:20px;bottom:20px;width:min(410px,calc(100vw - 40px));max-height:calc(100dvh - 40px);overflow:auto;border:2px solid #f5b45c;border-radius:25px;padding:18px 22px 24px;background:radial-gradient(circle at top right,#fff3c8,#f8eaff 68%);box-shadow:0 20px 65px #1c113e75;opacity:0;transform:translateY(24px) scale(.96);transition:opacity .2s,transform .2s;pointer-events:none}.wgh-modal[hidden]{display:none}.wgh-modal.wgh-show{opacity:1;transform:none;pointer-events:auto}.wgh-night .wgh-modal{background:radial-gradient(circle at top right,#54316e,#1b102c 70%);border-color:#9b5fff;box-shadow:0 18px 70px #7e39f288}.wgh-modal-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.2em;font-weight:800;color:var(--wgh-purple)}.wgh-modal-body{text-align:center}.wgh-result-icon{font-size:56px;animation:wgh-pop .4s ease-out}.wgh-modal h2{font-size:24px!important;line-height:1.2!important;margin:8px 0!important;color:inherit!important}.wgh-modal p{font-size:15px;margin:12px 0 18px}.wgh-code-label{display:block;font-size:12px;font-weight:700;text-align:left;margin-bottom:5px}.wgh-code-row{display:flex;gap:8px}.wgh-code-row input{min-width:0;flex:1;background:white;color:#251536;border:1px solid #bca1cf;border-radius:10px;padding:10px;font-weight:800;font-size:14px}.wgh-code-row button,.wgh-cart{display:inline-block;border:0;border-radius:10px;padding:11px 14px;background:linear-gradient(135deg,#ffb24e,#fa7c33);color:#29162e!important;font-weight:800;cursor:pointer;text-decoration:none!important}.wgh-cart{margin-top:15px;background:linear-gradient(135deg,#9e66f0,#d5a8ff);color:#1f1030!important}.wgh-modal small{display:block;opacity:.8}@keyframes wgh-pop{from{transform:scale(.3) rotate(-20deg);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:600px){.wgh-hud{left:9px;bottom:9px;padding:7px 9px}.wgh-hud small{max-width:150px}.wgh-mute{left:auto;right:12px;bottom:12px}.wgh-modal{right:10px;bottom:10px;width:calc(100vw - 20px);padding:15px}}@media(prefers-reduced-motion:reduce){.wgh-ghost,.wgh-particle,.wgh-result-icon,.wgh-timer span{animation:none!important}.wgh-modal{transition:none}}

/* 1.2.1: Movement is driven by Web Animations API; avoid competing CSS transforms. */
#wgh-root .wgh-ghost,#wgh-root .wgh-ghost.wgh-hide{animation:none;}
#wgh-root .wgh-ghost svg{filter:drop-shadow(0 0 9px rgba(180,95,255,.45));}

/* 1.2.2: JS drives screen travel, CSS decorates without overriding transforms. */
#wgh-root .wgh-ghost{transition:filter .15s ease;animation:none!important;}
#wgh-root .wgh-ghost svg{animation:wgh-spirit-glow 1.2s ease-in-out infinite alternate;}
@keyframes wgh-spirit-glow{from{filter:drop-shadow(0 0 4px #a45cff)}to{filter:drop-shadow(0 0 18px #ffae57)}}
#wgh-root .wgh-particle{animation:wgh-burst 1s ease-out forwards!important;}

/* 1.2.3: Do not suppress gameplay motion or particle effects under OS reduced-motion preference. */
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-particle{animation:wgh-burst 1s ease-out forwards!important}#wgh-root .wgh-ghost svg{animation:wgh-spirit-glow 1.2s ease-in-out infinite alternate!important}}

/* 1.3.0: Magical arrival, travel and capture effects; no transform conflicts with JS. */
#wgh-root .wgh-portal{position:fixed;z-index:2147482998;width:125px;height:125px;margin:-62px 0 0 -62px;pointer-events:none;border:3px solid #c78aff;border-radius:50%;box-shadow:0 0 13px #a25cff,0 0 36px #b44cff,inset 0 0 24px #efabff;animation:wgh-portal-open 1s ease-out forwards}
#wgh-root .wgh-portal:before,#wgh-root .wgh-portal:after{content:"✦ ✧ ✦";position:absolute;inset:-15px;text-align:center;color:#ffc875;letter-spacing:18px;animation:wgh-portal-spin 1s linear infinite}
#wgh-root .wgh-portal:after{inset:65px -15px -15px;animation-direction:reverse;color:#e5a6ff}
@keyframes wgh-portal-open{0%{opacity:0;transform:scale(.15) rotate(-45deg)}30%{opacity:1}100%{opacity:0;transform:scale(1.7) rotate(90deg)}}
@keyframes wgh-portal-spin{to{transform:rotate(360deg)}}
#wgh-root .wgh-trail{position:fixed;z-index:2147482999;pointer-events:none;width:10px;height:10px;margin:-5px;border-radius:50%;background:var(--tcolor);box-shadow:0 0 12px 5px var(--tcolor);animation:wgh-trail-fade .75s ease-out forwards}
@keyframes wgh-trail-fade{to{opacity:0;transform:translateY(23px) scale(.05)}}
#wgh-root .wgh-magic-bit{position:fixed;z-index:2147483004;pointer-events:none;width:10px;height:10px;margin:-5px;background:var(--mc);box-shadow:0 0 12px var(--mc);clip-path:polygon(50% 0,62% 36%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:wgh-magic-explode 1.15s cubic-bezier(.1,.7,.25,1) forwards}
@keyframes wgh-magic-explode{0%{opacity:0;transform:translate(0,0) scale(.3)}15%{opacity:1}100%{opacity:0;transform:translate(var(--mx),var(--my)) rotate(var(--spin)) scale(.1)}}
#wgh-root .wgh-ghost.wgh-arriving svg{animation:wgh-arrival .6s ease-out,wgh-spirit-glow 1.2s ease-in-out infinite alternate!important}
@keyframes wgh-arrival{0%{opacity:0;filter:brightness(3) blur(12px)}100%{opacity:1;filter:brightness(1) blur(0)}}
#wgh-root .wgh-modal.wgh-show{box-shadow:0 20px 75px #9d48ff80,0 0 25px #ffb64e55}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-portal,#wgh-root .wgh-trail,#wgh-root .wgh-magic-bit{animation-duration:.4s!important}}

/* 1.3.1: Countdown is synchronized to the actual ghost lifetime by JS.
   Explicit dimensions and specificity prevent theme styles from hiding it. */
#wgh-root .wgh-ghost .wgh-timer{
  position:absolute!important;display:block!important;left:8%!important;
  bottom:-5px!important;width:84%!important;height:8px!important;
  background:rgba(24,10,47,.7)!important;border:1px solid rgba(255,255,255,.85)!important;
  border-radius:99px!important;overflow:hidden!important;
  box-shadow:0 0 12px rgba(177,86,255,.65)!important;
  pointer-events:none!important;transform:none!important;opacity:1!important;
}
#wgh-root .wgh-ghost .wgh-timer-fill{
  display:block!important;width:100%;height:100%!important;
  background:#a65cff;border-radius:99px;
  animation:none!important;transition:none!important;transform:none!important;
  box-shadow:0 0 9px currentColor;
}

/* 1.4.0 – visible character variety, streak and reward celebration */
#wgh-root .wgh-streak{font-size:11px;font-weight:800;white-space:nowrap;color:#7e3ac5;padding:4px 8px;border-radius:20px;background:#ead6ff}
#wgh-root.wgh-night .wgh-streak{color:#ffdf95;background:#5a317b}
#wgh-root .wgh-streak-pop{animation:wgh-streak-bounce .45s ease-out!important}
@keyframes wgh-streak-bounce{0%{transform:scale(.65)}55%{transform:scale(1.28)}100%{transform:scale(1)}}
#wgh-root .wgh-feedback{position:fixed;z-index:2147483005;pointer-events:none;font-weight:1000;font-size:23px;color:#ffd166;text-shadow:0 2px 2px #502173,0 0 14px #a94cff;transform:translate(-50%,-50%);animation:wgh-feedback-up 1.1s ease-out forwards!important}
@keyframes wgh-feedback-up{0%{opacity:0;transform:translate(-50%,-25%) scale(.6)}25%{opacity:1;transform:translate(-50%,-90%) scale(1.25)}100%{opacity:0;transform:translate(-50%,-170%) scale(.8)}}
#wgh-root .wgh-confetti{position:fixed;z-index:2147483005;width:8px;height:14px;pointer-events:none;border-radius:2px;background:hsl(var(--hue),95%,65%);box-shadow:0 0 7px #fff8;animation:wgh-confetti-fall 1.8s ease-in forwards!important}
@keyframes wgh-confetti-fall{0%{opacity:0;transform:translate(0,0) rotate(0)}15%{opacity:1}100%{opacity:0;transform:translate(var(--drift),var(--fall)) rotate(760deg)}}
#wgh-root .wgh-type-crown{filter:drop-shadow(0 0 19px #ffd14a) drop-shadow(0 0 12px #ff9a32)}
#wgh-root .wgh-type-bat{filter:drop-shadow(0 0 20px #8148e4)}
#wgh-root .wgh-type-pumpkin{filter:drop-shadow(0 0 20px #ff923f)}
#wgh-root .wgh-type-mischief{filter:drop-shadow(0 0 20px #f36bcb)}
@media(max-width:480px){#wgh-root .wgh-streak{display:none}}

/* 1.5: rare golden apparition; visual rarity does not change prize odds */
#wgh-root .wgh-rare{filter:drop-shadow(0 0 13px #ffce47) drop-shadow(0 0 27px #ffb627)!important}
#wgh-root .wgh-rare:before{content:'✦ RITKA ✦';position:absolute;top:-23px;left:50%;transform:translateX(-50%);white-space:nowrap;color:#ffcb51;background:#28113a;border:1px solid #ffc859;padding:2px 7px;border-radius:20px;font-size:10px;font-weight:900;box-shadow:0 0 13px #ffca65;pointer-events:none}

/* 1.6.0: playful sheet-dog disguises and losing reveal */
#wgh-root .wgh-dog-svg{overflow:visible}
#wgh-root .wgh-type-dog-sheet,#wgh-root .wgh-type-dog-pumpkin,
#wgh-root .wgh-type-dog-bat,#wgh-root .wgh-type-dog-paw{
 filter:drop-shadow(0 0 14px #bc8cff) drop-shadow(0 0 6px #fff7)!important;
}
#wgh-root .wgh-type-dog-pumpkin{filter:drop-shadow(0 0 18px #ff9c48)!important}
#wgh-root .wgh-type-dog-bat{filter:drop-shadow(0 0 18px #8578ff)!important}
#wgh-root .wgh-dog-reveal{position:fixed;z-index:2147483007;width:125px;height:145px;pointer-events:none;opacity:0;transform:translate(-50%,-45%) scale(.7);transition:opacity .3s,transform .45s cubic-bezier(.2,1.6,.3,1)}
#wgh-root .wgh-dog-reveal.wgh-revealed{opacity:1;transform:translate(-50%,-70%) scale(1.1)}
#wgh-root .wgh-dog-reveal .wgh-dog-sheet{transform-origin:50% 20%;transition:transform .65s ease-in,opacity .55s ease-in}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-dog-sheet{transform:translate(55px,-125px) rotate(45deg);opacity:0}
#wgh-root .wgh-dog-caption{display:block;position:absolute;top:135px;left:50%;transform:translateX(-50%);width:230px;max-width:75vw;text-align:center;background:#39204f;color:#fff4d4;border:2px solid #ffcc72;padding:7px 10px;border-radius:18px;font-size:12px;font-weight:800;box-shadow:0 0 18px #ae6bf5}
#wgh-root .wgh-dog-reveal.wgh-reveal-exit{opacity:0;transform:translate(-50%,-120%) scale(.7)}

/* 1.6.1: Dog costumes should be immediately recognizable and reveal must be visible */
#wgh-root .wgh-dog-reveal{z-index:2147483645!important;width:175px;height:205px}
#wgh-root .wgh-dog-reveal .wgh-dog-caption{top:177px!important}
#wgh-root .wgh-dog-reveal .wgh-dog-svg{width:100%;height:100%}
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-svg{width:100%;height:100%;filter:drop-shadow(0 0 6px #ffffff)}
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-sheet{transform-origin:50% 30%;animation:wgh-sheet-wiggle .36s ease-in-out infinite alternate!important}
@keyframes wgh-sheet-wiggle{from{transform:rotate(-5deg) translateY(0)}to{transform:rotate(5deg) translateY(-3px)}}
#wgh-root .wgh-dog-reveal .wgh-dog-sheet{animation:none!important}

/* 1.7: articulated dog animation. Keep these scoped to the game root. */
#wgh-root .wgh-ghost[class*="wgh-type-dog-"]{width:calc(var(--size)*1.35);height:calc(var(--size)*1.48)}
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-svg{width:100%;height:calc(100% - 10px);overflow:visible;animation:wgh-dog-hop .3s ease-in-out infinite alternate!important;transform-origin:50% 78%}
#wgh-root .wgh-dog-tail{transform-origin:120px 110px;animation:wgh-dog-wag .18s ease-in-out infinite alternate!important}
#wgh-root .wgh-dog-leg-a{transform-origin:48px 115px;animation:wgh-dog-step .22s ease-in-out infinite alternate!important}
#wgh-root .wgh-dog-leg-b{transform-origin:110px 115px;animation:wgh-dog-step .22s ease-in-out infinite alternate-reverse!important}
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-sheet{transform-origin:50% 30%;animation:wgh-sheet-flap .26s ease-in-out infinite alternate!important}
@keyframes wgh-dog-hop{from{transform:translateY(4px) rotate(-2deg)}to{transform:translateY(-7px) rotate(2deg)}}
@keyframes wgh-dog-wag{from{transform:rotate(-24deg)}to{transform:rotate(26deg)}}
@keyframes wgh-dog-step{from{transform:rotate(-23deg)}to{transform:rotate(24deg)}}
@keyframes wgh-sheet-flap{from{transform:rotate(-6deg) skewX(-3deg)}to{transform:rotate(6deg) skewX(3deg)}}
#wgh-root .wgh-dog-reveal{z-index:2147483645!important;width:195px;height:225px;transform:translate(-50%,-50%) scale(.65);transition:opacity .3s,transform .35s cubic-bezier(.15,1.2,.3,1)}
#wgh-root .wgh-dog-reveal.wgh-revealed{transform:translate(-50%,-55%) scale(1);opacity:1}
#wgh-root .wgh-dog-reveal .wgh-dog-svg{width:100%;height:100%;animation:wgh-dog-reveal-hop .3s ease-in-out infinite alternate!important}
#wgh-root .wgh-dog-reveal .wgh-dog-sheet{animation:none!important;transform-origin:50% 18%;transition:transform .95s cubic-bezier(.18,.8,.2,1),opacity .75s!important}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-dog-sheet{transform:translate(105px,-175px) rotate(100deg) scale(.72)!important;opacity:0!important}
#wgh-root .wgh-dog-reveal .wgh-dog-caption{top:220px!important;font-size:14px!important;width:255px!important}
#wgh-root .wgh-dog-reveal.wgh-reveal-exit{opacity:0;transform:translate(-50%,-85%) scale(.8)}
@keyframes wgh-dog-reveal-hop{from{transform:translateY(1px)}to{transform:translateY(-9px)}}

/* 1.8: joyful dog win reveal and individual costume details */
#wgh-root .wgh-win-reveal .wgh-dog-body{animation:wgh-happy-hop .45s ease-in-out 3!important;transform-origin:50% 75%}
#wgh-root .wgh-win-reveal .wgh-dog-tail{animation:wgh-tail-wag .18s ease-in-out infinite alternate!important}
#wgh-root .wgh-win-reveal .wgh-dog-caption{border-color:#a2e4aa;background:#2d5b46;color:#fff}
#wgh-root .wgh-bone{position:absolute;top:8px;right:-18px;font-size:32px;opacity:0;animation:wgh-bone-pop 1.4s .6s ease-out forwards!important}
@keyframes wgh-happy-hop{0%,100%{transform:translateY(0)}50%{transform:translateY(-13px)}}
@keyframes wgh-bone-pop{0%{opacity:0;transform:scale(.2) rotate(-45deg)}35%{opacity:1;transform:scale(1.4) rotate(15deg)}100%{opacity:1;transform:scale(1) rotate(-10deg)}}

/* 1.9.0 – distinct dog breeds and personality */
#wgh-root .wgh-breed-label{position:absolute;left:50%;top:-21px;transform:translateX(-50%);white-space:nowrap;padding:3px 8px;border-radius:999px;background:rgba(42,22,61,.92);border:1px solid #ffc976;color:#ffe6b6;font:800 11px/1.2 system-ui,sans-serif;pointer-events:none;box-shadow:0 2px 12px #59288477;z-index:2}
#wgh-root .wgh-type-dog-husky{filter:drop-shadow(0 0 13px #76c4ff)!important}
#wgh-root .wgh-type-dog-corgi{filter:drop-shadow(0 0 13px #ffae65)!important}
#wgh-root .wgh-type-dog-dalmatian{filter:drop-shadow(0 0 13px #e8e8ff)!important}
#wgh-root .wgh-type-dog-beagle{filter:drop-shadow(0 0 13px #8ddd8d)!important}
#wgh-root .wgh-type-dog-poodle{filter:drop-shadow(0 0 13px #ffb5ed)!important}
#wgh-root .wgh-type-dog-shiba{filter:drop-shadow(0 0 13px #ffca71)!important}
#wgh-root .wgh-type-dog-bulldog{filter:drop-shadow(0 0 13px #a1c7ff)!important}
#wgh-root .wgh-type-dog-border{filter:drop-shadow(0 0 13px #8df5bc)!important}

/* 2.0: true side-view dogs instead of bubble-shaped ghosts */
#wgh-root .wgh-ghost[class*="wgh-type-dog-"]{width:calc(var(--size)*2.15)!important;height:calc(var(--size)*1.52)!important}
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-svg{width:100%!important;height:calc(100% - 13px)!important;animation:wgh-run-body .34s ease-in-out infinite alternate!important;filter:none!important}
#wgh-root .wgh-dog-side .wgh-dog-leg-a{transform-origin:66px 102px;animation:wgh-side-step .23s ease-in-out infinite alternate!important}
#wgh-root .wgh-dog-side .wgh-dog-leg-b{transform-origin:117px 102px;animation:wgh-side-step .23s ease-in-out infinite alternate-reverse!important}
#wgh-root .wgh-dog-side .wgh-dog-tail{transform-origin:34px 80px;animation:wgh-side-wag .23s ease-in-out infinite alternate!important}
#wgh-root .wgh-ghost .wgh-dog-side .wgh-dog-sheet{transform-origin:100px 43px;animation:wgh-side-sheet .32s ease-in-out infinite alternate!important}
@keyframes wgh-run-body{from{transform:translateY(2px) rotate(-1deg)}to{transform:translateY(-5px) rotate(1deg)}}
@keyframes wgh-side-step{from{transform:rotate(-24deg)}to{transform:rotate(26deg)}}
@keyframes wgh-side-wag{from{transform:rotate(-18deg)}to{transform:rotate(24deg)}}
@keyframes wgh-side-sheet{from{transform:skewX(-4deg) translateY(1px)}to{transform:skewX(5deg) translateY(-3px)}}
#wgh-root .wgh-dog-reveal .wgh-dog-side{width:100%!important;height:100%!important}
#wgh-root .wgh-dog-reveal .wgh-dog-side .wgh-dog-sheet{animation:none!important;transform-origin:100px 40px;transition:transform .95s cubic-bezier(.18,.8,.2,1),opacity .75s!important}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-dog-side .wgh-dog-sheet{transform:translate(95px,-155px) rotate(105deg) scale(.6)!important;opacity:0!important}
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-breed-label{top:-13px}

/* 2.1: the dog's nose always points in the actual direction of travel.
   Mirroring the SVG only keeps the breed name and timer readable. */
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-side{
 transform:scaleX(var(--wgh-facing,1))!important;
 animation:none!important;
 overflow:visible!important;
}
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-side .wgh-dog-body{
 animation:wgh-breath .35s ease-in-out infinite alternate!important;
 transform-origin:100px 95px;
}
@keyframes wgh-breath{from{transform:translateY(2px)}to{transform:translateY(-3px)}}
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-side .wgh-dog-leg-a,
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-side .wgh-dog-leg-b{
 animation-duration:.28s!important;
}
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-side .wgh-dog-sheet{
 animation-duration:.42s!important;
}

/* 2.2.0 - character personality and breed-specific running pace */
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-side .wgh-dog-leg-a,
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-side .wgh-dog-leg-b{animation-duration:var(--wgh-gait,.29s)!important}
#wgh-root .wgh-ghost.wgh-type-dog-beagle .wgh-dog-side .wgh-dog-body{animation:wgh-sniff .55s ease-in-out infinite alternate!important}
#wgh-root .wgh-ghost.wgh-type-dog-pumpkin .wgh-dog-side .wgh-dog-body,
#wgh-root .wgh-ghost.wgh-type-dog-bulldog .wgh-dog-side .wgh-dog-body{animation:wgh-pug-waddle .55s ease-in-out infinite alternate!important}
#wgh-root .wgh-ghost.wgh-type-dog-corgi .wgh-dog-side .wgh-dog-body{animation:wgh-corgi-hop .38s ease-out infinite!important}
#wgh-root .wgh-ghost.wgh-type-dog-poodle .wgh-dog-side .wgh-dog-body{animation:wgh-poodle-dance .5s ease-in-out infinite!important}
@keyframes wgh-sniff{from{transform:translateY(2px) rotate(2deg)}to{transform:translateY(7px) rotate(-4deg)}}
@keyframes wgh-pug-waddle{from{transform:translateX(-3px) rotate(-4deg)}to{transform:translateX(3px) rotate(4deg)}}
@keyframes wgh-corgi-hop{0%,100%{transform:translateY(3px)}45%{transform:translateY(-12px)}}
@keyframes wgh-poodle-dance{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-7px) rotate(5deg)}}
#wgh-root .wgh-dog-reveal .wgh-dog-side{transform:scaleX(var(--wgh-facing,1))!important}
#wgh-root .wgh-dog-reveal.wgh-win-reveal .wgh-dog-body{animation:wgh-corgi-hop .38s ease-out 4!important}

/* 2.3: visible dog face, short costume cape and anatomically placed ears */
#wgh-root .wgh-dog-side .wgh-dog-sheet{transform-origin:81px 57px!important}
#wgh-root .wgh-dog-side .wgh-dog-body{transform-origin:110px 94px!important}
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-side .wgh-dog-sheet{animation-duration:.5s!important}

/* 2.4 Magical reveal – hide the dog completely before the reveal. */
#wgh-root .wgh-ghost[class*="wgh-type-dog-"] .wgh-dog-sheet{filter:drop-shadow(0 4px 3px #49315b55)}
#wgh-root .wgh-magic-stage{width:215px!important;height:215px!important;opacity:0;transform:translate(-50%,-50%) scale(.35)!important;transition:opacity .35s ease,transform .5s cubic-bezier(.17,1.55,.3,1)!important;isolation:isolate}
#wgh-root .wgh-magic-stage.wgh-magic-appear{opacity:1;transform:translate(-50%,-55%) scale(1)!important}
#wgh-root .wgh-magic-stage .wgh-dog-side{width:100%!important;height:100%!important;overflow:visible!important}
#wgh-root .wgh-magic-stage .wgh-dog-sheet{animation:none!important;transform-origin:100px 40px!important;opacity:1!important;transition:none!important;filter:drop-shadow(0 5px 5px #31204555)}
#wgh-root .wgh-magic-stage.wgh-revealed .wgh-dog-sheet{animation:wgh-magic-cloak-away 1.18s cubic-bezier(.2,.8,.15,1) forwards!important;transition:none!important}
@keyframes wgh-magic-cloak-away{0%{transform:translate(0,0) rotate(0) scale(1);opacity:1}20%{transform:translate(-8px,-14px) rotate(-9deg) scale(1.06);opacity:1}58%{transform:translate(54px,-85px) rotate(58deg) scale(.9);opacity:.92}100%{transform:translate(130px,-210px) rotate(165deg) scale(.3);opacity:0}}
#wgh-root .wgh-magic-stage .wgh-magic-halo{position:absolute;z-index:-1;left:50%;top:45%;width:205px;height:205px;transform:translate(-50%,-50%) scale(.25);border-radius:50%;background:radial-gradient(circle,#fff7c6dd 0%,#ffcf6d88 23%,#c66fff55 50%,transparent 72%);opacity:0;pointer-events:none}
#wgh-root .wgh-magic-stage.wgh-magic-pop .wgh-magic-halo{animation:wgh-magic-halo 1.45s ease-out forwards}
@keyframes wgh-magic-halo{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.7)}}
#wgh-root .wgh-magic-stage .wgh-magic-ring{position:absolute;left:50%;top:46%;width:170px;height:170px;z-index:-1;transform:translate(-50%,-50%) scale(.2) rotate(0deg);border:4px solid #ffeaa1;border-top-color:#d485ff;border-bottom-color:#83eaff;border-radius:50%;opacity:0;box-shadow:0 0 22px #d788ff, inset 0 0 18px #ffd67d;pointer-events:none}
#wgh-root .wgh-magic-stage.wgh-magic-appear .wgh-magic-ring{animation:wgh-magic-charge 1.45s ease-in-out forwards}
@keyframes wgh-magic-charge{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(0)}40%{opacity:1;transform:translate(-50%,-50%) scale(1.05) rotate(170deg)}75%{opacity:1;transform:translate(-50%,-50%) scale(1.1) rotate(290deg)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.5) rotate(360deg)}}
#wgh-root .wgh-magic-stage .wgh-magic-flash{position:absolute;left:50%;top:45%;width:210px;height:210px;transform:translate(-50%,-50%) scale(.2);border-radius:50%;background:radial-gradient(circle,#ffffffee,#ffe5a2aa 24%,transparent 65%);opacity:0;pointer-events:none;z-index:4}
#wgh-root .wgh-magic-stage.wgh-magic-pop .wgh-magic-flash{animation:wgh-magic-blink .53s ease-out forwards}
@keyframes wgh-magic-blink{0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.65)}}
#wgh-root .wgh-magic-stage .wgh-dog-caption{top:206px!important;opacity:0;transition:opacity .35s,transform .35s;transform:translateY(10px)}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate .wgh-dog-caption{opacity:1;transform:translateY(0)}
#wgh-root .wgh-magic-stage.wgh-reveal-exit{opacity:0!important;transform:translate(-50%,-95%) scale(.78)!important}

/* 2.5: No breed names above moving ghosts; distinctive reveal reactions */
#wgh-root .wgh-breed-label{display:none!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate .wgh-dog-body{transform-origin:110px 95px!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate.wgh-reaction-wobble .wgh-dog-body{animation:wgh-reveal-wobble .65s ease-in-out 2!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate.wgh-reaction-bounce .wgh-dog-body{animation:wgh-reveal-bounce .38s ease-out 4!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate.wgh-reaction-howl .wgh-dog-body{animation:wgh-reveal-howl .85s ease-in-out 2!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate.wgh-reaction-spin .wgh-dog-body{animation:wgh-reveal-spin .8s ease-in-out 2!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate.wgh-reaction-sniff .wgh-dog-body{animation:wgh-reveal-sniff .43s ease-in-out 4!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate.wgh-reaction-pose .wgh-dog-body{animation:wgh-reveal-pose .6s ease-in-out 2!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate.wgh-reaction-dash .wgh-dog-body{animation:wgh-reveal-dash .32s ease-in-out 4!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate.wgh-reaction-bone .wgh-dog-body{animation:wgh-reveal-bone .5s ease-in-out 3!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate .wgh-dog-tail{animation:wgh-side-wag .14s ease-in-out infinite alternate!important}
#wgh-root .wgh-reaction-prop{position:absolute;left:70%;top:14%;font-size:33px;z-index:5;pointer-events:none;animation:wgh-reaction-float 1.2s ease-in-out infinite alternate;filter:drop-shadow(0 4px 8px #46245b88)}
@keyframes wgh-reveal-wobble{0%,100%{transform:rotate(0)}25%{transform:rotate(-13deg)}75%{transform:rotate(13deg)}}
@keyframes wgh-reveal-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-22px) rotate(-5deg)}}
@keyframes wgh-reveal-howl{0%,100%{transform:rotate(0) translateY(0)}50%{transform:rotate(-16deg) translateY(-10px)}}
@keyframes wgh-reveal-spin{0%,100%{transform:rotate(-9deg) translateY(0)}50%{transform:rotate(10deg) translateY(-12px)}}
@keyframes wgh-reveal-sniff{0%,100%{transform:rotate(4deg) translateY(0)}50%{transform:rotate(-8deg) translateY(8px)}}
@keyframes wgh-reveal-pose{0%,100%{transform:scale(1)}50%{transform:scale(1.12) rotate(-3deg)}}
@keyframes wgh-reveal-dash{0%,100%{transform:translateX(-10px)}50%{transform:translateX(12px)}}
@keyframes wgh-reveal-bone{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-9px) rotate(7deg)}}
@keyframes wgh-reaction-float{from{opacity:.75;transform:translateY(9px) rotate(-13deg) scale(.8)}to{opacity:1;transform:translateY(-12px) rotate(15deg) scale(1.18)}}

/* 2.6: hide dog label in all character variants */
#wgh-root .wgh-breed-label{display:none!important}

/* 2.7 – breed silhouettes, ears, blinking and expressive reveal faces */
#wgh-root .wgh-dog-svg .wgh-ear{transform-origin:133px 48px}
#wgh-root .wgh-ghost .wgh-dog-svg .wgh-floppy-ear{animation:wgh-ear-run .27s ease-in-out infinite alternate!important}
@keyframes wgh-ear-run{from{transform:rotate(-11deg)}to{transform:rotate(15deg)}}
#wgh-root .wgh-dog-eye{transform-origin:155px 66px;animation:wgh-eye-blink 4.7s linear infinite!important}
@keyframes wgh-eye-blink{0%,89%,93%,100%{transform:scaleY(1)}91%{transform:scaleY(.12)}}
#wgh-root .wgh-dog-tongue{opacity:0;transform-origin:175px 105px;transform:scaleY(.2);transition:opacity .18s,transform .25s}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate .wgh-dog-tongue{opacity:1;transform:scaleY(1);animation:wgh-tongue-pant .3s ease-in-out infinite alternate!important}
@keyframes wgh-tongue-pant{from{transform:scaleY(.75)}to{transform:scaleY(1.15)}}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate .wgh-floppy-ear{animation:wgh-ear-reveal .34s ease-in-out infinite alternate!important}
@keyframes wgh-ear-reveal{from{transform:rotate(-16deg)}to{transform:rotate(22deg)}}
#wgh-root .wgh-magic-stage[data-mood="surprised"].wgh-magic-celebrate .wgh-dog-eye{animation:wgh-eye-surprise .35s ease-out 2!important}
@keyframes wgh-eye-surprise{from{transform:scaleY(1.4)}to{transform:scaleY(1)}}
#wgh-root .wgh-magic-stage[data-mood="proud"].wgh-magic-celebrate .wgh-dog-body{filter:drop-shadow(0 0 9px #ffd57d)}
#wgh-root .wgh-magic-stage[data-mood="singing"].wgh-magic-celebrate .wgh-dog-mouth{stroke-width:5!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate .wgh-dog-leg-a{animation:wgh-side-step .32s ease-in-out infinite alternate!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate .wgh-dog-leg-b{animation:wgh-side-step .32s ease-in-out infinite alternate-reverse!important}
@media(max-width:500px){#wgh-root .wgh-magic-stage{max-width:52vw!important;max-height:52vw!important}#wgh-root .wgh-magic-stage .wgh-dog-caption{max-width:75vw!important;left:50%!important;transform:translateX(-50%)!important}}

/* 2.8 – illustrated fabric, glowing arcane sigils and polished dimensional SVG */
#wgh-root .wgh-magic-runes{position:absolute;z-index:2;left:50%;top:45%;width:225px;height:225px;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%) scale(.25);border-radius:50%;color:#fff0b7;letter-spacing:12px;text-shadow:0 0 9px #ff9f51,0 0 17px #bb6bff;font-size:22px;font-weight:900;opacity:0;pointer-events:none}
#wgh-root .wgh-magic-stage.wgh-magic-appear .wgh-magic-runes{animation:wgh-runes 1.4s cubic-bezier(.2,.6,.3,1) forwards}
@keyframes wgh-runes{0%{opacity:0;transform:translate(-50%,-50%) rotate(-80deg) scale(.2)}40%{opacity:1;transform:translate(-50%,-50%) rotate(0deg) scale(.95)}75%{opacity:1;transform:translate(-50%,-50%) rotate(90deg) scale(1.05)}100%{opacity:0;transform:translate(-50%,-50%) rotate(160deg) scale(1.5)}}
#wgh-root .wgh-dog-svg{overflow:visible;paint-order:stroke fill}
#wgh-root .wgh-magic-stage.wgh-revealed .wgh-dog-svg{filter:drop-shadow(0 6px 5px rgba(55,25,68,.2))}

/* 2.9 cinematic reveal scene, using layered CSS effects, no external dependencies */
#wgh-root .wgh-stage-spotlight{position:absolute;z-index:-1;left:50%;top:46%;width:300px;height:300px;transform:translate(-50%,-50%) scale(.35);opacity:0;border-radius:50%;background:radial-gradient(circle,#fff5cc 0%,#f4d2ff9e 32%,#ae8bff42 52%,transparent 72%);pointer-events:none}
#wgh-root .wgh-magic-appear .wgh-stage-spotlight{animation:wgh-spotlight 2.8s ease-out forwards}
@keyframes wgh-spotlight{0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}32%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}78%{opacity:.8}100%{opacity:0;transform:translate(-50%,-50%) scale(1.45)}}
#wgh-root .wgh-stage-floor{position:absolute;left:50%;top:80%;width:170px;height:30px;transform:translateX(-50%) scale(.2);border-radius:50%;opacity:0;background:radial-gradient(ellipse,#a16bda77 0%,#d4b4fa3d 45%,transparent 75%);filter:blur(4px);pointer-events:none}
#wgh-root .wgh-revealed .wgh-stage-floor{opacity:1;transform:translateX(-50%) scale(1);transition:opacity .4s,transform .5s}
#wgh-root .wgh-stage-star{position:absolute;z-index:3;left:50%;top:40%;width:6px;height:6px;opacity:0;pointer-events:none;border-radius:1px;transform:rotate(var(--angle)) translateY(0);background:#ffe3a2;box-shadow:0 0 8px #fff,0 0 16px #f9a5ff;animation:none}
#wgh-root .wgh-magic-pop .wgh-stage-star{animation:wgh-star-launch 1.1s cubic-bezier(.15,.7,.3,1) var(--delay) forwards}
@keyframes wgh-star-launch{0%{opacity:0;transform:rotate(var(--angle)) translateY(0) scale(.3)}22%{opacity:1}75%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateY(-155px) scale(1.6)}}
#wgh-root .wgh-dog-reveal .wgh-dog-side .wgh-dog-sheet{filter:drop-shadow(0 3px 4px #8662a866)}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-dog-side .wgh-dog-sheet{filter:drop-shadow(0 8px 6px #8662a855)}

/* 3.0 – entirely new articulated dog rigs (all eighteen breeds).
   Animations are on independent body parts, not on the entire silhouette. */
#wgh-root .wgh-rig3{overflow:visible!important}
#wgh-root .wgh-rig3 .wgh-leg-rig{transform-box:view-box;transform-origin:var(--leg-origin,center)!important}
#wgh-root .wgh-ghost .wgh-rig3 .wgh-leg-front{animation:wgh3-gallop-front var(--wgh-gait,.29s) cubic-bezier(.48,0,.52,1) infinite alternate!important}
#wgh-root .wgh-ghost .wgh-rig3 .wgh-leg-rear{animation:wgh3-gallop-rear var(--wgh-gait,.29s) cubic-bezier(.48,0,.52,1) infinite alternate!important}
#wgh-root .wgh-ghost .wgh-rig3 .wgh-dog-body{animation:wgh3-spring var(--wgh-gait,.29s) ease-in-out infinite alternate!important;transform-origin:98px 91px!important}
#wgh-root .wgh-ghost .wgh-rig3 .wgh-head-rig{animation:wgh3-head var(--wgh-gait,.29s) ease-in-out infinite alternate!important;transform-origin:145px 82px!important}
#wgh-root .wgh-ghost .wgh-rig3 .wgh-ear{animation:wgh3-ear calc(var(--wgh-gait,.29s)*1.3) ease-in-out infinite alternate!important;transform-box:fill-box;transform-origin:top center!important}
#wgh-root .wgh-ghost .wgh-rig3 .wgh-dog-sheet{animation:wgh3-fabric calc(var(--wgh-gait,.29s)*1.7) ease-in-out infinite alternate!important;transform-origin:115px 52px!important}
#wgh-root .wgh-rig3 .wgh-dog-tail{transform-origin:38px 81px!important;animation:wgh3-tail .2s ease-in-out infinite alternate!important}
@keyframes wgh3-gallop-front{from{transform:rotate(-22deg) translateY(-2px)}to{transform:rotate(29deg) translateY(3px)}}
@keyframes wgh3-gallop-rear{from{transform:rotate(29deg) translateY(3px)}to{transform:rotate(-25deg) translateY(-3px)}}
@keyframes wgh3-spring{from{transform:translateY(3px) rotate(-1deg)}to{transform:translateY(-4px) rotate(1deg)}}
@keyframes wgh3-head{from{transform:rotate(-4deg) translateY(1px)}to{transform:rotate(5deg) translateY(-2px)}}
@keyframes wgh3-ear{from{transform:rotate(-8deg)}to{transform:rotate(12deg)}}
@keyframes wgh3-fabric{from{transform:skewX(-3deg) translateY(1px)}to{transform:skewX(3deg) translateY(-2px)}}
@keyframes wgh3-tail{from{transform:rotate(-16deg)}to{transform:rotate(22deg)}}
/* Personality-specific locomotion. */
#wgh-root .wgh-type-dog-corgi .wgh-rig3 .wgh-dog-body,
#wgh-root .wgh-type-dog-paw .wgh-rig3 .wgh-dog-body{animation:wgh3-hop .31s ease-in-out infinite alternate!important}
#wgh-root .wgh-type-dog-american-bulldog .wgh-rig3 .wgh-dog-body,
#wgh-root .wgh-type-dog-rottweiler .wgh-rig3 .wgh-dog-body{animation:wgh3-heavy .42s ease-in-out infinite alternate!important}
#wgh-root .wgh-type-dog-sheet .wgh-rig3 .wgh-dog-body{animation:wgh3-low .28s ease-in-out infinite alternate!important}
#wgh-root .wgh-type-dog-husky .wgh-rig3 .wgh-head-rig,
#wgh-root .wgh-type-dog-german-shepherd .wgh-rig3 .wgh-head-rig{animation:wgh3-focus .35s ease-in-out infinite alternate!important}
@keyframes wgh3-hop{from{transform:translateY(5px) rotate(-2deg)}to{transform:translateY(-7px) rotate(2deg)}}
@keyframes wgh3-heavy{from{transform:translateY(3px) rotate(-1deg)}to{transform:translateY(-2px) rotate(1deg)}}
@keyframes wgh3-low{from{transform:translateY(2px)}to{transform:translateY(-2px)}}
@keyframes wgh3-focus{from{transform:rotate(-2deg)}to{transform:rotate(2deg)}}
/* The dog stays hidden until the cloth exits. Rig comes alive during reveal. */
#wgh-root .wgh-magic-stage .wgh-rig3 .wgh-leg-rig{animation:none!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate .wgh-rig3 .wgh-leg-front{animation:wgh3-gallop-front .28s ease-in-out 5 alternate!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate .wgh-rig3 .wgh-leg-rear{animation:wgh3-gallop-rear .28s ease-in-out 5 alternate!important}
#wgh-root .wgh-magic-stage.wgh-magic-celebrate .wgh-rig3 .wgh-head-rig{animation:wgh3-head .35s ease-in-out 5 alternate!important}
#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-dog-sheet{animation:wgh-magic-cloak-away 1.18s cubic-bezier(.2,.8,.15,1) forwards!important}
@media(prefers-reduced-motion:reduce){
 #wgh-root .wgh-rig3 .wgh-leg-rig,#wgh-root .wgh-rig3 .wgh-dog-body,#wgh-root .wgh-rig3 .wgh-head-rig,#wgh-root .wgh-rig3 .wgh-dog-tail{animation:none!important}
}

/* 3.1 – absolute costume occlusion. A disguised dog has ZERO visible pixels.
   Character rig is hidden as a unit, including tail and ears; it cannot leak
   beyond the cloak regardless of animation transforms or breed proportions. */
#wgh-root .wgh-ghost .wgh-rig3 .wgh-dog-character{opacity:0!important;visibility:hidden!important;animation:none!important;pointer-events:none!important}
#wgh-root .wgh-magic-stage:not(.wgh-revealed) .wgh-rig3 .wgh-dog-character{opacity:0!important;visibility:hidden!important}
#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-dog-character{visibility:visible!important;opacity:1!important;transition:opacity .24s ease-out!important}
/* When the cloak flies off, let the newly visible rig animate naturally. */
#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-dog-tail{animation:wgh3-tail .2s ease-in-out infinite alternate!important}
#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-head-rig{animation:wgh3-head .44s ease-in-out infinite alternate!important}
#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-ear{animation:wgh3-ear .3s ease-in-out infinite alternate!important}
/* All costume movement occurs on the outer shell only. */
#wgh-root .wgh-ghost .wgh-rig3 .wgh-dog-sheet{filter:drop-shadow(0 5px 3px #43245a66) drop-shadow(0 0 6px #eedcff77)!important}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-head-rig,#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-ear,#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-dog-tail{animation:none!important}}

/* 4.0: Head/ear geometry is anchored as a single SVG coordinate system.
   Never animate the SVG ear group itself: CSS transforms would replace its
   transform attribute and make the ear detach from the head. */
#wgh-root .wgh-rig3 .wgh-ear,
#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-ear{animation:none!important;transform-box:view-box}
#wgh-root .wgh-rig3 .wgh-head-rig{transform-box:view-box}
#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-dog-character{visibility:visible!important;opacity:1!important}
#wgh-root .wgh-ghost .wgh-rig3 .wgh-dog-character{visibility:hidden!important;opacity:0!important}
#wgh-root .wgh-magic-stage .wgh-dog-caption{background:linear-gradient(145deg,#183f33,#266047)!important;border:1px solid #a8e9a0!important;box-shadow:0 12px 30px #1d493c55,0 0 25px #b475e366!important;border-radius:18px!important;padding:12px 16px!important;font-weight:800!important;line-height:1.4!important}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-rig3 .wgh-head-rig{animation:none!important}}
/* 4.0 polish: compact stage and accessible, readable reward caption */
#wgh-root .wgh-magic-stage .wgh-stage-spotlight{width:235px!important;height:235px!important;background:radial-gradient(circle,#fff5e6bd 0%,#edddff77 35%,#a984d92b 56%,transparent 73%)!important}
#wgh-root .wgh-magic-stage .wgh-dog-caption{width:min(265px,82vw)!important;max-width:82vw!important;box-sizing:border-box!important;white-space:normal!important;overflow-wrap:anywhere!important;text-align:center!important}
#wgh-root .wgh-magic-stage .wgh-rig3 .wgh-dog-character{filter:drop-shadow(0 7px 5px rgba(57,35,67,.2))}

/* 4.1 — responsive cinematic stage. All animated character pixels remain inside the SVG. */
#wgh-root .wgh-magic-stage.wgh-dog-reveal{
 width:min(210px,64vw,30vh)!important;
 height:auto!important;aspect-ratio:220/155;
 max-width:calc(100vw - 24px)!important;
 max-height:none!important;
 transform:translate(-50%,-50%) scale(.86)!important;
 transition:opacity .3s ease,transform .45s cubic-bezier(.2,1.1,.25,1)!important;
 overflow:visible!important;
}
#wgh-root .wgh-magic-stage.wgh-dog-reveal.wgh-revealed{
 opacity:1!important;transform:translate(-50%,-50%) scale(1)!important;
}
#wgh-root .wgh-magic-stage.wgh-dog-reveal.wgh-reveal-exit{
 opacity:0!important;transform:translate(-50%,-60%) scale(.8)!important;
}
#wgh-root .wgh-magic-stage.wgh-dog-reveal .wgh-dog-side{
 display:block;width:100%!important;height:auto!important;aspect-ratio:220/155;
 overflow:hidden!important;animation:none!important;
}
/* Never animate SVG ear groups: SVG transforms establish their head attachment. */
#wgh-root .wgh-rig3 .wgh-ear,
#wgh-root .wgh-magic-stage.wgh-revealed .wgh-rig3 .wgh-ear{animation:none!important;transform-origin:initial!important}
#wgh-root .wgh-magic-stage.wgh-dog-reveal .wgh-dog-caption{
 top:calc(100% + 10px)!important;left:50%!important;
 width:min(270px,calc(100vw - 32px))!important;
 max-width:calc(100vw - 32px)!important;
 font-size:clamp(11px,2.9vw,14px)!important;
 transform:translate(-50%,8px)!important;
}
#wgh-root .wgh-magic-stage.wgh-dog-reveal.wgh-magic-celebrate .wgh-dog-caption{
 transform:translate(-50%,0)!important;
}
#wgh-root .wgh-magic-stage .wgh-dog-character{isolation:isolate}
@media(max-height:520px){#wgh-root .wgh-magic-stage.wgh-dog-reveal{width:min(155px,48vw,30vh)!important}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-magic-stage .wgh-dog-side{animation:none!important}}

/* v5 real WebGL characters. Original SVG stays as low-end fallback. */
#wgh-root .wgh-dog-reveal .wgh-3d-canvas{position:absolute!important;z-index:4!important;left:50%!important;top:43%!important;width:100%!important;height:82%!important;max-width:100%!important;transform:translate(-50%,-50%)!important;opacity:0;pointer-events:none;object-fit:contain;transition:opacity .26s ease!important;filter:drop-shadow(0 11px 12px rgba(47,29,67,.25))}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-3d-canvas{opacity:1!important}
#wgh-root .wgh-dog-reveal:has(.wgh-3d-canvas) .wgh-rig3 .wgh-dog-character{opacity:0!important;visibility:hidden!important}
#wgh-root .wgh-dog-reveal.wgh-revealed:has(.wgh-3d-canvas) .wgh-rig3 .wgh-dog-sheet{opacity:0!important;visibility:hidden!important}
#wgh-root .wgh-dog-reveal .wgh-dog-caption{z-index:8!important}
@media(max-width:480px){#wgh-root .wgh-dog-reveal .wgh-3d-canvas{top:42%!important;height:72%!important}}

/* 5.1: mobile-first cinematic 3D reveal */
#wgh-root .wgh-magic-stage.wgh-dog-reveal{width:clamp(170px,28vw,270px)!important;max-width:min(80vw,38vh,270px)!important;contain:layout style;}
#wgh-root .wgh-dog-reveal .wgh-3d-canvas{width:110%!important;height:112%!important;top:47%!important;object-fit:contain!important;filter:drop-shadow(0 14px 14px rgba(46,25,61,.22));}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-3d-canvas{animation:wgh-3d-intro .65s cubic-bezier(.2,1.4,.3,1) both;}
@keyframes wgh-3d-intro{from{opacity:0;filter:blur(7px) drop-shadow(0 5px 5px #654e7799)}to{opacity:1;filter:blur(0) drop-shadow(0 14px 14px #654e7755)}}
#wgh-root .wgh-dog-reveal .wgh-dog-caption{font-weight:800!important;letter-spacing:.01em!important;line-height:1.35!important;text-wrap:balance!important;}
@media(max-width:600px){#wgh-root .wgh-magic-stage.wgh-dog-reveal{width:min(230px,68vw,33vh)!important;max-width:calc(100vw - 36px)!important}#wgh-root .wgh-dog-reveal .wgh-3d-canvas{height:106%!important;top:45%!important}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-3d-canvas{animation:none!important}}

/* 5.1.1: unmistakable puppy leap towards the visitor, contained on mobile. */
#wgh-root .wgh-magic-stage.wgh-dog-reveal{isolation:isolate!important;}
#wgh-root .wgh-dog-reveal .wgh-3d-canvas{transform:translate(-50%,-50%) scale(1)!important;transform-origin:center 66%!important;will-change:transform,opacity;}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-3d-canvas{animation:wgh-puppy-leap 2.25s cubic-bezier(.2,.8,.2,1) both!important;}
@keyframes wgh-puppy-leap{
  0%{opacity:0;transform:translate(-50%,-45%) scale(.65)}
  14%{opacity:1;transform:translate(-50%,-46%) scale(.9)}
  27%{opacity:1;transform:translate(-50%,-43%) scale(.78)}
  48%{opacity:1;transform:translate(-50%,-83%) scale(1.35)}
  65%{opacity:1;transform:translate(-50%,-96%) scale(1.48)}
  81%{opacity:1;transform:translate(-50%,-54%) scale(1.13)}
  100%{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
@media(max-width:600px){
 #wgh-root .wgh-magic-stage.wgh-dog-reveal{width:min(190px,50vw,28vh)!important;}
 #wgh-root .wgh-dog-reveal .wgh-3d-canvas{width:110%!important;height:105%!important;}
}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-3d-canvas{animation:none!important;opacity:1!important;transform:translate(-50%,-50%)!important}}

/* 5.2: readable Halloween reveal, not a green WooCommerce-looking alert. */
#wgh-root .wgh-magic-stage.wgh-dog-reveal{width:clamp(205px,29vw,310px)!important;max-width:min(82vw,43vh,310px)!important;}
#wgh-root .wgh-dog-reveal .wgh-3d-canvas{top:43%!important;width:115%!important;height:108%!important;max-width:none!important;}
#wgh-root .wgh-magic-stage.wgh-dog-reveal .wgh-dog-caption{background:linear-gradient(140deg,#241735,#44305e)!important;border:1px solid #c5a0f3!important;color:#fff7e8!important;border-radius:999px!important;box-shadow:0 8px 22px #21132955!important;font:700 clamp(12px,2.8vw,15px)/1.4 system-ui,sans-serif!important;padding:11px 16px!important;top:calc(100% + 16px)!important;width:max-content!important;max-width:min(300px,86vw)!important;white-space:normal!important;}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-3d-canvas{animation:wgh-puppy-leap-52 2.25s ease-in-out both!important;}
@keyframes wgh-puppy-leap-52{0%{opacity:0;transform:translate(-50%,-50%) scale(.78)}22%{opacity:1;transform:translate(-50%,-52%) scale(1)}40%{opacity:1;transform:translate(-50%,-61%) scale(1.07)}61%{opacity:1;transform:translate(-50%,-78%) scale(1.24)}80%{opacity:1;transform:translate(-50%,-55%) scale(1.09)}100%{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@media(max-width:600px){#wgh-root .wgh-magic-stage.wgh-dog-reveal{width:min(220px,62vw,32vh)!important}#wgh-root .wgh-dog-reveal .wgh-3d-canvas{width:108%!important;height:103%!important}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-3d-canvas{animation:none!important;opacity:1!important}}

/* 5.3: Dedicated leap animation. Earlier transform!important prevented all keyframe movement. */
#wgh-root .wgh-dog-reveal .wgh-3d-canvas{transform:translate(-50%,-50%);animation:none;}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-3d-canvas{animation:wgh-53-leap 3.1s cubic-bezier(.18,.78,.24,1) both!important;}
@keyframes wgh-53-leap{
 0%{opacity:0;transform:translate(-50%,-48%) scale(.78)}
 12%{opacity:1;transform:translate(-50%,-49%) scale(.98)}
 23%{opacity:1;transform:translate(-50%,-43%) scale(.83)}
 40%{opacity:1;transform:translate(-50%,-78%) scale(1.23)}
 53%{opacity:1;transform:translate(-50%,-87%) scale(1.39)}
 67%{opacity:1;transform:translate(-50%,-72%) scale(1.26)}
 79%{opacity:1;transform:translate(-50%,-49%) scale(.96)}
 87%{opacity:1;transform:translate(-50%,-55%) scale(1.05)}
 100%{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
#wgh-root .wgh-magic-stage.wgh-dog-reveal .wgh-dog-caption{border-radius:18px!important;background:linear-gradient(135deg,#201331,#3c2357)!important;border:1px solid #d7b1ff!important;box-shadow:0 12px 32px #23123b50, inset 0 1px #ffffff30!important;padding:12px 18px!important;font-size:clamp(13px,3vw,16px)!important;line-height:1.45!important;}
@media(max-width:600px){#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-3d-canvas{animation-name:wgh-53-leap-mobile!important}}
@keyframes wgh-53-leap-mobile{0%{opacity:0;transform:translate(-50%,-48%) scale(.8)}20%{opacity:1;transform:translate(-50%,-48%) scale(.94)}40%{transform:translate(-50%,-67%) scale(1.13)}55%{transform:translate(-50%,-72%) scale(1.2)}78%{transform:translate(-50%,-48%) scale(.96)}100%{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-3d-canvas{animation:none!important;opacity:1!important;transform:translate(-50%,-50%)!important}}

/* 5.3.1: the leap layer is independent of all historical canvas !important transforms. */
#wgh-root .wgh-dog-reveal .wgh-leap-layer{position:absolute;inset:0;z-index:5;pointer-events:none;transform-origin:50% 70%;will-change:transform;}
#wgh-root .wgh-dog-reveal .wgh-leap-layer .wgh-3d-canvas{animation:none!important;opacity:0!important;}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-leap-layer .wgh-3d-canvas{animation:none!important;opacity:1!important;}
#wgh-root .wgh-dog-reveal .wgh-dog-caption{transition:opacity .35s ease .5s!important;}
#wgh-root .wgh-dog-reveal:not(.wgh-revealed) .wgh-dog-caption{opacity:0!important;}
@keyframes wgh-leap-safe{0%{transform:translateY(8px) scale(.83)}16%{transform:translateY(18px) scale(.78)}54%{transform:translateY(-68px) scale(1.54)}82%{transform:translateY(7px) scale(.92)}100%{transform:translateY(0) scale(1)}}
#wgh-root .wgh-dog-reveal .wgh-leap-layer.wgh-leap-running{animation:wgh-leap-safe 2.3s ease-in-out both!important;}
@media(max-width:600px){#wgh-root .wgh-dog-reveal .wgh-leap-layer{transform-origin:50% 65%;}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-dog-reveal .wgh-leap-layer{animation:none!important;transform:none!important;}}

/* 5.4.0 — one animation owner; legacy canvas animations must not interfere. */
#wgh-root .wgh-dog-reveal .wgh-leap-v54{position:absolute!important;inset:0!important;z-index:7!important;pointer-events:none!important;transform-origin:50% 55%!important;animation:none!important;transition:none!important;will-change:transform!important;overflow:visible!important}
#wgh-root .wgh-dog-reveal .wgh-leap-v54 .wgh-3d-canvas{animation:none!important;transition:opacity .15s!important;transform:translate(-50%,-50%)!important;}
#wgh-root .wgh-dog-reveal.wgh-revealed .wgh-leap-v54 .wgh-3d-canvas{opacity:1!important;}
#wgh-root .wgh-dog-reveal .wgh-dog-caption{opacity:0!important;transition:opacity .25s ease!important;}
#wgh-root .wgh-dog-reveal.wgh-magic-celebrate .wgh-dog-caption{opacity:1!important;}
@media(max-width:600px){#wgh-root .wgh-dog-reveal .wgh-leap-v54{transform-origin:50% 57%!important}}

/* 5.5: the fixed stage owns the jump, not the canvas. */
#wgh-root .wgh-dog-reveal[data-jump-started="1"]{transition:none!important;will-change:transform!important}
#wgh-root .wgh-dog-reveal .wgh-leap-v54{transform:none!important;animation:none!important}
#wgh-root .wgh-dog-reveal .wgh-leap-v54 .wgh-3d-canvas{animation:none!important}


/* 5.7: the stage stays anchored while the actual WebGL dog jumps */
#wgh-root .wgh-dog-reveal[data-wgh-dog-jump="go"]{transform:translate(-50%,-50%)!important}
#wgh-root .wgh-dog-reveal[data-wgh-dog-jump="go"] .wgh-leap-layer{transform:none!important;animation:none!important}

/* 5.8 – breed discovery HUD, responsive layout */
#wgh-root .wgh-collection{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;background:rgba(104,62,154,.28);color:#fff1d0;font-size:12px;font-weight:700;white-space:nowrap}
@media(max-width:600px){#wgh-root .wgh-collection{font-size:10px;padding:3px 6px}#wgh-root .wgh-hud{max-width:calc(100vw - 16px)!important;flex-wrap:wrap;gap:5px!important}}

/* Losing outcome: only the 3D dog runs away; stage stays in place. */
.wgh-dog-reveal.wgh-escaping .wgh-dog-caption{opacity:1;transition:opacity .3s}

/* 6.0.0: persistent wallet */
#wgh-root .wgh-wallet-button{position:fixed;bottom:18px;left:18px;z-index:2147483000;background:#44226b;color:white;border:2px solid #ffca66;border-radius:22px;padding:10px 15px;cursor:pointer;font-weight:700;box-shadow:0 5px 18px #0006}
#wgh-root .wgh-wallet-panel{position:fixed;z-index:2147483001;left:50%;top:50%;transform:translate(-50%,-50%);width:min(440px,calc(100vw - 30px));max-height:75vh;overflow:auto;padding:22px;border:2px solid #ffca66;border-radius:20px;background:#24143a;color:white;box-shadow:0 10px 80px #000a}
#wgh-root .wgh-wallet-panel button{cursor:pointer;border-radius:9px;padding:7px 11px;margin:7px;background:#f5c96a;color:#271236;border:0}
#wgh-root .wgh-wallet-item{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:13px 0;border-bottom:1px solid #ffffff3d}
#wgh-root .wgh-wallet-item code{user-select:all;color:#ffdf85;overflow-wrap:anywhere}

/* 6.0.1: Separate HUD, wallet and sound controls into non-overlapping zones. */
#wgh-root .wgh-hud{
  left:16px!important;bottom:72px!important;
  width:min(440px,calc(100vw - 32px))!important;
  max-width:calc(100vw - 32px)!important;
  display:flex!important;flex-wrap:wrap!important;
  gap:7px 9px!important;padding:11px 13px!important;
  align-items:center!important;
}
#wgh-root .wgh-hud > span:nth-child(2){flex:1 1 170px;min-width:125px}
#wgh-root .wgh-hud .wgh-hud-icon{flex:0 0 auto}
#wgh-root .wgh-hud .wgh-streak,
#wgh-root .wgh-hud .wgh-collection{position:static!important;flex:0 0 auto;margin:0!important;color:#54247e;background:#ead6ff}
#wgh-root .wgh-hud .wgh-hud-toggle{margin-left:auto;flex:0 0 auto}
#wgh-root .wgh-wallet-button{
  left:16px!important;bottom:15px!important;
  width:auto!important;min-height:43px;
  position:fixed!important;z-index:2147482991!important;
}
#wgh-root .wgh-mute{
  left:auto!important;right:16px!important;bottom:18px!important;
  position:fixed!important;z-index:2147482991!important;
}
@media(max-width:480px){
 #wgh-root .wgh-hud{left:9px!important;bottom:69px!important;width:calc(100vw - 18px)!important;max-width:calc(100vw - 18px)!important;padding:9px!important;gap:5px 7px!important}
 #wgh-root .wgh-hud > span:nth-child(2){flex:1 1 145px;min-width:105px}
 #wgh-root .wgh-hud .wgh-streak{display:inline-flex!important;font-size:10px}
 #wgh-root .wgh-hud .wgh-collection{font-size:10px}
 #wgh-root .wgh-wallet-button{left:9px!important;bottom:10px!important}
 #wgh-root .wgh-mute{right:10px!important;bottom:14px!important}
}

/* 6.0.3 wallet close control: always visible at top right */
#wgh-root .wgh-wallet-panel{position:fixed!important;padding-top:58px!important;box-sizing:border-box!important}
#wgh-root .wgh-wallet-panel h3{margin:0 45px 15px 0!important}
#wgh-root .wgh-wallet-panel .wgh-wallet-close{
 position:absolute!important;right:12px!important;top:10px!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:38px!important;height:38px!important;padding:0!important;margin:0!important;
 border-radius:50%!important;background:#ffca66!important;color:#251138!important;
 font-size:24px!important;line-height:1!important;font-weight:800!important;
 cursor:pointer!important;z-index:2!important;
}

/* 6.0.4 playful, randomized arrivals; wrapper animates opacity/filter only
   to avoid conflicting with JS-driven movement transforms. */
@keyframes wgh-arrival-glow{0%{opacity:0;filter:blur(12px) brightness(2)}55%{opacity:1;filter:blur(0) brightness(1.5)}100%{filter:none}}
@keyframes wgh-arrival-wobble{0%,100%{filter:none}30%{filter:drop-shadow(0 0 14px #e8a2ff) hue-rotate(35deg)}65%{filter:drop-shadow(0 0 10px #ffc77d)}}
@keyframes wgh-arrival-boing{0%{opacity:0;filter:brightness(2.2) saturate(2)}40%{opacity:1;filter:brightness(1.35)}100%{filter:none}}
#wgh-root .wgh-ghost.wgh-arrival-pop{animation:wgh-arrival-glow .68s ease-out both!important}
#wgh-root .wgh-ghost.wgh-arrival-twirl{animation:wgh-arrival-wobble .75s ease-out both!important}
#wgh-root .wgh-ghost.wgh-arrival-ghost{animation:wgh-arrival-glow .8s ease-in-out both!important}
#wgh-root .wgh-ghost.wgh-arrival-boing{animation:wgh-arrival-boing .7s cubic-bezier(.25,.8,.25,1) both!important}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost[class*="wgh-arrival-"]{animation:none!important}}

/* 6.1: customer sync hint in wallet */
#wgh-root .wgh-account-sync{font-size:12px!important;line-height:1.5!important;color:#e5f5e8!important;background:#245b3c!important;border-radius:10px!important;padding:9px 12px!important;margin:0 0 12px!important}

/* 6.2.0: responsive album, fixed independent of the game HUD */
#wgh-root .wgh-album-button{position:fixed!important;left:160px!important;bottom:15px!important;z-index:2147482991!important;border:0!important;border-radius:24px!important;background:#593182!important;color:white!important;font-weight:800!important;padding:12px 15px!important;min-height:43px!important;box-shadow:0 5px 16px #250c3b50!important;cursor:pointer!important}
#wgh-root .wgh-album-panel{position:fixed!important;z-index:2147482995!important;left:16px!important;bottom:72px!important;width:min(480px,calc(100vw - 32px))!important;max-height:min(73vh,650px)!important;overflow-y:auto!important;box-sizing:border-box!important;border:2px solid #b982f4!important;border-radius:20px!important;background:linear-gradient(150deg,#30144d,#190c2b)!important;color:#fff!important;box-shadow:0 18px 70px #14091c99!important;padding:16px!important}
#wgh-root .wgh-album-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
#wgh-root .wgh-album-header h2{font-size:19px!important;line-height:1.2!important;color:white!important;margin:0!important}
#wgh-root .wgh-album-close{position:static!important;border:0!important;border-radius:50%!important;width:36px!important;height:36px!important;background:#ffcb74!important;color:#311743!important;font-size:25px!important;font-weight:800!important;cursor:pointer!important}
#wgh-root .wgh-album-subtitle{font-size:13px!important;color:#eed5ff!important;margin:9px 0 15px!important}
#wgh-root .wgh-album-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
#wgh-root .wgh-album-card{min-width:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:5px!important;padding:12px 5px!important;border-radius:13px!important;background:#ffffff13!important;border:1px solid #ffffff29!important}
#wgh-root .wgh-album-card.wgh-discovered{background:linear-gradient(145deg,#673d88,#4e2b74)!important;border-color:#e0acff!important}
#wgh-root .wgh-album-symbol{font-size:29px!important}
#wgh-root .wgh-album-card strong{color:white!important;font-size:12px!important;line-height:1.3!important}
#wgh-root .wgh-album-card small{font-size:10px!important;color:#ead5f8!important}
#wgh-root .wgh-album-card.wgh-locked{filter:saturate(.5);opacity:.7}
@media(max-width:480px){
 #wgh-root .wgh-album-button{left:143px!important;bottom:10px!important;padding:11px 10px!important;font-size:12px!important}
 #wgh-root .wgh-album-panel{left:9px!important;bottom:66px!important;width:calc(100vw - 18px)!important;max-height:68vh!important;padding:12px!important}
 #wgh-root .wgh-album-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@keyframes wgh-arrival-spectral{0%{opacity:0;filter:blur(18px) hue-rotate(100deg)}55%{opacity:.8;filter:blur(3px) hue-rotate(30deg)}100%{opacity:1;filter:none}}
@keyframes wgh-arrival-spark{0%{opacity:0;filter:brightness(4) contrast(2)}30%{opacity:.3}45%{opacity:1;filter:brightness(2)}60%{opacity:.45}100%{opacity:1;filter:none}}
@keyframes wgh-arrival-fog{0%{opacity:0;filter:blur(22px) grayscale(1)}45%{opacity:.7;filter:blur(9px)}100%{opacity:1;filter:none}}
#wgh-root .wgh-ghost.wgh-arrival-spectral{animation:wgh-arrival-spectral .95s ease-out both!important}
#wgh-root .wgh-ghost.wgh-arrival-spark{animation:wgh-arrival-spark .75s ease-out both!important}
#wgh-root .wgh-ghost.wgh-arrival-fog{animation:wgh-arrival-fog 1s ease-out both!important}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost.wgh-arrival-spectral,#wgh-root .wgh-ghost.wgh-arrival-spark,#wgh-root .wgh-ghost.wgh-arrival-fog{animation:none!important}}

/* 6.3 cinematic portals: isolated overlay, no transforms on the moving character */
#wgh-root .wgh-cinematic{position:fixed!important;z-index:2147482999!important;width:0!important;height:0!important;pointer-events:none!important;isolation:isolate!important;filter:drop-shadow(0 0 12px var(--wgh-cinema,#a865ff))!important;--wgh-cinema:#b77aff}
#wgh-root .wgh-cinematic-moon{--wgh-cinema:#8ceaff}
#wgh-root .wgh-cinematic-embers{--wgh-cinema:#ffad55}
#wgh-root .wgh-cinematic-spiral{--wgh-cinema:#ff80d8}
#wgh-root .wgh-cinematic-lightning{--wgh-cinema:#e4ff84}
#wgh-root .wgh-cinema-halo{position:absolute!important;left:-54px!important;top:-54px!important;width:108px!important;height:108px!important;border:3px solid var(--wgh-cinema)!important;border-radius:50%!important;box-shadow:0 0 20px var(--wgh-cinema),inset 0 0 25px var(--wgh-cinema)!important;background:radial-gradient(circle,#ffffff15 0%,transparent 67%)!important;animation:wgh-cinema-open 1.25s cubic-bezier(.16,.8,.28,1) both!important}
#wgh-root .wgh-cinema-sigil{position:absolute!important;left:-24px!important;top:-37px!important;width:48px!important;height:74px!important;text-align:center!important;line-height:74px!important;color:var(--wgh-cinema)!important;font-size:48px!important;text-shadow:0 0 20px currentColor!important;animation:wgh-cinema-sigil 1.1s ease-out both!important}
#wgh-root .wgh-cinema-spark{position:absolute!important;left:-3px!important;top:-3px!important;width:6px!important;height:6px!important;border-radius:50%!important;background:var(--wgh-cinema)!important;box-shadow:0 0 12px var(--wgh-cinema)!important;animation:wgh-cinema-spark 1s ease-out var(--delay) both!important}
#wgh-root .wgh-cinematic-spiral .wgh-cinema-halo{border-style:dashed!important;animation:wgh-cinema-spiral 1.25s ease-out both!important}
#wgh-root .wgh-cinematic-lightning .wgh-cinema-halo{border-style:double!important;animation:wgh-cinema-lightning 1.1s steps(5,end) both!important}
#wgh-root .wgh-cinematic-embers .wgh-cinema-spark{border-radius:1px!important}
@keyframes wgh-cinema-open{0%{opacity:0;transform:scale(.1) rotate(-110deg)}35%{opacity:1;transform:scale(1.25) rotate(0)}70%{opacity:.85;transform:scale(.92) rotate(30deg)}100%{opacity:0;transform:scale(1.8) rotate(65deg)}}
@keyframes wgh-cinema-sigil{0%{opacity:0;transform:scale(.15) rotate(-50deg)}35%{opacity:1;transform:scale(1.15)}100%{opacity:0;transform:scale(1.6) rotate(20deg)}}
@keyframes wgh-cinema-spark{0%{opacity:0;transform:translate(0,0) scale(.2)}20%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.05)}}
@keyframes wgh-cinema-spiral{0%{opacity:0;transform:scale(.1) rotate(-300deg)}35%{opacity:1;transform:scale(1.2) rotate(0)}100%{opacity:0;transform:scale(1.6) rotate(300deg)}}
@keyframes wgh-cinema-lightning{0%,15%,40%{opacity:0;transform:scale(.7)}8%,25%,52%{opacity:1;transform:scale(1.1)}100%{opacity:0;transform:scale(1.7)}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-cinematic{display:none!important}}

/* 6.3.1: the portal is a real, timed reveal; no moving character before it opens. */
#wgh-root .wgh-ghost.wgh-materializing{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
#wgh-root .wgh-ghost.wgh-appeared{visibility:visible!important}
#wgh-root .wgh-cinematic{z-index:2147483000!important;filter:none!important}
#wgh-root .wgh-cinema-aura{position:absolute!important;left:-100px!important;top:-100px!important;width:200px!important;height:200px!important;border-radius:50%!important;background:radial-gradient(circle,var(--wgh-cinema) 0%,#fff5 8%,transparent 65%)!important;opacity:.65!important;mix-blend-mode:screen!important;animation:wgh-big-aura 1.5s ease-out both!important}
#wgh-root .wgh-cinema-halo{left:-80px!important;top:-80px!important;width:160px!important;height:160px!important;border-width:6px!important;box-shadow:0 0 40px var(--wgh-cinema),0 0 95px var(--wgh-cinema),inset 0 0 50px var(--wgh-cinema)!important}
#wgh-root .wgh-cinema-inner{position:absolute!important;left:-58px!important;top:-58px!important;width:116px!important;height:116px!important;border-radius:50%!important;border:3px dashed #fff!important;box-shadow:0 0 18px var(--wgh-cinema)!important;animation:wgh-cinema-inner-spin 1.35s ease-out both!important}
#wgh-root .wgh-cinema-sigil{font-size:65px!important;left:-40px!important;top:-49px!important;width:80px!important;height:98px!important;line-height:98px!important}
#wgh-root .wgh-cinema-spark{width:9px!important;height:9px!important;box-shadow:0 0 15px 5px var(--wgh-cinema)!important}
#wgh-root .wgh-cinema-caption{position:absolute!important;top:100px!important;left:-125px!important;width:250px!important;text-align:center!important;white-space:nowrap!important;font:900 13px/1.4 system-ui,sans-serif!important;letter-spacing:2px!important;color:white!important;text-shadow:0 0 8px var(--wgh-cinema),0 0 18px var(--wgh-cinema),0 2px 5px #000!important;animation:wgh-cinema-caption 1.5s ease-out both!important}
@keyframes wgh-big-aura{0%{opacity:0;transform:scale(.15)}40%{opacity:.8;transform:scale(1.1)}100%{opacity:0;transform:scale(1.6)}}
@keyframes wgh-cinema-inner-spin{0%{opacity:0;transform:scale(.1) rotate(-220deg)}35%{opacity:1;transform:scale(1.15) rotate(20deg)}100%{opacity:0;transform:scale(1.8) rotate(220deg)}}
@keyframes wgh-cinema-caption{0%,15%{opacity:0;transform:translateY(20px) scale(.8)}40%,70%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-15px)}}
@media(max-width:480px){#wgh-root .wgh-cinema-caption{font-size:10px!important;letter-spacing:1px!important;top:84px!important}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost.wgh-materializing{visibility:visible!important;opacity:1!important}}

/* 6.5.0 mystery costume silhouettes: independent of the hidden dog breed */
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-mystery-svg{display:block!important;width:100%!important;height:calc(100% - 13px)!important;overflow:visible!important;filter:drop-shadow(0 7px 6px #48246a66)!important;animation:wgh-mystery-float .62s ease-in-out infinite alternate!important}
#wgh-root .wgh-ghost.wgh-mystery-costume.wgh-costume-tiny .wgh-mystery-svg{transform:scale(.84)!important}
#wgh-root .wgh-ghost.wgh-mystery-costume.wgh-costume-scruffy .wgh-mystery-svg{animation-duration:.31s!important}
#wgh-root .wgh-ghost.wgh-mystery-costume.wgh-costume-round .wgh-mystery-svg{animation-duration:.86s!important}
@keyframes wgh-mystery-float{from{translate:0 0;rotate:-2deg}to{translate:0 -7px;rotate:2deg}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-mystery-svg{animation:none!important}}

/* 6.6.0: individual illustrated mystery ghost dogs; only costume hints, never prize breed */
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-mystery-svg{width:100%!important;height:calc(100% - 10px)!important;overflow:visible!important;animation:wgh-character-float 1.25s ease-in-out infinite alternate!important;filter:drop-shadow(0 9px 9px #562e8b66)!important}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-mystery-svg .wgh-ear-left{transform-origin:68px 65px;animation:wgh-ear-wiggle 1.8s ease-in-out infinite alternate}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-mystery-svg .wgh-ear-right{transform-origin:158px 65px;animation:wgh-ear-wiggle 1.45s ease-in-out infinite alternate-reverse}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-mystery-svg .wgh-tail{transform-origin:173px 107px;animation:wgh-tail-wag .38s ease-in-out infinite alternate}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-mystery-svg .wgh-paws{animation:wgh-paw-bounce .46s ease-in-out infinite alternate}
#wgh-root .wgh-ghost.wgh-mystery-costume.wgh-costume-round .wgh-mystery-svg{animation-duration:1.8s!important}
#wgh-root .wgh-ghost.wgh-mystery-costume.wgh-costume-tiny .wgh-mystery-svg{scale:.86!important;animation-duration:.75s!important}
#wgh-root .wgh-ghost.wgh-mystery-costume.wgh-costume-scruffy .wgh-mystery-svg .wgh-paws{animation-duration:.23s}
@keyframes wgh-character-float{0%{translate:0 3px;rotate:-3deg}100%{translate:0 -9px;rotate:3deg}}
@keyframes wgh-ear-wiggle{from{rotate:-9deg}to{rotate:11deg}}
@keyframes wgh-tail-wag{from{rotate:-15deg}to{rotate:22deg}}
@keyframes wgh-paw-bounce{from{translate:0 0}to{translate:0 -6px}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-mystery-svg,#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-mystery-svg *{animation:none!important}}

/* 6.7: side-profile sheet-covered dogs WALK rather than floating cartoon faces */
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog{width:100%!important;height:100%!important;animation:wgh-sheet-body-bob .42s ease-in-out infinite alternate!important;transform-origin:50% 85%!important;filter:drop-shadow(0 7px 5px #25153566)!important}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog .wgh-walk-body{animation:none!important}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog .wgh-step-a{transform-origin:100px 111px;animation:wgh-sheet-step .42s ease-in-out infinite alternate!important}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog .wgh-step-b{transform-origin:174px 111px;animation:wgh-sheet-step .42s ease-in-out infinite alternate-reverse!important}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog .wgh-sheet-tail{transform-origin:195px 85px;animation:wgh-sheet-tail .65s ease-in-out infinite alternate!important}
#wgh-root .wgh-ghost.wgh-mystery-costume.wgh-costume-tiny .wgh-sheet-dog{scale:.84!important}
@keyframes wgh-sheet-body-bob{from{translate:0 1px;rotate:-.7deg}to{translate:0 -3px;rotate:.7deg}}
@keyframes wgh-sheet-step{from{transform:rotate(-13deg)}to{transform:rotate(16deg)}}
@keyframes wgh-sheet-tail{from{transform:rotate(-12deg)}to{transform:rotate(13deg)}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog,#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog *{animation:none!important}}

#wgh-root .wgh-mute{display:none!important}

/* 7.1.0 – Collection album */
#wgh-root .wgh-album-progress{height:9px!important;background:#ffffff25!important;border-radius:999px!important;overflow:hidden!important;margin:0 0 12px!important}
#wgh-root .wgh-album-progress-fill{display:block!important;height:100%!important;width:0;background:linear-gradient(90deg,#f8b85d,#9ef0ce)!important;border-radius:999px!important;transition:width .3s ease!important}
#wgh-root .wgh-album-filters{display:flex!important;gap:6px!important;flex-wrap:wrap!important;margin:0 0 12px!important}
#wgh-root .wgh-album-filter{border:1px solid #ffffff55!important;border-radius:20px!important;background:#ffffff17!important;color:#fff!important;font-size:11px!important;padding:6px 9px!important;cursor:pointer!important;line-height:1.2!important}
#wgh-root .wgh-album-filter[aria-pressed="true"]{background:#f8bd6b!important;color:#332044!important;border-color:#f8bd6b!important;font-weight:800!important}
#wgh-root .wgh-album-rarity{display:inline-block!important;border-radius:20px!important;padding:3px 8px!important;font-size:10px!important;background:#ffffff2c!important;color:#fff!important}
#wgh-root .wgh-album-card.wgh-rarity-uncommon{border-color:#73d9b7!important}
#wgh-root .wgh-album-card.wgh-rarity-rare{border-color:#77b9ff!important}
#wgh-root .wgh-album-card.wgh-rarity-epic{border-color:#e9a0ff!important}
#wgh-root .wgh-album-card.wgh-rarity-legendary{border-color:#ffd36c!important;background:linear-gradient(145deg,#74502c,#42294f)!important}
#wgh-root .wgh-album-card.wgh-locked{background:#ffffff0d!important}
#wgh-root .wgh-album-date{font-size:9px!important;opacity:.9}
#wgh-root .wgh-album-empty{grid-column:1/-1;text-align:center;color:#fff;padding:16px}

/* 7.2.0: more natural sheet walk, gentle cloth sway, no sound */
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog .wgh-walk-body{
  transform-origin:120px 115px;
  animation:wgh-cloth-sway .68s ease-in-out infinite alternate!important;
}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog .wgh-step-a,
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog .wgh-step-b{
  animation-duration:var(--wgh-gait,.38s)!important;
}
@keyframes wgh-cloth-sway{
  from{transform:skewX(-1.5deg) translateY(0)}
  to{transform:skewX(1.5deg) translateY(-2px)}
}
@media(prefers-reduced-motion:reduce){
 #wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-dog .wgh-walk-body{animation:none!important}
}

/* 7.3 - independent four-leg gait and flexible cloth, with accessible reduced motion */
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-dog-walking .wgh-step-front{transform-origin:65px 108px;animation:wgh730-step var(--wgh-gait,.45s) ease-in-out infinite alternate!important}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-dog-walking .wgh-step-back{transform-origin:177px 108px;animation:wgh730-step var(--wgh-gait,.45s) ease-in-out infinite alternate-reverse!important}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-dog-walking .wgh-walk-body{animation:wgh730-cloth calc(var(--wgh-gait,.45s) * 2) ease-in-out infinite alternate!important;transform-origin:120px 85px}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-dog-walking .wgh-sheet-tail{animation:wgh730-tail .58s ease-in-out infinite alternate!important;transform-origin:196px 88px}
@keyframes wgh730-step{from{transform:rotate(-11deg) translateY(1px)}to{transform:rotate(10deg) translateY(-3px)}}
@keyframes wgh730-cloth{from{transform:skewX(-1deg) translateY(1px)}to{transform:skewX(1deg) translateY(-2px)}}
@keyframes wgh730-tail{from{transform:rotate(-9deg)}to{transform:rotate(11deg)}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-dog-walking,#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-dog-walking *{animation:none!important}}

/* Daily collector challenge: informational, never overlays checkout/cart */
#wgh-root .wgh-challenge{position:fixed;right:16px;bottom:110px;z-index:2147482000;
 max-width:min(310px,calc(100vw - 32px));padding:9px 13px;border-radius:14px;
 background:rgba(30,30,45,.9);color:#fff;font:600 12px/1.4 system-ui,sans-serif;
 box-shadow:0 4px 18px #0002;pointer-events:none}
#wgh-root .wgh-challenge.wgh-challenge-done{background:#176b48}
@media(max-width:600px){#wgh-root .wgh-challenge{right:8px;bottom:105px;max-width:220px;font-size:11px}}

/* 7.7.0: visually distinct Halloween modes, without sound */
#wgh-root.wgh-night .wgh-spooky-svg{overflow:visible;filter:drop-shadow(0 0 13px rgba(171,87,255,.48))}
#wgh-root.wgh-night .wgh-spooky-svg .wgh-spooky-cloth{
 transform-origin:60px 60px;animation:wgh-spooky-breath 2.8s ease-in-out infinite alternate;
}
#wgh-root.wgh-night .wgh-spooky-svg .wgh-spooky-face{
 animation:wgh-spooky-face 3.8s ease-in-out infinite;
}
#wgh-root.wgh-night .wgh-ghost.wgh-rare .wgh-spooky-svg{
 filter:drop-shadow(0 0 17px rgba(255,193,69,.72));
}
#wgh-root.wgh-candy .wgh-ghost:not([class*="wgh-type-dog-"]) svg{
 filter:drop-shadow(0 4px 8px rgba(236,128,201,.22));
}
@keyframes wgh-spooky-breath{
 0%{transform:scale(.97,1.03) rotate(-2deg)}
 100%{transform:scale(1.03,.97) rotate(2deg)}
}
@keyframes wgh-spooky-face{
 0%,86%,100%{opacity:1}88%,91%{opacity:.25}93%{opacity:1}
}
@media(prefers-reduced-motion:reduce){
 #wgh-root.wgh-night .wgh-spooky-svg .wgh-spooky-cloth,
 #wgh-root.wgh-night .wgh-spooky-svg .wgh-spooky-face{animation:none!important}
}

/* Album milestones, 7.9.0 */
#wgh-root .wgh-album-milestones{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 14px;align-items:center}
#wgh-root .wgh-album-milestones>strong{width:100%;font-size:13px}
#wgh-root .wgh-milestone{display:inline-flex;align-items:center;max-width:100%;font-size:11px;line-height:1.3;border:1px solid #a9a3b4;border-radius:20px;padding:6px 9px;opacity:.7}
#wgh-root .wgh-milestone-unlocked{border-color:#e7c46b;background:#fff5d3;color:#503b15;opacity:1;font-weight:700}

/* 8.2.0: tiny, persistent visitor opt-out. Remains visible to re-enable. */
#wgh-root .wgh-game-switch{position:fixed;left:12px;bottom:12px;z-index:2147483100;width:34px;height:34px;min-width:34px;min-height:34px;border:1px solid #bca0d6;border-radius:50%;background:#f9f1ff;color:#593281;box-shadow:0 3px 12px #0003;cursor:pointer;display:flex;align-items:center;justify-content:center;font:700 18px/1 system-ui,sans-serif;padding:0}
#wgh-root.wgh-night .wgh-game-switch{background:#302044;color:#f5dcff;border-color:#8053a4}
#wgh-root .wgh-game-switch:focus-visible{outline:3px solid #fcb548;outline-offset:3px}
#wgh-root:not(.wgh-visitor-disabled) .wgh-hud{left:52px}
#wgh-root.wgh-visitor-disabled>:not(.wgh-game-switch){display:none!important;visibility:hidden!important}
@media(max-width:600px){#wgh-root .wgh-game-switch{left:8px;bottom:8px;width:30px;height:30px;min-width:30px;min-height:30px;font-size:16px}#wgh-root:not(.wgh-visitor-disabled) .wgh-hud{left:44px}}

/* 8.2.1: explicit, readable visitor opt-out label */
#wgh-root .wgh-game-switch{width:auto;min-width:0;height:auto;min-height:34px;padding:7px 12px;border-radius:999px;white-space:nowrap;font:600 12px/1.25 system-ui,sans-serif;max-width:calc(100vw - 20px)}
@media(max-width:600px){#wgh-root .wgh-game-switch{width:auto;min-width:0;height:auto;min-height:32px;font-size:11px;padding:7px 10px}#wgh-root:not(.wgh-visitor-disabled) .wgh-hud{left:8px}}

/* 8.2.2: one responsive action bar instead of three conflicting fixed coordinates. */
#wgh-root .wgh-action-bar{
 position:fixed!important;left:16px!important;bottom:12px!important;
 z-index:2147483100!important;display:flex!important;flex-wrap:wrap!important;
 align-items:center!important;justify-content:flex-start!important;
 gap:8px!important;width:max-content!important;max-width:calc(100vw - 32px)!important;
 padding:0!important;margin:0!important;box-sizing:border-box!important;
 pointer-events:none!important;
}
#wgh-root .wgh-action-bar > .wgh-game-switch,
#wgh-root .wgh-action-bar > .wgh-wallet-button,
#wgh-root .wgh-action-bar > .wgh-album-button{
 position:static!important;inset:auto!important;left:auto!important;right:auto!important;
 top:auto!important;bottom:auto!important;transform:none!important;
 width:auto!important;max-width:100%!important;min-height:40px!important;
 margin:0!important;padding:9px 13px!important;
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 white-space:normal!important;text-align:center!important;line-height:1.2!important;
 font:700 12px/1.2 system-ui,sans-serif!important;pointer-events:auto!important;
 box-sizing:border-box!important;flex:0 1 auto!important;
}
#wgh-root .wgh-action-bar > .wgh-game-switch{border-radius:24px!important;box-shadow:0 4px 12px #0002!important}
#wgh-root .wgh-action-bar > .wgh-wallet-button,
#wgh-root .wgh-action-bar > .wgh-album-button{border-radius:24px!important}
#wgh-root .wgh-hud{
 left:16px!important;bottom:calc(24px + var(--wgh-action-bar-height, 43px))!important;
 width:min(440px,calc(100vw - 32px))!important;
 max-width:calc(100vw - 32px)!important;
}
#wgh-root .wgh-challenge{bottom:calc(24px + var(--wgh-action-bar-height, 43px))!important}
#wgh-root.wgh-visitor-disabled > .wgh-action-bar{
 display:flex!important;visibility:visible!important;
}
#wgh-root.wgh-visitor-disabled .wgh-action-bar > .wgh-wallet-button,
#wgh-root.wgh-visitor-disabled .wgh-action-bar > .wgh-album-button{display:none!important}
@media(max-width:600px){
 #wgh-root .wgh-action-bar{left:9px!important;bottom:9px!important;max-width:calc(100vw - 18px)!important;gap:6px!important}
 #wgh-root .wgh-action-bar > .wgh-game-switch,
 #wgh-root .wgh-action-bar > .wgh-wallet-button,
 #wgh-root .wgh-action-bar > .wgh-album-button{font-size:11px!important;padding:8px 10px!important;min-height:36px!important}
 #wgh-root .wgh-hud{left:9px!important;bottom:calc(20px + var(--wgh-action-bar-height, 42px))!important;width:calc(100vw - 18px)!important;max-width:calc(100vw - 18px)!important}
 #wgh-root .wgh-challenge{bottom:calc(20px + var(--wgh-action-bar-height, 42px))!important}
}
@media(max-width:350px){
 #wgh-root .wgh-action-bar > .wgh-game-switch,
 #wgh-root .wgh-action-bar > .wgh-wallet-button,
 #wgh-root .wgh-action-bar > .wgh-album-button{font-size:10px!important;padding:7px 8px!important}
}

/* 8.2.3: dismissible mobile-friendly HUD and controls. Game stays enabled. */
#wgh-root .wgh-panel-toggle{
 position:fixed!important;left:16px!important;bottom:12px!important;
 z-index:2147483150!important;width:36px!important;height:36px!important;
 padding:0!important;border:1px solid #bba3d2!important;border-radius:50%!important;
 background:#fff8ff!important;color:#583279!important;box-shadow:0 3px 12px #0002!important;
 font:700 19px/1 system-ui,sans-serif!important;cursor:pointer!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
}
#wgh-root.wgh-night .wgh-panel-toggle{background:#322046!important;color:#fff!important;border-color:#8664a8!important}
#wgh-root .wgh-panel-toggle:focus-visible{outline:3px solid #ffb648!important;outline-offset:2px!important}
#wgh-root:not(.wgh-ui-compact):not(.wgh-visitor-disabled) .wgh-panel-toggle{
 bottom:calc(16px + var(--wgh-action-bar-height,43px))!important;
 left:calc(min(440px,100vw - 32px) - 24px)!important;
}
#wgh-root.wgh-ui-compact:not(.wgh-visitor-disabled) .wgh-action-bar,
#wgh-root.wgh-ui-compact:not(.wgh-visitor-disabled) .wgh-hud,
#wgh-root.wgh-ui-compact:not(.wgh-visitor-disabled) .wgh-challenge{
 display:none!important;visibility:hidden!important;
}
#wgh-root.wgh-ui-compact:not(.wgh-visitor-disabled) .wgh-panel-toggle{
 left:10px!important;bottom:10px!important;
}
#wgh-root.wgh-visitor-disabled .wgh-panel-toggle{display:none!important}
#wgh-root.wgh-visitor-disabled > .wgh-action-bar{
 display:flex!important;visibility:visible!important;
}
#wgh-root.wgh-visitor-disabled .wgh-action-bar > .wgh-game-switch{
 display:inline-flex!important;visibility:visible!important;
}
@media(max-width:600px){
 #wgh-root:not(.wgh-ui-compact):not(.wgh-visitor-disabled) .wgh-panel-toggle{
 left:auto!important;right:10px!important;
 bottom:calc(21px + var(--wgh-action-bar-height,43px))!important;
 }
 #wgh-root.wgh-ui-compact:not(.wgh-visitor-disabled) .wgh-panel-toggle{
 left:9px!important;right:auto!important;bottom:9px!important;
 width:34px!important;height:34px!important;
 }
}

/* 8.2.4: Reward modal takes precedence over floating controls on phones. */
#wgh-root.wgh-result-open .wgh-action-bar,
#wgh-root.wgh-result-open .wgh-panel-toggle,
#wgh-root.wgh-result-open .wgh-hud,
#wgh-root.wgh-result-open .wgh-challenge{display:none!important}
#wgh-root .wgh-modal.wgh-show{z-index:2147483500!important}
@media(max-width:600px){
 #wgh-root .wgh-modal{
  position:fixed!important;left:10px!important;right:10px!important;
  top:50%!important;bottom:auto!important;width:calc(100vw - 20px)!important;
  max-width:480px!important;
  max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;
  margin:0 auto!important;padding:16px 16px calc(18px + env(safe-area-inset-bottom,0px))!important;
  overflow-y:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;
  transform:translateY(calc(-50% + 18px)) scale(.98);
 }
 #wgh-root .wgh-modal.wgh-show{transform:translateY(-50%) scale(1)!important}
 #wgh-root .wgh-modal h2{font-size:clamp(20px,5vw,25px)!important}
 #wgh-root .wgh-result-icon{font-size:clamp(32px,9vw,52px)!important}
 #wgh-root .wgh-modal p{margin:8px 0 12px!important}
 #wgh-root .wgh-code-row{gap:7px!important}
 #wgh-root .wgh-code-row input{font-size:12px!important;padding:9px 7px!important;min-width:0!important}
 #wgh-root .wgh-code-row button{padding:9px 10px!important;white-space:nowrap!important}
 #wgh-root .wgh-cart{margin-top:12px!important}
}
@media(max-width:380px){
 #wgh-root .wgh-modal{padding:12px 12px 15px!important}
 #wgh-root .wgh-code-row{flex-wrap:wrap!important}
 #wgh-root .wgh-code-row input{flex-basis:100%!important}
 #wgh-root .wgh-code-row button{width:100%!important}
}

/* Whizzopet 9.0: product peeking, cloth movement and expressive silhouettes. */
#wgh-root .wgh-ghost.wgh-product-peek{filter:drop-shadow(0 9px 9px rgba(45,20,70,.25))!important;isolation:isolate}
#wgh-root .wgh-ghost.wgh-product-peek::before{
 content:"";position:absolute;inset:4px 3px 9px;border-radius:50%;
 background:radial-gradient(ellipse,#fff8 0%,transparent 68%);
 z-index:-1;pointer-events:none;
}
#wgh-root .wgh-ghost.wgh-product-peek .wgh-mystery-svg{
 animation:wgh9-curious 1.05s ease-in-out infinite alternate!important;
 transform-origin:50% 76%;
}
#wgh-root .wgh-ghost.wgh-mystery-costume:not(.wgh-product-peek) .wgh-mystery-svg{
 animation:wgh9-bounce .65s cubic-bezier(.3,.1,.6,1) infinite alternate!important;
 transform-origin:50% 80%;
}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-tail{
 animation:wgh9-tail .36s ease-in-out infinite alternate!important;
 transform-origin:90% 55%;
}
@keyframes wgh9-curious{
 from{transform:translateY(4px) rotate(-4deg) scale(.95)}
 to{transform:translateY(-6px) rotate(5deg) scale(1.03)}
}
@keyframes wgh9-bounce{
 from{transform:translateY(2px) rotate(-2deg)}
 to{transform:translateY(-6px) rotate(2deg)}
}
@keyframes wgh9-tail{from{transform:rotate(-8deg)}to{transform:rotate(9deg)}}
@media(prefers-reduced-motion:reduce){
 #wgh-root .wgh-ghost.wgh-product-peek .wgh-mystery-svg,
 #wgh-root .wgh-ghost.wgh-mystery-costume:not(.wgh-product-peek) .wgh-mystery-svg,
 #wgh-root .wgh-ghost.wgh-mystery-costume .wgh-sheet-tail{animation:none!important}
}

/* 9.2 premium dog rig: replaces flat sheet with layered, articulated character. */
#wgh-root .wgh-ghost .wgh9-dog{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 6px 5px rgba(53,37,69,.16))}
#wgh-root .wgh9-dog-rig{transform-origin:50% 80%}
#wgh-root .wgh9-body{transform-origin:54% 70%;animation:wgh92-body .52s cubic-bezier(.4,0,.6,1) infinite alternate}
#wgh-root .wgh9-tail{transform-origin:81% 54%;animation:wgh92-tail .33s ease-in-out infinite alternate}
#wgh-root .wgh9-paw{transform:translate(var(--wgh9-paw-x),var(--wgh9-paw-y));transform-box:fill-box;transform-origin:50% 0}
#wgh-root .wgh9-paw-near{animation:wgh92-step .42s ease-in-out infinite alternate}
#wgh-root .wgh9-paw-far{animation:wgh92-step .42s ease-in-out infinite alternate-reverse}
#wgh-root .wgh9-face{animation:wgh92-blink 4.2s linear infinite;transform-origin:56px 81px}
#wgh-root .wgh9-snout{animation:wgh92-sniff .7s ease-in-out infinite alternate;transform-origin:47px 97px}
#wgh-root .wgh-ghost[data-scene="peek"] .wgh9-body{animation:wgh92-peek .9s ease-in-out infinite alternate}
#wgh-root .wgh-ghost[data-scene="hop"] .wgh9-body{animation-duration:.32s}
#wgh-root .wgh-ghost[data-scene="dash"] .wgh9-paw{animation-duration:.22s}
#wgh-root .wgh-ghost[data-scene="sniff"] .wgh9-snout{animation-duration:.22s}
#wgh-root .wgh-ghost.wgh-product-peek .wgh9-dog{filter:drop-shadow(0 6px 7px rgba(51,32,71,.3))}
@keyframes wgh92-body{from{transform:translateY(2px) rotate(-1deg)}to{transform:translateY(-5px) rotate(1deg)}}
@keyframes wgh92-peek{from{transform:rotate(-6deg) translateY(2px)}to{transform:rotate(6deg) translateY(-4px)}}
@keyframes wgh92-tail{from{transform:rotate(-14deg)}to{transform:rotate(13deg)}}
@keyframes wgh92-step{from{translate:0 2px;rotate:-12deg}to{translate:0 -4px;rotate:15deg}}
@keyframes wgh92-blink{0%,43%,45%,100%{transform:scaleY(1)}44%{transform:scaleY(.14)}}
@keyframes wgh92-sniff{from{transform:translateX(0)}to{transform:translateX(-3px)}}
@media(prefers-reduced-motion:reduce){
 #wgh-root .wgh9-body,#wgh-root .wgh9-tail,#wgh-root .wgh9-paw,
 #wgh-root .wgh9-face,#wgh-root .wgh9-snout{animation:none!important}
}

/* 9.3 — Clean premium 2D cartoon characters; visual system deliberately replaces 3D/neon effects. */
#wgh-root .wgh-ghost.wgh-mystery-costume{filter:none!important;box-shadow:none!important;background:transparent!important;border:0!important;outline-offset:3px}
#wgh-root .wgh-ghost.wgh-mystery-costume:before,#wgh-root .wgh-ghost.wgh-mystery-costume:after{display:none!important}
#wgh-root .wgh-ghost.wgh-mystery-costume svg.wgh93-costume{display:block!important;width:100%!important;height:100%!important;overflow:visible!important;filter:drop-shadow(0 7px 5px rgba(41,29,49,.17))!important;animation:none!important}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh93-cloth{transform-origin:50% 85%;animation:wgh93-breath 1.25s ease-in-out infinite alternate!important}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh-timer{display:none!important}
#wgh-root .wgh-ghost.wgh-mystery-costume.wgh-rare{filter:none!important}
@keyframes wgh93-breath{from{transform:translateY(1px) scaleY(.993)}to{transform:translateY(-2px) scaleY(1.006)}}
#wgh-root .wgh93-reveal{position:fixed!important;left:50%!important;top:50%!important;z-index:2147483200!important;transform:translate(-50%,-45%) scale(.92)!important;opacity:0!important;pointer-events:none!important;display:flex!important;align-items:center!important;flex-direction:column!important;gap:6px!important;width:min(285px,80vw)!important;max-height:85dvh!important;box-sizing:border-box!important;padding:18px 16px 20px!important;background:linear-gradient(160deg,#fffdfa,#f6f0f8)!important;border:1px solid #e5dce9!important;border-radius:24px!important;box-shadow:0 16px 48px rgba(45,29,56,.22)!important;transition:opacity .2s ease,transform .25s cubic-bezier(.2,.85,.3,1)!important}
#wgh-root .wgh93-reveal.wgh93-reveal-visible{opacity:1!important;transform:translate(-50%,-50%) scale(1)!important}
#wgh-root .wgh93-reveal.wgh93-reveal-out{opacity:0!important;transform:translate(-50%,-55%) scale(.96)!important}
#wgh-root .wgh93-reveal-heading{font:700 12px/1.4 system-ui,sans-serif!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#8e638f!important}
#wgh-root .wgh93-reveal-art{width:min(215px,55vw)!important;height:min(210px,29vh)!important;display:grid!important;place-items:center!important;animation:wgh93-arrive .5s cubic-bezier(.18,1.25,.35,1) both!important}
#wgh-root .wgh93-reveal-art .wgh93-breed{width:100%!important;height:100%!important;overflow:visible!important;filter:drop-shadow(0 5px 4px rgba(44,30,42,.1))!important;animation:none!important}
#wgh-root .wgh93-reveal-name{font:800 clamp(19px,5vw,25px)/1.2 system-ui,sans-serif!important;color:#372a40!important;text-align:center!important}
#wgh-root .wgh93-reveal-sub{font:500 12px/1.45 system-ui,sans-serif!important;color:#806e82!important;text-align:center!important}
@keyframes wgh93-arrive{from{opacity:0;transform:translateY(15px) scale(.86)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost.wgh-mystery-costume .wgh93-cloth,#wgh-root .wgh93-reveal-art{animation:none!important}#wgh-root .wgh93-reveal{transition:none!important}}
#wgh-root .wgh-ghost.wgh-mystery-costume .wgh93-costume{animation:none!important}
#wgh-root .wgh-ghost.wgh-mystery-costume.wgh-arriving .wgh93-costume{animation:none!important}
#wgh-root .wgh-ghost.wgh-mystery-costume.wgh-product-peek .wgh93-costume{filter:drop-shadow(0 4px 4px rgba(41,29,49,.16))!important}

/* 9.4 — illustrated discovery sequence; self-contained, no layout shifts. */
#wgh-root.wgh94-revealing .wgh-action-bar,#wgh-root.wgh94-revealing .wgh-panel-toggle,#wgh-root.wgh94-revealing .wgh-hud,#wgh-root.wgh94-revealing .wgh-challenge{visibility:hidden!important;pointer-events:none!important}
#wgh-root .wgh94-reveal{--wgh94-accent:#ad75d9;position:fixed!important;z-index:2147483400!important;inset:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:7px!important;padding:calc(14px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom))!important;box-sizing:border-box!important;pointer-events:none!important;text-align:center!important;color:#342443!important;background:rgba(27,17,43,.68)!important;backdrop-filter:blur(7px)!important;-webkit-backdrop-filter:blur(7px)!important;opacity:0!important;transition:opacity .3s ease!important;font-family:system-ui,-apple-system,sans-serif!important}
#wgh-root .wgh94-reveal.wgh94-play{opacity:1!important}
#wgh-root .wgh94-rarity-uncommon{--wgh94-accent:#54b9ad}
#wgh-root .wgh94-rarity-rare{--wgh94-accent:#5793e7}
#wgh-root .wgh94-rarity-epic{--wgh94-accent:#b47af2}
#wgh-root .wgh94-rarity-legendary{--wgh94-accent:#e8b64d}
#wgh-root .wgh94-header{display:flex!important;flex-direction:column!important;gap:2px!important;position:relative!important;z-index:2!important}
#wgh-root .wgh94-kicker{font:700 10px/1.4 system-ui!important;letter-spacing:.18em!important;color:#f7e9ff!important}
#wgh-root .wgh94-title{font:900 clamp(25px,6vw,38px)/1.2 system-ui!important;color:white!important;text-shadow:0 3px 14px rgba(0,0,0,.25)!important;opacity:0;transform:translateY(14px)}
#wgh-root .wgh94-play .wgh94-title{animation:wgh94-title .45s .2s cubic-bezier(.2,.9,.2,1) forwards}
#wgh-root .wgh94-stage{position:relative!important;width:min(370px,88vw,42dvh)!important;aspect-ratio:1!important;display:grid!important;place-items:center!important;isolation:isolate!important;flex-shrink:1!important;min-height:0!important}
#wgh-root .wgh94-backdrop{position:absolute;inset:7%;border-radius:50%;background:radial-gradient(circle at 48% 40%,#fff 0%,#f7e7ff 42%,#d8baf1 72%,#aa77d4 100%);box-shadow:0 0 0 8px rgba(255,255,255,.14),0 18px 55px rgba(30,10,52,.3);transform:scale(.1);opacity:0}
#wgh-root .wgh94-play .wgh94-backdrop{animation:wgh94-backdrop .6s .18s cubic-bezier(.16,1.3,.32,1) forwards}
#wgh-root .wgh94-aura{position:absolute;inset:2%;border-radius:50%;background:conic-gradient(from 20deg,transparent 0deg,rgba(255,255,255,.65) 14deg,transparent 27deg,transparent 48deg,rgba(255,255,255,.5) 62deg,transparent 76deg,transparent 105deg,rgba(255,255,255,.5) 116deg,transparent 132deg,transparent 180deg,rgba(255,255,255,.5) 197deg,transparent 213deg,transparent 260deg,rgba(255,255,255,.5) 276deg,transparent 292deg);opacity:0}
#wgh-root .wgh94-play .wgh94-aura{animation:wgh94-rays 2.3s .5s ease-in-out both}
#wgh-root .wgh94-ring{position:absolute;inset:9%;border:2px dashed rgba(255,255,255,.78);border-radius:50%;opacity:0;transform:rotate(-20deg) scale(.65)}
#wgh-root .wgh94-play .wgh94-ring{animation:wgh94-ring 1.8s .5s ease-out forwards}
#wgh-root .wgh94-character{position:absolute;inset:8%;display:grid;place-items:center;filter:drop-shadow(0 13px 10px rgba(62,40,67,.2))}
#wgh-root .wgh94-character>div{position:absolute;inset:0;display:grid;place-items:center}
#wgh-root .wgh94-character svg{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;overflow:visible!important}
#wgh-root .wgh94-ghost{opacity:0;transform:translateY(30px) scale(.7) rotate(-13deg)}
#wgh-root .wgh94-play .wgh94-ghost{animation:wgh94-ghost 1.3s .2s both}
#wgh-root .wgh94-dog{opacity:0;transform:translateY(32px) scale(.5) rotate(12deg)}
#wgh-root .wgh94-play .wgh94-dog{animation:wgh94-dog .8s 1.12s cubic-bezier(.16,1.3,.34,1) forwards}
#wgh-root .wgh94-play .wgh94-dog .wgh93-breed{animation:wgh94-idle 1.2s 1.9s ease-in-out infinite alternate}
#wgh-root .wgh94-sparkles{position:absolute;inset:0;pointer-events:none}
#wgh-root .wgh94-spark{position:absolute;left:50%;top:50%;font:900 25px/1 system-ui;color:white;opacity:0;text-shadow:0 0 8px #fff}
#wgh-root .wgh94-play .wgh94-spark{animation:wgh94-spark 1s calc(.95s + var(--delay)) cubic-bezier(.18,.9,.2,1) both}
#wgh-root .wgh94-paw{position:absolute;bottom:8%;right:13%;font-size:34px;opacity:0;transform:rotate(25deg) scale(.1)}
#wgh-root .wgh94-play .wgh94-paw{animation:wgh94-paw .55s 1.55s cubic-bezier(.16,1.3,.34,1) forwards}
#wgh-root .wgh94-ribbon{position:absolute;bottom:0;left:50%;transform:translate(-50%,10px) rotate(-4deg);white-space:nowrap;padding:7px 18px;border-radius:9px;background:#fff;color:#725294;box-shadow:0 6px 16px rgba(55,32,77,.16);font:900 11px/1.3 system-ui;letter-spacing:.1em;opacity:0}
#wgh-root .wgh94-play .wgh94-ribbon{animation:wgh94-ribbon .5s 1.65s cubic-bezier(.16,1.3,.34,1) forwards}
#wgh-root .wgh94-rarity{margin-top:4px;color:#fff;font:700 11px/1.3 system-ui;letter-spacing:.1em;text-transform:uppercase;opacity:0}
#wgh-root .wgh94-name{font:900 clamp(23px,6vw,34px)/1.2 system-ui!important;color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.3);opacity:0;transform:translateY(12px)}
#wgh-root .wgh94-desc{font:500 13px/1.4 system-ui;color:#f1e5fa;opacity:0}
#wgh-root .wgh94-play .wgh94-rarity,#wgh-root .wgh94-play .wgh94-name,#wgh-root .wgh94-play .wgh94-desc{animation:wgh94-text .45s 1.75s ease-out forwards}
#wgh-root .wgh94-progress{width:min(250px,62vw);height:3px;border-radius:10px;background:rgba(255,255,255,.2);overflow:hidden;margin-top:12px}
#wgh-root .wgh94-progress::before{content:"";display:block;width:100%;height:100%;background:#fff;transform-origin:left;transform:scaleX(0)}
#wgh-root .wgh94-play .wgh94-progress::before{animation:wgh94-progress var(--wgh95-reveal-duration, 15s) linear forwards}
@keyframes wgh94-title{to{opacity:1;transform:translateY(0)}}
@keyframes wgh94-backdrop{to{opacity:1;transform:scale(1)}}
@keyframes wgh94-rays{0%{opacity:0;transform:rotate(-40deg)}40%,75%{opacity:.75}100%{opacity:.35;transform:rotate(42deg)}}
@keyframes wgh94-ring{0%{opacity:0;transform:scale(.65) rotate(-20deg)}35%{opacity:.9}100%{opacity:.25;transform:scale(1.1) rotate(28deg)}}
@keyframes wgh94-ghost{0%{opacity:0;transform:translateY(30px) scale(.7) rotate(-13deg)}32%,65%{opacity:1;transform:translateY(0) scale(1) rotate(4deg)}80%{opacity:1;transform:translateY(-16px) scale(1.12) rotate(-8deg)}100%{opacity:0;transform:translateY(-85px) scale(.75) rotate(22deg)}}
@keyframes wgh94-dog{0%{opacity:0;transform:translateY(32px) scale(.5) rotate(12deg)}65%{opacity:1;transform:translateY(-9px) scale(1.08) rotate(-4deg)}100%{opacity:1;transform:translateY(0) scale(1) rotate(0)}}
@keyframes wgh94-idle{from{transform:translateY(0) rotate(-1deg)}to{transform:translateY(-5px) rotate(1deg)}}
@keyframes wgh94-spark{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}30%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--sx)),calc(-50% + var(--sy))) scale(1.4) rotate(90deg)}}
@keyframes wgh94-paw{to{opacity:1;transform:rotate(-12deg) scale(1)}}
@keyframes wgh94-ribbon{to{opacity:1;transform:translate(-50%,0) rotate(-4deg)}}
@keyframes wgh94-text{to{opacity:1;transform:translateY(0)}}
@keyframes wgh94-progress{to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){
 #wgh-root .wgh94-reveal,#wgh-root .wgh94-reveal *{animation:none!important;transition:none!important}
 #wgh-root .wgh94-reveal{opacity:1!important}
 #wgh-root .wgh94-title,#wgh-root .wgh94-backdrop,#wgh-root .wgh94-dog,#wgh-root .wgh94-ribbon,#wgh-root .wgh94-rarity,#wgh-root .wgh94-name,#wgh-root .wgh94-desc{opacity:1!important;transform:none!important}
 #wgh-root .wgh94-ghost{display:none!important}
}

/* 9.5: dismissible, optionally persistent dog discovery dialog */
#wgh-root .wgh94-reveal{pointer-events:auto!important;overflow-y:auto!important}
#wgh-root .wgh95-close{position:absolute!important;z-index:5!important;top:calc(12px + env(safe-area-inset-top))!important;right:calc(12px + env(safe-area-inset-right))!important;display:grid!important;place-items:center!important;width:44px!important;height:44px!important;border:1px solid rgba(255,255,255,.45)!important;border-radius:50%!important;background:rgba(255,255,255,.17)!important;color:#fff!important;font:400 32px/1 system-ui!important;cursor:pointer!important;pointer-events:auto!important;box-shadow:0 5px 18px rgba(0,0,0,.2)!important}
#wgh-root .wgh95-close:hover,#wgh-root .wgh95-close:focus-visible{background:rgba(255,255,255,.34)!important;outline:2px solid white!important;outline-offset:2px!important}
#wgh-root .wgh95-continue{z-index:4!important;position:relative!important;pointer-events:auto!important;cursor:pointer!important;margin-top:12px!important;padding:12px 22px!important;border:0!important;border-radius:999px!important;background:#fff!important;color:#503065!important;font:800 14px/1.3 system-ui!important;box-shadow:0 6px 18px rgba(25,10,40,.3)!important}
#wgh-root .wgh95-continue:hover,#wgh-root .wgh95-continue:focus-visible{background:#f6e9ff!important;outline:2px solid white!important;outline-offset:3px!important}
#wgh-root .wgh94-progress[hidden]{display:none!important}
@media(max-height:650px){#wgh-root .wgh94-stage{width:min(260px,72vw,36dvh)!important}#wgh-root .wgh94-reveal{gap:3px!important}}

/* 9.6 — No reward: the ghost dog escapes, rather than playing a misleading catch reveal. */
#wgh-root .wgh96-escape{position:fixed!important;z-index:2147483200!important;width:min(270px,75vw)!important;min-height:145px!important;pointer-events:none!important;isolation:isolate!important;font-family:system-ui,-apple-system,sans-serif!important;filter:drop-shadow(0 7px 9px rgba(35,20,52,.24))}
#wgh-root .wgh96-escape-figure{position:absolute!important;left:0;top:0;width:145px;height:115px;opacity:0;transform:translateY(14px) scale(.9)}
#wgh-root .wgh96-escape-figure svg{width:100%!important;height:100%!important;overflow:visible!important}
#wgh-root .wgh96-escape-bubble{position:relative!important;z-index:1!important;margin-left:72px!important;max-width:195px!important;border-radius:17px 17px 17px 4px!important;padding:10px 12px!important;background:#fff!important;color:#4e3267!important;font:800 13px/1.35 system-ui!important;box-shadow:0 5px 18px rgba(42,27,61,.2)!important;opacity:0;transform:translateY(10px)}
#wgh-root .wgh96-escape-hint{position:absolute!important;top:123px!important;left:0!important;right:0!important;text-align:center!important;color:#fff!important;font:700 12px/1.3 system-ui!important;text-shadow:0 2px 6px rgba(0,0,0,.7)!important;opacity:0}
#wgh-root .wgh96-escape.wgh96-run .wgh96-escape-figure{animation:wgh96-dash 1.6s .15s cubic-bezier(.22,.7,.28,1) both}
#wgh-root .wgh96-escape.wgh96-run .wgh96-escape-bubble{animation:wgh96-bubble 1.7s .05s ease-out both}
#wgh-root .wgh96-escape.wgh96-run .wgh96-escape-hint{animation:wgh96-hint 2.1s .35s ease-out both}
@keyframes wgh96-dash{
 0%{opacity:0;transform:translateY(14px) scale(.9) rotate(-7deg)}
 18%{opacity:1;transform:translateY(-6px) scale(1) rotate(5deg)}
 36%{opacity:1;transform:translateY(0) scale(1) rotate(-8deg)}
 50%{opacity:1;transform:translateY(-12px) scale(.98) rotate(10deg)}
 100%{opacity:0;transform:translate(calc(var(--wgh96-dir) * 105vw),-28px) scale(.7) rotate(15deg)}
}
@keyframes wgh96-bubble{0%{opacity:0;transform:translateY(10px)}16%,65%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-7px)}}
@keyframes wgh96-hint{0%{opacity:0}20%,75%{opacity:1}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){
 #wgh-root .wgh96-escape-figure{animation:none!important;opacity:1!important;transform:none!important}
 #wgh-root .wgh96-escape-bubble,#wgh-root .wgh96-escape-hint{animation:none!important;opacity:1!important;transform:none!important}
}

/* 9.7: unmistakable visible escape on both light and dark shops. */
#wgh-root .wgh97-escape-stage{position:fixed!important;inset:0!important;z-index:2147483450!important;pointer-events:none!important;overflow:hidden!important;isolation:isolate!important;font-family:system-ui,-apple-system,sans-serif!important}
#wgh-root .wgh97-escape-dog{position:absolute!important;z-index:2!important;pointer-events:none!important;will-change:transform!important;filter:drop-shadow(0 7px 9px rgba(34,20,56,.35))!important;transform-origin:50% 55%!important}
#wgh-root .wgh97-escape-dog svg{width:100%!important;height:100%!important;overflow:visible!important;filter:none!important;animation:none!important}
#wgh-root .wgh97-escape-trail{position:absolute!important;z-index:1!important;pointer-events:none!important;display:flex!important;gap:10px!important;opacity:0!important}
#wgh-root .wgh97-escape-trail i{display:block!important;font:900 30px/1 system-ui!important;color:#a674d6!important;text-shadow:0 2px 5px white!important;animation:wgh97-bubbles .55s ease-in-out infinite alternate!important}
#wgh-root .wgh97-escape-trail i:nth-child(even){animation-delay:.22s!important}
#wgh-root .wgh97-active .wgh97-escape-trail{animation:wgh97-trail 1.45s .25s ease-out both!important}
#wgh-root .wgh97-escape-toast{position:absolute!important;z-index:3!important;top:calc(75px + env(safe-area-inset-top))!important;left:50%!important;transform:translateX(-50%) translateY(-12px)!important;width:min(390px,calc(100vw - 30px))!important;display:flex!important;flex-direction:column!important;gap:4px!important;padding:13px 18px!important;text-align:center!important;border:2px solid #eac8ff!important;border-radius:16px!important;background:#37204d!important;color:#fff!important;box-shadow:0 12px 32px rgba(20,10,35,.38)!important;opacity:0!important}
#wgh-root .wgh97-escape-toast strong{color:#fff!important;font:900 17px/1.3 system-ui!important;letter-spacing:0!important;text-shadow:none!important}
#wgh-root .wgh97-escape-toast span{color:#f5e7ff!important;font:600 12px/1.45 system-ui!important;text-shadow:none!important}
#wgh-root .wgh97-active .wgh97-escape-toast{animation:wgh97-toast 2.8s .05s ease-in-out forwards!important}
@keyframes wgh97-toast{0%{opacity:0;transform:translateX(-50%) translateY(-12px)}12%,80%{opacity:1;transform:translateX(-50%) translateY(0)}100%{opacity:0;transform:translateX(-50%) translateY(-7px)}}
@keyframes wgh97-trail{0%{opacity:0;transform:translate(0,0)}30%{opacity:.9}100%{opacity:0;transform:translate(calc(var(--wgh97-dir) * 110px),-18px)}}
@keyframes wgh97-bubbles{from{transform:translateY(5px) scale(.7)}to{transform:translateY(-9px) scale(1.15)}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh97-escape-trail,#wgh-root .wgh97-escape-trail i{animation:none!important;display:none!important}}

#wgh-root .wgh97-waiting-dog{position:fixed!important;z-index:2147483400!important;pointer-events:none!important;filter:drop-shadow(0 6px 7px rgba(45,30,70,.28))!important;animation:wgh97-wait .7s ease-in-out infinite alternate!important}
#wgh-root .wgh97-waiting-dog svg{width:100%!important;height:100%!important;filter:none!important;animation:none!important}
@keyframes wgh97-wait{from{transform:translateY(0) rotate(-3deg)}to{transform:translateY(-7px) rotate(4deg)}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh97-waiting-dog{animation:none!important}}

/* 9.8: body-level escape stage bypasses transformed and clipped plugin containers. */
body > .wgh97-escape-stage{position:fixed!important;inset:0!important;z-index:2147483646!important;overflow:hidden!important;pointer-events:none!important;isolation:isolate!important;font-family:system-ui,sans-serif!important}
body > .wgh97-escape-stage .wgh97-escape-dog{position:absolute!important;z-index:3!important;will-change:transform!important;filter:drop-shadow(0 8px 12px rgba(36,20,52,.45))!important}
body > .wgh97-escape-stage .wgh97-escape-dog svg{width:100%!important;height:100%!important;overflow:visible!important}
body > .wgh97-escape-stage .wgh97-escape-toast{position:absolute!important;z-index:5!important;left:50%!important;top:calc(65px + env(safe-area-inset-top))!important;width:min(430px,calc(100vw - 32px))!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;gap:6px!important;padding:16px 20px!important;border:2px solid #e9c4ff!important;border-radius:18px!important;background:#342044!important;color:#fff!important;text-align:center!important;box-shadow:0 12px 32px rgba(24,9,39,.4)!important;opacity:0;transform:translateX(-50%);font-family:system-ui,sans-serif!important}
body > .wgh97-escape-stage .wgh97-escape-toast strong{display:block!important;color:#fff!important;font:900 19px/1.3 system-ui!important;text-shadow:none!important}
body > .wgh97-escape-stage .wgh97-escape-toast span{display:block!important;color:#f6eaff!important;font:600 13px/1.4 system-ui!important;text-shadow:none!important}
body > .wgh97-escape-stage .wgh97-escape-trail{position:absolute!important;z-index:2!important;display:flex!important;gap:10px!important;pointer-events:none!important}
body > .wgh97-escape-stage .wgh97-escape-trail i{font:900 28px/1 system-ui!important;color:#aa75da!important;text-shadow:0 1px 5px #fff!important}
body > .wgh97-escape-stage .wgh98-particle{position:absolute!important;z-index:4!important;font:900 22px/1 system-ui!important;color:#d19aff!important;text-shadow:0 1px 6px #fff!important;pointer-events:none!important}

/* 10.0: playful micro-interactions */
#wgh-root .wgh-ghost .wgh100-playful{position:absolute!important;right:-9px!important;top:-18px!important;z-index:3!important;pointer-events:none!important;font:900 25px/1 system-ui!important;color:#ae69d8!important;text-shadow:0 1px 3px white!important;animation:wgh100-pop 1.1s ease-in-out infinite alternate!important}
@keyframes wgh100-pop{from{opacity:.45;transform:translateY(5px) rotate(-12deg) scale(.8)}to{opacity:1;transform:translateY(-7px) rotate(12deg) scale(1.13)}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost .wgh100-playful{animation:none!important}}

/* 10.2: true image foreground occlusion and playful peek bubble. */
#wgh-root .wgh-ghost.wgh-product-peek{overflow:visible!important;clip-path:none!important;filter:drop-shadow(0 6px 5px rgba(35,20,52,.23))!important}
#wgh-root .wgh-ghost.wgh-product-peek::before{display:none!important}
#wgh-root .wgh-ghost.wgh-product-peek .wgh102-peek-sign{position:absolute!important;top:-21px!important;left:44%!important;z-index:2!important;font:900 21px/1 system-ui!important;filter:drop-shadow(0 2px 2px #fff)!important;animation:wgh102-sign 1.2s ease-in-out infinite alternate!important;pointer-events:none!important}
@keyframes wgh102-sign{from{transform:translateY(4px) rotate(-10deg) scale(.88);opacity:.65}to{transform:translateY(-5px) rotate(8deg) scale(1.1);opacity:1}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost.wgh-product-peek .wgh102-peek-sign{animation:none!important}}

/* 10.3 — curious / timid / bold product peeking, responsive to nearby pointer */
#wgh-root .wgh-ghost.wgh-product-peek .wgh101-costume{transform-origin:50% 70%!important}
#wgh-root .wgh-ghost.wgh-product-peek.wgh103-shy .wgh102-peek-sign{animation:none!important;transform:translateY(3px) scale(.85)!important;opacity:.7!important}
#wgh-root .wgh-ghost.wgh-product-peek[data-peek-mood="bold"] .wgh102-peek-sign{filter:drop-shadow(0 2px 4px #fff) saturate(1.5)!important}
#wgh-root .wgh-ghost.wgh-product-peek[data-peek-mood="timid"] .wgh102-peek-sign{opacity:.65!important}

/* 10.4: rare ceiling ghost and noninteractive double-vision fake-out */
#wgh-root .wgh104-decoy{position:fixed!important;z-index:2147482900!important;pointer-events:none!important;display:block!important;filter:drop-shadow(0 7px 10px rgba(65,34,85,.2))!important;will-change:transform,opacity!important}
#wgh-root .wgh104-decoy svg{width:100%!important;height:100%!important;display:block!important}
#wgh-root .wgh-ghost[data-scene="ceiling"]{transform-origin:50% 30%!important}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh104-decoy{display:none!important}}

/* 10.6 animated personalities, collectible cards, rewards and trails */
#wgh-root .wgh106-alive svg{animation:wgh106-breathe 2.6s ease-in-out infinite;transform-origin:50% 75%}
#wgh-root .wgh106-alive[data-personality="happy"] svg{animation-duration:1.45s}
#wgh-root .wgh106-alive[data-personality="sleepy"] svg{animation-duration:3.8s}
#wgh-root .wgh106-alive[data-personality="sneaky"] svg{animation-duration:2.15s}
@keyframes wgh106-breathe{0%,100%{transform:scale(1) rotate(-1deg)}50%{transform:scale(1.035,.96) rotate(2deg)}}
#wgh-root .wgh-album-card.wgh-discovered{position:relative;overflow:hidden;background:linear-gradient(155deg,#fff,#fff7e9 65%,#f6ecff);box-shadow:0 6px 18px rgba(70,36,83,.13);transition:transform .22s,box-shadow .22s}
#wgh-root .wgh-album-card.wgh-discovered:hover,#wgh-root .wgh-album-card.wgh-discovered:focus-visible{transform:translateY(-5px);box-shadow:0 12px 25px rgba(70,36,83,.22)}
#wgh-root .wgh-album-card.wgh-discovered:after{content:'✦';position:absolute;right:9px;top:24px;color:#f7ba46;font-size:20px;pointer-events:none}
#wgh-root .wgh106-card-art{display:flex;justify-content:center;align-items:center;width:100%;min-height:86px;max-height:108px;overflow:hidden}
#wgh-root .wgh106-card-art svg{width:90px!important;height:95px!important;max-width:100%;filter:drop-shadow(0 5px 5px #cbb2d3)}
.wgh106-pawprint{position:fixed;z-index:2147483009;pointer-events:none;font-size:17px;opacity:0;animation:wgh106-paw 2.3s ease-out forwards;filter:drop-shadow(0 2px 2px #fff)}
@keyframes wgh106-paw{0%{opacity:0;transform:translateY(9px) rotate(-22deg) scale(.5)}25%,70%{opacity:.85}100%{opacity:0;transform:translateY(-8px) rotate(15deg) scale(1)}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh106-alive svg,.wgh106-pawprint{animation:none!important}}

/* 10.7: animate actual character anatomy, not a CSS rule overridden by v9.3. */
#wgh-root .wgh-ghost.wgh107-expressive svg.wgh93-costume{animation:wgh107-body 2.2s ease-in-out infinite!important;transform-origin:50% 74%!important}
#wgh-root .wgh-ghost.wgh107-expressive[data-personality="happy"] svg.wgh93-costume{animation-duration:1.25s!important}
#wgh-root .wgh-ghost.wgh107-expressive[data-personality="sleepy"] svg.wgh93-costume{animation-duration:3.5s!important}
#wgh-root .wgh-ghost.wgh107-expressive .wgh93-cloth{animation:wgh107-head 1.9s ease-in-out infinite alternate!important;transform-origin:50% 80%!important}
#wgh-root .wgh-ghost.wgh107-expressive .wgh107-hat{animation:wgh107-hat 1.9s ease-in-out infinite alternate!important;transform-origin:50% 36%!important}
#wgh-root .wgh-ghost.wgh107-expressive .wgh107-face{animation:wgh107-eyes 4.3s steps(1,end) infinite!important;transform-origin:50% 52%!important}
#wgh-root .wgh-ghost.wgh107-expressive .wgh107-blink{opacity:0;animation:wgh107-blink 4.3s steps(1,end) infinite!important}
#wgh-root .wgh-ghost.wgh107-expressive[data-personality="sneaky"] .wgh93-cloth{animation-duration:1.1s!important}
@keyframes wgh107-body{0%,100%{transform:translateY(0) rotate(-3deg) scale(1)}50%{transform:translateY(-9px) rotate(4deg) scale(1.06,.95)}}
@keyframes wgh107-head{0%{transform:rotate(-5deg) translateX(-2px)}100%{transform:rotate(6deg) translateX(3px)}}
@keyframes wgh107-hat{0%{transform:rotate(-7deg) translateY(0)}100%{transform:rotate(8deg) translateY(-4px)}}
@keyframes wgh107-eyes{0%,91%,100%{opacity:1}92%,95%{opacity:0}}
@keyframes wgh107-blink{0%,91%,100%{opacity:0}92%,95%{opacity:1}}
@media(prefers-reduced-motion:reduce){
#wgh-root .wgh-ghost.wgh107-expressive svg.wgh93-costume,
#wgh-root .wgh-ghost.wgh107-expressive .wgh93-cloth,
#wgh-root .wgh-ghost.wgh107-expressive .wgh107-hat,
#wgh-root .wgh-ghost.wgh107-expressive .wgh107-face,
#wgh-root .wgh-ghost.wgh107-expressive .wgh107-blink{animation:none!important}
}

/* 11.0: visible expression, rare variants and smarter peek. */
#wgh-root .wgh-ghost.wgh107-expressive .wgh11-eyes{animation:wgh11-eyes 4.1s steps(1,end) infinite!important}
#wgh-root .wgh-ghost.wgh107-expressive .wgh11-blink{opacity:0;animation:wgh11-blink 4.1s steps(1,end) infinite!important}
#wgh-root .wgh-ghost.wgh107-expressive .wgh11-accessory{animation:wgh11-wiggle 1.3s ease-in-out infinite alternate!important;transform-origin:50% 40%}
#wgh-root .wgh-ghost.wgh11-rare-costume svg{filter:drop-shadow(0 0 10px rgba(255,207,73,.9))!important}
#wgh-root .wgh-ghost .wgh11-emotion{position:absolute!important;top:-16px;right:-8px;z-index:4;pointer-events:none;font:900 23px/1 system-ui;filter:drop-shadow(0 2px 2px white);animation:wgh11-emote 1.8s ease-in-out infinite}
#wgh-root .wgh-ghost.wgh11-looking-back svg{filter:drop-shadow(0 5px 9px #e8c2ff)!important}
#wgh-root .wgh-ghost.wgh11-peek-eyes .wgh11-emotion{top:-22px}
@keyframes wgh11-eyes{0%,92%,97%,100%{opacity:1}93%,96%{opacity:0}}
@keyframes wgh11-blink{0%,92%,97%,100%{opacity:0}93%,96%{opacity:1}}
@keyframes wgh11-wiggle{0%{transform:rotate(-7deg) translateY(1px)}100%{transform:rotate(7deg) translateY(-3px)}}
@keyframes wgh11-emote{0%,100%{transform:translateY(2px) rotate(-8deg)}50%{transform:translateY(-10px) rotate(9deg)}}
@media(prefers-reduced-motion:reduce){#wgh-root .wgh-ghost.wgh107-expressive .wgh11-eyes,#wgh-root .wgh-ghost.wgh107-expressive .wgh11-blink,#wgh-root .wgh-ghost.wgh107-expressive .wgh11-accessory,#wgh-root .wgh-ghost .wgh11-emotion{animation:none!important}}

/* 11.0.4: One-click gift redemption from My Coupons */
#wgh-root .wgh-wallet-item .wgh1104-add-gift{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 13px;border:0;border-radius:10px;background:#6945a0;color:white;font-weight:750;cursor:pointer;margin:6px 5px 5px 0}
#wgh-root .wgh-wallet-item .wgh1104-add-gift:disabled{opacity:.65;cursor:default}
#wgh-root .wgh-wallet-item .wgh1104-gift-feedback{display:block;margin:5px 0;font-size:12px;white-space:normal}
#wgh-root .wgh-wallet-item .wgh1104-cart-link{display:inline-block;margin:5px 0 5px 8px;text-decoration:underline;font-weight:700}
