:root{color-scheme:light;font-family:"Segoe UI","Microsoft YaHei",Arial,sans-serif;color:#172b29;background:#f5f7f5;font-size:16px}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}.shell{width:min(1380px,calc(100% - 64px));margin:auto}
.site-header{background:#153b37;color:#fff}.header-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;font-weight:700;font-size:17px}.brand-mark{width:22px;height:22px;border:4px solid #82c9a6;border-right-color:#f0c674;transform:rotate(-35deg);border-radius:50%}.header-note{color:#b9d5ca;font-size:13px}
.intro{padding:55px 0 43px}.eyebrow,.section-label,.result-kicker{font-size:12px;font-weight:700;color:#43806d;letter-spacing:0}.eyebrow{margin-bottom:12px}.intro h1{font-size:clamp(28px,3.1rem,44px);line-height:1.3;max-width:950px;margin:0 0 14px;font-weight:700}.intro p{font-size:16px;line-height:1.8;color:#526461;max-width:850px;margin:0}.step{display:inline-grid;place-items:center;width:26px;height:26px;margin-right:7px;color:#fff;background:#27765e;border-radius:4px;font-size:11px}
.workspace{display:grid;grid-template-columns:minmax(310px,410px) minmax(0,1fr);gap:34px;align-items:start;padding-bottom:65px}.controls{border:1px solid #d8e2dc;background:#fff;border-radius:7px;padding:25px;box-shadow:0 5px 22px #183b2b0b}.controls .section-label{margin-bottom:27px}.type-field{padding:0;border:0;margin:0 0 27px;min-width:0}.type-field legend,.input-grid label{font-size:13px;font-weight:700;color:#263c38;margin-bottom:10px}.type-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.type-option{min-height:42px;border:1px solid #d5e0da;background:#f9fbf9;color:#35504a;border-radius:5px;padding:6px 8px;font-size:13px}.type-option[aria-pressed=true]{border-color:#26775e;background:#e4f2e9;color:#145c45;font-weight:700}.type-option:hover,.type-option:focus-visible{border-color:#26775e}.input-grid{display:grid;gap:9px}.input-grid label{display:flex;justify-content:space-between;margin:0}.input-grid label span{color:#72827d;font-weight:400}.input-grid input{width:100%;height:47px;padding:0 12px;border:1px solid #c9d6ce;border-radius:5px;background:#fff;color:#17352d;outline:0;margin-bottom:13px}.input-grid input:focus{border-color:#1c8765;box-shadow:0 0 0 3px #a7d7bf77}.input-grid input[aria-invalid=true]{border-color:#bf694e}.field-note{font-size:12px;color:#70817a;line-height:1.6;margin:-4px 0 20px}.result{min-height:170px;border-top:1px solid #e1e9e3;background:#f5faf6;padding:19px;border-radius:0 0 5px 5px}.result-kicker{margin-bottom:10px}.result-empty,.result-message{font-size:14px;line-height:1.7;color:#586d65;margin:6px 0}.result-value{font-size:42px;line-height:1.2;font-weight:700;color:#145e45;margin:2px 0 4px}.result-value span{font-size:21px}.result-context{font-size:13px;color:#4b6258;line-height:1.7;margin:3px 0}.result-badges{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0}.badge{font-size:11px;border:1px solid #c9dbcf;color:#426752;background:#fff;padding:5px 7px;border-radius:3px}.badge.warn{border-color:#e4c6ac;color:#9a552b;background:#fff7ed}.result-detail{margin-top:12px;padding-top:10px;border-top:1px solid #d9e9dc;font-size:12px;line-height:1.7;color:#536961}
.chart-panel{min-width:0;padding:17px 0}.chart-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;min-height:60px}.chart-heading h2{font-size:24px;line-height:1.2;margin:8px 0 0}.chart-meta{font-size:12px;color:#6b7b75;text-align:right;line-height:1.6}.chart-wrap{display:grid;grid-template-columns:23px 45px minmax(0,1fr);grid-template-rows:minmax(0,1fr) 25px 30px;gap:0;margin-top:24px;max-width:670px}.y-title{grid-area:1/1/2/2;writing-mode:vertical-rl;transform:rotate(180deg);text-align:center;font-size:12px;color:#5f716b}.y-ticks{grid-area:1/2/2/3;display:flex;flex-direction:column;justify-content:space-between;align-items:end;padding:0 7px 0 0;font-size:10px;color:#71817a}.chart-wrap canvas{grid-area:1/3/2/4;width:100%;height:auto;aspect-ratio:1/1;display:block;cursor:crosshair;border:1px solid #c8d9cc}.x-ticks{grid-area:2/3/3/4;display:flex;justify-content:space-between;font-size:10px;color:#71817a;padding-top:6px}.x-title{grid-area:3/3/4/4;text-align:center;font-size:12px;color:#5f716b;padding-top:7px}.legend{display:flex;align-items:center;gap:8px;margin:12px 0 0 68px;max-width:520px;font-size:11px;color:#708078}.legend-ramp{height:10px;flex:1;background:linear-gradient(90deg,#f1f7eb,#a9d69e,#51ad71,#13764a,#00452c);border:1px solid #b7cfbd}.legend-empty{display:flex;align-items:center;gap:5px;margin-left:8px;white-space:nowrap}.legend-empty i{width:10px;height:10px;background:#e7eae7;border:1px solid #cbd3ce}.chart-tip{font-size:12px;color:#71817a;margin:12px 0 0 68px;line-height:1.5}
.overview{background:#eaf0eb;border-top:1px solid #dce6de;border-bottom:1px solid #dce6de;padding:51px 0 58px}.overview h2{font-size:26px;margin:15px 0 9px}.overview-lead{max-width:800px;color:#566c62;line-height:1.8;margin:0 0 26px;font-size:14px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.stat{background:#fff;border:1px solid #d4dfd6;border-radius:6px;padding:19px}.stat h3{font-size:15px;margin:0 0 10px}.stat strong{display:block;font-size:29px;color:#1b7255;line-height:1.3}.stat p{font-size:12px;color:#687c70;line-height:1.6;margin:8px 0 0}.site-footer{background:#193a35;color:#b6cdc1;padding:20px 0;font-size:12px}
@media(max-width:1000px){.workspace{grid-template-columns:minmax(290px,360px) minmax(0,1fr);gap:20px}.shell{width:min(100% - 40px,1380px)}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.shell{width:calc(100% - 32px)}.header-inner{min-height:58px}.brand{font-size:15px}.header-note{font-size:11px}.intro{padding:38px 0 28px}.intro h1{font-size:28px}.intro p{font-size:14px}.workspace{grid-template-columns:1fr;gap:25px;padding-bottom:40px}.controls{padding:19px}.chart-panel{padding:0}.chart-heading h2{font-size:20px}.chart-wrap{grid-template-columns:18px 39px minmax(0,1fr);margin-top:16px}.legend,.chart-tip{margin-left:57px}.overview{padding:39px 0}.overview h2{font-size:23px}}
@media(max-width:420px){.header-note{display:none}.stat-grid{grid-template-columns:1fr}.chart-meta{font-size:10px}.y-ticks,.x-ticks{font-size:9px}.legend{gap:4px;font-size:10px}.legend-empty{margin-left:2px}}
.y-title{transform:none}
.brand small{display:block;color:#bed9cd;font-size:11px;font-weight:400;line-height:1.4}.header-note{text-align:right;line-height:1.45}
.brand{min-width:0}.brand-mark{flex:none}
@media(max-width:720px){.header-inner{padding:8px 0}}
.eyebrow span,.section-label>span:not(.step),.type-field legend span{color:#647e70;font-weight:500;margin-left:5px}.intro h1 span{display:block;font-size:22px;color:#426158;line-height:1.4;margin-top:5px}.intro p span,.field-note span,.overview-lead span,.chart-tip span{display:block;margin-top:4px;color:#65766d}.input-grid label>span:first-child{min-width:0}.input-grid label small{display:block;color:#677c70;font-size:11px;font-weight:400;line-height:1.4;margin-top:3px}.type-option{min-height:49px;line-height:1.4}.chart-heading h2{max-width:100%;overflow-wrap:anywhere}.chart-meta{max-width:260px}.overview h2 span{display:block;color:#658075;font-size:.6em;font-weight:500;line-height:1.45}.stat h3{min-height:42px;overflow-wrap:anywhere}.stat p{min-height:50px}.y-title{font-size:10px}.legend-empty{white-space:normal}.chart-tip{max-width:600px}
@media(max-width:720px){.intro h1 span{font-size:17px}.chart-heading{align-items:start;flex-direction:column}.chart-meta{text-align:left;max-width:none}.type-option{font-size:12px}.overview h2 span{font-size:15px}}
@media(max-width:420px){.chart-wrap{grid-template-columns:16px 36px minmax(0,1fr)}.y-title{font-size:8px;overflow-wrap:anywhere}.legend,.chart-tip{margin-left:52px}.legend{flex-wrap:wrap}.legend-ramp{min-width:90px}.chart-meta{font-size:11px}}
.input-grid label>span:first-child{color:#263c38;font-weight:700}
.map-section{padding:42px 0 54px;background:#e9f0ed;border-top:1px solid #d7e4dc;border-bottom:1px solid #d7e4dc}.map-intro{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:15px 0 24px}.map-intro h2,.sources h2{font-size:26px;margin:0 0 8px}.map-intro h2 span,.sources h2 span{display:block;color:#58786a;font-size:16px;font-weight:500;margin-top:4px}.map-intro p{font-size:14px;line-height:1.7;color:#415e50;margin:0}.map-intro p span,.sources p span{display:block;color:#617b6c;margin-top:4px}.map-total{color:#357459;font-size:12px;text-align:right;line-height:1.55;white-space:nowrap}.map-workspace{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.map-view{min-width:0}.map-view #world-map{height:540px;background:#d7e8e8;border:1px solid #c6d8cf;border-radius:5px}.map-legend{display:flex;flex-wrap:wrap;gap:8px 17px;margin:13px 0;font-size:11px;color:#436052}.map-legend span{display:inline-flex;align-items:center;gap:6px}.map-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.map-legend .delta{background:#18775d}.map-legend .estuary{background:#4377af}.map-legend .coast{background:#c26f48}.map-legend .lagoon{background:#a08135}.map-credit{font-size:11px;line-height:1.6;color:#647c6f;margin:0}.map-credit a,.sources a{color:#146e53;text-decoration:underline;text-underline-offset:2px}.map-detail{background:#fff;border:1px solid #d2ded5;border-radius:6px;padding:22px;min-height:330px}.map-placeholder,.map-result p{font-size:13px;line-height:1.7;color:#587264}.map-placeholder span,.map-result p span{display:block}.map-detail h3{font-size:17px;margin:16px 0 12px}.map-detail #unit-details p{font-size:13px;line-height:1.6;color:#405b4d;margin:6px 0}.map-input-label{display:block;font-size:13px;font-weight:700;margin:22px 0 8px;color:#263c38}.map-input-label small{display:block;font-size:11px;font-weight:400;color:#617b6c}.map-input-label span{float:right;margin-top:-23px;font-weight:400;color:#71867a}.map-detail input{width:100%;height:45px;border:1px solid #c5d4ca;border-radius:4px;padding:0 11px;outline:0}.map-detail input:focus{border-color:#1d8767;box-shadow:0 0 0 3px #a7d7bf77}.map-detail input:disabled{background:#f0f3f0}.map-detail input[aria-invalid=true]{border-color:#bf694e}.map-result{border-top:1px solid #dfe8e1;margin-top:18px;padding-top:16px}.map-probability{display:block;font-size:38px;color:#146746;margin-top:8px}.map-range{font-size:11px!important}.map-warning{color:#9a552b!important}.sources{padding:46px 0 58px;border-top:1px solid #dce5df}.sources p{max-width:1080px;font-size:13px;line-height:1.8;color:#455e52;margin:19px 0}.leaflet-container{font-family:inherit}.leaflet-control-attribution{font-size:9px!important;background:#ffffffd9!important;color:#365b4a!important}.leaflet-control-attribution a{color:#146e53!important}
@media(max-width:900px){.map-workspace{grid-template-columns:1fr}.map-view #world-map{height:440px}.map-detail{min-height:0}.map-total{display:none}}
@media(max-width:720px){.map-section{padding:36px 0}.map-intro h2,.sources h2{font-size:23px}.map-view #world-map{height:420px}.map-detail{padding:18px}.map-legend{gap:7px 11px}.sources{padding:39px 0}}
.map-legend i{border-radius:2px}
.about{padding:45px 0 58px;border-top:1px solid #dce5df}
.about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 44px;margin-top:25px}
.about-grid>div{border-top:2px solid #79aa90;padding-top:13px;min-width:0}
.about-grid h2{font-size:15px;margin:0 0 9px}
.about-grid h2 span{display:block;color:#658075;font-size:12px;font-weight:500;line-height:1.45}
.about-grid p{font-size:13px;line-height:1.75;color:#455e52;margin:0}
.about-grid p>span:not(.email-blank){display:block;color:#617b6c;margin-top:3px}
.publisher-logo{display:block;width:min(100%,280px);height:auto;margin:0 0 12px}
.chart-wrap{grid-template-columns:32px 45px minmax(0,1fr)}
.y-title{font-size:10px;line-height:1.25;white-space:nowrap;transform:none;display:flex;align-items:center;justify-content:center;gap:4px}
.y-title span{display:block}
@media(max-width:720px){.chart-wrap{grid-template-columns:30px 39px minmax(0,1fr)}.y-title{font-size:10px}.legend,.chart-tip{margin-left:69px}}
@media(max-width:420px){.chart-wrap{grid-template-columns:28px 36px minmax(0,1fr)}.legend,.chart-tip{margin-left:64px}}
.language-toggle{min-width:48px;height:34px;border:1px solid #89bca4;border-radius:4px;background:transparent;color:#fff;font-size:13px;font-weight:700}
.language-toggle:hover,.language-toggle:focus-visible{background:#286353;outline:2px solid #c7e3d4;outline-offset:2px}
html[lang="en"] [lang="zh-CN"],html[lang="zh-CN"] [lang="en"]{display:none!important}
html[lang="en"] .brand small{font-size:15px;font-weight:700;color:#fff}
html[lang="en"] .intro h1 span{font-size:44px;line-height:1.3;margin:0;color:#172b29;font-weight:700}
html[lang="en"] .map-intro h2 span,html[lang="en"] .overview h2 span{font-size:26px;line-height:1.3;margin:0;color:#172b29;font-weight:700}
html[lang="en"] .about-grid h2 span{font-size:15px;color:#172b29;font-weight:700}
html[lang="en"] .type-field legend span{color:#263c38;font-weight:700}
html[lang="en"] .map-input-label small,html[lang="en"] .input-grid label small{font-size:13px;font-weight:700;color:#263c38}
.map-total [lang]{display:block}
.map-legend b,.legend-empty b{font-weight:400}
.publisher-content{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:104px}
.publisher-content p{flex:1;min-width:0}
.publisher-logo{width:min(34%,135px);max-width:135px;flex:none;height:auto;margin:0}
[hidden]{display:none!important}
.intro p > span{margin-top:0}.intro p a{color:#146e53;text-decoration:underline;text-underline-offset:2px}
.map-input-label{position:relative;padding-right:38px}
.map-input-label span{float:none;position:absolute;right:0;bottom:0;margin:0}
@media(max-width:720px){.publisher-logo{width:min(38%,125px)}}
@media(max-width:720px){html[lang="en"] .intro h1 span{font-size:28px}html[lang="en"] .map-intro h2 span,html[lang="en"] .overview h2 span{font-size:23px}}
.email-blank{display:inline-block;vertical-align:baseline;width:170px;max-width:60%;height:1em;border-bottom:1px solid #9eb6a6}
.site-footer{padding:27px 0 24px}
.site-footer .sources{padding:0;border:0}
.site-footer .sources p{max-width:none;font-size:11px;line-height:1.7;color:#d5e3da;margin:0 0 16px}
.site-footer .sources p span{color:#b6cdc1;margin-top:3px}
.site-footer .sources a{color:#bce6d3}
.chart-wrap{grid-template-rows:minmax(0,1fr) 25px minmax(30px,auto)}
.x-title{line-height:1.5;padding-bottom:4px}
@media(max-width:720px){.about{padding:36px 0 44px}.about-grid{grid-template-columns:1fr;gap:22px}.site-footer .sources p{font-size:11px}}
