@property --laser-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
:root{color-scheme:dark;--ink:#e6f3fc;--muted:#a4bed0;--blue:#88bdff;--green:#6effca;background:#020a15}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.5 Arial,Helvetica,sans-serif;background:radial-gradient(circle at 50% 22%,#123c5f 0,#061b31 34%,#020a15 70%);min-height:100vh}a{color:inherit;text-decoration:none}button{font:inherit}.topbar{height:82px;padding:10px clamp(18px,3vw,55px);border-bottom:1px solid #537ba64f;background:#030d1bc9;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-family:Georgia,serif;font-size:1.3rem;white-space:nowrap}.brand img{width:50px;height:50px;object-fit:contain}.brand small{display:block;color:#9cc6df;font:600 .62rem/1.6 Arial,sans-serif;letter-spacing:.24em}.topbar nav{display:flex;gap:10px}.topbar nav a{padding:9px 13px;border:1px solid #739ec65e;clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);font-size:.82rem}.topbar nav a:hover,.topbar nav a:focus-visible{border-color:var(--green);box-shadow:0 0 17px #57f9c657;transform:scale(1.04)}main{max-width:1800px;margin:auto;padding:34px clamp(16px,2.5vw,45px) 80px}.heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:0 0 25px}.eyebrow,.side-index,.timeline-heading span{font-size:.72rem;font-weight:700;letter-spacing:.22em;color:#7cdef3}.heading h1{font:400 clamp(2.6rem,5vw,5.4rem)/1 Georgia,serif;letter-spacing:-.045em;margin:11px 0 8px;background:linear-gradient(105deg,#eaf8ff 10%,#9dc8e7 30%,#fff 49%,#94ffe2 54%,#d4edff 80%);background-size:270% 100%;background-position:170% 50%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.heading:hover h1{animation:reflection 1.6s ease-in-out}.heading .live{-webkit-text-fill-color:#52ff9f;text-shadow:0 0 16px #26ff8a;animation:blink 1.65s ease-in-out infinite}.heading p{color:var(--muted);margin:0}.connection{border:1px solid #76ecca83;background:#08243d;padding:12px 15px;white-space:nowrap;font-size:.83rem}.connection i,.side-status i,.signal i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#62ffad;box-shadow:0 0 14px #62ffad;margin-right:8px;animation:blink 1.65s ease-in-out infinite}.stage{display:grid;grid-template-columns:minmax(270px,1fr) minmax(400px,1.4fr) minmax(270px,1fr);align-items:stretch;gap:12px}.side,.globe-panel,.timeline{position:relative;isolation:isolate;border:1px solid #7ca9d66b;background:linear-gradient(145deg,#09223bdc,#030f21ef);box-shadow:0 24px 62px #0007,inset 0 1px #ffffff16;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);transition:transform .35s,border-color .35s,box-shadow .35s}.side:after,.globe-panel:after,.timeline:after,.metrics article:after,.tab-bar button:after{content:'';position:absolute;inset:0;padding:2px;pointer-events:none;background:conic-gradient(from var(--laser-angle),transparent 0 68%,#fff 81%,#67ffe3 86%,transparent 95%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0}.side:hover,.globe-panel:hover,.timeline:hover{transform:translateY(-4px) scale(1.006);border-color:#7ffbe0;box-shadow:0 32px 75px #000a,0 0 24px #50ffe33c}.side:hover:after,.globe-panel:hover:after,.timeline:hover:after,.metrics article:hover:after,.tab-bar button:hover:after{opacity:1;animation:laser 1.1s linear infinite}.side{padding:clamp(16px,1.8vw,27px);min-width:0}.side.residential{--side:#61ffce}.side.metropolitan{--side:#90baff}.side-index{color:var(--side)}.side h2{font:400 clamp(1.6rem,2.2vw,2.5rem)/1.08 Georgia,serif;letter-spacing:-.03em;margin:12px 0}.side h2 em{display:block;color:var(--side);font-style:normal}.side-status{font-size:.7rem;letter-spacing:.14em;color:#bad0e4}.side-status i{background:var(--side);box-shadow:0 0 12px var(--side);width:6px;height:6px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:25px 0 17px}.metrics article{min-width:0;position:relative;border:1px solid #7ca9d65e;background:#0b2944;padding:12px 9px;transition:transform .25s}.metrics article:hover{transform:scale(1.045)}.metrics span{display:block;min-height:2.5em;font-size:.7rem;color:#b2cbe2;text-transform:uppercase;letter-spacing:.07em}.metrics strong{display:block;color:var(--side);font:400 clamp(1.35rem,2vw,2.5rem) Georgia,serif}.tab-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.tab-bar button{position:relative;min-width:0;padding:9px 2px;border:1px solid #739dc461;color:#aec9de;background:#071b30;cursor:pointer;font-size:.75rem;transition:transform .25s,background .25s}.tab-bar button:hover,.tab-bar button:focus-visible{transform:translateY(-2px) scale(1.04);border-color:var(--side);outline:none}.tab-bar button[aria-selected=true]{color:#fff;background:#19435d;border-color:var(--side);box-shadow:inset 0 -2px var(--side)}.tab-panel{min-height:285px;padding:19px 2px 0}.tab-panel [hidden]{display:none!important}.leader{border-bottom:1px solid #81adc136;padding:9px 1px}.leader span{display:block;color:#a4bfce;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem}.leader strong{display:block;font:400 1.22rem Georgia,serif;margin-top:5px;color:#e5f5ff}.tab-panel h3{font-size:.75rem;letter-spacing:.15em;color:var(--side);text-transform:uppercase;margin:10px 0}.tab-panel ol{list-style:none;padding:0;margin:0;max-height:240px;overflow:auto}.tab-panel li{display:flex;justify-content:space-between;gap:8px;padding:9px 2px;border-top:1px solid #80afc336;font-size:.8rem}.tab-panel li span{overflow-wrap:anywhere}.tab-panel li b{color:var(--side);white-space:nowrap}.globe-panel{padding:18px 18px 12px;min-width:0}.globe-heading,.globe-key{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:.7rem;letter-spacing:.13em;color:#a7d5e5}.signal{color:#70ffc8;white-space:nowrap}.globe-shell{position:relative;width:100%;aspect-ratio:1/1;max-height:620px;margin:0 auto;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle,#174d7688 0,#0a2b4a64 43%,#0310211c 71%)}.globe-fallback{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 28px #58bff246)}#live-globe{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:grab}#live-globe:active{cursor:grabbing}.orbit{position:absolute;inset:5%;border:1px solid #83d9ef30;border-radius:50%;pointer-events:none}.orbit-two{inset:14%;border-style:dashed;border-color:#79e2eb20}.globe-hint{position:absolute;bottom:15px;right:10px;pointer-events:none;color:#c1dbe5;font-size:.64rem;letter-spacing:.1em;background:#041d35b3;padding:5px}.globe-key{flex-wrap:wrap;justify-content:flex-start;letter-spacing:0;font-size:.7rem}.globe-key i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#92baff;margin-right:5px}.globe-key span:nth-child(2) i{background:#6affcb}.timeline-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.timeline{padding:22px;min-width:0}.timeline-heading h2{font:400 1.75rem Georgia,serif;margin:5px 0 14px}.periods{display:flex;gap:5px;flex-wrap:wrap}.periods button{border:1px solid #83abc875;color:#b5d0e4;background:transparent;padding:7px 10px;cursor:pointer;font-size:.78rem}.periods button:hover,.periods button[aria-pressed=true]{border-color:#79f7d5;box-shadow:0 0 13px #4ff7c53c;color:white}.graph{margin-top:17px;min-height:150px;color:#9eb7cd;font-size:.8rem}.graph svg{width:100%;height:auto;display:block}.graph .axis{display:flex;justify-content:space-between}.disclosure{font-size:.8rem;color:#91aabd;margin:22px 0 0;line-height:1.6}@keyframes blink{0%,100%{opacity:1}48%{opacity:.25}65%{opacity:1}}@keyframes laser{to{--laser-angle:360deg}}@keyframes reflection{from{background-position:170% 50%}to{background-position:-70% 50%}}@media(max-width:1150px){.stage{grid-template-columns:1fr 1fr}.globe-panel{grid-column:1/-1;grid-row:1}.side.metropolitan{grid-column:1}.side.residential{grid-column:2}.globe-shell{max-height:570px}}@media(max-width:700px){.topbar{height:auto;align-items:flex-start}.topbar nav{flex-direction:column;gap:4px}.topbar nav a{padding:5px 8px;font-size:.68rem}.heading{display:block}.connection{display:inline-block;margin-top:14px}.stage,.timeline-grid{grid-template-columns:1fr}.globe-panel,.side.metropolitan,.side.residential{grid-column:1;grid-row:auto}.side.metropolitan{grid-row:1}.globe-panel{grid-row:2}.side.residential{grid-row:3}.globe-hint{font-size:.6rem}.heading h1{font-size:2.5rem}}@media(prefers-reduced-motion:reduce){.live,.connection i,.side-status i,.signal i{animation:none}.side,.globe-panel,.timeline{transition:none}}
/* Geographic detail and persistent reflection */
.side.metropolitan,.ranking-column.metropolitan{--side:#249bff}.globe-key span:first-child i{background:#249bff}
.heading h1{position:relative;display:inline-block;padding-bottom:16px;animation:reflection 5.3s linear infinite;transition:transform .35s,text-shadow .35s}.heading h1:after{content:'';position:absolute;left:0;right:0;bottom:2px;height:2px;background:linear-gradient(90deg,#1b85ff,#92fff0,#2b9aff);box-shadow:0 0 10px #4cbcff,0 0 22px #58f5df;transition:height .3s,box-shadow .3s}.heading h1:hover{transform:scale(1.025);text-shadow:0 0 24px #9cfff35e}.heading h1:hover:after{height:3px;box-shadow:0 0 17px #73c8ff,0 0 35px #6bffe4}.heading .live{background:linear-gradient(105deg,#22e57a,#73ffc1 40%,#fff 52%,#49ff9e 66%,#16d270);background-size:280% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;animation:blink 1.65s ease-in-out infinite,reflection 5.3s linear infinite}
.zoom-controls{position:absolute;z-index:4;top:14px;right:11px;display:flex;align-items:center;gap:4px;background:#041a2fe8;border:1px solid #9de6f685;padding:5px;box-shadow:0 0 20px #199eff55}.zoom-controls button{cursor:pointer;min-width:35px;height:35px;border:1px solid #8bbce99c;background:transparent;color:#e8f8ff;font-size:1.35rem;line-height:1;transition:transform .25s,box-shadow .25s,border-color .25s}.zoom-controls button:hover,.zoom-controls button:focus-visible{transform:scale(1.12);border-color:#6effc9;box-shadow:0 0 14px #5cffc870;outline:none}.zoom-controls #zoom-reset{font:700 .6rem Arial,sans-serif;letter-spacing:.07em;padding:0 8px}.zoom-controls output{min-width:42px;text-align:center;font:700 .8rem Arial,sans-serif;color:#84ffcb}.globe-hint{bottom:9px;right:9px}
.ranking-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.ranking-column{display:grid;gap:12px;align-content:start}.ranking-column.residential{--side:#61ffce}.ranking-panel{position:relative;isolation:isolate;padding:22px;min-width:0;border:1px solid #7ca9d66b;background:linear-gradient(145deg,#09223bdc,#030f21ef);box-shadow:0 22px 50px #0007;clip-path:polygon(11px 0,100% 0,100% calc(100% - 11px),calc(100% - 11px) 100%,0 100%,0 11px);transition:transform .32s,border-color .32s,box-shadow .32s}.ranking-panel:hover{transform:translateY(-4px) scale(1.007);border-color:var(--side);box-shadow:0 26px 60px #0009,0 0 19px #5bcbff3d}.rank-kicker{color:var(--side);font-size:.7rem;letter-spacing:.18em;font-weight:700}.ranking-panel h2{font:400 1.55rem Georgia,serif;margin:6px 0 14px}.ranking-panel ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.ranking-panel li{display:flex;gap:10px;align-items:center;border-top:1px solid #82afd43d;padding:9px 2px;min-width:0;font-size:.84rem}.ranking-panel li span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}.ranking-panel li .rank-num{font-size:.7rem;color:var(--side);min-width:22px}.ranking-panel li b{color:var(--side);font-weight:600;white-space:nowrap}.region-panel{background:linear-gradient(145deg,#071c31db,#020d1dea)}.region-panel h2:not(:first-child){margin-top:22px}.region-panel p{color:#99b6c9;font-size:.74rem;margin-bottom:0}
@media(max-width:950px){.ranking-grid{grid-template-columns:1fr}.ranking-panel ol{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ranking-panel ol{grid-template-columns:1fr}.zoom-controls{top:5px;right:5px}.zoom-controls button{min-width:30px;height:30px}.globe-hint{font-size:.52rem}}
@media(prefers-reduced-motion:reduce){.heading h1,.heading .live{animation:none}}
.globe-key .hq-key i{background:#62ffad;box-shadow:0 0 8px #62ffad;animation:hq-live 1.3s ease-in-out infinite}
@keyframes hq-live{50%{opacity:.35;box-shadow:0 0 16px 5px #62ffad88}}
@media(prefers-reduced-motion:reduce){.globe-key .hq-key i{animation:none}}

[hidden]{display:none!important}body .stage,body .timeline-grid,body .ranking-columns{grid-template-columns:1fr}.stage .side[data-scope="small"]{max-width:100%;min-width:0}.traffic-place-filter{display:block;margin:12px 0 20px;color:#a4bed0}.traffic-place-filter select{display:block;width:100%;margin-top:8px;background:#071b30;border:1px solid #678caa;color:#e6f3fc;padding:10px;font:inherit}[data-list="pages"],[data-list="buttons"]{max-height:450px;overflow:auto}

body .ranking-grid{grid-template-columns:1fr}

body .stage{grid-template-columns:minmax(400px,1.4fr) minmax(270px,1fr)}@media(max-width:800px){body .stage{grid-template-columns:1fr}}
