XML 26 R2.htm IDEA: XBRL DOCUMENT
v3.22.4

Pay vs Performance Disclosure pure in Millions | 12 Months Ended
--- | ---
Dec. 31, 2022 USD ($) | Dec. 31, 2021 USD ($) | Dec. 31, 2020 USD ($)
Pay vs Performance Disclosure [Table] |  |  |
Pay vs Performance [Table Text Block] | Pay Versus Performance Pay Versus Performance Table The following table sets forth additional compensation information for our CEO and our other Named Executives (Other NEOs) (averaged) along with total shareholder return, net income, and Adjusted EBITDA performance results for fiscal 2022, 2021 and 2020.
​ | Year | ​ | ​ | Summary Comp. Table Total for H. Chris Killingstad ($)(1) | ​ | ​ | Summary Comp. Table Total for David W. Huml ($)(1) | ​ | ​ | Comp. Actually Paid to H. Chris Killingstad ($)(1)(2) | ​ | ​ | Comp. Actually Paid to David W. Huml ($)(1)(2) | ​ | ​ | Average Summary Comp. Table Total for Non-CEO NEOs ($)(1) | ​ | ​ | Average Comp. Actually Paid to Non-CEO NEOs ($)(1)(2) | ​ | ​ | Year-end value of $100 invested on 12/31/2019 in: | ​ | ​ | Net Income (in millions) ($) | ​ | ​ | Adjusted EBITDA (in millions) ($)(4) | ​
​ | Tennant Company ($) | ​ | ​ | S&P 500 Industrials (Sector) (TR) ($)(3) | ​
​ | 2022 | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | 4,104,579 | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | 2,122,227 | ​ | ​ | ​ | ​ | ​ | 1,294,266 | ​ | ​ | ​ | ​ | ​ | 698,603 | ​ | ​ | ​ | ​ | ​ | 82.27 | ​ | ​ | ​ | ​ | ​ | 127.15 | ​ | ​ | ​ | ​ | ​ | 66.3 | ​ | ​ | ​ | ​ | ​ | 133.7 | ​ | ​
​ | 2021 | ​ | ​ | ​ | ​ | 2,709,314 | ​ | ​ | ​ | ​ | ​ | 4,303,328 | ​ | ​ | ​ | ​ | ​ | 4,658,162 | ​ | ​ | ​ | ​ | ​ | 4,921,346 | ​ | ​ | ​ | ​ | ​ | 1,375,494 | ​ | ​ | ​ | ​ | ​ | 1,482,689 | ​ | ​ | ​ | ​ | ​ | 106.64 | ​ | ​ | ​ | ​ | ​ | 134.52 | ​ | ​ | ​ | ​ | ​ | 64.9 | ​ | ​ | ​ | ​ | ​ | 140.2 | ​ | ​
​ | 2020 | ​ | ​ | ​ | ​ | 4,245,227 | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | 405,184 | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | 1,199,543 | ​ | ​ | ​ | ​ | ​ | 202,581 | ​ | ​ | ​ | ​ | ​ | 91.24 | ​ | ​ | ​ | ​ | ​ | 111.06 | ​ | ​ | ​ | ​ | ​ | 33.7 | ​ | ​ | ​ | ​ | ​ | 119.4 | ​ | ​
​ (1) For 2022, the CEO was Mr. Huml (Current CEO) and the Other NEOs were Fay West, Richard H. Zay, Carol E. McKnight, and Kristin A. Erickson. ​ For 2021, the CEO was H. Chris Killingstad (Prior CEO) until February 28, 2021, and then David W. Huml became CEO March 1, 2021, and the Other NEOs were Fay West, Richard H. Zay, Carol E. McKnight, Daniel E. Glusick, Thomas Paulson, and Andrew Cebulla. For 2020, the CEO was H. Chris Killingstad and the Other NEOs were David W. Huml, Richard H. Zay, Carol E. McKnight, Andrew Cebulla, Keith A. Woodward, and Mary E. Talbott. (2) Compensation actually paid was determined by making the following adjustments for equity awards: ​
​ | ​ | ​ | ​ | 2022 | ​ | ​ | 2021 | ​ | ​ | 2020 | ​
​ | ​ | ​ | ​ | Current CEO ($) | ​ | ​ | Average of Other NEOs ($) | ​ | ​ | Current CEO ($) | ​ | ​ | Prior CEO ($) | ​ | ​ | Average of Other NEOs ($) | ​ | ​ | CEO ($) | ​ | ​ | Average of Other NEOs ($) | ​
​ | Total Compensation from SCT | ​ | ​ | ​ | ​ | 4,104,579 | ​ | ​ | ​ | ​ | ​ | 1,294,266 | ​ | ​ | ​ | ​ | ​ | 4,303,328 | ​ | ​ | ​ | ​ | ​ | 2,709,314 | ​ | ​ | ​ | ​ | ​ | 1,375,494 | ​ | ​ | ​ | ​ | ​ | 4,245,227 | ​ | ​ | ​ | ​ | ​ | 1,199,543 | ​ | ​
​ | Subtraction: | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | SCT Amounts | ​ | ​ | ​ | ​ | 2,650,500 | ​ | ​ | ​ | ​ | ​ | 637,600 | ​ | ​ | ​ | ​ | ​ | 2,597,509 | ​ | ​ | ​ | ​ | ​ | 1,732,302 | ​ | ​ | ​ | ​ | ​ | 674,364 | ​ | ​ | ​ | ​ | ​ | 2,687,909 | ​ | ​ | ​ | ​ | ​ | 505,947 | ​ | ​
​ | Adjustments: | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | Addition: Fair value at year-end of awards granted during the covered fiscal year that are outstanding and unvested at year-end | ​ | ​ | ​ | ​ | 1,800,678 | ​ | ​ | ​ | ​ | ​ | 433,167 | ​ | ​ | ​ | ​ | ​ | 2,374,029 | ​ | ​ | ​ | ​ | ​ | 880,417 | ​ | ​ | ​ | ​ | ​ | 593,926 | ​ | ​ | ​ | ​ | ​ | 1,139,411 | ​ | ​ | ​ | ​ | ​ | 140,918 | ​ | ​
​ | Addition (Subtraction): Year-over-year change in fair value of awards granted in any prior fiscal year that are outstanding and unvested at year end | ​ | ​ | ​ | ​ | (1,105,089) | ​ | ​ | ​ | ​ | ​ | (349,437) | ​ | ​ | ​ | ​ | ​ | 691,876 | ​ | ​ | ​ | ​ | ​ | 2,465,749 | ​ | ​ | ​ | ​ | ​ | 165,429 | ​ | ​ | ​ | ​ | ​ | (2,228,575) | ​ | ​ | ​ | ​ | ​ | (257,006) | ​ | ​
​ | Addition (Subtraction): Change as of the vesting date (from the end of the prior fiscal year) in fair value of awards granted in any prior fiscal year for which vesting conditions were satisfied during such year | ​ | ​ | ​ | ​ | (32,042) | ​ | ​ | ​ | ​ | ​ | (43,906) | ​ | ​ | ​ | ​ | ​ | 145,561 | ​ | ​ | ​ | ​ | ​ | 315,845 | ​ | ​ | ​ | ​ | ​ | 47,983 | ​ | ​ | ​ | ​ | ​ | (79,430) | ​ | ​ | ​ | ​ | ​ | (88,923) | ​ | ​
​ | (Subtraction): Fair value at end of prior year of awards granted in any prior fiscal year that fail to meet the applicable vesting conditions during such year | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | (26,967) | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | (287,560) | ​ | ​
​ | Addition: Dividends on vesting of restricted stock grants | ​ | ​ | ​ | ​ | 4,602 | ​ | ​ | ​ | ​ | ​ | 2,112 | ​ | ​ | ​ | ​ | ​ | 4,061 | ​ | ​ | ​ | ​ | ​ | 19,139 | ​ | ​ | ​ | ​ | ​ | 1,189 | ​ | ​ | ​ | ​ | ​ | 16,461 | ​ | ​ | ​ | ​ | ​ | 1,556 | ​ | ​
​ | Compensation Actually Paid (as calculated) | ​ | ​ | ​ | ​ | 2,122,227 | ​ | ​ | ​ | ​ | ​ | 698,603 | ​ | ​ | ​ | ​ | ​ | 4,921,346 | ​ | ​ | ​ | ​ | ​ | 4,658,162 | ​ | ​ | ​ | ​ | ​ | 1,482,689 | ​ | ​ | ​ | ​ | ​ | 405,184 | ​ | ​ | ​ | ​ | ​ | 202,581 | ​ | ​
Summary Compensation Table amounts reflect the grant date fair values of equity awards. For CAP calculation purposes, adjustments have been made to reflect fair values as of each measurement date. For stock options, this includes updated assumptions for term, stock price volatility, dividend yield, and risk-free rates. For performance-based restricted stock units, this includes actual and forecasted funding results where appropriate. (3) Company and peer group TSR for each year reflects what the cumulative value of $100 would be, including reinvestment of dividends, if such amount were invested on December 31, 2019. For purposes of the table, the Company’s peer group is the S&P 500 Industrials (Sector) (TR), as reflected in our stock performance graph in our Annual Report on Form 10-K. ​ (4) Our company-selected measure, which is the measure we believe represents the most important financial performance not otherwise presented in the table above that we use to link compensation actually paid to our NEOs for fiscal 2022 to our performance, is adjusted earnings before interest, tax, depreciation and amortization in dollars (“Adjusted EBITDA $”), a non-GAAP measure, which is defined above under “Compensation Discussion and Analysis — Key Compensation Decisions for 2022 — 2022 Incentive Plan Structure.” |  |
Company Selected Measure Name | Adjusted EBITDA |  |
Named Executive Officers, Footnote [Text Block] | (1) For 2022, the CEO was Mr. Huml (Current CEO) and the Other NEOs were Fay West, Richard H. Zay, Carol E. McKnight, and Kristin A. Erickson. ​ For 2021, the CEO was H. Chris Killingstad (Prior CEO) until February 28, 2021, and then David W. Huml became CEO March 1, 2021, and the Other NEOs were Fay West, Richard H. Zay, Carol E. McKnight, Daniel E. Glusick, Thomas Paulson, and Andrew Cebulla. For 2020, the CEO was H. Chris Killingstad and the Other NEOs were David W. Huml, Richard H. Zay, Carol E. McKnight, Andrew Cebulla, Keith A. Woodward, and Mary E. Talbott. |  |
Peer Group Issuers, Footnote [Text Block] | (3) Company and peer group TSR for each year reflects what the cumulative value of $100 would be, including reinvestment of dividends, if such amount were invested on December 31, 2019. For purposes of the table, the Company’s peer group is the S&P 500 Industrials (Sector) (TR), as reflected in our stock performance graph in our Annual Report on Form 10-K. |  |
Adjustment To PEO Compensation, Footnote [Text Block] | (2) Compensation actually paid was determined by making the following adjustments for equity awards: ​
​ | ​ | ​ | ​ | 2022 | ​ | ​ | 2021 | ​ | ​ | 2020 | ​
​ | ​ | ​ | ​ | Current CEO ($) | ​ | ​ | Average of Other NEOs ($) | ​ | ​ | Current CEO ($) | ​ | ​ | Prior CEO ($) | ​ | ​ | Average of Other NEOs ($) | ​ | ​ | CEO ($) | ​ | ​ | Average of Other NEOs ($) | ​
​ | Total Compensation from SCT | ​ | ​ | ​ | ​ | 4,104,579 | ​ | ​ | ​ | ​ | ​ | 1,294,266 | ​ | ​ | ​ | ​ | ​ | 4,303,328 | ​ | ​ | ​ | ​ | ​ | 2,709,314 | ​ | ​ | ​ | ​ | ​ | 1,375,494 | ​ | ​ | ​ | ​ | ​ | 4,245,227 | ​ | ​ | ​ | ​ | ​ | 1,199,543 | ​ | ​
​ | Subtraction: | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | SCT Amounts | ​ | ​ | ​ | ​ | 2,650,500 | ​ | ​ | ​ | ​ | ​ | 637,600 | ​ | ​ | ​ | ​ | ​ | 2,597,509 | ​ | ​ | ​ | ​ | ​ | 1,732,302 | ​ | ​ | ​ | ​ | ​ | 674,364 | ​ | ​ | ​ | ​ | ​ | 2,687,909 | ​ | ​ | ​ | ​ | ​ | 505,947 | ​ | ​
​ | Adjustments: | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | Addition: Fair value at year-end of awards granted during the covered fiscal year that are outstanding and unvested at year-end | ​ | ​ | ​ | ​ | 1,800,678 | ​ | ​ | ​ | ​ | ​ | 433,167 | ​ | ​ | ​ | ​ | ​ | 2,374,029 | ​ | ​ | ​ | ​ | ​ | 880,417 | ​ | ​ | ​ | ​ | ​ | 593,926 | ​ | ​ | ​ | ​ | ​ | 1,139,411 | ​ | ​ | ​ | ​ | ​ | 140,918 | ​ | ​
​ | Addition (Subtraction): Year-over-year change in fair value of awards granted in any prior fiscal year that are outstanding and unvested at year end | ​ | ​ | ​ | ​ | (1,105,089) | ​ | ​ | ​ | ​ | ​ | (349,437) | ​ | ​ | ​ | ​ | ​ | 691,876 | ​ | ​ | ​ | ​ | ​ | 2,465,749 | ​ | ​ | ​ | ​ | ​ | 165,429 | ​ | ​ | ​ | ​ | ​ | (2,228,575) | ​ | ​ | ​ | ​ | ​ | (257,006) | ​ | ​
​ | Addition (Subtraction): Change as of the vesting date (from the end of the prior fiscal year) in fair value of awards granted in any prior fiscal year for which vesting conditions were satisfied during such year | ​ | ​ | ​ | ​ | (32,042) | ​ | ​ | ​ | ​ | ​ | (43,906) | ​ | ​ | ​ | ​ | ​ | 145,561 | ​ | ​ | ​ | ​ | ​ | 315,845 | ​ | ​ | ​ | ​ | ​ | 47,983 | ​ | ​ | ​ | ​ | ​ | (79,430) | ​ | ​ | ​ | ​ | ​ | (88,923) | ​ | ​
​ | (Subtraction): Fair value at end of prior year of awards granted in any prior fiscal year that fail to meet the applicable vesting conditions during such year | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | (26,967) | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | (287,560) | ​ | ​
​ | Addition: Dividends on vesting of restricted stock grants | ​ | ​ | ​ | ​ | 4,602 | ​ | ​ | ​ | ​ | ​ | 2,112 | ​ | ​ | ​ | ​ | ​ | 4,061 | ​ | ​ | ​ | ​ | ​ | 19,139 | ​ | ​ | ​ | ​ | ​ | 1,189 | ​ | ​ | ​ | ​ | ​ | 16,461 | ​ | ​ | ​ | ​ | ​ | 1,556 | ​ | ​
​ | Compensation Actually Paid (as calculated) | ​ | ​ | ​ | ​ | 2,122,227 | ​ | ​ | ​ | ​ | ​ | 698,603 | ​ | ​ | ​ | ​ | ​ | 4,921,346 | ​ | ​ | ​ | ​ | ​ | 4,658,162 | ​ | ​ | ​ | ​ | ​ | 1,482,689 | ​ | ​ | ​ | ​ | ​ | 405,184 | ​ | ​ | ​ | ​ | ​ | 202,581 | ​ | ​
Summary Compensation Table amounts reflect the grant date fair values of equity awards. For CAP calculation purposes, adjustments have been made to reflect fair values as of each measurement date. For stock options, this includes updated assumptions for term, stock price volatility, dividend yield, and risk-free rates. For performance-based restricted stock units, this includes actual and forecasted funding results where appropriate. |  |
Non-PEO NEO Average Total Compensation Amount | $ 1,294,266 | $ 1,375,494 | $ 1,199,543
Non-PEO NEO Average Compensation Actually Paid Amount | $ 698,603 | 1,482,689 | 202,581
Adjustment to Non-PEO NEO Compensation Footnote [Text Block] | (2) Compensation actually paid was determined by making the following adjustments for equity awards: ​
​ | ​ | ​ | ​ | 2022 | ​ | ​ | 2021 | ​ | ​ | 2020 | ​
​ | ​ | ​ | ​ | Current CEO ($) | ​ | ​ | Average of Other NEOs ($) | ​ | ​ | Current CEO ($) | ​ | ​ | Prior CEO ($) | ​ | ​ | Average of Other NEOs ($) | ​ | ​ | CEO ($) | ​ | ​ | Average of Other NEOs ($) | ​
​ | Total Compensation from SCT | ​ | ​ | ​ | ​ | 4,104,579 | ​ | ​ | ​ | ​ | ​ | 1,294,266 | ​ | ​ | ​ | ​ | ​ | 4,303,328 | ​ | ​ | ​ | ​ | ​ | 2,709,314 | ​ | ​ | ​ | ​ | ​ | 1,375,494 | ​ | ​ | ​ | ​ | ​ | 4,245,227 | ​ | ​ | ​ | ​ | ​ | 1,199,543 | ​ | ​
​ | Subtraction: | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | SCT Amounts | ​ | ​ | ​ | ​ | 2,650,500 | ​ | ​ | ​ | ​ | ​ | 637,600 | ​ | ​ | ​ | ​ | ​ | 2,597,509 | ​ | ​ | ​ | ​ | ​ | 1,732,302 | ​ | ​ | ​ | ​ | ​ | 674,364 | ​ | ​ | ​ | ​ | ​ | 2,687,909 | ​ | ​ | ​ | ​ | ​ | 505,947 | ​ | ​
​ | Adjustments: | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | Addition: Fair value at year-end of awards granted during the covered fiscal year that are outstanding and unvested at year-end | ​ | ​ | ​ | ​ | 1,800,678 | ​ | ​ | ​ | ​ | ​ | 433,167 | ​ | ​ | ​ | ​ | ​ | 2,374,029 | ​ | ​ | ​ | ​ | ​ | 880,417 | ​ | ​ | ​ | ​ | ​ | 593,926 | ​ | ​ | ​ | ​ | ​ | 1,139,411 | ​ | ​ | ​ | ​ | ​ | 140,918 | ​ | ​
​ | Addition (Subtraction): Year-over-year change in fair value of awards granted in any prior fiscal year that are outstanding and unvested at year end | ​ | ​ | ​ | ​ | (1,105,089) | ​ | ​ | ​ | ​ | ​ | (349,437) | ​ | ​ | ​ | ​ | ​ | 691,876 | ​ | ​ | ​ | ​ | ​ | 2,465,749 | ​ | ​ | ​ | ​ | ​ | 165,429 | ​ | ​ | ​ | ​ | ​ | (2,228,575) | ​ | ​ | ​ | ​ | ​ | (257,006) | ​ | ​
​ | Addition (Subtraction): Change as of the vesting date (from the end of the prior fiscal year) in fair value of awards granted in any prior fiscal year for which vesting conditions were satisfied during such year | ​ | ​ | ​ | ​ | (32,042) | ​ | ​ | ​ | ​ | ​ | (43,906) | ​ | ​ | ​ | ​ | ​ | 145,561 | ​ | ​ | ​ | ​ | ​ | 315,845 | ​ | ​ | ​ | ​ | ​ | 47,983 | ​ | ​ | ​ | ​ | ​ | (79,430) | ​ | ​ | ​ | ​ | ​ | (88,923) | ​ | ​
​ | (Subtraction): Fair value at end of prior year of awards granted in any prior fiscal year that fail to meet the applicable vesting conditions during such year | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | (26,967) | ​ | ​ | ​ | ​ | ​ | — | ​ | ​ | ​ | ​ | ​ | (287,560) | ​ | ​
​ | Addition: Dividends on vesting of restricted stock grants | ​ | ​ | ​ | ​ | 4,602 | ​ | ​ | ​ | ​ | ​ | 2,112 | ​ | ​ | ​ | ​ | ​ | 4,061 | ​ | ​ | ​ | ​ | ​ | 19,139 | ​ | ​ | ​ | ​ | ​ | 1,189 | ​ | ​ | ​ | ​ | ​ | 16,461 | ​ | ​ | ​ | ​ | ​ | 1,556 | ​ | ​
​ | Compensation Actually Paid (as calculated) | ​ | ​ | ​ | ​ | 2,122,227 | ​ | ​ | ​ | ​ | ​ | 698,603 | ​ | ​ | ​ | ​ | ​ | 4,921,346 | ​ | ​ | ​ | ​ | ​ | 4,658,162 | ​ | ​ | ​ | ​ | ​ | 1,482,689 | ​ | ​ | ​ | ​ | ​ | 405,184 | ​ | ​ | ​ | ​ | ​ | 202,581 | ​ | ​
Summary Compensation Table amounts reflect the grant date fair values of equity awards. For CAP calculation purposes, adjustments have been made to reflect fair values as of each measurement date. For stock options, this includes updated assumptions for term, stock price volatility, dividend yield, and risk-free rates. For performance-based restricted stock units, this includes actual and forecasted funding results where appropriate. |  |
Compensation Actually Paid vs. Total Shareholder Return [Text Block] |  |  |
Compensation Actually Paid vs. Net Income [Text Block] |  |  |
Compensation Actually Paid vs. Company Selected Measure [Text Block] |  |  |
Tabular List [Table Text Block] | Most Important Performance Measures for 2022
​ | ​ | Adjusted EBITDA $1 | ​ | ​
​ | ​ | Adjusted EBITDA %1 | ​ | ​
​ | ​ | Total Revenue | ​ | ​
​ | ​ | 3-Year Average Incentive ROIC 1 | ​ | ​
​ | ​ | 3-Year Average Incentive Cumulative Earnings Per Share 1 | ​ | ​
Total Shareholder Return Amount | $ 82.27 | 106.64 | 91.24
Peer Group Total Shareholder Return Amount | 127.15 | 134.52 | 111.06
Net Income (Loss) | $ 66,300,000 | $ 64,900,000 | $ 33,700,000
Company Selected Measure Amount | 133.7 | 140.2 | 119.4
PEO Name | Mr. Huml |  |
Measure [Axis]: 1 |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Measure Name | Adjusted EBITDA $1 |  |
Non-GAAP Measure Description [Text Block] | (4) Our company-selected measure, which is the measure we believe represents the most important financial performance not otherwise presented in the table above that we use to link compensation actually paid to our NEOs for fiscal 2022 to our performance, is adjusted earnings before interest, tax, depreciation and amortization in dollars (“Adjusted EBITDA $”), a non-GAAP measure, which is defined above under “Compensation Discussion and Analysis — Key Compensation Decisions for 2022 — 2022 Incentive Plan Structure.” |  |
Measure [Axis]: 2 |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Measure Name | Adjusted EBITDA %1 |  |
Measure [Axis]: 3 |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Measure Name | Total Revenue |  |
Measure [Axis]: 4 |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Measure Name | 3-Year Average Incentive ROIC |  |
Measure [Axis]: 5 |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Measure Name | 3-Year Average Incentive Cumulative Earnings Per Share |  |
David W. Huml [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
PEO Total Compensation Amount | $ 4,104,579 | $ 4,303,328 |
PEO Actually Paid Compensation Amount | 2,122,227 | 4,921,346 |
David W. Huml [Member] | SCT Amounts [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | (2,650,500) | (2,597,509) |
David W. Huml [Member] | Fair value at year-end of awards granted during the covered fiscal year that are outstanding and unvested at year-end [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | 1,800,678 | 2,374,029 |
David W. Huml [Member] | Year-over-year change in fair value of awards granted in any prior fiscal year that are outstanding and unvested at year end [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | (1,105,089) | 691,876 |
David W. Huml [Member] | Change as of the vesting date (from the end of the prior fiscal year) in fair value of awards granted in any prior fiscal year for which vesting conditions were satisfied during such year [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | (32,042) | 145,561 |
David W. Huml [Member] | Dividends on vesting of restricted stock grants [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | 4,602 | 4,061 |
H. Chris Killingstad [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
PEO Total Compensation Amount |  | 2,709,314 | $ 4,245,227
PEO Actually Paid Compensation Amount |  | 4,658,162 | 405,184
H. Chris Killingstad [Member] | SCT Amounts [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount |  | (1,732,302) | (2,687,909)
H. Chris Killingstad [Member] | Fair value at year-end of awards granted during the covered fiscal year that are outstanding and unvested at year-end [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount |  | 880,417 | 1,139,411
H. Chris Killingstad [Member] | Year-over-year change in fair value of awards granted in any prior fiscal year that are outstanding and unvested at year end [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount |  | 2,465,749 | (2,228,575)
H. Chris Killingstad [Member] | Change as of the vesting date (from the end of the prior fiscal year) in fair value of awards granted in any prior fiscal year for which vesting conditions were satisfied during such year [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount |  | 315,845 | (79,430)
H. Chris Killingstad [Member] | Dividends on vesting of restricted stock grants [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount |  | 19,139 | 16,461
Non-PEO NEO [Member] | SCT Amounts [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | (637,600) | (674,364) | (505,947)
Non-PEO NEO [Member] | Fair value at year-end of awards granted during the covered fiscal year that are outstanding and unvested at year-end [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | 433,167 | 593,926 | 140,918
Non-PEO NEO [Member] | Year-over-year change in fair value of awards granted in any prior fiscal year that are outstanding and unvested at year end [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | (349,437) | 165,429 | (257,006)
Non-PEO NEO [Member] | Change as of the vesting date (from the end of the prior fiscal year) in fair value of awards granted in any prior fiscal year for which vesting conditions were satisfied during such year [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | (43,906) | 47,983 | (88,923)
Non-PEO NEO [Member] | Fair value at end of prior year of awards granted in any prior fiscal year that fail to meet the applicable vesting conditions during such year [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount |  | 26,967 | 287,560
Non-PEO NEO [Member] | Dividends on vesting of restricted stock grants [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | $ 2,112 | $ 1,189 | $ 1,556

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 3 + Details
Name: | ecd_AdjToCompAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 3 + Details
Name: | ecd_AdjToNonPeoNeoCompFnTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 3 + Details
Name: | ecd_AdjToPeoCompFnTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph vi + Details
Name: | ecd_CoSelectedMeasureAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:decimalItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph vi + Details
Name: | ecd_CoSelectedMeasureName
Namespace Prefix: | ecd_
Data Type: | xbrli:normalizedStringItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 5 -Subparagraph iii + Details
Name: | ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 5 -Subparagraph ii + Details
Name: | ecd_CompActuallyPaidVsNetIncomeTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 5 -Subparagraph i + Details
Name: | ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph vi + Details
Name: | ecd_MeasureName
Namespace Prefix: | ecd_
Data Type: | xbrli:normalizedStringItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 3 + Details
Name: | ecd_NamedExecutiveOfficersFnTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph vi + Details
Name: | ecd_NonGaapMeasureDescriptionTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph iii + Details
Name: | ecd_NonPeoNeoAvgCompActuallyPaidAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph ii + Details
Name: | ecd_NonPeoNeoAvgTotalCompAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph iv + Details
Name: | ecd_PeerGroupIssuersFnTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph iv + Details
Name: | ecd_PeerGroupTotalShareholderRtnAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph iii + Details
Name: | ecd_PeoActuallyPaidCompAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 3 + Details
Name: | ecd_PeoName
Namespace Prefix: | ecd_
Data Type: | xbrli:normalizedStringItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph ii + Details
Name: | ecd_PeoTotalCompAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 1 + Details
Name: | ecd_PvpTable
Namespace Prefix: | ecd_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 1 + Details
Name: | ecd_PvpTableTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 6 + Details
Name: | ecd_TabularListTableTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph iv + Details
Name: | ecd_TotalShareholderRtnAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- Definition The portion of profit or loss for the period, net of income taxes, which is attributable to the parent. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 220 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-04(22)) -URI https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 32 -Subparagraph (f) -URI https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 4 -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 944 -SubTopic 220 -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-04(18)) -URI https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 815 -SubTopic 40 -Section 65 -Paragraph 1 -Subparagraph (f) -URI https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 50 -Paragraph 6 -URI https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067 Reference 7: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(5)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756 Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(20)) -URI https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227 Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -URI https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585 Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (b)(2) -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794 Reference 11: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(iv)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756 Reference 12: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(iii)(A)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756 Reference 13: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(i)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756 Reference 14: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(i)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756 Reference 15: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 9 -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794 Reference 16: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(iv)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756 Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(ii)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756 Reference 18: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 28 -Subparagraph (f) -URI https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612 Reference 19: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 3 -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794 Reference 20: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 235 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.4-08(g)(1)(ii)) -URI https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690 Reference 21: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 45 -Paragraph 60B -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256 Reference 22: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 323 -SubTopic 10 -Section 50 -Paragraph 3 -Subparagraph (c) -URI https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571 Reference 23: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 8 -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794 Reference 24: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 1A -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580 Reference 25: http://www.xbrl.org/2003/role/exampleRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 31 -URI https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599 Reference 26: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 11 -Subparagraph (b) -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794 Reference 27: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 11 -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794 Reference 28: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 205 -SubTopic 20 -Section 50 -Paragraph 7 -URI https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760 Reference 29: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 1B -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580 Reference 30: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 22 -URI https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599 Reference 31: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(5)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756 Reference 32: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(iii)(B)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756 Reference 33: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(iii)(A)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756 Reference 34: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 30 -Subparagraph (b) -URI https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599 Reference 35: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 32 -Subparagraph (c) -URI https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599 + Details
Name: | us-gaap_NetIncomeLoss
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Details
Name: | ecd_MeasureAxis=1
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_MeasureAxis=2
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_MeasureAxis=3
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_MeasureAxis=4
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_MeasureAxis=5
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_IndividualAxis=tnc_DavidWHumlMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=tnc_SCTAmountsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=tnc_FairValueAtYearendOfAwardsGrantedDuringTheCoveredFiscalYearThatAreOutstandingAndUnvestedAtYearendMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=tnc_YearoveryearChangeInFairValueOfAwardsGrantedInAnyPriorFiscalYearThatAreOutstandingAndUnvestedAtYearEndMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=tnc_ChangeAsOfTheVestingDatefromTheEndOfThePriorFiscalYearInFairValueOfAwardsGrantedInAnyPriorFiscalYearForWhichVestingConditionsWereSatisfiedDuringSuchYearMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=tnc_DividendsOnVestingOfRestrictedStockGrantsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_IndividualAxis=tnc_HChrisKillingstadMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_ExecutiveCategoryAxis=ecd_NonPeoNeoMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=tnc_FairValueAtEndOfPriorYearOfAwardsGrantedInAnyPriorFiscalYearThatFailToMeetTheApplicableVestingConditionsDuringSuchYearMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |