:root{--accent:var(--calc-cyan);--accent-glow:var(--calc-cyan-dim)}.main-container{max-width:1400px;margin:0 auto;padding:40px 20px}@media (width<=768px){.main-container{padding:20px 14px}}.page-sections-outer{max-width:1600px;margin:0 auto;padding:0 1.5rem 3rem}.col-hero-wrap{border-bottom:1px solid #ffffff0f;align-items:center;gap:16px;margin-bottom:16px;padding:18px 0 14px;display:flex}.col-hero-icon{flex-shrink:0;font-size:2.4rem;line-height:1}.col-hero-content{min-width:0}.col-hero-label{color:var(--calc-text-faded);text-transform:uppercase;letter-spacing:.7px;margin-bottom:2px;font-size:.72rem}.col-hero-city{color:var(--calc-cyan);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:.85rem;font-weight:700;overflow:hidden}.col-hero-salary{color:var(--calc-gold);font-variant-numeric:tabular-nums;will-change:opacity, transform;font-size:2rem;font-weight:800;line-height:1.1}.col-hero-sub{color:var(--calc-text-faded);margin-top:3px;font-size:.75rem}.col-hero-rank{letter-spacing:.5px;text-transform:uppercase;color:var(--calc-cyan);opacity:.75;margin-top:4px;font-size:.68rem;font-weight:700;display:inline-block}.col-alert{border:1px solid #0000;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.82rem;font-weight:600}.col-alert--good{color:var(--calc-emerald);background:#34d39914;border-color:#34d39940}.col-alert--warn{color:var(--calc-gold);background:#fbbf2414;border-color:#fbbf2440}.col-alert--info{color:var(--calc-sky);background:#60a5fa14;border-color:#60a5fa33}.preset-chip-row{flex-wrap:wrap;gap:6px;margin-top:12px;margin-bottom:2px;display:flex}.preset-chip-row .preset-chip{color:var(--calc-text-faded);cursor:pointer;font-size:.73rem;font-weight:600;font-family:var(--calc-font-mono,monospace);white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:20px;padding:5px 12px;transition:all .18s}.preset-chip-row .preset-chip:hover{color:var(--calc-cyan);background:#22d3ee0f;border-color:#22d3ee59}.preset-chip-row .preset-chip.active{color:var(--calc-cyan);background:#22d3ee1f;border-color:#22d3ee73}.budget-pct-row{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px;display:grid}.budget-pct-group label{color:var(--calc-text-faded);margin-bottom:5px;font-size:.72rem;font-weight:600;display:block}.budget-pct-group input{width:100%;color:var(--calc-text-primary);font-size:.9rem;font-family:var(--calc-font-mono,monospace);text-align:center;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:8px;padding:8px 10px;transition:border-color .18s}.budget-pct-group input:focus{border-color:#22d3ee66;outline:none}.budget-pct-note{color:var(--calc-text-faded);margin-bottom:16px;font-size:.72rem;font-style:italic}.breakdown-table-wrap{border:1px solid #ffffff0f;border-radius:10px;overflow-x:auto}.breakdown-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.82rem}.breakdown-table th{color:var(--calc-text-primary);text-transform:uppercase;letter-spacing:.7px;text-align:right;white-space:nowrap;border-bottom:2px solid #ffffff12;padding:10px 12px;font-size:.65rem}.breakdown-table th:first-child{text-align:left}.breakdown-table td{color:var(--calc-text-faded);text-align:right;border-bottom:1px solid #ffffff0a;padding:9px 12px}.breakdown-table td:first-child{text-align:left}.breakdown-table tr:hover td{color:var(--calc-text-primary);background:#ffffff05}.breakdown-table .total-row td{color:var(--calc-text-primary);border-top:2px solid #ffffff14;border-bottom:none}.breakdown-table .num{font-family:var(--calc-font-mono,monospace)}.breakdown-table .emerald{color:var(--calc-emerald)}.breakdown-table .rose{color:var(--calc-rose)}.radar-chart-wrap{height:280px;margin-bottom:8px;position:relative}.export-row{border-top:1px solid #ffffff0f;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:14px;display:flex}.data-value.emerald{color:var(--calc-emerald)}.data-value.rose{color:var(--calc-rose)}.faq-list{flex-direction:column;display:flex}.faq-item{border-bottom:1px solid #ffffff0f}.faq-item__question{cursor:pointer;color:var(--calc-text-primary);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,monospace);color:var(--calc-text-faded);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(--calc-cyan)}.faq-item__answer{color:var(--calc-text-faded);padding:0 4px 14px;font-size:.85rem;line-height:1.75}[data-theme=light]{--accent:var(--calc-cyan);--accent-glow:none}[data-theme=light] .col-hero-city{color:var(--calc-cyan)}[data-theme=light] .col-hero-salary{color:var(--calc-amber)}[data-theme=light] .col-hero-label,[data-theme=light] .col-hero-sub{color:#64748b}[data-theme=light] .col-hero-wrap{border-bottom-color:#00000014}[data-theme=light] .col-alert--good{color:#15803d;background:#f0fdf4;border-color:#16a34a59}[data-theme=light] .col-alert--warn{color:#b45309;background:#fffbeb;border-color:#d9770659}[data-theme=light] .col-alert--info{color:#0e7490;background:#eff9fb;border-color:#0e74904d}[data-theme=light] .preset-chip-row .preset-chip{color:#334155;background:#f0f4f9;border-color:#0000001f}[data-theme=light] .preset-chip-row .preset-chip:hover{color:var(--calc-cyan);background:#0891b20f;border-color:#0891b266}[data-theme=light] .preset-chip-row .preset-chip.active{color:var(--calc-cyan);background:#0891b21a;border-color:#0891b273}[data-theme=light] .budget-pct-group label{color:#475569}[data-theme=light] .budget-pct-group input{color:#0f172a;background:#f0f4f9;border-color:#0000001f}[data-theme=light] .budget-pct-group input:focus{border-color:#0891b280}[data-theme=light] .budget-pct-note{color:#64748b}[data-theme=light] .breakdown-table-wrap{border-color:#0000001a}[data-theme=light] .breakdown-table th{color:#0f172a;border-bottom-color:#0000001a}[data-theme=light] .breakdown-table td{color:#475569;border-bottom-color:#0000000d}[data-theme=light] .breakdown-table td:first-child{color:#1e293b}[data-theme=light] .breakdown-table tr:hover td{color:#0f172a;background:#f8fafc}[data-theme=light] .breakdown-table .total-row td{color:#0f172a;border-top-color:#0000001a}[data-theme=light] .breakdown-table .emerald{color:#047857}[data-theme=light] .breakdown-table .rose{color:#e11d48}[data-theme=light] .data-value.emerald{color:#047857}[data-theme=light] .data-value.rose{color:#e11d48}[data-theme=light] .data-value.gold{color:var(--calc-gold)}[data-theme=light] .export-row{border-top-color:#00000014}[data-theme=light] .faq-list{gap:8px}[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-item:hover{border-color:#0891b259;box-shadow:0 2px 10px #0891b214}[data-theme=light] .faq-item[open]{border-color:#0891b266;border-left:3px solid var(--calc-cyan);box-shadow:0 2px 12px #0891b21a}[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:var(--calc-cyan)}[data-theme=light] .faq-item__answer{color:#475569;border-top:1px solid #0000000f;padding:12px 16px 16px}.moving-cost-expander{border:1px solid #ffffff14;border-radius:10px;margin-top:16px;overflow:hidden}.moving-cost-expander summary{cursor:pointer;color:var(--calc-text-primary);user-select:none;background:#ffffff08;padding:12px 16px;font-size:.88rem;font-weight:600;list-style:none;transition:background .18s}.moving-cost-expander summary::-webkit-details-marker{display:none}.moving-cost-expander[open] summary{background:#ffffff0d;border-bottom:1px solid #ffffff12}.moving-cost-card{padding:16px}.mover-form{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px;display:grid}.moving-result{border-radius:8px;overflow:hidden}.mover-result-row{border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:8px 12px;font-size:.82rem;display:flex}.mover-result-row:last-child{border-bottom:none}.mover-label{color:var(--calc-text-faded)}.mover-value{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-primary);font-weight:700}.mover-alert{border:1px solid #0000;border-radius:8px;margin-top:10px;padding:10px 14px;font-size:.82rem;font-weight:600}[data-theme=light] .moving-cost-expander{border-color:#0000001a}[data-theme=light] .moving-cost-expander summary{color:#0f172a;background:#f0f4f9}[data-theme=light] .moving-cost-expander[open] summary{background:#e8eef4;border-bottom-color:#00000014}[data-theme=light] .mover-result-row{border-bottom-color:#0000000d}[data-theme=light] .mover-label{color:#475569}[data-theme=light] .mover-value{color:#0f172a}@media (width<=768px){.budget-pct-row{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.budget-pct-row{grid-template-columns:1fr}.col-hero-salary{font-size:1.6rem}.preset-chip-row{gap:4px}.preset-chip-row .preset-chip{padding:4px 10px;font-size:.68rem}.mover-form{grid-template-columns:1fr}.radar-chart-wrap{height:220px}}body.finance-polished .input-wrapper.prefix{position:relative}body.finance-polished .input-wrapper.prefix:before{content:attr(data-prefix);color:var(--calc-text-muted,#a8b8cc);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}body.finance-polished .fp-input-panel .input-wrapper.prefix input:not([type=range]){padding-left:32px}body.finance-dashboard .fp-feature #heroCity{color:#fff}body.finance-dashboard .fp-feature #heroRank{color:#d5e5ff;opacity:1}body.finance-polished #cost-workspace{max-width:1160px;margin-inline:auto}body.finance-polished #cost-workspace [hidden]{display:none}body.finance-polished #cost-workspace .card{margin-block:20px;padding:clamp(16px,3vw,28px)}body.finance-polished #cost-workspace .cost-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}body.finance-polished #cost-workspace .cost-field{min-width:0;color:var(--text-primary);align-content:start;gap:7px;margin-block:10px;font-size:.88rem;display:grid}body.finance-polished #cost-workspace input,body.finance-polished #cost-workspace select,body.finance-polished #cost-share-dialog textarea{box-sizing:border-box;border:1px solid var(--border-color,#66758b);background:var(--bg-input,var(--bg-secondary));width:100%;min-width:0;color:var(--text-primary);font:inherit;border-radius:9px;padding:11px 12px}body.finance-polished #cost-workspace input[type=checkbox],body.finance-polished #cost-share-dialog input[type=checkbox]{width:auto;margin-inline-end:8px}body.finance-polished #cost-workspace input[aria-invalid=true]{border-color:#dc5265;box-shadow:0 0 0 1px #dc5265}body.finance-polished #cost-workspace fieldset{border:1px solid var(--border-color,#66758b);border-radius:12px;min-width:0;padding:16px}body.finance-polished #cost-workspace legend{color:var(--text-primary);padding-inline:7px;font-weight:650}body.finance-polished #cost-workspace .cost-row-card{margin-block:16px}body.finance-polished #cost-workspace .cost-notice,body.finance-polished #cost-workspace .cost-error{border:1px solid var(--border-color,#66758b);color:var(--text-primary);border-radius:10px;padding:16px;line-height:1.6}body.finance-polished #cost-workspace .input-hint,body.finance-polished #cost-workspace .cost-explanation{color:var(--text-secondary);font-size:.86rem;line-height:1.65}body.finance-polished #cost-workspace .cost-task,body.finance-polished #cost-workspace .cost-chart-controls,body.finance-polished #cost-workspace .cost-legend,body.finance-polished #cost-workspace .cost-save{flex-wrap:wrap;align-items:center;gap:10px;margin-block:16px;display:flex}body.finance-polished #cost-workspace button:not(.tab-btn),body.finance-polished #cost-share-dialog button{border:1px solid var(--border-color,#66758b);background:var(--bg-secondary);min-height:42px;color:var(--text-primary);cursor:pointer;font:inherit;white-space:normal;overflow-wrap:anywhere;border-radius:9px;padding:10px 14px}body.finance-polished #cost-workspace button[aria-pressed=true]{color:#fff;background:#185bbb;border-color:#185bbb}body.finance-polished #cost-workspace button:focus-visible,body.finance-polished #cost-share-dialog button:focus-visible{outline-offset:3px;outline:3px solid #72aaff}body.finance-polished #cost-workspace button:disabled{opacity:.55;cursor:default}body.finance-polished #cost-workspace .cost-money{overflow-wrap:normal;font-size:clamp(1.15rem,5vw,2.6rem)}body.finance-polished #cost-workspace .cost-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-block:20px;display:grid}body.finance-polished #cost-workspace .cost-metrics p{margin-bottom:8px;font-size:.8rem}body.finance-polished #cost-workspace .cost-metrics strong{overflow-wrap:anywhere}body.finance-polished #cost-workspace details{margin-block:18px}body.finance-polished #cost-workspace summary{cursor:pointer;color:var(--text-primary);padding-block:10px;font-weight:650}body.finance-polished #cost-workspace .cost-table-wrap{overflow-x:auto}body.finance-polished #cost-workspace table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-block:16px;font-size:.83rem}body.finance-polished #cost-workspace th,body.finance-polished #cost-workspace td{text-align:start;border-bottom:1px solid var(--border-color,#66758b);overflow-wrap:anywhere;color:var(--text-primary);background:0 0;padding:11px}body.finance-polished #cost-workspace caption{text-align:start;color:var(--text-secondary);padding-block:8px}body.finance-polished #cost-workspace .cost-chart-wrap{min-width:0;height:390px;position:relative}body.finance-polished #cost-workspace .cost-legend button[aria-pressed=false]{text-decoration:line-through}body.finance-polished #cost-share-dialog{box-sizing:border-box;border:1px solid var(--border-color,#66758b);background:var(--bg-secondary);width:min(760px,100% - 24px);max-height:90vh;color:var(--text-primary);border-radius:14px;padding:24px;overflow-y:auto}body.finance-polished #cost-share-dialog::backdrop{background:#000000a6}body.finance-polished #cost-share-dialog label{margin-block:16px;display:block}body.finance-polished #cost-share-dialog table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:.8rem}body.finance-polished #cost-share-dialog td,body.finance-polished #cost-share-dialog th{text-align:start;overflow-wrap:anywhere;border-bottom:1px solid var(--border-color,#66758b);padding:8px}#cost-paper{display:none}@media (width<=600px){body.finance-polished #cost-workspace .cost-pair,body.finance-polished #cost-workspace .cost-metrics{grid-template-columns:minmax(0,1fr)}body.finance-polished #cost-workspace .cost-table-wrap>table{min-width:580px}body.finance-polished #cost-workspace #cost-summary{table-layout:fixed;min-width:0}body.finance-polished #cost-workspace .tab-nav{gap:8px;display:flex;overflow-x:auto}body.finance-polished #cost-workspace .tab-btn{white-space:normal;flex:none;max-width:190px}}@media screen and (width<=600px){body.finance-polished #cost-workspace #cost-summary{table-layout:auto}body.finance-polished #cost-workspace #cost-summary th{overflow-wrap:normal;min-width:7em}body.finance-polished #cost-workspace #heroSalary,body.finance-polished #cost-workspace .cost-metrics strong,body.finance-polished #cost-workspace .cost-metrics li{white-space:nowrap;overflow-wrap:normal;min-width:0;max-width:100%;overflow-x:auto}body.finance-polished #cost-workspace .cost-metrics strong{display:block}body.finance-polished #cost-workspace #cost-summary td{white-space:nowrap;overflow-wrap:normal;padding-inline:6px}}@media print{@page{size:a4;margin:12mm}html,html body.finance-polished.finance-dashboard{color:#172033;background:#fff}html body.finance-polished.finance-dashboard #main-content.calc-content-wrapper{box-sizing:border-box;width:186mm;max-width:none;margin:0;padding:0}html body.finance-polished.finance-dashboard.cost-paper-ready #cost-workspace,html body.finance-polished.finance-dashboard.cost-paper-ready .action-bar,html body.finance-polished.finance-dashboard.cost-paper-ready .page-sections-outer,html body.finance-polished.finance-dashboard.cost-paper-ready .foot,html body.finance-polished.finance-dashboard.cost-paper-ready nav,html body.finance-polished.finance-dashboard.cost-paper-ready .calc-breadcrumb,html body.finance-polished.finance-dashboard.cost-paper-ready .calc-back-to-top,html body.finance-polished.finance-dashboard.cost-paper-ready .calc-progress-bar{display:none}html body.finance-polished.finance-dashboard.cost-paper-ready #cost-paper{color:#172033;background:#fff;width:100%;font:10pt/1.5 Arial,sans-serif;display:block}html body.finance-polished.finance-dashboard #cost-paper h1{color:#172033;margin-block:0 12pt;font-size:20pt}html body.finance-polished.finance-dashboard #cost-paper h2{color:#172033;break-after:avoid;margin-top:18pt;font-size:12pt}html body.finance-polished.finance-dashboard #cost-paper table{table-layout:fixed;border-collapse:collapse;background:#fff;width:100%;margin-block:10pt;font-size:8.5pt}html body.finance-polished.finance-dashboard #cost-paper caption{color:#172033;text-align:start;break-after:avoid;font-weight:700}html body.finance-polished.finance-dashboard #cost-paper th,html body.finance-polished.finance-dashboard #cost-paper td{color:#172033;text-align:start;overflow-wrap:anywhere;background:#fff;border:1px solid #a4afbd;padding:6pt}html body.finance-polished.finance-dashboard #cost-paper th{font-weight:700}html body.finance-polished.finance-dashboard #cost-paper tr{break-inside:avoid}html body.finance-polished.finance-dashboard #cost-paper thead{display:table-header-group}html body.finance-polished.finance-dashboard #cost-paper figure{break-inside:avoid;margin:12pt 0}html body.finance-polished.finance-dashboard #cost-paper .cost-paper-chart{width:100%;height:auto;display:block}}