.xmap2-stage[data-v-2c7f5d57]{position:fixed;inset:0;top:64px;background:#e9edf4;overflow:hidden;cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.xmap2-grid[data-v-2c7f5d57]{position:absolute;inset:0;background-image:radial-gradient(circle,#bcc5d6 1.3px,transparent 0);background-size:36px 36px;pointer-events:none}.xmap2-lines[data-v-2c7f5d57]{position:absolute;left:0;top:0;width:1px;height:1px;overflow:visible}.xmap2-line[data-v-2c7f5d57]{stroke:#c0c9d8;stroke-width:1.5px;animation:xmap2DrawLine .55s cubic-bezier(.4,0,.2,1) both}.xmap2-line.is-exiting[data-v-2c7f5d57]{animation:xmap2FadeOut .28s ease forwards}.xmap2-bubble__name[data-v-2c7f5d57]{font-weight:700;line-height:1.2;max-width:calc(100% - 20px)}.xmap2-bubble__badge[data-v-2c7f5d57]{font-size:10.5px;font-weight:600;padding:3px 9px;border-radius:10px;background:#e6eaf2;color:#5b6b81}.xmap2-bubble.is-filled .xmap2-bubble__badge[data-v-2c7f5d57]{background:hsla(0,0%,100%,.22);color:#fff}.xmap2-bubble.is-empty .xmap2-bubble__badge[data-v-2c7f5d57]{background:#e5e9f0;color:#a5b0c0}.xmap2-bubble__stats[data-v-2c7f5d57]{display:flex;align-items:center;gap:10px;margin-top:3px;font-size:13px;font-weight:600;color:hsla(0,0%,100%,.85)}.xmap2-bubble__stats b[data-v-2c7f5d57]{color:#fff;font-weight:800}.xmap2-bubble__stats-sep[data-v-2c7f5d57]{width:1px;height:14px;background:hsla(0,0%,100%,.4)}.xmap2-bubble__close[data-v-2c7f5d57]{position:absolute;top:-4px;right:-4px;width:26px;height:26px;border-radius:50%;border:1px solid #e2e8f1;background:#fff;color:#5b6b81;font-size:13px;line-height:1;box-shadow:0 2px 8px rgba(23,43,77,.14);cursor:pointer}.xmap2-bb[data-v-2c7f5d57]{transform-origin:center}.xmap2-detail[data-v-2c7f5d57]{font-family:inherit}.xmap2-detail__close[data-v-2c7f5d57]{position:absolute;top:8px;right:8px;width:20px;height:20px;border-radius:50%;border:none;background:hsla(0,0%,100%,.85);color:#5b6b81;font-size:11px;line-height:1;cursor:pointer;z-index:2}.xmap2-detail__thumb[data-v-2c7f5d57]{height:92px;flex-shrink:0;background:repeating-linear-gradient(45deg,#eef2f8 10px,#e2e9f3 10px 20px);display:flex;align-items:center;justify-content:center;color:#7c8aa0;font-family:monospace;font-size:10px}.xmap2-detail__avatar-spacer[data-v-2c7f5d57]{position:relative;height:34px;flex-shrink:0}.xmap2-detail__avatar[data-v-2c7f5d57]{position:absolute;left:16px;top:-28px;width:56px;height:56px;border-radius:14px;background:#e7f2f3;border:3px solid #fff;box-shadow:0 6px 16px rgba(23,43,77,.16);display:flex;align-items:center;justify-content:center;color:var(--primary);font-weight:800;font-size:17px}.xmap2-detail__body[data-v-2c7f5d57]{padding:0 16px 16px;flex:1;min-height:0;overflow-y:auto}.xmap2-detail__title[data-v-2c7f5d57]{font-weight:700;font-size:13.5px;color:#17324d;line-height:1.3;margin-top:2px}.xmap2-detail__badges[data-v-2c7f5d57]{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.xmap2-detail__author[data-v-2c7f5d57]{display:flex;align-items:center;gap:8px;margin:6px 0 10px}.xmap2-detail__author-avatar[data-v-2c7f5d57]{width:36px;height:36px;border-radius:50%;background:#e7f2f3;color:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;flex-shrink:0}.xmap2-detail__author-info[data-v-2c7f5d57]{min-width:0}.xmap2-detail__author-name[data-v-2c7f5d57]{font-size:12px;font-weight:700;color:#17324d}.xmap2-detail__author-name span[data-v-2c7f5d57]{color:#7c8aa0;font-weight:600}.xmap2-detail__published[data-v-2c7f5d57]{font-size:11px;color:#7c8aa0;margin-top:2px}.xmap2-badge[data-v-2c7f5d57]{font-size:10px;font-weight:600;color:#44546a;background:#f5f7fb;border-radius:4px;padding:0 4px}.xmap2-detail__cta[data-v-2c7f5d57]{display:block;width:100%;text-align:center;background:var(--primary);color:#fff;border:none;border-radius:8px;padding:6px 0;font-weight:700;font-size:12px;cursor:pointer}.xmap2-breadcrumb-panel[data-v-2c7f5d57]{position:absolute;top:22px;left:22px;background:#fff;border-radius:14px;padding:13px 20px;box-shadow:0 6px 24px rgba(23,43,77,.08);max-width:440px;z-index:4}.xmap2-breadcrumb[data-v-2c7f5d57]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.xmap2-crumb[data-v-2c7f5d57]{border:none;background:none;padding:0;font-size:12.5px;font-weight:600;color:#7c8aa0;cursor:pointer;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xmap2-crumb.is-active[data-v-2c7f5d57]{font-weight:800;color:var(--primary)}.xmap2-crumb-sep[data-v-2c7f5d57]{color:#c3cdda;font-size:12px}.xmap2-panel-actions[data-v-2c7f5d57]{position:relative;top:26px;right:22px;display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:12px;align-items:flex-start;z-index:4}.xmap2-icon-btn[data-v-2c7f5d57]{width:40px;height:40px;flex-shrink:0;border-radius:50%;border:1px solid #e2e8f1;background:#fff;box-shadow:0 2px 10px rgba(23,43,77,.08);color:var(--primary);display:flex;align-items:center;justify-content:center}.xmap2-filter[data-v-2c7f5d57],.xmap2-search-widget[data-v-2c7f5d57]{position:relative;flex-shrink:0}.xmap2-filter-btn[data-v-2c7f5d57]{display:flex;align-items:center;justify-content:center;gap:6px;min-width:40px;height:40px;padding:0 12px;border-radius:20px;border:1px solid #e2e8f1;background:#fff;color:#44546a;box-shadow:0 2px 10px rgba(23,43,77,.08);cursor:pointer}.xmap2-filter-btn.is-active[data-v-2c7f5d57]{background:var(--primary);color:#fff}.xmap2-filter-count[data-v-2c7f5d57]{background:#fff;color:var(--primary);border-radius:9px;font-size:11px;font-weight:800;padding:0 8px}.xmap2-filter__panel[data-v-2c7f5d57]{position:absolute;top:48px;right:0;width:264px;background:#fff;border-radius:14px;box-shadow:0 10px 30px rgba(23,43,77,.16);padding:6px 0;z-index:6;max-height:70vh;overflow:auto}.xmap2-filter__section[data-v-2c7f5d57]{border-bottom:1px solid #eef1f6;padding:0 18px}.xmap2-filter__section-head[data-v-2c7f5d57]{display:flex;justify-content:space-between;align-items:center;width:100%;border:none;background:none;padding:13px 0;font-size:13.5px;font-weight:700;color:#17324d;cursor:pointer}.xmap2-filter__section-head span[data-v-2c7f5d57]{color:#8b98ab;font-size:11px}.xmap2-filter__options[data-v-2c7f5d57]{padding:0 0 13px;display:flex;flex-direction:column;gap:9px}.xmap2-filter__option[data-v-2c7f5d57]{display:flex;gap:9px;align-items:center;font-size:13px;color:#44546a;cursor:pointer}.xmap2-filter__option input[type=checkbox][data-v-2c7f5d57]{position:static;left:auto;visibility:visible;accent-color:var(--primary);width:15px;height:15px;flex-shrink:0}.xmap2-filter__clear[data-v-2c7f5d57]{display:block;margin:10px 18px 8px;border:none;background:none;color:var(--primary);font-weight:700;font-size:13px;padding:0;cursor:pointer}.xmap2-zoom[data-v-2c7f5d57]{position:absolute;top:86px;right:22px;display:flex;flex-direction:column;background:#fff;border:1px solid #e2e8f1;border-radius:12px;box-shadow:0 2px 10px rgba(23,43,77,.08);overflow:hidden;z-index:4}.xmap2-zoom__btn[data-v-2c7f5d57]{width:38px;height:36px;border:none;background:none;color:#44546a;font-size:17px;cursor:pointer}.xmap2-zoom__btn[data-v-2c7f5d57]:hover{background:#f1f6f7}.xmap2-zoom__btn[data-v-2c7f5d57]:disabled{color:#c3cdda;cursor:not-allowed;background:none}.xmap2-zoom__divider[data-v-2c7f5d57]{height:1px;background:#eef1f6}.xmap2-loading[data-v-2c7f5d57]{position:absolute;bottom:22px;right:22px;background:#fff;border-radius:10px;padding:8px 14px;box-shadow:0 2px 10px rgba(23,43,77,.08);font-size:13px;color:#7c8aa0;z-index:4}@keyframes xmap2NodeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes xmap2NodeOut{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.3)}}@keyframes xmap2DrawLine{0%{opacity:0}to{opacity:1}}@keyframes xmap2FadeOut{0%{opacity:1}to{opacity:0}}@keyframes xmap2DropIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes xmap2Floaty{0%,to{transform:translateY(-7px)}50%{transform:translateY(7px)}}