@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#0b1015;--panel:#11191f;--line:#263239;--text:#e9f0ed;--muted:#83969d;--green:#b8f285}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px 'DM Sans',sans-serif}header{height:85px;border-bottom:1px solid var(--line);padding:0 5%;display:flex;align-items:center;justify-content:space-between}.brand{color:var(--text);text-decoration:none;letter-spacing:2px;font-size:13px;font-weight:700}.mark{font-size:30px;color:var(--green);vertical-align:middle;margin-right:12px}.muted,.dataset{color:var(--muted)}.dataset{font:11px monospace;letter-spacing:1px}main{max-width:1500px;margin:auto;padding:42px 5% 20px}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.eyebrow{font:10px monospace;letter-spacing:2px;color:var(--green);margin:0 0 13px}h1,h2,strong{font-family:'Space Grotesk',sans-serif}h1{font-size:clamp(27px,3vw,42px);letter-spacing:-1.6px;font-weight:500;margin:0 0 12px}.subtitle{color:var(--muted);margin:0;line-height:1.7}.live{white-space:nowrap;font:10px monospace;color:var(--green);border:1px solid #374d34;padding:10px;border-radius:20px}.live i{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:6px}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:10px;background:var(--panel);margin-bottom:25px}.stats>div{padding:23px 27px;border-right:1px solid var(--line)}.stats>div:last-child{border:0}.stats span,.stats small{display:block;color:var(--muted);font-size:10px;letter-spacing:1px}.stats strong{display:block;font-size:32px;font-weight:500;margin:12px 0 7px}.stats small{letter-spacing:0;font-size:11px}.stats em{color:var(--muted);font-style:normal;font-size:22px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px}.panel-title{padding:23px 24px;display:flex;align-items:center;justify-content:space-between}h2{font-size:18px;font-weight:500;margin:0}.panel-title .eyebrow{color:var(--muted);margin-bottom:8px}button{font:inherit;cursor:pointer;color:var(--text);background:#1c282e;border:1px solid #35464d;border-radius:6px;padding:9px 12px}button:hover{border-color:var(--green)}button:disabled{opacity:.5;cursor:wait}.map-wrap{position:relative;margin:0 12px}canvas{display:block;width:100%;height:auto;aspect-ratio:1.15;touch-action:none}#tooltip{position:absolute;pointer-events:none;padding:10px;background:#080e13ee;border:1px solid var(--green);border-radius:5px;white-space:pre;font:11px/1.8 monospace;z-index:1}.map-footer{border-top:1px solid var(--line);padding:18px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:10px;color:var(--muted)}.outline{display:inline-block;border:1px solid var(--green);width:9px;height:9px;margin-right:4px}.legend{display:flex;gap:8px;align-items:center}.legend b{width:90px;height:6px;background:linear-gradient(90deg,#142934,#26647b,#61bcb0,#d5ed88)}aside{display:flex;flex-direction:column;gap:20px}.controls,.selection{padding:23px}.controls h2{font-size:19px;line-height:1.4;margin-bottom:29px}label{display:flex;justify-content:space-between;font-size:12px;margin:25px 0 15px}label span{color:var(--green);font-family:monospace}input[type=range]{width:100%;accent-color:var(--green);cursor:ew-resize}.range-label{display:flex;justify-content:space-between;font:10px monospace;color:var(--muted);margin-top:7px}.formula{background:#1a262c;padding:12px;text-align:center;color:#c9d8da;font-family:monospace;border-radius:5px;margin:24px 0 10px}.note{font-size:11px;color:var(--muted);line-height:1.7}.text-button{padding:0;background:none;border:0;color:var(--green);font-size:11px;margin-top:8px}.coordinates{display:flex;justify-content:space-between;margin:23px 0}.coordinates small{display:block;font:9px monospace;color:var(--muted);margin-bottom:8px}.coordinates strong{font-size:24px;font-weight:400}.selected-count{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;margin-bottom:20px;font:12px monospace}.primary{background:var(--green);color:#152013;border:0;width:100%;font-size:12px;font-weight:700;padding:13px}.primary span{float:right}.candidate{border-top:1px solid var(--line);padding:12px 0;font-size:12px;line-height:1.8}.candidate small{color:var(--muted)}#results{font-size:12px;line-height:1.7}footer{display:flex;justify-content:space-between;gap:20px;margin-top:30px;color:var(--muted);font:10px monospace}button:focus-visible,canvas:focus-visible,input:focus-visible{outline:2px solid var(--green);outline-offset:4px}@media(max-width:1000px){.workspace{grid-template-columns:1fr}aside{display:grid;grid-template-columns:1fr 1fr}.stats>div{padding:18px}.live{display:none}}@media(max-width:600px){header{height:65px}.brand{font-size:10px}.dataset{display:none}main{padding-top:28px}.stats{grid-template-columns:1fr 1fr}.stats>div:nth-child(2){border-right:0}.stats>div:nth-child(-n+2){border-bottom:1px solid var(--line)}aside{display:flex}footer{flex-direction:column}.map-footer .muted{display:none}.panel-title{padding:18px}h2{font-size:16px}.panel-title button{font-size:11px}}
