v3.8.0.1

Unaudited Quarterly Financial Data - Sales Prices for Shares of Common Stock (Details) - $ / shares | Dec. 31, 2017 | Sep. 30, 2017 | Jun. 30, 2017 | Mar. 31, 2017 | Dec. 31, 2016 | Sep. 30, 2016 | Jun. 30, 2016 | Mar. 31, 2016
--- | --- | --- | --- | --- | --- | --- | --- | ---
Maximum | Common Class A |  |  |  |  |  |  |  |
Class of Stock [Line Items] |  |  |  |  |  |  |  |
Sales price (in usd per share) | $ 15.40 | $ 16.55 | $ 17.18 | $ 16.48 | $ 13.50 | $ 11.16 | $ 9.80 | $ 10.00
Maximum | Warrants |  |  |  |  |  |  |  |
Class of Stock [Line Items] |  |  |  |  |  |  |  |
Sales price (in usd per share) | 2.49 | 3.04 | 3.57 | 3.00 | 1.98 | 1.38 | 0.36 | 0.40
Minimum | Common Class A |  |  |  |  |  |  |  |
Class of Stock [Line Items] |  |  |  |  |  |  |  |
Sales price (in usd per share) | 11.00 | 13.00 | 14.93 | 12.75 | 10.67 | 9.72 | 9.50 | 9.50
Minimum | Warrants |  |  |  |  |  |  |  |
Class of Stock [Line Items] |  |  |  |  |  |  |  |
Sales price (in usd per share) | $ 1.23 | $ 1.69 | $ 2.43 | $ 1.73 | $ 1.13 | $ 0.25 | $ 0.16 | $ 0.21

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_ClassOfStockLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Price of a single share of a number of saleable stocks of a company. + References No definition available. + Details
Name: | us-gaap_SharePrice
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Details
Name: | us-gaap_RangeAxis=us-gaap_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementEquityComponentsAxis=us-gaap_WarrantMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RangeAxis=us-gaap_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |