html,
body {
    height: 100%;
    margin: 0;
    font-family: sans-serif;
}

.app {
    height: 100%;
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 55px 1fr;
    grid-template-rows: auto 55px 1fr;
    -ms-grid-columns: auto 1fr;
    grid-template-columns: auto 1fr;
}

header {
    box-shadow: 0 2px 5px rgba(0, 0, 0, .16);
    grid-column: 1/-1;
    -ms-grid-column-span: 2;
    -ms-grid-row: 2;
    grid-row: 2;
    z-index: 500;
    background: white;
    justify-content: space-between;
    display: flex;
}

aside {
    background-color: #213e48;
    -ms-grid-row: 3;
    grid-row: 3;
    -ms-grid-column: 1;
    grid-column: 1;

    width: 200px;
}

@media (max-width: 992px) {
    aside {
        width: 64px;
    }
}

[role=main] {
    -ms-grid-row: 3;
    grid-row: 3;
    -ms-grid-column: 2;
    grid-column: 2;
    padding: 24px;
    overflow: auto;
}

.global-notification {
    grid-column: 1/-1;
    -ms-grid-column-span: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    color: white;
    background-color: #00749e;
    padding: 16px;
}

.logo {
    display: inline-block;
    background: url(/images/logo.svg) 50% 50% no-repeat;
    width: 75px;
    height: 36px;
    background-size: contain;
    margin: .5em;
}

.flexbox {
    display: flex;
}

.hidden {
    display: none;
}

.admin-panel {
    padding: 1em;
}