.ui-btn[data-v-127a9cb0]{display:inline-flex;align-items:center;justify-content:center;background:var(--ui-color-btn-bg, transparent);border:1px solid var(--ui-color-border-mid);color:var(--ui-color-text);font-family:var(--ui-font);letter-spacing:var(--ui-letter-spacing);text-transform:uppercase;cursor:pointer;border-radius:var(--ui-radius);transition:background var(--ui-transition),color var(--ui-transition),border-color var(--ui-transition)}.ui-btn[data-v-127a9cb0]:disabled{opacity:.35;cursor:not-allowed}.ui-btn[data-v-127a9cb0]:focus{outline:2px solid var(--ui-color-primary);outline-offset:2px}.ui-btn--sm[data-v-127a9cb0]{padding:4px 12px;font-size:var(--ui-font-size-sm)}.ui-btn--md[data-v-127a9cb0]{padding:9px 24px;font-size:var(--ui-font-size-md)}.ui-btn--lg[data-v-127a9cb0]{padding:12px 40px;font-size:var(--ui-font-size-lg)}.ui-btn--primary[data-v-127a9cb0]{background:var(--ui-color-btn-bg-primary, transparent);border-color:var(--ui-color-primary);color:var(--ui-color-btn-fg-primary, var(--ui-color-primary))}.ui-btn--primary[data-v-127a9cb0]:not(:disabled):hover{background:var(--ui-color-primary);color:var(--ui-color-text-on)}.ui-btn--secondary[data-v-127a9cb0]:not(:disabled):hover{border-color:var(--ui-color-text);color:#fff}.ui-btn--danger[data-v-127a9cb0]{background:var(--ui-color-btn-bg-danger, transparent);border-color:var(--ui-color-danger);color:var(--ui-color-btn-fg-danger, var(--ui-color-danger))}.ui-btn--danger[data-v-127a9cb0]:not(:disabled):hover{background:var(--ui-color-danger);color:var(--ui-color-text-on)}.lang-row[data-v-896ef8fb]{display:flex;gap:4px;justify-content:center;pointer-events:all}.lang-btn[data-v-896ef8fb]{padding:5px 10px;background:transparent;border:1px solid var(--ui-color-border);color:var(--ui-color-text-dim);font-family:var(--ui-font);font-size:var(--ui-font-size-sm);letter-spacing:var(--ui-letter-spacing);cursor:pointer;border-radius:var(--ui-radius);transition:border-color var(--ui-transition),color var(--ui-transition)}.lang-btn[data-v-896ef8fb]:hover{border-color:var(--ui-color-border-mid);color:var(--ui-color-text)}.lang-btn.active[data-v-896ef8fb]{border-color:var(--ui-color-primary);color:var(--ui-color-primary)}.main-menu-hud[data-v-1cacadda]{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:64px;gap:12px;pointer-events:none}.title[data-v-1cacadda]{position:absolute;top:48px;left:50%;transform:translate(-50%);margin:0;color:#fff;font-family:var(--ui-font);letter-spacing:var(--ui-letter-spacing);text-transform:uppercase}.lang-switch[data-v-1cacadda]{position:absolute;bottom:20px;right:20px}.main-menu-hud[data-v-1cacadda] .ui-btn{pointer-events:all}.ui-toggle[data-v-ce3d3421]{display:inline-flex;align-items:center;gap:var(--ui-gap-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.ui-toggle-label[data-v-ce3d3421]{font-family:var(--ui-font);font-size:var(--ui-font-size-md);color:var(--ui-color-text);letter-spacing:var(--ui-letter-spacing);text-transform:uppercase}.ui-toggle-track[data-v-ce3d3421]{position:relative;width:36px;height:20px;background:transparent;border:1px solid var(--ui-color-border-mid);border-radius:10px;cursor:pointer;transition:border-color var(--ui-transition),background var(--ui-transition);flex-shrink:0;padding:0}.ui-toggle-track.active[data-v-ce3d3421]{border-color:var(--ui-color-primary);background:#4cc9f026}.ui-toggle-track[data-v-ce3d3421]:focus{outline:2px solid var(--ui-color-primary);outline-offset:2px}.ui-toggle-thumb[data-v-ce3d3421]{position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:var(--ui-color-border-mid);transition:transform var(--ui-transition),background var(--ui-transition)}.ui-toggle-track.active .ui-toggle-thumb[data-v-ce3d3421]{transform:translate(16px);background:var(--ui-color-primary)}.ui-slider[data-v-06addd00]{display:flex;flex-direction:column;gap:4px;cursor:pointer;-webkit-user-select:none;user-select:none}.ui-slider-label[data-v-06addd00]{font-family:var(--ui-font);font-size:var(--ui-font-size-md);color:var(--ui-color-text);letter-spacing:var(--ui-letter-spacing);text-transform:uppercase}.ui-slider-track[data-v-06addd00]{position:relative;height:6px;background:var(--ui-color-border);border-radius:var(--ui-radius)}.ui-slider-fill[data-v-06addd00]{position:absolute;top:0;right:0;bottom:0;left:0;width:0%;background:var(--ui-color-primary);border-radius:var(--ui-radius);pointer-events:none}.ui-slider-thumb[data-v-06addd00]{position:absolute;top:50%;left:0%;width:14px;height:14px;background:var(--ui-color-primary);border:2px solid var(--ui-color-bg);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 1px 3px #00000080}.ui-slider-input[data-v-06addd00]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}.ui-modal-overlay[data-v-5cce61d6]{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--ui-color-overlay);z-index:var(--ui-z-modal)}.ui-modal-box[data-v-5cce61d6]{background:var(--ui-color-bg);border:1px solid var(--ui-color-border-mid);border-radius:var(--ui-radius);min-width:280px;max-width:480px;display:flex;flex-direction:column}.ui-modal-header[data-v-5cce61d6]{padding:16px 20px 12px;font-family:var(--ui-font);font-size:var(--ui-font-size-lg);letter-spacing:var(--ui-letter-spacing);text-transform:uppercase;color:var(--ui-color-text);border-bottom:1px solid var(--ui-color-border)}.ui-modal-body[data-v-5cce61d6]{padding:16px 20px;font-family:var(--ui-font);font-size:var(--ui-font-size-md);color:var(--ui-color-text-dim);line-height:1.6}.ui-modal-footer[data-v-5cce61d6]{padding:12px 20px 16px;display:flex;gap:var(--ui-gap-sm);justify-content:flex-end;border-top:1px solid var(--ui-color-border)}.ui-panel[data-v-eedbe032]{position:fixed;display:flex;gap:var(--panel-gap, var(--ui-gap-sm));padding:var(--ui-panel-padding);pointer-events:none;z-index:var(--ui-z-panel)}.ui-panel[data-v-eedbe032]>*{pointer-events:all}.ui-panel--top[data-v-eedbe032],.ui-panel--bottom[data-v-eedbe032]{flex-direction:row;align-items:center;left:0;right:0;width:fit-content;margin-inline:auto}.ui-panel--top[data-v-eedbe032]{top:0}.ui-panel--bottom[data-v-eedbe032]{bottom:0}.ui-panel--left[data-v-eedbe032],.ui-panel--right[data-v-eedbe032]{flex-direction:column;top:0;bottom:0;height:fit-content;margin-block:auto}.ui-panel--left[data-v-eedbe032]{left:0}.ui-panel--right[data-v-eedbe032]{right:0}.ui-panel--top-left[data-v-eedbe032]{flex-direction:column;top:0;left:0}.ui-panel--top-right[data-v-eedbe032]{flex-direction:column;top:0;right:0}.ui-panel--bottom-left[data-v-eedbe032]{flex-direction:column;bottom:0;left:0}.ui-panel--bottom-right[data-v-eedbe032]{flex-direction:column;bottom:0;right:0}.ui-stat[data-v-c50ca83a]{display:inline-flex;align-items:center;gap:5px;font-family:var(--ui-font);font-size:var(--ui-font-size-md);color:var(--ui-color-text);letter-spacing:var(--ui-letter-spacing)}.ui-stat-icon[data-v-c50ca83a]{font-size:15px;line-height:1}.ui-stat-value[data-v-c50ca83a]{font-size:var(--ui-font-size-md);color:var(--ui-color-text)}.ui-stat-label[data-v-c50ca83a]{font-size:var(--ui-font-size-sm);color:var(--ui-color-text-dim);text-transform:uppercase}.tile-preview-canvas[data-v-9253e788]{width:96px;height:96px;display:block;border-radius:var(--ui-radius)}.game-hud[data-v-eb6231d5]{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.pause-btn[data-v-eb6231d5]{position:fixed;top:16px;right:16px;z-index:10;pointer-events:all}.reopen-btn[data-v-eb6231d5]{position:fixed;bottom:16px;right:16px;z-index:10;pointer-events:all}.pause-body[data-v-eb6231d5],.over-body[data-v-eb6231d5]{display:flex;flex-direction:column;gap:var(--ui-gap-sm);min-width:200px}.pause-body[data-v-eb6231d5] .ui-btn{width:100%}.help-btn[data-v-eb6231d5]{width:28px;height:28px;padding:0;border-radius:999px;align-self:flex-end}.help-body[data-v-eb6231d5]{display:flex;flex-direction:column;gap:var(--ui-gap-md)}.help-body h3[data-v-eb6231d5]{margin:0 0 4px;color:var(--ui-color-text);font-family:var(--ui-font);font-size:var(--ui-font-size-md);letter-spacing:var(--ui-letter-spacing);text-transform:uppercase}.help-body p[data-v-eb6231d5]{margin:0}.help-controls[data-v-eb6231d5]{white-space:pre-line}.pause-toggles[data-v-eb6231d5]{display:flex;flex-direction:column;gap:var(--ui-gap-sm);padding-top:var(--ui-gap-sm);border-top:1px solid var(--ui-color-border)}.time-of-day-slider[data-v-eb6231d5]{padding-top:var(--ui-gap-sm);border-top:1px solid var(--ui-color-border)}.new-record[data-v-eb6231d5]{margin:0;color:var(--ui-color-primary);font-family:var(--ui-font);letter-spacing:var(--ui-letter-spacing);text-transform:uppercase}.deck-panel[data-v-eb6231d5]{flex-direction:column;align-items:flex-end;gap:10px}.pending-row[data-v-eb6231d5]{display:flex;flex-direction:column;gap:var(--ui-gap-md)}.deck-stack[data-v-eb6231d5]{position:relative;width:96px;height:96px;background:var(--ui-color-bg);border:1px solid var(--ui-color-border-mid);border-radius:var(--ui-radius);box-shadow:0 2px 10px #00000059}.deck-count[data-v-eb6231d5]{position:absolute;top:-8px;left:-8px;background:var(--ui-color-bg);border:1px solid var(--ui-color-border-mid);border-radius:999px;min-width:22px;height:22px;padding:0 4px;display:flex;align-items:center;justify-content:center;font-family:var(--ui-font);font-size:var(--ui-font-size-sm);color:var(--ui-color-text);z-index:2}.score-popup[data-v-eb6231d5]{position:fixed;transform:translate(-50%,-50%);color:var(--ui-color-primary);font-family:var(--ui-font);font-size:var(--ui-font-size-lg);font-weight:600;letter-spacing:var(--ui-letter-spacing);text-shadow:0 1px 4px rgba(0,0,0,.6);pointer-events:none;animation:score-popup-float-eb6231d5 .9s ease-out forwards}@keyframes score-popup-float-eb6231d5{0%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-180%)}}.region-bonus-popup[data-v-eb6231d5]{position:fixed;transform:translate(-50%,-50%) scale(1);font-family:var(--ui-font);font-size:var(--ui-font-size-xl, 1.4em);font-weight:700;letter-spacing:var(--ui-letter-spacing);text-shadow:0 1px 6px rgba(0,0,0,.7);white-space:nowrap;pointer-events:none;animation:region-bonus-float-eb6231d5 2.4s ease-out forwards}.region-bonus-city[data-v-eb6231d5]{color:#e8c766}.region-bonus-road[data-v-eb6231d5]{color:#c9c9c9}@keyframes region-bonus-float-eb6231d5{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}8%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}16%{transform:translate(-50%,-50%) scale(1)}60%{opacity:1;transform:translate(-50%,-90%) scale(1)}to{opacity:0;transform:translate(-50%,-260%) scale(1)}}.debug-overlay[data-v-49746b36]{position:fixed;top:12px;left:12px;display:flex;flex-direction:column;gap:2px;z-index:300;pointer-events:none;max-height:calc(100vh - 24px)}.row[data-v-49746b36]{display:flex;gap:8px;font-family:var(--ui-font-mono);font-size:11px;line-height:1.5}.key[data-v-49746b36]{color:#555;min-width:80px}.val[data-v-49746b36]{color:#0f0}.fps-graph[data-v-49746b36]{display:flex;align-items:flex-end;gap:1px;height:28px;width:120px;margin:2px 0;background:#00ff000d}.fps-bar[data-v-49746b36]{flex:1;min-width:1px;background:#0f0}.fps-bar.low[data-v-49746b36]{background:#f44}.entities[data-v-49746b36]{margin-top:4px;border-top:1px solid #333;padding-top:2px}.entities-header[data-v-49746b36]{color:#555;font-family:var(--ui-font-mono);font-size:11px}.entities-list[data-v-49746b36]{max-height:200px;overflow-y:auto;pointer-events:all}.toast-container[data-v-35b0f01a]{position:fixed;top:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:300;pointer-events:none}.toast[data-v-35b0f01a]{background:#000000bf;border:1px solid #444;color:#ddd;font-family:var(--ui-font);font-size:13px;letter-spacing:var(--ui-letter-spacing);padding:8px 20px;white-space:nowrap}.toast-enter-active[data-v-35b0f01a]{transition:opacity .15s ease,transform .15s ease}.toast-leave-active[data-v-35b0f01a]{transition:opacity .3s ease}.toast-enter-from[data-v-35b0f01a]{opacity:0;transform:translateY(-6px)}.toast-leave-to[data-v-35b0f01a]{opacity:0}canvas[data-v-239cabe4]{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;touch-action:none}.curtain[data-v-239cabe4]{position:fixed;left:0;right:0;height:0;background:#000;z-index:200;transition:height .35s cubic-bezier(.76,0,.24,1);pointer-events:none}.curtain-top[data-v-239cabe4]{top:0}.curtain-bottom[data-v-239cabe4]{bottom:0}.curtain.active[data-v-239cabe4]{height:50%;pointer-events:all}.loading-screen[data-v-239cabe4]{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#1a1512;z-index:10}.loading-bar-track[data-v-239cabe4]{width:300px;height:4px;background:var(--ui-color-border);border-radius:2px;overflow:hidden}.loading-bar-fill[data-v-239cabe4]{height:100%;background:var(--ui-color-primary);border-radius:2px;transition:width .15s ease}.loading-label[data-v-239cabe4]{color:var(--ui-color-text-dim);font-family:var(--ui-font);font-size:12px;letter-spacing:var(--ui-letter-spacing)}.fade-leave-active[data-v-239cabe4]{transition:opacity .4s ease}.fade-leave-to[data-v-239cabe4]{opacity:0}.hud-enter-active[data-v-239cabe4],.hud-leave-active[data-v-239cabe4]{transition:opacity .25s ease}.hud-enter-from[data-v-239cabe4],.hud-leave-to[data-v-239cabe4]{opacity:0}html:root{--ui-color-primary: #d97b4f;--ui-color-accent: #e8b74d;--ui-color-danger: #c0392b;--ui-color-bg: rgba(38, 33, 28, .85);--ui-color-overlay: rgba(20, 16, 12, .55);--ui-color-surface: rgba(255, 255, 255, .05);--ui-color-border: #4a3f34;--ui-color-border-mid: #a9906b;--ui-color-text: #efe6d8;--ui-color-text-dim: #9c8f7c;--ui-color-text-on: #241c14;--ui-radius: 8px;--ui-color-btn-bg: var(--ui-color-bg);--ui-color-btn-bg-primary: var(--ui-color-primary);--ui-color-btn-bg-danger: var(--ui-color-danger);--ui-color-btn-fg-primary: var(--ui-color-text-on);--ui-color-btn-fg-danger: var(--ui-color-text-on)}:root{--ui-color-primary: #4cc9f0;--ui-color-accent: #f72585;--ui-color-danger: #ff4444;--ui-color-bg: rgba(0, 0, 0, .85);--ui-color-overlay: rgba(0, 0, 0, .6);--ui-color-surface: rgba(255, 255, 255, .04);--ui-color-border: #2a2a2a;--ui-color-border-mid: #444;--ui-color-border-focus: var(--ui-color-primary);--ui-color-text: #cccccc;--ui-color-text-dim: #555555;--ui-color-text-on: #000000;--ui-color-btn-bg: transparent;--ui-color-btn-bg-primary: transparent;--ui-color-btn-bg-danger: transparent;--ui-color-btn-fg-primary: var(--ui-color-primary);--ui-color-btn-fg-danger: var(--ui-color-danger);--ui-font: "Oswald", sans-serif;--ui-font-mono: monospace;--ui-font-size-sm: 11px;--ui-font-size-md: 13px;--ui-font-size-lg: 15px;--ui-letter-spacing: .05em;--ui-radius: 2px;--ui-gap-sm: 8px;--ui-gap-md: 16px;--ui-transition: .2s ease;--ui-panel-padding: 12px 16px;--ui-z-panel: 20;--ui-z-modal: 100}.ui-fade-enter-active,.ui-fade-leave-active{transition:opacity var(--ui-transition)}.ui-fade-enter-from,.ui-fade-leave-to{opacity:0}.ui-scale-enter-active,.ui-scale-leave-active{transition:opacity var(--ui-transition),transform var(--ui-transition)}.ui-scale-enter-from,.ui-scale-leave-to{opacity:0;transform:scale(.92)}.ui-slide-up-enter-active,.ui-slide-up-leave-active{transition:opacity var(--ui-transition),transform var(--ui-transition)}.ui-slide-up-enter-from,.ui-slide-up-leave-to{opacity:0;transform:translateY(16px)}.ui-slide-down-enter-active,.ui-slide-down-leave-active{transition:opacity var(--ui-transition),transform var(--ui-transition)}.ui-slide-down-enter-from,.ui-slide-down-leave-to{opacity:0;transform:translateY(-16px)}.ui-slide-left-enter-active,.ui-slide-left-leave-active{transition:opacity var(--ui-transition),transform var(--ui-transition)}.ui-slide-left-enter-from,.ui-slide-left-leave-to{opacity:0;transform:translate(16px)}.ui-slide-right-enter-active,.ui-slide-right-leave-active{transition:opacity var(--ui-transition),transform var(--ui-transition)}.ui-slide-right-enter-from,.ui-slide-right-leave-to{opacity:0;transform:translate(-16px)}@keyframes ui-shake{0%,to{transform:translate(0)}15%{transform:translate(-6px)}35%{transform:translate(6px)}55%{transform:translate(-4px)}75%{transform:translate(4px)}}.ui-shake{animation:ui-shake .4s ease}
