.cjAnimatedCard {
    pointer-events: none;
    z-index: 6000;
}

.cjPiece.animated {
    pointer-events: none;
    z-index: 6000;
}

@media (prefers-reduced-motion: reduce) {
    #game * { transition: none !important; }
}

.cjOuterSquare.cjLastMoveAffected {
    display: flex;
    grid-area: auto;
    position: absolute;
    visibility: visible;
}
.cjSquare.cjLastMoveAffected:not(.cjPendingMoveTarget):not(.cjKingInCheck):not(.cjCheckingPiece)::before {
    background: #62c98c52;
    border: calc(var(--cj-square-size) * .024) solid #62c98c;
    box-shadow: inset 0 0 calc(var(--cj-square-size) * .072) #0005;
    box-sizing: border-box;
    content: "";
    inset: 5%;
    pointer-events: none;
    position: absolute;
    z-index: 0;
}

.cjCardSlot { position: relative; }
.cjDepartedCardPlaceholder { position: absolute; inset: 0; pointer-events: none; }

.cjCardInMotion .cjCardHelp { visibility: hidden; }

.cjMovingCardFrame {
    aspect-ratio: 7 / 5;
    pointer-events: none;
}

.cjMovingCardFrame > .cjCard {
    will-change: transform;
}
