.rux-help-text {
  margin-top: var(--spacing-2, 0.5rem);
  color: var(--color-text-secondary, #d4d8dd);
  font-size: var(--font-body-2-font-size, 0.875rem);
  font-family: var(--font-body-2-font-family, 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif);
  font-weight: var(--font-body-2-font-weight, 400);
  letter-spacing: var(--font-body-2-letter-spacing, 0.005em);
  line-height: var(--font-body-2-line-height, calc(20 / 14));
  text-align: left;
}

.rux-error-text {
  display: flex;
  align-items: center;
  text-align: left;
  width: fit-content;
  -webkit-order: 3;
  order: 3;
  display: flex;
  margin-top: var(--spacing-2, 0.5rem);
  color: var(--color-text-error, #ff3838);
  font-size: var(--font-body-2-bold-font-size, 0.875rem);
  font-family: var(--font-body-2-bold-font-family, 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif);
  font-weight: var(--font-body-2-bold-font-weight, 700);
  letter-spacing: var(--font-body-2-bold-letter-spacing, 0.005em);
  line-height: var(--font-body-2-bold-line-height, calc(20 / 14));
  text-align: left;
}

.rux-error-text svg {
  width: calc(var(--spacing-4, 1rem) + var(--spacing-1, 0.25rem));
  height: calc(var(--spacing-4, 1rem) + var(--spacing-1, 0.25rem));
  color: var(--color-text-error, #ff3838);
  margin-right: var(--spacing-2, 0.5rem);
  cursor: default;
}

:host {
  display: block;
  font-family: var(--font-body-1-font-family, 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif);
  font-size: var(--font-body-1-font-size, 1rem);
  font-weight: var(--font-body-1-font-weight, 400);
  letter-spacing: var(--font-body-1-letter-spacing, 0.005em);
  line-height: var(--line-height-base, 1.5rem);
}
:host .rux-form-field {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  color: var(--color-text-primary, #ffffff);
}
:host rux-icon {
  cursor: pointer;
}
:host input[type=date i]::-webkit-calendar-picker-indicator {
  cursor: pointer;
  --webkit-appearance: none;
  background: var(--color-background-base-default, #101923) var(--rux-input-calendar-icon);
  background-position: center;
}
:host input[type=datetime-local i]::-webkit-calendar-picker-indicator {
  cursor: pointer;
  --webkit-appearance: none;
  background: var(--color-background-base-default, #101923) var(--rux-input-calendar-icon);
  background-position: center;
}
:host input[type=time i]::-webkit-calendar-picker-indicator {
  background: var(--color-background-base-default, #101923) var(--rux-input-time-icon);
  cursor: pointer;
  background-position: center;
}
:host input::placeholder {
  color: var(--color-text-placeholder, #a4abb6);
}
:host .rux-input {
  user-select: none;
  width: 100%;
  overflow: hidden;
  flex: 1 1 auto;
  display: inline-flex;
  align-items: center;
  justify-content: start;
  position: relative;
  box-sizing: border-box;
  order: 2;
  box-shadow: var(--color-border-interactive-muted, #2b659b) 0 0 0 1px inset;
  border-radius: var(--radius-base, 3px);
  font-family: var(--font-control-body-1-font-family, 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif);
  font-size: var(--font-control-body-1-font-size, 1rem);
  font-weight: var(--font-control-body-1-font-weight, 400);
  line-height: var(--font-control-body-1-line-height, calc(20 / 16));
  letter-spacing: var(--font-control-body-1-letter-spacing, 0.005em);
  color: var(--color-text-primary, #ffffff);
  background-color: var(--color-background-base-default, #101923);
}
:host .rux-input input {
  user-select: auto;
  border: none;
  background: none;
  box-shadow: none;
  padding: var(--spacing-0, 0rem);
  margin: var(--spacing-0, 0rem);
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  -webkit-appearance: none;
  height: var(--line-height-sm, 1.25rem);
  appearance: none;
  outline: none;
  width: 100%;
}
:host .rux-input input:disabled {
  cursor: not-allowed;
}
:host .rux-input--invalid {
  box-shadow: var(--color-border-error, #ff3838) 0 0 0 1px inset;
}
:host .rux-input--disabled {
  opacity: var(--opacity-disabled, 40%);
  cursor: not-allowed;
}
:host .rux-input--small {
  padding: var(--spacing-1, 0.25rem) var(--spacing-2, 0.5rem);
}
:host .rux-input--medium {
  padding: var(--spacing-2, 0.5rem);
}
:host .rux-input--large {
  padding: var(--spacing-3, 0.75rem) var(--spacing-2, 0.5rem);
}
:host .rux-input--search {
  -webkit-appearance: none;
  -moz-appearance: none;
  padding-left: var(--spacing-8, 2rem);
  background-color: var(--color-background-base-default, #101923);
  background-image: var(--rux-input-search-icon);
  background-repeat: no-repeat;
  background-position: 8px center;
  background-size: 1.05rem;
}
:host .rux-input--focused {
  outline: var(--border-width-focus-default, 1px) solid var(--color-border-focus-default, #da9ce7);
  outline-offset: var(--spacing-focus-default, 0.125rem);
}
:host .rux-input:hover {
  box-shadow: var(--color-background-interactive-hover, #92cbff) 0 0 0 1px inset;
  outline: 2px solid transparent;
}
:host .rux-input--disabled:hover {
  box-shadow: var(--color-border-interactive-muted, #2b659b) 0 0 0 1px inset;
  color: var(--color-text-primary, #ffffff);
}
:host .rux-input--invalid:hover {
  box-shadow: var(--color-border-error, #ff3838) 0 0 0 1px inset;
}
:host .rux-input .rux-input-prefix,
:host .rux-input .rux-input-suffix {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  cursor: default;
}
:host .rux-input .rux-input-prefix ::slotted(*) {
  padding-right: var(--spacing-1, 0.25rem);
}
:host .rux-input .rux-input-suffix ::slotted(*) {
  padding-left: var(--spacing-1, 0.25rem);
}
:host .rux-input-label {
  font-family: var(--font-control-body-1-font-family, 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif);
  font-size: var(--font-control-body-1-font-size, 1rem);
  font-weight: var(--font-control-body-1-font-weight, 400);
  letter-spacing: var(--font-control-body-1-letter-spacing, 0.005em);
  margin-bottom: var(--spacing-2, 0.5rem);
}
:host .rux-input-label__asterisk {
  margin-left: var(--spacing-1, 0.25rem);
}
:host ::selection {
  background-color: var(--color-palette-brightblue-400, #92cbff);
}

.pw-button::part(container) {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
}

.pw-button {
  border: none;
  background: transparent;
  height: calc(var(--spacing-6, 1.5rem) - var(--spacing-1, 0.25rem));
  width: var(--spacing-4, 1rem);
  padding: var(--spacing-0, 0rem);
  line-height: var(--line-height-sm, 1.25rem);
  width: calc(var(--spacing-6, 1.5rem) - var(--spacing-1, 0.25rem));
}

.pw-button:focus-visible {
  outline: var(--border-width-focus-default, 1px) solid var(--color-border-focus-default, #da9ce7);
  outline-offset: var(--spacing-focus-default, 0.125rem);
}

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