div {
}

.container {
    display: flex;
    padding: 10vh 8vw 10vh 8vw;
    box-sizing: border-box;
    position: relative;
}

.left {
    height: 80vh;
    width: 80vh;
    box-sizing: border-box;
    position: relative;
}

.right {
    margin-left: 2vw;
    width: 15vw;
    font-size: 120%;
}

#board {
    display: relative;
}

#canvas {
    position: absolute;
    top: 0; left: 0;
    background-color: rgb(0,0,255,0.1);
}

.board-row {
    border: 1px solid black;
    display: flex;
}

.board-square {
    height: 8vh;
    width: 8vh;
    border: 1px solid black;
    /* margin: px; */
    text-align: center;
    display: flex; 
    justify-content: center;
    align-items: center;
    font-size: 200%;
    box-sizing: border-box
}

.ladder {
    width: 6vh;
    position: absolute;
}

.ladder-bar {
    position: absolute;
    height: 100%;
    width: 20%;
    background-color: #966f33aa;
    border-radius: 8px;
    border: 1px solid black;
}

.ladder-bar-1 {
    left:0;
}

.ladder-bar-2 {
    right:0;
}

.ladder-step-container {
    position: absolute;
    top:0; bottom:0; left:0; right:0;
    overflow: hidden;
    margin: 0 0 1em 0;
    box-sizing: border-box;
}

.ladder-step {
    width: 60%;
    background-color: #966f33aa;
    height: 1em;
    margin-left: 20%;
    margin-top: 2em;
    margin-bottom: 2em;
    box-sizing: border-box;
}

.snake {
    width: 6vh;
    position: absolute;
}

.snake-img {
    height:100%;
    width: 100%;
    object-fit: fill;
    opacity: 0.8;
}

.right .desc i {
    color: deepskyblue;
}

#generate-button {
    margin-top:1em;
    margin-bottom: 1em;
    font-size: 100%;
    background-color: white;
    border-radius: 8px;
    padding: 0.5em;
    width: 100%;
}

#generate-button:hover {
    background-color: #eeeeee;
}

table, th, td {
    border: 1px solid #888888;
    border-collapse: collapse;
}

table {
    width: 100%;
}

th, td {
    padding: 0.5em;
}

th {
    background-color: deepskyblue;
}

tr:nth-child(odd) {
    background-color: #eeeeee;
}

.animate-button {
    margin-top:1em;
    margin-bottom: 1em;
    font-size: 100%;
    background-color: white;
    border-radius: 8px;
    padding: 0.5em;
    width: 100%;
}

.animate-button:hover {
    background-color: #eeeeee;
}

#player {
    height: 6vh;
    width: 6vh;
    border-radius: 50%;
    background-color: rgb(255,0,0,0.4);
    position: absolute;
}

.extreme-right {
    margin-left: 2vw;
    height: 80vh;
    width: 15vw;
}

.extreme-right table {
    font-size: 90%;
}

.dijkstra-table-container {
    height: 50vh;
    width: 100%;
    overflow-y: scroll;
    border: 1px solid black;
}

#python-code {
    font-family:'Courier New', Courier, monospace;
    width: 90%;
    overflow-wrap: break-word;
    color: white;
    background-color: #444444;
    padding: 1em;
    margin-top: 1em;
    border-radius: 4px;
}