body {
    background-color: black;
    height: 100vh;
    width: 100vw;
    overflow-x: hidden;
    overflow-y: hidden;
    margin: 0;
    font-family: monospace;
    color: white;
}

#outer_container {
    display: flex;
    height: inherit;
    width: inherit;
    justify-content: center;
    align-items: center;
    flex-direction: row;
}

#world_canvas {
    border: 1px solid white;
}

#rule-div {
    text-align: center;
    word-break: break-word;
}

#rule-div.hex {
    max-width: 32ch;
}

#rule-div.bin {
    max-width: 64ch;
}

#controls {
    display: flex;
    flex-direction: row;
    align-items: center;
}

#play-pause-control {
    display: flex;
    flex-direction: row;
    align-items: center;
}

#play-pause-btn {
    cursor: pointer;
    user-select: none;
    border: 2px solid white;
    border-radius: 100%;
    margin: 10px;
}

#play-pause-btn:hover {
    background-color: grey;
}

#speed-control {
    display: flex;
    flex-direction: column;
    align-items: center;
}

#switch-rule-display {
    user-select: none;
    cursor: pointer;
    border: 2px solid white;
    border-radius: 5px;
    padding: 5px;
}

#switch-rule-display:hover {
    background-color: grey;
}

#main-container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

#custom-rules-container {
    margin: 50px;
    padding: 50px;
    min-width: 20vw;
    width: 20vw;
    max-width: 20vw;
    max-height: 90vh;
    overflow-y: auto;
    overflow-x: hidden;
}

#rules-area {
    min-width: inherit;
    width: inherit;
    max-width: inherit;
}

#help-texts.active {
    display: block;
}

#help-texts.noactive {
    display: none;
}

#help-texts-label:hover {
    color: yellow;
    cursor: pointer;
    background-color: gray;
}

#apply-ruleset {
    border: 2px solid white;
    border-radius: 10px;
    width: fit-content;
    margin: 10px;
    padding: 10px;
    cursor: pointer;
}

#apply-ruleset:hover {
    background-color: grey;
}

#apply-game-of-life {
    cursor: pointer;
    margin: 10px;
}

#apply-game-of-life:hover {
    color: yellow;
    background-color: gray;
    width: fit-content;
}