/* Session scenario navigation and read-only comparisons. */
.scenario-shelf{margin:0 0 20px;border:1px solid #d7e1ea;border-radius:9px;background:#fff;color:#29465f;overflow:hidden;min-width:0}
.scenario-shelf *{box-sizing:border-box}
.scenario-shelf-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid #e3eaf0;background:#f7f9fc}
.scenario-shelf-scenarios,.scenario-shelf-modes{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.scenario-shelf button,.scenario-shelf input,.scenario-shelf select{font:inherit;font-size:14px!important}
.scenario-shelf button{min-height:39px;border:1px solid transparent;border-radius:5px;background:transparent;padding:8px 12px;color:#526e85;cursor:pointer;line-height:1.45}
.scenario-shelf button:hover{background:#eaf0f6;color:#294f70}
.scenario-shelf button:disabled{opacity:.48;cursor:default}
.scenario-shelf button[aria-selected=true]{background:#fff;border-color:#ccd9e5;color:#203f5d;font-weight:650;box-shadow:0 1px 3px #263e5510}
.scenario-shelf button small{display:block;font-size:10px!important;letter-spacing:.03em;color:#66839c;line-height:1.4;margin-top:2px}
.scenario-shelf .scenario-shelf-new{border:1px dashed #b9cddd;color:#3c6688;margin-left:4px}
.scenario-shelf-modes{padding:3px;background:#edf2f7;border:1px solid #dce5ee;border-radius:6px}
.scenario-shelf-modes button{min-height:34px;padding:6px 10px}
.scenario-shelf-modes button[aria-pressed=true]{background:#284b6c;color:#fff}
.scenario-shelf :is(button,input,select):focus-visible{outline:2px solid #497fa8;outline-offset:3px}
.scenario-shelf-caption{display:flex;align-items:center;gap:22px;padding:14px 18px 5px}
.scenario-shelf-caption label{font-size:11px!important;color:#6f8496;letter-spacing:.03em;min-width:155px}
.scenario-shelf-caption input{display:block;border:0;border-bottom:1px solid #d7e2ec;color:#31516d;width:190px;max-width:100%;padding:6px 0;background:#fff;min-height:35px}
.scenario-shelf-caption p,.scenario-shelf-status,.scenario-shelf-note{font-size:12px!important;line-height:1.7!important;color:#6b7e8f;margin:0}
.scenario-shelf-caption p{max-width:860px}
.scenario-shelf-status{padding:5px 18px 14px}
.scenario-shelf-comparison{border-top:1px solid #dce5ee;padding:18px}
.scenario-shelf-pair{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-bottom:18px}
.scenario-shelf-pair label,.scenario-shelf-difference-heading label{display:grid;gap:7px;font-size:12px!important;color:#677f93}
.scenario-shelf select{min-height:39px;min-width:180px;border:1px solid #cddbe7;background:#fff;color:#325674;border-radius:5px;padding:7px 10px;max-width:100%}
.scenario-shelf-pair>span{padding-top:22px;color:#8aa0b3}
.scenario-shelf-pair>p{font-size:12px!important;line-height:1.7!important;color:#708696;max-width:430px;margin:18px 0 0 auto}
.scenario-shelf-side-by-side,.scenario-shelf-two-metrics{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
.scenario-shelf-card{min-width:0;border:1px solid #dce5ee;border-radius:7px;background:#fff;overflow:hidden}
.scenario-shelf-card>header{padding:18px 19px 0}
.scenario-shelf-card header>span{font-size:10px!important;letter-spacing:.12em;color:#96713f}
.scenario-shelf-card h3,.scenario-shelf-curtain h3{font-size:21px!important;line-height:1.35!important;margin:7px 0;color:#284f70}
.scenario-shelf-card header>p:not(.scenario-shelf-source){font-size:14px!important;line-height:1.6!important;color:#526f88;margin:7px 0}
.scenario-shelf-source{font-size:12px!important;line-height:1.75!important;color:#6f8294;margin:9px 0}
.scenario-shelf-source a{color:#426d91}
.scenario-shelf-map{display:block;width:100%;height:auto;max-height:540px;min-height:0;background:#fbfcfe}
.scenario-shelf-metrics{display:grid;grid-template-columns:1fr 1fr;gap:15px 17px;padding:16px 19px;margin:0;border-top:1px solid #e4ebf2;background:#f9fbfd}
.scenario-shelf-metrics>div{min-width:0}
.scenario-shelf-metrics dt{font-size:11px!important;line-height:1.6!important;color:#6a8194}
.scenario-shelf-metrics dd{margin:3px 0 0;font-size:18px!important;line-height:1.5!important;color:#315b7f;font-weight:650}
.scenario-shelf-summary,.scenario-shelf-county-differences table{width:100%;border-collapse:collapse;font-size:13px!important;color:#496780}
.scenario-shelf-summary caption{text-align:left;padding:16px 17px 10px;font-size:11px!important;letter-spacing:.03em;color:#7c8f9f}
.scenario-shelf-summary :is(th,td){text-align:right;padding:10px 14px;border-top:1px solid #e9eef4;font-size:12px!important;line-height:1.6!important}
.scenario-shelf-summary th:first-child{text-align:left;font-weight:500;max-width:220px}
.scenario-shelf-summary thead th{font-size:10px!important;color:#7a8e9f;background:#fbfcfe}
.scenario-shelf-summary th i{display:inline-block;width:5px;height:13px;margin-right:7px;border-radius:2px;vertical-align:middle}
.scenario-shelf-curtain{border:1px solid #dce5ee;border-radius:7px;overflow:hidden}
.scenario-shelf-curtain>.scenario-shelf-map{max-height:600px}
.scenario-shelf-curtain-labels,.scenario-shelf-difference-sources{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:14px 19px}
.scenario-shelf-curtain-labels>div:last-child{text-align:right}
.scenario-shelf-curtain-range{display:flex;align-items:center;gap:15px;margin:17px 20px;font-size:13px!important;color:#506f89}
.scenario-shelf-curtain-range input{flex:1;min-width:60px;accent-color:#416f96}
.scenario-shelf-curtain-range output{min-width:42px;text-align:right;font-size:13px!important}
.scenario-shelf-curtain>.scenario-shelf-note{padding:0 20px 18px}
.scenario-shelf-two-metrics{gap:0;border-top:1px solid #e4ebf2}
.scenario-shelf-two-metrics h4{font-size:14px!important;margin:16px 20px 10px;color:#496c8a}
.scenario-shelf-two-metrics .scenario-shelf-metrics{border:0;background:#fff}
.scenario-shelf-difference{border:1px solid #dce5ee;border-radius:7px;overflow:hidden}
.scenario-shelf-difference-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px}
.scenario-shelf-difference-heading>div{text-align:right}
.scenario-shelf-difference-heading span,.scenario-shelf-difference-heading small{display:block;color:#72899c;font-size:12px!important;line-height:1.7!important}
.scenario-shelf-difference-heading strong{display:block;font-size:31px!important;line-height:1.4!important;color:#315f82}
.scenario-shelf-difference-legend{display:flex;align-items:center;justify-content:center;gap:12px;padding:15px;font-size:12px!important;color:#6d8395}
.scenario-shelf-difference-legend i{display:block;width:180px;height:9px;border-radius:20px;background:linear-gradient(90deg,#be4353,#f9f9f9,#1f6f9d)}
.scenario-shelf-difference>.scenario-shelf-note{padding:0 20px 16px;max-width:900px;margin:auto;text-align:center}
.scenario-shelf-difference-sources{border-top:1px solid #e5edf4}
.scenario-shelf-difference-sources h4{font-size:14px!important;color:#466782;margin:4px 0}
.scenario-shelf-county-differences{border-top:1px solid #dfe8f0}
.scenario-shelf-county-differences summary{padding:17px 20px;cursor:pointer;font-size:14px!important;color:#3d6383}
.scenario-shelf-table-scroll{max-height:360px;overflow:auto}
.scenario-shelf-county-differences :is(th,td){padding:11px 17px;border-top:1px solid #edf2f6;text-align:right;font-size:12px!important;line-height:1.7!important}
.scenario-shelf-county-differences th:first-child{text-align:left;font-weight:500}
.scenario-shelf-county-differences thead th{position:sticky;top:0;background:#f7f9fc;color:#74899b}
.scenario-shelf-empty{padding:20px;color:#6d8295;font-size:14px!important;line-height:1.7!important}
#coalitionContent.cs-session-comparing :is(#csStudioMount,#csResults,#csStale){display:none!important}
@media(max-width:900px){.scenario-shelf-toolbar{align-items:stretch}.scenario-shelf-scenarios,.scenario-shelf-modes{width:100%}.scenario-shelf-modes button{flex:1}.scenario-shelf-pair>p{max-width:none;margin:0;width:100%}.scenario-shelf-side-by-side{gap:12px}.scenario-shelf-card header{padding:14px 13px 0}.scenario-shelf-metrics{padding:14px 13px;gap:12px}.scenario-shelf-summary :is(th,td){padding:9px 10px}}
@media(max-width:680px){.scenario-shelf-caption{display:block;padding:14px 15px 5px}.scenario-shelf-caption p{margin-top:10px}.scenario-shelf-caption input{width:100%}.scenario-shelf-status{padding:5px 15px 13px}.scenario-shelf-comparison{padding:12px}.scenario-shelf-side-by-side{grid-template-columns:1fr}.scenario-shelf-pair{gap:9px}.scenario-shelf-pair label{flex:1;min-width:0}.scenario-shelf-pair select{min-width:0;width:100%}.scenario-shelf-pair>span{display:none}.scenario-shelf-modes{gap:3px}.scenario-shelf-modes button{padding:7px 6px;font-size:12px!important}.scenario-shelf-difference-heading{display:block;padding:15px}.scenario-shelf-difference-heading>div{text-align:left;margin-top:16px}.scenario-shelf-difference-heading select{width:100%}.scenario-shelf-curtain-labels,.scenario-shelf-difference-sources{padding:12px;gap:12px}.scenario-shelf-curtain h3{font-size:17px!important}.scenario-shelf-curtain-range{margin:14px 12px;gap:8px;font-size:12px!important}.scenario-shelf-two-metrics{grid-template-columns:1fr}.scenario-shelf-summary th:first-child{max-width:170px}.scenario-shelf-difference-legend i{width:120px}.scenario-shelf-county-differences :is(th,td){padding:10px;font-size:11px!important}}

/* Keep scenario navigation compact so the map remains the primary surface. */
.scenario-shelf{margin-bottom:14px}
.scenario-shelf-toolbar{padding:9px 12px;gap:10px}
.scenario-shelf button small{display:inline;margin:0 0 0 7px;color:#2c897b;font-size:9px!important;vertical-align:middle}
.scenario-shelf-caption{gap:18px;padding:8px 16px}
.scenario-shelf-caption label{display:flex;align-items:center;gap:10px;min-width:260px;white-space:nowrap}
.scenario-shelf-caption input{width:165px;min-height:31px;padding:3px 0}
.scenario-shelf-caption p{line-height:1.55!important;font-size:11px!important}
.scenario-shelf-status:empty{display:none}
.scenario-shelf-status{padding:0 16px 9px;line-height:1.5!important}
.scenario-shelf-comparison{padding:14px}
.scenario-shelf-pair{margin-bottom:14px}
@media(max-width:680px){.scenario-shelf-caption{padding:8px 13px}.scenario-shelf-caption label{min-width:0;justify-content:space-between}.scenario-shelf-caption input{width:65%;min-height:30px}.scenario-shelf-caption p{margin-top:7px}.scenario-shelf-toolbar{padding:9px}.scenario-shelf-status{padding:0 13px 8px}}
