:root {
    --cell-dark: #161814;
    --cell-light: #a7a797;
    --spread-border-color: #614646;
}

div.chess-board-container{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100vh;
    width: 100vw;
    background-color: var(--cell-dark);
}

div.chess-legend-top{
    position: fixed;
    top: 0.5rem;
    left: 50%;
    transform: translateX(-50%);
    font-size: 2rem;
    font-weight: bold;
    color: var(--spread-border-color);
    z-index: 1000;
    color: white;
}

div.chess-side-board{
    width: fit-content;
    height: fit-content;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 1rem;
}

@media (orientation: portrait) {
    div.chess-side-board {
        flex-direction: column;
        row-gap: 1rem;
    }

    div.chess-container {
        width: calc(min(100vw, 100vh) - 10rem);
    }
}

@media (orientation: landscape) {
    div.chess-side-board {
        flex-direction: row;
    }

    div.chess-container {
        height: calc(min(100vw, 100vh) - 10rem);
    }
}

div.chess-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0.5rem;
    padding: 0;
    justify-content: center;
    /*height: calc(min(100vw, 100vh) - 5rem);*/
    aspect-ratio: 1 / 1;

    div.chess-container-row{
        display: flex;
        flex-direction: row;
        width: 100%;
        height: calc((100% - 1rem) / 8);
        position: relative;
        
        div.chess-container-row-col {
            width: calc((100% - 1.5rem) / 8);
            display: flex;
            justify-content: center;
            align-items: center;    
            position: relative;
        }

        div.chess-container-row-col i{
            font-size: calc(min(100vw, 100vh) * 0.075);
        }
        @media (max-width: 768px) {
            div.chess-container-row-col i {
                font-size: 2.5rem;
            }
        }


        div.chess-container-row-col-black{
            background-color: var(--cell-dark);
        }

        div.chess-container-row-col-white {
            background-color: var(--cell-light);
        }

        div.chess-container-row-col.item-white{
            color: aquamarine;
        }

        div.chess-container-row-col.item-black{
            color: rgb(139, 135, 135);
        }


        div.chess-container-row-col:hover {
            background-color: cadetblue;
        }

        div.chess-container-row-col.highlighted {
            background-color: orange;
        }

        div.chess-container-row-col.next-move {
            background-color: slateblue;
            border-color: violet;
            border: 0.01rem solid;
        }

        div.chess-container-row-col.next-move:hover {
            background-color: darkslateblue;        
        }

        div.chess-container-row-col.next-capture {
            background-color: rgb(187, 133, 143);
            border-color: red;
            border: 0.01rem solid;
        }

        div.col-Number{
            display: flex;
            justify-content: center;
            align-items: center;
            width: 1.5rem;
            height: 100%;
            font-size: 2rem;
            font-weight: bold;
            color: #dad3d3;
        }

        div.col-Letters{
            display: flex;
            justify-content: center;
            align-items: center;
            width: calc((100% - 1.5rem) / 8);
            height: 1.5rem;
            font-weight: bold;
            font-size: 2rem;
            color: #dad3d3;
        }

        div.chess-container-row-col[data-col="A"]{
            border-left: var(--spread-border-color) 0.25rem solid;
        }

        div.chess-container-row-col[data-col="H"]{
            border-right: var(--spread-border-color) 0.25rem solid;
        }

        div.chess-container-row-col.row-border-top{
            border-top: var(--spread-border-color) 0.25rem solid;
            
        }

        div.chess-container-row-col.row-border-top[data-col="A"]{
            border-top-left-radius: 0.5rem;
        }

        div.chess-container-row-col.row-border-top[data-col="H"]{
            border-top-right-radius: 0.5rem;
        }

        div.chess-container-row-col.row-border-bottom{
            border-bottom: var(--spread-border-color) 0.25rem solid;
            
        }

        div.chess-container-row-col.row-border-bottom[data-col="A"]{
            border-bottom-left-radius: 0.5rem;
        }

        div.chess-container-row-col.row-border-bottom[data-col="H"]{
            border-bottom-right-radius: 0.5rem;
        }
    }

    div.chess-container-row-letters{
        height: 1rem;
        width: 100%;
        display: flex;
        flex-direction: row;
    }

    

    
}

.chess-side-board-tracking {
    width: 25rem;
    height: 100%;
    font-size: 1rem;
    color: white;
    opacity: 0.5;
    background-color: beige;
}

div.message-box{
    position: fixed;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
    background-color: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 1rem 2rem;
    border-radius: 0.5rem;
    font-size: 1.2rem;
    z-index: 1000;
    display: none;
    width: calc(min(100vw, 100vh) - 5rem);
}

div.chess-side-board-tracking-controls-buttons {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    column-gap: 0.2rem;
    margin-top: 0.5rem;

    button {
        padding: 0.5rem 1rem;
        font-size: 0.8rem;
        border-radius: 0.25rem;
        border: transparent 0.1rem solid;
        cursor: pointer;
        background-color: var(--spread-border-color);
        color: white;

        &:hover {
            background-color: whitesmoke;
            color: black;
            border: var(--spread-border-color) 0.1rem solid;
        }

        span{
            font-weight: normal;
        }
    }
}

div.chess-side-board-tracking-controls-info {
    margin-top: 0.5rem;
    padding: 0.5rem;
    font-size: 1rem;
    color: white;
    opacity: 0.8;
    text-align: center;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    div{
        color:#161814;
        font-weight: bold;
    }
}

div.chess-side-board-tracking-controls-moves{
    color: black    ;
}