{
 "instance": {
  "tkls-20201231.htm": {
   "axisCustom": 0,
   "axisStandard": 9,
   "contextCount": 219,
   "dts": {
    "calculationLink": {
     "local": [
      "tkls-20201231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "tkls-20201231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "tkls-20201231.htm"
     ]
    },
    "labelLink": {
     "local": [
      "tkls-20201231_lab.xml"
     ],
     "remote": [
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-doc-2021-01-31.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "tkls-20201231_pre.xml"
     ]
    },
    "referenceLink": {
     "remote": [
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-ref-2021-01-31.xml"
     ]
    },
    "schema": {
     "local": [
      "tkls-20201231.xsd"
     ],
     "remote": [
      "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",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd",
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd",
      "https://xbrl.sec.gov/country/2021/country-2021.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd",
      "https://xbrl.sec.gov/dei/2021/dei-2021.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "https://xbrl.sec.gov/dei/2021/dei-2021_ref.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-parts-codification-2021-01-31.xsd",
      "https://xbrl.sec.gov/dei/2021/dei-2021_doc.xsd"
     ]
    }
   },
   "elementCount": 391,
   "entityCount": 1,
   "hidden": {
    "http://xbrl.sec.gov/dei/2021": 5,
    "total": 5
   },
   "keyCustom": 17,
   "keyStandard": 273,
   "memberCustom": 123,
   "memberStandard": 6,
   "nsprefix": "fil",
   "nsuri": "http://www.trutankless.com/20201231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "b",
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "000010 - Document - Document and Entity Information",
     "role": "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation",
     "shortName": "Document and Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "b",
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsAndNontradeReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000100 - Disclosure - Accounts Receivable, Net, Disclosure",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureAccountsReceivableNetDisclosure",
     "shortName": "Accounts Receivable, Net, Disclosure",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsAndNontradeReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000110 - Disclosure - Prepaid Consulting Expenses, Disclosure",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosure",
     "shortName": "Prepaid Consulting Expenses, Disclosure",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000120 - Disclosure - Related Party Disclosure",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosure",
     "shortName": "Related Party Disclosure",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000130 - Disclosure - Notes Payable Disclosure",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosure",
     "shortName": "Notes Payable Disclosure",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000140 - Disclosure - Commitments and Contingencies",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000150 - Disclosure - Stock Warrants Disclosure",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosure",
     "shortName": "Stock Warrants Disclosure",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000160 - Disclosure - Income Taxes Disclosure",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosure",
     "shortName": "Income Taxes Disclosure",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000170 - Disclosure - Stockholders' Equity Disclosure",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosure",
     "shortName": "Stockholders' Equity Disclosure",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000180 - Disclosure - Subsequent Events",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEvents",
     "shortName": "Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StartUpActivitiesCostPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000190 - Disclosure - Summary of Significant Accounting Policies: Organization Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesOrganizationPolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Organization Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StartUpActivitiesCostPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:Cash",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000020 - Statement - CONSOLIDATED BALANCE SHEETS",
     "role": "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets",
     "shortName": "CONSOLIDATED BALANCE SHEETS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:PrepaidExpenseCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000200 - Disclosure - Summary of Significant Accounting Policies: Consolidation, Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesConsolidationPolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Consolidation, Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PriorPeriodReclassificationAdjustmentDescription",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000210 - Disclosure - Summary of Significant Accounting Policies: Reclassifications Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesReclassificationsPolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Reclassifications Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PriorPeriodReclassificationAdjustmentDescription",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:UseOfEstimates",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000220 - Disclosure - Summary of Significant Accounting Policies: Use of Estimates (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesUseOfEstimatesPolicies",
     "shortName": "Summary of Significant Accounting Policies: Use of Estimates (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:UseOfEstimates",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000230 - Disclosure - Summary of Significant Accounting Policies: Cash and Cash Equivalents, Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Cash and Cash Equivalents, Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InternalUseSoftwarePolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000240 - Disclosure - Summary of Significant Accounting Policies: Website Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesWebsitePolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Website Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InternalUseSoftwarePolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000250 - Disclosure - Summary of Significant Accounting Policies: Stock-based Compensation Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Stock-based Compensation Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000260 - Disclosure - Summary of Significant Accounting Policies: Income Tax, Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesIncomeTaxPolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Income Tax, Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerSharePolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000270 - Disclosure - Summary of Significant Accounting Policies: Earnings Per Share Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesEarningsPerSharePolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Earnings Per Share Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerSharePolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReceivablesPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000280 - Disclosure - Summary of Significant Accounting Policies: Accounts receivable policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesAccountsReceivablePolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Accounts receivable policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReceivablesPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryCashFlowPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000290 - Disclosure - Summary of Significant Accounting Policies: Inventory policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesInventoryPolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Inventory policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryCashFlowPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockNoParValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "UsdPerShare",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000030 - Statement - CONSOLIDATED BALANCE SHEETS - Parenthetical",
     "role": "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheetsParenthetical",
     "shortName": "CONSOLIDATED BALANCE SHEETS - Parenthetical",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockNoParValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "UsdPerShare",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueRecognitionPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000300 - Disclosure - Summary of Significant Accounting Policies: Revenue Recognition Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Revenue Recognition Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueRecognitionPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueOfFinancialInstrumentsPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000310 - Disclosure - Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueOfFinancialInstrumentsPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000320 - Disclosure - Summary of Significant Accounting Policies: New Accounting Pronouncements, Policy (Policies)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesNewAccountingPronouncementsPolicyPolicies",
     "shortName": "Summary of Significant Accounting Policies: New Accounting Pronouncements, Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:FairValueOfFinancialInstrumentsPolicy",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000330 - Disclosure - Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Fair Value Measurements, Recurring basis 2020 (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicyFairValueMeasurementsRecurringBasis2020Tables",
     "shortName": "Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Fair Value Measurements, Recurring basis 2020 (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:FairValueOfFinancialInstrumentsPolicy",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:FairValueMeasurementsRecurringBasis2019TextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000340 - Disclosure - Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Fair Value Measurements, Recurring basis 2019 (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicyFairValueMeasurementsRecurringBasis2019Tables",
     "shortName": "Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Fair Value Measurements, Recurring basis 2019 (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:FairValueMeasurementsRecurringBasis2019TextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueConcentrationOfRiskTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000350 - Disclosure - Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Summary of the changes in fair value of the derivative financial instruments (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicySummaryOfTheChangesInFairValueOfTheDerivativeFinancialInstrumentsTables",
     "shortName": "Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Summary of the changes in fair value of the derivative financial instruments (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueConcentrationOfRiskTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000360 - Disclosure - Inventory Disclosure: Schedule of Inventory, Current (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosureScheduleOfInventoryCurrentTables",
     "shortName": "Inventory Disclosure: Schedule of Inventory, Current (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:AccountsAndNontradeReceivableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000370 - Disclosure - Accounts Receivable, Net, Disclosure: Schedule of Accounts Receivable, NET (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureAccountsReceivableNetDisclosureScheduleOfAccountsReceivableNetTables",
     "shortName": "Accounts Receivable, Net, Disclosure: Schedule of Accounts Receivable, NET (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:AccountsAndNontradeReceivableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000380 - Disclosure - Notes Payable Disclosure: Schedule of Notes Payable (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableTables",
     "shortName": "Notes Payable Disclosure: Schedule of Notes Payable (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtConversionsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000390 - Disclosure - Notes Payable Disclosure: Schedule of Convertible Notes Payable (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableTables",
     "shortName": "Notes Payable Disclosure: Schedule of Convertible Notes Payable (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtConversionsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000040 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS",
     "role": "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations",
     "shortName": "CONSOLIDATED STATEMENTS OF OPERATIONS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000400 - Disclosure - Notes Payable Disclosure: Fair Value Measurement Inputs and Valuation Techniques (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureFairValueMeasurementInputsAndValuationTechniquesTables",
     "shortName": "Notes Payable Disclosure: Fair Value Measurement Inputs and Valuation Techniques (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000410 - Disclosure - Commitments and Contingencies: Schedule of Future Minimum Rental Payments for Operating Leases (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTables",
     "shortName": "Commitments and Contingencies: Schedule of Future Minimum Rental Payments for Operating Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000420 - Disclosure - Stock Warrants Disclosure: Schedule of Warrants Activity (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureScheduleOfWarrantsActivityTables",
     "shortName": "Stock Warrants Disclosure: Schedule of Warrants Activity (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:StockWarrantsActivity2019TextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000430 - Disclosure - Stock Warrants Disclosure: Stock warrants activity 2019 (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureStockWarrantsActivity2019Tables",
     "shortName": "Stock Warrants Disclosure: Stock warrants activity 2019 (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:StockWarrantsActivity2019TextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000440 - Disclosure - Income Taxes Disclosure: Schedule of Deferred Tax Assets (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfDeferredTaxAssetsTables",
     "shortName": "Income Taxes Disclosure: Schedule of Deferred Tax Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000450 - Disclosure - Income Taxes Disclosure: Schedule of Effective Income Tax Rate Reconciliation (Tables)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfEffectiveIncomeTaxRateReconciliationTables",
     "shortName": "Income Taxes Disclosure: Schedule of Effective Income Tax Rate Reconciliation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:InternalUseSoftwarePolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentEstimatedUsefulLives",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000460 - Disclosure - Summary of Significant Accounting Policies: Website Policy (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesWebsitePolicyDetails",
     "shortName": "Summary of Significant Accounting Policies: Website Policy (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:InternalUseSoftwarePolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentEstimatedUsefulLives",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:EarningsPerSharePolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000470 - Disclosure - Summary of Significant Accounting Policies: Earnings Per Share Policy (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesEarningsPerSharePolicyDetails",
     "shortName": "Summary of Significant Accounting Policies: Earnings Per Share Policy (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:EarningsPerSharePolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "us-gaap:FairValueOfFinancialInstrumentsPolicy",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisObligations",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000480 - Disclosure - Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Fair Value Measurements, Recurring basis 2020 (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicyFairValueMeasurementsRecurringBasis2020Details",
     "shortName": "Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Fair Value Measurements, Recurring basis 2020 (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "us-gaap:FairValueOfFinancialInstrumentsPolicy",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisObligations",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000490 - Disclosure - Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Fair Value Measurements, Recurring basis 2019 (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicyFairValueMeasurementsRecurringBasis2019Details",
     "shortName": "Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Fair Value Measurements, Recurring basis 2019 (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E18_StEqComps-PrefStock",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000050 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' DEFICIT",
     "role": "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit",
     "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' DEFICIT",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E18_StEqComps-PrefStock",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "us-gaap:FairValueOfFinancialInstrumentsPolicy",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisObligations",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000500 - Disclosure - Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Summary of the changes in fair value of the derivative financial instruments (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicySummaryOfTheChangesInFairValueOfTheDerivativeFinancialInstrumentsDetails",
     "shortName": "Summary of Significant Accounting Policies: Fair Value of Financial Instruments Policy: Summary of the changes in fair value of the derivative financial instruments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:Cash",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000510 - Disclosure - Going Concern Disclosure (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureGoingConcernDisclosureDetails",
     "shortName": "Going Concern Disclosure (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryNet",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000520 - Disclosure - Inventory Disclosure: Schedule of Inventory, Current (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosureScheduleOfInventoryCurrentDetails",
     "shortName": "Inventory Disclosure: Schedule of Inventory, Current (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20_FvByAssetClass-FinishedGoods",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:InventoryNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:AccountsAndNontradeReceivableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableGrossNoncurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000530 - Disclosure - Accounts Receivable, Net, Disclosure: Schedule of Accounts Receivable, NET (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureAccountsReceivableNetDisclosureScheduleOfAccountsReceivableNetDetails",
     "shortName": "Accounts Receivable, Net, Disclosure: Schedule of Accounts Receivable, NET (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:AccountsAndNontradeReceivableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableGrossNoncurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:OtherAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PrepaidExpenseCurrentAndNoncurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000540 - Disclosure - Prepaid Consulting Expenses, Disclosure (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosureDetails",
     "shortName": "Prepaid Consulting Expenses, Disclosure (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:OtherAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PrepaidExpenseCurrentAndNoncurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NotesPayableRelatedPartiesClassifiedCurrent",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000550 - Disclosure - Related Party Disclosure (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
     "shortName": "Related Party Disclosure (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:InterestExpenseRelatedParty",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentUnamortizedDiscountCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000560 - Disclosure - Notes Payable Disclosure: Schedule of Notes Payable (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails",
     "shortName": "Notes Payable Disclosure: Schedule of Notes Payable (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentUnamortizedDiscountCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "fil:StockIssuedForSettlementOfDebtValue",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000570 - Disclosure - Notes Payable Disclosure (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
     "shortName": "Notes Payable Disclosure (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20_DebtInstr-ConvertibleNoteEnteredIntoJune22016",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ConvertibleNotesPayableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtConversionsTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentUnamortizedDiscountNoncurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000580 - Disclosure - Notes Payable Disclosure: Schedule of Convertible Notes Payable (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails",
     "shortName": "Notes Payable Disclosure: Schedule of Convertible Notes Payable (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtConversionsTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentUnamortizedDiscountNoncurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:FinanceLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000590 - Disclosure - Commitments and Contingencies (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesDetails",
     "shortName": "Commitments and Contingencies (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20_OtherCommitments-OfficeLeaseAgreement",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:FinanceLeaseRightOfUseAsset",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000060 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "role": "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows",
     "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:IssuanceOfStockAndWarrantsForServicesOrClaims",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasesFutureMinimumPaymentsDue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000600 - Disclosure - Commitments and Contingencies: Schedule of Future Minimum Rental Payments for Operating Leases (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesDetails",
     "shortName": "Commitments and Contingencies: Schedule of Future Minimum Rental Payments for Operating Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasesFutureMinimumPaymentsDue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NoncashOrPartNoncashAcquisitionNoncashFinancialOrEquityInstrumentConsiderationWarrantsIssued1",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000610 - Disclosure - Stock Warrants Disclosure (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails",
     "shortName": "Stock Warrants Disclosure (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "p",
       "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20_EqInterestIssuedOrIssuableByType-GrantedJanuary82020",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:NoncashOrPartNoncashAcquisitionNoncashFinancialOrEquityInstrumentConsiderationWarrantsIssued1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ClassOfWarrantOrRightOutstanding",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000620 - Disclosure - Stock Warrants Disclosure: Schedule of Warrants Activity (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureScheduleOfWarrantsActivityDetails",
     "shortName": "Stock Warrants Disclosure: Schedule of Warrants Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "lang": null,
      "name": "fil:WarrantsCanceled",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ClassOfWarrantOrRightOutstanding",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000630 - Disclosure - Stock Warrants Disclosure: Stock warrants activity 2019 (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureStockWarrantsActivity2019Details",
     "shortName": "Stock Warrants Disclosure: Stock warrants activity 2019 (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsOperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000640 - Disclosure - Income Taxes Disclosure: Schedule of Deferred Tax Assets (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfDeferredTaxAssetsDetails",
     "shortName": "Income Taxes Disclosure: Schedule of Deferred Tax Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsOperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000650 - Disclosure - Income Taxes Disclosure: Schedule of Effective Income Tax Rate Reconciliation (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfEffectiveIncomeTaxRateReconciliationDetails",
     "shortName": "Income Taxes Disclosure: Schedule of Effective Income Tax Rate Reconciliation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000660 - Disclosure - Income Taxes Disclosure (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureDetails",
     "shortName": "Income Taxes Disclosure (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "UsdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000670 - Disclosure - Stockholders' Equity Disclosure (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
     "shortName": "Stockholders' Equity Disclosure (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "E20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "UsdPerShare",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProceedsFromConvertibleDebt",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000680 - Disclosure - Subsequent Events (Details)",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails",
     "shortName": "Subsequent Events (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:SubsequentEventsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "D210102_210601_SubsequentEventType-PmtExtensionConvertibleNoteJan42021",
      "decimals": "INF",
      "lang": null,
      "name": "fil:StockIssuedForDebtDiscountsAndExtensionsShares",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000070 - Disclosure - Summary of Significant Accounting Policies",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPolicies",
     "shortName": "Summary of Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubstantialDoubtAboutGoingConcernTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000080 - Disclosure - Going Concern Disclosure",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureGoingConcernDisclosure",
     "shortName": "Going Concern Disclosure",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubstantialDoubtAboutGoingConcernTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000090 - Disclosure - Inventory Disclosure",
     "role": "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosure",
     "shortName": "Inventory Disclosure",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tkls-20201231.htm",
      "contextRef": "Y20",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 129,
   "tag": {
    "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"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Fiscal Year End"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r375",
      "r376",
      "r377"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "gYearItemType"
    },
    "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"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r378"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r379"
     ],
     "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": "Registrant CIK"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r379"
     ],
     "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"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r380"
     ],
     "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"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r379"
     ],
     "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"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r379"
     ],
     "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"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r379"
     ],
     "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"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [],
     "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"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "fil_AlsoIssuedDuring2020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Also Issued during 2020, during the indicated time period.",
        "label": "Also Issued during 2020"
       }
      }
     },
     "localname": "AlsoIssuedDuring2020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_AlsoIssuedJune152021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Also issued June 15, 2021, during the indicated time period.",
        "label": "Also issued June 15, 2021"
       }
      }
     },
     "localname": "AlsoIssuedJune152021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConsiderationForTheConsolidationOfThreeNotesPayableToOnej120Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Consideration for the consolidation of three notes payable to one - Jan 1, 2020, during the indicated time period.",
        "label": "Consideration for the consolidation of three notes payable to one - Jan 1, 2020"
       }
      }
     },
     "localname": "ConsiderationForTheConsolidationOfThreeNotesPayableToOnej120Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConsiderationForTheConsolidationOfTwoNotesPayableToOneJan12020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Consideration for the consolidation of two notes payable to one - Jan 1, 2020, during the indicated time period.",
        "label": "Consideration for the consolidation of two notes payable to one - Jan 1, 2020"
       }
      }
     },
     "localname": "ConsiderationForTheConsolidationOfTwoNotesPayableToOneJan12020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteEnteredIntoJan62021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note entered into Jan 6, 2021, during the indicated time period.",
        "label": "Convertible note entered into Jan 6, 2021"
       }
      }
     },
     "localname": "ConvertibleNoteEnteredIntoJan62021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteEnteredIntoJune22016Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note entered into June 2, 2016, during the indicated time period.",
        "label": "Convertible note entered into June 2, 2016"
       }
      }
     },
     "localname": "ConvertibleNoteEnteredIntoJune22016Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteEnteredIntoSept172018Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note entered into Sept 17, 2018, during the indicated time period.",
        "label": "Convertible note entered into Sept 17, 2018"
       }
      }
     },
     "localname": "ConvertibleNoteEnteredIntoSept172018Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedApril302020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued April 30, 2020, during the indicated time period.",
        "label": "Convertible note issued April 30, 2020"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedApril302020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedFeb152018Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued Feb 15, 2018, during the indicated time period.",
        "label": "Convertible note issued Feb 15, 2018"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedFeb152018Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedFeb192019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued Feb 19, 2019, during the indicated time period.",
        "label": "Convertible note issued Feb 19, 2019"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedFeb192019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedFeb82019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued Feb 8, 2019, during the indicated time period.",
        "label": "Convertible note issued Feb 8, 2019"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedFeb82019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedJan252019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued Jan 25, 2019, during the indicated time period.",
        "label": "Convertible note issued Jan 25, 2019"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedJan252019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedJan82020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued Jan 8, 2020, during the indicated time period.",
        "label": "Convertible note issued Jan 8, 2020"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedJan82020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedMay20172Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued May 2017(2), during the indicated time period.",
        "label": "Convertible note issued May 2017(2)"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedMay20172Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedMay20173Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued May 2017(3), during the indicated time period.",
        "label": "Convertible note issued May 2017(3)"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedMay20173Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedMay2017Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued May 2017, during the indicated time period.",
        "label": "Convertible note issued May 2017"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedMay2017Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedMay52020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued May 5, 2020, during the indicated time period.",
        "label": "Convertible note issued May 5, 2020"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedMay52020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedNov192019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued Nov 19, 2019, during the indicated time period.",
        "label": "Convertible note issued Nov 19, 2019"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedNov192019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedNov52019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued Nov 5, 2019, during the indicated time period.",
        "label": "Convertible note issued Nov 5, 2019"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedNov52019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNoteIssuedOct182019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note issued Oct 18, 2019, during the indicated time period.",
        "label": "Convertible note issued Oct 18, 2019"
       }
      }
     },
     "localname": "ConvertibleNoteIssuedOct182019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueApril2022Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due April 2022, during the indicated time period.",
        "label": "Convertible note payable due April 2022"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueApril2022Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueAug2019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due Aug 2019, during the indicated time period.",
        "label": "Convertible note payable due Aug 2019"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueAug2019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueFeb20202Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due Feb 2020(2), during the indicated time period.",
        "label": "Convertible note payable due Feb 2020(2)"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueFeb20202Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueFeb2020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due Feb 2020, during the indicated time period.",
        "label": "Convertible note payable due Feb 2020"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueFeb2020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueFeb20212Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due Feb 2021(2), during the indicated time period.",
        "label": "Convertible note payable due Feb 2021(2)"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueFeb20212Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueFeb2021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due Feb 2021, during the indicated time period.",
        "label": "Convertible note payable due Feb 2021"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueFeb2021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueJan2020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due Jan 2020, during the indicated time period.",
        "label": "Convertible note payable due Jan 2020"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueJan2020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueJune2022Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due June 2022, during the indicated time period.",
        "label": "Convertible note payable due June 2022"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueJune2022Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueMay20202Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due May 2020(2), during the indicated time period.",
        "label": "Convertible note payable due May 2020(2)"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueMay20202Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueMay20203Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due May 2020(3), during the indicated time period.",
        "label": "Convertible note payable due May 2020(3)"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueMay20203Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueMay20204Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due May 2020(4), during the indicated time period.",
        "label": "Convertible note payable due May 2020(4)"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueMay20204Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueMay2020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due May 2020, during the indicated time period.",
        "label": "Convertible note payable due May 2020"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueMay2020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueMay2021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due May 2021, during the indicated time period.",
        "label": "Convertible note payable due May 2021"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueMay2021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueOct2020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due Oct 2020, during the indicated time period.",
        "label": "Convertible note payable due Oct 2020"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueOct2020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueOct20212Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due Oct 2021(2), during the indicated time period.",
        "label": "Convertible note payable due Oct 2021(2)"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueOct20212Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueOct2021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due Oct 2021, during the indicated time period.",
        "label": "Convertible note payable due Oct 2021"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueOct2021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotePayableDueUnknownMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible note payable due Unknown, during the indicated time period.",
        "label": "Convertible note payable due Unknown"
       }
      }
     },
     "localname": "ConvertibleNotePayableDueUnknownMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertibleNotesIssuedToVariousAccreditedInvestorsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible notes issued to various accredited investors, during the indicated time period.",
        "label": "Convertible notes issued to various accredited investors"
       }
      }
     },
     "localname": "ConvertibleNotesIssuedToVariousAccreditedInvestorsMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertiblePromissoryNote12InterestDueNov2019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible promissory note, 12% interest, due Nov 2019, during the indicated time period.",
        "label": "Convertible promissory note, 12% interest, due Nov 2019"
       }
      }
     },
     "localname": "ConvertiblePromissoryNote12InterestDueNov2019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ConvertiblePromissoryNotesAndWarrantsIssuedIn2018Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Convertible promissory notes and warrants, issued in 2018, during the indicated time period.",
        "label": "Convertible promissory notes and warrants, issued in 2018"
       }
      }
     },
     "localname": "ConvertiblePromissoryNotesAndWarrantsIssuedIn2018Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ExtensionOfJan302019NoteMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Extension of Jan 30, 2019 Note, during the indicated time period.",
        "label": "Extension of Jan 30, 2019 Note"
       }
      }
     },
     "localname": "ExtensionOfJan302019NoteMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_FairValueMeasurementsRecurringBasis2019TextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Fair Value Measurements, Recurring basis 2019, during the indicated time period.",
        "label": "Fair Value Measurements, Recurring basis 2019"
       }
      }
     },
     "localname": "FairValueMeasurementsRecurringBasis2019TextBlock",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicyFairValueMeasurementsRecurringBasis2019Tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_FinishedGoodsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Finished goods, during the indicated time period.",
        "label": "Finished goods"
       }
      }
     },
     "localname": "FinishedGoodsMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosureScheduleOfInventoryCurrentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_GrantedApril292020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Granted April 29, 2020, during the indicated time period.",
        "label": "Granted April 29, 2020"
       }
      }
     },
     "localname": "GrantedApril292020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_GrantedFebruary52020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Granted February 5, 2020, during the indicated time period.",
        "label": "Granted February 5, 2020"
       }
      }
     },
     "localname": "GrantedFebruary52020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_GrantedJanuary820202Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Granted January 8, 2020(2), during the indicated time period.",
        "label": "Granted January 8, 2020(2)"
       }
      }
     },
     "localname": "GrantedJanuary820202Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_GrantedJanuary82020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Granted January 8, 2020, during the indicated time period.",
        "label": "Granted January 8, 2020"
       }
      }
     },
     "localname": "GrantedJanuary82020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_GrantedMay72020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Granted May 7, 2020, during the indicated time period.",
        "label": "Granted May 7, 2020"
       }
      }
     },
     "localname": "GrantedMay72020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_Imarch92020PerCancelledConsultingAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the IMarch 9 2020, per cancelled consulting agreement, during the indicated time period.",
        "label": "IMarch 9 2020, per cancelled consulting agreement"
       }
      }
     },
     "localname": "Imarch92020PerCancelledConsultingAgreementMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_InterestExpenseConvertibleDebtMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Interest expense - convertible debt, during the indicated time period.",
        "label": "Interest expense - convertible debt"
       }
      }
     },
     "localname": "InterestExpenseConvertibleDebtMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_InterestExpenseNotesPayableMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Interest expense, notes payable, during the indicated time period.",
        "label": "Interest expense, notes payable"
       }
      }
     },
     "localname": "InterestExpenseNotesPayableMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_InterestExpensePayrollProtectionLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Interest expense, payroll protection loan, during the indicated time period.",
        "label": "Interest expense, payroll protection loan"
       }
      }
     },
     "localname": "InterestExpensePayrollProtectionLoanMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IntoCommonSharesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Into Common Shares, during the indicated time period.",
        "label": "Into Common Shares"
       }
      }
     },
     "localname": "IntoCommonSharesMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IntoWarrantsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Into Warrants, during the indicated time period.",
        "label": "Into Warrants"
       }
      }
     },
     "localname": "IntoWarrantsMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedAugust102020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued August 10, 2020, during the indicated time period.",
        "label": "Issued August 10, 2020"
       }
      }
     },
     "localname": "IssuedAugust102020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedAugust12020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued August 1, 2020, during the indicated time period.",
        "label": "Issued August 1, 2020"
       }
      }
     },
     "localname": "IssuedAugust12020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedAugust202020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued August 20, 2020, during the indicated time period.",
        "label": "Issued August 20, 2020"
       }
      }
     },
     "localname": "IssuedAugust202020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedAugust232020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued August 23, 2020, during the indicated time period.",
        "label": "Issued August 23, 2020"
       }
      }
     },
     "localname": "IssuedAugust232020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedAugust252020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued August 25, 2020, during the indicated time period.",
        "label": "Issued August 25, 2020"
       }
      }
     },
     "localname": "IssuedAugust252020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedAugust302020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued August 30, 2020, during the indicated time period.",
        "label": "Issued August 30, 2020"
       }
      }
     },
     "localname": "IssuedAugust302020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedAugust312020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued August 31, 2020, during the indicated time period.",
        "label": "Issued August 31, 2020"
       }
      }
     },
     "localname": "IssuedAugust312020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedAugust32020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued August 3, 2020, during the indicated time period.",
        "label": "Issued August 3, 2020"
       }
      }
     },
     "localname": "IssuedAugust32020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedDecember162020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued December 16, 2020, during the indicated time period.",
        "label": "Issued December 16, 2020"
       }
      }
     },
     "localname": "IssuedDecember162020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedDecember312020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued December 31, 2020, during the indicated time period.",
        "label": "Issued December 31, 2020"
       }
      }
     },
     "localname": "IssuedDecember312020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedDuring2020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued during 2020, during the indicated time period.",
        "label": "Issued during 2020"
       }
      }
     },
     "localname": "IssuedDuring2020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedFeb172021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued Feb 17, 2021, during the indicated time period.",
        "label": "Issued Feb 17, 2021"
       }
      }
     },
     "localname": "IssuedFeb172021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedFeb242021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued Feb 24, 2021, during the indicated time period.",
        "label": "Issued Feb 24, 2021"
       }
      }
     },
     "localname": "IssuedFeb242021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedFeb42021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued Feb 4, 2021, during the indicated time period.",
        "label": "Issued Feb 4, 2021"
       }
      }
     },
     "localname": "IssuedFeb42021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedFeb82021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued Feb 8, 2021, during the indicated time period.",
        "label": "Issued Feb 8, 2021"
       }
      }
     },
     "localname": "IssuedFeb82021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedFebruary52020ForSettlementOfDebtMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued February 5, 2020, for settlement of debt, during the indicated time period.",
        "label": "Issued February 5, 2020, for settlement of debt"
       }
      }
     },
     "localname": "IssuedFebruary52020ForSettlementOfDebtMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedFebruary52020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued February 5, 2020, during the indicated time period.",
        "label": "Issued February 5, 2020"
       }
      }
     },
     "localname": "IssuedFebruary52020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedJanuary302020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued January 30, 2020, during the indicated time period.",
        "label": "Issued January 30, 2020"
       }
      }
     },
     "localname": "IssuedJanuary302020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedJanuary32020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued January 3, 2020, during the indicated time period.",
        "label": "Issued January 3, 2020"
       }
      }
     },
     "localname": "IssuedJanuary32020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedJuly302020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued July 30, 2020, during the indicated time period.",
        "label": "Issued July 30, 2020"
       }
      }
     },
     "localname": "IssuedJuly302020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedJuly92020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued July 9, 2020, during the indicated time period.",
        "label": "Issued July 9, 2020"
       }
      }
     },
     "localname": "IssuedJuly92020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedJune122020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued June 12, 2020, during the indicated time period.",
        "label": "Issued June 12, 2020"
       }
      }
     },
     "localname": "IssuedJune122020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedJune152021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued June 15, 2021, during the indicated time period.",
        "label": "Issued June 15, 2021"
       }
      }
     },
     "localname": "IssuedJune152021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedJune52020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued June 5, 2020, during the indicated time period.",
        "label": "Issued June 5, 2020"
       }
      }
     },
     "localname": "IssuedJune52020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedJune920202Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued June 9, 2020(2), during the indicated time period.",
        "label": "Issued June 9, 2020(2)"
       }
      }
     },
     "localname": "IssuedJune920202Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedMar172021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued Mar 17, 2021, during the indicated time period.",
        "label": "Issued Mar 17, 2021"
       }
      }
     },
     "localname": "IssuedMar172021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedMarch102020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued March 10, 2020, during the indicated time period.",
        "label": "Issued March 10, 2020"
       }
      }
     },
     "localname": "IssuedMarch102020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedMarch112020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued March 11, 2020, during the indicated time period.",
        "label": "Issued March 11, 2020"
       }
      }
     },
     "localname": "IssuedMarch112020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedMay12020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued May 1, 2020, during the indicated time period.",
        "label": "Issued May 1, 2020"
       }
      }
     },
     "localname": "IssuedMay12020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedOctober12020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued October 1, 2020, during the indicated time period.",
        "label": "Issued October 1, 2020"
       }
      }
     },
     "localname": "IssuedOctober12020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedOctober222020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued October 22, 2020, during the indicated time period.",
        "label": "Issued October 22, 2020"
       }
      }
     },
     "localname": "IssuedOctober222020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedSeptember12020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued September 1, 2020, during the indicated time period.",
        "label": "Issued September 1, 2020"
       }
      }
     },
     "localname": "IssuedSeptember12020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedSeptember132020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued September 13, 2020, during the indicated time period.",
        "label": "Issued September 13, 2020"
       }
      }
     },
     "localname": "IssuedSeptember132020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedSeptember1520202Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued September 15, 2020(2), during the indicated time period.",
        "label": "Issued September 15, 2020(2)"
       }
      }
     },
     "localname": "IssuedSeptember1520202Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedSeptember152020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued September 15, 2020, during the indicated time period.",
        "label": "Issued September 15, 2020"
       }
      }
     },
     "localname": "IssuedSeptember152020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedSeptember282020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued September 28, 2020, during the indicated time period.",
        "label": "Issued September 28, 2020"
       }
      }
     },
     "localname": "IssuedSeptember282020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedSeptember292020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued September 29, 2020, during the indicated time period.",
        "label": "Issued September 29, 2020"
       }
      }
     },
     "localname": "IssuedSeptember292020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedSeptember302020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued September 30, 2020, during the indicated time period.",
        "label": "Issued September 30, 2020"
       }
      }
     },
     "localname": "IssuedSeptember302020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedSeptember42020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued September 4, 2020, during the indicated time period.",
        "label": "Issued September 4, 2020"
       }
      }
     },
     "localname": "IssuedSeptember42020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_IssuedSeptember82020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Issued September 8, 2020, during the indicated time period.",
        "label": "Issued September 8, 2020"
       }
      }
     },
     "localname": "IssuedSeptember82020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_LeaseAgreementWithTemplarAssetGroupLlcMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Lease agreement with Templar Asset Group, LLC, during the indicated time period.",
        "label": "Lease agreement with Templar Asset Group, LLC"
       }
      }
     },
     "localname": "LeaseAgreementWithTemplarAssetGroupLlcMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableEnteredIntoAugust202020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable entered into August 20, 2020, during the indicated time period.",
        "label": "Note payable entered into August 20, 2020"
       }
      }
     },
     "localname": "NotePayableEnteredIntoAugust202020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableEnteredIntoJan82021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable entered into Jan 8, 2021, during the indicated time period.",
        "label": "Note payable entered into Jan 8, 2021"
       }
      }
     },
     "localname": "NotePayableEnteredIntoJan82021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableEnteredIntoJune22020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable entered into June 2, 2020, during the indicated time period.",
        "label": "Note payable entered into June 2, 2020"
       }
      }
     },
     "localname": "NotePayableEnteredIntoJune22020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableEnteredIntoMar122021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable entered into Mar 12, 2021, during the indicated time period.",
        "label": "Note payable entered into Mar 12, 2021"
       }
      }
     },
     "localname": "NotePayableEnteredIntoMar122021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableEnteredIntoMar32021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable entered into Mar 3, 2021, during the indicated time period.",
        "label": "Note payable entered into Mar 3, 2021"
       }
      }
     },
     "localname": "NotePayableEnteredIntoMar32021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableEnteredIntoMarch12019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable entered into March 1, 2019, during the indicated time period.",
        "label": "Note payable entered into March 1, 2019"
       }
      }
     },
     "localname": "NotePayableEnteredIntoMarch12019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableEnteredIntoMarch42020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable entered into March 4, 2020, during the indicated time period.",
        "label": "Note payable entered into March 4, 2020"
       }
      }
     },
     "localname": "NotePayableEnteredIntoMarch42020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableEnteredJune152021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable entered June 15, 2021, during the indicated time period.",
        "label": "Note payable entered June 15, 2021"
       }
      }
     },
     "localname": "NotePayableEnteredJune152021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableSecured12InterestDueJan2020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable, secured, 12% interest, due Jan 2020, during the indicated time period.",
        "label": "Note payable, secured, 12% interest, due Jan 2020"
       }
      }
     },
     "localname": "NotePayableSecured12InterestDueJan2020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableSecured12InterestDueJul20202Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable, secured, 12% interest, due July 2020(2), during the indicated time period.",
        "label": "Note payable, secured, 12% interest, due July 2020(2)"
       }
      }
     },
     "localname": "NotePayableSecured12InterestDueJul20202Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableSecured12InterestDueJul20203Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable, secured, 12% interest, due Jul 2020(3), during the indicated time period.",
        "label": "Note payable, secured, 12% interest, due Jul 2020(3)"
       }
      }
     },
     "localname": "NotePayableSecured12InterestDueJul20203Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableSecured12InterestDueJul2020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable, secured, 12% interest, due July 2020, during the indicated time period.",
        "label": "Note payable, secured, 12% interest, due July 2020"
       }
      }
     },
     "localname": "NotePayableSecured12InterestDueJul2020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableSecured12InterestDueJune120212Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable, secured, 12% interest, due June 1, 2021(2), during the indicated time period.",
        "label": "Note payable, secured, 12% interest, due June 1, 2021(2)"
       }
      }
     },
     "localname": "NotePayableSecured12InterestDueJune120212Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableSecured12InterestDueJune12021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable, secured, 12% interest, due June 1, 2021, during the indicated time period.",
        "label": "Note payable, secured, 12% interest, due June 1, 2021"
       }
      }
     },
     "localname": "NotePayableSecured12InterestDueJune12021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableSecured12InterestDueMarch2020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable, secured, 12% interest, due March 2020, during the indicated time period.",
        "label": "Note payable, secured, 12% interest, due March 2020"
       }
      }
     },
     "localname": "NotePayableSecured12InterestDueMarch2020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotePayableSecured12InterestDueOct2019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Note payable, secured, 12% interest, due Oct 2019, during the indicated time period.",
        "label": "Note payable, secured, 12% interest, due Oct 2019"
       }
      }
     },
     "localname": "NotePayableSecured12InterestDueOct2019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotesPayableDueToOfficersAndDirectorsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Notes payable due to officers and directors, during the indicated time period.",
        "label": "Notes payable due to officers and directors"
       }
      }
     },
     "localname": "NotesPayableDueToOfficersAndDirectorsMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotesPayableEnteredIntoJan302019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Notes payable entered into Jan 30, 2019, during the indicated time period.",
        "label": "Notes payable entered into Jan 30, 2019"
       }
      }
     },
     "localname": "NotesPayableEnteredIntoJan302019Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotesPayableSecured10InterestDueJune2021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Notes payable, secured, 10% interest, due June 2021, during the indicated time period.",
        "label": "Notes payable, secured, 10% interest, due June 2021"
       }
      }
     },
     "localname": "NotesPayableSecured10InterestDueJune2021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NotesPayableSecured12InterestDueAugust2021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Notes payable, secured, 12% interest, due August 2021, during the indicated time period.",
        "label": "Notes payable, secured, 12% interest, due August 2021"
       }
      }
     },
     "localname": "NotesPayableSecured12InterestDueAugust2021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_OfficeLeaseAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Office lease agreement, during the indicated time period.",
        "label": "Office lease agreement"
       }
      }
     },
     "localname": "OfficeLeaseAgreementMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_PaymentExtensionConvertibleNoteJan42021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Payment extension, convertible note Jan 4, 2021, during the indicated time period.",
        "label": "Payment extension, convertible note Jan 4, 2021"
       }
      }
     },
     "localname": "PaymentExtensionConvertibleNoteJan42021Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_PreferredStockAuthSeriesB": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Preferred stock Authorized, Series B (number of shares), as of the indicated date.",
        "label": "Preferred stock Authorized, Series B"
       }
      }
     },
     "localname": "PreferredStockAuthSeriesB",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "fil_PreferredStockOutstandingSeriesB": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Preferred stock Outstanding, Series B (number of shares), as of the indicated date.",
        "label": "Preferred stock Outstanding, Series B"
       }
      }
     },
     "localname": "PreferredStockOutstandingSeriesB",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "fil_PreferredStockParValueSeriesB": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the per-share monetary value of Preferred stock Par Value, Series B, as of the indicated date.",
        "label": "Preferred stock Par Value, Series B"
       }
      }
     },
     "localname": "PreferredStockParValueSeriesB",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "fil_PreferredStockValueSeriesB": {
     "auth_ref": [],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Preferred stock value, Series B, as of the indicated date.",
        "label": "Preferred stock value, Series B"
       }
      }
     },
     "localname": "PreferredStockValueSeriesB",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_PrepaidConsultingExpensesVariousAgreementsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Prepaid consulting expenses, various agreements, during the indicated time period.",
        "label": "Prepaid consulting expenses, various agreements"
       }
      }
     },
     "localname": "PrepaidConsultingExpensesVariousAgreementsMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ReceivedAndCanceledJune102020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Received and canceled, June 10, 2020, during the indicated time period.",
        "label": "Received and canceled, June 10, 2020"
       }
      }
     },
     "localname": "ReceivedAndCanceledJune102020Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ReclassificationOfConvertibleNotesPayableToNotesPayable": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Reclassification of convertible notes payable to notes payable, during the indicated time period.",
        "label": "Reclassification of convertible notes payable to notes payable"
       }
      }
     },
     "localname": "ReclassificationOfConvertibleNotesPayableToNotesPayable",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_ReclassificationOfConvertibleNotesPayableToNotesPayableRelatedParty": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Reclassification of convertible notes payable to notes payable - related party, during the indicated time period.",
        "label": "Reclassification of convertible notes payable to notes payable - related party"
       }
      }
     },
     "localname": "ReclassificationOfConvertibleNotesPayableToNotesPayableRelatedParty",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_RecognitionOfDerivativeLiability": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Recognition of derivative liability, during the indicated time period.",
        "label": "Recognition of derivative liability"
       }
      }
     },
     "localname": "RecognitionOfDerivativeLiability",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_RescissionAndRetirementOfSharesForDebtShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Rescission and retirement of shares for debt, Shares (number of shares), during the indicated time period.",
        "label": "Rescission and retirement of shares for debt, Shares"
       }
      }
     },
     "localname": "RescissionAndRetirementOfSharesForDebtShares",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "sharesItemType"
    },
    "fil_RescissionAndRetirementOfSharesForDebtValue": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Rescission and retirement of shares for debt, Value, during the indicated time period.",
        "label": "Rescission and retirement of shares for debt, Value"
       }
      }
     },
     "localname": "RescissionAndRetirementOfSharesForDebtValue",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_SeriesA1Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Series A, during the indicated time period.",
        "label": "Series A"
       }
      }
     },
     "localname": "SeriesA1Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_SeriesB1Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Series B, during the indicated time period.",
        "label": "Series B"
       }
      }
     },
     "localname": "SeriesB1Member",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_SeriesBToCeoMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Series B - to CEO, during the indicated time period.",
        "label": "Series B - to CEO"
       }
      }
     },
     "localname": "SeriesBToCeoMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_SeriesBToCfoMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Series B - to CFO, during the indicated time period.",
        "label": "Series B - to CFO"
       }
      }
     },
     "localname": "SeriesBToCfoMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_SettlementOfNotesPayableAndAccruedInterestForStockPayable": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Settlement of notes payable and accrued interest for stock payable, during the indicated time period.",
        "label": "Settlement of notes payable and accrued interest for stock payable"
       }
      }
     },
     "localname": "SettlementOfNotesPayableAndAccruedInterestForStockPayable",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_StockIssuedForDebtDiscountsAndExtensionsShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Stock issued for debt discounts and extensions, shares (number of shares), during the indicated time period.",
        "label": "Stock issued for debt discounts and extensions, shares"
       }
      }
     },
     "localname": "StockIssuedForDebtDiscountsAndExtensionsShares",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "sharesItemType"
    },
    "fil_StockIssuedForDebtDiscountsAndExtensionsValue": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Stock issued for debt discounts and extensions, value, during the indicated time period.",
        "label": "Stock issued for debt discounts and extensions, value"
       }
      }
     },
     "localname": "StockIssuedForDebtDiscountsAndExtensionsValue",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_StockIssuedForSettlementOfDebtShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Stock issued for settlement of debt, shares (number of shares), during the indicated time period.",
        "label": "Stock issued for settlement of debt, shares"
       }
      }
     },
     "localname": "StockIssuedForSettlementOfDebtShares",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "sharesItemType"
    },
    "fil_StockIssuedForSettlementOfDebtValue": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Stock issued for settlement of debt, value, during the indicated time period.",
        "label": "Stock issued for settlement of debt, value"
       }
      }
     },
     "localname": "StockIssuedForSettlementOfDebtValue",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_StockWarrantsActivity2019TextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Stock warrants activity 2019, during the indicated time period.",
        "label": "Stock warrants activity 2019"
       }
      }
     },
     "localname": "StockWarrantsActivity2019TextBlock",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureStockWarrantsActivity2019Tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_SubscriptionsPayableMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Subscriptions Payable, during the indicated time period.",
        "label": "Subscriptions Payable"
       }
      }
     },
     "localname": "SubscriptionsPayableMember",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_WarrantsCanceled": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Warrants canceled (number of shares), during the indicated time period.",
        "label": "Warrants canceled"
       }
      }
     },
     "localname": "WarrantsCanceled",
     "nsuri": "http://www.trutankless.com/20201231",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureScheduleOfWarrantsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_AccountsAndNontradeReceivableTextBlock": {
     "auth_ref": [
      "r151",
      "r157"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for accounts receivable, contract receivable, receivable held-for-sale, and nontrade receivable.",
        "label": "Accounts Receivable, Net, Disclosure"
       }
      }
     },
     "localname": "AccountsAndNontradeReceivableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureAccountsReceivableNetDisclosure"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r40"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.",
        "label": "Accounts payable and accrued liabilities"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableRelatedPartiesCurrent": {
     "auth_ref": [
      "r38",
      "r95",
      "r326",
      "r327"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount for accounts payable to related parties. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued interest payable - related party"
       }
      }
     },
     "localname": "AccountsPayableRelatedPartiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableGrossNoncurrent": {
     "auth_ref": [
      "r142",
      "r146",
      "r154",
      "r156"
     ],
     "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 noncurrent.",
        "label": "Accounts receivable, gross"
       }
      }
     },
     "localname": "AccountsReceivableGrossNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureAccountsReceivableNetDisclosureScheduleOfAccountsReceivableNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r7",
      "r25",
      "r142",
      "r143"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 2.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, net"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureAccountsReceivableNetDisclosureScheduleOfAccountsReceivableNetDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapital": {
     "auth_ref": [
      "r26",
      "r245",
      "r332"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "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"
       }
      }
     },
     "localname": "AdditionalPaidInCapital",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r98",
      "r99",
      "r100",
      "r242",
      "r243",
      "r244",
      "r283"
     ],
     "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"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature": {
     "auth_ref": [
      "r227",
      "r233",
      "r263"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in additional paid in capital (APIC) resulting from recognition of deferred taxes for convertible debt with a beneficial conversion feature.",
        "label": "Derivative written off to additional paid in capital"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net loss to net cash provided by operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableNoncurrent": {
     "auth_ref": [
      "r31",
      "r145",
      "r154"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as noncurrent.",
        "label": "Allowance for doubtful accounts receivable",
        "negatedLabel": "Allowance for doubtful accounts receivable"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureAccountsReceivableNetDisclosureScheduleOfAccountsReceivableNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": {
     "auth_ref": [
      "r155"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance.",
        "label": "Allowance for doubtful accounts"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfDebtDiscountPremium": {
     "auth_ref": [
      "r66",
      "r76",
      "r203",
      "r308"
     ],
     "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": "Debt discount amortized",
        "verboseLabel": "Debt discount amortized"
       }
      }
     },
     "localname": "AmortizationOfDebtDiscountPremium",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfFinancingCosts": {
     "auth_ref": [
      "r62",
      "r76",
      "r203",
      "r309"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to debt issuance costs.",
        "label": "Amortization of debt discount and finance expense"
       }
      }
     },
     "localname": "AmortizationOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r114"
     ],
     "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 Stock"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesEarningsPerSharePolicyDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": {
     "auth_ref": [
      "r114"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of antidilutive security.",
        "label": "Antidilutive Securities [Axis]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesEarningsPerSharePolicyDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AntidilutiveSecuritiesNameDomain": {
     "auth_ref": [
      "r114"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented.",
        "label": "Antidilutive Securities, Name"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesEarningsPerSharePolicyDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r92",
      "r128",
      "r131",
      "r137",
      "r152",
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r277",
      "r280",
      "r299",
      "r330",
      "r332",
      "r343",
      "r354"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "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": "Total assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ASSETS"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r9",
      "r11",
      "r50",
      "r92",
      "r152",
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r277",
      "r280",
      "r299",
      "r330",
      "r332"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "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": "Total current assets",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current assets"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CapitalLeaseObligationsCurrent": {
     "auth_ref": [
      "r18",
      "r315",
      "r316"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of capital lease obligation due within one year or the normal operating cycle, if longer.",
        "label": "Current obligations under leases"
       }
      }
     },
     "localname": "CapitalLeaseObligationsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalLeasesFutureMinimumPaymentsDueCurrent": {
     "auth_ref": [
      "r316"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of minimum lease payments for capital leases due in the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Monthly lease payments due"
       }
      }
     },
     "localname": "CapitalLeasesFutureMinimumPaymentsDueCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Cash": {
     "auth_ref": [
      "r35",
      "r332",
      "r368",
      "r369"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "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. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash",
        "verboseLabel": "Cash on hand"
       }
      }
     },
     "localname": "Cash",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureGoingConcernDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r5",
      "r35",
      "r78"
     ],
     "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, beginning of period",
        "periodEndLabel": "Cash, end of period",
        "periodStartLabel": "Cash, beginning of period"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease": {
     "auth_ref": [],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash and cash equivalents. Cash and cash equivalents are the 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. Includes effect from exchange rate changes.",
        "label": "Net increase in cash",
        "totalLabel": "Net increase in cash"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPeriodIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r16",
      "r79"
     ],
     "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"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "SUPPLEMENTARY DISCLOSURE OF NON-CASH INVESTING AND FINANCING ACTIVITIES:"
       }
      }
     },
     "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1": {
     "auth_ref": [
      "r228"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exercise price per share or per unit of warrants or rights outstanding.",
        "label": "Warrants exercise price per share"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ClassOfWarrantOrRightOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of warrants or rights outstanding.",
        "label": "Warrants outstanding"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureScheduleOfWarrantsActivityDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureStockWarrantsActivity2019Details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r165",
      "r166",
      "r167",
      "r168",
      "r373"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies {1}",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r98",
      "r99",
      "r283"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r24"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "verboseLabel": "Par value of common stock"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r24"
     ],
     "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",
        "verboseLabel": "Common stock authorized"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r24"
     ],
     "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"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r24",
      "r332"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "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"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r86",
      "r279"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting.  The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.",
        "label": "Consolidation, Policy"
       }
      }
     },
     "localname": "ConsolidationPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesConsolidationPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConversionOfStockAmountConverted1": {
     "auth_ref": [
      "r81",
      "r82",
      "r83"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The value of the stock converted in a noncash (or part noncash) transaction. Noncash is defined as transactions during a period that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Conversion of Stock, Amount Converted"
       }
      }
     },
     "localname": "ConversionOfStockAmountConverted1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConversionOfStockSharesConverted1": {
     "auth_ref": [
      "r81",
      "r82",
      "r83"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares converted in a noncash (or part noncash) transaction. Noncash is defined as transactions during a period that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Number of Series A Preferred Shares converted",
        "verboseLabel": "Number of Series A Preferred Shares converted"
       }
      }
     },
     "localname": "ConversionOfStockSharesConverted1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ConvertibleDebt": {
     "auth_ref": [
      "r20",
      "r345",
      "r356"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Including the current and noncurrent portions, carrying amount of debt identified as being convertible into another form of financial instrument (typically the entity's common stock) as of the balance sheet date, which originally required full repayment more than twelve months after issuance or greater than the normal operating cycle of the company.",
        "label": "Convertible debt"
       }
      }
     },
     "localname": "ConvertibleDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConvertibleDebtNoncurrent": {
     "auth_ref": [
      "r44"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount of long-term convertible debt as of the balance sheet date, net of the amount due in the next twelve months or greater than the normal operating cycle, if longer. The debt is convertible into another form of financial instrument, typically the entity's common stock.",
        "label": "Convertible notes payable - long term, net of debt discount {1}",
        "terseLabel": "Convertible notes payable - long term, net of debt discount"
       }
      }
     },
     "localname": "ConvertibleDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConvertibleDebtSecuritiesMember": {
     "auth_ref": [
      "r237"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt securities that can be exchanged for equity of the debt issuer at the option of the issuer or the holder.",
        "label": "Convertible Debt Securities"
       }
      }
     },
     "localname": "ConvertibleDebtSecuritiesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesEarningsPerSharePolicyDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConvertibleNotesPayable": {
     "auth_ref": [
      "r20",
      "r345",
      "r355",
      "r370"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Including the current and noncurrent portions, carrying value as of the balance sheet date of a written promise to pay a note, initially due after one year or beyond the operating cycle if longer, which can be exchanged for a specified amount of one or more securities (typically common stock), at the option of the issuer or the holder.",
        "label": "Convertible notes payable - long term, net of debt discount"
       }
      }
     },
     "localname": "ConvertibleNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConvertibleNotesPayableCurrent": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 8.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of the portion of long-term debt due within one year or the operating cycle if longer identified as Convertible Notes Payable. Convertible Notes Payable is a written promise to pay a note which can be exchanged for a specified amount of another, related security, at the option of the issuer and the holder.",
        "label": "Convertible notes payable, net of debt discount",
        "negatedLabel": "Convertible notes payable, net of debt discount"
       }
      }
     },
     "localname": "ConvertibleNotesPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion": {
     "auth_ref": [
      "r22",
      "r23",
      "r223",
      "r228",
      "r229"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued for each share of convertible preferred stock that is converted.",
        "label": "Number of shares converted into"
       }
      }
     },
     "localname": "ConvertiblePreferredStockSharesIssuedUponConversion",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ConvertiblePreferredStockTermsOfConversion": {
     "auth_ref": [
      "r22",
      "r23",
      "r228",
      "r230",
      "r231",
      "r232"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of conversion terms for preferred stock.",
        "label": "Preferred Stock conversion terms",
        "verboseLabel": "Preferred Stock conversion terms"
       }
      }
     },
     "localname": "ConvertiblePreferredStockTermsOfConversion",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r64",
      "r340"
     ],
     "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 sold",
        "negatedLabel": "Cost of goods sold"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r89",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r197",
      "r204",
      "r205",
      "r206",
      "r212"
     ],
     "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": "Notes Payable Disclosure"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosure"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r18",
      "r19",
      "r20",
      "r91",
      "r96",
      "r180",
      "r181",
      "r182",
      "r183",
      "r184",
      "r185",
      "r187",
      "r193",
      "r194",
      "r195",
      "r196",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r207",
      "r208",
      "r209",
      "r210",
      "r310",
      "r344",
      "r345",
      "r352"
     ],
     "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://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r44",
      "r91",
      "r96",
      "r180",
      "r181",
      "r182",
      "r183",
      "r184",
      "r185",
      "r187",
      "r193",
      "r194",
      "r195",
      "r196",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r207",
      "r208",
      "r209",
      "r210",
      "r310"
     ],
     "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"
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedDiscountCurrent": {
     "auth_ref": [
      "r308",
      "r311"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of debt discount to be amortized within one year or within the normal operating cycle, if longer.",
        "label": "Discounts on notes payable",
        "negatedLabel": "Discounts on notes payable"
       }
      }
     },
     "localname": "DebtInstrumentUnamortizedDiscountCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedDiscountNoncurrent": {
     "auth_ref": [
      "r308",
      "r311"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of debt discount to be amortized after one year or the normal operating cycle, if longer.",
        "label": "Discounts on convertible notes payable",
        "negatedLabel": "Discounts on convertible notes payable"
       }
      }
     },
     "localname": "DebtInstrumentUnamortizedDiscountNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredCompensationSharebasedArrangementsLiabilityCurrentAndNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate carrying value as of the balance sheet date of the liabilities for stock option plans and other equity-based compensation arrangements.",
        "label": "Stock payable"
       }
      }
     },
     "localname": "DeferredCompensationSharebasedArrangementsLiabilityCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "auth_ref": [
      "r260",
      "r261"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.",
        "label": "Deferred income tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r255"
     ],
     "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": "Valuation allowance",
        "negatedLabel": "Valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationAndAmortization": {
     "auth_ref": [
      "r76",
      "r164"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "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 and amortization"
       }
      }
     },
     "localname": "DepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeLiabilitiesCurrent": {
     "auth_ref": [
      "r51"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 4.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"
       }
      }
     },
     "localname": "DerivativeLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisclosureTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes"
       }
      }
     },
     "localname": "DisclosureTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasicAndDiluted": {
     "auth_ref": [
      "r112"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income or loss for the period per each share in instances when basic and diluted earnings per share are the same amount and reported as a single line item on the face of the financial statements.  Basic earnings per share is the amount of net income or loss for the period per each share of common stock or unit outstanding during the reporting period.  Diluted earnings per share includes the amount of net income or 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": "Net loss per common share - basic and diluted"
       }
      }
     },
     "localname": "EarningsPerShareBasicAndDiluted",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r114",
      "r115"
     ],
     "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"
       }
      }
     },
     "localname": "EarningsPerSharePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesEarningsPerSharePolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "auth_ref": [
      "r251"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Effective tax rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r93",
      "r251",
      "r268"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).",
        "label": "Federal statutory tax rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r251",
      "r268"
     ],
     "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": "Change in valuation allowance"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r251",
      "r268"
     ],
     "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": "State taxes, net of federal benefit"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r0",
      "r55",
      "r56",
      "r57",
      "r98",
      "r99",
      "r100",
      "r102",
      "r107",
      "r109",
      "r116",
      "r153",
      "r227",
      "r233",
      "r242",
      "r243",
      "r244",
      "r264",
      "r265",
      "r283",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r363",
      "r364",
      "r365",
      "r381"
     ],
     "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"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityInterestIssuedOrIssuableByTypeAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of equity interests that are issued or issuable in a business combination.",
        "label": "Equity Interest Type [Axis]"
       }
      }
     },
     "localname": "EquityInterestIssuedOrIssuableByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityInterestIssuedOrIssuableTypeDomain": {
     "auth_ref": [
      "r274"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of equity interest issued or issuable to acquire an entity in a business combination.",
        "label": "Equity Interest Issued or Issuable, Type"
       }
      }
     },
     "localname": "EquityInterestIssuedOrIssuableTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ExtinguishmentOfDebtAmount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross amount of debt extinguished.",
        "label": "Amount of debt extinguished"
       }
      }
     },
     "localname": "ExtinguishmentOfDebtAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ExtinguishmentOfDebtGainLossNetOfTax": {
     "auth_ref": [
      "r211"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The difference between the reacquisition price and the net carrying amount of the extinguished debt recognized currently as a component of income in the period of extinguishment, net of tax.",
        "label": "Gain (loss) on extinguishment of notes",
        "negatedLabel": "Gain (loss) on extinguishment of notes"
       }
      }
     },
     "localname": "ExtinguishmentOfDebtGainLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock": {
     "auth_ref": [
      "r285",
      "r286",
      "r287",
      "r291",
      "r292"
     ],
     "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 basis 2020"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicyFairValueMeasurementsRecurringBasis2020Tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock": {
     "auth_ref": [
      "r288"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of input and valuation technique used to measure fair value and change in valuation approach and technique for each separate class of asset and liability measured on recurring and nonrecurring basis.",
        "label": "Fair Value Measurement Inputs and Valuation Techniques"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureFairValueMeasurementInputsAndValuationTechniquesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": {
     "auth_ref": [
      "r289"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Class of asset.",
        "label": "Asset Class"
       }
      }
     },
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosureScheduleOfInventoryCurrentDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueByAssetClassAxis": {
     "auth_ref": [
      "r285",
      "r292"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by class of asset.",
        "label": "Asset Class [Axis]"
       }
      }
     },
     "localname": "FairValueByAssetClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosureScheduleOfInventoryCurrentDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosureDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueConcentrationOfRiskTextBlock": {
     "auth_ref": [
      "r295",
      "r296",
      "r297",
      "r298"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of all significant concentrations of risk, including credit risk and market risk, arising from all financial instruments (as defined), whether from an individual counterparty or groups of counterparties.  The disclosure concerning concentrations of risk may consist of the following information: (1) for concentrations of credit risk disclosure may include: (a) information about the (shared) activity, region, or economic characteristic that identifies the concentration, (b) the maximum amount of loss due to credit risk that, based on the gross fair value of the financial instrument, the entity would incur if parties to the financial instruments that make up the concentration failed completely to perform according to the terms of the contracts and the collateral or other security, if any, for the amount due proved to be of no value to the entity, (c) the policy of requiring collateral or other security to support financial instruments subject to credit risk, information about the entity's access to that collateral or other security, and the nature and a brief description of the collateral or other security supporting those financial instruments, and (d) the policy of entering into master netting arrangements to mitigate the credit risk of financial instruments, information about the arrangements for which the entity is a party, and a brief description of the terms of those arrangements, including the extent to which they would reduce the entity's maximum amount of loss due to credit risk and (2) for disclosure of quantitative information about the market risks of financial instruments that is consistent with the way the company manages or adjusts those risks, disclosure may include: (a) more details about current positions and perhaps activity during the period, (b) the hypothetical effects on comprehensive income (or net assets), or annual income, of several possible changes in market prices, (c) a gap analysis of interest rate re-pricing or maturity dates, (d) the duration of the financial instruments, (e) the entity's value at risk from derivatives and from other positions at the end of the reporting period and the average value at risk during the year, or (f) other ways of reporting quantitative information as internally developed.",
        "label": "Summary of the changes in fair value of the derivative financial instruments"
       }
      }
     },
     "localname": "FairValueConcentrationOfRiskTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicySummaryOfTheChangesInFairValueOfTheDerivativeFinancialInstrumentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisObligations": {
     "auth_ref": [
      "r285",
      "r286"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of obligations measured on a recurring basis.",
        "label": "Fair value of derivative liabilities"
       }
      }
     },
     "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisObligations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicyFairValueMeasurementsRecurringBasis2019Details",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicyFairValueMeasurementsRecurringBasis2020Details",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicySummaryOfTheChangesInFairValueOfTheDerivativeFinancialInstrumentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisChangeInUnrealizedGainLoss": {
     "auth_ref": [
      "r290"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unrealized gain (loss) recognized in income for derivative asset (liability) after deduction of derivative liability (asset), measured at fair value using unobservable input (level 3) and still held.",
        "label": "Gain on change of derivative liability",
        "negatedLabel": "Gain on change of derivative liability"
       }
      }
     },
     "localname": "FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisChangeInUnrealizedGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r293",
      "r294"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments.",
        "label": "Fair Value of Financial Instruments Policy"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesFairValueOfFinancialInstrumentsPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseLiabilityCurrent": {
     "auth_ref": [
      "r318"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.",
        "label": "Lease liability"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAsset": {
     "auth_ref": [
      "r317"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_OtherAssets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease.",
        "label": "Right to use asset"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r65"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.",
        "label": "General and administrative"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r63",
      "r92",
      "r128",
      "r130",
      "r133",
      "r136",
      "r138",
      "r152",
      "r169",
      "r170",
      "r171",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r299"
     ],
     "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"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r60",
      "r128",
      "r130",
      "r133",
      "r136",
      "r138",
      "r341",
      "r348",
      "r351",
      "r361"
     ],
     "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": "Net loss before tax provision"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r93",
      "r252",
      "r253",
      "r258",
      "r266",
      "r269",
      "r271",
      "r272",
      "r273"
     ],
     "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 Taxes Disclosure"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosure"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r94",
      "r108",
      "r109",
      "r127",
      "r250",
      "r267",
      "r270",
      "r362"
     ],
     "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": "Tax provision"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r54",
      "r248",
      "r249",
      "r253",
      "r254",
      "r257",
      "r262"
     ],
     "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"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesIncomeTaxPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r80"
     ],
     "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": "Cash paid for taxes"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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": "Accounts receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDerivativeLiabilities": {
     "auth_ref": [
      "r75"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the period in the carrying value of derivative instruments reported as liabilities that are due to be disposed of within one year (or the normal operating cycle, if longer).",
        "label": "Gain (loss) on change of derivative liability"
       }
      }
     },
     "localname": "IncreaseDecreaseInDerivativeLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInterestPayableNet": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in interest payable, which represents the amount owed to note holders, bond holders, and other parties for interest earned on loans or credit extended to the reporting entity.",
        "label": "Interest payable - related party"
       }
      }
     },
     "localname": "IncreaseDecreaseInInterestPayableNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "Inventory {1}",
        "negatedLabel": "Inventory"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in assets and liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.",
        "label": "Prepaid expenses",
        "negatedLabel": "Prepaid expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInSecurityDeposits": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in security deposits.",
        "label": "Customer deposit"
       }
      }
     },
     "localname": "IncreaseDecreaseInSecurityDeposits",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r58",
      "r126",
      "r307",
      "r309",
      "r350"
     ],
     "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"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpenseOther": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest expense classified as other.",
        "label": "Interest expense including amortization of the associated debt discount"
       }
      }
     },
     "localname": "InterestExpenseOther",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpenseRelatedParty": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest expense incurred on a debt or other obligation to related party.",
        "label": "Interest expense associated with the related party notes"
       }
      }
     },
     "localname": "InterestExpenseRelatedParty",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaid": {
     "auth_ref": [
      "r80"
     ],
     "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": "Cash paid for interest"
       }
      }
     },
     "localname": "InterestPaid",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InternalUseSoftwarePolicy": {
     "auth_ref": [
      "r161",
      "r162"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for costs incurred when both (1) the software is acquired, internally developed, or modified solely to meet the entity's internal needs, and (2) during the software's development or modification, no substantive plan exists or is being developed to market the software externally.",
        "label": "Website Policy"
       }
      }
     },
     "localname": "InternalUseSoftwarePolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesWebsitePolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryCashFlowPolicy": {
     "auth_ref": [
      "r84"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining where the cash flows related to the sale of inventory are classified in the statements of cash flows and explain the nature of the receivables, notes, and loans.",
        "label": "Inventory policy"
       }
      }
     },
     "localname": "InventoryCashFlowPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesInventoryPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r158"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.",
        "label": "Inventory Disclosure"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosure"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r6",
      "r49",
      "r332"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 3.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"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosureScheduleOfInventoryCurrentDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims": {
     "auth_ref": [
      "r76"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of share-based compensation granted to nonemployees as payment for services rendered or acknowledged claims.",
        "label": "Shares issued and rescinded for services"
       }
      }
     },
     "localname": "IssuanceOfStockAndWarrantsForServicesOrClaims",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r41",
      "r92",
      "r132",
      "r152",
      "r169",
      "r170",
      "r171",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r278",
      "r280",
      "r281",
      "r299",
      "r330",
      "r331"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "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": "Total liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r30",
      "r92",
      "r152",
      "r299",
      "r332",
      "r346",
      "r358"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "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": "Total liabilities and stockholders' deficit",
        "totalLabel": "Total liabilities and stockholders' deficit"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "LIABILITIES AND STOCKHOLDERS' DEFICIT"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r43",
      "r92",
      "r152",
      "r169",
      "r170",
      "r171",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r278",
      "r280",
      "r281",
      "r299",
      "r330",
      "r331",
      "r332"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "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": "Total current liabilities",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesNoncurrent": {
     "auth_ref": [
      "r13",
      "r14",
      "r15",
      "r20",
      "r21",
      "r92",
      "r152",
      "r169",
      "r170",
      "r171",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r278",
      "r280",
      "r281",
      "r299",
      "r330",
      "r331"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer.",
        "label": "Total long-term liabilities",
        "totalLabel": "Total long-term liabilities"
       }
      }
     },
     "localname": "LiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtAndCapitalLeaseObligations": {
     "auth_ref": [
      "r20"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt and lease obligation, classified as noncurrent.",
        "label": "Long-term lease obligations"
       }
      }
     },
     "localname": "LongTermDebtAndCapitalLeaseObligations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermNotesPayable": {
     "auth_ref": [
      "r44"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of notes payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion.",
        "label": "Notes payable - long term, net of debt discount"
       }
      }
     },
     "localname": "LongTermNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r73"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "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 financing activities",
        "totalLabel": "Net cash provided by financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flows from Financing Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r73"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "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 used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flows from Investing Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flows from Operating Activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations": {
     "auth_ref": [
      "r73",
      "r74",
      "r77"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, excluding discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Net cash used in operating activities",
        "negatedLabel": "Net cash used in operating activities",
        "totalLabel": "Net cash used in operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureGoingConcernDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r3",
      "r52",
      "r53",
      "r57",
      "r61",
      "r77",
      "r92",
      "r101",
      "r103",
      "r104",
      "r105",
      "r106",
      "r108",
      "r109",
      "r111",
      "r128",
      "r130",
      "r133",
      "r136",
      "r138",
      "r152",
      "r169",
      "r170",
      "r171",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r284",
      "r299",
      "r349",
      "r360"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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)",
        "negatedLabel": "Net income (loss)"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureGoingConcernDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.",
        "label": "New Accounting Pronouncements, Policy"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesNewAccountingPronouncementsPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncashOrPartNoncashAcquisitionNoncashFinancialOrEquityInstrumentConsiderationWarrantsIssued1": {
     "auth_ref": [
      "r81",
      "r82",
      "r83"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of warrants issued as [noncash or part noncash] consideration for a business or asset acquired. Noncash is defined as transactions during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Warrants granted and assumed"
       }
      }
     },
     "localname": "NoncashOrPartNoncashAcquisitionNoncashFinancialOrEquityInstrumentConsiderationWarrantsIssued1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureScheduleOfWarrantsActivityDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureStockWarrantsActivity2019Details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_NotesAndLoansPayable": {
     "auth_ref": [
      "r20",
      "r345",
      "r356"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Including the current and noncurrent portions, carrying value as of the balance sheet date of all notes and loans payable (with maturities initially due after one year or beyond the operating cycle if longer).",
        "label": "Total Notes Payable"
       }
      }
     },
     "localname": "NotesAndLoansPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NotesPayable": {
     "auth_ref": [
      "r20",
      "r345",
      "r356"
     ],
     "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": "Total Notes Payable - long term",
        "verboseLabel": "Total Notes Payable - long term"
       }
      }
     },
     "localname": "NotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NotesPayableCurrent": {
     "auth_ref": [
      "r40"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying values as of the balance sheet date of the portions of long-term notes payable due within one year or the operating cycle if longer.",
        "label": "Notes payable, net of debt discount"
       }
      }
     },
     "localname": "NotesPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NotesPayableRelatedPartiesClassifiedCurrent": {
     "auth_ref": [
      "r37",
      "r95",
      "r326"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount for notes payable (written promise to pay), due to related parties. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Notes payable, related"
       }
      }
     },
     "localname": "NotesPayableRelatedPartiesClassifiedCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NotesPayableRelatedPartiesNoncurrent": {
     "auth_ref": [
      "r45",
      "r95",
      "r325"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount for notes payable (written promise to pay), payable to related parties, which are due after one year (or one business cycle).",
        "label": "Notes payable - related party"
       }
      }
     },
     "localname": "NotesPayableRelatedPartiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.",
        "label": "Total operating expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating expenses"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r128",
      "r130",
      "r133",
      "r136",
      "r138"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Loss from operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseExpense": {
     "auth_ref": [
      "r319"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating lease expense. Excludes sublease income.",
        "label": "Non cash operating lease expense"
       }
      }
     },
     "localname": "OperatingLeaseExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r318"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "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 noncurrent.",
        "label": "Lease liability - long-term"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDue": {
     "auth_ref": [
      "r312",
      "r313"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of required minimum rental payments for leases having an initial or remaining non-cancelable letter-terms in excess of one year.",
        "label": "Total minimum lease payments due"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r259"
     ],
     "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": "Net operating loss carry forwards"
       }
      }
     },
     "localname": "OperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssets": {
     "auth_ref": [
      "r17",
      "r342",
      "r353"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of assets classified as other.",
        "label": "Total other assets",
        "totalLabel": "Total other assets"
       }
      }
     },
     "localname": "OtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Assets {1}",
        "terseLabel": "Other Assets"
       }
      }
     },
     "localname": "OtherAssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherAssetsDisclosureTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for other assets. This disclosure includes other current assets and other noncurrent assets.",
        "label": "Prepaid Consulting Expenses, Disclosure"
       }
      }
     },
     "localname": "OtherAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosure"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r36"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "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"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherCommitmentsAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of other commitment.",
        "label": "Other Commitments [Axis]"
       }
      }
     },
     "localname": "OtherCommitmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherCommitmentsDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other future obligation.",
        "label": "Other Commitments"
       }
      }
     },
     "localname": "OtherCommitmentsDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherLoansPayableCurrent": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term loans classified as other, payable within one year or the operating cycle, if longer.",
        "label": "Payroll protection program loan payable"
       }
      }
     },
     "localname": "OtherLoansPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonrecurringIncomeExpense": {
     "auth_ref": [
      "r67"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of other expense (income) that is infrequent in occurrence or unusual in nature.",
        "label": "Total income (expenses)"
       }
      }
     },
     "localname": "OtherNonrecurringIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonrecurringIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income (expenses)"
       }
      }
     },
     "localname": "OtherNonrecurringIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherNotesPayable": {
     "auth_ref": [
      "r20",
      "r345",
      "r356"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term notes payable classified as other.",
        "label": "Notes payable"
       }
      }
     },
     "localname": "OtherNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherSignificantNoncashTransactionValueOfConsiderationReceived1": {
     "auth_ref": [
      "r81",
      "r82",
      "r83"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The value of the noncash (or part noncash) consideration received in a transaction. Noncash is defined as transactions during a period that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of a transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Reclassification of notes payable to convertible notes payable"
       }
      }
     },
     "localname": "OtherSignificantNoncashTransactionValueOfConsiderationReceived1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDebtExtinguishmentCosts": {
     "auth_ref": [
      "r72"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for cost from early extinguishment and prepayment of debt. Includes, but is not limited to, third-party cost, premium paid, and other fee paid to lender directly for debt extinguishment or debt prepayment. Excludes accrued interest.",
        "label": "Payments for debt extinguishment costs",
        "negatedLabel": "Payments for debt extinguishment costs"
       }
      }
     },
     "localname": "PaymentsOfDebtExtinguishmentCosts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PolicyTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Policies"
       }
      }
     },
     "localname": "PolicyTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "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"
       }
      }
     },
     "localname": "PreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockNoParValue": {
     "auth_ref": [
      "r23",
      "r213"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount per share of no-par value preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred Stock, No Par Value"
       }
      }
     },
     "localname": "PreferredStockNoParValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r23",
      "r213"
     ],
     "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": "Par value of preferred stock",
        "verboseLabel": "Par value of preferred stock"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r23"
     ],
     "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",
        "verboseLabel": "Preferred stock authorized"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r23",
      "r213"
     ],
     "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"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r23"
     ],
     "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"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r23",
      "r332"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "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"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "auth_ref": [
      "r8",
      "r10",
      "r159",
      "r160"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.",
        "label": "Prepaid consulting expenses"
       }
      }
     },
     "localname": "PrepaidExpenseCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseCurrentAndNoncurrent": {
     "auth_ref": [
      "r347",
      "r359"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of expenditures made in advance of when the economic benefit of the cost will be realized, and which will be expensed in future periods with the passage of time or when a triggering event occurs.",
        "label": "Prepaid consulting expense"
       }
      }
     },
     "localname": "PrepaidExpenseCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseNoncurrent": {
     "auth_ref": [
      "r36"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_OtherAssets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of amounts paid in advance for expenses which will be charged against earnings in periods after one year or beyond the operating cycle, if longer.",
        "label": "Prepaid consulting expenses - long term"
       }
      }
     },
     "localname": "PrepaidExpenseNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PresentValueOfFutureMinimumLeasePaymentsSaleLeasebackTransactions": {
     "auth_ref": [
      "r316"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of minimum lease payments for sale-leaseback transactions accounted for using the deposit method or as a financing.",
        "label": "Present value of future minimum lease payments"
       }
      }
     },
     "localname": "PresentValueOfFutureMinimumLeasePaymentsSaleLeasebackTransactions",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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": "Reclassifications Policy"
       }
      }
     },
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesReclassificationsPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProceedsDebtSecuritiesHeldToMaturityPreviouslyWrittenOffRecovery": {
     "auth_ref": [
      "r68"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow from recovery of investment in debt security measured at amortized cost (held-to-maturity), previously written off.",
        "label": "Derivative Liability written off to APIC"
       }
      }
     },
     "localname": "ProceedsDebtSecuritiesHeldToMaturityPreviouslyWrittenOffRecovery",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromConvertibleDebt": {
     "auth_ref": [
      "r70"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the issuance of a long-term debt instrument which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder.",
        "label": "Proceeds from convertible notes payable"
       }
      }
     },
     "localname": "ProceedsFromConvertibleDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "auth_ref": [
      "r69"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 9.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 sale of common stock, net of offering costs"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromNotesPayable": {
     "auth_ref": [
      "r70"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a borrowing supported by a written promise to pay an obligation.",
        "label": "Proceeds from notes payable"
       }
      }
     },
     "localname": "ProceedsFromNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromOtherDebt": {
     "auth_ref": [
      "r70"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow from debt classified as other.",
        "label": "Proceeds from payroll protection program loan payable"
       }
      }
     },
     "localname": "ProceedsFromOtherDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromRelatedPartyDebt": {
     "auth_ref": [
      "r70"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a long-term borrowing made from related parties where one party can exercise control or significant influence over another party; including affiliates, owners or officers and their immediate families, pension trusts, and so forth. Alternate caption: Proceeds from Advances from Affiliates.",
        "label": "Proceeds of notes payable - related party"
       }
      }
     },
     "localname": "ProceedsFromRelatedPartyDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProfessionalFees": {
     "auth_ref": [
      "r371",
      "r372"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A fee charged for services from professionals such as doctors, lawyers and accountants. The term is often expanded to include other professions, for example, pharmacists charging to maintain a medicinal profile of a client or customer.",
        "label": "Professional fees"
       }
      }
     },
     "localname": "ProfessionalFees",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives": {
     "auth_ref": [
      "r163"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Describes the periods of time over which an entity anticipates to receive utility from its property, plant and equipment (that is, the periods of time over which an entity allocates the initial cost of its property, plant and equipment).",
        "label": "Company's website"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentEstimatedUsefulLives",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesWebsitePolicyDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReceivablesPolicyTextBlock": {
     "auth_ref": [
      "r144",
      "r148",
      "r149",
      "r150"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.",
        "label": "Accounts receivable policy"
       }
      }
     },
     "localname": "ReceivablesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesAccountsReceivablePolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RelatedPartyTransactionAxis": {
     "auth_ref": [
      "r238",
      "r324",
      "r325",
      "r327"
     ],
     "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://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionDomain": {
     "auth_ref": [
      "r238"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Transaction between related party.",
        "label": "Related Party Transaction"
       }
      }
     },
     "localname": "RelatedPartyTransactionDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "auth_ref": [
      "r322",
      "r323",
      "r325",
      "r328",
      "r329"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.",
        "label": "Related Party Disclosure"
       }
      }
     },
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosure"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RepaymentsOfConvertibleDebt": {
     "auth_ref": [
      "r71"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow from the repayment of a long-term debt instrument which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder.",
        "label": "Repayments of convertible notes payable",
        "negatedLabel": "Repayments of convertible notes payable"
       }
      }
     },
     "localname": "RepaymentsOfConvertibleDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfNotesPayable": {
     "auth_ref": [
      "r71"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for a borrowing supported by a written promise to pay an obligation.",
        "label": "Repayments of notes payable",
        "negatedLabel": "Repayments from notes payable"
       }
      }
     },
     "localname": "RepaymentsOfNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfRelatedPartyDebt": {
     "auth_ref": [
      "r71"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for the payment of a long-term borrowing made from a related party where one party can exercise control or significant influence over another party; including affiliates, owners or officers and their immediate families, pension trusts, and so forth. Alternate caption: Payments for Advances from Affiliates.",
        "label": "Repayments from notes payable - related party",
        "negatedLabel": "Repayments from notes payable - related party"
       }
      }
     },
     "localname": "RepaymentsOfRelatedPartyDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r247",
      "r339",
      "r374"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.",
        "label": "Research and development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r27",
      "r233",
      "r245",
      "r332",
      "r357",
      "r366",
      "r367"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Accumulated deficit",
        "negatedLabel": "Accumulated deficit"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureGoingConcernDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r0",
      "r98",
      "r99",
      "r100",
      "r102",
      "r107",
      "r109",
      "r153",
      "r242",
      "r243",
      "r244",
      "r264",
      "r265",
      "r283",
      "r363",
      "r365"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "auth_ref": [
      "r87",
      "r88"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.",
        "label": "Revenue Recognition Policy"
       }
      }
     },
     "localname": "RevenueRecognitionPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r59",
      "r92",
      "r124",
      "r125",
      "r129",
      "r134",
      "r135",
      "r139",
      "r140",
      "r141",
      "r152",
      "r169",
      "r170",
      "r171",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r299",
      "r351"
     ],
     "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": "Revenue"
       }
      }
     },
     "localname": "Revenues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability": {
     "auth_ref": [
      "r320",
      "r321"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for finance lease liability.",
        "label": "Recognition of right to use asset and liability"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": {
     "auth_ref": [
      "r48"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.",
        "label": "Schedule of Accounts Receivable, NET"
       }
      }
     },
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureAccountsReceivableNetDisclosureScheduleOfAccountsReceivableNetTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDebtConversionsTextBlock": {
     "auth_ref": [
      "r81",
      "r82",
      "r83"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information on an original debt issue that has been converted in a noncash (or part noncash) transaction during the accounting period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period. The information may be presented entirely or partially in this block of text or in the associated elements.",
        "label": "Schedule of Convertible Notes Payable"
       }
      }
     },
     "localname": "ScheduleOfDebtConversionsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableTables"
     ],
     "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 Notes Payable"
       }
      }
     },
     "localname": "ScheduleOfDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r256"
     ],
     "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"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfDeferredTaxAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r251"
     ],
     "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"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureIncomeTaxesDisclosureScheduleOfEffectiveIncomeTaxRateReconciliationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock": {
     "auth_ref": [
      "r314"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of future minimum payments required in the aggregate and for each of the five succeeding fiscal years for operating leases having initial or remaining noncancelable lease terms in excess of one year and the total minimum rentals to be received in the future under noncancelable subleases as of the balance sheet date.",
        "label": "Schedule of Future Minimum Rental Payments for Operating Leases"
       }
      }
     },
     "localname": "ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r12",
      "r32",
      "r33",
      "r34"
     ],
     "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"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosureScheduleOfInventoryCurrentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock": {
     "auth_ref": [
      "r235",
      "r239"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of warrants or rights issued. Warrants and rights outstanding are derivative securities that give the holder the right to purchase securities (usually equity) from the issuer at a specific price within a certain time frame. Warrants are often included in a new debt issue to entice investors by a higher return potential. The main difference between warrants and call options is that warrants are issued and guaranteed by the company, whereas options are exchange instruments and are not issued by the company. Also, the lifetime of a warrant is often measured in years, while the lifetime of a typical option is measured in months. Disclose the title of issue of securities called for by warrants and rights outstanding, the aggregate amount of securities called for by warrants and rights outstanding, the date from which the warrants or rights are exercisable, and the price at which the warrant or right is exercisable.",
        "label": "Schedule of Warrants Activity"
       }
      }
     },
     "localname": "ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureScheduleOfWarrantsActivityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ServicingAssetAtAmortizedValue": {
     "auth_ref": [
      "r336",
      "r337",
      "r338"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amortized amount of contract to service financial assets under which the benefits of servicing are expected to more than adequately compensate the servicer.",
        "label": "Amortization of the prepaid stock compensation"
       }
      }
     },
     "localname": "ServicingAssetAtAmortizedValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r240",
      "r241"
     ],
     "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": "Stock-based Compensation Policy"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r236",
      "r246"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity and share-based payment arrangement. Includes, but is not limited to, disclosure of policy and terms of share-based payment arrangement, deferred compensation arrangement, and employee stock purchase plan (ESPP).",
        "label": "Stock Warrants Disclosure"
       }
      }
     },
     "localname": "ShareholdersEquityAndShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosure"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "Equity Balance, Shares",
        "periodEndLabel": "Equity Balance, Shares",
        "periodStartLabel": "Equity Balance, Shares"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShortTermDebtTypeAxis": {
     "auth_ref": [
      "r39"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of short-term debt arrangement.",
        "label": "Short-term Debt, Type [Axis]"
       }
      }
     },
     "localname": "ShortTermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShortTermDebtTypeDomain": {
     "auth_ref": [
      "r38"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of short-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing.",
        "label": "Short-term Debt, Type"
       }
      }
     },
     "localname": "ShortTermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r85",
      "r97"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Summary of Significant Accounting Policies"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StartUpActivitiesCostPolicy": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for start-up costs. Start-up activities include those one-time activities related to opening a new facility, introducing a new product or service, conducting business in a new territory, conducting business with a new class of customer or beneficiary, initiating a new process in an existing facility, or commencing some new operation. Start-up activities include activities related to organizing a new entity (commonly referred to as organization costs).",
        "label": "Organization Policy"
       }
      }
     },
     "localname": "StartUpActivitiesCostPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesOrganizationPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r0",
      "r47",
      "r55",
      "r56",
      "r57",
      "r98",
      "r99",
      "r100",
      "r102",
      "r107",
      "r109",
      "r116",
      "r153",
      "r227",
      "r233",
      "r242",
      "r243",
      "r244",
      "r264",
      "r265",
      "r283",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r363",
      "r364",
      "r365",
      "r381"
     ],
     "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://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "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://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosureScheduleOfInventoryCurrentDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesEarningsPerSharePolicyDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r98",
      "r99",
      "r100",
      "r116",
      "r340"
     ],
     "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"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureCommitmentsAndContingenciesDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureInventoryDisclosureScheduleOfInventoryCurrentDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfConvertibleNotesPayableDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureNotesPayableDisclosureScheduleOfNotesPayableDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureRelatedPartyDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesEarningsPerSharePolicyDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r46",
      "r198",
      "r227",
      "r228",
      "r233"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of the conversion of convertible securities.",
        "label": "Conversion of preferred stock to common stock, shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesIssuedForServices": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued in lieu of cash for services contributed to the entity. Number of shares includes, but is not limited to, shares issued for services contributed by vendors and founders.",
        "label": "Stock Issued During Period, Shares, Issued for Services",
        "verboseLabel": "Stock issued for services"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesIssuedForServices",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesNewIssues": {
     "auth_ref": [
      "r23",
      "r24",
      "r227",
      "r233"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of new stock issued during the period.",
        "label": "Stock Issued During Period, Shares, New Issues",
        "verboseLabel": "Stock issued for cash"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "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": "Stocks and warrants issued for debt discounts, shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesOther",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r47",
      "r227",
      "r233"
     ],
     "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 for settlement of notes payable, value"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "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",
        "verboseLabel": "Value of stock issued for services"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueIssuedForServices",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosurePrepaidConsultingExpensesDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueNewIssues": {
     "auth_ref": [
      "r23",
      "r24",
      "r227",
      "r233"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.",
        "label": "Stock Issued During Period, Value, New Issues",
        "verboseLabel": "Stock issued for cash, value"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "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 and warrants issued for debt discount, value"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueOther",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": {
     "auth_ref": [
      "r23",
      "r24",
      "r227",
      "r233"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares that have been repurchased and retired during the period.",
        "label": "Rescission and retirement of shares, shares"
       }
      }
     },
     "localname": "StockRepurchasedAndRetiredDuringPeriodShares",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails",
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": {
     "auth_ref": [
      "r23",
      "r24",
      "r227",
      "r233"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital).",
        "label": "Rescission and retirement of shares"
       }
      }
     },
     "localname": "StockRepurchasedAndRetiredDuringPeriodValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r24",
      "r28",
      "r29",
      "r92",
      "r147",
      "r152",
      "r299",
      "r332"
     ],
     "calculation": {
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "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": "Total stockholders' deficit",
        "totalLabel": "Total stockholders' deficit"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' deficit"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r0",
      "r1",
      "r56",
      "r92",
      "r98",
      "r99",
      "r100",
      "r102",
      "r107",
      "r152",
      "r153",
      "r233",
      "r242",
      "r243",
      "r244",
      "r264",
      "r265",
      "r275",
      "r276",
      "r282",
      "r283",
      "r299",
      "r300",
      "r301",
      "r305",
      "r364",
      "r365",
      "r381"
     ],
     "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": "Equity Balance",
        "periodEndLabel": "Equity Balance",
        "periodStartLabel": "Equity Balance"
       }
      }
     },
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfStockholdersDeficit"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r90",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r224",
      "r225",
      "r226",
      "r233",
      "r236"
     ],
     "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 Disclosure"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosure"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StockholdersEquityReverseStockSplit": {
     "auth_ref": [
      "r234"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of the reverse stock split arrangement. Also provide the retroactive effect given by the reverse split that occurs after the balance sheet date but before the release of financial statements.",
        "label": "Reverse split of the issued and outstanding shares"
       }
      }
     },
     "localname": "StockholdersEquityReverseStockSplit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockholdersEquityDisclosureDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r306",
      "r334"
     ],
     "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://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r306",
      "r334"
     ],
     "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"
       }
      }
     },
     "localname": "SubsequentEventTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r333",
      "r335"
     ],
     "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"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubstantialDoubtAboutGoingConcernTextBlock": {
     "auth_ref": [
      "r4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure when substantial doubt is raised about the ability to continue as a going concern. Includes, but is not limited to, principal conditions or events that raised substantial doubt about the ability to continue as a going concern, management's evaluation of the significance of those conditions or events in relation to the ability to meet its obligations, and management's plans that alleviated or are intended to mitigate the conditions or events that raise substantial doubt about the ability to continue as a going concern.",
        "label": "Going Concern Disclosure"
       }
      }
     },
     "localname": "SubstantialDoubtAboutGoingConcernTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureGoingConcernDisclosure"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental disclosure of cash flow information"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TableTextBlockSupplementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tables/Schedules"
       }
      }
     },
     "localname": "TableTextBlockSupplementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_TextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Details"
       }
      }
     },
     "localname": "TextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r117",
      "r118",
      "r119",
      "r120",
      "r121",
      "r122",
      "r123"
     ],
     "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"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesUseOfEstimatesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_WarrantMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Security that gives the holder the right to purchase shares of stock in accordance with the terms of the instrument, usually upon payment of a specified amount.",
        "label": "Warrant"
       }
      }
     },
     "localname": "WarrantMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureSummaryOfSignificantAccountingPoliciesEarningsPerSharePolicyDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WarrantsNotSettleableInCashFairValueDisclosure": {
     "auth_ref": [
      "r285"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value portion of warrants not settleable in cash classified as equity.",
        "label": "Warrants granted, valued at"
       }
      }
     },
     "localname": "WarrantsNotSettleableInCashFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_DisclosureStockWarrantsDisclosureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r110",
      "r113"
     ],
     "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 common shares outstanding - basic and diluted"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.trutankless.com/20201231/role/idr_StatementConsolidatedStatementsOfOperations"
     ],
     "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": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6787-107765"
  },
  "r100": {
   "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"
  },
  "r101": {
   "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"
  },
  "r102": {
   "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"
  },
  "r103": {
   "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"
  },
  "r104": {
   "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"
  },
  "r105": {
   "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"
  },
  "r106": {
   "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"
  },
  "r107": {
   "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"
  },
  "r108": {
   "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"
  },
  "r109": {
   "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"
  },
  "r11": {
   "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"
  },
  "r110": {
   "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"
  },
  "r111": {
   "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"
  },
  "r112": {
   "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"
  },
  "r113": {
   "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"
  },
  "r114": {
   "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"
  },
  "r115": {
   "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"
  },
  "r116": {
   "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"
  },
  "r117": {
   "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"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "r12": {
   "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"
  },
  "r120": {
   "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"
  },
  "r121": {
   "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"
  },
  "r122": {
   "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"
  },
  "r123": {
   "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"
  },
  "r124": {
   "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"
  },
  "r125": {
   "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"
  },
  "r126": {
   "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"
  },
  "r127": {
   "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"
  },
  "r128": {
   "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"
  },
  "r129": {
   "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"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(24))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r130": {
   "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"
  },
  "r131": {
   "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"
  },
  "r132": {
   "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"
  },
  "r133": {
   "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"
  },
  "r134": {
   "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"
  },
  "r135": {
   "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"
  },
  "r136": {
   "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"
  },
  "r137": {
   "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"
  },
  "r138": {
   "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"
  },
  "r139": {
   "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"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(25))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r140": {
   "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"
  },
  "r141": {
   "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"
  },
  "r142": {
   "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"
  },
  "r143": {
   "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"
  },
  "r144": {
   "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"
  },
  "r145": {
   "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"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=SL6953401-111524"
  },
  "r147": {
   "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"
  },
  "r148": {
   "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"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10149-111534"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(26))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10178-111534"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "310",
   "URI": "http://asc.fasb.org/topic&trid=2196771"
  },
  "r152": {
   "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"
  },
  "r153": {
   "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"
  },
  "r154": {
   "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"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r156": {
   "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"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "326",
   "URI": "http://asc.fasb.org/topic&trid=82887179"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "http://asc.fasb.org/topic&trid=2126998"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=123349782&loc=d3e5879-108316"
  },
  "r16": {
   "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"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=6387103&loc=d3e6435-108320"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "40",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=118172244&loc=d3e17916-109280"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "50",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=16397303&loc=d3e19379-109286"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123364984&loc=d3e1205-110223"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r169": {
   "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"
  },
  "r17": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "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"
  },
  "r177": {
   "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"
  },
  "r178": {
   "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"
  },
  "r179": {
   "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"
  },
  "r18": {
   "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"
  },
  "r180": {
   "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"
  },
  "r181": {
   "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"
  },
  "r182": {
   "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"
  },
  "r183": {
   "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"
  },
  "r184": {
   "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"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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"
  },
  "r188": {
   "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"
  },
  "r189": {
   "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"
  },
  "r19": {
   "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"
  },
  "r190": {
   "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"
  },
  "r191": {
   "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"
  },
  "r192": {
   "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"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "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(22))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r200": {
   "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"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(23))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r210": {
   "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"
  },
  "r211": {
   "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"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r213": {
   "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"
  },
  "r214": {
   "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"
  },
  "r215": {
   "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"
  },
  "r216": {
   "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"
  },
  "r217": {
   "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"
  },
  "r218": {
   "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"
  },
  "r219": {
   "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"
  },
  "r22": {
   "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"
  },
  "r220": {
   "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"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496180-112644"
  },
  "r224": {
   "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"
  },
  "r225": {
   "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"
  },
  "r226": {
   "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"
  },
  "r227": {
   "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"
  },
  "r228": {
   "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"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21506-112644"
  },
  "r23": {
   "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"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21506-112644"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21521-112644"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21538-112644"
  },
  "r233": {
   "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"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.C)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187143-122770"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "50",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=6784392&loc=d3e188667-122775"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "http://asc.fasb.org/topic&trid=2208762"
  },
  "r237": {
   "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"
  },
  "r238": {
   "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"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r24": {
   "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"
  },
  "r240": {
   "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"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "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"
  },
  "r245": {
   "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"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373"
  },
  "r248": {
   "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"
  },
  "r249": {
   "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"
  },
  "r25": {
   "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"
  },
  "r250": {
   "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"
  },
  "r251": {
   "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"
  },
  "r252": {
   "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"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "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"
  },
  "r258": {
   "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"
  },
  "r259": {
   "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"
  },
  "r26": {
   "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"
  },
  "r260": {
   "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "51",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=124434304&loc=d3e34017-109320"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r27": {
   "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"
  },
  "r270": {
   "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"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)(4)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684"
  },
  "r28": {
   "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"
  },
  "r280": {
   "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"
  },
  "r281": {
   "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"
  },
  "r282": {
   "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"
  },
  "r283": {
   "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"
  },
  "r284": {
   "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"
  },
  "r285": {
   "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"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r289": {
   "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"
  },
  "r29": {
   "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"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r291": {
   "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"
  },
  "r292": {
   "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"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "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"
  },
  "r296": {
   "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"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13572-108611"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13587-108611"
  },
  "r299": {
   "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"
  },
  "r3": {
   "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"
  },
  "r30": {
   "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"
  },
  "r300": {
   "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"
  },
  "r301": {
   "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"
  },
  "r302": {
   "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"
  },
  "r303": {
   "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"
  },
  "r304": {
   "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"
  },
  "r305": {
   "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"
  },
  "r306": {
   "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"
  },
  "r307": {
   "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"
  },
  "r308": {
   "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"
  },
  "r309": {
   "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"
  },
  "r31": {
   "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"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(Note 3)",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=123403562&loc=d3e38371-112697"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=123406913&loc=d3e41502-112717"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=123406913&loc=d3e41502-112717"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=123406127&loc=d3e45023-112735"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=123386454&loc=d3e45280-112737"
  },
  "r317": {
   "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"
  },
  "r318": {
   "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"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977"
  },
  "r32": {
   "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"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r321": {
   "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"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r324": {
   "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"
  },
  "r325": {
   "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"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r327": {
   "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"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39691-107864"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "850",
   "URI": "http://asc.fasb.org/topic&trid=2122745"
  },
  "r33": {
   "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"
  },
  "r330": {
   "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"
  },
  "r331": {
   "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"
  },
  "r332": {
   "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"
  },
  "r333": {
   "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"
  },
  "r334": {
   "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"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "50",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=6469459&loc=d3e122492-111745"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "50",
   "Subparagraph": "(a)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=6469459&loc=d3e122501-111745"
  },
  "r338": {
   "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"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "730",
   "Topic": "912",
   "URI": "http://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433"
  },
  "r34": {
   "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"
  },
  "r340": {
   "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"
  },
  "r341": {
   "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"
  },
  "r342": {
   "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"
  },
  "r343": {
   "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"
  },
  "r344": {
   "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"
  },
  "r345": {
   "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"
  },
  "r346": {
   "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"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "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"
  },
  "r35": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "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"
  },
  "r354": {
   "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"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16)(a))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.10)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r36": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "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"
  },
  "r362": {
   "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"
  },
  "r363": {
   "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"
  },
  "r364": {
   "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"
  },
  "r365": {
   "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"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "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"
  },
  "r369": {
   "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"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a)(5))",
   "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": "210",
   "Subparagraph": "(SX 210.6-04(13))",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=120401414&loc=d3e603758-122996"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Subparagraph": "(k)",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=124433917&loc=SL114874205-224268"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07.2(a),(b),(c),(d))",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=120401555&loc=SL114874292-224272"
  },
  "r373": {
   "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"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r375": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310"
  },
  "r376": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f"
  },
  "r377": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f"
  },
  "r378": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r379": {
   "Name": "Regulation 12B",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r38": {
   "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"
  },
  "r380": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848"
  },
  "r39": {
   "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"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "40",
   "Topic": "205",
   "URI": "http://asc.fasb.org/subtopic&trid=51888271"
  },
  "r40": {
   "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"
  },
  "r41": {
   "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"
  },
  "r42": {
   "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"
  },
  "r43": {
   "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"
  },
  "r44": {
   "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"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.23)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r46": {
   "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"
  },
  "r47": {
   "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"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.3,4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r49": {
   "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"
  },
  "r5": {
   "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"
  },
  "r50": {
   "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"
  },
  "r51": {
   "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"
  },
  "r52": {
   "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"
  },
  "r53": {
   "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"
  },
  "r54": {
   "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"
  },
  "r55": {
   "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"
  },
  "r56": {
   "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"
  },
  "r57": {
   "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"
  },
  "r58": {
   "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"
  },
  "r59": {
   "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"
  },
  "r6": {
   "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"
  },
  "r60": {
   "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"
  },
  "r61": {
   "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"
  },
  "r62": {
   "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"
  },
  "r63": {
   "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"
  },
  "r64": {
   "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"
  },
  "r65": {
   "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"
  },
  "r66": {
   "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"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=114868883&loc=SL114871943-224233"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585"
  },
  "r69": {
   "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"
  },
  "r7": {
   "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"
  },
  "r70": {
   "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"
  },
  "r71": {
   "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"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r73": {
   "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"
  },
  "r74": {
   "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"
  },
  "r75": {
   "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"
  },
  "r76": {
   "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"
  },
  "r77": {
   "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"
  },
  "r78": {
   "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"
  },
  "r79": {
   "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"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r80": {
   "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"
  },
  "r81": {
   "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"
  },
  "r82": {
   "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"
  },
  "r83": {
   "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"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431969&loc=d3e4458-108587"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18726-107790"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r87": {
   "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"
  },
  "r88": {
   "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"
  },
  "r89": {
   "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"
  },
  "r9": {
   "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"
  },
  "r90": {
   "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"
  },
  "r91": {
   "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"
  },
  "r92": {
   "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"
  },
  "r93": {
   "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"
  },
  "r94": {
   "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"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r96": {
   "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"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r98": {
   "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"
  },
  "r99": {
   "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"
  }
 },
 "version": "2.1"
}
