/* Responsive shell: one sticky ancestor; the document owns vertical scrolling. */
:root{--sticky-height:155px;--sea:#edf6fc}
.sticky-shell{position:sticky;top:0;z-index:1100;background:var(--paper);padding-top:env(safe-area-inset-top);box-shadow:0 2px 8px #0001}
html{scroll-padding-top:calc(var(--sticky-height) + 12px)}
:focus-visible{scroll-margin-top:calc(var(--sticky-height) + 12px)}
.topbar{display:grid;grid-template-columns:minmax(260px,1fr) auto minmax(260px,1fr);height:auto;min-height:100px;gap:16px}
.app-banner{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;max-width:430px}
.app-banner>strong{font-size:23px;font-weight:500;white-space:nowrap}
.country-switch{display:flex;border:1px solid var(--line);border-radius:6px;padding:2px;background:var(--bg)}
.country-switch button{padding:9px 14px;min-height:44px;border-radius:4px;font-size:14px}
.country-switch [aria-pressed=true]{background:var(--deep);color:#faf8ee}
#irish-scope-label{flex-basis:100%;text-align:center}#irish-scope{max-width:100%;font-size:13px;min-height:36px}
.control-menu{justify-self:end}.control-menu>summary{display:none}.control-menu:not([open])>.header-actions{display:flex}
.header-actions{gap:8px;flex-wrap:wrap;justify-content:flex-end}.header-actions #clock{display:none}
.refresh-setting{display:flex}.header-actions button,.header-actions select{min-height:44px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.irish-attribution{padding:10px 24px;font-size:12px;background:var(--soft);color:var(--ink)}
.workspace{grid-template-columns:285px minmax(0,1fr) 330px}.workspace>*{min-width:0}
.explorer-disclosure,.system-disclosure{min-width:0;height:100%;background:var(--paper);overflow:auto}
.explorer-disclosure>summary,.system-disclosure>summary{display:none}.explorer-disclosure>.explorer,.system-disclosure>.system{height:auto;min-height:100%;overflow:visible}
#map-interaction{display:none}.map-panel{min-width:0}.map-layers{flex-wrap:wrap}.map-caption{overflow-wrap:anywhere}
.irish-extra{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.irish-extra>div{padding:12px;background:var(--soft);border-radius:5px}.irish-extra strong{font:22px var(--mono);display:block}.irish-extra small{font-size:11px;display:block}
.irish .mix-mode{display:none}.irish .bottom-strip{display:none}.irish .network-note{line-height:1.7}.irish .map-layers label:has(#regions-toggle),.irish .map-layers label:has(#carbon-toggle){display:none}
.irish .flow-label{font-size:11px}.irish .flow-label small{font-size:9px}
.irish-series{margin-bottom:25px}.irish-series svg{width:100%;height:200px;display:block}.irish-series .instrument-trend{margin:0}.irish-series .instrument-trend svg{width:100%;height:200px}
.irish-series p{margin-top:8px}.irish-unavailable{padding:20px;border:1px solid var(--line);background:var(--paper);border-radius:6px;line-height:1.8}
.wallpaper .sticky-shell{display:none}.wallpaper .irish-attribution{display:block;font-size:10px;padding:4px 12px}.wallpaper .explorer-disclosure{display:none}.wallpaper .system-disclosure{grid-column:auto}
.wallpaper.irish{grid-template-rows:auto auto minmax(0,1fr)}
.wallpaper .workspace{height:100%;min-height:0;max-height:none;grid-template-rows:minmax(0,1fr)}.wallpaper .map-panel{height:100%;min-height:0}.wallpaper .system-disclosure{min-height:0;overflow:hidden}.wallpaper .metrics{min-height:0}.wallpaper .irish-attribution{padding-right:120px}
@media(max-width:1250px){.topbar{grid-template-columns:minmax(240px,1fr) auto auto}.control-menu>summary{display:list-item;cursor:pointer;min-height:44px;padding:12px;border:1px solid var(--line);border-radius:5px}.control-menu:not([open])>.header-actions{display:none}.control-menu[open]>.header-actions{position:absolute;right:12px;top:calc(100% - 48px);background:var(--paper);border:1px solid var(--line);padding:15px;max-width:310px;box-shadow:var(--shadow)}.workspace{grid-template-columns:240px minmax(0,1fr) 280px}}
@media(max-width:1000px){.workspace{grid-template-columns:230px minmax(0,1fr);height:auto;min-height:0;max-height:none}.system-disclosure{grid-column:1/-1}.system-disclosure>.system{columns:1;display:block;height:auto}.system-disclosure>summary{display:list-item;padding:15px;min-height:48px;cursor:pointer;border-bottom:1px solid var(--line)}.explorer-disclosure>.explorer{max-height:none}.map-panel{height:650px}.bottom-strip{grid-template-columns:1fr}.header-actions .refresh-setting{display:flex}}
@media(max-width:1000px){
 .topbar{grid-template-columns:minmax(0,1fr) auto;padding:10px 12px;min-height:0;gap:7px}
 .brand{min-width:0;white-space:normal}.brand-line{font-size:24px!important;gap:7px!important}.brand small{font-size:10px;letter-spacing:0;line-height:1.4;margin-top:5px;max-width:none}
 .app-banner{grid-row:2;grid-column:1/-1;max-width:none;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 9px;justify-items:center;width:100%;padding:0 14px}.app-banner>strong{font-size:19px;grid-column:1;grid-row:1}.country-switch{grid-column:2;grid-row:1/3;align-self:center}
 #irish-scope-label{flex-basis:auto;grid-column:1;grid-row:2;width:100%}#irish-scope{max-width:100%;width:100%;min-height:32px;font-size:12px}.control-menu{grid-row:1;grid-column:2}.control-menu[open]>.header-actions{top:58px;z-index:1}
 .page-nav{max-width:100%;padding:0 5px}.page-link{min-height:44px;padding:12px 11px;font-size:13px}
 .workspace{display:flex;flex-direction:column;height:auto;min-height:0;max-height:none}.workspace>*{width:100%;flex:none}
 .explorer-disclosure,.system-disclosure{height:auto;overflow:visible}.explorer-disclosure>summary{display:list-item;padding:15px;min-height:48px;cursor:pointer;border-bottom:1px solid var(--line)}
 .explorer-disclosure>.explorer,.system-disclosure>.system{height:auto;max-height:none;overflow:visible;padding:20px 16px;columns:1}
 .asset-list,.network-list{max-height:none;overflow:visible}.asset-row small{max-width:none;white-space:normal}.asset-row{min-height:44px}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-chip{font-size:13px;min-height:44px}
 .filter-line{flex-wrap:wrap}.filter-line select{font-size:13px;min-height:44px;max-width:100%}.search-box input{font-size:16px;min-height:30px}
 .map-panel{height:580px;min-height:0}.map-heading{left:12px;top:12px;max-width:calc(100% - 75px)}.map-heading p{max-width:220px}.map-heading h2{font-size:26px}
 #map-interaction{display:block;position:absolute;z-index:700;left:12px;top:116px;background:var(--paper);border:1px solid var(--line);border-radius:5px;min-height:44px;padding:8px 12px;font-size:12px;max-width:calc(100% - 24px)}
 #map{touch-action:pan-y}.map-active #map{touch-action:none}.map-layers{right:12px;max-width:none;gap:4px 12px}.map-layers label{min-height:36px;display:flex;align-items:center}.map-caption{max-width:calc(100% - 24px);font-size:9px}.map-tools{top:12px;right:10px}.map-button{min-height:44px;min-width:44px}
 .status-line{flex-wrap:wrap;padding:8px 12px;gap:5px 10px}.status-line>span:first-child{flex-basis:100%;flex-wrap:wrap}.status-detail{margin-left:0}.status-line button{min-height:44px}.status-line #refresh-label{font-size:11px}
 .metrics{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 12px;gap:8px}.metrics article{min-width:0}.metrics article:last-child{grid-column:1/-1}.metrics article>span{font-size:10px}.metrics article>small{font-size:11px;overflow-wrap:anywhere}.metrics strong{font-size:28px}.metrics .instrument-trend svg{width:100%}
 .analysis-panel{padding:24px 12px}.analysis-panel *{min-width:0}.analysis-heading p{font-size:14px}.page-copyright{white-space:normal}.query-form{padding:14px}.query-form input,.query-form select{min-width:0;max-width:100%;font-size:16px}.stat-grid,.fuel-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card strong,.fuel-card>strong{font-size:23px;white-space:normal}.stat-card small{font-size:12px}.table-wrap{max-width:100%}.about-page{overflow-wrap:anywhere}.about-page dl{display:block}.about-page dd{margin:8px 0 20px}.about-page h2{font-size:24px}.irish-attribution{padding:10px 12px}.irish-extra{grid-template-columns:1fr}.irish-extra strong{font-size:22px}
 footer{overflow-wrap:anywhere}.selection-card{max-width:calc(100% - 20px)}dialog{max-width:calc(100vw - 24px);padding:22px}dialog dl{display:block}dialog dd{margin:8px 0 16px}
 .wallpaper{display:block;height:auto;overflow:visible}.wallpaper .metrics{display:grid;overflow:visible;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.wallpaper .workspace{display:flex}.wallpaper .map-panel{height:650px}.wallpaper .system-disclosure{display:none}.wallpaper .wallpaper-brand .brand-line{font-size:22px!important}.wallpaper .wallpaper-credit{font-size:10px;max-width:calc(100% - 24px)}.wallpaper .wallpaper-credit small{font-size:9px}
}
@media(max-width:360px){.brand-line{font-size:21px!important}.brand small{font-size:9px}.control-menu>summary{font-size:12px;padding:12px 8px}.metrics{grid-template-columns:1fr}.metrics article:last-child{grid-column:auto}.stat-grid,.fuel-card-grid{grid-template-columns:1fr}.app-banner{gap:6px}.country-switch button{padding:7px 12px}}
@media(min-width:1001px){#map-interaction{display:none!important}}
@media(min-width:1001px){.workspace{grid-template-rows:minmax(0,1fr)}.explorer-disclosure,.system-disclosure{min-height:0}}

@media(max-width:1000px) and (max-height:500px){.topbar{grid-template-columns:minmax(180px,1fr) minmax(260px,1fr) auto}.app-banner{grid-row:1;grid-column:2;padding:0}.control-menu{grid-column:3}.brand-line{font-size:22px!important}}
@media(pointer:coarse){#map-interaction{display:block!important;position:absolute;z-index:700;top:116px;left:12px;min-height:44px;background:var(--paper);padding:10px;border:1px solid var(--line);border-radius:5px}}
