{
  "schema": "canli.company-reference.v1",
  "cik": "0001829280",
  "name": "FORIAN INC.",
  "selection_policy": "extended-v22",
  "source_url": "https://data.sec.gov/api/xbrl/companyfacts/CIK0001829280.json",
  "source_sha256": "0da9124e8434580c91eae4c74cf7707b871e630e45ecc1c59bc6122f3d8660be",
  "fetched_at": "2026-09-21T17:36:06.748Z",
  "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": 44130895,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 47169843,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 60412708,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-09-30",
          "val": 60194095,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q3I",
          "unit": "USD"
        },
        {
          "end": "2023-06-30",
          "val": 56547495,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q2I",
          "unit": "USD"
        },
        {
          "end": "2023-03-31",
          "val": 56588905,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q1I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 46258167,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 56842361,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 12554341,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 179045,
          "accn": "0001140361-21-011044",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "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": 14352147,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 17116827,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 32691528,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-09-30",
          "val": 32114566,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q3I",
          "unit": "USD"
        },
        {
          "end": "2023-06-30",
          "val": 34506420,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q2I",
          "unit": "USD"
        },
        {
          "end": "2023-03-31",
          "val": 35117463,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q1I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 33835691,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 31671096,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 1287226,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "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": 29778748,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 30053016,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 27721180,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-09-30",
          "val": 28079529,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q3I",
          "unit": "USD"
        },
        {
          "end": "2023-06-30",
          "val": 22041075,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q2I",
          "unit": "USD"
        },
        {
          "end": "2023-03-31",
          "val": 21471442,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q1I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 13301762,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 25171265,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 11267115,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": -281031,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-05-05",
          "val": 0,
          "accn": "0001140361-21-011044",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q1I",
          "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": 12903760,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 4590661,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 6042986,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-09-30",
          "val": 5377079,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q3I",
          "unit": "USD"
        },
        {
          "end": "2023-06-30",
          "val": 2902446,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q2I",
          "unit": "USD"
        },
        {
          "end": "2023-03-31",
          "val": 839715,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q1I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 2795743,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 18663805,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 665463,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 494,
          "accn": "0001140361-21-011044",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "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": -2874042,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -3771070,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 11768775,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -25971971,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -26551105,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -4980183,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": 2886473,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 282827,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 728818,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -8581174,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -17249262,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -4250734,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": "2024-01-01",
          "end": "2024-12-31",
          "val": 0,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 75493,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 47678,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 1443042,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 51494,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "RevenueFromContractWithCustomerExcludingAssessedTax",
      "taxonomy": "us-gaap",
      "label": "Contract revenue excluding tax",
      "kind": "duration",
      "meaning": "Revenue from customer contracts excluding assessed taxes under this specific taxonomy concept. It is not automatically comparable to older revenue tags.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 30256919,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 20153263,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 21216984,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 16418141,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 16879715,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 544871,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": -7516605,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -19023897,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -4601518,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -100528,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 36281043,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 16315700,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": 12943231,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 17288745,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 7119943,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -6461045,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -1025155,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -11399997,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": -52789152,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": -49915110,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": -46144040,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-09-30",
          "val": -47660321,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q3I",
          "unit": "USD"
        },
        {
          "end": "2023-06-30",
          "val": -52167412,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q2I",
          "unit": "USD"
        },
        {
          "end": "2023-03-31",
          "val": -51229461,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q1I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": -58792101,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": -32820130,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": -6269025,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": -1288842,
          "accn": "0001140361-21-011044",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "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": 31111780,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 31070548,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 32030855,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 32031096,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 29527608,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 13189623,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": 31111780,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 31070548,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 32230845,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 32031096,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 29527608,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 13189623,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "shares"
        }
      ]
    },
    {
      "tag": "EarningsPerShareBasic",
      "taxonomy": "us-gaap",
      "label": "Basic earnings per share",
      "kind": "duration",
      "unitKind": "per-share",
      "meaning": "Reported earnings or loss per basic common share or unit. Inspect attribution, share classes and restatements before comparing periods. This is not a market return.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": -0.09,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD/shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -0.12,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD/shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 0.36,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD/shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -0.81,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD/shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -0.9,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD/shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -0.38,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD/shares"
        }
      ]
    },
    {
      "tag": "EarningsPerShareDiluted",
      "taxonomy": "us-gaap",
      "label": "Diluted earnings per share",
      "kind": "duration",
      "unitKind": "per-share",
      "meaning": "Reported earnings or loss per share under dilution rules. Antidilutive instruments may be excluded. A diluted value can equal the basic value without implying no potential dilution.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": -0.09,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD/shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -0.12,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD/shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 0.36,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD/shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -0.81,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD/shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -0.9,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD/shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -0.38,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": 227972,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 66583,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 85740,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 23980,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 22511,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 0,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": 29428,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 46652,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 76085,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-09-30",
          "val": 86238,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q3I",
          "unit": "USD"
        },
        {
          "end": "2023-06-30",
          "val": 96836,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q2I",
          "unit": "USD"
        },
        {
          "end": "2023-03-31",
          "val": 112093,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q1I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 75030,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 1531959,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 46358,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 3419,
          "accn": "0001140361-21-011044",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "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": 3276379,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 6528397,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 6573969,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 11920575,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 9300443,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 28329,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": -3764252,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -6986961,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -4932924,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -18952810,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -27616757,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -4983757,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": 42556757,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 44460091,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 58802011,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-09-30",
          "val": 59890417,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q3I",
          "unit": "USD"
        },
        {
          "end": "2023-06-30",
          "val": 56265454,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q2I",
          "unit": "USD"
        },
        {
          "end": "2023-03-31",
          "val": 56268030,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q1I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 26916028,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 35985766,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 12507983,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 175626,
          "accn": "0001140361-21-011044",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "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": "2023-01-01",
          "end": "2023-12-31",
          "val": 834785,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 846100,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 322379,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 0,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "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": 14352147,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 16604690,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 6821347,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-09-30",
          "val": 7448622,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q3I",
          "unit": "USD"
        },
        {
          "end": "2023-06-30",
          "val": 8980658,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q2I",
          "unit": "USD"
        },
        {
          "end": "2023-03-31",
          "val": 9797066,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q1I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 8352575,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 6799125,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 1287226,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 460076,
          "accn": "0001140361-21-011044",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "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": "2025-12-31",
          "val": 3833522,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 982665,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 161590,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-09-30",
          "val": 259792,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q3I",
          "unit": "USD"
        },
        {
          "end": "2023-06-30",
          "val": 921542,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q2I",
          "unit": "USD"
        },
        {
          "end": "2023-03-31",
          "val": 350784,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q1I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 316105,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 1125067,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 647601,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 6400,
          "accn": "0001140361-21-011044",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "Goodwill",
      "taxonomy": "us-gaap",
      "label": "Goodwill carrying amount",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Recognized goodwill remaining after accumulated impairment. It arises from business combinations and does not measure the current value of the company’s brand.",
      "observations": [
        {
          "end": "2022-12-31",
          "val": 9099372,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 9099372,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 0,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "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": 1001546,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 1192044,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 0,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 6775841,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 9051184,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "AccountsReceivableNetCurrent",
      "taxonomy": "us-gaap",
      "label": "Net current accounts receivable",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Current customer receivables after the allowance for credit loss. The balance is not cash collected or a guarantee of collection.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 5643100,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 3971702,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 2572931,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-09-30",
          "val": 2918533,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q3I",
          "unit": "USD"
        },
        {
          "end": "2023-06-30",
          "val": 3839828,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q2I",
          "unit": "USD"
        },
        {
          "end": "2023-03-31",
          "val": 3795284,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023Q1I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 1809028,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 1947540,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 22996,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 0,
          "accn": "0001140361-21-011044",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "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": "2024-01-01",
          "end": "2024-12-31",
          "val": 292900,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 3450053,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 0,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "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": 2916722,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 1444745,
          "accn": "0001140361-26-011752",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-27",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 1407580,
          "accn": "0001140361-25-013493",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-04-11",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 4009769,
          "accn": "0001140361-24-016673",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-29",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 8975745,
          "accn": "0001140361-23-014888",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 2509666,
          "accn": "0001140361-22-012185",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        }
      ]
    }
  ],
  "source_snapshot": "/company-data/sources/0da9124e8434580c91eae4c74cf7707b871e630e45ecc1c59bc6122f3d8660be.json.gz"
}
