:root{--bg:#061017;--panel:#0e202a;--head:#243440;--border:#45606a;--teal:#32c3a0;--cyan:#4fc4d6;--yellow:#efba62;--red:#e66655;--white:#e8f0f3;--muted:#a8c0c8}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 48% 30%,#17313b 0,#07151e 46%,#040c13 100%);color:var(--white);font:14px/1.42 'Segoe UI',Arial,sans-serif}a{color:inherit;text-decoration:none}button,select,input{font:inherit}.shell{max-width:2100px;margin:auto;min-height:100vh}.masthead{min-height:155px;display:grid;grid-template-columns:57% 43%;border-bottom:1px solid #31515b;background:linear-gradient(115deg,#1a2935,#101d28 52%,#091721)}.brandmark{display:flex;align-items:center;padding:16px 24px 16px 35px;gap:28px;border-right:1px solid #54717c;border-radius:0 0 32px 0}.republic,.ministry{font-family:Georgia,'Times New Roman',serif;letter-spacing:.5px;line-height:.99;white-space:nowrap;text-shadow:0 2px 9px #0007}.republic span{display:block;font-size:clamp(17px,2vw,31px)}.republic strong{display:block;font-size:clamp(37px,4.1vw,68px);font-weight:400}.ministry span{display:block;font-size:clamp(20px,2.1vw,35px)}.ministry strong{display:block;font-size:clamp(20px,2.15vw,36px);font-weight:400}.crest{height:112px;flex:0 0 112px;overflow:hidden;display:grid;place-items:center}.crest img{height:113px;width:113px;object-fit:cover;mix-blend-mode:lighten}.headline{padding:10px 25px 14px 15px;display:flex;flex-direction:column;align-items:stretch;justify-content:center}.system-name{text-align:right;font-size:clamp(15px,1.45vw,29px);letter-spacing:.5px;color:#c8d4d7;margin-bottom:7px;white-space:nowrap}.ticker{border:1px solid #2b9d81;box-shadow:0 0 20px #13c09a25,inset 0 0 13px #00a78019;border-radius:5px;background:#12272b;padding:5px 10px 8px}.ticker-title{text-align:center;font-size:15px;padding-bottom:4px}.ticker-title em{font:10px/1.2 Arial;color:#f4c46e;margin-left:10px;font-style:normal}.ticker-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.ticker-grid>div{text-align:center;border-right:1px solid #47616b;min-width:0}.ticker-grid>div:last-child{border:none}.ticker-grid span{display:block;color:#a8bac3;white-space:nowrap;font-size:12px}.ticker-grid b{font-size:clamp(17px,1.5vw,26px);line-height:1.25;color:var(--teal)}.ticker-grid b.warm{color:var(--red)}.ticker-grid small{display:block;color:#8fa4ad;font-size:10px}.toolbar{min-height:45px;display:flex;align-items:center;gap:6px;padding:5px 23px;border-bottom:1px solid #33505c;flex-wrap:wrap;background:#0b1a24}.navlink{font-size:12px;padding:7px 12px;border-radius:4px;color:#d8e7e9}.navlink:hover,.navlink.selected{background:#14594f;color:#f5fbfa}.nav-separator{width:1px;height:20px;background:#43616a}.toolbar-spacer{flex:1}.pill{color:#f0ce81;font-size:10px;white-space:nowrap;border:1px solid #41636c;border-radius:3px;padding:6px 8px}.pill i{display:inline-block;width:6px;height:6px;background:#f5c269;border-radius:100%;vertical-align:middle;margin-right:5px}.executive-grid{display:grid;grid-template-columns:1.08fr 1.11fr .89fr;gap:13px;padding:15px 24px 17px;align-items:start}.column{min-width:0}.column-title{font-size:22px;font-weight:400;letter-spacing:.2px;background:linear-gradient(90deg,#253641,#2d3b44);border:1px solid #50636d;border-bottom:none;border-radius:6px 6px 0 0;padding:7px 12px;margin:0;height:44px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.frame{background:#0c1b25;border:1px solid #415d67;border-radius:4px;overflow:hidden;box-shadow:inset 0 0 15px #070d13aa}.mapframe{position:relative;height:331px;border-top:none}.map-pane{position:absolute;inset:0 0 25px;z-index:1;background:#102930}.map-pane .leaflet-container{background:#132b32}.map-caption{height:25px;position:absolute;z-index:750;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:0 8px;background:#183842;border-top:1px solid #3b6f77;letter-spacing:.7px;font-size:11px;color:#bce9e8}.status-live{color:#47cfb5}.map-caption-side{font-size:9px;color:#e1be75}.map-layer-switch{position:absolute;right:8px;top:10px;z-index:780;display:flex;align-items:center;gap:5px;border:1px solid #6a8790;border-radius:4px;background:#10222de3;padding:5px 7px;font-size:10px}.map-layer-switch label{color:#cde9ec}.map-layer-switch select{max-width:172px;background:#19343e;color:#f3fbfb;border:1px solid #426975;border-radius:3px;padding:3px;font-size:10px}.map-legend{position:absolute;bottom:36px;left:9px;z-index:780;background:#051a21d9;border:1px solid #479c9e;max-width:225px;padding:6px 8px;font-size:12px}.map-legend small{color:#abc6c8;font-size:9px}.leaflet-container .leaflet-control-attribution{font-size:9px}.map-pane .leaflet-tile{max-width:none!important;max-height:none!important}.chartframe{margin-top:10px}.subbar{background:#263b45;min-height:31px;padding:6px 10px;display:flex;align-items:center;justify-content:space-between;gap:5px;border-bottom:1px solid #344d59;font-size:13px;font-weight:400;letter-spacing:.1px}.subbar.big{font-size:19px;min-height:33px}.subbar strong{font-weight:500}.tag{font-size:10px;border:1px solid #486670;border-radius:3px;padding:2px 5px;color:#a4d1d2;font-weight:400}.tag-yellow{color:#eccc83}.eco-row{height:130px;display:grid;grid-template-columns:98px 98px 1fr;gap:10px;align-items:center;padding:7px 8px}.gauge{position:relative;width:93px;height:106px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:5px}.gauge .arc{position:absolute;top:0;left:4px;width:84px;height:84px;border:10px solid #345b61;border-top-color:#e6ab53;border-left-color:#329e83;border-radius:100%;transform:rotate(-38deg)}.gauge .arc:after{content:'';position:absolute;inset:15px;border:1px solid #3f6872;border-radius:100%}.gauge span{font-size:17px;font-weight:bold;color:#f8f0d7;position:relative}.gauge small{font-size:10px;position:relative}.chart-grow{height:106px;position:relative;min-width:0}.chart-grow svg{width:100%;height:100%}.unavailable{position:absolute;top:33px;left:13px;color:#a5bdc6;font-size:12px;max-width:150px}.contentframe{min-height:170px}.stackplot{padding:6px 12px}.stack-header{font-size:11px;color:#9db9c4;text-align:center}.teal-dot{color:#3ec5a7}.yellow-dot{color:#edb35e}.stack-empty{position:relative;height:108px;border-bottom:1px solid #36515d;background:repeating-linear-gradient(0deg,transparent 0,transparent 26px,#32505b 27px,#32505b 28px)}.stack-empty>span{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);text-align:center;color:#b5cad1;font-size:12px;white-space:nowrap}.muted-columns{position:absolute;inset:17px 20px 0;display:flex;align-items:end;justify-content:space-around;opacity:.14}.muted-columns i{width:11%;height:70%;background:#5ccda9}.muted-columns i:nth-child(2){height:56%}.muted-columns i:nth-child(4){height:45%}.entitlements{border-top:none}.flowviz{height:310px;background:radial-gradient(ellipse at 50% 45%,#13313e 5%,#0b1b27 75%);position:relative}.flow-note{position:absolute;left:13px;top:7px;font-size:10px;color:#88aaaf;letter-spacing:1px}.flowviz svg{width:100%;height:calc(100% - 14px);display:block}.flow-disclaimer{position:absolute;bottom:5px;right:8px;color:#b2c2c9;font-size:10px}.two-panels{display:grid;grid-template-columns:1.45fr .85fr;gap:10px;margin-top:10px}.mini-tall{height:161px;min-width:0}.mini-tall .subbar{font-size:12px}.table-scroll{overflow:auto;max-height:125px}table{border-collapse:collapse;width:100%;font-size:12px;color:#dae8ea}thead{background:#122b36}th{text-align:left;font-weight:500;color:#9eb9c3}td,th{padding:5px 6px;border-bottom:1px solid #2b4651;white-space:nowrap}tbody tr:nth-child(even){background:#1a313c}tbody td[colspan]{text-align:center;color:#a8bbc3;padding:22px 8px}.calendar{padding:6px 8px}.calendar-title{display:flex;justify-content:space-between;font-size:12px;color:#b3d9db;margin-bottom:4px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px}.cal-grid span{height:16px;text-align:center;font-size:10px;line-height:16px;color:#b5c9cf}.cal-grid span.today{background:#166558;color:#e8fffb}.cal-grid span.has-transfer{background:#7d582b;color:#ffdfa0}.cal-grid .dayname{color:#6bbdbd}.audit-track{padding:10px 10px 0;font-size:12px}.audit-track span{color:#bdd0d5}.audit-track b{float:right;color:#34d3b0;font-size:15px}.audit-track b.warm{color:#eca85d}.progress{height:5px;background:#29414b;overflow:hidden;margin-top:7px;border-radius:4px}.progress i{display:block;width:0;height:100%;background:#38ceba;transition:width .3s}.progress.amber i{background:#edb35e}.advisor{border-top:none}.advisor-top{padding:12px 15px 10px}.field-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:5px 0 2px}.field-head label{font-size:16px}.field-head output{color:#46c9d8;font-size:18px}input[type=range]{display:block;width:100%;height:15px;accent-color:#4bbbd0;cursor:pointer}.ruler{display:flex;justify-content:space-between;font-size:10px;color:#7e99a4;margin:0 0 10px}.action-row{display:flex;gap:10px;align-items:center;margin-top:7px}.action-row button{background:#168a7e;color:#fff;border:1px solid #40bbac;padding:7px 20px;cursor:pointer;border-radius:3px;font-size:12px}.action-row a{font-size:10px;color:#9fdbdf}.two-chart-head{display:flex;justify-content:space-between;align-items:center;background:#263943;margin:0 11px;padding:4px 7px;font-size:12px}.two-chart-head span{font-size:10px;color:#a4c0c8}.two-chart-head.second{margin-top:7px}.scenario-chart{height:170px;margin:4px 13px 0;position:relative}.scenario-chart svg{width:100%;height:140px}.chart-caption{font-size:10px;color:#9ab3bb;text-align:center}.histogram{display:flex;align-items:end;justify-content:space-around;height:84px;padding:5px 15px;border-bottom:1px solid #44616a;margin:5px 12px}.histogram div{width:10%;background:linear-gradient(#65d3ac,#1c6d62);border-top:1px solid #91f6ce}.advisor>.chart-caption{padding:5px}.gas-frame{margin-top:10px}.gas-inner{height:190px;display:grid;grid-template-columns:57% 43%;padding:9px}.gas-visual{display:flex;align-items:center;justify-content:space-around;gap:9px;font-size:11px}.gas-inlet{padding:20px 7px;background:linear-gradient(90deg,#186a5c,#61d7ae);color:#08262a;font-weight:bold;text-align:center}.fork{height:90px;width:18px;border-left:5px solid #67d4ae;position:relative}.fork span{position:absolute;left:0;width:29px;height:5px;background:#58bfae}.fork span:first-child{top:14px}.fork span:last-child{bottom:14px;background:#daa054}.gas-outputs{display:flex;flex-direction:column;gap:22px}.gas-outputs>div{border-left:9px solid #36cc9f;padding-left:5px;white-space:nowrap}.gas-outputs>div:last-child{border-left-color:#e4a552}.gas-outputs small{color:#9dafb7}.depletion{border-left:1px solid #324b57;padding:0 8px}.depletion-title{text-align:center;font-size:12px;color:#e1d5b7}.depletion svg{width:100%;height:126px}footer{border-top:1px solid #36515d;padding:10px 24px;text-align:center;font-size:10px;letter-spacing:.5px;color:#8eabb5;display:flex;justify-content:space-between;gap:10px}footer a{color:#65cebc}@media(max-width:1450px){.brandmark{gap:15px;padding-left:18px}.crest{flex-basis:82px;height:95px}.crest img{width:96px;height:96px}.republic span{font-size:18px}.republic strong{font-size:39px}.ministry span,.ministry strong{font-size:21px}.executive-grid{gap:9px;padding:12px}.eco-row{grid-template-columns:72px 72px 1fr;gap:4px}.gauge{transform:scale(.8);transform-origin:left center}.field-head label{font-size:13px}.field-head output{font-size:15px}}@media(max-width:1080px){.masthead{grid-template-columns:1fr}.brandmark{border-right:0;padding:12px 18px;justify-content:center}.headline{padding:5px 12px 11px}.system-name{text-align:center}.executive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.advisor-column{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px}.advisor-column .column-title{grid-column:1/-1}.advisor-column .gas-frame{margin-top:0}.ticker-grid b{font-size:20px}}@media(max-width:650px){.brandmark{gap:7px}.crest{height:65px;flex-basis:55px}.crest img{height:69px;width:69px}.republic span{font-size:11px}.republic strong{font-size:26px}.ministry span,.ministry strong{font-size:13px}.headline{padding:8px}.ticker-grid span{font-size:9px}.ticker-grid b{font-size:15px}.ticker-grid small{font-size:8px}.ticker-title{font-size:11px}.system-name{font-size:14px;white-space:normal}.executive-grid,.advisor-column{display:block;padding:10px}.column{margin-bottom:12px}.advisor-column .column-title{display:block}.column-title{font-size:19px}.toolbar{padding:7px}.navlink{padding:6px 7px}.pill{width:100%;text-align:center}.two-panels{grid-template-columns:1fr 1fr}.eco-row{grid-template-columns:78px 78px 1fr}.field-head label{font-size:15px}footer{flex-direction:column;text-align:center}.map-layer-switch{top:12px;right:5px}.map-layer-switch label{display:none}}

/* V3: protected Leaflet layout, accessible controls, responsive executive display */
.mapframe,.map-pane{isolation:isolate;contain:layout paint}.map-pane{overflow:hidden!important}.map-pane.leaflet-container{position:absolute!important;inset:0 0 25px!important;width:100%!important;height:auto!important}.map-pane .leaflet-pane,.map-pane .leaflet-map-pane,.map-pane .leaflet-tile-pane,.map-pane .leaflet-overlay-pane{position:absolute}.map-pane .leaflet-tile{max-width:none!important;max-height:none!important}.map-pane img{max-width:none!important}.map-status{display:block;color:#f6c66e;font-size:9px;margin-top:3px}.map-caption-side{max-width:55%;text-align:right}.scenario-result{display:flex;justify-content:space-between;gap:10px;padding:4px 8px;font-size:12px;border-top:1px solid #2a4852}.scenario-result strong{color:#32cfb3;font-variant-numeric:tabular-nums}.irr-empty{height:84px;display:grid;place-items:center;text-align:center;padding:12px;color:#a9c6c6;font-size:12px;border:1px dashed #385b62;margin:7px 12px}.toolbar a:focus-visible,.map-layer-switch select:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #f2c66f;outline-offset:2px}@media(min-width:1300px){.executive-grid{grid-template-columns:1.07fr 1.12fr .87fr}.mapframe{height:355px}.flowviz{height:322px}}@media(max-width:780px){.executive-grid{grid-template-columns:1fr}.advisor-column{display:block}.advisor-column .column-title{display:block}.advisor-column .gas-frame{margin-top:10px}.ticker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.ticker-grid>div:nth-child(3){border-right:none}.ticker-grid>div{padding:4px 0}.brandmark{overflow:hidden}.ministry strong{white-space:normal}}
