Restatement of Previously Issued Unaudited Interim Consolidated Financial Statement (Unaudited) - Consolidated Balance Sheet (Unaudited) (Parenthetical) (Details) - USD ($) $ / shares in Units, $ in Thousands |
Dec. 31, 2024 |
Sep. 30, 2024 |
Jun. 30, 2024 |
Mar. 31, 2024 |
Dec. 31, 2023 |
Sep. 30, 2023 |
Jun. 30, 2023 |
Mar. 31, 2023 |
Dec. 31, 2022 |
||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Restatement of Previously Reported Unaudited Interim Consolidated Financial Statements [Line Items] | |||||||||||||||||
| Receivables, allowances for credit losses | $ 3,402 | $ 3,590 | [1] | $ 3,444 | [1] | $ 3,220 | [1] | $ 2,551 | $ 2,070 | [1] | $ 2,307 | [1] | $ 2,259 | [1] | $ 2,095 | ||
| Common stock, par value | $ 0.0001 | $ 0.0001 | $ 0.0001 | $ 0.0001 | $ 0.0001 | $ 0.0001 | $ 0.0001 | $ 0.0001 | |||||||||
| Common stock, shares authorized | 500,000,000 | 500,000,000 | 500,000,000 | 500,000,000 | 500,000,000 | 500,000,000 | 500,000,000 | 500,000,000 | |||||||||
| Common stock, shares issued | 28,885,152 | 28,513,294 | 28,478,209 | 28,158,001 | 28,095,144 | 27,917,429 | 27,847,532 | 27,618,271 | |||||||||
| Common stock, shares, outstanding | 28,612,181 | 28,241,507 | 28,208,596 | 27,892,848 | 27,834,908 | 27,661,860 | 27,603,028 | 27,397,342 | |||||||||
| Treasury stock, shares | 272,971 | 271,787 | 269,613 | 265,153 | 260,236 | 255,569 | 244,504 | 220,929 | |||||||||
| |||||||||||||||||