@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');

:root{
  color-scheme:dark;font-family:'DM Sans',sans-serif;font-synthesis:none;
  --bg:#08090d;--surface:#11131b;--raised:#191c29;--ink:#f4f4fa;
  --muted:#a0a5ba;--line:#292d3d;--pension:#c6ff45;--pension-soft:#e4ffac;
  --purple:#a28aff;--staff:#a38aff;--other:#45d9ec;--ease:cubic-bezier(.2,0,0,1);
  color:var(--ink);background:var(--bg);
}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(ellipse 780px 410px at 91% 0,#56359224,transparent 75%),var(--bg)}
button,select{font:inherit}button{color:inherit;cursor:pointer;border:0;background:none}a{color:inherit}
button,a,select,summary{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible,.graph-scroll:focus-visible{outline:2px solid var(--pension);outline-offset:4px}
button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}
::selection{color:#0b0d09;background:var(--pension)}
.app{max-width:1540px;padding:0 48px;margin:auto}
.header{height:92px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.brand{display:flex;gap:5px;align-items:center;text-decoration:none;font:750 21px 'Manrope',sans-serif;letter-spacing:-.7px}
.brand>span{font-weight:450;color:#b4b8ca}.brand svg{width:36px;height:36px;padding:5px;margin-right:9px;fill:none;stroke:#0a0d08;stroke-width:2.2;background:var(--pension);border-radius:10px}
.header-right{display:flex;gap:30px;align-items:center}
.year{font-size:11px;font-weight:600;color:#ded9ff;border:1px solid #574878;border-radius:30px;padding:8px 12px;background:#241c36}
.year span{font-weight:400;color:#b8aacc}
.text-button{font-size:12px;padding:8px 0;color:#ced0de;transition:color 180ms var(--ease)}.text-button:hover{color:var(--pension)}.text-button span{margin-left:9px;font-size:16px}
.intro{padding:40px 0 27px}
.eyebrow{font-size:10px;letter-spacing:1.9px;font-weight:600;color:var(--purple);margin:0 0 16px}
.intro .eyebrow:before{content:'';display:inline-block;width:6px;height:6px;background:var(--purple);border-radius:50%;margin-right:10px;box-shadow:0 0 12px #a28aff60;vertical-align:1px}
h1{font:650 clamp(34px,4.3vw,61px)/1.12 'Manrope',sans-serif;letter-spacing:-2.5px;margin:0 0 17px}
h1 span{color:var(--pension)}
.intro>p:last-child{font-size:14px;color:var(--muted);line-height:1.7;margin:0}.intro strong{font-weight:600;color:var(--ink)}
.view-switch{display:inline-flex;gap:4px;border:1px solid var(--line);padding:4px;border-radius:10px;background:#11121a;margin:0 0 25px}
.view-switch button{padding:10px 18px;font-size:12px;color:#a9adc0;border-radius:6px;transition:background 220ms var(--ease),color 220ms var(--ease),transform 180ms var(--ease)}
.view-switch button.active{background:var(--purple);color:#101019;font-weight:700;box-shadow:0 2px 12px #8970dd25}.view-switch button:not(.active):hover{background:#202231;color:#fff}.view-switch button:active{transform:scale(.97)}

/* Aggregate: lime always means the represented pension flow. */
.overview{border:1px solid #343044;background:linear-gradient(130deg,#15131f 0,#11131b 45%);border-radius:18px;padding:32px 34px 23px;box-shadow:0 20px 70px #0003;overflow:hidden;position:relative}
.overview:before{content:'';position:absolute;top:0;left:4%;right:4%;height:1px;background:linear-gradient(90deg,transparent,#ac91ff6b,#c6ff453b,transparent);pointer-events:none}
.overview-summary{display:flex;justify-content:space-between;align-items:center;gap:35px}
.global-share>.eyebrow{display:block;font-size:10px;letter-spacing:1.5px;margin-bottom:6px;color:#bdafed}
.global-share>div{display:flex;align-items:center;gap:25px}
.global-share strong{font:650 76px/1.05 'Manrope',sans-serif;color:var(--pension);letter-spacing:-4px;white-space:nowrap;text-shadow:0 0 35px #c6ff4513}
.global-share strong>span{font-size:36px;letter-spacing:-1px}.global-share p{font-size:13px;line-height:1.7;color:#c0bed1;margin:0}
.global-amounts{display:flex;gap:35px;text-align:right}.global-amounts span{display:block;font-size:11px;color:var(--muted);margin-bottom:10px}.global-amounts strong{font:600 29px 'Manrope',sans-serif;letter-spacing:-1px;white-space:nowrap}
.global-amounts>div:first-child strong{color:var(--pension)}.global-amounts>div:last-child strong{color:#b8a8ff}.global-amounts small{display:block;font-size:9px;color:#9c9fb4;font-weight:400;margin-top:7px}
.global-total{height:17px;width:100%;background:linear-gradient(90deg,#6452bb,#352f62);border:1px solid #7a64ca25;border-radius:5px;overflow:hidden;margin-top:26px}
.global-total>i{height:100%;display:block;background:linear-gradient(90deg,#aef234,#d4ff78);width:13.3%;transform-origin:left;animation:bar-enter 650ms var(--ease) both;box-shadow:0 0 20px #c6ff4550}
.global-total-labels{display:flex;align-items:center;justify-content:space-between;gap:18px;color:#a8aabe;font-size:11px;margin-top:12px;line-height:1.6}
.global-total-labels span{display:flex;align-items:center;gap:6px}.global-total-labels i{width:7px;height:7px;display:inline-block;border-radius:2px;margin-right:2px}.global-total-labels .other{background:#9b85f5}.global-total-labels b{font-weight:600;color:var(--pension)}.global-total-labels span:last-child b{color:#c3b5ff}
.overview-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);padding:25px 0 20px;margin-top:28px}
.overview-toolbar h2{font:600 18px 'Manrope',sans-serif;letter-spacing:-.45px;margin:0 0 8px}.overview-toolbar p{font-size:11px;color:var(--muted);margin:0;line-height:1.7}
.focus-button{font-size:11px;font-weight:550;display:flex;align-items:center;gap:8px;white-space:nowrap;border:1px solid #698b31;border-radius:7px;padding:11px 13px;background:#c6ff450b;color:#d8fca4;transition:background 200ms var(--ease),box-shadow 200ms var(--ease),transform 180ms var(--ease)}
.focus-button i{height:7px;width:7px;background:var(--pension);border-radius:2px}.focus-button:hover{background:#c6ff451c;box-shadow:0 0 20px #c6ff450a}.focus-button:active{transform:scale(.97)}.focus-button[aria-pressed=true]{background:var(--pension);border-color:var(--pension);color:#142006}.focus-button[aria-pressed=true] i{background:#17210a}
.comparison-head,.comparison-row{display:grid;grid-template-columns:214px minmax(0,1fr) 70px 80px 56px;gap:18px;align-items:center}
.comparison-head{font-size:10px;color:#9da2b8;letter-spacing:.2px;padding:0 12px 12px;border-bottom:1px solid var(--line)}.comparison-head>span:nth-child(n+3){text-align:right}.comparison-head .pension-heading{color:#d0eea2}.comparison-head .comparison-scale{font-size:9px;letter-spacing:0}.comparison-head small{font-size:8px;font-weight:400;display:block;margin-top:4px;color:#969aaf}
.comparison-row{padding:11px 12px;width:100%;border-bottom:1px solid #252838;text-align:left;border-radius:5px;font-size:12px;min-height:41px;transition:background 180ms var(--ease)}
button.comparison-row:hover,button.comparison-row:focus-visible{background:#211d33}.comparison-name{font-weight:450;line-height:1.4;color:#e1e2ee;transition:transform 200ms var(--ease)}button.comparison-row:hover .comparison-name{transform:translateX(2px)}
.comparison-name .arrow{opacity:0;margin-left:6px;color:var(--pension);font-size:13px}button.comparison-row:hover .arrow,button.comparison-row:focus-visible .arrow{opacity:1}
.comparison-name .debt-note{display:block;font-size:9px;color:#a0a2b7;line-height:1.5;margin-top:4px}.comparison-name .debt-note+.arrow{display:none}
.comparison-bars{height:13px;position:relative;display:block}.comparison-budget{position:absolute;left:0;top:0;height:13px;background:linear-gradient(90deg,#6150a8,#8a73f1);opacity:.72;border-radius:3px;transform-origin:left;animation:bar-enter 600ms var(--ease) both;animation-delay:var(--delay);transition:opacity 250ms var(--ease)}
.comparison-pension{position:absolute;left:0;top:0;height:13px;background:linear-gradient(90deg,#b3f53c,#d0ff70);border-radius:3px 1px 1px 3px;transform-origin:left;animation:bar-enter 600ms var(--ease) both;animation-delay:var(--delay);box-shadow:0 0 9px #c6ff4513}
.comparison-value,.comparison-retirement,.comparison-share{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.comparison-value{color:#b7adcF}.comparison-retirement{color:var(--pension);font-weight:550}.comparison-share{color:#d2efa8;font-size:11px}
.comparison-row.unrepresented .comparison-retirement{font-size:9px;color:#a0a4ba;white-space:normal;line-height:1.4}.comparison-row.unrepresented .comparison-share{color:#a0a4ba}.comparison-row.unrepresented .comparison-budget{opacity:.4}
.comparison.is-pension-focused .comparison-budget{opacity:.1}.comparison.is-pension-focused .comparison-pension{box-shadow:0 0 12px #c6ff452c}
.overview-note{font-size:10px;color:#9ca0b6;display:flex;justify-content:space-between;gap:12px;margin-top:18px;line-height:1.7}.overview-scope{font-size:10px;color:#9ca0b6;line-height:1.8;margin:18px 0 0;padding-top:17px;border-top:1px solid var(--line)}.overview-scope button{font-size:10px;text-decoration:underline;text-underline-offset:3px;padding:0;color:#c2b3ff}.comparison-row .mobile-unit{display:none}

/* Individual ministry: the same semantic palette, with luminous ribbons. */
.explorer{display:grid;grid-template-columns:260px minmax(0,1fr);background:var(--surface);border:1px solid #343044;border-radius:18px;box-shadow:0 20px 70px #0003;overflow:hidden}
.ministries{border-right:1px solid var(--line);padding:25px 12px 18px;background:#101119}
.list-heading{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.7px;padding:0 11px 16px}.list-heading span:last-child{color:#c2e69a}
.ministry-list{height:510px;overflow:auto;scrollbar-width:thin;scrollbar-color:#3c3e57 transparent;padding-right:3px}
.ministry-button{width:100%;text-align:left;display:block;padding:11px 11px 10px;border-radius:7px;position:relative;transition:background 180ms var(--ease);margin-bottom:4px}.ministry-button:hover{background:#1c1c2c}.ministry-button.active{background:#262137}.ministry-button.active:before{content:'';position:absolute;left:-2px;width:3px;top:13px;bottom:13px;background:var(--pension);border-radius:2px}
.ministry-row{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:450;line-height:1.4;color:#c9cad8}.ministry-row>span:first-child{max-width:154px}.ministry-row b{font-size:11px;color:#c8f095;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.ministry-button.active .ministry-row{font-weight:650;color:#fff}
.mini-track{height:3px;display:block;margin-top:8px;background:#302b45;width:100%;border-radius:2px}.mini-track i{display:block;height:100%;background:#a7d855;border-radius:2px}.ministry-button.active .mini-track i{background:var(--pension)}.list-note{font-size:9px;color:#989bb0;line-height:1.8;margin:18px 11px 0}
.visual-panel{min-width:0;padding:29px 33px 0;outline:none;background:radial-gradient(ellipse at 82% 72%,#a2c53b06,transparent 70%)}
.panel-head{display:flex;align-items:start;justify-content:space-between;gap:10px;min-height:69px}h2{font:600 24px/1.25 'Manrope',sans-serif;letter-spacing:-.75px;margin:0 0 10px}.panel-head p{font-size:12px;color:var(--muted);margin:0;line-height:1.7}
.animation-controls{display:flex;gap:7px;padding-top:2px}.icon-button{height:33px;width:33px;border:1px solid #39364a;border-radius:8px;display:grid;place-items:center;background:#1e1c2c;transition:background 180ms var(--ease),transform 180ms var(--ease)}.icon-button:hover{background:#39304f}.icon-button:active{transform:scale(.94)}.icon-button svg{width:17px;height:17px;stroke:#e0d9fa;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.graph-key{display:flex;gap:18px;flex-wrap:wrap;font-size:10px;color:#b6b8cb;padding-top:14px}.graph-key span{display:flex;align-items:center;gap:7px}.graph-key i{display:block;height:7px;width:7px;border-radius:2px}.staff{background:var(--staff)}.other{background:var(--other)}.pension{background:var(--pension)}
.graph-scroll{width:100%;outline:none}.graph{height:430px;width:100%;position:relative;margin-top:12px}.graph:before{content:'';position:absolute;inset:13px 0;pointer-events:none;background-image:radial-gradient(#575069 0.65px,transparent .65px);background-size:22px 22px;opacity:.22;mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent)}
#scene,#graph-labels,#fallback{position:absolute;inset:0;width:100%;height:100%}#scene canvas{display:block;width:100%;height:100%}#graph-labels{pointer-events:none}
.graph-label{position:absolute;transform:translate(-100%,-50%);font-size:11px;line-height:1.3;text-align:right;border-radius:5px;padding:5px 8px;background:#10121bed;white-space:nowrap;pointer-events:auto;color:#c0bdd3;transition:box-shadow 180ms var(--ease)}.graph-label:hover,.graph-label:focus-visible{box-shadow:0 0 0 1px #6e5a99,0 5px 20px #0004}
.graph-label strong{display:block;font:600 20px/1.3 'Manrope',sans-serif;color:#e3d9ff;letter-spacing:-.5px;margin-bottom:3px}.graph-label.retirement{color:#bdd790}.graph-label.retirement strong{color:var(--pension)}
.graph-label.source,.graph-label.destination{background:none;text-align:center;transform:translate(-50%,-100%);padding:0;font-size:11px;pointer-events:none}.graph-label.source strong{font-size:29px;color:var(--ink);letter-spacing:-1px;margin-top:5px}.graph-label.destination{color:#d3efaa}.graph-label.destination strong{font-size:38px;color:var(--pension);letter-spacing:-1.5px;text-shadow:0 0 22px #c6ff4521}.graph-label.destination small{display:block;font-size:10px;color:#a6b38f;margin-top:4px}.graph-label.category small{display:block;font-size:9px;color:#a7a8be;margin-top:3px}.graph-label.destination .approx{font:400 24px 'DM Sans',sans-serif;letter-spacing:-1px}
.explanation{display:flex;align-items:center;gap:13px;border-top:1px solid var(--line);min-height:68px;padding:15px 1px}.explanation-mark{font-size:26px;color:var(--pension);font-weight:400;align-self:flex-start;margin-top:1px}.explanation p{font-size:13px;color:#b8bbce;line-height:1.7;margin:0}.explanation strong{font-weight:600;color:#d3f1aa}
.panel-foot{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;font-size:10px;color:#9499af;line-height:1.5}.panel-foot span:last-child{text-align:right}
footer{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:11px;color:#9a9eb4;margin:22px 0 32px;line-height:1.7}footer p{margin:0}footer a{text-decoration-color:#68607e;text-underline-offset:4px}footer a:hover{color:#c5b5ff}footer .text-button{font-size:11px;color:#b9abcF;white-space:nowrap}
.mobile-selector,.pan-hint{display:none}

/* Sources remain readable in the same dark palette. */
dialog{border:1px solid #49405e;border-radius:16px;padding:32px 36px;background:#14151f;color:var(--ink);width:min(690px,calc(100% - 30px));max-height:87vh;box-shadow:0 35px 100px #0008}dialog::backdrop{background:#03040ab8;backdrop-filter:blur(7px)}.dialog-head{display:flex;justify-content:space-between;align-items:start;gap:15px}dialog p{font-size:13px;line-height:1.8;color:#b3b7cb}dialog strong{font-weight:600;color:#e7e6f1}dialog h3{font:600 15px 'Manrope',sans-serif;margin:25px 0 9px;color:#c6b7ff}dialog a{text-underline-offset:4px;color:#c6b7ff}dialog .source-link{font-size:14px;line-height:1.6;font-weight:550;display:block;margin-top:24px}dialog details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;margin-top:20px}dialog summary{font-size:13px;cursor:pointer}#accessible-data{overflow:auto}table{font-size:12px;border-collapse:collapse;width:100%;margin-top:15px}th,td{padding:10px 5px;text-align:left;border-bottom:1px solid var(--line);font-weight:400}th{color:#b1a7ca}td:last-child,th:last-child{text-align:right;font-variant-numeric:tabular-nums}.data-download{font-size:12px}.skip{position:absolute;top:-100px;left:20px;z-index:100;background:var(--pension);color:#0d1009;padding:12px;border-radius:6px}.skip:focus{top:10px}.noscript{padding:30px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@keyframes bar-enter{from{transform:scaleX(0)}to{transform:scaleX(1)}}

@media(min-width:1400px){.intro{padding-top:46px;padding-bottom:32px}.graph{height:460px}.ministry-list{height:548px}.visual-panel{padding-left:40px;padding-right:40px}.panel-head{min-height:75px}.overview-summary{padding:5px 0}}
@media(max-width:1150px){.app{padding:0 28px}.explorer{grid-template-columns:225px minmax(0,1fr)}.ministries{padding-left:8px;padding-right:8px}.ministry-row{font-size:10px}.ministry-row>span:first-child{max-width:137px}.visual-panel{padding:26px 23px 0}.panel-head h2{font-size:22px}.graph-label{font-size:10px}.graph-label strong{font-size:19px}.graph-key{gap:13px;font-size:9px}.panel-foot{font-size:9px}.comparison-head,.comparison-row{grid-template-columns:180px minmax(0,1fr) 58px 68px 48px;gap:12px}.comparison-row{font-size:11px}.global-share strong{font-size:65px}.global-share>div{gap:18px}.global-share p{font-size:12px}.global-amounts{gap:24px}.global-amounts strong{font-size:26px}}
@media(max-width:900px){.app{padding:0 22px}.explorer{grid-template-columns:1fr}.ministries{display:none}.mobile-selector{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:0 0 18px;margin-bottom:24px}.mobile-selector label{font-size:11px;color:var(--muted)}.mobile-selector select{font-size:13px;color:var(--ink);background:#1d1d2c;border:1px solid #48405d;border-radius:7px;padding:10px 29px 10px 12px;max-width:70%}.intro{padding:31px 0 25px}h1{font-size:45px;letter-spacing:-1.8px}.graph{height:430px}.visual-panel{padding:23px 25px 0}.panel-head h2{font-size:24px}.graph-label{font-size:11px}.graph-key{font-size:10px}.panel-foot{font-size:10px}.overview{padding:26px}.overview-summary{gap:20px}.global-share>div{display:block}.global-share p{margin-top:8px}.global-share p br{display:none}.global-amounts{gap:22px}.comparison-head,.comparison-row{grid-template-columns:158px minmax(0,1fr) 49px 65px 42px;gap:10px}.comparison-row{font-size:11px}.comparison-head{font-size:9px}.comparison-head .comparison-scale{font-size:8px}.overview-toolbar h2{font-size:17px}.overview-toolbar p{font-size:10px}}
@media(max-width:560px){
  .app{padding:0 16px}.header{height:76px}.brand{font-size:18px}.brand svg{width:31px;height:31px;margin-right:4px;padding:4px;border-radius:8px}.header-right{gap:14px}.year{font-size:10px;padding:6px 8px}.year span{display:none}.text-button{font-size:11px}.text-button span{margin-left:3px}
  .intro{padding-top:29px}h1{font-size:37px;line-height:1.12;letter-spacing:-1.6px;max-width:350px}.eyebrow{font-size:9px;letter-spacing:1.5px}.intro>p:last-child{font-size:13px;max-width:340px}.view-switch{width:100%;margin-bottom:20px}.view-switch button{flex:1;font-size:12px;padding:10px}
  .overview{padding:23px 16px 19px;border-radius:14px}.overview-summary{display:block}.global-share>.eyebrow{font-size:9px}.global-share>div{display:flex;gap:19px}.global-share strong{font-size:64px;letter-spacing:-3.5px}.global-share strong>span{font-size:29px}.global-share p{font-size:11px;max-width:145px;margin:0}.global-share p br{display:none}
  .global-amounts{margin-top:23px;justify-content:space-between;text-align:left;gap:12px}.global-amounts>div:last-child{text-align:right}.global-amounts strong{font-size:27px}.global-amounts span{font-size:10px;margin-bottom:7px}.global-amounts small{font-size:8px}.global-total{height:15px;margin-top:22px}.global-total-labels{display:block;font-size:10px}.global-total-labels span+span{margin-top:7px}
  .overview-toolbar{display:block;padding:21px 0 17px;margin-top:23px}.overview-toolbar h2{font-size:17px}.overview-toolbar p{font-size:11px}.focus-button{margin-top:14px;font-size:11px;padding:10px 12px}
  .comparison-head{grid-template-columns:1fr 61px 50px;gap:9px;padding:0 0 11px;font-size:9px}.comparison-head>span:first-child{grid-column:1}.comparison-head .comparison-scale,.comparison-head>span:nth-child(3){display:none}.comparison-head>span:nth-child(4){grid-column:2}.comparison-head>span:nth-child(5){grid-column:3}.comparison-head small{font-size:8px}
  .comparison-row{grid-template-columns:minmax(0,1fr) 61px 50px;gap:6px 9px;padding:12px 0 13px;min-height:59px}.comparison-name{grid-column:1;grid-row:1;font-size:11px}.comparison-row .arrow{display:none}.comparison-value{display:none}.comparison-retirement{grid-column:2;grid-row:1;font-size:11px}.comparison-share{grid-column:3;grid-row:1;font-size:11px}.comparison-bars{grid-column:1/-1;grid-row:2;height:9px;margin-top:5px}.comparison-budget,.comparison-pension{height:9px}.comparison-row .mobile-unit{display:inline;font-size:9px;color:#a9a6c0;font-weight:400;margin-left:4px}.comparison-name .debt-note{font-size:8px}.comparison-name .debt-note~.mobile-unit{display:block;margin-left:0;margin-top:3px}.comparison-row.unrepresented .comparison-retirement{font-size:8px}
  .overview-note{display:block;font-size:9px}.overview-note span{display:block}.overview-scope{font-size:9px}.overview-scope button{font-size:9px}
  .visual-panel{padding:21px 15px 0}.mobile-selector{display:block;margin-bottom:22px;padding-bottom:18px}.mobile-selector label{display:block;margin-bottom:9px}.mobile-selector select{width:100%;max-width:100%;font-size:13px}.panel-head h2{font-size:21px;max-width:235px}.panel-head p{font-size:11px}.icon-button{width:30px;height:30px}.animation-controls{gap:5px}.graph-key{font-size:9px;gap:11px;line-height:1.7}.graph-scroll{overflow:auto;scrollbar-width:thin;margin-top:7px}.graph{width:100%;height:430px}.graph-label{font-size:9px;padding-left:4px;padding-right:4px}.graph-label strong{font-size:18px}.graph-label.category small{font-size:8px}.graph-label.source{font-size:9px}.graph-label.source strong{font-size:25px}.graph-label.destination{font-size:10px}.graph-label.destination strong{font-size:28px}.graph-label.destination small{font-size:9px}.graph-label.destination .approx{font-size:18px}
  .explanation p{font-size:12px}.panel-foot{display:block;font-size:9px;line-height:1.8}.panel-foot span{display:block}.panel-foot span:last-child{text-align:left}footer{display:block;font-size:10px;margin-top:18px}footer .text-button{margin-top:7px}dialog{padding:26px 22px}.dialog-head h2{font-size:24px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.global-total>i,.comparison-budget,.comparison-pension{animation:none!important}}

/* Financing circuits: qualitative links, deliberately without a monetary scale. */
.circuits-panel{padding:29px 34px 18px;border:1px solid #343044;border-radius:18px;background:radial-gradient(ellipse at 60% 30%,#563b9820,transparent 65%),#11131b;overflow:hidden;box-shadow:0 20px 70px #0003}
.circuits-heading{display:flex;justify-content:space-between;gap:20px}.circuits-heading .eyebrow{font-size:9px;margin-bottom:11px}.circuits-heading h2{font-size:27px;margin-bottom:8px}.circuits-heading p:last-child{font-size:12px;color:var(--muted);line-height:1.6;margin:0;max-width:600px}
.circuits-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:25px 0 27px}
.circuit-filters{flex-wrap:wrap}.local-color{background:#ffbc70}
.circuit-filters{display:flex;align-items:center;gap:7px}.circuit-filters button{border:1px solid #333247;border-radius:25px;padding:8px 15px;font-size:11px;color:#b2b5ca;display:flex;align-items:center;gap:7px;transition:background 200ms var(--ease),color 200ms var(--ease),border-color 200ms var(--ease)}.circuit-filters button:hover{background:#29233f}.circuit-filters button.active{background:#e6e1f7;color:#16121f;border-color:#e6e1f7;font-weight:650}.circuit-filters i,.circuits-legend i{width:7px;height:7px;display:inline-block;border-radius:2px}.tax-color{background:#ff83c7}.circuits-legend{font-size:10px;color:#c4e3a1;display:flex;align-items:center;gap:7px}
.circuits-columns{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#8f94ad;border-bottom:1px solid var(--line);padding:0 0 14px;gap:20px}.circuits-columns span{width:25%;max-width:226px}.circuits-columns span:last-child{text-align:right}
.circuits-graph{position:relative;width:100%;height:580px;margin-top:17px}
#circuits-canvas,#circuits-fallback,#circuits-nodes{position:absolute;inset:0;width:100%;height:100%}#circuits-canvas canvas{display:block;width:100%;height:100%}#circuits-nodes{pointer-events:none}
.circuit-node{position:absolute;pointer-events:auto;text-align:left;border:1px solid #65518a;background:linear-gradient(135deg,#272038,#171722);border-radius:12px;padding:15px 17px;transition:opacity 250ms var(--ease),border-color 150ms var(--ease),box-shadow 150ms var(--ease);display:flex;flex-direction:column;justify-content:center;gap:7px}
.circuit-node .circuit-tag{font-size:8px;letter-spacing:1.25px;font-weight:600;line-height:1.3;color:#baa5f1}.circuit-node strong{font:600 16px/1.25 'Manrope',sans-serif;letter-spacing:-.4px;color:#f0ebff}.circuit-subtitle{font-size:10px;color:#a9a1bd;line-height:1.5}
.circuit-node.public{border-color:#34626d;background:linear-gradient(135deg,#152d36,#131a23)}.circuit-node.public .circuit-tag{color:#83dce9}.circuit-node.public .circuit-subtitle{color:#9ebbc5}
.circuit-node.tax{border-color:#95567d;background:linear-gradient(135deg,#382036,#1d1824)}.circuit-node.tax .circuit-tag{color:#ffa4db}.circuit-node.tax .circuit-subtitle{color:#bc9fb3}
.circuit-node.local{border-color:#936039;background:linear-gradient(135deg,#38291d,#211b19)}.circuit-node.local .circuit-tag{color:#ffbc70}.circuit-node.local .circuit-subtitle{color:#d4b69b}
.circuit-node.pension-node{background:linear-gradient(135deg,#2b3b17,#182018);border-color:#739538}.circuit-node.pension-node .circuit-tag{color:#c6e7a0}.circuit-node.pension-node strong{color:var(--pension);font-size:21px;letter-spacing:-.8px}.circuit-node.pension-node .circuit-subtitle{color:#aabe94}
.circuit-node:hover,.circuit-node:focus-visible,.circuit-node.selected{border-color:#dfd2ff;box-shadow:0 0 25px #bba3ff16}.circuit-node.tax:hover,.circuit-node.tax.selected{border-color:#ffc1e8;box-shadow:0 0 25px #ff83c71a}.circuit-node.dimmed{opacity:.25}.circuit-node.dimmed:hover,.circuit-node.dimmed:focus-visible{opacity:1}
.circuit-explanation{min-height:90px;align-items:center}.circuit-explanation a{font-size:11px;white-space:nowrap;color:#c3b0ff;text-underline-offset:3px}.circuit-explanation strong{color:#e0f3be}.circuits-foot{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-top:14px;border-top:1px solid var(--line);font-size:10px;line-height:1.6;color:#969bb1}.circuits-foot button{font-size:10px;color:#c3b0ff;white-space:nowrap;padding:0}
.circuits-context{margin-top:20px}.scope-bridge{display:flex;align-items:center;gap:25px;border:1px solid #39344a;background:#15141e;border-radius:13px;padding:22px 27px;text-decoration:none;transition:border-color 180ms var(--ease),background 180ms var(--ease)}.scope-bridge:hover{border-color:#8770b9;background:#1b1728}.scope-bridge>strong{font:650 48px/1.1 'Manrope',sans-serif;color:var(--pension);white-space:nowrap;letter-spacing:-2px}.scope-bridge>strong>span{font-size:27px}.scope-bridge>div{max-width:640px}.scope-bridge b{font-size:14px;font-weight:550;color:#f2edff}.scope-bridge p{font-size:12px;color:#a6a5bc;line-height:1.65;margin:6px 0 0}.scope-link{margin-left:auto;color:#c7b6ff;font-size:12px;white-space:nowrap;display:flex;gap:12px;align-items:center}.scope-link>span{font-size:22px}
.other-regimes{border-bottom:1px solid var(--line);padding:19px 2px;font-size:12px;line-height:1.8;color:#a5a7bc}.other-regimes summary{color:#b8aecf;cursor:pointer}.other-regimes p{max-width:930px;margin:13px 0 0}.other-regimes a{color:#c6b2f7;text-underline-offset:3px}.overview-boundary{font-size:11px;line-height:1.8;background:#251e354d;border-left:2px solid #8b70d1;padding:10px 13px;margin:20px 0 0;color:#bbb3d1}.overview-boundary a{color:#c9b8ff;text-underline-offset:3px}.circuit-source-list{display:grid;gap:10px;font-size:12px;line-height:1.6;margin:20px 0 30px}
@media(max-width:900px){.circuits-panel{padding:25px 24px 17px}.scope-bridge{gap:18px;padding:20px}.scope-link{font-size:11px}.scope-bridge>strong{font-size:42px}.circuit-node{padding:13px}.circuit-node strong{font-size:15px}.circuit-node.pension-node strong{font-size:19px}}
@media(max-width:740px){.scope-bridge{flex-wrap:wrap}.scope-bridge>div{flex:1;min-width:180px}.scope-link{width:100%;margin-left:0;justify-content:flex-end}.circuits-legend{font-size:9px}.circuit-filters button{padding:8px 12px}}
@media(max-width:560px){
  .circuits-panel{padding:22px 15px 15px;border-radius:14px}.circuits-heading{gap:10px}.circuits-heading h2{font-size:23px;max-width:220px}.circuits-heading p:last-child{font-size:11px}.circuits-heading .animation-controls{flex-shrink:0}.circuits-heading .eyebrow{font-size:8px;letter-spacing:1px}
  .circuits-toolbar{flex-wrap:wrap;gap:15px;margin-top:20px;margin-bottom:15px}.circuit-filters{width:100%;gap:6px}.circuit-filters button{flex:1 0 25%;justify-content:center;font-size:11px;padding:9px 10px}.circuit-filters button[data-circuit-focus="local"]{flex:2 0 60%}.circuits-legend{font-size:10px;margin-left:auto}.circuits-columns{display:none}.circuits-graph{margin-top:18px}
  .circuit-node{padding:11px;border-radius:10px;gap:7px}.circuit-node strong{font-size:14px;letter-spacing:-.3px;overflow-wrap:normal}.circuit-node .circuit-tag{font-size:7px;letter-spacing:.7px}.circuit-subtitle{font-size:9px;line-height:1.5}.circuit-node.pension-node strong{font-size:18px;letter-spacing:-.5px}
  .circuit-explanation{min-height:135px}.circuits-foot{display:block;font-size:9px}.circuits-foot button{font-size:10px;margin-top:8px}.scope-bridge{padding:19px 17px;gap:15px}.scope-bridge>strong{font-size:38px}.scope-bridge>strong>span{font-size:23px}.scope-bridge>div{min-width:170px}.scope-bridge b{font-size:12px}.scope-bridge p{font-size:11px}.scope-link{font-size:11px}.other-regimes{font-size:11px}.overview-boundary{font-size:10px}
}
