{
 "instance": {
  "f10k2021_altoingredients.htm": {
   "axisCustom": 0,
   "axisStandard": 34,
   "contextCount": 402,
   "dts": {
    "calculationLink": {
     "local": [
      "alto-20211231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "alto-20211231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "f10k2021_altoingredients.htm"
     ]
    },
    "labelLink": {
     "local": [
      "alto-20211231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "alto-20211231_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "alto-20211231.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd",
      "https://xbrl.sec.gov/country/2021/country-2021.xsd",
      "https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd",
      "https://xbrl.sec.gov/sic/2021/sic-2021.xsd"
     ]
    }
   },
   "elementCount": 882,
   "entityCount": 1,
   "hidden": {
    "http://altoingredients.com/20211231": 27,
    "http://fasb.org/us-gaap/2021-01-31": 186,
    "http://xbrl.sec.gov/dei/2021q4": 4,
    "total": 217
   },
   "keyCustom": 115,
   "keyStandard": 496,
   "memberCustom": 103,
   "memberStandard": 38,
   "nsprefix": "alto",
   "nsuri": "http://altoingredients.com/20211231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:EntityRegistrantName",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "000 - Document - Document And Entity Information",
     "role": "http://altoingredients.com/role/DocumentAndEntityInformation",
     "shortName": "Document And Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:EntityRegistrantName",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "009 - Disclosure - Intercompany Agreements",
     "role": "http://altoingredients.com/role/IntercompanyAgreements",
     "shortName": "Intercompany Agreements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "010 - Disclosure - Segments",
     "role": "http://altoingredients.com/role/Segments",
     "shortName": "Segments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "011 - Disclosure - Property and Equipment",
     "role": "http://altoingredients.com/role/PropertyandEquipment",
     "shortName": "Property and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "012 - Disclosure - Derivatives",
     "role": "http://altoingredients.com/role/Derivatives",
     "shortName": "Derivatives",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "013 - Disclosure - Debt",
     "role": "http://altoingredients.com/role/Debt",
     "shortName": "Debt",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "014 - Disclosure - Leases",
     "role": "http://altoingredients.com/role/Leases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "015 - Disclosure - Pension Plans",
     "role": "http://altoingredients.com/role/PensionPlans",
     "shortName": "Pension Plans",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "016 - Disclosure - Income Taxes",
     "role": "http://altoingredients.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PreferredStockTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "017 - Disclosure - Preferred Stock",
     "role": "http://altoingredients.com/role/PreferredStock",
     "shortName": "Preferred Stock",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PreferredStockTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "018 - Disclosure - Common Stock and Warrants",
     "role": "http://altoingredients.com/role/CommonStockandWarrants",
     "shortName": "Common Stock and Warrants",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "001 - Statement - Consolidated Balance Sheets",
     "role": "http://altoingredients.com/role/ConsolidatedBalanceSheet",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "019 - Disclosure - Stock-Based Compensation",
     "role": "http://altoingredients.com/role/StockBasedCompensation",
     "shortName": "Stock-Based Compensation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "020 - Disclosure - Commitments and Contingencies",
     "role": "http://altoingredients.com/role/CommitmentsandContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "021 - Disclosure - Fair Value Measurements.",
     "role": "http://altoingredients.com/role/FairValueMeasurements",
     "shortName": "Fair Value Measurements.",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "022 - Disclosure - Subsequent Events",
     "role": "http://altoingredients.com/role/SubsequentEvents",
     "shortName": "Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "023 - Disclosure - Accounting Policies, by Policy (Policies)",
     "role": "http://altoingredients.com/role/AccountingPoliciesByPolicy",
     "shortName": "Accounting Policies, by Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "024 - Disclosure - Organization and Significant Accounting Policies (Tables)",
     "role": "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesTables",
     "shortName": "Organization and Significant Accounting Policies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "025 - Disclosure - Segments (Tables)",
     "role": "http://altoingredients.com/role/SegmentsTables",
     "shortName": "Segments (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "026 - Disclosure - Property and Equipment (Tables)",
     "role": "http://altoingredients.com/role/PropertyandEquipmentTables",
     "shortName": "Property and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "027 - Disclosure - Derivatives (Tables)",
     "role": "http://altoingredients.com/role/DerivativesTables",
     "shortName": "Derivatives (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "028 - Disclosure - Debt (Tables)",
     "role": "http://altoingredients.com/role/DebtTables",
     "shortName": "Debt (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "002 - Statement - Consolidated Balance Sheets (Parentheticals)",
     "role": "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals",
     "shortName": "Consolidated Balance Sheets (Parentheticals)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseLeaseIncomeTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "029 - Disclosure - Leases (Tables)",
     "role": "http://altoingredients.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseLeaseIncomeTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c243",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "030 - Disclosure - Pension Plans (Tables)",
     "role": "http://altoingredients.com/role/PensionPlansTables",
     "shortName": "Pension Plans (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c243",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "031 - Disclosure - Income Taxes (Tables)",
     "role": "http://altoingredients.com/role/IncomeTaxesTables",
     "shortName": "Income Taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "032 - Disclosure - Common Stock and Warrants (Tables)",
     "role": "http://altoingredients.com/role/CommonStockandWarrantsTables",
     "shortName": "Common Stock and Warrants (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alto:ScheduleOfStockOptionPlansTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "033 - Disclosure - Stock-Based Compensation (Tables)",
     "role": "http://altoingredients.com/role/StockBasedCompensationTables",
     "shortName": "Stock-Based Compensation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alto:ScheduleOfStockOptionPlansTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alto:ScheduleOfUsedAndRelatedFairValueForTheWarrantsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "034 - Disclosure - Fair Value Measurements. (Tables)",
     "role": "http://altoingredients.com/role/FairValueMeasurementsTables",
     "shortName": "Fair Value Measurements. (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alto:ScheduleOfUsedAndRelatedFairValueForTheWarrantsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:EquityMethodInvestmentOwnershipPercentage",
      "reportCount": 1,
      "unitRef": "pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "035 - Disclosure - Organization and Significant Accounting Policies (Details)",
     "role": "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
     "shortName": "Organization and Significant Accounting Policies (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:PledgedAssetsSeparatelyReportedFinanceReceivablesPledgedAsCollateralAtFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c71",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "alto:CustomerRiskPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "036 - Disclosure - Organization and Significant Accounting Policies\t (Details) - Schedule of sold to customers representing 10% or more of the Company\u2019s total net sales",
     "role": "http://altoingredients.com/role/Scheduleofsoldtocustomersrepresenting10ormoreoftheCompanystotalnetsalesTable",
     "shortName": "Organization and Significant Accounting Policies\t (Details) - Schedule of sold to customers representing 10% or more of the Company\u2019s total net sales",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c71",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "alto:CustomerRiskPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "alto:SchedulesOfConcentrationsOfRiskByRiskFactorTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c80",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "alto:SupplierTotalPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "037 - Disclosure - Organization and Significant Accounting Policies\t (Details) - Schedule of purchased corn from suppliers representing 10% or more of the Company\u2019s total corn purchases",
     "role": "http://altoingredients.com/role/Scheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesTable",
     "shortName": "Organization and Significant Accounting Policies\t (Details) - Schedule of purchased corn from suppliers representing 10% or more of the Company\u2019s total corn purchases",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "alto:SchedulesOfConcentrationsOfRiskByRiskFactorTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c80",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "alto:SupplierTotalPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryFinishedGoods",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "038 - Disclosure - Organization and Significant Accounting Policies\t (Details) - Schedule of inventories",
     "role": "http://altoingredients.com/role/ScheduleofinventoriesTable",
     "shortName": "Organization and Significant Accounting Policies\t (Details) - Schedule of inventories",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryFinishedGoods",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "003 - Statement - Consolidated Statements of Operations",
     "role": "http://altoingredients.com/role/ConsolidatedIncomeStatement",
     "shortName": "Consolidated Statements of Operations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:GrossProfit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:ScheduleOfPublicUtilityPropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c85",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "039 - Disclosure - Organization and Significant Accounting Policies\t (Details) - Schedule of depreciation is computed using the straight-line method",
     "role": "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable",
     "shortName": "Organization and Significant Accounting Policies\t (Details) - Schedule of depreciation is computed using the straight-line method",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:ScheduleOfPublicUtilityPropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c85",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "alto:NetIncomeAttributedToAltoIngredientsIncIncomeNumerator",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "040 - Disclosure - Organization and Significant Accounting Policies\t (Details) - Schedule of basic and diluted earnings per share",
     "role": "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable",
     "shortName": "Organization and Significant Accounting Policies\t (Details) - Schedule of basic and diluted earnings per share",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "alto:NetIncomeAttributedToAltoIngredientsIncIncomeNumerator",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c93",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alto:BusinessCombinationPromissoryNotes",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "041 - Disclosure - Asset Sales and Held-For-Sale Classification (Details)",
     "role": "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails",
     "shortName": "Asset Sales and Held-For-Sale Classification (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c93",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alto:BusinessCombinationPromissoryNotes",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RegulatedOperatingRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "042 - Disclosure - Intercompany Agreements (Details)",
     "role": "http://altoingredients.com/role/IntercompanyAgreementsDetails",
     "shortName": "Intercompany Agreements (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RegulatedOperatingRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NumberOfOperatingSegments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "043 - Disclosure - Segments (Details)",
     "role": "http://altoingredients.com/role/SegmentsDetails",
     "shortName": "Segments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NumberOfOperatingSegments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "044 - Disclosure - Segments (Details) - Schedule of financial data for operating segments",
     "role": "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable",
     "shortName": "Segments (Details) - Schedule of financial data for operating segments",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c169",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Assets",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "045 - Disclosure - Segments (Details) - Schedule of assets by operating segments",
     "role": "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable",
     "shortName": "Segments (Details) - Schedule of assets by operating segments",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c184",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:Assets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DepreciationExpenseOnReclassifiedAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "046 - Disclosure - Property and Equipment (Details)",
     "role": "http://altoingredients.com/role/PropertyandEquipmentDetails",
     "shortName": "Property and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DepreciationExpenseOnReclassifiedAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "047 - Disclosure - Property and Equipment (Details) - Schedule of property and equipment",
     "role": "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable",
     "shortName": "Property and Equipment (Details) - Schedule of property and equipment",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ChangeInUnrealizedGainLossOnHedgedItemInFairValueHedge1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "048 - Disclosure - Derivatives (Details)",
     "role": "http://altoingredients.com/role/DerivativesDetails",
     "shortName": "Derivatives (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ChangeInUnrealizedGainLossOnHedgedItemInFairValueHedge1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProfitLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "004 - Statement - Consolidated Statements of Comprehensive Income (Loss)",
     "role": "http://altoingredients.com/role/ConsolidatedComprehensiveIncome",
     "shortName": "Consolidated Statements of Comprehensive Income (Loss)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c203",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsAssetAtFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "049 - Disclosure - Derivatives (Details) - Schedule of derivatives not designated as hedging instruments",
     "role": "http://altoingredients.com/role/ScheduleofderivativesnotdesignatedashedginginstrumentsTable",
     "shortName": "Derivatives (Details) - Schedule of derivatives not designated as hedging instruments",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c203",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsAssetAtFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:GainLossOnDerivativeInstrumentsNetPretax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "050 - Disclosure - Derivatives (Details) - Schedule of recognized gains (losses) for derivatives",
     "role": "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable",
     "shortName": "Derivatives (Details) - Schedule of recognized gains (losses) for derivatives",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:GainLossOnDerivativeInstrumentsNetPretax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c228",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "051 - Disclosure - Debt (Details)",
     "role": "http://altoingredients.com/role/DebtDetails",
     "shortName": "Debt (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c228",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NotesPayable",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "052 - Disclosure - Debt (Details) - Schedule of long-term borrowings",
     "role": "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable",
     "shortName": "Debt (Details) - Schedule of long-term borrowings",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NotesPayable",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "053 - Disclosure - Debt (Details) - Schedule of maturities of long-term debt",
     "role": "http://altoingredients.com/role/ScheduleofmaturitiesoflongtermdebtTable",
     "shortName": "Debt (Details) - Schedule of maturities of long-term debt",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "4",
      "first": true,
      "lang": null,
      "name": "us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "054 - Disclosure - Leases (Details)",
     "role": "http://altoingredients.com/role/LeasesDetails",
     "shortName": "Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "4",
      "first": true,
      "lang": null,
      "name": "us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "055 - Disclosure - Leases (Details) - Schedule of leases",
     "role": "http://altoingredients.com/role/ScheduleofleasesTable",
     "shortName": "Leases (Details) - Schedule of leases",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:OperatingLeaseLeaseIncomeTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "lang": null,
      "name": "alto:OperatingLeasesNetOfCurrentPortion",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "056 - Disclosure - Leases (Details) - Schedule of components of lease costs",
     "role": "http://altoingredients.com/role/ScheduleofcomponentsofleasecostsTable",
     "shortName": "Leases (Details) - Schedule of components of lease costs",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c239",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "057 - Disclosure - Leases (Details) - Schedule of operating lease liabilities",
     "role": "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable",
     "shortName": "Leases (Details) - Schedule of operating lease liabilities",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c239",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MultiemployerPlansPlanBenefitsDescription",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "058 - Disclosure - Pension Plans (Details)",
     "role": "http://altoingredients.com/role/PensionPlansDetails",
     "shortName": "Pension Plans (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MultiemployerPlansPlanBenefitsDescription",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c13",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "005 - Statement - Consolidated Statements of Stockholders\u2019 Equity",
     "role": "http://altoingredients.com/role/ShareholdersEquityType2or3",
     "shortName": "Consolidated Statements of Stockholders\u2019 Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c13",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c244",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanPensionPlanWithProjectedBenefitObligationInExcessOfPlanAssetsPlanAssets",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "059 - Disclosure - Pension Plans (Details) - Schedule of information related to the retirement plan",
     "role": "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable",
     "shortName": "Pension Plans (Details) - Schedule of information related to the retirement plan",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c245",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanPensionPlanWithProjectedBenefitObligationInExcessOfPlanAssetsPlanAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c243",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanServiceCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060 - Disclosure - Pension Plans (Details) - Schedule of components of net periodic benefit costs",
     "role": "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable",
     "shortName": "Pension Plans (Details) - Schedule of components of net periodic benefit costs",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c243",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanServiceCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c247",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "061 - Disclosure - Pension Plans (Details) - Schedule of expected benefit payments",
     "role": "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
     "shortName": "Pension Plans (Details) - Schedule of expected benefit payments",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c247",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c250",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanAccumulatedBenefitObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "062 - Disclosure - Pension Plans (Details) - Schedule of information related to the retirement plan",
     "role": "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0",
     "shortName": "Pension Plans (Details) - Schedule of information related to the retirement plan",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c250",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanAccumulatedBenefitObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c249",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanServiceCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "063 - Disclosure - Pension Plans (Details) - Schedule of components of net periodic benefit costs",
     "role": "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0",
     "shortName": "Pension Plans (Details) - Schedule of components of net periodic benefit costs",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c249",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanServiceCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c250",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "064 - Disclosure - Pension Plans (Details) - Schedule of expected benefit payments",
     "role": "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0",
     "shortName": "Pension Plans (Details) - Schedule of expected benefit payments",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfExpectedBenefitPaymentsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c250",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "link:footnote",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alto:FederalNetOperatingLosses",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "065 - Disclosure - Income Taxes (Details)",
     "role": "http://altoingredients.com/role/IncomeTaxesDetails",
     "shortName": "Income Taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "link:footnote",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "alto:FederalNetOperatingLosses",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentIncomeTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "066 - Disclosure - Income Taxes (Details) - Schedule of provision for income taxes",
     "role": "http://altoingredients.com/role/ScheduleofprovisionforincometaxesTable",
     "shortName": "Income Taxes (Details) - Schedule of provision for income taxes",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentIncomeTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "3",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "067 - Disclosure - Income Taxes (Details) - Schedule of reconciliation of effective tax rate",
     "role": "http://altoingredients.com/role/ScheduleofreconciliationofeffectivetaxrateTable",
     "shortName": "Income Taxes (Details) - Schedule of reconciliation of effective tax rate",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "3",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsTaxCreditCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "068 - Disclosure - Income Taxes (Details) - Schedule of components of deferred income taxes",
     "role": "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable",
     "shortName": "Income Taxes (Details) - Schedule of components of deferred income taxes",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsTaxCreditCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProfitLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "006 - Statement - Consolidated Statements of Cash Flows (unaudited)",
     "role": "http://altoingredients.com/role/ConsolidatedCashFlow",
     "shortName": "Consolidated Statements of Cash Flows (unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:SummaryOfOperatingLossCarryforwardsTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c254",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "069 - Disclosure - Income Taxes (Details) - Schedule of net operating loss carryforwards",
     "role": "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable",
     "shortName": "Income Taxes (Details) - Schedule of net operating loss carryforwards",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:SummaryOfOperatingLossCarryforwardsTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c254",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfIncomeTaxInTheUnitedStatesJurisdictionAndVariousStateJurisdictionsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c264",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alto:TaxYearsStillOpenToAudit",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "070 - Disclosure - Income Taxes (Details) - Schedule of income tax in the United States jurisdiction and various state jurisdictions",
     "role": "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable",
     "shortName": "Income Taxes (Details) - Schedule of income tax in the United States jurisdiction and various state jurisdictions",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfIncomeTaxInTheUnitedStatesJurisdictionAndVariousStateJurisdictionsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c264",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alto:TaxYearsStillOpenToAudit",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockDividendRatePercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "071 - Disclosure - Preferred Stock (Details)",
     "role": "http://altoingredients.com/role/PreferredStockDetails",
     "shortName": "Preferred Stock (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockDividendRatePercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c296",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "072 - Disclosure - Common Stock and Warrants (Details)",
     "role": "http://altoingredients.com/role/CommonStockandWarrantsDetails",
     "shortName": "Common Stock and Warrants (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c296",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c32",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ClassOfWarrantOrRightOutstanding",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "073 - Disclosure - Common Stock and Warrants (Details) - Schedule of warrant activity",
     "role": "http://altoingredients.com/role/ScheduleofwarrantactivityTable",
     "shortName": "Common Stock and Warrants (Details) - Schedule of warrant activity",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c4",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ClassOfWarrantOrRightOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonUnitIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "074 - Disclosure - Stock-Based Compensation (Details)",
     "role": "http://altoingredients.com/role/StockBasedCompensationDetails",
     "shortName": "Stock-Based Compensation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonUnitIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfStockOptionPlansTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c4",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "075 - Disclosure - Stock-Based Compensation (Details) - Schedule of stock option plans",
     "role": "http://altoingredients.com/role/ScheduleofstockoptionplansTable",
     "shortName": "Stock-Based Compensation (Details) - Schedule of stock option plans",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfStockOptionPlansTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c32",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "alto:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRange",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPershares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "076 - Disclosure - Stock-Based Compensation (Details) - Schedule of stock options outstanding",
     "role": "http://altoingredients.com/role/ScheduleofstockoptionsoutstandingTable",
     "shortName": "Stock-Based Compensation (Details) - Schedule of stock options outstanding",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "alto:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRange",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPershares",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfUnvestedRestrictedStockActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c4",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "077 - Disclosure - Stock-Based Compensation (Details) - Schedule of unvested restricted stock activity",
     "role": "http://altoingredients.com/role/ScheduleofunvestedrestrictedstockactivityTable",
     "shortName": "Stock-Based Compensation (Details) - Schedule of unvested restricted stock activity",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfUnvestedRestrictedStockActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c32",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "078 - Disclosure - Stock-Based Compensation (Details) - Schedule of common stock at vesting aggregated",
     "role": "http://altoingredients.com/role/ScheduleofcommonstockatvestingaggregatedTable",
     "shortName": "Stock-Based Compensation (Details) - Schedule of common stock at vesting aggregated",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "007 - Disclosure - Organization and Significant Accounting Policies",
     "role": "http://altoingredients.com/role/OrganizationandSignificantAccountingPolicies",
     "shortName": "Organization and Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "alto:IndexedpricePurchaseContracts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "079 - Disclosure - Commitments and Contingencies (Details)",
     "role": "http://altoingredients.com/role/CommitmentsandContingenciesDetails",
     "shortName": "Commitments and Contingencies (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "alto:IndexedpricePurchaseContracts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "pure",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AssetsHeldForSaleLongLivedFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "080 - Disclosure - Fair Value Measurements. (Details)",
     "role": "http://altoingredients.com/role/FairValueMeasurementsDetails",
     "shortName": "Fair Value Measurements. (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AssetsHeldForSaleLongLivedFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfUsedAndRelatedFairValueForTheWarrantsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c11",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtInstrumentIssuanceDate1",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "081 - Disclosure - Fair Value Measurements. (Details) - Schedule of used and related fair value for the warrants",
     "role": "http://altoingredients.com/role/ScheduleofusedandrelatedfairvalueforthewarrantsTable",
     "shortName": "Fair Value Measurements. (Details) - Schedule of used and related fair value for the warrants",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfUsedAndRelatedFairValueForTheWarrantsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c11",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtInstrumentIssuanceDate1",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfFairValueOfPrefundedWarrantsAndOtherTableTextBlockwarrants",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c319",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alto:ValuationDate",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "082 - Disclosure - Fair Value Measurements. (Details) - Schedule of fair value of pre-funded warrants and other warrants",
     "role": "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable",
     "shortName": "Fair Value Measurements. (Details) - Schedule of fair value of pre-funded warrants and other warrants",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfFairValueOfPrefundedWarrantsAndOtherTableTextBlockwarrants",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c319",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "alto:ValuationDate",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfFairValuesOfWarrantsBasedOnUnobservableInputstableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c327",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "083 - Disclosure - Fair Value Measurements. (Details) - Schedule of fair values of warrants based on unobservable inputs",
     "role": "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable",
     "shortName": "Fair Value Measurements. (Details) - Schedule of fair values of warrants based on unobservable inputs",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "alto:ScheduleOfFairValuesOfWarrantsBasedOnUnobservableInputstableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c327",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AssetsFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "084 - Disclosure - Fair Value Measurements. (Details) - Schedule of recurring and nonrecurring fair value measurements",
     "role": "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable",
     "shortName": "Fair Value Measurements. (Details) - Schedule of recurring and nonrecurring fair value measurements",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c3",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AssetsFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c400",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetInvestmentIncome",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "085 - Disclosure - Subsequent Events (Details)",
     "role": "http://altoingredients.com/role/SubsequentEventsDetails",
     "shortName": "Subsequent Events (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c400",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetInvestmentIncome",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "008 - Disclosure - Asset Sales and Held-For-Sale Classification",
     "role": "http://altoingredients.com/role/AssetSalesandHeldForSaleClassification",
     "shortName": "Asset Sales and Held-For-Sale Classification",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "f10k2021_altoingredients.htm",
      "contextRef": "c0",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 145,
   "tag": {
    "alto_ALMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ALMember",
        "terseLabel": "Alabama [Member]"
       }
      }
     },
     "localname": "ALMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_ARMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ARMember",
        "terseLabel": "Arkansas [Member]"
       }
      }
     },
     "localname": "ARMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_AZMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AZMember",
        "terseLabel": "Arizona [Member]"
       }
      }
     },
     "localname": "AZMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_AccruedPreferredStockDividends": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accrued preferred stock dividends.",
        "label": "AccruedPreferredStockDividends",
        "terseLabel": "Accrued preferred stock dividends"
       }
      }
     },
     "localname": "AccruedPreferredStockDividends",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_AcquisitionOfEagleAlcoholMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AcquisitionOfEagleAlcoholMember",
        "terseLabel": "Acquisition of Eagle Alcohol [Member]"
       }
      }
     },
     "localname": "AcquisitionOfEagleAlcoholMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_AdjustmentsToFairValueForThePeriod": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Adjustments to fair value for the period.",
        "label": "AdjustmentsToFairValueForThePeriod",
        "terseLabel": "Adjustments to fair value for 2020"
       }
      }
     },
     "localname": "AdjustmentsToFairValueForThePeriod",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_AlcoholFromItsSuppliersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AlcoholFromItsSuppliersMember",
        "terseLabel": "Alcohol from Suppliers [Member]"
       }
      }
     },
     "localname": "AlcoholFromItsSuppliersMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_AltoIngredientsIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AltoIngredientsIncMember",
        "terseLabel": "Alto Ingredients, Inc [Member]"
       }
      }
     },
     "localname": "AltoIngredientsIncMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_AltoIngredientsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AltoIngredientsMember",
        "terseLabel": "Alto Ingredients [Member]"
       }
      }
     },
     "localname": "AltoIngredientsMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_AltoNutrientsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AltoNutrientsMember",
        "terseLabel": "Alto Nutrients [Member]"
       }
      }
     },
     "localname": "AltoNutrientsMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_AltoPekinIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AltoPekinIncMember",
        "terseLabel": "Alto Pekin Inc.[Member]"
       }
      }
     },
     "localname": "AltoPekinIncMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_AmortizationOfDeferredFinancingCosts": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to debt discount (premium) and debt issuance costs.",
        "label": "AmortizationOfDeferredFinancingCosts",
        "terseLabel": "Amortization of deferred financing costs"
       }
      }
     },
     "localname": "AmortizationOfDeferredFinancingCosts",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_AmountsAtTheEndOfTheYearAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AmountsAtTheEndOfTheYearAbstract",
        "terseLabel": "Amounts at the end of the year:"
       }
      }
     },
     "localname": "AmountsAtTheEndOfTheYearAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_AmountsRecognizedInThePlanForTheYearAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AmountsRecognizedInThePlanForTheYearAbstract",
        "terseLabel": "Amounts recognized in the plan for the year:"
       }
      }
     },
     "localname": "AmountsRecognizedInThePlanForTheYearAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_AssetImpairments": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset impairments.",
        "label": "AssetImpairments",
        "terseLabel": "Asset impairments"
       }
      }
     },
     "localname": "AssetImpairments",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_AssetSalesandHeldForSaleClassificationDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Asset Sales and Held-For-Sale Classification (Details) [Line Items]"
       }
      }
     },
     "localname": "AssetSalesandHeldForSaleClassificationDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_AssetSalesandHeldForSaleClassificationDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Asset Sales and Held-For-Sale Classification (Details) [Table]"
       }
      }
     },
     "localname": "AssetSalesandHeldForSaleClassificationDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_AssetsAbstract0": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AssetsAbstract0",
        "terseLabel": "Assets:"
       }
      }
     },
     "localname": "AssetsAbstract0",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_AuroraCooperativeElevatorCompanyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AuroraCooperativeElevatorCompanyMember",
        "terseLabel": "Aurora Cooperative Elevator Company [Member]"
       }
      }
     },
     "localname": "AuroraCooperativeElevatorCompanyMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_BasicAndDilutedLossPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "BasicAndDilutedLossPerShareAbstract",
        "terseLabel": "Basic and diluted loss per share:"
       }
      }
     },
     "localname": "BasicAndDilutedLossPerShareAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_BasicIncomePerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "BasicIncomePerShareAbstract",
        "terseLabel": "Basic income per share:"
       }
      }
     },
     "localname": "BasicIncomePerShareAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_BusinessCombinationPromissoryNotes": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business combination Promissory notes.",
        "label": "BusinessCombinationPromissoryNotes",
        "terseLabel": "Long-term promissory notes"
       }
      }
     },
     "localname": "BusinessCombinationPromissoryNotes",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_CAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CAMember",
        "terseLabel": "California [Member]"
       }
      }
     },
     "localname": "CAMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CARESActLoansMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CARESActLoansMember",
        "terseLabel": "CARES Act loans [Member]"
       }
      }
     },
     "localname": "CARESActLoansMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_COMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "COMember",
        "terseLabel": "Colorado [Member]"
       }
      }
     },
     "localname": "COMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CTMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CTMember",
        "terseLabel": "Connecticut [Member]"
       }
      }
     },
     "localname": "CTMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CantonMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CantonMember",
        "terseLabel": "Canton [Member]"
       }
      }
     },
     "localname": "CantonMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CapitalInvestmentActivitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CapitalInvestmentActivitiesMember",
        "terseLabel": "Capital Investment Activities [Member]"
       }
      }
     },
     "localname": "CapitalInvestmentActivitiesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CapitalLossDescription": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Capital loss Description.",
        "label": "CapitalLossDescription",
        "terseLabel": "Capital loss description"
       }
      }
     },
     "localname": "CapitalLossDescription",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_CashAndCashEquivalents": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 1.0,
       "parentTag": "alto_TotalCashCashEquivalentsAndRestrictedCash",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash and cash equivalents.",
        "label": "CashAndCashEquivalents",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalents",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_CashCollateralBalanceMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CashCollateralBalanceMember",
        "terseLabel": "Cash collateral balance [Member]"
       }
      }
     },
     "localname": "CashCollateralBalanceMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofderivativesnotdesignatedashedginginstrumentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_ClassOfWarrantsOrRightIssuedPriceOfWarrantsOrRights1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ClassOfWarrantsOrRightIssuedPriceOfWarrantsOrRights1",
        "terseLabel": "Warrants issued, Price per Share"
       }
      }
     },
     "localname": "ClassOfWarrantsOrRightIssuedPriceOfWarrantsOrRights1",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_CommitmentsandContingenciesDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies (Details) [Line Items]"
       }
      }
     },
     "localname": "CommitmentsandContingenciesDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_CommitmentsandContingenciesDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies (Details) [Table]"
       }
      }
     },
     "localname": "CommitmentsandContingenciesDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_CommonStockValues": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of common stock value.",
        "label": "CommonStockValues",
        "terseLabel": "Common stock value"
       }
      }
     },
     "localname": "CommonStockValues",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_CommonStockandWarrantsDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock and Warrants (Details) [Line Items]"
       }
      }
     },
     "localname": "CommonStockandWarrantsDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_CommonStockandWarrantsDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock and Warrants (Details) [Table]"
       }
      }
     },
     "localname": "CommonStockandWarrantsDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_ComponentsOfNetPeriodicBenefitCostsAreAsFollowsAbstract0": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ComponentsOfNetPeriodicBenefitCostsAreAsFollowsAbstract0",
        "terseLabel": "Components of net periodic benefit costs are as follows:"
       }
      }
     },
     "localname": "ComponentsOfNetPeriodicBenefitCostsAreAsFollowsAbstract0",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_ConcentrationRiskPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ConcentrationRiskPercentage",
        "terseLabel": "Concentration risk percentage"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_ConserveCapitalPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ConserveCapitalPercentage",
        "label": "ConserveCapitalPercentage",
        "terseLabel": "Conserve capital, percentage"
       }
      }
     },
     "localname": "ConserveCapitalPercentage",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_ContingentConsiderationPayable": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of contingent consideration payable.",
        "label": "ContingentConsiderationPayable",
        "terseLabel": "Contingent consideration"
       }
      }
     },
     "localname": "ContingentConsiderationPayable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_CornFromSuppliersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CornFromSuppliersMember",
        "terseLabel": "Corn from Suppliers [Member]"
       }
      }
     },
     "localname": "CornFromSuppliersMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CorporateActivitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Corporate Assets [Member]",
        "label": "CorporateActivitiesMember",
        "terseLabel": "Corporate activities [Member]"
       }
      }
     },
     "localname": "CorporateActivitiesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CorporateAssetsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "CorporateAssetsMember",
        "terseLabel": "Corporate Assets [Member]"
       }
      }
     },
     "localname": "CorporateAssetsMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CreditAgreementMember",
        "terseLabel": "Credit Agreement [Member]"
       }
      }
     },
     "localname": "CreditAgreementMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CurrentPortionOperatingLeases": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "label": "CurrentPortionOperatingLeases",
        "terseLabel": "Current portion \u2013 operating leases",
        "verboseLabel": "Current portion, operating leases"
       }
      }
     },
     "localname": "CurrentPortionOperatingLeases",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ScheduleofleasesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_CustomerAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CustomerAMember",
        "terseLabel": "Customer A [Member]"
       }
      }
     },
     "localname": "CustomerAMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofsoldtocustomersrepresenting10ormoreoftheCompanystotalnetsalesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CustomerBMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CustomerBMember",
        "terseLabel": "Customer B [Member]"
       }
      }
     },
     "localname": "CustomerBMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofsoldtocustomersrepresenting10ormoreoftheCompanystotalnetsalesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CustomerCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CustomerCMember",
        "terseLabel": "Customer C [Member]"
       }
      }
     },
     "localname": "CustomerCMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofsoldtocustomersrepresenting10ormoreoftheCompanystotalnetsalesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_CustomerRiskPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.",
        "label": "CustomerRiskPercentage",
        "terseLabel": "Customer risk percentage"
       }
      }
     },
     "localname": "CustomerRiskPercentage",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofsoldtocustomersrepresenting10ormoreoftheCompanystotalnetsalesTable"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_DebtDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt (Details) [Line Items]"
       }
      }
     },
     "localname": "DebtDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_DebtDetailsScheduleoflongtermborrowingsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt (Details) - Schedule of long-term borrowings [Line Items]"
       }
      }
     },
     "localname": "DebtDetailsScheduleoflongtermborrowingsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_DebtDetailsScheduleoflongtermborrowingsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt (Details) - Schedule of long-term borrowings [Table]"
       }
      }
     },
     "localname": "DebtDetailsScheduleoflongtermborrowingsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_DebtDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt (Details) [Table]"
       }
      }
     },
     "localname": "DebtDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_DebtInstrumentForgivenessIncome": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument Forgiveness Income",
        "label": "DebtInstrumentForgivenessIncome",
        "negatedLabel": "Income from loan forgiveness",
        "terseLabel": "Income from loan forgiveness"
       }
      }
     },
     "localname": "DebtInstrumentForgivenessIncome",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow",
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_DeferredFinancingCostsPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "DeferredFinancingCostsPolicyTextBlock",
        "terseLabel": "Deferred Financing Costs"
       }
      }
     },
     "localname": "DeferredFinancingCostsPolicyTextBlock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_DeferredTaxAssetValuationAllowance": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Valuation allowance.",
        "label": "DeferredTaxAssetValuationAllowance",
        "terseLabel": "Valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetValuationAllowance",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_DeferredTaxAssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "DeferredTaxAssetsAbstract",
        "terseLabel": "Deferred tax assets:"
       }
      }
     },
     "localname": "DeferredTaxAssetsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_DeferredTaxAssetsOtherPensionLiability": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Pension liability.",
        "label": "DeferredTaxAssetsOtherPensionLiability",
        "terseLabel": "Pension liability"
       }
      }
     },
     "localname": "DeferredTaxAssetsOtherPensionLiability",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_DeferredTaxAssetsOtherRailcarContracts": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 6.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Railcar contracts.",
        "label": "DeferredTaxAssetsOtherRailcarContracts",
        "terseLabel": "Railcar contracts"
       }
      }
     },
     "localname": "DeferredTaxAssetsOtherRailcarContracts",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_DeferredtaxassetsPropertyAndEquipment": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "label": "DeferredtaxassetsPropertyAndEquipment",
        "terseLabel": "Property and equipment"
       }
      }
     },
     "localname": "DeferredtaxassetsPropertyAndEquipment",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeOtherMinimumPensionLiabilityAfterTax": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "label": "DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeOtherMinimumPensionLiabilityAfterTax",
        "negatedLabel": "Accrued liabilities"
       }
      }
     },
     "localname": "DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeOtherMinimumPensionLiabilityAfterTax",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeOtherMinimumPensionOtherLiabilityAfterTax": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "label": "DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeOtherMinimumPensionOtherLiabilityAfterTax",
        "negatedLabel": "Other liabilities",
        "terseLabel": "Other liabilities"
       }
      }
     },
     "localname": "DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeOtherMinimumPensionOtherLiabilityAfterTax",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_DepreciationExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "DepreciationExpenseAbstract",
        "terseLabel": "Depreciation expense:"
       }
      }
     },
     "localname": "DepreciationExpenseAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_DerivativesDetailsScheduleofderivativesnotdesignatedashedginginstrumentsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivatives (Details) - Schedule of derivatives not designated as hedging instruments [Line Items]"
       }
      }
     },
     "localname": "DerivativesDetailsScheduleofderivativesnotdesignatedashedginginstrumentsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofderivativesnotdesignatedashedginginstrumentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_DerivativesDetailsScheduleofderivativesnotdesignatedashedginginstrumentsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivatives (Details) - Schedule of derivatives not designated as hedging instruments [Table]"
       }
      }
     },
     "localname": "DerivativesDetailsScheduleofderivativesnotdesignatedashedginginstrumentsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofderivativesnotdesignatedashedginginstrumentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_DilutedIncomePerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "DilutedIncomePerShareAbstract",
        "terseLabel": "Diluted income per share:"
       }
      }
     },
     "localname": "DilutedIncomePerShareAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_DisallowedDepreciation": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disallowed Depreciation.",
        "label": "DisallowedDepreciation",
        "terseLabel": "Disallowed depreciation"
       }
      }
     },
     "localname": "DisallowedDepreciation",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_DisallowedInterest": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disallowed interest.",
        "label": "DisallowedInterest",
        "terseLabel": "Disallowed interest"
       }
      }
     },
     "localname": "DisallowedInterest",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_DiscriptionOfAdjustingRateForAssumedHealthCare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Discription of adjusting rate for assumed health care.",
        "label": "DiscriptionOfAdjustingRateForAssumedHealthCare",
        "terseLabel": "Postretirement plan adjustment rate, description"
       }
      }
     },
     "localname": "DiscriptionOfAdjustingRateForAssumedHealthCare",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_DocumentAndEntityInformationAbstract": {
     "auth_ref": [],
     "localname": "DocumentAndEntityInformationAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsNoncontrollingInterest": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Noncontrolling interest.",
        "label": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsNoncontrollingInterest",
        "terseLabel": "Noncontrolling interest"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsNoncontrollingInterest",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofreconciliationofeffectivetaxrateTable"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_EmployeesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "EmployeesMember",
        "terseLabel": "Employees [Member]"
       }
      }
     },
     "localname": "EmployeesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcommonstockatvestingaggregatedTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_EmploymentrelatedBenefitsPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "EmploymentrelatedBenefitsPolicyTextBlock",
        "terseLabel": "Employment-related Benefits"
       }
      }
     },
     "localname": "EmploymentrelatedBenefitsPolicyTextBlock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_EndingBalanceNumberOfShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of warrants or rights outstanding.",
        "label": "EndingBalanceNumberOfShares",
        "terseLabel": "Ending Balance, Number of Shares (in Shares)"
       }
      }
     },
     "localname": "EndingBalanceNumberOfShares",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_EndingBalancePricesPerShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exercise price per share or per unit of warrants or rights outstanding.",
        "label": "EndingBalancePricesPerShare",
        "terseLabel": "Ending Balance, Price per Share"
       }
      }
     },
     "localname": "EndingBalancePricesPerShare",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_EndingBalanceWeightedAverageExercisesPrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.",
        "label": "EndingBalanceWeightedAverageExercisesPrice",
        "terseLabel": "Ending Balance, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "EndingBalanceWeightedAverageExercisesPrice",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_EssentialIngredientSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "EssentialIngredientSalesMember",
        "terseLabel": "Essential Ingredient Sales [Member]"
       }
      }
     },
     "localname": "EssentialIngredientSalesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_EthanolAlcoholSalesGrossMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "EthanolAlcoholSalesGrossMember",
        "terseLabel": "Alcohol sales, gross [Member]"
       }
      }
     },
     "localname": "EthanolAlcoholSalesGrossMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_EthanolAlcoholSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "EthanolAlcoholSalesMember",
        "terseLabel": "Alcohol Sales [Member]",
        "verboseLabel": "Alcohol sales [Member]"
       }
      }
     },
     "localname": "EthanolAlcoholSalesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_EthanolPurchaseContractsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Ethanol Purchase Contracts [Member]",
        "label": "EthanolPurchaseContractsMember",
        "terseLabel": "Purchase Contracts [Member]"
       }
      }
     },
     "localname": "EthanolPurchaseContractsMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_EthanolSalesContractsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Ethanol Sales Contracts [Member]",
        "label": "EthanolSalesContractsMember",
        "terseLabel": "Sales Contracts [Member]"
       }
      }
     },
     "localname": "EthanolSalesContractsMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_EthanolalcoholSalesNetMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The information about ethanolalcohol sales net.",
        "label": "EthanolalcoholSalesNetMember",
        "terseLabel": "Alcohol sales, net [Member]"
       }
      }
     },
     "localname": "EthanolalcoholSalesNetMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_ExerciseOfWarrantsreclassToEquityinShares": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exercise of warrants/reclass to equity.",
        "label": "ExerciseOfWarrantsreclassToEquityinShares",
        "terseLabel": "Exercise of warrants/reclass to equity in 2020"
       }
      }
     },
     "localname": "ExerciseOfWarrantsreclassToEquityinShares",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_ExercisePriceinDollarsPerShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ExercisePriceinDollarsPerShare",
        "terseLabel": "Exercise Price (in Dollars per share)"
       }
      }
     },
     "localname": "ExercisePriceinDollarsPerShare",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofusedandrelatedfairvalueforthewarrantsTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_FairValueAdjustments": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 6.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value adjustments.",
        "label": "FairValueAdjustments",
        "negatedLabel": "Fair value adjustments"
       }
      }
     },
     "localname": "FairValueAdjustments",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_FairValueMeasurementsDetailsScheduleoffairvalueofprefundedwarrantsandotherwarrantsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Measurements. (Details) - Schedule of fair value of pre-funded warrants and other warrants [Line Items]"
       }
      }
     },
     "localname": "FairValueMeasurementsDetailsScheduleoffairvalueofprefundedwarrantsandotherwarrantsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_FairValueMeasurementsDetailsScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Measurements. (Details) - Schedule of fair value of pre-funded warrants and other warrants [Table]"
       }
      }
     },
     "localname": "FairValueMeasurementsDetailsScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_FairValueMeasurementsDetailsScheduleoffairvaluesofwarrantsbasedonunobservableinputsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Measurements. (Details) - Schedule of fair values of warrants based on unobservable inputs [Line Items]"
       }
      }
     },
     "localname": "FairValueMeasurementsDetailsScheduleoffairvaluesofwarrantsbasedonunobservableinputsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_FairValueMeasurementsDetailsScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Measurements. (Details) - Schedule of fair values of warrants based on unobservable inputs [Table]"
       }
      }
     },
     "localname": "FairValueMeasurementsDetailsScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_FairValueOfCommonStockAtVestingAggregated": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of common stock at vesting aggregated.",
        "label": "FairValueOfCommonStockAtVestingAggregated",
        "terseLabel": "Common stock at vesting aggregated"
       }
      }
     },
     "localname": "FairValueOfCommonStockAtVestingAggregated",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_FairValueofAdjustments": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value adjustments.",
        "label": "FairValueofAdjustments",
        "negatedLabel": "Fair value adjustments"
       }
      }
     },
     "localname": "FairValueofAdjustments",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_FederalMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "FederalMember",
        "terseLabel": "Federal [Member]"
       }
      }
     },
     "localname": "FederalMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_FederalNetOperatingLosses": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Federal net operating losses.",
        "label": "FederalNetOperatingLosses",
        "terseLabel": "Federal net operating losses"
       }
      }
     },
     "localname": "FederalNetOperatingLosses",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_FederalTaxableIncomeUtilize": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of federal taxable income.",
        "label": "FederalTaxableIncomeUtilize",
        "terseLabel": "Federal taxable income"
       }
      }
     },
     "localname": "FederalTaxableIncomeUtilize",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_FixedIncomeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "FixedIncomeMember",
        "terseLabel": "Fixed Income [Member]"
       }
      }
     },
     "localname": "FixedIncomeMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_GAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "GAMember",
        "terseLabel": "Georgia [Member]"
       }
      }
     },
     "localname": "GAMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_GrossProceedsFromPrefundedWarrants": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross proceeds from pre-funded warrants.",
        "label": "GrossProceedsFromPrefundedWarrants",
        "terseLabel": "Gross proceeds from common stock (in Dollars)"
       }
      }
     },
     "localname": "GrossProceedsFromPrefundedWarrants",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_IAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "IAMember",
        "terseLabel": "Iowa [Member]"
       }
      }
     },
     "localname": "IAMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_ICPCreditFacilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICPCreditFacilitiesMember",
        "terseLabel": "ICP Credit Facilities [Member]"
       }
      }
     },
     "localname": "ICPCreditFacilitiesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_ICPLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICPLoanMember",
        "terseLabel": "ICP loan [Member]"
       }
      }
     },
     "localname": "ICPLoanMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_IDMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "IDMember",
        "terseLabel": "Idaho [Member]"
       }
      }
     },
     "localname": "IDMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_ILMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ILMember",
        "terseLabel": "Illinois [Member]"
       }
      }
     },
     "localname": "ILMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_INMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "INMember",
        "terseLabel": "Indiana [Member]"
       }
      }
     },
     "localname": "INMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_IncentiveFeePayableDescription": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Incentive fee payable description.",
        "label": "IncentiveFeePayableDescription",
        "terseLabel": "Incentive fee payable description"
       }
      }
     },
     "localname": "IncentiveFeePayableDescription",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_IncomeAllocatedToParticipatingSecurities": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income allocated to participating securities.",
        "label": "IncomeAllocatedToParticipatingSecurities",
        "terseLabel": "Income allocated to participating securities"
       }
      }
     },
     "localname": "IncomeAllocatedToParticipatingSecurities",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_IncomeAvailableToCommonStockholdersIncomeNumerator": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "label": "IncomeAvailableToCommonStockholdersIncomeNumerator",
        "terseLabel": "Income available to common stockholders Income Numerator"
       }
      }
     },
     "localname": "IncomeAvailableToCommonStockholdersIncomeNumerator",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_IncomeAvailableToCommonStockholdersShareDenominatorinShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "IncomeAvailableToCommonStockholdersShareDenominatorinShares",
        "terseLabel": "Income available to common stockholders Shares Denominator (in Shares)"
       }
      }
     },
     "localname": "IncomeAvailableToCommonStockholdersShareDenominatorinShares",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_IncomeAvailablesToCommonStockholdersSharesDenominatorinShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "IncomeAvailablesToCommonStockholdersSharesDenominatorinShares",
        "terseLabel": "Income available to common stockholders Shares Denominator (in Shares)"
       }
      }
     },
     "localname": "IncomeAvailablesToCommonStockholdersSharesDenominatorinShares",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_IncomeTaxesDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes (Details) [Line Items]"
       }
      }
     },
     "localname": "IncomeTaxesDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_IncomeTaxesDetailsScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes (Details) - Schedule of income tax in the United States jurisdiction and various state jurisdictions [Line Items]"
       }
      }
     },
     "localname": "IncomeTaxesDetailsScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_IncomeTaxesDetailsScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes (Details) - Schedule of income tax in the United States jurisdiction and various state jurisdictions [Table]"
       }
      }
     },
     "localname": "IncomeTaxesDetailsScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_IncomeTaxesDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes (Details) [Table]"
       }
      }
     },
     "localname": "IncomeTaxesDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_Incomefromloanforgiveness": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income from loan forgiveness.",
        "label": "Incomefromloanforgiveness",
        "terseLabel": "Income from loan forgiveness"
       }
      }
     },
     "localname": "Incomefromloanforgiveness",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofreconciliationofeffectivetaxrateTable"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_IncomelossBeforeBenefitForIncomeTaxes": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income (loss) before benefit for income taxes.",
        "label": "IncomelossBeforeBenefitForIncomeTaxes",
        "terseLabel": "Income (loss) before provision (benefit) for income taxes"
       }
      }
     },
     "localname": "IncomelossBeforeBenefitForIncomeTaxes",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_IndexedpricePurchaseContracts": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indexed-price purchase contracts",
        "label": "IndexedpricePurchaseContracts",
        "terseLabel": "Indexed price purchase contracts gallons"
       }
      }
     },
     "localname": "IndexedpricePurchaseContracts",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "alto_InitialRightOfUseAssetsAndLiabilitiesRecordedUnderASC842": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of initial right of use assets and liabilities recorded under asc.",
        "label": "InitialRightOfUseAssetsAndLiabilitiesRecordedUnderASC842",
        "terseLabel": "Initial right of use assets and liabilities recorded under ASC 842"
       }
      }
     },
     "localname": "InitialRightOfUseAssetsAndLiabilitiesRecordedUnderASC842",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_IntercompanyAgreementsDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intercompany Agreements (Details) [Line Items]"
       }
      }
     },
     "localname": "IntercompanyAgreementsDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_IntercompanyAgreementsDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intercompany Agreements (Details) [Table]"
       }
      }
     },
     "localname": "IntercompanyAgreementsDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_InterestAddedToDebt": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest added to debt.",
        "label": "InterestAddedToDebt",
        "terseLabel": "Interest expense added to senior notes"
       }
      }
     },
     "localname": "InterestAddedToDebt",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_InterestExpenses": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "InterestExpenses",
        "label": "InterestExpenses",
        "terseLabel": "Interest expense"
       }
      }
     },
     "localname": "InterestExpenses",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_InternalRateOfPreferredStock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "InternalRateOfPreferredStock",
        "terseLabel": "Internal rate of preferred stock"
       }
      }
     },
     "localname": "InternalRateOfPreferredStock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_InternationalEquityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "InternationalEquityMember",
        "terseLabel": "International Equity [Member]"
       }
      }
     },
     "localname": "InternationalEquityMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_IntersegmentEliminationsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "IntersegmentEliminationsMember",
        "terseLabel": "Intersegment Eliminations [Member]"
       }
      }
     },
     "localname": "IntersegmentEliminationsMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_IntersegmentSaleMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "IntersegmentSaleMember",
        "terseLabel": "Intersegment Sales [Member]"
       }
      }
     },
     "localname": "IntersegmentSaleMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_IssuanceOfCommonStockForSeniorNoteAmendment": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Issuance of common stock for senior note amendment.",
        "label": "IssuanceOfCommonStockForSeniorNoteAmendment",
        "terseLabel": "Issuance of common stock for senior note amendment"
       }
      }
     },
     "localname": "IssuanceOfCommonStockForSeniorNoteAmendment",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_IssuedNonvotingCommonSharesExercisable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "IssuedNonvotingCommonSharesExercisable",
        "terseLabel": "Issued nonvoting common shares exercisable"
       }
      }
     },
     "localname": "IssuedNonvotingCommonSharesExercisable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_KSMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "KSMember",
        "terseLabel": "Kansas [Member]"
       }
      }
     },
     "localname": "KSMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_KinergyLineOfCreditMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "KinergyLineOfCreditMember",
        "terseLabel": "Kinergy line of credit [Member]",
        "verboseLabel": "Kinergy Line of Credit [Member]"
       }
      }
     },
     "localname": "KinergyLineOfCreditMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails",
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_KinergyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "KinergyMember",
        "terseLabel": "Kinergy [Member]",
        "verboseLabel": "Kinergy Line of Credit [Member]"
       }
      }
     },
     "localname": "KinergyMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails",
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_LAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "LAMember",
        "terseLabel": "Louisiana [Member]"
       }
      }
     },
     "localname": "LAMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_LargeUSEquityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "LargeUSEquityMember",
        "terseLabel": "Large U,S Equity [Member]"
       }
      }
     },
     "localname": "LargeUSEquityMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_LeaseEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "LeaseEquipmentMember",
        "terseLabel": "Equipment [Member]"
       }
      }
     },
     "localname": "LeaseEquipmentMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_LeaseLandRelatedMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "LeaseLandRelatedMember",
        "terseLabel": "Land Related [Member]"
       }
      }
     },
     "localname": "LeaseLandRelatedMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_LeasesDetailsScheduleofoperatingleaseliabilitiesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases (Details) - Schedule of operating lease liabilities [Line Items]"
       }
      }
     },
     "localname": "LeasesDetailsScheduleofoperatingleaseliabilitiesLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_LeasesDetailsScheduleofoperatingleaseliabilitiesTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases (Details) - Schedule of operating lease liabilities [Table]"
       }
      }
     },
     "localname": "LeasesDetailsScheduleofoperatingleaseliabilitiesTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_LiabilitiesHeldforsale": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 6.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Liabilities held-for-sale.",
        "label": "LiabilitiesHeldforsale",
        "terseLabel": "Liabilities held-for-sale"
       }
      }
     },
     "localname": "LiabilitiesHeldforsale",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_LongLivedAssetsHeldForSaleMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "LongLivedAssetsHeldForSaleMember",
        "terseLabel": "Long-lived assets held-for-sale [Member]"
       }
      }
     },
     "localname": "LongLivedAssetsHeldForSaleMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_LossAvailableToCommonStockholdersSharesDenominator": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "LossAvailableToCommonStockholdersSharesDenominator",
        "terseLabel": "Loss available to common stockholders Shares Denominator (in Shares)"
       }
      }
     },
     "localname": "LossAvailableToCommonStockholdersSharesDenominator",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_MIMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "MIMember",
        "terseLabel": "Michigan [Member]"
       }
      }
     },
     "localname": "MIMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_MNMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "MNMember",
        "terseLabel": "Minnesota [Member]"
       }
      }
     },
     "localname": "MNMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_MOMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "MOMember",
        "terseLabel": "Missouri [Member]"
       }
      }
     },
     "localname": "MOMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_MSMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "MSMember",
        "terseLabel": "Mississippi [Member]"
       }
      }
     },
     "localname": "MSMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_MaderaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "MaderaMember",
        "terseLabel": "Madera [Member]"
       }
      }
     },
     "localname": "MaderaMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails",
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_MagicValleyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "MagicValleyMember",
        "terseLabel": "Magic Valley [Member]"
       }
      }
     },
     "localname": "MagicValleyMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_ManagementFees": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "It represents the value of management fees.",
        "label": "ManagementFees",
        "terseLabel": "Management fees"
       }
      }
     },
     "localname": "ManagementFees",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_MarketingAndDistributionSegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "MarketingAndDistributionSegmentMember",
        "terseLabel": "Marketing and Distribution Segment [Member]"
       }
      }
     },
     "localname": "MarketingAndDistributionSegmentMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_MarketingAndDistributionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "MarketingAndDistributionsMember",
        "terseLabel": "Marketing and Distribution [Member]"
       }
      }
     },
     "localname": "MarketingAndDistributionsMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable",
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_NEMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "NEMember",
        "terseLabel": "Nebraska [Member]"
       }
      }
     },
     "localname": "NEMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_NMMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "NMMember",
        "terseLabel": "New Mexico [Member]"
       }
      }
     },
     "localname": "NMMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_NetIncomeAttributedToAltoIngredientsIncIncomeNumerator": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "label": "NetIncomeAttributedToAltoIngredientsIncIncomeNumerator",
        "terseLabel": "Net income attributed to Alto Ingredients Inc Income Numerator"
       }
      }
     },
     "localname": "NetIncomeAttributedToAltoIngredientsIncIncomeNumerator",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_NetLossOnSale": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "label": "NetLossOnSale",
        "terseLabel": "Net loss on sale"
       }
      }
     },
     "localname": "NetLossOnSale",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_NetOfferingProceeds": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net offering proceeds.",
        "label": "NetOfferingProceeds",
        "terseLabel": "Net offering proceeds (in Dollars)"
       }
      }
     },
     "localname": "NetOfferingProceeds",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_NetWorkingCapital": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of net working capital.",
        "label": "NetWorkingCapital",
        "terseLabel": "Net working capital"
       }
      }
     },
     "localname": "NetWorkingCapital",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_NonEmployeesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "NonEmployeesMember",
        "terseLabel": "Non-Employees [Member]"
       }
      }
     },
     "localname": "NonEmployeesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcommonstockatvestingaggregatedTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_NoncashFinancingAndInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "NoncashFinancingAndInvestingActivitiesAbstract",
        "terseLabel": "Noncash financing and investing activities:"
       }
      }
     },
     "localname": "NoncashFinancingAndInvestingActivitiesAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_NotePurchaseAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "NotePurchaseAgreementMember",
        "terseLabel": "Note Purchase Agreement [Member]"
       }
      }
     },
     "localname": "NotePurchaseAgreementMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_OKMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "OKMember",
        "terseLabel": "Oklahoma [Member]"
       }
      }
     },
     "localname": "OKMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_ORMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ORMember",
        "terseLabel": "Oregon [Member]"
       }
      }
     },
     "localname": "ORMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_OpenIndexedPriceSalesContract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Open indexed price sales contract.",
        "label": "OpenIndexedPriceSalesContract",
        "terseLabel": "Open indexed-price sales contracts tons"
       }
      }
     },
     "localname": "OpenIndexedPriceSalesContract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "alto_OperatingLeasesFutureMinimumPaymentsLeesInterest": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "label": "OperatingLeasesFutureMinimumPaymentsLeesInterest",
        "negatedLabel": "Less Interest"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsLeesInterest",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_OperatingLeasesNetOfCurrentPortion": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "OperatingLeasesNetOfCurrentPortion",
        "terseLabel": "Operating leases, net of current portion"
       }
      }
     },
     "localname": "OperatingLeasesNetOfCurrentPortion",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofleasesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_OrganizationandSignificantAccountingPoliciesDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization and Significant Accounting Policies (Details) [Line Items]"
       }
      }
     },
     "localname": "OrganizationandSignificantAccountingPoliciesDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_OrganizationandSignificantAccountingPoliciesDetailsScheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization and Significant Accounting Policies\t(Details) - Schedule of purchased corn from suppliers representing 10% or more of the Company\u2019s total corn purchases [Line Items]"
       }
      }
     },
     "localname": "OrganizationandSignificantAccountingPoliciesDetailsScheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_OrganizationandSignificantAccountingPoliciesDetailsScheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization and Significant Accounting Policies\t(Details) - Schedule of purchased corn from suppliers representing 10% or more of the Company\u2019s total corn purchases [Table]"
       }
      }
     },
     "localname": "OrganizationandSignificantAccountingPoliciesDetailsScheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_OrganizationandSignificantAccountingPoliciesDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization and Significant Accounting Policies (Details) [Table]"
       }
      }
     },
     "localname": "OrganizationandSignificantAccountingPoliciesDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_OtherEquipmentVehiclesAndFurnitureMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "OtherEquipmentVehiclesAndFurnitureMember",
        "terseLabel": "Other equipment, vehicles and furniture [Member]"
       }
      }
     },
     "localname": "OtherEquipmentVehiclesAndFurnitureMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_OtherProductionIncomeTaxMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "OtherProductionIncomeTaxMember",
        "terseLabel": "Other production [Member]",
        "verboseLabel": "Other Production [Member]"
       }
      }
     },
     "localname": "OtherProductionIncomeTaxMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable",
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_OtherProductionSegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "OtherProductionSegmentMember",
        "terseLabel": "Other Production Segment [Member]"
       }
      }
     },
     "localname": "OtherProductionSegmentMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_OtherWarrant1Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "OtherWarrant1Member",
        "terseLabel": "Other Warrant [Member]"
       }
      }
     },
     "localname": "OtherWarrant1Member",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_OtherWarrantMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "OtherWarrantMember",
        "terseLabel": "Other Warrant [Member]"
       }
      }
     },
     "localname": "OtherWarrantMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_OtherWarrants": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Warrants.",
        "label": "OtherWarrants",
        "terseLabel": "Other warrants"
       }
      }
     },
     "localname": "OtherWarrants",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_OtherWarrantsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "OtherWarrantsMember",
        "terseLabel": "Other Warrants [Member]"
       }
      }
     },
     "localname": "OtherWarrantsMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_OwnershipPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "OwnershipPercentage",
        "terseLabel": "Ownership percentage"
       }
      }
     },
     "localname": "OwnershipPercentage",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_PIMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PIMember",
        "terseLabel": "Pennsylvania [Member]"
       }
      }
     },
     "localname": "PIMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PacificAuroraMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PacificAuroraMember",
        "terseLabel": "Pacific Aurora [Member]"
       }
      }
     },
     "localname": "PacificAuroraMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails",
      "http://altoingredients.com/role/IntercompanyAgreementsDetails",
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_ParentNotesPayableMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ParentNotesPayableMember",
        "terseLabel": "Parent Notes Payable [Member]"
       }
      }
     },
     "localname": "ParentNotesPayableMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PekinCampusProductionRecordedAsGrossAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PekinCampusProductionRecordedAsGrossAbstract",
        "terseLabel": "Pekin Campus production, recorded as gross:"
       }
      }
     },
     "localname": "PekinCampusProductionRecordedAsGrossAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PekinCampusProductionSegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PekinCampusProductionSegmentMember",
        "terseLabel": "Pekin Campus Production Segment [Member]"
       }
      }
     },
     "localname": "PekinCampusProductionSegmentMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PekinCreditFacilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PekinCreditFacilitiesMember",
        "terseLabel": "Pekin Loans [Member]",
        "verboseLabel": "Pekin Credit Facilities [Member]"
       }
      }
     },
     "localname": "PekinCreditFacilitiesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PekinTermLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PekinTermLoanMember",
        "terseLabel": "Pekin loans [Member]"
       }
      }
     },
     "localname": "PekinTermLoanMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PensionPlansDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Plans (Details) [Line Items]"
       }
      }
     },
     "localname": "PensionPlansDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PensionPlansDetailsScheduleofcomponentsofnetperiodicbenefitcostsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Plans (Details) - Schedule of components of net periodic benefit costs [Line Items]"
       }
      }
     },
     "localname": "PensionPlansDetailsScheduleofcomponentsofnetperiodicbenefitcostsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PensionPlansDetailsScheduleofcomponentsofnetperiodicbenefitcostsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Plans (Details) - Schedule of components of net periodic benefit costs [Table]"
       }
      }
     },
     "localname": "PensionPlansDetailsScheduleofcomponentsofnetperiodicbenefitcostsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PensionPlansDetailsScheduleofexpectedbenefitpaymentsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Plans (Details) - Schedule of expected benefit payments [Line Items]"
       }
      }
     },
     "localname": "PensionPlansDetailsScheduleofexpectedbenefitpaymentsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PensionPlansDetailsScheduleofexpectedbenefitpaymentsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Plans (Details) - Schedule of expected benefit payments [Table]"
       }
      }
     },
     "localname": "PensionPlansDetailsScheduleofexpectedbenefitpaymentsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PensionPlansDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Plans (Details) [Table]"
       }
      }
     },
     "localname": "PensionPlansDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PensionPlansTablesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Plans (Tables) [Line Items]"
       }
      }
     },
     "localname": "PensionPlansTablesLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansTables"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PensionPlansTablesTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Plans (Tables) [Table]"
       }
      }
     },
     "localname": "PensionPlansTablesTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansTables"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PercentageOfFairValueAdjustments": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value adjustments.",
        "label": "PercentageOfFairValueAdjustments",
        "terseLabel": "Fair value adjustments"
       }
      }
     },
     "localname": "PercentageOfFairValueAdjustments",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofreconciliationofeffectivetaxrateTable"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_Period1Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Period1Member",
        "terseLabel": "2022\u20132026 [Member]"
       }
      }
     },
     "localname": "Period1Member",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_Period2Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Period2Member",
        "terseLabel": "2027\u20132031 [Member]"
       }
      }
     },
     "localname": "Period2Member",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_Period3Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Period3Member",
        "terseLabel": "2032\u20132036 [Member]"
       }
      }
     },
     "localname": "Period3Member",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_Period4AndThereAfterMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Period4AndThereAfterMember",
        "terseLabel": "2037 and after [Member]"
       }
      }
     },
     "localname": "Period4AndThereAfterMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PostretirementPlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PostretirementPlanMember",
        "terseLabel": "Postretirement Plan [Member]"
       }
      }
     },
     "localname": "PostretirementPlanMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansTables",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PreTaxIncome": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of pre-tax income.",
        "label": "PreTaxIncome",
        "terseLabel": "Pre-tax income"
       }
      }
     },
     "localname": "PreTaxIncome",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_PreferredStockDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock (Details) [Line Items]"
       }
      }
     },
     "localname": "PreferredStockDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PreferredStockDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock (Details) [Table]"
       }
      }
     },
     "localname": "PreferredStockDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PreferredStockDividendsIncomeNumerator": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PreferredStockDividendsIncomeNumerator",
        "label": "PreferredStockDividendsIncomeNumerator",
        "terseLabel": "Less: Preferred stock dividends Income Numerator"
       }
      }
     },
     "localname": "PreferredStockDividendsIncomeNumerator",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_PreferredStockTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PreferredStockTerm",
        "terseLabel": "Preferred stock term"
       }
      }
     },
     "localname": "PreferredStockTerm",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "alto_PrefundedWarrant1Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PrefundedWarrant1Member",
        "terseLabel": "Pre-funded Warrant [Member]"
       }
      }
     },
     "localname": "PrefundedWarrant1Member",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PrefundedWarrantMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PrefundedWarrantMember",
        "terseLabel": "Pre-funded Warrant [Member]"
       }
      }
     },
     "localname": "PrefundedWarrantMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PrefundedWarrantsExercisedNumberOfShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PrefundedWarrantsExercisedNumberOfShares",
        "terseLabel": "Pre-funded warrants exercised, Number of Shares (in Shares)"
       }
      }
     },
     "localname": "PrefundedWarrantsExercisedNumberOfShares",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_PrefundedWarrantsExercisedWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PrefundedWarrantsExercisedWeightedAverageExercisePrice",
        "terseLabel": "Pre-funded warrants exercised, per share",
        "verboseLabel": "Pre-funded warrants exercised, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "PrefundedWarrantsExercisedWeightedAverageExercisePrice",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_PrefundedWarrantsIssuedNumberOfShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PrefundedWarrantsIssuedNumberOfShares",
        "terseLabel": "Pre-funded warrants issued, Number of Shares (in Shares)"
       }
      }
     },
     "localname": "PrefundedWarrantsIssuedNumberOfShares",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_PrefundedWarrantsIssuedPerShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PrefundedWarrantsIssuedPerShare",
        "terseLabel": "Pre-funded warrants issued. per share"
       }
      }
     },
     "localname": "PrefundedWarrantsIssuedPerShare",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_PrefundedWarrantsIssuedWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PrefundedWarrantsIssuedWeightedAverageExercisePrice",
        "terseLabel": "Pre-funded warrants issued, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "PrefundedWarrantsIssuedWeightedAverageExercisePrice",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_PrefundedWarrantsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PrefundedWarrantsMember",
        "terseLabel": "Pre-funded Warrants [Member]"
       }
      }
     },
     "localname": "PrefundedWarrantsMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PrincipalDebtPayments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Principal debt payments.",
        "label": "PrincipalDebtPayments",
        "terseLabel": "Cash proceeds"
       }
      }
     },
     "localname": "PrincipalDebtPayments",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_ProceedsFromCoGenContractAmendment": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds from CoGen contract amendment.",
        "label": "ProceedsFromCoGenContractAmendment",
        "negatedLabel": "Proceeds from CoGen contract amendment"
       }
      }
     },
     "localname": "ProceedsFromCoGenContractAmendment",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_ProceedsFromMaderaSale": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds From Madera Sale",
        "label": "ProceedsFromMaderaSale",
        "terseLabel": "Proceeds from sale of Madera"
       }
      }
     },
     "localname": "ProceedsFromMaderaSale",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_ProceedsFromMagicValleyAssetSale": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds from Magic Valley asset sale.",
        "label": "ProceedsFromMagicValleyAssetSale",
        "terseLabel": "Proceeds from Magic Valley asset sale"
       }
      }
     },
     "localname": "ProceedsFromMagicValleyAssetSale",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_ProductionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ProductionMember",
        "terseLabel": "Pekin Campus Production [Member]",
        "verboseLabel": "Pekin Campus production [Member]"
       }
      }
     },
     "localname": "ProductionMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable",
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_PromissoryNotesDescription": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "PromissoryNotesDescription",
        "terseLabel": "Promissory notes, description"
       }
      }
     },
     "localname": "PromissoryNotesDescription",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PropertyandEquipmentDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property and Equipment (Details) [Line Items]"
       }
      }
     },
     "localname": "PropertyandEquipmentDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PropertyandEquipmentDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property and Equipment (Details) [Table]"
       }
      }
     },
     "localname": "PropertyandEquipmentDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_PurchasePriceDescription": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Purchase price description.",
        "label": "PurchasePriceDescription",
        "terseLabel": "Purchase price description"
       }
      }
     },
     "localname": "PurchasePriceDescription",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_RIMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "RIMember",
        "terseLabel": "Rhode Island [Member]"
       }
      }
     },
     "localname": "RIMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_ReconciliationOfTotalCashCashEquivalentsAndRestrictedCashAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ReconciliationOfTotalCashCashEquivalentsAndRestrictedCashAbstract",
        "terseLabel": "Reconciliation of total cash, cash equivalents and restricted cash:"
       }
      }
     },
     "localname": "ReconciliationOfTotalCashCashEquivalentsAndRestrictedCashAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_RegistrationRightsAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "RegistrationRightsAgreementMember",
        "terseLabel": "Registration Rights Agreement [Member]"
       }
      }
     },
     "localname": "RegistrationRightsAgreementMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_RetirementPlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "RetirementPlanMember",
        "terseLabel": "Retirement Plan [Member]"
       }
      }
     },
     "localname": "RetirementPlanMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansTables",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_RiskFreeInterestRate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Risk free interest rate.",
        "label": "RiskFreeInterestRate",
        "terseLabel": "Risk Free Interest Rate"
       }
      }
     },
     "localname": "RiskFreeInterestRate",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable",
      "http://altoingredients.com/role/ScheduleofusedandrelatedfairvalueforthewarrantsTable"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_SCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SCMember",
        "terseLabel": "South Carolina [Member]"
       }
      }
     },
     "localname": "SCMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_SaleOfInterestsInPAL": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sale of interests in PAL.",
        "label": "SaleOfInterestsInPAL",
        "terseLabel": "Sale of interests in PAL"
       }
      }
     },
     "localname": "SaleOfInterestsInPAL",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_ScheduleOfAssetsByOperatingSegmentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of assets by operating segments [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfAssetsByOperatingSegmentsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfBasicAndDilutedEarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of basic and diluted earnings per share [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfBasicAndDilutedEarningsPerShareAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfCommonStockAtVestingAggregatedAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of common stock at vesting aggregated [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfCommonStockAtVestingAggregatedAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfComponentsOfDeferredIncomeTaxesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of components of deferred income taxes [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfDeferredIncomeTaxesAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfComponentsOfLeaseCostsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of components of lease costs [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfLeaseCostsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfComponentsOfNetPeriodicBenefitCostsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of components of net periodic benefit costs [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfNetPeriodicBenefitCostsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfDepreciationIsComputedUsingTheStraightLineMethodAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of depreciation is computed using the straight-line method [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfDepreciationIsComputedUsingTheStraightLineMethodAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfDerivativesNotDesignatedAsHedgingInstrumentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of derivatives not designated as hedging instruments [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfDerivativesNotDesignatedAsHedgingInstrumentsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfExpectedBenefitPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of expected benefit payments [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfExpectedBenefitPaymentsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfFairValueOfPreFundedWarrantsAndOtherWarrantsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of fair value of pre-funded warrants and other warrants [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfFairValueOfPreFundedWarrantsAndOtherWarrantsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfFairValueOfPrefundedWarrantsAndOtherTableTextBlockwarrants": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ScheduleOfFairValueOfPrefundedWarrantsAndOtherTableTextBlockwarrants",
        "terseLabel": "Schedule of fair value of pre-funded warrants and other warrants"
       }
      }
     },
     "localname": "ScheduleOfFairValueOfPrefundedWarrantsAndOtherTableTextBlockwarrants",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_ScheduleOfFairValuesOfWarrantsBasedOnUnobservableInputsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of fair values of warrants based on unobservable inputs [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfFairValuesOfWarrantsBasedOnUnobservableInputsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfFairValuesOfWarrantsBasedOnUnobservableInputstableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ScheduleOfFairValuesOfWarrantsBasedOnUnobservableInputstableTextBlock",
        "terseLabel": "Schedule of fair values of warrants based on unobservable inputs"
       }
      }
     },
     "localname": "ScheduleOfFairValuesOfWarrantsBasedOnUnobservableInputstableTextBlock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_ScheduleOfFinancialDataForOperatingSegmentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of financial data for operating segments [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfFinancialDataForOperatingSegmentsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfIncomeTaxInTheUnitedStatesJurisdictionAndVariousStateJurisdictionsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of income tax in the United States jurisdiction and various state jurisdictions [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfIncomeTaxInTheUnitedStatesJurisdictionAndVariousStateJurisdictionsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfIncomeTaxInTheUnitedStatesJurisdictionAndVariousStateJurisdictionsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ScheduleOfIncomeTaxInTheUnitedStatesJurisdictionAndVariousStateJurisdictionsTableTextBlock",
        "terseLabel": "Schedule of income tax in the United States jurisdiction and various state jurisdictions"
       }
      }
     },
     "localname": "ScheduleOfIncomeTaxInTheUnitedStatesJurisdictionAndVariousStateJurisdictionsTableTextBlock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_ScheduleOfInformationRelatedToTheRetirementPlanAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of information related to the retirement plan [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfInformationRelatedToTheRetirementPlanAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfInventoriesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of inventories [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfInventoriesAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfLeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of leases [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfLeasesAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfLongTermBorrowingsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of long-term borrowings [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfLongTermBorrowingsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfMaturitiesOfLongTermDebtAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of maturities of long-term debt [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfMaturitiesOfLongTermDebtAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfNetOperatingLossCarryforwardsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of net operating loss carryforwards [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfNetOperatingLossCarryforwardsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfOperatingLeaseLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of operating lease liabilities [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfOperatingLeaseLiabilitiesAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfPropertyAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of property and equipment [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfPropertyAndEquipmentAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfProvisionForIncomeTaxesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of provision for income taxes [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfProvisionForIncomeTaxesAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfPurchasedCornFromSuppliersRepresenting10OrMoreOfTheCompanySTotalCornPurchasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of purchased corn from suppliers representing 10% or more of the Company\u2019s total corn purchases [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfPurchasedCornFromSuppliersRepresenting10OrMoreOfTheCompanySTotalCornPurchasesAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfRecognizedGainsLossesForDerivativesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of recognized gains (losses) for derivatives [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfRecognizedGainsLossesForDerivativesAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfReconciliationOfEffectiveTaxRateAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of reconciliation of effective tax rate [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfReconciliationOfEffectiveTaxRateAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfRecurringAndNonrecurringFairValueMeasurementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of recurring and nonrecurring fair value measurements [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfRecurringAndNonrecurringFairValueMeasurementsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfSoldToCustomersRepresenting10OrMoreOfTheCompanySTotalNetSalesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of sold to customers representing 10% or more of the Company\u2019s total net sales [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfSoldToCustomersRepresenting10OrMoreOfTheCompanySTotalNetSalesAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfStockOptionPlansAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of stock option plans [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfStockOptionPlansAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfStockOptionPlansTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ScheduleOfStockOptionPlansTableTextBlock",
        "terseLabel": "Schedule of stock option plans"
       }
      }
     },
     "localname": "ScheduleOfStockOptionPlansTableTextBlock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_ScheduleOfStockOptionsOutstandingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of stock options outstanding [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfStockOptionsOutstandingAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfUnvestedRestrictedStockActivityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of unvested restricted stock activity [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfUnvestedRestrictedStockActivityAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfUnvestedRestrictedStockActivityTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ScheduleOfUnvestedRestrictedStockActivityTableTextBlock",
        "terseLabel": "Schedule of unvested restricted stock activity"
       }
      }
     },
     "localname": "ScheduleOfUnvestedRestrictedStockActivityTableTextBlock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_ScheduleOfUsedAndRelatedFairValueForTheWarrantsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of used and related fair value for the warrants [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfUsedAndRelatedFairValueForTheWarrantsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_ScheduleOfUsedAndRelatedFairValueForTheWarrantsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of used and related fair value for the warrants",
        "label": "ScheduleOfUsedAndRelatedFairValueForTheWarrantsTableTextBlock",
        "terseLabel": "Schedule of used and related fair value for the warrants"
       }
      }
     },
     "localname": "ScheduleOfUsedAndRelatedFairValueForTheWarrantsTableTextBlock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_ScheduleOfWarrantActivityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of warrant activity [Abstract]"
       }
      }
     },
     "localname": "ScheduleOfWarrantActivityAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "xbrltype": "stringItemType"
    },
    "alto_SchedulesOfConcentrationsOfRiskByRiskFactorTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SchedulesOfConcentrationsOfRiskByRiskFactorTableTextBlock",
        "terseLabel": "Schedule of purchased corn from suppliers representing 10% or more of the Company\u2019s total corn purchases"
       }
      }
     },
     "localname": "SchedulesOfConcentrationsOfRiskByRiskFactorTableTextBlock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_SecondNotePurchaseAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SecondNotePurchaseAgreementMember",
        "terseLabel": "Second Note Purchase Agreement [Member]"
       }
      }
     },
     "localname": "SecondNotePurchaseAgreementMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_SegmentsDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segments (Details) [Line Items]"
       }
      }
     },
     "localname": "SegmentsDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_SegmentsDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segments (Details) [Table]"
       }
      }
     },
     "localname": "SegmentsDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_SeniorSecuredNotesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SeniorSecuredNotesMember",
        "terseLabel": "Senior Secured Notes [Member]"
       }
      }
     },
     "localname": "SeniorSecuredNotesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_SeriesAWarrantsIssuedNumberOfShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SeriesAWarrantsIssuedNumberOfShares",
        "terseLabel": "Series A warrants issued, Number of Shares (in Shares)"
       }
      }
     },
     "localname": "SeriesAWarrantsIssuedNumberOfShares",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_SeriesAWarrantsIssuedPerShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SeriesAWarrantsIssuedPerShare",
        "terseLabel": "Series A warrants issued, per share"
       }
      }
     },
     "localname": "SeriesAWarrantsIssuedPerShare",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_SeriesAWarrantsIssuedWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SeriesAWarrantsIssuedWeightedAverageExercisePrice",
        "terseLabel": "Series A warrants issued, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "SeriesAWarrantsIssuedWeightedAverageExercisePrice",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOption": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Options exercisable, number exercisable.",
        "label": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOption",
        "terseLabel": "Options Exercisable, Number Exercisable (in Shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOption",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionsoutstandingTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRange": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Options Outstanding, Range of Exercise Prices.",
        "label": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRange",
        "terseLabel": "Options Outstanding, Range of Exercise Prices"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRange",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionsoutstandingTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionWeightedAverageExercisePrice1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Options Exercisable, weighted- Average Exercise Price",
        "label": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionWeightedAverageExercisePrice1",
        "terseLabel": "Options Exercisable, Weighted- Average Exercise Price"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionWeightedAverageExercisePrice1",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionsoutstandingTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_SharesBasedCompensation": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share Based Compensation",
        "label": "SharesBasedCompensation",
        "terseLabel": "Noncash compensation"
       }
      }
     },
     "localname": "SharesBasedCompensation",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_ShippingAndHandlingCostsPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ShippingAndHandlingCostsPolicyTextBlock",
        "terseLabel": "Shipping and Handling Costs"
       }
      }
     },
     "localname": "ShippingAndHandlingCostsPolicyTextBlock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_SmallMidUSEquityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SmallMidUSEquityMember",
        "terseLabel": "Small/Mid U.S Equity [Member]"
       }
      }
     },
     "localname": "SmallMidUSEquityMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_StateNetOperatingLosses": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "State net operating losses.",
        "label": "StateNetOperatingLosses",
        "terseLabel": "State net operating losses"
       }
      }
     },
     "localname": "StateNetOperatingLosses",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_StockBasedCompensationDetailsScheduleofcommonstockatvestingaggregatedLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-Based Compensation (Details) - Schedule of common stock at vesting aggregated [Line Items]"
       }
      }
     },
     "localname": "StockBasedCompensationDetailsScheduleofcommonstockatvestingaggregatedLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcommonstockatvestingaggregatedTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_StockBasedCompensationDetailsScheduleofcommonstockatvestingaggregatedTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-Based Compensation (Details) - Schedule of common stock at vesting aggregated [Table]"
       }
      }
     },
     "localname": "StockBasedCompensationDetailsScheduleofcommonstockatvestingaggregatedTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcommonstockatvestingaggregatedTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_StockIssuedDuringPeriodNumberOfSharesOptionsExercised": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of Shares, Options exercisable at end of year.",
        "label": "StockIssuedDuringPeriodNumberOfSharesOptionsExercised",
        "negatedLabel": "Number of Shares, Options exercised"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodNumberOfSharesOptionsExercised",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionplansTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_StockIssuedDuringPeriodSharesNewIssues3": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "StockIssuedDuringPeriodSharesNewIssues3",
        "terseLabel": "Number of stock issued"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesNewIssues3",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_StockIssuedDuringPeriodValueNewIssues3": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "label": "StockIssuedDuringPeriodValueNewIssues3",
        "terseLabel": "Issuance of warrants in October 2020 offering",
        "verboseLabel": "Common stock value (in Dollars)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueNewIssues3",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails",
      "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_StocktonMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "StocktonMember",
        "terseLabel": "Stockton [Member]"
       }
      }
     },
     "localname": "StocktonMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_SubsequentEventsDetailsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events (Details) [Line Items]"
       }
      }
     },
     "localname": "SubsequentEventsDetailsLineItems",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_SubsequentEventsDetailsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events (Details) [Table]"
       }
      }
     },
     "localname": "SubsequentEventsDetailsTable",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_SupplierAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SupplierAMember",
        "terseLabel": "Supplier A [Member]"
       }
      }
     },
     "localname": "SupplierAMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_SupplierBMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SupplierBMember",
        "terseLabel": "Supplier B [Member]"
       }
      }
     },
     "localname": "SupplierBMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_SupplierTotalPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SupplierTotalPercentage",
        "terseLabel": "Supplier total percentage"
       }
      }
     },
     "localname": "SupplierTotalPercentage",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesTable"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_SuppliersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Suppliers [Member]",
        "label": "SuppliersMember",
        "terseLabel": "Suppliers [Member]"
       }
      }
     },
     "localname": "SuppliersMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_TNMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "TNMember",
        "terseLabel": "Tennessee [Member]"
       }
      }
     },
     "localname": "TNMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_TXMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "TXMember",
        "terseLabel": "Texas [Member]"
       }
      }
     },
     "localname": "TXMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_TaxYearsStillOpenToAudit": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tax years still open to audit.",
        "label": "TaxYearsStillOpenToAudit",
        "terseLabel": "Tax years still open to audit"
       }
      }
     },
     "localname": "TaxYearsStillOpenToAudit",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_TotalAssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "TotalAssetsAbstract",
        "terseLabel": "Total assets:"
       }
      }
     },
     "localname": "TotalAssetsAbstract",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "alto_TotalCashCashEquivalentsAndRestrictedCash": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total cash, cash equivalents and restricted cash.",
        "label": "TotalCashCashEquivalentsAndRestrictedCash",
        "totalLabel": "Total cash, cash equivalents and restricted cash"
       }
      }
     },
     "localname": "TotalCashCashEquivalentsAndRestrictedCash",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_TotalExpectedBenefitPayment": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in remainder of current fiscal year.",
        "label": "TotalExpectedBenefitPayment",
        "terseLabel": "Total expected benefit payments"
       }
      }
     },
     "localname": "TotalExpectedBenefitPayment",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_TotalExpectedBenefitPayments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in remainder of current fiscal year.",
        "label": "TotalExpectedBenefitPayments",
        "terseLabel": "Total expected benefit payments"
       }
      }
     },
     "localname": "TotalExpectedBenefitPayments",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_TotalMarketingAndDistributionSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total marketing and distribution sales [Member]",
        "label": "TotalMarketingAndDistributionSalesMember",
        "terseLabel": "Total Marketing and Distribution Sales [Member]"
       }
      }
     },
     "localname": "TotalMarketingAndDistributionSalesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_TotalOtherProductionSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total Other production sales [Member]",
        "label": "TotalOtherProductionSalesMember",
        "terseLabel": "Total Other production Sales [Member]"
       }
      }
     },
     "localname": "TotalOtherProductionSalesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_TotalPekinCampusSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total Pekin Campus sales [Member]",
        "label": "TotalPekinCampusSalesMember",
        "terseLabel": "Total Pekin Campus Sales [Member]"
       }
      }
     },
     "localname": "TotalPekinCampusSalesMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_UncertaintyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "UncertaintyPolicyTextBlock",
        "terseLabel": "Uncertainty"
       }
      }
     },
     "localname": "UncertaintyPolicyTextBlock",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "alto_ValuationDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Warrant valuation date.",
        "label": "ValuationDate",
        "terseLabel": "Valuation Date"
       }
      }
     },
     "localname": "ValuationDate",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable"
     ],
     "xbrltype": "dateItemType"
    },
    "alto_ValueOfRestrictedCash": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 2.0,
       "parentTag": "alto_TotalCashCashEquivalentsAndRestrictedCash",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash restricted as to withdrawal or usage. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.",
        "label": "ValueOfRestrictedCash",
        "terseLabel": "Restricted cash"
       }
      }
     },
     "localname": "ValueOfRestrictedCash",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "alto_WarrantsExercisedNumberOfShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "WarrantsExercisedNumberOfShares",
        "terseLabel": "Warrants exercised, Number of Shares (in Shares)"
       }
      }
     },
     "localname": "WarrantsExercisedNumberOfShares",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "alto_WarrantsExercisedPerShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "WarrantsExercisedPerShare",
        "terseLabel": "Warrants exercised, per share"
       }
      }
     },
     "localname": "WarrantsExercisedPerShare",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_WarrantsExercisedWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "WarrantsExercisedWeightedAverageExercisePrice",
        "terseLabel": "Warrants exercised, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "WarrantsExercisedWeightedAverageExercisePrice",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_WarrantsIssuedWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "WarrantsIssuedWeightedAverageExercisePrice",
        "terseLabel": "Warrants issued, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "WarrantsIssuedWeightedAverageExercisePrice",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "alto_WarrantsToSeniorNoteholdersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "WarrantsToSeniorNoteholdersMember",
        "terseLabel": "Warrants to Senior Noteholders [Member]"
       }
      }
     },
     "localname": "WarrantsToSeniorNoteholdersMember",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "alto_WarrantsVolatilityRate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Warrants volatility rate.",
        "label": "WarrantsVolatilityRate",
        "terseLabel": "Volatility"
       }
      }
     },
     "localname": "WarrantsVolatilityRate",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofusedandrelatedfairvalueforthewarrantsTable"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_WarrantsVolatilityRateVolatility": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Warrants volatility rate.",
        "label": "WarrantsVolatilityRateVolatility",
        "terseLabel": "Volatility"
       }
      }
     },
     "localname": "WarrantsVolatilityRateVolatility",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable"
     ],
     "xbrltype": "percentItemType"
    },
    "alto_WorkingCapital": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "label": "WorkingCapital",
        "terseLabel": "Working capital"
       }
      }
     },
     "localname": "WorkingCapital",
     "nsuri": "http://altoingredients.com/20211231",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag",
        "terseLabel": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r781",
      "r782",
      "r783"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PCAOB issued Audit Firm Identifier",
        "label": "Auditor Firm ID",
        "terseLabel": "Auditor Firm ID"
       }
      }
     },
     "localname": "AuditorFirmId",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r781",
      "r782",
      "r783"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location",
        "terseLabel": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r781",
      "r782",
      "r783"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name",
        "terseLabel": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code",
        "terseLabel": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date",
        "terseLabel": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r781",
      "r782",
      "r783"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report",
        "terseLabel": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus",
        "terseLabel": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus",
        "terseLabel": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentInformationLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "localname": "DocumentInformationLineItems",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_DocumentInformationTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package."
       }
      }
     },
     "localname": "DocumentInformationTable",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.",
        "label": "Document Period End Date",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r784"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report",
        "terseLabel": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "Document Type",
        "terseLabel": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One",
        "terseLabel": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town",
        "terseLabel": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code",
        "terseLabel": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province",
        "terseLabel": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r779"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key",
        "terseLabel": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "Entity Common Stock, Shares Outstanding",
        "terseLabel": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Current Reporting Status",
        "terseLabel": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains.",
        "label": "Entity [Domain]"
       }
      }
     },
     "localname": "EntityDomain",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r779"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company",
        "terseLabel": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number",
        "terseLabel": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r779"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category",
        "terseLabel": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code",
        "terseLabel": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r792"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current",
        "terseLabel": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityPublicFloat": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.",
        "label": "Entity Public Float",
        "terseLabel": "Entity Public Float"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r779"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name",
        "terseLabel": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r779"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company",
        "terseLabel": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r779"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business",
        "terseLabel": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r779"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number",
        "terseLabel": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_EntityVoluntaryFilers": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.",
        "label": "Entity Voluntary Filers",
        "terseLabel": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r793"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.",
        "label": "Entity Well-known Seasoned Issuer",
        "terseLabel": "Entity Well-known Seasoned Issuer"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r781",
      "r782",
      "r783"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag",
        "terseLabel": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_LegalEntityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The set of legal entities associated with a report.",
        "label": "Legal Entity [Axis]"
       }
      }
     },
     "localname": "LegalEntityAxis",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number",
        "terseLabel": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r778"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security",
        "terseLabel": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r780"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name",
        "terseLabel": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol",
        "terseLabel": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://altoingredients.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "srt_BoardOfDirectorsChairmanMember": {
     "auth_ref": [
      "r240"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Board of Directors Chairman [Member]",
        "terseLabel": "Board of Directors Chairman [Member]"
       }
      }
     },
     "localname": "BoardOfDirectorsChairmanMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ConsolidatedEntitiesAxis": {
     "auth_ref": [
      "r144",
      "r301",
      "r305",
      "r310",
      "r549",
      "r550",
      "r555",
      "r556",
      "r637",
      "r774"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Entities [Axis]"
       }
      }
     },
     "localname": "ConsolidatedEntitiesAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails",
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ConsolidatedEntitiesDomain": {
     "auth_ref": [
      "r144",
      "r301",
      "r305",
      "r310",
      "r549",
      "r550",
      "r555",
      "r556",
      "r637",
      "r774"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Entities [Domain]"
       }
      }
     },
     "localname": "ConsolidatedEntitiesDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails",
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r238",
      "r374",
      "r376",
      "r751"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
      "http://altoingredients.com/role/Scheduleofsoldtocustomersrepresenting10ormoreoftheCompanystotalnetsalesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r315",
      "r354",
      "r460",
      "r468",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r675",
      "r747",
      "r752",
      "r775",
      "r776"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum [Member]"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r315",
      "r354",
      "r460",
      "r468",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r675",
      "r747",
      "r752",
      "r775",
      "r776"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum [Member]"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r238",
      "r374",
      "r376",
      "r751"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r235",
      "r374",
      "r375",
      "r680",
      "r745",
      "r750"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r235",
      "r374",
      "r375",
      "r680",
      "r745",
      "r750"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r315",
      "r354",
      "r400",
      "r460",
      "r468",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r675",
      "r747",
      "r752",
      "r775",
      "r776"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r315",
      "r354",
      "r400",
      "r460",
      "r468",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r675",
      "r747",
      "r752",
      "r775",
      "r776"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioForecastMember": {
     "auth_ref": [
      "r154",
      "r465"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forecast [Member]",
        "terseLabel": "Forecast [Member]"
       }
      }
     },
     "localname": "ScenarioForecastMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioUnspecifiedDomain": {
     "auth_ref": [
      "r154",
      "r159",
      "r465"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Domain]"
       }
      }
     },
     "localname": "ScenarioUnspecifiedDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementScenarioAxis": {
     "auth_ref": [
      "r154",
      "r159",
      "r298",
      "r465",
      "r643"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]"
       }
      }
     },
     "localname": "StatementScenarioAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsAndOtherReceivablesNetCurrent": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance, receivable from customers, clients, or other third-parties, and receivables classified as other due within one year or the normal operating cycle, if longer.",
        "label": "Accounts and Other Receivables, Net, Current",
        "terseLabel": "Accounts receivable total amount"
       }
      }
     },
     "localname": "AccountsAndOtherReceivablesNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableTradeCurrent": {
     "auth_ref": [
      "r15",
      "r48"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accounts Payable, Trade, Current",
        "terseLabel": "Accounts payable \u2013 trade"
       }
      }
     },
     "localname": "AccountsPayableTradeCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableGrossCurrent": {
     "auth_ref": [
      "r241",
      "r242"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts Receivable, before Allowance for Credit Loss, Current",
        "terseLabel": "Allowance for doubtful accounts"
       }
      }
     },
     "localname": "AccountsReceivableGrossCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [
      "r769"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold.",
        "label": "Accounts Receivable [Member]",
        "terseLabel": "Accounts Receivable [Member]"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r10",
      "r30",
      "r241",
      "r242"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "terseLabel": "Accounts receivable, net of allowance for doubtful accounts of $378 and $260, respectively"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Liabilities, Current",
        "terseLabel": "Accrued liabilities"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r46",
      "r284"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "negatedLabel": "Accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r33",
      "r74",
      "r75",
      "r76",
      "r725",
      "r758",
      "r759"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.",
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "terseLabel": "Accumulated other comprehensive loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r73",
      "r76",
      "r83",
      "r84",
      "r85",
      "r146",
      "r147",
      "r148",
      "r554",
      "r754",
      "r755",
      "r794"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]",
        "terseLabel": "Accum. Other Comprehensive Loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AcquisitionCosts": {
     "auth_ref": [
      "r682",
      "r683"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The capitalized costs incurred during the period (excluded from amortization) to purchase, lease or otherwise acquire an unproved property, including costs of lease bonuses and options to purchase or lease properties, the portion of costs applicable to minerals when land including mineral rights is purchased in fee, brokers' fees, recording fees, legal costs, and other costs incurred in acquiring properties.",
        "label": "Acquisition Costs, Period Cost",
        "terseLabel": "Acquisition cost"
       }
      }
     },
     "localname": "AcquisitionCosts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapital": {
     "auth_ref": [
      "r31",
      "r497",
      "r640"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.",
        "label": "Additional Paid in Capital",
        "terseLabel": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapital",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r146",
      "r147",
      "r148",
      "r494",
      "r495",
      "r496",
      "r579"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.",
        "label": "Additional Paid-in Capital [Member]",
        "terseLabel": "Additional Paid-In Capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Adjustments to reconcile consolidated net income (loss) to cash provided by (used in) operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r470",
      "r491",
      "r498"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "Share-based Payment Arrangement, Expense",
        "terseLabel": "Total stock-based compensation expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcommonstockatvestingaggregatedTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r37",
      "r247",
      "r260"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "terseLabel": "Accounts receivable, net of allowance (in Dollars)"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfDebtDiscountPremium": {
     "auth_ref": [
      "r104",
      "r122",
      "r335",
      "r614"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense included in interest expense to amortize debt discount and premium associated with the related debt instruments. Excludes amortization of financing costs. Alternate captions include noncash interest expense.",
        "label": "Amortization of Debt Discount (Premium)",
        "terseLabel": "Amortization of debt discounts (premiums)"
       }
      }
     },
     "localname": "AmortizationOfDebtDiscountPremium",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfFinancingCosts": {
     "auth_ref": [
      "r96",
      "r122",
      "r335",
      "r616"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to debt issuance costs.",
        "label": "Amortization of Debt Issuance Costs",
        "terseLabel": "Amortization of deferred financing costs"
       }
      }
     },
     "localname": "AmortizationOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r174"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Weighted-average antidilutive shares (in Shares)"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_AssetImpairmentCharges": {
     "auth_ref": [
      "r122",
      "r280"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.",
        "label": "Asset Impairment Charges",
        "terseLabel": "Asset impairments"
       }
      }
     },
     "localname": "AssetImpairmentCharges",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r139",
      "r211",
      "r224",
      "r231",
      "r258",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r549",
      "r555",
      "r599",
      "r638",
      "r640",
      "r699",
      "r722"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets",
        "terseLabel": "Total assets",
        "totalLabel": "Total Assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r11",
      "r12",
      "r69",
      "r139",
      "r258",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r549",
      "r555",
      "r599",
      "r638",
      "r640"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current Assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsFairValueDisclosure": {
     "auth_ref": [
      "r585"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Fair Value Disclosure",
        "terseLabel": "Asset"
       }
      }
     },
     "localname": "AssetsFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsHeldForSaleLongLivedFairValueDisclosure": {
     "auth_ref": [
      "r585"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value portion of assets classified as held for sale.",
        "label": "Assets Held-for-sale, Long Lived, Fair Value Disclosure",
        "terseLabel": "Property and equipment held-for-sale at fair value"
       }
      }
     },
     "localname": "AssetsHeldForSaleLongLivedFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent": {
     "auth_ref": [
      "r278",
      "r640"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of assets held-for-sale that are not part of a disposal group, expected to be sold within a year or the normal operating cycle, if longer.",
        "label": "Assets Held-for-sale, Not Part of Disposal Group, Current",
        "terseLabel": "Assets held-for-sale"
       }
      }
     },
     "localname": "AssetsHeldForSaleNotPartOfDisposalGroupCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsTotalMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total assets, when it serves as a benchmark in a concentration of risk calculation, representing the sum of all reported assets as of the balance sheet date.",
        "label": "Assets, Total [Member]",
        "terseLabel": "Total [Member]"
       }
      }
     },
     "localname": "AssetsTotalMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AwardDateAxis": {
     "auth_ref": [
      "r472",
      "r493"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by date or year award under share-based payment arrangement is granted.",
        "label": "Award Date [Axis]"
       }
      }
     },
     "localname": "AwardDateAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardDateDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date or year award under share-based payment arrangement is granted.",
        "label": "Award Date [Domain]"
       }
      }
     },
     "localname": "AwardDateDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "Basis of Accounting, Policy [Policy Text Block]",
        "terseLabel": "Organization and Business"
       }
      }
     },
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r145"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).  Accounting policies describe all significant accounting policies of the reporting entity.",
        "label": "Basis of Presentation and Significant Accounting Policies [Text Block]",
        "terseLabel": "Basis of Presentation"
       }
      }
     },
     "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BuildingMember": {
     "auth_ref": [
      "r283"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities.",
        "label": "Building [Member]",
        "terseLabel": "Buildings [Member]"
       }
      }
     },
     "localname": "BuildingMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [
      "r455",
      "r466"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.",
        "label": "Business Acquisition, Acquiree [Domain]"
       }
      }
     },
     "localname": "BusinessAcquisitionAcquireeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails",
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r455",
      "r466",
      "r537",
      "r538"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business combination or series of individually immaterial business combinations.",
        "label": "Business Acquisition [Axis]"
       }
      }
     },
     "localname": "BusinessAcquisitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails",
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity": {
     "auth_ref": [
      "r536"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "With respect to a business combination completed during the period, this element provides a description of the business, other than the name, which may include the industry, size, products and other important information.",
        "label": "Business Acquisition, Description of Acquired Entity",
        "terseLabel": "Ethanol production facility, description"
       }
      }
     },
     "localname": "BusinessAcquisitionDescriptionOfAcquiredEntity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationAsset1": {
     "auth_ref": [
      "r121",
      "r541"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in the value of right to a contingent consideration asset.",
        "label": "Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Asset",
        "terseLabel": "Gross proceeds"
       }
      }
     },
     "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationAsset1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r543"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).",
        "label": "Business Combination Disclosure [Text Block]",
        "terseLabel": "ASSET SALES AND HELD-FOR-SALE CLASSIFICATION"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassification"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationIndemnificationAssetsAmountAsOfAcquisitionDate": {
     "auth_ref": [
      "r539"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of indemnification assets (amounts to be reimbursed if and when certain assumed liabilities are paid) recognized at the acquisition date of a business combination.",
        "label": "Business Combination, Indemnification Assets, Amount as of Acquisition Date",
        "terseLabel": "Total consideration"
       }
      }
     },
     "localname": "BusinessCombinationIndemnificationAssetsAmountAsOfAcquisitionDate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": {
     "auth_ref": [
      "r540"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of assets acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets",
        "terseLabel": "Acquired tangible assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": {
     "auth_ref": [
      "r540"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities",
        "terseLabel": "Estimates liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r540"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net",
        "terseLabel": "Intangible assets including goodwill"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combinations [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CapitalExpendituresIncurredButNotYetPaid": {
     "auth_ref": [
      "r127",
      "r128",
      "r129"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred.",
        "label": "Capital Expenditures Incurred but Not yet Paid",
        "terseLabel": "Capital expenditures"
       }
      }
     },
     "localname": "CapitalExpendituresIncurredButNotYetPaid",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Cash": {
     "auth_ref": [
      "r42",
      "r640",
      "r764",
      "r765"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash",
        "terseLabel": "Cash"
       }
      }
     },
     "localname": "Cash",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails",
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r8",
      "r42",
      "r124"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r17",
      "r125"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.",
        "label": "Cash and Cash Equivalents, Policy [Policy Text Block]",
        "terseLabel": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy": {
     "auth_ref": [
      "r17",
      "r125",
      "r697"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Entity's cash and cash equivalents accounting policy with respect to restricted balances.  Restrictions may include legally restricted deposits held as compensating balances against short-term borrowing arrangements, contracts entered into with others, or company statements of intention with regard to particular deposits; however, time deposits and short-term certificates of deposit are not generally included in legally restricted deposits.",
        "label": "Cash and Cash Equivalents, Restricted Cash and Cash Equivalents, Policy [Policy Text Block]",
        "terseLabel": "Restricted Cash"
       }
      }
     },
     "localname": "CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r117",
      "r124",
      "r130"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents",
        "periodEndLabel": "Cash, cash equivalents and restricted cash at end of period",
        "periodStartLabel": "Cash, cash equivalents and restricted cash at beginning of period"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r117",
      "r604"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net increase (decrease) in cash, cash equivalents and restricted cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ChangeInUnrealizedGainLossOnHedgedItemInFairValueHedge1": {
     "auth_ref": [
      "r576"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the increase (decrease) in fair value of the hedged item in a fair value hedge recognized in the income statement.",
        "label": "Change in Unrealized Gain (Loss) on Hedged Item in Fair Value Hedge",
        "terseLabel": "Recognized net gains"
       }
      }
     },
     "localname": "ChangeInUnrealizedGainLossOnHedgedItemInFairValueHedge1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DerivativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [
      "r136",
      "r139",
      "r163",
      "r165",
      "r168",
      "r171",
      "r173",
      "r182",
      "r183",
      "r184",
      "r258",
      "r301",
      "r305",
      "r306",
      "r307",
      "r310",
      "r311",
      "r352",
      "r353",
      "r356",
      "r360",
      "r599",
      "r785"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock.",
        "label": "Class of Stock [Domain]"
       }
      }
     },
     "localname": "ClassOfStockDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails",
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals",
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1": {
     "auth_ref": [
      "r368"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exercise price per share or per unit of warrants or rights outstanding.",
        "label": "Class of Warrant or Right, Exercise Price of Warrants or Rights",
        "periodEndLabel": "Ending Balance, Price per Share",
        "periodStartLabel": "Beginning balance, Price per Share",
        "terseLabel": "Exercise Price (in Dollars per share)"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable",
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights": {
     "auth_ref": [
      "r368"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of securities into which the class of warrant or right may be converted. For example, but not limited to, 500,000 warrants may be converted into 1,000,000 shares.",
        "label": "Class of Warrant or Right, Number of Securities Called by Warrants or Rights",
        "terseLabel": "Warrants purchase"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ClassOfWarrantOrRightOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of warrants or rights outstanding.",
        "label": "Class of Warrant or Right, Outstanding",
        "periodEndLabel": "Ending Balance, Number of Shares (in Shares)",
        "periodStartLabel": "Beginning balance, Number of Shares (in Shares)"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r59",
      "r297",
      "r706",
      "r731"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.",
        "label": "Commitments and Contingencies",
        "terseLabel": "Commitments and contingencies (Notes 1, 7, 8, 9 and 14)"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r294",
      "r295",
      "r296",
      "r299",
      "r770"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "COMMITMENTS AND CONTINGENCIES"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommodityContractMember": {
     "auth_ref": [
      "r401",
      "r571"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Derivative instrument whose primary underlying risk is tied to commodity prices.",
        "label": "Commodity Contract [Member]",
        "terseLabel": "Commodity Contract [Member]",
        "verboseLabel": "Commodity contracts [Member]"
       }
      }
     },
     "localname": "CommodityContractMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofderivativesnotdesignatedashedginginstrumentsTable",
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r146",
      "r147",
      "r579"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]",
        "terseLabel": "Common Stock and Non-Voting Common"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r29"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "terseLabel": "Common stock, par value (in Dollars per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r29"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common Stock, Shares Authorized",
        "terseLabel": "Common stock, shares authorized"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r29"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.",
        "label": "Common Stock, Shares, Issued",
        "terseLabel": "Common stock, shares issued"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r29",
      "r367"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common Stock, Shares, Outstanding",
        "terseLabel": "Common stock, shares outstanding"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r29",
      "r640"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Common Stock, Value, Issued",
        "terseLabel": "Common stock, value"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommonUnitIssued": {
     "auth_ref": [
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of common units issued of limited liability company (LLC).",
        "label": "Common Unit, Issued",
        "terseLabel": "Aggregate shares of common stock (in Shares)"
       }
      }
     },
     "localname": "CommonUnitIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CompensationAndRetirementDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retirement Benefits [Abstract]"
       }
      }
     },
     "localname": "CompensationAndRetirementDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r78",
      "r80",
      "r81",
      "r93",
      "r711",
      "r737"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedComprehensiveIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Comprehensive income (loss) attributed to Alto Ingredients, Inc."
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r78",
      "r80",
      "r92",
      "r547",
      "r548",
      "r559",
      "r710",
      "r736"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income (loss) and other comprehensive income (loss), attributable to noncontrolling interests. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest",
        "negatedLabel": "Comprehensive loss attributed to noncontrolling interests"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r78",
      "r80",
      "r91",
      "r546",
      "r559",
      "r709",
      "r735"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest",
        "totalLabel": "Total comprehensive income (loss)"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r191",
      "r192",
      "r238",
      "r596",
      "r597",
      "r769"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r191",
      "r192",
      "r238",
      "r596",
      "r597",
      "r761",
      "r769"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable",
      "http://altoingredients.com/role/Scheduleofsoldtocustomersrepresenting10ormoreoftheCompanystotalnetsalesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r187",
      "r718"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit risk.",
        "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]",
        "terseLabel": "Concentration Risks"
       }
      }
     },
     "localname": "ConcentrationRiskCreditRisk",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Concentration Risk [Line Items]"
       }
      }
     },
     "localname": "ConcentrationRiskLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofsoldtocustomersrepresenting10ormoreoftheCompanystotalnetsalesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskTable": {
     "auth_ref": [
      "r190",
      "r191",
      "r192",
      "r193",
      "r596",
      "r598",
      "r769"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.",
        "label": "Concentration Risk [Table]"
       }
      }
     },
     "localname": "ConcentrationRiskTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofsoldtocustomersrepresenting10ormoreoftheCompanystotalnetsalesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConstructionInProgressMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.",
        "label": "Construction in Progress [Member]",
        "terseLabel": "Construction in Progress [Member]"
       }
      }
     },
     "localname": "ConstructionInProgressMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r99",
      "r680"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.",
        "label": "Cost of Goods and Services Sold",
        "terseLabel": "Cost of goods sold",
        "verboseLabel": "Net sales"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement",
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable",
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing cost of sales.",
        "label": "Cost of Sales [Member]",
        "terseLabel": "Cost of goods sold [Member]"
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CreditFacilityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Axis]"
       }
      }
     },
     "localname": "CreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CreditFacilityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Domain]"
       }
      }
     },
     "localname": "CreditFacilityDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r140",
      "r520",
      "r527",
      "r529"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofprovisionforincometaxesTable": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.",
        "label": "Current Income Tax Expense (Benefit)",
        "terseLabel": "Current provision (benefit)"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofprovisionforincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtConversionConvertedInstrumentWarrantsOrOptionsIssued1": {
     "auth_ref": [
      "r127",
      "r129"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of warrants issued in exchange for the original debt being converted in a noncash (or part noncash) transaction. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Debt Conversion, Converted Instrument, Warrants or Options Issued",
        "terseLabel": "Warrants issued, Number of Shares (in Shares)"
       }
      }
     },
     "localname": "DebtConversionConvertedInstrumentWarrantsOrOptionsIssued1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_DebtDefaultLongtermDebtAmount": {
     "auth_ref": [
      "r135"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of outstanding long-term debt or borrowing associated with any securities or credit agreement for which there has been a default in principal, interest, sinking fund, or redemption provisions, or any breach of covenant that existed at the end of the period and subsequently has not been cured.",
        "label": "Debt Instrument, Debt Default, Amount",
        "terseLabel": "Aggregate amount"
       }
      }
     },
     "localname": "DebtDefaultLongtermDebtAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r135",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r329",
      "r336",
      "r337",
      "r339",
      "r349"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.",
        "label": "Debt Disclosure [Text Block]",
        "terseLabel": "DEBT"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/Debt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r21",
      "r22",
      "r23",
      "r138",
      "r144",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r319",
      "r325",
      "r326",
      "r327",
      "r328",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r343",
      "r344",
      "r345",
      "r346",
      "r617",
      "r700",
      "r702",
      "r720"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.",
        "label": "Debt Instrument [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails",
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentConvertibleIfConvertedValueInExcessOfPrincipal": {
     "auth_ref": [
      "r341"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount by which the convertible debt's if-converted value exceeds its principle amount at the balance sheet date, regardless of whether the instrument is currently convertible. This element applies to public companies only.",
        "label": "Debt Instrument, Convertible, If-converted Value in Excess of Principal",
        "terseLabel": "Aggregate of debt amount"
       }
      }
     },
     "localname": "DebtInstrumentConvertibleIfConvertedValueInExcessOfPrincipal",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r312",
      "r343",
      "r344",
      "r615",
      "r617",
      "r618"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face (par) amount of debt instrument at time of issuance.",
        "label": "Debt Instrument, Face Amount",
        "terseLabel": "Principal amount"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateEffectivePercentage": {
     "auth_ref": [
      "r54",
      "r342",
      "r615",
      "r617"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium.",
        "label": "Debt Instrument, Interest Rate, Effective Percentage",
        "terseLabel": "Gross proceeds from principal amount percentage"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateEffectivePercentage",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentIssuanceDate1": {
     "auth_ref": [
      "r56",
      "r315"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date the debt instrument was issued, in YYYY-MM-DD format.",
        "label": "Debt Instrument, Issuance Date",
        "terseLabel": "Original Issuance"
       }
      }
     },
     "localname": "DebtInstrumentIssuanceDate1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofusedandrelatedfairvalueforthewarrantsTable"
     ],
     "xbrltype": "dateItemType"
    },
    "us-gaap_DebtInstrumentMaturityDate": {
     "auth_ref": [
      "r55",
      "r315",
      "r588"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format.",
        "label": "Debt Instrument, Maturity Date",
        "terseLabel": "Maturity date"
       }
      }
     },
     "localname": "DebtInstrumentMaturityDate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "dateItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r57",
      "r138",
      "r144",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r319",
      "r325",
      "r326",
      "r327",
      "r328",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r343",
      "r344",
      "r345",
      "r346",
      "r617"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.",
        "label": "Debt Instrument, Name [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails",
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedDiscount": {
     "auth_ref": [
      "r325",
      "r614",
      "r618"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of debt discount.",
        "label": "Debt Instrument, Unamortized Discount",
        "terseLabel": "Less unamortized debt premium"
       }
      }
     },
     "localname": "DebtInstrumentUnamortizedDiscount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedPremiumCurrent": {
     "auth_ref": [
      "r614",
      "r618"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of debt premium to be amortized within one year or the normal operating cycle, if longer.",
        "label": "Debt Instrument, Unamortized Premium, Current",
        "terseLabel": "Unamortized financing cost"
       }
      }
     },
     "localname": "DebtInstrumentUnamortizedPremiumCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual obligation to pay money on demand or on fixed or determinable dates.",
        "label": "Debt [Member]",
        "terseLabel": "Debt [Member]"
       }
      }
     },
     "localname": "DebtMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis": {
     "auth_ref": [
      "r493"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of deferred compensation related to equity-based payment arrangements. Includes, but is not limited to, employment contracts with one or more selected officers or key employees. Excludes broad group equity-based compensation plans, defined benefit pension plans, defined benefit other postretirement benefit plans and other deferred compensation that is not equivalent to a defined benefit pension plan or a defined benefit other postretirement benefit plan.",
        "label": "Equity-Based Arrangements, Individual Contracts, Type of Deferred Compensation [Axis]"
       }
      }
     },
     "localname": "DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcommonstockatvestingaggregatedTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r122",
      "r140",
      "r521",
      "r527",
      "r528",
      "r529"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofprovisionforincometaxesTable": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Income Tax Expense (Benefit)",
        "terseLabel": "Deferred provision (benefit)"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofprovisionforincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r25",
      "r26",
      "r510",
      "r701",
      "r719"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.",
        "label": "Deferred Tax Liabilities, Gross",
        "negatedTotalLabel": "Total deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredPolicyAcquisitionCostAmortizationExpenseNetInvestmentGainsLosses": {
     "auth_ref": [
      "r742",
      "r743"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense (reversal of amortization expense) of deferred policy acquisition costs from realized net investment gain (loss).",
        "label": "Deferred Policy Acquisition Cost, Amortization Expense, Net Investment Gains (Losses)",
        "terseLabel": "Amortization of net loss"
       }
      }
     },
     "localname": "DeferredPolicyAcquisitionCostAmortizationExpenseNetInvestmentGainsLosses",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredRevenueLeasesNet": {
     "auth_ref": [
      "r732"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of deferred lease income. Includes, but is not limited to, amount paid in advance by lessee.",
        "label": "Deferred Lease Income, after Accumulated Amortization",
        "terseLabel": "Amortization deferred financing costs"
       }
      }
     },
     "localname": "DeferredRevenueLeasesNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsCapitalLossCarryforwards": {
     "auth_ref": [
      "r518",
      "r519"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible capital loss carryforwards.",
        "label": "Deferred Tax Assets, Capital Loss Carryforwards",
        "terseLabel": "Capital loss"
       }
      }
     },
     "localname": "DeferredTaxAssetsCapitalLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "auth_ref": [
      "r511"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred Tax Assets, Gross",
        "totalLabel": "Total deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards that are subject to expiration dates.",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards, Subject to Expiration",
        "terseLabel": "Additional net operating losses"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOther": {
     "auth_ref": [
      "r518",
      "r519"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 9.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other.",
        "label": "Deferred Tax Assets, Other",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxCreditCarryforwards": {
     "auth_ref": [
      "r516",
      "r518",
      "r519"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of a valuation allowances, of deferred tax assets attributable to deductible tax credit carryforwards including, but not limited to, research, foreign, general business, alternative minimum tax, and other deductible tax credit carryforwards.",
        "label": "Deferred Tax Assets, Tax Credit Carryforwards",
        "terseLabel": "Net operating loss carryforwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxCreditCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsGeneralBusiness": {
     "auth_ref": [
      "r516",
      "r518",
      "r519"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible general business tax credit carryforwards.",
        "label": "Deferred Tax Assets, Tax Credit Carryforwards, General Business",
        "terseLabel": "R&amp;D, Energy and AMT credits"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxCreditCarryforwardsGeneralBusiness",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits": {
     "auth_ref": [
      "r518",
      "r519"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 7.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from compensation and benefits costs.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits",
        "terseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": {
     "auth_ref": [
      "r518",
      "r519"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 8.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on accounts receivable.",
        "label": "Deferred Tax Asset, Tax Deferred Expense, Reserve and Accrual, Accounts Receivable, Allowance for Credit Loss",
        "terseLabel": "Allowance for doubtful accounts and other assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r512"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.",
        "label": "Deferred Tax Assets, Valuation Allowance",
        "terseLabel": "Valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r503",
      "r513"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.",
        "label": "Deferred Tax Liabilities, Net",
        "negatedLabel": "Net deferred tax liabilities, included in other liabilities"
       }
      }
     },
     "localname": "DeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax Liabilities, Gross [Abstract]",
        "terseLabel": "Deferred tax liabilities:"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesDerivatives": {
     "auth_ref": [
      "r518",
      "r519"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from derivatives.",
        "label": "Deferred Tax Liabilities, Derivatives",
        "negatedLabel": "Derivatives"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesDerivatives",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": {
     "auth_ref": [
      "r518",
      "r519"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.",
        "label": "Deferred Tax Liabilities, Intangible Assets",
        "negatedLabel": "Intangibles"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesOther": {
     "auth_ref": [
      "r518",
      "r519"
     ],
     "calculation": {
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences classified as other.",
        "label": "Deferred Tax Liabilities, Other",
        "negatedLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofdeferredincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxesBusinessCombinationValuationAllowanceAvailableToReduceIncomeTaxExpense": {
     "auth_ref": [
      "r542"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of the valuation allowance recorded in a business combination against deductible temporary differences for which related tax benefits will be recorded as a reduction of the acquired entity's income tax expense (after such benefits are first being applied to reduce goodwill and then other noncurrent intangible assets to zero).",
        "label": "Deferred Taxes, Business Combination, Valuation Allowance, Available to Reduce Income Tax Expense",
        "terseLabel": "Deferred Taxes, Business Combination, Valuation Allowance, Available to Reduce Income Tax Expense"
       }
      }
     },
     "localname": "DeferredTaxesBusinessCombinationValuationAllowanceAvailableToReduceIncomeTaxExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation": {
     "auth_ref": [
      "r409"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of actuarial present value of benefits attributed to employee service rendered, excluding assumptions about future compensation level.",
        "label": "Defined Benefit Plan, Accumulated Benefit Obligation",
        "terseLabel": "Accumulated/projected benefit obligation"
       }
      }
     },
     "localname": "DefinedBenefitPlanAccumulatedBenefitObligation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeBeforeTax": {
     "auth_ref": [
      "r72",
      "r76",
      "r421"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before tax, of accumulated other comprehensive (income) loss for defined benefit plan, that has not been recognized in net periodic benefit cost (credit).",
        "label": "Defined Benefit Plan, Accumulated Other Comprehensive (Income) Loss, before Tax",
        "terseLabel": "Accumulated other comprehensive loss",
        "verboseLabel": "Accumulated other comprehensive (income) loss"
       }
      }
     },
     "localname": "DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeLossAfterTaxAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive (Income) Loss, Defined Benefit Plan, after Tax [Abstract]",
        "terseLabel": "Amounts recognized in the consolidated balance sheets:"
       }
      }
     },
     "localname": "DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeLossAfterTaxAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets": {
     "auth_ref": [
      "r391",
      "r449"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in plan assets of defined benefit plan from actual return (loss) determined by change in fair value of plan assets adjusted for contributions, benefit payments, and other expenses.",
        "label": "Defined Benefit Plan, Plan Assets, Increase (Decrease) for Actual Return (Loss)",
        "terseLabel": "Actual gains"
       }
      }
     },
     "localname": "DefinedBenefitPlanActualReturnOnPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate": {
     "auth_ref": [
      "r422"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average rate for present value of future retirement benefits cash flows, used to determine net periodic benefit cost of defined benefit plan.",
        "label": "Defined Benefit Plan, Assumptions Used Calculating Net Periodic Benefit Cost, Discount Rate",
        "terseLabel": "Discount rate",
        "verboseLabel": "Discount rate used in computation of benefit obligations"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets": {
     "auth_ref": [
      "r424",
      "r448"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average rate of return on plan assets, reflecting average rate of earnings expected on existing plan assets and expected contributions, used to determine net periodic benefit cost of defined benefit plan.",
        "label": "Defined Benefit Plan, Assumptions Used Calculating Net Periodic Benefit Cost, Expected Long-term Rate of Return on Plan Assets",
        "terseLabel": "Expected long-term return on plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease": {
     "auth_ref": [
      "r423"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average rate of compensation increase used to determine net periodic benefit cost of defined benefit plan. Plan includes, but is not limited to, pay-related defined benefit plan.",
        "label": "Defined Benefit Plan, Assumptions Used Calculating Net Periodic Benefit Cost, Rate of Compensation Increase",
        "terseLabel": "Rate of compensation increase"
       }
      }
     },
     "localname": "DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanBenefitObligation": {
     "auth_ref": [
      "r379"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of actuarial present value of benefits attributed to service rendered by employee for defined benefit plan.",
        "label": "Defined Benefit Plan, Benefit Obligation",
        "terseLabel": "Less: projected accumulated benefit obligation"
       }
      }
     },
     "localname": "DefinedBenefitPlanBenefitObligation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanBenefitObligationContributionsByPlanParticipant": {
     "auth_ref": [
      "r383"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of contributions received by defined benefit plan from participant which increase benefit obligation.",
        "label": "Defined Benefit Plan, Benefit Obligation, Contributions by Plan Participant",
        "terseLabel": "Participant contributions"
       }
      }
     },
     "localname": "DefinedBenefitPlanBenefitObligationContributionsByPlanParticipant",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanContributionsByEmployer": {
     "auth_ref": [
      "r393",
      "r401",
      "r403",
      "r447",
      "r449",
      "r450"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of contribution received by defined benefit plan from employer which increases plan assets.",
        "label": "Defined Benefit Plan, Plan Assets, Contributions by Employer",
        "terseLabel": "Company contributions"
       }
      }
     },
     "localname": "DefinedBenefitPlanContributionsByEmployer",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanDisclosureLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Defined Benefit Plan Disclosure [Line Items]"
       }
      }
     },
     "localname": "DefinedBenefitPlanDisclosureLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter": {
     "auth_ref": [
      "r410"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in five fiscal years after fifth fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, after Year Five for Next Five Years",
        "terseLabel": "2027-31",
        "verboseLabel": "2027-2031"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsFiveFiscalYearsThereafter",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths": {
     "auth_ref": [
      "r410"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in next fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, Year One",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive": {
     "auth_ref": [
      "r410"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in fifth fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, Year Five",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour": {
     "auth_ref": [
      "r410"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in fourth fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, Year Four",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree": {
     "auth_ref": [
      "r410"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in third fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, Year Three",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo": {
     "auth_ref": [
      "r410"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of benefit for defined benefit plan expected to be paid in second fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Benefit Payment, Year Two",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureBenefitPaymentsYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedFutureEmployerContributionsNextFiscalYear": {
     "auth_ref": [
      "r411",
      "r450"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of contribution expected to be received by defined benefit plan from employer in next fiscal year following current fiscal year.",
        "label": "Defined Benefit Plan, Expected Future Employer Contributions, Next Fiscal Year",
        "terseLabel": "Expected contributions by the company"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedFutureEmployerContributionsNextFiscalYear",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets": {
     "auth_ref": [
      "r378",
      "r415",
      "r442",
      "r449",
      "r450"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expected return (loss) recognized in net periodic benefit (cost) credit, calculated based on expected long-term rate of return and market-related value of plan assets of defined benefit plan.",
        "label": "Defined Benefit Plan, Expected Return (Loss) on Plan Assets",
        "terseLabel": "Expected return on plan assets",
        "verboseLabel": "Amortization of prior service cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedReturnOnPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanFundedStatusOfPlan": {
     "auth_ref": [
      "r377",
      "r399",
      "r449"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of funded (unfunded) status of defined benefit plan, measured as difference between fair value of plan assets and benefit obligation. Includes, but is not limited to, overfunded (underfunded) status.",
        "label": "Defined Benefit Plan, Funded (Unfunded) Status of Plan",
        "negatedLabel": "Funded status, (underfunded)/overfunded",
        "terseLabel": "Funded status, (underfunded)/overfunded"
       }
      }
     },
     "localname": "DefinedBenefitPlanFundedStatusOfPlan",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanFundedStatusOfPlanAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Defined Benefit Plan, Funded (Unfunded) Status of Plan [Abstract]",
        "terseLabel": "Changes in plan assets:"
       }
      }
     },
     "localname": "DefinedBenefitPlanFundedStatusOfPlanAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlanInterestCost": {
     "auth_ref": [
      "r378",
      "r382",
      "r414",
      "r441",
      "r449",
      "r450"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost recognized for passage of time related to defined benefit plan.",
        "label": "Defined Benefit Plan, Interest Cost",
        "terseLabel": "Interest cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanInterestCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost": {
     "auth_ref": [
      "r412",
      "r439",
      "r449",
      "r450"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of net periodic benefit cost (credit) for defined benefit plan.",
        "label": "Defined Benefit Plan, Net Periodic Benefit Cost (Credit)",
        "terseLabel": "Net periodic benefit cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanNetPeriodicBenefitCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansDetails",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPensionPlanWithProjectedBenefitObligationInExcessOfPlanAssetsPlanAssets": {
     "auth_ref": [
      "r435",
      "r449"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of plan asset for defined benefit pension plan with projected benefit obligation in excess of plan assets.",
        "label": "Defined Benefit Plan, Pension Plan with Projected Benefit Obligation in Excess of Plan Assets, Plan Assets",
        "periodEndLabel": "Fair value of plan assets, ending",
        "periodStartLabel": "Fair value of plan assets, beginning"
       }
      }
     },
     "localname": "DefinedBenefitPlanPensionPlanWithProjectedBenefitObligationInExcessOfPlanAssetsPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPensionPlansWithAccumulatedBenefitObligationsInExcessOfPlanAssetsAggregateFairValueOfPlanAssets": {
     "auth_ref": [
      "r435",
      "r436",
      "r449"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of plan asset for defined benefit plan with accumulated benefit obligation in excess of plan assets.",
        "label": "Defined Benefit Plan, Plan with Accumulated Benefit Obligation in Excess of Plan Assets, Plan Assets",
        "terseLabel": "Fair value of plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanPensionPlansWithAccumulatedBenefitObligationsInExcessOfPlanAssetsAggregateFairValueOfPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPlanAssetsBenefitsPaid": {
     "auth_ref": [
      "r395",
      "r453"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of payment to participant under defined benefit plan which decreases plan assets. For pension plan, payment includes, but is not limited to, pension benefits and death benefits. For other postretirement plan, payment includes, but is not limited to, prescription drug benefits, health care benefits, life insurance benefits, and legal, educational and advisory services.",
        "label": "Defined Benefit Plan, Plan Assets, Benefits Paid",
        "negatedLabel": "Benefits paid",
        "terseLabel": "Benefits paid"
       }
      }
     },
     "localname": "DefinedBenefitPlanPlanAssetsBenefitsPaid",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPlanAssetsContributionsByPlanParticipant": {
     "auth_ref": [
      "r394"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of contributions received by defined benefit plan from participant which increases plan assets.",
        "label": "Defined Benefit Plan, Plan Assets, Contributions by Plan Participant",
        "terseLabel": "Participant contributions"
       }
      }
     },
     "localname": "DefinedBenefitPlanPlanAssetsContributionsByPlanParticipant",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanPlanAssetsTargetAllocationPercentage": {
     "auth_ref": [
      "r400",
      "r449"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of target investment allocation to total plan assets. Includes, but is not limited to, percentage on weighted-average basis if more than one plan.",
        "label": "Defined Benefit Plan, Plan Assets, Target Allocation, Percentage",
        "terseLabel": "Benefit Plan Percentage Allocation"
       }
      }
     },
     "localname": "DefinedBenefitPlanPlanAssetsTargetAllocationPercentage",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedBenefitPlanServiceCost": {
     "auth_ref": [
      "r380",
      "r413",
      "r440",
      "r449",
      "r450"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost for actuarial present value of benefits attributed to service rendered by employee for defined benefit plan.",
        "label": "Defined Benefit Plan, Service Cost",
        "terseLabel": "Service cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanServiceCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingNetPeriodicBenefitCostAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Defined Benefit Plan, Weighted Average Assumptions Used in Calculating Net Periodic Benefit Cost [Abstract]",
        "terseLabel": "Assumptions used in computation of benefit obligations:"
       }
      }
     },
     "localname": "DefinedBenefitPlanWeightedAverageAssumptionsUsedInCalculatingNetPeriodicBenefitCostAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r122",
      "r282"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.",
        "label": "Depreciation",
        "terseLabel": "Depreciation expense"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationAndAmortization": {
     "auth_ref": [
      "r122",
      "r282"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.",
        "label": "Depreciation, Depletion and Amortization, Nonproduction",
        "terseLabel": "Depreciation"
       }
      }
     },
     "localname": "DepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationExpenseOnReclassifiedAssets": {
     "auth_ref": [
      "r279",
      "r281"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the asset that is reclassified back to held and use from held-for-sale, the depreciation expense recognized when the asset is reclassified. This represents the difference between the carrying value at the time the decision to reclassify is made and the carrying amount that the asset would have had if it had never been classified as held for sale (including consideration of depreciation expense).",
        "label": "Depreciation Expense on Reclassified Assets",
        "terseLabel": "Depreciation expense"
       }
      }
     },
     "localname": "DepreciationExpenseOnReclassifiedAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeAssetsCurrent": {
     "auth_ref": [
      "r70"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset, expected to be settled within one year or normal operating cycle, if longer. Includes assets not subject to a master netting arrangement and not elected to be offset.",
        "label": "Derivative Asset, Current",
        "terseLabel": "Derivative assets"
       }
      }
     },
     "localname": "DerivativeAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeCapInterestRate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cap rate on an interest rate derivative such as an interest rate cap or collar. If market rates exceed the cap rate, a payment or receipt is triggered on the contract.",
        "label": "Derivative, Cap Interest Rate",
        "terseLabel": "Membership interests percentage"
       }
      }
     },
     "localname": "DerivativeCapInterestRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DerivativeContractTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset.",
        "label": "Derivative Contract [Domain]"
       }
      }
     },
     "localname": "DerivativeContractTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DerivativeFinancialInstrumentsAssetsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents types of derivative financial instruments which are financial instruments or other contractual arrangements with all three of the following characteristics: (a) it has (1) one or more underlyings and (2) one or more notional amounts or payment provisions or both. Those terms determine the amount of the settlement or settlements, and, in some cases, whether or not a settlement is required; (b) it requires no initial net investment or an initial net investment that is smaller than would be required for other types of contracts that would be expected to have a similar response to changes in market factors; and (c) its terms require or permit net settlement, it can readily be settled net by a means outside the contract, or it provides for delivery of an asset that puts the recipient in a position not substantially different from net settlement. Notwithstanding the above characteristics, loan commitments that relate to the origination of mortgage loans that will be held for sale are accounted for as derivative instruments by the issuer of the loan commitment (that is, the potential lender).",
        "label": "Derivative Financial Instruments, Assets [Member]",
        "terseLabel": "Derivative Financial Instruments, Assets [Member]"
       }
      }
     },
     "localname": "DerivativeFinancialInstrumentsAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This item represents derivative instrument obligations meeting the definition of a liability which are reported as of the balance sheet date. Derivative instrument obligations are generally measured at fair value, and adjustments to the carrying amount of hedged items reflect changes in their fair value (that is, losses) that are attributable to the risk being hedged and that arise while the hedge is in effect.",
        "label": "Derivative Financial Instruments, Liabilities [Member]",
        "terseLabel": "Derivative Financial Instruments, Liabilities [Member]"
       }
      }
     },
     "localname": "DerivativeFinancialInstrumentsLiabilitiesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "auth_ref": [
      "r71",
      "r565",
      "r566",
      "r569",
      "r572"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of derivative contract.",
        "label": "Derivative Instrument [Axis]"
       }
      }
     },
     "localname": "DerivativeInstrumentRiskAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofderivativesnotdesignatedashedginginstrumentsTable",
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instruments and Hedging Activities Disclosure [Abstract]"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": {
     "auth_ref": [
      "r578",
      "r582"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.",
        "label": "Derivative Instruments and Hedging Activities Disclosure [Text Block]",
        "terseLabel": "DERIVATIVES"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/Derivatives"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable": {
     "auth_ref": [
      "r563",
      "r565",
      "r569",
      "r572",
      "r573",
      "r575",
      "r577"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments.",
        "label": "Derivative Instruments, Gain (Loss) [Table]"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Derivative Instruments, Gain (Loss) [Line Items]"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsAssetAtFairValue": {
     "auth_ref": [
      "r567"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value as of the balance sheet date of derivative instrument not designated as hedging instrument and classified as an asset.",
        "label": "Derivative Instruments Not Designated as Hedging Instruments, Asset, at Fair Value",
        "terseLabel": "Assets, fair value"
       }
      }
     },
     "localname": "DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsAssetAtFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofderivativesnotdesignatedashedginginstrumentsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsLiabilityAtFairValue": {
     "auth_ref": [
      "r567"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value as of the balance sheet date of derivative instrument not designated as hedging instrument and classified as a liability.",
        "label": "Derivative Instruments Not Designated as Hedging Instruments, Liability, at Fair Value",
        "terseLabel": "Liabilities, fair value"
       }
      }
     },
     "localname": "DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsLiabilityAtFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofderivativesnotdesignatedashedginginstrumentsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeLiabilitiesCurrent": {
     "auth_ref": [
      "r70"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value, after the effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset, expected to be settled within one year or normal operating cycle, if longer. Includes assets not subject to a master netting arrangement and not elected to be offset.",
        "label": "Derivative Liability, Current",
        "terseLabel": "Derivative liabilities"
       }
      }
     },
     "localname": "DerivativeLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativesPolicyTextBlock": {
     "auth_ref": [
      "r143",
      "r561",
      "r562",
      "r563",
      "r564",
      "r574"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for its derivative instruments and hedging activities.",
        "label": "Derivatives, Policy [Policy Text Block]",
        "terseLabel": "Derivative Instruments and Hedging Activities"
       }
      }
     },
     "localname": "DerivativesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DilutiveSecurities": {
     "auth_ref": [
      "r175"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) to net income used for calculating diluted earnings per share (EPS), resulting from the assumed exercise stock options, restrictive stock units (RSUs), convertible preferred stock of an employee stock ownership plan (ESOP), and other dilutive convertible securities.",
        "label": "Dilutive Securities, Effect on Basic Earnings Per Share",
        "terseLabel": "Add: Dilutive securities Income Numerator"
       }
      }
     },
     "localname": "DilutiveSecurities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r499"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Share-based Payment Arrangement [Text Block]",
        "terseLabel": "STOCK-BASED COMPENSATION"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/StockBasedCompensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Payment Arrangement [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisclosureTextBlockSupplementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disclosure Text Block Supplement [Abstract]"
       }
      }
     },
     "localname": "DisclosureTextBlockSupplementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DividendsPreferredStock": {
     "auth_ref": [
      "r370",
      "r717"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of paid and unpaid preferred stock dividends declared with the form of settlement in cash, stock and payment-in-kind (PIK).",
        "label": "Dividends, Preferred Stock",
        "negatedLabel": "Preferred stock dividends"
       }
      }
     },
     "localname": "DividendsPreferredStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DomesticCountryMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile.",
        "label": "Domestic Tax Authority [Member]",
        "terseLabel": "Federal [Member]"
       }
      }
     },
     "localname": "DomesticCountryMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails",
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r94",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r160",
      "r163",
      "r171",
      "r172",
      "r173",
      "r177",
      "r178",
      "r580",
      "r581",
      "r712",
      "r738"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.",
        "label": "Earnings Per Share, Basic",
        "terseLabel": "Income (loss) per share, basic (in Dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareBasicUndistributed": {
     "auth_ref": [
      "r171"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The earnings attributable to each security on the basis that all of the earnings for the period had been distributed (to the extent that each security may share in earnings). This is the earnings amount which reflects the participation rights in undistributed earnings of each security.",
        "label": "Earnings Per Share, Basic, Undistributed",
        "terseLabel": "Loss available to common stockholders Per-Share Amount (in Dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasicUndistributed",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r94",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r163",
      "r171",
      "r172",
      "r173",
      "r177",
      "r178",
      "r580",
      "r581",
      "r712",
      "r738"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.",
        "label": "Earnings Per Share, Diluted",
        "terseLabel": "Income (loss) per share, diluted (in Dollars per share)",
        "verboseLabel": "Diluted earnings per share (in Dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement",
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDilutedDistributed": {
     "auth_ref": [
      "r171"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Dividends declared in the period and the contractual amount of dividends (or interest on participating income bonds) that must be paid per security, taking into account all dilutive potential common shares outstanding during the period.",
        "label": "Earnings Per Share, Diluted, Distributed",
        "terseLabel": "Income available to common stockholders Per-Share Amount (in Dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareDilutedDistributed",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDilutedUndistributed": {
     "auth_ref": [
      "r171"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The earnings attributable to each security on the basis that all of the earnings for the period had been distributed (to the extent that each security may share in earnings). This is the earnings amount which reflects the participation rights in undistributed earnings of each security, after giving effect to all dilutive potential common shares outstanding during the period.",
        "label": "Earnings Per Share, Diluted, Undistributed",
        "terseLabel": "Income available to common stockholders Per-Share Amount (in Dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareDilutedUndistributed",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r174",
      "r176"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.",
        "label": "Earnings Per Share, Policy [Policy Text Block]",
        "terseLabel": "Income (Loss) Per Share"
       }
      }
     },
     "localname": "EarningsPerSharePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "auth_ref": [
      "r505"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "terseLabel": "Effective rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofreconciliationofeffectivetaxrateTable"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r141",
      "r505",
      "r530"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).",
        "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent",
        "terseLabel": "Statutory rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofreconciliationofeffectivetaxrateTable"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r505",
      "r530"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax assets.",
        "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent",
        "terseLabel": "Change in valuation allowance"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofreconciliationofeffectivetaxrateTable"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseOther": {
     "auth_ref": [
      "r505",
      "r530"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other nondeductible expenses.",
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Other, Percent",
        "terseLabel": "Non-deductible items"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseOther",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofreconciliationofeffectivetaxrateTable"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments": {
     "auth_ref": [
      "r505",
      "r530"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.",
        "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Percent",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofreconciliationofeffectivetaxrateTable"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r505",
      "r530"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent",
        "terseLabel": "State income taxes, net of federal benefit"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofreconciliationofeffectivetaxrateTable"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r492"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount",
        "terseLabel": "Compensation expense related to unvested"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r492"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "terseLabel": "Weighted average period"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services.",
        "label": "Equipment [Member]",
        "terseLabel": "Facilities and plant equipment [Member]"
       }
      }
     },
     "localname": "EquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain": {
     "auth_ref": [
      "r493"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred compensation related to equity-based payment arrangements. Includes, but is not limited to, employment contracts with one or more selected officers or key employees. Excludes broad group equity-based compensation plans, defined benefit pension plans, defined benefit other postretirement benefit plans and other deferred compensation that is not equivalent to a defined benefit pension plan or a defined benefit other postretirement benefit plan.",
        "label": "Equity-Based Arrangements, Individual Contracts, Type of Deferred Compensation [Domain]"
       }
      }
     },
     "localname": "EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcommonstockatvestingaggregatedTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r0",
      "r83",
      "r84",
      "r85",
      "r146",
      "r147",
      "r148",
      "r150",
      "r156",
      "r158",
      "r181",
      "r259",
      "r367",
      "r370",
      "r494",
      "r495",
      "r496",
      "r523",
      "r524",
      "r579",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r754",
      "r755",
      "r756",
      "r794"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.",
        "label": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityMethodInvestmentOwnershipPercentage": {
     "auth_ref": [
      "r257"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.",
        "label": "Equity Method Investment, Ownership Percentage",
        "terseLabel": "Equity interest owned",
        "verboseLabel": "Ownership percentage"
       }
      }
     },
     "localname": "EquityMethodInvestmentOwnershipPercentage",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ExcessStockSharesAuthorized": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum number of excess stock shares permitted to be issued.",
        "label": "Excess Stock, Shares Authorized",
        "terseLabel": "Shares authorized"
       }
      }
     },
     "localname": "ExcessStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ExcessStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of excess stock held by shareholders.",
        "label": "Excess Stock, Shares Outstanding",
        "terseLabel": "Shares outstanding"
       }
      }
     },
     "localname": "ExcessStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_FairValueAdjustmentOfWarrants": {
     "auth_ref": [
      "r122",
      "r350"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (income) related to adjustment to fair value of warrant liability.",
        "label": "Fair Value Adjustment of Warrants",
        "terseLabel": "Fair Value (in Dollars)",
        "verboseLabel": "Fair value adjustments for warrants (in Dollars)"
       }
      }
     },
     "localname": "FairValueAdjustmentOfWarrants",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails",
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": {
     "auth_ref": [
      "r585",
      "r586",
      "r587",
      "r592"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.",
        "label": "Fair Value, Recurring and Nonrecurring [Table]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock": {
     "auth_ref": [
      "r585",
      "r586",
      "r587",
      "r591",
      "r592"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of financial instruments measured at fair value, including those classified in shareholders' equity measured on a recurring or nonrecurring basis. Disclosures include, but are not limited to, fair value measurements recorded and the reasons for the measurements, level within the fair value hierarchy in which the fair value measurements are categorized and transfers between levels 1 and 2. Nonrecurring fair value measurements are those that are required or permitted in the statement of financial position in particular circumstances.",
        "label": "Fair Value Measurements, Recurring and Nonrecurring [Table Text Block]",
        "terseLabel": "Schedule of recurring and nonrecurring fair value measurements"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r327",
      "r343",
      "r344",
      "r401",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r449",
      "r586",
      "r648",
      "r649",
      "r650"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.",
        "label": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "localname": "FairValueDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "auth_ref": [
      "r590"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.",
        "label": "Fair Value Disclosures [Text Block]",
        "terseLabel": "FAIR VALUE MEASUREMENTS."
       }
      }
     },
     "localname": "FairValueDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/FairValueMeasurements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "auth_ref": [
      "r327",
      "r401",
      "r403",
      "r408",
      "r449",
      "r586",
      "r648"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.",
        "label": "Fair Value, Inputs, Level 1 [Member]",
        "terseLabel": "Fair Value, Inputs, Level 1 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel1Member",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "auth_ref": [
      "r327",
      "r343",
      "r344",
      "r401",
      "r403",
      "r408",
      "r449",
      "r586",
      "r649"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.",
        "label": "Fair Value, Inputs, Level 2 [Member]",
        "terseLabel": "Fair Value, Inputs, Level 2 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel2Member",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "auth_ref": [
      "r327",
      "r343",
      "r344",
      "r401",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r449",
      "r586",
      "r650"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Inputs, Level 3 [Member]",
        "terseLabel": "Fair Value, Inputs, Level 3 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel3Member",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue": {
     "auth_ref": [
      "r589"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability Value",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [
      "r327",
      "r343",
      "r344",
      "r401",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r449",
      "r648",
      "r649",
      "r650"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.",
        "label": "Fair Value Hierarchy and NAV [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r594",
      "r595"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments.",
        "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]",
        "terseLabel": "Financial Instruments"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r627",
      "r630"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for finance lease calculated at point in time.",
        "label": "Finance Lease, Weighted Average Discount Rate, Percent",
        "terseLabel": "Weighted-average discount rate"
       }
      }
     },
     "localname": "FinanceLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/LeasesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_FinancialInstrumentAxis": {
     "auth_ref": [
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r261",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r270",
      "r338",
      "r365",
      "r578",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r666",
      "r667",
      "r668",
      "r669",
      "r670",
      "r671",
      "r672",
      "r673",
      "r674",
      "r785",
      "r786",
      "r787",
      "r788",
      "r789",
      "r790",
      "r791"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of financial instrument.",
        "label": "Financial Instrument [Axis]"
       }
      }
     },
     "localname": "FinancialInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FinancialLiabilitiesFairValueDisclosure": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of financial obligations, including, but not limited to, debt instruments, derivative liabilities, federal funds purchased and sold under agreements to repurchase, securities loaned or sold under agreements to repurchase, financial instruments sold not yet purchased, guarantees, line of credit, loans and notes payable, servicing liability, and trading liabilities.",
        "label": "Financial Liabilities Fair Value Disclosure",
        "terseLabel": "Fair Value\t(in Dollars)"
       }
      }
     },
     "localname": "FinancialLiabilitiesFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofusedandrelatedfairvalueforthewarrantsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": {
     "auth_ref": [
      "r600",
      "r601",
      "r602",
      "r603"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.",
        "label": "Foreign Currency Transaction Gain (Loss), before Tax",
        "terseLabel": "Pension plan adjustment"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionGainLossBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainLossOnDerivativeInstrumentsNetPretax": {
     "auth_ref": [
      "r565"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate net gain (loss) on all derivative instruments recognized in earnings during the period, before tax effects.",
        "label": "Gain (Loss) on Derivative Instruments, Net, Pretax",
        "terseLabel": "Realized Gains (Losses)"
       }
      }
     },
     "localname": "GainLossOnDerivativeInstrumentsNetPretax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainLossOnDispositionOfAssets1": {
     "auth_ref": [
      "r122"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.",
        "label": "Gain (Loss) on Disposition of Assets",
        "terseLabel": "Gain on sale of assets"
       }
      }
     },
     "localname": "GainLossOnDispositionOfAssets1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainLossRelatedToLitigationSettlement": {
     "auth_ref": [
      "r297"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) recognized in settlement of litigation and insurance claims. Excludes claims within an insurance entity's normal claims settlement process.",
        "label": "Gain (Loss) Related to Litigation Settlement",
        "terseLabel": "Gain on litigation settlement"
       }
      }
     },
     "localname": "GainLossRelatedToLitigationSettlement",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainsLossesOnExtinguishmentOfDebt": {
     "auth_ref": [
      "r122",
      "r347",
      "r348"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.",
        "label": "Gain (Loss) on Extinguishment of Debt",
        "negatedLabel": "Loss on debt extinguishment",
        "terseLabel": "Loss on debt extinguishment"
       }
      }
     },
     "localname": "GainsLossesOnExtinguishmentOfDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow",
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainsLossesOnSalesOfAssets": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of assets utilized in financial service operations.",
        "label": "Gain (Loss) on Disposition of Assets for Financial Service Operations",
        "negatedLabel": "Gain on sale of assets"
       }
      }
     },
     "localname": "GainsLossesOnSalesOfAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r97",
      "r139",
      "r211",
      "r223",
      "r227",
      "r230",
      "r233",
      "r258",
      "r301",
      "r302",
      "r303",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r599"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "Gross Profit",
        "totalLabel": "Gross profit (loss)"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_HedgingDesignationAxis": {
     "auth_ref": [
      "r563",
      "r573"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by designation of purpose of derivative instrument.",
        "label": "Hedging Designation [Axis]"
       }
      }
     },
     "localname": "HedgingDesignationAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofderivativesnotdesignatedashedginginstrumentsTable",
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_HedgingDesignationDomain": {
     "auth_ref": [
      "r563"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designation of purpose of derivative instrument.",
        "label": "Hedging Designation [Domain]"
       }
      }
     },
     "localname": "HedgingDesignationDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ImpairmentOfInvestments": {
     "auth_ref": [
      "r251"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount by which the fair value of an investment is less than the amortized cost basis or carrying amount of that investment at the balance sheet date and the decline in fair value is deemed to be other than temporary, before considering whether or not such amount is recognized in earnings or other comprehensive income.",
        "label": "Other than Temporary Impairment Losses, Investments",
        "terseLabel": "Fair value assesment of impairment loss"
       }
      }
     },
     "localname": "ImpairmentOfInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": {
     "auth_ref": [
      "r122",
      "r280",
      "r286"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 5.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale).",
        "label": "Impairment, Long-Lived Asset, Held-for-Use",
        "negatedLabel": "Asset impairments"
       }
      }
     },
     "localname": "ImpairmentOfLongLivedAssetsHeldForUse",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r277",
      "r289"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.",
        "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]",
        "terseLabel": "Impairment of Long-Lived Assets"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r88",
      "r211",
      "r223",
      "r227",
      "r230",
      "r233",
      "r696",
      "r707",
      "r715",
      "r739"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 1.0,
       "parentTag": "us-gaap_ProfitLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "terseLabel": "Pre-tax loss",
        "totalLabel": "Income (loss) before provision (benefit) for income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails",
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r139",
      "r149",
      "r211",
      "r223",
      "r227",
      "r230",
      "r233",
      "r258",
      "r301",
      "r302",
      "r303",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r546",
      "r581",
      "r599"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of income (loss) from continuing operations including portion attributable to the noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest",
        "terseLabel": "Less: Income allocated to participating securities Income Numerator"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r287",
      "r291"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [
      "r291"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r507"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by tax jurisdiction.",
        "label": "Income Tax Authority [Axis]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails",
      "http://altoingredients.com/role/ScheduleofincometaxintheUnitedStatesjurisdictionandvariousstatejurisdictionsTable",
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.",
        "label": "Income Tax Authority [Domain]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r141",
      "r506",
      "r508",
      "r515",
      "r525",
      "r531",
      "r533",
      "r534",
      "r535"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.",
        "label": "Income Tax Disclosure [Text Block]",
        "terseLabel": "INCOME TAXES"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r142",
      "r157",
      "r158",
      "r209",
      "r504",
      "r526",
      "r532",
      "r740"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 2.0,
       "parentTag": "us-gaap_ProfitLoss",
       "weight": -1.0
      },
      "http://altoingredients.com/role/ScheduleofprovisionforincometaxesTable": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Income Tax Expense (Benefit)",
        "terseLabel": "Provision (benefit) for income taxes",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement",
      "http://altoingredients.com/role/ScheduleofprovisionforincometaxesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r82",
      "r501",
      "r502",
      "r508",
      "r509",
      "r514",
      "r522"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.",
        "label": "Income Tax, Policy [Policy Text Block]",
        "terseLabel": "Provision for Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r126"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.",
        "label": "Income Taxes Paid, Net",
        "terseLabel": "Income tax (payments) refunds"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r121"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.",
        "label": "Increase (Decrease) in Accounts Payable and Accrued Liabilities",
        "terseLabel": "Accounts payable and accrued expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r121"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 16.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAssetsHeldForSale": {
     "auth_ref": [
      "r121"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 20.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the period in book value of long-lived assets that the reporting entity plans to sell within one year (or one business cycle).",
        "label": "Increase (Decrease) in Assets Held-for-sale",
        "negatedLabel": "Assets held-for-sale",
        "terseLabel": "Assets held-for-sale"
       }
      }
     },
     "localname": "IncreaseDecreaseInAssetsHeldForSale",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails",
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInMortgageLoansHeldForSale": {
     "auth_ref": [
      "r121"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 21.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the value of mortgage loans that are held with the intention to sell or be securitized in the near future.",
        "label": "Increase (Decrease) in Mortgage Loans Held-for-sale",
        "negatedLabel": "Liabilities held-for-sale"
       }
      }
     },
     "localname": "IncreaseDecreaseInMortgageLoansHeldForSale",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Other Operating Liabilities [Abstract]",
        "terseLabel": "Changes in operating assets and liabilities:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingLiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r121"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 18.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.",
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "negatedLabel": "Other current assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpensesOther": {
     "auth_ref": [
      "r121"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 17.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) of consideration paid in advance for other costs that provide economic benefits in future periods.",
        "label": "Increase (Decrease) in Prepaid Expenses, Other",
        "negatedLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidExpensesOther",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToWrittenPutOptions": {
     "auth_ref": [
      "r164",
      "r166",
      "r167",
      "r173"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of outstanding written put options using the reverse treasury stock method.",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Written Put Options",
        "terseLabel": "Aggregate dilutive shares (in Shares)"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToWrittenPutOptions",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_IntangibleAssetsFiniteLivedPolicy": {
     "auth_ref": [
      "r131",
      "r276",
      "r677",
      "r678",
      "r679",
      "r681"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for finite-lived intangible assets. This accounting policy also might address: (1) the amortization method used; (2) the useful lives of such assets; and (3) how the entity assesses and measures impairment of such assets.",
        "label": "Intangible Assets, Finite-Lived, Policy [Policy Text Block]",
        "terseLabel": "Intangible Asset"
       }
      }
     },
     "localname": "IntangibleAssetsFiniteLivedPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InterestAndFeeIncomeOtherLoans": {
     "auth_ref": [
      "r713"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest and fee income from loans classified as other.",
        "label": "Interest and Fee Income, Other Loans",
        "terseLabel": "Income from loan forgiveness"
       }
      }
     },
     "localname": "InterestAndFeeIncomeOtherLoans",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestCostsCapitalized": {
     "auth_ref": [
      "r613"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest capitalized during the period.",
        "label": "Interest Costs Capitalized",
        "terseLabel": "Capitalized interest"
       }
      }
     },
     "localname": "InterestCostsCapitalized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r86",
      "r205",
      "r612",
      "r616",
      "r714"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 5.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.",
        "label": "Interest Expense",
        "negatedLabel": "Interest expense, net"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Expense [Abstract]",
        "terseLabel": "Interest expense:"
       }
      }
     },
     "localname": "InterestExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InterestPaid": {
     "auth_ref": [
      "r126"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash paid for interest, including, but not limited to, capitalized interest and payment to settle zero-coupon bond attributable to accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount; classified as operating and investing activities.",
        "label": "Interest Paid, Including Capitalized Interest, Operating and Investing Activities",
        "terseLabel": "Capitalized interest"
       }
      }
     },
     "localname": "InterestPaid",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r115",
      "r118",
      "r126"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.",
        "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities",
        "terseLabel": "Interest paid (net of capitalized interest)"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryAdjustments": {
     "auth_ref": [
      "r66",
      "r271"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of inventory reserves for last-in first-out (LIFO) and other inventory valuation methods.",
        "label": "Inventory Adjustments",
        "terseLabel": "Inventory net of valuation adjustments"
       }
      }
     },
     "localname": "InventoryAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryFinishedGoods": {
     "auth_ref": [
      "r62"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.",
        "label": "Inventory, Finished Goods, Gross",
        "terseLabel": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoods",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinventoriesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r9",
      "r65",
      "r640"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Net",
        "terseLabel": "Inventories",
        "verboseLabel": "Total"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ScheduleofinventoriesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNoncurrent": {
     "auth_ref": [
      "r67"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventories not expected to be converted to cash, sold or exchanged within the normal operating cycle.",
        "label": "Inventory, Noncurrent",
        "terseLabel": "Inventory amount"
       }
      }
     },
     "localname": "InventoryNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r16",
      "r66",
      "r132",
      "r179",
      "r271",
      "r273",
      "r274",
      "r676"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.",
        "label": "Inventory, Policy [Policy Text Block]",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterials": {
     "auth_ref": [
      "r64"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Raw Materials, Gross",
        "terseLabel": "Raw materials"
       }
      }
     },
     "localname": "InventoryRawMaterials",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinventoriesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcess": {
     "auth_ref": [
      "r63"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.",
        "label": "Inventory, Work in Process, Gross",
        "terseLabel": "Work in progress"
       }
      }
     },
     "localname": "InventoryWorkInProcess",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinventoriesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWriteDown": {
     "auth_ref": [
      "r272"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of loss from reductions in inventory due to subsequent measurement adjustments, including, but not limited to, physical deterioration, obsolescence, or changes in price levels.",
        "label": "Inventory Write-down",
        "terseLabel": "Inventory valuation"
       }
      }
     },
     "localname": "InventoryWriteDown",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentOwnedBalancePrincipalAmount": {
     "auth_ref": [
      "r766",
      "r768"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For investments which are quantified by principal amount, the principle balance held at close of period.",
        "label": "Investment Owned, Balance, Principal Amount",
        "terseLabel": "Principal balance"
       }
      }
     },
     "localname": "InvestmentOwnedBalancePrincipalAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandMember": {
     "auth_ref": [
      "r375"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Part of earth's surface not covered by water.",
        "label": "Land [Member]",
        "terseLabel": "Land [Member]"
       }
      }
     },
     "localname": "LandMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseContractualTermAxis": {
     "auth_ref": [
      "r623"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by contractual term of lease arrangement.",
        "label": "Lease Contractual Term [Axis]"
       }
      }
     },
     "localname": "LeaseContractualTermAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r628",
      "r630"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "Lease, Cost",
        "terseLabel": "Net lease cost"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofleasecostsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r628"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.",
        "label": "Lease, Cost [Table Text Block]",
        "terseLabel": "Schedule of components of lease costs"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LegalFees": {
     "auth_ref": [
      "r101"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of expense provided in the period for legal costs incurred on or before the balance sheet date pertaining to resolved, pending or threatened litigation, including arbitration and mediation proceedings.",
        "label": "Legal Fees",
        "terseLabel": "Expenses of preferred stock (in Dollars)"
       }
      }
     },
     "localname": "LegalFees",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeLeasesPolicyTextBlock": {
     "auth_ref": [
      "r622"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee.",
        "label": "Lessee, Leases [Policy Text Block]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeLeasesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r629"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]",
        "terseLabel": "Schedule of operating lease liabilities"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r629"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five",
        "terseLabel": "2027-76"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r629"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r629"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r629"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r629"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r629"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r629"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "terseLabel": "Operating lease liabilities"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofoperatingleaseliabilitiesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r631"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.",
        "label": "Lessee, Operating Leases [Text Block]",
        "terseLabel": "LEASES"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LessorOperatingLeaseDescription": {
     "auth_ref": [
      "r632"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of lessor's operating lease.",
        "label": "Lessor, Operating Lease, Description",
        "terseLabel": "Remaining lease terms description"
       }
      }
     },
     "localname": "LessorOperatingLeaseDescription",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/LeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r51",
      "r139",
      "r225",
      "r258",
      "r301",
      "r302",
      "r303",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r550",
      "r555",
      "r556",
      "r599",
      "r638",
      "r639"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.",
        "label": "Liabilities",
        "totalLabel": "Total Liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities [Abstract]",
        "terseLabel": "Liabilities:"
       }
      }
     },
     "localname": "LiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r36",
      "r139",
      "r258",
      "r599",
      "r640",
      "r704",
      "r727"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Liabilities and Equity",
        "totalLabel": "Total Liabilities and Stockholders\u2019 Equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r53",
      "r139",
      "r258",
      "r301",
      "r302",
      "r303",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r550",
      "r555",
      "r556",
      "r599",
      "r638",
      "r639",
      "r640"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current Liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesFairValueDisclosure": {
     "auth_ref": [
      "r585"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of financial and nonfinancial obligations.",
        "label": "Financial and Nonfinancial Liabilities, Fair Value Disclosure",
        "terseLabel": "Liabilities"
       }
      }
     },
     "localname": "LiabilitiesFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity": {
     "auth_ref": [
      "r49"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current borrowing capacity under the credit facility considering any current restrictions on the amount that could be borrowed (for example, borrowings may be limited by the amount of current assets), but without considering any amounts currently outstanding under the facility.",
        "label": "Line of Credit Facility, Current Borrowing Capacity",
        "terseLabel": "Term loan facility"
       }
      }
     },
     "localname": "LineOfCreditFacilityCurrentBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityInterestRateDescription": {
     "auth_ref": [
      "r49"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of interest rate for borrowing under credit facility. Includes, but is not limited to, terms and method for determining interest rate.",
        "label": "Line of Credit Facility, Interest Rate Description",
        "terseLabel": "Description of interest rate"
       }
      }
     },
     "localname": "LineOfCreditFacilityInterestRateDescription",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongLivedAssetsHeldForSaleByAssetTypeAxis": {
     "auth_ref": [
      "r4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the assets held for sale.",
        "label": "Long Lived Assets Held-for-sale by Asset Type [Axis]"
       }
      }
     },
     "localname": "LongLivedAssetsHeldForSaleByAssetTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongLivedAssetsHeldForSaleNameDomain": {
     "auth_ref": [
      "r4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A name of the assets to be disposed.",
        "label": "Long Lived Assets Held-for-sale, Name [Domain]"
       }
      }
     },
     "localname": "LongLivedAssetsHeldForSaleNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r23",
      "r326",
      "r340",
      "r343",
      "r344",
      "r702",
      "r723"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-term Debt",
        "terseLabel": "Total debt"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofmaturitiesoflongtermdebtTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtCurrent": {
     "auth_ref": [
      "r50"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-term Debt, Current Maturities",
        "negatedLabel": "Less short-term portion",
        "terseLabel": "Current portion \u2013 long-term debt, net"
       }
      }
     },
     "localname": "LongTermDebtCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": {
     "auth_ref": [
      "r144",
      "r300",
      "r331"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year Four",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofmaturitiesoflongtermdebtTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": {
     "auth_ref": [
      "r144",
      "r300",
      "r331"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year Three",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofmaturitiesoflongtermdebtTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r57"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-term Debt, Excluding Current Maturities",
        "terseLabel": "Long-term debt, net of current portion",
        "verboseLabel": "Long-term debt"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermPurchaseCommitmentAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The minimum amount the entity agreed to spend under the long-term purchase commitment.",
        "label": "Long-term Purchase Commitment, Amount",
        "terseLabel": "Future commitments for capital projects"
       }
      }
     },
     "localname": "LongTermPurchaseCommitmentAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock": {
     "auth_ref": [
      "r6",
      "r543"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for business combinations, including leverage buyout transactions (as applicable), and divestitures.  This may include a description of a business combination or divestiture (or series of individually immaterial business combinations or divestitures) completed during the period, including background, timing, and assets and liabilities recognized and reclassified or sold. This element does not include fixed asset sales and plant closings.",
        "label": "Mergers, Acquisitions and Dispositions Disclosures [Text Block]",
        "terseLabel": "INTERCOMPANY AGREEMENTS"
       }
      }
     },
     "localname": "MergersAcquisitionsAndDispositionsDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IntercompanyAgreements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_MultiemployerPlansPlanBenefitsDescription": {
     "auth_ref": [
      "r456",
      "r467"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of the nature of multiemployer plan benefits as well as who is covered by the benefits. A multiemployer plan is a pension or postretirement benefit plan to which two or more unrelated employers contribute where assets contributed by one participating employer may be used to provide benefits to employees of other participating employers.",
        "label": "Multiemployer Plans, Plan Benefits, Description",
        "terseLabel": "Pension plan, description"
       }
      }
     },
     "localname": "MultiemployerPlansPlanBenefitsDescription",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NaturalGasProductionMember": {
     "auth_ref": [
      "r375"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Process of obtaining and processing of flammable gas occurring naturally underground.",
        "label": "Natural Gas, Production [Member]",
        "terseLabel": "Natural Gas [Member]"
       }
      }
     },
     "localname": "NaturalGasProductionMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NetAssetValuePerShare": {
     "auth_ref": [
      "r583",
      "r584",
      "r593",
      "r762",
      "r763"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net asset value per share or per unit of investments in certain entities that calculate net asset value per share. Includes, but is not limited to, by unit, membership interest, or other ownership interest. Investment includes, but is not limited to, investment in certain hedge funds, venture capital funds, private equity funds, real estate partnerships or funds. Excludes fair value disclosure.",
        "label": "Net Asset Value Per Share",
        "terseLabel": "Receives fee per bushel (in Dollars per share)"
       }
      }
     },
     "localname": "NetAssetValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r117"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Net cash provided by (used in) financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "terseLabel": "Financing Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r117"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Net cash provided by (used in) investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "terseLabel": "Investing Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r117",
      "r120",
      "r123"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net cash provided by (used in) operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Operating Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r5",
      "r77",
      "r79",
      "r85",
      "r90",
      "r123",
      "r139",
      "r149",
      "r151",
      "r152",
      "r153",
      "r154",
      "r157",
      "r158",
      "r169",
      "r211",
      "r223",
      "r227",
      "r230",
      "r233",
      "r258",
      "r301",
      "r302",
      "r303",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r581",
      "r599",
      "r708",
      "r733"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net Income (Loss) Attributable to Parent",
        "totalLabel": "Net income (loss) attributed to Alto Ingredients, Inc."
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r77",
      "r79",
      "r85",
      "r157",
      "r158",
      "r552",
      "r558"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of Net Income (Loss) attributable to noncontrolling interest.",
        "label": "Net Income (Loss) Attributable to Noncontrolling Interest",
        "negatedLabel": "Net loss attributed to noncontrolling interests"
       }
      }
     },
     "localname": "NetIncomeLossAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAttributableToNonredeemableNoncontrollingInterest": {
     "auth_ref": [
      "r98"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Portion of net income (loss) attributable to nonredeemable noncontrolling interest.",
        "label": "Net Income (Loss) Attributable to Nonredeemable Noncontrolling Interest",
        "terseLabel": "Net gain"
       }
      }
     },
     "localname": "NetIncomeLossAttributableToNonredeemableNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAttributableToRedeemableNoncontrollingInterest": {
     "auth_ref": [
      "r98"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of Net Income (Loss) attributable to redeemable noncontrolling interest.",
        "label": "Net Income (Loss) Attributable to Redeemable Noncontrolling Interest",
        "terseLabel": "Net loss"
       }
      }
     },
     "localname": "NetIncomeLossAttributableToRedeemableNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic": {
     "auth_ref": [
      "r151",
      "r152",
      "r153",
      "r154",
      "r160",
      "r161",
      "r170",
      "r173",
      "r211",
      "r223",
      "r227",
      "r230",
      "r233"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders.",
        "label": "Net Income (Loss) Available to Common Stockholders, Basic",
        "totalLabel": "Income (loss) available to common stockholders"
       }
      }
     },
     "localname": "NetIncomeLossAvailableToCommonStockholdersBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossFromDiscontinuedOperationsAvailableToCommonShareholdersBasic": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) from discontinued operations available to common shareholders.",
        "label": "Net Income (Loss) from Discontinued Operations Available to Common Shareholders, Basic",
        "terseLabel": "Net loss attributed to Alto Ingredients, Inc Income Numerator"
       }
      }
     },
     "localname": "NetIncomeLossFromDiscontinuedOperationsAvailableToCommonShareholdersBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossFromDiscontinuedOperationsAvailableToCommonShareholdersDiluted": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities, and addition from assumption of issuance of common shares for dilutive potential common shares; of income (loss) from discontinued operations available to common shareholders.",
        "label": "Net Income (Loss) from Discontinued Operations Available to Common Shareholders, Diluted",
        "terseLabel": "Loss available to common stockholders Income Numerator"
       }
      }
     },
     "localname": "NetIncomeLossFromDiscontinuedOperationsAvailableToCommonShareholdersDiluted",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetInvestmentIncome": {
     "auth_ref": [
      "r734"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after investment expense, of income earned from investments in securities and real estate. Includes, but is not limited to, real estate investment, policy loans, dividends, and interest. Excludes realized gain (loss) on investments.",
        "label": "Net Investment Income",
        "terseLabel": "Net sales"
       }
      }
     },
     "localname": "NetInvestmentIncome",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NoncontrollingInterestMember": {
     "auth_ref": [
      "r146",
      "r147",
      "r148",
      "r370",
      "r544"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents that portion of equity (net assets) in a subsidiary not attributable, directly or indirectly, to the parent. A noncontrolling interest is sometimes called a minority interest.",
        "label": "Noncontrolling Interest [Member]",
        "terseLabel": "Non-Controlling Interests"
       }
      }
     },
     "localname": "NoncontrollingInterestMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NondesignatedMember": {
     "auth_ref": [
      "r563"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Derivative instrument not designated as hedging instrument under Generally Accepted Accounting Principles (GAAP).",
        "label": "Not Designated as Hedging Instrument [Member]",
        "terseLabel": "Non-Designated Derivative Instruments [Member]",
        "verboseLabel": "Non Designated Derivative Instruments [Member]"
       }
      }
     },
     "localname": "NondesignatedMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofderivativesnotdesignatedashedginginstrumentsTable",
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NonvotingCommonStockMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Common stock securities that do not empower a holder to vote on corporate resolutions or the election of directors.",
        "label": "Nonvoting Common Stock [Member]",
        "terseLabel": "Non-Voting Common Stock",
        "verboseLabel": "Nonvoting Common Stock [Member]"
       }
      }
     },
     "localname": "NonvotingCommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails",
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NotesPayable": {
     "auth_ref": [
      "r23",
      "r702",
      "r723"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Including the current and noncurrent portions, aggregate carrying amount of all types of notes payable, as of the balance sheet date, with initial maturities beyond one year or beyond the normal operating cycle, if longer.",
        "label": "Notes Payable",
        "terseLabel": "Term debt"
       }
      }
     },
     "localname": "NotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NumberOfOperatingSegments": {
     "auth_ref": [
      "r199"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.",
        "label": "Number of Operating Segments",
        "terseLabel": "Number of operating segments"
       }
      }
     },
     "localname": "NumberOfOperatingSegments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SegmentsDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r211",
      "r223",
      "r227",
      "r230",
      "r233"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating Income (Loss)",
        "totalLabel": "Income (loss) from operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r624",
      "r630"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.",
        "label": "Operating Lease, Cost",
        "terseLabel": "Fixed lease cost"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofleasecostsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLeaseIncomeTableTextBlock": {
     "auth_ref": [
      "r180",
      "r633"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of components of income from operating lease.",
        "label": "Operating Lease, Lease Income [Table Text Block]",
        "terseLabel": "Schedule of leases"
       }
      }
     },
     "localname": "OperatingLeaseLeaseIncomeTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r620"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 3.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Operating Lease, Liability, Current",
        "terseLabel": "Operating leases, net of current portion"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r621",
      "r626"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 19.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Payments",
        "negatedLabel": "Operating leases"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r619"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 1.0,
       "parentTag": "us-gaap_OtherAssets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Right of use operating lease assets, net"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ScheduleofleasesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r516"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "Operating Loss Carryforwards",
        "terseLabel": "Net operating loss carryforward"
       }
      }
     },
     "localname": "OperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLossCarryforwardsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Operating Loss Carryforwards [Line Items]"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLossCarryforwardsTable": {
     "auth_ref": [
      "r517"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting pertinent information, such as tax authority, amounts, and expiration dates, of net operating loss carryforwards, including an assessment of the likelihood of utilization.",
        "label": "Operating Loss Carryforwards [Table]"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r7",
      "r145",
      "r197",
      "r560"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the organization, consolidation and basis of presentation of financial statements disclosure, and significant accounting policies of the reporting entity. May be provided in more than one note to the financial statements, as long as users are provided with an understanding of (1) the significant judgments and assumptions made by an enterprise in determining whether it must consolidate a VIE and/or disclose information about its involvement with a VIE, (2) the nature of restrictions on a consolidated VIE's assets reported by an enterprise in its statement of financial position, including the carrying amounts of such assets, (3) the nature of, and changes in, the risks associated with an enterprise's involvement with the VIE, and (4) how an enterprise's involvement with the VIE affects the enterprise's financial position, financial performance, and cash flows.  Describes procedure if disclosures are provided in more than one note to the financial statements.",
        "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure and Significant Accounting Policies [Text Block]",
        "terseLabel": "ORGANIZATION AND SIGNIFICANT ACCOUNTING POLICIES"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OtherAssets": {
     "auth_ref": [
      "r20",
      "r698",
      "r721"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of assets classified as other.",
        "label": "Other Assets",
        "totalLabel": "Total other assets"
       }
      }
     },
     "localname": "OtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Assets [Abstract]",
        "terseLabel": "Other Assets:"
       }
      }
     },
     "localname": "OtherAssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherAssetsCurrent": {
     "auth_ref": [
      "r68",
      "r640"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 7.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current assets classified as other.",
        "label": "Other Assets, Current",
        "terseLabel": "Other current assets"
       }
      }
     },
     "localname": "OtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 3.0,
       "parentTag": "us-gaap_OtherAssets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncurrent assets classified as other.",
        "label": "Other Assets, Noncurrent",
        "terseLabel": "Other assets"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax": {
     "auth_ref": [
      "r72",
      "r74"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax and reclassification adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit plan.",
        "label": "Other Comprehensive (Income) Loss, Defined Benefit Plan, after Reclassification Adjustment, after Tax",
        "negatedLabel": "Other comprehensive income (expense) \u2013 net gain (loss) arising during the period on defined benefit pension plans"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherCustomerMember": {
     "auth_ref": [
      "r744",
      "r746",
      "r748",
      "r749",
      "r753",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer classified as other.",
        "label": "Other Customer [Member]",
        "terseLabel": "Customer [Member]"
       }
      }
     },
     "localname": "OtherCustomerMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherExpenses": {
     "auth_ref": [
      "r103",
      "r741"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense classified as other.",
        "label": "Other Expenses",
        "terseLabel": "Expenses"
       }
      }
     },
     "localname": "OtherExpenses",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherInventory": {
     "auth_ref": [
      "r65"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of other inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Other Inventory, Gross",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "OtherInventory",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinventoriesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherLiabilities": {
     "auth_ref": [
      "r705"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities classified as other.",
        "label": "Other Liabilities",
        "terseLabel": "Assumption of liabilities"
       }
      }
     },
     "localname": "OtherLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherLiabilitiesCurrent": {
     "auth_ref": [
      "r13",
      "r14",
      "r52",
      "r640"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 7.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer.",
        "label": "Other Liabilities, Current",
        "terseLabel": "Other current liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "auth_ref": [
      "r58"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 4.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.",
        "label": "Other Liabilities, Noncurrent",
        "terseLabel": "Other liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherOperatingIncomeExpenseNet": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 4.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net amount of other operating income and expenses, the components of which are not separately disclosed on the income statement, from items that are associated with the entity's normal revenue producing operations.",
        "label": "Other Operating Income (Expense), Net",
        "terseLabel": "Other income, net"
       }
      }
     },
     "localname": "OtherOperatingIncomeExpenseNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherTransportationEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Long lived, depreciable assets used for the primary purpose of transportation.",
        "label": "Other Transportation Equipment [Member]",
        "terseLabel": "Other equipment, vehicles and furniture [Member]"
       }
      }
     },
     "localname": "OtherTransportationEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PaymentsForBrokerageFees": {
     "auth_ref": [
      "r119"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of cash paid for brokerage fees during the current period. This element is intended to represent the brokerage fees paid by and between financial industry participants.",
        "label": "Payments for Brokerage Fees",
        "terseLabel": "Fees paid (in Dollars)"
       }
      }
     },
     "localname": "PaymentsForBrokerageFees",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDebtIssuanceCosts": {
     "auth_ref": [
      "r113"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt.",
        "label": "Payments of Debt Issuance Costs",
        "negatedLabel": "Debt issuance costs"
       }
      }
     },
     "localname": "PaymentsOfDebtIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock": {
     "auth_ref": [
      "r111"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow in the form of ordinary dividends to preferred shareholders of the parent entity.",
        "label": "Payments of Ordinary Dividends, Preferred Stock and Preference Stock",
        "negatedLabel": "Preferred stock dividend payments"
       }
      }
     },
     "localname": "PaymentsOfDividendsPreferredStockAndPreferenceStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfLoanCosts": {
     "auth_ref": [
      "r114"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for loan origination associated cost which is usually collected through escrow.",
        "label": "Payments of Loan Costs",
        "terseLabel": "Proceed of loan"
       }
      }
     },
     "localname": "PaymentsOfLoanCosts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r108"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Additions to property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": {
     "auth_ref": [
      "r400",
      "r402",
      "r408",
      "r426",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r449",
      "r451",
      "r452",
      "r454",
      "r469"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for retirement benefits.",
        "label": "Retirement Benefits [Text Block]",
        "terseLabel": "PENSION PLANS"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlans"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PledgedAssetsSeparatelyReportedFinanceReceivablesPledgedAsCollateralAtFairValue": {
     "auth_ref": [
      "r658"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The fair value, as of the date of each statement of financial position presented, of finance receivables which are owned but transferred to serve as collateral for the payment of the related debt obligation, and that are reclassified and separately reported in the statement of financial position.",
        "label": "Pledged Assets Separately Reported, Finance Receivables Pledged as Collateral, at Fair Value",
        "terseLabel": "Accounts receivable balance"
       }
      }
     },
     "localname": "PledgedAssetsSeparatelyReportedFinanceReceivablesPledgedAsCollateralAtFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PreferredStockDividendRatePercentage": {
     "auth_ref": [
      "r353"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The percentage rate used to calculate dividend payments on preferred stock.",
        "label": "Preferred Stock, Dividend Rate, Percentage",
        "terseLabel": "Dividend rate percentage"
       }
      }
     },
     "localname": "PreferredStockDividendRatePercentage",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_PreferredStockDividendsIncomeStatementImpact": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 3.0,
       "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of preferred stock dividends that is an adjustment to net income apportioned to common stockholders.",
        "label": "Preferred Stock Dividends, Income Statement Impact",
        "negatedLabel": "Preferred stock dividends"
       }
      }
     },
     "localname": "PreferredStockDividendsIncomeStatementImpact",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PreferredStockLiquidationPreferenceValue": {
     "auth_ref": [
      "r136",
      "r356"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of the difference between preference in liquidation and the par or stated values of the preferred shares.",
        "label": "Preferred Stock, Liquidation Preference, Value",
        "terseLabel": "Preferred stock, liquidation preference (in Dollars)"
       }
      }
     },
     "localname": "PreferredStockLiquidationPreferenceValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PreferredStockMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Preferred shares may provide a preferential dividend to the dividend on common stock and may take precedence over common stock in the event of a liquidation. Preferred shares typically represent an ownership interest in the company.",
        "label": "Preferred Stock [Member]",
        "terseLabel": "Preferred Stock"
       }
      }
     },
     "localname": "PreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r28",
      "r352"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred stock, par value (in Dollars per share)"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockRedemptionPricePerShare": {
     "auth_ref": [
      "r351",
      "r368",
      "r369"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The price per share at which the preferred stock of an entity that has priority over common stock in the distribution of dividends and in the event of liquidation of the entity is redeemed or may be called at. The redemption features of this preferred stock are solely within the control of the issuer.",
        "label": "Preferred Stock, Redemption Price Per Share",
        "terseLabel": "Liquidation preference, per share (in Dollars per share)"
       }
      }
     },
     "localname": "PreferredStockRedemptionPricePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r28"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.",
        "label": "Preferred Stock, Shares Authorized",
        "terseLabel": "Preferred stock, shares authorized"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r28",
      "r352"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.",
        "label": "Preferred Stock, Shares Issued",
        "terseLabel": "Preferred stock, shares issued"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r28"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.",
        "label": "Preferred Stock, Shares Outstanding",
        "terseLabel": "Preferred stock, shares outstanding"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockTextBlock": {
     "auth_ref": [
      "r372"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for terms, amounts, nature of changes, rights and privileges, dividends, and other matters related to preferred stock.",
        "label": "Preferred Stock [Text Block]",
        "terseLabel": "PREFERRED STOCK"
       }
      }
     },
     "localname": "PreferredStockTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStock"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r28",
      "r640"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Preferred Stock, Value, Issued",
        "terseLabel": "Preferred stock value"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PreferredUnitsDescription": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of the various rights, preferences, and privileges of the preferred partners' ownership units including: redemption, conversion, liquidation, tax status of distribution per unit and the sharing in distributions.",
        "label": "Preferred Units, Description",
        "terseLabel": "Preferred units description"
       }
      }
     },
     "localname": "PreferredUnitsDescription",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PriorPeriodReclassificationAdjustmentDescription": {
     "auth_ref": [
      "r2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.",
        "label": "Reclassification, Comparability Adjustment [Policy Text Block]",
        "terseLabel": "Reclassifications"
       }
      }
     },
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PrivatePlacementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A private placement is a direct offering of securities to a limited number of sophisticated investors such as insurance companies, pension funds, mezzanine funds, stock funds and trusts.",
        "label": "Private Placement [Member]",
        "terseLabel": "Private Placement [Member]"
       }
      }
     },
     "localname": "PrivatePlacementMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProceedsFromDivestitureOfBusinessesAndInterestsInAffiliates": {
     "auth_ref": [
      "r105"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the amount received from the sale of a business segment or subsidiary or sale of an entity that is related to it but not strictly controlled during the period (for example, an unconsolidated subsidiary, affiliate, joint venture or equity method investment).",
        "label": "Proceeds from Divestiture of Businesses and Interests in Affiliates",
        "terseLabel": "Cash proceeds"
       }
      }
     },
     "localname": "ProceedsFromDivestitureOfBusinessesAndInterestsInAffiliates",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "auth_ref": [
      "r109"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the additional capital contribution to the entity.",
        "label": "Proceeds from Issuance of Common Stock",
        "terseLabel": "Proceeds from issuances of common stock and warrants"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfLongTermDebt": {
     "auth_ref": [
      "r110"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.",
        "label": "Proceeds from Issuance of Long-term Debt",
        "terseLabel": "Proceeds from CARES Act loans"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromRepaymentsOfLinesOfCredit": {
     "auth_ref": [],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net cash inflow or cash outflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with either short term or long term maturity that is collateralized (backed by pledge, mortgage or other lien in the entity's assets).",
        "label": "Proceeds from (Repayments of) Lines of Credit",
        "terseLabel": "Net proceeds (payments) on Kinergy\u2019s line of credit"
       }
      }
     },
     "localname": "ProceedsFromRepaymentsOfLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfForeclosedAssets": {
     "auth_ref": [
      "r107"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the sale assets received in full or partial satisfaction of a receivable including real and personal property; equity interests in corporations, partnerships, and joint ventures; and beneficial interests in trusts. Foreclosed assets also include loans that are treated as if the underlying collateral had been foreclosed because the institution has taken possession of the collateral, even though legal foreclosure or repossession proceedings have not taken place.",
        "label": "Proceeds from Sale of Foreclosed Assets",
        "terseLabel": "Proceeds from sale of interests in PAL"
       }
      }
     },
     "localname": "ProceedsFromSaleOfForeclosedAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment": {
     "auth_ref": [
      "r106"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow for the sale of long-lived, physical assets used to produce goods and services and not intended for resale, classified as other.",
        "label": "Proceeds from Sale of Other Property, Plant, and Equipment",
        "terseLabel": "Proceeds from sale of Stockton"
       }
      }
     },
     "localname": "ProceedsFromSaleOfOtherPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromWarrantExercises": {
     "auth_ref": [
      "r109"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the amount received from holders exercising their stock warrants.",
        "label": "Proceeds from Warrant Exercises",
        "terseLabel": "Proceeds from warrant exercises"
       }
      }
     },
     "localname": "ProceedsFromWarrantExercises",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProfitLoss": {
     "auth_ref": [
      "r5",
      "r77",
      "r79",
      "r85",
      "r116",
      "r139",
      "r149",
      "r157",
      "r158",
      "r211",
      "r223",
      "r227",
      "r230",
      "r233",
      "r258",
      "r301",
      "r302",
      "r303",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r546",
      "r551",
      "r553",
      "r558",
      "r559",
      "r581",
      "r599",
      "r715"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://altoingredients.com/role/ConsolidatedComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      },
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.",
        "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest",
        "netLabel": "Net loss",
        "terseLabel": "Consolidated net income (loss)",
        "totalLabel": "Consolidated net income (loss)",
        "verboseLabel": "Net income (loss)"
       }
      }
     },
     "localname": "ProfitLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails",
      "http://altoingredients.com/role/ConsolidatedCashFlow",
      "http://altoingredients.com/role/ConsolidatedComprehensiveIncome",
      "http://altoingredients.com/role/ConsolidatedIncomeStatement",
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r46",
      "r285"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.",
        "label": "Long-Lived Tangible Asset [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails",
      "http://altoingredients.com/role/PropertyandEquipmentDetails",
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable",
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r290",
      "r771",
      "r772",
      "r773"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "terseLabel": "PROPERTY AND EQUIPMENT"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PropertyandEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r45",
      "r283"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Gross",
        "terseLabel": "Property, Plant and Equipment, Gross"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r18",
      "r19",
      "r285",
      "r640",
      "r716",
      "r729"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Net",
        "terseLabel": "Property and equipment, net",
        "verboseLabel": "Property, Plant and Equipment, Net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentOtherTypesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Long-lived, physical assets used to produce goods and services and not intended for resale, classified as other.",
        "label": "Property, Plant and Equipment, Other Types [Member]",
        "terseLabel": "Facilities and plant equipment [Member]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentOtherTypesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r43",
      "r285",
      "r771",
      "r772"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment, Policy [Policy Text Block]",
        "terseLabel": "Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r18",
      "r285"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table Text Block]",
        "terseLabel": "Schedule of property and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PropertyandEquipmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r18",
      "r283"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.",
        "label": "Long-Lived Tangible Asset [Domain]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails",
      "http://altoingredients.com/role/PropertyandEquipmentDetails",
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.",
        "label": "Property, Plant and Equipment, Useful Life",
        "terseLabel": "Property and equipment estimated life"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r95",
      "r262"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Accounts Receivable, Credit Loss Expense (Reversal)",
        "terseLabel": "Bad debt expense"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow",
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PublicUtilityPropertyPlantAndEquipmentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Public Utility, Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PublicUtilityPropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PublicUtilityPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r44",
      "r777"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about public utility physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, deprecation expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Public Utility, Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "PublicUtilityPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofdepreciationiscomputedusingthestraightlinemethodTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PurchaseCommitmentExcludingLongtermCommitmentAxis": {
     "auth_ref": [
      "r24",
      "r703",
      "r724"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by arrangement, in which the entity has agreed to expend funds to procure goods or services from one or more suppliers.",
        "label": "Purchase Commitment, Excluding Long-term Commitment [Axis]"
       }
      }
     },
     "localname": "PurchaseCommitmentExcludingLongtermCommitmentAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PurchaseCommitmentExcludingLongtermCommitmentDomain": {
     "auth_ref": [
      "r24",
      "r703",
      "r724"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This item is intended to be populated, by the entity, with Members identifying each purchase commitment about which information required or determined to be disclosed is being provided. If only one such commitment exists, this item may be used to capture such information; if multiple commitments exist, this item is the dimensional default, which will aggregate such information, as appropriate.",
        "label": "Purchase Commitment, Excluding Long-term Commitment [Domain]"
       }
      }
     },
     "localname": "PurchaseCommitmentExcludingLongtermCommitmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted": {
     "auth_ref": [
      "r24",
      "r703",
      "r724"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Minimum amount to be expended to satisfy the terms of arrangements in which the entity has agreed to expend funds to procure goods or services, excluding long-term purchase commitments or unconditional purchase obligations.",
        "label": "Purchase Commitment, Remaining Minimum Amount Committed",
        "terseLabel": "Fixed-price purchase contracts value"
       }
      }
     },
     "localname": "PurchaseCommitmentRemainingMinimumAmountCommitted",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReceivablesNetCurrent": {
     "auth_ref": [
      "r30",
      "r38",
      "r640",
      "r728",
      "r767"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 2.0,
       "parentTag": "us-gaap_OtherAssets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The total amount due to the entity within one year of the balance sheet date (or one operating cycle, if longer) from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such receivables to an amount that approximates their net realizable value.",
        "label": "Receivables, Net, Current",
        "terseLabel": "Notes receivable"
       }
      }
     },
     "localname": "ReceivablesNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable": {
     "auth_ref": [
      "r224",
      "r227"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification, description, and amounts of all significant reconciling items in the reconciliation of total assets from reportable segments to the entity's consolidated assets.",
        "label": "Reconciliation of Assets from Segment to Consolidated [Table]"
       }
      }
     },
     "localname": "ReconciliationOfAssetsFromSegmentToConsolidatedTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock": {
     "auth_ref": [
      "r224",
      "r227"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total assets from reportable segments to the entity's consolidated assets.",
        "label": "Reconciliation of Assets from Segment to Consolidated [Table Text Block]",
        "terseLabel": "Schedule of assets by operating segments"
       }
      }
     },
     "localname": "ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SegmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RegulatedOperatingRevenue": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The total amount of regulated operating revenues recognized during the period.",
        "label": "Regulated Operating Revenue",
        "terseLabel": "Revenues"
       }
      }
     },
     "localname": "RegulatedOperatingRevenue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IntercompanyAgreementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RelatedPartiesAmountInCostOfSales": {
     "auth_ref": [
      "r89"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount included in cost of sales related to transactions with related parties incurred and recorded in the statement of operations for the period.",
        "label": "Related Parties Amount in Cost of Sales",
        "terseLabel": "Sale of madera facility total consideration"
       }
      }
     },
     "localname": "RelatedPartiesAmountInCostOfSales",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RelatedPartyDomain": {
     "auth_ref": [
      "r427",
      "r634",
      "r635"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.",
        "label": "Related Party [Domain]"
       }
      }
     },
     "localname": "RelatedPartyDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyTransactionAxis": {
     "auth_ref": [
      "r427",
      "r634",
      "r635",
      "r636"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of related party transaction.",
        "label": "Related Party Transaction [Axis]"
       }
      }
     },
     "localname": "RelatedPartyTransactionAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "auth_ref": [
      "r427",
      "r634",
      "r636",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r694",
      "r695"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.",
        "label": "Related Party [Axis]"
       }
      }
     },
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RepaymentsOfLinesOfCredit": {
     "auth_ref": [
      "r112",
      "r138"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.",
        "label": "Repayments of Lines of Credit",
        "terseLabel": "Borrowing on credit facility"
       }
      }
     },
     "localname": "RepaymentsOfLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfSeniorDebt": {
     "auth_ref": [
      "r112"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for a long-term debt where the holder has highest claim on the entity's asset in case of bankruptcy or liquidation during the period.",
        "label": "Repayments of Senior Debt",
        "negatedLabel": "Payments on senior notes"
       }
      }
     },
     "localname": "RepaymentsOfSeniorDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfShortTermDebt": {
     "auth_ref": [
      "r112"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for a borrowing having initial term of repayment within one year or the normal operating cycle, if longer.",
        "label": "Repayments of Short-term Debt",
        "negatedLabel": "Payments on plant borrowings"
       }
      }
     },
     "localname": "RepaymentsOfShortTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedCashCurrent": {
     "auth_ref": [
      "r8",
      "r17",
      "r130"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.",
        "label": "Restricted Cash, Current",
        "terseLabel": "Restricted cash"
       }
      }
     },
     "localname": "RestrictedCashCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r32",
      "r370",
      "r497",
      "r640",
      "r726",
      "r757",
      "r759"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings (Accumulated Deficit)",
        "terseLabel": "Accumulated deficit"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r0",
      "r146",
      "r147",
      "r148",
      "r150",
      "r156",
      "r158",
      "r259",
      "r494",
      "r495",
      "r496",
      "r523",
      "r524",
      "r579",
      "r754",
      "r756"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]",
        "terseLabel": "Accumulated Deficit"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanNameAxis": {
     "auth_ref": [
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r427",
      "r430",
      "r434",
      "r435",
      "r436",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r446",
      "r447",
      "r448",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462",
      "r463",
      "r464",
      "r465",
      "r468"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name of plan designed to provide retirement benefits. Includes, but is not limited to, legal name of defined benefit and defined contribution plans.",
        "label": "Retirement Plan Name [Axis]"
       }
      }
     },
     "localname": "RetirementPlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansTables",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable",
      "http://altoingredients.com/role/ScheduleofcomponentsofnetperiodicbenefitcostsTable0",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable",
      "http://altoingredients.com/role/ScheduleofexpectedbenefitpaymentsTable0",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "auth_ref": [
      "r202",
      "r203",
      "r222",
      "r228",
      "r229",
      "r235",
      "r236",
      "r238",
      "r373",
      "r374",
      "r680"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.",
        "label": "Revenue from Contract with Customer, Including Assessed Tax",
        "terseLabel": "Net sales",
        "verboseLabel": "Net sales as reported"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails",
      "http://altoingredients.com/role/ConsolidatedIncomeStatement",
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "auth_ref": [
      "r133",
      "r134"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.",
        "label": "Revenue [Policy Text Block]",
        "terseLabel": "Deferred Financing Costs"
       }
      }
     },
     "localname": "RevenueRecognitionPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r87",
      "r139",
      "r202",
      "r203",
      "r222",
      "r228",
      "r229",
      "r235",
      "r236",
      "r238",
      "r258",
      "r301",
      "r302",
      "r303",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r599",
      "r715"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).",
        "label": "Revenues",
        "terseLabel": "Revenues"
       }
      }
     },
     "localname": "Revenues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevolvingCreditFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.",
        "label": "Revolving Credit Facility [Member]",
        "terseLabel": "Revolving Term Loan Facility [Member]"
       }
      }
     },
     "localname": "RevolvingCreditFacilityMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SaleOfStockNameOfTransactionDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement.",
        "label": "Sale of Stock [Domain]"
       }
      }
     },
     "localname": "SaleOfStockNameOfTransactionDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SaleOfStockPricePerShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share amount received by subsidiary or equity investee for each share of common stock issued or sold in the stock transaction.",
        "label": "Sale of Stock, Price Per Share",
        "terseLabel": "Offering price per share (in Dollars per share)"
       }
      }
     },
     "localname": "SaleOfStockPricePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r191",
      "r238"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue Benchmark [Member]",
        "terseLabel": "Revenue Benchmark [Member]"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/Scheduleofsoldtocustomersrepresenting10ormoreoftheCompanystotalnetsalesTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock": {
     "auth_ref": [
      "r490"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of cost recognized for award under share-based payment arrangement by plan. Includes, but is not limited to, related tax benefit.",
        "label": "Share-based Payment Arrangement, Cost by Plan [Table Text Block]",
        "terseLabel": "Schedule of common stock at vesting aggregated"
       }
      }
     },
     "localname": "ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r522"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.",
        "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]",
        "terseLabel": "Schedule of provision for income taxes"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDebtTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.",
        "label": "Schedule of Debt [Table Text Block]",
        "terseLabel": "Schedule of long-term borrowings"
       }
      }
     },
     "localname": "ScheduleOfDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r513"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.",
        "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]",
        "terseLabel": "Schedule of components of deferred income taxes"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r433",
      "r434",
      "r437",
      "r438",
      "r449"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosures about an individual defined benefit pension plan or an other postretirement defined benefit plan. It may be appropriate to group certain similar plans.  Also includes schedule for fair value of plan assets by major categories of plan assets by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets or liabilities (Level 1), Significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).",
        "label": "Schedule of Defined Benefit Plans Disclosures [Table]"
       }
      }
     },
     "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable",
      "http://altoingredients.com/role/ScheduleofinformationrelatedtotheretirementplanTable0"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock": {
     "auth_ref": [
      "r433",
      "r434",
      "r437",
      "r438",
      "r449"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of one or more of the entity's defined benefit pension plans or one or more other defined benefit postretirement plans, separately for pension plans and other postretirement benefit plans including the entity's schedule of fair value of plan assets for defined benefit or other postretirement plans.",
        "label": "Schedule of Defined Benefit Plans Disclosures [Table Text Block]",
        "terseLabel": "Schedule of information related to the retirement plan"
       }
      }
     },
     "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock": {
     "auth_ref": [
      "r565",
      "r569",
      "r573"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments.",
        "label": "Derivative Instruments, Gain (Loss) [Table Text Block]",
        "terseLabel": "Schedule of recognized gains (losses) for derivatives"
       }
      }
     },
     "localname": "ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DerivativesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r173"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "terseLabel": "Schedule of basic and diluted earnings per share"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r505"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]",
        "terseLabel": "Schedule of reconciliation of effective tax rate"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfExpectedBenefitPaymentsTableTextBlock": {
     "auth_ref": [
      "r410"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of benefits expected to be paid by pension plans and/or other employee benefit plans in each of the next five fiscal years and in the aggregate for the five fiscal years thereafter.",
        "label": "Schedule of Expected Benefit Payments [Table Text Block]",
        "terseLabel": "Schedule of expected benefit payments"
       }
      }
     },
     "localname": "ScheduleOfExpectedBenefitPaymentsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r16",
      "r39",
      "r40",
      "r41"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.",
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "terseLabel": "Schedule of inventories"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "auth_ref": [
      "r300"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt.",
        "label": "Schedule of Maturities of Long-term Debt [Table Text Block]",
        "terseLabel": "Schedule of maturities of long-term debt"
       }
      }
     },
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfNetBenefitCostsTableTextBlock": {
     "auth_ref": [
      "r412"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of net benefit costs for pension plans and/or other employee benefit plans including service cost, interest cost, expected return on plan assets, gain (loss), prior service cost or credit, transition asset or obligation, and gain (loss) recognized due to settlements or curtailments.",
        "label": "Schedule of Net Benefit Costs [Table Text Block]",
        "terseLabel": "Schedule of components of net periodic benefit costs"
       }
      }
     },
     "localname": "ScheduleOfNetBenefitCostsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PensionPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock": {
     "auth_ref": [
      "r568",
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of derivative instrument not designated or qualifying as hedging instrument.",
        "label": "Derivatives Not Designated as Hedging Instruments [Table Text Block]",
        "terseLabel": "Schedule of derivatives not designated as hedging instruments"
       }
      }
     },
     "localname": "ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/DerivativesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r46",
      "r285"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofpropertyandequipmentTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfPublicUtilityPropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r44",
      "r777"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of public utility physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, deprecation expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Public Utility Property, Plant, and Equipment [Table Text Block]",
        "terseLabel": "Schedule of depreciation is computed using the straight-line method"
       }
      }
     },
     "localname": "ScheduleOfPublicUtilityPropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "auth_ref": [
      "r211",
      "r214",
      "r226",
      "r275"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table]"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r211",
      "r214",
      "r226",
      "r275"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]",
        "terseLabel": "Schedule of financial data for operating segments"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SegmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock": {
     "auth_ref": [
      "r493"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range [Table Text Block]",
        "terseLabel": "Schedule of stock options outstanding"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r474",
      "r486",
      "r488"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.",
        "label": "Share-based Payment Arrangement, Option, Activity [Table Text Block]",
        "terseLabel": "Schedule of warrant activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock": {
     "auth_ref": [
      "r190",
      "r191",
      "r192",
      "r193",
      "r596",
      "r598"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.",
        "label": "Schedules of Concentration of Risk, by Risk Factor [Table Text Block]",
        "terseLabel": "Schedule of sold to customers representing 10% or more of the Company\u2019s total net sales"
       }
      }
     },
     "localname": "SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r198",
      "r202",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r222",
      "r223",
      "r224",
      "r225",
      "r227",
      "r228",
      "r229",
      "r230",
      "r231",
      "r233",
      "r238",
      "r292",
      "r293",
      "r745"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.",
        "label": "Segments [Domain]"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable",
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable",
      "http://altoingredients.com/role/SegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingAssetReconcilingItemLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Segment Reporting, Asset Reconciling Item [Line Items]"
       }
      }
     },
     "localname": "SegmentReportingAssetReconcilingItemLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r198",
      "r200",
      "r201",
      "r211",
      "r215",
      "r227",
      "r231",
      "r232",
      "r233",
      "r234",
      "r235",
      "r237",
      "r238",
      "r239"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.",
        "label": "Segment Reporting Disclosure [Text Block]",
        "terseLabel": "SEGMENTS"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/Segments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Segment Reporting Information [Line Items]"
       }
      }
     },
     "localname": "SegmentReportingInformationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingPolicyPolicyTextBlock": {
     "auth_ref": [
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r236"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for segment reporting.",
        "label": "Segment Reporting, Policy [Policy Text Block]",
        "terseLabel": "Segments"
       }
      }
     },
     "localname": "SegmentReportingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r102"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedIncomeStatement": {
       "order": 4.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.",
        "label": "Selling, General and Administrative Expense",
        "negatedLabel": "Selling, general and administrative expenses"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock": {
     "auth_ref": [
      "r500"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for inclusion of significant items in the selling, general and administrative (or similar) expense report caption.",
        "label": "Selling, General and Administrative Expenses, Policy [Policy Text Block]",
        "terseLabel": "Selling Costs"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpensesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SeriesAPreferredStockMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Outstanding nonredeemable series A preferred stock or outstanding series A preferred stock. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.",
        "label": "Series A Preferred Stock [Member]",
        "terseLabel": "Series A Preferred Stock",
        "verboseLabel": "Series A Preferred Stock [Member]"
       }
      }
     },
     "localname": "SeriesAPreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals",
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SeriesBPreferredStockMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Outstanding nonredeemable series B preferred stock or outstanding series B preferred stock. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.",
        "label": "Series B Preferred Stock [Member]",
        "terseLabel": "Series B Preferred Stock",
        "verboseLabel": "Series B Preferred Stock [Member]"
       }
      }
     },
     "localname": "SeriesBPreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals",
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r121"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Noncash Expense",
        "terseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r479"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "negatedLabel": "Number of Shares, Canceled"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofunvestedrestrictedstockactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r484"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value",
        "terseLabel": "Weighted- Average Grant Date Fair Value Per Share, Canceled"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofunvestedrestrictedstockactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r482"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "terseLabel": "Number of Shares, Issued"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofunvestedrestrictedstockactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r482"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Weighted- Average Grant Date Fair Value Per Share, Issued"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofunvestedrestrictedstockactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r481"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "periodEndLabel": "Number of Shares, Unvested Ending of the period",
        "periodStartLabel": "Number of Shares, Unvested Beginning of the period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofunvestedrestrictedstockactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r481"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "periodEndLabel": "Weighted- Average Grant Date Fair Value Per Share, Unvested Ending of the period",
        "periodStartLabel": "Weighted- Average Grant Date Fair Value Per Share, Unvested Beginning of the period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofunvestedrestrictedstockactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r483"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedLabel": "Number of Shares, Vested"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofunvestedrestrictedstockactivityTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r483"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Weighted- Average Grant Date Fair Value Per Share, Vested"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofunvestedrestrictedstockactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agreed-upon price for the exchange of the underlying asset relating to the share-based payment award.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Exercise Price",
        "terseLabel": "Pre-funded warrants"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations": {
     "auth_ref": [
      "r480"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares under non-option equity instrument agreements that were either cancelled or expired.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Non-Option Equity Instruments, Forfeitures and Expirations",
        "negatedLabel": "Number of Shares, Options expired"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionplansTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r477"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "periodEndLabel": "Ending Balance, Weighted Average Exercise Price",
        "periodStartLabel": "Beginning balance, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofwarrantactivityTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r476",
      "r493"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number",
        "periodEndLabel": "Number of Shares, Outstanding at end of year",
        "periodStartLabel": "Number of Shares, Outstanding at beginning of year"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionplansTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r475"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "periodEndLabel": "Weighted Average Exercise Price, Outstanding at end of year",
        "periodStartLabel": "Weighted Average Exercise Price, Outstanding at beginning of year"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionplansTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": {
     "auth_ref": [
      "r488"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value",
        "terseLabel": "Aggregate intrinsic value of options outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "terseLabel": "Weighted Average Exercise Price, Options exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionplansTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Expirations in Period, Weighted Average Exercise Price",
        "terseLabel": "Weighted Average Exercise Price, Options expired"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionplansTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r472",
      "r473"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.",
        "label": "Share-based Payment Arrangement [Policy Text Block]",
        "terseLabel": "Stock-Based Compensation"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions": {
     "auth_ref": [
      "r485"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Shares Exercisable",
        "terseLabel": "Number of Shares, Options exercisable at end of year"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionplansTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions": {
     "auth_ref": [
      "r476"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Shares Outstanding",
        "terseLabel": "Options Outstanding, Number Outstanding (in Shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionsoutstandingTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by supplier.",
        "label": "Supplier [Axis]"
       }
      }
     },
     "localname": "ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
      "http://altoingredients.com/role/Scheduleofpurchasedcornfromsuppliersrepresenting10ormoreoftheCompanystotalcornpurchasesTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Specific identification or general nature of (for example, a construction contractor, a consulting firm) the party from whom the goods or services were or are to be received.",
        "label": "Supplier [Domain]"
       }
      }
     },
     "localname": "ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1": {
     "auth_ref": [
      "r477"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price",
        "terseLabel": "Weighted Average Exercise Price, Options exercisable at end of year"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionplansTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1": {
     "auth_ref": [
      "r476"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Exercise Price",
        "terseLabel": "Options Outstanding, Weighted- Average Exercise Price"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionsoutstandingTable"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r489"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term of outstanding stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Options Outstanding, Weighted- Average Remaining Contractual Life (yrs.)"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofstockoptionsoutstandingTable"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharesIssued": {
     "auth_ref": [
      "r367"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now held in the treasury.",
        "label": "Shares, Issued",
        "terseLabel": "Common stock issued for pre funded warrant"
       }
      }
     },
     "localname": "SharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharesIssuedPricePerShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share or per unit amount of equity securities issued.",
        "label": "Shares Issued, Price Per Share",
        "terseLabel": "Price per warrant (in Dollars per share)"
       }
      }
     },
     "localname": "SharesIssuedPricePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "Shares, Outstanding",
        "periodEndLabel": "Balances (in Shares)",
        "periodStartLabel": "Balances (in Shares)"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SignificantSupplyCommitmentRemainingMinimumAmountCommitted": {
     "auth_ref": [
      "r59",
      "r706",
      "r730"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The floor amount as of the balance sheet date that the entity must expend to satisfy the terms of disclosed arrangements (excluding long-term commitments) in which the entity must commit resources to supply goods or services to one or more customers.",
        "label": "Supply Commitment, Remaining Minimum Amount Committed",
        "terseLabel": "Open fixed-price sales contracts valued"
       }
      }
     },
     "localname": "SignificantSupplyCommitmentRemainingMinimumAmountCommitted",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StateAndLocalJurisdictionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity.",
        "label": "State and Local Jurisdiction [Member]",
        "terseLabel": "State [Member]"
       }
      }
     },
     "localname": "StateAndLocalJurisdictionMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails",
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r3",
      "r198",
      "r202",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r222",
      "r223",
      "r224",
      "r225",
      "r227",
      "r228",
      "r229",
      "r230",
      "r231",
      "r233",
      "r238",
      "r275",
      "r288",
      "r292",
      "r293",
      "r745"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofassetsbyoperatingsegmentsTable",
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable",
      "http://altoingredients.com/role/SegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r27",
      "r28",
      "r29",
      "r136",
      "r139",
      "r163",
      "r165",
      "r168",
      "r171",
      "r173",
      "r182",
      "r183",
      "r184",
      "r258",
      "r301",
      "r305",
      "r306",
      "r307",
      "r310",
      "r311",
      "r352",
      "r353",
      "r356",
      "r360",
      "r367",
      "r599",
      "r785"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by the different classes of stock of the entity.",
        "label": "Class of Stock [Axis]"
       }
      }
     },
     "localname": "StatementClassOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails",
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals",
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r0",
      "r61",
      "r83",
      "r84",
      "r85",
      "r146",
      "r147",
      "r148",
      "r150",
      "r156",
      "r158",
      "r181",
      "r259",
      "r367",
      "r370",
      "r494",
      "r495",
      "r496",
      "r523",
      "r524",
      "r579",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r754",
      "r755",
      "r756",
      "r794"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable",
      "http://altoingredients.com/role/ScheduleoffairvaluesofwarrantsbasedonunobservableinputsTable",
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals",
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Comprehensive Income [Abstract]"
       }
      }
     },
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r146",
      "r147",
      "r148",
      "r181",
      "r680"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet",
      "http://altoingredients.com/role/ConsolidatedBalanceSheet_Parentheticals",
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssued1": {
     "auth_ref": [
      "r127",
      "r128",
      "r129"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The fair value of stock issued in noncash financing activities.",
        "label": "Stock Issued",
        "terseLabel": "Issuance of warrants for senior note amendment"
       }
      }
     },
     "localname": "StockIssued1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r60",
      "r330",
      "r367",
      "r368",
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of the conversion of convertible securities.",
        "label": "Stock Issued During Period, Shares, Conversion of Convertible Securities",
        "terseLabel": "Common stock issuances (in Shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits": {
     "auth_ref": [
      "r28",
      "r29",
      "r367",
      "r368",
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares issued during the period upon the conversion of units. An example of a convertible unit is an umbrella partnership real estate investment trust unit (UPREIT unit).",
        "label": "Stock Issued During Period, Shares, Conversion of Units",
        "terseLabel": "Convertible shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesConversionOfUnits",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/PreferredStockDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": {
     "auth_ref": [
      "r28",
      "r29",
      "r367",
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan.",
        "label": "Stock Issued During Period, Shares, Employee Stock Purchase Plans",
        "terseLabel": "Warrants to purchase aggregate shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesNewIssues": {
     "auth_ref": [
      "r28",
      "r29",
      "r367",
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of new stock issued during the period.",
        "label": "Stock Issued During Period, Shares, New Issues",
        "terseLabel": "Common stock issuances ATM (in Shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesOther": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of stock issued attributable to transactions classified as other.",
        "label": "Stock Issued During Period, Shares, Other",
        "terseLabel": "Common stock issuances senior notes (in Shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesOther",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": {
     "auth_ref": [
      "r28",
      "r29",
      "r367",
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).",
        "label": "Shares Issued, Shares, Share-based Payment Arrangement, after Forfeiture",
        "terseLabel": "Restricted stock issued to employees and directors, net of cancellations and tax (in Shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r28",
      "r29",
      "r367",
      "r370",
      "r478"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period",
        "terseLabel": "Warrant exercises (in Shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockSplits": {
     "auth_ref": [
      "r28",
      "r29",
      "r367",
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of a stock split.",
        "label": "Stock Issued During Period, Shares, Stock Splits",
        "terseLabel": "Shares issued"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockSplits",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r61",
      "r367",
      "r370"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The gross value of stock issued during the period upon the conversion of convertible securities.",
        "label": "Stock Issued During Period, Value, Conversion of Convertible Securities",
        "terseLabel": "Common stock issuances senior notes"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueIssuedForServices": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of stock issued in lieu of cash for services contributed to the entity. Value of the stock issued includes, but is not limited to, services contributed by vendors and founders.",
        "label": "Stock Issued During Period, Value, Issued for Services",
        "terseLabel": "Common stock issuances"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueIssuedForServices",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueOther": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of shares of stock issued attributable to transactions classified as other.",
        "label": "Stock Issued During Period, Value, Other",
        "terseLabel": "Common stock issuances ATM"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueOther",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "auth_ref": [
      "r28",
      "r29",
      "r370",
      "r471",
      "r487"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture",
        "terseLabel": "Restricted stock issued to employees and directors, net of cancellations and tax"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r61",
      "r367",
      "r370"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of stock issued as a result of the exercise of stock options.",
        "label": "Stock Issued During Period, Value, Stock Options Exercised",
        "terseLabel": "Warrant exercises"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r29",
      "r34",
      "r35",
      "r139",
      "r249",
      "r258",
      "r599",
      "r640"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.",
        "label": "Stockholders' Equity Attributable to Parent",
        "periodEndLabel": "Balances",
        "periodStartLabel": "Balances"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ShareholdersEquityType2or3"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "terseLabel": "Stockholders\u2019 Equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r0",
      "r1",
      "r84",
      "r139",
      "r146",
      "r147",
      "r148",
      "r150",
      "r156",
      "r258",
      "r259",
      "r370",
      "r494",
      "r495",
      "r496",
      "r523",
      "r524",
      "r544",
      "r545",
      "r557",
      "r579",
      "r599",
      "r605",
      "r606",
      "r610",
      "r755",
      "r756",
      "r794"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedBalanceSheet": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.",
        "label": "Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest",
        "totalLabel": "Total stockholders\u2019 equity"
       }
      }
     },
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedBalanceSheet"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityNoteAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Note [Abstract]"
       }
      }
     },
     "localname": "StockholdersEquityNoteAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r137",
      "r353",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r366",
      "r370",
      "r372"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.",
        "label": "Stockholders' Equity Note Disclosure [Text Block]",
        "terseLabel": "COMMON STOCK AND WARRANTS"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrants"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsegmentsAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business subsegments.",
        "label": "Subsegments [Axis]"
       }
      }
     },
     "localname": "SubsegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsegmentsDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Divisions of a component of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.",
        "label": "Subsegments [Domain]"
       }
      }
     },
     "localname": "SubsegmentsDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffinancialdataforoperatingsegmentsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [
      "r611",
      "r642"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event [Member]",
        "terseLabel": "Subsequent Event [Member]"
       }
      }
     },
     "localname": "SubsequentEventMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r611",
      "r642"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Axis]"
       }
      }
     },
     "localname": "SubsequentEventTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r611",
      "r642"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Domain]"
       }
      }
     },
     "localname": "SubsequentEventTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/OrganizationandSignificantAccountingPoliciesDetails",
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Abstract]"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for reporting subsequent events.",
        "label": "Subsequent Events, Policy [Policy Text Block]",
        "terseLabel": "Subsequent Events, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "SubsequentEventsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r641",
      "r644"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.",
        "label": "Subsequent Events [Text Block]",
        "terseLabel": "SUBSEQUENT EVENTS"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsidiarySaleOfStockAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of sale of the entity's stock.",
        "label": "Sale of Stock [Axis]"
       }
      }
     },
     "localname": "SubsidiarySaleOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock": {
     "auth_ref": [
      "r517"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of pertinent information, such as tax authority, amounts, and expiration dates, of net operating loss carryforwards, including an assessment of the likelihood of utilization.",
        "label": "Summary of Operating Loss Carryforwards [Table Text Block]",
        "terseLabel": "Schedule of net operating loss carryforwards"
       }
      }
     },
     "localname": "SummaryOfOperatingLossCarryforwardsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental Cash Flow Information [Abstract]",
        "terseLabel": "Supplemental Information:"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SupplementalDeferredPurchasePrice": {
     "auth_ref": [
      "r127",
      "r128",
      "r129"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A device of credit enhancement where a part of the purchase price for the receivable/ payable is retained to serve as a cash collateral.",
        "label": "Supplemental Deferred Purchase Price",
        "terseLabel": "Purchase price"
       }
      }
     },
     "localname": "SupplementalDeferredPurchasePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SupplyCommitmentArrangementMember": {
     "auth_ref": [
      "r24",
      "r703",
      "r724"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This item is intended to be populated, by the entity, with Members identifying each supply commitment about which information required or determined to be disclosed is being provided. If only one such commitment exists, this item may be used to capture such information; if multiple commitments exist, this item is the dimensional default, which will aggregate such information, as appropriate.",
        "label": "Supply Commitment Arrangement [Domain]"
       }
      }
     },
     "localname": "SupplyCommitmentArrangementMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SupplyCommitmentAxis": {
     "auth_ref": [
      "r24",
      "r703",
      "r724"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by arrangements in which the entity has committed resources to supply goods or services to a customer.",
        "label": "Supply Commitment [Axis]"
       }
      }
     },
     "localname": "SupplyCommitmentAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxPeriodAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information about the period subject to enacted tax laws.",
        "label": "Tax Period [Axis]"
       }
      }
     },
     "localname": "TaxPeriodAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxPeriodDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identified tax period.",
        "label": "Tax Period [Domain]"
       }
      }
     },
     "localname": "TaxPeriodDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofnetoperatinglosscarryforwardsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TradeAndOtherAccountsReceivablePolicy": {
     "auth_ref": [
      "r243",
      "r244",
      "r245",
      "r246",
      "r248",
      "r250"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for accounts receivable.",
        "label": "Accounts Receivable [Policy Text Block]",
        "terseLabel": "Accounts Receivable and Allowance for Doubtful Accounts"
       }
      }
     },
     "localname": "TradeAndOtherAccountsReceivablePolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": {
     "auth_ref": [
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r338",
      "r365",
      "r578",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r666",
      "r667",
      "r668",
      "r669",
      "r670",
      "r671",
      "r672",
      "r673",
      "r674",
      "r785",
      "r786",
      "r787",
      "r788",
      "r789",
      "r790",
      "r791"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms.",
        "label": "Financial Instruments [Domain]"
       }
      }
     },
     "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecurringandnonrecurringfairvaluemeasurementsTable"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnamortizedDebtIssuanceExpense": {
     "auth_ref": [
      "r47"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The remaining balance of debt issuance expenses that were capitalized and are being amortized against income over the lives of the respective bond issues. This does not include the amounts capitalized as part of the cost of the utility plant or asset.",
        "label": "Unamortized Debt Issuance Expense",
        "negatedLabel": "Less unamortized debt financing costs"
       }
      }
     },
     "localname": "UnamortizedDebtIssuanceExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoflongtermborrowingsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrealizedGainLossOnDerivatives": {
     "auth_ref": [
      "r122"
     ],
     "calculation": {
      "http://altoingredients.com/role/ConsolidatedCashFlow": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net change in the difference between the fair value and the carrying value, or in the comparative fair values, of derivative instruments, including options, swaps, futures, and forward contracts, held at each balance sheet date, that was included in earnings for the period.",
        "label": "Unrealized Gain (Loss) on Derivatives",
        "negatedLabel": "Gains on derivative instruments"
       }
      }
     },
     "localname": "UnrealizedGainLossOnDerivatives",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrealizedGainLossOnDerivativesAndCommodityContracts": {
     "auth_ref": [
      "r122"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net change in the difference between the fair value and the carrying value, or in the comparative fair values, of open derivatives, commodity, or energy contracts, held at each balance sheet date, that was included in earnings for the period.",
        "label": "Unrealized Gain (Loss) on Derivatives and Commodity Contracts",
        "terseLabel": "Unrealized Gains (Losses)"
       }
      }
     },
     "localname": "UnrealizedGainLossOnDerivativesAndCommodityContracts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofrecognizedgainslossesforderivativesTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r185",
      "r186",
      "r188",
      "r189",
      "r194",
      "r195",
      "r196"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.",
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "terseLabel": "Estimates and Assumptions"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AccountingPoliciesByPolicy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_UtilitiesOperatingExpenseImpairments": {
     "auth_ref": [
      "r100"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating expense for impairments of regulated operation.",
        "label": "Utilities Operating Expense, Impairments",
        "terseLabel": "Addition, asset impairments"
       }
      }
     },
     "localname": "UtilitiesOperatingExpenseImpairments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/AssetSalesandHeldForSaleClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount": {
     "auth_ref": [
      "r513"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in the valuation allowance for a specified deferred tax asset.",
        "label": "Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount",
        "terseLabel": "Increase in valuation allowance"
       }
      }
     },
     "localname": "ValuationAllowanceDeferredTaxAssetChangeInAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_VariableLeaseCost": {
     "auth_ref": [
      "r625",
      "r630"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.",
        "label": "Variable Lease, Cost",
        "terseLabel": "Variable lease cost"
       }
      }
     },
     "localname": "VariableLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofcomponentsofleasecostsTable"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WarrantExercisePriceIncrease": {
     "auth_ref": [
      "r368"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share increase in exercise price of warrant. Excludes change due to standard antidilution provision.",
        "label": "Warrant, Exercise Price, Increase",
        "terseLabel": "Exercise price (in Dollars per share)"
       }
      }
     },
     "localname": "WarrantExercisePriceIncrease",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/CommonStockandWarrantsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_WarrantsAndRightsOutstandingTerm": {
     "auth_ref": [
      "r588"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period between issuance and expiration of outstanding warrant and right embodying unconditional obligation requiring redemption by transferring asset at specified or determinable date or upon event certain to occur, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Warrants and Rights Outstanding, Term",
        "terseLabel": "Term (years)"
       }
      }
     },
     "localname": "WarrantsAndRightsOutstandingTerm",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleoffairvalueofprefundedwarrantsandotherwarrantsTable",
      "http://altoingredients.com/role/ScheduleofusedandrelatedfairvalueforthewarrantsTable"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "auth_ref": [
      "r173"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.",
        "label": "Weighted Average Number Diluted Shares Outstanding Adjustment",
        "terseLabel": "Add: Dilutive securities Shares Denominator (in Shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ScheduleofbasicanddilutedearningspershareTable"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r162",
      "r173"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.",
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "terseLabel": "Weighted-average shares outstanding, diluted (in Shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r160",
      "r173"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Weighted-average shares outstanding, basic (in Shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://altoingredients.com/role/ConsolidatedIncomeStatement"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 4
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(b))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.3)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4,6)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.8)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3367-108585"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3000-108585"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3521-108585"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6801-107765"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3044-108585"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4273-108586"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4297-108586"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4304-108586"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4313-108586"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4332-108586"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=SL98516268-108586"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(c))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(e)(1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(f))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6911-107765"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(n))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6935-107765"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1448-109256"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1377-109256"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1505-109256"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1252-109256"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1757-109256"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1278-109256"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e2366-109256"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "36",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e2398-109256"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "55",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e2626-109256"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1337-109256"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e3842-109258"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e4984-109258"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=124437754&loc=d3e543-108305"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=124502072&loc=SL77927221-108306"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70229-108054"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "http://asc.fasb.org/topic&trid=2134479"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8657-108599"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8672-108599"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=124429488&loc=d3e326-107755"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(17))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8721-108599"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8721-108599"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8844-108599"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8864-108599"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8864-108599"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8864-108599"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8864-108599"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8864-108599"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8864-108599"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8924-108599"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8981-108599"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9031-108599"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "http://asc.fasb.org/topic&trid=2134510"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(25))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e4975-111524"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=SL6953423-111524"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5212-111524"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5033-111524"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5093-111524"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10133-111534"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=124260329&loc=SL6284422-111562"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=123581744&loc=d3e27232-111563"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=123581744&loc=SL120269820-111563"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "321",
   "URI": "http://asc.fasb.org/extlink&oid=123583765&loc=SL75117539-209714"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "321",
   "URI": "http://asc.fasb.org/extlink&oid=123583765&loc=SL75117539-209714"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "321",
   "URI": "http://asc.fasb.org/extlink&oid=123583765&loc=SL75117539-209714"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919244-210447"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919253-210447"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919258-210447"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919230-210447"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124269663&loc=SL82922888-210455"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124269663&loc=SL82922895-210455"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124269663&loc=SL82922900-210455"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121590138&loc=SL82922954-210456"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4542-108314"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "http://asc.fasb.org/topic&trid=2126998"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226317&loc=d3e202-110218"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123398962&loc=d3e400-110220"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "44",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=29634951&loc=d3e1756-110224"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123351718&loc=d3e2420-110228"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123351718&loc=d3e2459-110228"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2921-110230"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=27011434&loc=d3e125687-122742"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "http://asc.fasb.org/topic&trid=2155823"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123465755&loc=d3e1835-112601"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6031898-161870"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6036836-161870"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "40",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123467658&loc=d3e12317-112629"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "40",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123467658&loc=d3e12355-112629"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=109262497&loc=d3e20148-110875"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21564-112644"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496180-112644"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496189-112644"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496189-112644"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496189-112644"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496189-112644"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21463-112644"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21475-112644"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21488-112644"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 4.F)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187171-122770"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "http://asc.fasb.org/topic&trid=2208762"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130543-203045"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130545-203045"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123453770&loc=d3e1703-114919"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123453770&loc=SL108413299-114919"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(10)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(5)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(8)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(9)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(5)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(6)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(7)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(8)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(5)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(6)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(7)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.1)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(j)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(l)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(o)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(p)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(q)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(r)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(r)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2439-114920"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(5)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2919-114920"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123450688&loc=d3e4587-114921"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=21916913&loc=d3e273930-122802"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "60",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=6414203&loc=d3e39689-114964"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "60",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=6414203&loc=d3e39716-114964"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "70",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.14)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(e)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(e)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450678-114947"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "http://asc.fasb.org/topic&trid=2235017"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.17)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(f)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)-(4)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.F)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809"
  },
  "r499": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r500": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(a)",
   "Topic": "720",
   "URI": "http://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848"
  },
  "r501": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318"
  },
  "r502": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r536": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r537": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123413009&loc=d3e4845-128472"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123413009&loc=d3e4845-128472"
  },
  "r541": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e7008-128479"
  },
  "r542": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "740",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123403335&loc=d3e9901-128506"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "http://asc.fasb.org/topic&trid=2303972"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4568447-111683"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4568740-111683"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569616-111683"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569643-111683"
  },
  "r548": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4613674-111683"
  },
  "r549": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(2))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r550": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r551": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r552": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r553": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r554": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r555": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r556": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4I",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4590271-111686"
  },
  "r558": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686"
  },
  "r559": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r560": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "810",
   "URI": "http://asc.fasb.org/topic&trid=2197479"
  },
  "r561": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5579240-113959"
  },
  "r562": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5579245-113959"
  },
  "r563": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=d3e41620-113959"
  },
  "r564": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=d3e41638-113959"
  },
  "r565": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959"
  },
  "r566": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959"
  },
  "r567": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959"
  },
  "r568": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959"
  },
  "r569": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r570": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4CC",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL109998890-113959"
  },
  "r571": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(4)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959"
  },
  "r572": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959"
  },
  "r573": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624181-113959"
  },
  "r574": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=d3e41675-113959"
  },
  "r575": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "182",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123421605&loc=SL5629052-113961"
  },
  "r576": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "25",
   "Subparagraph": "(a)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121577467&loc=d3e76258-113986"
  },
  "r577": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "25",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121577467&loc=d3e76258-113986"
  },
  "r578": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123477628&loc=d3e90205-114008"
  },
  "r579": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.24)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r580": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r581": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r582": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "815",
   "URI": "http://asc.fasb.org/topic&trid=2229140"
  },
  "r583": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "54B",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=122636397&loc=SL7495116-110257"
  },
  "r584": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "59",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=122636397&loc=SL6740821-110257"
  },
  "r585": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r586": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r587": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r588": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(2)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r589": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r590": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r591": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=SL7498348-110258"
  },
  "r592": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19279-110258"
  },
  "r593": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=SL6742756-110258"
  },
  "r594": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260"
  },
  "r595": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13279-108611"
  },
  "r596": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611"
  },
  "r597": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611"
  },
  "r598": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611"
  },
  "r599": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/subtopic&trid=2122178"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-30)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r600": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=120253306&loc=d3e28228-110885"
  },
  "r601": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=123602790&loc=d3e30226-110892"
  },
  "r602": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=125521441&loc=d3e30690-110894"
  },
  "r603": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=124440516&loc=d3e30840-110895"
  },
  "r604": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906"
  },
  "r605": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900"
  },
  "r606": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r607": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r608": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r609": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r610": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901"
  },
  "r611": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901"
  },
  "r612": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391"
  },
  "r613": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391"
  },
  "r614": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28541-108399"
  },
  "r615": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399"
  },
  "r616": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399"
  },
  "r617": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629"
  },
  "r618": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400"
  },
  "r619": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r620": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r621": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977"
  },
  "r622": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918666-209980"
  },
  "r623": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918673-209980"
  },
  "r624": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r625": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r626": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r627": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r628": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r629": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918701-209980"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r630": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971"
  },
  "r631": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888251"
  },
  "r632": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=124258985&loc=SL77919359-209981"
  },
  "r633": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=124258985&loc=SL77919372-209981"
  },
  "r634": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r635": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r636": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864"
  },
  "r637": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124437977&loc=d3e55792-112764"
  },
  "r638": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r639": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r640": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766"
  },
  "r641": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r642": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r643": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662"
  },
  "r644": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r645": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)(i)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r646": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)(ii)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r647": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r648": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r649": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r650": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r651": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r652": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r653": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r654": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r655": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r656": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r657": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r658": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=66007379&loc=d3e113888-111728"
  },
  "r659": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=109249958&loc=SL34722452-111729"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r660": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122625-111746"
  },
  "r661": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122625-111746"
  },
  "r662": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122625-111746"
  },
  "r663": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(4)(i)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122625-111746"
  },
  "r664": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r665": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r666": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r667": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(4)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r668": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(5)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r669": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(6)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(d))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r670": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(a)(7)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r671": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(b)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r672": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(e)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r673": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(e)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r674": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Subparagraph": "(e)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=125521744&loc=d3e122739-111746"
  },
  "r675": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "http://asc.fasb.org/extlink&oid=123353855&loc=SL119991595-234733"
  },
  "r676": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "http://asc.fasb.org/extlink&oid=6471895&loc=d3e55923-109411"
  },
  "r677": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "350",
   "Subparagraph": "(a)",
   "Topic": "920",
   "URI": "http://asc.fasb.org/extlink&oid=120155617&loc=SL120155628-234783"
  },
  "r678": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "350",
   "Subparagraph": "(b)",
   "Topic": "920",
   "URI": "http://asc.fasb.org/extlink&oid=120155617&loc=SL120155628-234783"
  },
  "r679": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "350",
   "Subparagraph": "(a)",
   "Topic": "920",
   "URI": "http://asc.fasb.org/extlink&oid=120155617&loc=SL120155638-234783"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.8)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r680": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856"
  },
  "r681": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959"
  },
  "r682": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-10(c)(3)(ii)(A))",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123726172&loc=d3e511914-122862"
  },
  "r683": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-10(c)(7)(ii))",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123726172&loc=d3e511914-122862"
  },
  "r684": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61929-109447"
  },
  "r685": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61929-109447"
  },
  "r686": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62059-109447"
  },
  "r687": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62059-109447"
  },
  "r688": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62395-109447"
  },
  "r689": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62395-109447"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.9)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r690": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62479-109447"
  },
  "r691": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62479-109447"
  },
  "r692": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=SL6807758-109447"
  },
  "r693": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=SL6807758-109447"
  },
  "r694": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(1)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61872-109447"
  },
  "r695": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(2)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61872-109447"
  },
  "r696": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "http://asc.fasb.org/extlink&oid=123384075&loc=d3e41242-110953"
  },
  "r697": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(1)(a))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r698": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r699": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "205",
   "URI": "http://asc.fasb.org/topic&trid=2122149"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312"
  },
  "r700": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r701": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r702": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r703": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(17))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r704": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r705": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.15)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r706": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r707": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r708": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r709": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(24))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313"
  },
  "r710": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(25))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r711": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r712": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r713": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.1)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r714": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r715": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884"
  },
  "r716": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630"
  },
  "r717": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "405",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6957935&loc=d3e64057-112817"
  },
  "r718": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=123345438&loc=d3e61044-112788"
  },
  "r719": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(15)(b)(2))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(i-k)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580"
  },
  "r720": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r721": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(10))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r722": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r723": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r724": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(19))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r725": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r726": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r727": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r728": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(5))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r729": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580"
  },
  "r730": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a)(19))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r731": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a),19)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r732": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.15)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r733": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r734": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(2))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r735": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(20))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r736": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(21))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r737": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r738": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r739": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e637-108580"
  },
  "r740": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r741": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04.7)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r742": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "30",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124506905&loc=d3e10138-158409"
  },
  "r743": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=35755530&loc=d3e11264-158415"
  },
  "r744": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124505477&loc=SL117422543-158416"
  },
  "r745": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438"
  },
  "r746": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=d3e14931-158439"
  },
  "r747": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439"
  },
  "r748": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439"
  },
  "r749": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=SL117782768-158439"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e681-108580"
  },
  "r750": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r751": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r752": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117819544-158441"
  },
  "r753": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=122147696&loc=SL65671395-207642"
  },
  "r754": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r755": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r756": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r757": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r758": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r759": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669686-108580"
  },
  "r760": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124508989&loc=SL117422267-158473"
  },
  "r761": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195"
  },
  "r762": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "205",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=25866437&loc=d3e10246-115837"
  },
  "r763": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "205",
   "Subparagraph": "(h)",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=25866437&loc=d3e10246-115837"
  },
  "r764": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=118262064&loc=SL116631418-115840"
  },
  "r765": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=118262064&loc=SL116631419-115840"
  },
  "r766": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(c)",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=99383244&loc=d3e12121-115841"
  },
  "r767": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-06(3))",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=120401414&loc=d3e604059-122996"
  },
  "r768": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column B))",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=122147990&loc=d3e611197-123010"
  },
  "r769": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=123364037&loc=d3e3115-115594"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580"
  },
  "r770": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629"
  },
  "r771": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99779-112916"
  },
  "r772": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99893-112916"
  },
  "r773": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=SL120174063-112916"
  },
  "r774": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 4))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r775": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "http://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663"
  },
  "r776": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "http://asc.fasb.org/extlink&oid=123360121&loc=d3e27327-108691"
  },
  "r777": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "980",
   "URI": "http://asc.fasb.org/extlink&oid=84167750&loc=d3e42232-110370"
  },
  "r778": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r779": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580"
  },
  "r780": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r781": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310"
  },
  "r782": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f"
  },
  "r783": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f"
  },
  "r784": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r785": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "1402"
  },
  "r786": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(b)",
   "Publisher": "SEC",
   "Section": "1402",
   "Subparagraph": "(1)"
  },
  "r787": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(b)",
   "Publisher": "SEC",
   "Section": "1402",
   "Subparagraph": "(2)"
  },
  "r788": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(b)",
   "Publisher": "SEC",
   "Section": "1402",
   "Subparagraph": "(3)"
  },
  "r789": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(c)",
   "Publisher": "SEC",
   "Section": "1402",
   "Subparagraph": "(2)(i)"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580"
  },
  "r790": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(c)",
   "Publisher": "SEC",
   "Section": "1402",
   "Subparagraph": "(2)(ii)"
  },
  "r791": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(c)",
   "Publisher": "SEC",
   "Section": "1402",
   "Subparagraph": "(2)(iii)"
  },
  "r792": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r793": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r794": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e557-108580"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(2))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(22))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(23))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(8))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.19)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  }
 },
 "version": "2.1"
}
