.budget-calculator{--budget-primary: #2563eb;--budget-primary-dark: #1d4ed8;--budget-secondary: #3b82f6;--budget-accent: #60a5fa;--budget-positive: #16a34a;--budget-negative: #dc2626;--budget-bg: #eff6ff;--budget-card-bg: #ffffff;--budget-text: #1e293b;--budget-text-muted: #64748b;--budget-border: #bfdbfe;--budget-shadow: 0 4px 20px rgba(37, 99, 235, .12);max-width:900px;margin:0 auto;font-family:system-ui,-apple-system,sans-serif}.budget-header{text-align:center;margin-bottom:2rem}.budget-title{font-size:2rem;font-weight:800;color:var(--budget-primary);margin:0 0 .5rem}.budget-description{color:var(--budget-text-muted);font-size:1.1rem;margin:0}.budget-formula-container{background:linear-gradient(135deg,var(--budget-bg) 0%,#dbeafe 100%);border-radius:16px;padding:1.5rem;margin-bottom:2rem;border:1px solid var(--budget-border)}.budget-formula-title{font-size:1.1rem;font-weight:700;color:var(--budget-primary);margin:0 0 1rem;text-align:center}.budget-formula-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.budget-formula-card{background:var(--budget-card-bg);border-radius:12px;padding:1rem;text-align:center;box-shadow:0 2px 8px #0000000f}.budget-formula-label{display:block;font-size:.85rem;font-weight:600;color:var(--budget-text-muted);margin-bottom:.5rem}.budget-formula-math{font-size:1rem;color:var(--budget-text);overflow-x:auto}.budget-form-container{background:var(--budget-card-bg);border-radius:16px;padding:1.5rem;box-shadow:var(--budget-shadow);margin-bottom:2rem}.budget-form{display:flex;flex-direction:column;gap:1.5rem}.budget-section{border-radius:12px;padding:1.25rem}.budget-income-section{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0}.budget-expense-section{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca}.budget-section-title{font-size:1.1rem;font-weight:700;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.budget-income-title{color:#166534}.budget-expense-title{color:#991b1b}.budget-section-icon{font-size:1.25rem}.budget-inputs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.budget-input-row{display:flex;flex-direction:column;gap:.25rem}.budget-input-label{font-size:.8rem;font-weight:600;color:var(--budget-text)}.budget-input-wrapper{position:relative}.budget-input-prefix{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--budget-text-muted);font-weight:600}.budget-input{width:100%;padding:.625rem .75rem .625rem 1.75rem;border:2px solid rgba(255,255,255,.5);border-radius:8px;font-size:.95rem;background:#fff;transition:all .2s ease}.budget-input:focus{outline:none;border-color:var(--budget-primary);box-shadow:0 0 0 3px #2563eb1a}.budget-section-total{display:flex;justify-content:space-between;margin-top:1rem;padding-top:1rem;border-top:2px dashed rgba(0,0,0,.1);font-weight:700;font-size:1.1rem}.budget-income-total{color:#166534}.budget-expense-total{color:#991b1b}.budget-buttons{display:flex;gap:1rem}.budget-btn{flex:1;padding:1rem;border:none;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease}.budget-btn-primary{background:linear-gradient(135deg,var(--budget-primary) 0%,var(--budget-secondary) 100%);color:#fff;box-shadow:0 4px 15px #2563eb4d}.budget-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2563eb66}.budget-btn-secondary{background:var(--budget-bg);color:var(--budget-text-muted);border:2px solid var(--budget-border)}.budget-btn-secondary:hover{border-color:var(--budget-primary);color:var(--budget-primary)}.budget-results{background:var(--budget-card-bg);border-radius:16px;padding:1.5rem;box-shadow:var(--budget-shadow);margin-bottom:2rem}.budget-results-title{font-size:1.25rem;font-weight:700;color:var(--budget-primary);margin:0 0 1.5rem;text-align:center}.budget-primary-result{border-radius:16px;padding:1.5rem;text-align:center;margin-bottom:1.5rem}.budget-primary-result.surplus{background:linear-gradient(135deg,#166534,#22c55e)}.budget-primary-result.deficit{background:linear-gradient(135deg,#991b1b,#ef4444)}.budget-primary-label{display:block;color:#fffc;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.budget-primary-value{display:block;font-size:3rem;font-weight:800;color:#fff}.budget-primary-rate{display:block;color:#ffffffe6;font-size:.9rem;margin-top:.5rem}.budget-primary-rate span{font-weight:700}.budget-comparison{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem}.budget-comparison-card{flex:1;max-width:180px;padding:1rem;border-radius:12px;text-align:center}.budget-comparison-income{background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.budget-comparison-expenses{background:linear-gradient(135deg,#fef2f2,#fee2e2)}.budget-comparison-vs{color:var(--budget-text-muted);font-weight:700}.budget-comparison-label{display:block;font-size:.75rem;font-weight:600;color:var(--budget-text-muted);margin-bottom:.25rem}.budget-comparison-value{font-size:1.25rem;font-weight:800}.budget-comparison-income .budget-comparison-value{color:#166534}.budget-comparison-expenses .budget-comparison-value{color:#991b1b}.budget-breakdown{background:var(--budget-bg);border-radius:12px;padding:1.25rem}.budget-breakdown-title{font-size:1rem;font-weight:700;color:var(--budget-text);margin:0 0 1rem}.budget-breakdown-list{display:flex;flex-direction:column;gap:1rem}.budget-breakdown-item{background:#fff;border-radius:8px;padding:.75rem}.budget-breakdown-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.budget-breakdown-name{font-weight:600;color:var(--budget-text);font-size:.9rem}.budget-breakdown-amount{font-weight:700;color:var(--budget-primary)}.budget-breakdown-bar-container{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.budget-breakdown-bar{height:100%;border-radius:4px;transition:width .5s ease}.budget-breakdown-meta{display:flex;justify-content:space-between;font-size:.75rem;color:var(--budget-text-muted)}.budget-content{margin-top:3rem}.budget-content-section{margin-bottom:2.5rem}.budget-content-title{font-size:1.5rem;font-weight:700;color:var(--budget-text);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:3px solid var(--budget-primary)}.budget-content-text{color:var(--budget-text-muted);line-height:1.7;margin:0 0 1rem}.budget-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1.5rem}.budget-feature-card{background:var(--budget-bg);border-radius:12px;padding:1.25rem;text-align:center}.budget-feature-icon{font-size:2rem;display:block;margin-bottom:.75rem}.budget-feature-title{font-size:1rem;font-weight:700;color:var(--budget-text);margin:0 0 .5rem}.budget-feature-desc{font-size:.85rem;color:var(--budget-text-muted);margin:0;line-height:1.5}.budget-table-wrapper{overflow-x:auto;margin:1.5rem 0;border-radius:12px;box-shadow:var(--budget-shadow)}.budget-table{width:100%;border-collapse:collapse;background:#fff;font-size:.9rem}.budget-table th{background:var(--budget-primary);color:#fff;padding:1rem;text-align:left;font-weight:600}.budget-table td{padding:.875rem 1rem;border-bottom:1px solid var(--budget-border)}.budget-table tr:hover{background:var(--budget-bg)}.budget-table-highlight{font-weight:700;color:var(--budget-primary)}.budget-tips-grid{display:grid;gap:1rem;margin-top:1.5rem}.budget-tip-card{display:flex;gap:1rem;background:var(--budget-card-bg);border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #0000000f;border-left:4px solid var(--budget-primary)}.budget-tip-icon{font-size:1.5rem;flex-shrink:0}.budget-tip-content{flex:1}.budget-tip-title{font-size:1rem;font-weight:700;color:var(--budget-text);margin:0 0 .5rem}.budget-tip-text{font-size:.9rem;color:var(--budget-text-muted);margin:0;line-height:1.6}.budget-faqs{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.budget-faq-item{background:var(--budget-card-bg);border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #0000000f}.budget-faq-question{font-size:1rem;font-weight:700;color:var(--budget-primary);margin:0 0 .75rem}.budget-faq-answer{font-size:.9rem;color:var(--budget-text-muted);margin:0;line-height:1.6}@media (max-width: 768px){.budget-title{font-size:1.5rem}.budget-formula-grid,.budget-inputs-grid{grid-template-columns:1fr}.budget-primary-value{font-size:2.25rem}.budget-comparison{flex-direction:column}.budget-comparison-card{max-width:100%;width:100%}.budget-comparison-vs{transform:rotate(90deg)}.budget-features-grid{grid-template-columns:1fr}}
