/* Ecology field guides are isolated from the retained map controls. */
.eco-title{flex:1;min-width:0;line-height:1.35}.eco-title svg{flex:none}
.eco-info{display:grid;place-items:center;flex:none;width:25px;height:25px;border:1px solid #a9bfb0;border-radius:50%;background:#f6fbf6;color:#27664f;cursor:pointer;font:bold italic 14px Georgia,serif;padding:0}.eco-info:hover{background:#dfece1;border-color:#27664f}
.eg-dialog{--eg-ink:#203d31;--eg-muted:#5c7165;--eg-border:#d7e2d6;--eg-surface:#f4f7ef;box-sizing:border-box;max-width:none;width:min(1060px,calc(100vw - 48px));max-height:none;height:min(900px,calc(100dvh - 48px));padding:0;border:1px solid #c5d5c5;border-radius:22px;color:var(--eg-ink);background:#fbfcf7;box-shadow:0 25px 100px #122f3159;font-family:inherit;overflow:hidden}
.eg-dialog::backdrop{background:#142b2bdd;backdrop-filter:blur(6px)}.eg-dialog *{box-sizing:border-box}.eg-dialog button,.eg-dialog select,.eg-dialog input{font-family:inherit}.eg-shell{display:flex;flex-direction:column;height:100%}
.eg-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 28px 10px;background:#fbfcf7;flex:none}.eg-topbar>span{text-transform:uppercase;font-weight:750;font-size:10px;letter-spacing:.16em;color:#47715b}.eg-close{display:grid;place-items:center;width:32px;height:32px;border:1px solid #cbd9ca;border-radius:50%;background:#fff8;color:#244d36;font-size:22px;cursor:pointer;line-height:1}.eg-close:hover{background:#e2eee2}
.eg-nav{display:flex;gap:5px;padding:0 28px 14px;border-bottom:1px solid var(--eg-border);flex:none}.eg-nav button{padding:8px 15px;border:1px solid transparent;border-radius:8px;background:transparent;color:#557061;font-size:12px;font-weight:600;cursor:pointer}.eg-nav button:hover{background:#edf3e9}.eg-nav button[aria-pressed=true]{color:white;background:#27664f;border-color:#27664f}
.eg-scroll{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;flex:1;min-height:0}.eg-scroll article{padding:32px 48px 0;max-width:1060px;margin:auto}.eg-hero{max-width:780px;margin-bottom:26px}.eg-eyebrow{font-size:10.5px!important;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#578364;margin:0 0 10px!important}.eg-hero h2{font-size:clamp(27px,3.4vw,40px);line-height:1.14;letter-spacing:-.04em;font-weight:730;margin:0 0 12px;text-wrap:balance;outline:none}.eg-hero>p:last-child{font-size:14px;line-height:1.6;color:var(--eg-muted);margin:0}
.eg-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--eg-border);background:var(--eg-surface);border-radius:14px;padding:18px 0;margin:0 0 32px}.eg-stats>div{display:flex;flex-direction:column-reverse;gap:6px;padding:0 22px;border-right:1px solid var(--eg-border)}.eg-stats>div:last-child{border:0}.eg-stats dt{font-size:10px;color:var(--eg-muted)}.eg-stats dd{font-size:23px;font-weight:730;margin:0;letter-spacing:-.025em}
.eg-section{padding:28px 0;border-top:1px solid var(--eg-border)}.eg-section-title{display:flex;align-items:baseline;gap:12px;margin-bottom:15px}.eg-section-title>span{font-size:10px;color:#638f6d;font-variant-numeric:tabular-nums;font-weight:700}.eg-section h3{font-size:19px;line-height:1.3;font-weight:700;letter-spacing:-.025em;margin:0;text-wrap:balance}.eg-section h4{font-size:13px;line-height:1.5;margin:0 0 7px;font-weight:680}.eg-section p,.eg-sources p{font-size:12.5px;line-height:1.75;margin:10px 0;color:var(--eg-muted)}.eg-section-title+p{margin-top:0}.eg-caption{font-size:10.5px!important;color:#64756a!important;line-height:1.6!important;margin:10px 0 0!important}
.eg-equation{display:grid;grid-template-columns:1fr 15px 1fr 15px 1fr 15px 1fr;gap:12px;align-items:center;margin:22px 0 12px}.eg-equation>div{border:1px solid var(--eg-border);border-radius:12px;background:#f2f6ed;min-height:100px;padding:18px 10px;text-align:center;display:flex;flex-direction:column;justify-content:center;gap:7px}.eg-equation strong{font-size:33px;font-weight:720;line-height:1}.eg-equation span{font-size:10.5px;color:var(--eg-muted)}.eg-equation>b{color:#87a08b;font-size:22px;font-weight:400;text-align:center}.eg-equation .eg-equation-result{background:#e1eddd;border-color:#b6cfb3}.eg-equation-tail{text-align:center;background:#f4f6ee;border-radius:9px;padding:13px;font-size:12px;color:#527057}.eg-equation-tail>span{font-weight:650}.eg-equation-tail strong{color:#254c34;display:inline-block;margin-left:4px}
.eg-code-example{display:flex;align-items:center;gap:17px;border:1px solid var(--eg-border);border-radius:12px;padding:20px;margin-top:20px}.eg-code-stamp{background:var(--class-color);color:white;border-radius:8px;padding:12px;font-size:19px;font-weight:720;white-space:nowrap}.eg-code-example>div:not(:first-child){display:flex;flex-direction:column;gap:6px;flex:1}.eg-code-example strong{font-size:12px}.eg-code-example span{font-size:10px;color:var(--eg-muted)}.eg-code-example>b{color:#9aaa95;font-weight:400}
.eg-explorer-head{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--eg-border);border-bottom:0;background:#eef3e9;padding:15px 18px;border-radius:12px 12px 0 0}.eg-explorer-head label{font-size:11px;font-weight:650}.eg-explorer-head select{max-width:60%;min-width:200px;width:330px;font-size:12px;color:#284d36;background:#fff;border:1px solid #b9cdb8;border-radius:7px;padding:8px}
.eg-aez-matrix{border:1px solid var(--eg-border);border-radius:0 0 12px 12px;overflow:hidden}.eg-aez-matrix>div{display:grid;grid-template-columns:1fr 1.5fr 1.5fr;border-top:1px solid var(--eg-border)}.eg-aez-matrix>div:first-child{border-top:0}.eg-matrix-head{background:#f8faf4;font-size:10px;color:var(--eg-muted)}.eg-matrix-head>span{padding:12px 18px}.eg-aez-matrix [role=rowheader]{padding:20px 18px;font-size:12px;font-weight:650;text-transform:capitalize;align-self:center}.eg-aez-matrix [role=cell]{position:relative;padding:17px 18px 17px 27px;border-left:1px solid var(--eg-border);display:flex;flex-direction:column;gap:5px;background:#fff9}.eg-aez-matrix [role=cell] i{position:absolute;left:12px;top:20px;width:7px;height:24px;border-radius:3px;background:var(--class-color)}.eg-aez-matrix [role=cell] strong{font-size:13px}.eg-aez-matrix [role=cell] span{font-size:10px;color:var(--eg-muted)}.eg-special-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px;border:1px solid var(--eg-border);border-radius:0 0 12px 12px}.eg-special{display:grid;grid-template-columns:8px 1fr;gap:5px 9px;align-content:start;padding:12px;background:#f4f7ef;border-radius:8px}.eg-special i{background:var(--class-color);width:8px;height:25px;border-radius:3px;grid-row:span 2}.eg-special strong{font-size:11px}.eg-special span{font-size:10.5px;line-height:1.5}
.eg-note{border:1px solid #cbdcc6;border-left:3px solid #779d69;border-radius:0 10px 10px 0;padding:15px 18px;background:#f1f6eb;margin-top:18px}.eg-note>strong{font-size:12px;font-weight:700}.eg-note>p{font-size:11.5px;margin:5px 0 0}.eg-note.warm{border-color:#e5d7ad;border-left-color:#ac913e;background:#faf6e7}.eg-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:17px}.eg-two-columns p{margin-top:0}.eg-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:0;counter-reset:guide-step;list-style:none;margin:20px 0}.eg-steps li{counter-increment:guide-step}.eg-steps li:before{content:counter(guide-step,decimal-leading-zero);display:block;font-size:11px;color:#6c956d;font-weight:700;margin-bottom:9px}.eg-steps strong{font-size:12px;line-height:1.5;display:block}.eg-steps p{font-size:11.5px;margin:7px 0 0}
.eg-family-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:20px 0}.eg-family-grid>div{display:flex;flex-direction:column;padding:16px 12px;border:1px solid var(--eg-border);border-radius:11px;background:#f7f9f2;gap:7px}.eg-family-grid b{font-size:29px;font-weight:680;width:34px;border-bottom:4px solid var(--class-color);padding-bottom:6px;margin-bottom:3px}.eg-family-grid strong{font-size:11px}.eg-family-grid span{font-size:10px;color:var(--eg-muted);line-height:1.5}
#eg-koppen-decoder{border:1px solid var(--eg-border);border-radius:0 0 12px 12px;background:#fff9;overflow:hidden}.eg-decoder-title{display:flex;align-items:center;gap:10px;padding:18px}.eg-decoder-title i{background:var(--class-color);width:12px;height:22px;border-radius:4px;border:1px solid #0002}.eg-decoder-title strong{font-size:23px}.eg-decoder-title span{font-size:12px;color:var(--eg-muted)}.eg-letter-grid{display:flex;gap:0;border-top:1px solid var(--eg-border)}.eg-letter-grid>div{flex:1;min-width:0;padding:20px;border-right:1px solid var(--eg-border)}.eg-letter-grid>div:last-child{border-right:0}.eg-letter-grid b{font-size:42px;line-height:1.1;display:block;margin-bottom:10px;color:#48755a;font-weight:600}.eg-letter-grid h4{font-size:12px}.eg-letter-grid p{font-size:11px;margin:0}
.eg-detail{border:1px solid var(--eg-border);border-radius:8px;margin-top:16px;padding:12px 16px;background:#f6f8f1}.eg-detail summary{font-size:11.5px;font-weight:650;cursor:pointer}.eg-detail p{font-size:11px}.eg-climate-catalog{columns:2;column-gap:28px}.eg-climate-catalog>div{break-inside:avoid;page-break-inside:avoid;padding:10px 0}.eg-climate-catalog h4{font-size:11px;letter-spacing:.04em;color:#65816b;margin-bottom:7px}.eg-climate-catalog button{display:flex;gap:8px;align-items:center;width:100%;border:0;border-bottom:1px solid #e0e8dc;background:transparent;color:var(--eg-ink);text-align:left;padding:8px 4px;cursor:pointer;line-height:1.4}.eg-climate-catalog button:hover{background:#eaf2e4}.eg-climate-catalog i{background:var(--class-color);width:9px;height:18px;border-radius:3px;flex:none}.eg-climate-catalog strong{font-size:11px;min-width:27px}.eg-climate-catalog span{font-size:11px;color:var(--eg-muted)}
.eg-minimum-flow,.eg-ecology-context{display:grid;grid-template-columns:1fr 20px 1fr 20px 1fr;align-items:center;gap:15px;margin-top:20px}.eg-minimum-flow>div,.eg-ecology-context>div{padding:20px;background:#f1f6ec;border:1px solid var(--eg-border);border-radius:12px;align-self:stretch}.eg-minimum-flow>b,.eg-ecology-context>b{font-size:22px;color:#859b83;font-weight:400;text-align:center}.eg-big-symbol{font-size:35px;line-height:1.2;display:block;color:#638962;font-weight:680;margin-bottom:14px}.eg-minimum-flow h4{font-size:12px}.eg-minimum-flow p{font-size:11px;margin:6px 0 0}.eg-temperature-ladder{display:grid;grid-template-columns:repeat(13,1fr);gap:4px;margin-top:19px}.eg-temperature-ladder button{background:var(--class-color);border:2px solid transparent;color:#071207;border-radius:6px;padding:13px 0;font-size:13px;font-weight:750;cursor:pointer}.eg-temperature-ladder button:nth-child(-n+2),.eg-temperature-ladder button:last-child{color:white}.eg-temperature-ladder button[aria-pressed=true]{border-color:#183c2a;box-shadow:0 0 0 2px #fbfcf7 inset;outline:2px solid #183c2a;outline-offset:2px}.eg-scale-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--eg-muted);margin-top:8px}.eg-range-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:24px}.eg-range-head>label{font-size:11px;font-weight:650}.eg-unit-toggle{display:flex;border:1px solid #b9cdb6;border-radius:8px;padding:3px;gap:2px}.eg-unit-toggle button{border:0;border-radius:5px;background:transparent;padding:5px 9px;color:var(--eg-muted);font-size:11px;cursor:pointer}.eg-unit-toggle [aria-pressed=true]{color:white;background:#27664f}#eg-hardiness-zone{width:100%;margin:14px 0 18px;accent-color:#27664f}.eg-zone-result{border:1px solid var(--eg-border);border-left:7px solid var(--class-color);border-radius:11px;padding:23px 25px;background:#f6f8f0;display:flex;flex-direction:column;gap:8px}.eg-zone-result>span{font-size:10px;color:var(--eg-muted);text-transform:uppercase;letter-spacing:.08em}.eg-zone-result>strong{font-size:34px;font-weight:730;line-height:1.15}.eg-zone-result>b{font-size:18px;font-weight:600}.eg-zone-result p{font-size:11px;margin:0}.eg-outside-bands{display:flex;gap:15px;margin-top:17px}.eg-outside-bands>div{flex:1;border:1px solid var(--eg-border);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:5px}.eg-outside-bands strong{font-size:11px}.eg-outside-bands span{font-size:10px;color:var(--eg-muted)}.eg-provenance-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.eg-provenance-grid>div{border:1px solid #c7d9c4;border-radius:12px;padding:22px;background:#f1f6ea}.eg-provenance-grid .estimated{background:repeating-linear-gradient(135deg,#faf8ed 0 14px,#f2efde 14px 16px);border-color:#ddd0a1}.eg-source-pill{display:inline-block;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.055em;color:#3b673e;margin-bottom:14px;padding:5px 7px;background:#e4efdf;border:1px solid #c4d8bb;border-radius:5px}.estimated .eg-source-pill{color:#7e692c;background:#fff9df;border-color:#d9c991}.eg-provenance-grid h4{font-size:14px}.eg-provenance-grid p{font-size:11.5px}
.eg-context-label{display:block;font-size:9px;color:var(--eg-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}.eg-ecology-context strong{font-size:23px;display:block;font-weight:680}.eg-ecology-context p{font-size:11px;margin-bottom:0}.eg-biome-catalog{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px}.eg-biome-catalog button{position:relative;text-align:left;display:flex;flex-direction:column;align-items:flex-start;min-height:146px;border:1px solid var(--eg-border);border-radius:11px;background:#f5f8ee;padding:13px;color:var(--eg-ink);cursor:pointer}.eg-biome-catalog button:hover{background:#edf4e6}.eg-biome-catalog button[aria-pressed=true]{border-color:#517957;box-shadow:inset 0 0 0 1px #517957;background:#e9f2e3}.eg-landscape{width:90px;height:63px;display:block;flex:none}.eg-biome-number{position:absolute;right:12px;top:15px;font-size:9px;font-weight:700;color:#829179}.eg-biome-catalog strong{font-size:10.5px;line-height:1.45;margin-top:8px;font-weight:650}.eg-biome-detail{display:flex;align-items:center;gap:20px;margin-top:18px;padding:20px;border:1px solid var(--eg-border);border-left:5px solid var(--class-color);border-radius:10px;background:#eff5e9}.eg-biome-detail .eg-landscape{width:115px;height:85px}.eg-biome-detail span{font-size:10px;color:var(--eg-muted)}.eg-biome-detail h4{font-size:16px;margin:7px 0}.eg-biome-detail p{font-size:12px;margin:0}.eg-land-use{display:grid;grid-template-columns:repeat(3,1fr);border:1px dashed #a3ba95;border-radius:13px;background:#f2f7eb;overflow:hidden;margin-top:18px}.eg-land-use-label{grid-column:1/-1;background:#e4eedb;color:#55794a;font-size:10px;font-weight:700;padding:11px 15px}.eg-land-use>div:not(:first-child){padding:20px;display:flex;flex-direction:column;align-items:center;gap:10px}.eg-land-use span{font-size:11px;font-weight:650}.eg-land-use .eg-landscape{width:100px;height:70px}
.eg-sources{padding:23px 0;border-top:1px solid var(--eg-border)}.eg-sources h3{font-size:12px;margin:0 0 12px}.eg-sources>div{display:flex;flex-wrap:wrap;gap:8px 18px}.eg-sources a{font-size:11px;color:#396647;text-underline-offset:3px;line-height:1.6}.eg-sources p{font-size:10px;margin-bottom:0}.eg-reading-footer{padding:16px 0 23px;display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--eg-border)}.eg-reading-footer>span{font-size:10.5px;color:var(--eg-muted)}.eg-reading-footer button{border:1px solid #b6cbb0;border-radius:7px;background:#e6f0df;padding:9px 13px;font-size:11px;cursor:pointer;color:#2d5b36;white-space:nowrap}
@media(max-width:760px){.eg-dialog{width:calc(100vw - 20px);height:calc(100dvh - 20px);border-radius:15px}.eg-topbar{padding:12px 17px 9px}.eg-nav{padding:0 14px 12px;gap:2px;display:grid;grid-template-columns:repeat(4,1fr)}.eg-nav button{padding:8px 3px;font-size:10px;white-space:nowrap}.eg-scroll article{padding:24px 22px 0}.eg-hero h2{font-size:29px}.eg-hero>p:last-child{font-size:12.5px}.eg-stats{padding:15px 0;margin-bottom:24px}.eg-stats>div{padding:0 12px}.eg-stats dd{font-size:18px}.eg-stats dt{font-size:9px}.eg-section{padding:24px 0}.eg-section h3{font-size:18px}.eg-section-title{gap:9px}.eg-section p{font-size:12px}.eg-equation{gap:6px;grid-template-columns:1fr 9px 1fr 9px 1fr 9px 1fr}.eg-equation>div{padding:12px 5px;min-height:97px;border-radius:9px}.eg-equation strong{font-size:27px}.eg-equation span{font-size:9px;line-height:1.4}.eg-equation>b{font-size:18px}.eg-equation-tail{font-size:10.5px}.eg-code-example{flex-wrap:wrap;gap:10px;padding:14px}.eg-code-example>div:first-child{flex-basis:100%;text-align:center}.eg-code-example strong{font-size:10px}.eg-code-example span{font-size:9px;line-height:1.5}.eg-code-example>div:not(:first-child){min-width:0;flex-basis:calc(33% - 20px)}.eg-explorer-head{flex-direction:column;align-items:stretch;padding:13px 14px;gap:9px}.eg-explorer-head select{width:100%;max-width:100%;min-width:0;font-size:11px}.eg-aez-matrix>div{grid-template-columns:1fr 1.2fr 1.2fr}.eg-matrix-head>span{font-size:9px;padding:10px 8px;line-height:1.5}.eg-aez-matrix [role=rowheader]{padding:13px 8px;font-size:10px}.eg-aez-matrix [role=cell]{padding:14px 8px 14px 19px}.eg-aez-matrix [role=cell] i{left:7px;width:5px;top:17px;height:18px}.eg-aez-matrix [role=cell] strong{font-size:11px}.eg-aez-matrix [role=cell] span{font-size:9px;line-height:1.5}.eg-special-grid{grid-template-columns:repeat(2,1fr);padding:10px;gap:8px}.eg-special{padding:10px}.eg-steps{grid-template-columns:1fr;gap:16px}.eg-steps li{display:grid;grid-template-columns:23px 1fr;gap:0 10px}.eg-steps li:before{grid-row:span 2;margin-top:3px}.eg-steps p{grid-column:2;font-size:11.5px}.eg-two-columns{grid-template-columns:1fr;gap:15px}.eg-family-grid{grid-template-columns:repeat(3,1fr);gap:7px}.eg-family-grid>div{padding:13px 10px}.eg-family-grid b{font-size:25px}.eg-family-grid strong{font-size:10px}.eg-family-grid span{font-size:9.5px}.eg-decoder-title{padding:14px;flex-wrap:wrap}.eg-decoder-title strong{font-size:21px}.eg-decoder-title span{font-size:11px}.eg-letter-grid>div{padding:15px 11px}.eg-letter-grid b{font-size:34px}.eg-letter-grid h4{font-size:10px}.eg-letter-grid p{font-size:10px;line-height:1.65}.eg-climate-catalog{columns:1}.eg-minimum-flow,.eg-ecology-context{grid-template-columns:1fr;gap:10px}.eg-minimum-flow>div{display:grid;grid-template-columns:46px 1fr;gap:0 12px;padding:15px}.eg-big-symbol{grid-row:span 2;font-size:28px;margin:0;align-self:center}.eg-minimum-flow p{font-size:11px;margin:0}.eg-minimum-flow h4{font-size:11px;margin-bottom:4px}.eg-minimum-flow>b,.eg-ecology-context>b{transform:rotate(90deg);line-height:1}.eg-temperature-ladder{gap:2px}.eg-temperature-ladder button{padding:10px 0;border-radius:4px;font-size:10px;border-width:1px}.eg-range-head>label{font-size:10px}.eg-zone-result{padding:20px}.eg-zone-result>strong{font-size:31px}.eg-zone-result>b{font-size:16px}.eg-outside-bands{gap:8px}.eg-outside-bands span{font-size:9px;line-height:1.6}.eg-provenance-grid{grid-template-columns:1fr}.eg-provenance-grid>div{padding:19px}.eg-ecology-context>div{padding:15px}.eg-context-label{margin-bottom:7px}.eg-ecology-context strong{font-size:20px}.eg-ecology-context p{margin:4px 0 0}.eg-biome-catalog{grid-template-columns:repeat(2,1fr);gap:8px}.eg-biome-catalog button{min-height:145px;padding:12px}.eg-biome-catalog strong{font-size:10.5px}.eg-biome-detail{align-items:flex-start;gap:10px;padding:16px}.eg-biome-detail .eg-landscape{width:58px;height:50px}.eg-biome-detail h4{font-size:14px}.eg-biome-detail p{font-size:11px}.eg-land-use>div:not(:first-child){padding:15px 8px;gap:5px}.eg-land-use span{font-size:9px}.eg-land-use .eg-landscape{width:70px;height:54px}.eg-reading-footer{align-items:flex-start}.eg-reading-footer>span{font-size:9.5px}.eg-sources>div{flex-direction:column;gap:10px}.eg-close{width:32px;height:32px}}
@media(max-width:360px){.eg-scroll article{padding:20px 16px 0}.eg-nav button{font-size:9px}.eg-stats dd{font-size:16px}.eg-stats>div{padding:0 9px}.eg-hero h2{font-size:26px}.eg-equation{gap:3px}.eg-equation span{font-size:8.5px}.eg-family-grid{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){.eg-scroll{scroll-behavior:auto}}
