#board-wrap{position:relative;isolation:isolate}
.board-motion-layer{position:absolute;inset:0;z-index:5;pointer-events:none;overflow:visible;aspect-ratio:auto;border:0;background:none;box-shadow:none;display:block}
.board-motion-layer .motion-ghost{will-change:transform,opacity;pointer-events:none;backface-visibility:hidden}
.motion-hidden{visibility:hidden!important}
.board .cell{overflow:visible}
.victory-spark{position:absolute;width:7px;height:12px;border-radius:2px;pointer-events:none}
.cell.selected .piece{animation:ri-selected .9s ease-in-out infinite alternate}
.cell.legal:after{animation:ri-hint 1.5s ease-in-out infinite alternate}
.cell.winning .piece{animation:ri-winning 1.2s ease-in-out 3}
.cover-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.cover-card:hover{box-shadow:0 10px 30px #0004}
@keyframes ri-selected{from{filter:brightness(1)}to{filter:brightness(1.16)}}
@keyframes ri-hint{from{opacity:.6}to{opacity:1}}
@keyframes ri-winning{50%{filter:brightness(1.4)}}
@media(prefers-reduced-motion:reduce){.cell.selected .piece,.cell.legal:after,.cell.winning .piece{animation:none}.cover-card{transition:none}}
