.duet-internal-label {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border: 0;
  margin-bottom: 12px !important;
  position: relative;
  z-index: 100;
  display: inline-flex;
  width: auto;
  margin-top: 8px !important;
  font-family: "localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 1rem;
  font-weight: 600 !important;
  line-height: 1.25;
  line-height: 1.25;
  color: rgb(8, 42, 77);
  text-align: left;
  word-break: break-word;
  cursor: default;
}
.duet-internal-label.duet-p-0 {
  padding: 0 !important;
}
.duet-internal-label.duet-m-0 {
  margin: 0 !important;
}
.duet-internal-label span {
  font-size: 1rem;
  font-weight: 600 !important;
  word-break: break-word;
}
.duet-internal-label.duet-m-0 {
  margin-bottom: 0 !important;
}
.duet-internal-label.duet-small-margin {
  margin-top: 8px !important;
  margin-bottom: 4px !important;
}
.duet-internal-label.duet-has-tooltip {
  padding-right: 48px;
}
@media (min-width: 48em) {
  .duet-internal-label.duet-has-tooltip {
    padding-right: 0;
  }
}
.duet-internal-label.duet-internal-label-small {
  font-size: 0.875rem;
}
.duet-internal-label.duet-internal-label-small span {
  font-size: 0.875rem;
}
.duet-internal-label.duet-weight-normal {
  font-weight: 400 !important;
}
.duet-internal-label.duet-weight-normal span {
  font-weight: 400 !important;
}
.duet-internal-label.duet-theme-turva {
  font-family: "turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: rgb(23, 42, 59);
}

*,
*::after,
*::before {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border: 0;
}

:host {
  margin-right: 16px !important;
}

:host(:last-child),
:host(:last-of-type) {
  margin-right: 0 !important;
}

:host(.form-distribute:last-of-type:not(:last-child)) {
  margin-right: 16px !important;
}

:host {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border: 0;
  margin-bottom: 12px !important;
  display: inline-flex;
  width: 100%;
  min-width: calc(33.333% - 8px);
  max-width: 100%;
  vertical-align: bottom;
  text-align: left;
}
@media (min-width: 36em) {
  :host {
    width: calc(50% - 16px - 3px);
  }
}

:host(.duet-expand) {
  width: 100% !important;
}

:host(.duet-m-0) {
  margin: 0 !important;
}

input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

input[type=time]::-webkit-datetime-edit-fields-wrapper {
  padding: 0;
}
input[type=time]::-webkit-calendar-picker-indicator {
  display: none;
}

duet-tooltip,
::slotted(duet-tooltip) {
  position: relative;
  top: 12px;
  right: 0;
}
@media (min-width: 48em) {
  duet-tooltip,
  ::slotted(duet-tooltip) {
    right: auto;
  }
}

duet-caption:not(:last-of-type) {
  margin-bottom: 0;
}

.duet-input-placeholder {
  position: absolute;
  top: -9px;
  left: 9px;
  z-index: 200;
  display: block;
  width: auto;
  max-width: 60%;
  padding: 0 0.25rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: rgb(255, 255, 255);
}

.duet-input-icon {
  position: absolute;
  top: 50%;
  right: 16px;
  z-index: 200;
  width: 20px;
  height: 20px;
  font-size: 0;
  line-height: normal;
  color: rgb(8, 42, 77);
  pointer-events: none;
  transform: translateY(-50%);
}
.duet-theme-turva .duet-input-icon {
  color: rgb(23, 28, 58);
}

.duet-input-container {
  position: relative;
  width: 100%;
  height: 100%;
}
.duet-input-container.has-clear .duet-input-clear-icon {
  position: relative;
  z-index: 250;
}
.duet-input-container.has-clear .duet-input-clear-icon button {
  position: absolute;
  top: -24px;
  right: -24px;
  min-width: 48px;
  min-height: 48px;
  color: rgb(0, 75, 129);
}
.duet-input-container.has-clear .duet-input-clear-icon button:focus {
  outline: 2px solid;
  outline-offset: 2px;
  outline-color: rgba(0, 119, 179, 0.8);
}
.duet-theme-turva .duet-input-container.has-clear .duet-input-clear-icon button:focus, .duet-input-container.has-clear .duet-input-clear-icon button:focus.duet-theme-turva, .duet-theme-turva2 .duet-input-container.has-clear .duet-input-clear-icon button:focus, .duet-input-container.has-clear .duet-input-clear-icon button:focus.duet-theme-turva2 {
  outline: 2px solid;
  outline-offset: 2px;
  outline-color: rgba(53, 79, 101, 0.8);
}
.duet-input-container.has-clear .duet-input-clear-icon button:active {
  opacity: 0.75;
  transition: none;
}
.duet-input-container.has-clear .duet-input-clear-icon.input-padding-xx-small button {
  top: -12px;
}
.duet-input-container.has-clear .duet-input-clear-icon.input-padding-x-small button {
  top: -16px;
}
.duet-input-container.has-clear .duet-input-clear-icon.input-padding-small button {
  top: -20px;
}
.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single button {
  top: -48px;
  right: 0;
}
.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single.input-padding-xx-small button {
  top: -36px;
}
.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single.input-padding-x-small button {
  top: -40px;
}
.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single.input-padding-small button {
  top: -44px;
}
.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double button {
  top: -24px;
  right: 12px;
}
.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double.input-padding-xx-small button {
  top: -12px;
}
.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double.input-padding-x-small button {
  top: -16px;
}
.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double.input-padding-small button {
  top: -20px;
}
.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-button button {
  top: -24px;
  right: 0;
}
.duet-input-container.has-clear.has-icon .duet-input-clear-icon {
  top: -24px;
  right: 24px;
}
.duet-input-container.duet-theme-turva.has-clear .duet-input-clear-icon button {
  color: rgb(8, 42, 77);
}

.duet-input-label-container {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
}
@media (min-width: 48em) {
  .duet-input-label-container {
    justify-content: flex-start;
  }
}

.duet-input {
  position: relative;
  z-index: 100;
  display: block !important;
  width: 100% !important;
  min-width: 8rem;
  max-width: initial !important;
  height: auto !important;
  padding: 12px 14px !important;
  margin: initial !important;
  margin-bottom: initial !important;
  font-family: "localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 1rem;
  font-weight: 400 !important;
  font-variant-numeric: tabular-nums;
  line-height: 1.5 !important;
  color: rgb(8, 42, 77) !important;
  cursor: initial !important;
  outline-color: initial !important;
  background: rgb(255, 255, 255) !important;
  background-clip: initial !important;
  border: 1px solid rgb(127, 150, 165) !important;
  border-radius: 4px !important;
  transition: border 150ms ease !important;
}
.duet-input.input-padding-small {
  padding: 8px 10px !important;
}
.duet-input.input-padding-x-small {
  padding: 4px 6px !important;
}
.duet-input.input-padding-xx-small {
  padding: 0px 2px !important;
}
.duet-input.is-number {
  padding-right: 112px !important;
}
.duet-input.is-date {
  padding-right: 64px !important;
}
.duet-input.after-chip {
  padding-left: 8px !important;
}
.has-error .duet-input, .has-error .duet-input[disabled] {
  border-color: rgb(214, 28, 82) !important;
}
.has-error .duet-input + .duet-input-icon, .has-error .duet-input[disabled] + .duet-input-icon {
  color: rgb(214, 28, 82) !important;
}
.duet-theme-turva.has-error .duet-input {
  border-color: rgb(214, 28, 82) !important;
}
.duet-theme-turva.has-error .duet-input + .duet-input-icon {
  color: rgb(214, 28, 82) !important;
}
.has-icon .duet-input {
  padding-right: 48px !important;
}
.duet-theme-turva .duet-input {
  font-family: "turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: rgb(23, 28, 58) !important;
  border-color: rgb(143, 147, 158) !important;
}
.duet-input.align-right {
  text-align: right;
}
.duet-input::-ms-clear {
  display: none;
}
.duet-input::-webkit-contacts-auto-fill-button {
  display: none !important;
}
.duet-input::-webkit-input-placeholder {
  color: rgb(98, 121, 138);
  opacity: 1 !important;
  transition: color 300ms ease;
}
.duet-theme-turva .duet-input::-webkit-input-placeholder {
  color: rgb(143, 147, 158);
}
.duet-input:focus::-webkit-input-placeholder {
  color: rgb(181, 198, 208);
}
.duet-theme-turva .duet-input:focus::-webkit-input-placeholder {
  color: rgb(199, 202, 207);
}
.duet-input::-moz-placeholder {
  color: rgb(98, 121, 138);
  opacity: 1 !important;
}
.duet-theme-turva .duet-input::-moz-placeholder {
  color: rgb(143, 147, 158);
}
.duet-input:focus::-moz-placeholder {
  color: rgb(181, 198, 208);
}
.duet-theme-turva .duet-input:focus::-moz-placeholder {
  color: rgb(199, 202, 207);
}
.duet-input:-ms-input-placeholder {
  color: rgb(98, 121, 138);
}
.duet-theme-turva .duet-input:-ms-input-placeholder {
  color: rgb(143, 147, 158);
}
.duet-input:focus:-ms-input-placeholder {
  color: rgb(181, 198, 208);
}
.duet-theme-turva .duet-input:focus:-ms-input-placeholder {
  color: rgb(199, 202, 207);
}
.duet-input[disabled] {
  color: rgb(8, 42, 77) !important;
  cursor: not-allowed !important;
  outline: none !important;
  background: rgb(228, 236, 239) !important;
  border-color: rgb(228, 236, 239) !important;
  opacity: 1 !important;
  -webkit-text-fill-color: rgb(8, 42, 77) !important;
}
.duet-theme-turva .duet-input[disabled] {
  color: rgb(23, 28, 58) !important;
  background: rgb(228, 233, 237) !important;
  border-color: rgb(228, 233, 237) !important;
  -webkit-text-fill-color: rgb(23, 28, 58) !important;
}
.duet-input:hover:not(:disabled) {
  outline: 2px solid;
  outline-color: rgb(98, 121, 138);
  outline-offset: -1px;
}
.duet-theme-turva .duet-input:hover:not(:disabled), .duet-input:hover:not(:disabled).duet-theme-turva, .duet-theme-turva2 .duet-input:hover:not(:disabled), .duet-input:hover:not(:disabled).duet-theme-turva2 {
  outline-color: rgb(120, 145, 164);
}
.has-error .duet-input:hover:not(:disabled) {
  outline: 1px solid;
  outline-color: rgb(214, 28, 82);
  outline-offset: -1px;
}
.duet-input:focus {
  border-color: rgb(0, 119, 179) !important;
  transition: none;
}
.duet-theme-turva .duet-input:focus {
  border-color: rgb(23, 28, 58) !important;
}
.duet-theme-turva .duet-input:focus + .duet-input-icon {
  color: rgb(23, 28, 58);
}
.has-error .duet-input:focus {
  outline: 1px solid;
  outline-color: rgb(214, 28, 82);
  outline-offset: -1px;
}
.duet-input:focus + .duet-input-icon {
  color: rgb(0, 119, 179);
}
.duet-input[type=search]:not(:placeholder-shown):focus + .duet-input-icon {
  display: none;
}
.duet-input:not(:focus):not(:hover):invalid {
  outline: none !important;
}
.duet-input[type=number]::-webkit-inner-spin-button, .duet-input[type=number]::-webkit-outer-spin-button, .duet-input[type=time]::-webkit-inner-spin-button, .duet-input[type=time]::-webkit-outer-spin-button {
  display: none;
  margin: 0;
  -webkit-appearance: none;
}
.duet-input::-webkit-search-cancel-button {
  margin-right: -28px;
}

.duet-input-help {
  display: block;
  font-family: "localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25;
  color: rgb(98, 121, 138);
  border-radius: 4px;
}
.duet-input-help span {
  display: block;
  margin-top: 8px;
}
.duet-theme-turva .duet-input-help {
  font-family: "turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: rgb(143, 147, 158);
}
.has-error .duet-input-help {
  color: rgb(214, 28, 82);
}
.duet-theme-turva.has-error .duet-input-help {
  color: rgb(214, 28, 82);
}

.duet-label-hidden label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  border: 0;
  clip: rect(0 0 0 0);
}

.duet-input-relative {
  position: relative;
  width: 100%;
}

.duet-input-variation-button,
.duet-input-variation-button-left {
  position: relative;
  width: 100%;
}
.duet-input-variation-button .duet-input-relative,
.duet-input-variation-button-left .duet-input-relative {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  align-items: center;
  justify-content: flex-start;
  width: auto;
}
.duet-input-variation-button .duet-input-relative duet-button,
.duet-input-variation-button-left .duet-input-relative duet-button {
  z-index: 250;
  margin-bottom: 0;
}

.duet-input-variation-button-left .duet-input-relative {
  border-radius: 4px;
}

.duet-input-variation-button .duet-input-relative .duet-input {
  border-right-width: 0 !important;
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.duet-input-variation-button-left .duet-input-relative .duet-input {
  border-left-width: 0 !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.duet-input-variation-revealable {
  position: relative;
  width: 100%;
}
.duet-input-variation-revealable ::-ms-reveal {
  display: none;
}
.duet-input-variation-revealable .duet-input-relative {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  align-items: center;
  justify-content: flex-start;
  width: auto;
  outline: initial;
  border: 1px solid rgb(127, 150, 165);
  border-radius: 4px;
  transition: border 150ms ease;
}
.duet-theme-turva .duet-input-variation-revealable .duet-input-relative {
  border-color: rgb(143, 147, 158);
}
.duet-input-variation-revealable .duet-input-relative duet-button {
  z-index: 250;
  margin-bottom: 0;
}
.duet-input-variation-revealable .duet-input-relative .duet-input {
  border-width: 0 !important;
}
.duet-input-variation-revealable .duet-input-relative .duet-input:focus, .duet-input-variation-revealable .duet-input-relative .duet-input:hover {
  outline: none !important;
  border-width: 0 !important;
}
.duet-input-variation-revealable.disabled .duet-input-relative {
  outline: none;
  background: rgb(245, 248, 250);
  border-color: rgb(212, 223, 229);
}
.duet-input-variation-revealable.has-error .duet-input-relative {
  border-color: rgb(214, 28, 82);
}
.duet-input-variation-revealable.duet-theme-turva.has-error .duet-input-relative {
  border-color: rgb(214, 28, 82);
}
.duet-input-variation-revealable.has-focus .duet-input-relative {
  outline: 2px solid;
  outline-offset: -1px;
  outline-color: rgb(62, 84, 102);
  border-color: rgb(0, 119, 179);
}
.duet-input-variation-revealable.duet-theme-turva.has-focus .duet-input-relative {
  outline: 2px solid;
  outline-offset: -1px;
  outline-color: rgb(53, 79, 101);
  border-color: rgb(23, 28, 58);
}
.duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative {
  outline: 2px solid;
  outline-color: rgb(98, 121, 138);
  outline-offset: -1px;
}
.duet-theme-turva .duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative, .duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative.duet-theme-turva, .duet-theme-turva2 .duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative, .duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative.duet-theme-turva2 {
  outline-color: rgb(120, 145, 164);
}
.duet-input-variation-revealable.has-error:hover:not(.disabled) .duet-input-relative {
  outline: 1px solid;
  outline-color: rgb(214, 28, 82);
  outline-offset: -1px;
}

.duet-input-container.has-chips.has-focus .duet-input-relative {
  outline: 2px solid;
  outline-offset: -1px;
  outline-color: rgb(62, 84, 102);
}
.duet-theme-turva .duet-input-container.has-chips.has-focus .duet-input-relative {
  outline: 2px solid;
  outline-offset: 2px;
  outline-color: rgb(53, 79, 101);
}
.duet-input-container.has-chips .duet-input-relative {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  align-items: center;
  justify-content: flex-start;
  width: auto;
  border: 1px solid rgb(127, 150, 165);
  border-radius: 4px;
  transition: border 150ms ease;
}
.duet-theme-turva .duet-input-container.has-chips .duet-input-relative {
  border-color: rgb(143, 147, 158);
}
.duet-input-container.has-chips .duet-input-relative .duet-input {
  flex-grow: 1;
  flex-basis: 4rem;
  padding-left: 0 !important;
  margin-left: 12px !important;
  border-width: 0 !important;
}
.duet-input-container.has-chips .duet-input-relative .duet-input:focus, .duet-input-container.has-chips .duet-input-relative .duet-input:hover {
  outline: none !important;
  border-width: 0 !important;
}

:host(.duet-theme-turva2) .duet-theme-turva .duet-input-icon {
  color: rgb(23, 42, 59);
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input {
  color: rgb(23, 42, 59) !important;
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input::-webkit-input-placeholder {
  color: rgb(120, 145, 164);
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus::-webkit-input-placeholder {
  color: rgb(178, 194, 205);
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input:-moz-placeholder {
  color: rgb(120, 145, 164);
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus::-moz-placeholder {
  color: rgb(178, 194, 205);
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input:-ms-input-placeholder {
  color: rgb(120, 145, 164);
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus:-ms-input-placeholder {
  color: rgb(241, 202, 178);
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input[disabled] {
  color: rgb(23, 42, 59) !important;
  background: rgb(228, 233, 237) !important;
  border-color: rgb(228, 233, 237) !important;
  -webkit-text-fill-color: rgb(23, 42, 59) !important;
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus {
  border-color: rgb(23, 42, 59) !important;
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus + .duet-input-icon {
  color: rgb(23, 42, 59);
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input-variation-button-left.has-focus .duet-input-relative {
  border-color: rgb(23, 42, 59);
}
:host(.duet-theme-turva2) .duet-theme-turva .duet-input-variation-revealable.has-focus .duet-input-relative {
  border-color: rgb(23, 42, 59);
}