:root{--accent:var(--calc-cyan);--accent-dim:var(--calc-cyan-dim,#22d3ee26);--bg-card:#ffffff0a;--bg-input:#ffffff0f;--text-main:var(--calc-text-primary);--text-dim:var(--calc-text-dim);--green:var(--calc-emerald,#34d399);--red:var(--calc-rose,#fb7185);--gold:var(--calc-gold,#fbbf24);--radius:var(--calc-radius-md,12px);--radius-lg:var(--calc-radius-lg,16px);--shadow:var(--calc-shadow-card);--transition:var(--calc-transition,.2s ease)}[data-theme=light]{--accent:var(--calc-cyan);--accent-dim:#0891b21a;--bg-card:#fff;--bg-input:#f1f5f9;--text-main:var(--calc-text-primary);--text-dim:var(--calc-text-dim);--green:#047857;--red:#e11d48;--gold:#b45309}*,:before,:after{box-sizing:border-box}body{font-family:var(--calc-font-body,"Inter", system-ui, sans-serif);background:var(--calc-bg-page);color:var(--text-main);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.6}.dashboard-container{max-width:1440px;margin:0 auto;padding:28px 24px 64px}@media (width<=768px){.dashboard-container{padding:16px 16px 48px}}.page-hero{text-align:center;padding:32px 20px 20px}.page-title{font-family:var(--calc-font-headline,"Plus Jakarta Sans", sans-serif);color:var(--text-main);margin:0 0 8px;font-size:clamp(1.5rem,4vw,2.25rem);font-weight:800}.page-subtitle{color:var(--text-dim);margin:0 0 12px;font-size:.95rem}.badge-year{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent);font-size:.75rem;font-weight:600;font-family:var(--calc-font-mono,"JetBrains Mono", monospace);border-radius:20px;padding:3px 10px;display:inline-block}.badge-no-tax{color:var(--green);border-color:var(--green);background:#34d39926}.badge-flat{color:var(--gold);border-color:var(--gold);background:#fbbf2426}.badge-prog{background:var(--accent-dim);color:var(--accent);border-color:var(--accent)}[data-theme=light] .badge-no-tax{color:#047857;background:#f0fdf4;border-color:#059669}[data-theme=light] .badge-flat{color:#b45309;background:#fffbeb;border-color:#d97706}[data-theme=light] .badge-prog{color:#0891b2;background:#0891b21a;border-color:#0891b2}.preset-row{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.preset-chip{cursor:pointer;border:1px solid var(--calc-border-default,#f0f6fc1a);background:var(--bg-card);color:var(--text-dim);transition:var(--transition);border-radius:20px;padding:4px 12px;font-size:.78rem;font-weight:600}.preset-chip:hover,.preset-chip.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}[data-theme=light] .preset-chip{color:#475569;background:#f8fafc;border-color:#0000001f}[data-theme=light] .preset-chip:hover,[data-theme=light] .preset-chip.active{color:#0891b2;background:#0891b21a;border-color:#0891b2}.dashboard-grid{grid-template-columns:340px 1fr;align-items:start;gap:24px;display:grid}@media (width<=1024px){.dashboard-grid{grid-template-columns:1fr}}.control-panel{background:var(--bg-card);border:1px solid var(--calc-border-default,#f0f6fc14);border-radius:var(--radius-lg);padding:24px;position:sticky;top:80px}[data-theme=light] .control-panel{background:#fff;border-color:#00000014;box-shadow:0 2px 12px #0000000f}.panel-header h2{color:var(--text-main);margin:0 0 2px;font-size:1rem;font-weight:700}.panel-header p{color:var(--text-dim);margin:0 0 20px;font-size:.8rem}.form-group{margin-bottom:16px}.form-group label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.form-group .hint{color:var(--text-dim);margin-top:4px;font-size:.72rem}.input-wrap{align-items:center;display:flex;position:relative}.input-prefix{color:var(--text-dim);pointer-events:none;font-size:.9rem;font-weight:600;position:absolute;left:12px}.glass-input{background:var(--bg-input);border:1px solid var(--calc-border-default,#f0f6fc1a);border-radius:var(--radius);width:100%;color:var(--text-main);font-size:.9rem;font-family:var(--calc-font-mono,"JetBrains Mono", monospace);outline:none;padding:10px 14px 10px 26px;transition:border-color .15s}.glass-input:focus{border-color:var(--accent)}.glass-input.no-prefix{padding-left:14px}select.glass-input{cursor:pointer;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 d='M1 1l5 5 5-5' fill='none' stroke='%238888aa' stroke-linecap='round' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-left:14px;padding-right:32px}[data-theme=light] .glass-input{color:#0f172a;background:#f8fafc;border-color:#0000001f}[data-theme=light] .glass-input:focus{border-color:#0891b2}[data-theme=light] .input-prefix{color:#64748b}.radio-group{flex-wrap:wrap;gap:8px;display:flex}.radio-btn{text-align:center;border-radius:var(--radius);border:1px solid var(--calc-border-default,#f0f6fc1a);background:var(--bg-input);min-width:80px;color:var(--text-dim);cursor:pointer;transition:var(--transition);flex:1;padding:8px 4px;font-size:.8rem;font-weight:600}.radio-btn.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}[data-theme=light] .radio-btn{color:#475569;background:#f1f5f9;border-color:#0000001a}[data-theme=light] .radio-btn.active{color:#0891b2;background:#0891b21a;border-color:#0891b2}.toggle-row{color:var(--text-dim);align-items:center;gap:10px;margin-bottom:12px;font-size:.85rem;display:flex}.toggle-row label{text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.8rem;font-weight:600}.results-panel{flex-direction:column;gap:20px;display:flex}.result-card{background:var(--bg-card);border:1px solid var(--calc-border-default,#f0f6fc14);border-radius:var(--radius-lg);padding:28px 24px}[data-theme=light] .result-card{background:#fff;border-color:#00000014;box-shadow:0 2px 12px #0000000f}.result-card.no-tax-card{background:#34d3990d;border-color:#34d3994d}[data-theme=light] .result-card.no-tax-card{background:#f0fdf4;border-color:#0596694d}.result-hero{text-align:center;margin-bottom:24px}.result-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:4px;font-size:.78rem;font-weight:700}.result-value{font-size:clamp(2rem,5vw,3rem);font-weight:800;font-family:var(--calc-font-headline,"Plus Jakarta Sans", sans-serif);color:var(--accent);margin-bottom:8px;line-height:1}.result-value.no-tax{color:var(--green)}[data-theme=light] .result-value{color:#0891b2}[data-theme=light] .result-value.no-tax{color:#047857}.result-badges{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}.stat-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px;display:grid}.stat-cell{border:1px solid var(--calc-border-default,#f0f6fc12);border-radius:var(--radius);text-align:center;background:#ffffff08;padding:12px 14px}[data-theme=light] .stat-cell{background:#edf2f9;border-color:#00000014}.stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.72rem;font-weight:600}.stat-value{color:var(--text-main);font-size:1.1rem;font-weight:800;font-family:var(--calc-font-mono,"JetBrains Mono", monospace)}[data-theme=light] .stat-value{color:#0f172a}.special-note{border-radius:var(--radius);color:var(--gold);background:#fbbf2414;border:1px solid #fbbf2433;margin-top:16px;padding:10px 14px;font-size:.8rem;line-height:1.5}[data-theme=light] .special-note{color:#92400e;background:#fffbeb;border-color:#d977064d}.chart-card{background:var(--bg-card);border:1px solid var(--calc-border-default,#f0f6fc14);border-radius:var(--radius-lg);padding:20px 24px}[data-theme=light] .chart-card{background:#fff;border-color:#00000014;box-shadow:0 2px 12px #0000000f}.chart-card h3{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin:0 0 16px;font-size:.85rem;font-weight:700}.chart-wrap{height:220px;position:relative}.bracket-card{background:var(--bg-card);border:1px solid var(--calc-border-default,#f0f6fc14);border-radius:var(--radius-lg);padding:24px}[data-theme=light] .bracket-card{background:#fff;border-color:#00000014;box-shadow:0 2px 12px #0000000f}.bracket-card h2{margin:0 0 4px;font-size:1.05rem;font-weight:700}.bracket-card .subtitle{color:var(--text-dim);margin:0 0 20px;font-size:.82rem}.bracket-table{border-collapse:collapse;width:100%;font-size:.85rem}.bracket-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);border-bottom:1px solid var(--calc-border-default,#f0f6fc14);background:#ffffff05;padding:8px 12px;font-size:.72rem;font-weight:700}.bracket-table td{border-bottom:1px solid var(--calc-border-default,#f0f6fc0d);color:var(--text-main);font-family:var(--calc-font-mono,"JetBrains Mono", monospace);padding:10px 12px;font-size:.83rem}.bracket-table tr:last-child td{border-bottom:none}.bracket-table tr.active-row{background:var(--accent-dim)}.bracket-table tr.active-row td{color:var(--accent)}.bracket-table .rate-cell{font-weight:700}[data-theme=light] .bracket-table th{background:#f8fafc;border-bottom-color:#00000014}[data-theme=light] .bracket-table td{color:#0f172a;border-bottom-color:#0000000d}[data-theme=light] .bracket-table tr.active-row{background:#0891b214}[data-theme=light] .bracket-table tr.active-row td{color:#0891b2}.flat-tax-info,.no-tax-info{text-align:center;background:var(--bg-card);border:1px solid var(--calc-border-default,#f0f6fc14);border-radius:var(--radius-lg);padding:40px 24px}.no-tax-info{background:#34d3990d;border-color:#34d39933}.flat-tax-info{background:#fbbf240d;border-color:#fbbf2433}.flat-tax-info h3,.no-tax-info h3{margin:0 0 8px;font-size:1.1rem}.flat-tax-info p,.no-tax-info p{color:var(--text-dim);margin:0;font-size:.85rem}[data-theme=light] .flat-tax-info{background:#fffbeb;border-color:#d9770640}[data-theme=light] .flat-tax-info h3{color:#78350f}[data-theme=light] .no-tax-info{background:#f0fdf4;border-color:#05966940}[data-theme=light] .no-tax-info h3{color:#14532d}.compare-card{background:var(--bg-card);border:1px solid var(--calc-border-default,#f0f6fc14);border-radius:var(--radius-lg);padding:24px}[data-theme=light] .compare-card{background:#fff;border-color:#00000014;box-shadow:0 2px 12px #0000000f}.compare-card h2{margin:0 0 4px;font-size:1.05rem;font-weight:700}.compare-card .subtitle{color:var(--text-dim);margin:0 0 20px;font-size:.82rem}.compare-table{border-collapse:collapse;width:100%;font-size:.85rem}.compare-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);border-bottom:1px solid var(--calc-border-default,#f0f6fc14);background:#ffffff05;padding:8px 14px;font-size:.72rem;font-weight:700}.compare-table th:not(:first-child){text-align:right}.compare-table td{border-bottom:1px solid var(--calc-border-default,#f0f6fc0d);color:var(--text-main);font-family:var(--calc-font-mono,"JetBrains Mono", monospace);padding:12px 14px;font-size:.83rem}.compare-table td:not(:first-child){text-align:right}.compare-table tr:last-child td{border-bottom:none;font-weight:700}.compare-table tr.total-row td{color:var(--accent);font-size:.9rem;font-weight:700}.compare-table .row-label{color:var(--text-dim);font-family:inherit;font-weight:600}[data-theme=light] .compare-table th{background:#f8fafc;border-bottom-color:#00000014}[data-theme=light] .compare-table td{color:#0f172a;border-bottom-color:#0000000d}[data-theme=light] .compare-table .row-label{color:#475569}[data-theme=light] .compare-table tr.total-row td{color:#0891b2}.avg-bar-wrap{border-radius:var(--radius);border:1px solid var(--calc-border-default,#f0f6fc0f);background:#ffffff05;margin-top:20px;padding:16px}[data-theme=light] .avg-bar-wrap{background:#edf2f9;border-color:#0000000f}.avg-bar-label{color:var(--text-dim);margin-bottom:8px;font-size:.75rem;font-weight:600}.avg-bar-track{background:#ffffff0f;border-radius:4px;height:6px;margin-bottom:6px;position:relative;overflow:hidden}[data-theme=light] .avg-bar-track{background:#00000014}.avg-bar-fill{background:var(--accent);border-radius:4px;height:100%;transition:width .4s}.avg-bar-fill.above-avg{background:var(--red)}.avg-bar-fill.below-avg{background:var(--green)}.avg-bar-meta{color:var(--text-dim);justify-content:space-between;font-size:.75rem;display:flex}.faq-list{flex-direction:column;display:flex}.faq-item{border-bottom:1px solid #ffffff0f}.faq-item__question{cursor:pointer;color:var(--text-main);user-select:none;justify-content:space-between;align-items:center;padding:14px 4px;font-size:.9rem;font-weight:600;list-style:none;transition:color .2s;display:flex}.faq-item__question::-webkit-details-marker{display:none}.faq-item__question:after{content:"+";font-family:var(--calc-font-mono,"JetBrains Mono", monospace);color:var(--text-dim);flex-shrink:0;margin-left:16px;font-size:1.1rem;transition:color .2s}.faq-item[open] .faq-item__question:after{content:"−";color:var(--accent)}.faq-item__question:hover{color:var(--accent)}.faq-item__answer{color:var(--text-dim);padding:0 4px 14px;font-size:.85rem;line-height:1.75}[data-theme=light] .faq-item{background:#fff;border:1px solid #0000001a;border-radius:10px;transition:box-shadow .2s,border-color .2s;overflow:hidden;box-shadow:0 1px 4px #0000000f}[data-theme=light] .faq-list{gap:8px}[data-theme=light] .faq-item:hover{border-color:#0e749059;box-shadow:0 2px 10px #0e749014}[data-theme=light] .faq-item[open]{border-color:#0e749066 #0e749066 #0e749066 #0e7490;border-left-style:solid;border-left-width:3px;box-shadow:0 2px 12px #0e74901a}[data-theme=light] .faq-item__question{color:#0f172a;padding:14px 16px}[data-theme=light] .faq-item__question:after{color:#64748b}[data-theme=light] .faq-item[open] .faq-item__question:after,[data-theme=light] .faq-item__question:hover{color:#0e7490}[data-theme=light] .faq-item__answer{color:#475569;border-top:1px solid #0000000f;padding:12px 16px 16px}.page-sections-outer{max-width:1440px;margin:0 auto;padding:0 24px 48px}@media (width<=768px){.page-sections-outer{padding:0 16px 32px}}.calc-section{margin-top:40px}.calc-section__title{color:var(--text-main);margin:0 0 16px;font-size:1.1rem;font-weight:700}.no-tax-hero{text-align:center;padding:32px 20px}.no-tax-icon{margin-bottom:12px;font-size:3rem}.no-tax-hero h2{color:var(--green);margin:0 0 8px;font-size:1.4rem;font-weight:800}[data-theme=light] .no-tax-hero h2{color:#047857}.no-tax-hero p{color:var(--text-dim);max-width:480px;margin:0 auto;font-size:.9rem}@media (width<=768px){.stat-grid{grid-template-columns:1fr 1fr}.chart-wrap{height:180px}.result-value{font-size:2rem}}@media (width<=480px){.stat-grid{grid-template-columns:1fr}.bracket-table{font-size:.78rem}.bracket-table td,.bracket-table th{padding:8px}}