:host {
  position: relative;
  box-sizing: border-box;
  font-feature-settings: "cv03", "cv04", "cv11";
}
:host *, :host *:before, :host *:after {
  box-sizing: inherit;
}

:host {
  display: block;
}

.menu-item {
  position: relative;
  display: flex;
  align-items: stretch;
  font-family: var(--sl-font-sans);
  font-size: var(--sl-font-size-small);
  font-weight: var(--sl-font-weight-normal);
  line-height: var(--sl-line-height-normal);
  letter-spacing: var(--sl-letter-spacing-normal);
  text-align: left;
  border-radius: var(--sl-border-radius-medium);
  padding: var(--sl-spacing-xx-small) var(--sl-spacing-x-small);
  transition: var(--sl-transition-fast) fill;
  user-select: none;
  white-space: nowrap;
  cursor: pointer;
  margin: 0 var(--sl-spacing-x-small);
}
.menu-item.menu-item--default {
  color: var(--sl-color-gray-700);
}
.menu-item.menu-item--danger {
  color: var(--sl-color-red-700);
  font-weight: var(--sl-font-weight-semibold);
}
.menu-item.menu-item--primary {
  color: var(--sl-color-blue-700);
}
.menu-item.menu-item--focused:not(.menu-item--disabled) {
  outline: none;
  background-color: var(--sl-selection-background-color-active);
  color: var(--sl-selection-color-active);
}
.menu-item.menu-item--disabled {
  outline: none;
  color: var(--sl-color-gray-400);
  cursor: not-allowed;
}
.menu-item .menu-item__label {
  flex: 1 1 auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.menu-item .menu-item__prefix {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
}
.menu-item .menu-item__prefix ::slotted(*) {
  margin-right: 0.5em;
}
.menu-item .menu-item__suffix {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
}
.menu-item .menu-item__suffix ::slotted(*) {
  margin-left: 0.5em;
}

.menu-item .menu-item__check {
  display: flex;
  position: absolute;
  left: 0.5em;
  top: calc(50% - 0.5em);
  visibility: hidden;
  align-items: center;
  font-size: inherit;
}

.menu-item--checked .menu-item__check {
  visibility: visible;
}

.menu-item--checked {
  font-weight: var(--sl-font-weight-semibold);
}