{
  "schema": "canli.company-reference.v1",
  "cik": "0001456189",
  "name": "LEATT CORPORATION",
  "selection_policy": "extended-v22",
  "source_url": "https://data.sec.gov/api/xbrl/companyfacts/CIK0001456189.json",
  "source_sha256": "56476d26e618131a39b56b56cf16686eca3018fd653c12cee87826f1ae10c4e8",
  "fetched_at": "2026-09-20T09:06:02.796Z",
  "policy": "Latest-filed annual-report facts per unit and reporting period at capture time. Duration facts cover 300 to 400 days. This selection can include restatements and is not a point-in-time backtest dataset. Missing concepts are omitted, never zero-filled. Values retain original units and are not currency converted. Extended concepts require compatible unit shapes and at least three reporting ends with changing values within one unit. Constant or incompatible added histories are omitted.",
  "claim_boundary": "Public company accounting reference, not market prices, returns, an investment recommendation, or ALPHAC performance. Validate a separately constructed return series with the validation API; accounting values are not returns.",
  "concepts": [
    {
      "tag": "Assets",
      "taxonomy": "us-gaap",
      "label": "Total assets",
      "kind": "instant",
      "meaning": "Resources recognized on the balance sheet. Book assets are not the market value of the business.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 52045957,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 46488946,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 47607372,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 51927370,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 49166820,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 26237023,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 18188493,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 12736533,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 12790381,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 10784874,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 11130656,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 11203560,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 9969897,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 10656060,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 10642769,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "StockholdersEquity",
      "taxonomy": "us-gaap",
      "label": "Stockholders equity",
      "kind": "instant",
      "meaning": "The reported residual interest after liabilities. It is an accounting amount, not market capitalization.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 42232338,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 38264717,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 40280524,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 39694349,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 28620974,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 15370365,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 10721721,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 9054065,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 7800486,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 7220724,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 7453087,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 7177078,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 7018673,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 7664785,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 7606038,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2011Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "CashAndCashEquivalentsAtCarryingValue",
      "taxonomy": "us-gaap",
      "label": "Cash and cash equivalents",
      "kind": "instant",
      "meaning": "Cash and qualifying short-term liquid investments under the filer’s accounting policy. Restricted cash and longer-term investments may be reported separately.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 12988111,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 12368100,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 11347420,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 7102945,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 5022436,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 2967042,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 2072864,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 1709900,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 1518157,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 1103003,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 1054750,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 724707,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 835012,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 667671,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 1084806,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 1235107,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "NetIncomeLoss",
      "taxonomy": "us-gaap",
      "label": "Net income or loss",
      "kind": "duration",
      "meaning": "Reported profit or loss for the period. Check the filing for attribution, exceptional items and discontinued operations before comparing companies.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 3263922,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -2204664,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 803159,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 9960453,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 12574437,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 4423872,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 1375728,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 1196844,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 237292,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -455237,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 574932,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 418351,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -375176,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-02",
          "end": "2012-12-31",
          "val": 78643,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 78643,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 764499,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "NetCashProvidedByUsedInOperatingActivities",
      "taxonomy": "us-gaap",
      "label": "Operating cash flow",
      "kind": "duration",
      "meaning": "Cash generated or used by operating activities. Working-capital timing can make this differ substantially from reported income.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 1807829,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 2793192,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 6657212,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 3086982,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 2782410,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 2347234,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 845608,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 1138855,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 1718609,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 320192,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 1239679,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 759462,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 255500,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": -438157,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 555890,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "Revenues",
      "taxonomy": "us-gaap",
      "label": "Revenue",
      "kind": "duration",
      "meaning": "Revenue under this specific accounting concept. A missing value is not zero; filers can use other revenue concepts.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 61907914,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 44027942,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 47241187,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 76335539,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 72475813,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 38604289,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 28317817,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 24392312,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 20139785,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 16416465,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 18343172,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 18458928,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 14891667,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 16577350,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 17878727,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "NetCashProvidedByUsedInFinancingActivities",
      "taxonomy": "us-gaap",
      "label": "Financing cash flow",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Net cash from financing activities, including borrowing, repayments and transactions with owners. A positive amount does not establish operating profitability.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": -217574,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -514951,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -1290,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 288817,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 595943,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 11859,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 309346,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 63998,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -24402,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -77107,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 63710,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": -207606,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -3986,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 220711,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": -95837,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "NetCashProvidedByUsedInInvestingActivities",
      "taxonomy": "us-gaap",
      "label": "Investing cash flow",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Net cash from investing activities, including asset purchases, disposals and investment transactions. This differs from capital expenditure payments alone.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": -1053043,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -1228935,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -1996252,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -1042442,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -1137337,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -1451759,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": -863023,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -976870,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -1358353,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -239360,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": -780564,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": -456429,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 21410,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": -206320,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": -458764,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "RetainedEarningsAccumulatedDeficit",
      "taxonomy": "us-gaap",
      "label": "Retained earnings or deficit",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Accumulated undistributed earnings or deficit at the reporting date. This balance is not cash available for distribution.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 31859103,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 28595181,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 30799845,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 29996686,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 20036233,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 7461796,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 3037924,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 1662196,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 465352,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 228060,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 683297,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 108365,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": -309986,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 65190,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": -13453,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "WeightedAverageNumberOfSharesOutstandingBasic",
      "taxonomy": "us-gaap",
      "label": "Basic weighted-average shares",
      "kind": "duration",
      "unitKind": "shares",
      "meaning": "Time-weighted shares used for basic earnings per share. This denominator differs from shares outstanding at a single reporting date.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 6214861,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 6215619,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 5992072,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 5821119,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 5480375,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 5390420,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 5385249,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 5366712,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 5365137,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 5310966,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 5216483,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 5200623,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 5200623,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 5200623,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 5208398,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "shares"
        }
      ]
    },
    {
      "tag": "WeightedAverageNumberOfDilutedSharesOutstanding",
      "taxonomy": "us-gaap",
      "label": "Diluted weighted-average shares",
      "kind": "duration",
      "unitKind": "shares",
      "meaning": "Weighted-average shares used for diluted earnings per share. Potential shares are included under the applicable dilution rules, not simply added to outstanding shares.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 6447385,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 6471072,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 6287849,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 6136781,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 6068276,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 5990798,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 5546098,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 5532339,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 5544925,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 5448942,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 5537476,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 5200623,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 5200623,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 5200623,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 5208398,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "shares"
        }
      ]
    },
    {
      "tag": "EarningsPerShareBasic",
      "taxonomy": "us-gaap",
      "label": "Basic earnings per share",
      "kind": "duration",
      "unitKind": "per-share",
      "meaning": "Reported earnings or loss per basic common share or unit. Inspect attribution, share classes and restatements before comparing periods. This is not a market return.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 0.53,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD/shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -0.35,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD/shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 0.13,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD/shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 1.71,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD/shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 2.29,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD/shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 0.82,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD/shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 0.26,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD/shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 0.22,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD/shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 0.04,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD/shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -0.09,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD/shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 0.11,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD/shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 0.08,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD/shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -0.07,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD/shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 0.015,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD/shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 0.15,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD/shares"
        }
      ]
    },
    {
      "tag": "EarningsPerShareDiluted",
      "taxonomy": "us-gaap",
      "label": "Diluted earnings per share",
      "kind": "duration",
      "unitKind": "per-share",
      "meaning": "Reported earnings or loss per share under dilution rules. Antidilutive instruments may be excluded. A diluted value can equal the basic value without implying no potential dilution.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 0.51,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD/shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -0.34,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD/shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 0.13,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD/shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 1.62,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD/shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 2.07,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD/shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 0.74,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD/shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 0.25,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD/shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 0.22,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD/shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 0.04,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD/shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -0.08,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD/shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 0.1,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD/shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 0.08,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD/shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -0.07,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD/shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 0.015,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD/shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 0.15,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD/shares"
        }
      ]
    },
    {
      "tag": "IncomeTaxExpenseBenefit",
      "taxonomy": "us-gaap",
      "label": "Income tax expense or benefit",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Current and deferred income tax expense or benefit for continuing operations. This accounting expense differs from cash taxes paid.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 1142072,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -498799,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 576189,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 3042873,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 4041148,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 1618533,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 566729,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 329240,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -21237,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -178958,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 385590,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 233760,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -171880,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 47698,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 117173,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "PropertyPlantAndEquipmentNet",
      "taxonomy": "us-gaap",
      "label": "Net property, plant and equipment",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Carrying amount of property, plant and equipment after accumulated depreciation, depletion and amortization. It is not replacement cost or market value.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 3660704,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 4000225,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 4026821,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 3104336,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 3128086,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 3052276,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 2431061,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 2317490,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 2113855,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 1190688,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 1313325,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 995537,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 891728,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 1127707,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 1372521,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "ShareBasedCompensation",
      "taxonomy": "us-gaap",
      "label": "Share-based compensation expense",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Reported noncash expense for share-based payment arrangements. Noncash treatment does not mean the awards have no economic cost to shareholders.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 490062,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 242934,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 100131,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 1158997,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 866740,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 242093,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 196670,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 180752,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 217673,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 157458,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 1478,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 6621,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 5163,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 15487,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 0,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "OperatingIncomeLoss",
      "taxonomy": "us-gaap",
      "label": "Operating income or loss",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Operating revenue less operating expenses for the reporting period. It excludes items outside the reported operating result and is not free cash flow.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 4008994,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -2978876,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 1418486,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 13016876,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 16615748,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 5836397,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 1980757,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 1486964,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 225512,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -731716,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 928218,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 641257,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -567076,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 65524,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 858530,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "AssetsCurrent",
      "taxonomy": "us-gaap",
      "label": "Current assets",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Assets classified as current under the normal operating cycle or one-year boundary. Not all current assets can be converted immediately into cash.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 47601357,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 41167038,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 42304985,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 47690068,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 44612182,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 22786416,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 15318834,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 10353197,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 10574081,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 9457261,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 9534565,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 9898720,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 8638740,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 9372500,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 9120509,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "LiabilitiesCurrent",
      "taxonomy": "us-gaap",
      "label": "Current liabilities",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Obligations classified as current under the operating-cycle or one-year boundary. The balance includes more than short-term borrowing.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 9780225,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 7921401,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 6750419,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 11213427,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 18733405,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 10548550,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 7085581,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 3431568,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 4951795,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 3564150,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 3604569,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 3938014,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 2910544,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 2953275,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 2936731,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "AccountsReceivableNetCurrent",
      "taxonomy": "us-gaap",
      "label": "Net current accounts receivable",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Current customer receivables after the allowance for credit loss. The balance is not cash collected or a guarantee of collection.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 7904885,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 6409610,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 6970322,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 12839597,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 12660936,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 7173829,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 2956012,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 2049331,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 2420656,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 2217840,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 2901699,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 4239298,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 3139273,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 3532811,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 2993681,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "OperatingExpenses",
      "taxonomy": "us-gaap",
      "label": "Operating expenses",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Recurring operating costs under this accounting concept, generally excluding production costs included in cost of sales. Check filing presentation before combining expense subtotals.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 23594707,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 21018487,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 18481282,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 18355995,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 15013053,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 11640971,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 11072507,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 10128581,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 9337864,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 9073530,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 8856308,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 9372086,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 9253693,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 9106338,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 9649884,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "InventoryNet",
      "taxonomy": "us-gaap",
      "label": "Net inventory",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Inventory carrying amount after applicable valuation and LIFO reserves. It does not establish realizable selling proceeds or inventory turnover without other inputs.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 20897693,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 17988737,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 20391873,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 22805462,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 21081481,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 9670036,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 8655176,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 4815215,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 5034310,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 4578125,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 4241140,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 3403854,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 3259274,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 3770932,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 3679223,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "GrossProfit",
      "taxonomy": "us-gaap",
      "label": "Gross profit",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Revenue less the costs directly attributed to the goods or services sold. It precedes other operating expenses and is not net income.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 27221944,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 17712997,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 19806072,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 31132827,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 31446103,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 17388620,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 13006804,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 11571859,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 9465338,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 8238448,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 9602041,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 9822382,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 7732724,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 8909296,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 10409146,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "CostOfRevenue",
      "taxonomy": "us-gaap",
      "label": "Cost of revenue",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Costs attributed to goods produced and sold and services provided during the period. This is not the sum of every operating expense.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 34685970,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 26314945,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 27435115,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 45202712,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 41029710,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 21215669,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 15311013,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 12820453,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 10674447,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 8178017,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 8741131,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 8636546,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 7158943,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 7668054,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 7469581,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "ResearchAndDevelopmentExpense",
      "taxonomy": "us-gaap",
      "label": "Research and development expense",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Research and development costs recognized as expense. Capitalization policies and acquired projects can make this differ from total cash invested in development.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 2704071,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 2523881,
          "accn": "0001062993-26-001584",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 2526550,
          "accn": "0001062993-25-006432",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-28",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 2179996,
          "accn": "0001062993-24-006304",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-13",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 1826846,
          "accn": "0001062993-23-007846",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-28",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 1522758,
          "accn": "0001062993-22-007237",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-10",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 1491155,
          "accn": "0001062993-21-002958",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-24",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 1412866,
          "accn": "0001062993-20-001476",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-24",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 1358512,
          "accn": "0001062993-19-001408",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-27",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 1443451,
          "accn": "0001062993-18-001343",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-27",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 1180227,
          "accn": "0001062993-17-001534",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-29",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 1222209,
          "accn": "0001062993-16-008402",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-18",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 1170039,
          "accn": "0001062993-15-001493",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-26",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 1107042,
          "accn": "0001062993-14-001469",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-19",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 1224965,
          "accn": "0001062993-13-001466",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-28",
          "frame": "CY2011",
          "unit": "USD"
        }
      ]
    }
  ],
  "source_snapshot": "/company-data/sources/56476d26e618131a39b56b56cf16686eca3018fd653c12cee87826f1ae10c4e8.json.gz"
}
