:root{--paper:#fff7ea;--ink:#1c1816;--muted:#6d5d52;--line:#d9c5ad;--accent-primary:#168a72;--accent-support:#c9973d;--accent:var(--accent-primary);--mint:#d9eee0;--gold:var(--accent-support);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;height:100%;overflow:hidden}body{min-width:320px;height:100%;margin:0;overflow:hidden}#root{height:100%}a,button{font:inherit}img{max-width:100%;display:block}::selection{color:var(--paper);background:var(--accent)}.page-shell{background:radial-gradient(circle at 50% 0%, #168a721a, transparent 34%), var(--paper);grid-template-rows:42px minmax(0,1fr) 42px;height:100svh;display:grid;overflow:hidden}.app-topbar,.flow-controls{z-index:3;width:min(1040px,100%);margin:0 auto;padding:7px 14px;position:relative}.app-topbar,.flow-controls,.progress-dots{align-items:center;display:flex}.app-topbar{justify-content:space-between;gap:14px}.eyebrow,.step-label{color:var(--accent-primary);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:900}.progress-dots{gap:6px}.progress-dots span{background:#168a7238;border-radius:999px;width:6px;height:6px;transition:width .18s,background .18s}.progress-dots .active{background:var(--accent-primary);width:24px}.step-stage{min-width:100%;transition:transform .32s cubic-bezier(.22,1,.36,1);display:flex}.flow-step{place-items:center;min-width:100%;height:100%;padding:14px;display:grid;overflow-y:auto}.flow-step-dark{color:var(--paper);background:radial-gradient(circle at 85% 12%, #168a7229, transparent 30%), var(--ink)}.step-content,.choose-content{gap:16px;width:min(720px,100%);display:grid}.step-content-wide{width:min(900px,100%)}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--ink);letter-spacing:0}.flow-step-dark h1,.flow-step-dark h2,.flow-step-dark h3{color:var(--paper)}h1{max-width:780px;font-size:clamp(2.5rem,7vw,5rem);line-height:.98}h2{font-size:clamp(2rem,5vw,3.5rem);line-height:1}h3{font-size:1.1rem;line-height:1.15}.intro-copy,.section-copy{max-width:560px;color:var(--muted);font-size:1rem;line-height:1.45}.flow-step-dark p{color:#fffaf0c7;line-height:1.42}.choose-step{background:radial-gradient(circle at 78% 8%, #168a721f, transparent 30%), var(--paper)}.hero-copy{gap:10px;display:grid}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.category-card{min-width:0;min-height:168px;color:var(--ink);text-align:left;cursor:pointer;background:#fffdf8db;border:1px solid #168a723d;border-radius:12px;align-content:space-between;gap:16px;padding:17px;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:grid;box-shadow:inset 0 1px #ffffffb8,0 18px 44px #37221614}.category-card:hover,.category-card:focus-visible{background:#fffdf8;border-color:#168a72ad;outline:none;transform:translateY(-3px);box-shadow:inset 0 1px #fffc,0 22px 50px #3722161f}.category-card[aria-selected=true]{color:var(--paper);background:linear-gradient(150deg, #168a7273, transparent 58%), var(--ink);border-color:#8ed9c79e;box-shadow:inset 0 0 0 2px #168a72c7,0 22px 54px #37221633}.category-card>span:last-child{gap:7px;min-width:0;display:grid}.category-card strong{color:inherit;font-size:clamp(1.45rem,2.4vw,2rem);line-height:1;display:block}.category-card small{color:var(--muted);font-size:.86rem;line-height:1.32}.category-card[aria-selected=true] small{color:#fffaf0b8}.category-icon{width:46px;height:46px;color:var(--accent-primary);background:#168a7214;border:1px solid #168a723d;border-radius:14px;place-items:center;display:inline-grid}.category-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.35px;width:28px;height:28px}.category-icon-large{width:52px;height:52px}.category-card[aria-selected=true] .category-icon{color:#8ed9c7;background:#8ed9c71a;border-color:#8ed9c761}.step-title-row{align-items:center;gap:12px;display:flex}.input-stack{gap:12px;display:grid}.money-input{background:#fffaf4e0;border:1px solid #7e5b3e38;border-radius:12px;gap:12px;padding:15px;display:grid;box-shadow:0 14px 32px #3722160f}.money-input>span:first-child{gap:5px;display:grid}.money-input strong{color:var(--ink);font-size:1rem;line-height:1.2}.money-input small{color:var(--muted);font-size:.84rem;line-height:1.35}.input-wrap{background:#fffdf8;border:1px solid #1c18169e;border-radius:10px;align-items:center;min-height:50px;display:flex}.input-affix{color:var(--muted);white-space:nowrap;flex:none;padding-inline:11px;font-size:.82rem;font-weight:900}.input-wrap input{width:0;min-width:0;color:var(--ink);font:inherit;appearance:textfield;background:0 0;border:0;outline:0;flex:auto;padding:0 6px;font-size:1.22rem;font-weight:900}.input-wrap input::-webkit-outer-spin-button{display:none}.input-wrap input::-webkit-inner-spin-button{display:none}.input-wrap:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 3px #168a722e}.result-step,.reaction-copy span,.long-term-card>span,.save-action-list span,.save-action-list strong{color:#8ed9c7}.result-focus{gap:13px;display:grid}.monthly-result{flex-wrap:wrap;align-items:baseline;gap:7px 13px;display:flex}.monthly-result strong{color:var(--paper);font-variant-numeric:tabular-nums;font-size:clamp(4rem,10vw,7.4rem);line-height:.84}.monthly-result span{color:#fffaf0b8;font-size:1.08rem;font-weight:850}.reaction-copy{border-left:2px solid var(--accent-primary);gap:5px;padding-left:12px;display:grid}.reaction-copy span,.result-split span,.long-term-card span,.long-term-card small{letter-spacing:.05em;text-transform:uppercase;font-size:.68rem;font-weight:900}.result-split,.long-term-grid{gap:10px;display:grid}.result-split{grid-template-columns:repeat(2,minmax(0,1fr))}.result-split div,.long-term-card,.benchmark-panel,.compact-cta{background:#fffaf00d;border:1px solid #fffaf024;border-radius:12px;min-width:0;padding:12px}.result-split b,.long-term-card strong{color:var(--paper);font-variant-numeric:tabular-nums;font-size:clamp(1.35rem,3vw,2.1rem);line-height:1;display:block}.long-term-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.long-term-card{align-content:start;gap:6px;display:grid}.long-term-card small{color:#fffaf085}.benchmark-panel{gap:10px;display:grid}.compare-stack{gap:12px;display:grid}.benchmark-panel-large{background:linear-gradient(145deg,#8ed9c714,#0000 42%),#fffaf00e;gap:18px;padding:clamp(15px,3vw,22px)}.benchmark-heading{justify-content:space-between;gap:12px;display:flex}.benchmark-heading span{color:#fffaf0a8;letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;font-weight:900}.benchmark-heading strong{color:#fffaf0b8;text-align:right;font-size:.78rem;line-height:1.25}.compare-status{gap:6px;display:grid}.compare-status span{color:#8ed9c7;text-transform:uppercase;font-size:clamp(2.3rem,7vw,4.6rem);font-weight:950;line-height:.86}.compare-status strong{color:var(--paper);font-variant-numeric:tabular-nums;font-size:clamp(1.35rem,3.2vw,2.2rem);font-weight:900;line-height:1}.benchmark-chart{background:#fffaf00a;border:1px solid #fffaf01a;border-radius:10px;min-height:54px;display:flex;position:relative;overflow:hidden}.benchmark-band{color:#fffaf0db;letter-spacing:.04em;text-transform:uppercase;justify-content:center;align-items:center;padding:0 4px;font-size:.62rem;font-weight:900;display:flex}.benchmark-band-low{background:#8ed9c721}.benchmark-band-average{background:#8ed9c733}.benchmark-band-high{background:#c9973d33}.benchmark-band-extreme{background:#c9973d57}.benchmark-marker{background:#8ed9c7;width:1px;position:absolute;top:5px;bottom:5px;transform:translate(-.5px);box-shadow:0 0 0 2px #8ed9c71a}.benchmark-marker:before{content:"";background:#8ed9c7;border-radius:50%;width:9px;height:9px;position:absolute;top:-2px;left:50%;transform:translate(-50%);box-shadow:0 0 0 3px #8ed9c724}.benchmark-marker span{color:var(--ink);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#8ed9c7;border:0;border-radius:999px;padding:2px 7px;font-size:.62rem;font-weight:900;position:absolute;top:18px;left:50%;transform:translate(-50%)}.benchmark-result-card{background:#168a721c;border:1px solid #8ed9c73d;border-radius:12px;gap:8px;padding:14px;display:grid}.benchmark-result-card span{color:var(--paper);font-size:1rem;font-weight:900}.benchmark-result-card p{color:#fffaf0c7}.save-subheading{color:#fffaf0b8;max-width:560px}.save-action-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.save-action-list li{background:#fffaf00d;border:1px solid #fffaf024;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 16px;min-width:0;padding:14px;display:grid}.save-action-list .primary-save-action{background:radial-gradient(circle at 88% 18%,#8ed9c72e,#0000 32%),linear-gradient(145deg,#168a723d,#0000 62%),#fffaf012;border-color:#8ed9c76b;padding:clamp(16px,3vw,22px);box-shadow:inset 0 1px #fffaf014,0 18px 46px #0003}.save-action-list span{letter-spacing:.05em;text-transform:uppercase;grid-column:1/-1;font-size:.68rem;font-weight:900}.save-action-list p{color:#fffaf0e0;font-weight:850}.save-action-list small{color:#fffaf094;margin-top:5px;font-size:.84rem;line-height:1.32;display:block}.save-amount{align-self:center;justify-items:end;gap:7px;display:grid}.save-action-list strong{color:#8ed9c7;white-space:nowrap;justify-self:end;font-size:1rem;line-height:1}.save-amount small{color:#fffaf08a;margin-top:0;font-size:.74rem;font-weight:800;line-height:1.15}.primary-save-action p{font-size:clamp(1.2rem,3vw,1.8rem);line-height:1.05}.primary-save-action strong{color:var(--paper);font-size:clamp(1.45rem,4vw,2.35rem);line-height:1.05}.primary-save-action .save-amount{gap:10px}.delivery-note,.compact-cta p{color:#fffaf0c7}.compact-cta{background:#fffaf009;justify-content:space-between;align-items:center;gap:14px;margin-top:4px;padding:13px 14px;display:flex}.primary-link,.flow-controls button{border:1px solid var(--accent-primary);min-height:34px;color:var(--paper);background:var(--accent-primary);font:inherit;cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:0 13px;font-size:.84rem;font-weight:900;text-decoration:none;display:inline-flex}.compact-cta .primary-link{color:#8ed9c7;min-height:36px;box-shadow:none;letter-spacing:0;background:#168a7214;border-color:#8ed9c747;border-radius:999px;padding:0 14px;font-size:.82rem;transition:transform .16s,background .16s,box-shadow .16s}.compact-cta .primary-link:hover,.compact-cta .primary-link:focus-visible{color:var(--ink);box-shadow:none;background:#8ed9c7;outline:none;transform:translateY(-1px)}.flow-controls{grid-template-columns:68px minmax(0,1fr) 68px;align-items:center;gap:8px;display:grid}.flow-controls span{color:var(--muted);letter-spacing:.06em;text-align:center;text-transform:uppercase;font-size:.68rem;font-weight:900}.flow-controls button{min-height:30px;padding-inline:10px;font-size:.78rem}.flow-controls button:disabled{cursor:not-allowed;opacity:.32}.flow-controls button:first-child{color:var(--ink);background:#fffdf8c7;border-color:#7e5b3e3d}@media (width<=760px){.page-shell{grid-template-rows:38px minmax(0,1fr) 38px}.app-topbar,.flow-controls{padding-inline:12px}.flow-step{padding:10px 14px}.choose-content,.step-content{align-self:center;gap:13px}h1{font-size:clamp(2.15rem,11vw,3rem);line-height:1}h2{font-size:clamp(1.65rem,8vw,2.35rem)}.intro-copy,.section-copy{font-size:.95rem}.category-grid,.long-term-grid{grid-template-columns:1fr}.category-card{grid-template-columns:46px minmax(0,1fr);align-content:center;align-items:center;gap:13px;min-height:86px;padding:14px}.category-card strong{font-size:1.34rem}.category-card small{font-size:.8rem}.step-title-row{align-items:flex-start}.money-input{padding:13px}.monthly-result strong{font-size:clamp(3.4rem,18vw,5.5rem)}.result-split,.long-term-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.long-term-card,.save-action-list li,.benchmark-panel,.compact-cta{padding:11px}.save-action-list li{grid-template-columns:1fr}.save-amount,.save-action-list strong{justify-self:start;justify-items:start}.compact-cta{gap:12px;display:grid}.primary-link{white-space:normal;text-align:center;width:100%}.save-step{padding:8px 12px}.save-step .step-content{gap:8px}.save-step h2{font-size:clamp(1.75rem,8vw,2.2rem)}.save-step .save-subheading{font-size:.88rem;line-height:1.25}.save-step .save-action-list{gap:7px}.save-step .save-action-list li{border-radius:10px;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:9px 10px}.save-step .save-action-list span{font-size:.58rem}.save-step .save-action-list p{font-size:.92rem;line-height:1.15}.save-step .save-action-list small{margin-top:2px;font-size:.72rem;line-height:1.18}.save-step .save-amount{justify-self:end;justify-items:end;gap:2px}.save-step .save-action-list strong{justify-self:end;font-size:.84rem}.save-step .save-amount small{font-size:.68rem}.save-step .primary-save-action p{font-size:1.05rem}.save-step .primary-save-action strong{font-size:1.2rem}.save-step .compact-cta{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:9px 10px}.save-step .compact-cta h3{font-size:.95rem}.save-step .compact-cta p{font-size:.8rem;line-height:1.25}.save-step .primary-link{white-space:nowrap;justify-self:end;width:auto;min-height:30px;padding:0 10px;font-size:.76rem}}@media (height<=720px) and (width<=760px){.flow-step{place-items:start center}.choose-content,.step-content{align-self:start}.category-card{min-height:78px}.monthly-result strong{font-size:clamp(3rem,16vw,4.8rem)}.benchmark-chart{min-height:40px}.save-step .step-content{gap:7px}.save-step .save-action-list small,.save-step .compact-cta p{display:none}}
