* {
    margin: 0;
    padding: 0;
}

body {
    background-color: black;
}

div#wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 25px;
    width: 100vw;
    height: 100vh;
    background-color: black;
}

h1 {
    color: white;
}

table {
    border: 5px solid black;
    border-collapse: collapse;
}

tr:nth-child(3n){
    border-bottom: 5px solid black;
}

tr:last-child {
    border-bottom: none;
}

td {
    color: black;
    border: 3px solid black;
}

td:nth-child(3n) {
    border-right: 5px solid black;
}

td:last-child {
    border-right: none;
}

div#inputContainer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.box {
    background-color: white;
    font-size: 2em;
    text-align: center;
    align-content: center;
    width: 60px;
    height: 60px;
}

.box:hover {
    background-color: #8b0000;
    color: white;
    cursor: pointer;
}

.box:active {
    background-color: #ff5555;
}

div#buttonContainer {
    display: flex;
    gap: 25px;
}

div#solveButton {
    width: 120px;
}

div#clearButton {
    width: 120px;
}

@media (width < 600px)
{
   td {
    width: 40px;
    height: 40px;
   }

   div#inputContainer {
    display: flex;
    flex-wrap: wrap;
    width: 70vw;
    }

    .box {
        width: 40px;
        height: 40px;
    }
}