@layer component {
  .miz-alert {
    --alert-padding: 1rem 1rem 1rem 1rem;
    --alert-background-color: transparent;
    --alert-font-weight: 600;
    --alert-text-color: rgb(0, 0, 0);
    --alert-background-color-selection: auto;
    position: relative;
    display: grid;
    grid-template-rows: [top main-start] minmax(-webkit-min-content, auto) [main-end bottom];
    grid-template-rows: [top main-start] minmax(min-content, auto) [main-end bottom];
    grid-template-areas: ". body body body body body body body body body body body body .";
    gap: 0;
    padding: var(--alert-padding);
    background-color: var(--alert-background-color);
    color: var(--alert-text-color);
    font-weight: var(--alert-font-weight);
    grid-template-columns: [full-start] 16px [main-start] repeat(12, [col] 1fr) [main-end] 16px [full-end];
  }
  @media (min-width: 576px) {
    .miz-alert {
      grid-template-columns: [full-start] 16px [main-start] repeat(12, [col] 1fr) [main-end] 16px [full-end];
    }
  }
  @media (min-width: 768px) {
    .miz-alert {
      grid-template-columns: [full-start] 32px [main-start] repeat(12, [col] 1fr) [main-end] 32px [full-end];
    }
  }
  @media (min-width: 1024px) {
    .miz-alert {
      grid-template-columns: [full-start] 64px [main-start] repeat(12, [col] 1fr) [main-end] 64px [full-end];
    }
  }
  @media (min-width: 1280px) {
    .miz-alert {
      grid-template-columns: [full-start] 96px [main-start] repeat(12, [col] 1fr) [main-end] 96px [full-end];
    }
  }
  @media (min-width: 1440px) {
    .miz-alert {
      grid-template-columns: [full-start] 160px [main-start] repeat(12, [col] 1fr) [main-end] 160px [full-end];
    }
  }
  @media (min-width: 1600px) {
    .miz-alert {
      grid-template-columns: [full-start] 160px [main-start] repeat(12, [col] 1fr) [main-end] 160px [full-end];
    }
  }
  .miz-alert ::-moz-selection {
    background-color: var(--alert-background-color-selection);
  }
  .miz-alert ::selection {
    background-color: var(--alert-background-color-selection);
  }
}
@layer component {
  .miz-alert__body {
    grid-column: main;
    display: flex;
    flex-flow: row wrap;
    place-content: center flex-start;
    align-items: flex-start;
    gap: 1rem;
  }
}
@layer component {
  .miz-alert__media {
    flex: 0 1 0;
  }
}
@layer component {
  .miz-alert__content {
    flex: 1 1 0;
  }
  .miz-alert__content :is(a) {
    font-weight: 700;
  }
  .miz-alert__content :is(a):hover {
    text-decoration: none;
  }
}
@layer component {
  .miz-alert__icon:empty {
    display: none;
  }
}
.miz-alert--info {
  --alert-background-color: rgb(0, 119, 230);
  --alert-background-color-selection: hsl(from rgb(0, 119, 230) h s calc(l - 20));
  --alert-text-color: rgb(255, 255, 255);
}

.miz-alert--clear {
  --alert-background-color: rgb(58, 133, 35);
  --alert-background-color-selection: hsl(from rgb(58, 133, 35) h s calc(l - 10));
  --alert-text-color: rgb(255, 255, 255);
}

.miz-alert--warning {
  --alert-background-color: rgb(244, 130, 37);
  --alert-background-color-selection: hsl(from rgb(244, 130, 37) h s calc(l - 10));
  --alert-text-color: rgb(0, 0, 0);
}

.miz-alert--severe {
  --alert-background-color: rgb(237, 2, 18);
  --alert-background-color-selection: hsl(from rgb(237, 2, 18) h s calc(l - 10));
  --alert-text-color: rgb(255, 255, 255);
}

.miz-linked-alert {
  display: block;
}