{
  "schema": "canli.company-reference.v1",
  "cik": "0000944075",
  "name": "SOCKET MOBILE, INC.",
  "selection_policy": "extended-v22",
  "source_url": "https://data.sec.gov/api/xbrl/companyfacts/CIK0000944075.json",
  "source_sha256": "312d9ed8e7c5d6c0be833dd9b3a779dfc840153f471a5979fbf4500cda1c5857",
  "fetched_at": "2026-09-20T05:10:16.507Z",
  "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": 14437340,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 27345781,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 28741474,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 28597988,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 25575101,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 15609244,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 19458487,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 18596715,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 19854046,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 21586794,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 9688305,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 8369816,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 8102035,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 7921397,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 10397204,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 9066615,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "Liabilities",
      "taxonomy": "us-gaap",
      "label": "Total liabilities",
      "kind": "instant",
      "meaning": "Recognized obligations at the reporting date. The definition and scope differ from interest-bearing debt.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 10158727,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 9185286,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 9321470,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 8276231,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 5528638,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 4436227,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 6224261,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 6192280,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 2623623,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 5416862,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 6344728,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 7340974,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 7968659,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 7452212,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 7271619,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 6173486,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2010Q4I",
          "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": 4278613,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 18160495,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 19420004,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 20321757,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 20046463,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 11173017,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 13784982,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 12404435,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 17230423,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 16169932,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 3343577,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 1028842,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 133376,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 469185,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 3125585,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 2893129,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010Q4I",
          "unit": "USD"
        },
        {
          "end": "2009-12-31",
          "val": 5388000,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2009Q4I",
          "unit": "USD"
        },
        {
          "end": "2008-12-31",
          "val": 11674325,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2008Q4I",
          "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": 2032468,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 2491964,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 2826630,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 3623469,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 6095886,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 2121763,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 958860,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 1084991,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 3379508,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 1319006,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 938155,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 632631,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 606255,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 390513,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 957022,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 460833,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010Q4I",
          "unit": "USD"
        },
        {
          "end": "2009-12-31",
          "val": 1940295,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2009Q4I",
          "unit": "USD"
        },
        {
          "end": "2008-12-31",
          "val": 757342,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2008Q4I",
          "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": -14378538,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -2242350,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -1919154,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 86931,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 4466257,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -3278601,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 286586,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -571141,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -1430731,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 12147088,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 1817672,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 432117,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -620493,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": -3298082,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": -2422361,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": -3975837,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": -7888804,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": -1249819,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -521485,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 48562,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -111415,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 2144270,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 804445,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 873534,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 750145,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 2376303,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 879816,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 1352976,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 52214,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -93900,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": -907461,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": -1185430,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": -638521,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 146336,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "PaymentsToAcquirePropertyPlantAndEquipment",
      "taxonomy": "us-gaap",
      "label": "Capital expenditure payments",
      "kind": "duration",
      "meaning": "Cash payments to acquire property, plant and equipment. This taxonomy concept does not capture every form of investment or acquisition.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 537135,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 788325,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 2163872,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 1183188,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 691771,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 536481,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 595154,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 423700,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 412674,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 304470,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 391375,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 166172,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 158903,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": -234856,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": -177302,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": -143559,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": -285668,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": 15078332,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 18762520,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 17033593,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 21237768,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 23199061,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 15700036,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 19253105,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 16454426,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 21285800,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 20787588,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 18400182,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 17020754,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 15661305,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 13564764,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 17510780,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 13498196,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 17126630,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": 1327458,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 902344,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 1318471,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -1177814,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 2521624,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 894939,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": -396711,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -2620962,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 304774,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -194495,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": -656077,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 140334,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 468545,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 575808,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 1858921,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": -697382,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 872285,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": -537135,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -715525,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -2163872,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -1183188,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -691771,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -536481,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": -602954,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -423700,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -620575,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -304470,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": -391375,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": -166172,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -158903,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 234856,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 177302,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 143559,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": -164332,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": -64553462,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": -50174924,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": -47932574,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": -46013420,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": -46100351,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": -50566608,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": -47838763,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": -48125349,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": -47554208,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": -46725797,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": -58872885,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": -60690557,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": -61122674,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": -60502181,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": -57204099,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": -54781738,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2010Q4I",
          "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": 7925328,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 7557622,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 7230074,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 7184847,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 6991194,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 6036310,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 5984381,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 6094709,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 6292898,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2017",
          "unit": "shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 5793245,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 5554541,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 5005579,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 4865036,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "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": 7925328,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 7557622,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 7230074,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 7532924,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 8923487,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 6036310,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 6207731,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 6094709,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 6292898,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2017",
          "unit": "shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 6819821,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 5906236,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 5250914,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 4865036,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "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": -1.81,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD/shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -0.3,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD/shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -0.27,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD/shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 0.01,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD/shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 0.58,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD/shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -0.51,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD/shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 0.05,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD/shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -0.09,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD/shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -0.23,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2017",
          "unit": "USD/shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 2.1,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD/shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 0.33,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD/shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 0.09,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD/shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -0.13,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "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": -1.81,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD/shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -0.3,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD/shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -0.27,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD/shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 0.01,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD/shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 0.48,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD/shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -0.51,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD/shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 0.05,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD/shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -0.09,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD/shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -0.23,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2017",
          "unit": "USD/shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 1.8,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD/shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 0.31,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD/shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 0.08,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD/shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -0.13,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "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": -10663419,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 551000,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 1444000,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 708000,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 1902729,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 50578,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 219128,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 143459,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -1122189,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -9715422,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 31940,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 31940,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 31939,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 31940,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 31940,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 15515,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "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": 2124835,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 2787301,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 3033201,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 1657209,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 1068813,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 847663,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 864510,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 689212,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 662904,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 563883,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 474703,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 244532,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 294937,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 342771,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 311643,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 471337,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2010Q4I",
          "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": 669198,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 1054296,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 1156382,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 998692,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 693425,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 507051,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 519891,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 487806,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 426950,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 342610,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 209864,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 204678,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 249704,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 597668,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 723199,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 676554,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 715086,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": -3218532,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -2462501,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -3120993,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -446019,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 2697381,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -4350571,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 606370,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -585988,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 2417715,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 2563016,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 2128837,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 930807,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -122607,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": -3009150,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": -1275086,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": -3714500,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": -8328365,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": 8635196,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 9595217,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 10698683,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 12768536,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 14380788,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 7935521,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 7520724,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 6197352,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 8855012,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 6930585,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 4710684,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 3612366,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 3232580,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 2970108,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 5428485,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 3811980,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "InterestExpense",
      "taxonomy": "us-gaap",
      "label": "Interest expense",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Borrowing costs recognized as interest expense. This is distinct from cash interest paid and may not include every capitalized borrowing cost.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": -496587,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -330849,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -242161,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -175050,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 198935,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 97488,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 100656,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 128612,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 79443,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 131349,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 279225,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 207299,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 263771,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 256992,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 1115335,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 245822,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 224700,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": 8435024,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 6887813,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 6499785,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 4972429,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 5389357,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 4149336,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 5468488,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 4685016,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 2322762,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 5064174,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 5452769,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 6466881,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 7125345,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 6991918,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 6872347,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 5429302,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "AccountsPayableCurrent",
      "taxonomy": "us-gaap",
      "label": "Current accounts payable",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Current amounts owed to suppliers for goods and services received. This is one component of current liabilities, not all accrued obligations.",
      "observations": [
        {
          "end": "2013-12-31",
          "val": 3454594,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 3697209,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 3266764,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 3683771,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "FiniteLivedIntangibleAssetsNet",
      "taxonomy": "us-gaap",
      "label": "Net finite-lived intangible assets",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Finite-lived intangible assets after amortization. This excludes goodwill and should not be combined with indefinite-lived intangible assets without checking scope.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 1304777,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025Q4I",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 1432073,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 1559369,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 1686665,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 1813961,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 0,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 30000,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 90000,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 150000,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "PaymentsForRepurchaseOfCommonStock",
      "taxonomy": "us-gaap",
      "label": "Common-stock repurchase payments",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Cash paid to reacquire common stock during the period. This is not an authorization limit or a direct measure of the net change in share count.",
      "observations": [
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 208425,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 829563,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 2937,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 8480,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 5021830,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "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": 10706862,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 11913910,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 11583847,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 10812475,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 9739063,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 12685472,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 9494273,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 9042396,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 8972294,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 7871202,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 6805902,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 6482118,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 6426044,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 8056266,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 8524254,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 9116176,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 15701989,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": 4220822,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 4941500,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 5409047,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 5601691,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 5154524,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 3195842,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 3178908,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 2272328,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 2198266,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 1537439,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 1326090,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 957327,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 1105088,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 941067,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 1461052,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 1698650,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2010Q4I",
          "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": 7488330,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 9451409,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 8462854,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 10366456,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 12436444,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 8334901,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 10100643,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 8456408,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 11390009,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 10434218,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 8934739,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 7412925,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 6303437,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 5047116,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 7249168,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 5401676,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 7373624,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": 7590002,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 9311111,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 8570739,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 10871312,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 10762617,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 7365135,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 9152462,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 7998018,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 9895791,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 10353370,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 9465443,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 9607829,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 9357868,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 8517648,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 10261612,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 8096520,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 9753006,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "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": 4350447,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 4720639,
          "accn": "0000944075-26-000027",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-30",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 4831905,
          "accn": "0000944075-25-000013",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-25",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 4362119,
          "accn": "0000944075-24-000015",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-25",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 3964599,
          "accn": "0000944075-23-000025",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 3140104,
          "accn": "0000944075-22-000022",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 3893563,
          "accn": "0000944075-21-000026",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-23",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 3640296,
          "accn": "0000944075-20-000012",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-26",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 3473610,
          "accn": "0000944075-19-000010",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-28",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 2889168,
          "accn": "0000944075-18-000011",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-23",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 2323005,
          "accn": "0000944075-17-000009",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-24",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 2332918,
          "accn": "0000944075-16-000054",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-24",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 2269454,
          "accn": "0000944075-15-000014",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-27",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 2710754,
          "accn": "0000944075-14-000021",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-31",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 2775058,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 2463268,
          "accn": "0000944075-13-000018",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-04-15",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 2926954,
          "accn": "0000944075-12-000013",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-12",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    }
  ],
  "source_snapshot": "/company-data/sources/312d9ed8e7c5d6c0be833dd9b3a779dfc840153f471a5979fbf4500cda1c5857.json.gz"
}
