.hero-quick-bar[data-v-e986c3a7]{align-items:flex-start;gap:6px;display:flex}.hero-quick-btn[data-v-e986c3a7]{width:calc(48px * var(--ui-scale,1));height:calc(54px * var(--ui-scale,1));cursor:pointer;background:#0c1018b3;border:2px solid #ffd96680;border-radius:6px;padding:0;position:relative;overflow:hidden}.hero-quick-btn img[data-v-e986c3a7]{object-fit:cover;width:100%;height:100%}.hq-lv[data-v-e986c3a7]{color:#fff;text-shadow:0 1px 2px #000;font-size:11px;font-weight:700;position:absolute;bottom:3px;left:3px}.hq-sp[data-v-e986c3a7]{color:#ffe478;text-shadow:0 1px 2px #000;font-size:10px;font-weight:700;position:absolute;top:3px;right:3px}.hq-bars[data-v-e986c3a7]{flex-direction:column;gap:1px;height:3px;display:flex;position:absolute;bottom:2px;left:4px;right:4px}.hq-hp[data-v-e986c3a7]{background:#5cff7a;height:1.5px}.hq-mp[data-v-e986c3a7]{background:#5aa8ff;height:1.5px}.group-bar[data-v-48e06b11]{gap:calc(6px * var(--ui-scale,1));align-items:flex-start;display:flex}.group-chip[data-v-48e06b11]{width:calc(38px * var(--ui-scale,1));height:calc(38px * var(--ui-scale,1));cursor:pointer;background:#0c1018b3;border:1.5px solid #ffd96673;border-radius:5px;padding:0;position:relative;overflow:hidden}.group-chip img[data-v-48e06b11]{object-fit:cover;width:100%;height:100%}.cg-num[data-v-48e06b11]{color:#fff;text-shadow:0 1px 2px #000;font-size:10px;font-weight:700;position:absolute;top:1px;left:2px}.cg-cnt[data-v-48e06b11]{color:#ffe478;text-shadow:0 1px 2px #000;font-size:9px;font-weight:700;position:absolute;bottom:1px;right:2px}.top-right[data-v-fefefe78]{align-items:center;gap:6px;display:flex}.menu-btn[data-v-fefefe78]{color:#f0e6c8;cursor:pointer;background:#0c1018b3;border:1px solid #ffd96666;border-radius:4px;padding:4px 8px;font-size:12px}.menu-btn[data-v-fefefe78]:hover{background:#3c465acc}.mp-screen[data-v-96cb2e3d]{z-index:30;color:#f4e4c1;background:radial-gradient(circle at 20% 0,#78562059,#0000 45%),linear-gradient(#1a140c 0%,#0d0b09 100%);flex-direction:column;gap:16px;padding:28px 36px;font-family:Palatino Linotype,Songti SC,serif;display:flex;position:fixed;inset:0}.mp-header[data-v-96cb2e3d],.mp-footer[data-v-96cb2e3d],.mp-lobby-head[data-v-96cb2e3d],.mp-actions[data-v-96cb2e3d],.mp-row[data-v-96cb2e3d],.mp-join[data-v-96cb2e3d],.mp-chat-input[data-v-96cb2e3d]{align-items:center;gap:12px;display:flex}.mp-header[data-v-96cb2e3d]{justify-content:space-between}.mp-eyebrow[data-v-96cb2e3d]{letter-spacing:.35em;color:#c6a15b;margin:0;font-size:12px}h1[data-v-96cb2e3d],h2[data-v-96cb2e3d]{color:#f8e7bc;margin:0;font-weight:600}.mp-ping[data-v-96cb2e3d]{background:#140f08cc;border:1px solid #8c6b34;border-radius:8px;flex-direction:column;align-items:flex-end;padding:6px 14px;display:flex}.mp-ping strong[data-v-96cb2e3d]{color:#e7c98a;font-size:18px}.mp-ping.good strong[data-v-96cb2e3d]{color:#8fe08f}.mp-ping.bad strong[data-v-96cb2e3d]{color:#e07b6a}.mp-browser[data-v-96cb2e3d],.mp-lobby[data-v-96cb2e3d]{flex:1;grid-template-columns:1fr 1fr;gap:16px;min-height:0;display:grid}.mp-panel[data-v-96cb2e3d],.mp-lobby-main[data-v-96cb2e3d],.mp-chat[data-v-96cb2e3d]{background:#1c150cd9;border:1px solid #6e5528;border-radius:10px;padding:18px;box-shadow:inset 0 0 24px #00000059}.mp-field[data-v-96cb2e3d]{color:#cbb892;flex-direction:column;gap:6px;font-size:13px;display:flex}.mp-field.grow[data-v-96cb2e3d]{flex:1}.mp-settings[data-v-96cb2e3d]{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}input[data-v-96cb2e3d],select[data-v-96cb2e3d]{color:#f4e4c1;font:inherit;background:#140f09;border:1px solid #6e5528;border-radius:6px;padding:8px 10px}button[data-v-96cb2e3d]{color:#f4e4c1;cursor:pointer;font:inherit;background:linear-gradient(#4a3920,#2c2114);border:1px solid #8c6b34;border-radius:6px;padding:8px 16px}button[data-v-96cb2e3d]:hover{border-color:#e7c98a}button[data-v-96cb2e3d]:disabled{opacity:.45;cursor:default}button.primary[data-v-96cb2e3d]{color:#fff6df;background:linear-gradient(#8a6428,#5c3e12)}button.ready[data-v-96cb2e3d]{color:#b6f0b6;border-color:#8fe08f}.mp-toggle[data-v-96cb2e3d]{gap:8px;display:flex}.mp-toggle button.active[data-v-96cb2e3d]{border-color:#e7c98a;box-shadow:0 0 8px #e7c98a66}.mp-status[data-v-96cb2e3d]{color:#b6a078;font-size:13px}.mp-error[data-v-96cb2e3d]{color:#e07b6a;font-size:13px}.mp-empty[data-v-96cb2e3d]{color:#8c7a5c;font-size:13px}.mp-room-list[data-v-96cb2e3d],.mp-slots[data-v-96cb2e3d],.mp-chat-log[data-v-96cb2e3d]{margin:0;padding:0;list-style:none}.mp-room-list li[data-v-96cb2e3d],.mp-slots li[data-v-96cb2e3d]{border-bottom:1px solid #8c6b344d;align-items:center;gap:12px;padding:8px 4px;display:flex}.mp-room-list li div[data-v-96cb2e3d]{flex-direction:column;flex:1;display:flex}.mp-room-list li span[data-v-96cb2e3d],.mp-slot-info span[data-v-96cb2e3d]{color:#a8946e;font-size:12px}.mp-join[data-v-96cb2e3d]{margin-top:14px}.mp-join input[data-v-96cb2e3d]{text-transform:uppercase;flex:1}.mp-swatch[data-v-96cb2e3d]{border:1px solid #f4e4c1;border-radius:50%;width:18px;height:18px}.mp-swatch.vacant[data-v-96cb2e3d]{background:0 0;border-style:dashed}.mp-slot-info[data-v-96cb2e3d]{flex-direction:column;flex:1;display:flex}.mp-slot-info em[data-v-96cb2e3d]{color:#e7c98a;margin-left:6px;font-size:12px;font-style:normal}.mp-ready[data-v-96cb2e3d]{color:#8c7a5c;font-size:12px}.mp-ready.on[data-v-96cb2e3d]{color:#8fe08f}.mp-slots li.empty[data-v-96cb2e3d]{opacity:.6}.mp-colors[data-v-96cb2e3d]{flex-wrap:wrap;gap:6px;display:flex}.mp-colors button[data-v-96cb2e3d]{border-radius:50%;width:22px;height:22px;padding:0}.mp-colors button.active[data-v-96cb2e3d]{outline:2px solid #f8e7bc}.mp-lobby-main[data-v-96cb2e3d]{flex-direction:column;display:flex}.mp-lobby-head[data-v-96cb2e3d]{justify-content:space-between}.mp-chat[data-v-96cb2e3d]{flex-direction:column;min-height:0;display:flex}.mp-chat-log[data-v-96cb2e3d]{flex-direction:column;flex:1;gap:6px;display:flex;overflow-y:auto}.mp-chat-log li[data-v-96cb2e3d]{gap:8px;font-size:14px;display:flex}.mp-chat-log strong[data-v-96cb2e3d]{color:#e7c98a}.mp-chat-input[data-v-96cb2e3d]{margin-top:10px}.mp-chat-input input[data-v-96cb2e3d]{flex:1}.mp-footer[data-v-96cb2e3d]{justify-content:flex-start}.campaign[data-v-fb71903b]{z-index:32;color:#f2e4bc;background:linear-gradient(#1a2433,#10150d);padding:28px;position:fixed;inset:0}header[data-v-fb71903b],nav[data-v-fb71903b],main[data-v-fb71903b],section[data-v-fb71903b]{gap:12px;display:flex}header[data-v-fb71903b]{justify-content:space-between}main[data-v-fb71903b]{margin-top:20px}section[data-v-fb71903b]{flex-direction:column;width:320px}article[data-v-fb71903b]{background:#00000047;border:1px solid #86704a;flex:1;padding:20px}button[data-v-fb71903b]{min-height:36px;color:inherit;text-align:left;background:#243246;border:1px solid #86704a;padding:8px 12px}button.active[data-v-fb71903b],button.done[data-v-fb71903b]{border-color:#efd18a}button[data-v-fb71903b]:disabled{opacity:.45}.unit-panel[data-v-f415e55f]{flex-direction:column;gap:8px;font-size:12px;display:flex}.section-title[data-v-f415e55f]{color:#c4d4ee;letter-spacing:.5px;margin-top:6px;font-size:11px;font-weight:600}.faction-tabs[data-v-f415e55f]{gap:4px;display:flex}.tab-btn[data-v-f415e55f]{color:#cfddec;cursor:pointer;background:#1c2738;border:1px solid #4a5c78;flex:1;padding:4px 6px;font-size:11px}.tab-btn.active.player[data-v-f415e55f]{color:#fff;background:#1e3a66;border-color:#58a6ff}.tab-btn.active.ai[data-v-f415e55f]{color:#fff;background:#662020;border-color:#ff6b6b}.tab-btn.active.neutral[data-v-f415e55f]{color:#fff;background:#5c4820;border-color:#ffd070}.race-tabs[data-v-f415e55f]{flex-wrap:wrap;gap:4px;display:flex}.pill-btn[data-v-f415e55f]{color:#b8c8dc;cursor:pointer;background:#162030;border:1px solid #3c4c66;border-radius:10px;padding:2px 8px;font-size:11px}.pill-btn.active[data-v-f415e55f]{color:#fff;background:#334e77;border-color:#79a8e8}.search-box[data-v-f415e55f]{margin:2px 0}.search-input[data-v-f415e55f]{box-sizing:border-box;color:#f0e6d2;background:#101826;border:1px solid #3c4c66;width:100%;padding:4px 8px;font-size:12px}.catalog-list[data-v-f415e55f]{flex-direction:column;gap:3px;max-height:160px;padding-right:2px;display:flex;overflow-y:auto}.unit-card[data-v-f415e55f]{color:inherit;text-align:left;cursor:pointer;background:#192334;border:1px solid #334460;align-items:center;gap:8px;padding:4px 8px;display:flex}.unit-card[data-v-f415e55f]:hover{border-color:#6a88b8}.unit-card.active[data-v-f415e55f]{background:#253954;border-color:#79a8e8}.unit-color-dot[data-v-f415e55f]{border-radius:50%;flex-shrink:0;width:10px;height:10px}.unit-card-info[data-v-f415e55f]{flex-direction:column;display:flex;overflow:hidden}.unit-card-name[data-v-f415e55f]{color:#f2e4bc;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.unit-card-sub[data-v-f415e55f]{color:#8da2c0;font-size:10px}.placed-header[data-v-f415e55f]{justify-content:space-between;align-items:center;display:flex}.mini-btn[data-v-f415e55f]{cursor:pointer;color:inherit;background:#243246;border:1px solid #86704a;padding:1px 6px;font-size:10px}.mini-btn.danger[data-v-f415e55f]{background:#5a2424;border-color:#9a4848}.placed-list[data-v-f415e55f]{flex-direction:column;gap:3px;max-height:140px;display:flex;overflow-y:auto}.empty-tip[data-v-f415e55f]{color:#8a9cb8;text-align:center;padding:8px;font-size:11px}.placed-row[data-v-f415e55f]{cursor:pointer;background:#141c2a;border:1px solid #28374e;align-items:center;gap:6px;padding:3px 6px;font-size:11px;display:flex}.placed-row.selected[data-v-f415e55f]{background:#223048;border-color:#e5c158}.badge[data-v-f415e55f]{text-align:center;border-radius:2px;width:14px;height:14px;font-size:9px;font-weight:700;line-height:14px;display:inline-block}.badge.player[data-v-f415e55f]{color:#fff;background:#2f6ec0}.badge.ai[data-v-f415e55f]{color:#fff;background:#b53838}.badge.neutral[data-v-f415e55f]{color:#fff;background:#8f6e28}.placed-name[data-v-f415e55f]{color:#f0e6d2;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.placed-coord[data-v-f415e55f]{color:#8da2c0;font-size:10px}.delete-btn[data-v-f415e55f]{color:#c46868;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:14px}.delete-btn[data-v-f415e55f]:hover{color:#f88}.region-panel[data-v-9ec5729a]{flex-direction:column;gap:8px;font-size:12px;display:flex}.top-actions[data-v-9ec5729a]{flex-direction:column;gap:4px;display:flex}.btn[data-v-9ec5729a]{color:inherit;cursor:pointer;background:#243246;border:1px solid #86704a;padding:5px 8px;font-size:11px}.btn.primary[data-v-9ec5729a]{color:#fff;background:#2c4c70;border-color:#58a6ff}.btn[data-v-9ec5729a]:hover{border-color:#f2e4bc}.section-title[data-v-9ec5729a]{color:#c4d4ee;font-size:11px;font-weight:600}.edit-form[data-v-9ec5729a]{background:#141c2a;border:1px solid #4a5c78;flex-direction:column;gap:6px;padding:8px;display:flex}.form-title[data-v-9ec5729a]{color:#f2e4bc;font-weight:700}.form-row[data-v-9ec5729a]{align-items:center;gap:6px;display:flex}.form-input[data-v-9ec5729a],.form-select[data-v-9ec5729a]{color:#fff;background:#101826;border:1px solid #3c4c66;flex:1;padding:2px 6px;font-size:11px}.coords-row[data-v-9ec5729a]{flex-direction:column;align-items:flex-start;gap:4px}.mini-input[data-v-9ec5729a]{color:#fff;background:#101826;border:1px solid #3c4c66;width:48px;padding:2px 4px;font-size:11px}.color-picker[data-v-9ec5729a]{cursor:pointer;background:0 0;border:none;width:32px;height:20px;padding:0}.form-buttons[data-v-9ec5729a]{gap:6px;margin-top:4px;display:flex}.mini-btn[data-v-9ec5729a]{color:inherit;cursor:pointer;background:#243246;border:1px solid #86704a;padding:2px 8px;font-size:11px}.mini-btn.primary[data-v-9ec5729a]{background:#345c8c;border-color:#6da2e0}.regions-list[data-v-9ec5729a]{flex-direction:column;gap:4px;max-height:260px;display:flex;overflow-y:auto}.empty-tip[data-v-9ec5729a]{color:#8da2c0;text-align:center;padding:10px;font-size:11px}.region-card[data-v-9ec5729a]{cursor:pointer;background:#162030;border:1px solid #2e3e56;flex-direction:column;gap:3px;padding:6px 8px;display:flex}.region-card.active[data-v-9ec5729a]{background:#1f2c42;border-color:#ffd070}.region-card-top[data-v-9ec5729a]{align-items:center;gap:6px;display:flex}.color-indicator[data-v-9ec5729a]{border-radius:2px;flex-shrink:0;width:10px;height:10px}.region-title[data-v-9ec5729a]{color:#f2e4bc;text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.purpose-badge[data-v-9ec5729a]{color:#c4d4ee;background:#344458;border-radius:2px;padding:1px 4px;font-size:9px}.purpose-badge.player_start[data-v-9ec5729a]{color:#79b0f8;background:#1c3c66}.purpose-badge.ai_start[data-v-9ec5729a]{color:#f87979;background:#5a1c1c}.purpose-badge.combat[data-v-9ec5729a]{color:#f8af79;background:#663e1c}.purpose-badge.protected[data-v-9ec5729a]{color:#79f89a;background:#1c5a2c}.region-bounds[data-v-9ec5729a]{color:#8da2c0;font-size:10px}.region-card-btns[data-v-9ec5729a]{justify-content:flex-end;gap:8px;display:flex}.mini-link[data-v-9ec5729a]{color:#79a8e8;cursor:pointer;background:0 0;border:none;padding:0;font-size:10px}.mini-link[data-v-9ec5729a]:hover{text-decoration:underline}.mini-link.danger[data-v-9ec5729a]{color:#d06a6a}.waypoint-panel[data-v-f14cb951]{flex-direction:column;gap:8px;font-size:12px;display:flex}.top-row[data-v-f14cb951]{display:flex}.btn[data-v-f14cb951]{width:100%;color:inherit;cursor:pointer;background:#243246;border:1px solid #86704a;padding:5px 8px;font-size:11px}.btn.primary[data-v-f14cb951]{color:#fff;background:#2c4c70;border-color:#58a6ff}.tip-banner[data-v-f14cb951]{color:#b8cde8;background:#182638;border-left:3px solid #58a6ff;padding:6px 8px;font-size:11px;line-height:1.4}.section-title[data-v-f14cb951]{color:#c4d4ee;font-size:11px;font-weight:600}.paths-list[data-v-f14cb951]{flex-direction:column;gap:3px;max-height:120px;display:flex;overflow-y:auto}.empty-tip[data-v-f14cb951]{color:#8da2c0;text-align:center;padding:8px;font-size:11px}.path-card[data-v-f14cb951]{cursor:pointer;background:#162030;border:1px solid #2e3e56;padding:4px 8px}.path-card.active[data-v-f14cb951]{background:#212e44;border-color:#ffd070}.path-card-header[data-v-f14cb951]{align-items:center;gap:6px;display:flex}.path-color-dot[data-v-f14cb951]{border-radius:50%;flex-shrink:0;width:10px;height:10px}.path-title[data-v-f14cb951]{color:#f2e4bc;text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.point-count[data-v-f14cb951]{color:#8da2c0;font-size:10px}.points-header[data-v-f14cb951]{justify-content:space-between;align-items:center;display:flex}.points-list[data-v-f14cb951]{flex-direction:column;gap:2px;max-height:110px;display:flex;overflow-y:auto}.point-row[data-v-f14cb951]{background:#101826;border:1px solid #253346;align-items:center;gap:6px;padding:2px 6px;font-size:11px;display:flex}.point-badge[data-v-f14cb951]{text-align:center;color:#101722;background:#ffd040;border-radius:50%;width:16px;height:16px;font-size:10px;font-weight:700;line-height:16px;display:inline-block}.point-coords[data-v-f14cb951]{color:#e0d0b0;flex:1}.camps-list[data-v-f14cb951]{flex-direction:column;gap:4px;max-height:130px;display:flex;overflow-y:auto}.camp-row[data-v-f14cb951]{background:#151e2c;border:1px solid #28374d;justify-content:space-between;align-items:center;gap:6px;padding:3px 6px;font-size:11px;display:flex}.camp-tag[data-v-f14cb951]{color:#f2e4bc;white-space:nowrap}.camp-path-select[data-v-f14cb951]{color:#e4ecf7;background:#0f1722;border:1px solid #3c4c66;flex:1;max-width:140px;padding:2px 4px;font-size:11px}.mini-link[data-v-f14cb951]{color:#79a8e8;cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.mini-link.danger[data-v-f14cb951]{color:#d06a6a}.mini-link[data-v-f14cb951]:hover{text-decoration:underline}.trigger-panel[data-v-c6225820]{flex-direction:column;gap:8px;font-size:12px;display:flex}.top-row[data-v-c6225820]{display:flex}.btn[data-v-c6225820]{width:100%;color:inherit;cursor:pointer;background:#243246;border:1px solid #86704a;padding:5px 8px;font-size:11px}.btn.primary[data-v-c6225820]{color:#fff;background:#2c4c70;border-color:#58a6ff}.section-title[data-v-c6225820]{color:#c4d4ee;font-size:11px;font-weight:600}.triggers-list[data-v-c6225820]{flex-direction:column;gap:3px;max-height:120px;display:flex;overflow-y:auto}.empty-tip[data-v-c6225820]{color:#8da2c0;text-align:center;padding:8px;font-size:11px}.trigger-item[data-v-c6225820]{cursor:pointer;background:#151e2c;border:1px solid #28374d;align-items:center;gap:6px;padding:4px 6px;display:flex}.trigger-item.active[data-v-c6225820]{background:#1f2c42;border-color:#ffd070}.trigger-meta[data-v-c6225820]{flex-direction:column;flex:1;display:flex;overflow:hidden}.trigger-title[data-v-c6225820]{color:#f2e4bc;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.event-tag[data-v-c6225820]{color:#8da2c0;font-size:10px}.trigger-detail[data-v-c6225820]{background:#141c28;border:1px solid #364860;flex-direction:column;gap:6px;padding:8px;display:flex}.form-row[data-v-c6225820]{align-items:center;gap:6px;display:flex}.flags-row[data-v-c6225820]{gap:12px;display:flex}.flag-label[data-v-c6225820]{color:#cfddec;cursor:pointer;align-items:center;gap:4px;font-size:11px;display:flex}.form-input[data-v-c6225820],.form-select[data-v-c6225820]{color:#fff;background:#101826;border:1px solid #3c4c66;flex:1;padding:2px 6px;font-size:11px}.mini-input[data-v-c6225820]{color:#fff;background:#101826;border:1px solid #3c4c66;width:52px;padding:2px 4px;font-size:11px}.event-box[data-v-c6225820]{background:#182232;border:1px solid #2c3c54;flex-direction:column;gap:4px;padding:6px;display:flex}.actions-header[data-v-c6225820]{justify-content:space-between;align-items:center;display:flex}.action-add-select[data-v-c6225820]{color:#79a8e8;cursor:pointer;background:#1c2738;border:1px solid #58a6ff;padding:2px 4px;font-size:11px}.actions-list[data-v-c6225820]{flex-direction:column;gap:6px;max-height:220px;display:flex;overflow-y:auto}.action-card[data-v-c6225820]{background:#172232;border:1px solid #2f4058;flex-direction:column;gap:4px;padding:6px;display:flex}.action-card-header[data-v-c6225820]{justify-content:space-between;align-items:center;display:flex}.action-badge[data-v-c6225820]{color:#f2e4bc;font-size:10px;font-weight:700}.mini-link[data-v-c6225820]{color:#79a8e8;cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.mini-link.danger[data-v-c6225820]{color:#d06a6a}.mini-link[data-v-c6225820]:hover{text-decoration:underline}.editor[data-v-f3b47e90]{z-index:33;color:#f2e4bc;background:#172033;flex-direction:column;font:13px/1.5 system-ui,sans-serif;display:flex;position:fixed;inset:0}header[data-v-f3b47e90]{border-bottom:1px solid #86704a;align-items:center;gap:8px;padding:10px 12px;display:flex}h1[data-v-f3b47e90]{margin:0 8px 0 0;font-size:18px}input[data-v-f3b47e90]{min-height:30px;color:inherit;background:#101722;border:1px solid #86704a;padding:0 8px}button[data-v-f3b47e90]{min-height:28px;color:inherit;cursor:pointer;background:#243246;border:1px solid #86704a;padding:2px 10px}button[data-v-f3b47e90]:hover:not(:disabled){border-color:#efd18a}button[data-v-f3b47e90]:disabled{opacity:.4;cursor:default}button.active[data-v-f3b47e90]{background:#334663;border-color:#efd18a}button.primary[data-v-f3b47e90]{background:#4c6a3a;border-color:#a9d07a}button.danger[data-v-f3b47e90]{background:#5a2b2b;border-color:#a86565}.file-btn[data-v-f3b47e90]{cursor:pointer;background:#243246;border:1px solid #86704a;align-items:center;min-height:28px;padding:2px 10px;display:inline-flex}.file-btn input[data-v-f3b47e90]{display:none}.message[data-v-f3b47e90],.issues[data-v-f3b47e90]{background:#00000040;padding:4px 12px}.issues[data-v-f3b47e90]{color:#ffd0a0}main[data-v-f3b47e90]{gap:12px;min-height:0;padding:12px;display:flex}aside[data-v-f3b47e90]{flex-direction:column;gap:4px;width:290px;display:flex;overflow:auto}.group-title[data-v-f3b47e90]{color:#b8c6dd;letter-spacing:1px;margin:8px 0 2px;font-size:11px}.saved-row[data-v-f3b47e90]{gap:4px;display:flex}.saved-row button[data-v-f3b47e90]:first-child{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.canvas-wrap[data-v-f3b47e90]{padding:4px;overflow:auto}.grid[data-v-f3b47e90]{-webkit-user-select:none;user-select:none;touch-action:none;background:#101722;border:1px solid #86704a;width:max-content;display:grid;position:relative}.tile[data-v-f3b47e90]{cursor:crosshair;border:1px solid #0000001f;border-top:0;border-left:0;width:auto;min-height:0;padding:0}.grass[data-v-f3b47e90]{background:#6f8f4d}.water[data-v-f3b47e90]{background:#2d78b0}.road[data-v-f3b47e90]{background:#b59668}.cliff[data-v-f3b47e90]{background:#66707a}.erase[data-v-f3b47e90]{background:#2b2b33}.marker[data-v-f3b47e90]{z-index:2;color:#101722;pointer-events:none;border:1px solid #ffffffa6;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:flex;position:absolute;transform:translate(-50%,-50%)}.gold-marker[data-v-f3b47e90]{background:#ffd966}.lumber-marker[data-v-f3b47e90]{background:#7fd06a}.camp-marker[data-v-f3b47e90]{background:#d0764a}.shop-marker[data-v-f3b47e90]{background:#8fb2ff}.fountain-marker[data-v-f3b47e90]{background:#67d6ff}.player-marker[data-v-f3b47e90]{background:#58a6ff}.ai-marker[data-v-f3b47e90]{background:#ff6b6b}.unit-marker[data-v-f3b47e90]{pointer-events:auto;cursor:pointer;border-radius:4px;font-size:9px}.unit-marker.player[data-v-f3b47e90]{color:#fff;background:#2f6ec0}.unit-marker.ai[data-v-f3b47e90]{color:#fff;background:#b53838}.unit-marker.neutral[data-v-f3b47e90]{color:#fff;background:#a07830}.unit-marker.selected[data-v-f3b47e90]{transform:translate(-50%,-50%)scale(1.2);box-shadow:0 0 0 2px #ffe066}.region-overlay[data-v-f3b47e90]{pointer-events:none;box-sizing:border-box;z-index:1;background:#58a6ff24;border:2px dashed #58a6ff;position:absolute}.region-label[data-v-f3b47e90]{color:#fff;white-space:nowrap;border-radius:0 0 2px;padding:0 4px;font-size:9px;font-weight:600;position:absolute;top:0;left:0}.waypoints-overlay[data-v-f3b47e90]{pointer-events:none;z-index:2;position:absolute;inset:0}.waypoint-pin[data-v-f3b47e90]{z-index:3;text-align:center;color:#101722;pointer-events:none;border:1px solid #101722;border-radius:50%;width:16px;height:16px;font-size:9px;font-weight:700;line-height:16px;position:absolute;transform:translate(-50%,-50%)}.side[data-v-f3b47e90]{width:190px}.side h2[data-v-f3b47e90]{margin:0 0 6px;font-size:13px}.side ul[data-v-f3b47e90]{margin:0 0 12px;padding-left:18px}.help[data-v-f3b47e90]{color:#a8b4c8;margin:0 0 8px;font-size:12px}.story-overlay[data-v-83e7511b]{z-index:900;-webkit-user-select:none;user-select:none;cursor:pointer;background:#00000073;justify-content:center;align-items:flex-end;padding-bottom:96px;display:flex;position:absolute;inset:0}.dialog-box[data-v-83e7511b]{cursor:default;background:linear-gradient(#1c1814f5 0%,#0e0c0afa 100%);border:2px solid #8e7a46;border-radius:4px;width:720px;max-width:90vw;padding:14px 18px;box-shadow:0 12px 32px #000000d9,inset 0 0 16px #8e7a4633}.dialog-header[data-v-83e7511b]{border-bottom:1px solid #8e7a4659;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:6px;display:flex}.dialog-title[data-v-83e7511b]{color:#d4c49c;letter-spacing:1px;font-size:13px;font-weight:600}.skip-btn[data-v-83e7511b]{color:#bfa87a;cursor:pointer;background:#282018cc;border:1px solid #786438;border-radius:3px;padding:2px 8px;font-size:11px;transition:all .2s}.skip-btn[data-v-83e7511b]:hover{color:#fff;background:#786438}.dialog-body[data-v-83e7511b]{align-items:center;gap:16px;display:flex}.portrait-frame[data-v-83e7511b]{background:#111;border:2px solid #b89848;border-radius:4px;flex-shrink:0;width:72px;height:72px;position:relative;overflow:hidden;box-shadow:0 0 10px #b898484d}.portrait-img[data-v-83e7511b]{object-fit:cover;width:100%;height:100%}.content-col[data-v-83e7511b]{flex-direction:column;flex:1;gap:4px;display:flex}.speaker-name[data-v-83e7511b]{color:#f7d568;text-shadow:0 1px 3px #000000e6;font-size:15px;font-weight:700}.dialog-text[data-v-83e7511b]{color:#f0e6d2;text-shadow:0 1px 2px #000c;min-height:42px;font-size:14px;line-height:1.5}.dialog-hint[data-v-83e7511b]{color:#8c7e65;text-align:right;margin-top:4px;font-size:11px}.ui-scale-notice[data-v-08770e78]{color:#ffe2a0;z-index:18;background:#3a2a0ef0;border:1px solid #d8a44a;border-radius:6px;align-items:center;gap:8px;max-width:320px;padding:7px 12px;font-size:12px;display:flex;position:absolute;top:92px;right:12px;box-shadow:0 4px 14px #0009}.notice-icon[data-v-08770e78]{color:#20180a;background:#d8a44a;border-radius:50%;flex:0 0 18px;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;font-weight:800;display:flex}.notice-text[data-v-08770e78]{line-height:1.4}.message-ticker[data-v-f932fd4f]{left:calc(118px * var(--ui-scale,1));bottom:calc(204px * var(--ui-scale,1));pointer-events:none;background:linear-gradient(#10161ee6,#080b10eb);border:1px solid #4a4030;border-radius:5px;flex-direction:column;gap:2px;max-width:250px;padding:6px 10px;display:flex;position:absolute;box-shadow:0 2px 10px #0009}.ticker-line[data-v-f932fd4f]{color:#d2dce8;white-space:nowrap;text-overflow:ellipsis;gap:6px;font-size:11px;line-height:1.45;display:flex;overflow:hidden}.ticker-time[data-v-f932fd4f]{color:#7d8b9e;font-variant-numeric:tabular-nums;flex:none}.ticker-line.warn .ticker-text[data-v-f932fd4f]{color:#ff9a6a}.ticker-line.combat .ticker-text[data-v-f932fd4f]{color:#ffb3b3}.ticker-line.skill .ticker-text[data-v-f932fd4f]{color:#ffd966}.ticker-line.economy .ticker-text[data-v-f932fd4f]{color:#7ee880}.ticker-empty[data-v-f932fd4f]{color:#7d8b9e;font-style:italic}.mission-tracker[data-v-f3fedbcc]{z-index:22;color:#f2e4bc;background:#0a101ac7;border:1px solid #86704a;border-left:3px solid #efd18a;min-width:236px;padding:9px 12px;font:12px/1.6 system-ui,sans-serif;position:fixed;top:108px;left:14px}.mission-title[data-v-f3fedbcc]{color:#efd18a;letter-spacing:2px;margin-bottom:4px;font-size:12px}.objective[data-v-f3fedbcc]{align-items:baseline;gap:6px;display:flex}.objective .mark[data-v-f3fedbcc]{color:#d8c07a;width:12px}.objective .label[data-v-f3fedbcc]{flex:1}.objective .detail[data-v-f3fedbcc]{color:#b9c8de;font-variant-numeric:tabular-nums}.objective.met[data-v-f3fedbcc],.objective.met .detail[data-v-f3fedbcc]{color:#9ee08a}.objective.optional[data-v-f3fedbcc]{opacity:.7}.net-status[data-v-eeee11d4]{z-index:25;color:#f2e4bc;background:#0c121cb8;border:1px solid #86704a;padding:4px 10px;position:fixed;top:74px;left:50%;transform:translate(-50%)}*{box-sizing:border-box;margin:0;padding:0}:root{--ui-scale:1}html,body,#app{color:#e8e2d0;-webkit-user-select:none;user-select:none;background:#05070a;width:100%;height:100%;font-family:Microsoft YaHei,PingFang SC,Segoe UI,system-ui,sans-serif;font-size:13px;overflow:hidden}#game-canvas{z-index:0;width:100%;height:100%;display:block;position:fixed;inset:0}.hud-root{z-index:10;pointer-events:none;position:fixed;inset:0}.drag-select-box{z-index:12;background:#39ff6a24;border:1.5px solid #48ff7a;position:fixed;box-shadow:0 0 8px #39ff6a59;pointer-events:none!important}.hud-root>*{pointer-events:auto}.top-strip{z-index:15;pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:0;left:0;right:0}.top-strip>*{pointer-events:auto}.resource-bar{gap:calc(12px * var(--ui-scale));padding:calc(6px * var(--ui-scale)) calc(14px * var(--ui-scale));white-space:nowrap;background:linear-gradient(#141a22f2,#0a0e14e6);border:1px solid #3a3424;border-top:none;border-radius:0 0 6px 6px;align-items:center;display:flex;box-shadow:0 2px 12px #0009}.res-item{color:#d8cfa8;align-items:center;gap:5px;font-weight:600;display:flex}.res-icon{border-radius:3px;width:14px;height:14px;box-shadow:inset 0 0 4px #00000080}.res-icon.gold{background:radial-gradient(circle at 35% 35%,#ffe27a,#a87818)}.res-icon.lumber{background:radial-gradient(circle at 35% 35%,#c98d4e,#6b3d16)}.res-icon.food{background:radial-gradient(circle at 35% 35%,#a8e06a,#3f7a1c)}.res-item.time,.res-item.fps{color:#9aa7b8;font-variant-numeric:tabular-nums}.hint-bar{color:#d8cfa8;text-align:center;background:#0a0e14d9;border:1px solid #3a3424;border-radius:6px;max-width:60%;padding:6px 16px;position:absolute;top:48px;left:50%;transform:translate(-50%)}.hint-bar:empty{display:none}.top-right{gap:calc(6px * var(--ui-scale));padding-top:calc(2px * var(--ui-scale));margin-right:calc(10px * var(--ui-scale));align-items:stretch;display:flex}.menu-btn{color:#e8e2d0;cursor:pointer;background:linear-gradient(#2a3442,#161d26);border:1px solid #4a4030;border-radius:4px;padding:6px 14px}.menu-btn:hover{background:linear-gradient(#364254,#1d2632)}.minimap-panel{left:calc(10px * var(--ui-scale));bottom:calc(8px * var(--ui-scale));padding:calc(4px * var(--ui-scale));background:linear-gradient(#141a22f2,#0a0e14eb);border:1px solid #4a4030;border-radius:6px;position:absolute;box-shadow:0 2px 12px #0009}.minimap-canvas{width:calc(156px * var(--ui-scale));height:calc(156px * var(--ui-scale));cursor:crosshair;background:#1a2415;border:1px solid #2a2418;border-radius:4px;position:relative;overflow:hidden}.minimap-draw{width:calc(156px * var(--ui-scale));height:calc(156px * var(--ui-scale));display:block}.minimap-dot{border-radius:50%;width:5px;height:5px;margin-top:-2.5px;margin-left:-2.5px;position:absolute;box-shadow:0 0 3px #000c}.minimap-dot.hero{border:1px solid #fff;width:7px;height:7px;margin-top:-3.5px;margin-left:-3.5px}.minimap-camera{pointer-events:none;background:#ffffff14;border:1px solid #ffffffb3;position:absolute}.unit-panel{left:50%;bottom:calc(8px * var(--ui-scale));place-content:flex-start center;gap:calc(8px * var(--ui-scale));min-height:calc(180px * var(--ui-scale));max-width:min(1240px,62%);padding:calc(8px * var(--ui-scale));scrollbar-width:thin;scrollbar-color:#6b5a34 transparent;background:linear-gradient(#141a22f2,#0a0e14eb);border:1px solid #4a4030;border-radius:6px;flex-wrap:wrap;align-items:stretch;display:flex;position:absolute;overflow:hidden auto;transform:translate(-50%);box-shadow:0 2px 12px #0009}.unit-panel.multi{gap:calc(6px * var(--ui-scale));padding:calc(6px * var(--ui-scale)) calc(8px * var(--ui-scale))}.unit-mini-card{width:calc(54px * var(--ui-scale));align-items:center;gap:calc(3px * var(--ui-scale));padding:calc(4px * var(--ui-scale));background:#ffffff0a;border:1px solid #3a3424;border-radius:4px;flex-direction:column;display:flex}.mini-level{color:#ffd966;background:#1a2430;border:1px solid #d8b44a;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;font-weight:700;display:flex;position:absolute;bottom:-3px;right:-3px}.mini-name{text-align:center;color:#d8cfa8;white-space:nowrap;text-overflow:ellipsis;width:100%;font-size:9px;overflow:hidden}.unit-mini-card .bar.hp{width:100%;height:5px}.unit-panel-empty{width:calc(220px * var(--ui-scale));min-height:calc(120px * var(--ui-scale));color:#7a8494;justify-content:center;align-items:center;display:flex}.unit-card{gap:calc(8px * var(--ui-scale));width:calc(220px * var(--ui-scale));padding:calc(6px * var(--ui-scale));background:#ffffff08;border:1px solid #2a2418;border-radius:4px;display:flex}.portrait{flex:0 0 calc(64px * var(--ui-scale));width:calc(64px * var(--ui-scale));height:calc(64px * var(--ui-scale));border:2px solid #4a4030;border-radius:4px;position:relative;overflow:hidden}.portrait-img{object-fit:cover;width:100%;height:100%;display:block}.mini-portrait{border:1px solid #4a4030;border-radius:3px;width:34px;height:34px;position:relative;overflow:hidden}.unit-mini-card.clickable{cursor:pointer}.unit-mini-card.clickable:hover{background:#ffffff14;border-color:#d8b44a}.ability-icon-img{border-radius:2px;width:18px;height:18px;display:block}.inv-icon-img{border-radius:2px;width:26px;height:26px;display:block}.slot-icon-img{border-radius:4px;width:30px;height:30px;display:block}.hero-quick-bar{left:calc(12px * var(--ui-scale));bottom:calc(204px * var(--ui-scale));gap:calc(6px * var(--ui-scale));flex-direction:column;display:flex;position:absolute}.hero-quick-btn{width:calc(48px * var(--ui-scale));height:calc(54px * var(--ui-scale));padding:calc(2px * var(--ui-scale));cursor:pointer;background:#10161e;border:1.5px solid #8a723a;border-radius:5px;flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.hero-quick-btn:hover{border-color:#ffd966;box-shadow:0 0 10px #ffd96659}.hero-quick-btn img{object-fit:cover;border-radius:3px;width:100%;height:38px}.hq-lv{color:#ffd966;background:#0c1016e6;border:1px solid #d8b44a;border-radius:3px;padding:0 4px;font-size:9px;font-weight:700;position:absolute;bottom:12px;right:2px}.hq-sp{color:#fff6c8;background:#8a5612;border:1px solid #ffd966;border-radius:3px;padding:0 4px;font-size:9px;font-weight:700;position:absolute;top:2px;left:2px}.hq-bars{flex-direction:column;gap:1px;width:100%;display:flex}.hq-hp{background:#4fe864;border-radius:1px;height:4px}.hq-mp{background:#5aa8ff;border-radius:1px;height:3px}.idle-worker-btn{left:calc(66px * var(--ui-scale));bottom:calc(204px * var(--ui-scale));width:calc(40px * var(--ui-scale));height:calc(40px * var(--ui-scale));padding:calc(2px * var(--ui-scale));cursor:pointer;background:#141b24;border:1.5px solid #d8b44a;border-radius:6px;position:absolute;box-shadow:0 2px 10px #000000a6}.idle-worker-btn:hover{border-color:#fff2a8;transform:scale(1.05)}.idle-worker-btn img{border-radius:4px;width:100%;height:100%;display:block}.idle-badge{color:#fff;background:#c84040;border:1px solid #ffd966;border-radius:9px;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 4px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-5px;right:-5px}.group-bar{gap:6px;display:flex;position:absolute;bottom:166px;left:50%;transform:translate(-50%)}.group-chip{cursor:pointer;background:#10161ef0;border:1px solid #6b5a34;border-radius:5px;width:38px;height:38px;padding:2px;position:relative}.group-chip:hover{border-color:#ffd966}.group-chip img{border-radius:3px;width:100%;height:100%;display:block}.cg-num{color:#ffd966;text-shadow:0 1px 2px #000;font-size:10px;font-weight:700;position:absolute;top:1px;left:2px}.cg-cnt{color:#fff;background:#000000c7;border-radius:3px;padding:0 3px;font-size:9px;position:absolute;bottom:1px;right:2px}.portrait-level{color:#ffd966;background:#1a2430;border:1px solid #d8b44a;border-radius:50%;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 4px;font-size:11px;font-weight:700;display:flex;position:absolute;bottom:-4px;right:-4px}.unit-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.unit-name{color:#f0e6c8;white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.bar{background:#0a0d12;border:1px solid #2a2418;border-radius:2px;height:10px;position:relative;overflow:hidden}.bar-fill{height:100%;transition:width .15s linear}.bar.hp .bar-fill{background:linear-gradient(#6fd06a,#2f7a2a)}.bar.mp .bar-fill{background:linear-gradient(#5aa8e8,#1f5a9a)}.bar.xp .bar-fill{background:linear-gradient(#c98cff,#6f35a8)}.bar.build .bar-fill{background:linear-gradient(#f3c456,#a87216)}.bar.train .bar-fill{background:linear-gradient(#74d4ff,#2677a8)}.bar.research .bar-fill{background:linear-gradient(#d88cff,#7c38a8)}.skill-point-badge{color:#ffd966;background:#3a2d12;border:1px solid #d8b44a;border-radius:3px;margin-left:6px;padding:1px 5px;font-size:10px}.train-box{flex-direction:column;gap:3px;display:flex}.train-queue{flex-wrap:wrap;gap:3px;display:flex}.queue-chip{color:#bfe0ff;background:#5aa8e829;border:1px solid #355978;border-radius:2px;padding:1px 4px;font-size:9px}.queue-chip.clickable{cursor:pointer}.queue-chip.clickable:hover{color:#ffd8d8;background:#e85a5a47;border-color:#c85858}.worker-badge{color:#f3d26a;background:#d8b44a26;border:1px solid #6e5a24;border-radius:3px;align-self:flex-start;padding:1px 6px;font-size:10px}.unit-card.hero{width:calc(325px * var(--ui-scale))}.invuln-badge{color:#fff2a8;background:#ffe87840;border:1px solid #ffd966;border-radius:3px;margin-left:4px;padding:1px 4px;font-size:9px}.hero-attrs{color:#b7c8dd;gap:8px;font-size:10px;display:flex}.inventory-grid{flex:0 0 74px;grid-template-rows:repeat(3,28px);grid-template-columns:repeat(2,34px);align-content:center;gap:4px;display:grid}.inv-slot{color:#d8cfa8;cursor:default;background:#0d1218;border:1px solid #3a3424;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;font-size:9px;display:flex;position:relative}.inv-slot.filled{background:#18212c;border-color:#6a5b35}.inv-slot.usable{cursor:pointer}.inv-slot.usable:hover{background:#222f3e;border-color:#ffd966}.inv-dot{border-radius:50%;width:8px;height:8px;margin-bottom:1px}.inv-label{font-size:8px;line-height:1}.bar-text{color:#fff;text-shadow:0 1px 1px #000;justify-content:center;align-items:center;font-size:9px;display:flex;position:absolute;inset:0}.unit-stats{color:#9aa7b8;gap:8px;font-size:10px;display:flex}.abilities{flex-wrap:wrap;gap:4px;display:flex}.ability{background:#ffffff0a;border:1px solid #2a2418;border-radius:3px;align-items:center;gap:3px;padding:2px 4px;display:flex}.ability:not(.learned){opacity:.45}.ability-icon{background-size:cover;border-radius:2px;width:16px;height:16px}.ability-level{color:#b8c2d0;font-size:9px}.command-card{right:calc(10px * var(--ui-scale));bottom:calc(8px * var(--ui-scale));grid-template-columns:repeat(4, calc(56px * var(--ui-scale)));grid-template-rows:repeat(3, calc(56px * var(--ui-scale)));grid-auto-rows:calc(56px * var(--ui-scale));gap:calc(4px * var(--ui-scale));padding:calc(6px * var(--ui-scale));background:linear-gradient(#141a22f2,#0a0e14eb);border:1px solid #4a4030;border-radius:6px;display:grid;position:absolute;box-shadow:0 2px 12px #0009}.command-empty{text-align:center;color:#7a8494;grid-column:1/-1;width:100%;padding:12px}.command-slot{width:calc(56px * var(--ui-scale));height:calc(56px * var(--ui-scale));cursor:pointer;background:#131a22;border:1px solid #3a3424;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:relative;overflow:hidden}.command-slot:hover:not(.disabled){background:#1b2430;border-color:#d8b44a}.command-slot.active{border-color:#5aa8e8;box-shadow:0 0 6px #5aa8e899}.command-slot.disabled{opacity:.45;cursor:not-allowed}.slot-icon{background-size:cover;border-radius:3px;width:24px;height:24px;box-shadow:inset 0 0 4px #00000080}.slot-label{color:#d8cfa8;text-align:center;font-size:9px;line-height:1.1}.slot-hotkey{color:#ffd966;text-shadow:0 1px 1px #000;font-size:9px;position:absolute;top:1px;left:2px}.slot-cost{color:#b8c2d0;gap:2px;font-size:8px;display:flex;position:absolute;bottom:1px}.slot-cooldown{color:#fff;background:#000000a6;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex;position:absolute;inset:0}.game-menu{background:#000000b3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.menu-panel{background:linear-gradient(#1a2430,#0c1016);border:1px solid #4a4030;border-radius:8px;flex-direction:column;gap:10px;width:260px;padding:24px;display:flex;box-shadow:0 4px 24px #000c}.menu-panel h2{text-align:center;color:#f0e6c8;margin-bottom:8px;font-size:18px}.menu-panel button{color:#e8e2d0;cursor:pointer;background:linear-gradient(#2a3442,#161d26);border:1px solid #4a4030;border-radius:4px;padding:10px;font-size:14px}.menu-panel button:hover{background:linear-gradient(#364254,#1d2632);border-color:#d8b44a}.volume-row{color:#d8cfa8;background:#ffffff0a;border:1px solid #332c20;border-radius:4px;flex-direction:column;gap:6px;padding:8px 10px;font-size:12px;display:flex}.volume-row input[type=range]{accent-color:#d8b44a;cursor:pointer;width:100%}.guide-box{color:#c2ccd8;background:#080c12d9;border:1px solid #3a3424;border-radius:4px;flex-direction:column;gap:6px;padding:10px;font-size:11px;line-height:1.5;display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:30;background:radial-gradient(circle,#0a0e16b8,#04060ae0);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.start-panel{background:linear-gradient(#1a2330,#0c1016);border:1.5px solid #8a723a;border-radius:10px;flex-direction:column;gap:14px;width:min(760px,94vw);max-height:92vh;padding:22px 24px;display:flex;overflow-y:auto;box-shadow:0 8px 36px #000000d9}.start-header h1{color:#ffd966;text-shadow:0 2px 6px #000c;text-align:center;font-size:22px}.start-subtitle{text-align:center;color:#a9b6c7;margin-top:4px;font-size:12px}.start-section{flex-direction:column;gap:8px;display:flex}.section-title{color:#e6d4a0;font-size:13px;font-weight:700}.race-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.race-card{text-align:left;color:#e8e2d0;cursor:pointer;background:#ffffff0a;border:1px solid #3a3424;border-radius:6px;flex-direction:column;gap:4px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.race-card:hover{background:#ffffff12;border-color:#8a723a}.race-card.selected{background:#d8b44a24;border-color:#ffd966;box-shadow:0 0 12px #ffd96640}.race-card-top{align-items:center;gap:8px;font-size:14px;display:flex}.race-badge{border:1px solid #fff6;border-radius:3px;width:12px;height:12px;display:inline-block}.race-badge.sm{width:9px;height:9px}.race-hero{color:#ffd966;font-size:11px}.race-desc{color:#9fb0c4;font-size:11px;line-height:1.4}.ai-row{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.ai-races,.ai-diffs{flex-wrap:wrap;gap:6px;display:flex}.chip-btn{color:#d8cfa8;cursor:pointer;background:#141b24;border:1px solid #3a3424;border-radius:5px;align-items:center;gap:6px;padding:7px 12px;font-size:12px;display:inline-flex}.chip-btn:hover:not(:disabled){background:#1b2532;border-color:#a88b42}.chip-btn.selected{color:#fff2b8;background:#d8b44a2e;border-color:#ffd966}.chip-btn:disabled{opacity:.35;cursor:not-allowed}.diff-hint{color:#8fa0b5;font-size:11px}.start-footer{border-top:1px solid #2b261c;flex-direction:column;gap:10px;padding-top:6px;display:flex}.hotkey-preview{color:#8fa0b5;text-align:center;font-size:11px}.primary-btn{color:#fff8df;cursor:pointer;background:linear-gradient(#b88a2e,#7c5816);border:1px solid #ffd966;border-radius:6px;padding:11px 22px;font-size:15px;font-weight:700;box-shadow:0 2px 10px #00000080}.primary-btn:hover{background:linear-gradient(#cf9d36,#8f661c)}.secondary-btn{color:#e8e2d0;cursor:pointer;background:linear-gradient(#2a3442,#161d26);border:1px solid #584c38;border-radius:6px;padding:10px 18px;font-size:14px}.secondary-btn:hover{border-color:#d8b44a}.victory-panel{text-align:center;background:linear-gradient(#1b2432,#0d1118);border:2px solid #8a723a;border-radius:10px;flex-direction:column;gap:14px;width:min(460px,92vw);padding:24px;display:flex;box-shadow:0 8px 36px #000000e6}.victory-panel.win{border-color:#ffd966}.victory-panel.lose{border-color:#c84a4a}.victory-title{color:#ffd966;font-size:24px}.victory-panel.lose .victory-title{color:#ff6e6e}.victory-subtitle{color:#a9b6c7;font-size:12px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.stat-cell{background:#ffffff0a;border:1px solid #302b20;border-radius:5px;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.stat-cell.wide{grid-column:1/-1}.stat-label{color:#9aa7b8;font-size:12px}.stat-val{color:#f0e6c8;font-size:14px}.stat-val.gold{color:#ffd966}.stat-val.lumber{color:#7ee880}.stat-val.win-text{color:#66e88a}.stat-val.lose-text{color:#ff7a7a}.victory-actions{justify-content:center;gap:10px;margin-top:4px;display:flex}.map-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.map-card{text-align:left;color:#e8e2d0;cursor:pointer;background:#ffffff0a;border:1px solid #3a3424;border-radius:6px;flex-direction:column;gap:6px;padding:8px;display:flex}.map-card:hover{background:#ffffff12;border-color:#8a723a}.map-card.selected{background:#d8b44a24;border-color:#ffd966;box-shadow:0 0 10px #ffd96640}.map-thumb{background:#141c14;border:1px solid #2b261c;border-radius:4px;width:100%;height:72px;overflow:hidden}.map-thumb-canvas{width:100%;height:100%;display:block}.map-card-body{flex-direction:column;gap:2px;display:flex}.map-desc{color:#9fb0c4;font-size:11px;line-height:1.35}.map-meta{color:#ffd966;font-size:10px}.color-row,.preset-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.color-label{color:#c8bfa0;font-size:12px}.color-dot{color:#10141c;cursor:pointer;opacity:.72;border:1px solid #ffffff59;border-radius:4px;padding:4px 10px;font-size:11px;font-weight:700}.color-dot.selected{opacity:1;outline:2px solid #ffd966}.footer-actions{justify-content:center;gap:10px;display:flex}.encyclopedia-backdrop{z-index:40}.encyclopedia-panel{background:linear-gradient(#1a2330,#0c1016);border:1.5px solid #ffd966;border-radius:10px;flex-direction:column;gap:10px;width:min(720px,92vw);max-height:85vh;padding:18px 20px;display:flex}.ency-header{justify-content:space-between;align-items:center;display:flex}.ency-header h2{color:#ffd966;font-size:18px}.close-btn{color:#e8e2d0;cursor:pointer;background:#232d3b;border:1px solid #5a4c30;border-radius:4px;width:28px;height:28px;font-size:18px}.ency-tabs,.ency-races{flex-wrap:wrap;gap:6px;display:flex}.ency-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-right:4px;display:grid;overflow-y:auto}.ency-subtitle{color:#ffd966;grid-column:1/-1;margin-top:6px;font-size:13px;font-weight:700}.ency-unit{background:#ffffff0a;border:1px solid #302b20;border-radius:6px;gap:8px;padding:8px;display:flex}.ency-portrait{object-fit:cover;border:1px solid #6b5a34;border-radius:4px;flex-shrink:0;width:48px;height:48px}.ency-tech-icon{border:1px solid #6b5a34;border-radius:6px;flex-shrink:0;width:40px;height:40px}.ency-unit-info{flex-direction:column;gap:3px;min-width:0;display:flex}.ency-unit-name{color:#f0e6c8;align-items:center;gap:6px;font-weight:700;display:flex}.ency-tag{color:#9ed0ff;background:#283546;border-radius:3px;padding:1px 5px;font-size:10px}.ency-tag.hero-tag{color:#ffd966;background:#4e3712}.ency-unit-stats{color:#a4b4c8;flex-wrap:wrap;gap:6px;font-size:11px;display:flex}.ency-skills{flex-wrap:wrap;gap:4px;display:flex}.ency-skill{color:#bfe0ff;background:#5aa8e824;border:1px solid #355978;border-radius:3px;padding:1px 5px;font-size:10px}.menu-panel{width:340px}.menu-panel.wide{width:480px}.menu-map-tag{color:#9fb0c4;font-size:11px;font-weight:400}.menu-tabs{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.menu-panel button.menu-tab{padding:5px 8px;font-size:11px}.menu-panel button.menu-tab.selected{color:#ffd966;border-color:#ffd966}.menu-body{flex-direction:column;gap:8px;display:flex}.option-row{color:#d8cfa8;flex-direction:column;gap:4px;font-size:12px;display:flex}.option-row input[type=range]{accent-color:#d8b44a;width:100%}.option-check{color:#d8cfa8;cursor:pointer;align-items:center;gap:8px;font-size:12px;display:flex}.options-note{color:#889ab0;font-size:11px}.faction-row{background:#ffffff0a;border:1px solid #302b20;border-radius:4px;justify-content:space-between;padding:6px 10px;font-size:12px;display:flex}.faction-row.upkeep.none strong{color:#66e88a}.faction-row.upkeep.low strong{color:#ffd966}.faction-row.upkeep.high strong{color:#ff7070}.log-head{color:#9aa7b8;justify-content:space-between;align-items:center;font-size:11px;display:flex}.menu-panel button.link-btn{padding:3px 8px;font-size:11px}.log-list{background:#080c12d9;border:1px solid #302b20;border-radius:4px;flex-direction:column;gap:4px;max-height:220px;padding:6px;display:flex;overflow-y:auto}.log-line{color:#d2dce8;font-size:11px;line-height:1.4}.log-line.warn{color:#ff9a6a}.log-line.skill{color:#ffd966}.log-time{color:#7d8b9e;margin-right:4px}.menu-empty{text-align:center;color:#7d8b9e;padding:16px}.victory-top{text-align:left;align-items:center;gap:14px;display:flex}.grade-badge{color:#ffd966;background:#ffd96624;border:2px solid #ffd966;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:28px;font-weight:800;display:flex}.grade-badge.s{color:#ffe866;border-color:#ffe866;box-shadow:0 0 14px #ffe86659}.grade-badge.c{color:#ff8080;border-color:#c86464}.score-tabs{justify-content:center;gap:6px;display:flex}.score-tab{color:#c8bfa0;cursor:pointer;background:#141b24;border:1px solid #3a3424;border-radius:5px;padding:6px 14px;font-size:12px}.score-tab.selected{color:#ffd966;background:#d8b44a29;border-color:#ffd966}.minimap-panel,.unit-panel,.command-card{z-index:6}.hero-quick-bar,.idle-worker-btn,.group-bar,.hint-bar{z-index:8}.message-ticker{z-index:7}.game-menu{z-index:25}.idle-worker-btn{bottom:calc(204px * var(--ui-scale))}.unit-panel{max-height:calc(180px * var(--ui-scale))}.group-bar{bottom:calc(196px * var(--ui-scale))}.daynight-dial{color:#ffe89e;font-variant-numeric:tabular-nums;background:linear-gradient(#3c3016e6,#1a160cf2);border:1px solid #9d7d34;border-radius:12px;align-items:center;gap:6px;padding:2px 9px;font-size:11px;font-weight:700;display:inline-flex}.daynight-dial.night{color:#b7d7ff;background:linear-gradient(#16223eeb,#0a101ef5);border-color:#5378b4}.dial-orb{background:radial-gradient(circle at 35% 35%,#fff7b2,#f5b324 65%,#b36b00);border-radius:50%;flex-shrink:0;width:12px;height:12px;box-shadow:0 0 8px #ffd250d9}.dial-orb.moon{background:radial-gradient(circle at 30% 30%,#eef6ff,#8ab7f5 68%,#3c5b94);box-shadow:0 0 8px #82b9ffcc}.upkeep-badge{background:#122a1ad9;border:1px solid #2e4b34;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700}.upkeep-badge.none{color:#66e88a;background:#122e1ce0;border-color:#2f7a44}.upkeep-badge.low{color:#ffd966;background:#362a0ee6;border-color:#8f7224}.upkeep-badge.high{color:#ff7a7a;background:#3a1212eb;border-color:#9e3838}.console-shell{height:calc(196px * var(--ui-scale));z-index:2;background:linear-gradient(#1c2026eb 0%,#0c0f14f7 36%,#080a0efc 100%);border-top:2px solid #5c4c2e;position:fixed;bottom:0;left:0;right:0;box-shadow:inset 0 2px #ffe09629,inset 0 12px 24px #00000073,0 -4px 20px #000000a6;pointer-events:none!important}.console-shell *{pointer-events:none!important}.console-shell:before{content:"";background:linear-gradient(#242830f0,#12161cf5);border-top:2px solid #75613a;border-left:2px solid #75613a;border-right:2px solid #75613a;border-radius:8px 8px 0 0;height:10px;position:absolute;top:-8px;left:204px;right:256px}.console-crest{background:radial-gradient(circle at 35% 35%,#48566e,#161d28);border:2px solid #8a7242;width:24px;height:24px;position:absolute;top:-12px;transform:rotate(45deg);box-shadow:0 0 10px #000000b3}.console-crest.left{left:196px}.console-crest.right{right:248px}.console-shell.race-human{background:repeating-linear-gradient(90deg,#ffffff05 0 14px,#0000000d 14px 28px),linear-gradient(#273448 0%,#151c28 45%,#0c1118 100%);border-top-color:#a88740}.console-shell.race-human:before,.console-shell.race-human .console-crest{border-color:#c8a24a}.console-shell.race-human .console-crest{background:radial-gradient(circle at 35% 35%,#5d8ae6,#1b2c4e)}.console-shell.race-human~.minimap-panel,.console-shell.race-human~.unit-panel,.console-shell.race-human~.command-card{border-color:#a88740}.console-shell.race-orc{background:repeating-linear-gradient(90deg,#ffa06408 0 18px,#00000014 18px 36px),linear-gradient(#3f241b 0%,#241410 45%,#120b09 100%);border-top-color:#b86634}.console-shell.race-orc:before,.console-shell.race-orc .console-crest{border-color:#c97338}.console-shell.race-orc .console-crest{background:radial-gradient(circle at 35% 35%,#d95d39,#4a1c12)}.console-shell.race-orc~.minimap-panel,.console-shell.race-orc~.unit-panel,.console-shell.race-orc~.command-card{border-color:#a65c30}.console-shell.race-nightelf{background:repeating-linear-gradient(90deg,#78e6b408 0 16px,#0000000f 16px 32px),linear-gradient(#173329 0%,#0e201a 45%,#08120f 100%);border-top-color:#5ea882}.console-shell.race-nightelf:before,.console-shell.race-nightelf .console-crest{border-color:#77cfa0}.console-shell.race-nightelf .console-crest{background:radial-gradient(circle at 35% 35%,#84f0c0,#164738)}.console-shell.race-nightelf~.minimap-panel,.console-shell.race-nightelf~.unit-panel,.console-shell.race-nightelf~.command-card{border-color:#549b76}.console-shell.race-undead{background:repeating-linear-gradient(90deg,#b478ff08 0 14px,#00000014 14px 28px),linear-gradient(#241932 0%,#150e1f 45%,#0a0710 100%);border-top-color:#7e59b5}.console-shell.race-undead:before,.console-shell.race-undead .console-crest{border-color:#9b73d6}.console-shell.race-undead .console-crest{background:radial-gradient(circle at 35% 35%,#86f28a,#2d1b4a)}.console-shell.race-undead~.minimap-panel,.console-shell.race-undead~.unit-panel,.console-shell.race-undead~.command-card{border-color:#7250a6}.minimap-tools{gap:4px;margin-bottom:4px;display:flex}.mm-tool{color:#b8c2d0;cursor:pointer;background:#141b24;border:1px solid #3a3424;border-radius:3px;flex:1;padding:2px 4px;font-size:10px;font-weight:600}.mm-tool:hover{color:#f0e6c8;border-color:#d8b44a}.mm-tool.active{color:#ffd966;background:#d8b44a33;border-color:#ffd966}.minimap-canvas.ping{cursor:cell;box-shadow:inset 0 0 0 1.5px #ffd966}.buff-row{flex-wrap:wrap;gap:3px;display:flex}.buff-chip{color:#bde8ff;background:#4cc3ff2e;border:1px solid #4fa2d4;border-radius:3px;padding:0 5px;font-size:9px;line-height:14px}.buff-chip.debuff{color:#ffc2c2;background:#e84e4e38;border-color:#cf5656}.bonus-green{color:#4cff7a;margin-left:2px;font-style:normal;font-weight:700}.inv-key{color:#ffd966c7;text-shadow:0 1px 1px #000;pointer-events:none;font-size:8px;line-height:1;position:absolute;top:1px;left:2px}
