.alert {
  @extend %alert-basic;
  border-color: $grey-light;

  & a {
    color: $nearly-black;
    text-decoration: underline;

    &:hover {
      text-decoration: none;
    }
  }

  &--primary {
    color: darken($primary-alert-color, 70%);
    background-color: $primary-alert-color;
    border-color: darken($primary-alert-color, 10%);

    & a {
      color: darken($primary-alert-color, 70%);
    }
  }

  &--secondary {
    color: darken($secondary-alert-color, 70%);
    background-color: $secondary-alert-color;
    border-color: darken($secondary-alert-color, 10%);

    & a {
      color: darken($secondary-alert-color, 70%);
    }
  }

  &--success {
    color: darken($success-alert-color, 70%);
    background-color: $success-alert-color;
    border-color: darken($success-alert-color, 10%);

    & a {
      color: darken($success-alert-color, 70%);
    }
  }

  &--warning {
    color: darken($warning-alert-color, 70%);
    background-color: $warning-alert-color;
    border-color: darken($warning-alert-color, 10%);

    & a {
      color: darken($warning-alert-color, 70%);
    }
  }

  &--info {
    color: darken($info-alert-color, 60%);
    background-color: $info-alert-color;
    border-color: darken($info-alert-color, 10%);

    & a {
      color: darken($info-alert-color, 70%);
    }
  }

  &--light {
    color: darken($light-alert-color, 70%);
    background-color: $light-alert-color;
    border-color: darken($light-alert-color, 10%);

    & a {
      color: darken($light-alert-color, 70%);
    }
  }

  &--dark {
    color: darken($dark-alert-color, 70%);
    background-color: $dark-alert-color;
    border-color: darken($dark-alert-color, 10%);

    & a {
      color: darken($dark-alert-color, 70%);
    }
  }

  &--dismissable {
    padding-right: 50px;

    & button {
      position: absolute;
      top: 15px;
      right: 10px;
    }
  }

  &--icon {
    padding-left: 40px;

    & i {
      position: absolute;
      top: 15px;
      left: 12px;
      color: $secondary-color;
    }
  }

  & p:last-of-type {
    margin-bottom: 0;
  }
}
