:root{--font-sans: "Inter Variable", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--kp-ink: #0b1f3a;--kp-pulse: #a8261f;--kp-pulse-bright: #e8513a;--kp-slate: #5b6779;--kp-paper-tinted: #f4ede0;--bg: #fafbfc;--card: #ffffff;--ink: var(--kp-ink);--ink-soft: #36506b;--muted: #7a8a9c;--line: #e6ebf1;--hairline: #eef2f6;--sea: #cfdcea;--land: #f5e9c8;--land-stroke: #4a5b6e;--land-low: #b6d6b0;--land-mid: #f1c769;--land-high: #d97b66;--low: #4d9b6e;--mid: var(--kp-slate);--mid-soft: #e3e7ed;--mid-ink: #3b4c5e;--high: #c2543f;--export: #1f7a4d;--import: #7a1f2a;--internal: #3b5269;--good-soft: #e6f1eb;--warn-soft: #f6e7df;--space-section: 28px;--radius-card: 10px;--radius-pill: 999px}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-feature-settings:"tnum" 1,"ss01" 1,"cv11" 1;line-height:1.5;-webkit-font-smoothing:antialiased}.mono{font-variant-numeric:tabular-nums}.page{max-width:1180px;margin:0 auto;padding:44px 28px 64px}.crumb{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:1.2px;color:var(--muted);margin-bottom:18px}.crumb .demo{background:var(--mid-soft);color:var(--mid-ink);padding:3px 8px;border-radius:3px;letter-spacing:.8px}.crumb .ts{letter-spacing:.4px;font-weight:500}.crumb .spacer{flex:1}.lang-switch{display:inline-flex;gap:4px;letter-spacing:0}.lang-btn{font:inherit;font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:.4px;padding:3px 8px;border:1px solid var(--line);border-radius:4px;background:var(--card);color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;text-transform:none}.lang-btn:hover{color:var(--ink-soft);border-color:var(--ink-soft)}.lang-btn.active{color:var(--ink);border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}h1{font-size:clamp(28px,3.4vw,44px);line-height:1.1;letter-spacing:-.6px;margin:0 0 10px;font-weight:800}.hero-body{font-size:clamp(15px,1.5vw,19px);line-height:1.5;letter-spacing:-.1px;color:var(--ink-soft);margin:0 0 16px;max-width:70ch}.hero-body strong{color:var(--ink);font-weight:700}.hero-body .hl-export{color:var(--export);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.3px}.hero-body .hl-import{color:var(--import);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.3px}.lede{font-size:17px;color:var(--ink-soft);max-width:60ch;margin:0 0 22px;line-height:1.55}.verdict{display:inline-flex;align-items:center;gap:10px;font-size:13px;padding:8px 14px 8px 12px;border-radius:999px;background:var(--good-soft);color:#14492c;font-weight:600;border:1px solid #cfe4d8}.verdict.import{background:var(--warn-soft);color:#6b3010;border-color:#ebd0bc}.verdict .pip{width:8px;height:8px;border-radius:50%;background:var(--export)}.verdict.import .pip{background:var(--import)}.hero-text .streak{margin-top:var(--space-section);font-size:13px;color:var(--ink-soft);display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline}.streak strong{color:var(--ink);font-weight:700}.streak .flame{color:var(--high);font-size:15px}.streak.broken{color:var(--muted)}.streak .streak-best{font-size:12px;color:var(--muted)}.stats{margin:0 0 var(--space-section);display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat{padding:18px 22px 18px 0;border-right:1px solid var(--line)}.stat:first-child{padding-left:0}.stat:last-child{border-right:none;padding-right:0}.stat .label{font-size:11px;letter-spacing:.8px;color:var(--muted);font-weight:600;margin-bottom:8px}.stat .value{font-size:28px;font-weight:700;letter-spacing:-.6px;line-height:1.05}.stat.good .value{color:var(--export)}.stat.warn .value{color:var(--import)}.stat .delta{font-size:12px;color:var(--muted);margin-top:6px}.layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;align-items:stretch;margin-bottom:var(--space-section)}.map-block{min-width:0}.zone-panel-wrap{display:grid;grid-template-rows:auto 1fr;height:100%}.zone-panel-wrap .panel{display:flex;flex-direction:column;min-height:0}.zone-panel-wrap .panel .flow-list{flex:1;min-height:0}.panel.panel-empty{color:var(--muted);font-size:13px;line-height:1.5;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px}.block-head{display:flex;align-items:baseline;justify-content:space-between;margin:0 2px 12px}.block-head h2{font-size:12px;letter-spacing:1px;color:var(--muted);margin:0;font-weight:700}.block-head .sub{font-size:12px;color:var(--muted)}.map-wrap{position:relative;background:var(--sea);border-radius:var(--radius-card);border:1px solid var(--line);padding:8px;overflow:visible}.map{width:100%;height:auto;display:block;shape-rendering:geometricPrecision;text-rendering:geometricPrecision}.zone{stroke-linejoin:round;transition:opacity .2s ease,stroke-width .12s ease;cursor:pointer}.map.has-active .zone{opacity:.45}.map.has-active .zone.active{opacity:1}.zone:focus,.zone:focus-visible{outline:none}.zone:hover{stroke:var(--ink);stroke-width:1;opacity:1}.zone.active{stroke:var(--ink);stroke-width:2}.zone-label{fill:var(--ink);font-family:var(--font-sans);font-size:14px;font-weight:700;letter-spacing:.6px;text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:#f3eee2e6;stroke-width:3px;stroke-linejoin:round}.zone-price{fill:var(--ink-soft);font-size:11px;font-weight:600;text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:#f3eee2e6;stroke-width:3px;stroke-linejoin:round}.price-dot{stroke:#fff9;stroke-width:1}.price-dot.low{fill:var(--low)}.price-dot.mid{fill:var(--mid)}.price-dot.high{fill:var(--high)}.flow-arrow{fill:none;stroke-width:1.8;stroke-linecap:round;pointer-events:none;transition:stroke-width .12s ease}.flow-arrow.export{stroke:var(--export)}.flow-arrow.import{stroke:var(--import)}.flow-arrow.internal{stroke:var(--internal)}.flow-arrow.mock{stroke-dasharray:3 3;opacity:.55}.flow-arrow.hovered{stroke-width:2.6}.flow-hit{fill:none;stroke:transparent;stroke-width:14;pointer-events:stroke;cursor:crosshair}@media not all and (hover: hover) and (pointer: fine){.flow-hit{pointer-events:none;cursor:default}}.flow-num{font-family:var(--font-sans);font-size:12px;font-weight:700;pointer-events:none}.flow-num.export{fill:var(--export)}.flow-num.import{fill:var(--import)}.flow-num.internal{fill:var(--internal)}.flow-num.mock{fill:var(--muted);font-weight:600}.flow-num.halo{fill:#fff;stroke:#fff;stroke-width:3.5;stroke-linejoin:round;paint-order:stroke}.flow-num.halo.mock{stroke-width:3;opacity:.85}.flow-num-mock{fill:var(--muted);font-family:var(--font-sans);font-size:8.5px;font-style:italic;font-weight:500;pointer-events:none}.legend{margin-top:14px;display:flex;gap:22px;flex-wrap:wrap;font-size:11px;color:var(--muted);align-items:center;padding:0 4px}.legend .item{display:inline-flex;align-items:center;gap:7px}.legend .swatch{width:14px;height:2.5px;border-radius:2px;display:inline-block}.legend .dot{width:9px;height:9px;border-radius:50%;display:inline-block}.legend .meta{margin-left:auto;font-style:italic}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:22px 22px 18px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--hairline)}.panel-head .title{font-size:22px;font-weight:800;letter-spacing:-.3px;line-height:1.1}.panel-head .sub{font-size:12px;color:var(--muted);margin-top:4px}.panel-head .price-pill{font-size:14px;font-weight:700;padding:6px 11px;border-radius:999px;letter-spacing:-.2px}.price-pill.low{background:var(--good-soft);color:#1d5b3a}.price-pill.mid{background:var(--mid-soft);color:var(--mid-ink)}.price-pill.high{background:var(--warn-soft);color:#6b2010}.panel-rows{padding:14px 0 4px}.panel-rows .row{display:flex;justify-content:space-between;padding:7px 0;font-size:13px;border-bottom:1px solid var(--hairline)}.panel-rows .row:last-child{border-bottom:none}.panel-rows .k{color:var(--muted)}.panel-rows .v{font-weight:600}.panel-rows .v.good{color:var(--export)}.panel-rows .v.bad{color:var(--import)}.panel-rows .v .per-capita{font-size:11px;font-weight:500;color:var(--muted);margin-left:8px;letter-spacing:.2px;cursor:help}.balance-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.balance-row .b{padding:12px 14px;border-radius:8px;font-size:11px;letter-spacing:.6px;font-weight:600;color:var(--muted)}.balance-row .b.export{background:var(--good-soft);color:#1d5b3a}.balance-row .b.import{background:var(--warn-soft);color:#6b2010}.balance-row .b .num{display:block;font-size:22px;font-weight:700;letter-spacing:-.4px;margin-top:4px;text-transform:none}.panel-pricechart{margin-top:14px;padding:12px 0 8px;border-bottom:1px solid var(--hairline)}.panel-pricechart .pcx-head{font-size:11px;letter-spacing:.8px;color:var(--muted);font-weight:700;margin-bottom:6px}.price-spark{width:100%}.price-spark svg{width:100%;height:72px;display:block;cursor:ew-resize}.price-spark.empty{font-size:12px;color:var(--muted);padding:14px 0}.price-spark-foot{display:flex;justify-content:space-between;font-size:10.5px;color:var(--muted);margin-top:2px}.price-spark-foot b{color:var(--ink-soft);font-weight:600}.household-breakdown{margin-top:14px;padding-top:12px;border-top:1px solid var(--hairline)}.household-breakdown .hh-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.household-breakdown .pcx-head{font-size:11px;letter-spacing:.8px;color:var(--muted);font-weight:700}.household-breakdown .hh-total{font-size:12px;color:var(--muted)}.household-breakdown .hh-total b{font-size:17px;font-weight:800;color:var(--ink);margin-right:2px}.hh-rows.compact{display:grid;grid-template-columns:1fr 1fr;gap:2px 16px}.hh-cell{display:flex;justify-content:space-between;align-items:baseline;font-size:12px}.hh-cell .k{color:var(--muted)}.hh-cell .v{color:var(--ink-soft);font-weight:600}.hh-summary{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--hairline);font-size:11.5px;color:var(--muted)}.hh-summary b{color:var(--ink);font-weight:700}.hh-vs-inline{font-weight:700;font-size:11px;padding:2px 8px;border-radius:999px}.hh-vs-inline.more{background:#fdf1ee;color:#8c2818}.hh-vs-inline.less{background:#e8f3ec;color:#1f5a36}.flow-list{margin-top:16px;display:flex;flex-direction:column;gap:6px}.flow-list .row{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:10px;font-size:13px;padding:7px 4px;border-radius:6px}.flow-list .row:hover{background:#f6f8fb}.flow-list .row .arr{color:var(--muted);font-weight:700}.flow-list .row.in .arr{color:var(--import)}.flow-list .row.out .arr{color:var(--export)}.flow-list .row .name{font-weight:500}.flow-list .row .mw{font-weight:700}.zones{margin-top:var(--space-section);display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.zcard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:14px 16px;cursor:pointer;transition:border-color .12s ease,transform .12s ease;text-align:left;font:inherit;color:inherit;width:100%}.zcard:hover{border-color:var(--ink-soft)}.zcard.active{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.zcard .top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.zcard .name{font-size:13px;font-weight:700}.zcard .pill{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}.zcard .pill.low{background:var(--good-soft);color:#1d5b3a}.zcard .pill.mid{background:var(--mid-soft);color:var(--mid-ink)}.zcard .pill.high{background:var(--warn-soft);color:#6b2010}.zcard .balance{font-size:20px;font-weight:700;letter-spacing:-.5px}.zcard .balance.surplus{color:var(--export)}.zcard .balance.deficit{color:var(--import)}.zcard .meta{font-size:11px;color:var(--muted);margin-top:2px}.borders{margin-top:var(--space-section)}.borders table{width:100%;border-collapse:collapse}.borders th,.borders td{padding:11px 14px 11px 0;text-align:left;font-size:13px;border-bottom:1px solid var(--hairline)}.borders th{font-size:11px;letter-spacing:.6px;color:var(--muted);border-bottom:1px solid var(--line)}.borders td.num{text-align:right;font-weight:700;padding-right:18px}.borders th.num{text-align:right;padding-right:18px}.borders td.bar-cell{display:flex;align-items:center;gap:10px}.borders .bar-wrap{flex:1 1 auto;min-width:0;height:6px;background:var(--hairline);border-radius:3px;overflow:hidden}.borders .bar{height:100%;border-radius:3px}.borders .bar-pct{flex:0 0 36px;text-align:right;font-size:11px;font-weight:600;color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap}.borders .bar.in{background:var(--import)}.borders .bar.out{background:var(--export)}.borders .dir-tag{font-size:11px;font-weight:700;letter-spacing:.4px}.borders .dir-tag.in{color:var(--import)}.borders .dir-tag.out{color:var(--export)}.flow-popover{position:absolute;z-index:5;pointer-events:none;width:240px;padding:12px 14px 13px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:0 1px 2px #0b1f3a0f,0 8px 24px -10px #0b1f3a2e;display:flex;flex-direction:column;gap:8px;animation:flow-popover-in .14s ease-out}@keyframes flow-popover-in{0%{opacity:0;transform:var(--popover-tx, translateY(-100%)) translateY(4px)}to{opacity:1}}.flow-popover .exp-headline{margin:0;font-size:14px;font-weight:600;line-height:1.35;color:var(--ink);font-variant-numeric:tabular-nums}.flow-popover .exp-headline.in{color:var(--import)}.flow-popover .exp-headline.out{color:var(--export)}.flow-popover .exp-headline.internal{color:var(--internal)}.flow-popover .exp-rail{height:8px;background:var(--hairline);border-radius:4px;overflow:hidden}.flow-popover .exp-rail-fill{display:block;height:100%;border-radius:4px;transition:width .2s ease}.flow-popover .exp-rail-fill.in{background:var(--import)}.flow-popover .exp-rail-fill.out{background:var(--export)}.flow-popover .exp-rail-fill.internal{background:var(--internal)}.flow-popover .exp-meta{margin:0;font-size:12px;line-height:1.45;color:var(--ink-soft);font-variant-numeric:tabular-nums}.flow-popover .exp-meta-soft{color:var(--muted)}.flow-popover .exp-mock{margin:0;font-size:12px;font-style:italic;color:var(--muted)}.flow-popover .flow-sparkline{display:block;width:100%;height:40px;margin-top:2px}@media not all and (hover: hover) and (pointer: fine){.flow-popover{display:none}}.sweden-chart{margin:0 0 var(--space-section);padding:20px 24px 8px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--card)}.production-panel .sweden-chart{margin:0;padding:0;border:none;border-radius:0;background:transparent}.sweden-chart .head{display:grid;gap:8px 24px;margin-bottom:6px}.sweden-chart .head .title-row{display:flex;justify-content:space-between;align-items:baseline;gap:18px;flex-wrap:wrap}.sweden-chart .head .title{font-size:11px;font-weight:700;letter-spacing:.9px;color:var(--muted)}.sweden-chart .head .summary{display:inline-flex;gap:22px;flex-wrap:wrap;font-size:13px;font-variant-numeric:tabular-nums;color:var(--ink-soft);letter-spacing:-.1px}.sweden-chart .head .summary b{color:var(--ink);font-weight:700;letter-spacing:-.3px}.sweden-chart .head .summary .net-positive{color:var(--export);font-weight:600}.sweden-chart .head .summary .net-positive b{color:var(--export)}.sweden-chart .head .summary .net-negative{color:var(--import);font-weight:600}.sweden-chart .head .summary .net-negative b{color:var(--import)}.sweden-chart .head .legend{font-size:11px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center}.sweden-chart .head .legend .swatch{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:middle;margin-right:6px;box-shadow:0 0 0 1px #0e1a2b0a inset}.sweden-chart .head .legend .swatch-line{background:transparent;border-top:1.5px dashed var(--ink);border-radius:0;height:0;width:16px;box-shadow:none;margin-top:4px}.sweden-chart svg{width:100%;cursor:ew-resize;aspect-ratio:900 / 260;height:auto;display:block;margin-top:6px}.sweden-load-line{fill:none;stroke:var(--ink);stroke-width:1.6;stroke-dasharray:5 4;stroke-linecap:round;stroke-linejoin:round}.sweden-axis{fill:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.sweden-chart .focus-time{margin-left:8px;font-size:12px;font-weight:600;color:var(--ink-soft)}.sweden-chart-breakdown{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px;padding:8px 10px;border:1px solid var(--hairline);border-radius:6px;background:var(--card);font-size:12px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.sweden-chart-breakdown .cell{display:inline-flex;align-items:center;gap:6px}.sweden-chart-breakdown .cell b{color:var(--ink);font-weight:700}.sweden-chart-breakdown .swatch{display:inline-block;width:10px;height:10px;border-radius:2px}footer{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}footer .foot-top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px 22px;align-items:baseline;margin-bottom:var(--space-section);font-size:12px;letter-spacing:.2px}footer .foot-top .brand{font-weight:700;color:var(--ink);letter-spacing:.4px}footer .foot-top .brand .domain{font-weight:500;color:var(--muted);margin-left:8px}footer .foot-top .links{display:inline-flex;gap:18px;flex-wrap:wrap}footer .foot-top a{color:var(--ink-soft);text-decoration:none;border-bottom:1px solid var(--line)}footer .foot-top a:hover{color:var(--ink);border-bottom-color:var(--ink)}footer .methods{columns:2;column-gap:32px;column-rule:1px solid var(--hairline)}footer .methods p{margin:0 0 10px;break-inside:avoid;line-height:1.5}footer .methods p.footer-fx-line{font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}@media (max-width: 720px){footer .methods{columns:1;column-rule:none}}@media (max-width: 920px){.layout{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr);border:none}.stat{border-right:none;border-bottom:1px solid var(--line);padding:14px 0}}@media (max-width: 560px){.page{padding:20px 18px 48px}.zones{grid-template-columns:1fr 1fr}.zone-label{font-size:17px}.zone-price{font-size:13px}}.topbar{display:flex;align-items:flex-start;gap:14px;font-size:11px;font-weight:700;letter-spacing:1.2px;color:var(--muted);margin-bottom:var(--space-section)}.topbar .brand-lockup{flex:0 0 auto;margin-right:-28px;text-transform:none;letter-spacing:normal;font-weight:400}.topbar .tagline{margin-top:10px}.topbar .ts{letter-spacing:.4px;font-weight:500}.topbar .tagline{font-family:var(--font-sans);text-transform:none;letter-spacing:0;font-weight:500;font-size:12.5px;color:var(--ink-soft)}@media (max-width: 720px){.topbar .tagline{display:none}}.zone-city{fill:var(--ink-soft);font-family:var(--font-sans);font-size:10px;font-weight:500;letter-spacing:.2px;text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:#f3eee2e6;stroke-width:2.5px;stroke-linejoin:round}.anchor-banner{margin:0 0 var(--space-section);padding:18px 24px 16px;border-radius:var(--radius-card);background:var(--kp-ink);color:#fff;display:grid;grid-template-columns:auto 1fr;gap:4px 24px;align-items:end}.anchor-banner .a-num{grid-row:1 / 3;font-size:clamp(48px,6vw,76px);font-weight:800;letter-spacing:-1.4px;line-height:.95;color:var(--high);align-self:center}.anchor-banner.converged .a-num{color:#ffffffc7}.anchor-banner .a-headline{font-size:clamp(15px,1.6vw,18px);line-height:1.35;color:#fff;font-weight:600;letter-spacing:-.2px}.anchor-banner .a-headline strong{color:#fff;font-weight:700}.anchor-banner .a-headline em{color:#ffffffd1;font-style:normal}.anchor-banner .a-chips{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.14)}.anchor-banner .chip{display:flex;flex-direction:column;gap:2px}.anchor-banner .chip .c-label{font-size:9.5px;letter-spacing:.9px;color:#ffffffc7;font-weight:700;display:flex;align-items:center;gap:6px}.anchor-banner .chip .c-label:before{content:"";width:5px;height:5px;border-radius:50%;background:#ffffff8c;flex-shrink:0}.anchor-banner .chip .c-num{font-size:14px;font-weight:700;letter-spacing:-.3px;color:#fffffff2;line-height:1.2}.anchor-banner .chip .c-num.pop-red{color:var(--high)}.anchor-banner .chip .c-punch{font-size:11px;color:#ffffffd1;line-height:1.4}@media (max-width: 880px){.anchor-banner{grid-template-columns:1fr;gap:6px}.anchor-banner .a-num{grid-row:auto;align-self:start}.anchor-banner .a-chips{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.anchor-banner .a-chips{grid-template-columns:1fr}}h1{letter-spacing:-.7px}h1 .hl-export{color:var(--export)}h1 .hl-import{color:var(--import)}.spacer{flex:1}.postcode{margin:0 0 32px}.postcode-head{display:flex;align-items:baseline;justify-content:space-between;margin:0 2px 12px}.postcode-head h3{margin:0;font-size:12px;font-weight:700;letter-spacing:1px;color:var(--muted)}.postcode-head .lede{font-size:12px;color:var(--muted);font-style:italic;margin:0;max-width:none}.postcode-billboard{font-size:clamp(18px,2vw,24px);line-height:1.28;letter-spacing:-.3px;font-weight:600;color:var(--ink);margin:0 2px 18px;max-width:80ch}.postcode-billboard .pop{display:block;color:var(--high);font-weight:800;font-size:clamp(38px,5.4vw,72px);letter-spacing:-1.6px;line-height:1;margin:4px 0 6px;white-space:nowrap}.postcode-billboard .qual{display:block;font-size:13px;color:var(--muted);font-weight:500;letter-spacing:0;margin-top:8px}.postcode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.pc-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:18px 18px 16px;position:relative;overflow:hidden}.pc-card .name{font-size:13px;font-weight:800;letter-spacing:.6px;color:var(--ink)}.pc-card .meta{font-size:11px;color:var(--muted);margin-top:1px}.pc-card .price-row{margin-top:14px;font-size:12px;color:var(--ink-soft);display:flex;gap:14px;flex-wrap:wrap}.pc-card .price-row b{color:var(--ink);font-weight:700}.pc-card .hero-num{margin-top:14px;padding-top:14px;border-top:1px solid var(--hairline)}.pc-card .hero-num .k{font-size:11px;color:var(--muted);letter-spacing:.5px;font-weight:600;margin-bottom:4px}.pc-card .hero-num .v{font-size:clamp(22px,2.4vw,28px);font-weight:700;letter-spacing:-.6px;line-height:1.05}.pc-card .hero-num .vlabel{font-size:11px;color:var(--muted);margin-top:4px}.pc-card.baseline{background:var(--card)}.pc-card.baseline .hero-num .v{color:var(--ink-soft)}.pc-card.baseline .hero-num .v.zero{color:var(--export)}.pc-card.warn{background:var(--card);border-color:var(--line)}.pc-card.warn .hero-num .v{color:var(--mid-ink)}.pc-card.bad{background:var(--card);border-color:#d6b8b1;box-shadow:0 1px #a8261f0f,0 0 0 1px #a8261f0d inset}.pc-card.bad .hero-num .v{color:var(--high);font-size:clamp(26px,3vw,34px)}.pc-card .badge{position:absolute;top:14px;right:14px;font-size:9.5px;font-weight:700;letter-spacing:.6px;padding:2px 7px;border-radius:3px;background:var(--good-soft);color:#1d5b3a}.pc-card.warn .badge{background:var(--mid-soft);color:var(--mid-ink)}.pc-card.bad .badge{background:var(--warn-soft);color:#6b2010}.postcode-foot{margin-top:12px;font-size:12.5px;color:var(--muted);line-height:1.65}.postcode-foot strong{color:var(--ink-soft)}@media (max-width: 920px){.postcode-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 520px){.postcode-grid{grid-template-columns:1fr}}.money{margin:0 0 var(--space-section);padding:22px 26px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--card)}.money .head{font-size:11px;letter-spacing:.9px;color:var(--muted);font-weight:700;margin-bottom:10px}.money .lead{font-size:clamp(22px,2.6vw,30px);line-height:1.18;letter-spacing:-.4px;font-weight:700;color:var(--ink);margin:0 0 6px}.money .lead .num{color:var(--export)}.money .sub{font-size:14px;color:var(--ink-soft);margin:0 0 14px}.money .ledger{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--hairline);padding-top:20px}.money .ledger .cell{padding-right:18px;border-right:1px solid var(--hairline)}.money .ledger .cell:last-child{border-right:none;padding-right:0}.money .ledger .k{font-size:11px;letter-spacing:.2px;color:var(--muted);font-weight:600;margin-bottom:6px}.money .ledger .v{font-size:22px;font-weight:700;letter-spacing:-.4px;color:var(--ink)}.money .ledger .vlabel{font-size:11px;color:var(--muted);margin-top:2px}.money .caveat{margin-top:14px;font-size:12.5px;color:var(--muted);line-height:1.65}.money .caveat p{margin:0 0 10px}.money .caveat p:last-child{margin-bottom:0}.money .caveat strong{color:var(--ink-soft)}@media (max-width: 720px){.money .ledger{grid-template-columns:1fr;gap:12px}.money .ledger .cell{border-right:none;padding-right:0;padding-bottom:12px;border-bottom:1px solid var(--hairline)}.money .ledger .cell:last-child{border-bottom:none;padding-bottom:0}}.ticker-hypo{font-size:13px;line-height:1.45;border-top:1px dashed var(--line);margin-top:14px;padding-top:14px;color:var(--ink-soft)}.ticker-hypo .tag{display:inline-block;background:var(--mid-soft);color:var(--mid-ink);font-weight:700;font-size:9.5px;letter-spacing:.7px;padding:2px 7px;border-radius:3px;margin-right:8px;vertical-align:2px}.ticker-hypo .big-hypo{font-size:18px;font-weight:700;color:var(--export);letter-spacing:-.3px}.ticker-hypo .delta{color:var(--export);font-weight:700}.ticker-hypo .sub{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.5}.ledger-panel{margin:0 0 var(--space-section);padding:22px 26px 18px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--card)}.ledger-panel .lhead{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.ledger-panel .lhead h3{margin:0;font-size:12px;font-weight:700;letter-spacing:1px;color:var(--muted)}.ledger-panel .lhead .total{font-size:13px;font-weight:600;color:var(--ink-soft)}.ledger-rows{display:grid;grid-template-columns:minmax(180px,1fr) auto auto minmax(220px,1fr);column-gap:18px;row-gap:0;align-items:center}.ledger-rows .lrow{display:contents}.ledger-rows .lrow>*{padding:10px 0;border-bottom:1px solid var(--hairline);font-size:13px}.ledger-rows .lrow:last-child>*{border-bottom:none}.ledger-rows .who{font-weight:700;display:flex;align-items:center;gap:9px}.ledger-rows .who .pip{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ledger-rows .who.producer .pip{background:var(--export)}.ledger-rows .who.svk .pip{background:var(--internal)}.ledger-rows .who.gov .pip,.ledger-rows .who.grid .pip{background:var(--mid)}.ledger-rows .who.household .pip{background:var(--ink-soft)}.ledger-rows .live-tag{font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 6px;border-radius:3px;background:var(--good-soft);color:#1d5b3a;justify-self:start}.ledger-rows .live-tag.indic{background:var(--mid-soft);color:var(--mid-ink)}.ledger-rows .amt{font-weight:700;text-align:right;letter-spacing:-.2px}.ledger-rows .note{color:var(--muted);font-size:12px;line-height:1.45}.ledger-rows .note strong{color:var(--ink-soft)}@media (max-width: 720px){.ledger-rows{grid-template-columns:1fr}.ledger-rows .lrow>*{padding:6px 0;border-bottom:none}.ledger-rows .lrow{display:block;padding:12px 0;border-bottom:1px solid var(--hairline)}.ledger-rows .lrow:last-child{border-bottom:none}.ledger-rows .amt{text-align:left}}.industry{margin:0 0 var(--space-section);padding:22px 26px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--card)}.industry-head{margin-bottom:14px}.industry-head h3{margin:0 0 4px;font-size:12px;font-weight:700;letter-spacing:1px;color:var(--muted)}.industry-head .lede{margin:0;font-size:14px;color:var(--ink-soft);max-width:none}.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.ind-card{padding:14px 14px 12px;border:1px solid var(--hairline);border-radius:8px;background:#fafbfc}.ind-card.delta{background:var(--card);border-color:#d6b8b1}.ind-card.ppa{background:#f3f6fa;border-color:#d8e0eb}.ind-card .ind-loc{font-size:11px;font-weight:700;letter-spacing:.5px;color:var(--muted);margin-bottom:8px}.ind-card .ind-num{font-size:22px;font-weight:700;letter-spacing:-.4px;color:var(--ink)}.ind-card.delta .ind-num{color:var(--high);font-size:26px}.ind-card .ind-sub{font-size:11px;color:var(--muted);margin-top:6px;line-height:1.4}.industry-foot{margin:14px 0 0;font-size:12px;color:var(--muted);line-height:1.5}@media (max-width: 920px){.industry-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 520px){.industry-grid{grid-template-columns:1fr}}.hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;align-items:stretch;padding:10px 0 4px;border-bottom:1px solid var(--line);margin-bottom:var(--space-section)}.hero-text{min-width:0}.hero-ticker{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:22px 24px;display:grid;gap:6px;box-shadow:0 1px #0e1a2b05}.hero-ticker .label{font-size:11px;letter-spacing:1px;color:var(--muted);font-weight:700}.hero-ticker .big{font-size:clamp(30px,3.4vw,40px);font-weight:700;letter-spacing:-1px;line-height:1;color:var(--export);margin-top:4px}.hero-ticker.import .big{color:var(--import)}.hero-ticker .big .unit{font-size:.45em;font-weight:600;color:var(--muted);letter-spacing:0;margin-left:5px;vertical-align:.25em}.hero-ticker .money-flow{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:12px;padding:10px 14px;border-radius:8px;background:var(--good-soft);border:1px solid color-mix(in srgb,var(--export) 25%,transparent)}.hero-ticker .money-flow.out{background:var(--warn-soft);border-color:color-mix(in srgb,var(--import) 25%,transparent)}.hero-ticker .money-flow .amt{font-size:clamp(18px,1.9vw,22px);font-weight:700;letter-spacing:-.2px;color:var(--export)}.hero-ticker .money-flow.out .amt{color:var(--import)}.hero-ticker .money-flow .tag{font-size:12.5px;font-weight:500;color:var(--ink-soft);letter-spacing:.1px}.hero-ticker .ticker-north{font-size:12px;color:var(--ink-soft);margin-top:2px;letter-spacing:.2px}.ticker-contrib-stack{margin-top:6px;display:grid;gap:10px}.ticker-contrib-stack .ticker-contrib+.ticker-contrib{padding-top:6px;border-top:1px dashed var(--hairline)}.ticker-contrib{display:grid;gap:6px}.ticker-contrib-head{font-size:11px;letter-spacing:1px;color:var(--muted);font-weight:700;display:flex;justify-content:space-between;align-items:baseline}.ticker-contrib-head .unit{font-size:10px;letter-spacing:.4px;color:var(--muted);text-transform:none;font-weight:600}.ticker-contrib-rows{display:grid;gap:4px}.ticker-contrib-row{display:grid;grid-template-columns:26px minmax(0,1fr) 96px 72px;align-items:center;gap:8px;font-size:12px}.ticker-contrib-row .zone{font-weight:700;color:var(--ink-soft);letter-spacing:.4px}.ticker-contrib-row .value{font-weight:700;text-align:right;letter-spacing:.2px;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px}.ticker-contrib-row .value .value-unit{font-size:10.5px;font-weight:600;color:var(--muted);letter-spacing:.4px;margin-left:4px}.ticker-contrib-row .value-sub{font-weight:500;color:var(--muted);font-size:11px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.ticker-contrib-row.pos .value{color:var(--export)}.ticker-contrib-row.neg .value{color:var(--import)}.ticker-contrib-row .track{position:relative;height:8px;background:transparent;border-radius:2px}.ticker-contrib-row .axis{position:absolute;left:50%;top:-1px;bottom:-1px;width:1px;background:var(--line)}.ticker-contrib-row .fill{position:absolute;top:0;bottom:0;border-radius:2px}.ticker-contrib-row.pos .fill{background:var(--export)}.ticker-contrib-row.neg .fill{background:var(--import)}.ticker-contrib-foot{font-size:11px;color:var(--muted);line-height:1.45;margin-top:4px}.hero-ticker .ticker-meta{font-size:11px;color:var(--muted);letter-spacing:.3px;border-top:1px solid var(--hairline);margin-top:10px;padding-top:10px}.hero-ticker .ticker-meta b{color:var(--ink-soft);font-weight:600}@media (max-width: 880px){.hero{grid-template-columns:1fr;gap:22px;padding-top:18px}}.production-panel{margin:0 0 var(--space-section);padding:22px 26px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--card);display:grid;gap:22px}.production-divider{height:1px;background:var(--hairline);margin:4px 0 0}.profit-panel{margin:0 0 var(--space-section);padding:22px 26px 18px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--card)}.production-panel .profit-panel{margin:0;padding:0;border:none;border-radius:0;background:transparent}.profit-head{margin-bottom:14px}.profit-head h3{margin:0 0 4px;font-size:12px;font-weight:700;letter-spacing:1px;color:var(--muted)}.profit-head .lede{margin:0;font-size:14px;color:var(--ink-soft);max-width:none}.profit-table{width:100%;border-collapse:collapse;font-size:13px}.profit-table th,.profit-table td{padding:10px 12px 10px 0;text-align:left;border-bottom:1px solid var(--hairline)}.profit-table th{font-size:11px;letter-spacing:.5px;color:var(--muted);font-weight:700;border-bottom:1px solid var(--line)}.profit-table td.num,.profit-table th.num{text-align:right;font-variant-numeric:tabular-nums;font-weight:600;padding-right:14px}.profit-table td .dot{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:9px;vertical-align:middle;box-shadow:0 0 0 1px #0e1a2b0f inset}.profit-table .total-row td{border-top:1px solid var(--line);border-bottom:none;padding-top:12px}.profit-table .profit-pos{color:var(--export)}.profit-table .profit-neg{color:var(--import)}.profit-foot{margin:14px 0 0;font-size:12px;color:var(--muted);line-height:1.55}@media (max-width: 720px){.profit-table th,.profit-table td{padding:8px 8px 8px 0}}
