:root{--gold-glow:#fbbf2440;--emerald-glow:#34d39933;--indigo-glow:#818cf840;--gold:var(--calc-gold);--emerald:var(--calc-emerald);--indigo:var(--calc-indigo);--amber:var(--calc-amber);--red:var(--calc-rose);--bg-card:#1e293bcc;--bg-card-solid:#1e293b;--bg-input:#0f172a;--text-primary:var(--calc-text-primary);--text-secondary:var(--calc-text-dim);--text-tertiary:var(--calc-text-muted);--border-subtle:#ffffff12;--border-card:#ffffff1a;--shadow-card:0 4px 24px #0006;--font-family:var(--calc-font-headline)}[data-theme=light]{--gold-glow:#b453091f;--emerald-glow:#0478571f;--indigo-glow:#4f46e51f;--bg-card:#fffffff2;--bg-card-solid:#fff;--bg-input:#f0f4f9;--border-subtle:#00000014;--border-card:#0000001f;--shadow-card:0 2px 12px #00000017}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--calc-font-headline);background:linear-gradient(180deg, var(--calc-bg-page) 0%, #0a0e1a 100%);min-height:100vh;color:var(--calc-text-primary);-webkit-font-smoothing:antialiased;line-height:1.5}.calc-breadcrumb{max-width:1200px;color:var(--text-tertiary);align-items:center;gap:6px;margin:0 auto;padding:6px 20px;font-size:.75rem;display:flex}.calc-breadcrumb a{color:var(--text-tertiary);text-decoration:none}.calc-breadcrumb a:hover{color:var(--calc-gold)}.calc-breadcrumb .sep{color:var(--calc-text-muted)}.main-container{max-width:1200px;margin:0 auto;padding:12px 20px}.page-title{text-align:center;letter-spacing:-.5px;margin-bottom:2px;font-size:1.5rem;font-weight:800}.section-desc{color:var(--text-secondary);margin-bottom:10px;font-size:.8rem}.text-center{text-align:center}.tab-nav{border:1px solid var(--border-subtle);background:#ffffff08;border-radius:12px;gap:4px;margin-bottom:16px;padding:4px;display:flex}.tab-btn{color:var(--text-tertiary);cursor:pointer;font-size:.82rem;font-weight:600;font-family:var(--font-family);background:0 0;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px 12px;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s;display:flex}.tab-btn:hover{color:var(--text-primary);background:#ffffff0a}.tab-btn.active{color:var(--calc-gold);background:#f59e0b1f;box-shadow:0 0 0 1px #f59e0b4d}.tab-icon{font-size:.95rem}.tab-pane{display:none}.tab-pane.active{display:block}.dashboard-grid{grid-template-columns:340px 1fr;align-items:start;gap:16px;display:grid}.card{background:var(--calc-bg-card);backdrop-filter:blur(20px);border:1px solid var(--border-card);box-shadow:var(--shadow-card);border-radius:12px;padding:14px}.input-card{border-left:3px solid var(--calc-gold);height:fit-content;position:sticky;top:72px}.result-card{border-left:3px solid var(--emerald);min-width:0}.card-header-gold,.card-header-emerald{text-transform:uppercase;letter-spacing:1.5px;border-bottom:1px solid var(--border-subtle);margin-bottom:10px;padding-bottom:6px;font-size:.65rem;font-weight:700}.card-header-gold{color:var(--calc-gold)}.card-header-emerald{color:var(--emerald)}.input-section-header{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1.2px;border-top:1px solid var(--border-subtle);margin:12px 0 6px;padding-top:10px;font-size:.6rem;font-weight:600}.input-section-header:first-of-type{border-top:none;margin-top:0;padding-top:0}.input-group{margin-bottom:10px}.input-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:.67rem;font-weight:600;display:block}.input-wrapper{background:var(--bg-card-solid);border:1px solid var(--border-subtle);border-radius:10px;align-items:center;padding:2px;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s;display:flex;position:relative}.input-wrapper:focus-within{border-color:var(--calc-gold);box-shadow:0 0 0 3px var(--gold-glow)}.input-wrapper input{color:#fff;width:100%;font-size:1rem;font-weight:500;font-family:var(--font-family);font-variant-numeric:tabular-nums;background:0 0;border:none;padding:9px 14px}.input-wrapper input:focus{outline:none}.input-wrapper:before,.input-wrapper:after{color:var(--text-tertiary);pointer-events:none;font-size:1rem;position:absolute;top:50%;transform:translateY(-50%)}.input-wrapper.prefix input{padding-left:32px}.input-wrapper.prefix:before{content:attr(data-prefix);left:16px}.input-wrapper.suffix input{padding-right:48px}.input-wrapper.suffix:after{content:attr(data-suffix);right:16px}.input-row{gap:12px;margin-bottom:10px;display:flex}.half-width{flex:1}.label-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.label-row label{margin-bottom:0}select{background:var(--bg-input);color:var(--calc-gold);border:1px solid var(--border-subtle);cursor:pointer;font-size:.78rem;font-family:var(--calc-font-headline);border-radius:6px;padding:5px 8px}select:focus{border-color:var(--calc-gold);outline:none}select.glass-input{background:var(--bg-input);border:1px solid var(--border-subtle);width:100%;color:var(--calc-text-primary);font-family:var(--calc-font-headline);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2394a3b8' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:10px;margin-bottom:14px;padding:9px 32px 9px 14px;font-size:.9rem}select.glass-input:focus{border-color:#fbbf2480;outline:none}.pill-toggle{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:8px;gap:2px;padding:3px;display:flex}.pill-btn{color:var(--text-tertiary);cursor:pointer;font-size:.73rem;font-weight:600;font-family:var(--font-family);background:0 0;border:none;border-radius:6px;flex:1;padding:6px 10px;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s}.pill-btn:hover{color:var(--text-primary)}.pill-btn.active{color:var(--calc-gold);background:#f59e0b26;box-shadow:0 0 0 1px #f59e0b4d}.account-type-note{color:var(--calc-text-muted);margin-top:5px;font-size:.68rem;font-style:italic}.catchup-row{background:#f59e0b12;border:1px solid #f59e0b33;border-radius:8px;margin-bottom:8px;padding:8px 10px}.toggle-label-inline{cursor:pointer;align-items:center;gap:10px;display:flex}.toggle-track{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:20px;flex-shrink:0;width:36px;height:20px;transition:background .2s;position:relative}.toggle-track:after{content:"";background:var(--text-tertiary);border-radius:50%;width:12px;height:12px;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s;position:absolute;top:3px;left:3px}.toggle-label-inline input[type=checkbox]{display:none}.toggle-label-inline input:checked~.toggle-track{background:var(--calc-gold);border-color:var(--calc-gold)}.toggle-label-inline input:checked~.toggle-track:after{background:#fff;left:19px}.toggle-text{color:var(--text-secondary);font-size:.72rem;font-weight:500}.match-display{color:var(--text-secondary);background:#34d39912;border:1px solid #34d39926;border-radius:6px;margin-top:4px;padding:6px 10px;font-size:.75rem}.match-display strong{color:var(--emerald);font-weight:600}.field-error{color:var(--red);margin-top:4px;font-size:.65rem;font-weight:600}.field-warning{color:var(--calc-gold);margin-top:4px;font-size:.65rem;font-weight:600}.result-hero{text-align:center;padding:10px 0 8px}.retirement-headline{color:var(--text-secondary);margin-bottom:4px;font-size:.88rem}.retirement-age-display{color:var(--calc-gold);font-weight:700}.big-number{color:var(--text-primary);font-variant-numeric:tabular-nums;letter-spacing:-1px;margin:4px 0;font-size:2.4rem;font-weight:800;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s}.monthly-income-section{background:#34d39912;border:1px solid #34d39926;border-radius:10px;margin-top:8px;padding:10px 14px}.monthly-income-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:2px;font-size:.65rem}.monthly-income{color:var(--emerald);font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.income-note{color:var(--calc-text-muted);margin-top:3px;font-size:.68rem}.value-toggle{border:1px solid var(--border-subtle);background:#ffffff0d;border-radius:7px;gap:2px;padding:2px;display:inline-flex}.value-toggle-btn{color:#ffffff80;cursor:pointer;font-size:.72rem;font-weight:600;font-family:var(--font-family);background:0 0;border:none;border-radius:5px;padding:5px 12px;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s}.value-toggle-btn.active{color:var(--indigo);background:#818cf826;box-shadow:0 0 0 1px #818cf84d}.data-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0;display:grid}.data-card{border:1px solid var(--border-subtle);background:#ffffff08;border-radius:8px;padding:10px 10px 8px;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s}.data-card:hover{border-color:#ffffff26;transform:translateY(-1px)}.data-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.6px;margin-bottom:3px;font-size:.58rem}.data-value{font-variant-numeric:tabular-nums;color:var(--text-primary);font-size:.92rem;font-weight:700}.data-value.gold{color:var(--calc-gold)}.data-value.emerald{color:var(--emerald)}.data-value.indigo{color:var(--indigo)}.data-value.amber{color:var(--amber)}.formula-strip{border:1px solid var(--border-subtle);background:#ffffff05;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0;padding:8px 10px;font-size:.72rem;display:flex}.formula-chip{white-space:nowrap;font-variant-numeric:tabular-nums;background:#ffffff0d;border:1px solid #ffffff14;border-radius:20px;padding:3px 10px;font-weight:600}.formula-chip.gold{color:var(--calc-gold);background:#f59e0b14;border-color:#f59e0b33}.formula-chip.emerald{color:var(--emerald);background:#34d39914;border-color:#34d39933}.formula-chip.indigo{color:var(--indigo);background:#818cf814;border-color:#818cf833}.formula-chip.formula-result{color:#fff;background:#ffffff14;border-color:#ffffff40;font-size:.78rem}.formula-op{color:var(--calc-text-muted);font-weight:700}.chart-wrapper{height:200px;margin:10px 0;position:relative}.chart-wrapper canvas{width:100%;height:100%}.alert-stack{flex-direction:column;gap:6px;margin:10px 0;display:flex}.alert-item{border:1px solid #0000;border-radius:8px;align-items:flex-start;gap:8px;padding:8px 12px;font-size:.75rem;line-height:1.4;display:flex}.alert-icon{flex-shrink:0;margin-top:1px;font-size:.85rem}.alert-info{color:#a5b4fc;background:#6366f114;border-color:#6366f133}.alert-success{color:var(--emerald);background:#34d39914;border-color:#34d39933}.alert-warn{color:var(--calc-gold);background:#f59e0b14;border-color:#f59e0b40}.alert-danger{color:#fca5a5;background:#ef444414;border-color:#ef444433}.schedule-toggle-row{margin:10px 0 4px}.schedule-status-label{color:var(--calc-text-muted);margin-bottom:6px;font-size:.7rem;font-style:italic}.schedule-table{border-collapse:collapse;width:100%;color:var(--text-secondary);font-variant-numeric:tabular-nums;min-width:560px;font-size:.8rem}.schedule-table th{text-align:right;border-bottom:2px solid var(--border-subtle);color:var(--text-primary);text-transform:uppercase;letter-spacing:.8px;padding:10px;font-size:.65rem;font-weight:600}.schedule-table td{text-align:right;border-bottom:1px solid var(--border-subtle);padding:8px 10px}.schedule-table tr:hover td{color:var(--text-primary);background:#ffffff05}.schedule-table th:first-child,.schedule-table td:first-child,.schedule-table th:nth-child(2),.schedule-table td:nth-child(2){text-align:center}.export-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.btn-outline-sm{color:var(--text-secondary);cursor:pointer;font-size:.75rem;font-weight:600;font-family:var(--font-family);background:#ffffff0a;border:1px solid #ffffff1f;border-radius:7px;padding:7px 14px;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s}.btn-outline-sm:hover{border-color:var(--calc-gold);color:var(--calc-gold);background:#f59e0b0f}.btn-primary{width:100%;color:var(--calc-gold);cursor:pointer;font-size:.9rem;font-weight:700;font-family:var(--font-family);text-transform:uppercase;letter-spacing:1px;background:linear-gradient(135deg,#f59e0b33,#f59e0b1a);border:1px solid #f59e0b66;border-radius:10px;margin-top:12px;padding:12px;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s;display:block}.btn-primary:hover{box-shadow:0 0 20px var(--gold-glow);background:#f59e0b33;transform:translateY(-1px)}#toast-container{z-index:9999;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--bg-card-solid);border:1px solid var(--border-card);border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:.8rem;font-weight:600;animation:.3s toastIn;display:flex;box-shadow:0 4px 20px #0006}.toast.success{color:var(--emerald);border-color:#34d39966}.toast.info{color:var(--indigo);border-color:#818cf866}.toast.warn{color:var(--calc-gold);border-color:#f59e0b66}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.trust-block{border-left:3px solid var(--indigo);background:#818cf80d;border-radius:8px;margin:16px 0 0;padding:14px 18px;font-size:.73rem;line-height:1.6}.trust-block__label{color:var(--indigo);text-transform:uppercase;letter-spacing:1px;margin-bottom:4px;font-size:.65rem;display:block}.trust-block__body{color:var(--text-secondary)}.trust-block a{color:var(--indigo)}.trust-block a:hover{text-decoration:underline}.faq-section{max-width:900px;margin:10px auto 60px;padding-top:10px;padding-left:1.5rem;padding-right:1.5rem}.faq-header{text-align:center;text-transform:uppercase;letter-spacing:5px;color:#fff;font-size:1rem;font-weight:900}.faq-divider{background:var(--emerald);width:40px;height:3px;margin:15px auto 40px}.faq-item-enhanced{background:#1e293bb3;border:1px solid #ffffff1a;border-radius:8px;margin-bottom:12px}.faq-item-enhanced summary{cursor:pointer;color:#fff;justify-content:space-between;align-items:center;padding:16px 20px;font-size:.9rem;font-weight:600;list-style:none;transition:color .2s;display:flex}.faq-item-enhanced summary:after{content:"+";color:var(--calc-text-muted);font-size:1.25rem;font-weight:400}.faq-item-enhanced[open] summary:after{content:"-"}.faq-item-enhanced summary:hover{color:var(--emerald)}.faq-item-enhanced[open]{border-color:var(--emerald);background:#10b9810f}.faq-item-enhanced p{color:#94a3b8;padding:0 20px 20px;font-size:.85rem;line-height:1.6}@media (width<=900px){.dashboard-grid{grid-template-columns:minmax(0,1fr);overflow:hidden}.input-card{position:static;top:auto}}@media (width<=768px){.main-container{padding:10px 14px}.tab-label{margin-top:2px;font-size:.62rem;line-height:1.2;display:block}.tab-btn{flex-direction:column;padding:8px 6px;font-size:.65rem}.tab-icon{font-size:.85rem}.data-grid{grid-template-columns:repeat(2,1fr)}.formula-strip{gap:4px;font-size:.67rem}.big-number{font-size:2rem}.export-row{gap:6px}.btn-outline-sm{padding:6px 10px;font-size:.7rem}}@media (width<=600px){.data-grid{grid-template-columns:repeat(2,1fr)}.schedule-table th:nth-child(3),.schedule-table td:nth-child(3){display:none}}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;appearance:textfield}[data-theme=light]{--bg-page:#f1f5f9;--bg-page-alt:#e2e8f0;--bg-card:#ffffffe6;--bg-card-solid:#fff;--bg-input:#e2e8f0;--gold:#b45309;--gold-glow:#0891b226;--emerald:#059669;--emerald-glow:#0596691f;--indigo:#4f46e5;--indigo-glow:#4f46e526;--amber:#0891b2;--red:#dc2626;--accent-primary:#4f46e5;--accent-primary-glow:#4f46e526;--accent-success:#059669;--accent-success-glow:#0596691f;--accent-gold:#0891b2;--accent-gold-glow:#0891b21f;--accent-info:#2563eb;--accent-info-light:#3b82f6;--text-primary:#0f172a;--text-secondary:#334155;--text-tertiary:#475569;--text-muted:#64748b;--border-subtle:#00000014;--border-card:#00000026;--shadow-card:0 2px 8px #00000014}[data-theme=light] body{color:#0f172a;background:var(--calc-bg-page);background-image:none}[data-theme=light] input,[data-theme=light] select{color-scheme:light}[data-theme=light] .input-wrapper input{color:#0f172a}[data-theme=light] .input-wrapper{background:#fff}[data-theme=light] .tab-nav{background:#edf2f9;border-color:#0000001a}[data-theme=light] .tab-btn:hover{color:#0f172a;background:#0000000a}[data-theme=light] .tab-btn.active{color:var(--calc-gold);background:#0891b21f;box-shadow:0 0 0 1px #0891b240}[data-theme=light] .pill-toggle{background:#e2e8f0}[data-theme=light] .pill-btn:hover{color:#0f172a}[data-theme=light] .pill-btn.active{color:var(--calc-gold);background:#0891b21f;box-shadow:0 0 0 1px #0891b240}[data-theme=light] .data-card{background:#edf2f9;border-color:#0000001a}[data-theme=light] .data-card:hover{border-color:#0003;transform:translateY(-1px)}[data-theme=light] .formula-strip{background:#edf2f9;border-color:#0000001a}[data-theme=light] .formula-chip{background:#0000000a;border-color:#0000001a}[data-theme=light] .formula-chip.formula-result{color:#0f172a;background:#0000000f;border-color:#0003}[data-theme=light] .formula-op{color:#475569}[data-theme=light] .alert-info{color:#4f46e5;background:#4f46e514;border-color:#4f46e533}[data-theme=light] .alert-success{color:#059669;background:#05966914;border-color:#05966933}[data-theme=light] .alert-warn{color:#0891b2;background:#0891b214;border-color:#0891b233}[data-theme=light] .alert-danger{color:#dc2626;background:#dc262614;border-color:#dc262633}[data-theme=light] .schedule-table tr:hover td{background:#00000008}[data-theme=light] .schedule-table th{color:#334155;background:#edf2f9;border-bottom-color:#0000001f}[data-theme=light] .schedule-table td{color:#334155;border-bottom-color:#00000012}[data-theme=light] .btn-outline-sm{color:#334155;background:#0000000a;border-color:#0000001f}[data-theme=light] .btn-outline-sm:hover{border-color:var(--calc-gold);color:var(--calc-gold);background:#0891b20f}[data-theme=light] .btn-primary{background:linear-gradient(135deg,#0891b226,#0891b214);border-color:#0891b259}[data-theme=light] .btn-primary:hover{box-shadow:0 0 12px var(--gold-glow);background:#0891b226}[data-theme=light] .toast{background:#fff;border-color:#00000026;box-shadow:0 4px 16px #0000001f}[data-theme=light] .value-toggle{background:#edf2f9;border-color:#0000001f}[data-theme=light] .value-toggle-btn{color:#64748b}[data-theme=light] .value-toggle-btn.active{color:var(--indigo);background:#4f46e51f;box-shadow:0 0 0 1px #4f46e540}[data-theme=light] .monthly-income-section,[data-theme=light] .match-display{background:#05966912;border-color:#05966926}[data-theme=light] .catchup-row{background:#0891b212;border-color:#0891b22e}[data-theme=light] .toggle-track{background:#e2e8f0}[data-theme=light] select{color:var(--calc-gold);background:#e2e8f0}[data-theme=light] .idr-card{background:#fff;border-color:#0000001a;box-shadow:0 1px 4px #0000000f}[data-theme=light] .forgive-hero--pslf{background:#f0fdf4;border-color:#05966933}[data-theme=light] .forgive-hero--ineligible{background:#fff1f2;border-color:#dc262633}[data-theme=light] .trust-block{background:#4f46e50f;border-left-color:#4f46e5}[data-theme=light] .trust-block__body{color:#334155}[data-theme=light] .trust-block a{color:#4f46e5}[data-theme=light] .faq-header{color:#0f172a}[data-theme=light] .faq-item-enhanced{background:#fff;border-color:#0000001a}[data-theme=light] .faq-item-enhanced summary{color:#0f172a}[data-theme=light] .faq-item-enhanced summary:after{color:#64748b}[data-theme=light] .faq-item-enhanced summary:hover{color:var(--emerald)}[data-theme=light] .faq-item-enhanced[open]{border-color:var(--emerald);background:#0596690a}[data-theme=light] .faq-item-enhanced p{color:#334155}[data-theme=light] .big-number{color:#0f172a}