.ai-assistant-root[data-v-51aa2dca]{position:fixed;right:24px;bottom:24px;z-index:1200}.assistant-fab[data-v-51aa2dca]{width:52px;height:52px;font-size:23px;box-shadow:0 14px 34px #2f80ff6b}.assistant-window[data-v-51aa2dca]{width:min(420px,calc(100vw - 32px));height:min(650px,calc(100vh - 96px));display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(85,167,255,.42);border-radius:14px;background:#081222fa;box-shadow:0 24px 72px #0000007a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.assistant-header[data-v-51aa2dca]{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(73,139,255,.2);background:linear-gradient(100deg,#2f80ff33,#22d8d014)}.assistant-title[data-v-51aa2dca]{display:flex;align-items:center;gap:10px;min-width:0}.assistant-title>div[data-v-51aa2dca]{min-width:0}.assistant-title strong[data-v-51aa2dca],.assistant-title small[data-v-51aa2dca]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-title strong[data-v-51aa2dca]{color:#f7fbff;font-size:15px}.assistant-title small[data-v-51aa2dca]{margin-top:3px;color:#7f9ec8;font-size:11px}.assistant-logo[data-v-51aa2dca]{width:38px;height:38px;display:grid;flex:0 0 auto;place-items:center;border-radius:10px;color:#fff;font-size:20px;background:linear-gradient(135deg,#2f80ff,#1bbfb8)}.assistant-model-bar[data-v-51aa2dca]{padding:10px 14px;border-bottom:1px solid rgba(73,139,255,.14)}.assistant-messages[data-v-51aa2dca]{min-height:0;overflow:auto;padding:16px 14px}.assistant-empty[data-v-51aa2dca]{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;color:#7f9ec8;text-align:center}.assistant-empty strong[data-v-51aa2dca]{color:#bdd5f6;font-size:14px}.assistant-empty span[data-v-51aa2dca]{max-width:300px;font-size:12px;line-height:1.6}.quick-prompts[data-v-51aa2dca]{display:grid;width:100%;gap:8px;margin-top:10px}.quick-prompts button[data-v-51aa2dca]{min-height:34px;padding:7px 10px;cursor:pointer;color:#bdd5f6;text-align:left;border:1px solid rgba(73,139,255,.25);border-radius:8px;background:#2f80ff12}.quick-prompts button[data-v-51aa2dca]:hover{color:#fff;border-color:#22d8d085;background:#22d8d01a}.message-row[data-v-51aa2dca]{display:flex;align-items:flex-start;gap:8px;margin-bottom:14px}.message-user[data-v-51aa2dca]{flex-direction:row-reverse}.message-avatar[data-v-51aa2dca]{width:28px;height:28px;display:grid;flex:0 0 auto;place-items:center;border-radius:8px;color:#dcecff;font-size:11px;font-weight:800;background:#2f80ff3d;border:1px solid rgba(85,167,255,.34)}.message-user .message-avatar[data-v-51aa2dca]{background:#21d9a529;border-color:#21d9a54d}.message-bubble[data-v-51aa2dca]{max-width:calc(100% - 48px);padding:9px 11px;color:#dcecff;font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid rgba(73,139,255,.2);border-radius:4px 10px 10px;background:#102038eb}.message-content[data-v-51aa2dca]{max-width:calc(100% - 48px);min-width:0}.message-content .message-bubble[data-v-51aa2dca]{max-width:100%}.message-sources[data-v-51aa2dca]{display:grid;gap:4px;margin-top:6px}.message-sources span[data-v-51aa2dca]{color:#7f9ec8;font-size:10px;line-height:1.45}.message-user .message-bubble[data-v-51aa2dca]{color:#fff;border-color:#2f80ff73;border-radius:10px 4px 10px 10px;background:linear-gradient(135deg,#2f6fffeb,#168eaeeb)}.message-failed .message-bubble[data-v-51aa2dca]{border-color:#ff5f787a;color:#ff9bad}.assistant-composer[data-v-51aa2dca]{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:end;gap:9px;padding:12px 14px 14px;border-top:1px solid rgba(73,139,255,.18);background:#050b18d1}.send-button[data-v-51aa2dca]{width:38px;height:38px}.thinking[data-v-51aa2dca]{display:flex;align-items:center;gap:4px;min-height:38px}.thinking span[data-v-51aa2dca]{margin-left:5px;color:#7f9ec8;font-size:11px}.thinking i[data-v-51aa2dca]{width:5px;height:5px;border-radius:50%;background:#55a7ff;animation:thinking-51aa2dca 1.1s infinite ease-in-out}.thinking i[data-v-51aa2dca]:nth-child(2){animation-delay:.16s}.thinking i[data-v-51aa2dca]:nth-child(3){animation-delay:.32s}.assistant-panel-enter-active[data-v-51aa2dca],.assistant-panel-leave-active[data-v-51aa2dca]{transition:opacity .18s ease,transform .18s ease;transform-origin:right bottom}.assistant-panel-enter-from[data-v-51aa2dca],.assistant-panel-leave-to[data-v-51aa2dca]{opacity:0;transform:translateY(10px) scale(.98)}@keyframes thinking-51aa2dca{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@media(max-width:600px){.ai-assistant-root[data-v-51aa2dca]{right:12px;bottom:12px}.assistant-window[data-v-51aa2dca]{width:calc(100vw - 24px);height:calc(100vh - 88px)}}.control-panel[data-v-40029bd9]{display:flex;flex-direction:column;gap:12px}.control-row[data-v-40029bd9]{display:grid;grid-template-columns:minmax(140px,190px) minmax(180px,1fr);gap:14px;align-items:center;padding:12px;border:1px solid var(--n-border-color);border-radius:8px;background:var(--n-color-embedded)}.control-title[data-v-40029bd9]{font-weight:600;color:var(--n-text-color)}.control-hint[data-v-40029bd9]{margin-top:4px;color:var(--n-text-color-3);font-size:12px;font-family:Consolas,Microsoft YaHei UI,sans-serif}.sync-button[data-v-40029bd9]{margin-top:8px}.slider-control[data-v-40029bd9]{display:grid;grid-template-columns:minmax(120px,1fr) auto auto;gap:10px;align-items:center}@media(max-width:900px){.control-row[data-v-40029bd9],.slider-control[data-v-40029bd9]{grid-template-columns:1fr}}.module-tip[data-v-8d649388]{margin-bottom:14px}.embedding-tip[data-v-8d649388]{margin-bottom:18px}.toolbar[data-v-8d649388]{margin-bottom:14px}.ai-form-modal[data-v-8d649388]{width:min(760px,calc(100vw - 32px))}.ai-test-modal[data-v-8d649388]{width:min(720px,calc(100vw - 32px))}.test-result[data-v-8d649388]{white-space:pre-wrap;line-height:1.7}.assessment-page[data-v-7c340c89]{min-width:0}.fault-header[data-v-7c340c89]{display:flex;align-items:center;justify-content:space-between;gap:16px}.fault-header p[data-v-7c340c89]{margin:4px 0 0;color:var(--wl-text-3);font-size:13px;font-weight:400}.assessment-overview[data-v-7c340c89]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.assessment-card-title[data-v-7c340c89]{color:var(--wl-text-2);font-size:13px}.assessment-card strong[data-v-7c340c89]{display:block;margin:8px 0;color:var(--wl-text);font-size:26px}.assessment-card p[data-v-7c340c89]{margin:0;color:var(--wl-text-3);line-height:1.6}.assessment-module-card[data-v-7c340c89]{cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.assessment-module-card[data-v-7c340c89]:hover{border-color:#2d8cffa6;transform:translateY(-1px)}.assessment-module-card.is-active[data-v-7c340c89]{border-color:#2d8cff;box-shadow:0 0 0 1px #2d8cff38,0 10px 28px #145fd224}.assessment-module-card.is-active .assessment-card-title[data-v-7c340c89]{color:#68b5ff}.assessment-tabs[data-v-7c340c89] .n-tabs-nav{display:none}.assessment-tabs[data-v-7c340c89] .n-tab-pane{padding-top:0}.exam-grid[data-v-7c340c89]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.theory-records-card[data-v-7c340c89]{margin-top:16px}.practical-placeholder[data-v-7c340c89]{min-height:320px;display:flex;align-items:center;justify-content:center}.exam-card-head[data-v-7c340c89]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.exam-card-head strong[data-v-7c340c89],.exam-card-head span[data-v-7c340c89]{display:block}.exam-card-head span[data-v-7c340c89]{margin-top:4px;color:var(--wl-text-3);font-size:12px}.exam-meta[data-v-7c340c89]{display:flex;flex-wrap:wrap;gap:8px;color:var(--wl-text-2);font-size:12px}.assessment-modal[data-v-7c340c89]{width:min(980px,calc(100vw - 32px))}.assessment-modal[data-v-7c340c89] .n-card__content{max-height:calc(100vh - 220px);overflow:auto}.question-editor[data-v-7c340c89],.answer-list[data-v-7c340c89]{display:grid;gap:12px}.question-editor-title[data-v-7c340c89],.review-row[data-v-7c340c89]{display:flex;align-items:center;justify-content:space-between;gap:12px}.question-editor-title span[data-v-7c340c89]{display:block;margin-top:4px;color:var(--wl-text-3);font-size:12px}.question-card-head[data-v-7c340c89],.question-card-actions[data-v-7c340c89]{display:flex;align-items:center;justify-content:space-between;gap:12px}.question-card-actions[data-v-7c340c89]{justify-content:flex-end}.question-card[data-v-7c340c89]{border:1px solid rgba(73,139,255,.2)}@media(max-width:960px){.assessment-overview[data-v-7c340c89]{grid-template-columns:1fr}}.toolbar-card[data-v-7bfe2ec0]{background:var(--n-color-embedded)}.dashboard-grid[data-v-7bfe2ec0]{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:stretch}.dashboard-widget[data-v-7bfe2ec0]{min-width:0}.widget-header[data-v-7bfe2ec0]{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.widget-header strong[data-v-7bfe2ec0],.widget-header span[data-v-7bfe2ec0]{display:block}.widget-header span[data-v-7bfe2ec0]{margin-top:4px;color:var(--n-text-color-3);font-size:12px}.metric-widget[data-v-7bfe2ec0]{min-height:84px;display:flex;align-items:flex-end;gap:8px}.metric-widget span[data-v-7bfe2ec0]{font-size:38px;line-height:1;font-weight:750}.metric-widget small[data-v-7bfe2ec0]{padding-bottom:5px;color:var(--n-text-color-3)}.text-widget[data-v-7bfe2ec0]{color:var(--n-text-color-2);line-height:1.8;white-space:pre-wrap}.chart-widget[data-v-7bfe2ec0],.bar-widget[data-v-7bfe2ec0]{display:grid;gap:10px}.log-widget[data-v-7bfe2ec0]{display:grid;gap:8px}.log-row[data-v-7bfe2ec0]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--n-border-color)}.log-row span[data-v-7bfe2ec0]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-row small[data-v-7bfe2ec0]{color:var(--n-text-color-3)}@media(max-width:900px){.dashboard-widget[data-v-7bfe2ec0]{grid-column:1 / -1!important}}.scada-page[data-v-f549c6de]{display:grid;gap:14px}.scada-toolbar[data-v-f549c6de]{border:1px solid rgba(73,139,255,.24);border-radius:8px;background:#081326db;padding:14px}.scada-canvas[data-v-f549c6de]{min-height:calc(100vh - 190px);overflow:hidden;border:1px solid rgba(73,139,255,.28);border-radius:8px;background:linear-gradient(rgba(23,52,88,.32) 1px,transparent 1px),linear-gradient(90deg,rgba(23,52,88,.32) 1px,transparent 1px),radial-gradient(circle at 10% 10%,rgba(47,128,255,.22),transparent 28%),linear-gradient(135deg,#050b18f2,#081830f5);background-size:48px 48px,48px 48px,auto,auto;padding:18px}.scada-stage[data-v-f549c6de]{display:inline-block;overflow:hidden;border-radius:8px;background:#071426;box-shadow:inset 0 0 0 1px #55a7ff4d}.toolbar[data-v-a45b77e5]{margin-bottom:14px}.detail-modal[data-v-a45b77e5]{width:min(760px,calc(100vw - 32px))}.twin3d-page[data-v-329eb873]{display:grid;gap:14px}.twin3d-toolbar[data-v-329eb873]{border:1px solid rgba(73,139,255,.24);border-radius:8px;background:#081326db;padding:14px}.twin3d-scene[data-v-329eb873]{position:relative;min-height:calc(100vh - 190px);overflow:hidden;border:1px solid rgba(73,139,255,.28);border-radius:8px;background:#111827}.twin3d-scene[data-v-329eb873] canvas{display:block;width:100%!important;height:100%!important}.twin3d-help[data-v-329eb873]{position:absolute;left:12px;top:12px;z-index:2;border:1px solid rgba(34,216,208,.2);border-radius:8px;background:#050b18ad;padding:7px 10px;color:#e2e8f0c7;font-size:12px;pointer-events:none}.twin3d-empty[data-v-329eb873]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;pointer-events:none;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#e2e8f0e0}.twin3d-empty strong[data-v-329eb873]{font-size:18px}.twin3d-empty span[data-v-329eb873]{color:#cbd5e1b8}.resource-page[data-v-cf8622ed]{display:grid;gap:14px}.resource-card[data-v-cf8622ed]{border:1px solid rgba(73,139,255,.22);border-radius:8px;background:linear-gradient(180deg,rgba(47,128,255,.08),transparent),#081326e0}.resource-alert[data-v-cf8622ed]{margin-bottom:12px}.upload-row[data-v-cf8622ed]{display:flex;align-items:center;gap:10px;min-width:0}.upload-row input[data-v-cf8622ed]{min-width:0;color:var(--wl-text-2)}.asset-thumb[data-v-cf8622ed],.color-thumb[data-v-cf8622ed]{display:inline-block;width:44px;height:34px;border-radius:6px;object-fit:cover;background:#ffffff14}.color-thumb[data-v-cf8622ed]{border:1px solid rgba(255,255,255,.18)}.asset-path[data-v-cf8622ed]{color:var(--wl-text-3);font-size:12px}@media(max-width:1200px){.resource-page[data-v-cf8622ed] .n-grid{grid-template-columns:1fr!important}}.twin-page[data-v-055f95c1]{display:flex;flex-direction:column;gap:14px}.toolbar[data-v-055f95c1],.scene-settings[data-v-055f95c1],.palette[data-v-055f95c1],.inspector[data-v-055f95c1],.three-side[data-v-055f95c1]{border:1px solid rgba(73,139,255,.24);border-radius:8px;background:linear-gradient(180deg,rgba(47,128,255,.08),transparent),#081326db;padding:14px;box-shadow:0 12px 30px #0000003d}.empty-state[data-v-055f95c1]{min-height:420px;justify-content:center}.workspace[data-v-055f95c1]{display:grid;grid-template-columns:250px minmax(0,1fr) 310px;gap:14px;align-items:start}.palette[data-v-055f95c1],.inspector[data-v-055f95c1]{position:sticky;top:12px}.panel-title[data-v-055f95c1]{margin-bottom:12px;color:var(--wl-text);font-size:15px;font-weight:700}.with-space[data-v-055f95c1]{margin-top:18px}.library-title[data-v-055f95c1]{display:flex;align-items:center;justify-content:space-between;gap:8px}.canvas-shell[data-v-055f95c1]{position:relative;min-height:640px;overflow:hidden;border:1px solid rgba(73,139,255,.28);border-radius:8px;background:linear-gradient(rgba(23,52,88,.32) 1px,transparent 1px),linear-gradient(90deg,rgba(23,52,88,.32) 1px,transparent 1px),radial-gradient(circle at 10% 10%,rgba(47,128,255,.22),transparent 28%),linear-gradient(135deg,#050b18f2,#081830f5);background-size:48px 48px,48px 48px,auto,auto;padding:18px}.canvas-shell[data-v-055f95c1]:after{content:"拖动画布空白处可平移视图，拖动组件可调整位置";position:absolute;right:18px;bottom:14px;z-index:1;color:#bdd5f699;font-size:12px;pointer-events:none}.konva-stage[data-v-055f95c1]{display:inline-block;overflow:hidden;border-radius:8px;background:#071426;box-shadow:inset 0 0 0 1px #55a7ff4d}.three-layout[data-v-055f95c1]{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px}.three-side[data-v-055f95c1]{max-height:760px;overflow:auto}.object-list[data-v-055f95c1]{display:flex;flex-direction:column;gap:8px}.object-item[data-v-055f95c1]{display:flex;width:100%;cursor:pointer;flex-direction:column;gap:4px;border:1px solid rgba(73,139,255,.22);border-radius:8px;background:var(--card-color);padding:10px 12px;color:var(--text-color-base);text-align:left}.custom-library[data-v-055f95c1],.model-library[data-v-055f95c1],.connection-list[data-v-055f95c1]{display:grid;gap:8px}.component-category[data-v-055f95c1]{margin-top:4px;color:var(--wl-text-3);font-size:12px;font-weight:700}.custom-component-item[data-v-055f95c1],.connection-item[data-v-055f95c1]{display:flex;width:100%;border:1px solid rgba(73,139,255,.22);border-radius:8px;background:#0a1a32c2;color:var(--wl-text)}.custom-component-item[data-v-055f95c1]{cursor:pointer;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:4px;padding:10px 12px;text-align:left}.custom-component-item img[data-v-055f95c1]{width:34px;height:34px;border-radius:6px;object-fit:cover;background:#ffffff14}.component-thumb[data-v-055f95c1]{width:34px;height:34px;border-radius:6px;box-shadow:inset 0 0 0 1px #ffffff38}.custom-component-item[data-v-055f95c1]:hover{border-color:#22d8d09e;background:#22d8d01a}.model-uploader[data-v-055f95c1]{display:grid;gap:8px;border:1px solid rgba(73,139,255,.2);border-radius:8px;background:#071224ad;padding:10px}.native-file[data-v-055f95c1]{max-width:100%;color:var(--wl-text-2);font-size:12px}.model-card[data-v-055f95c1]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;border:1px solid rgba(73,139,255,.22);border-radius:8px;background:#0a1a32c2;padding:8px}.model-card button[data-v-055f95c1]{display:grid;cursor:pointer;gap:3px;border:0;background:transparent;color:var(--wl-text);text-align:left}.model-card span[data-v-055f95c1],.model-card small[data-v-055f95c1]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-card small[data-v-055f95c1]{color:var(--wl-text-3)}.anchor-header[data-v-055f95c1],.anchor-footer[data-v-055f95c1]{display:flex;align-items:center;justify-content:space-between;gap:8px}.anchor-header[data-v-055f95c1]{margin:6px 0 8px;color:var(--wl-text-2);font-weight:700}.anchor-list[data-v-055f95c1]{display:grid;gap:8px;margin-bottom:12px}.anchor-card[data-v-055f95c1]{display:grid;gap:8px;border:1px solid rgba(34,216,208,.18);border-radius:8px;background:#071224ad;padding:10px}.anchor-footer small[data-v-055f95c1]{color:var(--wl-text-3)}.custom-component-item span[data-v-055f95c1]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-component-item small[data-v-055f95c1],.connection-item small[data-v-055f95c1]{color:var(--wl-text-3)}.component-upload[data-v-055f95c1]{display:flex;align-items:center;gap:8px;min-width:0}.component-upload input[data-v-055f95c1]{min-width:0;color:var(--wl-text-2)}.custom-component-form[data-v-055f95c1]{margin-top:12px;border-top:1px solid rgba(73,139,255,.16);padding-top:12px}.connection-item[data-v-055f95c1]{align-items:center;justify-content:space-between;gap:10px;padding:9px 10px}.connection-item span[data-v-055f95c1],.connection-item small[data-v-055f95c1]{display:block}.object-item.active[data-v-055f95c1]{border-color:#2563eb;background:#eff6ff}.object-item span[data-v-055f95c1]{font-weight:700}.object-item small[data-v-055f95c1]{color:var(--text-color-3)}html.dark .object-item[data-v-055f95c1]{background:#0f172ab8}html.dark .object-item.active[data-v-055f95c1]{background:#2563eb2e}html.dark .object-item small[data-v-055f95c1]{color:#e2e8f0b8}.three-scene[data-v-055f95c1]{position:relative;min-height:620px;overflow:hidden;border:1px solid var(--border-color);border-radius:8px;background:#111827}.three-scene[data-v-055f95c1] canvas{display:block;width:100%!important;height:100%!important;pointer-events:auto}.three-help[data-v-055f95c1]{position:absolute;left:12px;top:12px;z-index:2;border:1px solid rgba(34,216,208,.2);border-radius:8px;background:#050b18ad;padding:7px 10px;color:#e2e8f0c7;font-size:12px;pointer-events:none}.transform-mode[data-v-055f95c1]{width:100%;margin-bottom:10px}.transform-mode[data-v-055f95c1] .n-radio-button{flex:1;text-align:center}.camera-editor[data-v-055f95c1]{margin-bottom:14px;border:1px solid rgba(73,139,255,.18);border-radius:8px;background:#0f172a6b;padding:10px}.camera-editor[data-v-055f95c1] .n-form-item{margin-bottom:8px}.camera-editor[data-v-055f95c1] .n-input-number,.camera-actions[data-v-055f95c1]{width:100%}.three-empty[data-v-055f95c1]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;pointer-events:none;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#e2e8f0e0}.three-empty strong[data-v-055f95c1]{font-size:18px}.three-empty span[data-v-055f95c1]{color:#cbd5e1b8}@media(max-width:1200px){.workspace[data-v-055f95c1],.three-layout[data-v-055f95c1]{grid-template-columns:1fr}.palette[data-v-055f95c1],.inspector[data-v-055f95c1]{position:static}}.user-layout[data-v-16d48728]{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px;min-height:520px}.organization-panel[data-v-16d48728]{border-right:1px solid var(--n-border-color);padding-right:16px}.panel-title[data-v-16d48728]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.tree-actions[data-v-16d48728],.toolbar[data-v-16d48728]{margin-top:14px;margin-bottom:14px}.wide-modal[data-v-16d48728]{width:min(860px,calc(100vw - 32px))}.form-modal[data-v-16d48728]{width:min(620px,calc(100vw - 32px))}@media(max-width:900px){.user-layout[data-v-16d48728]{grid-template-columns:1fr}.organization-panel[data-v-16d48728]{border-right:0;border-bottom:1px solid var(--n-border-color);padding:0 0 16px}}.role-modal[data-v-3a0f4fef]{width:min(900px,calc(100vw - 32px))}.permission-group[data-v-3a0f4fef]{display:grid;grid-template-columns:110px 1fr;gap:12px;margin:14px 0}.alarm-overview[data-v-7442a13d]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.alarm-metric span[data-v-7442a13d],.alarm-metric strong[data-v-7442a13d]{display:block}.alarm-metric span[data-v-7442a13d]{color:var(--wl-text-3)}.alarm-metric strong[data-v-7442a13d]{font-size:28px;margin-top:8px}.tone-critical[data-v-7442a13d]{border-color:#ef444480}.tone-major[data-v-7442a13d]{border-color:#f59e0b80}.tone-warning[data-v-7442a13d]{border-color:#3b82f673}.tone-info[data-v-7442a13d]{border-color:#22c55e66}.toolbar[data-v-7442a13d]{margin-bottom:14px}.alarm-modal[data-v-7442a13d]{width:min(900px,calc(100vw - 32px))}.handle-modal[data-v-7442a13d]{width:min(620px,calc(100vw - 32px))}[data-v-7442a13d] .table-subtext{color:var(--wl-text-3);font-size:12px;margin-top:3px}@media(max-width:900px){.alarm-overview[data-v-7442a13d]{grid-template-columns:repeat(2,minmax(0,1fr))}}.knowledge-summary[data-v-6f39ba34] .n-statistic-value{color:var(--wl-text);font-size:25px}.knowledge-layout[data-v-6f39ba34]{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;min-height:560px}.base-panel[data-v-6f39ba34],.document-panel[data-v-6f39ba34]{min-width:0}.base-empty[data-v-6f39ba34]{padding:60px 0}.base-row[data-v-6f39ba34]{width:100%;min-height:68px;display:flex;align-items:center;gap:10px;padding:10px;cursor:pointer;color:var(--wl-text-2);text-align:left;border:1px solid transparent;border-radius:8px;background:transparent}.base-row+.base-row[data-v-6f39ba34]{margin-top:6px}.base-row[data-v-6f39ba34]:hover{background:#2f80ff17;border-color:#498bff33}.base-row.active[data-v-6f39ba34]{color:#fff;background:#2f80ff2e;border-color:#55a7ff6b}.base-icon[data-v-6f39ba34]{width:34px;height:34px;display:grid;flex:0 0 auto;place-items:center;border-radius:8px;color:#55a7ff;background:#2f80ff24;font-size:18px}.base-main[data-v-6f39ba34]{min-width:0;flex:1}.base-main strong[data-v-6f39ba34],.base-main small[data-v-6f39ba34]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.base-main strong[data-v-6f39ba34]{font-size:14px}.base-main small[data-v-6f39ba34]{margin-top:5px;color:var(--wl-text-3);font-size:11px}.panel-title[data-v-6f39ba34]{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0}.panel-title>div[data-v-6f39ba34]{min-width:0}.panel-title strong[data-v-6f39ba34],.panel-title small[data-v-6f39ba34]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-title small[data-v-6f39ba34]{margin-top:4px;max-width:560px;color:var(--wl-text-3);font-size:12px;font-weight:400}.index-tip[data-v-6f39ba34]{margin-bottom:14px}.file-input[data-v-6f39ba34]{display:none}.document-name strong[data-v-6f39ba34],.document-name small[data-v-6f39ba34]{display:block}.document-name small[data-v-6f39ba34]{margin-top:4px;color:var(--wl-text-3);font-size:11px}.chunk-content[data-v-6f39ba34]{max-height:150px;overflow:auto;white-space:pre-wrap;line-height:1.65;color:var(--wl-text-2)}.base-modal[data-v-6f39ba34]{width:min(620px,calc(100vw - 32px))}.chunk-modal[data-v-6f39ba34]{width:min(1050px,calc(100vw - 32px))}@media(max-width:980px){.knowledge-layout[data-v-6f39ba34]{grid-template-columns:1fr}.base-panel[data-v-6f39ba34]{max-height:320px;overflow:auto}.panel-title[data-v-6f39ba34]{align-items:flex-start;flex-direction:column}}.portal-page[data-v-d773620f]{position:relative;height:100svh;overflow-x:hidden;overflow-y:auto;color:#eaf3ff;background:#050b18}.portal-grid[data-v-d773620f]{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.28;background-image:linear-gradient(rgba(71,132,211,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(71,132,211,.13) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:linear-gradient(to bottom,#000 0%,transparent 78%);mask-image:linear-gradient(to bottom,#000 0%,transparent 78%)}.portal-header[data-v-d773620f]{position:relative;z-index:5;height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(32px,calc((100% - 1380px)/2));border-bottom:1px solid rgba(73,139,255,.22);background:#050b18db;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.portal-brand[data-v-d773620f]{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.portal-brand-mark[data-v-d773620f]{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;color:#fff;font-size:13px;font-weight:900;background:linear-gradient(135deg,#326dff,#19d2c4);box-shadow:0 10px 24px #2f80ff47}.portal-brand strong[data-v-d773620f],.portal-brand small[data-v-d773620f]{display:block}.portal-brand strong[data-v-d773620f]{font-size:16px}.portal-brand small[data-v-d773620f]{margin-top:3px;color:#6f96c6;font-size:9px}.portal-actions[data-v-d773620f]{display:flex;align-items:center;gap:10px}.portal-entry[data-v-d773620f]{min-width:118px;border-radius:7px!important}.portal-entry.secondary[data-v-d773620f]{color:#bcd4f4;border:1px solid rgba(73,139,255,.3)}.portal-hero[data-v-d773620f]{position:relative;z-index:1;min-height:calc(100svh - 132px);display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,.86fr);align-items:center;gap:76px;width:min(1380px,calc(100% - 64px));margin:0 auto;padding:74px 0 82px}.portal-kicker[data-v-d773620f],.portal-live-status[data-v-d773620f],.portal-live-status span[data-v-d773620f]{display:flex;align-items:center}.portal-kicker[data-v-d773620f]{gap:10px;color:#56b8ff;font-size:11px;font-weight:800}.portal-kicker i[data-v-d773620f],.portal-live-status i[data-v-d773620f]{width:6px;height:6px;border-radius:50%;background:#21d9a5;box-shadow:0 0 12px #21d9a5e6}.portal-hero h1[data-v-d773620f]{margin:18px 0 16px;color:#f8fbff;font-size:52px;line-height:1.15;letter-spacing:0}.portal-hero-copy>p[data-v-d773620f]{max-width:650px;margin:0;color:#8eaed5;font-size:17px;line-height:1.9}.portal-live-status[data-v-d773620f]{width:fit-content;flex-wrap:wrap;gap:16px;margin-top:34px;padding:10px 12px;border:1px solid rgba(73,139,255,.25);border-radius:7px;color:#7697c1;font-size:11px;background:#091628b8}.portal-live-status span[data-v-d773620f]{gap:8px}.portal-live-status span[data-v-d773620f]:first-child{color:#bdeedd}.portal-live-status button[data-v-d773620f],.portal-footer button[data-v-d773620f]{display:inline-flex;align-items:center;justify-content:center;border:0;color:inherit;background:transparent;cursor:pointer}.portal-live-status button[data-v-d773620f]{width:24px;height:24px;color:#55a7ff;font-size:17px}.portal-live-status button[data-v-d773620f]:disabled{cursor:wait;opacity:.6}.spinning[data-v-d773620f]{animation:portal-spin-d773620f .8s linear infinite}.portal-error[data-v-d773620f]{max-width:640px;margin-top:18px}.portal-topology[data-v-d773620f]{position:relative;width:min(560px,100%);aspect-ratio:1.22;justify-self:end}.portal-topology[data-v-d773620f]:before,.portal-topology[data-v-d773620f]:after{content:"";position:absolute;border:1px solid rgba(73,139,255,.13);border-radius:50%;top:18%;right:18%;bottom:18%;left:18%}.portal-topology[data-v-d773620f]:after{top:31%;right:31%;bottom:31%;left:31%;border-color:#22d8d02e}.portal-core[data-v-d773620f],.portal-node[data-v-d773620f]{position:absolute;z-index:2;border:1px solid rgba(85,167,255,.42);border-radius:8px;background:#081629f0;box-shadow:0 18px 40px #00000052;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.portal-core[data-v-d773620f]{left:50%;top:50%;width:156px;height:92px;display:grid;grid-template-columns:46px 1fr;grid-template-rows:1fr 1fr;align-items:center;padding:14px;transform:translate(-50%,-50%);border-color:#22d8d0b3}.portal-core>span[data-v-d773620f]{width:38px;height:38px;display:grid;grid-row:1 / 3;place-items:center;border-radius:7px;color:#fff;font-size:11px;font-weight:900;background:#2f80ff}.portal-core strong[data-v-d773620f]{align-self:end;font-size:14px}.portal-core small[data-v-d773620f]{align-self:start;margin-top:4px;color:#21d9a5;font-size:8px}.portal-node[data-v-d773620f]{width:118px;height:58px;display:flex;align-items:center;gap:9px;padding:11px;color:#bdd5f6;font-size:12px}.portal-node .n-icon[data-v-d773620f]{color:#55dff2;font-size:20px}.node-device[data-v-d773620f]{left:1%;top:6%}.node-edge[data-v-d773620f]{right:1%;top:6%}.node-twin[data-v-d773620f]{left:1%;bottom:6%}.node-ai[data-v-d773620f]{right:1%;bottom:6%}.portal-line[data-v-d773620f]{position:absolute;z-index:1;width:35%;height:1px;overflow:hidden;background:#498bff59;transform-origin:center}.portal-line i[data-v-d773620f]{display:block;width:32%;height:1px;background:#55dff2;box-shadow:0 0 8px #55dff2;animation:portal-flow-d773620f 2.2s linear infinite}.line-one[data-v-d773620f]{left:18%;top:32%;transform:rotate(28deg)}.line-two[data-v-d773620f]{right:18%;top:32%;transform:rotate(-28deg)}.line-three[data-v-d773620f]{left:18%;bottom:32%;transform:rotate(-28deg)}.line-four[data-v-d773620f]{right:18%;bottom:32%;transform:rotate(28deg)}.portal-overview[data-v-d773620f]{position:relative;z-index:2;padding:52px max(32px,calc((100% - 1380px)/2)) 64px;border-top:1px solid rgba(73,139,255,.2);background:#07101fed}.portal-section-heading[data-v-d773620f]{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:24px}.portal-section-heading span[data-v-d773620f],.portal-status-intro span[data-v-d773620f]{color:#4f8ed3;font-size:9px;font-weight:800}.portal-section-heading h2[data-v-d773620f]{margin:5px 0 0;color:#f4f9ff;font-size:26px;letter-spacing:0}.portal-section-heading p[data-v-d773620f]{margin:0;color:#6f8daf;font-size:12px}.portal-metrics[data-v-d773620f]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.portal-metric[data-v-d773620f]{min-width:0;min-height:116px;display:flex;align-items:center;gap:14px;padding:18px;border:1px solid rgba(73,139,255,.23);border-radius:8px;background:#0b192dd1}.portal-metric>.n-icon[data-v-d773620f]{flex:0 0 auto;font-size:26px}.portal-metric span[data-v-d773620f]{display:block;color:#7f9ec8;font-size:11px}.portal-metric strong[data-v-d773620f]{display:block;margin-top:6px;color:#f7fbff;font-size:26px;line-height:1}.portal-metric small[data-v-d773620f]{margin-left:4px;color:#6f8daf;font-size:10px;font-weight:500}.tone-blue>.n-icon[data-v-d773620f]{color:#55a7ff}.tone-cyan>.n-icon[data-v-d773620f]{color:#22d8d0}.tone-yellow>.n-icon[data-v-d773620f]{color:#ffb020}.tone-green>.n-icon[data-v-d773620f]{color:#21d9a5}.tone-red>.n-icon[data-v-d773620f]{color:#ff5f78}.portal-status-band[data-v-d773620f]{display:grid;grid-template-columns:1.3fr repeat(2,1.15fr) repeat(3,.75fr);gap:0;margin-top:14px;border:1px solid rgba(73,139,255,.22);border-radius:8px;background:#081425c2}.portal-status-intro[data-v-d773620f],.portal-progress-item[data-v-d773620f],.portal-datum[data-v-d773620f]{min-width:0;padding:22px;border-right:1px solid rgba(73,139,255,.16)}.portal-status-band[data-v-d773620f]>:last-child{border-right:0}.portal-status-intro[data-v-d773620f]{display:flex;align-items:center;gap:12px}.portal-status-intro>.n-icon[data-v-d773620f]{color:#21d9a5;font-size:30px}.portal-status-intro h3[data-v-d773620f]{margin:4px 0 3px;font-size:16px}.portal-status-intro p[data-v-d773620f],.portal-progress-item small[data-v-d773620f],.portal-datum small[data-v-d773620f]{margin:0;color:#6988ad;font-size:10px}.portal-progress-item>div[data-v-d773620f]:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-progress-item span[data-v-d773620f],.portal-datum>span[data-v-d773620f]{color:#92aed0;font-size:11px}.portal-progress-item strong[data-v-d773620f]{color:#55dff2;font-size:15px}.portal-progress[data-v-d773620f]{height:5px;margin:13px 0 9px;overflow:hidden;border-radius:3px;background:#498bff29}.portal-progress i[data-v-d773620f]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2f80ff,#22d8d0);transition:width .45s ease}.portal-datum[data-v-d773620f]{display:flex;flex-direction:column;justify-content:center}.portal-datum strong[data-v-d773620f]{margin:6px 0;color:#f4f9ff;font-size:22px}.portal-footer[data-v-d773620f]{position:relative;z-index:2;min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(32px,calc((100% - 1380px)/2));border-top:1px solid rgba(73,139,255,.16);color:#59799e;font-size:10px;background:#050b18}.portal-footer span[data-v-d773620f]:first-child{color:#9bb9dc;font-weight:700}.portal-footer button[data-v-d773620f]{gap:7px;color:#55a7ff;font-size:11px}@keyframes portal-spin-d773620f{to{transform:rotate(360deg)}}@keyframes portal-flow-d773620f{0%{transform:translate(-110%)}to{transform:translate(330%)}}@media(max-width:1180px){.portal-hero[data-v-d773620f]{grid-template-columns:minmax(0,1fr) 430px;gap:36px}.portal-metrics[data-v-d773620f]{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-status-band[data-v-d773620f]{grid-template-columns:repeat(3,1fr)}.portal-status-intro[data-v-d773620f],.portal-progress-item[data-v-d773620f],.portal-datum[data-v-d773620f]{border-bottom:1px solid rgba(73,139,255,.16)}.portal-status-band[data-v-d773620f]>:nth-child(3n){border-right:0}.portal-status-band[data-v-d773620f]>:nth-last-child(-n+3){border-bottom:0}}@media(max-width:860px){.portal-header[data-v-d773620f]{height:auto;min-height:68px;padding:12px 20px}.portal-brand small[data-v-d773620f]{display:none}.portal-entry[data-v-d773620f]{min-width:44px}.portal-hero[data-v-d773620f]{min-height:auto;grid-template-columns:1fr;width:calc(100% - 40px);padding:62px 0 52px}.portal-topology[data-v-d773620f]{width:min(520px,100%);justify-self:center}.portal-section-heading[data-v-d773620f]{align-items:flex-start;flex-direction:column}.portal-overview[data-v-d773620f]{padding:42px 20px 50px}.portal-footer[data-v-d773620f]{padding:20px}}@media(max-width:600px){.portal-actions[data-v-d773620f]{gap:6px}.portal-entry[data-v-d773620f]{padding:0 9px;font-size:11px}.portal-brand strong[data-v-d773620f]{font-size:14px}.portal-brand-mark[data-v-d773620f]{width:36px;height:36px}.portal-hero h1[data-v-d773620f]{font-size:38px}.portal-hero-copy>p[data-v-d773620f]{font-size:14px}.portal-live-status[data-v-d773620f]{align-items:flex-start;flex-direction:column}.portal-topology[data-v-d773620f]{aspect-ratio:1.05}.portal-node[data-v-d773620f]{width:100px;font-size:10px}.portal-core[data-v-d773620f]{width:140px}.portal-metrics[data-v-d773620f]{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-metric[data-v-d773620f]{min-height:98px;padding:14px}.portal-metric strong[data-v-d773620f]{font-size:22px}.portal-status-band[data-v-d773620f]{grid-template-columns:1fr}.portal-status-intro[data-v-d773620f],.portal-progress-item[data-v-d773620f],.portal-datum[data-v-d773620f]{border-right:0;border-bottom:1px solid rgba(73,139,255,.16)}.portal-status-band[data-v-d773620f]>:nth-last-child(-n+3){border-bottom:1px solid rgba(73,139,255,.16)}.portal-status-band[data-v-d773620f]>:last-child{border-bottom:0}.portal-footer[data-v-d773620f]{align-items:flex-start;flex-direction:column}.portal-footer span[data-v-d773620f]:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){.portal-page[data-v-d773620f] *,.portal-page[data-v-d773620f] *:before,.portal-page[data-v-d773620f] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{color:#eaf3ff;background:#07101f;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--wl-bg: #07101f;--wl-bg-deep: #050b18;--wl-panel: rgba(13, 25, 44, .94);--wl-panel-soft: rgba(10, 22, 40, .9);--wl-border: rgba(73, 139, 255, .28);--wl-border-strong: rgba(85, 167, 255, .54);--wl-blue: #2f80ff;--wl-cyan: #22d8d0;--wl-green: #21d9a5;--wl-pink: #ff5f78;--wl-yellow: #ffb020;--wl-text: #f4f9ff;--wl-text-2: #bdd5f6;--wl-text-3: #7f9ec8;--wl-shadow: 0 18px 42px rgba(0, 0, 0, .34)}*{box-sizing:border-box}html,body,#app{width:100%;min-width:0;height:100%;margin:0}body{overflow:hidden;background:radial-gradient(circle at 15% 0%,rgba(47,128,255,.18),transparent 32%),radial-gradient(circle at 88% 12%,rgba(34,216,208,.1),transparent 30%),linear-gradient(180deg,#081326,#050b18)}body::-webkit-scrollbar,*::-webkit-scrollbar{width:8px;height:8px}body::-webkit-scrollbar-thumb,*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#2f80ff,#22d8d0);border-radius:999px}body::-webkit-scrollbar-track,*::-webkit-scrollbar-track{background:#0c1a30a6}.admin-root{height:100vh;background:linear-gradient(90deg,rgba(47,128,255,.08),transparent 26%),var(--wl-bg)}.admin-root .n-layout{background:transparent}.admin-sider{height:100vh;background:#050b18f5!important;border-right:1px solid rgba(73,139,255,.22)!important;box-shadow:12px 0 30px #00000038}.brand{height:72px;display:flex;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid rgba(73,139,255,.18)}.brand.collapsed{justify-content:center;padding:0}.brand-mark{width:42px;height:42px;display:grid;flex:0 0 auto;place-items:center;border-radius:12px;background:linear-gradient(135deg,#326dff,#19d2c4);color:#fff;font-weight:900;box-shadow:0 12px 28px #2f80ff57}.brand-text{min-width:0}.brand-text strong,.brand-text small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-text strong{color:var(--wl-text);font-size:16px;letter-spacing:0}.brand-text small{margin-top:4px;color:#65d9ff;font-size:11px;letter-spacing:1px;text-transform:uppercase}.admin-sider .n-menu{padding:14px 10px}.admin-sider .n-menu-item-group-title{height:28px!important;padding:12px 12px 4px!important;color:#5f86bd!important;font-size:12px!important;letter-spacing:.8px}.admin-sider .n-menu-item-content{height:46px!important;margin:4px 0;border-radius:12px}.admin-sider .n-menu-item-content:before{border-radius:12px!important}.admin-sider .n-menu-item-content--selected{border:1px solid rgba(85,167,255,.46);background:linear-gradient(90deg,#2f80ff57,#22d8d024),#2f80ff1f!important;box-shadow:inset 3px 0 #46b6ff}.admin-header{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:#050b18e6!important;border-bottom:1px solid rgba(73,139,255,.2)!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-left,.header-actions{display:flex;align-items:center;gap:12px;min-width:0}.page-title{min-width:0}.page-title strong,.page-title span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-title strong{color:var(--wl-text);font-size:16px}.page-title span{margin-top:3px;color:var(--wl-text-3);font-size:12px}.user-name{margin-left:8px;color:var(--wl-text-2)}.workspace-select{width:250px}.admin-content{height:calc(100vh - 64px);padding:18px 22px;overflow:auto;background:linear-gradient(180deg,rgba(47,128,255,.06),transparent 180px),transparent}.page-stack{display:grid;gap:16px}.muted-text{color:var(--wl-text-3);font-size:12px}.form-modal{width:min(640px,calc(100vw - 32px))}.n-page-header{padding:10px 2px 2px}.n-page-header .n-page-header__title{color:var(--wl-text);font-size:22px;font-weight:850}.n-page-header .n-page-header__subtitle{color:var(--wl-text-3)}.n-card{position:relative;overflow:hidden;box-shadow:var(--wl-shadow)}.n-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;background:linear-gradient(135deg,rgba(85,167,255,.16),transparent 28%),linear-gradient(315deg,rgba(34,216,208,.08),transparent 30%)}.n-card>*{position:relative;z-index:1}.n-card-header{border-bottom:1px solid rgba(73,139,255,.16)}.n-card-header__main{color:var(--wl-text)!important;font-weight:800!important}.n-button{font-weight:700}.n-button--primary-type{background:linear-gradient(135deg,#2f6fff,#16b6bd)!important;border:0!important;box-shadow:0 10px 22px #2f80ff47}.n-button--primary-type:hover{box-shadow:0 12px 26px #22d8d04d;filter:brightness(1.08)}.n-button--default-type:not(.n-button--text-type):not(.n-button--quaternary-type){background:#142642db!important;border-color:#498bff3d!important;color:var(--wl-text-2)!important}.n-button--default-type:not(.n-button--text-type):not(.n-button--quaternary-type):hover{border-color:#55a7ff94!important;color:#fff!important}.n-input,.n-input-number,.n-base-selection,.n-date-picker{--n-color: rgba(7, 16, 31, .72) !important;--n-color-focus: rgba(8, 22, 43, .9) !important;--n-border: 1px solid rgba(73, 139, 255, .24) !important;--n-border-hover: 1px solid rgba(85, 167, 255, .62) !important;--n-border-focus: 1px solid rgba(34, 216, 208, .78) !important;--n-box-shadow-focus: 0 0 0 2px rgba(34, 216, 208, .12) !important}.n-data-table{border-radius:14px;overflow:hidden;border:1px solid rgba(73,139,255,.16)}.n-data-table-th{color:#8fbfff!important;font-size:12px}.n-data-table-td{color:var(--wl-text-2)!important}.n-tag{border-radius:999px!important;font-weight:700}.n-modal .n-card{border:1px solid rgba(85,167,255,.36)!important}.n-alert{border-radius:14px!important;background:#0d192ce6!important;border:1px solid rgba(73,139,255,.22)!important}.n-tabs .n-tabs-tab{font-weight:700}.metric-widget span,.dashboard-widget .metric-widget span{background:linear-gradient(180deg,#fff,#55a7ff 54%,#21d9a5);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.dashboard-grid{align-items:stretch}.dashboard-widget{border-color:#55a7ff52!important}.log-row{background:#2f80ff0f;border-radius:10px;padding:8px 10px!important;border-bottom:0!important}.login-page{position:relative;width:100%;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,34vw);overflow:hidden;background:linear-gradient(112deg,rgba(47,128,255,.11),transparent 42%),#050b18;isolation:isolate}.login-grid,.login-scan{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none}.login-grid{opacity:.42;background-image:linear-gradient(rgba(85,167,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(85,167,255,.08) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(90deg,black 0%,rgba(0,0,0,.66) 60%,transparent 86%);mask-image:linear-gradient(90deg,black 0%,rgba(0,0,0,.66) 60%,transparent 86%)}.login-scan{width:66%;opacity:.5;background:linear-gradient(180deg,transparent 0%,rgba(34,216,208,.14) 50%,transparent 100%);transform:translateY(-110%);animation:login-scan 8s linear infinite}.login-visual{position:relative;min-width:0;min-height:100svh;display:grid;grid-template-rows:auto auto minmax(280px,1fr) auto;gap:24px;padding:clamp(28px,4.2vw,72px) clamp(28px,5.5vw,96px) 34px;color:#fff}.login-brand{display:flex;align-items:center;gap:12px;animation:login-rise .65s ease both}.login-brand-mark{width:46px;height:46px;display:grid;flex:0 0 auto;place-items:center;border:1px solid rgba(85,223,242,.72);border-radius:10px;background:linear-gradient(135deg,#326dff,#19d2c4);color:#fff;font-weight:900;box-shadow:0 12px 32px #2f80ff59}.login-brand strong,.login-brand small{display:block;letter-spacing:0}.login-brand strong{font-size:18px}.login-brand small{margin-top:3px;color:#68dcea;font-size:10px}.login-hero-copy{padding-top:clamp(14px,3vh,42px);animation:login-rise .72s .08s ease both}.login-kicker{display:flex;align-items:center;gap:9px;color:#82a8d7;font-size:11px;font-weight:700}.login-kicker i,.login-visual-footer i,.topology-node>i{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--wl-green);box-shadow:0 0 14px #21d9a5cc}.login-hero-copy h1{margin:0;padding-top:14px;color:#f7fbff;font-size:58px;font-weight:850;line-height:1.08;letter-spacing:0}.login-hero-copy p{margin:14px 0 0;color:#8daed7;font-size:15px;line-height:1.7}.login-topology{position:relative;width:min(720px,92%);min-height:280px;margin-top:6px;animation:login-rise .8s .16s ease both}.topology-axis{position:absolute;left:50%;top:50%;width:30%;height:1px;overflow:hidden;background:#55a7ff57;transform-origin:left center}.topology-axis:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,#55dff2,transparent);transform:translate(-100%);animation:topology-flow 2.8s linear infinite}.topology-axis-a{transform:rotate(-151deg)}.topology-axis-b{transform:rotate(-30deg)}.topology-axis-c{transform:rotate(154deg)}.topology-axis-d{transform:rotate(27deg)}.topology-axis-b:before{animation-delay:.65s}.topology-axis-c:before{animation-delay:1.3s}.topology-axis-d:before{animation-delay:1.95s}.topology-node{position:absolute;width:108px;min-height:64px;display:grid;grid-template-columns:16px minmax(0,1fr);align-content:center;column-gap:8px;padding:10px 12px;border:1px solid rgba(85,167,255,.32);border-radius:6px;background:#071224e0;box-shadow:0 14px 36px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topology-node>i{width:6px;height:6px;align-self:center;grid-row:1 / 3;animation:topology-pulse 2.2s ease-in-out infinite}.topology-node strong,.topology-node small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topology-node strong{color:#dfeeff;font-size:13px}.topology-node small{margin-top:2px;color:#6388b8;font-size:8px}.topology-core{left:50%;top:50%;width:142px;min-height:78px;grid-template-columns:38px minmax(0,1fr);border-color:#55dff2b8;background:#0b1f39f5;transform:translate(-50%,-50%);box-shadow:0 0 0 7px #2f80ff12,0 18px 48px #0006}.node-icon{width:34px;height:34px;display:grid;grid-row:1 / 3;place-items:center;align-self:center;border-radius:7px;color:#fff;font-size:11px;font-weight:900;background:#2f80ff}.topology-core small{color:#21d9a5}.topology-device{left:4%;top:10%}.topology-gateway{right:4%;top:10%}.topology-edge{left:4%;bottom:9%}.topology-twin{right:4%;bottom:9%}.login-visual-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#54769f;font-size:9px;font-weight:700;animation:login-rise .75s .22s ease both}.login-visual-footer span:first-child{display:flex;align-items:center;gap:8px}.login-visual-footer i{width:5px;height:5px}.login-panel{position:relative;display:grid;align-items:center;min-height:100svh;padding:clamp(28px,4vw,64px);background:#060e1cf0;border-left:1px solid rgba(73,139,255,.24);box-shadow:-24px 0 64px #00000047;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.login-panel:before,.login-panel:after{content:"";position:absolute;left:-1px;width:1px;height:18%;background:#22d8d0;box-shadow:0 0 16px #22d8d0cc}.login-panel:before{top:12%}.login-panel:after{bottom:12%;background:#2f80ff}.login-panel-inner{width:min(430px,100%);margin:0 auto;animation:login-panel-enter .72s .08s ease both}.login-panel-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:34px}.login-security-icon{width:46px;height:46px;display:grid;flex:0 0 auto;place-items:center;border:1px solid rgba(85,167,255,.42);border-radius:8px;color:#55dff2;font-size:23px;background:#2f80ff1f}.login-panel-heading span{color:#5e8fc9;font-size:10px;font-weight:800}.login-panel-heading h2{margin:4px 0 0;color:#f7fbff;font-size:30px;line-height:1.2;letter-spacing:0}.login-panel-heading p{margin:8px 0 0;color:#7898c1;font-size:13px}.login-notice,.login-form .n-form-item{margin-bottom:20px}.login-form .n-form-item-label{color:#a9c2e4;font-size:12px;font-weight:700}.login-form .n-input{min-height:48px;border-radius:7px}.login-form .n-input__prefix{margin-right:8px;color:#55a7ff}.login-submit{min-height:48px;margin-top:8px;border-radius:7px!important}.login-submit .n-button__content{gap:10px}.login-panel-footer{display:flex;align-items:center;gap:10px;margin-top:34px;color:#48698f;font-size:9px;font-weight:700}.login-panel-footer i{width:3px;height:3px;border-radius:50%;background:#2f80ff}@keyframes login-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes login-panel-enter{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes login-scan{0%{transform:translateY(-110%)}to{transform:translateY(110%)}}@keyframes topology-flow{to{transform:translate(100%)}}@keyframes topology-pulse{0%,to{opacity:.58;transform:scale(.86)}50%{opacity:1;transform:scale(1.14)}}@media(max-width:900px){body{overflow:auto}.login-page{grid-template-columns:1fr;overflow:auto}.login-visual{min-height:440px;grid-template-rows:auto auto 1fr;padding:28px 24px 18px}.login-hero-copy{padding-top:8px}.login-hero-copy h1{font-size:42px}.login-topology{width:100%;min-height:210px}.topology-node{transform:scale(.84)}.topology-core{transform:translate(-50%,-50%) scale(.88)}.login-visual-footer{display:none}.login-panel{min-height:auto;padding:42px 24px 52px;border-top:1px solid rgba(73,139,255,.24);border-left:0}.login-panel:before,.login-panel:after{display:none}.user-name,.page-title span{display:none}.admin-content{padding:12px}}@media(max-width:560px){.login-visual{min-height:390px}.login-brand small,.topology-node small{display:none}.login-hero-copy h1{font-size:36px}.login-hero-copy p{max-width:300px;font-size:13px}.login-topology{min-height:180px}.topology-axis{width:27%}.topology-node{width:82px;min-height:50px;padding:8px}.topology-core{width:122px;min-height:64px}.topology-device,.topology-edge{left:0}.topology-gateway,.topology-twin{right:0}.login-panel-heading h2{font-size:26px}}@media(prefers-reduced-motion:reduce){.login-page *,.login-page *:before,.login-page *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
