*{box-sizing:border-box} :root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f0f7eb;background:#102a2b;font-synthesis:none}body{margin:0;overflow:hidden}#arena{position:fixed;inset:0;width:100%;height:100%;touch-action:none}header{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:30px 38px;pointer-events:none;z-index:3}.brand{font-size:25px;font-weight:950;letter-spacing:-1.5px;color:#f0f7eb;text-decoration:none;line-height:1;pointer-events:auto}.brand span{color:#c6f078}.brand small{display:block;font-size:10px;letter-spacing:4px;margin-top:9px;font-weight:650}.connection{display:flex;align-items:center;gap:9px;font-size:14px;color:#c2d2ca}i{width:7px;height:7px;border-radius:50%;background:#9dacaa}i.live{background:#c6f078;box-shadow:0 0 12px #c6f07860}main{position:fixed;inset:90px 0 0;display:flex;align-items:center;padding:20px 8vw 35px;background:linear-gradient(90deg,#102a2bf5 0%,#102a2bdd 32%,#102a2b00 80%);overflow:auto}.card{width:420px;max-width:100%;padding:15px 0;margin-block:auto}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;color:#c6f078}h1{font-size:clamp(42px,5.4vw,70px);letter-spacing:-3px;line-height:1.03;margin:23px 0}h1 span{color:#c6f078}.card>p{color:#b8ccc3;line-height:1.65;font-size:16px;max-width:340px}form{margin-top:26px;max-width:355px}label{display:block;font-size:14px;margin:16px 0 8px;font-weight:650}label span{color:#95aaa3;font-weight:400;margin-left:4px}input{font:inherit;width:100%;background:#183738;color:#eff6ed;border:1px solid #47615c;border-radius:10px;padding:13px 15px;outline:none}input:focus{border-color:#c6f078;box-shadow:0 0 0 3px #c6f07820}input::placeholder{color:#91a69e;font-size:14px}button{cursor:pointer;font:inherit;border:0;border-radius:9px;font-weight:700}button:focus-visible,a:focus-visible{outline:3px solid #70d9ff;outline-offset:4px}#join{display:flex;justify-content:space-between;align-items:center;width:100%;padding:15px 19px;background:#c6f078;color:#142c24;margin-top:20px}#join:hover{background:#d5ff87}#join:disabled{opacity:.6;cursor:wait}#join span{font-size:22px}.how{display:flex;flex-direction:column;gap:10px;margin-top:24px;color:#bed0c7;font-size:14px}.how b{color:#c6f078;margin-right:12px;font-size:12px}.card .footnote{font-size:12px;margin-top:22px;color:#94aca3}#error{color:#ffad96;font-size:14px;min-height:0;margin:10px 0 0}#error:empty{display:none}[hidden]{display:none!important}.room-bar{position:fixed;top:105px;left:38px;display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:1px;background:#112f30e8;border:1px solid #39504a;border-radius:12px;padding:10px 14px}.room-bar strong{font-size:15px;color:#c6f078;margin-left:5px}.room-bar button{font-size:13px;padding:8px 12px;background:#294643;color:#ecf7e5;letter-spacing:0}.leaderboard{position:fixed;right:38px;top:105px;width:230px;background:#112f30e8;border:1px solid #39504a;padding:20px;border-radius:14px}.board-title{font-size:11px;letter-spacing:1.5px;font-weight:750;display:flex;justify-content:space-between;color:#afc5ba}.board-title span{color:#c6f078}ol{padding:0;list-style:none;margin:15px 0 0}li{display:flex;gap:10px;align-items:center;font-size:14px;padding:9px 0}li .score{margin-left:auto;color:#c6f078}li .player-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}li .rank{color:#8baba0;font-size:12px;width:12px}.stats{position:fixed;bottom:30px;left:38px;display:flex;gap:24px;align-items:center;background:#112f30e8;border:1px solid #39504a;border-radius:14px;padding:18px 23px}.stats small{display:block;font-size:10px;color:#a3c0b4;letter-spacing:1.5px}.stats strong{display:block;font-size:30px;letter-spacing:-1px;margin-top:3px}.stats p{font-size:13px;line-height:1.6;color:#e6f4dc;border-left:1px solid #39504a;padding-left:23px;margin:0}.stats p span{color:#95b3a7}#notice{position:fixed;bottom:35px;left:50%;transform:translateX(-50%);background:#c6f078;color:#193227;border-radius:10px;padding:12px 18px;font-size:14px;max-width:90vw}#notice:empty{display:none}@media(max-width:650px){header{padding:23px 20px}.brand{font-size:22px}.connection{font-size:12px}main{padding:20px 25px 30px;background:#102a2bdd;align-items:flex-start}.card{margin:auto}h1{font-size:48px}.room-bar{top:90px;left:15px;right:15px;justify-content:space-between;gap:6px}.leaderboard{right:15px;top:156px;width:170px;padding:13px;max-height:220px;overflow:auto}.stats{left:15px;bottom:15px;padding:13px 18px;gap:22px}.stats p{display:none}.stats strong{font-size:25px}#notice{bottom:115px;width:max-content}}@media(max-height:700px){main{align-items:flex-start}.card{padding:0}h1{font-size:44px;margin:15px 0}.how{margin-top:16px}.card .footnote{margin-top:12px}}

#random-join{width:100%;margin-top:10px;padding:14px 18px;background:#294643;color:#eff7e8;border:1px solid #729076}#random-join:hover{background:#36594e}#random-join:disabled{opacity:.6;cursor:wait}.join-hint{font-size:12px;line-height:1.5;color:#b8ccc3;margin:10px 0 0}


#player-color{width:100%;font:inherit;color:#eff6ed;background:#183738;border:1px solid #47615c;border-radius:10px;padding:12px}#player-color:focus-visible{outline:3px solid #c6f078;outline-offset:2px}#join #join-label{font-size:16px}#random-join{margin-top:20px}


#death{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(380px,90vw);padding:28px;background:#112f30f5;border:1px solid #729076;border-radius:16px;text-align:center;box-shadow:0 16px 70px #0008}#death h2{margin:0 0 14px}#death p{font-size:14px;line-height:1.5;color:#c2d2ca}#respawn{background:#c6f078;color:#142c24;padding:14px 30px}#respawn:disabled{opacity:.6}


.header-status{display:flex;align-items:center;gap:20px}.gem-balance{color:#8ce6ff;background:#153c46;border:1px solid #4d8591;border-radius:10px;padding:9px 13px;font-size:15px;white-space:nowrap}.gem-balance strong{color:#e4faff}.gem-balance span{font-size:12px}.gem-reward{color:#8ce6ff!important;font-weight:750;font-size:18px!important}@media(max-width:650px){.header-status{gap:6px;align-items:flex-end;flex-direction:column}.gem-balance{padding:5px 9px;font-size:14px}.connection{font-size:11px}}

#shop-open{pointer-events:auto;background:#8ce6ff;color:#102a2b;padding:9px 14px}#shop{color:#eff7e8;background:#173737;border:1px solid #62867a;border-radius:18px;width:min(780px,94vw);max-height:85vh;padding:26px;overflow:auto}#shop::backdrop{background:#071b20bb}.shop-heading{display:flex;justify-content:space-between;align-items:center}.shop-heading h2{margin:0}.shop-heading button{background:#30534b;color:white;padding:8px 12px}#shop>p{line-height:1.5;color:#bed1c7;font-size:15px}.shop-wallet{color:#8ce6ff!important;font-size:20px!important}#shop-items{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.shop-card{border:1px solid #4a6b60;border-radius:12px;padding:16px;background:#102e30}.shop-card h3{font-size:18px;margin:12px 0}.shop-card p{font-size:14px;line-height:1.5;color:#b6cbc0;min-height:63px}.shop-card button,#cosmetic-remove{padding:11px 13px;background:#c6f078;color:#102a2b;width:100%}.shop-card button:disabled,#cosmetic-remove:disabled{opacity:.5;cursor:default}#cosmetic-remove{margin-top:18px;width:auto;background:#31564c;color:#eaf5e7}#shop-status{min-height:23px}.shop-note{font-size:12px!important}.cosmetic-preview{height:72px;position:relative}.cosmetic-preview:before{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:45px;height:45px;border-radius:50%;background:#ff2d32}.preview-neon:after{content:'';position:absolute;left:50%;top:8px;transform:translateX(-50%);width:48px;height:14px;border:3px solid #ff80d8;border-radius:50%;box-shadow:0 0 12px #ff45cb}.preview-orbit:after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:65px;height:65px;border:5px dotted #cc9aff;border-radius:50%}.preview-gold:after{content:'';position:absolute;left:50%;bottom:4px;transform:translateX(-50%);width:65px;height:19px;border:5px double #ffd66b;border-radius:50%;box-shadow:0 0 8px #ffa72d}@media(max-width:650px){#shop-items{grid-template-columns:1fr}.shop-card p{min-height:0}.header-status{flex-direction:row;flex-wrap:wrap;justify-content:flex-end;max-width:60%}.header-status .connection{width:100%;justify-content:flex-end}}

.cosmetic-preview.has-wearable{height:110px}.cosmetic-preview.has-wearable:before,.cosmetic-preview.has-wearable:after{display:none}.cosmetic-preview canvas{position:static;display:block;width:176px;max-width:100%;height:110px;margin:auto;touch-action:auto}

#sound-toggle{pointer-events:auto;background:#294643;color:#eaf5e7;padding:9px 12px;font-size:13px;white-space:nowrap}.header-status{flex-wrap:wrap;justify-content:flex-end}

#waiting-room{color:#edf7e8;background:#153333;border:1px solid #628374;border-radius:22px;padding:30px;width:min(440px,calc(100vw - 32px));max-height:85vh;overflow:auto;box-shadow:0 25px 90px #0008}#waiting-room::backdrop{background:#061b20cc;backdrop-filter:blur(8px)}#waiting-room h2{font-size:32px;margin:15px 0}#waiting-room p{color:#b9cec3}#waiting-code{display:block;font-size:38px;letter-spacing:7px;color:#c6f078}#waiting-players{padding:8px 0;margin:18px 0;border-top:1px solid #39574d;border-bottom:1px solid #39574d}#waiting-players li{justify-content:space-between}#waiting-players small{color:#c6f078}.waiting-actions{display:flex;gap:10px}.waiting-actions button{background:#294d43;color:#eaf5e7;padding:12px;flex:1}#start-game{background:#c6f078;color:#153124;width:100%;padding:15px;margin-top:15px}#waiting-error{color:#ffad96!important}

#medals-open{pointer-events:auto;padding:9px 12px;background:#594b29;color:#ffe7a0}#medals{background:#153333;color:#edf7e8;border:1px solid #628374;border-radius:22px;padding:28px;width:min(680px,calc(100vw - 32px));max-height:85vh}#medals::backdrop{background:#061b20cc;backdrop-filter:blur(8px)}#medals-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.medal-card{display:flex;gap:14px;padding:16px;border:1px solid #405d51;border-radius:14px;background:#1c3935}.medal-card.earned{border-color:#bc9e48;background:linear-gradient(135deg,#484128,#1c3935)}.medal-icon{font-size:35px;color:#8baba0}.earned .medal-icon{color:#ffd768;text-shadow:0 0 18px #ffce4050}.medal-card h3{margin:0;font-size:16px}.medal-card p{font-size:13px;line-height:1.5;color:#bfd1c7;margin:8px 0}.medal-card progress{display:block;width:100%;height:8px;accent-color:#e8c667;margin:10px 0}.medal-card small{color:#d9ce9a}#medals-count{color:#ffe09c}#medal-toast{position:fixed;z-index:10;bottom:25px;left:50%;transform:translateX(-50%);max-width:90vw;padding:16px 24px;border-radius:12px;background:#ffdf85;color:#293325;box-shadow:0 8px 35px #0006;font-weight:700}

.skin-preview::before,.skin-preview::after{display:none!important}.skin-preview canvas{width:100%;height:100%;object-fit:contain}#skin-remove{padding:12px 16px;background:#294643;color:#ecf7e5;margin-top:16px}
#account-bar{position:fixed;z-index:20;left:12px;right:12px;bottom:8px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:9px 14px;background:#102b2ef5;border:1px solid #54757a;border-radius:12px;color:#f5ffff;font:14px/1.4 system-ui}#account-bar[hidden]{display:none}#account-bar a{color:#acffcd}#account-bar button{font-size:13px;padding:6px 10px;width:auto;margin:0}#age-gate{max-width:440px;width:calc(100% - 32px);padding:30px;border-radius:20px;background:#122f32;color:#f8ffff;border:1px solid #688c91}#age-gate::backdrop{background:#061517ee}#age-gate a{color:#afffcf}#age-gate h2{font-size:28px}.connect-page{position:relative;display:grid;place-items:center;min-height:100dvh;padding:30px}.connect-page .card{max-width:560px}.connect-page a{color:#baffce}@media(max-width:600px){#account-bar{font-size:12px;gap:8px}#save-state{width:100%}}

.game-identity{display:grid;gap:14px;flex-shrink:0}.garcadium-return{display:inline-flex;align-items:center;gap:8px;font:650 12px/1.2 system-ui;color:#c6ff33;text-decoration:none;pointer-events:auto}.garcadium-return b{display:grid;place-items:center;background:#c6ff33;color:#101725;width:22px;height:22px;border-radius:6px;font-size:16px}.brand small{font-size:12px;letter-spacing:1.5px}header{padding-top:18px;padding-bottom:18px}main{top:116px;padding-bottom:110px}.room-bar,.leaderboard{top:125px}.stats{bottom:calc(var(--account-height,0px) + 24px)}#notice{bottom:calc(var(--account-height,0px) + 28px)}#guest-age{width:100%;padding:12px;background:#183738;color:#f5ffff;border:1px solid #688c91;border-radius:9px;font:inherit}#age-form button{margin-top:18px;padding:12px 20px;background:#c6ff33;color:#102a2b}@media(max-width:650px){header{padding:16px}.game-identity{gap:10px}.brand{font-size:20px}.brand small{font-size:12px;letter-spacing:0}.garcadium-return{font-size:12px}.header-status{max-width:52%;gap:5px}.header-status button{font-size:12px!important;padding:8px!important}.room-bar{top:130px}.leaderboard{top:195px}.stats{bottom:calc(var(--account-height,0px) + 18px)}main{top:125px;padding-bottom:145px}}

/* The player name opens account actions without cluttering the save bar. */
#player-menu > summary{display:flex;align-items:center;gap:9px;min-height:36px;padding:7px 10px;border:1px solid #54757a;border-radius:8px;background:#1b3c3c;color:#f0f7eb;cursor:pointer;list-style:none;font-weight:650}
#player-menu > summary::-webkit-details-marker{display:none}
#player-menu > summary:hover,#player-menu[open] > summary{border-color:#c6ff33;color:#c6ff33}
#player-menu > summary:focus-visible{outline:3px solid #70d9ff;outline-offset:4px}
.player-menu-chevron{font-size:17px;line-height:1;color:#c6ff33}
#player-menu[open] .player-menu-chevron{transform:rotate(180deg)}
.player-menu-panel{position:absolute;left:10px;bottom:calc(100% + 10px);width:min(300px,calc(100vw - 48px));padding:16px;border:1px solid #63847b;border-radius:12px;background:#173737;box-shadow:0 10px 35px #06151788}
.player-menu-panel p{margin:0 0 13px;color:#d0e1d6;font-size:13px;line-height:1.5}
#account-bar #disconnect-account{width:100%;min-height:42px;padding:11px 12px;background:#c6ff33;color:#102a2b;text-align:left}
#account-bar #disconnect-account:hover{background:#d4ff6c}
#account-bar #disconnect-account:disabled{opacity:.65;cursor:wait}
.player-menu-panel .player-menu-note{margin:11px 0 0;font-size:12px;color:#b6cbc0}
@media(max-width:600px){#player-menu > summary{min-height:40px}}

#zone-status{position:fixed;top:160px;left:38px;max-width:280px;color:#f2c6ff;background:#341d48cf;border:1px solid #ae70c4;border-radius:10px;padding:10px 14px;font-size:13px;pointer-events:none}@media(max-width:650px){#zone-status{top:auto;bottom:95px;left:15px;max-width:220px}}

#round-results{color:#edf7e8;background:#153333;border:1px solid #c6f078;border-radius:22px;padding:30px;width:min(460px,90vw);max-height:85vh}#round-results::backdrop{background:#061b20db;backdrop-filter:blur(8px)}#results-winner{font-size:26px;color:#c6f078;font-weight:800}#results-players li{border-bottom:1px solid #39574d;padding:12px 0}#results-countdown{color:#c6d8cb}

#minimap-panel{position:fixed;right:38px;bottom:30px;width:200px;padding:10px;border:1px solid #547363;border-radius:14px;background:#112f30ed;pointer-events:none}.minimap-title{font-size:10px;letter-spacing:1.5px;color:#c6f078;font-weight:750;margin-bottom:8px}#minimap{position:static;inset:auto;display:block;width:100%;height:auto;border-radius:5px}.minimap-legend{font-size:10px;color:#c4d8ce;text-align:center;margin-top:8px}@media(max-width:650px){#minimap-panel{right:15px;bottom:15px;width:130px;padding:7px}.minimap-legend{font-size:8px}.minimap-title{font-size:9px;margin-bottom:5px}}@media(max-height:500px){#minimap-panel{width:110px;padding:6px;bottom:10px;right:15px}.minimap-legend{font-size:7px}}

/* Share the available height so the map never covers leaderboard rows. */
#hud-right{position:fixed;top:105px;right:38px;bottom:30px;width:230px;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:14px;pointer-events:none}
#hud-right .leaderboard{position:static;width:100%;min-height:0;max-height:100%;overflow:auto;align-self:start;pointer-events:auto}
#hud-right #minimap-panel{position:static;justify-self:end;max-width:100%}
@media(max-width:650px){#hud-right{top:156px;right:15px;bottom:15px;width:170px;gap:10px}}
@media(max-height:500px){#hud-right{top:105px;right:15px;bottom:10px;gap:8px}#hud-right #minimap-panel{width:90px}#hud-right .leaderboard{padding:9px}}

.win-balance{display:flex;align-items:center;gap:5px;color:#ffe29b;font-size:13px;white-space:nowrap}.win-balance strong{font-size:16px}.win-balance span{color:#c7d5c8}

/* Keep arena controls clear of the measured Garcadium account bar. */
#hud-right{top:125px;bottom:calc(var(--account-height,0px) + 24px)}
#zone-status{top:190px}
@media(max-width:650px){#hud-right{top:195px;bottom:calc(var(--account-height,0px) + 18px)}#zone-status{top:auto;bottom:calc(var(--account-height,0px) + 100px);max-width:calc(100vw - 185px)}}

#spectator{--spectator-bg:#153333ee;--spectator-accent:#c6f078;position:fixed;top:160px;left:38px;width:245px;max-width:calc(100vw - 30px);padding:14px;background:var(--spectator-bg);border:1px solid #628374;border-radius:14px}#spectator small{display:block;color:var(--spectator-accent);font-size:10px;letter-spacing:2px}#spectator strong{display:block;margin:8px 0;overflow-wrap:anywhere}.spectator-controls{display:flex;gap:8px}.spectator-controls button{padding:10px;background:#35574a;color:#edf7e8;font-size:12px;flex:1}.spectator-controls button:disabled{opacity:.4}#spectator-reward{display:block;margin-top:9px;font-size:12px;color:#d1ddbf}@media(max-width:650px){#spectator{top:150px;left:15px;width:155px;padding:10px}.spectator-controls{flex-wrap:wrap}.spectator-controls button{padding:8px;font-size:11px}}

#spectator{top:210px}@media(max-width:650px){#spectator{top:200px}}
