/* Candy Wid V4 board — comparison with original 512×1112 tutorial recording.
   Shared visual surface and movement on tutorial AND ordinary gameplay.
   Does not change any scoring or money code. */
body.wild-tutorial-page .wild-board-wrap,body.wild-match-page .wild-board-wrap{position:relative;isolation:isolate;overflow:visible!important}
body.wild-tutorial-page .wild-board,body.wild-match-page .wild-board{
 position:relative!important;display:grid!important;
 grid-template-columns:repeat(7,minmax(0,1fr))!important;
 grid-template-rows:repeat(8,minmax(0,1fr))!important;
 aspect-ratio:7/8!important;gap:1px!important;padding:5px!important;
 overflow:visible!important;border:1px solid rgba(255,255,255,.48)!important;border-radius:12px!important;
 background:linear-gradient(170deg,rgba(255,246,255,.36),rgba(242,212,255,.28))!important;
 box-shadow:0 0 0 6px rgba(255,231,255,.20),inset 0 0 15px rgba(255,255,255,.25),0 2px 9px rgba(167,63,151,.10)!important;
 touch-action:none!important;-webkit-user-select:none;user-select:none;
}
body.wild-tutorial-page .wild-board::before,body.wild-match-page .wild-board::before{
 content:'';position:absolute;z-index:-1;inset:-9px;border:1px solid rgba(255,255,255,.20);border-radius:19px;
 background:radial-gradient(circle,rgba(255,255,255,.31) 1.7px,transparent 2px) 0 0/13px 13px;
 opacity:.33;pointer-events:none;
}
body.wild-tutorial-page .wild-board .wild-cell,body.wild-match-page .wild-board .wild-cell,
body.wild-tutorial-page .wild-board .wild-cell:nth-child(even),body.wild-match-page .wild-board .wild-cell:nth-child(even){
 display:grid!important;place-items:center!important;min-width:0;min-height:0;
 padding:0!important;margin:0!important;border:1px solid rgba(255,255,255,.13)!important;
 border-radius:3px!important;background:rgba(255,242,255,.075)!important;box-shadow:none!important;opacity:1!important;
 touch-action:none!important;overflow:visible!important;
}
body.wild-tutorial-page .wild-board .wild-cell img,body.wild-match-page .wild-board .wild-cell img{
 display:block!important;width:93%!important;height:93%!important;object-fit:contain!important;
 filter:drop-shadow(0 2px 1px rgba(99,22,80,.43))!important;transform-origin:50% 54%;pointer-events:none;
}
body.wild-tutorial-page .wild-board .wild-cell[data-piece='C'] img,body.wild-match-page .wild-board .wild-cell[data-piece='C'] img{
 width:97%!important;height:97%!important;filter:drop-shadow(0 3px 2px rgba(92,25,69,.42))!important;
}
/* Guided moves: small backlight over four cells, no neon rectangles over entire board. */
body.wild-tutorial-page .wild-board .wild-cell.is-source,body.wild-tutorial-page .wild-board .wild-cell.is-target{
 z-index:3;background:rgba(255,226,247,.6)!important;border:1px solid rgba(255,255,255,.8)!important;
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.65),0 0 8px rgba(255,186,240,.65)!important;
}
body.wild-tutorial-page .wild-board .wild-cell.is-dragging,body.wild-match-page .wild-board .wild-cell.is-dragging{z-index:31}
body.wild-tutorial-page .wild-board .wild-cell.is-dragging img,body.wild-match-page .wild-board .wild-cell.is-dragging img{
 transform:translate3d(var(--drag-x,0px),var(--drag-y,0px),0) scale(1.07)!important;
 filter:drop-shadow(0 6px 6px rgba(101,45,86,.45))!important;
}
body.wild-tutorial-page .wild-board .wild-cell.is-fx-moving,body.wild-match-page .wild-board .wild-cell.is-fx-moving{z-index:25}
body.wild-tutorial-page .wild-board.cw-v4-hiding-tiles .wild-cell img,
body.wild-match-page .wild-board.cw-v4-hiding-tiles .wild-cell img{visibility:hidden!important}
.cw-v4-falling{position:absolute;z-index:30;overflow:visible;pointer-events:none;contain:layout style}
.cw-v4-moving-candy{position:absolute;display:block;object-fit:contain;padding:3px;box-sizing:border-box;
 filter:drop-shadow(0 2px 1px rgba(97,26,73,.44));will-change:transform;pointer-events:none}
/* Soft matching, brief sparkle & tiny colorful fragments, matching recording's sharp effects. */
body.wild-tutorial-page .wild-board .wild-cell.is-match img,
body.wild-match-page .wild-board .wild-cell.is-match img{
 animation:cw-v4-match .32s cubic-bezier(.24,.77,.36,1) both!important;
}
body.wild-tutorial-page .wild-board .wild-cell.is-crate-open img,
body.wild-match-page .wild-board .wild-cell.is-crate-open img{animation:cw-v4-crate .38s ease-out both!important}
body.wild-tutorial-page .wild-board .wild-cell.is-match::after,
body.wild-match-page .wild-board .wild-cell.is-match::after,
body.wild-tutorial-page .wild-board .wild-cell.is-crate-open::after,
body.wild-match-page .wild-board .wild-cell.is-crate-open::after{display:none!important}
@keyframes cw-v4-match{
 0%{opacity:1;transform:scale(1)}28%{opacity:1;transform:scale(1.10);filter:brightness(1.55) saturate(1.25)}
 62%{opacity:.85;transform:scale(.9)}100%{opacity:0;transform:scale(.3)}
}
@keyframes cw-v4-crate{
 0%{transform:scale(1) rotate(0);opacity:1}28%{transform:scale(1.1) rotate(-8deg);opacity:1}
 55%{transform:scale(1.17) rotate(7deg);filter:brightness(1.5)}100%{transform:scale(.35) rotate(0);opacity:0}
}
body.wild-tutorial-page .wild-fx,body.wild-match-page .wild-fx{overflow:visible!important;pointer-events:none!important;z-index:33!important}
/* Older diffuse fake smoke and bursts are disabled in favor of the shared effects below. */
body.wild-tutorial-page .wild-puff,body.wild-match-page .wild-puff,
body.wild-tutorial-page .wild-spark,body.wild-match-page .wild-spark,
body.wild-tutorial-page .wild-gain,body.wild-match-page .wild-gain,
body.wild-tutorial-page .wild-crate-ring,body.wild-match-page .wild-crate-ring{display:none!important}
.cw-v4-bloom{position:absolute;width:41px;height:41px;margin:-20.5px;z-index:2;pointer-events:none;border-radius:50%;
 background:radial-gradient(circle,white 0%,var(--bloom,#ffc2e0) 18%,transparent 65%);
 filter:drop-shadow(0 0 3px var(--bloom,#f8a4bd));animation:cw-v4-bloom .43s ease-out both}
@keyframes cw-v4-bloom{0%{opacity:.4;transform:scale(.4)}34%{opacity:.95;transform:scale(1.3)}100%{opacity:0;transform:scale(1.8)}}
.cw-v4-fragment{position:absolute;z-index:3;width:7px;height:7px;border-radius:3px 5px 2px 4px;
 margin:-3px;background:var(--c,#ffe76b);box-shadow:0 0 2px #fff,0 0 3px var(--c,#ffe76b);pointer-events:none;
 animation:cw-v4-spark .62s cubic-bezier(.16,.56,.26,1) var(--delay,0ms) both}
@keyframes cw-v4-spark{0%{opacity:1;transform:translate(0,0) scale(.7) rotate(0)}38%{opacity:1}100%{opacity:0;transform:translate(var(--tx,15px),var(--ty,-20px)) scale(.28) rotate(var(--angle,80deg))}}
.cw-v4-chest-burst{position:absolute;z-index:2;width:68px;height:68px;margin:-34px;border-radius:50%;pointer-events:none;
 background:radial-gradient(circle,#fff6a9c9 0%,#ffc43b80 32%,transparent 64%);box-shadow:0 0 18px #ffd55d55;
 animation:cw-v4-chest .65s ease-out both}
@keyframes cw-v4-chest{0%{opacity:0;transform:scale(.35)}36%{opacity:1;transform:scale(1.1)}100%{opacity:0;transform:scale(1.6)}}
.cw-v4-gain{position:absolute;z-index:7;min-width:max-content;transform:translateX(-50%);pointer-events:none;
 color:#fff35c;font-weight:1000;font-family:'Candy Baloo',system-ui,sans-serif;font-size:clamp(15px,4.7vw,26px);
 -webkit-text-stroke:2px #a93673;paint-order:stroke fill;text-shadow:0 2px 2px #6f1b64,0 0 5px #fff4b4;
 animation:cw-v4-float 1s ease-out both}
@keyframes cw-v4-float{0%{opacity:0;translate:0 13px;scale:.75}17%{opacity:1;translate:0 -9px;scale:1.13}55%{opacity:1;translate:0 -27px;scale:1}100%{opacity:0;translate:0 -49px;scale:.92}}
@media(prefers-reduced-motion:reduce){.cw-v4-falling,.cw-v4-bloom,.cw-v4-fragment,.cw-v4-chest-burst,.cw-v4-gain{animation:none!important;display:none!important}}
