.puzzle-piece {
    width: 100px;
    height: 100px;
    cursor: grab;
    position: absolute;
    transform-origin: top left;
    transition: all .1s ease;
    pointer-events: auto;
}

.puzzle-piece svg {
    pointer-events: visiblePainted;
}

.overlay {
    pointer-events: none; /* Overlays should not block interaction */
}

.puzzle-container {
    width: 1000px;
    height: 800px;
    border: 1px solid #000;
    position: relative;
    margin: 0 auto;
    overflow: hidden;
    background-color: white;
}

#gridCanvas {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    pointer-events: none;
}

svg.color-changed path {
    fill: yellow !important;
}
