html, body {
    min-height: 100vh;
    width: 100%;
    padding: 0;

    overflow: hidden;
}

button {
    border: none;
    color: black;
    padding: 0;
    text-decoration: none;
    display: inline-block;
}

/* center hack (flex is silly) */
.center_items {
    display: flex;
    justify-content: center;
    align-items: center;
}

#layout {
    display: grid;
    row-gap: 1em;

    height: 80vh;
    width: 90%;
}

#strokes_per_minute_area, #stroke_area, #reset_area {
    height: 100%;
}

#strokes_per_minute_area {
    grid-row: 1 / span 1;
}

#stroke_area {
    grid-row: 2 / span 4;

    font-size: 2rem;
    background-color: cadetblue;
    border: 5px solid black;
} 
#stroke_area:active {
    background-color: #8fb6b8;
}

#reset_area {
    grid-row: 6 / span 1;

    font-size: 2rem;
    background-color: indianred;
    border: 5px solid black;
} 
#reset_area:active {
    background-color: #cf7878;
}