.retirement-shell{display:grid;gap:28px;margin:30px 0 42px;min-width:0;max-width:100%}.retirement-shell>*{min-width:0;max-width:100%}.retirement-input-card,.retirement-results,.retirement-method{background:var(--white);border:1px solid var(--line);border-radius:24px}.retirement-input-card{padding:28px}.retirement-section+.retirement-section{border-top:1px solid var(--line);margin-top:28px;padding-top:28px}.retirement-section-head,.retirement-result-head,.retirement-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.retirement-section-head h2,.retirement-result-head h2,.retirement-chart-head h3,.retirement-scenarios h3{margin:0;line-height:1.35}.retirement-section-head>p,.retirement-result-head>p,.retirement-chart-head p,.retirement-section-head div>p:not(.retirement-step){max-width:560px;margin:4px 0 0;color:var(--muted);font-size:13px}.retirement-step{margin:0 0 5px;color:var(--accent);font-size:11px;font-weight:850;letter-spacing:1.4px}.retirement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}.retirement-field{min-width:0}.retirement-field-wide{grid-column:span 2}.retirement-field label{display:block;margin-bottom:7px;font-size:13px;font-weight:750}.retirement-field input{width:100%;min-width:0;height:46px;border:1px solid #d9cdbd;border-radius:12px;background:#fffefa;color:var(--ink);font:inherit;font-size:16px;padding:10px 12px;outline:none}.retirement-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #b94d2718}.retirement-input-prefix,.retirement-input-suffix{display:flex;align-items:center;width:100%;min-width:0;border:1px solid #d9cdbd;border-radius:12px;background:#fffefa;overflow:hidden}.retirement-input-prefix:focus-within,.retirement-input-suffix:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #b94d2718}.retirement-input-prefix input,.retirement-input-suffix input{flex:1 1 0;width:0;min-width:0;border:0;border-radius:0;box-shadow:none!important}.retirement-input-prefix>span,.retirement-input-suffix>span{flex:0 0 auto;padding:0 12px;color:var(--muted);font-size:13px;font-weight:750}.retirement-input-prefix>span{border-right:1px solid var(--line)}.retirement-input-suffix>span{border-left:1px solid var(--line)}.retirement-inline-action{margin-top:10px;min-height:42px}.retirement-hint,.retirement-status,.retirement-insights p{margin:14px 0 0;padding:10px 13px;border-radius:12px;background:#f5f0e9;color:var(--muted);font-size:13px}.retirement-hint[data-kind=ready],.retirement-status[data-kind=ready],.retirement-insights [data-kind=ready]{background:#e6f0e9;color:#3f6b52}.retirement-hint[data-kind=warn],.retirement-status[data-kind=warn],.retirement-insights [data-kind=warn]{background:#fff1d9;color:#76561e}.retirement-status[data-kind=error]{background:#f8e4e2;color:#8d403a}.retirement-assumptions{margin-top:28px;border-top:1px solid var(--line);padding-top:22px}.retirement-assumptions summary,.retirement-method summary{cursor:pointer;font-weight:800}.retirement-assumption-note{color:var(--muted);font-size:13px;margin:10px 0 0}.retirement-results{padding:28px}.retirement-result-head{margin-bottom:20px}.retirement-result-head .eyebrow{margin-bottom:5px}.retirement-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.retirement-summary-card{min-width:0;padding:19px;border:1px solid var(--line);border-radius:18px;background:#fbf6ee}.retirement-summary-card>span{display:block;color:var(--muted);font-size:12px;font-weight:750}.retirement-summary-card strong{display:block;margin:8px 0 4px;font-size:clamp(23px,3vw,34px);line-height:1.15;letter-spacing:-.7px;overflow-wrap:anywhere}.retirement-summary-card small{display:block;color:var(--muted);font-size:12px;line-height:1.45}.retirement-summary-card small b{color:var(--ink)}.retirement-summary-primary{background:#f4e9dc;border-color:#e5d2bb}.retirement-insights{display:grid;grid-template-columns:1.5fr 1fr;gap:12px}.retirement-chart-card,.retirement-scenarios{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.retirement-chart-note{font-size:12px;color:var(--muted);white-space:nowrap}.retirement-chart-scroll{width:100%;max-width:100%;min-width:0;overflow-x:auto;margin-top:14px;border:1px solid var(--line);border-radius:16px;background:#fffefa}.retirement-chart-scroll svg{display:block;width:100%;min-width:620px;height:auto}.retirement-chart-grid{stroke:#e9e0d5;stroke-width:1}.retirement-chart-axis{stroke:#a99b8c;stroke-width:1}.retirement-chart-label{fill:#74695f;font-size:11px}.retirement-chart-line{fill:none;stroke:#5e7d6e;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.retirement-chart-area{fill:#dce9e1;opacity:.66}.retirement-chart-goal{stroke:#b94d27;stroke-width:2;stroke-dasharray:8 6}.retirement-chart-goal-label{fill:#9a482a;font-size:11px;font-weight:750}.retirement-chart-target-age{stroke:#806d5c;stroke-width:1.5;stroke-dasharray:3 5}.retirement-table-wrap{width:100%;max-width:100%;min-width:0;overflow-x:auto;margin-top:14px;border:1px solid var(--line);border-radius:14px}.retirement-table-wrap table{width:100%;min-width:680px;border-collapse:collapse;background:#fffefa;font-size:13px}.retirement-table-wrap th,.retirement-table-wrap td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap}.retirement-table-wrap th{background:#f6efe6;color:var(--muted);font-size:11px;letter-spacing:.2px}.retirement-table-wrap tr:last-child td{border-bottom:0}.retirement-method{margin:0 0 18px;padding:20px 24px}.retirement-method-body{margin-top:12px;color:var(--muted);font-size:13px}.retirement-method-body p{margin:8px 0}.retirement-disclaimer{margin:0 0 48px;color:var(--muted);font-size:12px}.retirement-status{margin-bottom:0}
@media(max-width:800px){.retirement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.retirement-field-wide{grid-column:span 2}.retirement-section-head,.retirement-result-head,.retirement-chart-head{display:block}.retirement-section-head>p,.retirement-result-head>p,.retirement-chart-head>span{margin-top:8px}.retirement-insights{grid-template-columns:1fr}}
@media(max-width:560px){.retirement-input-card,.retirement-results{padding:20px}.retirement-grid,.retirement-summary-grid{grid-template-columns:1fr}.retirement-field-wide{grid-column:auto}.retirement-summary-card strong{font-size:27px}.retirement-input-prefix>span,.retirement-input-suffix>span{padding-inline:10px}.retirement-method{padding:18px 20px}.retirement-chart-note{white-space:normal;display:block}.retirement-inline-action{width:100%}}
