/* Tabler icon runtime bridge (outline only, stroke 1.25) */
:root {
  --kuc-icon-stroke: 2;
}

.material-symbols-outlined,
i.material-symbols-outlined,
[data-icon],
.icon-placeholder,
.kuc-icon-host {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  line-height: 1;
  vertical-align: middle;
}

.material-symbols-outlined > svg.tabler-icon,
i.material-symbols-outlined > svg.tabler-icon,
[data-icon] > svg.tabler-icon,
.icon-placeholder > svg.tabler-icon,
.kuc-icon-host > svg.tabler-icon,
svg.tabler-icon {
  width: 1em;
  height: 1em;
  display: inline-block;
  flex-shrink: 0;
  stroke: currentColor;
  stroke-width: var(--kuc-icon-stroke);
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
  vertical-align: middle;
}

.kuc-icon-label {
  display: none !important;
}

/* Compatibility utility sizes */
.icon-xs {
  font-size: 16px;
}

.icon-sm {
  font-size: 20px;
}

.icon-md {
  font-size: 24px;
}

.icon-lg {
  font-size: 32px;
}

.icon-xl {
  font-size: 48px;
}

.icon-spin {
  animation: kuc-icon-spin 1s linear infinite;
}

@keyframes kuc-icon-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
