/* Only .zpv3 is styled. No sitewide variables, body rules or generic selectors. */




.zpv3{--zp-blue:#0062ff;--zp-ink:#020d21;--zp-body:"Barlow","Barlow",Arial,sans-serif;--zp-display:"Anton","Anton","Arial Narrow",sans-serif;position:relative;isolation:isolate;container-type:inline-size;width:100%;font-family:var(--zp-body);font-size:18px;line-height:1.5;color:var(--zp-ink);text-align:left;-webkit-font-smoothing:antialiased}
.zpv3 *,.zpv3 *::before,.zpv3 *::after{box-sizing:border-box}
.zpv3 h2,.zpv3 h3,.zpv3 p,.zpv3 figure,.zpv3 ul{margin:0;padding:0}
.zpv3 h2,.zpv3 h3{font-family:var(--zp-display);font-weight:400;font-style:normal;text-transform:none;letter-spacing:-.025em;color:inherit}
.zpv3 h2{font-size:var(--ds-title);line-height:1.1;}
.zpv3 p{font-size:var(--ds-copy);line-height:1.55;font-weight:400;letter-spacing:0;color:inherit;}
.zpv3 .zpv3-inner{width:100%;max-width:1600px;margin-inline:auto;position:relative;padding-inline:7.7%}
.zpv3 .zpv3-heading{position:relative;z-index:3;pointer-events:none}
.zpv3 .zpv3-heading p{margin-top:12px}
.zpv3 .zpv3-rankings{position:relative;overflow:hidden;padding-block:clamp(40px,3.93cqw,63px) 32px;background:radial-gradient(ellipse at 50% 50%,#fff 0,#f6f9ff 70%,#eef3fb 100%)}
.zpv3 .zpv3-rank-scene{position:relative;margin-top:-24px}
.zpv3 .zpv3-rank-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-inline:-3.5%}
.zpv3 .zpv3-rank-art{position:relative;height:clamp(240px,22.56cqw,360px)}
.zpv3 .zpv3-float{position:absolute;inset:0;transform-origin:50% 85%;animation:zpv3-float 6s ease-in-out infinite;animation-play-state:paused}
.zpv3 .zpv3-sprite{position:absolute;display:block;overflow:hidden;width:100%;height:100%;max-width:none;pointer-events:none}
.zpv3 .zpv3-rank-art .zpv3-sprite{height:clamp(320px,27cqw,432px);width:100%;bottom:0;left:0}
.zpv3 .zpv3-area .zpv3-sprite{height:clamp(280px,24.2cqw,387px)}
.zpv3 .zpv3-city .zpv3-sprite{height:clamp(345px,29cqw,464px);width:113%;left:-3%}
.zpv3 .zpv3-zone .zpv3-float{animation-delay:-2s}
.zpv3 .zpv3-city .zpv3-float{animation-delay:-4s}
.zpv3 figcaption{text-align:center;position:relative;z-index:4}
.zpv3 figcaption h3{font-size:var(--ds-card);line-height:1.15;margin:0 0 5px;}
.zpv3 figcaption p{font-size:var(--ds-copy);line-height:1.55;}
.zpv3 .zpv3-map{position:absolute;inset:20% -15% 0;opacity:.17;transform:perspective(700px) rotateX(55deg);background-image:url("./assets/ranking-map.svg");background-size:550px 350px;pointer-events:none}
.zpv3 .zpv3-lines{position:absolute;pointer-events:none;overflow:visible;fill:none;z-index:1}
.zpv3 .zpv3-lines path{vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.zpv3 .zpv3-line-halo{stroke:#0080ff;stroke-width:12;opacity:.55;filter:blur(6px)}
.zpv3 .zpv3-line-base{stroke:#087aff;stroke-width:5;opacity:.85}
.zpv3 .zpv3-line-core{stroke:#a8f6ff;stroke-width:1.7;opacity:.95}
.zpv3 .zpv3-line-runner{stroke:#fff;stroke-width:2.7;stroke-dasharray:5 95;filter:drop-shadow(0 0 5px #8bfaff);animation:zpv3-stream 4.5s linear infinite;animation-play-state:paused}
.zpv3 .zpv3-rank-connectors{inset:0;width:100%;height:clamp(240px,22.56cqw,360px)}
.zpv3 .zpv3-achievements{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(540px,41.85cqw,670px);padding-block:clamp(42px,3.93cqw,63px) 52px;background:#021124 var(--lzbg-player-achievements, none) center bottom/cover no-repeat;color:#f9fbff}
.zpv3 .zpv3-achievements::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(0,12,30,.2),transparent 65%);pointer-events:none}
.zpv3 .zpv3-achievements .zpv3-heading{width:64%}
.zpv3 .zpv3-achievements h2{font-size:var(--ds-title);white-space:nowrap;letter-spacing:0;text-shadow:0 3px 1px #020b1c;}
.zpv3 .zpv3-achievements .zpv3-heading p{font-size:var(--ds-copy);line-height:1.55;margin-top:13px;}
.zpv3 .zpv3-awards-grid{position:relative;z-index:2;width:61%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1%;margin-top:0;margin-left:-1%}
.zpv3 .zpv3-award-art{position:relative;height:clamp(225px,20.1cqw,322px)}
.zpv3 .zpv3-award-art .zpv3-sprite{height:114%;bottom:-7%;width:110%;left:-5%}
.zpv3 .zpv3-milestone .zpv3-float{animation-delay:-3s}
.zpv3 .zpv3-award figcaption{margin-top:0}
.zpv3 .zpv3-award figcaption p{white-space:nowrap}
.zpv3 .zpv3-award-connectors{inset:0;width:100%;height:100%}
.zpv3 .zpv3-record{position:absolute;z-index:2;right:3.6%;top:-23px;width:38.5%;max-width:610px;color:#f8fbff}
.zpv3 .zpv3-record-board{position:relative;aspect-ratio:1;transform:perspective(1100px) rotateX(var(--zp-rx,0deg)) rotateY(var(--zp-ry,0deg));transition:transform .4s ease;container-type:inline-size}
.zpv3 .zpv3-record-art{display:block;width:100%;height:auto;max-width:none}
.zpv3 .zpv3-record h3{position:absolute;top:24.8%;left:19.8%;font-family:var(--ds-display);font-size:var(--ds-card);font-weight:400;letter-spacing:0;line-height:1.15;white-space:nowrap;}
.zpv3 .zpv3-record-divider{position:absolute;top:32%;left:19.8%;right:14%;height:1px;background:linear-gradient(90deg,#207ed9,#2271a9)}
.zpv3 .zpv3-record-list{list-style:none;position:absolute;top:35%;left:30.5%;right:13%;height:39.4%;display:grid;grid-template-rows:repeat(3,1fr);gap:0;color:inherit}
.zpv3 .zpv3-record-list li{display:flex;align-items:center;white-space:nowrap;font-size:clamp(11px,3.2cqw,20px);font-weight:600;line-height:1.1;letter-spacing:.01em;list-style:none}
.zpv3 .zpv3-record-note{position:absolute;left:19.8%;top:77.5%;font-size:clamp(10px,2.4cqw,14px);line-height:1.2;color:#aac2de;white-space:nowrap}
.zpv3 .zpv3-record-edge{inset:0;width:100%;height:100%;z-index:3}
.zpv3 .zpv3-record-edge .zpv3-line-halo{stroke-width:4;opacity:.35;filter:blur(3px)}
.zpv3 .zpv3-record-edge .zpv3-line-base,.zpv3 .zpv3-record-edge .zpv3-line-core{opacity:.08;stroke-width:1}
.zpv3 .zpv3-record-edge .zpv3-line-runner{stroke-width:2;stroke-dasharray:3 97;animation-duration:7s}
.zpv3 .zpv3-motion-toggle{position:absolute;z-index:10;top:14px;right:16px;width:34px;height:34px;display:grid;place-items:center;border:1px solid #8ca2c8;border-radius:50%;background:#f5f9ffe8;color:#0b2350;cursor:pointer;font:600 14px Arial,sans-serif;opacity:.7}
.zpv3 .zpv3-motion-toggle[hidden]{display:none}
.zpv3 .zpv3-motion-toggle:focus-visible{outline:3px solid #0062ff;outline-offset:3px;opacity:1}
.zpv3[data-motion="running"] section[data-visible="true"] .zpv3-float,.zpv3[data-motion="running"] section[data-visible="true"] .zpv3-line-runner{animation-play-state:running}
@keyframes zpv3-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes zpv3-stream{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@media(hover:hover) and (pointer:fine){.zpv3 .zpv3-rank-item:hover .zpv3-sprite,.zpv3 .zpv3-award:hover .zpv3-sprite{filter:drop-shadow(0 8px 12px #0062ff25)}.zpv3 .zpv3-sprite{transition:filter .3s ease}}
@container(max-width:1100px){.zpv3 .zpv3-inner{padding-inline:5%}.zpv3 .zpv3-achievements .zpv3-heading{width:68%}.zpv3 .zpv3-achievements h2{font-size:var(--ds-title);}.zpv3 .zpv3-desktop-break{display:none}.zpv3 .zpv3-record{right:1%;top:40px;width:40%}.zpv3 .zpv3-awards-grid{width:62%;margin-top:18px}.zpv3 .zpv3-award figcaption p{white-space:normal}.zpv3 .zpv3-rank-art{height:270px}.zpv3 .zpv3-rank-connectors{height:270px}.zpv3 .zpv3-rank-scene{margin-top:0}}
@container(max-width:760px){.zpv3 .zpv3-inner{padding-inline:6%}.zpv3 h2{font-size:var(--ds-title);}.zpv3 .zpv3-rankings{padding-block:38px}.zpv3 .zpv3-rank-grid{grid-template-columns:1fr;gap:24px;margin:0}.zpv3 .zpv3-rank-art{height:260px}.zpv3 .zpv3-rank-art .zpv3-sprite{height:300px;width:100%;left:0}.zpv3 .zpv3-city .zpv3-sprite{height:315px}.zpv3 .zpv3-rank-scene{margin-top:12px}.zpv3 .zpv3-rank-connectors{display:none}.zpv3 .zpv3-rank-grid::before{content:"";position:absolute;top:80px;bottom:90px;left:50%;width:2px;background:linear-gradient(#0062ff00,#0062ff70,#0062ff00);box-shadow:0 0 10px #008cff50;z-index:-1}.zpv3 .zpv3-rank-item{max-width:460px;width:100%;margin-inline:auto}.zpv3 figcaption h3{font-size:var(--ds-card);}.zpv3 figcaption p{font-size:var(--ds-copy);}.zpv3 .zpv3-achievements{padding-block:40px 25px;background-size:auto 100%;min-height:0}.zpv3 .zpv3-achievements .zpv3-heading{width:100%}.zpv3 .zpv3-achievements h2{font-size:var(--ds-title);white-space:normal;max-width:600px;}.zpv3 .zpv3-awards-grid{width:100%;margin:20px 0 0;gap:14px}.zpv3 .zpv3-award-art{height:clamp(175px,38cqw,270px)}.zpv3 .zpv3-award-art .zpv3-sprite{width:110%;height:110%;bottom:0}.zpv3 .zpv3-award figcaption h3{font-size:var(--ds-card);}.zpv3 .zpv3-award figcaption p{font-size:var(--ds-copy);line-height:1.55;}.zpv3 .zpv3-record{position:relative;top:auto;right:auto;width:100%;max-width:470px;margin:12px auto 0}.zpv3 .zpv3-record-note{font-size:clamp(10px,2.6cqw,13px)}.zpv3 .zpv3-award-connectors{height:60%;top:12%}}
@container(max-width:360px){.zpv3 .zpv3-awards-grid{grid-template-columns:1fr}.zpv3 .zpv3-award-art{height:240px}.zpv3 .zpv3-award{max-width:290px;margin-inline:auto;width:100%}.zpv3 .zpv3-record-list li{font-size:clamp(11px,3.25cqw,20px)}.zpv3 .zpv3-record-note{font-size:clamp(10px,2.65cqw,13px)}}
@media(prefers-reduced-motion:reduce){.zpv3 .zpv3-float,.zpv3 .zpv3-line-runner{animation:none!important}.zpv3 .zpv3-record-board{transform:none!important;transition:none}.zpv3 .zpv3-sprite{transition:none}.zpv3 .zpv3-motion-toggle{display:none}}

/* Final desktop alignment against the approved 1374 x 1145 reference. */
@container(min-width:1101px){
.zpv3 h2>span{display:inline-block;transform:scaleX(1.10);transform-origin:left center}
.zpv3 .zpv3-rank-grid{margin-inline:-6%}
.zpv3 .zpv3-rank-art .zpv3-sprite{bottom:-18px}
.zpv3 .zpv3-area .zpv3-sprite{height:clamp(320px,28cqw,448px)}
.zpv3 .zpv3-awards-grid{width:59%}
.zpv3 .zpv3-award-art .zpv3-sprite{height:120%;bottom:-13%;transform:scaleX(1.10)}
}
