love-game {
    display: flex;
    justify-content: center;
    position: relative;
    margin-inline: auto;
    color: #FFF;
    margin-block: 1rem;

    & *+* {
        box-sizing: border-box;
    }

    & img {
        display: block;
        object-fit: cover;
    }

    /* the canvas *must not* have any border or padding, or mouse coords will be wrong */
    & canvas {
        padding: 0;
        border: none;
        display: block;
        background: #000;
        height: auto;
        max-width: 100%;
    }

    & img + canvas {
        display: none;
    }

    & .pregame,
    & noscript {
        width: 100%;
        height: 100%;
    }

    & .pregame {
        position: absolute;
        top: 0;
        left: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 2rem;

        & button[type="submit"] {
            cursor: pointer;
            padding: 2rem 4rem;
            border: none;
            background: #FFF;
            box-shadow: 0px 0px 0px rgba(255, 255, 255, 0);
            font-size: 2rem;
            font-weight: 600;
            text-transform: uppercase;
            color: #000;
            transition: 0.125s ease-in-out all;

            &:hover {
                scale: 1.2;
                background: #FFF;
                box-shadow: 5px 5px 0px rgba(255, 255, 255, 0.5);
            }

            small {
                font-size: 1rem;
                font-weight: 400;
                display: block;
                color: #333;

                &::before {
                    content: "(";
                }

                &::after {
                    content: ")";
                }
            }
        }
    }

    & noscript {
        position: absolute;
        top: 0;
        left: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: center;
        font-size: 2rem;
        padding: 2rem;
    }
}
