.calc-page{max-width:1120px;margin:0 auto;padding:2rem 1.5rem 4rem}.calc-hero{margin-bottom:2.5rem}.calc-hero h1{font-size:2.25rem;font-weight:800;letter-spacing:-0.02em;color:var(--fg);margin:0 0 0.5rem}.calc-hero .calc-subtitle{font-size:1.05rem;color:var(--muted);line-height:1.6;max-width:640px}.calc-breadcrumb{display:flex;align-items:center;gap:0.4rem;font-size:0.8rem;font-family:var(--font-mono,'JetBrains Mono',monospace);text-transform:uppercase;letter-spacing:0.06em;color:var(--muted);margin-bottom:1.5rem}.calc-breadcrumb a{color:var(--muted);text-decoration:none}.calc-breadcrumb a:hover{color:var(--fg)}.calc-breadcrumb .sep{opacity:0.5}.calc-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius,12px);padding:2rem;margin-bottom:2.5rem}.calc-form{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}@media (max-width:600px){.calc-form{grid-template-columns:1fr}}.calc-field{display:flex;flex-direction:column;gap:0.35rem}.calc-field.full-width{grid-column:1 / -1}.calc-field label{font-size:0.82rem;font-weight:600;color:var(--fg-soft);letter-spacing:0.01em}.calc-field input,.calc-field select{font-size:1rem;padding:0.6rem 0.75rem;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--fg);font-variant-numeric:tabular-nums;transition:border-color 0.15s}.calc-field input:focus,.calc-field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 12%,transparent)}.calc-field input[type="number"]{-moz-appearance:textfield}.calc-field input[type="number"]::-webkit-inner-spin-button,.calc-field input[type="number"]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.calc-field .field-hint{font-size:0.75rem;color:var(--muted)}.calc-checkbox{flex-direction:row;align-items:center;gap:0.5rem}.calc-checkbox input[type="checkbox"]{width:18px;height:18px;accent-color:var(--accent)}.calc-results{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}.calc-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.calc-result-item{text-align:center;padding:1rem;background:var(--bg-soft,#fafafa);border-radius:var(--radius-sm,8px)}.calc-result-item .result-label{font-size:0.75rem;font-family:var(--font-mono,'JetBrains Mono',monospace);text-transform:uppercase;letter-spacing:0.08em;color:var(--muted);margin-bottom:0.3rem}.calc-result-item .result-value{font-size:1.75rem;font-weight:700;color:var(--fg);font-variant-numeric:tabular-nums;letter-spacing:-0.02em;transition:color 0.2s}.calc-result-item .result-value.positive{color:var(--good,#16a34a)}.calc-result-item .result-value.negative{color:var(--bad,#dc2626)}.calc-btn{display:inline-flex;align-items:center;justify-content:center;padding:0.7rem 1.5rem;font-size:0.95rem;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:8px;cursor:pointer;transition:opacity 0.15s;margin-top:0.5rem}.calc-btn:hover{opacity:0.85}.calc-chart-wrap{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--line);position:relative;height:280px}.calc-chart-wrap canvas{width:100%!important;height:100%!important}.calc-chart-legend{display:flex;align-items:center;gap:1rem;margin-top:0.75rem;font-size:0.78rem;color:var(--muted)}.calc-chart-legend-item{display:flex;align-items:center;gap:0.3rem}.calc-chart-legend-item::before{content:'';display:inline-block;width:10px;height:10px;border-radius:2px}.calc-chart-legend-item.legend-principal::before{background:var(--accent)}.calc-chart-legend-item.legend-interest::before{background:var(--good,#16a34a)}.calc-chart-legend-item.legend-contributions::before{background:color-mix(in srgb,var(--accent) 40%,transparent)}.calc-chart-legend-item.legend-total::before{background:var(--accent)}.calc-chart-legend-item.legend-goal::before{background:var(--bad,#dc2626);border:1px dashed var(--bad,#dc2626);background:transparent}.calc-content{margin-bottom:2.5rem}.calc-content-section{margin-bottom:2rem}.calc-content-section h2{font-size:1.4rem;font-weight:700;color:var(--fg);margin:0 0 0.75rem;letter-spacing:-0.01em}.calc-content-section p{font-size:1rem;line-height:1.7;color:var(--fg-soft);margin:0 0 1rem}.calc-faq{margin-bottom:2.5rem}.calc-faq h2{font-size:1.4rem;font-weight:700;color:var(--fg);margin:0 0 1rem}.calc-faq-item{border-bottom:1px solid var(--line)}.calc-faq-item:first-child{border-top:1px solid var(--line)}.calc-faq-item summary{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;font-size:1rem;font-weight:500;color:var(--fg);cursor:pointer;list-style:none}.calc-faq-item summary::-webkit-details-marker{display:none}.calc-faq-item summary::after{content:'+';font-size:1.25rem;font-weight:300;color:var(--muted);transition:transform 0.2s}.calc-faq-item[open] summary::after{content:'\2212'}.calc-faq-item .faq-answer{padding:0 0 1rem;font-size:0.95rem;line-height:1.7;color:var(--fg-soft)}.calc-crosslinks{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line)}.calc-crosslinks h2{font-size:1.2rem;font-weight:700;color:var(--fg);margin:0 0 1rem}.calc-crosslinks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0.75rem}.calc-crosslink{display:block;padding:0.75rem 1rem;border:1px solid var(--line);border-radius:var(--radius-sm,8px);text-decoration:none;color:var(--fg);font-size:0.9rem;font-weight:500;transition:border-color 0.15s,background 0.15s}.calc-crosslink:hover{border-color:var(--accent);background:var(--bg-soft,#fafafa)}.calc-index-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-bottom:2.5rem}.calc-index-card{display:flex;flex-direction:column;padding:1.25rem;border:1px solid var(--line);border-radius:var(--radius,12px);text-decoration:none;color:var(--fg);transition:border-color 0.15s,box-shadow 0.15s}.calc-index-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm,0 1px 3px rgba(0,0,0,0.04))}.calc-index-card h3{font-size:1rem;font-weight:600;margin:0 0 0.4rem;color:var(--fg)}.calc-index-card p{font-size:0.85rem;line-height:1.5;color:var(--muted);margin:0}.calc-category-title{font-size:0.78rem;font-family:var(--font-mono,'JetBrains Mono',monospace);text-transform:uppercase;letter-spacing:0.08em;color:var(--muted);margin:2rem 0 0.75rem}.calc-category-title:first-child{margin-top:0}