/* Illustrations share the existing warm, green palette. Price color always has a text cue. */
:root{--rate-high:#ac352f;--rate-high-bg:#fff0ed;--rate-high-line:#efc1ba;--rate-low:#216a48;--rate-low-bg:#eaf6ee;--rate-low-line:#b9ddc4;--rate-middle:#8c631c}
.hero-art.neighborhood-art{width:360px;height:auto;display:flex;flex-direction:column;margin:0;gap:0}
.neighborhood-art img{width:100%;height:auto;display:block}
.neighborhood-caption{font-size:11px;letter-spacing:.3px;font-weight:600;color:#5b755b;margin-top:-4px}
.intro{padding-top:23px;padding-bottom:25px}
.intro h1 em{color:#648450}
.upload .upload-icon.illustrated-upload{width:124px;height:93px;border:0;border-radius:0;background:none;margin-bottom:9px;box-shadow:none}
.illustrated-upload img{display:block;width:100%;height:auto;transition:transform .2s ease}
.upload:hover .illustrated-upload img,.upload.dragging .illustrated-upload img{transform:translateY(-4px) rotate(-2deg)}
.upload{background:linear-gradient(145deg,#f9fcf5,#eef5e8);border-color:#b5cba8;padding-top:22px;padding-bottom:24px}
.welcome-sprout{position:absolute;right:0;bottom:4px;width:170px;pointer-events:none}
.welcome-sprout img{display:block;width:100%;height:auto}
.welcome-card h3{max-width:75%}.welcome-card p{width:63%}
.journey>div:nth-child(1) .step-number{background:#e9f1ff;color:#416183;border-color:#cbdcf0}
.journey>div:nth-child(2) .step-number{background:#fff2df;color:#8b6026;border-color:#ecd6ad}
.journey>div:nth-child(3) .step-number{background:#e8f3e5;color:#386e46;border-color:#c4ddbc}
.pathways button:nth-child(1)>svg:first-child{color:#96702c;background:#fff3db}
.pathways button:nth-child(2)>svg:first-child{color:#ae4a3f;background:#fff0ec}
.pathways button:nth-child(3)>svg:first-child{color:#527da1;background:#edf4fb}
.pathways button>svg:first-child{width:40px;height:40px;padding:9px;border-radius:12px}
.rate-inputs{background:transparent;padding:0;gap:13px;align-items:stretch}
.rate-inputs .rate-card{background:#f5f7f2;border:1px solid #dce4d7;border-radius:13px;margin-top:0;padding:15px 13px;color:#52664f;min-width:0}
.rate-card input{background:#fff;color:#415a45!important;border-color:#c9d5c3;font-variant-numeric:tabular-nums;font-size:clamp(19px,2vw,24px);width:100%;min-width:0}
.rate-inputs .rate-card small{font-size:11px;line-height:1.5;margin-top:8px;color:inherit;font-weight:600}
.rate-meter{height:7px;width:100%;border-radius:9px;background:#dce3d7;display:block;margin-top:15px;overflow:hidden}
.rate-meter i{display:block;height:100%;width:0;border-radius:9px;background:#778771;transition:width .25s ease}
.rate-inputs [data-rate-tone=high],.price-stats>[data-rate-tone=high]{background:var(--rate-high-bg);border-color:var(--rate-high-line);color:var(--rate-high)}
.rate-inputs [data-rate-tone=low],.price-stats>[data-rate-tone=low]{background:var(--rate-low-bg);border-color:var(--rate-low-line);color:var(--rate-low)}
.rate-inputs [data-rate-tone=high] input{color:var(--rate-high)!important;border-color:var(--rate-high-line)}
.rate-inputs [data-rate-tone=low] input{color:var(--rate-low)!important;border-color:var(--rate-low-line)}
[data-rate-tone=high] .rate-meter{background:#f2d5d0}[data-rate-tone=high] .rate-meter i{background:var(--rate-high)}
[data-rate-tone=low] .rate-meter{background:#cfe5d4}[data-rate-tone=low] .rate-meter i{background:var(--rate-low)}
.price-stats>[data-rate-tone=high] strong,.price-stats>[data-rate-tone=high] span{color:var(--rate-high)}
.price-stats>[data-rate-tone=low] strong,.price-stats>[data-rate-tone=low] span{color:var(--rate-low)}
.rate-color-key{display:flex;gap:8px 20px;flex-wrap:wrap;font-size:11px!important;margin:13px 0 20px;line-height:1.5}
.rate-color-key>span{display:inline-flex;gap:7px;align-items:center;font-weight:600}
.rate-color-key>span:before{content:'';display:inline-block;width:9px;height:9px;border-radius:3px;background:currentColor}
.key-high{color:var(--rate-high)}.key-low{color:var(--rate-low)}
.rate-color-key small{flex-basis:100%;font-size:11px;color:#61715c}
.shift-story{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 12px;background:#ffffffb5;border:1px solid #dce6d5;border-radius:14px;margin:20px 0}
.shift-story>div{display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;gap:9px;text-align:center}
.shift-story svg{width:42px;height:42px;padding:9px;border-radius:13px;background:#eef2fc;color:#617aa0}
.shift-story>div:nth-of-type(2) svg{background:#fff0ed;color:#ad5346}
.shift-story>div:nth-of-type(3) svg{background:#e9f5e4;color:#4f7944}
.shift-story>div>span{font-size:11px;font-weight:600;color:#506847;line-height:1.4}
.story-arrow{font-size:19px;color:#869a7b;flex-shrink:0}
.footprint-art{float:right;width:125px;height:auto;margin:-8px -8px 8px 15px}
.carbon-card form{clear:both}
.detective-illustration{float:right;width:190px;height:auto;margin:0 0 20px 30px}
.detective-empty:after{content:'';display:block;clear:both}
.detective-overview tr[data-rate-tone=high]>th{color:var(--rate-high);background:var(--rate-high-bg)}
.detective-overview tr[data-rate-tone=low]>th{color:var(--rate-low);background:var(--rate-low-bg)}
.detective-overview tr[data-rate-tone=middle]>th{color:var(--rate-middle);background:#fff6e5}
.detective-overview tr[data-rate-tone=high] .detective-bar{background:var(--rate-high)}
.detective-overview tr[data-rate-tone=low] .detective-bar{background:var(--rate-low)}
.detective-overview tr[data-rate-tone=middle] .detective-bar{background:#b08b37}
.detective-overview tr[data-rate-tone=neutral] .detective-bar{background:#849080}
.rate-rank{font-size:10px;font-weight:500;color:inherit;display:block;margin-top:3px;letter-spacing:0;white-space:nowrap}
label:has(>input:is(#ap,#peaktime,#peakshare)){color:var(--rate-high)}
label:has(>input#ao){color:var(--rate-low)}
input:is(#ap,#peaktime,#peakshare){border-color:var(--rate-high-line);background:var(--rate-high-bg);color:var(--rate-high)}
input#ao{border-color:var(--rate-low-line);background:var(--rate-low-bg);color:var(--rate-low)}
@media(max-width:1200px){.hero-art.neighborhood-art{width:290px}.welcome-sprout{width:145px}.welcome-card p{width:65%}.detective-illustration{width:150px}}
@media(max-width:700px){.intro{flex-wrap:wrap;gap:7px;padding-top:23px}.intro>div:first-child{flex:1 1 200px}.intro p{max-width:330px}.hero-art.neighborhood-art{display:flex;width:150px;flex:0 0 150px;margin-left:auto}.neighborhood-caption{display:none}.intro h1{font-size:38px}.welcome-sprout{width:150px}.rate-inputs .rate-card{padding:13px 10px}.rate-card input{font-size:21px}.detective-illustration{width:110px;margin:0 0 10px 12px}.detective-empty h3{max-width:260px}.footprint-art{width:93px;margin-left:8px}.shift-story{padding:16px 7px;gap:5px}.shift-story>div>span{font-size:10px}}
@media(max-width:440px){.hero-art.neighborhood-art{width:135px;flex-basis:135px;margin-top:-17px;margin-bottom:-12px}.intro>div:first-child{flex-basis:100%}.intro p{max-width:100%}.intro{padding-bottom:17px}.intro h1{margin-bottom:12px}.welcome-card h3{font-size:28px;max-width:70%}.welcome-card p{width:65%}.welcome-sprout{right:-6px;width:133px}.rate-card input{font-size:19px}.price-stats strong{font-size:18px;overflow-wrap:anywhere}.detective-illustration{float:none;display:block;width:135px;margin:0 auto 12px}.detective-empty h3{max-width:none}}
@media(prefers-reduced-motion:reduce){.illustrated-upload img,.rate-meter i{transition:none}.upload:hover .illustrated-upload img,.upload.dragging .illustrated-upload img{transform:none}}
@media print{.neighborhood-art,.welcome-sprout,.illustrated-upload,.detective-illustration,.footprint-art,.shift-story{display:none!important}.rate-rank,.rate-color-key{color:#213e32}.rate-card input{color:#213e32!important}}
