.input-field {
  width: 100%;
}

.input-field-container {
  position: relative;
}

.input-field-container.with-helper {
  margin-bottom: 16px;
}

.input-field-input {
  width: 100%;
  border-radius: 2px;
  border: 1px solid #aeb0bc;
  padding: 16px 20px;
  color: #292929;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 16px;
  background: #fff;
  outline: none;
}

.input-field-input:hover {
  background: #f9fafc;
}

.input-field-input:focus {
  color: #122367;
  border-color: #3468d8;
}

.input-field-input::placeholder {
  color: #aeb0bc;
  opacity: 1;
}

.input-field-input:read-only {
  color: #757780;
  pointer-events: none;
}

.input-field-input:read-only:hover {
  background: #fff;
  border-color: #aeb0bc;
}

.input-field-input:read-only:focus {
  border-color: #aeb0bc;
}

.input-field-input.error {
  border-color: #d8343e;
}

.input-field-input.input-field-input-with-icon {
  padding-right: 45px;
}

.input-field-icon {
  position: absolute;
  height: 100%;
  top: 0;
  right: 0;
  display: flex;
  padding-right: 14px;
  align-items: center;
}

.input-field-icon > .icon-interactive {
  cursor: pointer;
  color: #aeb0bc;
}

.input-field-icon > .icon-interactive:hover {
  color: #898b98;
}

.input-field-icon > .readonly-icon {
  display: none;
}

.input-field-icon.readonly > .readonly-icon {
  display: flex;
  margin-right: 4px;
}

.input-field-icon > .show-password-icon {
  display: none;
}

.input-field-icon.show-password > .show-password-icon {
  display: flex;
}

.input-field-icon > .hide-password-icon {
  display: none;
}

.input-field-icon.hide-password > .hide-password-icon {
  display: flex;
}

.input-field-helper-text {
  display: none;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}

.input-field-helper-text.error {
  display: block;
  color: #d8343e;
}
