:root{--ui-r: 4px;--panel-r: 8px;--pad: 12px;--ctl: 2.2em;--panel: #202020;--panel-edge: #3c3c3c;--second: #2e2e2e;--edge: #5a5a5a;--ink: #e2e2e2;--dim: #929292;--faint: #5c5c5c;--hot: #6cf}.ui{color:var(--ink)}.ui-panel{box-sizing:border-box;padding:var(--pad);background:var(--panel);border:2px solid var(--panel-edge);border-radius:var(--panel-r)}.ui hr{flex:none;width:100%;height:2px;margin:0;background:var(--panel-edge);border:0}.ui button:not(.close-btn),.ui input:not([type=range]){box-sizing:border-box;height:var(--ctl);padding:0 .9em;border:2px solid var(--edge);border-radius:var(--ui-r);font:inherit;line-height:calc(var(--ctl) - 4px)}.ui input:not([type=range]){background:#141414;border-color:var(--panel-edge);color:var(--ink);outline:none}.ui button:not(.close-btn){flex:none;background:#262626;color:var(--ink);cursor:pointer;white-space:nowrap;outline:none}.ui button:not(.close-btn):hover:not(:disabled){border-color:var(--hot);color:#fff}.ui button:not(.close-btn):active:not(:disabled){background:#1c2c38}.ui button:not(.close-btn):disabled{opacity:.45;cursor:default}.ui .pick,.ui .tabs{display:flex;gap:0}.ui .pick button:not(.close-btn),.ui .tabs button:not(.close-btn){margin-left:-2px;border-radius:0;color:var(--dim)}.ui .pick button:not(.close-btn):first-child,.ui .tabs button:not(.close-btn):first-child{margin-left:0;border-radius:var(--ui-r) 0 0 var(--ui-r)}.ui .pick button:not(.close-btn):last-child,.ui .tabs button:not(.close-btn):last-child{border-radius:0 var(--ui-r) var(--ui-r) 0}.ui .pick button:not(.close-btn):hover:not(:disabled),.ui .tabs button:not(.close-btn):hover:not(:disabled){position:relative}.ui .pick button:not(.close-btn).on:not(:disabled),.ui .tabs button:not(.close-btn).on:not(:disabled){position:relative;background:#1c2c38;border-color:var(--hot);color:#fff;cursor:default}.ui .close-btn{background:none;border:0;color:var(--dim);cursor:pointer;font-size:1.4em;line-height:1;padding:0 .2em}.ui .close-btn:hover{color:#f55}.ui kbd{display:inline-block;padding:0 .4em;background:var(--second);border:0;border-radius:var(--ui-r);color:var(--ink);font:inherit}.ore[data-v-3bdfd15d]{display:inline-flex;align-items:center;gap:.3em;color:var(--ore);font-weight:700;white-space:nowrap}.mark[data-v-3bdfd15d]{flex:none;display:inline-block;width:.7em;height:.7em;background:var(--ore)}.silver[data-v-3bdfd15d]{--ore: #a6d9f2}.gold[data-v-3bdfd15d]{--ore: #ffa31a}.meat[data-v-3bdfd15d]{--ore: #c7928a}.silver .mark[data-v-3bdfd15d]{clip-path:polygon(50% 0,100% 100%,0 100%)}.gold .mark[data-v-3bdfd15d]{transform:rotate(45deg) scale(.82)}.meat .mark[data-v-3bdfd15d]{border-radius:62% 38% 55% 45%/45% 60% 40% 55%}.res[data-v-017d4fc2]{display:flex;gap:.5em}.chip[data-v-017d4fc2]{flex:1;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:.2em;padding:.4em .7em;border-radius:var(--ui-r);background:#191919}.count[data-v-017d4fc2]{display:flex;align-items:center;justify-content:space-between;gap:.45em}.sign[data-v-017d4fc2]{font-size:1.5em}.bare[data-v-017d4fc2]{gap:1.4em}.bare .chip[data-v-017d4fc2]{flex:none;padding:0;border:0;background:none}.silver[data-v-017d4fc2]{--ore: #a6d9f2}.gold[data-v-017d4fc2]{--ore: #ffa31a}.meat[data-v-017d4fc2]{--ore: #c7928a}.n[data-v-017d4fc2]{flex:none;color:#eee;font-size:1.35em;font-weight:700;line-height:1;white-space:nowrap}.pad[data-v-017d4fc2]{opacity:.12}.now[data-v-017d4fc2]{display:inline-block;transform-origin:right center;animation:changed-017d4fc2 .35s ease-out}.what[data-v-017d4fc2]{max-width:100%;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ore);text-transform:uppercase}@keyframes changed-017d4fc2{0%{transform:scale(1.5);color:var(--ore);text-shadow:0 0 .5em var(--ore)}to{transform:scale(1);color:#eee;text-shadow:none}}.menu-overlay[data-v-5a07d8e3]{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;z-index:10}.menu[data-v-5a07d8e3]{max-width:100%;max-height:100%;overflow:auto;padding:6px;font:14px/1.4 monospace;user-select:none}header[data-v-5a07d8e3]{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}h1[data-v-5a07d8e3]{margin:0 0 0 4px;color:#fff;font:700 34px/1 monospace;letter-spacing:6px}.panels[data-v-5a07d8e3]{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}.panel[data-v-5a07d8e3]{flex:1;width:420px;min-width:320px}h3[data-v-5a07d8e3]{margin:14px 0 6px;color:var(--dim);font:inherit;text-transform:uppercase;letter-spacing:1px}h3[data-v-5a07d8e3]:first-child{margin-top:0}hr[data-v-5a07d8e3]{margin:10px 0 4px}.row[data-v-5a07d8e3]{display:flex;align-items:center;gap:8px;min-height:38px}.what[data-v-5a07d8e3]{flex:1;min-width:0}.ago[data-v-5a07d8e3]{color:var(--dim);margin-left:6px}.here[data-v-5a07d8e3]{color:#4c4}.state[data-v-5a07d8e3]{color:#fc4}.state.connected[data-v-5a07d8e3]{color:#4c4}.state.error[data-v-5a07d8e3]{color:#f44}.dot[data-v-5a07d8e3]{width:12px;height:12px;border-radius:50%}.dot.own[data-v-5a07d8e3]{outline:2px solid #fff;outline-offset:1px}button[data-v-5a07d8e3]{min-width:56px}button.small[data-v-5a07d8e3]{min-width:0}.menu button.play[data-v-5a07d8e3]:not(:disabled){min-width:190px;height:3.1em;line-height:calc(3.1em - 4px);background:#1c2c38;border-color:var(--hot);color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:2px;box-shadow:0 0 14px #66ccff59}.menu button.play[data-v-5a07d8e3]:hover:not(:disabled){background:#264256;box-shadow:0 0 20px #6cf9}.link[data-v-5a07d8e3]{flex:1;min-width:0}.level[data-v-5a07d8e3]{flex:1.2;min-width:0;accent-color:var(--hot)}.pct[data-v-5a07d8e3]{width:2.5em;text-align:right;color:var(--dim)}.langs[data-v-5a07d8e3]{justify-content:center;margin-top:12px}.flag[data-v-5a07d8e3]{display:inline-block;width:1.5em;height:1em;margin-right:.6em;vertical-align:-.12em;background-size:cover}.flag.uk[data-v-5a07d8e3]{background:linear-gradient(#0057b7 50%,gold 50%)}.flag.en[data-v-5a07d8e3]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 40'%3E%3Crect width='60' height='40' fill='%23012169'/%3E%3Cpath d='M0 0L60 40M60 0L0 40' stroke='%23fff' stroke-width='8'/%3E%3Cpath d='M0 0L60 40M60 0L0 40' stroke='%23c8102e' stroke-width='3'/%3E%3Cpath d='M30 0v40M0 20h60' stroke='%23fff' stroke-width='13'/%3E%3Cpath d='M30 0v40M0 20h60' stroke='%23c8102e' stroke-width='8'/%3E%3C/svg%3E")}.devlog[data-v-fece1681]{position:fixed;top:0;right:0;max-height:90vh;width:min(420px,36vw);overflow:hidden;font:10px/1.4 monospace;color:#666;z-index:6;padding:6px 8px;background:#0000008c;border-bottom-left-radius:6px;pointer-events:none}.perf[data-v-fece1681]{color:#8a8;margin-bottom:4px}.perf.slow[data-v-fece1681]{color:#f84}.entry[data-v-fece1681]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry.in .dir[data-v-fece1681]{color:#4c4}.entry.out .dir[data-v-fece1681]{color:#6cf}.type[data-v-fece1681]{color:#999;margin-left:2px}.peer[data-v-fece1681],.data[data-v-fece1681]{color:#555;margin-left:4px}.stats[data-v-fece1681]{color:#555;margin-top:2px}.backdrop[data-v-70e10390]{position:fixed;inset:0;z-index:21}.cheats[data-v-70e10390]{position:fixed;top:50%;right:12px;transform:translateY(-50%);width:min(380px,34vw);max-height:94vh;overflow:auto;display:flex;flex-direction:column;gap:.7em;font:12px/1.4 monospace;user-select:none;z-index:21}header[data-v-70e10390]{display:flex;align-items:center;gap:.8em;text-transform:uppercase;letter-spacing:1px}header .name[data-v-70e10390]{color:var(--ink)}header .hint[data-v-70e10390]{color:var(--dim);margin-right:auto;text-transform:none;letter-spacing:0}.warn[data-v-70e10390]{color:#c84}.label[data-v-70e10390]{color:var(--dim);text-transform:uppercase;letter-spacing:1px;margin-bottom:.4em}.row[data-v-70e10390]{display:flex;flex-wrap:wrap;gap:6px}.tile[data-v-0d1755ad]{container-type:size;width:100%;height:100%}.face[data-v-0d1755ad]{position:relative;width:100%;height:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;user-select:none;font-family:monospace}.name[data-v-0d1755ad]{max-width:96cqw;font-size:15.5cqw;line-height:1.05;text-align:center;overflow-wrap:anywhere;color:#bbb}.weapon[data-v-0d1755ad]{border:2px solid var(--tier);border-radius:var(--ui-r);background:linear-gradient(color-mix(in srgb,var(--tier) 22%,#1c1a18),#1c1a18)}.tier[data-v-0d1755ad]{position:absolute;top:0;left:0;min-width:22cqw;padding:0 2cqw;border-bottom-right-radius:var(--ui-r);background:var(--tier);color:#111;font-size:20cqw;font-weight:700;line-height:1.15;text-align:center}.glyph[data-v-0d1755ad]{margin-top:10cqw;font-size:28cqw;font-weight:700;line-height:1;letter-spacing:.02em}.weapon .name[data-v-0d1755ad]{margin-bottom:12cqw}.pips[data-v-0d1755ad]{position:absolute;left:4cqw;right:4cqw;bottom:4cqw;display:flex;justify-content:center;gap:2cqw}.pip[data-v-0d1755ad]{width:7.5cqw;height:9cqw;background:#3a3a3a}.pip.drilled[data-v-0d1755ad]{background:#e8e8e8}.pip.full[data-v-0d1755ad]{background:#ffc94a}.pip.idle[data-v-0d1755ad]{background:#7a6a40}.upgrade[data-v-0d1755ad]{gap:3cqw;border:2px solid #555;border-radius:var(--ui-r);background:#1c1c26}.upgrade.weapon[data-v-0d1755ad]{border-color:#b8943c}.upgrade.player[data-v-0d1755ad]{border-color:#4a9a5a;background:#18221c}.skill[data-v-0d1755ad]{gap:3cqw;border:2px solid var(--tint);border-radius:var(--ui-r);background:linear-gradient(135deg,color-mix(in srgb,var(--tint) 26%,#16181a),#16181a 70%)}.icon[data-v-0d1755ad]{font-size:42cqw;line-height:1.1}.popup[data-v-1a64bfb3]{position:fixed;z-index:200;padding:8px 12px;background:#000;border:2px solid var(--panel-edge);border-radius:var(--ui-r);font:14px/1.5 monospace;white-space:nowrap;pointer-events:none}.buy[data-v-e3a4f4f5]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;background:#262626;border:2px solid var(--edge);border-radius:var(--ui-r);color:#fff;font-size:1.5em;cursor:pointer}.buy[data-v-e3a4f4f5]:hover{border-color:var(--hot)}.buy.off[data-v-e3a4f4f5]{color:var(--dim);cursor:default;border-color:var(--panel-edge)}.ores[data-v-e3a4f4f5]{display:flex;align-items:center;gap:.7em}.lack[data-v-e3a4f4f5]{margin-top:.3em;padding-top:.3em;border-top:1px solid var(--panel-edge);color:var(--dim)}.lack[data-v-e3a4f4f5] .ore{font-weight:400;opacity:.6}.inv-overlay[data-v-746aba98]{--tile: clamp(48px, min(4.3vw, 8.6vh), 62px);--gap: calc(var(--tile) * .08);--ring: 3px;position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:20;font-size:calc(var(--tile) * .225)}.inv[data-v-746aba98]{max-width:99vw;max-height:97vh;overflow:auto;font-family:monospace;line-height:1.4;user-select:none}.cols[data-v-746aba98]{display:flex;gap:.7em;align-items:stretch}.panel[data-v-746aba98]{display:flex;flex-direction:column;gap:.6em}.mid[data-v-746aba98]{width:calc(var(--tile) * 6.5)}.grid[data-v-746aba98],.zone[data-v-746aba98],.inv[data-v-746aba98] .holes{padding:var(--ring)}.grid[data-v-746aba98]{display:grid;grid-template-columns:repeat(var(--cols),var(--tile));grid-auto-rows:var(--tile);gap:var(--gap);align-content:start}.well[data-v-746aba98]{position:relative;flex-grow:1;min-height:calc(var(--tile) * 3);width:calc(var(--cols) * var(--tile) + (var(--cols) - 1) * var(--gap) + var(--ring) * 2 + 10px)}.scroll[data-v-746aba98]{position:absolute;inset:0;overflow-y:scroll;scrollbar-width:thin;scrollbar-color:var(--edge) transparent}.top[data-v-746aba98]{display:flex;justify-content:space-between}.zone[data-v-746aba98]{display:flex;align-items:center;gap:var(--gap)}.card[data-v-746aba98]{box-sizing:border-box;height:calc(var(--tile) + 8.4em + var(--ring) * 4);padding:var(--ring);overflow:hidden}.zone.hot[data-v-746aba98],.card.hot[data-v-746aba98]{outline:2px solid var(--hot);outline-offset:-1px}.zone.hot.over[data-v-746aba98],.card.hot.over[data-v-746aba98]{background:#64c8ff1a}.label[data-v-746aba98]{color:var(--dim);text-transform:uppercase;letter-spacing:1px}.cell[data-v-746aba98]{flex:none;width:var(--tile);height:var(--tile);box-sizing:border-box;background:#141414;border:2px solid #2c2c2c;border-radius:var(--ui-r)}.cell.bare[data-v-746aba98]{display:flex;align-items:center;justify-content:center;color:var(--faint);font-weight:700}.cell[draggable=true][data-v-746aba98]{cursor:grab}.cell.over[data-v-746aba98]{box-shadow:0 0 0 2px var(--hot);background:#64c8ff24}.cell.picked[data-v-746aba98]{box-shadow:0 0 0 var(--ring) var(--hot);border-color:transparent}.shut[data-v-746aba98],.inv[data-v-746aba98] .hole.shut{opacity:.3}.shut .shut[data-v-746aba98],.shut[data-v-746aba98] .hole.shut{opacity:1}.selected[data-v-746aba98]{display:flex;flex-direction:column;flex:1;min-height:0;padding:var(--ring)}.selected.hot[data-v-746aba98]{outline:2px solid var(--hot);outline-offset:-1px}.selected.hot.over[data-v-746aba98]{background:#64c8ff1a}.inv[data-v-746aba98] .title{color:#fff;font-size:1.3em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv[data-v-746aba98] .rank{font-weight:700;margin-left:.4em}.inv[data-v-746aba98] .desc{height:4.2em;overflow:hidden;color:var(--ink);margin:.4em 0 .8em}.inv[data-v-746aba98] .holes{display:flex;flex-wrap:wrap;gap:var(--gap)}.inv[data-v-746aba98] .detail .holes{margin-bottom:.4em}.inv[data-v-746aba98] .hole{position:relative;flex:none;width:var(--tile);height:var(--tile);box-sizing:border-box}.cell[draggable=true][data-v-746aba98]:hover,.inv[data-v-746aba98] .hole.full:hover{filter:brightness(1.35);box-shadow:0 0 0 2px var(--edge)}.cell.picked[draggable=true][data-v-746aba98]:hover,.inv[data-v-746aba98] .hole.full.picked:hover{box-shadow:0 0 0 var(--ring) var(--hot)}.inv[data-v-746aba98] .hole:not(.drilled):not(.next):after{content:"×";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--faint);font-size:1.4em;opacity:.6}.inv[data-v-746aba98] .hole.drilled{background:#141414;border:2px solid #2c2c2c;border-radius:var(--ui-r)}.inv[data-v-746aba98] .hole.full{background:none;border:0;cursor:grab}.inv[data-v-746aba98] .hole.idle .tile{filter:grayscale(1);opacity:.6}.inv[data-v-746aba98] .hole.over{box-shadow:0 0 0 2px var(--hot)}.inv[data-v-746aba98] .hole.picked{box-shadow:0 0 0 var(--ring) var(--hot)}.actions[data-v-746aba98]{display:flex;gap:.6em;flex-wrap:wrap;align-items:center;padding:var(--ring)}.scrap[data-v-746aba98]{margin-top:auto}.ask[data-v-746aba98],.gain[data-v-746aba98]{min-height:1.4em;padding:0 var(--ring)}.ask[data-v-746aba98]{color:#f0b848}.gain[data-v-746aba98]{display:flex;align-items:center;gap:.7em;color:var(--dim)}button.danger[data-v-746aba98]{border-color:#a33}.inv button.danger[data-v-746aba98]:hover:not(:disabled){border-color:#f55}.empty[data-v-746aba98]{color:var(--dim)}.none[data-v-746aba98]{grid-column:1 / -1}.note[data-v-746aba98]{height:1.4em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#f0a060}.tabs button[data-v-746aba98]{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:0}canvas{display:block;width:100%;height:100%;outline:none}.use-at{display:none;position:fixed;left:0;top:0;width:0;height:0;font:13px/1.2 monospace;white-space:nowrap;pointer-events:none}.use-key,.use-info{position:absolute;bottom:0;padding:3px 8px 3px 3px;border-radius:var(--ui-r);background:#000000a6;color:#dfeaf5}.use-key{right:5px}.use-info{left:5px;padding:4px 8px;font-weight:700;color:#ffe9a0}.use-info.bad{color:#ff5a40}.use-key .held{margin-top:4px;color:#ffd27a}.use-key .held kbd{border-color:#ffd27a}.use-key kbd{display:inline-block;margin-right:7px;padding:1px 6px;border:2px solid #cfe4f8;border-radius:var(--ui-r);color:#fff;font:700 14px/1.2 monospace}.hud{position:fixed;bottom:16px;left:16px;right:16px;font:14px/1.4 monospace;color:#888;pointer-events:none;display:flex;flex-direction:column;gap:4px;align-items:flex-start}.keys{position:fixed;bottom:16px;right:16px;display:flex;flex-direction:column;align-items:flex-end;gap:6px;font:12px/1 monospace;color:#777;pointer-events:none;white-space:nowrap}.died{position:fixed;top:12%;left:50%;transform:translate(-50%);font:700 44px/1 monospace;letter-spacing:8px;text-transform:uppercase;color:#ff4040;text-shadow:-3px 0 rgb(0,255,240),3px 0 rgb(255,0,230);pointer-events:none;z-index:5}.vitals{position:fixed;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:stretch;gap:8px;font:12px/1 monospace;color:#aaa;pointer-events:none}.gauges{width:280px;display:flex;flex-direction:column;justify-content:space-between;gap:4px}.gauge{position:relative;height:18px;background:#222;border:1px solid #444;border-radius:3px;overflow:hidden}.gauge .fill{position:absolute;left:0;top:0;bottom:0}.gauge span{position:relative;display:block;text-align:center;font:700 13px/18px monospace;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000;white-space:nowrap}.gauge.hp .fill{background:#a22}.bosses{position:fixed;top:14px;left:50%;transform:translate(-50%);width:min(520px,60vw);display:flex;flex-direction:column;gap:4px;pointer-events:none}.gauge.boss{height:9px;border-color:#23304f}.gauge.boss .fill{background:#2c4fd8;transition:width .12s linear}.dash{display:flex;gap:4px}.dash-pip{flex:1;height:5px;background:#222;border:1px solid #444;border-radius:3px;overflow:hidden}.dash-fill{height:100%;background:#567}.dash-fill.full{background:#9fd0ff}.skills{display:flex;gap:6px}.skill{position:relative;box-sizing:border-box;width:47px;height:47px;display:flex;align-items:center;justify-content:center;background:#161616;border:2px solid #3a3a3a;border-radius:var(--ui-r);overflow:hidden}.skill.ready{border-color:#9fd0ff}.skill kbd{position:absolute;top:1px;left:3px;font:9px/1 monospace;color:#888;z-index:1}.skill-icon{font-size:20px;line-height:1}.skill-icon.weapon{font:700 14px/1 monospace}.skill-cd{position:absolute;left:0;right:0;bottom:0;background:#000000b8}.skill-left{position:absolute;font:700 14px/1 monospace;color:#fff}.mag .fill{background:#8a6c1c}.mag.reloading .fill{background:#2a6a8a}.mag.charging .fill{background:#4a6a9a}.mag.full .fill{background:#8ab0e0}.carried{font-size:15px}.keys .build{color:#555}.keys kbd{display:inline-block;padding:2px 5px;margin-right:5px;border:1px solid #444;border-radius:3px;color:#bbb;font:inherit}.hud a{pointer-events:auto;color:#6cf;text-decoration:none}.hud a:hover{text-decoration:underline}.prompt-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.prompt-box{font:14px/1.4 monospace;min-width:240px;max-width:420px;display:flex;flex-direction:column;gap:16px}.prompt-message{color:#f77}.prompt-actions{display:flex;gap:8px;justify-content:flex-end}
