.messages *:not(pre,
pre.sf-dump *,
pre.sf-dump *,
pre.sf-dump .sf-dump-default),
.webform-message .messages.messages--webform *:not(pre,
pre.sf-dump *,
pre.sf-dump *,
pre.sf-dump .sf-dump-default) {
  color: inherit !important;
}

.messages-list,
.webform-message .messages.messages--webform .messages-list {
  display: grid !important;
  padding-block: 0 !important;
  padding-inline-start: 0 !important;
  padding-inline-end: 0 !important;
  list-style: none !important;
}

.messages,
.webform-message .messages.messages--webform {
  min-height: calc(2 * var(--solo-px32)) !important;
  padding-block: var(--solo-px16) !important;
  padding-inline: var(--solo-px16) !important;
  margin-block: var(--solo-px16) !important;
  margin-inline: 0 !important;
  outline: solid 1px transparent !important;
}


/* Additional specificity to override contrib modules. */
.webform-message .messages.messages--webform .messages.messages-list__item {
  background-image: none;
}

.webform-message--close a.webform-message__link,
.webform-message .messages.messages--webform .messages__button {
  display: none !important;
}

.messages__list {
  margin-block: 0;
  margin-inline-start: 0;
  margin-inline-end: 0;
  padding-block: 0;
  padding-inline-start: 0;
  padding-inline-end: 0;
  list-style: none;
}

.messages:not(.hidden) ~ .messages {
  margin-block-start: var(--solo-px16) !important;
}

.messages__item + .messages__item {
  margin-block-start: var(--solo-px16) !important;
}

.messages__container {
  display: flex;
}

.messages__header {
  flex-shrink: 0;
}

.messages__header.no-icon {
  margin-inline-end: 0;
}

.messages__content {
  overflow: auto;
  flex: 1;
  padding-inline: var(--solo-px16) !important;
  padding-block: 0 !important;
}


.messages__button {
  flex-shrink: 0;
}

.messages__close {
  position: relative;
  width: calc(2 * var(--solo-px24)) !important;
  height: calc(2 * var(--solo-px24)) !important;
  cursor: pointer;
  vertical-align: top;
  border: 0;
  background: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 50%;
}

.messages__close::before,
.messages__close::after {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  display: block;
  width: calc(2 * var(--solo-px14)) !important;
  height: 0;
  content: "";
}

.messages__close::before {
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

.messages__close::after {
  transform: translate(-50%, -50%) rotate(-45deg) !important;
}

.messages__icon svg {
  vertical-align: top;
  width: calc(2 * var(--solo-px20)) !important;
  height: calc(2 * var(--solo-px20)) !important;
  border-style: dashed;
  border-radius: 50%;
}

.messages pre {
  margin: 0;
}

.js-form-managed-file .messages {
  margin-block-end: var(--solo-px16) !important;
  border-inline-start: solid 0.375rem var(--solo-red) !important;
}

#system-messages .messages__content,
#system-messages .messages__content > *:not(pre,
pre.sf-dump *,
pre.sf-dump *,
pre.sf-dump .sf-dump-default) {
  --r-bg: transparent;
  background-color: var(--r-bg) !important;
}

.messages--error .messages__icon svg {
  fill: var(--solo-red) !important;
  border-color: var(--solo-red) !important;
}

.messages--warning .messages__icon svg {
  fill: var(--solo-yellow) !important;
  border-color: var(--solo-yellow) !important;
}

.messages--status .messages__icon svg {
  fill: var(--solo-green) !important;
  border-color: var(--solo-green) !important;
}

.messages--info .messages__icon svg {
  fill: var(--solo-blue) !important;
  border-color: var(--solo-blue) !important;
}

.messages__close,
.messages__close::after,
.messages__close::before {
  border-width: 1px;
  border-style: dashed;
  border-color: var(--r-tx-bt, var(--r-tx));
}

.messages__close {
  border-width: 2px;
  border-style: dashed;
}

.messages__close:hover,
.messages__close:hover::after,
.messages__close:hover::before {
  border-style: solid;
}

.messages.messages--error .messages__close,
.messages.messages--error .messages__close:hover::before,
.messages.messages--error .messages__close:hover::after {
  border-color: var(--solo-red) !important;
  box-shadow: rgba(244, 67, 54, 0.3) 0px 2px 8px 0px;
}

.messages.messages--warning .messages__close,
.messages.messages--warning .messages__close:hover::before,
.messages.messages--warning .messages__close:hover::after {
  border-color: var(--solo-yellow) !important;
  box-shadow: rgba(255, 205, 58, 0.3) 0px 2px 8px 0px;
}

.messages.messages--status .messages__close,
.messages.messages--status .messages__close:hover::before,
.messages.messages--status .messages__close:hover::after {
  border-color: var(--solo-green) !important;
  box-shadow: rgba(76, 175, 80, 0.3) 0px 2px 8px 0px;
}

.messages.messages--info .messages__close,
.messages.messages--info .messages__close:hover::before,
.messages.messages--info .messages__close:hover::after {
  border-color: var(--solo-blue) !important;
  box-shadow: rgba(33, 150, 243, 0.3) 0px 2px 8px 0px;
}

.messages.messages--error {
  box-shadow: rgba(244, 67, 54, 0.3) 0px 2px 8px 0px;
}

.messages.messages--warning {
  box-shadow: rgba(255, 205, 58, 0.3) 0px 2px 8px 0px;
}

.messages.messages--status {
  box-shadow: rgba(76, 175, 80, 0.3) 0px 2px 8px 0px;
}

.messages.messages--info {
  box-shadow: rgba(33, 150, 243, 0.3) 0px 2px 8px 0px;
}
