:root{font-family:system-ui,-apple-system,sans-serif;color:#213d47;font-size:14px;color-scheme:light}*{box-sizing:border-box}body{margin:0}html,body,#map{width:100%;height:100%;overflow:hidden}#map{position:fixed;inset:0;background:#e3ecec}#panel{position:fixed;left:16px;top:16px;width:330px;max-height:calc(100dvh - 70px);overflow:auto;z-index:800;background:rgba(255,255,255,.96);border:1px solid #d2ddde;box-shadow:0 4px 25px #24434e26;border-radius:14px;padding:20px}header{position:relative}.eyebrow{font-size:10px;letter-spacing:.11em;color:#59727c;margin-right:85px;line-height:1.7}.badge{display:inline-block;color:#73500f;background:#fff1cf;border-radius:4px;padding:1px 4px;letter-spacing:0}h1{font-size:24px;line-height:1.2;margin:12px 0 8px;font-weight:680}#collapse{position:absolute;right:0;top:0;padding:7px 9px;background:white;color:#31505b;border:1px solid #b5cbd0;border-radius:6px;cursor:pointer}.intro{font-size:12px;line-height:1.5;margin:14px 0;color:#42616a}label{display:block;font-weight:600;margin-top:13px;font-size:12px}select{width:100%;margin-top:5px;padding:8px;border:1px solid #c2d2d4;background:white;color:inherit;border-radius:6px}input[type=range]{width:100%;accent-color:#397e90;margin:10px 0 1px}output{float:right;font-variant-numeric:tabular-nums}.hint{font-size:10.5px;color:#62777d;line-height:1.5;margin:5px 0 14px}.rank-scale-labels{display:flex;justify-content:space-between;font-size:10px;color:#64747a;margin:3px 0 8px}#counts{font-size:11px;color:#57717a;margin:9px 0}details{font-size:12px;line-height:1.55;margin-top:13px}summary{cursor:pointer;font-weight:650}details p{margin:9px 0}#model{font-size:10px;overflow-wrap:anywhere;color:#687c83}#error{color:#9b382b;font-size:12px}#mapNote{position:fixed;bottom:30px;left:16px;z-index:750;background:#ffffffed;border-radius:6px;padding:7px 12px;font-size:11px;max-width:calc(100% - 32px);pointer-events:none}.leaflet-top.leaflet-left{left:auto;right:14px;top:12px}.leaflet-top.leaflet-left .leaflet-control{margin-left:0;margin-right:0}.leaflet-popup-content-wrapper{border-radius:12px}.leaflet-popup-content{margin:19px 22px;line-height:1.5;max-height:70dvh;overflow:auto;max-width:calc(100vw - 85px)}.cell-title{font-size:18px;font-weight:700;margin:0 0 4px}.cell-subtitle{font-size:11px;color:#637981;margin:0 0 11px}.cell-rank{font-size:20px;color:#ad412c;margin:7px 0}.cell-rank small{font-size:11px;color:#61717a}.cell-note{font-size:11px;color:#687a80}.condition-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px 12px;margin:10px 0}.condition-grid div{font-size:11px;background:#f3f7f7;padding:7px;border-radius:4px}.condition-grid strong{font-size:14px;display:block}table{border-collapse:collapse;width:100%;font-size:11px;margin-top:8px}td,th{border-bottom:1px solid #dbe4e5;padding:5px;text-align:left;vertical-align:top}td:last-child{text-align:right;font-variant-numeric:tabular-nums}.up{color:#aa432c}.down{color:#296d96}.contribution-bar{display:inline-block;height:5px;vertical-align:middle;border-radius:2px;margin-left:4px}.worldcover-inset{margin:12px 0;padding:12px;background:#f6f8f6;border:1px solid #d8e1da;border-radius:8px;font-size:11px}.worldcover-inset figcaption{font-weight:600}.worldcover-native-canvas{display:block;width:min(100%,calc(270px * var(--cell-aspect,1)));height:auto;margin:10px auto;image-rendering:pixelated;border:1px solid #708378;touch-action:pan-y pinch-zoom}.worldcover-summary,.worldcover-note{font-size:10px;line-height:1.5}.worldcover-orientation{font-size:10px;text-align:center}.worldcover-key{display:flex;flex-wrap:wrap;gap:10px;font-size:10px}.worldcover-key-item{display:flex;align-items:center;gap:4px}.worldcover-swatch{width:12px;height:12px;background:#d5d0c4;display:inline-block}.worldcover-swatch.natural{background:#31835d}.worldcover-swatch.unknown{background:repeating-linear-gradient(45deg,#eee9ef,#eee9ef 3px,#ad98b0 3px,#ad98b0 4px)}.worldcover-value{min-height:28px;font-size:10px}.cells{pointer-events:none}.stale{color:#a45710;font-weight:600}.loading{color:#6a7c83;font-size:11px}.leaflet-container{font-family:inherit}a{color:#277787}
@media(max-width:600px){#panel{left:8px;top:8px;width:min(290px,calc(100vw - 64px));padding:14px;max-height:65dvh}h1{font-size:20px}.eyebrow{font-size:9px}#collapse{font-size:11px;padding:6px}#mapNote{font-size:10px;left:8px;bottom:27px;max-width:calc(100% - 16px)}.leaflet-popup-content{margin:16px;max-height:62dvh}.cell-title{font-size:16px}.cell-rank{font-size:18px}#panel.collapsed h1{font-size:18px}.condition-grid{gap:4px}}

@media(max-width:600px){body.cell-open #panel{visibility:hidden}.worldcover-native-canvas{width:min(100%,calc(210px * var(--cell-aspect,1)))}}



.leaflet-popup-content p{margin:8px 0}.worldcover-swatch.tree{background:#176847}.worldcover-swatch.shrub{background:#31835d}.worldcover-swatch.grass{background:#75a987}.condition-grid small{display:block;color:#61747a;margin-top:3px}

.leaflet-popup-content section{width:100%;min-width:0}.leaflet-popup-content table{table-layout:fixed}.leaflet-popup-content th,.leaflet-popup-content td,.cell-note{overflow-wrap:anywhere}

/* The title definition is available on hover, keyboard focus, and tap. */
.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.panel-heading .title-help{flex:1;min-width:0}.panel-heading h1{margin:0 0 8px}.panel-heading #collapse{position:static;flex:0 0 auto}
.title-help{position:relative}.title-definition-button{display:block;width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;line-height:inherit;text-align:left;cursor:help}.title-definition-button span{text-decoration:underline dotted #8ba5aa;text-underline-offset:4px;text-decoration-thickness:1px}.title-definition-button:focus-visible{outline:2px solid #397e90;outline-offset:4px;border-radius:3px}.definition-tip{position:absolute;top:100%;left:0;width:100%;z-index:15;margin-top:4px;padding:13px 14px;background:#fff;border:1px solid #a9c3c9;border-radius:9px;box-shadow:0 6px 20px #213d4733;color:#31505b;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.definition-tip strong{font-size:12px}.definition-tip p{margin:7px 0 0}

.definition-tip::before{content:"";position:absolute;top:-5px;left:0;right:0;height:5px}

/* Main-panel explainer and accessible two-choice comparison control. */
.pipeline-card ul{margin:7px 0;padding-left:17px;color:#4d656d;font-size:11px;line-height:1.48}.pipeline-card li+li{margin-top:3px}
.how-link{display:inline-flex;align-items:center;gap:7px;margin-top:8px;padding:0;border:0;background:transparent;color:#276c7c;font:inherit;font-size:12px;font-weight:650;cursor:pointer}.how-link:hover{text-decoration:underline}.info-icon{display:inline-grid;place-items:center;width:17px;height:17px;border:1.5px solid currentColor;border-radius:50%;font-family:serif;font-size:12px;font-weight:700;font-style:normal;line-height:1}
#howDialog{width:min(940px,calc(100vw - 24px));max-width:none;max-height:88dvh;overflow:auto;padding:0;border:1px solid #cbd9da;border-radius:18px;color:#213d47;background:#fbfdfc;box-shadow:0 16px 55px #122c3550}#howDialog::backdrop{background:#152a32a8;backdrop-filter:blur(2px)}.how-head{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 26px 15px;background:#fbfdfcf2;border-bottom:1px solid #dfe8e7;backdrop-filter:blur(8px)}.how-head h2{margin:5px 0;font-size:24px;line-height:1.2}.how-head p{margin:4px 0;color:#526d75;font-size:13px;line-height:1.5}.dialog-close{flex:0 0 auto;width:36px;height:36px;border:1px solid #cbd9da;border-radius:50%;background:white;color:#31505b;font-size:24px;line-height:1;cursor:pointer}.pipeline-map{margin:18px 22px 12px;padding:17px;border:1px solid #dae5e3;border-radius:15px;background:linear-gradient(145deg,#f5f9f7,#f2f6f8)}.assessment-node{display:grid;justify-items:center;text-align:center;margin:0 auto 14px;padding:10px 14px;width:max-content;max-width:100%;border:1px solid #bfd0d2;border-radius:12px;background:#fff;box-shadow:0 2px 8px #31505b0c}.assessment-node span,.step{font-size:9px;letter-spacing:.09em;font-weight:750;color:#55727a}.assessment-node strong{font-size:15px}.assessment-node small{font-size:10px;color:#718187}.branch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pipeline-card,.pipeline-node{min-width:0;padding:13px;border:1px solid #d2dfdf;border-radius:11px;background:#fff;box-shadow:0 2px 9px #31505b0b}.pipeline-card h3,.pipeline-node h3,.automation-grid h3{margin:5px 0;font-size:14px;line-height:1.3}.pipeline-card p,.pipeline-node p,.automation-grid p{margin:5px 0;font-size:11px;line-height:1.48;color:#4d656d}.pipeline-card small{font-size:9px;color:#6b7e83;line-height:1.4}.pipeline-card.landscape{border-top:3px solid #849a7c}.pipeline-card.calendar{border-top:3px solid #8e91b0}.pipeline-card.environment{border-top:3px solid #4b9a9c}.flow-arrow{text-align:center;height:29px;color:#63818a;font-size:23px;line-height:27px}.preparation{max-width:740px;margin:auto;border-color:#b9d0d1;background:#faffff}.preparation h3{font-size:14px}.flow-chain{display:grid;grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr) 26px minmax(0,1fr);align-items:stretch;gap:5px}.chain-arrow{display:grid;place-items:center;color:#66828a;font-size:20px}.model-node{border-top:3px solid #68849c}.rank-node{border-top:3px solid #b88653}.publish-node{border-top:3px solid #54876a}.automation-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 22px}.automation-grid section{padding:12px 14px;border:1px solid #d9e3e2;border-radius:10px;background:#fff}.scope-note{margin:12px 22px 22px;padding:13px 15px;border-left:4px solid #c48b44;border-radius:6px;background:#fff6e8;color:#554a37;font-size:12px;line-height:1.55}.scope-note strong{color:#473b2b}
@media(max-width:650px){#howDialog{width:calc(100vw - 16px);max-height:92dvh;border-radius:14px}.how-head{padding:16px 17px 12px}.how-head h2{font-size:20px}.how-head p{font-size:12px}.pipeline-map{margin:12px 10px 9px;padding:10px}.branch-grid{grid-template-columns:1fr;gap:7px}.pipeline-card,.pipeline-node{padding:10px}.pipeline-card p,.pipeline-node p,.automation-grid p{font-size:10.5px}.flow-arrow{height:22px;line-height:21px;font-size:20px}.flow-chain{grid-template-columns:1fr;gap:4px}.chain-arrow{height:20px;font-size:0}.chain-arrow::before{content:"↓";font-size:19px}.automation-grid{grid-template-columns:1fr;gap:7px;margin:9px 10px}.scope-note{margin:9px 10px 13px;padding:11px;font-size:11px}}

.worldcover-native-canvas:focus-visible{outline:3px solid #236f82;outline-offset:3px}


/* Cell-first panel heading and compact, readable selected-cell details. */
.source-age{margin:6px 0 0;font-size:11px;line-height:1.5;color:#4b636b;overflow-wrap:anywhere}
.source-age.stale{color:#835018}
.panel-heading{display:block}
.panel-heading .title-help{width:100%}
.panel-heading h1{margin:0 0 7px}
/* The top-percent slider includes lower ranks as the handle moves right. */
#top{-webkit-appearance:none;appearance:none;display:block;width:100%;height:12px;margin:14px 0 0;padding:0;border:1px solid #b7c6c9;border-radius:999px;background:linear-gradient(90deg,#d63b2d,#f6a25f,#f3edd8,#81b9cb,#326b9c);cursor:pointer}
#top::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border:2px solid #fff;border-radius:50%;background:#315c6b;box-shadow:0 0 0 1px #315c6b,0 2px 4px #152a324d;cursor:grab}
#top::-moz-range-thumb{width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:#315c6b;box-shadow:0 0 0 1px #315c6b,0 2px 4px #152a324d;cursor:grab}
#top:focus-visible{outline:3px solid #8bc1ca;outline-offset:4px}
.rank-scale-labels span:first-child{color:#526970}
.rank-scale-labels span:last-child{color:#526970}
.leaflet-popup-content{margin:14px 16px;max-height:74dvh;line-height:1.42}
.leaflet-popup-content section{width:100%;min-width:0}
.cell-title{font-size:18px;margin:0 0 5px}
.cell-subtitle{display:flex;flex-wrap:wrap;gap:3px 12px;font-size:11px;color:#526a72;margin:0 0 7px}
.cell-subtitle b{color:#304e58}
.cell-rank{margin:6px 0 1px;color:#ad412c}
.cell-rank strong{font-size:19px}
.cell-rank small{display:block;margin-top:1px;font-size:11px;color:#586e76}
.condition-grid{gap:5px 8px;margin:7px 0 10px}
.condition-group-title{grid-column:1/-1;margin:4px 0 0;padding-top:4px;border-top:1px solid #dbe5e5;font-size:11px;color:#365862}
.condition-group-title:first-child{border-top:0;padding-top:0}
.condition-grid .condition-card{min-width:0;padding:6px}
.condition-card span{display:block;font-size:10px;color:#536970;line-height:1.3;overflow-wrap:anywhere}
.condition-card strong{font-size:13px}
.condition-card small{font-size:9px}
.score-explanation h3{margin:10px 0 2px;font-size:14px}
.score-intro{margin:2px 0 6px!important;font-size:10px;color:#61767c}
.score-directions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.factor-group{min-width:0;padding:7px;background:#f5f8f8;border-radius:5px}
.cell-panel .score-directions>.factor-group:first-child{background:#fff3f0;border:1px solid #f1d6d0}
.cell-panel .score-directions>.factor-group:last-child{background:#f1f6fc;border:1px solid #d7e3ef}
.factor-group h4{margin:0 0 4px;font-size:10px;color:#405b64}
.factor-group ul,.score-input-list{margin:0;padding:0;list-style:none}
.factor-group li{display:flex;justify-content:space-between;align-items:flex-start;gap:5px;padding:3px 0;border-top:1px solid #e1e8e8;font-size:10px;line-height:1.3}
.factor-group li span{min-width:0;overflow-wrap:anywhere}
.factor-group li b{flex:0 0 auto;font-size:9px;white-space:nowrap}
.up{color:#9b4431}.down{color:#2d6c91}.neutral{color:#52676d}
.no-factors{margin:0!important;font-size:10px;color:#718087}
.score-explanation details{margin-top:7px;padding-top:6px;border-top:1px solid #dbe4e5}
.score-explanation details summary{font-size:11px}
.input-help,.score-note{font-size:9px;color:#677980;margin:4px 0!important}
.score-input-list{display:grid;grid-template-columns:1fr 1fr;gap:3px 8px}
.score-input-list li{min-width:0;padding:4px;border-radius:4px;background:#f5f8f8;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 4px}
.input-label{font-size:9px;line-height:1.25;overflow-wrap:anywhere}
.input-effect{font-size:8px;white-space:nowrap}
.input-value{grid-column:1/-1;font-size:8px;color:#526970;line-height:1.2;overflow-wrap:anywhere}
.worldcover-inset{margin:8px 0;padding:9px}
.worldcover-inset figcaption{font-size:11px;line-height:1.35}
.worldcover-summary,.worldcover-size,.worldcover-clip-note,.worldcover-value,.worldcover-note{font-size:9px;line-height:1.35;margin:4px 0}
.worldcover-summary{font-weight:650;color:#35545e}
.worldcover-size{font-variant-numeric:tabular-nums;color:#566c72}
.worldcover-native-canvas{width:min(100%,calc(240px * var(--cell-aspect,1)));margin:5px auto;max-height:260px}
.worldcover-clip-note{text-align:center;color:#52676e}
.worldcover-legend{margin-top:6px;font-size:10px}
.worldcover-key{display:grid;grid-template-columns:1fr;gap:4px;margin-top:5px}
.worldcover-key-item{gap:6px;font-size:9px}
.worldcover-swatch{flex:0 0 13px;width:13px;height:13px;border:1px solid #7d8982}
.worldcover-swatch.tree{background:#14532d}
.worldcover-swatch.shrub{background:#558b2f}
.worldcover-swatch.grass{background:#a3c96b}
.worldcover-swatch.other{background:#c9cbc7}
.worldcover-swatch.unknown{background:repeating-linear-gradient(45deg,#eee9ef,#eee9ef 3px,#ad98b0 3px,#ad98b0 4px)}
.worldcover-summary span{display:block}
@media(max-width:600px){
 .panel-heading h1{font-size:20px}
 .leaflet-popup-content{margin:12px;max-height:68dvh;max-width:calc(100vw - 48px)}
 .cell-rank strong{font-size:17px}
 .score-input-list{grid-template-columns:1fr}
 .worldcover-native-canvas{width:min(100%,calc(210px * var(--cell-aspect,1)));max-height:220px}
}

label[for=top] output,label[for=minveg] output{float:none;margin-left:.22em}

/* Selected-cell drawer leaves the main controls in place on wide screens. */
.cell-panel[hidden],.cell-panel-show[hidden]{display:none!important}
.cell-panel{position:fixed;z-index:900;right:16px;top:16px;bottom:16px;width:min(66vw,calc(100vw - 380px));min-width:0;display:flex;flex-direction:column;background:#fffffffa;border:1px solid #c9d9db;border-radius:14px;box-shadow:0 12px 40px #17343e38;overflow:hidden}
.cell-panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto;padding:12px 17px;border-bottom:1px solid #dce6e6;color:#3d5c65;font-size:12px;font-weight:700;background:#f8fbfa}
.cell-panel-toolbar button,.cell-panel-show{padding:7px 12px;border:1px solid #a8c1c7;border-radius:7px;background:white;color:#245a69;font:inherit;font-size:12px;font-weight:650;cursor:pointer}
.cell-panel-toolbar button:hover,.cell-panel-show:hover{background:#eaf4f5}
.cell-panel-toolbar button:focus-visible,.cell-panel-show:focus-visible{outline:3px solid #88c5d0;outline-offset:2px}
.cell-panel-show{position:fixed;z-index:900;right:16px;top:104px;box-shadow:0 3px 14px #17343e2b}
.cell-panel{container-type:inline-size}
.cell-panel-body{flex:1;min-height:0;overflow:auto;padding:16px;scroll-padding-block:12px}
.cell-panel-body :focus{scroll-margin-block:12px}
.cell-panel-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-areas:"identity analysis" "identity landcover" "inputs inputs";grid-template-rows:auto 1fr auto;gap:8px 16px;align-items:start}
.cell-overview,.cell-analysis{min-width:0}
.cell-overview{grid-area:identity}.cell-analysis{grid-area:analysis}.cell-landcover{grid-area:landcover;min-width:0}
.cell-panel p{margin:6px 0}
.cell-panel .cell-title{font-size:20px}
.cell-panel .cell-rank{margin:11px 0 12px}
.cell-panel .condition-grid{margin:0 0 13px}
.cell-panel .score-explanation h3{margin-top:14px}
.cell-panel .worldcover-native-canvas{width:min(100%,calc(360px * var(--cell-aspect,1)));max-height:360px;margin:0 auto;flex:0 1 auto}
.worldcover-dimensions{display:grid;grid-template-columns:27px minmax(0,1fr);gap:4px 6px;align-items:center;width:max-content;max-width:100%;margin:11px auto 4px}
.worldcover-width{grid-column:2;display:block;text-align:center;color:#48646d;font-size:10px;font-variant-numeric:tabular-nums;border-bottom:1px solid #92a8aa;padding:0 0 4px}
.worldcover-canvas-row{grid-column:1/-1;display:grid;grid-template-columns:27px minmax(0,1fr);gap:6px;align-items:center;min-width:0}
.worldcover-height{display:block;writing-mode:vertical-rl;transform:rotate(180deg);text-align:center;color:#48646d;font-size:10px;font-variant-numeric:tabular-nums;border-left:1px solid #92a8aa;padding-left:4px;justify-self:center}
.worldcover-canvas-row .worldcover-native-canvas{min-width:0}
@media(min-width:701px) and (max-width:1100px){.cell-panel{width:clamp(310px,52vw,calc(100vw - 380px))}}
@media(max-width:700px){.cell-panel{inset:auto 8px 8px;height:68dvh;width:auto;border-radius:11px}.cell-panel-body{padding:13px}.cell-panel-show{top:auto;bottom:85px;right:8px}}

/* Let the native-pixel image fill the available detail column. */
.cell-panel .worldcover-dimensions{width:min(100%,320px)}
.cell-panel .worldcover-canvas-row .worldcover-native-canvas{width:100%;max-height:none}
.cell-panel .worldcover-inset figcaption{font-size:12px}
.cell-panel .worldcover-summary{font-size:10.5px}
.cell-panel .worldcover-note,.cell-panel .worldcover-value{font-size:10px}
.cell-panel .cell-subtitle{font-size:12px}
.cell-panel .condition-card span{font-size:11px}
.cell-panel .condition-card strong{font-size:15px}
.cell-panel .factor-group li{font-size:11px}

/* A small source line applies to every card in its weather or vegetation group. */
.condition-grid .condition-source{grid-column:1/-1;margin:0 0 4px;color:#60767c;font-size:10px;line-height:1.35}
.condition-grid .condition-source a{color:#3d7180;text-decoration:underline;text-decoration-color:#a6c7ce;text-underline-offset:2px}
.condition-grid .condition-source a:hover{text-decoration-color:currentColor}

/* Vegetation filter scale: grey at the 10% study floor, green at 100%. */
#minveg{-webkit-appearance:none;appearance:none;display:block;width:100%;height:12px;margin:14px 0 2px;padding:0;border:1px solid #aebbb5;border-radius:999px;background:linear-gradient(90deg,#969e9f 0%,#cbd4cb 22%,#9cbea0 50%,#4c9a69 78%,#176847 100%);cursor:pointer}
#minveg::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border:2px solid #fff;border-radius:50%;background:#326f52;box-shadow:0 0 0 1px #326f52,0 2px 4px #152a324d;cursor:grab}
#minveg::-moz-range-thumb{width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:#326f52;box-shadow:0 0 0 1px #326f52,0 2px 4px #152a324d;cursor:grab}
#minveg:focus-visible{outline:3px solid #8fc6a5;outline-offset:4px}

.veg-scale-labels{display:flex;justify-content:space-between;margin:3px 0 8px;font-size:10px}
.veg-scale-labels span:first-child{color:#737d7f}
.veg-scale-labels span:last-child{color:#176847}

.condition-grid .condition-missing-note{grid-column:1/-1;margin:2px 0 7px;color:#526a72;font-size:10px;line-height:1.45}

/* Gaps retain their exact corrected-grid disposition without implying a score. */
.coverage-toggle{display:flex;align-items:center;gap:8px;margin-top:12px;cursor:pointer}
.coverage-toggle input{width:16px;height:16px;margin:0;accent-color:#426f79}
.coverage-legend{display:grid;grid-template-columns:1fr;gap:4px;margin-top:7px;color:#60747a;font-size:10px;line-height:1.25}
.coverage-legend span{display:flex;align-items:center;gap:6px}
.coverage-legend [hidden]{display:none!important}
.coverage-legend small{font-size:9px;color:#708087}
.coverage-swatch{flex:0 0 14px;width:14px;height:14px;background:#e7eceb;border:1px solid #000}
.coverage-swatch.below-floor{background:#f0f1ee;border:1px dashed #727772}
.coverage-swatch.unresolved{background:#eee7ee;border:1px dashed #805685}
.cell-panel.status-open{width:min(430px,calc(100vw - 380px));min-width:300px}
.cell-status{max-width:55ch;font-size:13px;line-height:1.5}
.cell-status .cell-title{font-size:21px;margin:0 0 9px}
.cell-status .cell-subtitle{margin-bottom:16px}
.cell-status-note{margin-top:20px!important;padding:10px;background:#f0f4f4;border-radius:6px;color:#435f68}
.gap-inputs{margin:14px 0;padding:10px 12px;background:#f3f7f7;border-radius:7px}
.gap-inputs h3{font-size:13px;margin:0 0 6px}
.gap-inputs ul{margin:0 0 8px;padding-left:18px}
.gap-inputs li{margin:4px 0}
.gap-inputs p{font-size:11px;color:#526a72}
.worldcover-retry{margin-left:6px;padding:3px 7px;border:1px solid #a8c1c7;border-radius:5px;background:#fff;color:#245a69;cursor:pointer}
@media(max-width:700px){.cell-panel.status-open{inset:auto 8px 8px;width:auto;min-width:0}}

/* Consistent form typography, contrast and touch targets. */

/* Form controls did not inherit the panel font: the two selects rendered at
   the browser default 13.33px against 12px labels. */
select,button,input{font-family:inherit}
select{font-size:12px}

/* Contrast: all three measured below the 4.5:1 AA floor for normal text. */
.veg-scale-labels span:first-child{color:#5e696b}
.coverage-legend small{color:#59676d}
#model{color:#5b6e75}

/* Interaction feedback. The panel and cell drawer toggle the `hidden`
   attribute, which cannot be transitioned from CSS, so this covers the states
   that can move: hover, focus and selection. */
@media(prefers-reduced-motion:no-preference){
 #collapse,.how-link,.cell-panel-toolbar button,.cell-panel-show,.dialog-close,
 .worldcover-retry,summary,select{transition:background-color .15s ease,border-color .15s ease,color .15s ease}
 #top::-webkit-slider-thumb,#minveg::-webkit-slider-thumb{transition:transform .12s ease,box-shadow .12s ease}
 #top:active::-webkit-slider-thumb,#minveg:active::-webkit-slider-thumb{transform:scale(1.12)}
}

/* Preserve a map corridor beside the drawer; its own width chooses columns. */
@media(min-width:1101px){.cell-panel{width:min(54vw,calc(100vw - 470px))}}

/* The 8-9px tier was tuned for the old narrow Leaflet popup. The drawer is
   several hundred px wide, so the detail text has room to be legible. */
.cell-panel .input-label{font-size:11px;line-height:1.35}
.cell-panel .input-effect{font-size:10px}
.cell-panel .input-value{font-size:10px;line-height:1.35}
.cell-panel .factor-group li b{font-size:10px}
.cell-panel .condition-card small{font-size:10px}
.cell-panel .input-help,.cell-panel .score-note{font-size:10.5px}
.cell-panel .no-factors{font-size:11px}
.cell-panel .score-intro{font-size:11px}
.cell-panel .worldcover-summary,.cell-panel .worldcover-size,
.cell-panel .worldcover-clip-note{font-size:10.5px}

@media(max-width:700px){
 /* Keep controls scrollable while leaving room to explore the map. */
 #panel{max-height:45dvh}
 #panel::after{content:'';display:block;position:sticky;bottom:-14px;height:26px;
  margin:-26px -14px -14px;border-radius:0 0 14px 14px;pointer-events:none;
  background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,.96))}

 /* Touch targets. Every one of these measured under 44px. */
 #collapse{min-height:44px;padding:8px 12px;font-size:12px}
 .how-link{min-height:44px;font-size:13px}
 select{min-height:44px;padding:10px 8px}
 summary{min-height:44px;display:flex;align-items:center}
 .coverage-toggle{min-height:44px}
 .coverage-toggle input{width:24px;height:24px}

 /* Keep the 12px gradient band but give the control a 44px hit area: the
    gradient is painted at its old height and centred, so the track looks the
    same while the draggable region more than triples. */
 #top,#minveg{height:44px;border:0;margin:6px 0 0;
  background-repeat:no-repeat;background-position:center;background-size:100% 12px}

 /* "Raised the score" / "Lowered the score" stayed two-up in a 374px drawer,
    wrapping every label to four lines. Only .score-input-list collapsed. */
 .score-directions{grid-template-columns:1fr;gap:6px}

 /* Smallest remaining panel text. */
 .coverage-legend small{font-size:10px}
}

/* Use the drawer's real width, including split-screen and browser zoom. */
@container (max-width:650px){
 .cell-panel-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"identity" "analysis" "landcover" "inputs";grid-template-rows:none}
 .cell-landcover{border-top:1px solid #dce6e6;padding-top:8px}
 .cell-panel .worldcover-canvas-row .worldcover-native-canvas{width:min(100%,calc(220px * var(--cell-aspect,1)));max-height:220px}
 .cell-panel .worldcover-dimensions{width:max-content;max-width:100%}
}
@container (max-width:430px){
 .score-directions,.score-input-list{grid-template-columns:minmax(0,1fr)}
 .factor-group li{gap:10px}
}
@media(max-width:700px){
 #panel{left:8px;top:8px;width:min(330px,calc(100vw - 64px));max-height:45dvh;padding:14px}
 body.cell-open #panel{visibility:hidden}
 body.cell-open #mapNote{display:none}
 body.cell-open .leaflet-bottom{bottom:calc(68dvh + 16px)}
 .cell-panel-toolbar{padding:7px 13px}
 .cell-panel-toolbar button,.cell-panel-show,.worldcover-retry{min-height:44px}
 .dialog-close{width:44px;height:44px}
}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
/* A loading indicator, independent of map focus or selection. */
#mapCursor{display:none;position:fixed;width:40px;height:40px;transform:translate(-50%,-50%);pointer-events:none;z-index:700}
#mapCursor.is-loading{display:block}
#mapCursor::before{content:"";display:block;width:40px;height:40px;border:4px solid #d9e5e7;border-top-color:#397e90;border-radius:50%;background:#ffffffc9;box-shadow:0 0 0 4px #ffffffc9;animation:map-loading-spin .8s linear infinite}
#mapCursor::after{content:"Loading map…";position:absolute;top:50px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#fffffff2;color:#31505b;border-radius:6px;padding:5px 9px;font-size:12px}
@keyframes map-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#mapCursor::before{animation:none}}
.keyboard-hint{display:none}
#map:focus-visible~#mapNote .keyboard-hint{display:inline}
#map:focus-visible{outline:3px solid #236f82;outline-offset:-3px}

.filter-help{position:relative;display:flex;align-items:center;gap:6px;margin-top:13px}.filter-help label{flex:1;min-width:0;margin-top:0}.filter-help-button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:none;color:#276c7c;cursor:help}.filter-help-button:focus-visible{outline:2px solid #397e90;outline-offset:3px;border-radius:50%}
/* The note now carries only the keyboard hint, so it appears with keyboard focus. */
#mapNote{display:none}#map:focus-visible~#mapNote{display:block}

.how-link[hidden]{display:none}

.feature-details{margin-top:10px}.feature-details summary{font-weight:600;font-size:11px}.feature-group{margin:10px 0 4px;font-weight:650;font-size:11px;color:#31505b}.feature-table{font-size:10px;table-layout:fixed;width:100%}.feature-table td{padding:4px 5px;vertical-align:top;word-break:break-word}.feature-table td:first-child{width:46%}.feature-table td:nth-child(2){width:16%;text-align:left}.feature-table td:last-child{width:38%;text-align:left;color:#55707a}.feature-column{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;color:#6b7f87;overflow-wrap:anywhere}.feature-note{font-size:10px;color:#62777d;margin:8px 0 2px}

.feature-source-link{color:#277787;text-decoration:underline;text-underline-offset:2px}.feature-source-link:hover{text-decoration-thickness:2px}

.model-facts{font-size:10.5px;line-height:1.5;color:#4b636b;margin:10px 0 0}

.condition-card.has-value{background:#e9f5ea}.condition-card.missing-value{background:#fbeaea}.delta.up{color:#b23b23;font-weight:600}.delta.down{color:#25639a;font-weight:600}.input-source{grid-column:1/-1;font-size:9px;line-height:1.25;color:#6b7f87;overflow-wrap:anywhere}.input-source a{color:#277787}

.weekly-run{margin:12px 22px 22px;padding:14px 16px;border:1px solid #d9e3e2;border-radius:12px;background:#fff}.weekly-run h3{margin:0 0 10px;font-size:14px;line-height:1.3}.weekly-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;counter-reset:wk}.weekly-steps li{min-width:0;padding:10px;border:1px solid #dbe6e5;border-top:3px solid #4b9a9c;border-radius:9px;background:#f7fbfa;counter-increment:wk}.weekly-steps b{display:block;margin-bottom:4px;font-size:12px;line-height:1.3}.weekly-steps b::before{content:counter(wk) ". ";color:#55727a}.weekly-steps span{display:block;font-size:10.5px;line-height:1.45;color:#4d656d;overflow-wrap:anywhere}
@media(max-width:650px){.weekly-run{margin:9px 10px 13px;padding:11px}.weekly-steps{grid-template-columns:1fr;gap:6px}}
@media(min-width:651px) and (max-width:900px){.weekly-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}

.fire-swatch{display:inline-block;flex:0 0 11px;width:11px;height:11px;margin-right:6px;vertical-align:-1px;background:#000;box-shadow:0 0 0 1px #fff,0 0 0 2px #000}.fire-toggle span{display:inline-flex;align-items:center}.fire-note{margin:2px 0 8px 22px;font-size:10px;color:#5d737a}.fire-line{display:flex;align-items:flex-start;gap:6px;margin:8px 0;font-size:11px;font-weight:600;color:#1b1b1b;line-height:1.4}.fire-line .fire-swatch{margin-top:2px}.fire-cells{pointer-events:none}.cell-overview .score-explanation{margin-top:14px}.cell-overview .score-directions{grid-template-columns:1fr}.factor-rows{margin:0;padding:0;list-style:none}.factor-group .factor-rows li{display:block;padding:5px 0;border-top:1px solid #e1e8e8}.factor-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:10.5px;line-height:1.3}.factor-name{min-width:0;overflow-wrap:anywhere}.factor-value{flex:0 0 auto;color:#526970;white-space:nowrap}.factor-bar{height:5px;margin-top:4px;border-radius:3px;background:#e6eded;overflow:hidden}.factor-bar i{display:block;height:100%;border-radius:3px}.factor-bar.up i{background:#c0432c}.factor-bar.down i{background:#2d6c91}

.cell-inputs{grid-area:inputs;min-width:0;margin:5px 0 0;padding-top:10px;border-top:1px solid #dbe4e5}
.cell-inputs>summary{font-size:12px}
.cell-inputs .score-input-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.cell-inputs .score-input-list>li{padding:9px;gap:4px 8px}
.cell-inputs .input-value,.cell-inputs .input-source{line-height:1.45}
.input-components{grid-column:1/-1;margin:3px 0 0;font-size:10px;color:#526970}
.input-components summary{font-size:10px;font-weight:500}
.input-components small{display:block;margin-top:4px;font-size:10px;overflow-wrap:anywhere}
.cell-history-note{font-size:11px;color:#526970}
.research-method{font-size:10.5px;color:#4b636b}
.research-method code{font-size:9px;overflow-wrap:anywhere}
.research-method ul{padding-left:17px}
.research-table{table-layout:fixed;font-size:9px}
.research-table td,.research-table th{padding:4px 2px;overflow-wrap:anywhere;text-align:left}
.workflow-section{margin:16px 22px;font-size:13px}
.workflow-section>summary{padding:7px 0}
.workflow-section .pipeline-map,.workflow-section .weekly-run{margin:9px 0}
.training-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@container (max-width:650px){.cell-inputs .score-input-list{grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){.workflow-section{margin:10px}.training-grid{grid-template-columns:1fr}}

.pipeline-live{margin:16px 22px;padding:12px 14px;background:#f5f7f5;border:1px solid #d8dfd9;border-radius:8px;font-size:13px}
.pipeline-live-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.pipeline-live h3{margin:0;font-size:15px}.pipeline-live button{font-size:12px;padding:5px 8px}
.pipeline-facts{margin:8px 0}.pipeline-facts>div{display:grid;grid-template-columns:180px 1fr;gap:12px;margin:5px 0}.pipeline-facts dt{font-weight:600}.pipeline-facts dd{margin:0;overflow-wrap:anywhere}
.pipeline-hint{font-size:12px;color:#526357}.advanced-workflow{margin:14px 0}.workflow-prose{padding:0 20px;line-height:1.55}.workflow-prose li{margin:10px 0}.workflow-prose p{margin:12px 0}
@media(max-width:650px){.pipeline-live{margin:10px}.pipeline-facts>div{grid-template-columns:1fr;gap:2px}.pipeline-live-head{align-items:flex-start}}

/* The map keeps its existing layout; the dialog provides two levels of detail. */
.documentation-link{display:block;width:100%;margin:9px 0;padding:4px 0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}
.documentation-link span{color:#5c7b82}
.explanation-links{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center}
.map-retry{margin-top:10px;font-size:12px}.map-retry[hidden]{display:none}
.workflow-caveat{font-size:13px;color:#435f68;line-height:1.55;margin:12px 0 0}
.metric-explanations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}
.metric-explanations>div{padding:12px;border:1px solid #d2dfdf;border-radius:8px;background:#f5f9f8}
.metric-explanations dt{font-weight:650}.metric-explanations strong{display:block;font-size:23px;margin:4px 0;color:#234e5d}
.metric-explanations dd{margin:0;font-size:13px;line-height:1.55}
.research-limit{padding:10px 12px;border-left:3px solid #b88653;background:#fff8ed;border-radius:4px}
.rank-meaning{margin:4px 0 12px;font-size:11px;line-height:1.5;color:#4b636b}
.feature-table th{font-size:10px;padding:4px 5px}
#howDialog{font-size:14px;line-height:1.55;scroll-padding-top:120px}
#howDialog .how-head p{font-size:14px}
.workflow-overview{margin:18px 22px 22px}
.workflow-intro{margin:0 0 13px;color:#435f68}
.workflow-journey{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1.05fr) 20px minmax(0,1fr);gap:5px;align-items:stretch}
.journey-stage,.journey-model{min-width:0;padding:13px;border:1px solid #d2dfdf;border-radius:11px;background:#fff}
.journey-stage{border-top:3px solid #4b9a9c}
.journey-model{border:2px solid #68849c;background:#f3f7fb}
.workflow-journey h3{margin:5px 0 9px;font-size:16px;line-height:1.35}
.workflow-journey p{margin:7px 0;font-size:14px;overflow-wrap:anywhere}
.workflow-journey .step{font-size:11px;letter-spacing:.04em}
.journey-result{color:#47636c}
.journey-arrow{display:grid;place-items:center;font-size:21px;color:#66828a}
#workflowModel{font-size:12px;color:#476078}
.workflow-meaning{margin:14px 0 0;padding:10px 12px;border-left:3px solid #b88653;background:#fff8ed;border-radius:4px;font-size:14px}
#howDialog .workflow-section{font-size:14px;margin-top:12px;margin-bottom:12px}
#howDialog .workflow-section>summary{padding:10px 0;font-size:15px;font-weight:650}
#howDialog summary{cursor:pointer}
#howDialog .step{font-size:11px}
#howDialog .pipeline-card p,#howDialog .pipeline-node p,#howDialog .pipeline-card li,#howDialog .weekly-steps span{font-size:14px;line-height:1.55}
#howDialog .pipeline-card h3,#howDialog .pipeline-node h3{font-size:15px}
#howDialog .pipeline-card small,#howDialog .assessment-node small{font-size:12px;line-height:1.55;display:block}
.workflow-lead{margin:4px 0 13px;color:#435f68}
.workflow-model-results{margin:17px 0;scroll-margin-top:120px}
.workflow-model-results h3,.workflow-reading h3{font-size:16px;margin:10px 0}
#howDialog .model-facts,#howDialog .research-method,#howDialog .research-method p{font-size:14px;line-height:1.6}
#howDialog .research-method{margin:15px 0}
#howDialog .research-method summary{font-size:14px;padding:8px 0}
#howDialog .research-table{width:100%;table-layout:fixed;font-size:13px;border-collapse:collapse;margin:12px 0}
#howDialog .research-table td,#howDialog .research-table th{padding:7px 5px;border-bottom:1px solid #dfe8e7;overflow-wrap:anywhere;vertical-align:top}
#howDialog .research-method code,#howDialog .model-facts code{overflow-wrap:anywhere;font-size:12px}
#howDialog .research-method h4{font-size:14px;margin:20px 0 8px}
.workflow-thresholds,.workflow-source-facts{margin:8px 0}
.workflow-thresholds>div,.workflow-source-facts>div{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr);gap:12px;padding:6px 0}
.workflow-thresholds dt,.workflow-source-facts dt{font-weight:650}
.workflow-thresholds dd,.workflow-source-facts dd{margin:0;overflow-wrap:anywhere}
.workflow-selected-sources{padding:10px 14px;background:#f3f7f6;border:1px solid #d8e3e0;border-radius:9px}
.workflow-selected-sources p{margin:9px 0 3px;font-size:13px;color:#4d656d}
.workflow-reading{margin:16px 0}.workflow-reading ul{padding-left:22px}.workflow-reading li{margin:8px 0}
.workflow-action{padding:9px 12px;border:1px solid #bcd0d0;border-radius:6px;color:#234a56;background:#f5fafa;font:inherit;cursor:pointer}
#pipelineWorkflow .pipeline-live{margin:6px 0}
#howDialog .pipeline-live,#howDialog .pipeline-hint{font-size:14px}
#howDialog .pipeline-live button{font-size:14px;padding:7px 10px}
@media(max-width:650px){
 .metric-explanations{grid-template-columns:1fr;gap:8px}
 .metric-explanations>div{padding:10px 12px}
 .metric-explanations strong{display:inline;font-size:20px;margin-left:8px}
 #howDialog{scroll-padding-top:125px}
 .workflow-overview{margin:12px 14px 18px}
 .workflow-journey{grid-template-columns:1fr;gap:3px}
 .journey-stage,.journey-model{padding:10px 12px}
 .workflow-journey h3{margin:3px 0 5px;font-size:15px}
 .workflow-journey p{margin:4px 0}
 .journey-arrow{height:18px;font-size:0}.journey-arrow::before{content:"↓";font-size:18px;line-height:18px}
 #howDialog .workflow-section{margin-left:14px;margin-right:14px}
 .workflow-thresholds>div,.workflow-source-facts>div{grid-template-columns:1fr;gap:2px}
 .workflow-model-results{scroll-margin-top:125px}
 #howDialog .research-table{font-size:12px}
 #howDialog .research-table td,#howDialog .research-table th{padding:6px 3px}
 #howDialog .pipeline-live-head{flex-wrap:wrap}
 #howDialog .workflow-prose{padding-left:17px;padding-right:0}
}

/* Selected source families stay readable without conflating their dates. */
.source-date-row{display:block;margin:3px 0;overflow-wrap:anywhere}
.selected-source-facts{margin:8px 0;font-size:11px;line-height:1.5}
.selected-source-facts>div{margin:9px 0}
.selected-source-facts dt{font-weight:650}
.selected-source-facts dd{margin:3px 0 0}

/* Rank help belongs to the whole slider, including hover and keyboard focus. */
#howDialog [hidden]{display:none!important}

/* The two short workflows are visible immediately; research detail is optional. */
.workflow-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:16px 0}
.workflow-steps>li{position:relative;padding:14px;border:1px solid #ccdcdf;border-top:3px solid #4b898c;border-radius:8px;background:#f4f9f8;min-width:0}
.workflow-steps>li:nth-child(2){border-top-color:#bba665;background:#faf9f2}
.workflow-steps>li:nth-child(3){border-top-color:#718da8;background:#f3f7fb}
.workflow-steps>li:nth-child(4){border-top-color:#6b9275;background:#f4f8f3}
.workflow-steps h3{font-size:16px;line-height:1.4;margin:7px 0}
.workflow-steps p{font-size:13px;line-height:1.6;margin:0}
.workflow-steps .step{font-size:10px;letter-spacing:.04em;color:#385760}
.workflow-cadence{padding:12px 14px;background:#eff5f6;border-left:3px solid #6b8c96;border-radius:4px;font-size:13px}
.workflow-actions{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;margin-top:14px}
.workflow-overview>.workflow-action{margin-top:14px}
@media(max-width:850px){.workflow-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.workflow-steps{grid-template-columns:1fr;gap:8px}.workflow-steps>li{padding:10px 12px}.workflow-steps h3{margin:3px 0}.workflow-overview{margin:14px}.workflow-cadence{padding:10px 12px}}

/* Readable source details and compact training stages. */
.latest-data{margin:8px 0;font-size:12px;color:#294b58}
.latest-data>summary{font-weight:650;cursor:pointer;padding:5px 0}
.latest-data .source-age{margin:3px 0 8px;padding-left:12px;border-left:2px solid #d6e3e3}
.latest-data .source-date-row+.source-date-row{margin-top:7px}
.source-cards{display:grid;gap:10px;margin:12px 0}
.source-card{padding:12px;border:1px solid #d8e3e3;border-radius:9px;background:#f8fbfa}
#sources h3{font-size:13px;line-height:1.4;margin:0 0 7px;color:#244753}
#sources p{font-size:12px;line-height:1.6;margin:7px 0 0}
#sources .source-note{color:#526970;font-size:11px}
.source-windows{border-collapse:collapse;width:100%;font-size:11px;line-height:1.5;margin-top:9px}
.source-windows caption{text-align:left;font-weight:600;padding-bottom:5px}
.source-windows th,.source-windows td{padding:6px 3px;text-align:left;vertical-align:top;border-bottom:1px solid #dce6e5}
.source-windows th[scope=row]{white-space:nowrap;font-weight:500}
.source-windows thead{color:#536e77}
.data-coverage{margin:15px 0;padding:12px;border:1px solid #d8e3e3;border-radius:9px}
.coverage-stats,.model-sample-stats{margin:0}
.coverage-stats>div,.model-sample-stats>div{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid #e0e8e7}
.coverage-stats dt{font-size:12px;line-height:1.5}.coverage-stats dd{font-size:15px;font-weight:650;margin:0;white-space:nowrap}
.model-sample-stats dt{font-size:13px}.model-sample-stats dd{margin:0;font-weight:650}
.workflow-data-link{margin:14px 0}
#howDialog .training-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#howDialog .training-grid .pipeline-card{padding:13px;border-left:4px solid var(--stage-border);background:var(--stage-bg);box-shadow:none}
.training-grid .pipeline-card:nth-child(1){--stage-border:#88a48c;--stage-bg:#f1f7f1}
.training-grid .pipeline-card:nth-child(2){--stage-border:#91a2bd;--stage-bg:#f1f5fb}
.training-grid .pipeline-card:nth-child(3){--stage-border:#a397b8;--stage-bg:#f6f3fa}
.training-grid .pipeline-card:nth-child(4){--stage-border:#b5a07b;--stage-bg:#faf6ed}
.training-grid .pipeline-card:nth-child(5){--stage-border:#7daba9;--stage-bg:#eef7f6}
.training-grid .pipeline-card:nth-child(6){--stage-border:#ab9490;--stage-bg:#faf3f0}
#howDialog .training-grid .pipeline-card p{font-size:13px;line-height:1.5}
#howDialog .training-grid .pipeline-card small{font-size:11px;line-height:1.5;margin-top:8px}
@media(max-width:650px){#howDialog .training-grid{grid-template-columns:1fr}.model-sample-stats>div{flex-wrap:wrap;gap:3px}.source-card,.data-coverage{padding:10px}}

@media(max-width:700px){summary{display:list-item;list-style-position:inside}}

/* Subtle source-family backgrounds for the complete feature reference. */
.feature-family{margin:12px 0;padding:10px 12px;border:1px solid #dce3e5;border-radius:8px}
.feature-family .feature-group{margin:0 0 6px}
.feature-family .feature-table{background:transparent}
.feature-family-landscape,.coverage-row-landscape{background:#f1f3f4}
.feature-family-calendar{background:#fff8e3}
.feature-family-weather,.coverage-row-weather{background:#edf5fc}
.feature-family-vegetation,.coverage-row-vegetation{background:#edf7ee}

/* Source definitions use the same light family colours as the feature reference. */
.source-card.calendar-data{background:#fff8e3}
.source-card.weather-data{background:#edf5fc}
.source-card.vegetation-data{background:#edf7ee}
.source-card.landscape-data{background:#f1f3f4}
.data-coverage{background:#f7f9fa;margin-top:12px}

.coverage-assessment{color:#526970;font-size:11px!important}
.feature-intervals{margin-top:9px}
.feature-intervals summary{font-size:11px}

/* Compact viewer context, local search and consistent recovery controls. */
input[type=search]{min-width:0;padding:9px;border:1px solid #a9c2c8;border-radius:6px;font:inherit;color:inherit;background:#fff}
.map-legend{margin:9px 0 13px}.map-legend p{font-size:11px;font-weight:600;margin:5px 0}
.legend-gradient{height:8px;border-radius:4px;background:linear-gradient(to right,rgb(50,107,156),rgb(129,185,203),rgb(243,237,216),rgb(246,162,95),rgb(214,59,45))}
.legend-labels{display:flex;justify-content:space-between;font-size:10px;margin-top:3px}
.empty-view{font-size:12px;background:#fff6e8;border:1px solid #e2caa6;border-radius:7px;padding:10px}.empty-view[hidden]{display:none}.empty-view p{margin:0 0 8px}.empty-view button{margin:3px 0;text-align:left;width:100%}
.coverage-scope h4{font-size:12px;margin:10px 0 3px}.coverage-denominator{font-size:11px!important;margin:3px 0!important;color:#526970}.national-coverage summary{font-size:11px}
.cell-context{display:grid;gap:4px;margin:8px 0 11px;font-size:12px;line-height:1.4}
.cell-context>div{display:grid;grid-template-columns:78px minmax(0,1fr);gap:6px}.cell-context dt{font-weight:650;color:#3b5d68}.cell-context dd{margin:0;overflow-wrap:anywhere}.cell-context small{display:block;font-size:11px;color:#526970}
.cell-data-status{margin:8px 0 14px;padding:8px 10px;border:1px solid #d9e4e6;background:#f7faf9;border-radius:7px;font-size:12px}
.cell-data-status>div{display:flex;align-items:center;gap:7px;margin:4px 0}.cell-data-status>div>span:first-child{flex:1}.cell-data-status small{font-size:11px}
.data-status-icon{display:inline-grid;place-items:center;width:21px;height:21px;border-radius:4px;font-size:16px;font-weight:750;border:1px solid currentColor}
.data-status-icon.available{background:#e0f3e4;color:#236b3e}.data-status-icon.missing{background:#fbe7e6;color:#a73531}.data-status-icon.partial{background:#fff3d6;color:#805c0c}.data-status-icon.loading,.data-status-icon.unassessed,.data-status-icon.failed{background:#edf1f2;color:#617078}
.feature-search-label{margin-top:10px}#featureSearch{width:100%;font-size:12px;margin-top:5px}
.feature-family .feature-table{font-size:12px;table-layout:auto}.feature-table td,.feature-table th{overflow-wrap:normal;word-break:normal}.feature-table td:first-child{width:47%}.feature-table td:nth-child(2){width:18%}.feature-table td:last-child{width:35%;text-align:left}
.factor-head,.cell-panel .input-label{font-size:12px}.cell-panel .input-value,.cell-panel .input-source{font-size:11px}.cell-panel .input-help{font-size:12px;line-height:1.55}
.basemap-status{position:fixed;bottom:48px;right:16px;z-index:780;max-width:min(400px,calc(100vw - 32px));background:#fff6e8;border:1px solid #dfc9a5;border-radius:7px;padding:8px 10px;font-size:12px;line-height:1.4}.basemap-status[hidden]{display:none}

@media(max-width:700px){
 .cell-context{font-size:13px}.cell-context>div{grid-template-columns:82px minmax(0,1fr)}.cell-data-status{font-size:13px}
 .basemap-status{right:8px;bottom:42px;font-size:12px}
 body.cell-open .basemap-status{bottom:calc(68dvh + 20px)}
 .leaflet-control-scale{font-size:11px}
}


/* The colour track also shows how far down the ranking the filter includes. */
#top{background-image:linear-gradient(to right,rgb(214,59,45),rgb(246,162,95),rgb(243,237,216),rgb(129,185,203),rgb(50,107,156))}
.rank-scale-labels span:first-child{color:#526970}.rank-scale-labels span:last-child{color:#526970;text-align:right}
.rank-scale-labels small{display:block;font-size:10px;color:#526970;margin-top:2px}

.importance-panel{margin:20px 0;padding:16px;border:1px solid #d5e2e4;border-radius:12px;background:#fff}
.importance-panel h4{font-size:17px;margin:0 0 8px}.importance-panel>p{font-size:13px;line-height:1.55;color:#526a72}
.importance-intro{font-size:14px;line-height:1.5;margin:0 0 6px}.importance-scope{font-size:12px;color:#59727c;margin-top:0}
.importance-ranking{max-height:440px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:0 9px 0 0;margin:14px 0 0;list-style:none;border-top:1px solid #e1eaec}
.importance-ranking:focus-visible{outline:3px solid #88c5d0;outline-offset:3px}
.importance-row{padding:9px 0;border-bottom:1px solid #e1eaec;break-inside:avoid}
.importance-heading{display:grid;grid-template-columns:26px minmax(0,1fr) 60px;gap:8px;align-items:baseline;font-size:13px}
.importance-position{color:#6b7d83;font-variant-numeric:tabular-nums}.importance-name{font-weight:600;overflow-wrap:anywhere}.importance-share{text-align:right;font-variant-numeric:tabular-nums}
.importance-track{height:7px;margin:7px 0 0 34px;background:#edf2f3;border-radius:5px;overflow:hidden}
.importance-fill{display:block;height:100%;background:#397e90;border-radius:5px}
.importance-panel .importance-reading{font-size:12px;margin-top:10px}.importance-panel .importance-reading p{font-size:12px;color:#526a72}
@media(max-width:650px){.importance-panel{padding:12px}.importance-ranking{max-height:380px}.importance-heading{grid-template-columns:22px minmax(0,1fr) 53px;gap:5px;font-size:12px}.importance-track,}

.coverage-stats>.coverage-row{margin:5px 0;padding:8px;border:0;border-radius:5px}.coverage-row-scored{background:#e9f5ea}.coverage-row-unscored{background:#fbeaea}

.empty-view button,.cell-retry,.basemap-status button{border:1px solid #aac4c9;border-radius:6px;background:#fff;color:#245a69;font:inherit;font-size:12px;padding:7px;cursor:pointer}.cell-retry:focus-visible{outline:3px solid #88c5d0;outline-offset:2px}
@media(max-width:700px){.cell-retry,.empty-view button{min-height:44px}}


/* Buffer definitions are available on hover, keyboard focus and tap. */
.feature-label-help{display:inline;padding:0;border:0;border-radius:0;background:none;color:inherit;font:inherit;line-height:inherit;text-align:left;cursor:help;text-decoration:underline dotted;text-underline-offset:3px}
.feature-label-help:focus-visible{outline:2px solid #327488;outline-offset:3px;border-radius:2px}
.feature-meaning-tip{position:fixed;z-index:2500;width:min(280px,calc(100vw - 24px));box-sizing:border-box;padding:10px 12px;border:1px solid #b8cccf;border-radius:7px;background:#fff;color:#213d47;font-size:12px;line-height:1.5;box-shadow:0 4px 18px #163d4930;overflow-wrap:normal}
.feature-meaning-tip[hidden]{display:none}.condition-help-source{margin-top:6px}.condition-help-source a{color:#276c7c;text-decoration:underline}

.cell-panel .feature-label-help{display:inline;padding:0;border:0;border-radius:0;background:none;color:inherit;font:inherit;line-height:inherit;min-height:0;text-align:left;cursor:help;text-decoration:underline dotted;text-underline-offset:3px}

.screening-sources{max-height:240px;overflow-y:auto;overscroll-behavior:contain;padding-right:8px}

.fire-line small{display:block;font-weight:normal;margin-top:5px;line-height:1.4}

.feature-family-biomass,.coverage-row-biomass,.pipeline-card.biomass{background:#f2e8d9}
.pipeline-card.biomass[hidden]{display:none}

.biomass-comparison-scroll{max-width:100%;overflow-x:auto}
.private-review-banner{position:fixed;z-index:2000;bottom:8px;right:8px;max-width:280px;padding:8px;background:#fff2c8;border:1px solid #8a6d28;border-radius:6px;font:13px system-ui}
.biomass-comparison-scroll .research-table{min-width:660px;table-layout:auto}
.biomass-comparison-scroll .research-table th,.biomass-comparison-scroll .research-table td{word-break:normal;overflow-wrap:normal}

.cell-source-conditions{min-width:0;margin:12px 0}.condition-period,.condition-use{display:block;line-height:1.35}.condition-use{font-weight:600}

.feature-rationale-list>div{padding:0.5rem 0;border-bottom:1px solid #dce2e8}.feature-rationale-list dt{font-weight:600}.feature-rationale-list dd{margin:0.25rem 0 0;line-height:1.5}.biomass-comparison-scroll:focus-visible{outline:2px solid #265d88;outline-offset:3px}

/* Candidate decision evidence */
.candidate-table small{display:block;margin-top:.3rem;font-weight:normal;white-space:normal}
.candidate-table th[scope="row"]{text-align:left;min-width:10rem}
.candidate-decision{min-width:12rem;max-width:32rem}
.candidate-decision>summary{cursor:pointer;color:#24565e;font-weight:650;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:.2em}
.candidate-decision>summary:hover,.candidate-decision>summary:focus-visible{color:#14363c;background:#edf5f5;outline-offset:3px}
.candidate-decision p,.candidate-decision ul{font-size:.94em;line-height:1.5;white-space:normal}
.candidate-history dt{font-weight:650;margin-top:1rem}
.candidate-history dd{margin:.35rem 0 1rem}
#cellVegetationCandidate{margin-top:1.4rem;padding-top:.3rem;border-top:1px solid #d7e3e5}

/* Direct access from the compact feature reference to the existing dialog. */
.feature-importance-open{display:block;width:100%;margin:10px 0;text-align:left;white-space:normal}
#howDialog[data-view="importance"] #trainingWorkflow> :not(#modelResults),
#howDialog[data-view="importance"] #modelResultsTitle,
#howDialog[data-view="importance"] #modelFacts:has(#featureImportanceSection)> :not(#featureImportanceSection),
#howDialog[data-view="importance"] #importanceTitle{display:none}
#howDialog[data-view="importance"] #trainingWorkflow,
#howDialog[data-view="importance"] #modelResults,
#howDialog[data-view="importance"] .importance-panel{margin-top:0}

/* Cell overview: readable completeness, model inputs first and optional history. */
.cell-data-status>div{align-items:flex-start;flex-wrap:wrap;gap:4px 10px}
.cell-data-status .data-status-label{flex:0 1 auto;font-weight:600}
.data-status-value{display:inline-flex;align-items:center;gap:6px;margin-left:auto;min-width:0}
.data-status-value .data-status-icon{flex:0 0 17px;width:17px;height:17px;font-size:12px}
.factor-help{font-size:12px;line-height:1.45;color:#526970;margin:5px 0 9px}
.condition-source{font-size:12px;line-height:1.5;color:#526970}
.condition-group-heading{font-size:13px;margin:12px 0 7px}
.condition-context{border-top:1px solid #d9e4e6;padding-top:10px;margin:8px 0 14px}
.condition-context>p{font-size:12px;color:#526970}
.condition-context .condition-grid{margin-bottom:0}
.cell-fire-history{font-size:12px;border-top:1px solid #d9e4e6;padding-top:9px;margin:12px 0}
.cell-fire-history p{font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.fire-history-period,.fire-history-help{color:#526970}
.fire-history-result{font-weight:600}
@media(max-width:700px){.factor-help,.cell-fire-history,.cell-fire-history p,.condition-source{font-size:13px}.data-status-value{max-width:100%}}

.roc-figure{max-width:600px;margin:14px auto}.roc-figure img{display:block;width:100%;height:auto;background:#fff;border-radius:5px}.roc-figure figcaption{font-size:12px;line-height:1.45;color:#526970;margin-top:7px}.roc-axes{display:grid;gap:7px;margin:12px 0}.roc-axes>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px}.roc-axes dt{font-weight:650}.roc-axes dd{margin:0}.roc-download{display:inline-block;padding:5px 0}@media(max-width:650px){.roc-axes>div{grid-template-columns:1fr;gap:2px}.roc-figure{margin:10px 0}.roc-figure figcaption{font-size:12px}}

.rank-filter-value{display:block;float:none;margin:4px 0 0;font-size:13px;font-weight:600;color:#315c6b}
.rank-filter-summary{font-size:12px;line-height:1.45;margin:7px 0 14px;color:#526970}
#comparisonContext{font-size:11px;font-weight:400;color:#526970;margin-top:6px}
#mapLegend{padding-top:10px;border-top:1px solid #dbe4e5}

/* Results lead, with detailed evidence available below. */
.results-findings{background:#eef5f2;border-left:4px solid #407968;padding:8px 18px;margin:16px 0 24px;border-radius:6px}
.results-findings p{margin:12px 0}.year-results{margin:26px 0}.year-results tbody tr:nth-last-child(-n+2){background:#eef4f5;font-weight:650}
.year-results .research-table{min-width:620px}.research-table td{font-variant-numeric:tabular-nums}
#environmentalFinding{margin:30px 0;padding-top:12px;border-top:1px solid #ccdce0}
#annualCandidates .research-table{min-width:680px}#modelUncertainty .research-table{min-width:450px}
.importance-scope{color:#315d66}#howDialog[data-view="model"] #trainingWorkflow>summary{font-size:1rem}

/* Model results start as a compact list of closed topics. */
#howDialog[data-view="model"] #trainingWorkflow>summary{display:none}
#howDialog[data-view="model"] #trainingWorkflow{margin-top:0}
.results-intro{font-size:14px;line-height:1.5;margin:4px 0 18px!important}
#modelFacts>details,#modelTrainingSteps,#maintenanceWorkflow{border:1px solid #cfdddf;border-radius:8px;margin:9px 0;background:#fff}
#modelFacts>details>summary,#modelTrainingSteps>summary,#maintenanceWorkflow>summary{padding:12px 14px;min-height:44px;font-size:14px;line-height:1.45}
#modelFacts>details[open],#modelTrainingSteps[open],#maintenanceWorkflow[open]{padding:0 14px 14px}
#modelFacts>details[open]>summary,#modelTrainingSteps[open]>summary,#maintenanceWorkflow[open]>summary{margin:0 -14px 10px;border-bottom:1px solid #e0e8e9}
.training-sequence{counter-reset:training-step;list-style:none;margin:4px 0 10px;padding:0}.training-sequence li{counter-increment:training-step;position:relative;padding:10px 0 10px 38px;line-height:1.55;border-bottom:1px solid #e3ebeb}.training-sequence li:last-child{border-bottom:0}.training-sequence li::before{content:counter(training-step);position:absolute;left:0;top:11px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e3f0ec;color:#285d52;font-weight:700;font-size:13px}.training-sequence strong{color:#23424c}.training-sequence .workflow-action{display:inline;padding:0 2px}.training-counts{display:block;margin-top:4px;font-size:12px;color:#526970}.training-counts:empty{display:none}.training-links{margin:8px 0 0;font-size:13px}
#environmentalFinding{margin:9px 0;padding-top:0;border-top:1px solid #cfdddf}
#featureImportanceSection .importance-panel{margin:0;padding:0;border:0}
#featureImportanceSection #importanceTitle{display:none}
#howDialog[data-view="importance"] #featureImportanceSection{margin:0;padding:0;border:0}
#howDialog[data-view="importance"] #featureImportanceSection>summary{display:none}

.study-findings-list{padding-left:24px}.study-findings-list li{padding:0 0 12px 4px;line-height:1.55}
#humanContextFinding{margin:20px 0;padding:14px 0;border-top:1px solid #d1dfe2;border-bottom:1px solid #d1dfe2}
#humanContextFinding .research-table{min-width:470px}#humanContextDates .research-table{min-width:760px}
#humanContextFinding h4{margin-top:0}

/* Direct coverage access and a single wide, sortable feature reference. */
.data-navigation{border-top:1px solid #d7e2e4;margin-top:12px;padding-top:4px}
.data-navigation #moreDetails{margin:0}.data-navigation summary{padding:12px 0;font-size:13px}
#featuresOpen{width:100%;text-align:left;margin:6px 0 0}
#howDialog[data-view="features"]{width:min(1480px,calc(100vw - 24px));max-height:94dvh}
.feature-browser{padding:16px 24px 24px}.feature-scope{font-weight:650;font-size:14px;margin:0 0 8px}
.feature-table-intro{font-size:13px;line-height:1.5;max-width:950px}
.feature-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:16px 0 8px}
.feature-toolbar>div:first-child{flex:1;min-width:200px}.feature-toolbar>div:nth-child(2){min-width:170px}
.feature-toolbar label{margin:0 0 5px}.feature-toolbar #featureSearch{width:100%;margin:0;font-size:14px}
.feature-toolbar select{margin:0;font-size:14px}.feature-toolbar button{padding:10px;border:1px solid #b9cdd2;border-radius:6px;background:#fff;color:#315c6b;cursor:pointer;min-height:40px}
#featureExport{padding:10px 0;font-size:13px}.feature-table-guide,#featureSearchStatus,#featureImportanceStatus{font-size:12px;line-height:1.5;margin:6px 0}
#featureImportanceStatus:empty{display:none}
.feature-table-scroll{max-height:58dvh;overflow:auto;border:1px solid #cbdcdf;border-radius:8px;margin-top:12px;overscroll-behavior:contain;scroll-padding-inline-start:305px}
.feature-table-scroll:focus-visible{outline:3px solid #88c5d0;outline-offset:2px}
#allFeaturesTable{border-collapse:separate;border-spacing:0;margin:0;table-layout:fixed;width:1382px;min-width:1382px;font-size:12px;line-height:1.5}
#allFeaturesTable th,#allFeaturesTable td{padding:10px;border-bottom:1px solid #dce6e8;vertical-align:top;text-align:left;overflow-wrap:anywhere;font-weight:400;background:#fff}
#allFeaturesTable tbody tr:nth-child(even)>*{background:#f5f8f9}
#allFeaturesTable thead th{position:sticky;top:0;z-index:3;background:#eaf1f3;border-bottom:2px solid #b3cbd1;font-weight:650}
#allFeaturesTable thead button{display:block;width:100%;padding:0;border:0;background:none;color:inherit;text-align:left;font:inherit;font-weight:650;cursor:pointer;min-height:28px}
#allFeaturesTable thead button:focus-visible{outline:3px solid #80bcc9;outline-offset:3px}
#allFeaturesTable .feature-col-rank{width:60px;position:sticky;left:0;z-index:1}
#allFeaturesTable .feature-col-name{width:235px;position:sticky;left:60px;z-index:1;border-right:1px solid #cbdcdf}
#allFeaturesTable thead .feature-col-rank,#allFeaturesTable thead .feature-col-name{z-index:4}
#allFeaturesTable .feature-col-importance{width:125px}#allFeaturesTable .feature-col-shap{width:145px}
#allFeaturesTable .feature-col-group{width:130px}#allFeaturesTable .feature-col-unit{width:100px}
#allFeaturesTable .feature-col-source{width:220px}
#allFeaturesTable .feature-col-definition{width:330px}#allFeaturesTable .feature-col-rationale{width:330px}#allFeaturesTable .feature-col-median{width:160px}
#allFeaturesTable small{display:block;margin-top:5px;color:#60777e;font-size:10px;font-weight:400}
.table-importance-track{display:block;height:5px;background:#e3ecee;border-radius:4px;margin-top:7px}.table-importance-track>span{display:block;height:100%;background:#397e90;border-radius:4px}
.feature-table-notes{font-size:12px;line-height:1.6;margin-top:14px}
@media(max-width:700px){.feature-browser{padding:12px}.feature-toolbar{gap:8px}.feature-toolbar>div:first-child{flex-basis:100%}.feature-toolbar>div:nth-child(2){flex:1;min-width:130px}.feature-table-scroll{max-height:55dvh;scroll-padding-inline-start:0}#allFeaturesTable .feature-col-rank,#allFeaturesTable .feature-col-name{position:static}#allFeaturesTable thead .feature-col-rank,#allFeaturesTable thead .feature-col-name{position:sticky;left:auto;top:0;z-index:3}.feature-table-guide{font-size:12px}}

.rank-scale-labels{margin:8px 0 10px;font-size:11px;font-weight:600;line-height:1.4;gap:12px}.rank-scale-labels span:first-child{color:#a33127}.rank-scale-labels span:last-child{color:#285d89;text-align:right}

.filter-value{display:inline-block;padding:1px 5px;border:1px solid #bed4da;border-radius:5px;background:#e7f1f4;color:#244f60;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}#vegValue.filter-value{float:none;border-color:#bed8ca;background:#eaf4ee;color:#236143}

.feature-scope>span{display:block;line-height:1.6}#allFeaturesTable thead button{display:flex;align-items:center;gap:7px}#allFeaturesTable .feature-heading-label{min-width:0}#allFeaturesTable .feature-sort-symbol{flex:none;white-space:nowrap;line-height:1}#allFeaturesTable .feature-col-shap{width:155px}

/* Keep supporting information together below the map controls. */
.information-navigation{padding-top:4px;margin-top:12px}.information-navigation .information-link,.information-navigation #featuresOpen{display:block;width:100%;margin:0;padding:10px 0;border:0;border-bottom:1px solid #e0e8ea;border-radius:0;background:none;color:#286779;text-align:left;font:inherit;font-size:13px;font-weight:650;cursor:pointer}.information-navigation .information-link:hover{color:#164d5d;text-decoration:underline}.information-navigation .information-link:focus-visible{outline:2px solid #397e90;outline-offset:2px}.information-navigation #moreDetails,.information-navigation .latest-data{margin:0}.information-navigation #moreDetails>summary,.information-navigation .latest-data>summary{padding:10px 0;font-size:13px}.information-navigation .latest-data{border-top:1px solid #e0e8ea}.feature-table-intro{margin:7px 0;line-height:1.45}.feature-table-intro a{text-decoration:underline;text-underline-offset:2px}.feature-scope{margin-bottom:7px}.feature-scope>span{line-height:1.5}.feature-table-scroll{margin-top:10px}.feature-table-notes{margin-top:9px}

.coverage-source-dates{border-top:1px solid #dce6e8;margin-top:10px;padding-top:4px}.coverage-source-dates h4{font-size:12px;margin:8px 0 5px}.coverage-source-dates .source-age{margin:5px 0 8px}.feature-candidates{margin:12px 0;border-top:1px solid #d4e1e4;border-bottom:1px solid #d4e1e4;padding:10px 0;font-size:13px;line-height:1.5}.feature-candidates>summary{color:#286779;font-weight:650}.feature-candidates h4{margin:16px 0 6px;font-size:14px}.feature-candidates p{margin:7px 0}.current-feature-heading{font-size:14px;margin:12px 0 6px}.feature-candidate-scroll{overflow:auto;border:1px solid #d4e1e4;border-radius:6px;margin:9px 0}.feature-candidate-scroll:focus-visible{outline:2px solid #397e90;outline-offset:2px}.feature-candidate-table{min-width:730px;table-layout:fixed;margin:0;font-size:12px}.feature-candidate-table th,.feature-candidate-table td{text-align:left;padding:10px;vertical-align:top}.feature-candidate-table thead th{background:#eaf1f3}.feature-candidate-table th:first-child{width:28%}.feature-candidate-table th:nth-child(2){width:27%}.feature-candidate-table small{display:block;color:#526a73;margin-top:3px}.candidate-feature-columns{padding-left:20px;margin:7px 0}.candidate-feature-columns code{display:block;font-size:10px;overflow-wrap:anywhere;color:#61747c}.candidate-evidence-link{border:0;background:none;padding:5px 0;color:#286779;font:inherit;font-size:12px;text-decoration:underline;cursor:pointer}.candidate-earlier-choices{margin:8px 0}.candidate-earlier-choices>div{padding:9px 0;border-bottom:1px solid #e0e8ea}.candidate-earlier-choices dt{font-weight:650}.candidate-earlier-choices dd{margin:4px 0 0}.feature-candidates .candidate-decision{margin:0;font-size:12px}

#allFeaturesTable .feature-static-heading{display:flex;align-items:center;min-height:28px;font-weight:650}

/* Four consistent destinations at the bottom of the map controls. */
.information-navigation{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding-top:12px}
.information-navigation .information-link,.information-navigation #featuresOpen{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 6px;margin:0;border:1px solid #bdd0d5;border-radius:7px;background:#f3f8f8;text-align:center;font-size:13px;line-height:1.3}
.information-navigation .information-link:hover{background:#e5f0f2;text-decoration:none}
.how-content,.coverage-content{padding:16px 22px 24px;font-size:14px;line-height:1.6}
.how-content .model-purpose{margin:0 0 18px}
.how-content .reading-guide,.how-content .workflow-section,.how-content .workflow-overview,.how-content .method-topics>details{border:1px solid #cfdddf;border-radius:8px;margin:10px 0;background:#fff}
.how-content .reading-guide>summary,.how-content .workflow-section>summary,.how-content .workflow-overview>summary,.how-content .method-topics>details>summary{padding:12px 14px;min-height:44px;font-size:14px;font-weight:650;line-height:1.45}
.how-content .reading-guide[open],.how-content .workflow-section[open],.how-content .workflow-overview[open],.how-content .method-topics>details[open]{padding:0 14px 14px}
.how-content .reading-guide[open]>summary,.how-content .workflow-section[open]>summary,.how-content .workflow-overview[open]>summary,.how-content .method-topics>details[open]>summary{margin:0 -14px 10px;border-bottom:1px solid #e0e8e9}
.how-content .workflow-steps{margin:12px 0}.how-content .pipeline-map{margin:12px 0}
.how-content .method-topics:empty{display:none}.how-content .method-loading{color:#526a72}
.how-content .importance-reading{font-size:13px}.how-content .feature-table-intro{font-size:14px}
#howWorksPanel .method-topics>details>summary{padding:12px 14px;min-height:44px}
.coverage-content .coverage-source-dates h4{font-size:15px}.coverage-content .source-age{font-size:13px}
.feature-guide-link{margin:8px 0 12px;font-size:13px}
@media(max-width:650px){.how-content,.coverage-content{padding:12px 14px 18px}.how-content .pipeline-card p,.how-content .pipeline-node p{font-size:12px}.how-content .workflow-section{margin-left:0!important;margin-right:0!important}}

/* Readable explanation beside the feature table and in About this map. */
#featureDetails .importance-primer{max-width:78ch;margin:16px 0 22px;padding:18px 20px;border:1px solid #cbdde2;border-radius:10px;background:#f5f9fa}
#featureDetails .importance-primer h3{font-size:18px;margin:0 0 12px}
#featureDetails .importance-primer p,#howFeatureGuide .importance-guide-copy p{font-size:15px;line-height:1.55;margin:0 0 12px}
#featureDetails .importance-example{border-left:3px solid #397c8e;padding-left:12px}
.importance-help-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.importance-help-links a,#howFeatureGuide .importance-guide-copy a{text-decoration:underline;text-underline-offset:3px;color:#246779}
#howFeatureGuide .importance-guide-copy{max-width:78ch;padding:4px 16px 16px}
#howFeatureGuide .importance-guide-copy h3{font-size:17px;margin:18px 0 10px}
#howFeatureGuide .importance-guide-copy ol{padding-left:24px;line-height:1.55}
#howFeatureGuide .importance-guide-copy li{margin:0 0 8px}
#howFeatureGuide .importance-guide-copy dt{font-weight:700;margin-top:12px}
#howFeatureGuide .importance-guide-copy dd{margin:4px 0 12px;line-height:1.55}
@media(max-width:600px){#featureDetails .importance-primer{padding:14px}#howFeatureGuide .importance-guide-copy{padding:0 10px 12px}.importance-help-links{align-items:flex-start;flex-direction:column}}

/* Each information view keeps its own guide and supporting details. */
#howEvaluationGuide,#howFeatureGuide,#coveragePanel #pipelineWorkflow,#featureFindings>details{border:1px solid #cfdddf;border-radius:8px;margin:12px 0;background:#fff}
#howEvaluationGuide>summary,#howFeatureGuide>summary,#coveragePanel #pipelineWorkflow>summary,#featureFindings>details>summary{padding:12px 14px;min-height:44px;font-size:14px;font-weight:650;line-height:1.45}
#howEvaluationGuide[open],#howFeatureGuide[open],#coveragePanel #pipelineWorkflow[open],#featureFindings>details[open]{padding:0 14px 14px}
#howEvaluationGuide[open]>summary,#howFeatureGuide[open]>summary,#coveragePanel #pipelineWorkflow[open]>summary,#featureFindings>details[open]>summary{margin:0 -14px 10px;border-bottom:1px solid #e0e8e9}
#featureFindings #humanContextFinding{margin:0}
.candidate-input-inventory{padding-left:20px;margin:8px 0 14px}
.candidate-input-inventory>li{padding:9px 0;border-bottom:1px solid #e0e8ea}
.candidate-input-inventory>li:last-child{border-bottom:0}
#sourceIntervals .feature-intervals{margin:10px 0}

/* Shared feature-family palette: coverage, table, sources and explanations. */
:root{--family-landscape:#f1f3f4;--family-calendar:#fff8e3;--family-weather:#edf5fc;--family-vegetation:#edf7ee;--family-biomass:#f2e8d9}
.intro{padding:12px 14px;border:1px solid #73cad8;border-left:4px solid #28a7bb;border-radius:8px;background:#e1f6fa;color:#214c59;line-height:1.5}
.feature-family-landscape,.coverage-row-landscape,.source-card.landscape-data,.source-date-row[data-source-family="landscape"],.pipeline-card.landscape,[data-feature-family="landscape"],.condition-card[data-feature-family="landscape"],.score-input-list li[data-feature-family="landscape"],#allFeaturesTable tbody tr[data-feature-family="landscape"]>*{background:var(--family-landscape)}
.feature-family-calendar,.coverage-row-calendar,.source-card.calendar-data,.source-date-row[data-source-family="calendar"],.pipeline-card.calendar,[data-feature-family="calendar"],.condition-card[data-feature-family="calendar"],.score-input-list li[data-feature-family="calendar"],#allFeaturesTable tbody tr[data-feature-family="calendar"]>*{background:var(--family-calendar)}
.feature-family-weather,.coverage-row-weather,.source-card.weather-data,.source-date-row[data-source-family="weather"],.pipeline-card.weather,[data-feature-family="weather"],.condition-card[data-feature-family="weather"],.score-input-list li[data-feature-family="weather"],#allFeaturesTable tbody tr[data-feature-family="weather"]>*{background:var(--family-weather)}
.feature-family-vegetation,.coverage-row-vegetation,.source-card.vegetation-data,.source-date-row[data-source-family="vegetation"],.pipeline-card.vegetation,[data-feature-family="vegetation"],.condition-card[data-feature-family="vegetation"],.score-input-list li[data-feature-family="vegetation"],#allFeaturesTable tbody tr[data-feature-family="vegetation"]>*{background:var(--family-vegetation)}
.feature-family-biomass,.coverage-row-biomass,.source-card.biomass-data,.source-date-row[data-source-family="biomass"],.pipeline-card.biomass,[data-feature-family="biomass"],.condition-card[data-feature-family="biomass"],.score-input-list li[data-feature-family="biomass"],#allFeaturesTable tbody tr[data-feature-family="biomass"]>*{background:var(--family-biomass)}

.source-date-row{padding:8px 10px;border-radius:6px}
.importance-row[data-feature-family]{padding:10px 12px;border-radius:6px;margin-bottom:5px}
#howDialog .branch-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.pipeline-card.landscape{border-top-color:#7c8c95}.pipeline-card.calendar{border-top-color:#b59839}.pipeline-card.weather{border-top:3px solid #6d9fc2}.pipeline-card.vegetation{border-top:3px solid #72a778}
.condition-card.missing-value[data-feature-family]{border:1px dashed #a65454}
@media(max-width:900px){#howDialog .branch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#howDialog .branch-grid{grid-template-columns:1fr}}


/* Compact main-panel heading and square minimize/restore control. */
.panel-heading{position:relative}
.panel-heading h1{font-size:22px}
.panel-heading #collapse{position:absolute;top:0;right:0;display:grid;place-items:center;flex:none;width:32px;height:32px;padding:0;border-radius:7px;font-size:22px;font-weight:650;line-height:1;z-index:2}
.panel-heading #collapse:hover{background:#eef6f7}
.panel-heading #collapse:focus-visible{outline:3px solid #8bc1ca;outline-offset:2px}
#panel.collapsed{width:46px;height:46px;min-height:46px;max-height:46px;padding:5px;overflow:hidden}
#panel.collapsed .panel-heading{width:34px;height:34px;margin:0;padding:0}
#panel.collapsed .panel-heading .title-help{display:none}
#panel.collapsed .panel-heading #collapse{top:0;right:0;width:34px;height:34px;font-size:24px}
#panel.collapsed header>*:not(.panel-heading),#panel.collapsed>:not(header){display:none}
@media(max-width:600px){.panel-heading h1{font-size:20px}#panel.collapsed{width:44px;height:44px;min-height:44px;max-height:44px;padding:5px}#panel.collapsed .panel-heading{width:32px;height:32px}#panel.collapsed .panel-heading #collapse{width:32px;height:32px}}

/* The compact desktop header keeps the help controls above the fold. */
@media(min-width:601px){
 #panel:not(.collapsed){padding-top:16px;padding-bottom:16px}
 #panel:not(.collapsed) .intro{margin:11px 0;padding-top:6px;padding-bottom:6px}
 #panel:not(.collapsed) .panel-heading #collapse{top:-7px}
}

@media(max-width:600px){
 .panel-heading .title-help{padding-right:52px}
 .panel-heading #collapse{width:44px;height:44px;min-height:44px}
 #panel.collapsed{width:44px;height:44px;min-height:44px;max-height:44px;padding:0}
 #panel.collapsed .panel-heading{width:44px;height:44px}
 #panel.collapsed .panel-heading #collapse{width:44px;height:44px;min-height:44px}
}
@media(max-width:375px){
 .panel-heading h1{font-size:18px}
 #panel .intro{margin:10px 0;padding:8px 10px}
}

/* Results follow the evaluation hierarchy, with short text and local details. */
#modelFacts .results-main{padding:4px 0 14px;border-bottom:1px solid #d6e3e7;margin-bottom:16px}
#modelFacts .results-main h3{font-size:20px;margin:8px 0 14px}
#modelFacts .result-finding{padding:13px 15px;border-left:4px solid #299caf;border-radius:7px;background:#e6f5f8;font-weight:600;max-width:76ch}
#modelFacts p,#modelFacts li{max-width:78ch;font-size:14px;line-height:1.55}
#modelFacts .results-note{font-size:13px;color:#47616b}
#modelFacts .results-links{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:14px}
#modelFacts .results-main>details{padding:10px 0;border-top:1px solid #dce7e9}
#modelFacts .results-main>details>summary{padding:7px 0;font-size:14px;font-weight:650;color:#285e6e}
#modelFacts .loyo-curves{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#modelFacts .loyo-figure{margin:0;min-width:0}#modelFacts .loyo-figure img{display:block;width:100%;height:auto;background:white}#modelFacts .loyo-figure figcaption{font-size:12px;margin:8px 0;line-height:1.4}
#modelFacts .loyo-metric-label{display:inline-block;font-size:13px;margin:12px 10px 8px 0}
#modelFacts #loyoMetric{display:inline-block;width:auto;font-size:14px;margin:8px 0;min-height:42px}
#modelFacts .research-table{font-size:13px}#modelFacts .research-table th,#modelFacts .research-table td{padding:9px 10px;vertical-align:top}
#modelFacts .research-table th:first-child,#modelFacts .research-table td:first-child{text-align:left}
#modelFacts .input-comparison th:first-child{min-width:240px;width:44%}
.input-combination-detail{display:block;margin-top:5px;font-size:12px;font-weight:400;line-height:1.45;color:#49636c}
.map-model-tag{display:block;width:max-content;margin-bottom:6px;padding:2px 7px;border-radius:4px;background:#d9f0f3;color:#245d6b;font-size:11px;font-weight:700}
#modelFacts>.research-method>summary{font-size:15px;padding:14px 12px}
#featureAssessmentContext p{max-width:78ch;line-height:1.5}
.results-inline-link{display:inline;border:0;background:none;color:#246779;font:inherit;text-decoration:underline;cursor:pointer;padding:0;text-align:left}
.results-inline-link:focus-visible{outline:2px solid #299caf;outline-offset:3px}
@media(max-width:650px){#modelFacts .loyo-curves{grid-template-columns:1fr}#modelFacts .results-main h3{font-size:18px}#modelFacts .result-finding{padding:10px 12px}#modelFacts .research-table{font-size:12px}#modelFacts .research-table th,#modelFacts .research-table td{padding:8px}}

/* Each information view owns one question; shared navigation keeps the context. */
#howDialog .how-head{flex-wrap:wrap;gap:10px}
.information-nav{flex:0 0 100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.information-nav button{padding:9px 8px;border:1px solid #c6d9df;border-radius:7px;background:#fff;color:#315763;font:inherit;font-size:13px;cursor:pointer}
.information-nav button[aria-pressed="true"]{background:#dff1f5;border-color:#3594a8;color:#204e5c;font-weight:700}
.information-nav button:focus-visible{outline:2px solid #299caf;outline-offset:2px}
#howDialog .view-intro,#howDialog .view-note{font-size:14px;line-height:1.55;max-width:78ch}
#howDialog .view-note{font-size:13px;color:#49636c}
#modelTrainingRecord{margin:12px 0 20px;border:1px solid #d2e1e4;border-radius:8px;padding:12px}
#modelTrainingRecord>summary{font-size:14px;font-weight:650;cursor:pointer}
#modelTrainingRecord h3{font-size:16px}#modelTrainingRecord p,#modelTrainingRecord li{font-size:14px;line-height:1.55}
.evidence-section{margin:18px 0}.evidence-section>h3{font-size:17px}
#earlierComparisons{margin-top:18px;padding:12px;border:1px solid #d2e1e4;border-radius:8px}
#earlierComparisons>summary{font-weight:650;cursor:pointer}
#howEvaluationGuide{margin:10px 0;padding:10px 12px;border:1px solid #d2e1e4;border-radius:8px}
.feature-families{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}
.feature-families>span{padding:7px 10px;border-radius:6px;font-size:13px;color:#294b58}
.family-landscape{background:var(--family-landscape)}.family-calendar{background:var(--family-calendar)}.family-weather{background:var(--family-weather)}.family-vegetation{background:var(--family-vegetation)}
.feature-search-label{display:block;font-size:13px;font-weight:650;margin:10px 0 5px}
#featureSearch{width:100%;max-width:420px;padding:10px 12px;border:1px solid #bdd2d8;border-radius:7px;font:inherit;font-size:14px;background:white;color:#294b58}
#sourceAge{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.coverage-family{min-width:0;border:1px solid #d4e1e3;border-radius:9px;padding:14px;color:#294b58}
.coverage-family-heading{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}
#howDialog .coverage-family-heading h4{font-size:14px;line-height:1.4;margin:0;font-weight:600}
.coverage-family-heading strong{font-size:20px;white-space:nowrap}
#howDialog .coverage-family p{font-size:13px;line-height:1.5;margin:8px 0}
#howDialog .coverage-family-count{font-size:12px;color:#526d75}
.coverage-input-dates{margin:8px 0 0;font-size:13px}.coverage-input-dates div{padding:7px 0;border-top:1px solid #cfdee4}.coverage-input-dates dt{font-weight:600}.coverage-input-dates dd{margin:3px 0 0}
#howDialog .process-section{padding:12px 0 18px;border-bottom:1px solid #d6e3e7;margin-bottom:16px}
#howDialog .process-section h3{font-size:18px;margin:0 0 12px}
#howDialog .process-section p,#howDialog .process-section li{font-size:14px;line-height:1.6;max-width:80ch}
#howDialog .training-sequence{padding-left:24px;margin:8px 0}#howDialog .training-sequence li{padding-left:5px;margin:0 0 12px}
#howDialog :is(section,details)[id]{scroll-margin-top:145px}
@media(max-width:650px){.information-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.information-nav button{font-size:12px;padding:8px}#sourceAge{grid-template-columns:1fr}.coverage-family{padding:12px}.coverage-family-heading strong{font-size:18px}#howDialog :is(section,details)[id]{scroll-margin-top:180px}}
#howDialog #modelTrainingSteps{border:0;border-bottom:1px solid #d6e3e7;border-radius:0;background:transparent}
#howDialog .training-sequence{padding:0}
#howDialog .training-sequence li{padding:10px 0 10px 38px;margin:0}
#featureDetails .importance-primer{max-width:110ch;padding:14px 18px;margin:12px 0 16px}
#featureDetails .importance-primer p{font-size:14px;line-height:1.5;margin-bottom:10px}

/* A persistent cell summary, with separate views for the detailed evidence. */
.cell-panel,.cell-panel.status-open{width:330px;min-width:0;bottom:auto;max-height:calc(100dvh - 32px)}
.cell-panel-body{flex:0 1 auto;padding:16px;overflow:auto}
.cell-panel-body[hidden]{display:none}
.cell-panel-actions{display:flex;gap:6px}
.cell-panel-toolbar{padding:10px 14px}
.cell-panel-toolbar .cell-panel-actions button{width:32px;height:32px;padding:0;font-size:22px;line-height:1;min-height:32px}
.cell-panel.is-collapsed .cell-panel-toolbar{border-bottom:0}
.cell-compact-content .cell-title{font-size:18px;margin-bottom:10px}
.cell-panel .cell-context{font-size:11px;margin:6px 0 10px;line-height:1.45}
.cell-panel .cell-context>div{grid-template-columns:72px minmax(0,1fr)}
.cell-panel .cell-context dd{overflow-wrap:anywhere}
.cell-panel .cell-data-status{font-size:11px;margin:8px 0;padding:7px 9px}
.cell-panel .cell-data-status>div{gap:4px 8px;flex-wrap:nowrap;align-items:center}
.cell-panel .cell-data-status .data-status-label{flex:1}
.cell-panel .cell-data-status .data-status-value{white-space:nowrap}
.cell-panel .cell-rank{margin:12px 0 8px;font-size:21px;line-height:1.3}
.cell-panel .cell-rank strong,.cell-panel .cell-rank small{display:block}
.cell-panel .cell-rank small{margin-top:3px;font-size:11px}
.cell-summary-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid #d9e4e6;padding-top:13px;margin-top:13px}
.cell-summary-nav button,.cell-detail-nav button{font:inherit;font-size:12px;font-weight:650;color:#296779;border:1px solid #bed4da;border-radius:7px;background:#f4f9fa;padding:12px 7px;cursor:pointer;min-height:44px}
.cell-summary-nav button:hover,.cell-detail-nav button:hover{background:#e5f3f6}
.cell-summary-nav button:focus-visible,.cell-detail-nav button:focus-visible,#cellDetailClose:focus-visible{outline:3px solid #2391aa;outline-offset:2px}
.cell-detail-dialog{position:fixed;inset:16px 362px auto auto;margin:0;width:min(760px,calc(100vw - 394px));max-width:none;max-height:calc(100dvh - 32px);padding:0;overflow:hidden;border:1px solid #bed4da;border-radius:14px;background:#fcfefe;color:#213d47;box-shadow:0 12px 45px #17343e40;z-index:1000}
.cell-detail-dialog[open]{display:flex;flex-direction:column}
.cell-detail-head{flex:none;padding:15px 18px 12px;border-bottom:1px solid #d9e4e6;background:#f8fcfc}
.cell-detail-title-row{display:flex;justify-content:space-between;align-items:center;gap:12px}
.cell-detail-title-row h2{margin:0;font-size:21px}
#cellDetailClose{flex:none;border:1px solid #bed4da;border-radius:50%;width:36px;height:36px;background:white;color:#355762;font-size:24px;cursor:pointer}
#cellDetailIdentity{font-size:11px;line-height:1.5;margin:6px 0 12px;color:#526d76;overflow-wrap:anywhere}
.cell-detail-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.cell-detail-nav button{padding:8px 5px;font-size:11px}
.cell-detail-nav button[aria-pressed=true]{background:#def1f5;border-color:#2391aa;color:#1d5665}
.cell-detail-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:16px 18px;scroll-padding-block:12px;font-size:13px;line-height:1.5}
.cell-detail-body>[hidden]{display:none!important}
.cell-detail-body h3{margin:0 0 8px;font-size:17px}
.cell-detail-body h4{font-size:13px}
.cell-detail-body p{margin:8px 0}
.cell-detail-body .cell-source-conditions{margin:0}
.cell-detail-body .cell-source-conditions>h3{display:none}
.cell-detail-body .condition-grid{gap:8px}
.cell-detail-body .condition-card{padding:10px;font-size:12px}
.cell-detail-body .condition-card strong{font-size:18px}
.cell-detail-body .condition-card small{font-size:11px;line-height:1.45}
.cell-detail-body .score-directions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cell-detail-body .score-explanation{margin:0}
.cell-detail-body .factor-value{white-space:normal;text-align:right}
.cell-detail-body .cell-inputs{margin-top:18px;border-top:1px solid #d9e4e6;padding-top:12px}
.cell-detail-body .cell-fire-history{margin:0;font-size:13px}
.cell-detail-body .cell-fire-history>summary{display:none}
.cell-detail-body .worldcover-inset{margin:0;padding:12px}
.cell-detail-body .worldcover-dimensions{width:min(100%,250px)}
.cell-detail-body .worldcover-native-canvas{width:100%;height:auto;max-height:none}
.cell-detail-body .worldcover-summary,.cell-detail-body .worldcover-note,.cell-detail-body .worldcover-value{font-size:11px;line-height:1.5}
.cell-detail-body .worldcover-inset figcaption{font-size:13px}
.cell-detail-body .input-label,.cell-detail-body .input-help{font-size:12px}
.cell-detail-body .input-value,.cell-detail-body .input-source{font-size:11px}
@media(max-width:1000px){.cell-detail-dialog{inset:16px 16px auto auto;width:min(760px,calc(100vw - 32px))}}
@media(max-width:700px){
 .cell-panel,.cell-panel.status-open{inset:auto 8px 8px;width:auto;height:auto;max-height:75dvh;min-width:0}
 .cell-panel-body{padding:12px 14px}.cell-panel .cell-context{font-size:11px}
 .cell-panel-toolbar .cell-panel-actions button{min-width:36px;min-height:36px}
 .cell-detail-dialog{inset:8px 8px auto;width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}
 .cell-detail-head{padding:12px}.cell-detail-title-row h2{font-size:19px}
 .cell-detail-nav{grid-template-columns:1fr 1fr}.cell-detail-nav button{font-size:12px}
 .cell-detail-body{padding:13px}.cell-detail-body .score-directions{grid-template-columns:1fr}
 .cell-detail-body .condition-grid{grid-template-columns:1fr 1fr}
 .cell-detail-body .condition-card{padding:8px;font-size:11px}.cell-detail-body .condition-card strong{font-size:16px}
}

/* Keep the cell result together above its supporting metadata. */
.cell-result{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #d9e4e6}
.cell-panel .cell-result .cell-title{margin:0;font-size:18px}
.cell-panel .cell-result .cell-rank{margin:5px 0 0}
#assessmentControl{margin:13px 0 4px}

/* Show the core conditions and strongest local score factors in the summary. */
.cell-quick-conditions h3,.cell-quick-score h3{font-size:13px;margin:10px 0 6px;line-height:1.3}
.quick-condition-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.quick-condition{padding:6px 8px;border-radius:5px;min-width:0;background:var(--family-weather)}
.quick-condition[data-feature-family=vegetation]{background:var(--family-vegetation)}
.quick-condition span{display:block;color:#526d76;font-size:10px;line-height:1.25}
.quick-condition strong{display:block;font-size:14px;line-height:1.35}
.quick-condition small{display:block;font-size:9px;color:#6b5c4e;line-height:1.25}
.cell-quick-score{margin-top:10px}
.quick-driver{margin-top:5px;padding:5px 7px;background:#f4f8f8;border-radius:5px}
.quick-driver h4{font-size:10px;margin:0 0 2px;color:#4b6570;line-height:1.2}
.quick-driver .factor-rows li{padding:0;border:0;list-style:none}
.quick-driver .factor-head{font-size:11px;line-height:1.25}
.quick-driver .factor-bar{height:4px;margin-top:3px}
.quick-driver .factor-value{font-size:10px;white-space:normal;text-align:right}
.quick-driver .no-factors{font-size:11px;margin:2px 0}
.cell-panel .cell-data-status{margin:6px 0 8px;padding:5px 8px}
.cell-panel .cell-data-status>div{margin:2px 0}
.cell-panel .cell-result{margin-bottom:8px;padding-bottom:8px}
.cell-panel .cell-context{margin:4px 0 6px}
.cell-panel .cell-summary-nav{margin-top:10px;padding-top:10px}
@media(max-width:700px){.cell-panel,.cell-panel.status-open{max-height:calc(100dvh - 16px)}}

.cell-quick-conditions h3 small{font-size:9px;font-weight:400;color:#61747a;margin-left:5px}
.quick-condition .condition-period,.quick-condition .delta{font-size:9px;line-height:1.35;display:block;margin-top:4px;color:#536c75}
.quick-condition .condition-use{font-size:9px;line-height:1.35;margin-top:3px;color:#74513c}
.quick-condition.condition-card strong{font-size:14px}
.quick-condition.condition-card span{font-size:10px}

/* Keep input values distinct from signed local SHAP contributions. */
.factor-contribution{flex:0 0 auto;white-space:nowrap;font-variant-numeric:tabular-nums}
.factor-rows .factor-value{display:block;margin-top:3px;font-size:11px;white-space:normal}
.score-calculation{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin:14px 0;padding:12px;background:#f0f6f7;border-radius:8px}
.score-calculation dt{font-size:12px;color:#526970}.score-calculation dd{margin:4px 0 0;font-size:clamp(24px,2.5vw,32px);line-height:1.15;font-weight:700;font-variant-numeric:tabular-nums}
.cell-result .rank-meaning{margin:8px 0;font-size:11px}.cell-result .rank-meaning p{line-height:1.45}
@media(max-width:420px){.score-calculation{grid-template-columns:1fr}.score-calculation>div{display:flex;justify-content:space-between;gap:10px}.score-calculation dd{margin:0}}

.cell-overview .cell-result{padding:12px;border:1px solid #d5e4e8;border-radius:8px;background:#f1f7f9}
.cell-result .cell-rank{margin:0}.cell-rank-direction{display:block;font-size:13px;font-weight:600;line-height:1.4}.cell-rank-position{display:block;margin-top:4px;font-size:20px;line-height:1.3}
.cell-result .rank-meaning{margin:10px 0 0}.cell-result .rank-meaning summary{font-weight:500}

.worldcover-inset figcaption strong,.worldcover-inset figcaption span,.worldcover-summary>span{display:block}
.worldcover-inset figcaption strong{font-size:16px;margin-bottom:5px}.worldcover-inset figcaption span{font-weight:400;font-size:12px}
.worldcover-summary{line-height:1.65}.worldcover-legend h4{margin:0 0 8px;font-size:13px}.worldcover-legend{padding-top:12px;border-top:1px solid #d9e4e7}
.worldcover-legend .worldcover-key-item,.worldcover-legend .worldcover-note,.worldcover-legend>a,.worldcover-value{font-size:12px;line-height:1.5}

.factor-head{flex-wrap:wrap}.factor-contribution{margin-left:auto;font-size:11px}.factor-rows .factor-value{text-align:left}

/* Highlight the deployed configuration across the comparison table. */
#modelFacts .input-comparison tr.selected-model-row>th,#modelFacts .input-comparison tr.selected-model-row>td{background:#e8f4e9}
#modelFacts .input-comparison .selected-model-row .map-model-tag{background:#cbe6cf;color:#245b31}

/* Annual comparisons keep combinations readable while years scroll. */
#selectedYearTable .research-table{min-width:1050px}
#selectedYearTable .research-table th[scope="row"]{min-width:240px;max-width:260px;white-space:normal;position:sticky;left:0;background:#fff;z-index:1}
#selectedYearTable .research-table td,#selectedYearTable .research-table thead th:not(:first-child){white-space:nowrap;text-align:right}
#selectedYearTable .research-table thead th:first-child{position:sticky;left:0;background:#fff;z-index:1}

/* One line per input family under the feature count. */
.feature-family-lines{flex-direction:column;align-items:flex-start;gap:4px;margin:8px 0 14px}
.feature-family-lines>span{padding:5px 10px}

.coverage-table-scroll{overflow-x:auto}.coverage-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.5}.coverage-table th,.coverage-table td{padding:10px 12px;border-bottom:1px solid #d8e4e8;text-align:left;vertical-align:top}.coverage-table thead th{font-size:12px;color:#47616b}.coverage-table th[scope=row]{width:23%}.coverage-table .coverage-number{white-space:nowrap;font-variant-numeric:tabular-nums}.coverage-source,.coverage-dates{margin:0}.coverage-dates{margin-top:4px}.coverage-date{white-space:nowrap}.coverage-table .family-landscape{background:#f1f3f4}.coverage-table .family-calendar{background:#fff8e3}.coverage-table .family-weather{background:#edf5fc}.coverage-table .family-vegetation{background:#edf7ee}.coverage-table .coverage-row-scored{background:#eaf6ec}.coverage-table .coverage-row-unscored{background:#fceced}@media(max-width:600px){.coverage-table{min-width:620px}.coverage-table th,.coverage-table td{padding:8px}}

.coverage-table .coverage-family-count{display:block;white-space:normal;min-width:130px}

/* Keep rank, readable name and importance visible together on phones. */
.feature-details-toggle,.feature-mobile-details{display:none}
@media(max-width:1000px){
 #allFeaturesTable{width:100%;min-width:0;table-layout:fixed}
 #allFeaturesTable .feature-col-rank{width:32px}
 #allFeaturesTable .feature-col-name{width:auto;border-right:0}
 #allFeaturesTable .feature-col-importance{width:82px}
 #allFeaturesTable th,#allFeaturesTable td{padding:9px 6px}
 #allFeaturesTable :is(.feature-col-shap,.feature-col-group,.feature-col-unit,.feature-col-source,.feature-col-definition,.feature-col-rationale,.feature-col-median),#allFeaturesTable .feature-code{display:none}
 #allFeaturesTable .feature-col-importance .feature-heading-label{font-size:11px}
 .feature-details-toggle{display:block;min-height:36px;margin-top:5px;padding:4px 0;background:none;border:0;color:#286779;text-decoration:underline;font:inherit;font-size:12px;text-align:left}
 .feature-details-toggle:focus-visible{outline:2px solid #397e90;outline-offset:2px}
 #allFeaturesTable tr.feature-mobile-details:not([hidden]){display:table-row}
 #allFeaturesTable .feature-mobile-details td{padding:12px}
 .feature-mobile-details dl{margin:0;font-size:12px}
 .feature-mobile-details dl>div{margin:0 0 10px}
 .feature-mobile-details dt{font-weight:650;color:#284c58}
 .feature-mobile-details dd{margin:3px 0 0;overflow-wrap:anywhere}
}

.paired-capture{margin:1.2rem 0}.paired-capture svg{display:block;width:100%;max-width:680px;height:auto}.paired-capture svg text{font:14px system-ui,sans-serif;fill:#26343f}.paired-capture figcaption{font-size:.9rem;line-height:1.5}.paired-capture details{margin-top:.6rem}

/* Explanations stay beside the measure and use the existing accessible tooltip. */
#allFeaturesTable thead .metric-help,.metric-help{display:inline-flex;width:28px;min-height:28px;align-items:center;justify-content:center;padding:2px;margin-left:3px;vertical-align:middle;color:#286779;border:0;background:none;font-size:15px;cursor:pointer}
#allFeaturesTable .feature-col-importance [data-feature-sort],#allFeaturesTable .feature-col-shap [data-feature-sort]{display:inline-flex;width:auto;max-width:calc(100% - 34px);vertical-align:middle}
.comparison-help{font:inherit;color:inherit;text-align:left;line-height:inherit}
.cell-export{font-size:11px;margin:10px 0 0}.cell-export a{display:inline-block;padding:6px 0;color:#286779}
.version-record{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:10px 0 14px;font-size:13px;line-height:1.45}.version-record>div{display:grid;grid-template-columns:minmax(120px,.28fr) minmax(0,1fr);gap:8px 14px;padding:9px 11px;border:1px solid #d6e2e5;border-radius:7px;background:#f8fafb}.version-record dt{font-weight:650;color:#36545e}.version-record dd{min-width:0;margin:0;overflow-wrap:anywhere}.version-record code{display:inline-block;max-width:100%;padding:3px 6px;border-radius:4px;background:#edf2f3;font-size:12px;overflow-wrap:anywhere;word-break:break-word}.model-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:12px 0}.model-settings-grid>div{padding:8px 10px;border:1px solid #d9e4e6;border-radius:6px;background:#f7faf9}.model-settings-grid dt{font-size:12px;font-weight:650;color:#35545d}.model-settings-grid dd{margin:3px 0 0;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.assessment-source-close{display:block;width:28px;height:28px;margin:0 0 4px auto;border:1px solid #d2e1e5;border-radius:50%;background:#fff;color:#31505b;font-size:20px;line-height:1;cursor:pointer}.assessment-source-list{margin:0;padding-left:19px}.assessment-source-list li{margin:7px 0;line-height:1.45}.assessment-source-list strong{color:#234a57}.comparison-no-change{color:#526970;font-weight:600}.comparison-base-note{display:block;padding:10px 14px}.comparison-base-note strong{display:block}
.coverage-mobile-label{display:none}
@media(max-width:600px){
 .coverage-table-scroll{overflow:visible}.coverage-table{display:block;min-width:0}
 .coverage-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .coverage-table tbody{display:block}.coverage-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:10px;border-bottom:1px solid #cfdddf}
 .coverage-table th[scope=row]{grid-column:1/-1;width:auto;padding:0 0 7px;border:0}
 .coverage-table td{padding:0 6px 4px 0;border:0;min-width:0}
 .coverage-table .coverage-number{white-space:normal}.coverage-table .coverage-family-count{min-width:0}
 .coverage-mobile-label{display:block;font-size:11px;color:#526d76;margin-bottom:3px}
 .coverage-table .coverage-details{grid-column:1/-1;padding:6px 0 0}
 .coverage-table .coverage-details:empty,.coverage-table tr:not([class^="family-"]) .coverage-percent{display:none}
 .coverage-table tr:not([class^="family-"]){grid-template-columns:minmax(0,1fr) auto;align-items:center}
 .coverage-table tr:not([class^="family-"]) th{grid-column:auto;padding:0}
 .coverage-table tr:not([class^="family-"]) .coverage-mobile-label{display:none}
 .version-record>div{grid-template-columns:1fr;gap:3px}.model-settings-grid{grid-template-columns:1fr}
}
#allFeaturesTable .feature-col-importance{width:170px}#allFeaturesTable .feature-col-shap{width:180px}
#allFeaturesTable .feature-col-importance .feature-heading-label{overflow-wrap:normal}
#assessmentRecord .results-links{display:flex;flex-wrap:wrap;gap:8px 18px}
.comparison-help time{white-space:nowrap}

@media(max-width:700px){#allFeaturesTable .feature-col-importance{width:140px}#allFeaturesTable .feature-col-shap{width:auto}}
@media(max-width:1000px){
 #allFeaturesTable .feature-col-rank{width:44px}
 #allFeaturesTable .feature-col-rank [data-feature-sort]{flex-direction:column;align-items:flex-start;gap:0}
 #allFeaturesTable .feature-col-rank .feature-heading-label{white-space:nowrap;font-size:11px}
}

@media(max-width:700px){.paired-capture svg text{font-size:20px}}


/* Clear rank denominator and feature-group navigation. */
.cell-rank-scope{display:block;margin-top:3px;font-size:13px;font-weight:500;line-height:1.4;color:#496875}
.feature-family-lines>button{display:block;min-height:42px;padding:8px 13px;border:1px solid #c8d8dc;border-radius:8px;font:inherit;font-size:14px;font-weight:600;color:#173d4b;text-align:left;cursor:pointer}
.feature-family-lines>button:hover{border-color:#417d8a;box-shadow:0 1px 5px #19435425}
.feature-family-lines>button[aria-pressed="true"]{border-color:#247388;box-shadow:inset 0 0 0 2px #247388}
.feature-family-lines>button:focus-visible{outline:3px solid #2c8397;outline-offset:2px}
.feature-family-lines>button span{margin-left:6px}
.feature-family-lines>#featureGroupReset{background:#fff;color:#246779;text-decoration:underline;font-size:13px}
.feature-family-lines>#featureGroupReset[hidden]{display:none}

/* Make dated environmental values easy to scan. */
.cell-quick-conditions .quick-condition{padding:10px 11px;border:1px solid #c9dce8;border-left:4px solid #5188a6;border-radius:9px;box-shadow:0 2px 4px #173d4b14;background:#eaf3fa}
.cell-quick-conditions .quick-condition[data-feature-family=vegetation]{border-color:#cee3d1;border-left-color:#43805b;background:#eaf5ec}
.cell-quick-conditions .quick-condition span{font-size:12px;font-weight:650;line-height:1.35;color:#254c5b}
.cell-quick-conditions .quick-condition strong{margin-top:3px;font-size:20px;line-height:1.2;color:#132f3a}
.cell-quick-conditions .quick-condition .condition-period{margin-top:9px;padding:5px 7px;border-radius:5px;background:#ffffffb8;font-size:11px;line-height:1.4;color:#304f5b}
.cell-quick-conditions .quick-condition .delta{margin-top:7px;padding-top:7px;border-top:1px solid #bbd2dc;font-size:11px;line-height:1.4;color:#234b60}
.cell-quick-conditions .quick-condition .condition-use{font-size:11px}
.quick-score-explanation{margin:5px 0 10px;font-size:12px;line-height:1.5;color:#375662}
.comparison-base-note{display:grid;gap:3px;margin:10px 0 14px;padding:12px 14px;border:1px solid #cbdce1;border-radius:8px;background:#f2f7f8;font-size:14px;line-height:1.5}
.comparison-base-note strong{color:#173d4b}
#modelFacts .input-comparison th:first-child{min-width:260px}

/* Keep local score effects distinct from source values. */
.factor-head{display:block}.factor-name{display:block}
.factor-effect{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:5px;font-size:11px}
.factor-effect .factor-contribution{margin-left:0;font-size:12px}
.quick-driver .factor-head{font-size:12px;line-height:1.4}
.quick-driver .factor-value{margin-top:3px;font-size:11px;text-align:left}
.quick-driver h4{margin-bottom:5px}.quick-driver{padding:9px}
.cell-detail-body .factor-effect{font-size:12px}.cell-detail-body .factor-contribution{font-size:13px}
.dataset-period{margin:8px 0 14px;padding:8px 10px;background:#f1f6f7;border-radius:6px;font-size:13px;line-height:1.5}
/* Keep the native pixel view beside its coverage and key. */
.worldcover-layout{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1fr);gap:20px;align-items:start;margin-top:12px}
.worldcover-inspection,.worldcover-details{min-width:0}
.cell-detail-body .worldcover-dimensions{width:min(100%,210px);margin:0 auto 8px}
.cell-detail-body .worldcover-summary{margin:0 0 12px;font-size:13px;line-height:1.8}
.cell-detail-body .worldcover-legend{padding-top:10px}
.cell-detail-body .worldcover-legend h4{margin:0 0 8px}
.cell-detail-body .worldcover-key{display:grid;gap:8px}
.cell-detail-body .worldcover-key-item{font-size:12px;align-items:flex-start}
.cell-detail-body .worldcover-swatch{flex:0 0 12px;margin-top:3px}
.cell-detail-body .worldcover-legend>a{display:inline-block;margin-top:10px;font-size:12px}
.cell-detail-body .worldcover-value{font-size:11px;line-height:1.5;margin:8px 0}
@media(max-width:600px){
 .worldcover-layout{grid-template-columns:1fr;gap:12px}
 .cell-detail-body .worldcover-dimensions{width:min(100%,170px)}
 .cell-detail-body .worldcover-summary{display:flex;flex-wrap:wrap;gap:3px 12px;font-size:12px}
 .cell-detail-body .worldcover-key{gap:5px}
}

.scoring-rules{margin:6px 0 14px;padding-left:20px;font-size:12px;line-height:1.6}.scoring-rules li{margin:4px 0}

/* Use one disclosure hierarchy for all supplementary results. */
#currentEvaluation > .research-method{border:0;border-top:1px solid #dce7e9;border-radius:0;margin:0;padding:10px 0;background:transparent}
#currentEvaluation > .research-method > summary{padding:8px 0;min-height:44px;font-size:15px;font-weight:650}
.comparison-inputs{margin-top:5px;font-size:12px;font-weight:400}
.comparison-inputs > summary{font-size:12px;padding:5px 0;min-height:30px}
.comparison-inputs ul{padding-left:18px;margin:5px 0;line-height:1.5}
.coverage-assessment{margin:0 0 12px}

.assessment-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.assessment-label-row label{margin:0}.assessment-label-row #versionOpen{font-size:12px;flex:none}

.coverage-table caption{caption-side:top;text-align:left;padding:0 0 8px;font-size:12px;color:#47616b}@media(max-width:600px){.coverage-table caption{display:block}}

.assessment-date-help{display:flex;align-items:baseline;gap:6px;min-width:0}.assessment-source-popover{position:fixed;z-index:1200;overflow:auto;overscroll-behavior:contain;padding:12px 14px;background:#fff;color:#31505b;border:1px solid #a9c3c9;border-radius:9px;box-shadow:0 6px 20px #213d4733;font-size:12px;line-height:1.45;box-sizing:border-box}.assessment-source-popover[hidden]{display:none}.assessment-source-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.assessment-source-head h3{font-size:14px;margin:0}.assessment-source-head button{border:1px solid #d2e1e5;background:#fff;color:#31505b;border-radius:50%;width:30px;height:30px;flex:none;font-size:20px;cursor:pointer}.assessment-source-date{font-weight:600;margin:6px 0}.assessment-source-note{font-size:11px;margin:6px 0;color:#526d76}.assessment-source-popover details{border-top:1px solid #e0e9ec;padding:6px 0}.assessment-source-popover summary{cursor:pointer;font-weight:600}.assessment-source-period{display:block;font-weight:400;margin-left:12px}.assessment-source-popover ul{padding-left:24px;margin:6px 0}.assessment-source-popover li{margin:2px 0}.assessment-source-head button:focus-visible{outline:2px solid #299caf;outline-offset:2px}
.assessment-source-cadence{display:block;font-size:10px;font-weight:400;color:#526d76;margin-top:2px}


/* Keep the feature reference compact, readable and complete. */
.assessment-history-note{margin:5px 0 0;font-size:11px;line-height:1.4;color:#60747a}
#allFeaturesTable{width:1382px;min-width:1382px;table-layout:fixed}
#allFeaturesTable .feature-col-rank{width:72px;white-space:nowrap}
#allFeaturesTable .feature-col-rank button{flex-wrap:nowrap;white-space:nowrap}
#allFeaturesTable .feature-col-name{width:250px;left:72px}
#allFeaturesTable .feature-col-importance{width:155px}
#allFeaturesTable .feature-col-shap{width:160px}
#allFeaturesTable .feature-col-signedShap{width:175px}
#allFeaturesTable .feature-col-group{width:145px}
#allFeaturesTable .feature-col-unit{width:90px}
#allFeaturesTable .feature-col-source{width:200px}
#allFeaturesTable .feature-col-cadence{width:225px}
#allFeaturesTable .feature-col-definition{width:340px}
#allFeaturesTable .feature-col-rationale{width:340px}
#allFeaturesTable .feature-col-median{width:190px}
#allFeaturesTable th,#allFeaturesTable td{overflow-wrap:anywhere;word-break:normal}
#allFeaturesTable .feature-sort-symbol{color:#71878d;font-size:12px}
#allFeaturesTable th[aria-sort="ascending"] .feature-sort-symbol,#allFeaturesTable th[aria-sort="descending"] .feature-sort-symbol{color:#286779;font-weight:800}
.feature-table-scroll{scrollbar-width:thin;scrollbar-color:#8aa7af #edf2f3}
.feature-table-scroll::-webkit-scrollbar{width:11px;height:11px}
.feature-table-scroll::-webkit-scrollbar-track{background:#edf2f3}
.feature-table-scroll::-webkit-scrollbar-thumb{background:#8aa7af;border:2px solid #edf2f3;border-radius:999px}
.feature-table-guide{margin:8px 0;color:#526a72}
.feature-details-toggle{display:block;min-height:24px;margin-top:4px;padding:2px 0;border:0;background:transparent;color:#286779;text-decoration:underline;font:inherit;font-size:11px;line-height:1.35;text-align:left;cursor:pointer}
.feature-details-toggle:hover{text-decoration-thickness:2px}
.feature-details-toggle:focus-visible{outline:2px solid #397e90;outline-offset:2px}
.feature-mobile-details{display:none}
#allFeaturesTable tr.feature-mobile-details:not([hidden]){display:table-row}
#allFeaturesTable .feature-mobile-details td{padding:13px 16px;background:#f7faf9}
.feature-mobile-details dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 16px;margin:0;font-size:12px;line-height:1.5}
.feature-mobile-details dl>div{min-width:0;padding-left:10px;border-left:2px solid #cbdcdf}
.feature-mobile-details dt{font-weight:650;color:#284c58}
.feature-mobile-details dd{margin:3px 0 0;overflow-wrap:anywhere}
.feature-detail-shap,.feature-detail-signedShap,.feature-detail-group,.feature-detail-source,.feature-detail-cadence{display:none}
@media(max-width:1000px){
 #allFeaturesTable{width:100%;min-width:0;table-layout:fixed}
 #allFeaturesTable .feature-col-rank{width:44px}
 #allFeaturesTable .feature-col-name{width:auto;left:auto;border-right:0}
 #allFeaturesTable .feature-col-importance{width:140px}
 #allFeaturesTable :is(.feature-col-shap,.feature-col-signedShap,.feature-col-group,.feature-col-unit,.feature-col-source,.feature-col-cadence,.feature-col-definition,.feature-col-rationale,.feature-col-median),#allFeaturesTable .feature-code{display:none}
 .feature-table-scroll{max-height:55dvh;scroll-padding-inline-start:0}
 .feature-details-toggle{min-height:36px;margin-top:5px;font-size:12px}
 .feature-mobile-details dl{grid-template-columns:1fr}
 .feature-mobile-details dl>div{padding-left:0;border-left:0}
 .feature-mobile-details dl>div.feature-detail-shap,.feature-mobile-details dl>div.feature-detail-signedShap,.feature-mobile-details dl>div.feature-detail-group,.feature-mobile-details dl>div.feature-detail-source,.feature-mobile-details dl>div.feature-detail-cadence{display:block}
}

/* On narrow screens, hidden desktop columns must not reserve table width. */
@media(max-width:1000px){
 #allFeaturesTable .feature-col-rank{width:40px}
 #allFeaturesTable .feature-col-importance{width:110px}
 #allFeaturesTable :is(.feature-col-shap,.feature-col-signedShap,.feature-col-group,.feature-col-unit,.feature-col-source,.feature-col-cadence,.feature-col-definition,.feature-col-rationale,.feature-col-median),#allFeaturesTable .feature-code{display:none;width:0!important;min-width:0!important;padding:0!important;border:0!important}
}

/* One centered score and one combined land-cover legend with percentages. */
.score-reference-help{margin:0 0 12px;font-size:12px;line-height:1.6;color:#526970}
.score-raw-details{margin:0 0 18px;font-size:12px}.score-raw-details p{font-variant-numeric:tabular-nums}
.score-calculation>div{display:block}.score-calculation dd{margin:4px 0 0}
.cell-detail-body .worldcover-shares{display:grid;gap:8px;margin:0 0 12px;font-size:13px;line-height:1.5}
.cell-detail-body .worldcover-shares .worldcover-key-item{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:8px;align-items:baseline;font-size:13px}
.worldcover-shares .feature-label-help{justify-self:start;text-align:left;font:inherit;overflow-wrap:anywhere}
.worldcover-percentage{font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
.worldcover-total{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding-top:10px;border-top:1px solid #d9e4e7}
.worldcover-source{display:inline-block;margin-top:8px;font-size:12px}


/* Final wide-screen layout for the feature reference table. */
#allFeaturesTable{width:100%;min-width:1350px;table-layout:fixed}
#allFeaturesTable .feature-col-rank{width:80px;left:0;white-space:nowrap}
#allFeaturesTable .feature-col-name{width:238px;left:80px}
#allFeaturesTable .feature-col-importance{width:128px}
#allFeaturesTable .feature-col-shap{width:142px}
#allFeaturesTable .feature-col-signedShap{width:122px}
#allFeaturesTable .feature-col-group{width:142px}
#allFeaturesTable .feature-col-source{width:200px}
#allFeaturesTable .feature-col-cadence{width:225px}
#allFeaturesTable thead th{overflow-wrap:normal;word-break:normal}
#allFeaturesTable thead .feature-col-rank{white-space:nowrap}
#allFeaturesTable thead button{display:flex;align-items:center;justify-content:space-between;gap:7px;text-align:left;line-height:1.3}
#allFeaturesTable thead .feature-col-rank button{justify-content:flex-start;gap:5px;white-space:nowrap}
#allFeaturesTable .feature-col-rank .feature-heading-label{white-space:nowrap}
#allFeaturesTable .feature-heading-label{min-width:0}
#allFeaturesTable .feature-sort-symbol{width:16px;height:16px;flex:none;color:#71878d}
#allFeaturesTable .feature-sort-symbol path{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#allFeaturesTable th[aria-sort="ascending"] .feature-sort-symbol,#allFeaturesTable th[aria-sort="descending"] .feature-sort-symbol{color:#286779}
.feature-table-intro{margin:5px 0 10px;color:#526a72;font-size:12px;line-height:1.45}
.feature-meaning-tip{white-space:pre-line}
@media(max-width:1000px){
 #allFeaturesTable{width:100%;min-width:0;table-layout:fixed}
 #allFeaturesTable .feature-col-rank{width:40px;left:auto}
 #allFeaturesTable .feature-col-name{width:auto;left:auto}
 #allFeaturesTable .feature-col-importance{width:110px}
}

/* Keep score inputs in the cell summary and reserve this dialog for other conditions. */
.cell-detail-body .cell-source-conditions.cell-other-conditions-only>h4,
.cell-detail-body .cell-source-conditions.cell-other-conditions-only>.model-conditions{display:none!important}
.cell-detail-body .cell-source-conditions.cell-other-conditions-only .condition-context{display:block;margin:0;padding:0;border:0}
.cell-detail-body .cell-source-conditions.cell-other-conditions-only .condition-context>summary{display:none}
.cell-detail-body .cell-source-conditions.cell-other-conditions-only .context-conditions{margin:0}
.condition-latest-note{display:block;margin-top:2px;color:#718087;font-size:9px;font-weight:400;line-height:1.3}
.cell-detail-body .condition-card .condition-latest-note{font-size:10px;color:#718087}
.condition-empty{margin:0;padding:10px;color:#687a80}

/* Focused usability refinements, preserving the map palette and compact layout. */
.feature-family-lines{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}
.feature-family-lines>button{width:auto;flex:0 1 auto;margin:0;padding:8px 10px}
.filter-help-button{min-width:32px;min-height:32px;margin:-6px 0;cursor:pointer}
.metric-help{min-width:28px;min-height:28px;vertical-align:middle}
.version-identifiers dd{margin:4px 0 12px;overflow-wrap:anywhere;user-select:text}
.version-identifiers dt{font-weight:650}
.table-scroll-cue{margin:6px 0 0;color:#526a72;font-size:11px}
.table-scroll-cue[hidden]{display:none}
.chart-enlarge{margin-top:8px;min-height:32px}
.chart-dialog{width:min(1200px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:16px;border:1px solid #bed4da;border-radius:12px;color:#213d47;background:#fff;overflow:auto}
.chart-dialog::backdrop{background:#17343e80}
.chart-dialog .how-head{position:sticky;top:-16px;z-index:1;background:#fff}
.chart-scroll{max-height:calc(100dvh - 150px);overflow:auto;overscroll-behavior:contain}
.chart-scroll img{display:block;width:max(850px,100%);max-width:none;height:auto}
.chart-instruction{font-size:12px;color:#526a72;margin:8px 0}
@media(max-width:700px){
 .feature-family-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 .feature-family-lines>button{width:100%;min-width:0;padding:7px 8px}
 .feature-family-lines>#featureGroupReset{grid-column:1/-1}
 .cell-detail-dialog::backdrop{background:#17343e33}
}

.condition-date{white-space:nowrap}
#vegValue.filter-value{padding-inline:2px}
@media(max-width:1000px){
 #allFeaturesTable th.feature-col-importance>button[data-feature-sort]{display:flex;width:100%;max-width:none;gap:3px;align-items:flex-start}
 #allFeaturesTable th.feature-col-importance .feature-sort-symbol{width:12px;height:12px;margin-top:1px}
 #allFeaturesTable th.feature-col-importance>.metric-help{position:absolute;right:4px;bottom:2px;min-width:24px;min-height:24px;margin:0}
}

.metric-help-list{margin:.35rem 0;padding-left:1.2rem;display:grid;gap:.15rem}.metric-help-list li{margin:0}

/* Desktop map navigation shares the existing zoom-control corner. */
.leaflet-top.leaflet-left .leaflet-control{float:right;clear:both}
.map-region-control{position:relative;width:84px;margin-top:6px!important;font:12px/1.3 system-ui,-apple-system,sans-serif;color:#213d47}
#regionViewToggle{display:flex;align-items:center;justify-content:space-between;gap:7px;width:84px;min-height:32px;padding:6px 10px;border:1px solid #b9cbd0;border-radius:5px;background:#fff;color:#213d47;font:inherit;font-weight:650;box-shadow:0 1px 5px #0003;cursor:pointer}
#regionViewMenu{position:absolute;right:0;top:calc(100% + 5px);width:152px;max-height:calc(100dvh - 145px);overflow:auto;padding:4px;border:1px solid #b9cbd0;border-radius:7px;background:#fff;box-shadow:0 4px 15px #213d4733}
#regionViewMenu[hidden]{display:none}
#regionViewMenu button{display:block;width:100%;min-height:29px;padding:5px 9px;border:0;border-radius:4px;background:#fff;color:#213d47;text-align:left;font:inherit;cursor:pointer}
#regionViewMenu button:first-child{font-weight:700;border-bottom:1px solid #dbe4e5;border-radius:3px 3px 0 0;margin-bottom:3px}
#regionViewMenu button:hover{background:#e7f1f4}
#regionViewToggle:focus-visible,#regionViewMenu button:focus-visible{outline:2px solid #397e90;outline-offset:-2px;background:#e7f1f4}
@media(min-width:701px){body.cell-open .leaflet-top.leaflet-left{right:362px}}
@media(max-width:700px){.map-region-control{display:none}}

/* Keep feature labels, sorting and help together without stranded icons. */
#allFeaturesTable .feature-header-content{display:flex;align-items:flex-start;gap:4px}
#allFeaturesTable .feature-header-content>button[data-feature-sort]{flex:1;min-width:0;width:auto;max-width:none;align-items:flex-start;min-height:28px}
#allFeaturesTable .feature-header-content .feature-sort-symbol{margin-top:3px}
#allFeaturesTable .feature-header-content>.metric-help{position:static;flex:0 0 28px;width:28px;min-width:28px;height:28px;margin:0;align-self:flex-start}
@media(min-width:1001px){
 #allFeaturesTable .feature-col-importance{width:165px}
 #allFeaturesTable .feature-col-shap{width:185px}
 #allFeaturesTable .feature-col-signedShap{width:160px}
}
@media(max-width:1000px){
 #allFeaturesTable .feature-header-content{gap:2px}
 #allFeaturesTable .feature-col-importance{width:140px}
 #allFeaturesTable .feature-header-content>button[data-feature-sort]{gap:3px}
 #allFeaturesTable .feature-header-content>.metric-help{flex-basis:24px;width:24px;min-width:24px;min-height:24px;height:24px}
}

/* Date coverage belongs to the selected assessment, including archived maps. */
#allFeaturesTable .feature-col-dataDates{width:210px}
@media(max-width:1000px){
 #allFeaturesTable .feature-col-dataDates{display:none;width:0!important;min-width:0!important;padding:0!important;border:0!important}
}

/* Matching disclosure rows in the model-building explanation. */
#howWorksPanel #researchMethods,#howWorksPanel #howEvaluationGuide{margin:10px 0;padding:0;border:1px solid #cfdddf;border-radius:8px;background:#fff}
#howWorksPanel #researchMethods>summary,#howWorksPanel #howEvaluationGuide>summary{padding:12px 14px;margin:0;min-height:44px;font-size:14px;font-weight:650;line-height:1.45;color:#213d47}
#howWorksPanel #researchMethods[open],#howWorksPanel #howEvaluationGuide[open]{padding:0 14px 14px}
#howWorksPanel #researchMethods[open]>summary,#howWorksPanel #howEvaluationGuide[open]>summary{margin:0 -14px 10px;border-bottom:1px solid #e0e8e9}

/* Consistent column contrast and readable annual-comparison labels. */
:is(#howDialog,#cellDetailDialog) table{font-variant-numeric:tabular-nums}
:is(#howDialog,#cellDetailDialog) table tr>:not(:last-child){border-inline-end:1px solid #bfd1d8}
:is(#howDialog,#cellDetailDialog) table thead tr>:not(:last-child){border-inline-end-color:#aec6d0}
#selectedYearTable .research-table{min-width:1180px;table-layout:fixed}
#selectedYearTable .research-table tr>:first-child{width:280px;min-width:280px;max-width:280px;line-height:1.45;overflow-wrap:normal;word-break:normal}
#selectedYearTable .research-table thead th:first-child{z-index:2}

.cell-inputs .score-input-list .input-effect{font-size:18px;line-height:1.3;font-weight:700;font-variant-numeric:tabular-nums;align-self:start}

@media(min-width:1001px) and (max-width:1450px){
 #allFeaturesTable{width:100%;min-width:0;table-layout:fixed}
 #allFeaturesTable th,#allFeaturesTable td{padding:9px 8px}
 #allFeaturesTable .feature-col-rank{width:70px;left:0}
 #allFeaturesTable .feature-col-name{width:210px;left:70px}
 #allFeaturesTable .feature-col-importance{width:150px}
 #allFeaturesTable .feature-col-shap{width:170px}
 #allFeaturesTable .feature-col-signedShap{width:145px}
 #allFeaturesTable .feature-col-group{width:115px}
 #allFeaturesTable .feature-col-source{width:170px}
 #allFeaturesTable .feature-col-dataDates{width:170px}
}

/* Score direction has its own tint, independent of the feature family. */
.score-directions>.factor-group:first-child{background:#fff1ed;border:1px solid #efd5ce}
.score-directions>.factor-group:last-child{background:#edf5fc;border:1px solid #cfdfed}
.score-directions>.factor-group .factor-rows>li{background:transparent}

@media(max-width:700px){.cell-inputs .score-input-list{grid-template-columns:minmax(0,1fr)}}

/* Desktop formatting review: compact controls and one Features scroll surface. */
@media(min-width:1001px){
 #featureFamilies.feature-family-lines{flex-direction:row;align-items:center;gap:8px}
 #howDialog[data-view="features"] .feature-table-scroll{max-height:none;overflow:visible}
 #howDialog[data-view="features"] #allFeaturesTable thead th{position:sticky;top:76px;z-index:4}
 #howDialog[data-view="model"]{width:min(1280px,calc(100vw - 48px))}
 #selectedYearTable .research-table{width:100%;min-width:0;table-layout:fixed}
 #selectedYearTable .research-table th,#selectedYearTable .research-table td{padding:10px 7px;font-variant-numeric:tabular-nums}
 #selectedYearTable .research-table tr>:first-child{width:280px;min-width:280px;max-width:280px}
 #modelFacts .input-comparison thead th:not(:first-child){white-space:nowrap}
 #modelFacts .input-comparison thead .metric-help{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;min-width:22px;min-height:24px;margin-left:3px}
 .cell-detail-dialog{left:362px;right:362px;width:auto;max-width:760px;margin-left:auto}
 .cell-panel .cell-summary-nav{position:sticky;bottom:-16px;z-index:3;background:#fcfefe;padding:10px 0 16px;box-shadow:0 -8px 12px #fcfefef0}
}
#allFeaturesTable .feature-header-content{align-items:center;gap:4px}
#allFeaturesTable .feature-header-content>.metric-help{flex-shrink:0}
#allFeaturesTable td{font-variant-numeric:tabular-nums}

@media(min-width:1001px){#allFeaturesTable .feature-detail-dataDates{display:none}}

/* Reviewed Results spacing, column balance and compact interpretation. */
#modelFacts .results-main{border-bottom:0;margin-bottom:0;padding-bottom:0}
#modelFacts .input-comparison{table-layout:fixed}
#modelFacts .input-comparison th:first-child{width:44%;min-width:260px}
#modelFacts .input-comparison tr>:last-child{width:10%}
#modelFacts .input-comparison th,#modelFacts .input-comparison td{padding:8px 10px}
#modelFacts .input-comparison .results-column-heading{display:flex;align-items:center;gap:4px;min-height:40px;white-space:normal}
#modelFacts .input-comparison .results-heading-label{min-width:0;white-space:normal;overflow-wrap:normal;word-break:normal}
#modelFacts .input-comparison thead .metric-help{flex:0 0 22px;min-width:22px;min-height:28px;margin:0}
#modelFacts .input-comparison .map-model-tag{margin-bottom:5px}
#modelFacts .input-comparison .comparison-inputs{margin-top:6px}
#modelFacts .results-takeaway{margin:10px 0 12px;padding:10px 12px;border-left:3px solid #779ca9;background:#f3f8fa;color:#35545e;font-size:13px;line-height:1.5}
.results-note>.metric-help,.score-reference-help>.metric-help{margin-left:5px;vertical-align:middle}
#modelFacts .results-takeaway{max-width:none}
#currentEvaluation{margin:0}
#currentEvaluation>.research-method:first-child{border-top:0;padding-top:0}

/* Shared GSRIT map header. Scientific map colours remain independent of theme. */
:root{--header-height:80px;--ui-bg:#fff;--ui-ink:#213d47;--ui-muted:#526a72;--ui-line:#cbd9da;--ui-soft:#f1f5f6;--ui-link:#236d80}
:root[data-theme=dark]{color-scheme:dark;--ui-bg:#111;--ui-ink:#eee;--ui-muted:#bdbdbd;--ui-line:#444;--ui-soft:#242424;--ui-link:#9bd7e5;color:var(--ui-ink);background:#000}
#dataset-bar{position:fixed;inset:0 0 auto;z-index:1000;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;min-height:80px;padding:12px 18px;background:var(--ui-bg);color:var(--ui-ink);border-bottom:1px solid var(--ui-line)}
#dataset-bar .dataset-title{min-width:0}
#dataset-bar h1{font-size:18px;line-height:1.35;font-weight:700;margin:0}
#dataset-scope{font-size:14px;font-weight:650;line-height:1.4;margin:5px 0 0;color:var(--ui-muted)}
#dataset-bar .dataset-actions{display:grid;grid-template-columns:repeat(4,max-content);gap:7px;align-items:center}
#dataset-bar button{font:inherit;font-size:12px;font-weight:600;line-height:1.3;min-height:40px;padding:8px 12px;border:1px solid var(--ui-line);border-radius:7px;background:var(--ui-soft);color:var(--ui-ink);cursor:pointer;white-space:nowrap}
#dataset-bar button:hover{filter:brightness(1.15)}
#dataset-bar button:focus-visible{outline:3px solid var(--ui-link);outline-offset:2px}
#dataset-bar button:disabled{opacity:.4;cursor:default}
#dataset-bar .header-zoom{display:flex;border:1px solid var(--ui-line);border-radius:7px;overflow:hidden}
#dataset-bar .header-zoom button{border:0;border-radius:0;width:40px;min-height:38px;padding:0;font-size:22px}
#dataset-bar .header-zoom button+button{border-left:1px solid var(--ui-line)}
#panel{top:calc(var(--header-height) + 12px);max-height:calc(100dvh - var(--header-height) - 54px)}
#panel .panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
#panel .panel-heading .title-help{width:auto}
#panel #filters-title{font-size:18px;line-height:1.3;margin:0;font-weight:700;color:inherit}
#panel .panel-heading #collapse{position:static;min-width:36px;min-height:36px}
#panel.collapsed .intro{display:none}
.leaflet-top.leaflet-left{top:calc(var(--header-height) + 12px)}
.cell-panel{top:calc(var(--header-height) + 12px);max-height:calc(100dvh - var(--header-height) - 28px)}
html[data-map-style=dark] .leaflet-tile-pane{filter:grayscale(1) invert(1) brightness(.7)}
html[data-map-style=light] .leaflet-tile-pane{filter:grayscale(1) contrast(1.15)}
html[data-map-style=colour] .leaflet-tile-pane{filter:none}
html[data-map-style=dark] #map{background:#080808}
html[data-map-style=light] #map,html[data-map-style=colour] #map{background:#e3ecec}
/* Dark surfaces and readable secondary text, without recolouring scientific graphics. */
[data-theme=dark] :is(#panel,#howDialog,#cellPanel,#cellDetailDialog,#chartDialog,.how-head,.cell-detail-head,.cell-panel-toolbar,.assessment-source-popover,.definition-tip,.metric-tooltip,.feature-meaning-popover,.map-region-control,#regionViewMenu,#mapNote,.basemap-status){background:var(--ui-bg);color:var(--ui-ink);border-color:var(--ui-line);box-shadow:0 5px 24px #0005}
[data-theme=dark] :is(#panel,#howDialog,#cellPanel,#cellDetailDialog,.assessment-source-popover) :is(p,small,label,summary,dt,dd,li,h2,h3,h4,h5,figcaption){color:var(--ui-ink)}
[data-theme=dark] :is(#panel,#howDialog,#cellPanel,#cellDetailDialog,.assessment-source-popover) :is(.intro,.hint,.source-note,.source-age,.view-note,.cell-subtitle,.cell-note,.input-value,.input-source,.input-help,.score-note,.condition-period,.condition-use,.cell-rank small,.rank-scale-labels span,.veg-scale-labels span,.coverage-legend,#counts){color:var(--ui-muted)}
[data-theme=dark] :is(button,select,input[type=search],input[type=number],input[type=text]){background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] :is(#panel,#howDialog,#cellPanel,#cellDetailDialog) :is(button,select){color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] :is(button,select):focus-visible{outline:2px solid var(--ui-link);outline-offset:2px}
[data-theme=dark] a{color:var(--ui-link)}
[data-theme=dark] :is(td,th,details,.condition-group-title,.condition-group-heading,.importance-row,.cell-context,.cell-detail-head,.cell-panel-toolbar){border-color:var(--ui-line)}
[data-theme=dark] :is(.condition-card,.condition-grid>div,.quick-condition,.factor-group,.score-input-list li,.worldcover-inset,.pipeline-card,.pipeline-node,.assessment-node,.automation-grid section,.scope-note,.results-takeaway,.result-finding,.importance-panel,.research-method,.coverage-family,.data-status-card,.cell-data-status>div,.score-calculation>div,.method-topics>details){background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] :is(.condition-card,.quick-condition,.score-input-list,.cell-context) :is(span,strong,b,small){color:var(--ui-ink)}
[data-theme=dark] :is(.score-directions>.factor-group:first-child,.cell-panel .score-directions>.factor-group:first-child){background:#302321;border-color:#674039}
[data-theme=dark] :is(.score-directions>.factor-group:last-child,.cell-panel .score-directions>.factor-group:last-child){background:#1e2b35;border-color:#3d576b}
[data-theme=dark] .up{color:#ffae98}
[data-theme=dark] .down{color:#9acbee}
[data-theme=dark] :is(.neutral,.loading){color:var(--ui-muted)}
[data-theme=dark] :is(.stale,#error){color:#ffc18c}
[data-theme=dark] .leaflet-control-attribution{background:#111e;color:#bbb}
[data-theme=dark] .leaflet-control-scale-line{background:#111d;color:#ddd;border-color:#aaa;text-shadow:none}
[data-theme=dark] #regionViewToggle,[data-theme=dark] #regionViewMenu button{background:var(--ui-soft);color:var(--ui-ink)}
[data-theme=dark] :is(#howDialog,#cellDetailDialog) :is(table,thead,tbody,tr,th,td){background:var(--ui-bg);color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] :is(#howDialog,#cellDetailDialog) thead th{background:var(--ui-soft)}
[data-theme=dark] :is(#howDialog,#cellDetailDialog) :is(.family-landscape,.family-calendar,.family-weather,.family-vegetation,.selected-model-row)>:is(th,td){background:var(--ui-soft)}
[data-theme=dark] :is(#howDialog,#cellDetailDialog) :is(.research-method,.results-takeaway,.scope-note,.comparison-base-note,.map-model-tag,.feature-family-lines button,.feature-group-label,.coverage-family-heading,.method-topics details){background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] :is(#howDialog,#cellDetailDialog) :is(th,td) :is(span,strong,b,small){color:inherit}
[data-theme=dark] :is(#howDialog,#cellDetailDialog) :is(.research-method,.results-takeaway,.scope-note) summary{color:var(--ui-ink)}
@media(max-width:1000px){#dataset-bar{gap:12px;padding:10px 14px}#dataset-bar h1{font-size:16px}#dataset-scope{font-size:12px}#dataset-bar button{font-size:11px;padding:8px}}
@media(max-width:700px){
 #dataset-bar{grid-template-columns:minmax(0,1fr);gap:8px;padding:9px max(8px,env(safe-area-inset-left)) 9px max(8px,env(safe-area-inset-right))}
 #dataset-bar h1{font-size:15px}#dataset-scope{font-size:12px;margin-top:3px}
 #dataset-bar .dataset-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) 90px minmax(0,1fr);gap:4px}
 #dataset-bar button{min-width:0;min-height:44px;padding:5px 4px;white-space:normal}
 #dataset-bar .header-zoom button{width:44px;min-height:42px}
 #panel{top:calc(var(--header-height) + 8px);max-height:min(45dvh,calc(100dvh - var(--header-height) - 70px))}
 .cell-panel,.cell-panel.status-open{top:auto;max-height:calc(100dvh - var(--header-height) - 16px)}
}
/* Match family tints and nested cards to the selected interface theme. */
:root[data-theme=dark]{--family-landscape:#282b2e;--family-calendar:#352e20;--family-weather:#20303c;--family-vegetation:#203429;--family-biomass:#332b22}
[data-theme=dark] #panel .intro{background:#20292c;color:#d8e5e9;border-color:#48717a}
[data-theme=dark] #panel #collapse,[data-theme=dark] #panel #featuresOpen,[data-theme=dark] #howDialog #featureSearch{background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] #panel::after{background:linear-gradient(#1110,#111)}
[data-theme=dark] #cellPanel .cell-result,[data-theme=dark] #cellPanel .quick-condition,[data-theme=dark] #cellPanel .quick-condition .condition-period,[data-theme=dark] #cellPanel .cell-driver,[data-theme=dark] #howDialog .data-coverage{background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] #cellPanel .quick-condition[data-feature-family=vegetation]{background:var(--family-vegetation);border-color:#42634b}
[data-theme=dark] #cellPanel .cell-summary-nav{background:var(--ui-bg);box-shadow:0 -8px 12px #111f}
[data-theme=dark] #modelFacts .comparison-base-note strong,[data-theme=dark] #howDialog caption{color:var(--ui-muted)}
[data-theme=dark] #modelFacts .input-comparison tr.selected-model-row>:is(th,td){background:#203429;color:var(--ui-ink)}
[data-theme=dark] #modelFacts .input-comparison .map-model-tag{background:#36533c;color:#e6f4e8}
[data-theme=dark] #cellPanel .quick-driver{background:var(--ui-soft);color:var(--ui-ink)}
[data-theme=dark] :is(#howDialog,#cellDetailDialog) :is(.version-record>div,.version-record code,.model-settings-grid>div,.source-card,.pipeline-map,.training-grid>div){background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] .assessment-source-list strong{color:var(--ui-ink)}
[data-theme=dark] #howDialog :is(.dataset-period,#howWorksPanel #researchMethods,#howWorksPanel #howEvaluationGuide){background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] #howDialog :is(.training-counts,.how-steps strong,.how-step strong,#howWorksPanel strong){color:var(--ui-ink)}
[data-theme=dark] #modelFacts .research-table tr>th:first-child{background:var(--ui-soft);color:var(--ui-ink)}
[data-theme=dark] #cellPanel :is(.cell-rank-direction,.cell-rank-position){filter:brightness(1.85)}
[data-theme=dark] #cellPanel .cell-rank-scope{color:var(--ui-muted)}
[data-theme=dark] #howWorksPanel :is(#researchMethods,#howEvaluationGuide)>summary{color:var(--ui-ink)}

/* GSRIT workspace: one scrollable control body and one Results drawer. */
#panel{display:flex;flex-direction:column;overflow:hidden;padding:16px;width:310px;max-height:calc(100dvh - var(--header-height) - 36px)}
#panel>header{flex:none}
#panel #controls{min-height:0;overflow:auto;overscroll-behavior:contain;padding-right:2px}
#panel .intro{font-size:12px;padding:8px 10px;margin:10px 0}
#selection-summary{margin:8px 0 3px;font-size:12px;font-weight:650;color:var(--ui-ink)}
#selection-count{margin:0 0 10px;font-size:12px;line-height:1.4;color:var(--ui-muted)}
#panel.collapsed{display:flex;width:250px;height:auto;min-height:0;max-height:calc(100dvh - var(--header-height) - 24px);padding:12px}
#panel.collapsed .panel-heading{display:flex;width:auto;height:auto;margin:0;gap:10px}
#panel.collapsed .panel-heading .title-help{display:block}
#panel.collapsed .panel-heading #collapse{width:40px;height:40px;min-height:40px}
#panel.collapsed header>#selection-summary,#panel.collapsed header>#selection-count{display:block}
#panel.collapsed #selection-count{margin-bottom:0}
#panel #counts{display:none}
#panel::after{display:none}
#panel .control-group{margin:10px 0 0;padding:12px;border:1px solid var(--ui-line);border-radius:9px;background:var(--ui-soft)}
#panel .control-group>summary{font-size:13px;line-height:1.4;min-height:30px;cursor:pointer;color:var(--ui-ink)}
#panel .control-group[open]>summary{padding-bottom:10px;border-bottom:1px solid var(--ui-line)}
#panel #layers-summary{display:block;margin:4px 0 0 15px;font-size:12px;font-weight:400;color:var(--ui-muted)}
#panel label{font-size:13px;line-height:1.4}
#panel :is(.rank-scale-labels,.veg-scale-labels,.coverage-legend,.fire-note){font-size:12px;line-height:1.4}
#panel .assessment-label-row label{margin:0;font-size:13px}
#panel .assessment-navigation{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:5px;align-items:center;margin-top:6px}
#panel .assessment-navigation select{margin:0;min-width:0;min-height:40px;padding:7px;font-size:14px}
#panel .assessment-navigation button{height:40px;padding:0;font-size:20px;border:1px solid var(--ui-line);border-radius:6px;background:var(--ui-bg);color:var(--ui-ink);cursor:pointer}
#panel .assessment-navigation button:disabled{opacity:.4;cursor:default}
#assessment-position{font-size:12px;color:var(--ui-muted);margin:7px 0 0;line-height:1.4}
#panel .filter-help-button{min-width:40px;min-height:40px}
#panel .assessment-date-help{align-items:center}
#dataset-bar{gap:6px 20px;min-height:88px;padding-block:8px}
#dataset-bar .dataset-title{grid-row:1 / 3;align-self:center}
#dataset-bar .dataset-actions{grid-column:2;grid-row:1}
#dataset-bar .map-region-control{position:relative;grid-column:2;grid-row:2;justify-self:end;display:block;margin:0;float:none;clear:none;background:none;border:0;box-shadow:none}
#dataset-bar #regionViewToggle{min-height:30px;font-size:12px;padding:4px 8px;box-shadow:none}
#dataset-bar #regionViewMenu{position:absolute;top:calc(100% + 5px);right:0;left:auto;width:190px;max-height:min(330px,60dvh);overflow:auto;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-bg)}
#dataset-bar #regionViewMenu button{display:block;width:100%;min-height:40px;text-align:left;border:0;border-radius:0}
#results-toggle{position:fixed;z-index:850;right:16px;top:calc(var(--header-height) + 12px);display:flex;align-items:center;justify-content:space-between;gap:28px;width:210px;min-height:52px;padding:12px 16px;background:var(--ui-bg);color:var(--ui-ink);border:1px solid var(--ui-line);border-radius:12px;font:inherit;font-size:18px;font-weight:700;box-shadow:0 5px 20px #0003;cursor:pointer}
body.results-open #results-toggle,body.cell-open #results-toggle{display:none}
#howDialog[open]{display:block;position:fixed;inset:calc(var(--header-height) + 12px) 16px auto auto;margin:0;width:480px;max-width:calc(100vw - 360px);height:calc(100dvh - var(--header-height) - 28px);max-height:calc(100dvh - var(--header-height) - 28px);padding:0;overflow:auto;overscroll-behavior:contain;border-radius:12px;z-index:950;container-type:inline-size}
#howDialog[open].is-expanded{width:calc(100vw - 360px)}
#howDialog .how-head{display:block;position:sticky;top:0;z-index:10;padding:14px 16px 12px;background:var(--ui-bg);border-bottom:1px solid var(--ui-line);backdrop-filter:none}
#howDialog .results-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
#howDialog #howTitle{font-size:20px;margin:0}
#howDialog .results-actions{display:flex;align-items:center;gap:8px}
#results-expand{min-height:36px;padding:6px 10px;border:1px solid var(--ui-line);border-radius:6px;background:var(--ui-soft);color:var(--ui-ink);font:inherit;font-size:12px;cursor:pointer}
#howDialog #howClose{width:36px;height:36px;background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
#results-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:12px}
#results-tabs button{padding:9px 5px;min-height:42px;font:inherit;font-size:12px;font-weight:600;line-height:1.25;background:var(--ui-soft);color:var(--ui-ink);border:1px solid var(--ui-line);border-radius:6px;cursor:pointer}
#results-tabs button[aria-selected=true]{border-color:#75b7c7;background:#dceef2;color:#143e4b;box-shadow:inset 0 -2px #397e90}
[data-theme=dark] #results-tabs button[aria-selected=true]{background:#34464b;border-color:#80b7c4;color:#f0f7f8}
#howDialog>[role=tabpanel]{scroll-margin-top:130px}
#howDialog #trainingWorkflow{margin-top:0}
#howDialog .feature-loading{padding:20px 0;color:var(--ui-muted);font-size:14px}
#howDialog .feature-family-lines{grid-template-columns:repeat(2,minmax(0,1fr))}
#howDialog .feature-table-scroll{scroll-padding-top:0}
#cellDetailDialog{top:calc(var(--header-height) + 12px);max-height:calc(100dvh - var(--header-height) - 28px)}
#cellDetailClose{background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] #howDialog #allFeaturesTable .feature-mobile-details td{background:var(--ui-soft);color:var(--ui-ink)}
[data-theme=dark] #howDialog #allFeaturesTable .feature-mobile-details dl,[data-theme=dark] #howDialog #allFeaturesTable .feature-mobile-details dl>div{background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
[data-theme=dark] #cellDetailDialog .score-calculation{background:var(--ui-soft);border-color:var(--ui-line)}
[data-theme=dark] #panel .assessment-navigation select{background:var(--ui-bg);color:var(--ui-ink)}
@container (max-width:1050px){
 #allFeaturesTable{width:100%;min-width:0;table-layout:fixed}
 #howDialog #allFeaturesTable .feature-col-rank{width:40px;left:0}
 #howDialog #allFeaturesTable .feature-col-name{width:auto;left:auto;min-width:0}
 #howDialog #allFeaturesTable .feature-col-importance{width:110px}
 #howDialog #allFeaturesTable :is(.feature-col-shap,.feature-col-signedShap,.feature-col-group,.feature-col-unit,.feature-col-source,.feature-col-cadence,.feature-col-dataDates,.feature-col-definition,.feature-col-rationale,.feature-col-median){display:none;width:0!important;min-width:0!important;padding:0!important;border:0!important}
 #howDialog #allFeaturesTable th,#howDialog #allFeaturesTable td{padding:9px 6px}
 #howDialog .feature-mobile-details dl{grid-template-columns:1fr}
 #howDialog .feature-mobile-details dl>div{display:block;padding-left:0;border-left:0}
 #howDialog .feature-table-scroll{max-height:none;overflow:visible}
 #howDialog #modelFacts .input-comparison{min-width:0;width:100%;table-layout:fixed}
 #howDialog #modelFacts .input-comparison tr>:first-child{width:65%;min-width:0}
 #howDialog #modelFacts .input-comparison tr>:nth-child(n+3){display:none}
 #howDialog #modelFacts .input-comparison tr>:nth-child(2){width:35%}
 #howDialog .coverage-table{min-width:0;font-size:12px}
 #howDialog .coverage-table th,#howDialog .coverage-table td{padding:7px 5px}
 #howDialog .coverage-family-count{min-width:0}
 #howDialog .coverage-table th[scope=row]{width:30%}
 #howDialog .coverage-table .coverage-number{white-space:normal}
 #howDialog .model-settings-grid{grid-template-columns:1fr}
}
@media(max-width:1100px){
 #panel{left:8px;right:8px;width:auto;max-height:calc(100dvh - var(--header-height) - 24px);top:calc(var(--header-height) + 8px);padding:12px}
 #panel.collapsed{width:250px;right:auto;max-width:calc(100vw - 16px);padding:10px 12px}
 #panel #controls{max-height:none}
 #panel .panel-heading #collapse,#panel.collapsed .panel-heading #collapse{width:44px;height:44px;min-height:44px}
 #panel .control-group>summary{min-height:44px;display:list-item;padding-block:9px}
 #panel :is(select,input:not([type=checkbox]):not([type=radio])){font-size:16px;min-height:44px}
 #panel .filter-help-button{min-width:44px;min-height:44px}
 #panel .assessment-navigation{grid-template-columns:44px minmax(0,1fr) 44px}
 #panel .assessment-navigation select{min-height:44px;font-size:16px}
 #panel .assessment-navigation button{height:44px}
 #panel :is(.coverage-toggle,.assessment-date-help){min-height:44px}
 #panel .coverage-toggle input{width:22px;height:22px}
 #results-toggle{top:auto;bottom:max(8px,env(safe-area-inset-bottom));left:8px;right:8px;width:auto;min-height:48px}
 #howDialog[open],#howDialog[open].is-expanded{inset:calc(var(--header-height) + 8px) 8px auto;width:calc(100vw - 16px);max-width:none;height:calc(100dvh - var(--header-height) - 16px);max-height:calc(100dvh - var(--header-height) - 16px)}
 #results-expand{display:none}
 #howDialog #howClose,#results-tabs button{min-height:44px}
 #howDialog #howClose{width:44px}
 #howDialog :is(select,input[type=search]){min-height:44px;font-size:16px}
 body.results-open #panel,body.cell-open #panel{visibility:hidden}
 #cellDetailDialog{inset:calc(var(--header-height) + 8px) 8px auto;width:calc(100vw - 16px);max-height:calc(100dvh - var(--header-height) - 16px)}
 #dataset-bar .header-zoom button{width:44px;min-height:42px}
 #dataset-bar .dataset-actions>button{min-height:44px}
 #dataset-bar #regionViewToggle,#dataset-bar #regionViewMenu button{min-height:44px}
 #howDialog .feature-details-toggle,#howDialog .metric-help{min-height:44px}
}
@media(max-width:700px){
 #dataset-bar{grid-template-columns:minmax(0,1fr);gap:5px;min-height:0}
 #dataset-bar .dataset-title,#dataset-bar .dataset-actions,#dataset-bar .map-region-control{grid-column:1;grid-row:auto}
 #dataset-bar .map-region-control{justify-self:end}
 #dataset-bar #regionViewToggle{padding:4px 8px;font-size:12px}
 #panel{max-height:calc(100dvh - var(--header-height) - 72px)}
 #howDialog .how-head{padding:10px}
 #results-tabs{gap:4px;margin-top:9px}
 #results-tabs button{font-size:12px;padding:5px 3px}
 .cell-panel,.cell-panel.status-open{max-height:calc(100dvh - var(--header-height) - 16px)}
}
@media(max-height:500px) and (max-width:1100px){
 #dataset-bar{grid-template-columns:minmax(0,1fr) auto}
 #dataset-bar .dataset-title{grid-column:1;grid-row:1 / 3}
 #dataset-bar .dataset-actions{grid-column:2;grid-row:1}
 #dataset-bar .map-region-control{grid-column:2;grid-row:2}
 #dataset-bar h1{font-size:14px}
 #dataset-bar #dataset-scope{font-size:11px}
 #panel.collapsed #selection-count{display:none}
 #panel.collapsed{padding:6px 10px}
 #panel.collapsed #selection-summary{margin:0;font-size:11px}
}

#dataset-bar .map-region-control{width:auto;min-width:0}
#dataset-bar #regionViewToggle{width:auto;white-space:nowrap}
#results-tabs button{margin:0;width:auto;text-align:center}
#howDialog .feature-family-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
#howDialog .feature-family-lines>button{margin:0;min-width:0;padding:8px;font-size:13px}
@container (min-width:1051px){#howDialog .feature-family-lines{grid-template-columns:repeat(4,minmax(0,1fr))}}
