:host {
  cursor: pointer;
  display: block;
  /** @prop --pushbutton-background-color: [DEPRECATED] the Push Button background color */
  --pushbutton-background-color: none;
  /** @prop --pushbutton-border-color: [DEPRECATED] the Push Button border color */
  --pushbutton-border-color: var(--color-border-interactive-default);
  /** @prop --pushbutton-text-color: [DEPRECATED] the Push Button text color */
  --pushbutton-text-color: var(--color-text-interactive-default);
  /** @prop --pushbutton-selected-background-color: [DEPRECATED] the Push Button background color when checked */
  --pushbutton-selected-background-color: var(--color-palette-green-500);
  /** @prop --pushbutton-selected-border-color: [DEPRECATED] the Push Button border color when checked */
  --pushbutton-selected-border-color: var(--color-palette-green-500);
  /** @prop --pushbutton-selected-text-color: [DEPRECATED] the Push Button text color when checked */
  --pushbutton-selected-text-color: var(--color-text-inverse);
  --pushbutton-selected-hover-text-color: var(--color-text-inverse);
  margin: 0 2px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
:host[disabled] {
  opacity: var(--disabled-opacity);
  cursor: not-allowed;
}
:host input {
  appearance: none;
  -webkit-appearance: none;
}
:host .rux-push-button__button {
  font-family: var(--font-body-1-font-family);
  font-size: var(--font-body-1-font-size);
  font-weight: var(--font-body-1-font-weight);
  letter-spacing: var(--font-body-1-letter-spacing);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 1.375rem;
  margin: -27px 0 0 0;
  color: var(--pushbutton-text-color);
  background-color: var(--pushbutton-background-color);
  border-radius: var(--radius-base);
  border: 1px solid var(--pushbutton-border-color);
  padding: 0.469rem 1rem;
}
:host .rux-push-button__button:hover {
  cursor: pointer;
  color: var(--color-background-interactive-hover);
  border-color: var(--color-background-interactive-hover);
}
:host .rux-push-button__button:hover rux-icon {
  color: var(--color-background-interactive-hover);
}
:host .rux-push-button__button--small {
  padding: 0.219rem 1rem;
}
:host .rux-push-button__button--large {
  padding: 0.844rem 1rem;
}
:host .rux-push-button__button rux-icon {
  height: 1rem;
  width: 1rem;
  margin-right: 0.625rem;
}
:host .rux-push-button__button--icon-only {
  font-size: 0 !important;
}
:host .rux-push-button__button--icon-only rux-icon {
  margin-right: 0;
}
:host .rux-push-button__input:checked + .rux-push-button__button {
  display: flex;
  color: var(--pushbutton-selected-text-color);
  background-color: var(--pushbutton-selected-background-color);
  border-color: var(--pushbutton-selected-border-color);
}
:host .rux-push-button__input:checked + .rux-push-button__button rux-icon {
  color: var(--pushbutton-selected-text-color);
}
:host .rux-push-button__input:checked + .rux-push-button__button:hover {
  background-color: var(--color-palette-green-400);
}
:host .rux-push-button__input:checked:disabled + .rux-push-button__button:hover {
  color: var(--pushbutton-selected-text-color);
  background-color: var(--pushbutton-selected-background-color);
  border-color: var(--pushbutton-selected-border-color);
}
:host .rux-push-button__input:checked:disabled + .rux-push-button__button:hover rux-icon {
  color: var(--pushbutton-selected-text-color);
}
:host .rux-push-button__input:disabled + .rux-push-button__button {
  opacity: var(--disabled-opacity);
  cursor: not-allowed;
}
:host .rux-push-button__input:disabled + .rux-push-button__button:hover {
  border-color: var(--pushbutton-border-color);
  color: var(--pushbutton-text-color);
}
:host .rux-push-button__input:disabled + .rux-push-button__button:hover rux-icon {
  color: var(--pushbutton-text-color);
}

:host([hidden]) {
  display: none;
}