body, html {
    height: 100%;
    margin: 0%;
    display: flex;
    flex-direction: column;
    padding-bottom: 60px; /*    turns out this **is** needed for smaller    */
}                         /*    screens to display it properly.             */

main {
    flex: 100%;
}

.nullbox { /* empty box clas */
    height: 150px;
}

.topbar {
    width: auto;
    height: 60px;
    background-color: #eee;
    display: flex;
    align-items: center;
    padding: 0 10px;
    padding-top: 4px; /* idk why this breaks with 10 */
    padding-bottom: 10px;
    gap: 10px;
}

footer {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 15px;
    background-color: #eee;
    font-size: 0.9em;
}