.slot-page[data-theme=good-boy]{--slot-accent:#ffb43a;--slot-gold:#ffd25a;--slot-muted:#d6c7a8;--slot-ink:#fff7e8;background:linear-gradient(#1b2a14e6,#141d0ff2 55%,#0f160c),url(/slots/goodboy/bg.webp) top/cover no-repeat,linear-gradient(165deg,#24361a,#1b2913 50%,#111a0c)}.slot-page[data-theme=good-boy][data-ultra]{--slot-accent:#ff2b6a;--slot-gold:#ff5fe0;--slot-muted:#e7a9c8;background:linear-gradient(#0a0008d9,#120010f0 55%,#07000a),url(/slots/goodboy/bg-ultra.webp) top/cover no-repeat,radial-gradient(at 50% 20%,#4a0030,#0a0008 70%);transition:background .4s}[data-theme=good-boy] .slot-heading h1 em{color:#ffc24a;text-shadow:0 3px #7a4a12,0 0 22px #ffb43a77}[data-theme=good-boy][data-ultra] .slot-heading h1 em{color:#ff3b8d;text-shadow:0 3px #5a0024,0 0 22px #ff2bd6aa}[data-theme=good-boy] .slot-spin-button{color:#3a1d00;background:linear-gradient(135deg,#ffd76a,#ff9f1c 60%,#d9650a);box-shadow:0 8px #8a3f05,0 14px 30px #ffb43a44}[data-theme=good-boy][data-ultra] .slot-spin-button{color:#fff;background:linear-gradient(135deg,#ff5fe0,#ff1f4b);box-shadow:0 8px #6a0020,0 14px 30px #ff2bd666}.gb-character{aspect-ratio:1;display:block;position:relative;container-type:inline-size}.gb-character .gb-img{object-fit:contain;width:100%;height:100%;display:block}.gb-character .gb-fallback{place-items:center;font-size:62cqw;line-height:1;display:grid}.slot-host .gb-trick{display:block}.gb-trick[data-trick="0"]{animation:.8s cubic-bezier(.4,0,.3,1) gb-roll-over}.gb-trick[data-trick="1"]{animation:.7s cubic-bezier(.3,1.4,.5,1) gb-jump}.gb-trick[data-trick="2"]{animation:.9s ease-in-out gb-beg}[data-theme=good-boy] .slot-host.is-hyped .gb-character{animation:.32s ease-in-out infinite alternate gb-wag}[data-theme=good-boy] .slot-host.is-ultra .gb-character{filter:drop-shadow(0 0 14px #ff2bd6)drop-shadow(0 0 4px #ff1f4b);animation:.4s ease-in-out infinite gb-pump}[data-theme=good-boy] .slot-host.is-ultra .slot-host-label{color:#ff3b8d;letter-spacing:2px;font-weight:900}.slot-game-card[data-theme=good-boy]{--slot-gold:#ffd25a;--slot-accent:#ffb43a;--slot-muted:#d6c7a8;background:radial-gradient(at 78%,#ffd25a44,#0000 58%),radial-gradient(circle at 8% 110%,#ff2bd626,#0000 40%),linear-gradient(130deg,#2f4a1f,#18240f);border-color:#ffb43a77}.slot-game-card[data-theme=good-boy] h3 em{color:#ffc24a;text-shadow:0 3px #7a4a12}.slot-game-card[data-theme=good-boy]:hover>.slot-character{animation:.3s ease-in-out 4 alternate gb-wag}.game-thumb[data-game=good-boy]{--thumb-accent:#ffb43a;background:radial-gradient(at 78% 45%,#ffd25a44,#0000 58%),radial-gradient(circle at 10% 110%,#ff2bd626,#0000 40%),linear-gradient(130deg,#2f4a1f,#18240f)}.game-shelf .game-thumb-art .gb-character{aspect-ratio:auto;box-sizing:border-box;padding:18% 8% 0}.gb-cabinet{--cell:84px;--gap:6px;background:linear-gradient(160deg,#a8743a,#5c3a18 14%,#432a12 86%,#8a5a28);border:2px solid #9a6a32;transition:border-color .3s,background .3s;box-shadow:0 22px 65px #0007,inset 0 1px #ffe2a855,inset 0 -10px 30px #ffb43a22}.gb-hud{color:#ffe0f2;background:linear-gradient(90deg,#ff1f4b33,#ff2bd644,#ff1f4b33)}.gb-hud b{color:#fff}.gb-hud-ultra{letter-spacing:2px;color:#fff;background:linear-gradient(90deg,#ff1f4b,#ff2bd6);border-radius:6px;padding:5px 10px;font:italic 900 15px/1 Impact,Arial Black,sans-serif;transform:skew(-10deg);box-shadow:0 0 16px #ff2bd6aa}.gb-porch{grid-template-columns:auto auto minmax(0,1fr) auto;align-items:end;gap:10px;height:66px;padding:0 6px 6px;display:grid}.gb-porch-owner{place-items:end center;width:46px;height:60px;display:grid}.gb-porch-owner .gb-img{object-fit:contain;object-position:bottom;width:100%;height:100%}.gb-porch-owner .gb-fallback{font-size:34px;line-height:1}.gb-porch-dog{width:50px;height:50px;transform:scale(var(--scale));transform-origin:50% 100%;z-index:2;place-items:end center;transition:transform .45s cubic-bezier(.3,1.6,.5,1);display:grid;position:relative}.gb-porch-dog .gb-img{object-fit:contain;object-position:bottom;width:100%;height:100%}.gb-porch-dog .gb-fallback{font-size:38px;line-height:1}.gb-porch-dog.is-chomp{animation:.3s ease-out gb-chomp}.gb-porch-dog.is-sad{animation:1s ease-in-out gb-sad}.gb-porch-dog.is-grow{animation:.9s cubic-bezier(.3,1.6,.5,1) gb-grow}.gb-porch-size{flex-direction:column;align-self:center;gap:4px;min-width:0;display:flex}.gb-porch-size small{letter-spacing:2px;color:var(--slot-accent);font:900 9px/1 Arial,sans-serif}.gb-ladder{gap:3px;display:flex}.gb-ladder i{color:#e8d9bd99;background:#00000040;border-radius:6px;padding:4px 6px;font:800 11px/1 Arial,sans-serif;transition:transform .3s,background .3s}.gb-ladder i.past{color:#ffd25a}.gb-ladder i.on{color:#3a1d00;background:linear-gradient(130deg,#fff1b0,#ffb43a);transform:scale(1.18);box-shadow:0 0 14px #ffb43a99}.gb-bank{text-align:right;background:#00000045;border-radius:10px;align-self:center;min-width:84px;padding:5px 10px;box-shadow:inset 0 0 0 1px #ffd25a33}.gb-bank small{letter-spacing:2px;text-transform:uppercase;color:var(--slot-muted);font-size:8px;display:block}.gb-bank strong{font-variant-numeric:tabular-nums;color:#ffe08a;font:800 18px/1.2 Arial,sans-serif}.gb-bank.is-down{animation:.45s ease-in-out gb-shake}.gb-bank.is-down strong{color:#ff7a7a}.gb-bank.is-up strong{color:#b8ff6a}.gb-board{background:linear-gradient(#0000,#0002),url(/slots/goodboy/bg.webp) 50%/cover no-repeat,linear-gradient(#8fd3ff,#c8ecaa 58%,#6fbf4a);border:2px solid #6b4318;border-radius:12px;padding:10px;position:relative;overflow:hidden;box-shadow:inset 0 2px 18px #0006;container-type:inline-size}.gb-grid{z-index:1;gap:var(--gap);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:relative}.gb-reel{grid-template-rows:repeat(4,var(--cell));gap:var(--gap);background:#fff8e8d0;border-radius:9px;transition:background .3s,box-shadow .3s;display:grid;position:relative;box-shadow:inset 0 0 0 1px #7a4a1222,0 2px 6px #0002}.gb-board.is-moving .gb-reel{overflow:hidden}.gb-reel.is-dog{background:#ffe9b0e6;box-shadow:inset 0 0 0 2px #ffb43a,0 0 16px #ffb43a88}.gb-reel.is-tease{animation:.4s ease-in-out infinite alternate gb-tease;box-shadow:0 0 0 2px #ff3b3b,0 0 22px #ff5a1f}.gb-cell{z-index:1;place-items:center;min-width:0;display:grid;position:relative}.gb-cell.is-hidden{visibility:hidden}.gb-sym{place-items:center;width:78%;height:78%;margin:auto;display:grid;position:relative;container-type:size}.gb-sym>.gb-img{min-width:0;min-height:0;position:absolute;inset:0}.gb-img{object-fit:contain;object-position:center;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.gb-sym .gb-fallback{place-items:center;font-size:62cqmin;line-height:1;display:grid}.gb-coin-v{color:#4a2600;text-shadow:0 1px #fff9,0 0 6px #fff6;white-space:nowrap;pointer-events:none;font:900 15px/1 Arial,sans-serif;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gb-coin-v[data-len=m]{font-size:12px}.gb-coin-v[data-len=l]{font-size:10px}.gb-strip{grid-auto-rows:var(--cell);gap:var(--gap);filter:blur(2.2px)brightness(.95);z-index:2;animation:.3s linear infinite gb-spin-reel;display:grid;position:absolute;inset:0 0 auto}.gb-board.is-landing .gb-strip{animation:gb-spin-reel .3s linear infinite,gb-out 1ms linear var(--stop) forwards}.gb-board.is-landing .gb-reel.is-tease .gb-strip{animation:gb-spin-reel .15s linear infinite,gb-out 1ms linear var(--stop) forwards}.gb-board.is-free .gb-strip{animation-duration:.2s}.gb-cell.is-land{animation:gb-land .42s cubic-bezier(.3,1.5,.5,1) var(--stop) both}.gb-board.is-focus .gb-cell:not(.is-line){opacity:.38;filter:saturate(.4)}.gb-cell.is-line .gb-sym{filter:drop-shadow(0 0 8px #ffd34d);animation:.42s ease-in-out infinite alternate gb-pulse}.gb-cell.is-dog{z-index:3}.gb-cell.is-dog .gb-sym{transform:scale(var(--scale));filter:drop-shadow(0 4px 6px #0005);transition:transform .45s cubic-bezier(.3,1.6,.5,1)}.gb-cell.is-dog.is-chomp .gb-sym{animation:.3s ease-out gb-chomp}.gb-cell.is-dog.is-sad .gb-sym{animation:1s ease-in-out gb-sad}.gb-cell.is-dog.is-grow .gb-sym{animation:.9s cubic-bezier(.3,1.6,.5,1) gb-grow}.gb-cell.is-dog.is-step .gb-sym{animation:.45s cubic-bezier(.3,1.5,.5,1) gb-hop}.gb-cell.is-fly{z-index:6;animation:.4s cubic-bezier(.5,0,.8,.4) both gb-fly}.gb-cell.is-eaten .gb-sym,.gb-cell.is-eaten .gb-coin-v{opacity:0}.gb-cell.is-used .gb-sym{opacity:.25;filter:grayscale()}.gb-cell.is-thief{z-index:5}.gb-cell.is-thief .gb-sym{animation:.5s ease-in-out 3 alternate gb-swipe}.gb-cell.is-shrinker{z-index:5}.gb-cell.is-shrinker .gb-sym{filter:drop-shadow(0 0 10px #8fd8ff);animation:.25s ease-in-out 5 alternate gb-wobble}.gb-cell.is-fetched{animation:gb-rain .55s cubic-bezier(.3,1.4,.5,1) calc(.75s + var(--n)*.12s) both}.gb-cell.is-double .gb-sym{filter:drop-shadow(0 0 10px #ff9be0);animation:.3s ease-in-out 4 alternate gb-pulse}.gb-cell.is-double:after{content:"×2";color:#fff;background:#ff3ba7;border-radius:5px;padding:2px 4px;font:900 12px/1 Arial,sans-serif;animation:.4s cubic-bezier(.3,1.6,.5,1) both gb-pop-in;position:absolute;top:2%;right:2%;box-shadow:0 0 10px #ff3ba7}.gb-cell.is-scatter .gb-sym{filter:drop-shadow(0 0 10px #ff5a1f)drop-shadow(0 0 4px #ffd34d);animation:.38s ease-in-out infinite alternate gb-pulse}.gb-pop,.gb-puff,.gb-sparkle,.gb-paws,.gb-stolen{left:calc((var(--x) + .5)*(100% - 4*var(--gap))/5 + var(--x)*var(--gap));top:calc((var(--y) + .5)*var(--cell) + var(--y)*var(--gap));pointer-events:none;z-index:7;position:absolute}.gb-pop{letter-spacing:.5px;color:#fff;-webkit-text-stroke:1px #6b3a00;text-shadow:0 3px #6b3a00,0 0 14px #ffd34d;white-space:nowrap;font:900 22px/1 Impact,Arial Black,sans-serif;animation:.9s ease-out both gb-pop;transform:translate(-50%,-50%)}.gb-pop small{color:#ffe08a;font-size:.6em}.gb-pop.is-minus{color:#ff8a8a;-webkit-text-stroke-color:#5a0010;text-shadow:0 3px #5a0010,0 0 14px #ff3b3b}.gb-pop.is-size{color:#bff1ff;-webkit-text-stroke-color:#06405a;text-shadow:0 2px #06405a,0 0 12px #6fd6ff;font-size:15px;animation-duration:1s}.gb-stolen{width:calc(var(--cell)*.42);height:calc(var(--cell)*.42);animation:gb-steal .7s ease-in calc(var(--n)*.14s) both}.gb-stolen .gb-fallback{font-size:calc(var(--cell)*.32)}.gb-puff{width:0;height:0}.gb-puff i{width:calc(var(--cell)*.42);height:calc(var(--cell)*.42);margin:calc(var(--cell)*-.21);opacity:0;background:radial-gradient(circle at 35% 35%,#fff,#d6eefa 60%,#9fc8dc);border-radius:50%;animation:.9s ease-out both gb-puff;position:absolute}.gb-puff i:first-child{--a:-40px;--b:-30px}.gb-puff i:nth-child(2){--a:38px;--b:-26px;animation-delay:60ms}.gb-puff i:nth-child(3){--a:-30px;--b:28px;animation-delay:.1s}.gb-puff i:nth-child(4){--a:34px;--b:24px;animation-delay:.14s}.gb-puff i:nth-child(5){--a:0px;--b:-44px;animation-delay:.2s}.gb-sparkle{width:0;height:0}.gb-sparkle i{clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);opacity:0;filter:drop-shadow(0 0 6px #ffd34d);background:#ffe27a;width:14px;height:14px;margin:-7px;animation:.9s ease-out both gb-twinkle;position:absolute}.gb-sparkle i:first-child{--a:-42px;--b:-36px}.gb-sparkle i:nth-child(2){--a:44px;--b:-30px;animation-delay:80ms}.gb-sparkle i:nth-child(3){--a:-46px;--b:20px;animation-delay:.16s}.gb-sparkle i:nth-child(4){--a:40px;--b:34px;animation-delay:.1s}.gb-sparkle i:nth-child(5){--a:0px;--b:-52px;animation-delay:.22s}.gb-sparkle i:nth-child(6){--a:6px;--b:46px;animation-delay:40ms}.gb-paws{font-size:22px;animation:.6s ease-out both gb-paws;transform:translate(-50%,-50%)}.gb-fetch{z-index:6;pointer-events:none;position:absolute;inset:0}.gb-fetch-owner{width:32%;height:78%;animation:1.8s both gb-owner;position:absolute;bottom:-4%;left:-3%}.gb-fetch-owner .gb-img{object-position:bottom left}.gb-fetch-owner .gb-fallback{place-items:end start;height:100%;font-size:64px;display:grid}.gb-fetch-ball{width:calc(var(--cell)*.55);height:calc(var(--cell)*.55);animation:1s cubic-bezier(.3,.6,.6,1) .35s both gb-throw;position:absolute;bottom:44%;left:20%}.gb-fetch-ball .gb-fallback{font-size:calc(var(--cell)*.45)}.gb-treat{z-index:7;pointer-events:none;align-items:center;gap:6px;animation:.45s cubic-bezier(.3,1.6,.5,1) both gb-pop-in,.3s ease-in 1.15s forwards gb-fade;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gb-jar{filter:drop-shadow(0 4px 10px #0007);font-size:58px}.gb-treat strong{color:#ffe3f4;-webkit-text-stroke:2px #8a0a52;text-shadow:0 4px #8a0a52,0 0 24px #ff3ba7;font:900 54px/1 Impact,Arial Black,sans-serif}.gb-treat .gb-sparkle{top:50%;left:50%}.gb-callout{z-index:8;letter-spacing:1px;color:#fff;-webkit-text-stroke:2px #5a2a00;text-shadow:0 4px #5a2a00,0 0 22px #ffcf4d;white-space:nowrap;pointer-events:none;font:900 clamp(24px,8cqw,44px)/1 Impact,Arial Black,sans-serif;animation:1.4s cubic-bezier(.3,1.6,.5,1) both gb-callout;position:absolute;top:7%;left:50%;transform:translate(-50%)}.gb-callout.is-steal{color:#e2cdff;-webkit-text-stroke-color:#2e0a5a;text-shadow:0 4px #2e0a5a,0 0 22px #a86bff}.gb-callout.is-shrink{color:#d4f3ff;-webkit-text-stroke-color:#06405a;text-shadow:0 4px #06405a,0 0 22px #6fd6ff}.gb-callout.is-grow{color:#fff1b0;text-shadow:0 4px #6b4a00,0 0 30px #ffd34d}.gb-callout.is-fetch{color:#e2ffb8;-webkit-text-stroke-color:#1f4a06;text-shadow:0 4px #1f4a06,0 0 22px #9be04a}.gb-callout.is-treat{color:#ffe3f4;-webkit-text-stroke-color:#8a0a52;text-shadow:0 4px #8a0a52,0 0 22px #ff3ba7;top:auto;bottom:6%}.gb-banner{background:radial-gradient(#3a1d00ee 30%,#3a1d0099 75%,#0000)}.gb-banner small{color:#ffe08a}.gb-banner strong{color:#fff1b0;text-shadow:0 0 30px #ffb43a99}.gb-banner span{color:#fff2d8}.gb-banner-art{aspect-ratio:1;width:clamp(56px,20cqw,110px);margin-bottom:4px;display:block;container-type:size}.gb-banner-art .gb-fallback{place-items:center;height:100%;font-size:70cqmin;display:grid}.gb-banner-art.is-dog{filter:drop-shadow(0 0 18px #ff2bd6);width:clamp(80px,28cqw,170px);animation:.4s ease-in-out .9s infinite gb-pump}.gb-banner.is-retrigger{background:radial-gradient(#4a0024ee 30%,#4a002499 75%,#0000)}.gb-banner.is-retrigger strong{color:#ffd0ec;text-shadow:0 0 30px #ff2bd6}.gb-banner.is-trigger{background:radial-gradient(#14000ef2 35%,#3a0024cc 70%,#ff1f4b33)}.gb-banner.is-trigger>span:last-child{letter-spacing:4px;color:#ffd0ec;margin-top:6px;font:900 15px/1 Arial,sans-serif}.gb-impact{flex-direction:column;align-items:center;gap:2px;display:flex;transform:skew(-8deg);text-shadow:none!important;margin:2px 0!important;font-family:Impact,Arial Black,sans-serif!important;font-weight:900!important}.gb-impact span{letter-spacing:1px;color:#fff;-webkit-text-stroke:2px #ff1f4b;text-shadow:0 0 18px #ff2bd6,0 5px #6a0020,4px 0 #ff2bd6,-4px 0 #00e5ff;font-size:clamp(30px,12cqw,68px);line-height:.92;animation:.5s cubic-bezier(.2,1.6,.4,1) both gb-slam;display:block}.gb-impact span:first-child{animation-delay:.9s}.gb-impact span:nth-child(2){color:#ffe3f4;font-size:clamp(36px,15cqw,84px);animation-delay:1.15s}.gb-impact span:nth-child(3){animation-delay:1.4s}.gb-banner.is-big strong{letter-spacing:1px;font-family:Impact,Arial Black,sans-serif}.gb-cabinet.is-ultra .gb-banner.is-big,.gb-banner.is-end{background:radial-gradient(#14000ef2 35%,#3a0024cc 70%,#0000)}.gb-banner.is-end strong{color:#ffe3f4;text-shadow:0 0 30px #ff2bd6,3px 0 #ff1f4b,-3px 0 #00e5ff}.gb-cabinet.is-ultra{background:linear-gradient(160deg,#3a0020,#0a0006 14%,#120010 86%,#4a0030);border-color:#ff2b6a;animation:.4s ease-out infinite gb-bass;box-shadow:0 0 0 2px #ff2bd666,0 0 46px #ff1f4b77,inset 0 0 30px #ff2bd633}.gb-cabinet.is-ultra .gb-board{background:linear-gradient(#0006,#0006),url(/slots/goodboy/bg-ultra.webp) 50%/cover no-repeat,radial-gradient(circle at 50% 40%,#5a0030,#0a0008);border-color:#ff2bd6}.gb-cabinet.is-ultra .gb-reel{background:#1a000ed0;box-shadow:inset 0 0 0 1px #ff2bd666,0 0 12px #ff1f4b33}.gb-cabinet.is-ultra .gb-reel.is-dog{background:#4a0024e0;box-shadow:inset 0 0 0 2px #ff2bd6,0 0 22px #ff2bd6aa}.gb-cabinet.is-ultra .gb-coin-v{color:#2a0010}.gb-cabinet.is-ultra .gb-cell.is-dog .gb-sym{filter:drop-shadow(0 0 10px #ff2bd6)drop-shadow(0 0 3px #ff1f4b)}.gb-cabinet.is-ultra .gb-porch-size small{color:#ff5fe0}.gb-cabinet.is-ultra .gb-ladder i.on{color:#fff;background:linear-gradient(130deg,#ff5fe0,#ff1f4b);box-shadow:0 0 16px #ff2bd6}.gb-cabinet.is-ultra .gb-bank{box-shadow:inset 0 0 0 1px #ff2bd666,0 0 14px #ff2bd633}.gb-cabinet.is-ultra .gb-bank strong{color:#ffd0ec}.gb-cabinet.is-ultra .gb-callout{-webkit-text-stroke-color:#6a0020;text-shadow:0 4px #6a0020,0 0 22px #ff2bd6,3px 0 #00e5ff99}.gb-rave{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.gb-speed{background:repeating-conic-gradient(from 0deg,#ffffff12 0 2deg,transparent 2deg 11deg);animation:8s linear infinite gb-turn;position:absolute;inset:-60%}.gb-laser{transform-origin:50% 100%;opacity:.75;background:linear-gradient(#ff2bd600 15%,#ff2bd6);width:3px;height:150%;animation:2.4s ease-in-out infinite alternate gb-laser;position:absolute;bottom:-8%;left:50%;box-shadow:0 0 10px #ff2bd6,0 0 22px #ff2bd6}.gb-laser.l2{background:linear-gradient(#ff1f4b00 15%,#ff1f4b);animation-duration:3.1s;animation-delay:-1s;left:12%;box-shadow:0 0 10px #ff1f4b,0 0 22px #ff1f4b}.gb-laser.l3{opacity:.5;background:linear-gradient(#00e5ff00 15%,#00e5ff);animation-duration:2.7s;animation-direction:alternate-reverse;left:88%;box-shadow:0 0 10px #00e5ff}.gb-strobe{mix-blend-mode:screen;opacity:0;background:radial-gradient(circle at 50% 45%,#ff2bd633,#ff1f4b22 60%,#0000 85%);animation:.5s linear infinite gb-strobe;position:absolute;inset:0}@keyframes gb-spin-reel{0%{transform:translateY(calc(var(--cell)*-8 - var(--gap)*8))}to{transform:translateY(0)}}@keyframes gb-out{to{visibility:hidden}}@keyframes gb-land{0%{opacity:0;transform:translateY(-60%)}60%{opacity:1;transform:translateY(6%)}to{transform:none}}@keyframes gb-tease{0%{box-shadow:0 0 0 2px #ff3b3b,0 0 12px #ff5a1f}to{box-shadow:0 0 0 3px #ffd34d,0 0 30px #ff5a1f}}@keyframes gb-pulse{0%{transform:scale(1)}to{transform:scale(1.12)}}@keyframes gb-fly{0%{transform:none}30%{transform:translateY(-14%)scale(1.2)}to{transform:translate(calc(var(--dx)*(100% + var(--gap))),calc(var(--dy)*(100% + var(--gap)))) scale(.15);opacity:0}}@keyframes gb-chomp{0%{transform:scale(var(--scale))}35%{transform:scale(calc(var(--scale)*1.2)) rotate(-7deg)}70%{transform:scale(calc(var(--scale)*.94)) rotate(3deg)}to{transform:scale(var(--scale))}}@keyframes gb-sad{0%{transform:scale(calc(var(--scale)*1.15))}30%{transform:scale(calc(var(--scale)*1.1),calc(var(--scale)*.8)) rotate(-4deg);filter:grayscale(.6)brightness(.85)}60%{transform:scale(calc(var(--scale)*.95)) rotate(3deg);filter:grayscale(.5)}to{transform:scale(var(--scale))}}@keyframes gb-grow{0%{transform:scale(calc(var(--scale)*.8))}50%{transform:scale(calc(var(--scale)*1.25));filter:drop-shadow(0 0 16px #ffd34d)brightness(1.2)}to{transform:scale(var(--scale))}}@keyframes gb-hop{0%{transform:translateX(40%) scale(var(--scale))}50%{transform:translate(20%,-18%) scale(var(--scale))}to{transform:scale(var(--scale))}}@keyframes gb-swipe{0%{transform:translate(0)rotate(0)}to{transform:translate(-10%,-18%)rotate(-12deg)scale(1.1)}}@keyframes gb-wobble{0%{transform:rotate(-8deg)scale(1.05)}to{transform:rotate(8deg)scale(1.12)}}@keyframes gb-rain{0%{transform:translateY(calc(var(--cell)*-3));opacity:0}60%{opacity:1;transform:translateY(6%)}to{opacity:1;transform:none}}@keyframes gb-pop{0%{opacity:0;transform:translate(-50%,-20%)scale(.5)}25%{opacity:1;transform:translate(-50%,-70%)scale(1.15)}to{opacity:0;transform:translate(-50%,-160%)scale(1)}}@keyframes gb-pop-in{0%{opacity:0;scale:.3}to{opacity:1;scale:1}}@keyframes gb-fade{to{opacity:0}}@keyframes gb-steal{0%{transform:translate(calc((4 - var(--x))*var(--cell)),calc((var(--y) + 1.4)*var(--cell)*-1)) scale(.9);opacity:0}20%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(.5)}}@keyframes gb-puff{0%{opacity:.95;transform:scale(.3)}to{opacity:0;transform:translate(var(--a),var(--b)) scale(1.4)}}@keyframes gb-twinkle{0%{opacity:0;transform:scale(.2)rotate(0)}30%{opacity:1}to{opacity:0;transform:translate(var(--a),var(--b)) scale(1.3) rotate(160deg)}}@keyframes gb-paws{0%{opacity:0;transform:translate(-20%,-50%)scale(.6)}40%{opacity:.9}to{opacity:0;transform:translate(-80%,-50%)scale(1)}}@keyframes gb-owner{0%{transform:translate(-110%)}20%{transform:none}30%{transform:rotate(-6deg)}45%{transform:rotate(4deg)}75%{opacity:1;transform:none}to{opacity:0;transform:translate(-110%)}}@keyframes gb-throw{0%{opacity:1;transform:translate(0)rotate(0)}50%{transform:translate(34cqw,calc(var(--cell)*-1.3)) rotate(360deg)}90%{opacity:1}to{transform:translate(70cqw,calc(var(--cell)*.5)) rotate(720deg);opacity:0}}@keyframes gb-callout{0%{opacity:0;transform:translate(-50%)scale(2.4)rotate(-6deg)}20%{opacity:1;transform:translate(-50%)scale(1)rotate(-3deg)}80%{opacity:1;transform:translate(-50%)scale(1.05)rotate(-3deg)}to{opacity:0;transform:translate(-50%)translateY(-10px)scale(1.1)rotate(-3deg)}}@keyframes gb-slam{0%{opacity:0;transform:scale(3)}to{opacity:1;transform:none}}@keyframes gb-shake{0%,to{transform:none}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}@keyframes gb-bass{0%{transform:scale(1)}10%{transform:scale(1.008)}35%{transform:scale(1)}}@keyframes gb-turn{to{transform:rotate(360deg)}}@keyframes gb-laser{0%{transform:rotate(-38deg)}to{transform:rotate(38deg)}}@keyframes gb-strobe{0%{opacity:.9}18%{opacity:.15}to{opacity:0}}@keyframes gb-wag{0%{transform:rotate(-3deg)translateY(0)}to{transform:rotate(3deg)translateY(-4px)}}@keyframes gb-pump{0%,to{transform:scale(1)}12%{transform:scale(1.07)rotate(-2deg)}40%{transform:scale(.99)}}@keyframes gb-roll-over{0%{transform:none}60%{transform:translateY(-10px)rotate(340deg)}to{transform:rotate(360deg)}}@keyframes gb-jump{0%,to{transform:none}40%{transform:translateY(-26px)scale(1.05,.95)}70%{transform:translateY(0)scale(1.08,.9)}}@keyframes gb-beg{0%,to{transform:none}20%,60%{transform:translateY(-8px)rotate(-6deg)}40%,80%{transform:translateY(-8px)rotate(6deg)}}@media (max-width:900px){.gb-cabinet{--cell:66px}}@media (max-width:620px){.gb-cabinet{--cell:56px;--gap:3px}.gb-board{padding:6px}.gb-porch{grid-template-columns:auto minmax(0,1fr) auto;gap:6px;height:54px;padding:0 2px 5px}.gb-porch-owner{display:none}.gb-porch-dog{width:40px;height:40px}.gb-porch-dog .gb-fallback{font-size:30px}.gb-ladder{gap:2px}.gb-ladder i{padding:3px 4px;font-size:9.5px}.gb-bank{min-width:0;padding:4px 7px}.gb-bank strong{font-size:14px}.gb-coin-v{font-size:12px}.gb-coin-v[data-len=m]{font-size:10px}.gb-coin-v[data-len=l]{font-size:8px}.gb-pop{font-size:17px}.gb-pop.is-size{font-size:12px}.gb-jar{font-size:40px}.gb-treat strong{font-size:38px}.gb-hud-ultra{padding:4px 6px;font-size:11px}}@media (max-width:360px){.gb-cabinet{--cell:50px}.gb-ladder i{padding:3px;font-size:9px}}@media (prefers-reduced-motion:reduce){.gb-strobe,.gb-speed{display:none}.gb-laser{transform:rotate(-20deg);animation:none!important}.gb-laser.l2{transform:rotate(25deg)}.gb-laser.l3{transform:rotate(-8deg)}.gb-cabinet.is-ultra,.slot-host.is-ultra .gb-character,.gb-banner-art.is-dog{animation:none!important}.gb-strip,.gb-cell{animation-duration:1ms!important}}.gb-intro{z-index:200;background:#000;place-items:center;animation:.4s ease-out gb-intro-in;display:grid;position:fixed;inset:0}.gb-intro video{object-fit:contain;background:#000;width:100%;height:100%}.gb-intro-bar{right:16px;bottom:max(16px,env(safe-area-inset-bottom));gap:10px;display:flex;position:absolute}.gb-intro-bar button{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;background:#0009;border:1px solid #fff6;border-radius:999px;padding:10px 16px;font-weight:800}.gb-intro-bar button:hover{background:#000c;border-color:#fff}@keyframes gb-intro-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.gb-intro{animation:none}}.gb-logo{filter:drop-shadow(0 4px 10px #00000059);width:auto;height:clamp(44px,7vw,72px);display:block}@media (max-width:620px){[data-theme=good-boy] .slot-host .gb-character{width:80px;margin-top:10px}}
