.game-ui--container {
    z-index: 0;
    width: 90vmin;
    height: 90vmin;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* Actual Button */
.game-ui--button {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    cursor: pointer;
    text-transform: uppercase;
    border-radius: 0.5rem;
    width: 2rem;
    height: 2rem;
    transition: 200ms;
    user-select: none;
    padding: 0 !important;
    margin: 0;
    background: transparent;
    border: 0;
    pointer-events: all;
}
.game-ui--button:hover,
.game-ui--button:focus {
    transform: translateY(2px);
}
.game-ui--button:focus {
    transition: 0;
    outline: none;
    box-shadow: 0 0 0 4px #0e0b0e;
    transform: translateY(0);
}
.game-ui--button:active {
    transform: translateY(4px);
    transition: 50ms;
}

/* Button Background */
.game-ui--button:hover::before,
.game-ui--button:focus::before {
    background-color: #81b4c2;
}
.game-ui--button:focus::before {
    background-color: #ffaa50;
}
.game-ui--button:active::before {
    background-color: #ff5050;
}
.game-ui--button::before {
    content: '';
    position: absolute;
    z-index: -1;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 0.5rem;
    background-color: #95bec9;
}

/* Button "Border" */
.game-ui--button::after {
    content: '';
    position: absolute;
    z-index: -2;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 0.5rem;
    background-color: #364242;
    transform: translate3d(0, 6px, 0);
    transition: 100ms;
}
.game-ui--button:hover::after,
.game-ui--button:focus::after {
    transform: translate3d(0, 4px, 0);
}
.game-ui--button:active::after {
    transform: translate3d(0, 2px, 0);
}

/* Button Positioning */
.game-ui--button__top {
    position: absolute;
    top: calc(50% - 45vmin + 1vmin);
}
.game-ui--button__right {
    position: absolute;
    right: calc(50% - 45vmin + 1vmin);
}
.game-ui--button__bottom {
    position: absolute;
    bottom: calc(50% - 45vmin + 1vmin + 3px);
}
.game-ui--button__left {
    position: absolute;
    left: calc(50% - 45vmin + 1vmin);
}

.game-ui--score-wrapper {
    display: inline-block;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: calc(50% + 45vmin - 15vmin + 0.65vmin);
    height: 15vmin;
    left: 50%;
    transform: translateX(-50%) skewX(0) rotate(0deg);
    background-color: #101414;
    background-blend-mode: screen;
    padding: 2vmin 1.5vmin 3vmin;
    border-radius: 1vmin;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border: 0.2vmin solid #95bec9;
    border-bottom: 0 solid #101414;
    /* box-shadow: 2.5vmin -1vmin 0.6vmin rgba(0, 0, 0, 0.15); */
}

.game-ui--score {
    display: block;
    font-size: 5vmin;
    font-weight: bold;
    line-height: 1;
    color: #ff5050;
    text-align: center;
    padding-bottom: 0.25vmin;
    border-bottom: 1px solid rgba(255, 255, 255, 0.7);
    margin-bottom: 0.25vmin;
    letter-spacing: -0.25vmin;
}

.game-ui--high-score-label {
    display: block;
    text-transform: uppercase;
    margin-top: 0.75vmin;
    white-space: nowrap;
    font-size: 1.125vmin;
    font-weight: bold;
    letter-spacing: 0.0625vmin;
    text-align: center;
    color: rgba(255, 255, 255, 0.7);
}

.game-ui--high-score {
    text-align: center;
    font-size: 2.5vmin;
    color: rgba(255, 255, 255, 0.8);
}
