XML 94 R79.htm IDEA: XBRL DOCUMENT
v3.24.0.1

Note 17 - Stock-based Compensation - Stock Options Activities, by Exercise Price Range (Details) | 12 Months Ended
--- | ---
Dec. 31, 2023 $ / shares shares
Number outstanding, weighted average exercise price (in dollars per share) | $ / shares | $ 9.13
Number outstanding (in shares) | shares | 34,000
Number outstanding, weighted average remaining contractual life (Year) | 2 years 5 months 15 days
Number exercisable (in shares) | shares | 34,000
Number exercisable, weighted average exercise price (in dollars per share) | $ / shares | $ 9.13
Price Range 1 [Member] |
Number outstanding, weighted average exercise price (in dollars per share) | $ / shares | $ 12.07
Number outstanding (in shares) | shares | 10,000
Number outstanding, weighted average remaining contractual life (Year) | 8 months 15 days
Number exercisable (in shares) | shares | 10,000
Number exercisable, weighted average exercise price (in dollars per share) | $ / shares | $ 12.07
Price Range 2 [Member] |
Number outstanding, weighted average exercise price (in dollars per share) | $ / shares | $ 11.56
Number outstanding (in shares) | shares | 4,000
Number outstanding, weighted average remaining contractual life (Year) | 1 year 21 days
Number exercisable (in shares) | shares | 4,000
Number exercisable, weighted average exercise price (in dollars per share) | $ / shares | $ 11.56
Price Range3 [Member] |
Number outstanding, weighted average exercise price (in dollars per share) | $ / shares | $ 7.18
Number outstanding (in shares) | shares | 20,000
Number outstanding, weighted average remaining contractual life (Year) | 3 years 7 months 9 days
Number exercisable (in shares) | shares | 20,000
Number exercisable, weighted average exercise price (in dollars per share) | $ / shares | $ 7.18

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 -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(iii) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2 + 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 -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(i)-(ii) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

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 -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(iii) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
Namespace Prefix: | us-gaap_
Data Type: | dtr-types: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 -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(i)-(ii) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
Namespace Prefix: | us-gaap_
Data Type: | dtr-types: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 -Topic 718 -SubTopic 10 -Subparagraph (e)(1) -Name Accounting Standards Codification -Paragraph 2 -Section 50 -Publisher FASB -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2 + 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=ff_PriceRange1Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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

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