XML 70 R57.htm IDEA: XBRL DOCUMENT
v3.8.0.1

Long-Term Debt - Other (Details) - New Credit Agreement $ in Thousands |  | 12 Months Ended |
--- | --- | --- | ---
May 05, 2017 | Dec. 31, 2017 USD ($) | Dec. 31, 2016 USD ($)
Debt covenants |  |  |
Maximum Net Leverage Ratio |  | 3.25 |
Minimum FCCR |  | 1.25 |
Revolving Facility |  |  |
Long-Term Debt |  |  |
Revolving Facility |  | $ 250,000 | $ 125,000
Less: standby letters of credit |  | (47,055) | (49,080)
Capacity under Revolving Facility |  | $ 202,945 | $ 75,920
Debt Covenants Term Period One |  |  |
Debt covenants |  |  |
Maximum Net Leverage Ratio | 3.25 |  |
Minimum FCCR | 1.25 |  |
Debt Covenants Term Period Two |  |  |
Debt covenants |  |  |
Maximum Net Leverage Ratio | 3.00 |  |
Minimum FCCR | 1.25 |  |

X
- Definition Represents the minimum fixed charge coverage ratio allowed under the terms of the credit agreement's covenants. + References No definition available. + Details
Name: | bld_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio
Namespace Prefix: | bld_
Data Type: | xbrli:pureItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the ratio of total debt (less certain cash) to consolidated adjusted earnings before, interest, taxes, depreciation and amortization allowed under the terms of the credit agreement's covenants. + References No definition available. + Details
Name: | bld_DebtInstrumentCovenantNetLeverageRatio
Namespace Prefix: | bld_
Data Type: | xbrli:pureItemType
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_DebtInstrumentLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The total amount of the contingent obligation under letters of credit outstanding as of the reporting date. + References No definition available. + Details
Name: | us-gaap_LettersOfCreditOutstandingAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of current borrowing capacity under the credit facility considering any current restrictions on the amount that could be borrowed (for example, borrowings may be limited by the amount of current assets), but without considering any amounts currently outstanding under the facility. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.19(b),22(b)) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + Details
Name: | us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.19(b),22(b)) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + Details
Name: | us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- References No definition available. + Details
Name: | us-gaap_LongTermDebtOtherDisclosuresAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_DebtInstrumentAxis=bld_SeniorSecuredCreditAgreementMay2017Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShortTermDebtTypeAxis=us-gaap_RevolvingCreditFacilityMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | bld_DebtAgreementTermsAxis=bld_DebtCovenantsTermPeriodOneMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | bld_DebtAgreementTermsAxis=bld_DebtCovenantsTermPeriodTwoMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |