.warn,
.warning,
.info {
  font-style: normal;
  padding: 0.2em 0.66em 0.2em;
  display: inline-block;
  line-height: 1.5em;
  border-radius: 3px;
  box-shadow: 1px 1px 2px var(--msg-shadow);
}

.info {
  color: var(--msg-info-color);
  border: 1px solid var(--msg-info-border);
  box-shadow: none;
  background: url(msg-info.svg) no-repeat 0.75em 0.75em;
  background-size: 2.5em;
  background-color: var(--msg-info-background);
}

.warn,
.warning {
  color: var(--msg-warn-color);
  border: 1px solid var(--msg-warn-border);
  box-shadow: none;
  background: url(msg-warning.svg) no-repeat 0.75em 0.75em;
  background-size: 2.5em;
  background-color: var(--msg-warn-background);
}

.error,
.message,
.static-msg,
.success,
.warning-msg {
  padding: 1.25em 0.5em 0.5em 4em;
  margin-bottom: 1em;
  border-radius: 3px;
  box-shadow: 1px 1px 2px var(--msg-shadow);
}

.error {
  background: url(msg-error.svg) no-repeat 0.75em 0.75em;
  background-size: 2.5em;
  background-color: var(--msg-error-background);
  color: var(--msg-error-color);
  animation-name: kf-error;
  animation-duration: 0.5s;

  a {
    color: var(--msg-error-color);
  }
}

.message,
.static-msg {
  color: var(--msg-color);
  background: url(msg-std.svg) no-repeat 0.625em 1.125em;
  background-size: 2.5em;
  background-color: var(--msg-background);
}

.message {
  animation-name: kf-message;
  animation-duration: 0.5s;
}

.message a,
.static-msg a,
.message h3,
.static-msg h3 {
  color: var(--msg-color);
}

.success {
  color: var(--msg-success-color);
}

.success {
  background: url(msg-success.svg) no-repeat 0.75em 0.75em;
  background-size: 2.5em;
  background-color: var(--msg-success-background);
  animation-name: kf-success;
  animation-duration: 0.5s;
}

.success a,
.warning-msg a,
.info a {
  color: var(--msg-info-color);
}

.notice-ts {
  font-size: 0.875em;
  padding: 2px 0.5em;
  margin-right: 0.5em;
  border-radius: 0.25em;
  color: var(--body-color);
  background: var(--body-background);
  filter: opacity(0.85);
}

.warning-msg {
  color: var(--msg-warn-color);
  background: url(msg-warning.svg) no-repeat 0.75em 0.75em;
  background-size: 2.5em;
  background-color: var(--msg-warn-background-alt);
  animation-name: kf-warning;
  animation-duration: 0.5s;
}

.dc-update {
  padding: 1em 0.5em 0.5em 4em;
  margin-bottom: 1em;
  border-radius: 3px;
  color: var(--dc-update-color);
  background: url(msg-info.svg) no-repeat 0.75em 0.75em;
  background-size: 2.5em;
  background-color: var(--dc-update-background);
  box-shadow: 1px 1px 2px var(--msg-shadow);

  h3 {
    margin-top: 0;
    color: var(--dc-update-color);
  }

  p {
    display: inline-block;
    vertical-align: middle;
  }

  a {
    color: var(--dc-update-color);
    margin-right: 1em;

    &.button {
      padding: 0.5em 1em;
    }
  }
}

.updt-info a {
  margin-left: 2em;
  border-color: var(--dc-update-color);
  font-weight: bold;
}

p.updt-info img.outgoing-js {
  filter: brightness(0);
}

div.warn,
div.warning,
div.info {
  display: block;
  padding: 1em 1em 1em 4em;
  margin-bottom: 1em;
}

div.warn,
div.warning,
div.info,
div.error,
div.message,
div.static-msg,
div.success,
div.warning-msg {
  button.action,
  input.action {
    margin-right: 0;
    margin-left: auto;
    display: block;
    margin-bottom: -1em;
  }
}

p.warn,
p.warning,
p.info {
  background-position: 0.3em 0.2em;
  background-size: 1.5em;
  text-indent: 0;
  padding-left: 2.25em;
}

p.error,
p.message,
p.static-msg,
p.success,
p.warning-msg {
  padding-top: 1em;
  padding-bottom: 1.5em;
  margin-top: 0.5em;
}

span.warn,
span.warning,
span.info {
  padding-top: 1px;
  padding-bottom: 1px;
  background-position: 0.3em 0.1em;
  background-size: 1.5em;
  text-indent: 0;
  padding-left: 2.25em;
}

@keyframes kf-error {
  0% {
    background-color: var(--msg-error-background-alt);
  }

  100% {
    background-color: var(--msg-error-background);
  }
}

@keyframes kf-message {
  0% {
    background-color: var(--msg-background-alt);
  }

  100% {
    background-color: var(--msg-background);
  }
}

@keyframes kf-success {
  0% {
    background-color: var(--msg-success-background-alt);
  }

  100% {
    background-color: var(--msg-success-background);
  }
}

@keyframes kf-warning {
  0% {
    background-color: var(--msg-warn-background);
  }

  100% {
    background-color: var(--msg-warn-background-alt);
  }
}

body.ajax-loader {
  #header {
    border-bottom-color: var(--ajax-loader);
    transition: border-bottom-color 0.3s ease;
  }

  #collapser {
    background-color: var(--ajax-loader);
    transition: background-color 0.3s ease;
  }
}

.guideline {
  #main-menu {
    padding-bottom: 0;
    position: sticky;
    top: 0;
    & > div.info {
      border: none;
      margin-bottom: 0;
      p {
        text-indent: 0;
      }
    }
  }
}

#content {
  & > div.warn,
  & > div.warning,
  & > div.info,
  & > div.error,
  & > div.message,
  & > div.static-msg,
  & > div.success,
  & > div.warning-msg,
  & > div.dc-update {
    margin-top: 1em;
  }
}
