.menu-wrap[data-v-ca297366]{height:100%;display:grid;place-items:center;padding:16px;background:radial-gradient(ellipse at 30% 20%,rgba(77,208,225,.08),transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(255,179,71,.07),transparent 50%),var(--bg)}.menu[data-v-ca297366]{width:min(420px,100%);padding:28px;display:flex;flex-direction:column;gap:12px}h1[data-v-ca297366]{margin:0;font-size:28px;letter-spacing:.5px;color:var(--accent)}.overlay-bar[data-v-72a09ee9]{display:flex;align-items:center;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:none}.overlay-bar[data-v-72a09ee9]::-webkit-scrollbar{display:none}.ov-btn[data-v-72a09ee9]{min-height:36px;padding:4px 10px;font-size:13px;white-space:nowrap;flex:none}.sep[data-v-72a09ee9]{width:1px;align-self:stretch;background:var(--panel-border);margin:4px 2px;flex:none}@media(max-width:900px){.ov-btn[data-v-72a09ee9]{min-height:34px;padding:3px 8px;font-size:12px}}.hud[data-v-b923c7ab]{position:absolute;top:calc(8px + env(safe-area-inset-top));left:8px;right:8px;padding:8px 12px;display:flex;flex-direction:column;gap:4px;pointer-events:auto}.hud-row[data-v-b923c7ab]{display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:space-between}.speed-group[data-v-b923c7ab]{display:flex;gap:4px}.hud-tools[data-v-b923c7ab]{display:flex;align-items:center;gap:8px;min-width:0}.menu-btn[data-v-b923c7ab]{min-height:36px;flex:none}.legend-btn[data-v-b923c7ab]{min-height:36px;min-width:36px;padding:4px 10px;flex:none;font-weight:700;color:var(--accent-2);border-color:var(--accent-2)}.speed-btn[data-v-b923c7ab]{min-height:36px;padding:4px 12px}.skip-btn[data-v-b923c7ab]{margin-left:8px;border-color:var(--accent);color:var(--accent);white-space:nowrap}.build-menu[data-v-f1cd04d6]{position:absolute;left:var(--gap);right:var(--build-right);bottom:var(--build-bottom);display:flex;gap:6px;padding:8px;overflow-x:auto}.build-item[data-v-f1cd04d6]{min-width:96px;padding:6px 8px;border:1px solid var(--panel-border);border-radius:8px;cursor:pointer;user-select:none;min-height:var(--tap)}.build-item.active[data-v-f1cd04d6]{border-color:var(--accent);background:#ffb3471f}.build-item.disabled[data-v-f1cd04d6]{opacity:.45}.build-name[data-v-f1cd04d6]{font-weight:600;white-space:nowrap}.build-cost[data-v-f1cd04d6]{color:var(--text-dim);white-space:nowrap}.contract[data-v-8dc60844]{border:1px solid var(--panel-border);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:4px}.rover[data-v-4709ff0b],.route[data-v-4709ff0b]{display:flex;gap:8px;align-items:center;border:1px solid var(--panel-border);border-radius:8px;padding:6px 8px}.sel[data-v-4709ff0b]{font:inherit;color:var(--text);background:#0d0f16;border:1px solid var(--panel-border);border-radius:8px;padding:8px;min-height:var(--tap);width:100%}.small-btn[data-v-4709ff0b]{min-height:34px;padding:2px 10px;font-size:13px}.upg[data-v-0268ae26]{border:1px solid var(--panel-border);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:4px}.upg.owned[data-v-0268ae26]{opacity:.6}.small-btn[data-v-0268ae26]{min-height:34px;padding:2px 10px;font-size:13px}.bar[data-v-fef36043]{height:6px;background:#0d0f16;border-radius:3px;overflow:hidden}.bar-fill[data-v-fef36043]{height:100%;background:var(--accent-2);transition:width .3s}.small-btn[data-v-fef36043]{min-height:34px;padding:2px 10px}.side-wrap[data-v-e351b062]{position:absolute;right:var(--gap);bottom:calc(var(--gap) + var(--safe-bottom));display:flex;flex-direction:column;gap:6px;align-items:flex-end;max-height:60vh}.tab-strip[data-v-e351b062]{display:flex;gap:4px;padding:6px}.tab-strip button[data-v-e351b062]{min-height:40px;padding:4px 10px;font-size:13px}@media(max-width:900px){.tab-strip[data-v-e351b062]{gap:3px;padding:5px}.tab-strip button[data-v-e351b062]{padding:4px 7px;font-size:12px}}.side-panel[data-v-e351b062]{width:min(340px,calc(100vw - 16px));max-height:52vh;overflow-y:auto;padding:10px}.placement[data-v-f7cef5e8]{position:absolute;bottom:var(--place-bottom);left:50%;transform:translate(-50%);display:flex;gap:8px;align-items:center;padding:10px 12px;width:min(560px,calc(100vw - 16px))}.rotate-notice[data-v-1a7f656e]{display:none}@media(orientation:portrait)and (pointer:coarse){.rotate-notice[data-v-1a7f656e]{display:grid;position:fixed;inset:0;z-index:500;place-items:center;padding:24px;background:var(--bg)}}.rotate-card[data-v-1a7f656e]{display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 24px;text-align:center;max-width:320px}.rotate-glyph[data-v-1a7f656e]{display:grid;place-items:center;height:74px}.device[data-v-1a7f656e]{width:40px;height:66px;border:3px solid var(--accent);border-radius:8px;animation:turn-1a7f656e 2.4s ease-in-out infinite}@keyframes turn-1a7f656e{0%,30%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}@media(prefers-reduced-motion:reduce){.device[data-v-1a7f656e]{animation:none;transform:rotate(-90deg)}}.hint[data-v-963f7ec5]{position:absolute;left:var(--gap);bottom:calc(var(--gap) + var(--bar-h) + var(--safe-bottom));width:min(340px,calc(100vw - var(--gap) * 2));padding:12px;display:flex;flex-direction:column;gap:8px;border-color:var(--accent)}.hint-head[data-v-963f7ec5]{display:flex;align-items:center;gap:8px}.badge[data-v-963f7ec5]{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:6px;padding:1px 6px;flex:none}.hint-body[data-v-963f7ec5]{margin:0;line-height:1.5}@media(max-height:520px){.hint[data-v-963f7ec5]{width:min(300px,calc(100vw - var(--gap) * 2));padding:10px}.hint-body[data-v-963f7ec5]{font-size:12px}}.game-root[data-v-337edb3d]{position:relative;height:100%;width:100%}.canvas-host[data-v-337edb3d]{position:absolute;inset:0}canvas[data-v-337edb3d]{width:100%;height:100%;display:block;touch-action:none}.context-banner[data-v-337edb3d]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:16px 24px}.toasts[data-v-c4671940]{position:absolute;bottom:calc(150px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:6px;pointer-events:none;z-index:50}.toast[data-v-c4671940]{padding:8px 14px;font-size:13.5px;border-radius:20px;animation:rise-c4671940 .25s ease-out}.toast.ok[data-v-c4671940]{border-color:var(--ok)}.toast.warn[data-v-c4671940]{border-color:var(--accent)}.toast.bad[data-v-c4671940]{border-color:var(--danger)}@keyframes rise-c4671940{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.backdrop[data-v-dc456f50]{position:fixed;inset:0;background:#0000008c;display:grid;place-items:center;z-index:100;padding:16px}.dialog[data-v-dc456f50]{width:min(400px,100%);padding:18px}a[data-v-dc456f50]{color:var(--accent-2)}.backdrop[data-v-7b37ab96]{position:fixed;inset:0;background:#0000008c;display:grid;place-items:center;z-index:100;padding:16px}.dialog[data-v-7b37ab96]{width:min(460px,100%);padding:18px;max-height:80vh;overflow-y:auto}.slot[data-v-7b37ab96]{border-bottom:1px solid var(--panel-border);padding:6px 0}.slot button[data-v-7b37ab96]{min-height:38px;padding:4px 10px;font-size:13px}.backdrop[data-v-ed985f48]{position:fixed;inset:0;background:#0000008c;display:grid;place-items:center;z-index:100;padding:16px}.dialog[data-v-ed985f48]{width:min(400px,100%);padding:18px}.bad-outline[data-v-ed985f48]{border-color:var(--danger);color:var(--danger);background:transparent}.backdrop[data-v-1b3e66f9]{position:fixed;inset:0;background:#000000b3;display:grid;place-items:center;z-index:200;padding:16px}.dialog[data-v-1b3e66f9]{width:min(420px,100%);padding:20px}a[data-v-1b3e66f9]{color:var(--accent-2)}.backdrop[data-v-dfbe957f]{position:fixed;inset:0;background:#0009;display:grid;place-items:center;z-index:300;padding:16px}.dialog[data-v-dfbe957f]{width:min(560px,100%);padding:18px;max-height:84vh}.legal-text[data-v-dfbe957f]{white-space:pre-wrap;word-break:break-word;overflow-y:auto;margin:0;font-family:inherit;color:var(--text-dim)}.backdrop[data-v-e255a8da]{position:fixed;inset:0;background:#0009;display:grid;place-items:center;z-index:300;padding:16px}.dialog[data-v-e255a8da]{width:min(560px,100%);padding:18px;max-height:84vh;overflow-y:auto;gap:12px}.entry[data-v-e255a8da]{display:grid;grid-template-columns:108px 1fr;gap:12px;align-items:start}.key[data-v-e255a8da]{color:var(--accent);font-size:13px;padding-top:1px;word-break:break-word}@media(max-width:520px){.entry[data-v-e255a8da]{grid-template-columns:1fr;gap:2px}}:root{--bg: #12141c;--panel: rgba(18, 20, 28, .92);--panel-border: #2a2f42;--text: #e8e6df;--text-dim: #9a97a8;--accent: #ffb347;--accent-2: #4dd0e1;--danger: #ef5350;--ok: #81c784;--radius: 10px;--tap: 44px;--gap: 8px;--safe-bottom: env(safe-area-inset-bottom, 0px);--bar-h: 68px;--build-right: 348px;--build-bottom: calc(var(--gap) + var(--safe-bottom));--place-bottom: calc(var(--gap) + var(--bar-h) + var(--safe-bottom))}@media(max-width:900px){:root{--build-right: 248px}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#app{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:15px;overscroll-behavior:none;touch-action:none}button{font:inherit;color:inherit;background:#1d2130;border:1px solid var(--panel-border);border-radius:var(--radius);min-height:var(--tap);padding:8px 14px;cursor:pointer}button:active{filter:brightness(1.25)}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#1a1206;font-weight:600}button.ghost{background:transparent}.panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);backdrop-filter:blur(6px)}.row{display:flex;gap:8px;align-items:center}.col{display:flex;flex-direction:column;gap:8px}.grow{flex:1}.dim{color:var(--text-dim)}.small{font-size:12.5px}.ok{color:var(--ok)}.warn{color:var(--accent)}.bad{color:var(--danger)}.mono{font-variant-numeric:tabular-nums}input[type=text],input[type=email],input[type=password],input[type=number]{font:inherit;color:var(--text);background:#0d0f16;border:1px solid var(--panel-border);border-radius:var(--radius);padding:10px 12px;min-height:var(--tap);width:100%}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#2a2f42;border-radius:4px}
