/* FIRE 0.3: calm, readable planning beneath a living title. */
body{background:#f3f2eb}
.content{max-width:1320px;padding-top:26px}
.app-header{height:76px;background:#0b241f}
.wordmark b{font-family:Waterside,Arial,sans-serif;font-weight:700;font-size:26px;letter-spacing:2px}
.wordmark span{letter-spacing:.2px;font-size:11px}
.fire-title-banner{margin-bottom:25px}
.fire-title-banner .hero-tools{top:16px;right:16px;display:flex;gap:7px}
.fire-title-banner .hero-tools .icon-button{width:34px;height:34px;color:#f2dbc0;background:#0a201f8a}
.fire-title-banner__copy h1{max-width:300px;font-size:35px}
.retirement-result{background:linear-gradient(125deg,#fffdf7,#f9f7ec)}
.retirement-amount{font-variant-numeric:tabular-nums;color:#153f33}
.controls-card{background:#fffdf7}
.goal-solver{display:flex;align-items:center;justify-content:space-between;gap:18px;border-radius:15px;padding:18px;background:#e8eee3;margin-top:20px;border:1px solid #d5e0cc}
.goal-solver>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.goal-solver span{font-size:12px;color:#43644d;line-height:1.5}
.goal-solver strong{font-family:Retreat,Georgia,serif;font-size:32px;font-weight:400;line-height:1.2;color:#194f38}
.goal-solver strong small{font-family:Waterside,Arial,sans-serif;font-size:12px}
.goal-solver small{font-size:11px;color:#4e6a52}
.goal-solver .secondary{flex:none;font-size:12px;background:#fffdf7}
.goal-solver.quiet{font-size:12px}
.solver-note{font-size:10px;color:#5b705e;line-height:1.6;margin-top:10px}
.result-shortcuts{display:flex;justify-content:space-between;gap:18px;margin-top:20px;padding-top:16px;border-top:1px solid #dde3d4}
.result-shortcuts .text-button{font-size:12px;min-height:32px}
.depth-intro{margin:19px 0 23px}
.depth-link{margin-top:20px;display:inline-block}
.depth-story{background:#133d32;color:#fff1d9;position:relative;overflow:hidden}
.depth-story .eyebrow{color:#ecc294}
.depth-story h2{font-size:36px;margin:20px 0}
.depth-story p{font-size:14px;color:#d4decf}
.depth-story .text-button{color:#f3c78b}
.fee-visual{height:150px;display:flex;align-items:flex-end;gap:15px;margin:26px 0 20px;border-bottom:1px solid #b3c0a54d}
.fee-visual span{width:18%;height:var(--height);border-radius:8px 8px 0 0;background:linear-gradient(#c6d7ad80,#7c9f7766);border:1px solid #d0dfb544;border-bottom:0}
.fee-visual span:last-child{background:linear-gradient(#f4c382,#c8894566);border-color:#f0ce9580}
.destination-breakdown{border-top:1px solid #dce2d3;margin-top:23px;padding-top:15px;display:flex;flex-direction:column;gap:10px}
.destination-breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px;color:#58735c}
.destination-breakdown strong{color:#234b37;font-weight:400}
.stress-explanation{margin:24px 0 14px;font-size:13px;line-height:1.65;color:#48604b;background:#edf1e6;padding:17px;border-radius:12px}
.stress-chart svg{width:100%;height:auto;min-height:180px}
.path-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:15px}
.path-card{border:1px solid #d6dfcd;border-radius:14px;padding:17px;display:flex;flex-direction:column;gap:8px;min-width:0}
.path-label{font-size:12px;color:#47624b;display:flex;gap:7px;align-items:center;line-height:1.5}
.path-label i{width:8px;height:8px;border-radius:50%;flex:none}
.path-card strong{font-size:23px;line-height:1.25;font-family:Retreat,Georgia,serif;font-weight:400;color:#224e37}
.path-card small,.path-card>span{font-size:11px;line-height:1.5;color:#526d53}
.trail-card{background:#10382e;color:#fff4de;overflow:hidden}
.trail-card h3{color:#fff2dc;font-size:32px}
.trail-card .eyebrow{color:#edc087}
.trail-card .subtext{color:#d5dfce}
.trail-card .muted-note{color:#bccdb7}
.trail-card .badge{background:#ffffff12;color:#f5c68c}
.trail-stamps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:26px 0}
.trail-stamp{border:1px solid #63806a66;border-radius:15px;padding:18px 14px;background:#ffffff04;display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:0}
.trail-stamp>div{width:43px;height:43px;color:#a0b69f;background:#ffffff07;border-radius:13px;display:grid;place-items:center}
.trail-stamp svg{width:29px;height:29px}
.trail-stamp strong{font-family:Retreat,Georgia,serif;font-size:19px;font-weight:400;color:#d5dfcf;line-height:1.25}
.trail-stamp small{font-size:11px;line-height:1.5;color:#b6c8b2;flex:1}
.trail-stamp>span{font-size:10px;border-radius:20px;padding:3px 9px;border:1px solid #62806788;color:#a4bca0}
.trail-stamp.earned{background:linear-gradient(145deg,#dba05d16,#ffffff05);border-color:#e3b66b88}
.trail-stamp.earned>div{background:#e5b1641c;color:#ffd18b}
.trail-stamp.earned strong{color:#ffedcb}
.trail-stamp.earned>span{color:#ffd89f;border-color:#e1bc7f66;background:#dba15a17}
.trail-stamp.earned small{color:#dde6d4}
.tabs{max-width:590px}
.tabs button{padding:10px 12px}
.tool-result{flex-wrap:wrap}
.skip-link{position:fixed;left:12px;top:-80px;z-index:150;background:#fff9ec;color:#174732;padding:12px}
.skip-link:focus{top:12px}
.field label,.muted-note,.subtext{color:#566d59}
.account-detail small,.mini-note,.tool-result span{color:#5c725c}
#calculator-controls{scroll-margin-top:15px}
@media(max-width:900px){.content{padding-top:18px}.goal-solver strong{font-size:31px}.trail-stamps{grid-template-columns:repeat(3,minmax(0,1fr))}.path-cards{grid-template-columns:1fr}.path-card{display:grid;grid-template-columns:1fr auto;gap:8px 18px}.path-card>small,.path-card>span{grid-column:1/-1}.path-card strong{font-size:22px;text-align:right}.fire-title-banner{margin-bottom:20px}}
@media(max-width:700px){.fire-title-banner{gap:0;padding:0 16px 20px;min-height:222px}.fire-title-banner .fire-wordmark{height:145px}.fire-title-banner .fire-title-banner__copy .eyebrow{display:none}.fire-title-banner .fire-title-banner__copy h1{font-family:Waterside,Arial,sans-serif;font-size:19px;font-weight:400;letter-spacing:.2px;max-width:none}.fire-title-banner .fire-title-banner__copy p{font-size:12px;margin-top:6px}.fire-title-banner .hero-tools{top:10px;right:10px;flex-direction:column}.fire-title-banner .hero-tools .icon-button{height:30px;width:30px}.fire-title-banner .fire-wordmark__letters{font-size:clamp(78px,24vw,110px);bottom:6px}}
@media(max-width:600px){.app-header{height:72px}.app-header .wordmark b{font-size:23px}.app-header .wordmark span{font-size:10px}.wordmark img{width:26px;height:34px}.content{padding-top:16px}.goal-solver{padding:16px;flex-direction:column;align-items:stretch;gap:12px}.goal-solver .secondary{min-height:42px;align-self:flex-start}.goal-solver strong{font-size:32px}.goal-solver span{font-size:11px}.goal-solver small{font-size:11px}.solver-note{font-size:10px}.result-shortcuts{gap:13px}.result-shortcuts .text-button{font-size:11px}.trail-stamps{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.trail-stamp{padding:15px 12px}.trail-stamp strong{font-size:19px}.trail-card h3{font-size:29px}.trail-card .card-heading{align-items:flex-start}.trail-card .badge{white-space:nowrap}.tabs{gap:3px;padding:4px}.tabs button{font-size:11px;padding:10px 7px;min-width:0}.depth-story h2{font-size:32px}.destination-breakdown>div{font-size:11px}.tool-result strong{font-size:26px}.path-card{display:flex}.path-card strong{text-align:left}.stress-explanation{font-size:12px}.form-grid .field label{line-height:1.5}.retirement-result .chosen-heading{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.goal-details{border-top:1px solid #dce3d4;margin-top:20px;padding-top:6px}.goal-details>summary{font-size:12px;list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 0;color:#315d40;min-height:44px}.goal-details>summary span{font-size:18px;color:#9a692f}.goal-details[open]>summary span{transform:rotate(45deg)}.goal-details .goal-solver{margin-top:6px}
@media(max-width:700px){.fire-title-banner{min-height:198px}.fire-title-banner .fire-wordmark{height:128px}}
