XML 83 R73.htm IDEA: XBRL DOCUMENT
v3.23.1

Stockholders' Equity - Stock-based Compensation (Details) - USD ($) $ in Millions | 12 Months Ended |  |
--- | --- | --- | ---
Dec. 31, 2022 | Dec. 31, 2021 | Sep. 12, 2022 | Mar. 18, 2020
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] |  |  |  |
Unamortized stock compensation expense | $ 0.1 | $ 0.3 |  |
Remaining weighted average life | 2 years 9 months 18 days | 2 years 8 months 12 days |  |
Chief Executive Officer |  |  |  |
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] |  |  |  |
Number of shares authorized (in shares) |  |  | 150,000 |
Stock option |  |  |  |
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] |  |  |  |
Vesting period | 10 years |  |  |
Stock option | Non-Employee Director |  |  |  |
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] |  |  |  |
Vesting period | 1 year |  |  |
Minimum | Stock option |  |  |  |
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] |  |  |  |
Vesting period | 1 year |  |  |
Maximum | Stock option |  |  |  |
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] |  |  |  |
Vesting period | 4 years |  |  |
2020 Plan |  |  |  |
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] |  |  |  |
Number of shares authorized (in shares) |  |  |  | 350,000
Number of shares available for grant (in shares) | 480,741 |  |  | 300,000
2014 Plan | Minimum | Employee |  |  |  |
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] |  |  |  |
Vesting period | 3 years |  |  |
2014 Plan | Maximum | Employee |  |  |  |
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] |  |  |  |
Vesting period | 4 years |  |  |

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

X
- Definition Amount of cost not yet recognized for nonvested award under share-based payment arrangement. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (i) -URI https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901 + Details
Name: | us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (i) -URI https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901 + Details
Name: | us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition. + References Reference 1: http://www.xbrl.org/2003/role/exampleRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (a)(1) -URI https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of shares authorized for issuance under share-based payment arrangement. + References Reference 1: http://www.xbrl.org/2003/role/exampleRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (a)(3) -URI https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable. + 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 https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Details
Name: | srt_TitleOfIndividualAxis=srt_ChiefExecutiveOfficerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_TitleOfIndividualAxis=efoi_NonEmployeeDirectorMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PlanNameAxis=efoi_Plan2020Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PlanNameAxis=efoi_Plan2014Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_TitleOfIndividualAxis=efoi_EmployeeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |