XML 54 R40.htm IDEA: XBRL DOCUMENT
v3.22.4

Summary of Significant Accounting Policies and Estimates - Allowance for Credit Losses (Details) - USD ($) $ in Thousands | 12 Months Ended
--- | ---
Dec. 31, 2022 | Dec. 31, 2021 | Dec. 31, 2020
Allowance for Doubtful Accounts Receivable [Roll Forward] |  |  |
Balance at beginning of year | $ 10,110 | $ 10,709 |
Bad debt expense (benefit) | 2,670 | (1,452) | $ 5,253
Deductions for uncollectible receivables written off, net of recoveries | (1,206) | (986) |
Credit allowance of acquired receivables on the acquisition date | 667 | 1,839 |
Balance at end of year | 12,241 | 10,110 | 10,709
Service |  |  |
Allowance for Doubtful Accounts Receivable [Roll Forward] |  |  |
Balance at beginning of year | 3,294 | 4,637 |
Bad debt expense (benefit) | 2,431 | (970) |
Deductions for uncollectible receivables written off, net of recoveries | (804) | (742) |
Credit allowance of acquired receivables on the acquisition date | 324 | 369 |
Balance at end of year | 5,245 | 3,294 | 4,637
Construction |  |  |
Allowance for Doubtful Accounts Receivable [Roll Forward] |  |  |
Balance at beginning of year | 6,758 | 6,028 |
Bad debt expense (benefit) | 232 | (496) |
Deductions for uncollectible receivables written off, net of recoveries | (402) | (244) |
Credit allowance of acquired receivables on the acquisition date | 343 | 1,470 |
Balance at end of year | 6,931 | 6,758 | 6,028
Other. |  |  |
Allowance for Doubtful Accounts Receivable [Roll Forward] |  |  |
Balance at beginning of year | 58 | 44 |
Bad debt expense (benefit) | 7 | 14 |
Balance at end of year | $ 65 | $ 58 | $ 44

X
- Definition Represents the allowance for receivables acquired in a business acquisition. + References No definition available. + Details
Name: | fix_AllowanceForDoubtfulAccountsReceivableAcquired
Namespace Prefix: | fix_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of allowance for credit loss on accounts receivable. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 326 -SubTopic 20 -Section 50 -Paragraph 13 -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 4 -URI https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 326 -SubTopic 20 -Section 50 -Paragraph 13 -Subparagraph (f) -URI https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 326 -SubTopic 20 -Section 45 -Paragraph 1 -URI https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(4)) -URI https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682 + Details
Name: | us-gaap_AllowanceForDoubtfulAccountsReceivable
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period. + References No definition available. + Details
Name: | us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of direct write-downs of accounts receivable charged against the allowance. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 326 -SubTopic 20 -Section 50 -Paragraph 13 -Subparagraph (d) -URI https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447 + Details
Name: | us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of expense (reversal of expense) for expected credit loss on accounts receivable. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 326 -SubTopic 20 -Section 50 -Paragraph 13 -Subparagraph (b) -URI https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(5)) -URI https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227 + Details
Name: | us-gaap_ProvisionForDoubtfulAccounts
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Details
Name: | srt_ProductOrServiceAxis=fix_ServicesActivityMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=fix_ConstructionActivitiesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=us-gaap_ProductAndServiceOtherMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |