.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) url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M19 4H18V3C18 2.45 17.55 2 17 2C16.45 2 16 2.45 16 3V4H8V3C8 2.45 7.55 2 7 2C6.45 2 6 2.45 6 3V4H5C3.89 4 3.01 4.9 3.01 6L3 20C3 21.1 3.89 22 5 22H19C20.1 22 21 21.1 21 20V6C21 4.9 20.1 4 19 4ZM19 19C19 19.55 18.55 20 18 20H6C5.45 20 5 19.55 5 19V9H19V19ZM9 13V11H7V13H9ZM11 11H13V13H11V11ZM17 13V11H15V13H17Z' fill='%234dacff'/%3E%3C/svg%3E%0A");
  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) url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M19 4H18V3C18 2.45 17.55 2 17 2C16.45 2 16 2.45 16 3V4H8V3C8 2.45 7.55 2 7 2C6.45 2 6 2.45 6 3V4H5C3.89 4 3.01 4.9 3.01 6L3 20C3 21.1 3.89 22 5 22H19C20.1 22 21 21.1 21 20V6C21 4.9 20.1 4 19 4ZM19 19C19 19.55 18.55 20 18 20H6C5.45 20 5 19.55 5 19V9H19V19ZM9 13V11H7V13H9ZM11 11H13V13H11V11ZM17 13V11H15V13H17Z' fill='%234dacff'/%3E%3C/svg%3E%0A");
  background-position: center;
}
:host input[type=time i]::-webkit-calendar-picker-indicator {
  background: var(--color-background-base-default, #101923) url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.99 2C6.47 2 2 6.48 2 12C2 17.52 6.47 22 11.99 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 11.99 2ZM12 20C7.58 20 4 16.42 4 12C4 7.58 7.58 4 12 4C16.42 4 20 7.58 20 12C20 16.42 16.42 20 12 20ZM11.72 7H11.78C12.18 7 12.5 7.32 12.5 7.72V12.26L16.37 14.56C16.72 14.76 16.83 15.21 16.62 15.55C16.42 15.89 15.98 15.99 15.64 15.79L11.49 13.3C11.18 13.12 11 12.79 11 12.44V7.72C11 7.32 11.32 7 11.72 7Z' fill='%234dacff'/%3E%3C/svg%3E");
  cursor: pointer;
  background-position: center;
}
:host input::placeholder {
  color: var(--color-text-placeholder, #a4abb6);
}
:host .rux-input {
  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 {
  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: url("data:image/svg+xml,%3Csvg width='20' height='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.71 14H15.5L19.74 18.26C20.15 18.67 20.15 19.34 19.74 19.75C19.33 20.16 18.66 20.16 18.25 19.75L14 15.5V14.71L13.73 14.43C12.33 15.63 10.42 16.25 8.39002 15.91C5.61002 15.44 3.39002 13.12 3.05002 10.32C2.53002 6.09 6.09002 2.53 10.32 3.05C13.12 3.39 15.44 5.61 15.91 8.39C16.25 10.42 15.63 12.33 14.43 13.73L14.71 14ZM5.00002 9.5C5.00002 11.99 7.01002 14 9.50002 14C11.99 14 14 11.99 14 9.5C14 7.01 11.99 5 9.50002 5C7.01002 5 5.00002 7.01 5.00002 9.5Z' fill='%234dacff' fill-rule='evenodd'/%3E%3C/svg%3E");
  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;
}