.ve-icon {
  --ve-height: var(--ve-icon---height, 1em);
  --ve-width: var(--ve-height, 1em);
  align-items: center;
  display: inline-flex;
  font-feature-settings: "liga";
  font-size: calc(var(--ve-icon---font-size, 1em) + var(--ve-size-offset));
  height: var(--ve-height);
  justify-content: center;
  letter-spacing: normal;
  line-height: 1;
  position: relative;
  text-indent: 0;
  user-select: none;
  vertical-align: middle;
  width: var(--ve-width);
}
.ve-icon--size-x-small {
  --ve-size-offset: -0.5em;
}
.ve-icon--size-small {
  --ve-size-offset: -0.25em;
}
.ve-icon--size-medium {
  --ve-size-offset: 0em;
}
.ve-icon--size-large {
  --ve-size-offset: 0.25em;
}
.ve-icon--size-x-large {
  --ve-size-offset: 0.5em;
}
.ve-icon--start {
  margin-inline-end: 4px;
}
.ve-icon--end {
  margin-inline-start: 4px;
}
.ve-icon > svg {
  fill: currentColor;
  width: 100%;
  height: 100%;
}