:root{--bg:#f7faf7;--card:#fff;--ink:#173229;--muted:#5c7169;--line:#dce7e1;--green:#27765b;--green2:#b9e99c;--dark:#193d32;--danger:#a33a3a;--warn:#fff4cf;--shadow:0 12px 35px rgba(18,56,43,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.55}a{color:var(--green)}button,input,select{font:inherit}button{cursor:pointer}.wrap{width:min(1120px,calc(100% - 36px));margin:auto}.header{position:sticky;top:0;z-index:20;background:rgba(247,250,247,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;text-decoration:none}.logo{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--green);color:#fff}.navlinks{display:flex;gap:22px;align-items:center}.navlinks a{text-decoration:none;color:var(--ink);font-size:.9rem}.hero{text-align:center;padding:58px 0 28px}.eyebrow{display:inline-block;padding:6px 12px;border-radius:99px;background:#e4f3ea;color:var(--green);font:700 .75rem ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase}.hero h1{max-width:760px;margin:18px auto 14px;font-size:clamp(2.3rem,6vw,4rem);line-height:1.03;letter-spacing:-.04em}.hero p{max-width:720px;margin:auto;color:var(--muted);font-size:1.15rem}.tool-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:22px;align-items:start}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow)}.results{background:var(--dark);color:#fff;position:sticky;top:82px}.results .muted{color:#c5d9d1}.section-title{margin:0 0 18px;font-size:1rem}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:18px}.field{display:grid;gap:6px}.field label,.small-label{font-size:.78rem;font-weight:700;color:var(--muted)}input,select{width:100%;border:1px solid #cbdad3;border-radius:9px;padding:10px;background:#fff;color:var(--ink)}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid rgba(39,118,91,.25);outline-offset:2px}.debt-head,.debt-row{display:grid;grid-template-columns:minmax(120px,1fr) 110px 82px 110px 34px;gap:8px;align-items:center}.debt-head{padding:0 5px 7px;color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.debt-head span:not(:first-child){text-align:right}.debt-row{margin-bottom:8px}.debt-field{display:block;min-width:0}.mobile-debt-label{display:none}.debt-field:not(.debt-field-name) input{text-align:right;font-family:ui-monospace,monospace}.icon-btn{border:0;background:transparent;color:var(--danger);font-size:1.3rem}.btn{border:0;border-radius:10px;padding:11px 16px;font-weight:750}.btn-primary{background:var(--green);color:#fff}.btn-secondary{background:#e9f1ed;color:var(--ink)}.btn-outline{width:100%;border:1px dashed #a9beb4;background:transparent;color:var(--green);margin-top:4px}.controls{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.strategy{display:grid;grid-template-columns:1fr 1fr;background:#e9f1ed;padding:3px;border-radius:10px}.strategy button{border:0;background:transparent;border-radius:8px;padding:8px}.strategy button strong,.strategy button small{display:block}.strategy button small{margin-top:2px;color:var(--muted);font-size:.65rem;line-height:1.15}.strategy button.active{background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.12)}.hint{font-size:.78rem;color:var(--muted);margin:10px 0 0}.mobile-live-summary{display:none}.notice{display:none;margin:0 0 16px;padding:12px;border-radius:10px;background:var(--warn);color:#654e00;font-size:.86rem}.notice.show{display:block}.result-date{font-size:clamp(2.1rem,5vw,3.15rem);font-weight:850;line-height:1.05;margin:8px 0}.stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.stat{background:rgba(255,255,255,.07);padding:15px;border-radius:12px}.stat-label{font-size:.67rem;text-transform:uppercase;letter-spacing:.05em;color:#c5d9d1}.stat-value{font:750 1.45rem ui-monospace,monospace;margin-top:5px}.order{border-top:1px solid rgba(255,255,255,.15);margin-top:20px;padding-top:18px}.order-row{display:flex;gap:10px;align-items:center;padding:6px 0}.num{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--green2);color:var(--dark);font-size:.75rem;font-weight:800}.order-row span:nth-child(2){flex:1}.privacy-note{text-align:center;color:var(--muted);font-size:.76rem;margin:14px 0}.content{padding:62px 0}.content h1{font-size:clamp(2rem,5vw,3rem);line-height:1.1}.content-card{max-width:780px}.content-card h2{margin-top:30px}.cta{margin:64px 0;background:var(--dark);color:#fff;border-radius:20px;padding:36px}.cta h2{margin-top:0}.coming{display:inline-block;padding:11px 16px;border-radius:10px;background:#d8e5df;color:#425c52;font-weight:750}.grid-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.guide{display:block;padding:22px;background:#fff;border:1px solid var(--line);border-radius:14px;color:var(--ink);text-decoration:none}.guide:hover{border-color:var(--green)}.guide h2{font-size:1.1rem;margin:8px 0}.guide p{color:var(--muted);margin:0}.footer{margin-top:70px;padding:30px 0 50px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:.83rem}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer a{color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:820px){body{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.navlinks a:not(.nav-cta){display:none}.tool-grid{grid-template-columns:1fr}.results{position:static;scroll-margin-top:78px}.debt-head{display:none}.debt-row{grid-template-columns:repeat(3,minmax(0,1fr)) 34px;gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px;align-items:end}.debt-field-name{grid-column:1/4}.debt-row .remove{grid-column:4;grid-row:1;align-self:center}.mobile-debt-label{display:block;margin:0 0 4px 3px;color:var(--muted);font-size:.64rem;font-weight:800;line-height:1.1;text-transform:uppercase}.debt-field input{min-width:0;font-size:16px;padding:9px 8px}.mobile-live-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;position:fixed;z-index:40;left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));bottom:calc(10px + env(safe-area-inset-bottom));margin:0;padding:11px 12px;border:1px solid #9fc3b2;border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 10px 30px rgba(18,56,43,.22);backdrop-filter:blur(12px)}.mobile-summary-copy{min-width:0}.mobile-summary-head{display:flex;gap:8px;align-items:center;color:var(--green);font-size:.68rem;line-height:1}.mobile-summary-head span{padding:2px 6px;border-radius:99px;background:#d8eee1;font-size:.58rem;text-transform:uppercase}.mobile-summary-date{margin-top:4px;color:var(--dark);font-size:1.18rem;font-weight:850;line-height:1.05}.mobile-summary-context{margin-top:3px;color:var(--ink);font-size:.7rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-summary-duration{color:var(--muted);font-size:.66rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-summary-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:8px 10px;border-radius:10px;background:var(--green);color:#fff;text-decoration:none;font-size:.72rem;font-weight:800;white-space:nowrap}.mobile-live-summary.flash{animation:summary-update .45s ease-out}.grid-cards{grid-template-columns:1fr}}
@media(max-width:520px){.wrap{width:min(100% - 20px,1120px)}.hero{padding-top:38px}.card{padding:14px}.toolbar,.controls{grid-template-columns:1fr;display:grid}.debt-row{gap:6px;padding:10px}.debt-field input{padding:9px 6px}.stats{grid-template-columns:1fr}.cta{padding:26px}}
.cta.wrap{margin-left:auto;margin-right:auto}.mortgage-note{margin-top:14px;padding:12px 14px;border-left:3px solid var(--green);background:#f0f6f3;border-radius:7px}.section-link{margin-top:22px;font-weight:700}.source-list{padding-left:20px}.source-list li{margin:8px 0}.content-card article h2{margin-top:34px}
@keyframes summary-update{0%{border-color:var(--green);box-shadow:0 0 0 4px rgba(39,118,91,.18),0 10px 30px rgba(18,56,43,.22)}100%{border-color:#9fc3b2;box-shadow:0 10px 30px rgba(18,56,43,.22)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
