*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;font:14px/1.6 system-ui,-apple-system,'Microsoft YaHei',sans-serif;color:#193747;background:#f2f5f6}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #d69b13;outline-offset:2px}a{color:#145775}#canonical-loading{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#f2f5f6;color:#193747;text-align:center;padding:24px}#canonical-loading b{font-size:28px;letter-spacing:4px}#canonical-loading button{padding:10px 20px;margin:8px;border:1px solid #718e9d;border-radius:6px}dialog{border:1px solid #9bb2bf;border-radius:12px;padding:20px;color:#193747;background:#f9fbfc;max-width:min(1080px,96vw);width:96vw;max-height:92dvh;overflow:auto;box-shadow:0 20px 90px #00192750}dialog::backdrop{background:#0a263b99}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;position:sticky;top:-20px;z-index:3;background:#f9fbfc;padding:10px 0;border-bottom:1px solid #ccdae2}.dialog-head h2{margin:0;font-size:21px}.dialog-head button{border:1px solid #819ba9;border-radius:6px;background:white;padding:7px 12px;white-space:nowrap}.source-body{line-height:1.8}.table-wrap{overflow:auto}.table-wrap table{border-collapse:collapse;width:100%;font-size:13px}.table-wrap td,.table-wrap th{padding:8px;border:1px solid #ccd9e0;text-align:left}.evidence-toolbar{display:flex;gap:8px;flex-wrap:wrap;padding:15px 0}.evidence-toolbar input{flex:1;min-width:180px;padding:9px;border:1px solid #93aebb;border-radius:6px}.evidence-toolbar select{max-width:100%;padding:7px}.evidence-section{border-bottom:1px solid #c8d8e1;padding:14px 0}.evidence-section summary{cursor:pointer;font-weight:650;font-size:16px}.evidence-section p{line-height:1.85}.evidence-section figure{margin:16px 0}.evidence-section img{max-width:100%;height:auto}.evidence-section figcaption{font-size:13px;color:#365767}.evidence-image{border:0;background:none;padding:0;width:100%}.evidence-image img{max-height:430px;object-fit:contain}.evidence-full img{display:block;max-width:100%;max-height:70vh;object-fit:contain;margin:auto}.evidence-meta{font-size:12px;color:#506e7e}.version-card{display:block;padding:14px;margin:12px 0;border:1px solid #bfced7;border-radius:8px;background:white;text-decoration:none}.version-card strong{display:block}.version-card small{color:#4d6878}.reader-alert{border-left:4px solid #b58029;padding:10px;background:#fff3dc}.reader-tabs{display:flex;gap:8px;flex-wrap:wrap}.reader-tabs button{padding:7px 12px;border:1px solid #a5bbc7;border-radius:6px;background:white}.reader-tabs button[aria-pressed=true]{background:#15536d;color:white}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.gallery-card{padding:10px;background:white;border:1px solid #c7d7df;border-radius:7px}.gallery-card img{width:100%;height:160px;object-fit:contain;background:#edf2f5}.gallery-card button{border:0;background:none;padding:0;text-align:left;color:inherit;width:100%}.gallery-card strong{display:block;font-size:14px}.gallery-card p{font-size:12px;margin:5px 0}.gallery-card .text-only{height:80px;display:flex;align-items:center;justify-content:center;background:#ecf1f4;color:#56727f}.px-shore-labels{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}.px-shore-callout{position:absolute;padding:4px 7px;background:#fffffff2;border:1px solid #1a607b;border-left:4px solid #1a607b;box-shadow:0 1px 5px #0b263040;border-radius:4px;white-space:nowrap;font:600 11px/1.4 system-ui;color:#173e52}.px-shore-callout[data-trace=true]{border-color:#a84706;font-weight:500}.px-shore-leader{position:absolute;height:1px;transform-origin:0 0;background:#145b73}
@media(max-width:760px){dialog{padding:13px;width:96vw;max-height:94dvh}.dialog-head{top:-13px}.dialog-head h2{font-size:17px}.gallery-grid{grid-template-columns:1fr 1fr;gap:7px}.gallery-card{padding:6px}.gallery-card img{height:110px}.gallery-card strong{font-size:12px}}
/* Current story UI: contents live in data/story, not in styling modules. */
.story-stage-nav{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin;min-width:0;flex:1}.story-stage-nav button{flex:0 0 auto;font-size:12px!important}.story-stage-nav button[aria-selected=true]{background:#15536d;color:white}.story-tools{font-size:11px;display:flex;gap:5px;align-items:center}.story-tools select{font-size:11px!important;max-width:105px}.story-prevnext{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#4f6f80}.story-prevnext button{padding:2px 12px!important}.story-section-label{font-size:10px;text-transform:uppercase;color:#577482;border-top:1px solid #d1dfe6;padding-top:10px;margin-top:14px}.story-conclusion{border-left:3px solid #22857a;background:#eff8f4;padding:10px;margin:13px 0}.story-conclusion b{font-size:12px}.story-conclusion p{margin:6px 0 0!important}#story-impacts b{font-size:11px;color:#39727a}#story-impacts p{font-size:12px;margin:3px 0 12px}#story-examples{font-size:12px!important}.px-map-area{position:relative}.story-board{position:absolute;right:12px;top:90px;bottom:63px;width:340px;max-width:44%;background:#fcfdfdf7;border:1px solid #97b2c1;border-radius:10px;box-shadow:0 8px 30px #072b3c30;z-index:8;display:flex;flex-direction:column;overflow:hidden;backdrop-filter:blur(8px)}.story-board[hidden]{display:none}.story-board.expanded{top:38px;bottom:28px;left:10px;right:10px;width:auto;max-width:none}.story-board-head{display:flex;gap:5px;align-items:center;padding:9px 10px;background:#e9f2f5;border-bottom:1px solid #becfd8}.story-board-head b{font-size:12px;flex:1}.story-board-head button{padding:1px 7px!important;font-size:16px!important}.story-board-tabs{display:flex;gap:5px;padding:6px 8px;background:white;border-bottom:1px solid #d0dde4}.story-board-tabs button{flex:1;font-size:11px!important;padding:5px!important}.story-board-tabs button[aria-pressed=true]{background:#15536d!important;color:white!important}.story-board #story-board-body{overflow:auto;min-height:0;flex:1;padding:11px}.story-board h3{font-size:14px;margin:9px 0 6px}.story-board p{font-size:12px;line-height:1.75;margin-bottom:10px!important}.story-figure-tag{font-size:10px;color:#4e7181;margin-bottom:6px}.story-main-image{width:100%;padding:0!important;border:0!important;background:#edf3f6!important;display:block}.story-main-image img{display:block;width:100%;max-height:250px;object-fit:contain}.story-board.expanded .story-main-image img{max-height:45vh}.story-figure-filmstrip{display:flex;overflow:auto;gap:6px;padding:8px 0}.story-figure-filmstrip button{flex:0 0 82px;width:82px;white-space:normal!important;padding:4px!important;font-size:9px!important}.story-figure-filmstrip img{width:72px;height:50px;object-fit:contain;background:white;display:block}.story-figure-filmstrip span{display:block;margin-top:2px}.story-board-conclusion{padding:10px;background:#edf6f2;border-left:3px solid #2e8276;font-size:12px}.story-board-conclusion p{margin:5px 0 0!important}.scenario-flow>div{border:1px solid #b9cdd8;border-radius:6px;padding:10px;background:#f3f7f9}.scenario-flow>span{display:block;text-align:center;color:#9a6414;font-size:20px}.scenario-flow small{display:block;color:#6b7f88;font-size:10px}.scenario-flow b{font-size:13px}.scenario-flow p{margin:4px 0!important}.scenario-flow .scenario-choice{background:#ecf6f1;border-color:#96bdac}.scenario-example{margin:14px 0;padding:12px;background:#fff5e5;border-left:3px solid #b77c21}.scenario-example b{font-size:13px}.scenario-example p{margin:7px 0 0!important}.scenario-example small{color:#745b30}.scenario-options{display:grid;grid-template-columns:1fr;gap:8px}.scenario-options section{border-top:1px solid #c6d5dd;padding-top:8px}.scenario-options b{font-size:12px}.story-season-window{color:#4b6f7f;border-left:3px solid #51829a;padding-left:8px;font-size:11px!important}.season-chart{width:100%;height:auto;fill:#284f61;font:11px system-ui}.season-chart g[role=button]{cursor:pointer}.season-chart g:focus{outline:2px solid #9a6414}.season-number{font-size:25px;font-weight:700;color:#15536d}.season-number small{font-size:12px}.season-month-buttons{display:grid;grid-template-columns:repeat(6,1fr);gap:3px}.season-month-buttons button{padding:3px!important;font-size:11px!important}#story-season-metric{width:100%;font-size:12px!important;margin:5px 0}#story-reading-dialog{line-height:1.85}.story-text-evidence{padding:25px;background:#eef4f6;color:#506e7c}.story-board .reader-alert{font-size:12px}
@media(min-width:1500px){.px-workspace{grid-template-columns:285px minmax(0,1fr)}.story-board{width:365px;max-width:34%}}
@media(max-width:1100px){.story-board{width:300px;max-width:48%;right:5px}.story-tools{font-size:10px}.story-tools select{max-width:90px}.px-map-toolbar{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.px-map-toolbar>*{flex-shrink:0}.story-board-head b{max-height:35px;overflow:hidden}}
@media(max-width:760px){.story-stage-nav{scrollbar-width:none}.story-stage-nav button{font-size:12px!important}.story-stage-nav small{display:inline!important;margin-right:5px}.story-prevnext,#story-summary,.story-section-label,.story-conclusion,#story-impacts,#story-examples{display:none}.story-board{top:67px;bottom:8px;right:5px;width:min(350px,94%);max-width:94%;box-shadow:0 4px 35px #072b3c60}.story-board.expanded{top:32px;left:3px;right:3px;bottom:3px;width:auto;max-width:none}.story-board h3{font-size:13px}.story-board p{font-size:12px}.story-board .story-main-image img{max-height:160px}.story-board.expanded .story-main-image img{max-height:33vh}.story-tools{font-size:0}.story-tools select{font-size:11px!important;max-width:86px}#story-more{font-size:11px!important;padding:4px 6px!important}#process-explorer .px-tabs{overflow:hidden}#story-board-open{font-size:11px!important}.story-board-head{padding:5px 8px}.story-board-tabs{padding:4px 6px}#process-explorer .story-board-tabs button{font-size:11px!important}.story-board #story-board-body{padding:8px}.story-figure-caption{max-height:65px;overflow:auto}.story-board-conclusion{padding:7px}.story-board-conclusion p{font-size:11px}.season-chart{max-height:180px}.story-board.expanded .story-figure-caption{max-height:none}}
/* At desktop widths the evidence board has its own reserved lane, not a map-obscuring overlay. */
@media(min-width:1200px){#process-explorer[data-board-open=true] .px-map-area{padding-right:350px}.story-board{right:0;top:0;bottom:0;width:338px;max-width:none}.story-board.expanded{left:0;right:0;top:0;bottom:0;width:auto;max-width:none}#process-explorer[data-board-open=true] .px-map-toolbar{overflow:auto;white-space:nowrap;flex-wrap:nowrap;scrollbar-width:thin}.px-map-toolbar>*{flex-shrink:0}}
@media(min-width:1500px){#process-explorer[data-board-open=true] .px-map-area{padding-right:377px}.story-board{width:365px}}
@media(max-width:760px){.story-board{top:auto;bottom:4px;max-height:58%;min-height:160px;width:94%;left:3%;right:auto}.story-board.expanded{top:32px;bottom:3px;max-height:none;left:3px;right:3px;width:auto}.story-board .story-main-image img{max-height:130px}.story-board-head b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.story-board .story-figure-filmstrip{padding:4px 0}.story-board .story-figure-filmstrip img{height:36px}}
.scenario-diagram{display:block;width:100%;height:auto;max-height:270px;object-fit:contain;margin:9px 0;background:#f4f7f6;border:1px solid #cedddf}.scenario-select{display:flex;gap:4px;overflow:auto;padding:5px 0}.scenario-select button{font-size:11px!important;padding:5px 7px!important;flex:0 0 auto}.scenario-case{border-top:1px solid #b9cfd7;padding:9px 0}.scenario-case summary{font-size:12px;font-weight:650;cursor:pointer}.story-board details{font-size:12px;line-height:1.75;margin:9px 0}.story-board details summary{cursor:pointer;font-weight:600}
#unified-layer-dialog{max-width:640px}#unified-layer-dialog select{padding:8px;margin:8px}#unified-layer-badge{font-size:10px;color:#784d05;background:#fff1cd;padding:4px 6px;border:1px solid #c39e45;border-radius:5px}#story-text-full{display:block;margin:10px auto;font-size:12px!important}
.px-shore-callout{overflow:hidden;text-overflow:ellipsis}.px-shore-callout[hidden],.px-shore-leader[hidden]{display:none}
