// Messages are specific to Django's 'Messaging' system which adds messages into the session,
// for display on the next page visited. These appear as an animated banner at the top of the page.
//
// For inline help text, see typography.scss
.messages {
    position: relative;
    z-index: 5;
    background-color: $color-grey-1;

    .buttons {
        margin-left: 1em;
    }

    > ul {
        @include unlistimmediate();
        position: relative;
        top: -100px;
        opacity: 0;
    }

    > ul > li {
        // @include nice-padding;
        padding: 1.6em 3em 1.6em 1.6em;
        color: $color-white;
    }

    > ul > li:before {
        @include font-smoothing;
        margin-right: 0.5em;
        font-size: 1.5em;
        vertical-align: middle;
    }

    .error {
        background-color: $color-red-dark;

        &:before {
            font-family: wagtail;
            content: map-get($icons, 'warning');
        }
    }

    .warning {
        background-color: $color-orange-dark;

        &:before {
            font-family: wagtail;
            content: map-get($icons, 'warning');
        }
    }

    .success {
        background-color: $color-green-dark;

        &:before {
            font-family: wagtail;
            content: map-get($icons, 'success');
        }
    }

    .success .button:hover {
        background-color: $color-teal-dark;
    }

    .button-secondary {
        border-color: rgba(255, 255, 255, 0.5);
        color: $color-white;

        &:hover {
            border-color: transparent;
        }
    }

    .errorlist {
        margin: 0.5em 0 0 1em;
    }
}

.messages.new > ul {
    transition: none;
    top: -100px;
}

.ready .messages > ul,
.messages.appear > ul {
    transition: top 0.5s ease, opacity 0.5s ease, max-height 1.2s ease;
    opacity: 1;
    top: 0;
}

@include media-breakpoint-up(sm) {
    .messages > ul > li {
        padding-left: 1.6em;
        padding-right: 3em;
    }
}
