/* SVG sprite icon helpers — teal/slate stroke icons via icons.svg */

.icon {
  width: 1.25rem;
  height: 1.25rem;
  display: inline-block;
  flex-shrink: 0;
  vertical-align: -0.2em;
  color: currentColor;
  overflow: visible;
}

.icon-sm {
  width: 1rem;
  height: 1rem;
  vertical-align: -0.15em;
}

.icon-lg {
  width: 1.5rem;
  height: 1.5rem;
  vertical-align: -0.25em;
}

/* Icon + label rows (tabs, action buttons) */
.icon-label {
  display: inline-flex;
  align-items: center;
  gap: 0.4em;
}

.btn .icon,
.tab .icon {
  flex-shrink: 0;
}

.tab .icon {
  width: 1rem;
  height: 1rem;
}

.alert-ico .icon {
  width: 1.125rem;
  height: 1.125rem;
}

.brand-logo .icon,
.brand-mark .icon,
.placeholder-logo .icon,
.empty-state-icon .icon {
  width: 2rem;
  height: 2rem;
}

.tab-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.empty-state-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--muted, #64748b);
  opacity: 0.85;
}

.alert-ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
