.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px;align-items:start}.play-layout>.game-card{min-width:0}.leaderboard{border:1px solid #e0e0e0;background:#fdfdfd;border-radius:26px;padding:24px 20px}.leaderboard-head{display:flex;justify-content:space-between;align-items:center}.leaderboard-head .eyebrow{margin:0;font-size:8px;color:#f80615}.leaderboard-symbol{font-size:27px;color:#f80615}.leaderboard h2{font-size:32px;line-height:1.03;letter-spacing:-1.3px;margin:13px 0 10px}.leaderboard-sub{font-size:11px;color:#919191;line-height:1.6;margin:0 0 24px}.ranking-columns{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;color:#9b9b9b;padding:0 0 12px;border-bottom:1px solid #e8e8e8}#rankings{list-style:none;padding:0;margin:10px 0}.ranking-row{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:44px;border-bottom:1px solid #ebebeb;font-size:11px;padding:8px 5px}.ranking-place{color:#a7a7a7;font-size:10px;font-variant-numeric:tabular-nums}.ranking-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#595959}.ranking-row strong{font-size:11px;white-space:nowrap;font-weight:600}.ranking-row.podium{border:0;border-radius:12px;margin-bottom:6px;padding:12px 9px;min-height:51px;background:#f3f3f3}.podium .ranking-place{font-weight:700;color:#f80615;font-size:13px}.podium .ranking-name{font-weight:600;color:#303030}.ranking-row.podium-1{background:#f80615;color:white}.podium-1 .ranking-name,.podium-1 .ranking-place{color:white}.ranking-row.is-you{outline:1px solid #aeaeae;outline-offset:-1px}.ranking-note{display:flex;align-items:start;gap:8px;border-top:1px solid #e6e6e6;margin-top:18px;padding-top:14px}.ranking-dot{width:5px;height:5px;background:#f80615;border-radius:50%;flex:none;margin-top:5px}.ranking-note p{font-size:9px;line-height:1.7;color:#999999;margin:0}#ranking-empty{font-size:13px;color:#909090;line-height:1.8;padding:32px 0;margin:0}#ranking-empty[hidden]{display:none}#ranking-status{font-size:11px;line-height:1.6;color:#f80615;margin:15px 0 0}.name-entry{text-align:left;margin:0 0 16px}.name-entry[hidden]{display:none}.name-entry label{font-size:11px;font-weight:600;display:block;margin-bottom:7px;color:#5d5d5d}.name-entry input{width:100%;min-height:43px;border:1px solid #d8d8d8;border-radius:12px;padding:11px 13px;font:13px Arial,sans-serif;background:#ffffff;color:#2a2a2a;outline:none}.name-entry input:focus{border-color:#f80615;box-shadow:0 0 0 3px #f8061510}.name-entry input[aria-invalid=true]{border-color:#f80615}#name-error{display:block;color:#f80615;font-size:10px;line-height:1.5;margin-top:5px}.name-entry input::placeholder{color:#a0a0a0}.play-layout .overlay-card{padding:20px 24px}.play-layout .overlay h2{font-size:38px;margin:9px 0}.play-layout .overlay p{margin-bottom:13px}.play-layout .start-hint{margin-top:10px}.play-layout .hud{gap:8px;padding:16px}.play-layout .hud-money{min-width:115px}.play-layout .hud-money strong{font-size:21px}.play-layout .stage-wrap{min-width:160px}.play-layout .hud-right{gap:7px}.play-layout .time{font-size:20px}.play-layout #lives{font-size:13px}
@media(min-width:1151px){.shell{max-width:1500px}.play-layout .arena canvas{min-height:350px;object-fit:fill}.play-layout .overlay-card{max-height:calc(100% - 16px)}}
@media(max-width:1150px){.play-layout{grid-template-columns:1fr}.leaderboard h2 br{display:none}.leaderboard h2{font-size:28px}.leaderboard{padding:24px}#rankings{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.ranking-row{margin:0!important}.leaderboard-sub{margin-bottom:16px}}
@media(max-width:600px){.play-layout{gap:16px}.leaderboard{border-radius:20px;padding:20px}.leaderboard h2{font-size:28px}#rankings{display:block}.ranking-row{margin-bottom:5px!important}.play-layout .hud{padding:14px 12px}.play-layout .hud-money{min-width:0}.play-layout .hud-money strong{font-size:20px}.play-layout .stage-wrap{min-width:0}.play-layout .time{font-size:15px}.play-layout #lives{font-size:12px}.play-layout .overlay-card{padding:13px 17px;width:290px}.play-layout .overlay h2{font-size:26px;margin:6px 0}.play-layout .overlay p{font-size:9px;margin-bottom:8px}.play-layout .small-stamp{font-size:6px}.name-entry{margin-bottom:9px}.name-entry label{font-size:10px;margin-bottom:4px}.name-entry input{min-height:35px;padding:8px 10px;font-size:16px}.play-layout .start-btn{padding:10px 14px}.play-layout .start-hint{font-size:7px;margin-top:6px}.play-layout .arena{min-height:285px}.play-layout canvas{min-height:285px;object-fit:fill}#name-error{font-size:9px;margin-top:3px}.play-layout .overlay-card{max-height:100%}}

/* Preserve the canvas proportions at every viewport. */
.play-layout .arena canvas,.play-layout canvas{min-height:0;height:auto;object-fit:contain}.play-layout .arena{min-height:0}

.support-countdown{padding:10px 18px;background:#efefef;border-top:1px solid #dedede;color:#6f6f6f;font-size:11px;line-height:1.5}.support-countdown:empty{display:none}@media(max-width:600px){.support-countdown{font-size:10px;padding:9px 12px}}

/* Compact desktop composition, with a narrower arena and ranking alongside. */
@media(min-width:1151px){.shell{max-width:1320px}.play-layout{max-width:1180px;margin-inline:auto;grid-template-columns:minmax(0,1fr) 270px;gap:16px}}

.collected-panel{padding:12px 16px;background:#f7f7f7;border-top:1px solid #dfdfdf}.collected-heading{display:block;font-size:8px;letter-spacing:1px;color:#898989;margin-bottom:7px}#collected-supports{display:flex;flex-wrap:wrap;gap:6px}.support-empty{font-size:10px;color:#8f8f8f}.collected-chip{padding:5px 9px;border:1px solid #979797;border-radius:20px;font-size:10px;color:#f80615;background:#ebebeb}.collected-chip.used{color:#939393;border-color:#d7d7d7;background:transparent}.play-layout #armor{display:flex;gap:3px;align-items:center;flex-wrap:wrap;max-width:138px;padding:6px 8px;border:1px solid #bebebe;background:#efefef;color:#f80615}.armor-label{font-size:7px;letter-spacing:.6px;width:100%}.armor-heart{font-size:21px;line-height:1;font-weight:700}.armor-heart.empty{opacity:.25}.play-layout .hud-right{flex-wrap:wrap;justify-content:flex-end}@media(max-width:600px){.play-layout #armor{max-width:100px;padding:4px 6px}.armor-heart{font-size:17px}.collected-panel{padding:10px 12px}.collected-chip{font-size:9px}}
