Note 7 - Other Equity - Stock Options Outstanding (Details) | Jun. 30, 2018USD ($) | Dec. 31, 2017USD ($) | Jun. 30, 2017USD ($) | Dec. 31, 2016USD ($) |
Statement Line Items [Line Items] | | | | |
Options outstanding | 4,334,000 | 2,344,000 | 2,328,000 | 2,005,000 |
Options outstanding, weighted average contractual life | 8.2 | | | |
Options outstanding, weighted average exercise price | $ 3.16 | $ 3.46 | $ 3.40 | $ 4.31 |
Options exercisable | 2,561,000 | | | |
Options exercisable, weighted average exercise price | $ 3.51 | | | |
Range one [member] | | | | |
Statement Line Items [Line Items] | | | | |
Options outstanding | 824,000 | | | |
Options outstanding, weighted average contractual life | 8.5 | | | |
Options outstanding, weighted average exercise price | $ 1.26 | | | |
Options exercisable | 401,000 | | | |
Options exercisable, weighted average exercise price | $ 1.28 | | | |
Range one [member] | Bottom of range [member] | | | | |
Statement Line Items [Line Items] | | | | |
Range of exercise prices | 1.03 | | | |
Range one [member] | Top of range [member] | | | | |
Statement Line Items [Line Items] | | | | |
Range of exercise prices | $ 2.66 | | | |
Range two [member] | | | | |
Statement Line Items [Line Items] | | | | |
Options outstanding | 790,000 | | | |
Options outstanding, weighted average contractual life | 9.6 | | | |
Options outstanding, weighted average exercise price | $ 2.78 | | | |
Options exercisable | 790,000 | | | |
Options exercisable, weighted average exercise price | $ 2.78 | | | |
Range two [member] | Bottom of range [member] | | | | |
Statement Line Items [Line Items] | | | | |
Range of exercise prices | 2.67 | | | |
Range two [member] | Top of range [member] | | | | |
Statement Line Items [Line Items] | | | | |
Range of exercise prices | $ 2.85 | | | |
Range three [member] | | | | |
Statement Line Items [Line Items] | | | | |
Options outstanding | 359,000 | | | |
Options outstanding, weighted average contractual life | 7.9 | | | |
Options outstanding, weighted average exercise price | $ 2.91 | | | |
Options exercisable | 184,000 | | | |
Options exercisable, weighted average exercise price | $ 2.91 | | | |
Range three [member] | Bottom of range [member] | | | | |
Statement Line Items [Line Items] | | | | |
Range of exercise prices | 2.86 | | | |
Range three [member] | Top of range [member] | | | | |
Statement Line Items [Line Items] | | | | |
Range of exercise prices | $ 3 | | | |
Range four [member] | | | | |
Statement Line Items [Line Items] | | | | |
Options outstanding | 1,165,000 | | | |
Options outstanding, weighted average contractual life | 9.5 | | | |
Options outstanding, weighted average exercise price | $ 3.09 | | | |
Options exercisable | 28,000 | | | |
Options exercisable, weighted average exercise price | $ 3.70 | | | |
Range four [member] | Bottom of range [member] | | | | |
Statement Line Items [Line Items] | | | | |
Range of exercise prices | 3.01 | | | |
Range four [member] | Top of range [member] | | | | |
Statement Line Items [Line Items] | | | | |
Range of exercise prices | $ 3.97 | | | |
Range five [member] | | | | |
Statement Line Items [Line Items] | | | | |
Options outstanding | 1,196,000 | | | |
Options outstanding, weighted average contractual life | 6.1 | | | |
Options outstanding, weighted average exercise price | $ 4.87 | | | |
Options exercisable | 1,158,000 | | | |
Options exercisable, weighted average exercise price | $ 4.86 | | | |
Range five [member] | Bottom of range [member] | | | | |
Statement Line Items [Line Items] | | | | |
Range of exercise prices | 3.98 | | | |
Range five [member] | Top of range [member] | | | | |
Statement Line Items [Line Items] | | | | |
Range of exercise prices | $ 32.88 | | | |