*,
*::before,
*::after {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    border: none;
    outline: none;
}

body {
    min-height: 100vh;
    background: linear-gradient(90deg, #4b6cb7 0%, #182848 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
}

.container {
    display: grid;
    place-items: center;
    min-width: 600px;
    padding: 60px 0 40px;
    border-radius: 30px;
    background-color: rgba(0, 0, 0, 0.625);
    box-shadow: 0 0 20px rgba(0, 0, 0, .1);

    >.game {
        display: flex;
        gap: 160px;

        >.player {
            text-align: center;
            color: white;

            >h2 {
                margin-bottom: 30px;
            }

            >p {
                margin-top: 25px;
            }

            >.dice {
                position: relative;
                width: 100px;
                height: 100px;
                transform-style: preserve-3d;
                transition: 1s ease;
                transform-origin: center center;
                transform: rotateX(-20deg) rotateY(20deg);

                >.face {
                    position: absolute;
                    width: 100%;
                    height: 100%;
                    border-radius: 20px;
                    border: 5px solid rgb(246, 243, 240);
                    transform-style: preserve-3d;
                    background: linear-gradient(145deg, #dddbd8, #fff);

                    &::after {
                        content: '';
                        position: absolute;
                        top: 50%;
                        left: 50%;
                        width: 18px;
                        height: 18px;
                        border-radius: 50%;
                        background-color: rgb(19, 18, 16);
                    }
                }

                >.front {
                    transform: translateZ(50px);

                    &::after {
                        width: 30px;
                        height: 30px;
                        margin: -15px 0 0 -15px;
                    }
                }

                >.back {
                    transform: rotateX(180deg) translateZ(50px);

                    &::after {
                        margin: -35px 0 0 -30px;
                        box-shadow: 40px 0, 0 25px, 40px 25px, 0 50px, 40px 50px;
                        color: black;
                    }
                }

                >.top {
                    transform: rotateX(90deg) translateZ(50px);

                    &::after {
                        margin: -30px 0 0 -30px;
                        box-shadow: 40px 40px;
                        color: black;
                    }
                }

                >.bottom {
                    transform: rotateX(-90deg) translateZ(50px);

                    &::after {
                        margin: -36px 0 0 -36px;
                        box-shadow: 26px 26px, 52px 52px, 52px 0, 0 52px;
                        color: black;
                    }
                }

                >.right {
                    transform: rotateY(90deg) translateZ(50px);

                    &::after {
                        margin: -30px 0 0 -30px;
                        box-shadow: 40px 0, 0 40px, 40px 40px;
                        color: black;
                    }
                }

                >.left {
                    transform: rotateY(-90deg) translateZ(50px);

                    &::after {
                        margin: -35px 0 0 -35px;
                        box-shadow: 25px 25px, 50px 50px;
                        color: black;
                    }
                }

            }
        }
    }

    >.result {
        color: white;
        margin-top: 30px;
    }

    >button {
        cursor: pointer;
        color: white;
        background-color: goldenrod;
        margin-top: 60px;
        padding: 6px 12px;
        border-radius: 3px;
        font-weight: bold;
        font-size: 16px;
        text-transform: capitalize;
        transition: .5s;

        &:hover {
            color: rgb(136, 103, 20);
            background-color: white;
            border: 2px solid goldenrod;
        }
    }
}


@keyframes rolling {
    50% {
        transform: rotateX(455deg) rotateY(455deg);
    }
}