html {
    box-sizing: border-box;
}

*, *::before, *::after {
    box-sizing: inherit;
}

body {
    margin: 0;
}

.hidden {
    visibility: hidden;

    /* Test use */
    /* opacity: 0.5; */
}

.center {
    position: absolute;
    top: 47%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.btn {
    font-size: 1rem;
    display: block;
    margin-left: 0.75rem;
    margin-top: 1rem;
}

.msg {
    width: 100%;
    text-align: center;
    font-size: 3rem;
    transform: translate(-50%, -150%);
    z-index: 99;
}

.bold {
    font-weight: bold;
}

.ctrls-detail-ctnr {
    background-color: gray;
    margin-left: 0.75rem;
    margin-top: 1rem;
    width: fit-content;
    padding: 0.25rem;
    border-radius: 15px;
}

.ctrls-detail {
    color: white;
}

.ghost {
    opacity: 0.3;
}

.px {
    position: relative;
    background-color: black;

    /* Prevents ghost from overlapping on block */
    opacity: 1;
}

/* Create board */
.board {
    display: grid;
    grid-template-columns: repeat(1, 1fr);

    /* TEST USE */
    position: relative;
    z-index: 99;
    color: rgb(172, 114, 7);
}

.row {
    display: grid;
    grid-template-columns: repeat(10, 1fr);
}

.cell {
    border-top: 1px solid black;
    border-left: 1px solid black;
}

.cell:nth-child(10n) {
    border-right: 1px solid black;
}

.row:last-child .cell {
    border-bottom: 1px solid black;
}

.cell, .px {
    width: 2.35rem;
    height: 2.35rem;
}

/* Tetrimino Colors */
.T { background-color: purple; }
.Z { background-color: red; }
.S { background-color: green; }
.L { background-color: orange; }
.J { background-color: pink; }
.O { background-color: yellow; }
.I { background-color: aqua; }


@media (max-height: 800px) {
    .cell, .px {
        width: 2rem;
        height: 2rem;
    }
}

@media (max-height: 600px) {
    .cell, .px {
        width: 1.5rem;
        height: 1.5rem;
    }
}

@media (min-width: 700px) {
    .btn {
        font-size: 1.5rem;
    }
}

