.ve-selection-control {
  --ve-height: calc(var(--ve-selection-control---height, 22px) + var(--ve-size-offset, 0px) + var(--ve-density-offset, 0px));
  align-items: center;
  align-self: center;
  cursor: pointer;
  display: inline-flex;
  min-height: var(--ve-height);
  position: relative;
  user-select: none;
}
.ve-selection-control--size-x-small {
  --ve-size-offset: -8px;
}
.ve-selection-control--size-small {
  --ve-size-offset: -4px;
}
.ve-selection-control--size-medium {
  --ve-size-offset: 0px;
}
.ve-selection-control--size-large {
  --ve-size-offset: 4px;
}
.ve-selection-control--size-x-large {
  --ve-size-offset: 8px;
}
.ve-selection-control--density-ultra-high {
  --ve-density-offset: -4px;
}
.ve-selection-control--density-high {
  --ve-density-offset: -2px;
}
.ve-selection-control--density-medium {
  --ve-density-offset: 0px;
}
.ve-selection-control--density-low {
  --ve-density-offset: 2px;
}
.ve-selection-control--density-ultra-low {
  --ve-density-offset: 4px;
}
.ve-selection-control--dirty .ve-icon {
  color: inherit;
}
.ve-selection-control--disabled {
  opacity: var(--ve-disabled-opacity);
  pointer-events: none;
}
.ve-selection-control--error {
  color: rgb(var(--ve-theme-error));
}
.ve-selection-control--error .ve-icon {
  color: inherit;
}
.ve-selection-control .ve-icon {
  opacity: var(--ve-medium-emphasis-opacity);
  font-size: 16px;
}
.ve-selection-control .ve-label {
  padding-inline-start: 6px;
  padding-inline-end: 6px;
}
.ve-selection-control__wrapper {
  position: relative;
  flex: none;
}
.ve-selection-control__input {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  flex: none;
}
.ve-selection-control__input input {
  cursor: pointer;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.ve-selection-control__input::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  border-radius: 100%;
  background-color: currentColor;
  opacity: 0;
  pointer-events: none;
}
.ve-selection-control__input:hover::before {
  opacity: calc(0.04 * var(--ve-theme-overlay-multiplier, 1));
}
.ve-selection-control--focus-visible .ve-selection-control__input::before {
  opacity: calc(0.08 * var(--ve-theme-overlay-multiplier, 1));
}