@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
:root{--bg:#080a12;--panel:#11141f;--muted:#7f8495;--ink:#f7f7fb;--accent:#745cff;--line:#272b3a}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,sans-serif}button,input{font:inherit}button{color:inherit;cursor:pointer}#game{position:fixed;inset:0;width:100%;height:100%;background:radial-gradient(circle at 50% 50%,#111522,#080a12 67%)}.grain{position:fixed;inset:0;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.screen{position:fixed;inset:0;display:grid;grid-template-columns:minmax(460px,650px) 1fr;padding:clamp(28px,5vw,82px);gap:7vw;background:linear-gradient(90deg,rgba(8,10,18,.98) 0%,rgba(8,10,18,.93) 45%,rgba(8,10,18,.15) 100%)}.hero{z-index:2;display:flex;flex-direction:column;justify-content:center;max-width:590px}.brand,.mini-brand{font-weight:900;letter-spacing:.22em}.brand{font-size:18px;margin-bottom:clamp(30px,6vh,72px)}.brand-dot,.mini-brand i{display:inline-block;width:13px;height:13px;background:var(--accent);border-radius:4px;margin-right:10px;box-shadow:0 0 24px #745cff}.hero h1{font-size:clamp(43px,5vw,76px);line-height:.94;letter-spacing:-.065em;margin:0 0 22px;font-weight:900}.hero h1 em{font-style:normal;color:#8470ff}.hero>p{color:#9c9faf;line-height:1.65;max-width:520px;margin:0 0 30px;font-size:15px}.menu-card{width:min(100%,430px)}label,.menu-card label{font-size:10px;letter-spacing:.19em;color:#8c90a0;font-weight:800}.menu-card input{width:100%;height:54px;margin:8px 0 12px;border:1px solid #292d3c;border-radius:9px;background:#121520;color:#fff;padding:0 17px;outline:0;transition:.2s}.menu-card input:focus{border-color:#705cff;box-shadow:0 0 0 3px #705cff1f}.primary{height:57px;width:100%;border:0;border-radius:9px;background:linear-gradient(135deg,#806cff,#634bfa);font-weight:800;display:flex;align-items:center;justify-content:space-between;padding:0 20px;box-shadow:0 12px 30px #5b48df30;transition:.18s}.primary:hover{transform:translateY(-2px);filter:brightness(1.08)}.primary b{font-size:22px}.divider{height:42px;display:flex;align-items:center;gap:12px;color:#5f6371;font-size:9px;letter-spacing:.16em;font-weight:800}.divider:before,.divider:after{content:"";height:1px;background:#272a36;flex:1}.join-row{display:flex;gap:9px}.join-row input{margin:0;letter-spacing:.16em;text-transform:uppercase}.join-row button{border:1px solid #35394a;background:#1a1d29;border-radius:9px;padding:0 20px;font-size:12px;font-weight:700}.ghost{height:43px;width:100%;border:0;background:transparent;color:#a9acb8;font-size:12px;font-weight:700}.ghost:hover{color:#fff}.error{color:#ff6489;font-size:12px;text-align:center;min-height:18px}.controls-hint{display:flex;align-items:center;gap:8px;color:#696d7d;font-size:10px;margin-top:18px;text-transform:uppercase;letter-spacing:.09em}.controls-hint kbd{border:1px solid #303442;border-bottom-width:2px;border-radius:5px;padding:5px 8px;color:#aeb1bc;background:#141721}.preview{position:relative;display:grid;place-items:center;overflow:hidden}.orbit{position:absolute;border-radius:50%;border:1px solid #ffffff12}.orbit-a{width:min(48vw,680px);aspect-ratio:1;background:#705cff10;box-shadow:inset 0 0 100px #705cff10}.orbit-b{width:min(35vw,490px);aspect-ratio:1;border-color:#705cff33}.preview-player{position:absolute;transform:translate(50px,-40px);filter:drop-shadow(0 20px 28px #000)}.preview-player i{display:block;width:48px;height:48px;border-radius:15px;background:#765eff;box-shadow:0 0 0 7px #765eff22}.preview-player span{position:absolute;width:200px;height:12px;top:18px;right:40px;background:linear-gradient(90deg,transparent,#765eff);border-radius:20px;z-index:-1}.preview-label{position:absolute;bottom:10%;right:8%;display:flex;flex-direction:column;gap:7px;text-align:right}.preview-label b{font-size:10px;letter-spacing:.22em;color:#8270ff}.preview-label small{color:#767b8b}.hidden{display:none!important}.topbar{position:fixed;z-index:3;left:25px;right:25px;top:20px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.mini-brand{font-size:14px}.mini-brand i{width:10px;height:10px;border-radius:3px}.topbar button{pointer-events:auto}.topbar>button{position:absolute;left:50%;transform:translateX(-50%);border:1px solid #303445;background:#121521dd;border-radius:9px;height:44px;padding:0 12px;display:flex;align-items:center;gap:12px}.topbar button small{font-size:8px;color:#797d8e;letter-spacing:.15em}.topbar button b{font-size:12px;letter-spacing:.18em}.topbar button span{color:#777b8d}.latency{margin-left:auto;font-size:9px;letter-spacing:.13em;color:#7f8492}.latency i{display:inline-block;width:7px;height:7px;background:#26d9a1;border-radius:50%;margin-right:7px;box-shadow:0 0 10px #26d9a1}.score-card{position:fixed;z-index:2;left:24px;bottom:24px;width:200px;border:1px solid #292d3d;background:#10131ed9;backdrop-filter:blur(12px);padding:15px 16px;border-radius:10px}.score-card small,.leaderboard h3{font-size:8px;letter-spacing:.18em;color:#7d8191;font-weight:800}.score-card strong{display:block;font-size:27px;margin:7px 0}.score-card sup{font-size:13px;color:#8171e9}.score-bar{height:3px;background:#292d3a;border-radius:2px}.score-bar i{display:block;width:0;height:100%;background:#765eff;box-shadow:0 0 7px #765eff}.leaderboard{position:fixed;z-index:2;right:24px;top:81px;width:210px;border:1px solid #292d3d;background:#10131ed9;backdrop-filter:blur(12px);padding:15px;border-radius:10px}.leaderboard h3{margin:0 0 14px}.leaderboard ol{list-style:none;padding:0;margin:0;display:grid;gap:9px}.leaderboard li{display:grid;grid-template-columns:18px 9px 1fr auto;align-items:center;gap:7px;font-size:11px;color:#b2b5c1}.leaderboard li i{width:7px;height:7px;border-radius:2px}.leaderboard li b{font-size:10px;color:#777c8b}.leaderboard li.me{color:#fff;font-weight:800}.corner-help{position:fixed;right:25px;bottom:25px;font-size:8px;letter-spacing:.14em;color:#565b6a}.corner-help span{color:#8e93a1;margin-left:8px}.modal{position:fixed;z-index:10;inset:0;display:grid;place-items:center;background:#060811b8;backdrop-filter:blur(8px)}.modal-card{width:min(92vw,380px);padding:35px;border:1px solid #2b2f3f;background:#11141f;border-radius:14px;text-align:center;box-shadow:0 30px 80px #0008}.modal-card>small{color:#ff5f83;font-size:9px;letter-spacing:.2em;font-weight:800}.modal h2{font-size:46px;line-height:.9;letter-spacing:-.05em;margin:17px 0}.modal p{color:#8e92a1;font-size:13px;margin-bottom:25px}.modal .ghost{margin-top:7px}.toast{position:fixed;z-index:20;left:50%;bottom:35px;transform:translate(-50%,20px);padding:11px 16px;background:#e9eaff;color:#151722;border-radius:7px;font-size:11px;font-weight:800;opacity:0;transition:.25s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:800px){.screen{display:block;padding:25px;background:#080a12ed}.hero{height:100%;justify-content:center}.preview{display:none}.hero h1{font-size:45px}.brand{margin-bottom:35px}.hero>p{font-size:13px}.leaderboard{right:12px;top:72px;width:170px}.score-card{left:12px;bottom:12px}.corner-help{display:none}.topbar{left:13px;right:13px}.mini-brand{font-size:0}.mini-brand i{margin:0}.topbar>button{left:auto;right:0;transform:none}.latency{display:none}}
.minimap-card{position:fixed;z-index:2;left:24px;top:18px;width:230px;border:0;background:transparent;backdrop-filter:none;padding:0;border-radius:7px}.minimap-card canvas{display:block;width:230px;height:230px;border:1px solid #343849;border-radius:7px;background:#0b0e17;image-rendering:pixelated}.leaderboard{right:24px;top:18px;width:230px;padding:17px}.leaderboard li{font-size:12px;gap:9px}.leaderboard li b{font-size:11px}.score-card{left:24px;top:260px;bottom:auto;width:230px}
@media(max-width:800px){.minimap-card{left:12px;top:72px;width:min(174px,calc(50vw - 16px))}.minimap-card canvas{width:100%;height:auto;aspect-ratio:1}.leaderboard{right:12px;top:72px;width:min(180px,calc(50vw - 16px));padding:12px}.leaderboard li{font-size:10px;gap:5px}.score-card{left:12px;top:calc(84px + min(174px,calc(50vw - 16px)));bottom:auto;width:min(174px,calc(50vw - 16px))}}
.private-options{margin-top:5px;padding:14px;border:1px solid #292d3c;border-radius:10px;background:#10131dd9;display:grid;gap:13px}.private-option,.timer-option{display:flex;align-items:center;justify-content:space-between;gap:14px}.private-option b,.timer-option b{display:block;color:#d9dbe5;font-size:10px;letter-spacing:.14em}.private-option small,.timer-option small{display:block;margin-top:4px;color:#6f7383;font-size:9px;letter-spacing:0}.switch{position:relative;flex:0 0 39px;height:22px}.switch input{position:absolute;opacity:0;pointer-events:none}.switch span{position:absolute;inset:0;border-radius:20px;background:#292d3a;transition:.2s}.switch span:after{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;border-radius:50%;background:#898d9b;transition:.2s}.switch input:checked+span{background:#6c55ef}.switch input:checked+span:after{transform:translateX(17px);background:#fff}.switch input:focus-visible+span{outline:2px solid #9a8cff;outline-offset:2px}.timer-option{cursor:default}.timer-input{display:flex;align-items:center;height:38px;border:1px solid #303445;border-radius:8px;background:#151824;overflow:hidden}.menu-card .timer-input input{width:54px;height:36px;margin:0;padding:0 5px 0 10px;border:0;background:transparent;text-align:right}.timer-input em{padding-right:9px;color:#777b89;font-size:8px;font-style:normal;font-weight:800;letter-spacing:.12em}.private-options .primary{height:45px;margin-top:1px;font-size:12px}.private-options .primary b{font-size:18px}.respawn-clock{position:absolute;right:0;display:flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid #303445;border-radius:9px;background:#121521dd}.respawn-clock small{font-size:8px;color:#797d8e;letter-spacing:.15em}.respawn-clock b{font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.08em}.respawn-clock.expired{border-color:#ff5f834d;color:#ff6b8c}.respawn-status{min-height:17px;margin:-14px 0 18px!important;color:#8d91a0!important;font-size:11px!important}.modal .primary:disabled{cursor:not-allowed;filter:saturate(.25);opacity:.5}.modal .primary:disabled:hover{transform:none}.modal-card>p+.respawn-status:empty{display:none}
.topbar{justify-content:center;gap:8px}.topbar>button,.respawn-clock{width:clamp(125px,18vw,145px);height:44px;padding:0 12px;justify-content:center}.topbar>button{position:static;transform:none}.respawn-clock{position:static}
.timer-input:has(input:disabled){opacity:.35}.timer-input input:disabled{cursor:not-allowed}
.spectator-bar{position:fixed;z-index:4;left:50%;top:72px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;min-height:38px;padding:6px 7px 6px 12px;border:1px solid color-mix(in srgb,var(--accent) 48%,#303445);border-radius:9px;background:#10131ee8;backdrop-filter:blur(12px);box-shadow:0 8px 28px #0005}.spectator-bar small{color:#777c8d;font-size:8px;font-weight:800;letter-spacing:.16em}.spectator-bar b{min-width:90px;font-size:11px;white-space:nowrap}.spectator-bar span{color:#737787;font-size:8px;letter-spacing:.1em;white-space:nowrap}.spectator-bar kbd{margin-right:3px;padding:2px 4px;border:1px solid #3b4051;border-radius:3px;background:#191d29;color:#c8cad3;font:inherit}.spectator-bar button{height:26px;padding:0 9px;border:1px solid #353a4b;border-radius:6px;background:#1a1e2a;color:#aeb1bd;font-size:9px;font-weight:700}.spectator-bar button:hover{color:#fff;border-color:#555b70}
@media(max-width:800px){.spectator-bar{top:70px;max-width:calc(100vw - 24px)}.spectator-bar span{display:none}.spectator-bar b{min-width:70px;max-width:120px;overflow:hidden;text-overflow:ellipsis}}
@media(max-width:800px){.screen{overflow-y:auto}.topbar>button{position:static;right:auto;transform:none}.respawn-clock{position:static;right:auto;left:auto}.respawn-clock small{display:none}.private-options{padding:12px}}
.arena-art{position:relative;width:min(43vw,620px);aspect-ratio:1.08;overflow:hidden;border:1px solid #ffffff1f;border-radius:26px;background-color:#10131e;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px),radial-gradient(circle at 72% 25%,#755cff20,transparent 34%);background-size:34px 34px,34px 34px,100% 100%;box-shadow:0 40px 100px #0009,inset 0 0 90px #05060aa8;transform:perspective(1100px) rotateX(5deg) rotateY(-7deg) rotateZ(1deg);animation:arenaFloat 7s ease-in-out infinite}.arena-art:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #ffffff0a;pointer-events:none}.art-glow{position:absolute;width:280px;height:280px;left:10%;bottom:4%;border-radius:50%;background:#6e57ff24;filter:blur(40px)}.art-territory{position:absolute;filter:drop-shadow(0 0 18px currentColor)}.art-territory-a{color:#7058ff;left:-2%;bottom:-3%;width:58%;height:52%;background:linear-gradient(135deg,#5e48e8,#816dff);clip-path:polygon(0 21%,18% 21%,18% 8%,42% 8%,42% 26%,65% 26%,65% 48%,88% 48%,88% 72%,100% 72%,100% 100%,0 100%);opacity:.72}.art-territory-b{color:#ff4d8d;right:-2%;top:-2%;width:39%;height:35%;background:linear-gradient(145deg,#ff5a96,#d83477);clip-path:polygon(34% 0,100% 0,100% 100%,22% 100%,22% 76%,0 76%,0 35%,34% 35%);opacity:.52}.art-trail{position:absolute;left:40%;bottom:35%;width:34%;height:34%}.art-trail i{position:absolute;display:block;background:#806dff;box-shadow:0 0 10px #806dff,0 0 24px #6f59ff;border-radius:8px}.art-trail i:nth-child(1){left:0;bottom:0;width:6px;height:68%;animation:trailPulse 1.8s ease-in-out infinite}.art-trail i:nth-child(2){left:0;top:29%;width:72%;height:6px;animation:trailPulse 1.8s .15s ease-in-out infinite}.art-trail i:nth-child(3){right:27%;top:29%;width:6px;height:45%;animation:trailPulse 1.8s .3s ease-in-out infinite}.preview-player{position:absolute;left:62.5%;top:51%;transform:none;filter:drop-shadow(0 12px 20px #0008);z-index:3;animation:playerBreathe 1.8s ease-in-out infinite}.preview-player i{display:block;width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,#9889ff,#6751f2);box-shadow:0 0 0 7px #765eff22,0 0 30px #765eff88}.preview-player i:before,.preview-player i:after{content:"";position:absolute;top:12px;width:5px;height:7px;border-radius:4px;background:#fff}.preview-player i:before{left:10px}.preview-player i:after{right:10px}.art-enemy{position:absolute;right:19%;top:19%;width:30px;height:30px;border-radius:9px;background:#ff4d8d;box-shadow:0 0 25px #ff4d8d77;animation:enemyDrift 4s ease-in-out infinite}.art-enemy:before,.art-enemy:after{content:"";position:absolute;top:9px;width:4px;height:5px;border-radius:3px;background:#fff}.art-enemy:before{left:7px}.art-enemy:after{right:7px}.art-enemy i{position:absolute;right:25px;top:12px;width:110px;height:5px;border-radius:5px;background:linear-gradient(90deg,transparent,#ff4d8d);box-shadow:0 0 10px #ff4d8d}.art-scan{position:absolute;left:0;right:0;height:24%;top:-25%;background:linear-gradient(transparent,#ffffff09,transparent);transform:skewY(-5deg);animation:scanArena 5s linear infinite;pointer-events:none}.preview-label{bottom:4%;right:4%;padding:12px 14px;border:1px solid #ffffff12;border-radius:9px;background:#0c0f19bb;backdrop-filter:blur(8px)}
@keyframes arenaFloat{0%,100%{transform:perspective(1100px) rotateX(5deg) rotateY(-7deg) rotateZ(1deg) translateY(0)}50%{transform:perspective(1100px) rotateX(4deg) rotateY(-5deg) rotateZ(.5deg) translateY(-10px)}}@keyframes trailPulse{0%,100%{opacity:.5;filter:brightness(.85)}50%{opacity:1;filter:brightness(1.35)}}@keyframes playerBreathe{0%,100%{scale:1}50%{scale:1.08}}@keyframes enemyDrift{0%,100%{translate:0 0}50%{translate:-10px 8px}}@keyframes scanArena{0%{top:-25%}100%{top:110%}}
@media(prefers-reduced-motion:reduce){.arena-art,.art-trail i,.preview-player,.art-enemy,.art-scan{animation:none}}
.topbar{top:18px}.topbar>button{top:0;border-color:color-mix(in srgb,var(--accent) 42%,#303445);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 16%,transparent)}.score-card{border-color:color-mix(in srgb,var(--accent) 35%,#292d3d)}.score-card small,.leaderboard h3{font-size:10px}.score-card strong{font-size:32px}.score-card sup{font-size:15px;color:var(--accent)}.score-bar{height:4px}.score-bar i{background:var(--accent);box-shadow:0 0 8px var(--accent)}.leaderboard li{font-size:14px}.leaderboard li b{font-size:13px}.leaderboard li.me{color:var(--accent)}.modal .primary{background:var(--accent);box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 30%,transparent)}
@media(max-width:800px){.topbar{top:18px}.score-card small,.leaderboard h3{font-size:8px}.score-card strong{font-size:27px}.leaderboard li{font-size:11px}.leaderboard li b{font-size:10px}}
.topbar>button,.score-card,.leaderboard,.minimap-card canvas{border-color:var(--accent)}.score-bar{width:100%;background:#555a68}.score-bar i{max-width:100%;transition:width .2s linear}
.minimap-card{isolation:isolate}.minimap-card #minimap-players{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;pointer-events:none;z-index:1}

/* Start-screen gameplay preview: leave territory, close a loop, claim the zone. */
.arena-art{isolation:isolate;overflow:hidden;border-color:#8c7cff38;border-radius:22px;background-color:#0d1019;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px),radial-gradient(circle at 35% 74%,#705cff1f,transparent 38%),radial-gradient(circle at 80% 17%,#ff4d8d13,transparent 32%);background-size:32px 32px,32px 32px,100% 100%,100% 100%;box-shadow:0 58px 110px #000b,0 16px 35px #060710cc,inset 0 0 90px #05060a9c;transform:perspective(1050px) rotateX(11deg) rotateY(-10deg) rotateZ(1.5deg);animation:arenaFloatNew 8s ease-in-out infinite}
.arena-art:before{content:"";position:absolute;z-index:-2;inset:0;border-radius:inherit;background:linear-gradient(180deg,transparent 72%,#090b13);box-shadow:inset 0 -16px 28px #0008}
.arena-art:after{z-index:10;border-radius:inherit;box-shadow:inset 0 0 0 1px #ffffff0b,inset 0 -35px 70px #05060a7d;pointer-events:none}
.art-depth{position:absolute;z-index:-1;inset:0;border-radius:inherit;background:linear-gradient(112deg,transparent 14%,#ffffff06 42%,transparent 68%);animation:boardLight 8s ease-in-out infinite;pointer-events:none}
.art-glow{left:5%;bottom:-5%;width:330px;height:330px;background:#6e57ff2b;filter:blur(48px);animation:zoneGlow 8s ease-in-out infinite}
.art-territory{z-index:1;background-size:16px 16px,100% 100%;filter:drop-shadow(0 0 16px currentColor)}
.art-territory-a{left:-1%;bottom:-1%;width:54%;height:50%;background-image:radial-gradient(circle,#c1b8ff5c 1px,transparent 1.4px),linear-gradient(135deg,#4e3cc3,#7862f0);clip-path:polygon(0 18%,18% 18%,18% 7%,44% 7%,44% 25%,67% 25%,67% 42%,76% 42%,76% 48%,91% 48%,91% 72%,100% 72%,100% 100%,0 100%);opacity:.82}
.art-territory-b{right:-1%;top:-1%;width:38%;height:34%;background-image:radial-gradient(circle,#ffd1e151 1px,transparent 1.4px),linear-gradient(145deg,#e84c86,#b92e67);opacity:.68}
.art-capture{position:absolute;z-index:1;left:37.5%;top:30.5%;width:32%;height:40.5%;border:0;background-image:radial-gradient(circle,#d8d2ff73 1px,transparent 1.4px),linear-gradient(145deg,#705cffcf,#5744c3d9);background-size:16px 16px,100% 100%;box-shadow:0 0 0 2px #9e90ff8c,0 0 26px #705cff4d,inset 0 0 22px #c0b8ff26;clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transform-origin:left bottom;animation:captureZone 8s ease-in-out infinite}
.art-trail{z-index:2;left:37.5%;top:30.5%;width:32%;height:40.5%;pointer-events:none}
.art-trail i{background:#9a89ff;box-shadow:0 0 7px #c4baff,0 0 19px #705cff;border-radius:5px;opacity:0}
.art-trail i:nth-child(1){left:-1px;bottom:-22px;width:8px;height:calc(100% + 24px);transform-origin:bottom;animation:trailOne 8s linear infinite}
.art-trail i:nth-child(2){left:-1px;top:-1px;width:calc(100% + 2px);height:8px;transform-origin:left;animation:trailTwo 8s linear infinite}
.art-trail i:nth-child(3){right:-1px;top:-1px;width:8px;height:calc(100% + 10px);transform-origin:top;animation:trailThree 8s linear infinite}
.art-trail i:nth-child(4){right:-1px;bottom:-1px;width:calc(100% + 2px);height:8px;transform-origin:right;animation:trailFour 8s linear infinite}
.preview-player{z-index:5;left:38%;top:67%;filter:drop-shadow(0 12px 18px #000a);animation:playerCaptureRun 8s linear infinite}
.preview-player i{width:36px;height:36px;border-radius:10px;background:linear-gradient(145deg,#a99cff,#624cea);box-shadow:0 0 0 6px #765eff24,0 0 24px #765effaa}
.preview-player i:before,.preview-player i:after{top:10px;width:4px;height:6px}.preview-player i:before{left:9px}.preview-player i:after{right:9px}
.art-enemy{z-index:4;right:17%;top:17%;width:28px;height:28px;border-radius:8px;box-shadow:0 0 0 5px #ff4d8d1c,0 0 23px #ff4d8d7d;animation:enemyPatrol 8s ease-in-out infinite}
.art-enemy:before,.art-enemy:after{top:8px}.art-enemy i{right:23px;top:11px;width:82px;height:4px;transform-origin:right;animation:enemyTrail 8s ease-in-out infinite}
.art-capture-wave{position:absolute;z-index:3;left:52%;top:50%;width:25px;height:25px;border:2px solid #c8c0ff;border-radius:50%;opacity:0;pointer-events:none;animation:captureWave 8s ease-out infinite}
@keyframes arenaFloatNew{0%,100%{transform:perspective(1050px) rotateX(11deg) rotateY(-10deg) rotateZ(1.5deg) translateY(0)}50%{transform:perspective(1050px) rotateX(9deg) rotateY(-7deg) rotateZ(.7deg) translateY(-11px)}}
@keyframes boardLight{0%,100%{opacity:.35;translate:-5% 0}50%{opacity:.85;translate:6% 0}}
@keyframes zoneGlow{0%,72%,100%{opacity:.65;scale:.95}82%{opacity:1;scale:1.13}}
@keyframes playerCaptureRun{0%,7%{left:37.5%;top:74%;translate:-50% -50%;scale:1}22%{left:37.5%;top:30.5%;translate:-50% -50%;scale:1.03}39%{left:69.5%;top:30.5%;translate:-50% -50%;scale:1.03}56%{left:69.5%;top:71%;translate:-50% -50%;scale:1.03}68%{left:37.5%;top:71%;translate:-50% -50%;scale:1.03}73%,100%{left:37.5%;top:74%;translate:-50% -50%;scale:1}}
@keyframes trailOne{0%,7%{opacity:0;transform:scaleY(0)}22%,73%{opacity:1;transform:scaleY(1)}77%,100%{opacity:0;transform:scaleY(1)}}
@keyframes trailTwo{0%,22%{opacity:0;transform:scaleX(0)}39%,73%{opacity:1;transform:scaleX(1)}77%,100%{opacity:0;transform:scaleX(1)}}
@keyframes trailThree{0%,39%{opacity:0;transform:scaleY(0)}56%,73%{opacity:1;transform:scaleY(1)}77%,100%{opacity:0;transform:scaleY(1)}}
@keyframes trailFour{0%,56%{opacity:0;transform:scaleX(0)}68%,73%{opacity:1;transform:scaleX(1)}77%,100%{opacity:0;transform:scaleX(1)}}
@keyframes captureZone{0%,72%{opacity:0;transform:scale(.94)}77%{opacity:.92;transform:scale(1.02)}84%,92%{opacity:.76;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
@keyframes captureWave{0%,73%{opacity:0;transform:translate(-50%,-50%) scale(.3)}77%{opacity:.9}87%{opacity:0;transform:translate(-50%,-50%) scale(10)}100%{opacity:0}}
@keyframes enemyPatrol{0%,100%{translate:0 0}25%{translate:-28px 9px}52%{translate:-12px 38px}76%{translate:18px 20px}}
@keyframes enemyTrail{0%,100%{opacity:.4;transform:scaleX(.75)}50%{opacity:1;transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){.arena-art,.art-depth,.art-glow,.art-capture,.art-trail i,.preview-player,.art-enemy,.art-enemy i,.art-capture-wave,.art-scan{animation:none}.art-capture{opacity:.75}.art-trail i{opacity:1;transform:none}}

.match-end{position:fixed;z-index:30;inset:0;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 38%,#261e5938,transparent 45%),#060811e8;backdrop-filter:blur(12px);overflow:hidden}.results-card{position:relative;z-index:2;width:min(94vw,620px);max-height:calc(100vh - 36px);overflow:auto;padding:34px;border:1px solid #8170ff45;border-radius:16px;background:linear-gradient(160deg,#141724f5,#0d101af5);box-shadow:0 30px 90px #000b,0 0 55px #705cff18;text-align:center}.results-card>small{color:#9082ff;font-size:9px;font-weight:900;letter-spacing:.23em}.results-card h2{margin:10px 0 4px;font-size:clamp(38px,6vw,58px);line-height:1;letter-spacing:-.055em}.results-card>p{margin:0 0 26px;color:#8f93a3;font-size:12px}.results-card>p b{color:#fff}.result-podium{display:flex;align-items:flex-end;justify-content:center;gap:10px;margin-bottom:14px}.result-place{position:relative;order:var(--order);display:grid;justify-items:center;align-content:center;gap:5px;width:31%;min-height:116px;padding:18px 9px 13px;border:1px solid color-mix(in srgb,var(--player-color) 42%,#343849);border-radius:12px;background:linear-gradient(180deg,color-mix(in srgb,var(--player-color) 14%,#151824),#10131d);box-shadow:inset 0 1px #ffffff0a}.result-place.place-1{min-height:138px;border-color:color-mix(in srgb,var(--player-color) 75%,white);box-shadow:0 0 30px color-mix(in srgb,var(--player-color) 18%,transparent),inset 0 1px #ffffff14}.result-place>em{position:absolute;top:-10px;display:grid;place-items:center;width:25px;height:25px;border:2px solid #10131d;border-radius:7px;background:var(--player-color);color:#fff;font-size:10px;font-style:normal;font-weight:900;box-shadow:0 0 16px color-mix(in srgb,var(--player-color) 55%,transparent)}.result-place strong{max-width:100%;overflow:hidden;color:#f4f4f8;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.result-place small{color:#7f8493;font-size:9px}.result-place b{color:var(--player-color);font-size:17px}.result-ranking{margin:0 0 18px;padding:4px 0;border-top:1px solid #292d3a;border-bottom:1px solid #292d3a;list-style:none;text-align:left}.result-ranking li{display:grid;grid-template-columns:24px 9px 1fr auto;align-items:center;gap:9px;min-height:32px;padding:0 8px;color:#aeb1bd;font-size:10px}.result-ranking li+li{border-top:1px solid #ffffff08}.result-ranking li>i{width:7px;height:7px;border-radius:2px;background:var(--player-color);box-shadow:0 0 8px color-mix(in srgb,var(--player-color) 55%,transparent)}.result-ranking li>span:first-child{color:#626777;font-weight:800}.result-ranking li b{color:#858a99;font-size:9px}.results-card>.primary{width:min(100%,310px);height:50px;margin:0 auto}.pixel-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}.pixel-confetti i{position:absolute;top:-16px;left:var(--x);width:var(--size);height:var(--size);border-radius:1px;background:var(--color);opacity:0;box-shadow:0 0 8px color-mix(in srgb,var(--color) 50%,transparent);animation:pixelFall var(--duration) var(--delay) linear infinite}.pixel-confetti i:nth-child(3n){clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}@keyframes pixelFall{0%{opacity:0;transform:translate3d(0,-4vh,0) rotate(0)}10%{opacity:.9}85%{opacity:.75}100%{opacity:0;transform:translate3d(var(--drift),108vh,0) rotate(540deg)}}
@media(max-width:600px){.match-end{padding:12px}.results-card{padding:27px 14px 18px}.results-card>p{margin-bottom:20px}.result-podium{gap:6px}.result-place{width:33%;min-height:106px;padding-inline:5px}.result-place.place-1{min-height:124px}.result-place strong{font-size:10px}.result-place b{font-size:14px}.result-ranking li{padding-inline:4px}.results-card>.primary{height:46px}}
@media(prefers-reduced-motion:reduce){.pixel-confetti i{animation:none;display:none}}

/* Larger match result presentation. */
.results-card{width:min(94vw,780px);padding:46px}.results-card>small{font-size:13px}.results-card h2{margin:13px 0 7px;font-size:clamp(57px,8vw,78px)}.results-card>p{margin-bottom:34px;font-size:18px}.result-podium{gap:14px;margin-bottom:20px}.result-place{min-height:150px;padding:25px 13px 18px}.result-place.place-1{min-height:178px}.result-place>em{top:-13px;width:34px;height:34px;border-radius:9px;font-size:14px}.result-place strong{font-size:18px}.result-place small{font-size:13px}.result-place b{font-size:25px}.result-ranking{margin-bottom:25px;padding-block:6px}.result-ranking li{grid-template-columns:32px 12px 1fr auto;gap:12px;min-height:44px;padding-inline:12px;font-size:15px}.result-ranking li>i{width:10px;height:10px}.result-ranking li b{font-size:13px}.results-card>.primary{width:min(100%,380px);height:58px;font-size:15px}
@media(max-width:600px){.results-card{width:min(96vw,520px);padding:30px 14px 20px}.results-card>small{font-size:10px}.results-card h2{font-size:clamp(42px,14vw,58px)}.results-card>p{margin-bottom:23px;font-size:14px}.result-podium{gap:6px;margin-bottom:15px}.result-place{min-height:118px;padding:20px 5px 12px}.result-place.place-1{min-height:140px}.result-place>em{top:-11px;width:28px;height:28px;font-size:11px}.result-place strong{font-size:12px}.result-place small{font-size:9px}.result-place b{font-size:17px}.result-ranking{margin-bottom:18px}.result-ranking li{grid-template-columns:25px 9px 1fr auto;gap:7px;min-height:34px;padding-inline:4px;font-size:11px}.result-ranking li>i{width:7px;height:7px}.result-ranking li b{font-size:10px}.results-card>.primary{height:48px;font-size:12px}}

/* Compact, touch-through HUD for phones and small tablets. */
@media(max-width:800px){.minimap-card,.score-card,.leaderboard{pointer-events:none}.minimap-card{left:8px;top:66px;width:92px}.minimap-card canvas{width:92px;height:92px;border-radius:5px}.score-card{left:8px;top:165px;width:92px;padding:7px 8px;border-radius:6px;background:#10131ebd;backdrop-filter:blur(7px)}.score-card small{font-size:6px;letter-spacing:.1em}.score-card strong{margin:3px 0 5px;font-size:17px}.score-card sup{font-size:8px}.score-bar{height:2px}.leaderboard{right:8px;top:66px;width:116px;padding:8px;border-radius:6px;background:#10131ebd;backdrop-filter:blur(7px)}.leaderboard h3{margin:0 0 6px;font-size:6px;letter-spacing:.11em}.leaderboard ol{gap:4px}.leaderboard li{grid-template-columns:11px 5px minmax(0,1fr) auto;gap:4px;font-size:8px}.leaderboard li:nth-child(n+4){display:none}.leaderboard li span:nth-of-type(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leaderboard li i{width:4px;height:4px}.leaderboard li b{font-size:7px}.spectator-bar{top:60px}}
@media(max-width:800px) and (max-height:500px){.minimap-card{top:60px;width:72px}.minimap-card canvas{width:72px;height:72px}.score-card{top:138px;width:72px;padding:6px}.score-card strong{font-size:15px}.leaderboard{top:60px;width:104px;padding:7px}.leaderboard li:nth-child(n+3){display:none}}
@media(max-width:800px){#lobby-code{width:98px;height:34px;padding:0 8px;gap:6px;border-radius:7px}#lobby-code small{display:none}#lobby-code b{font-size:10px;letter-spacing:.12em}#lobby-code span{font-size:10px}.topbar{gap:6px}}
