html,body,#app,.arena{width:100%;height:100%;margin:0;overflow:hidden}canvas{display:block}@font-face{font-family:"Press Start 2P";src:url(/assets/press-start-2p-ClsvrIBJ.woff2)format("woff2");font-display:block}:root{--ink:#0d0f24;--panel:#171a3a;--line:#363d78;--pink:#ff3dd8;--cyan:#22d3ee;--yellow:#fde047;--text:#e2e8f0;--muted:#94a3b8;--bad:#f87171;--good:#4ade80;--pixel:"Press Start 2P", monospace;background:var(--ink);color:var(--text)}.submitPage{box-sizing:border-box;max-width:640px;height:100%;margin:0 auto;padding:28px 16px 48px;font-family:system-ui,sans-serif;line-height:1.5;overflow-y:auto}.submitLogo{text-transform:uppercase;font-family:var(--pixel);color:var(--yellow);text-shadow:0 3px 0 var(--pink);margin:0 0 28px;font-size:20px;line-height:1.3}.submitLogo span{color:var(--cyan)}.submitPage h1{font-family:var(--pixel);text-transform:uppercase;margin:0 0 12px;font-size:16px;line-height:1.5}.submitPage p{margin:0}.submitPage a{color:var(--cyan)}.submitPage form{background:var(--panel);border:3px solid var(--pink);flex-direction:column;gap:18px;margin-top:20px;padding:18px;display:flex;box-shadow:0 0 24px #ff3dd840}.submitPage label{font-family:var(--pixel);text-transform:uppercase;flex-direction:column;gap:8px;font-size:10px;line-height:1.6;display:flex}.submitPage label .hint{text-transform:none;font-family:system-ui,sans-serif;font-size:13px}.submitPage input,.submitPage textarea{box-sizing:border-box;width:100%;color:var(--text);background:var(--ink);border:2px solid var(--line);padding:10px;font:16px system-ui,sans-serif}.submitPage input:focus,.submitPage textarea:focus{border-color:var(--cyan);outline:none}.submitPage textarea{font-family:ui-monospace,monospace;font-size:14px}.submitPage button{font-family:var(--pixel);text-transform:uppercase;color:var(--text);background:var(--panel);border:3px solid var(--line);cursor:pointer;box-shadow:4px 4px 0 var(--ink);padding:12px 16px;font-size:12px}.submitPage input::file-selector-button{font-family:var(--pixel);text-transform:uppercase;color:var(--text);background:var(--panel);border:3px solid var(--line);cursor:pointer;box-shadow:4px 4px 0 var(--ink);padding:12px 16px;font-size:12px}.submitPage input::file-selector-button{margin-right:12px;padding:8px 10px;font-size:10px}.submitPage button:active:not(:disabled){box-shadow:none;transform:translate(4px,4px)}.submitPage button.primary{color:var(--ink);background:var(--yellow);border-color:var(--yellow);padding:16px;font-size:14px}.submitPage button:disabled{opacity:.45;cursor:default}.submitPage .hint{color:var(--muted)}.editLink{background:var(--panel);border:3px solid var(--cyan);flex-direction:column;gap:10px;margin-top:20px;padding:16px;display:flex}.editLinkRow{gap:8px;display:flex}.editLinkRow input{font-family:ui-monospace,monospace;font-size:14px}.tournamentName{font-family:var(--pixel);color:var(--cyan);margin:0;font-size:12px;line-height:1.6}.submitError,.submitOk{border:2px solid;padding:10px 12px}.submitError{color:var(--bad);border-color:var(--bad);background:#f871711a}.submitOk{color:var(--good);border-color:var(--good);background:#4ade801a}.submitPage>.hint{margin-top:20px}.botPreview{background:var(--ink);border:2px solid var(--line);flex-direction:column;align-items:center;gap:12px;margin:0;padding:72px 12px 16px;display:flex}.botPreview figcaption{text-align:center;font-size:13px}.botPreviewTank{width:101px;height:96px;position:relative}.botPreviewHull,.botPreviewBarrel{background-size:100% 100%;position:absolute;-webkit-mask-size:100% 100%;mask-size:100% 100%}.botPreviewHull{inset:0}.botPreviewBarrel{width:51px;height:95px;top:-28px;left:calc(50% - 25px)}.botPreviewHealth{background:#22c55e;border:2px solid #0f172a;width:80px;height:10px;position:absolute;top:-20px;left:calc(50% - 42px)}.botPreviewName{text-overflow:ellipsis;white-space:nowrap;color:#f8fafc;-webkit-text-stroke:8px #0f172a;paint-order:stroke fill;max-width:300px;font-size:32px;font-weight:600;line-height:1.2;position:absolute;bottom:calc(100% + 26px);left:50%;overflow:hidden;transform:translate(-50%)}
