/*
 * SPDX-FileCopyrightText: 2026 Scaled Agents LLC
 * SPDX-License-Identifier: LicenseRef-Scaled-Agents-Proprietary
 * Proprietary source. No copying or redistribution without written permission. See LICENSE.md.
 */

:root {
  --sa-icon-primary-blue: #0057d8;
  --sa-icon-primary-green: var(--sa-green, #108a44);
  --sa-icon-muted: var(--sa-muted, #5b677a);
  --sa-icon-warning: var(--sa-warning, #a85b00);
  --sa-icon-critical: var(--sa-danger, #c7332c);
  --sa-icon-success: var(--sa-success, #108a44);
  --sa-icon-disabled: #8a97a8;
  --sa-icon-stroke-width: 1.8;
}

.sa-capability-icon {
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  inline-size: 1.5rem;
  block-size: 1.5rem;
  color: var(--sa-icon-primary-blue);
  line-height: 1;
  vertical-align: middle;
}

.sa-capability-icon svg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-width: var(--sa-icon-stroke-width);
  stroke-linecap: round;
  stroke-linejoin: round;
}

.sa-capability-icon--sm { inline-size: 1.125rem; block-size: 1.125rem; }
.sa-capability-icon--md { inline-size: 1.5rem; block-size: 1.5rem; }
.sa-capability-icon--lg { inline-size: 2rem; block-size: 2rem; }
.sa-capability-icon--blue { color: var(--sa-icon-primary-blue); }
.sa-capability-icon--green { color: var(--sa-icon-primary-green); }
.sa-capability-icon--muted { color: var(--sa-icon-muted); }
.sa-capability-icon--warning { color: var(--sa-icon-warning); }
.sa-capability-icon--critical { color: var(--sa-icon-critical); }
.sa-capability-icon--success { color: var(--sa-icon-success); }
.sa-capability-icon--disabled,
[aria-disabled="true"] > .sa-capability-icon {
  color: var(--sa-icon-disabled);
}

.side-nav a > .sa-capability-icon {
  margin-inline-end: .625rem;
}

.side-nav a > .sa-capability-icon__label {
  flex: 1 1 auto;
  min-inline-size: 0;
  text-align: left;
}

.side-nav a.active > .sa-capability-icon {
  color: currentColor;
}

.portal-app :is(.nav-label-toggle, .nav-item) > span:not(.nav-icon):not(.nav-disclosure-glyph) {
  min-inline-size: 0;
  text-align: left;
}

.portal-app.sa-console .nav-icon[data-sa-canonical-icon="true"],
.portal-app[data-sa-console] .nav-icon[data-sa-canonical-icon="true"] {
  color: #0057d8 !important;
}

.portal-app .nav-icon[data-sa-canonical-icon="true"].sa-capability-icon--green {
  color: var(--sa-icon-primary-green) !important;
}

.portal-app .nav-icon[data-sa-canonical-icon="true"] svg {
  fill: none;
  stroke: currentColor;
  stroke-width: var(--sa-icon-stroke-width);
  stroke-linecap: round;
  stroke-linejoin: round;
}

@media (forced-colors: active) {
  .sa-capability-icon {
    color: CanvasText;
  }
}
