Stock-Based Compensation (Details - Narrative)
$ in Millions
9 Months Ended
Sep. 30, 2016
USD ($)
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Option expiration period (in years) 10 years
Vesting period (in years) 4 years
Unrecognized compensation expense $ 469.6
Recognition period (in years) 2 years 9 months 18 days
ESPP [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Maximum Payroll Deduction, Percent 15.00%
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Purchase Period 6 months
Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent 85.00%