Organization record
SONOMA PHARMACEUTICALS, INC.
All evidence-backed facts for this organization, identity resolved across official registers.
Facts on record
Newest first; every row links to its evidence page.
| Fact | Value | Period | Source |
|---|---|---|---|
| accounts_payable | {"amount": 2191000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2026-06-30 | sec_edgar |
| accounts_payable | {"amount": 1923000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2026-03-31 | sec_edgar |
| accounts_payable | {"amount": 1646000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2025-12-31 | sec_edgar |
| accounts_payable | {"amount": 1404000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2025-09-30 | sec_edgar |
| accounts_payable | {"amount": 2046000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2025-06-30 | sec_edgar |
| accounts_payable | {"amount": 953000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2025-03-31 | sec_edgar |
| accounts_payable | {"amount": 1395000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2024-12-31 | sec_edgar |
| accounts_payable | {"amount": 770000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2024-09-30 | sec_edgar |
| accounts_payable | {"amount": 751000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2024-06-30 | sec_edgar |
| accounts_payable | {"amount": 607000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2024-03-31 | sec_edgar |
| accounts_payable | {"amount": 864000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2023-12-31 | sec_edgar |
| accounts_payable | {"amount": 987000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2023-09-30 | sec_edgar |
| accounts_payable | {"amount": 1090000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2023-06-30 | sec_edgar |
| accounts_payable | {"amount": 841000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2023-03-31 | sec_edgar |
| accounts_payable | {"amount": 1302000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2022-12-31 | sec_edgar |
| accounts_payable | {"amount": 1074000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2022-09-30 | sec_edgar |
| accounts_payable | {"amount": 2057000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2022-06-30 | sec_edgar |
| accounts_payable | {"amount": 1641000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2022-03-31 | sec_edgar |
| accounts_payable | {"amount": 1583000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2021-12-31 | sec_edgar |
| accounts_payable | {"amount": 1876000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2021-09-30 | sec_edgar |
| accounts_payable | {"amount": 1831000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2021-06-30 | sec_edgar |
| accounts_payable | {"amount": 1769000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2021-03-31 | sec_edgar |
| accounts_payable | {"amount": 2430000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2020-12-31 | sec_edgar |
| accounts_payable | {"amount": 3202000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2020-09-30 | sec_edgar |
| accounts_payable | {"amount": 4133000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2020-06-30 | sec_edgar |
| accounts_payable | {"amount": 2067000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2020-03-31 | sec_edgar |
| accounts_payable | {"amount": 2159000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2019-12-31 | sec_edgar |
| accounts_payable | {"amount": 2292000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2019-09-30 | sec_edgar |
| accounts_payable | {"amount": 1518000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2019-06-30 | sec_edgar |
| accounts_payable | {"amount": 1255000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2019-03-31 | sec_edgar |
| accounts_payable | {"amount": 1101000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2018-12-31 | sec_edgar |
| accounts_payable | {"amount": 1362000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2018-09-30 | sec_edgar |
| accounts_payable | {"amount": 1336000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2018-06-30 | sec_edgar |
| accounts_payable | {"amount": 1272000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2018-03-31 | sec_edgar |
| accounts_payable | {"amount": 1400000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2017-12-31 | sec_edgar |
| accounts_payable | {"amount": 1275000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2017-09-30 | sec_edgar |
| accounts_payable | {"amount": 774000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2017-06-30 | sec_edgar |
| accounts_payable | {"amount": 1255000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2017-03-31 | sec_edgar |
| accounts_payable | {"amount": 1092000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2016-12-31 | sec_edgar |
| accounts_payable | {"amount": 1284000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2016-09-30 | sec_edgar |
| accounts_payable | {"amount": 1368000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2016-06-30 | sec_edgar |
| accounts_payable | {"amount": 1337000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2016-03-31 | sec_edgar |
| accounts_payable | {"amount": 1464000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2015-12-31 | sec_edgar |
| accounts_payable | {"amount": 1161000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2015-09-30 | sec_edgar |
| accounts_payable | {"amount": 1202000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2015-06-30 | sec_edgar |
| accounts_payable | {"amount": 932000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2015-03-31 | sec_edgar |
| accounts_payable | {"amount": 942000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2014-12-31 | sec_edgar |
| accounts_payable | {"amount": 1051000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2014-09-30 | sec_edgar |
| accounts_payable | {"amount": 943000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2014-06-30 | sec_edgar |
| accounts_payable | {"amount": 736000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2014-03-31 | sec_edgar |
| accounts_payable | {"amount": 1638000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2013-12-31 | sec_edgar |
| accounts_payable | {"amount": 1027000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2013-09-30 | sec_edgar |
| accounts_payable | {"amount": 1025000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2013-06-30 | sec_edgar |
| accounts_payable | {"amount": 808000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2013-03-31 | sec_edgar |
| accounts_payable | {"amount": 504000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2012-12-31 | sec_edgar |
| accounts_payable | {"amount": 783000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2012-09-30 | sec_edgar |
| accounts_payable | {"amount": 692000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2012-06-30 | sec_edgar |
| accounts_payable | {"amount": 816000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2012-03-31 | sec_edgar |
| accounts_payable | {"amount": 879000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2011-12-31 | sec_edgar |
| accounts_payable | {"amount": 605000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2011-09-30 | sec_edgar |
| accounts_payable | {"amount": 782000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2011-06-30 | sec_edgar |
| accounts_payable | {"amount": 669000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2011-03-31 | sec_edgar |
| accounts_receivable | {"amount": 3182000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2026-06-30 | sec_edgar |
| accounts_receivable | {"amount": 2527000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2026-03-31 | sec_edgar |
| accounts_receivable | {"amount": 2382000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2025-12-31 | sec_edgar |
| accounts_receivable | {"amount": 2703000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2025-09-30 | sec_edgar |
| accounts_receivable | {"amount": 2602000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2025-06-30 | sec_edgar |
| accounts_receivable | {"amount": 2232000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2025-03-31 | sec_edgar |
| accounts_receivable | {"amount": 2405000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2024-12-31 | sec_edgar |
| accounts_receivable | {"amount": 3157000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2024-09-30 | sec_edgar |
| accounts_receivable | {"amount": 3247000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2024-06-30 | sec_edgar |
| accounts_receivable | {"amount": 2898000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2024-03-31 | sec_edgar |
| accounts_receivable | {"amount": 2876000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2023-12-31 | sec_edgar |
| accounts_receivable | {"amount": 2223000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2023-09-30 | sec_edgar |
| accounts_receivable | {"amount": 2439000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2023-06-30 | sec_edgar |
| accounts_receivable | {"amount": 2572000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2023-03-31 | sec_edgar |
| accounts_receivable | {"amount": 2297000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2022-12-31 | sec_edgar |
| accounts_receivable | {"amount": 2487000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2022-09-30 | sec_edgar |
| accounts_receivable | {"amount": 2434000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2022-06-30 | sec_edgar |
| accounts_receivable | {"amount": 2407000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2022-03-31 | sec_edgar |
| accounts_receivable | {"amount": 2854000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2021-12-31 | sec_edgar |
| accounts_receivable | {"amount": 3416000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2021-09-30 | sec_edgar |
| accounts_receivable | {"amount": 2998000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2021-06-30 | sec_edgar |
| accounts_receivable | {"amount": 2806000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2021-03-31 | sec_edgar |
| accounts_receivable | {"amount": 4408000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2020-12-31 | sec_edgar |
| accounts_receivable | {"amount": 5279000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2020-09-30 | sec_edgar |
| accounts_receivable | {"amount": 4774000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2020-06-30 | sec_edgar |
| accounts_receivable | {"amount": 3973000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2020-03-31 | sec_edgar |
| accounts_receivable | {"amount": 5029000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2019-12-31 | sec_edgar |
| accounts_receivable | {"amount": 4735000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2019-09-30 | sec_edgar |
| accounts_receivable | {"amount": 4315000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2019-06-30 | sec_edgar |
| accounts_receivable | {"amount": 3481000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2019-03-31 | sec_edgar |
| accounts_receivable | {"amount": 3121000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2018-12-31 | sec_edgar |
| accounts_receivable | {"amount": 2971000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2018-09-30 | sec_edgar |
| accounts_receivable | {"amount": 2214000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2018-06-30 | sec_edgar |
| accounts_receivable | {"amount": 1537000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2018-03-31 | sec_edgar |
| accounts_receivable | {"amount": 2609000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2017-12-31 | sec_edgar |
| accounts_receivable | {"amount": 3035000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2017-09-30 | sec_edgar |
| accounts_receivable | {"amount": 2741000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2017-06-30 | sec_edgar |
| accounts_receivable | {"amount": 2108000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2017-03-31 | sec_edgar |
| accounts_receivable | {"amount": 1977000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2016-12-31 | sec_edgar |
| accounts_receivable | {"amount": 2260000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2016-09-30 | sec_edgar |
| accounts_receivable | {"amount": 2593000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2016-06-30 | sec_edgar |
| accounts_receivable | {"amount": 1508000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2016-03-31 | sec_edgar |
| accounts_receivable | {"amount": 2741000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2015-12-31 | sec_edgar |
| accounts_receivable | {"amount": 2572000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2015-09-30 | sec_edgar |
| accounts_receivable | {"amount": 2540000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2015-06-30 | sec_edgar |
| accounts_receivable | {"amount": 1517000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2015-03-31 | sec_edgar |
| accounts_receivable | {"amount": 1416000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2014-12-31 | sec_edgar |
| accounts_receivable | {"amount": 2149000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2014-09-30 | sec_edgar |
| accounts_receivable | {"amount": 1954000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2014-06-30 | sec_edgar |
| accounts_receivable | {"amount": 1790000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2014-03-31 | sec_edgar |
| accounts_receivable | {"amount": 2603000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2013-12-31 | sec_edgar |
| accounts_receivable | {"amount": 2424000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2013-09-30 | sec_edgar |
| accounts_receivable | {"amount": 2192000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2013-06-30 | sec_edgar |
| accounts_receivable | {"amount": 1707000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2013-03-31 | sec_edgar |
| accounts_receivable | {"amount": 3070000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2012-12-31 | sec_edgar |
| accounts_receivable | {"amount": 2842000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2012-09-30 | sec_edgar |
| accounts_receivable | {"amount": 3272000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2012-06-30 | sec_edgar |
| accounts_receivable | {"amount": 2151000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2012-03-31 | sec_edgar |
| accounts_receivable | {"amount": 1921000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2011-12-31 | sec_edgar |
| accounts_receivable | {"amount": 2074000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2011-09-30 | sec_edgar |
| accounts_receivable | {"amount": 2063000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2011-06-30 | sec_edgar |
| accounts_receivable | {"amount": 2094000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2011-03-31 | sec_edgar |
| capex | {"amount": 2000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "currenc | 2026-06-30 | sec_edgar |
| capex | {"amount": 192000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2026-03-31 | sec_edgar |
| capex | {"amount": 163000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2025-12-31 | sec_edgar |
| capex | {"amount": 116000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2025-09-30 | sec_edgar |
| capex | {"amount": 106000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2025-06-30 | sec_edgar |
| capex | {"amount": 80000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2025-03-31 | sec_edgar |
| capex | {"amount": 33000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2024-12-31 | sec_edgar |
| capex | {"amount": 31000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2024-09-30 | sec_edgar |
| capex | {"amount": 5000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "currenc | 2024-06-30 | sec_edgar |
| capex | {"amount": 2000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "currenc | 2024-03-31 | sec_edgar |
| capex | {"amount": 20000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2023-12-31 | sec_edgar |
| capex | {"amount": 19000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2023-09-30 | sec_edgar |
| capex | {"amount": 17000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2023-06-30 | sec_edgar |
| capex | {"amount": 269000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2023-03-31 | sec_edgar |
| capex | {"amount": 79000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2022-12-31 | sec_edgar |
| capex | {"amount": 48000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2022-09-30 | sec_edgar |
| capex | {"amount": 23000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2022-06-30 | sec_edgar |
| capex | {"amount": 137000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2022-03-31 | sec_edgar |
| capex | {"amount": 75000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2021-12-31 | sec_edgar |
| capex | {"amount": 74000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2021-09-30 | sec_edgar |
| capex | {"amount": 49000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2021-06-30 | sec_edgar |
| capex | {"amount": 179000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2021-03-31 | sec_edgar |
| capex | {"amount": 174000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2020-12-31 | sec_edgar |
| capex | {"amount": 97000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2020-09-30 | sec_edgar |
| capex | {"amount": 52000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2020-06-30 | sec_edgar |
| capex | {"amount": 206000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2020-03-31 | sec_edgar |
| capex | {"amount": 86000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2019-12-31 | sec_edgar |
| capex | {"amount": 77000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2019-09-30 | sec_edgar |
| capex | {"amount": 12000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2019-06-30 | sec_edgar |
| capex | {"amount": 100000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2019-03-31 | sec_edgar |
| capex | {"amount": 86000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2018-12-31 | sec_edgar |
| capex | {"amount": 57000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2018-09-30 | sec_edgar |
| capex | {"amount": 27000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2018-06-30 | sec_edgar |
| capex | {"amount": 187000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2018-03-31 | sec_edgar |
| capex | {"amount": 178000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2017-12-31 | sec_edgar |
| capex | {"amount": 162000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2017-09-30 | sec_edgar |
| capex | {"amount": 157000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2017-06-30 | sec_edgar |
| capex | {"amount": 394000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2017-03-31 | sec_edgar |
| capex | {"amount": 195000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2016-12-31 | sec_edgar |
| capex | {"amount": 64000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2016-09-30 | sec_edgar |
| capex | {"amount": 14000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2016-06-30 | sec_edgar |
| capex | {"amount": 345000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2016-03-31 | sec_edgar |
| capex | {"amount": 353000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2015-12-31 | sec_edgar |
| capex | {"amount": 229000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2015-09-30 | sec_edgar |
| capex | {"amount": 148000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2015-06-30 | sec_edgar |
| capex | {"amount": 139000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2015-03-31 | sec_edgar |
| capex | {"amount": 81000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2014-12-31 | sec_edgar |
| capex | {"amount": 16000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2014-09-30 | sec_edgar |
| capex | {"amount": 21000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2014-06-30 | sec_edgar |
| capex | {"amount": 504000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2014-03-31 | sec_edgar |
| capex | {"amount": 470000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2013-12-31 | sec_edgar |
| capex | {"amount": 338000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2013-09-30 | sec_edgar |
| capex | {"amount": 186000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2013-06-30 | sec_edgar |
| capex | {"amount": 257000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2013-03-31 | sec_edgar |
| capex | {"amount": 128000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2012-12-31 | sec_edgar |
| capex | {"amount": 62000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2012-09-30 | sec_edgar |
| capex | {"amount": 2000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "currenc | 2012-06-30 | sec_edgar |
| capex | {"amount": 336000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2012-03-31 | sec_edgar |
| capex | {"amount": 78000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2011-12-31 | sec_edgar |
| capex | {"amount": 102000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2011-09-30 | sec_edgar |
| capex | {"amount": 62000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2011-06-30 | sec_edgar |
| capex | {"amount": 174000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curre | 2011-03-31 | sec_edgar |
| capex | {"amount": 73000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2010-12-31 | sec_edgar |
| capex | {"amount": 63000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2010-09-30 | sec_edgar |
| capex | {"amount": 18000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curren | 2010-06-30 | sec_edgar |
| cash_and_equivalents | {"amount": 5338000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2026-06-30 | sec_edgar |
| cash_and_equivalents | {"amount": 2399000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2026-03-31 | sec_edgar |
| cash_and_equivalents | {"amount": 2561000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2025-12-31 | sec_edgar |
| cash_and_equivalents | {"amount": 3035000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2025-09-30 | sec_edgar |
| cash_and_equivalents | {"amount": 3605000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2025-06-30 | sec_edgar |
| cash_and_equivalents | {"amount": 5374000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2025-03-31 | sec_edgar |
| cash_and_equivalents | {"amount": 5236000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2024-12-31 | sec_edgar |
| cash_and_equivalents | {"amount": 4078000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2024-09-30 | sec_edgar |
| cash_and_equivalents | {"amount": 2589000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2024-06-30 | sec_edgar |
| cash_and_equivalents | {"amount": 3128000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2024-03-31 | sec_edgar |
| cash_and_equivalents | {"amount": 2406000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currency" | 2023-12-31 | sec_edgar |