%icon-definition {
  @extend %horizontal-kv-list;
}
%icon-definition > dt > * {
  display: none;
}

%icon-definition.passing dt::before,
%composite-row-header .passing dd::before {
  @extend %with-check-circle-fill-mask, %as-pseudo;
  color: $green-500;
}
%icon-definition.warning dt::before,
%composite-row-header .warning dd::before {
  @extend %with-alert-triangle-mask, %as-pseudo;
  color: $orange-500;
}
%icon-definition.critical dt::before,
%composite-row-header .critical dd::before {
  @extend %with-cancel-square-fill-mask, %as-pseudo;
  color: $red-500;
}
%icon-definition.empty dt::before,
%composite-row-header .empty dd::before {
  @extend %with-minus-square-fill-mask, %as-pseudo;
  color: $gray-500;
}

%composite-row-header [rel='me'] dd::before {
  @extend %with-check-circle-fill-mask, %as-pseudo;
  color: $blue-500;
}

%icon-definition.node dt::before {
  @extend %with-git-commit-mask, %as-pseudo;
}
%icon-definition.address dt::before {
  @extend %with-public-default-mask, %as-pseudo;
}
%icon-definition.socket dt::before {
  @extend %with-port-mask, %as-pseudo;
}
%icon-definition.mesh dt::before {
  @extend %with-mesh-mask, %as-pseudo;
}
%icon-definition.nspace dt::before {
  @extend %with-folder-outline-mask, %as-pseudo;
}
%icon-definition.datacenter dt::before {
  @extend %with-user-organization-mask, %as-pseudo;
}
%icon-definition.path dt::before {
  @extend %with-path-mask, %as-pseudo;
}
%icon-definition.port dt::before {
  @extend %with-port-mask, %as-pseudo;
}
%icon-definition.protocol dt::before {
  @extend %with-protocol-mask, %as-pseudo;
}
%icon-definition.lock-delay dt::before {
  @extend %with-delay-mask, %as-pseudo;
}
%icon-definition.ttl dt::before {
  @extend %with-history-mask, %as-pseudo;
}
%icon-definition.behavior dt::before {
  @extend %with-info-circle-outline-mask, %as-pseudo;
}
%icon-definition.checks dt::before {
  @extend %with-health-mask, %as-pseudo;
}
