{
  "ticker": "PSIX",
  "name": "POWER SOLUTIONS INTERNATIONAL, INC.",
  "cik": "0001137091",
  "sic": "3510",
  "sic_description": "Engines & Turbines",
  "source": "SEC XBRL companyfacts",
  "source_url": "https://data.sec.gov/api/xbrl/companyfacts/CIK0001137091.json",
  "as_of": "2026-03-02",
  "note": "Verified SEC companyfacts-derived facts; derived metrics (margins, ratios, free cash flow) are computed from those facts. Descriptive data, not investment advice.",
  "annual": [
    {
      "metric_id": "revenue",
      "label": "Revenue",
      "concept": "RevenueFromContractWithCustomerExcludingAssessedTax",
      "unit": "USD",
      "derived": false,
      "source_concepts": [
        "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": 339465000.0,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": 416616000.0,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": 496038000.0,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 546076000.0,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": 417639000.0,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": 456255000.0,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 481333000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 458973000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 475967000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 722405000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "net_income",
      "label": "Net income",
      "concept": "NetIncomeLoss",
      "unit": "USD",
      "derived": false,
      "source_concepts": [
        "us-gaap:NetIncomeLoss"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": -47472000.0,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": -47612000.0,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": -54726000.0,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 8248000.0,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": -22982000.0,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": -48472000.0,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 11270000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 26306000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 69279000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 113987000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "operating_income",
      "label": "Operating income",
      "concept": "OperatingIncomeLoss",
      "unit": "USD",
      "derived": false,
      "source_concepts": [
        "us-gaap:OperatingIncomeLoss"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": -25341000.0,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": -18046000.0,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": -36705000.0,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 17203000.0,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": -21724000.0,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": -41570000.0,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 24602000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 44275000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 81644000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 109714000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "gross_profit",
      "label": "Gross profit",
      "concept": "GrossProfit",
      "unit": "USD",
      "derived": false,
      "source_concepts": [
        "us-gaap:GrossProfit"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": 29189000.0,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": 50993000.0,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": 58769000.0,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 99888000.0,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": 58448000.0,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": 41271000.0,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 88563000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 105864000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 140537000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 184899000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "eps_diluted",
      "label": "Diluted EPS",
      "concept": "EarningsPerShareDiluted",
      "unit": "USD/shares",
      "derived": false,
      "source_concepts": [
        "us-gaap:EarningsPerShareDiluted"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": -4.47,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": -6.2,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": -2.94,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 0.38,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": -1.0,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": -2.12,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 0.49,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 1.15,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 3.01,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 4.94,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "operating_cash_flow",
      "label": "Operating cash flow",
      "concept": "NetCashProvidedByUsedInOperatingActivities",
      "unit": "USD",
      "derived": false,
      "source_concepts": [
        "us-gaap:NetCashProvidedByUsedInOperatingActivities"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": 32282000.0,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": -7695000.0,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": -6168000.0,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 18157000.0,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": -7594000.0,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": -61478000.0,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": -8845000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 70512000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 62390000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 24113000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "assets",
      "label": "Assets",
      "concept": "Assets",
      "unit": "USD",
      "derived": false,
      "source_concepts": [
        "us-gaap:Assets"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": 264619000.0,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": 247019000.0,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": 289882000.0,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 313672000.0,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": 283977000.0,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": 300538000.0,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 319913000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 284303000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 328182000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 424745000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "liabilities",
      "label": "Liabilities",
      "concept": "Liabilities",
      "unit": "USD",
      "derived": false,
      "source_concepts": [
        "us-gaap:Liabilities"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": 223959000.0,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": 214847000.0,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": 308460000.0,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 285175000.0,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": 277880000.0,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": 342561000.0,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 350285000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 288220000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 262932000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 246136000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "equity",
      "label": "Stockholders' equity",
      "concept": "StockholdersEquity",
      "unit": "USD",
      "derived": false,
      "source_concepts": [
        "us-gaap:StockholdersEquity"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": 40660000.0,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": 32172000.0,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": -18578000.0,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 28497000.0,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": 6097000.0,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": -42023000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": -30372000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": -3917000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 65250000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 178609000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "cash",
      "label": "Cash and cash equivalents",
      "concept": "CashAndCashEquivalentsAtCarryingValue",
      "unit": "USD",
      "derived": false,
      "source_concepts": [
        "us-gaap:CashAndCashEquivalentsAtCarryingValue"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": 2292000.0,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": 0.0,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": 54000.0,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 3000.0,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": 20968000.0,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": 6255000.0,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 24296000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 22758000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 55252000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 41250000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "net_margin",
      "label": "Net margin",
      "concept": "NetIncomeLoss / RevenueFromContractWithCustomerExcludingAssessedTax",
      "unit": "Percent",
      "derived": true,
      "source_concepts": [
        "us-gaap:NetIncomeLoss",
        "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": -13.984357739384032,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": -11.428269677592795,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": -11.032622500695512,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 1.5104124700591126,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": -5.502838575899281,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": -10.623883573878642,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 2.3414143638603626,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 5.731491830674136,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 14.555420859009132,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 15.778822128861233,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "operating_margin",
      "label": "Operating margin",
      "concept": "OperatingIncomeLoss / RevenueFromContractWithCustomerExcludingAssessedTax",
      "unit": "Percent",
      "derived": true,
      "source_concepts": [
        "us-gaap:OperatingIncomeLoss",
        "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": -7.464981662321595,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": -4.331566718512971,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": -7.399634705405635,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 3.1502940982573855,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": -5.201621496076755,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": -9.111133028679138,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 5.1112223761927815,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 9.64653694226022,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 17.15329003901531,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 15.187325669119122,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "roe",
      "label": "Return on equity",
      "concept": "NetIncomeLoss / StockholdersEquity",
      "unit": "Percent",
      "derived": true,
      "source_concepts": [
        "us-gaap:NetIncomeLoss",
        "us-gaap:StockholdersEquity"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": -116.75356615838662,
          "filed": "2019-12-27",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": -147.99204277011066,
          "filed": "2020-05-04",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 28.943397550619366,
          "filed": "2022-03-31",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": -376.93947843201573,
          "filed": "2023-04-14",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 106.17471264367818,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 63.81929242087465,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "roa",
      "label": "Return on assets",
      "concept": "NetIncomeLoss / Assets",
      "unit": "Percent",
      "derived": true,
      "source_concepts": [
        "us-gaap:NetIncomeLoss",
        "us-gaap:Assets"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": -17.93975489288373,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": -19.27463069642416,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": -18.87871616726806,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 2.6294983294651737,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": -8.092908932765681,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": -16.128409718571362,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 3.522832770159387,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 9.25280422647668,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 21.109932903084264,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 26.83657253175435,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "liabilities_to_equity",
      "label": "Liabilities / equity",
      "concept": "Liabilities / StockholdersEquity",
      "unit": "Ratio",
      "derived": true,
      "source_concepts": [
        "us-gaap:Liabilities",
        "us-gaap:StockholdersEquity"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": 5.508091490408264,
          "filed": "2019-12-27",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": 6.678074101703345,
          "filed": "2020-05-04",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 10.007193739691898,
          "filed": "2022-03-31",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": 45.576513039199604,
          "filed": "2023-04-14",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 4.029609195402299,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 1.3780716537240565,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    },
    {
      "metric_id": "current_ratio",
      "label": "Current ratio",
      "concept": "AssetsCurrent / LiabilitiesCurrent",
      "unit": "Ratio",
      "derived": true,
      "source_concepts": [
        "us-gaap:AssetsCurrent",
        "us-gaap:LiabilitiesCurrent"
      ],
      "points": [
        {
          "fiscal_year": 2016,
          "period_end": "2016-12-31",
          "value": 1.8460233830096844,
          "filed": "2019-05-16",
          "accession": "0001137091-19-000016"
        },
        {
          "fiscal_year": 2017,
          "period_end": "2017-12-31",
          "value": 1.3926940266858057,
          "filed": "2019-12-27",
          "accession": "0001628280-19-015322"
        },
        {
          "fiscal_year": 2018,
          "period_end": "2018-12-31",
          "value": 0.9787867392200661,
          "filed": "2020-05-04",
          "accession": "0001628280-20-006265"
        },
        {
          "fiscal_year": 2019,
          "period_end": "2019-12-31",
          "value": 1.2254291331427911,
          "filed": "2021-03-30",
          "accession": "0001137091-21-000002"
        },
        {
          "fiscal_year": 2020,
          "period_end": "2020-12-31",
          "value": 0.8463770899797892,
          "filed": "2022-03-31",
          "accession": "0001137091-22-000007"
        },
        {
          "fiscal_year": 2021,
          "period_end": "2021-12-31",
          "value": 0.8126334664026459,
          "filed": "2023-04-14",
          "accession": "0001137091-23-000004"
        },
        {
          "fiscal_year": 2022,
          "period_end": "2022-12-31",
          "value": 0.7995596162459634,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007"
        },
        {
          "fiscal_year": 2023,
          "period_end": "2023-12-31",
          "value": 0.8271493066882534,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005"
        },
        {
          "fiscal_year": 2024,
          "period_end": "2024-12-31",
          "value": 1.1176268966941605,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        },
        {
          "fiscal_year": 2025,
          "period_end": "2025-12-31",
          "value": 3.152647434924901,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207"
        }
      ]
    }
  ],
  "quarterly": [
    {
      "metric_id": "revenue",
      "label": "Revenue",
      "concept": "RevenueFromContractWithCustomerExcludingAssessedTax",
      "unit": "USD",
      "source_concepts": [
        "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax"
      ],
      "points": [
        {
          "fiscal_year": 2023,
          "fiscal_quarter": 2,
          "period_label": "2023-Q2",
          "period_end": "2023-06-30",
          "value": 121865000.0,
          "filed": "2023-08-14",
          "accession": "0001137091-23-000011",
          "derived": false
        },
        {
          "fiscal_year": 2023,
          "fiscal_quarter": 3,
          "period_label": "2023-Q3",
          "period_end": "2023-09-30",
          "value": 115884000.0,
          "filed": "2023-11-09",
          "accession": "0001137091-23-000017",
          "derived": false
        },
        {
          "fiscal_year": 2023,
          "fiscal_quarter": 4,
          "period_label": "2023-Q4",
          "period_end": "2023-12-31",
          "value": 104755000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007",
          "derived": true
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 1,
          "period_label": "2024-Q1",
          "period_end": "2024-03-31",
          "value": 95240000.0,
          "filed": "2024-05-07",
          "accession": "0001137091-24-000014",
          "derived": false
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 2,
          "period_label": "2024-Q2",
          "period_end": "2024-06-30",
          "value": 110586000.0,
          "filed": "2024-08-12",
          "accession": "0001137091-24-000020",
          "derived": false
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 3,
          "period_label": "2024-Q3",
          "period_end": "2024-09-30",
          "value": 125842000.0,
          "filed": "2024-11-07",
          "accession": "0001137091-24-000027",
          "derived": false
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 4,
          "period_label": "2024-Q4",
          "period_end": "2024-12-31",
          "value": 144299000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005",
          "derived": true
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 1,
          "period_label": "2025-Q1",
          "period_end": "2025-03-31",
          "value": 135446000.0,
          "filed": "2025-05-08",
          "accession": "0001137091-25-000010",
          "derived": false
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 2,
          "period_label": "2025-Q2",
          "period_end": "2025-06-30",
          "value": 191907000.0,
          "filed": "2025-08-08",
          "accession": "0001137091-25-000016",
          "derived": false
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 3,
          "period_label": "2025-Q3",
          "period_end": "2025-09-30",
          "value": 203829000.0,
          "filed": "2025-11-06",
          "accession": "0001628280-25-050177",
          "derived": false
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 4,
          "period_label": "2025-Q4",
          "period_end": "2025-12-31",
          "value": 191223000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207",
          "derived": true
        },
        {
          "fiscal_year": 2026,
          "fiscal_quarter": 1,
          "period_label": "2026-Q1",
          "period_end": "2026-03-31",
          "value": 128592000.0,
          "filed": "2026-05-11",
          "accession": "0001628280-26-033451",
          "derived": false
        }
      ]
    },
    {
      "metric_id": "net_income",
      "label": "Net income",
      "concept": "NetIncomeLoss",
      "unit": "USD",
      "source_concepts": [
        "us-gaap:NetIncomeLoss"
      ],
      "points": [
        {
          "fiscal_year": 2023,
          "fiscal_quarter": 2,
          "period_label": "2023-Q2",
          "period_end": "2023-06-30",
          "value": 6417000.0,
          "filed": "2023-08-14",
          "accession": "0001137091-23-000011",
          "derived": false
        },
        {
          "fiscal_year": 2023,
          "fiscal_quarter": 3,
          "period_label": "2023-Q3",
          "period_end": "2023-09-30",
          "value": 7795000.0,
          "filed": "2023-11-09",
          "accession": "0001137091-23-000017",
          "derived": false
        },
        {
          "fiscal_year": 2023,
          "fiscal_quarter": 4,
          "period_label": "2023-Q4",
          "period_end": "2023-12-31",
          "value": 8370000.0,
          "filed": "2024-03-14",
          "accession": "0001137091-24-000007",
          "derived": true
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 1,
          "period_label": "2024-Q1",
          "period_end": "2024-03-31",
          "value": 7115000.0,
          "filed": "2024-05-07",
          "accession": "0001137091-24-000014",
          "derived": false
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 2,
          "period_label": "2024-Q2",
          "period_end": "2024-06-30",
          "value": 21540000.0,
          "filed": "2024-08-12",
          "accession": "0001137091-24-000020",
          "derived": false
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 3,
          "period_label": "2024-Q3",
          "period_end": "2024-09-30",
          "value": 17337000.0,
          "filed": "2024-11-07",
          "accession": "0001137091-24-000027",
          "derived": false
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 4,
          "period_label": "2024-Q4",
          "period_end": "2024-12-31",
          "value": 23287000.0,
          "filed": "2025-03-24",
          "accession": "0001137091-25-000005",
          "derived": true
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 1,
          "period_label": "2025-Q1",
          "period_end": "2025-03-31",
          "value": 19082000.0,
          "filed": "2025-05-08",
          "accession": "0001137091-25-000010",
          "derived": false
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 2,
          "period_label": "2025-Q2",
          "period_end": "2025-06-30",
          "value": 51212000.0,
          "filed": "2025-08-08",
          "accession": "0001137091-25-000016",
          "derived": false
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 3,
          "period_label": "2025-Q3",
          "period_end": "2025-09-30",
          "value": 27616000.0,
          "filed": "2025-11-06",
          "accession": "0001628280-25-050177",
          "derived": false
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 4,
          "period_label": "2025-Q4",
          "period_end": "2025-12-31",
          "value": 16077000.0,
          "filed": "2026-03-02",
          "accession": "0001628280-26-013207",
          "derived": true
        },
        {
          "fiscal_year": 2026,
          "fiscal_quarter": 1,
          "period_label": "2026-Q1",
          "period_end": "2026-03-31",
          "value": 7300000.0,
          "filed": "2026-05-11",
          "accession": "0001628280-26-033451",
          "derived": false
        }
      ]
    },
    {
      "metric_id": "eps_diluted",
      "label": "Diluted EPS",
      "concept": "EarningsPerShareDiluted",
      "unit": "USD/shares",
      "source_concepts": [
        "us-gaap:EarningsPerShareDiluted"
      ],
      "points": [
        {
          "fiscal_year": 2022,
          "fiscal_quarter": 2,
          "period_label": "2022-Q2",
          "period_end": "2022-06-30",
          "value": 0.06,
          "filed": "2022-08-11",
          "accession": "0001137091-22-000015",
          "derived": false
        },
        {
          "fiscal_year": 2022,
          "fiscal_quarter": 3,
          "period_label": "2022-Q3",
          "period_end": "2022-09-30",
          "value": 0.14,
          "filed": "2022-11-14",
          "accession": "0001137091-22-000019",
          "derived": false
        },
        {
          "fiscal_year": 2023,
          "fiscal_quarter": 1,
          "period_label": "2023-Q1",
          "period_end": "2023-03-31",
          "value": 0.16,
          "filed": "2023-05-11",
          "accession": "0001137091-23-000007",
          "derived": false
        },
        {
          "fiscal_year": 2023,
          "fiscal_quarter": 2,
          "period_label": "2023-Q2",
          "period_end": "2023-06-30",
          "value": 0.28,
          "filed": "2023-08-14",
          "accession": "0001137091-23-000011",
          "derived": false
        },
        {
          "fiscal_year": 2023,
          "fiscal_quarter": 3,
          "period_label": "2023-Q3",
          "period_end": "2023-09-30",
          "value": 0.34,
          "filed": "2023-11-09",
          "accession": "0001137091-23-000017",
          "derived": false
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 1,
          "period_label": "2024-Q1",
          "period_end": "2024-03-31",
          "value": 0.31,
          "filed": "2024-05-07",
          "accession": "0001137091-24-000014",
          "derived": false
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 2,
          "period_label": "2024-Q2",
          "period_end": "2024-06-30",
          "value": 0.94,
          "filed": "2024-08-12",
          "accession": "0001137091-24-000020",
          "derived": false
        },
        {
          "fiscal_year": 2024,
          "fiscal_quarter": 3,
          "period_label": "2024-Q3",
          "period_end": "2024-09-30",
          "value": 0.75,
          "filed": "2024-11-07",
          "accession": "0001137091-24-000027",
          "derived": false
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 1,
          "period_label": "2025-Q1",
          "period_end": "2025-03-31",
          "value": 0.83,
          "filed": "2025-05-08",
          "accession": "0001137091-25-000010",
          "derived": false
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 2,
          "period_label": "2025-Q2",
          "period_end": "2025-06-30",
          "value": 2.22,
          "filed": "2025-08-08",
          "accession": "0001137091-25-000016",
          "derived": false
        },
        {
          "fiscal_year": 2025,
          "fiscal_quarter": 3,
          "period_label": "2025-Q3",
          "period_end": "2025-09-30",
          "value": 1.2,
          "filed": "2025-11-06",
          "accession": "0001628280-25-050177",
          "derived": false
        },
        {
          "fiscal_year": 2026,
          "fiscal_quarter": 1,
          "period_label": "2026-Q1",
          "period_end": "2026-03-31",
          "value": 0.32,
          "filed": "2026-05-11",
          "accession": "0001628280-26-033451",
          "derived": false
        }
      ]
    }
  ]
}
