body.v2-enhanced .stage{position:relative;isolation:isolate;border:1px solid #49718a;box-shadow:0 0 20px #62dded22,inset 0 0 30px #1c4d6550}
.v2-visual-layer{position:absolute;z-index:3;pointer-events:none;touch-action:none;image-rendering:pixelated}
.v2-enhanced #overlay{z-index:5}.v2-enhanced .under-board{flex-wrap:wrap;gap:8px}.v2-enhanced .under-board #fx-mode{margin-left:auto}
.v2-enhanced #v2-finish-label{display:none;color:#76e5f4;font:900 18px/1.3 ui-monospace,monospace;letter-spacing:.17em;text-shadow:0 0 12px #45d8ed}
.v2-enhanced #overlay.v2-clear #v2-finish-label,.v2-enhanced #overlay.v2-game-over #v2-finish-label{display:block;animation:v2-finish .65s ease-out both}
.v2-enhanced #overlay.v2-clear .overlay-card{box-shadow:0 0 0 1px #70e8ee,0 0 28px #42d8e866}.v2-enhanced #overlay.v2-game-over .overlay-card{filter:saturate(.64);box-shadow:0 0 0 1px #aa79aa,0 0 18px #a6559b44}
.v2-enhanced .stage.v2-pulse{animation:v2-small-pulse .17s ease-out}.v2-enhanced .stage.v2-dim{animation:v2-small-dim .22s ease-out}
.v2-enhanced #tile-grid[data-type=pairs] button{transition:transform .22s ease,background .22s ease,box-shadow .22s ease;backface-visibility:hidden}
.v2-enhanced #tile-grid[data-type=pairs] button.v2-flip{animation:v2-card-flip .23s ease-out}.v2-enhanced #tile-grid[data-type=pairs] button.v2-match{box-shadow:0 0 12px #d7a2ff;border-color:#d7a2ff}
.v2-enhanced #tile-grid[data-type=pairs].v2-complete button.matched{animation:v2-wave .6s ease-out both;animation-delay:calc(var(--card-index,0)*25ms)}
.v2-enhanced #tile-grid[data-type=merge] .number-tile.fresh{animation:v2-grow .22s ease-out;box-shadow:0 0 11px #ffe1a3a0}
@keyframes v2-finish{from{opacity:0;transform:scale(.91)}to{opacity:1;transform:scale(1)}}
@keyframes v2-small-pulse{50%{filter:brightness(1.12)}}@keyframes v2-small-dim{50%{filter:brightness(.9)}}
@keyframes v2-card-flip{50%{transform:scaleX(.1)}100%{transform:scaleX(1)}}
@keyframes v2-wave{50%{box-shadow:0 0 14px #c69cff;transform:translateY(-2px)}}
@keyframes v2-grow{0%{transform:scale(.86)}55%{transform:scale(1.07)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.v2-enhanced .stage.v2-pulse,.v2-enhanced .stage.v2-dim,.v2-enhanced #tile-grid button.v2-flip,.v2-enhanced #tile-grid button.v2-match,.v2-enhanced #tile-grid button.matched,.v2-enhanced #tile-grid .number-tile.fresh,.v2-enhanced #v2-finish-label{animation:none!important;transition:none!important}}
