:root {
    --radius: .5rem;
    --primary: #d9e8db;
    --secondary: #749e7b;
    --background: #f6faf5;
}

html {
    background-color: var(--background);
    padding: 1rem;
}

body {
    max-width: 69rem;
    margin: 0 auto;

    header {
        padding: 1rem;
        border-radius: var(--radius);
        border: 1px solid var(--secondary);
        background-color: #fff;
        margin-bottom: 1rem;

        aside {
            float: right;
            text-align: right;
        }
    }

    nav {
        padding: 1rem;
        margin: 1rem 0;
        border-radius: var(--radius);
        border: 1px solid var(--secondary);
        background-color: #fff;

        img.icon {
            vertical-align: middle;
        }

        .breadcrumps {
            span:not(:first-child)::before {
                content: '‹ '
            }
        }
    }

    main {
        padding: 1rem;
        padding-top: 0;
        border-radius: var(--radius);
        border: 1px solid var(--secondary);
        background-color: #fff;
    }

    fieldset {
        background-color: var(--background);
        border-radius: var(--radius);
    }

    table {
        border-radius: var(--radius);
        background-color: var(--background);
        border: 1px solid var(--secondary);
        width: 100%;
        overflow: hidden;
        border-spacing: 0;

        thead {
            background-color: var(--secondary);
        }
    }
}

article {
    display: flex;
    background-color: #fff;
    border-radius: var(--radius);
    border: 1px solid var(--secondary);
    margin: 1rem 0;

    aside {
        display: flex;
        flex-direction: column;
        float: right;
        width: 170px;
        border-left: 1px solid var(--secondary);
        padding-left: 1rem;
        margin: 1rem;

        img {
            min-width: 100%;
            image-rendering: pixelated;
        }
    }

    div {
        flex: 1;
        margin: 0 1rem;
    }
}

img.icon {
    image-rendering: pixelated;
    height: 1rem;
    width: 1rem;
    vertical-align: middle;
}

label.alert {
    display: block;
    background-color: beige;
    border-radius: var(--radius);
    padding: 1rem;
    margin-bottom: 1rem;

    &.error {
        background-color: #e8afaf;
        color: #581313
    }
}

hr {
    border: none;
    height: 1px;
    background-color: var(--secondary);
}

footer {
    text-align: center;
}