/* Money v6 extends the existing Daylight tokens. */
.money-v4{gap:var(--s6)}.money-v4 .intro{gap:var(--s2)}.money-v4 .intro h1{font-size:var(--text-2xl)}.money-v4 .intro>p:not(.eyebrow){font-size:var(--text-base);line-height:1.5}.money-topline{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);min-height:44px}.money-topline .back-btn{margin:0}.money-topline .text-link{font-size:var(--text-xs)}.money-state{display:block;font-size:var(--text-xs);color:var(--muted)}.money-state.is-draft{color:var(--accent)}
.money-footer{display:grid;padding-block:var(--s2) var(--s3)}.in-money>footer{border-top:1px solid var(--line)}.in-money .app-nav{box-shadow:none}.money-v4 .money-big{display:block;font:400 clamp(40px,12vw,56px)/1.1 var(--serif);letter-spacing:-.045em;font-variant-numeric:tabular-nums;white-space:nowrap}.money-projection{display:grid;gap:var(--s4)}.money-projection>.od-stat{gap:var(--s2)}.money-projection h2{font-size:var(--text-base)}.money-projection>.od-stat>.muted{font-size:var(--text-sm)}.money-svg{display:block;width:100%;height:auto;overflow:visible}.money-svg text{font:400 12px var(--sans)}.money-svg.trajectory text{font-size:12px}.trajectory[data-money-plot]{touch-action:pan-y;cursor:crosshair}.money-trajectory{display:grid;gap:var(--s2)}.money-trajectory figcaption{display:flex;justify-content:flex-end}.money-trajectory figcaption .text-link{font-size:var(--text-xs);min-height:44px}.chart-key{display:flex;flex-wrap:wrap;gap:var(--s4);color:var(--muted);font-size:var(--text-xs)}.chart-key>span{display:flex;align-items:center;gap:var(--s2)}.chart-key-line{display:block;width:16px;height:0;border-top:3px solid var(--chart-color,var(--accent))}.chart-key-line.dashed{border-top-style:dashed}.chart-key-line.goal{border-top-style:dotted;border-color:var(--blue)}.chart-inspector{display:grid;gap:var(--s1);padding:var(--s3) var(--s4);background:var(--surface);border:1px solid var(--line);border-radius:var(--control-radius)}.chart-inspector label{font-size:var(--text-sm);color:var(--muted)}.chart-inspector output{display:block;font-size:var(--text-sm);font-weight:600;white-space:nowrap}.chart-inspector input{height:44px}.money-goal{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding-top:var(--s4);border-top:1px solid var(--line)}.money-goal .text-link{font-size:var(--text-xs)}.money-goal strong{font:400 var(--text-xl)/1.3 var(--serif)}
.money-topics{display:grid;border-block:1px solid var(--line)}.money-topic{display:flex;align-items:center;gap:var(--s4);min-height:80px;padding-block:var(--s4);text-align:left}.money-topic+.money-topic{border-top:1px solid var(--line)}.money-topic .od-field{gap:var(--s1)}.money-topic .icon{width:16px;height:16px;color:var(--muted)}.topic-number{display:block;font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums}.topic-label{font-weight:600;font-size:var(--text-base)}.money-topic .small{font-size:var(--text-sm)}.possibility-entry{display:flex;align-items:center;gap:var(--s4);padding:var(--s6);border:1px solid var(--blue);border-radius:var(--radius);background:#14213C;color:var(--aqua);text-align:left}.possibility-entry .od-field{gap:var(--s2)}.possibility-entry strong{font-size:var(--text-lg);color:var(--ink)}.possibility-entry .eyebrow{font-size:var(--text-xs);letter-spacing:.08em}.possibility-entry .small{color:var(--aqua)}
.money-chip{display:block;padding:var(--s2) var(--s3);border-radius:var(--pill);background:var(--raised);font-size:var(--text-xs);color:var(--ink);white-space:nowrap}.timing-options{display:grid;gap:var(--s3)}.timing-option{display:grid;gap:var(--s3);padding:var(--s4);border:1px solid var(--line);border-radius:var(--control-radius);text-align:left;background:var(--surface)}.timing-option.selected{border-color:var(--accent)}.timing-option>.od-row{--od-gap:12px}.timing-option>.od-row>strong{font:400 var(--text-xl)/1.2 var(--serif)}.timing-option .icon{color:var(--accent);width:16px;height:16px}.timing-track{display:block;height:8px;background:var(--raised);border-radius:var(--pill)}.timing-track>span{display:block;height:100%;background:var(--muted);border-radius:inherit}.timing-option.selected .timing-track>span{background:var(--accent)}.money-v4 .age-block{gap:var(--s1)}.money-v4 .age-title{flex-wrap:wrap}.money-v4 .age-title label{font-size:var(--text-sm)}.money-v4 .age-title button{min-height:44px}
.saving-nudges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2)}.saving-nudges>button{display:flex;justify-content:center;align-items:center;min-height:44px;border:1px solid var(--line);border-radius:var(--pill);font-size:var(--text-sm);white-space:nowrap}.money-breakdown{display:grid}.money-amount-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);padding-block:var(--s2);font-size:var(--text-sm)}.money-amount-row>:first-child{min-width:0;color:var(--muted)}.money-amount-row strong{font-variant-numeric:tabular-nums;font-size:var(--text-sm)}.money-amount-row.total{border-top:1px solid var(--line);margin-top:var(--s2);padding-top:var(--s4)}.money-amount-row.total>:first-child{color:var(--ink)}
.spending-display{gap:var(--s2);margin-bottom:var(--s6)}.spending-display>.muted{font-size:var(--text-sm)}.spending-strip{display:flex;gap:0;width:100%;height:24px;background:var(--raised);border-radius:var(--s2);overflow:hidden;margin-bottom:var(--s4)}.spending-strip>span{display:block;min-width:0}.spending-categories{display:grid}.spending-category{display:flex;align-items:center;gap:var(--s3);min-height:80px;padding-block:var(--s4);border-bottom:1px solid var(--line);text-align:left}.category-swatch{display:block;flex:none;width:8px;height:24px;border-radius:var(--s1)}.spending-category .od-field{gap:var(--s1)}.spending-category strong{font-size:var(--text-sm)}.spending-category .small{font-size:var(--text-xs)}.category-amount{text-align:right;flex:none}.category-amount strong{font-size:var(--text-base)}
.scenario-intro{display:grid;gap:var(--s6);padding:var(--s6);background:var(--surface);border-radius:var(--radius)}.scenario-orbits{display:flex;gap:var(--s3);align-items:center;justify-content:center;padding:var(--s4)}.scenario-orbits>span{display:block;width:56px;height:56px;border:2px solid var(--muted);border-radius:50%}.scenario-orbits>span:nth-child(2){width:72px;height:72px;border-color:var(--accent);border-style:dashed}.scenario-orbits>span:nth-child(3){border-color:var(--aqua);border-style:dotted}.scenario-intro .od-field{gap:var(--s2)}.money-v4 .comparison-box{padding:var(--s3)}.money-v4 .comparison-box .metric{font-size:clamp(24px,7vw,28px)}.money-v4 .comparison-box .small{font-size:var(--text-xs)}.money-v4 .comparison-grid{gap:var(--s2)}.money-v4 .delta-note{line-height:1.5}.money-v4 .saved-row{background:var(--surface)}
.money-empty{display:grid;gap:var(--s3);padding:var(--s6);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.money-empty>p{font-size:var(--text-base)}.money-empty .small{font-size:var(--text-sm)}.error-jump{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);text-align:left;min-height:44px;color:var(--error);font-size:var(--text-sm);padding-block:var(--s2)}.review-note{padding:var(--s4);border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);font-size:var(--text-sm);color:var(--aqua)}.model-notes{display:grid;gap:var(--s4);border-top:1px solid var(--line);padding-top:var(--s6)}.model-notes p{font-size:var(--text-sm);color:var(--muted)}.model-notes a{display:flex;align-items:center;min-height:44px;font-size:var(--text-sm)}.conflict-row{display:grid;gap:var(--s2);padding:var(--s4);background:var(--bg);border:1px solid var(--line);border-radius:var(--control-radius);overflow-wrap:anywhere}.money-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.money-table th,.money-table td{padding:var(--s3) var(--s1);border-bottom:1px solid var(--line);text-align:right}.money-table th:first-child{text-align:left}.money-table td{white-space:nowrap}.money-table thead th{font-weight:600;color:var(--muted)}
@media(hover:hover){.money-topic:hover .topic-label{color:var(--accent)}.spending-category:hover{background:var(--surface)}.timing-option:hover{border-color:var(--accent)}.saving-nudges>button:hover{background:var(--raised)}.possibility-entry:hover{border-color:var(--aqua)}}
@media(max-width:375px){.money-v4 .intro h1{font-size:var(--text-2xl)}.money-v4 .inline-value{align-items:flex-start;flex-direction:column;gap:var(--s3)}.money-v4 .inline-value input{width:100%;text-align:left}.money-goal{gap:var(--s2)}.money-goal .text-link{font-size:var(--text-xs)}.money-table{font-size:var(--text-sm)}}

/* v5 clarity layer: progress, distinct starting-point visual, and readable outcomes. */
.money-step-copy{display:grid;gap:2px;text-align:right;font-size:var(--text-xs);line-height:1.25}.money-step-copy strong{color:var(--ink);font-size:var(--text-xs)}.money-step-copy span{color:var(--muted)}
.money-flow-label{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);margin-bottom:calc(var(--s3) * -1)}.money-flow-label h2{font-size:var(--text-base)}
.outcome-pair{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:var(--s4);padding-block:var(--s4);border-block:1px solid var(--line)}.outcome-pair>.od-stat{align-content:end;gap:var(--s2)}.outcome-pair>.od-stat+div{padding-left:var(--s4);border-left:1px solid var(--line)}.outcome-pair strong{font:400 clamp(28px,8vw,36px)/1.1 var(--serif);letter-spacing:-.035em;font-variant-numeric:tabular-nums;white-space:nowrap}.outcome-pair .money-big{font-size:clamp(36px,10vw,48px)}.outcome-difference{font-size:var(--text-sm);line-height:1.5;color:var(--aqua)}
.runway-visual{display:grid;gap:var(--s4);padding-block:var(--s4)}.runway-track{display:flex;align-items:center;width:100%;height:20px}.runway-dot{display:block;flex:none;width:16px;height:16px;border:4px solid var(--bg);border-radius:50%;background:var(--aqua);box-shadow:0 0 0 1px var(--aqua)}.runway-dot.end{width:20px;height:20px;background:var(--accent);box-shadow:0 0 0 1px var(--accent)}.runway-line{display:block;flex:1;height:3px;background:repeating-linear-gradient(90deg,var(--muted) 0 8px,transparent 8px 14px)}.runway-ends{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}.runway-ends>.od-stat{gap:var(--s1)}.runway-ends>.od-stat:last-child{text-align:right}.runway-ends strong{font:400 var(--text-xl)/1.2 var(--serif);font-variant-numeric:tabular-nums}
.money-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.money-table-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.money-svg.trajectory text{font-size:13px}
@media(max-width:375px){.outcome-pair{grid-template-columns:1fr;gap:var(--s3)}.outcome-pair>.od-stat+div{padding-left:0;padding-top:var(--s3);border-left:0;border-top:1px solid var(--line)}.outcome-pair .money-big{font-size:40px}.money-step-copy span{max-width:132px}.runway-ends{gap:var(--s2)}}

/* v6 shareable retirement summary */
.summary-entry{display:flex;align-items:center;gap:var(--s4);width:100%;min-height:104px;padding:var(--s5) 0;border-block:1px solid var(--line);text-align:left}.summary-entry-mark{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid var(--accent);border-radius:50%;color:var(--accent);font:600 var(--text-xs)/1 var(--sans)}.summary-entry .od-field{gap:var(--s1)}.summary-entry strong{font-size:var(--text-base)}.summary-entry .small{color:var(--muted)}
.summary-page{gap:0;padding-bottom:var(--s8)}.summary-page .money-topline{margin-bottom:var(--s6)}.summary-hero{display:grid;gap:var(--s5);padding-bottom:var(--s8);border-bottom:1px solid var(--line)}.summary-meta{display:flex;justify-content:space-between;gap:var(--s3);font-size:11px;letter-spacing:.1em;color:var(--muted)}.summary-meta span{display:block}.summary-hero h1{font-size:clamp(42px,13vw,56px);line-height:.98;letter-spacing:-.055em}.summary-vision{max-width:28ch;font:400 var(--text-lg)/1.45 var(--serif);white-space:normal}.summary-age-rail{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:var(--s3)}.summary-age-rail>.od-stat{gap:var(--s1)}.summary-age-rail>.od-stat:last-child{text-align:right}.summary-age-rail strong{font:400 var(--text-2xl)/1 var(--serif)}.summary-age-line{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--s2);padding-bottom:4px;color:var(--muted);font-size:var(--text-xs);white-space:nowrap}.summary-age-line:before,.summary-age-line:after{content:"";display:block;height:1px;background:var(--line)}.summary-age-line i{display:none}
.summary-section{display:grid;gap:var(--s5);padding-block:var(--s8);border-bottom:1px solid var(--line)}.summary-section-head{display:flex;align-items:flex-start;gap:var(--s4)}.summary-section-head .od-field{gap:var(--s1)}.summary-section-head h2{font-size:var(--text-xl)}.summary-section-number{display:grid;place-items:center;flex:none;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;font-size:var(--text-xs);color:var(--muted)}.summary-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}.summary-metric{gap:var(--s1);min-height:96px;padding:var(--s4) var(--s3) var(--s4) 0;border-bottom:1px solid var(--line)}.summary-metric:nth-child(even){padding-left:var(--s3);border-left:1px solid var(--line)}.summary-metric strong{font:400 clamp(24px,8vw,32px)/1.1 var(--serif);letter-spacing:-.035em;font-variant-numeric:tabular-nums;white-space:nowrap}.summary-chart{display:grid;gap:var(--s4)}.summary-chart-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2)}.summary-chart-facts .summary-metric{min-height:80px;padding:var(--s3);border:1px solid var(--line)}.summary-chart-facts .summary-metric:nth-child(even){border-left:1px solid var(--line)}.summary-chart-facts .summary-metric strong{font-size:var(--text-lg)}
.summary-bars,.summary-sensitivity-bars{display:grid;gap:var(--s4)}.summary-bar-row,.summary-sensitivity-row{display:grid;gap:var(--s2)}.summary-bar-label{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);font-size:var(--text-sm)}.summary-bar-label strong{font-size:var(--text-sm);font-variant-numeric:tabular-nums}.summary-bar-track{display:block;width:100%;height:12px;border-radius:var(--pill);background:var(--raised);overflow:hidden}.summary-bar-track>span{display:block;width:var(--bar);height:100%;border-radius:inherit;background:var(--bar-color)}.summary-bar-track>span.is-negative{background:repeating-linear-gradient(135deg,var(--error) 0 5px,transparent 5px 9px);border:1px solid var(--error)}
.summary-donut-layout{display:grid;grid-template-columns:128px minmax(0,1fr);align-items:center;gap:var(--s5)}.summary-donut{display:block;width:128px;height:128px}.summary-donut text:first-of-type{font:400 17px var(--serif)}.summary-donut text:last-of-type{font:400 9px var(--sans)}.summary-legend{display:grid}.summary-legend-row{display:flex;align-items:center;gap:var(--s2);min-height:52px;border-bottom:1px solid var(--line);font-size:var(--text-sm)}.summary-legend-row>i{display:block;flex:none;width:8px;height:24px;border-radius:var(--s1);background:var(--swatch)}.summary-legend-row .od-field{gap:2px}.summary-legend-row strong{font-size:var(--text-xs);font-variant-numeric:tabular-nums}.summary-sensitivity-grid{display:grid;gap:var(--s8)}.summary-sensitivity-grid>div{display:grid;gap:var(--s4)}.summary-sensitivity-grid h3{font-size:var(--text-base)}.summary-sensitivity-row{padding-block:var(--s2)}.summary-sensitivity-row.is-current .summary-bar-label{color:var(--accent)}.summary-sensitivity-row>.micro{display:block}.summary-comparison{min-height:88px;padding:var(--s4);border:1px solid var(--line)}.summary-comparison strong{font:400 var(--text-xl)/1.1 var(--serif)}.summary-empty{display:grid;gap:var(--s3);padding:var(--s5);border:1px solid var(--line)}
.summary-assumptions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2)}.summary-assumptions .summary-metric{padding:var(--s3);border:1px solid var(--line);min-height:96px}.summary-assumptions .summary-metric:nth-child(even){border-left:1px solid var(--line)}.summary-assumptions .summary-metric strong{font-size:var(--text-lg)}.summary-disclaimer{font-size:var(--text-sm);line-height:1.6;color:var(--muted)}.summary-document-footer{display:flex;justify-content:space-between;gap:var(--s3);padding-top:var(--s6);font-size:11px;letter-spacing:.04em;color:var(--muted)}.summary-footer-actions{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr);gap:var(--s2)}.summary-footer-actions .btn{padding-inline:var(--s3);font-size:var(--text-sm)}.summary-copy-field{display:block;width:100%;min-height:220px;resize:vertical}
@media(hover:hover){.summary-entry:hover{color:var(--accent)}.summary-entry:hover .summary-entry-mark{background:var(--accent);color:var(--on-accent)}}
@media(max-width:375px){.summary-meta{display:grid}.summary-donut-layout{grid-template-columns:1fr}.summary-donut{justify-self:center}.summary-chart-facts{grid-template-columns:1fr}.summary-assumptions{grid-template-columns:1fr}.summary-assumptions .summary-metric{min-height:72px}.summary-kpis{grid-template-columns:1fr}.summary-metric:nth-child(even){padding-left:0;border-left:0}.summary-footer-actions{grid-template-columns:1fr}.summary-footer-actions .btn{font-size:var(--text-xs)}}
.summary-example-note{margin:0;padding-left:12px;border-left:2px solid var(--accent);color:var(--muted);font-size:13px;line-height:1.5}
.app:has(#view[data-screen="money-summary"]) :is(#standard-header,#navigation){display:none}
.app:has(#view[data-screen="money-assumptions"]) :is(#standard-header,#navigation),
.app:has(#view[data-screen="money-spend"]) :is(#standard-header,#navigation),
.app:has(#view[data-screen="money-scenarios"]) :is(#standard-header,#navigation),
.app:has(#view[data-screen="comparison"]) :is(#standard-header,#navigation){display:none}
.money-v4 .spending-display .money-big{display:flex;align-items:baseline;gap:8px;font-size:48px;letter-spacing:0}
.money-v4 .spending-display .money-big .small{font:500 13px/1.3 var(--sans);letter-spacing:0;white-space:nowrap}
@media(max-width:350px){.money-v4 .spending-display .money-big{font-size:40px}}
.app #money-footer .summary-footer-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.app #money-footer .summary-footer-actions .btn{min-width:0;min-height:48px;padding-inline:10px;font-size:13px;white-space:nowrap}
.app #money-footer .summary-footer-actions .btn:first-child{grid-column:1/-1}
@media print{
 @page{size:letter portrait;margin:12mm}
 html,body{min-height:0!important;background:#fff!important}
 body{display:block!important;padding:0!important;color:#111!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .phone-frame{width:auto!important;height:auto!important;padding:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;zoom:1!important}
 .phone-frame:before,.phone-frame:after,.hardware-button,.status-bar,.camera-dot,.gesture-indicator,.modal-layer,.toast-zone{display:none!important}
 .phone-screen{width:auto!important;height:auto!important;overflow:visible!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
 .phone-content{position:static!important;overflow:visible!important;padding:0!important;background:#fff!important}
 .app{display:block!important;height:auto!important;background:#fff!important;color:#111!important}
 .app-head,.app>footer{display:none!important}
 .view{overflow:visible!important}
 .view[data-screen="money-summary"] .summary-page{--bg:#fff;--surface:#fff;--raised:#e9ece8;--ink:#111;--muted:#565c58;--line:#c9ceca;--accent:#587500;--aqua:#00727a;--blue:#315d99;--gold:#805e00;--error:#a52c2c;display:block!important;width:100%!important;max-width:none!important;padding:0!important;color:var(--ink)!important;background:#fff!important}
 .summary-screen-only,.summary-footer-actions,.summary-entry,button{display:none!important}
 .summary-hero{gap:12px;padding-bottom:18px}.summary-hero h1{font-size:38px}.summary-vision{font-size:17px}.summary-meta{font-size:9px}.summary-age-rail{max-width:520px}
 .summary-section{gap:14px;padding-block:18px;break-inside:avoid}.summary-section-head{gap:10px}.summary-section-head h2{font-size:20px}.summary-section-head p{font-size:11px}.summary-section-number{width:26px;height:26px;font-size:9px}
 .summary-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-metric{min-height:68px;padding:10px}.summary-metric:nth-child(even){padding-left:10px;border-left:0}.summary-metric strong{font-size:21px}.summary-metric .small{font-size:10px}.summary-metric .micro{font-size:9px}
 .summary-wide,.summary-method{break-before:auto}.summary-chart-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-donut-layout{grid-template-columns:116px minmax(0,1fr)}.summary-donut{width:116px;height:116px}.summary-sensitivity-grid{grid-template-columns:1fr 1fr;gap:24px}.summary-assumptions{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-disclaimer{font-size:10px}.summary-document-footer{font-size:9px}
 .money-svg{max-height:180px}.money-svg text{font-size:10px}.summary-bar-track{height:9px}.summary-legend-row{min-height:34px;font-size:10px}.summary-legend-row .micro,.summary-bar-label,.summary-sensitivity-row .micro{font-size:9px}.summary-comparison{min-height:60px;padding:10px}
}

/* Keep the report entry visible before the chart, including incomplete drafts. */
.summary-entry-prominent{padding:var(--s4);border:1px solid var(--accent);border-radius:var(--control-radius);background:var(--surface);color:var(--ink)}
.summary-entry-prominent .eyebrow{color:var(--accent)}
.summary-entry-prominent .summary-entry-mark{background:var(--accent);color:var(--on-accent)}
.summary-entry-prominent:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
