[draggable=true] {
    -khtml-user-drag: element;
    -webkit-user-drag: element;
    -khtml-user-select: none;
    -webkit-user-select: none;
}

:root {
    --rowNum: 15;
    --colNum: 15;
    --gridHeight: 50px;
    --gridWidth: 50px;
}

button {
    width: 100px;
    height: 15%;
}

label {
    padding: 1em;
}

body {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.table-top {
    display: grid;
    grid-column-gap: 1px;
    grid-template-rows: auto;
    grid-template-columns: 100%;
    /* background-color: grey; */
    padding: 1px;
    grid-template-areas: "player" "letters" "controls" "board" "score" "info";
}

.game-board {
    grid-area: board;
    display: inline-grid;
    /*grid-row-gap: 1px;*/
    /*grid-column-gap: 1px;*/
    grid-template-rows: repeat(var(--rowNum), var(--gridHeight));
    grid-template-columns: repeat(var(--colNum), var(--gridWidth));
    /*background-color: #2196F3;*/
    padding: 0px;
}

.game-board-location {
    /*background-color: cornsilk;*/
    border: 1px solid rgba(0, 0, 0, 0.2);
    /*font-size: 2em;*/
    text-align: center;
}

.game-score {
    grid-area: score;
    /* background-color: lightgrey; */
    font-size: 2em;
}

.player {
    grid-area: player;
    /* background-color: goldenrod; */
    font-size: 3em;
    height: 100%;
}

.player-letters {
    grid-area: letters;
    border-top: 1px solid rgba(105, 105, 105, 0.8);
    border-bottom: 1px solid rgba(105, 105, 105, 0.8);
    font-size: 1.5em;
    height: 100%;
    text-align: center;
}

.play-controls {
    grid-area: controls;
    /* background-color: skyblue; */
    font-size: 1.5em;
    height: 100%;
    text-align: center;
}

.play-controls button {
    height: 50px;
}

.game-info {
    grid-area: info;
    /* background-color: coral; */
    /*font-size: 1.5em;*/
    height: 100%;
    padding-left: 10px;
}

.hide {
    display: none;
    visibility: hidden;
}

.game-options {
    /* background-color: chocolate; */
    /*font-size: 1.5em;*/
    height: 100%;
    width: 33%;
}

/**** SPECIAL TILES ****/

.triple-word-location {
    background-color: red;
}

.triple-letter-location {
    background-color: pink;
}

.double-word-location {
    background-color: cornflowerblue
}

.double-letter-location {
    background-color: lightblue;
}

.start-location {
    /*box-shadow: inset 0 0 5px black;*/
    border: 1px dashed black;
}

.special-info {
    display: table-cell;
    text-transform: capitalize;
    padding: 2px;
    width: calc(var(--gridWidth) - 2px);
    height: calc(var(--gridHeight) - 2px);
    text-align: center;
    vertical-align: middle;
}

/**** END SPECIAL TILES ****/

/**** LETTER TILES ****/

.letter-piece {
    display: grid;
    background-color: gold;
    width: calc(var(--gridWidth) - 2px);
    height: calc(var(--gridHeight) - 2px);
    grid-template-areas: "letter letter side" "letter letter score" "foot foot score";
    /*border-style: outset;*/
    /*border: 1px solid black;*/
    box-shadow: inset 0 0 2px black;
}

.letter-display {
    display: inline-grid;
    background-color: gold;
    width: calc((var(--gridWidth) - 2px)*.75);
    height: calc((var(--gridHeight) - 2px)*.75);
    grid-template-areas: "letter letter side" "letter letter score" "foot foot score";
    /*border-style: outset;*/
    /*border: 1px solid black;*/
    box-shadow: inset 0 0 2px black;
}

.margin-left {
    margin-left: 3px;
}

.letter-piece-name {
    grid-area: letter;
    align-self: center;
    font-size: 30px;
}

.letter-display-name {
    grid-area: letter;
    align-self: center;
    font-size: 20px;
}

.letter-piece-points {
    grid-area: score;
    align-self: end;
    font-size: 15px;
}

.letter-display-points {
    grid-area: score;
    align-self: end;
    font-size: 10px;
}

.letter-piece-played {
    background-color: burlywood;
}

.center {
    /*border: 1px solid rgba(211, 211, 211, 0.8);*/
    display: flex;
    align-items: center;
    justify-content: center;
}

.letter-distribution {
    display: grid;
    grid-template-columns: var(--gridWidth) var(--gridWidth) var(--gridWidth) var(--gridWidth);
    
    row-gap: 5px;
    /*float: left;
    padding-left: 2em;*/
    text-align: center;
}

/**** END LETTER TILES ****/

@media only screen and (min-width: 768px) {
    .table-top {
        display: grid;
        grid-column-gap: 1px;
        grid-template-rows: 100px 100px 100px auto;
        /*grid-template-columns: 30% calc( var(--colNum) * var(--gridWidth) + var(--colNum) * 1px + 1px) auto;*/
        grid-template-columns: 1fr 1fr 1fr;
        /* background-color: grey; */
        padding: 1px;
        grid-template-areas: "player board info" "letters board info" "controls board info" "score board info";
    }
}