/* As elm-css doesn't have support for CSS Grid, these styles still 
   have to be written in CSS.
*/

body {
    height: 100vh;
    display: grid;           
    grid-gap: 20px 0;
    gap: 20px 0;
    grid-template-columns: minmax(1fr, 100vw);
    grid-template-rows: 100px 50px 0 auto 0 80px;
    grid-template-areas:
        "header-logo"
        "navigation"
        "sidebar"
        "content"
        "sidebar2"
        "footer"
}

.sidebar {
    grid-area: sidebar;
}

.sidebar2 {
    grid-area: sidebar2;
}

.content {
    grid-area: content;
}

.header-logo {
    grid-area: header-logo;
}

.navigation {
    grid-area: navigation;
}

.footer {
    grid-area: footer;
}

@media only screen and (min-width: 600px) {
    body {
        grid-template-rows: 100px 1fr 80px;
        grid-template-columns: 1fr minmax(400px, 800px) 1fr;
        grid-template-areas:
            "header-logo navigation navigation"
            "sidebar     content    sidebar2"
            "footer      footer     footer";
    }
}
