XML 229 R185.htm IDEA: XBRL DOCUMENT
v3.22.0.1

LEASES - Leveraged Leases (Narrative) (Details) $ in Millions | 3 Months Ended | 12 Months Ended
--- | --- | ---
Jun. 30, 2020 USD ($) | Dec. 31, 2019 USD ($) | Dec. 31, 2021 USD ($) leveraged_lease project | Dec. 31, 2020 USD ($) leveraged_lease project | Dec. 31, 2019 USD ($)
Leveraged Lease [Line Items] |  |  |  |  |
Number of leveraged leases | leveraged_lease |  |  | 1 | 4 |
Number of domestic projects subject to leveraged lease |  |  |  | 2 |
Number of international projects subject to leveraged lease |  |  |  | 2 |
Number of domestic projects subject to leveraged lease sold |  |  | 1 |  |
Remaining lease term |  |  | 10 years |  |
Lease, impairment loss | $ | $ 154 | $ 17 | $ 7 | $ 206 | $ 0
Lease, impairment loss, after tax | $ | $ 74 | $ 13 |  |  |

X
- Definition Lease, Impairment Loss + References No definition available. + Details
Name: | so_LeaseImpairmentLoss
Namespace Prefix: | so_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Lease, Impairment Loss, After Tax + References No definition available. + Details
Name: | so_LeaseImpairmentLossAfterTax
Namespace Prefix: | so_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Leveraged Lease Line Items. + References No definition available. + Details
Name: | so_LeveragedLeaseLineItems
Namespace Prefix: | so_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Leveraged Leases, Remaining Lease Term + References No definition available. + Details
Name: | so_LeveragedLeasesRemainingLeaseTerm
Namespace Prefix: | so_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of Domestic Projects Subject to Leveraged Lease + References No definition available. + Details
Name: | so_NumberOfDomesticProjectsSubjectToLeveragedLease
Namespace Prefix: | so_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number of International Projects Subject to Leveraged Lease + References No definition available. + Details
Name: | so_NumberOfInternationalProjectsSubjectToLeveragedLease
Namespace Prefix: | so_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number Of Leveraged Leases + References No definition available. + Details
Name: | so_NumberOfLeveragedLeases
Namespace Prefix: | so_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number of Projects Subject to Leveraged Lease Sold + References No definition available. + Details
Name: | so_NumberOfProjectsSubjectToLeveragedLeaseSold
Namespace Prefix: | so_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration