html,body{color:#fff;touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#0d1016;height:100%;margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;overflow:hidden}:root{--inset-top:env(safe-area-inset-top);--inset-right:env(safe-area-inset-right);--inset-bottom:env(safe-area-inset-bottom);--inset-left:env(safe-area-inset-left)}#stage{left:var(--stage-x,0px);top:var(--stage-y,0px);width:var(--stage-w,100vw);height:var(--stage-h,100vh);background:#1b1f27;position:fixed;overflow:hidden}canvas#game{width:100%;height:100%;display:block}html.sideways{--inset-top:env(safe-area-inset-right);--inset-right:env(safe-area-inset-bottom);--inset-bottom:env(safe-area-inset-left);--inset-left:env(safe-area-inset-top)}html.sideways #stage{transform-origin:0 0;transform:translate(var(--stage-tx), var(--stage-ty)) rotate(90deg);top:0;left:0}#hud{top:max(10px, var(--inset-top));left:max(12px, var(--inset-left));pointer-events:none;gap:10px;font-size:14px;display:flex;position:absolute}#hud span,#me{background:#0a0e16b3;border-radius:999px;padding:5px 10px}#hud span:empty{display:none}#me{pointer-events:auto;font:inherit;color:#fff;cursor:pointer;border:1px solid #ffffff40;font-size:14px}#me[hidden]{display:none}#hint{left:50%;bottom:max(14px, var(--inset-bottom));white-space:nowrap;pointer-events:none;background:#0a0e16b3;border-radius:999px;padding:6px 14px;font-size:14px;transition:opacity .6s;position:absolute;transform:translate(-50%)}#hint.hidden{opacity:0}#stick{pointer-events:none;background:#ffffff14;border:2px solid #ffffff73;border-radius:50%;width:120px;height:120px;margin:-60px 0 0 -60px;display:none;position:absolute}#stick.on{display:block}#knob{background:#ffffffbf;border-radius:50%;width:52px;height:52px;margin:-26px 0 0 -26px;position:absolute;top:50%;left:50%}#view{top:max(10px, var(--inset-top));right:max(12px, var(--inset-right));font:inherit;color:#fff;cursor:pointer;background:#0a0e16b3;border:1px solid #ffffff40;border-radius:999px;padding:5px 12px;font-size:14px;position:absolute}#fire{right:max(28px, var(--inset-right));bottom:max(28px, var(--inset-bottom));letter-spacing:.08em;pointer-events:none;background:#e84a5f59;border:2px solid #ffffff80;border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;font-size:15px;font-weight:700;display:none;position:absolute}html.touch #fire{display:flex}#fire.on{background:#e84a5fbf;transform:scale(.94)}#boardbox{top:calc(max(10px, var(--inset-top)) + 38px);right:max(12px, var(--inset-right));flex-direction:column;align-items:flex-end;gap:4px;display:flex;position:absolute}#board-toggle{font:inherit;color:#fff;cursor:pointer;font-variant-numeric:tabular-nums;background:#0a0e16b3;border:1px solid #ffffff40;border-radius:999px;padding:4px 10px;font-size:13px}#board-toggle[hidden]{display:none}#board{pointer-events:none;background:#0a0e169e;border-radius:10px;min-width:190px;padding:6px 8px;font-size:12px;line-height:1.25}#board[hidden]{display:none}#board .row{white-space:nowrap;align-items:center;gap:5px;padding:1px 0;display:flex}#board .head{opacity:.6;font-size:11px}#board .me{font-weight:700}#board .down{opacity:.45}#board .dot{border-radius:50%;flex:none;width:8px;height:8px}#board .nm{text-overflow:ellipsis;flex:1;max-width:120px;overflow:hidden}#board .npc{opacity:.7;border:1px solid #ffffff73;border-radius:4px;padding:0 3px;font-size:9px}#board .k,#board .d{text-align:right;font-variant-numeric:tabular-nums;width:18px}#signup{z-index:10;touch-action:pan-y;padding:max(12px, env(safe-area-inset-top)) 12px 12px;background:#0e121ab8;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}#signup[hidden]{display:none}#signup-form{-webkit-user-select:text;user-select:text;background:#1f2531;border:1px solid #ffffff1f;border-radius:16px;gap:10px;width:min(560px,100%);margin:auto 0;padding:14px 16px;display:grid}#signup .who{align-items:center;gap:12px;display:flex}#signup-badge{width:64px;height:64px}#signup h1{margin:0;font-size:22px}#signup-title{opacity:.85;margin:2px 0 0}#signup-note{opacity:.6;margin:2px 0 0;font-size:12px}#signup .field{opacity:.95;gap:6px;font-size:13px;display:grid}#signup input{font:inherit;color:#fff;background:#11151d;border:1px solid #fff3;border-radius:10px;padding:8px 10px;font-size:16px}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{cursor:pointer;border:3px solid #0000;border-radius:50%;width:34px;height:34px}.swatch.picked{border-color:#fff;box-shadow:0 0 0 2px #ffffff59}.emojis{grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:4px;display:grid}.emoji{cursor:pointer;background:#11151d;border:2px solid #0000;border-radius:10px;height:38px;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:22px;line-height:1}.emoji.picked{background:#2d3545;border-color:#fff}#signup .actions{justify-content:flex-end;gap:8px;display:flex}#signup .actions button{font:inherit;color:#fff;cursor:pointer;border:0;border-radius:12px;padding:10px 22px;font-size:16px;font-weight:700}#signup-go{background:#e84a5f}#signup-go:disabled{cursor:default;background:#555b66}#signup-cancel{background:#3a4150}#signup-cancel[hidden]{display:none}@media (orientation:landscape) and (height<=500px){#signup-form{grid-template-columns:1fr 1.3fr;column-gap:16px;width:min(760px,100%);padding:10px 14px}#signup .who{grid-area:1/1}#signup label.field{grid-area:2/1}#signup .colors{grid-area:3/1}#signup .actions{grid-area:4/1;align-self:end}#signup .emblems{grid-area:1/2/span 4}.emoji{height:34px;font-size:20px}.swatch{width:30px;height:30px}}#minimap{top:calc(max(10px, var(--inset-top)) + 38px);left:max(12px, var(--inset-left));pointer-events:none;opacity:.85;position:absolute}#ammo{right:max(14px, var(--inset-right));bottom:max(14px, var(--inset-bottom));pointer-events:none;background:#0a0e16b3;border-radius:999px;align-items:center;gap:5px;padding:5px 9px;display:flex;position:absolute}html.touch #ammo{bottom:calc(max(28px, var(--inset-bottom)) + 104px);right:calc(max(28px, var(--inset-right)) + 10px)}#ammo i{background:#ffffff38;border-radius:4px 4px 2px 2px;width:7px;height:16px}#ammo i.on{background:#ffd66b;box-shadow:0 0 6px #ffd66bb3}#ammo .reload{background:#fff3;border-radius:3px;width:34px;height:5px;margin-left:3px;overflow:hidden}#ammo .reload b{height:100%;width:calc((1 - var(--reload,0)) * 100%);background:#fff;display:block}#ammo.empty .reload b{background:#e84a5f}
