XML 87 R74.htm IDEA: XBRL DOCUMENT
v3.21.1

Stockholders' Equity - Options Outstanding and Exercisable (Details) | 12 Months Ended
--- | ---
Dec. 31, 2020 $ / shares shares
OPTIONS OUTSTANDING |
Number of Shares Outstanding (in shares) | shares | 221,450
Weighted Average Remaining Contractual Life (in years) | 8 years 9 months 18 days
Weighted Average Exercise Price (in dollars per share) | $ 3.45
OPTIONS EXERCISABLE |
Number of Shares Exercisable (in shares) | shares | 38,465
Weighted Average Remaining Contractual Life (in years) | 7 years 7 months 6 days
Weighted Average Exercise Price (in dollars per share) | $ 7.88
Exercise price, range one |
Share-based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices, lower limit (in dollars per share) | 1.45
Range of Exercise Prices, upper limit (in dollars per share) | $ 1.48
OPTIONS OUTSTANDING |
Number of Shares Outstanding (in shares) | shares | 27,525
Weighted Average Remaining Contractual Life (in years) | 9 years 2 months 12 days
Weighted Average Exercise Price (in dollars per share) | $ 1.45
OPTIONS EXERCISABLE |
Number of Shares Exercisable (in shares) | shares | 425
Weighted Average Remaining Contractual Life (in years) | 9 years 2 months 12 days
Weighted Average Exercise Price (in dollars per share) | $ 1.45
Exercise price, range two |
Share-based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices, lower limit (in dollars per share) | 1.49
Range of Exercise Prices, upper limit (in dollars per share) | $ 1.68
OPTIONS OUTSTANDING |
Number of Shares Outstanding (in shares) | shares | 50,000
Weighted Average Remaining Contractual Life (in years) | 9 years 2 months 12 days
Weighted Average Exercise Price (in dollars per share) | $ 1.50
OPTIONS EXERCISABLE |
Number of Shares Exercisable (in shares) | shares | 0
Weighted Average Remaining Contractual Life (in years) | 9 years 2 months 12 days
Weighted Average Exercise Price (in dollars per share) | $ 1.50
Exercise price, range three |
Share-based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices, lower limit (in dollars per share) | 1.69
Range of Exercise Prices, upper limit (in dollars per share) | $ 2.25
OPTIONS OUTSTANDING |
Number of Shares Outstanding (in shares) | shares | 80,975
Weighted Average Remaining Contractual Life (in years) | 8 years 7 months 6 days
Weighted Average Exercise Price (in dollars per share) | $ 2.10
OPTIONS EXERCISABLE |
Number of Shares Exercisable (in shares) | shares | 21,250
Weighted Average Remaining Contractual Life (in years) | 8 years 6 months
Weighted Average Exercise Price (in dollars per share) | $ 2.10
Exercise price, range four |
Share-based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices, lower limit (in dollars per share) | 2.26
Range of Exercise Prices, upper limit (in dollars per share) | $ 5.79
OPTIONS OUTSTANDING |
Number of Shares Outstanding (in shares) | shares | 31,380
Weighted Average Remaining Contractual Life (in years) | 8 years 9 months 18 days
Weighted Average Exercise Price (in dollars per share) | $ 2.55
OPTIONS EXERCISABLE |
Number of Shares Exercisable (in shares) | shares | 7,420
Weighted Average Remaining Contractual Life (in years) | 8 years 8 months 12 days
Weighted Average Exercise Price (in dollars per share) | $ 2.40
Exercise price, range five |
Share-based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices, lower limit (in dollars per share) | 5.80
Range of Exercise Prices, upper limit (in dollars per share) | $ 53.50
OPTIONS OUTSTANDING |
Number of Shares Outstanding (in shares) | shares | 31,570
Weighted Average Remaining Contractual Life (in years) | 8 years 1 month 6 days
Weighted Average Exercise Price (in dollars per share) | $ 12.64
OPTIONS EXERCISABLE |
Number of Shares Exercisable (in shares) | shares | 9,370
Weighted Average Remaining Contractual Life (in years) | 4 years 3 months 18 days
Weighted Average Exercise Price (in dollars per share) | $ 25.61

X
- Definition Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Options Exercisable [Abstract] + References No definition available. + Details
Name: | efoi_SharebasedCompensationSharesAuthorizedunderStockOptionPlansExercisePriceRangeOptionsExercisableAbstract
Namespace Prefix: | efoi_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Options Outstanding [Abstract] + References No definition available. + Details
Name: | efoi_SharebasedCompensationSharesAuthorizedunderStockOptionPlansExercisePriceRangeOptionsOutstandingAbstract
Namespace Prefix: | efoi_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (g) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition The number of shares reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(iii) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(i)-(ii) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition The ceiling of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (g) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(iii) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Definition The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(i)-(ii) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Definition Weighted average remaining contractual term of outstanding stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (e)(1) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=efoi_ExercisePriceRangeOneMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=efoi_ExercisePriceRangeTwoMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=efoi_ExercisePriceRangeThreeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=efoi_ExercisePriceRangeFourMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=efoi_ExercisePriceRangeFiveMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |