{"id":680,"date":"2026-08-17T06:28:26","date_gmt":"2026-08-17T06:28:26","guid":{"rendered":"https:\/\/www.stockmaster.in\/universe\/?p=680"},"modified":"2026-08-17T06:30:17","modified_gmt":"2026-08-17T06:30:17","slug":"debt-consolidation-calculator-usa","status":"publish","type":"post","link":"https:\/\/www.stockmaster.in\/universe\/debt-consolidation-calculator-usa\/","title":{"rendered":"Debt Consolidation Calculator USA"},"content":{"rendered":"<div id=\"dcc-usa-calculator\">\r\n\r\n  <div class=\"dcc-container\">\r\n\r\n    <div class=\"dcc-hero\">\r\n      <div class=\"dcc-badge\">USA DEBT CALCULATOR<\/div>\r\n      <h2>Debt Consolidation Calculator<\/h2>\r\n      <p>\r\n        Compare your existing debts with a consolidation loan to estimate\r\n        your monthly payment, total interest, savings and payoff time.\r\n      <\/p>\r\n    <\/div>\r\n\r\n    <div class=\"dcc-main\">\r\n\r\n      <!-- EXISTING DEBTS -->\r\n\r\n      <div class=\"dcc-card\">\r\n\r\n        <div class=\"dcc-card-title\">\r\n          <div>\r\n            <h3>Your Current Debts<\/h3>\r\n            <p>Enter your outstanding balances, APRs and monthly payments.<\/p>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"dcc-debt-table\">\r\n\r\n          <div class=\"dcc-debt-head\">\r\n            <div>Debt<\/div>\r\n            <div>Balance<\/div>\r\n            <div>APR<\/div>\r\n            <div>Monthly Payment<\/div>\r\n          <\/div>\r\n\r\n          <div class=\"dcc-debt-row\">\r\n            <div data-label=\"Debt\">Credit Card 1<\/div>\r\n            <div data-label=\"Balance\">\r\n              <div class=\"dcc-input\">\r\n                <span>$<\/span>\r\n                <input type=\"number\" id=\"dcc-balance-1\" value=\"5000\" min=\"0\" step=\"0.01\">\r\n              <\/div>\r\n            <\/div>\r\n            <div data-label=\"APR\">\r\n              <div class=\"dcc-input\">\r\n                <input type=\"number\" id=\"dcc-apr-1\" value=\"24.99\" min=\"0\" step=\"0.01\">\r\n                <span>%<\/span>\r\n              <\/div>\r\n            <\/div>\r\n            <div data-label=\"Monthly Payment\">\r\n              <div class=\"dcc-input\">\r\n                <span>$<\/span>\r\n                <input type=\"number\" id=\"dcc-payment-1\" value=\"150\" min=\"0\" step=\"0.01\">\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n\r\n          <div class=\"dcc-debt-row\">\r\n            <div data-label=\"Debt\">Credit Card 2<\/div>\r\n            <div data-label=\"Balance\">\r\n              <div class=\"dcc-input\">\r\n                <span>$<\/span>\r\n                <input type=\"number\" id=\"dcc-balance-2\" value=\"3000\" min=\"0\" step=\"0.01\">\r\n              <\/div>\r\n            <\/div>\r\n            <div data-label=\"APR\">\r\n              <div class=\"dcc-input\">\r\n                <input type=\"number\" id=\"dcc-apr-2\" value=\"21.99\" min=\"0\" step=\"0.01\">\r\n                <span>%<\/span>\r\n              <\/div>\r\n            <\/div>\r\n            <div data-label=\"Monthly Payment\">\r\n              <div class=\"dcc-input\">\r\n                <span>$<\/span>\r\n                <input type=\"number\" id=\"dcc-payment-2\" value=\"100\" min=\"0\" step=\"0.01\">\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n\r\n          <div class=\"dcc-debt-row\">\r\n            <div data-label=\"Debt\">Personal Loan<\/div>\r\n            <div data-label=\"Balance\">\r\n              <div class=\"dcc-input\">\r\n                <span>$<\/span>\r\n                <input type=\"number\" id=\"dcc-balance-3\" value=\"7000\" min=\"0\" step=\"0.01\">\r\n              <\/div>\r\n            <\/div>\r\n            <div data-label=\"APR\">\r\n              <div class=\"dcc-input\">\r\n                <input type=\"number\" id=\"dcc-apr-3\" value=\"14.99\" min=\"0\" step=\"0.01\">\r\n                <span>%<\/span>\r\n              <\/div>\r\n            <\/div>\r\n            <div data-label=\"Monthly Payment\">\r\n              <div class=\"dcc-input\">\r\n                <span>$<\/span>\r\n                <input type=\"number\" id=\"dcc-payment-3\" value=\"170\" min=\"0\" step=\"0.01\">\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n\r\n          <div class=\"dcc-debt-row\">\r\n            <div data-label=\"Debt\">Car \/ Other Debt<\/div>\r\n            <div data-label=\"Balance\">\r\n              <div class=\"dcc-input\">\r\n                <span>$<\/span>\r\n                <input type=\"number\" id=\"dcc-balance-4\" value=\"0\" min=\"0\" step=\"0.01\">\r\n              <\/div>\r\n            <\/div>\r\n            <div data-label=\"APR\">\r\n              <div class=\"dcc-input\">\r\n                <input type=\"number\" id=\"dcc-apr-4\" value=\"0\" min=\"0\" step=\"0.01\">\r\n                <span>%<\/span>\r\n              <\/div>\r\n            <\/div>\r\n            <div data-label=\"Monthly Payment\">\r\n              <div class=\"dcc-input\">\r\n                <span>$<\/span>\r\n                <input type=\"number\" id=\"dcc-payment-4\" value=\"0\" min=\"0\" step=\"0.01\">\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n\r\n          <div class=\"dcc-debt-row\">\r\n            <div data-label=\"Debt\">Other Debt<\/div>\r\n            <div data-label=\"Balance\">\r\n              <div class=\"dcc-input\">\r\n                <span>$<\/span>\r\n                <input type=\"number\" id=\"dcc-balance-5\" value=\"0\" min=\"0\" step=\"0.01\">\r\n              <\/div>\r\n            <\/div>\r\n            <div data-label=\"APR\">\r\n              <div class=\"dcc-input\">\r\n                <input type=\"number\" id=\"dcc-apr-5\" value=\"0\" min=\"0\" step=\"0.01\">\r\n                <span>%<\/span>\r\n              <\/div>\r\n            <\/div>\r\n            <div data-label=\"Monthly Payment\">\r\n              <div class=\"dcc-input\">\r\n                <span>$<\/span>\r\n                <input type=\"number\" id=\"dcc-payment-5\" value=\"0\" min=\"0\" step=\"0.01\">\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n\r\n        <\/div>\r\n\r\n        <div class=\"dcc-current-summary\">\r\n\r\n          <div>\r\n            <span>Total Debt<\/span>\r\n            <strong id=\"dcc-total-debt\">$0.00<\/strong>\r\n          <\/div>\r\n\r\n          <div>\r\n            <span>Current Monthly Payments<\/span>\r\n            <strong id=\"dcc-current-payment\">$0.00<\/strong>\r\n          <\/div>\r\n\r\n          <div>\r\n            <span>Weighted Average APR<\/span>\r\n            <strong id=\"dcc-weighted-apr\">0%<\/strong>\r\n          <\/div>\r\n\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- CONSOLIDATION LOAN -->\r\n\r\n      <div class=\"dcc-card dcc-consolidation-card\">\r\n\r\n        <h3>Proposed Consolidation Loan<\/h3>\r\n\r\n        <p class=\"dcc-help\">\r\n          Enter the terms of the new loan you are considering.\r\n        <\/p>\r\n\r\n        <div class=\"dcc-form-grid\">\r\n\r\n          <div class=\"dcc-field\">\r\n\r\n            <label for=\"dcc-new-rate\">\r\n              New Loan APR\r\n            <\/label>\r\n\r\n            <div class=\"dcc-input large\">\r\n              <input\r\n                type=\"number\"\r\n                id=\"dcc-new-rate\"\r\n                value=\"10\"\r\n                min=\"0\"\r\n                step=\"0.01\"\r\n              >\r\n              <span>%<\/span>\r\n            <\/div>\r\n\r\n          <\/div>\r\n\r\n\r\n          <div class=\"dcc-field\">\r\n\r\n            <label for=\"dcc-term\">\r\n              Loan Term\r\n            <\/label>\r\n\r\n            <div class=\"dcc-input large\">\r\n              <input\r\n                type=\"number\"\r\n                id=\"dcc-term\"\r\n                value=\"48\"\r\n                min=\"1\"\r\n                max=\"480\"\r\n                step=\"1\"\r\n              >\r\n              <span>months<\/span>\r\n            <\/div>\r\n\r\n          <\/div>\r\n\r\n\r\n          <div class=\"dcc-field\">\r\n\r\n            <label for=\"dcc-fee\">\r\n              Consolidation Fee\r\n            <\/label>\r\n\r\n            <div class=\"dcc-input large\">\r\n              <span>$<\/span>\r\n              <input\r\n                type=\"number\"\r\n                id=\"dcc-fee\"\r\n                value=\"300\"\r\n                min=\"0\"\r\n                step=\"0.01\"\r\n              >\r\n            <\/div>\r\n\r\n          <\/div>\r\n\r\n\r\n          <div class=\"dcc-field\">\r\n\r\n            <label for=\"dcc-other-fees\">\r\n              Other Fees\r\n            <\/label>\r\n\r\n            <div class=\"dcc-input large\">\r\n              <span>$<\/span>\r\n              <input\r\n                type=\"number\"\r\n                id=\"dcc-other-fees\"\r\n                value=\"0\"\r\n                min=\"0\"\r\n                step=\"0.01\"\r\n              >\r\n            <\/div>\r\n\r\n          <\/div>\r\n\r\n        <\/div>\r\n\r\n\r\n        <button type=\"button\" id=\"dcc-calculate\">\r\n          Compare Debt Consolidation\r\n        <\/button>\r\n\r\n        <button type=\"button\" id=\"dcc-reset\" class=\"dcc-reset\">\r\n          Reset Calculator\r\n        <\/button>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- RESULTS -->\r\n\r\n      <div id=\"dcc-error\" class=\"dcc-error\"><\/div>\r\n\r\n\r\n      <div class=\"dcc-results\">\r\n\r\n        <div class=\"dcc-result-banner\">\r\n\r\n          <div>\r\n            <span>ESTIMATED MONTHLY PAYMENT<\/span>\r\n            <strong id=\"dcc-new-payment\">$0<\/strong>\r\n          <\/div>\r\n\r\n          <div class=\"dcc-banner-right\">\r\n            <span>MONTHLY PAYMENT CHANGE<\/span>\r\n            <strong id=\"dcc-payment-change\">$0<\/strong>\r\n          <\/div>\r\n\r\n        <\/div>\r\n\r\n\r\n        <div class=\"dcc-stat-grid\">\r\n\r\n          <div class=\"dcc-stat\">\r\n            <span>Current Monthly Payments<\/span>\r\n            <strong id=\"dcc-result-current-payment\">$0<\/strong>\r\n          <\/div>\r\n\r\n          <div class=\"dcc-stat\">\r\n            <span>New Monthly Payment<\/span>\r\n            <strong id=\"dcc-result-new-payment\">$0<\/strong>\r\n          <\/div>\r\n\r\n          <div class=\"dcc-stat\">\r\n            <span>Current Interest*<\/span>\r\n            <strong id=\"dcc-current-interest\">$0<\/strong>\r\n          <\/div>\r\n\r\n          <div class=\"dcc-stat\">\r\n            <span>New Loan Interest<\/span>\r\n            <strong id=\"dcc-new-interest\">$0<\/strong>\r\n          <\/div>\r\n\r\n        <\/div>\r\n\r\n\r\n        <div class=\"dcc-saving-box\">\r\n\r\n          <div>\r\n            <strong id=\"dcc-saving-title\">\r\n              Estimated Interest Savings\r\n            <\/strong>\r\n\r\n            <small>\r\n              Including the consolidation and other fees\r\n            <\/small>\r\n          <\/div>\r\n\r\n          <span id=\"dcc-interest-saving\">\r\n            $0\r\n          <\/span>\r\n\r\n        <\/div>\r\n\r\n\r\n        <!-- COMPARISON -->\r\n\r\n        <div class=\"dcc-section\">\r\n\r\n          <h3>Debt Consolidation Comparison<\/h3>\r\n\r\n          <div class=\"dcc-comparison\">\r\n\r\n            <div class=\"dcc-comparison-column\">\r\n\r\n              <div class=\"dcc-comparison-title\">\r\n                Current Debts\r\n              <\/div>\r\n\r\n              <div class=\"dcc-comparison-item\">\r\n                <span>Total Debt<\/span>\r\n                <strong id=\"dcc-compare-current-debt\">$0<\/strong>\r\n              <\/div>\r\n\r\n              <div class=\"dcc-comparison-item\">\r\n                <span>Monthly Payment<\/span>\r\n                <strong id=\"dcc-compare-current-payment\">$0<\/strong>\r\n              <\/div>\r\n\r\n              <div class=\"dcc-comparison-item\">\r\n                <span>Estimated Interest*<\/span>\r\n                <strong id=\"dcc-compare-current-interest\">$0<\/strong>\r\n              <\/div>\r\n\r\n              <div class=\"dcc-comparison-item\">\r\n                <span>Payoff Time<\/span>\r\n                <strong id=\"dcc-compare-current-time\">\u2014<\/strong>\r\n              <\/div>\r\n\r\n            <\/div>\r\n\r\n\r\n            <div class=\"dcc-vs\">\r\n              VS\r\n            <\/div>\r\n\r\n\r\n            <div class=\"dcc-comparison-column dcc-new-column\">\r\n\r\n              <div class=\"dcc-comparison-title\">\r\n                Consolidation Loan\r\n              <\/div>\r\n\r\n              <div class=\"dcc-comparison-item\">\r\n                <span>New Loan Amount<\/span>\r\n                <strong id=\"dcc-compare-new-debt\">$0<\/strong>\r\n              <\/div>\r\n\r\n              <div class=\"dcc-comparison-item\">\r\n                <span>Monthly Payment<\/span>\r\n                <strong id=\"dcc-compare-new-payment\">$0<\/strong>\r\n              <\/div>\r\n\r\n              <div class=\"dcc-comparison-item\">\r\n                <span>Total Interest + Fees<\/span>\r\n                <strong id=\"dcc-compare-new-interest\">$0<\/strong>\r\n              <\/div>\r\n\r\n              <div class=\"dcc-comparison-item\">\r\n                <span>Payoff Time<\/span>\r\n                <strong id=\"dcc-compare-new-time\">\u2014<\/strong>\r\n              <\/div>\r\n\r\n            <\/div>\r\n\r\n          <\/div>\r\n\r\n        <\/div>\r\n\r\n\r\n        <!-- BREAK EVEN -->\r\n\r\n        <div class=\"dcc-section\">\r\n\r\n          <h3>Break-Even Analysis<\/h3>\r\n\r\n          <div class=\"dcc-break-even\">\r\n\r\n            <div>\r\n              <span>Upfront Fees<\/span>\r\n              <strong id=\"dcc-break-fees\">$0<\/strong>\r\n            <\/div>\r\n\r\n            <div>\r\n              <span>Monthly Payment Savings<\/span>\r\n              <strong id=\"dcc-break-monthly\">$0<\/strong>\r\n            <\/div>\r\n\r\n            <div>\r\n              <span>Approx. Break-Even<\/span>\r\n              <strong id=\"dcc-break-months\">\u2014<\/strong>\r\n            <\/div>\r\n\r\n          <\/div>\r\n\r\n          <p class=\"dcc-note\">\r\n            Break-even is based only on the difference between current\r\n            and proposed monthly payments. It does not account for\r\n            taxes, credit-score effects, prepayment penalties or changes\r\n            in loan terms.\r\n          <\/p>\r\n\r\n        <\/div>\r\n\r\n\r\n        <!-- PAYMENT SCENARIOS -->\r\n\r\n        <div class=\"dcc-section\">\r\n\r\n          <h3>What If You Pay More?<\/h3>\r\n\r\n          <p class=\"dcc-section-description\">\r\n            See how additional monthly payments could shorten the\r\n            consolidation loan and reduce interest.\r\n          <\/p>\r\n\r\n          <div class=\"dcc-table-wrap\">\r\n\r\n            <table class=\"dcc-table\">\r\n\r\n              <thead>\r\n\r\n                <tr>\r\n                  <th>Monthly Payment<\/th>\r\n                  <th>Payoff Time<\/th>\r\n                  <th>Total Interest<\/th>\r\n                  <th>Interest Saved<\/th>\r\n                <\/tr>\r\n\r\n              <\/thead>\r\n\r\n              <tbody>\r\n\r\n                <tr>\r\n                  <td id=\"dcc-s0-payment\">$0<\/td>\r\n                  <td id=\"dcc-s0-time\">\u2014<\/td>\r\n                  <td id=\"dcc-s0-interest\">$0<\/td>\r\n                  <td id=\"dcc-s0-saving\">$0<\/td>\r\n                <\/tr>\r\n\r\n                <tr>\r\n                  <td id=\"dcc-s1-payment\">$0<\/td>\r\n                  <td id=\"dcc-s1-time\">\u2014<\/td>\r\n                  <td id=\"dcc-s1-interest\">$0<\/td>\r\n                  <td id=\"dcc-s1-saving\">$0<\/td>\r\n                <\/tr>\r\n\r\n                <tr>\r\n                  <td id=\"dcc-s2-payment\">$0<\/td>\r\n                  <td id=\"dcc-s2-time\">\u2014<\/td>\r\n                  <td id=\"dcc-s2-interest\">$0<\/td>\r\n                  <td id=\"dcc-s2-saving\">$0<\/td>\r\n                <\/tr>\r\n\r\n                <tr>\r\n                  <td id=\"dcc-s3-payment\">$0<\/td>\r\n                  <td id=\"dcc-s3-time\">\u2014<\/td>\r\n                  <td id=\"dcc-s3-interest\">$0<\/td>\r\n                  <td id=\"dcc-s3-saving\">$0<\/td>\r\n                <\/tr>\r\n\r\n              <\/tbody>\r\n\r\n            <\/table>\r\n\r\n          <\/div>\r\n\r\n        <\/div>\r\n\r\n\r\n        <!-- CHART -->\r\n\r\n        <div class=\"dcc-section\">\r\n\r\n          <h3>Debt Balance Comparison<\/h3>\r\n\r\n          <p class=\"dcc-section-description\">\r\n            Estimated remaining balance under the current-debt and\r\n            consolidation scenarios.\r\n          <\/p>\r\n\r\n          <div class=\"dcc-chart\">\r\n            <canvas id=\"dcc-chart-canvas\"><\/canvas>\r\n          <\/div>\r\n\r\n        <\/div>\r\n\r\n\r\n        <!-- RECOMMENDATION -->\r\n\r\n        <div class=\"dcc-decision\">\r\n\r\n          <h3>What the Numbers Suggest<\/h3>\r\n\r\n          <p id=\"dcc-decision-text\"><\/p>\r\n\r\n        <\/div>\r\n\r\n\r\n        <div class=\"dcc-disclaimer\">\r\n\r\n          <strong>Disclaimer:<\/strong>\r\n\r\n          This calculator provides estimates for educational purposes\r\n          only. Actual loan costs can differ because of lender terms,\r\n          daily interest calculations, fees, prepayment penalties,\r\n          changes in interest rates and other factors.\r\n\r\n          Debt consolidation may reduce monthly payments while increasing\r\n          the repayment period or total borrowing cost. A lower monthly\r\n          payment does not necessarily mean a lower total cost.\r\n\r\n          This calculator does not provide financial, legal or credit\r\n          advice.\r\n\r\n          <br><br>\r\n\r\n          *Estimated current-debt interest assumes each debt is repaid\r\n          using its entered monthly payment and a fixed APR. Actual\r\n          credit-card and loan calculations may differ.\r\n\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- SEO CONTENT -->\r\n\r\n      <div class=\"dcc-content\">\r\n\r\n        <h3>How to Use the Debt Consolidation Calculator<\/h3>\r\n\r\n        <p>\r\n          Enter your current debts, including each balance, annual\r\n          percentage rate and monthly payment. Then enter the proposed\r\n          consolidation loan's interest rate, term and fees. The calculator\r\n          compares your current debt payments with the estimated payment\r\n          and total cost of the new loan.\r\n        <\/p>\r\n\r\n        <h3>What Is Debt Consolidation?<\/h3>\r\n\r\n        <p>\r\n          Debt consolidation combines multiple debts into a new loan or\r\n          financial arrangement. The goal may be to simplify payments,\r\n          reduce the interest rate, or create a more manageable repayment\r\n          structure. The actual benefits depend on the interest rate,\r\n          fees, repayment period and terms of the new loan.\r\n        <\/p>\r\n\r\n        <h3>Does Debt Consolidation Save Money?<\/h3>\r\n\r\n        <p>\r\n          A consolidation loan may reduce interest costs when its effective\r\n          cost is lower than the cost of the debts being replaced.\r\n          However, extending the repayment period can increase the total\r\n          amount of interest paid even when the monthly payment becomes\r\n          smaller. Compare both monthly payments and total costs before\r\n          making a decision.\r\n        <\/p>\r\n\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n<style>\r\n\r\n\/* ==========================================================\r\n   USA DEBT CONSOLIDATION CALCULATOR\r\n   PRIMARY COLOUR: #7C3AED\r\n========================================================== *\/\r\n\r\n#dcc-usa-calculator {\r\n\r\n  --dcc-primary: #7C3AED;\r\n  --dcc-primary-dark: #6D28D9;\r\n  --dcc-primary-light: #F3E8FF;\r\n\r\n  --dcc-text: #111827;\r\n  --dcc-muted: #6B7280;\r\n  --dcc-border: #E5E7EB;\r\n  --dcc-bg: #F8FAFC;\r\n\r\n  --dcc-green: #15803D;\r\n  --dcc-green-bg: #F0FDF4;\r\n\r\n  --dcc-red: #B91C1C;\r\n  --dcc-red-bg: #FEF2F2;\r\n\r\n  max-width: 1100px;\r\n  margin: 30px auto;\r\n\r\n  font-family:\r\n    Arial,\r\n    Helvetica,\r\n    sans-serif;\r\n\r\n  color: var(--dcc-text);\r\n\r\n  line-height: 1.5;\r\n\r\n}\r\n\r\n\r\n#dcc-usa-calculator *,\r\n#dcc-usa-calculator *::before,\r\n#dcc-usa-calculator *::after {\r\n\r\n  box-sizing: border-box;\r\n\r\n}\r\n\r\n\r\n\/* HERO *\/\r\n\r\n.dcc-hero {\r\n\r\n  text-align: center;\r\n\r\n  margin-bottom: 25px;\r\n\r\n}\r\n\r\n\r\n.dcc-badge {\r\n\r\n  display: inline-block;\r\n\r\n  padding: 6px 12px;\r\n\r\n  border-radius: 50px;\r\n\r\n  background:\r\n    var(--dcc-primary-light);\r\n\r\n  color:\r\n    var(--dcc-primary-dark);\r\n\r\n  font-size: 11px;\r\n\r\n  font-weight: 800;\r\n\r\n  letter-spacing: .5px;\r\n\r\n  margin-bottom: 10px;\r\n\r\n}\r\n\r\n\r\n.dcc-hero h2 {\r\n\r\n  margin:\r\n    0 0 10px;\r\n\r\n  font-size: 32px;\r\n\r\n  line-height: 1.2;\r\n\r\n}\r\n\r\n\r\n.dcc-hero p {\r\n\r\n  max-width: 760px;\r\n\r\n  margin: auto;\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  font-size: 15px;\r\n\r\n}\r\n\r\n\r\n\/* CARD *\/\r\n\r\n.dcc-card {\r\n\r\n  background: #fff;\r\n\r\n  border:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  border-radius: 14px;\r\n\r\n  padding: 22px;\r\n\r\n  margin-bottom: 20px;\r\n\r\n  box-shadow:\r\n    0 4px 18px\r\n    rgba(0,0,0,.05);\r\n\r\n}\r\n\r\n\r\n.dcc-card h3 {\r\n\r\n  margin:\r\n    0 0 5px;\r\n\r\n  font-size: 21px;\r\n\r\n}\r\n\r\n\r\n.dcc-help {\r\n\r\n  margin:\r\n    0 0 20px;\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  font-size: 13px;\r\n\r\n}\r\n\r\n\r\n\/* DEBT TABLE *\/\r\n\r\n.dcc-debt-table {\r\n\r\n  overflow-x: auto;\r\n\r\n}\r\n\r\n\r\n.dcc-debt-head,\r\n.dcc-debt-row {\r\n\r\n  display: grid;\r\n\r\n  grid-template-columns:\r\n    1.15fr\r\n    1.2fr\r\n    1fr\r\n    1.2fr;\r\n\r\n  gap: 12px;\r\n\r\n  align-items: center;\r\n\r\n}\r\n\r\n\r\n.dcc-debt-head {\r\n\r\n  padding:\r\n    0 10px 9px;\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  font-size: 12px;\r\n\r\n  font-weight: 800;\r\n\r\n}\r\n\r\n\r\n.dcc-debt-row {\r\n\r\n  padding:\r\n    11px 10px;\r\n\r\n  border-top:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  font-size: 13px;\r\n\r\n  font-weight: 700;\r\n\r\n}\r\n\r\n\r\n.dcc-input {\r\n\r\n  display: flex;\r\n\r\n  align-items: center;\r\n\r\n  height: 43px;\r\n\r\n  border:\r\n    1px solid\r\n    #D1D5DB;\r\n\r\n  border-radius: 7px;\r\n\r\n  background: #fff;\r\n\r\n  overflow: hidden;\r\n\r\n}\r\n\r\n\r\n.dcc-input:focus-within {\r\n\r\n  border-color:\r\n    var(--dcc-primary);\r\n\r\n  box-shadow:\r\n    0 0 0 3px\r\n    rgba(124,58,237,.10);\r\n\r\n}\r\n\r\n\r\n.dcc-input span {\r\n\r\n  padding:\r\n    0 9px;\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  font-size: 12px;\r\n\r\n  white-space: nowrap;\r\n\r\n}\r\n\r\n\r\n.dcc-input input {\r\n\r\n  width: 100%;\r\n\r\n  height: 100%;\r\n\r\n  border: 0;\r\n\r\n  outline: 0;\r\n\r\n  padding:\r\n    0 7px;\r\n\r\n  background:\r\n    transparent;\r\n\r\n  color:\r\n    var(--dcc-text);\r\n\r\n  font-size: 14px;\r\n\r\n}\r\n\r\n\r\n.dcc-current-summary {\r\n\r\n  display: grid;\r\n\r\n  grid-template-columns:\r\n    repeat(3,1fr);\r\n\r\n  gap: 12px;\r\n\r\n  margin-top: 18px;\r\n\r\n}\r\n\r\n\r\n.dcc-current-summary > div {\r\n\r\n  padding: 15px;\r\n\r\n  border-radius: 9px;\r\n\r\n  background:\r\n    var(--dcc-bg);\r\n\r\n  text-align: center;\r\n\r\n}\r\n\r\n\r\n.dcc-current-summary span {\r\n\r\n  display: block;\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  font-size: 12px;\r\n\r\n}\r\n\r\n\r\n.dcc-current-summary strong {\r\n\r\n  display: block;\r\n\r\n  margin-top: 5px;\r\n\r\n  font-size: 19px;\r\n\r\n}\r\n\r\n\r\n\/* FORM *\/\r\n\r\n.dcc-form-grid {\r\n\r\n  display: grid;\r\n\r\n  grid-template-columns:\r\n    repeat(2,1fr);\r\n\r\n  gap: 17px;\r\n\r\n  margin-top: 20px;\r\n\r\n}\r\n\r\n\r\n.dcc-field label {\r\n\r\n  display: block;\r\n\r\n  margin-bottom: 7px;\r\n\r\n  font-size: 13px;\r\n\r\n  font-weight: 700;\r\n\r\n}\r\n\r\n\r\n.dcc-input.large {\r\n\r\n  height: 47px;\r\n\r\n}\r\n\r\n\r\n.dcc-input.large input {\r\n\r\n  font-size: 15px;\r\n\r\n}\r\n\r\n\r\n#dcc-calculate {\r\n\r\n  width: 100%;\r\n\r\n  height: 50px;\r\n\r\n  margin-top: 20px;\r\n\r\n  border: 0;\r\n\r\n  border-radius: 8px;\r\n\r\n  background:\r\n    var(--dcc-primary);\r\n\r\n  color: #fff;\r\n\r\n  font-size: 16px;\r\n\r\n  font-weight: 800;\r\n\r\n  cursor: pointer;\r\n\r\n  transition: .2s;\r\n\r\n}\r\n\r\n\r\n#dcc-calculate:hover {\r\n\r\n  background:\r\n    var(--dcc-primary-dark);\r\n\r\n}\r\n\r\n\r\n.dcc-reset {\r\n\r\n  width: 100%;\r\n\r\n  height: 38px;\r\n\r\n  margin-top: 7px;\r\n\r\n  border: 0;\r\n\r\n  background: transparent;\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  cursor: pointer;\r\n\r\n}\r\n\r\n\r\n\/* ERROR *\/\r\n\r\n.dcc-error {\r\n\r\n  display: none;\r\n\r\n  padding: 14px;\r\n\r\n  margin-bottom: 18px;\r\n\r\n  border-radius: 9px;\r\n\r\n  background:\r\n    var(--dcc-red-bg);\r\n\r\n  color:\r\n    var(--dcc-red);\r\n\r\n  font-size: 13px;\r\n\r\n}\r\n\r\n\r\n\/* RESULT *\/\r\n\r\n.dcc-result-banner {\r\n\r\n  display: flex;\r\n\r\n  justify-content: space-between;\r\n\r\n  gap: 15px;\r\n\r\n  padding: 23px;\r\n\r\n  border-radius: 14px;\r\n\r\n  background:\r\n    linear-gradient(\r\n      135deg,\r\n      var(--dcc-primary),\r\n      var(--dcc-primary-dark)\r\n    );\r\n\r\n  color: #fff;\r\n\r\n  box-shadow:\r\n    0 8px 25px\r\n    rgba(124,58,237,.22);\r\n\r\n}\r\n\r\n\r\n.dcc-result-banner span {\r\n\r\n  display: block;\r\n\r\n  font-size: 11px;\r\n\r\n  opacity: .8;\r\n\r\n  font-weight: 700;\r\n\r\n  margin-bottom: 5px;\r\n\r\n}\r\n\r\n\r\n.dcc-result-banner strong {\r\n\r\n  font-size: 25px;\r\n\r\n}\r\n\r\n\r\n.dcc-banner-right {\r\n\r\n  text-align: right;\r\n\r\n}\r\n\r\n\r\n\/* STATS *\/\r\n\r\n.dcc-stat-grid {\r\n\r\n  display: grid;\r\n\r\n  grid-template-columns:\r\n    repeat(4,1fr);\r\n\r\n  gap: 12px;\r\n\r\n  margin-top: 14px;\r\n\r\n}\r\n\r\n\r\n.dcc-stat {\r\n\r\n  padding: 17px 10px;\r\n\r\n  background: #fff;\r\n\r\n  border:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  border-radius: 10px;\r\n\r\n  text-align: center;\r\n\r\n}\r\n\r\n\r\n.dcc-stat span {\r\n\r\n  display: block;\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  font-size: 12px;\r\n\r\n  margin-bottom: 5px;\r\n\r\n}\r\n\r\n\r\n.dcc-stat strong {\r\n\r\n  font-size: 18px;\r\n\r\n}\r\n\r\n\r\n\/* SAVINGS *\/\r\n\r\n.dcc-saving-box {\r\n\r\n  display: flex;\r\n\r\n  align-items: center;\r\n\r\n  justify-content: space-between;\r\n\r\n  gap: 15px;\r\n\r\n  margin-top: 15px;\r\n\r\n  padding: 19px;\r\n\r\n  background:\r\n    var(--dcc-green-bg);\r\n\r\n  border:\r\n    1px solid\r\n    #BBF7D0;\r\n\r\n  border-radius: 10px;\r\n\r\n}\r\n\r\n\r\n.dcc-saving-box strong {\r\n\r\n  display: block;\r\n\r\n}\r\n\r\n\r\n.dcc-saving-box small {\r\n\r\n  display: block;\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  margin-top: 4px;\r\n\r\n}\r\n\r\n\r\n.dcc-saving-box span {\r\n\r\n  color:\r\n    var(--dcc-green);\r\n\r\n  font-size: 24px;\r\n\r\n  font-weight: 800;\r\n\r\n}\r\n\r\n\r\n\/* SECTIONS *\/\r\n\r\n.dcc-section {\r\n\r\n  margin-top: 28px;\r\n\r\n}\r\n\r\n\r\n.dcc-section h3 {\r\n\r\n  margin:\r\n    0 0 8px;\r\n\r\n  font-size: 20px;\r\n\r\n}\r\n\r\n\r\n.dcc-section-description {\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  font-size: 13px;\r\n\r\n}\r\n\r\n\r\n\/* COMPARISON *\/\r\n\r\n.dcc-comparison {\r\n\r\n  display: grid;\r\n\r\n  grid-template-columns:\r\n    1fr 50px 1fr;\r\n\r\n  gap: 12px;\r\n\r\n  align-items: stretch;\r\n\r\n}\r\n\r\n\r\n.dcc-comparison-column {\r\n\r\n  border:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  border-radius: 11px;\r\n\r\n  overflow: hidden;\r\n\r\n}\r\n\r\n\r\n.dcc-new-column {\r\n\r\n  border-color:\r\n    var(--dcc-primary);\r\n\r\n}\r\n\r\n\r\n.dcc-comparison-title {\r\n\r\n  padding: 13px;\r\n\r\n  background:\r\n    #F9FAFB;\r\n\r\n  font-weight: 800;\r\n\r\n  text-align: center;\r\n\r\n}\r\n\r\n\r\n.dcc-new-column\r\n.dcc-comparison-title {\r\n\r\n  background:\r\n    var(--dcc-primary-light);\r\n\r\n  color:\r\n    var(--dcc-primary-dark);\r\n\r\n}\r\n\r\n\r\n.dcc-comparison-item {\r\n\r\n  display: flex;\r\n\r\n  justify-content: space-between;\r\n\r\n  gap: 10px;\r\n\r\n  padding: 13px;\r\n\r\n  border-top:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  font-size: 13px;\r\n\r\n}\r\n\r\n\r\n.dcc-comparison-item span {\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n}\r\n\r\n\r\n.dcc-vs {\r\n\r\n  align-self: center;\r\n\r\n  justify-self: center;\r\n\r\n  width: 42px;\r\n\r\n  height: 42px;\r\n\r\n  display: flex;\r\n\r\n  align-items: center;\r\n\r\n  justify-content: center;\r\n\r\n  border-radius: 50%;\r\n\r\n  background:\r\n    var(--dcc-primary);\r\n\r\n  color: #fff;\r\n\r\n  font-size: 12px;\r\n\r\n  font-weight: 800;\r\n\r\n}\r\n\r\n\r\n\/* BREAK EVEN *\/\r\n\r\n.dcc-break-even {\r\n\r\n  display: grid;\r\n\r\n  grid-template-columns:\r\n    repeat(3,1fr);\r\n\r\n  gap: 12px;\r\n\r\n}\r\n\r\n\r\n.dcc-break-even > div {\r\n\r\n  padding: 17px;\r\n\r\n  border:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  border-radius: 10px;\r\n\r\n  text-align: center;\r\n\r\n}\r\n\r\n\r\n.dcc-break-even span {\r\n\r\n  display: block;\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  font-size: 12px;\r\n\r\n}\r\n\r\n\r\n.dcc-break-even strong {\r\n\r\n  display: block;\r\n\r\n  margin-top: 5px;\r\n\r\n  font-size: 19px;\r\n\r\n  color:\r\n    var(--dcc-primary);\r\n\r\n}\r\n\r\n\r\n.dcc-note {\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  font-size: 11px;\r\n\r\n  line-height: 1.6;\r\n\r\n}\r\n\r\n\r\n\/* TABLE *\/\r\n\r\n.dcc-table-wrap {\r\n\r\n  overflow-x: auto;\r\n\r\n  border:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  border-radius: 10px;\r\n\r\n}\r\n\r\n\r\n.dcc-table {\r\n\r\n  width: 100%;\r\n\r\n  min-width: 580px;\r\n\r\n  border-collapse:\r\n    collapse;\r\n\r\n}\r\n\r\n\r\n.dcc-table th {\r\n\r\n  padding: 12px;\r\n\r\n  background:\r\n    #F9FAFB;\r\n\r\n  text-align: left;\r\n\r\n  font-size: 12px;\r\n\r\n  font-weight: 800;\r\n\r\n}\r\n\r\n\r\n.dcc-table td {\r\n\r\n  padding: 12px;\r\n\r\n  border-top:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  font-size: 13px;\r\n\r\n}\r\n\r\n\r\n.dcc-table tbody tr:hover {\r\n\r\n  background:\r\n    #FAF5FF;\r\n\r\n}\r\n\r\n\r\n\/* CHART *\/\r\n\r\n.dcc-chart {\r\n\r\n  width: 100%;\r\n\r\n  height: 310px;\r\n\r\n  padding: 15px;\r\n\r\n  background: #fff;\r\n\r\n  border:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  border-radius: 10px;\r\n\r\n}\r\n\r\n\r\n#dcc-chart-canvas {\r\n\r\n  width: 100%;\r\n\r\n  height: 100%;\r\n\r\n}\r\n\r\n\r\n\/* DECISION *\/\r\n\r\n.dcc-decision {\r\n\r\n  margin-top: 25px;\r\n\r\n  padding: 20px;\r\n\r\n  border-radius: 11px;\r\n\r\n  background:\r\n    var(--dcc-primary-light);\r\n\r\n  border-left:\r\n    4px solid\r\n    var(--dcc-primary);\r\n\r\n}\r\n\r\n\r\n.dcc-decision h3 {\r\n\r\n  margin:\r\n    0 0 7px;\r\n\r\n  font-size: 18px;\r\n\r\n}\r\n\r\n\r\n.dcc-decision p {\r\n\r\n  margin: 0;\r\n\r\n  font-size: 14px;\r\n\r\n  line-height: 1.7;\r\n\r\n}\r\n\r\n\r\n\/* DISCLAIMER *\/\r\n\r\n.dcc-disclaimer {\r\n\r\n  margin-top: 25px;\r\n\r\n  padding-top: 18px;\r\n\r\n  border-top:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  color:\r\n    var(--dcc-muted);\r\n\r\n  font-size: 11px;\r\n\r\n  line-height: 1.7;\r\n\r\n}\r\n\r\n\r\n\/* SEO CONTENT *\/\r\n\r\n.dcc-content {\r\n\r\n  margin-top: 30px;\r\n\r\n  padding: 25px;\r\n\r\n  background: #fff;\r\n\r\n  border:\r\n    1px solid\r\n    var(--dcc-border);\r\n\r\n  border-radius: 14px;\r\n\r\n}\r\n\r\n\r\n.dcc-content h3 {\r\n\r\n  margin:\r\n    0 0 9px;\r\n\r\n  font-size: 21px;\r\n\r\n}\r\n\r\n\r\n.dcc-content p {\r\n\r\n  margin:\r\n    0 0 25px;\r\n\r\n  color:\r\n    #4B5563;\r\n\r\n  font-size: 15px;\r\n\r\n}\r\n\r\n\r\n\/* RESPONSIVE *\/\r\n\r\n@media(max-width:850px) {\r\n\r\n  .dcc-debt-head,\r\n  .dcc-debt-row {\r\n\r\n    grid-template-columns:\r\n      1fr 1fr;\r\n\r\n  }\r\n\r\n  .dcc-debt-head {\r\n\r\n    display: none;\r\n\r\n  }\r\n\r\n  .dcc-debt-row {\r\n\r\n    padding: 15px;\r\n\r\n    border:\r\n      1px solid\r\n      var(--dcc-border);\r\n\r\n    border-radius: 10px;\r\n\r\n    margin-bottom: 10px;\r\n\r\n  }\r\n\r\n  .dcc-debt-row > div {\r\n\r\n    min-width: 0;\r\n\r\n  }\r\n\r\n  .dcc-debt-row > div:first-child {\r\n\r\n    grid-column:\r\n      1 \/ -1;\r\n\r\n    color:\r\n      var(--dcc-primary-dark);\r\n\r\n  }\r\n\r\n  .dcc-debt-row > div::before {\r\n\r\n    content:\r\n      attr(data-label);\r\n\r\n    display: block;\r\n\r\n    margin-bottom: 5px;\r\n\r\n    color:\r\n      var(--dcc-muted);\r\n\r\n    font-size: 10px;\r\n\r\n    font-weight: 600;\r\n\r\n  }\r\n\r\n}\r\n\r\n\r\n@media(max-width:700px) {\r\n\r\n  .dcc-stat-grid {\r\n\r\n    grid-template-columns:\r\n      1fr 1fr;\r\n\r\n  }\r\n\r\n  .dcc-current-summary {\r\n\r\n    grid-template-columns:\r\n      1fr;\r\n\r\n  }\r\n\r\n  .dcc-comparison {\r\n\r\n    grid-template-columns:\r\n      1fr;\r\n\r\n  }\r\n\r\n  .dcc-vs {\r\n\r\n    margin:\r\n      0 auto;\r\n\r\n  }\r\n\r\n  .dcc-break-even {\r\n\r\n    grid-template-columns:\r\n      1fr;\r\n\r\n  }\r\n\r\n}\r\n\r\n\r\n@media(max-width:550px) {\r\n\r\n  #dcc-usa-calculator {\r\n\r\n    margin:\r\n      15px auto;\r\n\r\n  }\r\n\r\n  .dcc-hero h2 {\r\n\r\n    font-size: 26px;\r\n\r\n  }\r\n\r\n  .dcc-form-grid {\r\n\r\n    grid-template-columns:\r\n      1fr;\r\n\r\n  }\r\n\r\n  .dcc-result-banner {\r\n\r\n    flex-direction: column;\r\n\r\n  }\r\n\r\n  .dcc-banner-right {\r\n\r\n    text-align: left;\r\n\r\n  }\r\n\r\n  .dcc-saving-box {\r\n\r\n    flex-direction: column;\r\n\r\n    align-items: flex-start;\r\n\r\n  }\r\n\r\n}\r\n\r\n\r\n@media(max-width:420px) {\r\n\r\n  .dcc-stat-grid {\r\n\r\n    grid-template-columns:\r\n      1fr;\r\n\r\n  }\r\n\r\n  .dcc-card {\r\n\r\n    padding: 17px;\r\n\r\n  }\r\n\r\n}\r\n\r\n<\/style>\r\n\r\n\r\n<script>\r\n\r\n(function() {\r\n\r\n  \"use strict\";\r\n\r\n\r\n  \/* ======================================\r\n     HELPERS\r\n  ====================================== *\/\r\n\r\n  function num(id) {\r\n\r\n    var el =\r\n      document.getElementById(id);\r\n\r\n    if (!el) return 0;\r\n\r\n    var value =\r\n      parseFloat(el.value);\r\n\r\n    return isFinite(value)\r\n      ? value\r\n      : 0;\r\n\r\n  }\r\n\r\n\r\n  function money(value) {\r\n\r\n    if (!isFinite(value)) {\r\n      return \"$0.00\";\r\n    }\r\n\r\n    return \"$\" +\r\n      value.toLocaleString(\r\n        \"en-US\",\r\n        {\r\n          minimumFractionDigits: 2,\r\n          maximumFractionDigits: 2\r\n        }\r\n      );\r\n\r\n  }\r\n\r\n\r\n  function timeText(months) {\r\n\r\n    if (!months) {\r\n      return \"\u2014\";\r\n    }\r\n\r\n    var years =\r\n      Math.floor(months \/ 12);\r\n\r\n    var remaining =\r\n      months % 12;\r\n\r\n\r\n    if (years === 0) {\r\n\r\n      return months +\r\n        (\r\n          months === 1\r\n            ? \" month\"\r\n            : \" months\"\r\n        );\r\n\r\n    }\r\n\r\n\r\n    if (remaining === 0) {\r\n\r\n      return years +\r\n        (\r\n          years === 1\r\n            ? \" year\"\r\n            : \" years\"\r\n        );\r\n\r\n    }\r\n\r\n\r\n    return years +\r\n      (\r\n        years === 1\r\n          ? \" year \"\r\n          : \" years \"\r\n      ) +\r\n      remaining +\r\n      (\r\n        remaining === 1\r\n          ? \" month\"\r\n          : \" months\"\r\n      );\r\n\r\n  }\r\n\r\n\r\n  \/* ======================================\r\n     GET CURRENT DEBTS\r\n  ====================================== *\/\r\n\r\n  function getDebts() {\r\n\r\n    var debts = [];\r\n\r\n    var totalBalance = 0;\r\n\r\n    var totalPayment = 0;\r\n\r\n    var weightedRate = 0;\r\n\r\n    var validDebtCount = 0;\r\n\r\n\r\n    for (\r\n      var i = 1;\r\n      i <= 5;\r\n      i++\r\n    ) {\r\n\r\n      var balance =\r\n        num(\"dcc-balance-\" + i);\r\n\r\n      var apr =\r\n        num(\"dcc-apr-\" + i);\r\n\r\n      var payment =\r\n        num(\"dcc-payment-\" + i);\r\n\r\n\r\n      if (balance > 0) {\r\n\r\n        debts.push({\r\n\r\n          balance: balance,\r\n\r\n          apr: apr,\r\n\r\n          payment: payment\r\n\r\n        });\r\n\r\n\r\n        totalBalance +=\r\n          balance;\r\n\r\n\r\n        totalPayment +=\r\n          payment;\r\n\r\n\r\n        weightedRate +=\r\n          balance * apr;\r\n\r\n\r\n        validDebtCount++;\r\n\r\n      }\r\n\r\n    }\r\n\r\n\r\n    var averageAPR =\r\n      totalBalance > 0\r\n        ? weightedRate \/ totalBalance\r\n        : 0;\r\n\r\n\r\n    return {\r\n\r\n      debts: debts,\r\n\r\n      totalBalance:\r\n        totalBalance,\r\n\r\n      totalPayment:\r\n        totalPayment,\r\n\r\n      weightedAPR:\r\n        averageAPR,\r\n\r\n      count:\r\n        validDebtCount\r\n\r\n    };\r\n\r\n  }\r\n\r\n\r\n  \/* ======================================\r\n     SINGLE DEBT PAYOFF\r\n  ====================================== *\/\r\n\r\n  function calculateDebt(\r\n    balance,\r\n    apr,\r\n    payment\r\n  ) {\r\n\r\n    if (\r\n      balance <= 0 ||\r\n      payment <= 0\r\n    ) {\r\n\r\n      return {\r\n        impossible: true\r\n      };\r\n\r\n    }\r\n\r\n\r\n    var rate =\r\n      apr \/ 100 \/ 12;\r\n\r\n\r\n    var remaining =\r\n      balance;\r\n\r\n\r\n    var interest = 0;\r\n\r\n    var months = 0;\r\n\r\n\r\n    if (rate === 0) {\r\n\r\n      months =\r\n        Math.ceil(\r\n          balance \/ payment\r\n        );\r\n\r\n\r\n      return {\r\n\r\n        months: months,\r\n\r\n        interest: 0,\r\n\r\n        total: balance\r\n\r\n      };\r\n\r\n    }\r\n\r\n\r\n    var firstInterest =\r\n      balance * rate;\r\n\r\n\r\n    if (\r\n      payment <= firstInterest\r\n    ) {\r\n\r\n      return {\r\n\r\n        impossible: true,\r\n\r\n        firstInterest:\r\n          firstInterest\r\n\r\n      };\r\n\r\n    }\r\n\r\n\r\n    while (\r\n      remaining > 0 &&\r\n      months < 1200\r\n    ) {\r\n\r\n      var monthlyInterest =\r\n        remaining * rate;\r\n\r\n\r\n      var principal =\r\n        payment -\r\n        monthlyInterest;\r\n\r\n\r\n      if (principal <= 0) {\r\n\r\n        return {\r\n          impossible: true\r\n        };\r\n\r\n      }\r\n\r\n\r\n      if (\r\n        payment >=\r\n        remaining +\r\n        monthlyInterest\r\n      ) {\r\n\r\n        interest +=\r\n          monthlyInterest;\r\n\r\n        remaining = 0;\r\n\r\n        months++;\r\n\r\n        break;\r\n\r\n      }\r\n\r\n\r\n      remaining -=\r\n        principal;\r\n\r\n      interest +=\r\n        monthlyInterest;\r\n\r\n      months++;\r\n\r\n    }\r\n\r\n\r\n    if (months >= 1200) {\r\n\r\n      return {\r\n        impossible: true\r\n      };\r\n\r\n    }\r\n\r\n\r\n    return {\r\n\r\n      months:\r\n        months,\r\n\r\n      interest:\r\n        interest,\r\n\r\n      total:\r\n        balance + interest\r\n\r\n    };\r\n\r\n  }\r\n\r\n\r\n  \/* ======================================\r\n     CURRENT DEBT TOTAL COST\r\n  ====================================== *\/\r\n\r\n  function currentDebtAnalysis(\r\n    debts\r\n  ) {\r\n\r\n    var totalInterest = 0;\r\n\r\n    var longestMonths = 0;\r\n\r\n    var impossible = false;\r\n\r\n\r\n    debts.forEach(\r\n      function(debt) {\r\n\r\n        var result =\r\n          calculateDebt(\r\n            debt.balance,\r\n            debt.apr,\r\n            debt.payment\r\n          );\r\n\r\n\r\n        if (\r\n          result.impossible\r\n        ) {\r\n\r\n          impossible = true;\r\n\r\n        } else {\r\n\r\n          totalInterest +=\r\n            result.interest;\r\n\r\n\r\n          if (\r\n            result.months >\r\n            longestMonths\r\n          ) {\r\n\r\n            longestMonths =\r\n              result.months;\r\n\r\n          }\r\n\r\n        }\r\n\r\n      }\r\n    );\r\n\r\n\r\n    return {\r\n\r\n      interest:\r\n        totalInterest,\r\n\r\n      months:\r\n        longestMonths,\r\n\r\n      impossible:\r\n        impossible\r\n\r\n    };\r\n\r\n  }\r\n\r\n\r\n  \/* ======================================\r\n     CONSOLIDATION LOAN\r\n  ====================================== *\/\r\n\r\n  function calculateLoan(\r\n    principal,\r\n    apr,\r\n    term,\r\n    paymentOverride\r\n  ) {\r\n\r\n    if (\r\n      principal <= 0 ||\r\n      term <= 0\r\n    ) {\r\n\r\n      return {\r\n        impossible: true\r\n      };\r\n\r\n    }\r\n\r\n\r\n    var rate =\r\n      apr \/ 100 \/ 12;\r\n\r\n\r\n    var payment;\r\n\r\n\r\n    if (\r\n      paymentOverride\r\n    ) {\r\n\r\n      payment =\r\n        paymentOverride;\r\n\r\n    } else {\r\n\r\n      if (rate === 0) {\r\n\r\n        payment =\r\n          principal \/ term;\r\n\r\n      } else {\r\n\r\n        payment =\r\n\r\n          principal *\r\n          rate *\r\n          Math.pow(\r\n            1 + rate,\r\n            term\r\n          )\r\n          \/\r\n          (\r\n            Math.pow(\r\n              1 + rate,\r\n              term\r\n            ) - 1\r\n          );\r\n\r\n      }\r\n\r\n    }\r\n\r\n\r\n    if (\r\n      payment <= 0\r\n    ) {\r\n\r\n      return {\r\n        impossible: true\r\n      };\r\n\r\n    }\r\n\r\n\r\n    var remaining =\r\n      principal;\r\n\r\n    var interest = 0;\r\n\r\n    var months = 0;\r\n\r\n\r\n    while (\r\n      remaining > 0 &&\r\n      months < 1200\r\n    ) {\r\n\r\n      var monthlyInterest =\r\n        remaining * rate;\r\n\r\n\r\n      var principalPaid =\r\n        payment -\r\n        monthlyInterest;\r\n\r\n\r\n      if (\r\n        principalPaid <= 0\r\n      ) {\r\n\r\n        return {\r\n          impossible: true\r\n        };\r\n\r\n      }\r\n\r\n\r\n      if (\r\n        payment >=\r\n        remaining +\r\n        monthlyInterest\r\n      ) {\r\n\r\n        interest +=\r\n          monthlyInterest;\r\n\r\n        remaining = 0;\r\n\r\n        months++;\r\n\r\n        break;\r\n\r\n      }\r\n\r\n\r\n      remaining -=\r\n        principalPaid;\r\n\r\n      interest +=\r\n        monthlyInterest;\r\n\r\n      months++;\r\n\r\n    }\r\n\r\n\r\n    if (months >= 1200) {\r\n\r\n      return {\r\n        impossible: true\r\n      };\r\n\r\n    }\r\n\r\n\r\n    return {\r\n\r\n      payment:\r\n        payment,\r\n\r\n      months:\r\n        months,\r\n\r\n      interest:\r\n        interest,\r\n\r\n      total:\r\n        principal + interest\r\n\r\n    };\r\n\r\n  }\r\n\r\n\r\n  \/* ======================================\r\n     CHART\r\n  ====================================== *\/\r\n\r\n  function drawChart(\r\n    currentDebts,\r\n    newLoan\r\n  ) {\r\n\r\n    var canvas =\r\n      document.getElementById(\r\n        \"dcc-chart-canvas\"\r\n      );\r\n\r\n\r\n    if (!canvas) return;\r\n\r\n\r\n    var ctx =\r\n      canvas.getContext(\"2d\");\r\n\r\n\r\n    var rect =\r\n      canvas.getBoundingClientRect();\r\n\r\n\r\n    var dpr =\r\n      window.devicePixelRatio || 1;\r\n\r\n\r\n    canvas.width =\r\n      rect.width * dpr;\r\n\r\n\r\n    canvas.height =\r\n      rect.height * dpr;\r\n\r\n\r\n    ctx.scale(\r\n      dpr,\r\n      dpr\r\n    );\r\n\r\n\r\n    var width =\r\n      rect.width;\r\n\r\n\r\n    var height =\r\n      rect.height;\r\n\r\n\r\n    ctx.clearRect(\r\n      0,\r\n      0,\r\n      width,\r\n      height\r\n    );\r\n\r\n\r\n    var currentBalances =\r\n      [];\r\n\r\n\r\n    var newBalances =\r\n      [];\r\n\r\n\r\n    currentDebts.forEach(\r\n      function(debt) {\r\n\r\n        var result =\r\n          calculateDebt(\r\n            debt.balance,\r\n            debt.apr,\r\n            debt.payment\r\n          );\r\n\r\n\r\n        if (\r\n          result &&\r\n          !result.impossible\r\n        ) {\r\n\r\n          currentBalances.push({\r\n            months:\r\n              result.months,\r\n\r\n            balance:\r\n              debt.balance\r\n          });\r\n\r\n        }\r\n\r\n      }\r\n    );\r\n\r\n\r\n    var maxMonths =\r\n      Math.max(\r\n        newLoan.months,\r\n        currentBalances.reduce(\r\n          function(max, item) {\r\n\r\n            return Math.max(\r\n              max,\r\n              item.months\r\n            );\r\n\r\n          },\r\n          0\r\n        )\r\n      );\r\n\r\n\r\n    if (maxMonths <= 0) {\r\n      return;\r\n    }\r\n\r\n\r\n    var startBalance =\r\n      currentDebts.reduce(\r\n        function(total, debt) {\r\n\r\n          return total +\r\n            debt.balance;\r\n\r\n        },\r\n        0\r\n      );\r\n\r\n\r\n    var padding = 40;\r\n\r\n\r\n    var pointsCurrent = [];\r\n\r\n    var pointsNew = [];\r\n\r\n\r\n    \/*\r\n     * Approximate current-debt curve.\r\n     *\/\r\n\r\n    for (\r\n      var m = 0;\r\n      m <= maxMonths;\r\n      m++\r\n    ) {\r\n\r\n      var totalRemaining = 0;\r\n\r\n\r\n      currentDebts.forEach(\r\n        function(debt) {\r\n\r\n          var r =\r\n            debt.apr \/\r\n            100 \/\r\n            12;\r\n\r\n\r\n          var remaining =\r\n            debt.balance;\r\n\r\n\r\n          for (\r\n            var x = 0;\r\n            x < m;\r\n            x++\r\n          ) {\r\n\r\n            if (\r\n              remaining <= 0\r\n            ) {\r\n              break;\r\n            }\r\n\r\n\r\n            var interest =\r\n              remaining * r;\r\n\r\n\r\n            var principal =\r\n              debt.payment -\r\n              interest;\r\n\r\n\r\n            if (\r\n              principal <= 0\r\n            ) {\r\n\r\n              break;\r\n\r\n            }\r\n\r\n\r\n            remaining =\r\n              Math.max(\r\n                0,\r\n                remaining -\r\n                principal\r\n              );\r\n\r\n          }\r\n\r\n\r\n          totalRemaining +=\r\n            remaining;\r\n\r\n        }\r\n      );\r\n\r\n\r\n      pointsCurrent.push(\r\n        totalRemaining\r\n      );\r\n\r\n\r\n      \/*\r\n       * New loan balance\r\n       *\/\r\n\r\n      var newRate =\r\n        num(\"dcc-new-rate\") \/\r\n        100 \/\r\n        12;\r\n\r\n\r\n      var newRemaining =\r\n        startBalance;\r\n\r\n\r\n      var newPayment =\r\n        newLoan.payment;\r\n\r\n\r\n      for (\r\n        var n = 0;\r\n        n < m;\r\n        n++\r\n      ) {\r\n\r\n        if (\r\n          newRemaining <= 0\r\n        ) {\r\n          break;\r\n        }\r\n\r\n\r\n        var ni =\r\n          newRemaining *\r\n          newRate;\r\n\r\n\r\n        var np =\r\n          newPayment -\r\n          ni;\r\n\r\n\r\n        if (\r\n          np <= 0\r\n        ) {\r\n          break;\r\n        }\r\n\r\n\r\n        newRemaining =\r\n          Math.max(\r\n            0,\r\n            newRemaining -\r\n            np\r\n          );\r\n\r\n      }\r\n\r\n\r\n      pointsNew.push(\r\n        newRemaining\r\n      );\r\n\r\n    }\r\n\r\n\r\n    var maxBalance =\r\n      startBalance;\r\n\r\n\r\n    function xPos(i) {\r\n\r\n      return padding +\r\n        (\r\n          i \/ maxMonths\r\n        ) *\r\n        (\r\n          width -\r\n          padding * 2\r\n        );\r\n\r\n    }\r\n\r\n\r\n    function yPos(value) {\r\n\r\n      return height -\r\n        padding -\r\n        (\r\n          value \/ maxBalance\r\n        ) *\r\n        (\r\n          height -\r\n          padding * 2\r\n        );\r\n\r\n    }\r\n\r\n\r\n    \/*\r\n     * GRID\r\n     *\/\r\n\r\n    ctx.strokeStyle =\r\n      \"#E5E7EB\";\r\n\r\n    ctx.lineWidth = 1;\r\n\r\n\r\n    for (\r\n      var g = 0;\r\n      g <= 4;\r\n      g++\r\n    ) {\r\n\r\n      var gy =\r\n        padding +\r\n        g *\r\n        (\r\n          (\r\n            height -\r\n            padding * 2\r\n          ) \/ 4\r\n        );\r\n\r\n\r\n      ctx.beginPath();\r\n\r\n      ctx.moveTo(\r\n        padding,\r\n        gy\r\n      );\r\n\r\n      ctx.lineTo(\r\n        width - padding,\r\n        gy\r\n      );\r\n\r\n      ctx.stroke();\r\n\r\n    }\r\n\r\n\r\n    \/*\r\n     * CURRENT DEBT LINE\r\n     *\/\r\n\r\n    ctx.beginPath();\r\n\r\n\r\n    pointsCurrent.forEach(\r\n      function(value, index) {\r\n\r\n        var px =\r\n          xPos(index);\r\n\r\n\r\n        var py =\r\n          yPos(value);\r\n\r\n\r\n        if (\r\n          index === 0\r\n        ) {\r\n\r\n          ctx.moveTo(\r\n            px,\r\n            py\r\n          );\r\n\r\n        } else {\r\n\r\n          ctx.lineTo(\r\n            px,\r\n            py\r\n          );\r\n\r\n        }\r\n\r\n      }\r\n    );\r\n\r\n\r\n    ctx.strokeStyle =\r\n      \"#6B7280\";\r\n\r\n    ctx.lineWidth = 2;\r\n\r\n    ctx.stroke();\r\n\r\n\r\n    \/*\r\n     * CONSOLIDATION LINE\r\n     *\/\r\n\r\n    ctx.beginPath();\r\n\r\n\r\n    pointsNew.forEach(\r\n      function(value, index) {\r\n\r\n        var px =\r\n          xPos(index);\r\n\r\n\r\n        var py =\r\n          yPos(value);\r\n\r\n\r\n        if (\r\n          index === 0\r\n        ) {\r\n\r\n          ctx.moveTo(\r\n            px,\r\n            py\r\n          );\r\n\r\n        } else {\r\n\r\n          ctx.lineTo(\r\n            px,\r\n            py\r\n          );\r\n\r\n        }\r\n\r\n      }\r\n    );\r\n\r\n\r\n    ctx.strokeStyle =\r\n      \"#7C3AED\";\r\n\r\n    ctx.lineWidth = 3;\r\n\r\n    ctx.stroke();\r\n\r\n\r\n    \/*\r\n     * LEGEND\r\n     *\/\r\n\r\n    ctx.fillStyle =\r\n      \"#6B7280\";\r\n\r\n    ctx.font =\r\n      \"12px Arial\";\r\n\r\n\r\n    ctx.fillText(\r\n      \"Current debts\",\r\n      padding,\r\n      18\r\n    );\r\n\r\n\r\n    ctx.fillStyle =\r\n      \"#7C3AED\";\r\n\r\n\r\n    ctx.fillText(\r\n      \"Consolidation loan\",\r\n      padding + 110,\r\n      18\r\n    );\r\n\r\n\r\n    ctx.fillStyle =\r\n      \"#6B7280\";\r\n\r\n\r\n    ctx.fillText(\r\n      money(startBalance),\r\n      3,\r\n      padding\r\n    );\r\n\r\n\r\n    ctx.fillText(\r\n      \"$0\",\r\n      3,\r\n      height - padding\r\n    );\r\n\r\n  }\r\n\r\n\r\n  \/* ======================================\r\n     MAIN CALCULATOR\r\n  ====================================== *\/\r\n\r\n  function calculate() {\r\n\r\n    var debts =\r\n      getDebts();\r\n\r\n\r\n    var error =\r\n      document.getElementById(\r\n        \"dcc-error\"\r\n      );\r\n\r\n\r\n    error.style.display =\r\n      \"none\";\r\n\r\n\r\n    if (\r\n      debts.totalBalance <= 0\r\n    ) {\r\n\r\n      error.textContent =\r\n        \"Please enter at least one debt balance.\";\r\n\r\n      error.style.display =\r\n        \"block\";\r\n\r\n      return;\r\n\r\n    }\r\n\r\n\r\n    if (\r\n      debts.totalPayment <= 0\r\n    ) {\r\n\r\n      error.textContent =\r\n        \"Please enter at least one monthly debt payment.\";\r\n\r\n      error.style.display =\r\n        \"block\";\r\n\r\n      return;\r\n\r\n    }\r\n\r\n\r\n    var newRate =\r\n      num(\"dcc-new-rate\");\r\n\r\n\r\n    var term =\r\n      num(\"dcc-term\");\r\n\r\n\r\n    var fee =\r\n      num(\"dcc-fee\");\r\n\r\n\r\n    var otherFees =\r\n      num(\"dcc-other-fees\");\r\n\r\n\r\n    if (\r\n      newRate < 0 ||\r\n      term <= 0\r\n    ) {\r\n\r\n      error.textContent =\r\n        \"Please enter a valid consolidation loan interest rate and term.\";\r\n\r\n      error.style.display =\r\n        \"block\";\r\n\r\n      return;\r\n\r\n    }\r\n\r\n\r\n    var totalFees =\r\n      fee +\r\n      otherFees;\r\n\r\n\r\n    \/*\r\n     * Assume fees are paid separately\r\n     * rather than added to loan principal.\r\n     *\/\r\n\r\n    var newLoan =\r\n      calculateLoan(\r\n        debts.totalBalance,\r\n        newRate,\r\n        term\r\n      );\r\n\r\n\r\n    if (\r\n      newLoan.impossible\r\n    ) {\r\n\r\n      error.textContent =\r\n        \"The proposed consolidation loan could not be calculated with the entered terms.\";\r\n\r\n      error.style.display =\r\n        \"block\";\r\n\r\n      return;\r\n\r\n    }\r\n\r\n\r\n    \/* CURRENT DEBT ANALYSIS *\/\r\n\r\n    var current =\r\n      currentDebtAnalysis(\r\n        debts.debts\r\n      );\r\n\r\n\r\n    \/*\r\n     * RESULTS\r\n     *\/\r\n\r\n    document.getElementById(\r\n      \"dcc-total-debt\"\r\n    ).textContent =\r\n      money(\r\n        debts.totalBalance\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-current-payment\"\r\n    ).textContent =\r\n      money(\r\n        debts.totalPayment\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-weighted-apr\"\r\n    ).textContent =\r\n      debts.weightedAPR.toFixed(2) +\r\n      \"%\";\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-new-payment\"\r\n    ).textContent =\r\n      money(\r\n        newLoan.payment\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-payment-change\"\r\n    ).textContent =\r\n      money(\r\n        newLoan.payment -\r\n        debts.totalPayment\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-result-current-payment\"\r\n    ).textContent =\r\n      money(\r\n        debts.totalPayment\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-result-new-payment\"\r\n    ).textContent =\r\n      money(\r\n        newLoan.payment\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-current-interest\"\r\n    ).textContent =\r\n      current.impossible\r\n        ? \"Varies\"\r\n        : money(current.interest);\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-new-interest\"\r\n    ).textContent =\r\n      money(\r\n        newLoan.interest\r\n      );\r\n\r\n\r\n    \/*\r\n     * New total cost including fees\r\n     *\/\r\n\r\n    var newTotalCost =\r\n      newLoan.interest +\r\n      totalFees;\r\n\r\n\r\n    var currentInterest =\r\n      current.impossible\r\n        ? 0\r\n        : current.interest;\r\n\r\n\r\n    var interestSaving =\r\n      currentInterest -\r\n      newTotalCost;\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-interest-saving\"\r\n    ).textContent =\r\n      money(\r\n        Math.max(\r\n          0,\r\n          interestSaving\r\n        )\r\n      );\r\n\r\n\r\n    if (\r\n      interestSaving > 0\r\n    ) {\r\n\r\n      document.getElementById(\r\n        \"dcc-saving-title\"\r\n      ).textContent =\r\n        \"Estimated Cost Savings\";\r\n\r\n    } else {\r\n\r\n      document.getElementById(\r\n        \"dcc-saving-title\"\r\n      ).textContent =\r\n        \"Estimated Additional Cost\";\r\n\r\n      document.getElementById(\r\n        \"dcc-interest-saving\"\r\n      ).textContent =\r\n        money(\r\n          Math.abs(\r\n            interestSaving\r\n          )\r\n        );\r\n\r\n    }\r\n\r\n\r\n    \/*\r\n     * COMPARISON\r\n     *\/\r\n\r\n    document.getElementById(\r\n      \"dcc-compare-current-debt\"\r\n    ).textContent =\r\n      money(\r\n        debts.totalBalance\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-compare-current-payment\"\r\n    ).textContent =\r\n      money(\r\n        debts.totalPayment\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-compare-current-interest\"\r\n    ).textContent =\r\n      current.impossible\r\n        ? \"Unable to estimate\"\r\n        : money(\r\n            current.interest\r\n          );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-compare-current-time\"\r\n    ).textContent =\r\n      current.impossible\r\n        ? \"Unable to estimate\"\r\n        : timeText(\r\n            current.months\r\n          );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-compare-new-debt\"\r\n    ).textContent =\r\n      money(\r\n        debts.totalBalance\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-compare-new-payment\"\r\n    ).textContent =\r\n      money(\r\n        newLoan.payment\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-compare-new-interest\"\r\n    ).textContent =\r\n      money(\r\n        newLoan.interest +\r\n        totalFees\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-compare-new-time\"\r\n    ).textContent =\r\n      timeText(\r\n        newLoan.months\r\n      );\r\n\r\n\r\n    \/*\r\n     * BREAK EVEN\r\n     *\/\r\n\r\n    var monthlySavings =\r\n      debts.totalPayment -\r\n      newLoan.payment;\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-break-fees\"\r\n    ).textContent =\r\n      money(\r\n        totalFees\r\n      );\r\n\r\n\r\n    document.getElementById(\r\n      \"dcc-break-monthly\"\r\n    ).textContent =\r\n      money(\r\n        Math.abs(\r\n          monthlySavings\r\n        )\r\n      );\r\n\r\n\r\n    if (\r\n      monthlySavings > 0 &&\r\n      totalFees > 0\r\n    ) {\r\n\r\n      var breakMonths =\r\n        Math.ceil(\r\n          totalFees \/\r\n          monthlySavings\r\n        );\r\n\r\n\r\n      document.getElementById(\r\n        \"dcc-break-months\"\r\n      ).textContent =\r\n        breakMonths +\r\n        (\r\n          breakMonths === 1\r\n            ? \" month\"\r\n            : \" months\"\r\n        );\r\n\r\n    } else if (\r\n      monthlySavings > 0 &&\r\n      totalFees === 0\r\n    ) {\r\n\r\n      document.getElementById(\r\n        \"dcc-break-months\"\r\n      ).textContent =\r\n        \"Immediate\";\r\n\r\n    } else {\r\n\r\n      document.getElementById(\r\n        \"dcc-break-months\"\r\n      ).textContent =\r\n        \"No monthly-payment savings\";\r\n\r\n    }\r\n\r\n\r\n    \/*\r\n     * SCENARIOS\r\n     *\/\r\n\r\n    var scenarioPayments = [\r\n\r\n      newLoan.payment,\r\n\r\n      newLoan.payment + 50,\r\n\r\n      newLoan.payment + 100,\r\n\r\n      newLoan.payment + 250\r\n\r\n    ];\r\n\r\n\r\n    scenarioPayments.forEach(\r\n      function(payment, index) {\r\n\r\n        var scenario =\r\n          calculateLoan(\r\n            debts.totalBalance,\r\n            newRate,\r\n            term,\r\n            payment\r\n          );\r\n\r\n\r\n        document.getElementById(\r\n          \"dcc-s\" +\r\n          index +\r\n          \"-payment\"\r\n        ).textContent =\r\n          money(payment);\r\n\r\n\r\n        if (\r\n          scenario &&\r\n          !scenario.impossible\r\n        ) {\r\n\r\n          document.getElementById(\r\n            \"dcc-s\" +\r\n            index +\r\n            \"-time\"\r\n          ).textContent =\r\n            timeText(\r\n              scenario.months\r\n            );\r\n\r\n\r\n          document.getElementById(\r\n            \"dcc-s\" +\r\n            index +\r\n            \"-interest\"\r\n          ).textContent =\r\n            money(\r\n              scenario.interest\r\n            );\r\n\r\n\r\n          var saved =\r\n            Math.max(\r\n              0,\r\n              newLoan.interest -\r\n              scenario.interest\r\n            );\r\n\r\n\r\n          document.getElementById(\r\n            \"dcc-s\" +\r\n            index +\r\n            \"-saving\"\r\n          ).textContent =\r\n            money(saved);\r\n\r\n        }\r\n\r\n      }\r\n    );\r\n\r\n\r\n    \/*\r\n     * DECISION MESSAGE\r\n     *\/\r\n\r\n    var decision =\r\n      document.getElementById(\r\n        \"dcc-decision-text\"\r\n      );\r\n\r\n\r\n    if (\r\n      newLoan.payment <\r\n      debts.totalPayment\r\n    ) {\r\n\r\n      if (\r\n        interestSaving > 0\r\n      ) {\r\n\r\n        decision.textContent =\r\n\r\n          \"Based on the numbers entered, the proposed consolidation loan would reduce the estimated monthly payment and may also reduce the estimated overall interest and fees. However, compare the loan terms carefully before making a decision.\";\r\n\r\n      } else {\r\n\r\n        decision.textContent =\r\n\r\n          \"The proposed consolidation loan would reduce the estimated monthly payment, but the estimated total interest and fees are higher than the current-debt estimate. A lower monthly payment does not necessarily mean a lower total cost.\";\r\n\r\n      }\r\n\r\n    } else {\r\n\r\n      if (\r\n        interestSaving > 0\r\n      ) {\r\n\r\n        decision.textContent =\r\n\r\n          \"The proposed consolidation loan has a higher estimated monthly payment but may reduce the estimated total interest and fees. Paying debt faster can sometimes reduce total borrowing costs.\";\r\n\r\n      } else {\r\n\r\n        decision.textContent =\r\n\r\n          \"Based on the entered assumptions, the proposed consolidation loan does not appear to reduce the estimated monthly payment or total cost. Review the rate, term and fees before considering consolidation.\";\r\n\r\n      }\r\n\r\n    }\r\n\r\n\r\n    \/*\r\n     * CHART\r\n     *\/\r\n\r\n    drawChart(\r\n      debts.debts,\r\n      newLoan\r\n    );\r\n\r\n  }\r\n\r\n\r\n  \/* ======================================\r\n     RESET\r\n  ====================================== *\/\r\n\r\n  function reset() {\r\n\r\n    var defaults = {\r\n\r\n      \"dcc-balance-1\": \"5000\",\r\n      \"dcc-apr-1\": \"24.99\",\r\n      \"dcc-payment-1\": \"150\",\r\n\r\n      \"dcc-balance-2\": \"3000\",\r\n      \"dcc-apr-2\": \"21.99\",\r\n      \"dcc-payment-2\": \"100\",\r\n\r\n      \"dcc-balance-3\": \"7000\",\r\n      \"dcc-apr-3\": \"14.99\",\r\n      \"dcc-payment-3\": \"170\",\r\n\r\n      \"dcc-balance-4\": \"0\",\r\n      \"dcc-apr-4\": \"0\",\r\n      \"dcc-payment-4\": \"0\",\r\n\r\n      \"dcc-balance-5\": \"0\",\r\n      \"dcc-apr-5\": \"0\",\r\n      \"dcc-payment-5\": \"0\",\r\n\r\n      \"dcc-new-rate\": \"10\",\r\n      \"dcc-term\": \"48\",\r\n      \"dcc-fee\": \"300\",\r\n      \"dcc-other-fees\": \"0\"\r\n\r\n    };\r\n\r\n\r\n    Object.keys(defaults)\r\n      .forEach(\r\n        function(id) {\r\n\r\n          document.getElementById(\r\n            id\r\n          ).value =\r\n            defaults[id];\r\n\r\n        }\r\n      );\r\n\r\n\r\n    calculate();\r\n\r\n  }\r\n\r\n\r\n  \/* ======================================\r\n     EVENTS\r\n  ====================================== *\/\r\n\r\n  document.getElementById(\r\n    \"dcc-calculate\"\r\n  ).addEventListener(\r\n    \"click\",\r\n    calculate\r\n  );\r\n\r\n\r\n  document.getElementById(\r\n    \"dcc-reset\"\r\n  ).addEventListener(\r\n    \"click\",\r\n    reset\r\n  );\r\n\r\n\r\n  var inputs =\r\n    document.querySelectorAll(\r\n      \"#dcc-usa-calculator input\"\r\n    );\r\n\r\n\r\n  inputs.forEach(\r\n    function(input) {\r\n\r\n      input.addEventListener(\r\n        \"keydown\",\r\n        function(event) {\r\n\r\n          if (\r\n            event.key === \"Enter\"\r\n          ) {\r\n\r\n            calculate();\r\n\r\n          }\r\n\r\n        }\r\n      );\r\n\r\n    }\r\n  );\r\n\r\n\r\n  \/* INITIAL CALCULATION *\/\r\n\r\n  calculate();\r\n\r\n\r\n  \/* REDRAW CHART *\/\r\n\r\n  window.addEventListener(\r\n    \"resize\",\r\n    function() {\r\n\r\n      calculate();\r\n\r\n    }\r\n  );\r\n\r\n})();\r\n\r\n<\/script>\n<p style=\"text-align: justify;\">The <strong>Debt Consolidation Calculator USA<\/strong> is a free online tool that helps you compare your existing debts with a potential debt consolidation loan. Enter up to five debts, including credit cards, personal loans, auto loans, or other balances, along with their current balances, interest rates, and monthly payments. Then enter the proposed consolidation loan\u2019s APR, repayment term, and applicable fees. The calculator estimates your new monthly payment, total interest, total cost, monthly payment difference, potential savings, payoff time, and approximate break-even period. You can also compare how making additional payments may reduce the repayment period and interest costs. This tool is useful for people considering debt consolidation and wanting to understand whether a new loan could make their debt easier or less expensive to manage. Results are estimates for educational purposes only and actual costs may vary based on lender terms, fees, interest calculations, and individual circumstances.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Debt Consolidation Calculator USA is a free online tool that helps you compare your existing debts with a potential [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"elementor_theme","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[83],"tags":[],"class_list":["post-680","post","type-post","status-publish","format-standard","hentry","category-calculator"],"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"StockMaster Universe","author_link":"https:\/\/www.stockmaster.in\/universe\/author\/unistockadmin\/"},"rttpg_comment":0,"rttpg_category":"<a href=\"https:\/\/www.stockmaster.in\/universe\/category\/debt-personal-finance\/calculator\/\" rel=\"category tag\">Calculator<\/a>","rttpg_excerpt":"The Debt Consolidation Calculator USA is a free online tool that helps you compare your existing debts with a potential [&hellip;]","_links":{"self":[{"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/posts\/680","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/comments?post=680"}],"version-history":[{"count":0,"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/posts\/680\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/media?parent=680"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/categories?post=680"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/tags?post=680"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}