.iv-income-entry{display:flex;gap:14px;align-items:center;width:100%;border:1px solid #3d4942;background:#202b25;color:var(--ink);border-radius:16px;padding:16px;margin:12px 0;text-align:left;min-height:78px}.iv-income-entry>.iv-icon{color:#a8cbb1}.iv-income-entry>span{display:grid;gap:6px;flex:1}.iv-income-entry strong{font-size:.9rem;font-weight:550}.iv-income-entry small{font-size:.7rem;color:var(--muted)}.iv-income-entry>b{font-size:1rem;font-weight:550;font-variant-numeric:tabular-nums}
.income-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 8px}.income-pair>div{display:grid;gap:10px;min-width:0}.income-pair span{color:var(--muted);font-size:.71rem}.income-pair strong{font-size:1.25rem;font-weight:550;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.retirement-income .income-hero{font-size:2.4rem;font-weight:500;margin:18px 0;font-variant-numeric:tabular-nums}.income-hero small{font-size:.8rem;color:var(--muted)}.income-cover{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.71rem;color:var(--muted);margin-bottom:8px}.retirement-income .iv-bar-actual{fill:#a4cbb1}.retire-estimate{display:flex;align-items:baseline;gap:10px;margin:20px 0}.retire-estimate>strong{font-size:2.2rem;font-weight:500;font-variant-numeric:tabular-nums}.retire-estimate>span{font-size:.8rem;color:var(--muted)}.retire-progress-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;color:var(--muted);font-size:.68rem;margin-bottom:8px}.retire-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 0}.retire-scenarios>div{display:grid;gap:8px;text-align:center;min-width:0;padding:13px 7px;background:var(--surface);border-radius:13px}.retire-scenarios span{font-size:.68rem;color:var(--muted)}.retire-scenarios strong{font-size:1rem;font-weight:550;font-variant-numeric:tabular-nums}.retire-scenarios small{font-size:.61rem;color:var(--muted);line-height:1.5}
.retirement-curve{display:block;width:100%;height:auto;overflow:visible}.retirement-curve text{font:11px system-ui;fill:#abb3c0}.retire-grid{stroke:#343b43;stroke-width:1}.retire-line,.retire-target{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}.retire-target{stroke:#d6bc90;stroke-dasharray:5 5}.retire-line.line-0{stroke:#afbacb}.retire-line.line-1{stroke:#9cbdec}.retire-line.line-2{stroke:#95c5a8}.retire-legend{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;font-size:.65rem;color:var(--muted)}.retire-legend span:before{content:'';display:inline-block;vertical-align:middle;width:14px;height:3px;background:#afbacb;margin-right:5px}.retire-legend .line-1:before{background:#9cbdec}.retire-legend .line-2:before{background:#95c5a8}.retire-legend .target:before{height:0;border-top:2px dashed #d6bc90;background:none}
.iv-form-details{border-top:1px solid var(--border);margin-top:12px}.iv-form-details>summary{font-size:.78rem;line-height:1.7;cursor:pointer;min-height:48px;padding:12px 0;color:var(--muted)}.retire-checkbox{display:flex;gap:10px;align-items:center;min-height:48px;font-size:.8rem;line-height:1.7}.retire-checkbox input{width:20px;height:20px;flex-shrink:0;accent-color:#99bfab}.retire-tool{border-top:1px solid var(--border);padding:12px 0}.retire-tool a{display:block;min-height:44px;padding:10px 0;font-size:.9rem}.retire-tool small{display:block}.retire-income-row{display:flex;align-items:center;gap:10px;width:100%;padding:16px 13px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:var(--panel);color:var(--ink);text-align:left;min-height:80px}.retire-income-row>span{display:grid;gap:7px;min-width:0}.retire-income-row>span:first-child{flex:1}.retire-income-row>span:nth-child(2){text-align:right}.retire-income-row strong{font-size:.8rem;font-weight:500;line-height:1.5}.retire-income-row small{font-size:.63rem;color:var(--muted);line-height:1.5}.retire-income-row>.iv-icon{width:13px;height:13px;color:var(--muted)}.iv-stock-numbers .income-yield{color:#b4cfbd;font-size:.63rem}.retirement-page .choice-error:empty{display:none}
@media(max-width:360px){.retire-estimate>strong{font-size:1.8rem}.income-pair strong{font-size:1.1rem}.retire-scenarios{gap:5px}.retire-scenarios strong{font-size:.85rem}.retire-scenarios small{font-size:.57rem}.iv-income-entry{padding:13px;gap:10px}.iv-income-entry>b{font-size:.9rem}.retire-income-row{padding:14px 10px}}
