{
  "schema": "canli.company-reference.v1",
  "cik": "0000909724",
  "name": "TANDY LEATHER FACTORY, INC",
  "selection_policy": "extended-v22",
  "source_url": "https://data.sec.gov/api/xbrl/companyfacts/CIK0000909724.json",
  "source_sha256": "1c0af00d1f947d3dfb4249dc637cf3789ba25424668485ba576816b21e3ace2a",
  "fetched_at": "2026-09-20T05:06:00.291Z",
  "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": 86633000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 74924000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 72135000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 68579000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 73085000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 75693000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 80111000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 83488878,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 76781327,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 75282832,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 73838699,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 73509471,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 72870607,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 70652720,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 64611076,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 62873874,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 56398566,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 49087672,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 45502915,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 40595574,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 52591000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 57153000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 56346000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 51463000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 51501000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 52194000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 56419000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 59230090,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 58286000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 58004707,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 57283675,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 56841234,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 55895540,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 52542666,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 50972176,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 49123012,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 44621542,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 37521017,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 34433801,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 29761594,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2010Q4I",
          "unit": "USD"
        },
        {
          "end": "2009-12-31",
          "val": 33359655,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2009Q4I",
          "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": 16087000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 13271000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 12159000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 7975000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 10155000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 10329000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 15905000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 12679373,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 24070351,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 16814972,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 18955328,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 19252878,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 18082857,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 16862304,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 10962615,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 10636530,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 11082679,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 7705182,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 10765591,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 4293746,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2010Q4I",
          "unit": "USD"
        },
        {
          "end": "2009-12-31",
          "val": 7891962,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2009Q4I",
          "unit": "USD"
        },
        {
          "end": "2008-12-31",
          "val": 7810298,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 9102000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 827000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 3768000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 1227000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 1354000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -4901000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": -1903000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 4398365,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 2478444,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 6402259,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 6402405,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 7706921,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 7265717,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 5596070,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 4752601,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 4160257,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 3318057,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": -556000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 4548000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 4537000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 1154000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 3716000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -12527000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 10471000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 7771740,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 2465775,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 7721473,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 8198900,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 1177712,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 7539890,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 1913795,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 6572612,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 2721243,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 5274461,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 7537000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 2983000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 576000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 635000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 1001000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 1313000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 269000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 1088328,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 1691999,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 1697704,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 2164040,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 2204190,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 3770022,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 2686221,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 1100523,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 1553339,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 791565,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "frame": "CY2009",
          "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": 76324000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 74391000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 76229000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 80335000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 82661000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 64084000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 74918000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 83203569,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 82420595,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "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": -14108000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -1000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -26000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -2171000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -2777000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 416000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": -9703000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -56978,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 150718,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -94545,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": -5710732,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 547413,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -392450,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": -2717651,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": -202500,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": -8164485,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": -2395895,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 17360000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -2983000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -576000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -625000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -1001000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 6256000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": -9156000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -1060389,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -1656036,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -1545348,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": -2162083,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": -2171274,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -3769943,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": -2256553,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 101733,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 1845026,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": -2796902,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 60843000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 64486000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 63659000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 59891000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 58664000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 57310000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 62211000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 65634371,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 64476378,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 63361113,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 62752412,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 61594670,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 60078013,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 59469493,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 53067234,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 46664829,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 41507592,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 34241875,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 31181936,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 26429335,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 8234862,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 8493989,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 8339658,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 8363390,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 8709866,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 9062598,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 8973246,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 9185203,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 9242092,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 9301867,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 10077506,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 10203063,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 10176492,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 10157395,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 10156442,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "shares"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 10208944,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "shares"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 10471103,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "frame": "CY2009",
          "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": 8264174,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 8783063,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 8369976,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 8394567,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 8720469,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 9062598,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 8973246,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 9205008,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 9245537,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 9321558,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 10102760,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 10241121,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 10216438,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 10175346,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 10182098,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "shares"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 10251863,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "shares"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 10535736,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "frame": "CY2009",
          "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.11,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD/shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 0.1,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD/shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 0.45,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD/shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 0.15,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD/shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 0.16,
          "accn": "0001140361-23-015325",
          "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.54,
          "accn": "0001140361-22-012320",
          "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.21,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD/shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 0.48,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD/shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 0.27,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD/shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 0.69,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD/shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 0.64,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD/shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 0.76,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD/shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 0.71,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD/shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 0.55,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD/shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 0.47,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD/shares"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 0.41,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD/shares"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 0.32,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "frame": "CY2009",
          "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.1,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD/shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 0.09,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD/shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 0.45,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD/shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 0.15,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD/shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 0.16,
          "accn": "0001140361-23-015325",
          "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.54,
          "accn": "0001140361-22-012320",
          "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.21,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD/shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 0.48,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD/shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 0.27,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD/shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 0.69,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD/shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 0.63,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD/shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 0.75,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD/shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 0.71,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD/shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 0.55,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD/shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 0.47,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD/shares"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 0.41,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD/shares"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 0.31,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "frame": "CY2009",
          "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": 3198000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 264000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 777000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 181000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 839000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -1378000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": -690000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 1813454,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 3859832,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 3800570,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 3816648,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 4100689,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 3955042,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 3349575,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 2787533,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 2317255,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 1700259,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "frame": "CY2009",
          "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": 10225000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 12335000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 10547000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 11162000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 11761000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 12390000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 12919000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 13960677,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 14515084,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 14989702,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 15015591,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 15259025,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 15566883,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 15651793,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 15695053,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 15162278,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 14427710,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 11944590,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 10299350,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 10284541,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 484000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 548000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 770000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 1060000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 797000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 887000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 770000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 327629,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 239599,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 199870,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 145322,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 67818,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 11686,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 10000,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 33156,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 41692,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 2540,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": -963000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 628000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 4410000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 1388000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 2300000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -6348000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": -2597000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 5963203,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 6376719,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 10300731,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 10474700,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 11958029,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 11266790,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 9144005,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 7706650,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 6635611,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 5095101,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 50582000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 50536000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 51252000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 47252000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 50449000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 51012000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 52516000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 50497878,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 59816578,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 57506977,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 56176269,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 55843994,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 54810953,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 53314242,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 47234721,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 46351805,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 40543684,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 35670129,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 33688024,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 28768716,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": "2021-01-01",
          "end": "2021-12-31",
          "val": 16000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 7000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 36000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 304957,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 205555,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 155189,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 330004,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 225584,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 206763,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 240934,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 248576,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 265405,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": -297864,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 9798000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 9886000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 8933000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 8870000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 12207000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 12923000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 12232000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 9052636,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 8075418,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 7302246,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 8146118,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 8115177,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 8423800,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 8246068,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 8333566,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 10352232,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 8168217,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 7857630,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 7105285,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 6897937,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": "2021-12-31",
          "val": 4786000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 5737000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 5753000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 897196,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 2154394,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 3718393,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 3115778,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 2922764,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 2409845,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 1621884,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 1983376,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 1255218,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 1884637,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 1612627,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 1622697,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 1247821,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "frame": "CY2010Q4I",
          "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": "2019-12-31",
          "val": 0,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 956945,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 954765,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 960304,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 958464,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 960353,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 962949,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 956201,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 953356,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 971786,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 981985,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 990725,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 987009,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 990368,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": "2022-12-31",
          "val": 5000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 6000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 6000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 7000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 15833,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 16500,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 17166,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 18083,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 18667,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 19222,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 20840,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 27282,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 58026,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 103228,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 145533,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 187292,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "AccountsReceivableNetCurrent",
      "taxonomy": "us-gaap",
      "label": "Net current accounts receivable",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Current customer receivables after the allowance for credit loss. The balance is not cash collected or a guarantee of collection.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 425000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 331000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 300000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 400000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 600000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 400000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 409000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 456537,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 408170,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 418612,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 496255,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 503322,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 461212,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 560984,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 553206,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 625054,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 762405,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 822772,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 1328579,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 1253639,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "frame": "CY2010Q4I",
          "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": "2025-01-01",
          "end": "2025-12-31",
          "val": 1363000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 0,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 11000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 1798000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 2738000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 0,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 735000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 1653266,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 0,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 3675654,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 3708862,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 441419,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 1624264,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "frame": "CY2009",
          "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": "2018-01-01",
          "end": "2018-12-31",
          "val": 46751728,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 44872007,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 41412511,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 41596360,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 40166728,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 38061234,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 36761669,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 32630509,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 29615246,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 27514273,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 33238000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 35556000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 37993000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 38227000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 38084000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 36779000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 24042000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-03-31",
          "val": 30174483,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2019Q1I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 33302549,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-09-30",
          "val": 38411757,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q3I",
          "unit": "USD"
        },
        {
          "end": "2018-06-30",
          "val": 35122333,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q2I",
          "unit": "USD"
        },
        {
          "end": "2018-03-31",
          "val": 34277634,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018Q1I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 34546084,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 33177539,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 33584539,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 32875492,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 26300830,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 25862784,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 19940251,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 20236028,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "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": 43539000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 41804000,
          "accn": "0001140361-26-006550",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-02-24",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 45163000,
          "accn": "0001140361-25-006103",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-02-26",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 46497000,
          "accn": "0001140361-24-014799",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-22",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 46999000,
          "accn": "0001140361-23-015325",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-31",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 36058000,
          "accn": "0001140361-22-012320",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-31",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 41959000,
          "accn": "0001140361-21-030267",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-09-02",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 50940945,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 49085661,
          "accn": "0001140361-21-021895",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-06-22",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 51713242,
          "accn": "0000909724-19-000004",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-08",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 52071060,
          "accn": "0000909724-18-000005",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-08",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 52124757,
          "accn": "0000909724-17-000008",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-27",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 49328024,
          "accn": "0000909724-16-000056",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-30",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 45905674,
          "accn": "0000909724-15-000009",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-30",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 40337159,
          "accn": "0000909724-14-000011",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-28",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 36250857,
          "accn": "0000909724-13-000013",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K/A",
          "filed": "2013-03-28",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 32609374,
          "accn": "0000909724-12-000009",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-30",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    }
  ],
  "source_snapshot": "/company-data/sources/1c0af00d1f947d3dfb4249dc637cf3789ba25424668485ba576816b21e3ace2a.json.gz"
}
