.device-list-page[data-v-35eddeea]{max-width:1800px;margin:auto;padding:25px 30px 36px}.quick-info[data-v-35eddeea]{margin:-8px 0 18px;font-size:12px}.asset-heading[data-v-35eddeea]{flex-wrap:wrap;gap:12px}.asset-tools[data-v-35eddeea]{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.asset-tools input[data-v-35eddeea]{width:210px}.inline-field[data-v-35eddeea]{white-space:nowrap;align-items:center;gap:6px;margin:0;display:flex}.inline-field input[data-v-35eddeea],.inline-field select[data-v-35eddeea]{margin:0}.quick-count[data-v-35eddeea]{color:var(--muted);margin:4px 6px 8px;font-size:11px}.quick-hint[data-v-35eddeea]{border-top:1px solid var(--line);margin-top:12px;padding-top:10px;font-size:11px}.quick-search[data-v-35eddeea]{margin:2px 0 8px;font-size:11px;display:block}.quick-search input[data-v-35eddeea]{width:100%;margin-top:5px}.quick-devices button.active[data-v-35eddeea]{background:var(--pale)}.quick-variables .link-button[data-v-35eddeea]{text-align:left;width:100%;min-height:0;color:var(--text);border:0;padding:6px 0;display:block}.quick-variables .link-button[data-v-35eddeea]:hover{color:var(--primary)}.device-row[data-v-35eddeea]{cursor:pointer}.device-row:hover td[data-v-35eddeea]{background:#f8fbff}.alarm-tag[data-v-35eddeea]{color:#bc3947;background:#fff0f1;font-weight:600}.row-actions[data-v-35eddeea]{white-space:normal;flex-wrap:wrap;gap:4px;min-width:190px;display:flex}.row-actions button[data-v-35eddeea]{min-height:30px;margin:0;padding:4px 7px}.tag-items[data-v-35eddeea]{flex-wrap:wrap;gap:14px;padding:16px 21px;display:flex}.tag-items>div[data-v-35eddeea]{align-items:center;gap:7px;display:flex}.archive-modal[data-v-35eddeea]{width:min(1000px,94vw)}.archive-modal .table-wrap[data-v-35eddeea]{max-height:55vh;overflow:auto}.archive-modal .pagination[data-v-35eddeea]{align-items:center;gap:8px;margin:0;display:flex}.device-modal[data-v-35eddeea]{width:min(880px,94vw)}.form-subtitle[data-v-35eddeea]{margin:6px 0 0;font-size:12px}.form-section[data-v-35eddeea]{border:1px solid #e2e8f0;border-radius:10px;margin:0 0 16px;padding:4px 18px 16px}.form-section legend[data-v-35eddeea]{color:#4c6574;padding:0 6px;font-size:13px;font-weight:600}.section-note[data-v-35eddeea]{color:#70818e;margin:6px 0 0;font-size:12px;line-height:1.75}.form-section .form-columns[data-v-35eddeea]{margin-top:0}.form-section label small[data-v-35eddeea]{line-height:1.6}.required[data-v-35eddeea]{color:#d92d20;margin-right:4px}.field-summary[data-v-35eddeea]{flex-direction:column;gap:6px;margin-top:18px;font-size:14px;display:flex}.field-summary .field-label[data-v-35eddeea]{color:#24344c}.field-summary strong[data-v-35eddeea]{overflow-wrap:anywhere;font-size:13px;font-weight:500}.field-summary small[data-v-35eddeea]{margin:0;line-height:1.6}.device-pagination[data-v-35eddeea]{flex-wrap:wrap;justify-content:space-between}.pagination-actions[data-v-35eddeea]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.page-size[data-v-35eddeea]{color:#64748b;align-items:center;gap:6px;margin:0;font-size:12px;display:flex}.page-size select[data-v-35eddeea]{width:auto;min-width:70px;margin:0;padding:4px 8px}@media (width<=750px){.device-modal .form-columns.three[data-v-35eddeea]{grid-template-columns:1fr}}.history-chart[data-v-8799196a]{border:1px solid var(--line,#e2e8f0);background:#fff;border-radius:10px;margin:18px 0;padding:18px}figcaption[data-v-8799196a]{margin-bottom:10px;font-weight:600}small[data-v-8799196a]{color:#64748b;font-weight:400}.chart-wrap[data-v-8799196a]{position:relative}.chart-legend[data-v-8799196a]{color:#475569;flex-wrap:wrap;gap:6px 18px;margin-bottom:8px;font-size:12px;display:flex}.chart-legend span[data-v-8799196a]{align-items:center;gap:6px;display:inline-flex}.chart-legend i[data-v-8799196a]{border-radius:50%;width:10px;height:10px;display:inline-block}.chart-legend small[data-v-8799196a]{color:#94a3b8}svg[data-v-8799196a]{cursor:grab;touch-action:none;background:#fbfcff;width:100%;height:320px;display:block}svg[data-v-8799196a]:active{cursor:grabbing}svg text[data-v-8799196a]{fill:#64748b;font-size:11px}.chart-tooltip[data-v-8799196a]{z-index:5;pointer-events:none;background:#fff;border:1px solid #dbe3ee;border-radius:8px;min-width:190px;max-width:250px;padding:8px 10px;font-size:12px;position:absolute;box-shadow:0 8px 24px #142a3a22}.chart-tooltip strong[data-v-8799196a]{color:#64748b;font-size:11px;font-weight:500;display:block}.tip-row[data-v-8799196a]{align-items:center;gap:6px;margin-top:4px;display:flex}.tip-row i[data-v-8799196a]{border-radius:50%;flex:none;width:9px;height:9px}.tip-row b[data-v-8799196a]{margin-left:auto}.tip-row small[data-v-8799196a]{color:#94a3b8}.register-write[data-v-e39c3626]{gap:12px;display:grid}.register-write .write-intro[data-v-e39c3626],.register-write .write-note[data-v-e39c3626]{margin:0;line-height:1.7}.register-write .write-intro[data-v-e39c3626]{font-size:13px}.register-write .write-note[data-v-e39c3626]{color:var(--muted);font-size:12px}.write-empty[data-v-e39c3626]{color:var(--muted);background:#f8fbfc;border:1px dashed #d8e2e8;border-radius:8px;margin:0;padding:14px 16px;font-size:13px;line-height:1.7}.register-write:not(.compact) .write-empty[data-v-e39c3626]{padding:22px 24px}.register-write.compact .form-body[data-v-e39c3626]{padding:0}.register-write.compact .form-columns[data-v-e39c3626]{grid-template-columns:1fr}.write-history[data-v-e39c3626]{margin-top:0}.register-write.compact .write-history[data-v-e39c3626]{border-top:1px solid #edf0f5;padding-top:10px}.write-history summary[data-v-e39c3626]{cursor:pointer;color:var(--text,#24344c);padding:6px 0;font-size:13px;font-weight:600}.register-write.compact .write-history summary[data-v-e39c3626]{color:var(--primary)}.receipt-detail[data-v-e39c3626]{margin-top:0}dt[data-v-e39c3626]{color:var(--text-secondary,#64748b);margin-top:10px}dd[data-v-e39c3626]{overflow-wrap:anywhere;margin:4px 0 0}.history-filter[data-v-89d4848f]{flex-direction:column;align-items:stretch}.variable-filter[data-v-89d4848f]{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.variable-filter .check-label[data-v-89d4848f]{margin:0;font-size:12px}.filter-row[data-v-89d4848f]{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.chart-dot[data-v-89d4848f]{vertical-align:middle;border-radius:50%;width:10px;height:10px;margin-right:5px;display:inline-block}.history-detail[data-v-89d4848f]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-top:16px;padding:16px 18px;box-shadow:0 6px 18px #142a3a0a}.history-table[data-v-89d4848f]{overflow:auto}.history-card-footer[data-v-89d4848f]{color:#64748b;border-top:1px solid #edf0f5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;font-size:12px;display:flex}.history-card-footer .actions[data-v-89d4848f]{align-items:center;gap:8px}.page-size[data-v-89d4848f]{color:#64748b;align-items:center;gap:6px;margin:0;font-size:12px;display:flex}.page-size select[data-v-89d4848f]{width:auto;min-width:70px;margin:0;padding:4px 8px}.history-detail-head[data-v-89d4848f]{justify-content:space-between;align-items:center;gap:12px;margin:0 0 6px;display:flex}.history-detail-head h3[data-v-89d4848f]{margin:0;font-size:15px}.history-detail-head h3 small[data-v-89d4848f]{color:#94a3b8;font-weight:400}.history-pivot th[data-v-89d4848f],.history-pivot td[data-v-89d4848f]{min-width:200px}.history-pivot th[data-v-89d4848f]:first-child,.history-pivot td[data-v-89d4848f]:first-child{white-space:nowrap;min-width:190px}.query-body[data-v-ba6b6163]{padding-bottom:6px}.parameter-field[data-v-ba6b6163]{border:1px solid var(--line,#e2e8f0);border-radius:8px;margin:14px 0 0;padding:10px 14px}.parameter-field legend[data-v-ba6b6163]{color:var(--muted);padding:0 6px;font-size:12px}.parameter-field label[data-v-ba6b6163]{white-space:nowrap;align-items:center;gap:6px;margin:4px 18px 4px 0;font-size:13px;display:inline-flex}.parameter-field input[type=checkbox][data-v-ba6b6163]{width:auto;margin:0}.chart-dot[data-v-ba6b6163]{vertical-align:middle;border-radius:50%;width:10px;height:10px;margin-right:2px;display:inline-block}.query-actions[data-v-ba6b6163]{flex-wrap:wrap;gap:8px;margin:14px 0 4px;display:flex}.chart-note[data-v-ba6b6163]{color:var(--muted);margin:12px 21px 18px;font-size:12px;line-height:1.6}.channel-section[data-v-c877e7bf]{border-top:1px solid var(--border,#e5e7eb);margin-top:24px;padding-top:16px}.channel-commission[data-v-c877e7bf]{background:var(--bg,#f8fafc);border-radius:8px;margin:16px 0}details[data-v-c877e7bf]{margin-top:16px}li[data-v-c877e7bf]{margin:8px 0}pre[data-v-8dd45cfc]{background:#f6f9fa;border-radius:6px;padding:16px;overflow:auto}.message[data-v-29542766]{border-top:1px solid var(--line);margin-top:16px}pre[data-v-9d925f88]{background:#f6f9fa;border-radius:6px;padding:16px;overflow:auto}.drawer-mask[data-v-0952abaa]{z-index:20;background:#0d1f3366;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer[data-v-0952abaa]{background:#fff;flex-direction:column;width:min(620px,100vw);height:100vh;display:flex;box-shadow:-18px 0 50px #10213a33}.drawer-heading[data-v-0952abaa]{border-bottom:1px solid var(--line,#e2e8f0);justify-content:space-between;align-items:flex-start;padding:20px 22px 14px;display:flex}.drawer-heading h2[data-v-0952abaa]{margin:0;font-size:17px}.drawer-heading p[data-v-0952abaa]{color:var(--muted);margin:5px 0 0;font-size:12px}.drawer-heading button[data-v-0952abaa]{color:var(--muted);background:0 0;border:0;padding:2px 9px;font-size:20px;line-height:1}.drawer-meta[data-v-0952abaa]{align-items:flex-end;gap:10px;padding:14px 22px 4px;display:flex}.drawer-meta label[data-v-0952abaa]{flex:1;margin:0;font-size:12px}.drawer-meta select[data-v-0952abaa]{margin-top:6px}.drawer-meta .tag[data-v-0952abaa]{align-self:center}.danger-note[data-v-0952abaa]{color:#8a6420;background:#fff8e8;border-radius:7px;margin:12px 22px 0;padding:10px 12px;font-size:12px;line-height:1.7}.notice[data-v-0952abaa]{color:var(--muted);margin:12px 22px 0;font-size:13px}.frame-log[data-v-0952abaa]{flex:1;align-content:start;gap:12px;padding:14px 22px;display:grid;overflow:auto}.frame-empty[data-v-0952abaa]{color:var(--muted);text-align:center;background:#f8fbfc;border:1px dashed #d8e2e8;border-radius:8px;margin:22px 0;padding:18px;font-size:13px}.frame-row[data-v-0952abaa]{border:1px solid var(--line,#e2e8f0);background:#fbfdfe;border-radius:9px;padding:11px 13px}.frame-head[data-v-0952abaa]{align-items:center;gap:8px;font-size:12px;display:flex}.frame-head .time[data-v-0952abaa]{color:var(--muted);margin-right:auto}.frame-head .tag[data-v-0952abaa]{margin:0}.frame-block[data-v-0952abaa]{grid-template-columns:98px 1fr auto;align-items:start;gap:8px;margin-top:9px;font-size:12px;display:grid}.direction[data-v-0952abaa]{color:#42566f;padding-top:5px;font-weight:600}.direction.recv[data-v-0952abaa]{color:#258658}.direction.send[data-v-0952abaa]{color:#2167d5}.frame-block code[data-v-0952abaa]{overflow-wrap:anywhere;color:#23364d;background:#eef3f8;border-radius:6px;padding:6px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.65;display:block}.link[data-v-0952abaa]{color:var(--primary,#087f8c);background:0 0;border:0;min-height:auto;padding:4px 2px;font-size:12px}.frame-note[data-v-0952abaa]{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.6}.pagination[data-v-0952abaa]{color:var(--muted);justify-content:flex-end;align-items:center;gap:8px;padding:8px 22px;font-size:12px;display:flex}.pagination button[data-v-0952abaa]{padding:5px 11px;font-size:12px}.composer[data-v-0952abaa]{border-top:1px solid var(--line,#e2e8f0);background:#fbfdfe;gap:10px;padding:14px 22px 18px;display:grid}.composer label[data-v-0952abaa]{margin:0;font-size:12px}.composer textarea[data-v-0952abaa]{resize:vertical;border:1px solid #d8e2e8;border-radius:6px;width:100%;margin-top:6px;padding:9px 11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.composer .inline[data-v-0952abaa]{align-items:center;gap:7px;display:inline-flex}.composer .inline input[data-v-0952abaa]{width:auto;margin:0}.composer-options[data-v-0952abaa]{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.send-button[data-v-0952abaa]{width:100%}.tag.warn[data-v-0952abaa]{color:#96651a;background:#fff3dc}.panel-note[data-v-c5ae3ef9]{margin:5px 0 0}.required[data-v-c5ae3ef9]{color:#d92d20;margin-right:3px}.radio-field[data-v-c5ae3ef9]{margin:18px 0 0;font-size:14px}.form-columns .span-all[data-v-c5ae3ef9]{grid-column:1/-1}.radio-label[data-v-c5ae3ef9]{display:block}.radio-group[data-v-c5ae3ef9]{flex-wrap:wrap;gap:8px 18px;margin-top:9px;display:flex}.radio-option[data-v-c5ae3ef9]{cursor:pointer;align-items:center;gap:6px;margin:0;font-size:14px;display:inline-flex}.radio-option input[type=radio][data-v-c5ae3ef9]{accent-color:#2868df;background:0 0;border:0;width:auto;margin:0;padding:0}.radio-option input[type=radio][data-v-c5ae3ef9]:focus{outline-offset:2px;outline:2px solid #aacbff}.field-block label[data-v-c5ae3ef9]{margin-bottom:0}.advanced-settings[data-v-c5ae3ef9]{border-top:1px solid #edf0f5;margin-top:18px;padding-top:14px}.advanced-settings summary[data-v-c5ae3ef9]{color:#2868df;cursor:pointer;font-size:14px}.advanced-settings .form-columns[data-v-c5ae3ef9]{margin-top:2px}.formula-help[data-v-c5ae3ef9]{background:#f8fafd;border:1px solid #e3eaf4;border-radius:8px;margin:8px 0 0;padding:10px 12px}.formula-help summary[data-v-c5ae3ef9]{color:#2868df;cursor:pointer}.formula-help p[data-v-c5ae3ef9]{color:#5b6577;margin:8px 0 0}.formula-help ul[data-v-c5ae3ef9]{color:#5b6577;flex-wrap:wrap;gap:6px 22px;margin:8px 0 0;padding-left:18px;display:flex}.formula-help code[data-v-c5ae3ef9]{color:#2b3a52;background:#eef2f8;border-radius:4px;padding:1px 5px}.field-hint[data-v-c5ae3ef9]{color:#486581;background:#f2f7ff;border:1px solid #d8e6fb;border-radius:7px;margin:14px 0 0;padding:10px 12px;font-size:13px}.device-detail-page[data-v-69d2e139]{max-width:1800px;margin:auto;padding:25px 30px 36px}.detail-heading[data-v-69d2e139]{margin-bottom:14px}.lifecycle-notice[data-v-69d2e139]{border:1px solid var(--line);background:var(--paper);border-radius:7px;margin-bottom:12px;padding:11px 14px;font-size:12px}.lifecycle-notice .tag[data-v-69d2e139]{margin:0 3px}.lifecycle-notice .enabled[data-v-69d2e139]{color:#258658;background:#e8f6ef}.lifecycle-notice .disabled[data-v-69d2e139]{color:#97712f;background:#fff8e8}.lifecycle-notice .retired[data-v-69d2e139]{color:#6d7d8b;background:#f2f2f4}.alarm-banner[data-v-69d2e139]{margin-bottom:14px}.detail-tabs[data-v-69d2e139]{flex-wrap:wrap}.tab-panel[data-v-69d2e139]{margin-bottom:18px}.kpis[data-v-69d2e139]{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.kpi[data-v-69d2e139]{border:1px solid var(--line,#e2e8f0);background:#fff;border-radius:12px;padding:16px 18px}.kpi>span[data-v-69d2e139]{color:var(--muted);font-size:13px}.kpi>b[data-v-69d2e139]{margin:6px 0 2px;font-size:26px;display:block}.kpi em[data-v-69d2e139]{color:var(--muted);font-size:12px;font-style:normal;font-weight:400}.kpis .empty[data-v-69d2e139]{grid-column:1/-1}.install-panel[data-v-69d2e139],.live-grid[data-v-69d2e139]{margin-bottom:18px}.grid.wide[data-v-69d2e139]{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:18px;display:grid}.control-panel[data-v-69d2e139]{align-self:start}.control-body[data-v-69d2e139]{gap:14px;padding:16px 21px 18px;display:grid}.control-facts[data-v-69d2e139]{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.control-facts>div[data-v-69d2e139]{border:1px solid var(--line,#e2e8f0);background:#f8fbfc;border-radius:8px;padding:11px 13px}.control-facts dt[data-v-69d2e139]{color:var(--muted);margin:0 0 5px;font-size:11px}.control-facts dd[data-v-69d2e139]{margin:0;font-size:14px}.control-facts .ok[data-v-69d2e139]{color:#258658;background:#e8f6ef}.control-source[data-v-69d2e139]{color:var(--muted);margin:0;font-size:12px;line-height:1.7}@media (width<=1100px){.kpis[data-v-69d2e139]{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.wide[data-v-69d2e139]{grid-template-columns:1fr}}@media (width<=600px){.kpis[data-v-69d2e139]{grid-template-columns:1fr}}.kv[data-v-69d2e139]{grid-template-columns:120px 1fr;gap:8px 16px;margin:0;padding:16px 21px;display:grid}.kv dt[data-v-69d2e139]{color:var(--muted)}.kv dd[data-v-69d2e139]{margin:0}.panel-note[data-v-69d2e139]{margin:16px 21px}.config-summary p[data-v-69d2e139]{margin:8px 0}.config-actions[data-v-69d2e139]{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.link-button[data-v-69d2e139]{min-height:0;color:var(--primary);text-align:left;background:0 0;border:0;padding:0}.variable-note[data-v-69d2e139]{margin:14px 21px}.variable-actions[data-v-69d2e139]{flex-wrap:wrap;gap:8px;display:flex}.extension-tag[data-v-69d2e139]{color:#2868df;vertical-align:middle;background:#eaf1ff;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:400}.highlighted[data-v-69d2e139]{background:var(--pale)}.panel-body[data-v-69d2e139]{padding:16px 21px}.panel-note[data-v-8320d928]{margin:5px 0 0}.required[data-v-8320d928]{color:#d92d20;margin-right:3px}.gateway-filter[data-v-8320d928]{flex-wrap:wrap;align-items:end;gap:14px;padding:16px 24px 0;display:flex}.gateway-filter label[data-v-8320d928]{min-width:170px;margin:0}.gateway-filter label[data-v-8320d928]:last-child{flex:1;min-width:240px}.form-section[data-v-8320d928]{margin-top:16px}.form-section legend[data-v-8320d928]{color:#4c6574;padding:0 5px;font-size:12px}.form-section .form-columns[data-v-8320d928]{margin-top:0}.span-two[data-v-8320d928]{grid-column:span 2}.field-note[data-v-8320d928]{margin:14px 0 0;line-height:1.7}.devices-count[data-v-8320d928]{color:#2868df;cursor:pointer;background:#edf4ff;border:0;border-radius:12px;place-items:center;min-width:52px;height:24px;padding:0 8px;font-size:13px;display:inline-grid}.devices-count[data-v-8320d928]:hover{background:#dce9ff}.alarm-tag[data-v-8320d928]{color:#bc3947;background:#fff0f1;font-weight:600}.archive-modal[data-v-8320d928]{width:min(1000px,94vw)}.archive-modal .table-wrap[data-v-8320d928]{max-height:55vh;overflow:auto}.gateway-pagination[data-v-8320d928]{flex-wrap:wrap;justify-content:space-between}.pagination-actions[data-v-8320d928]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.page-size[data-v-8320d928]{color:#64748b;align-items:center;gap:6px;margin:0;font-size:12px;display:flex}.page-size select[data-v-8320d928]{width:auto;min-width:70px;margin:0;padding:4px 8px}.archive-modal .pagination[data-v-8320d928]{align-items:center;gap:8px;margin:0;display:flex}@media (width<=750px){.form-columns.three[data-v-8320d928]{grid-template-columns:1fr}.span-two[data-v-8320d928]{grid-column:auto}}.page-heading p[data-v-239e003c]{margin:0}.gateway-grid[data-v-239e003c]{grid-template-columns:1.1fr .9fr;align-items:start;gap:18px;display:grid}.detail-list[data-v-239e003c]{margin:0;padding:6px 24px 16px}.detail-list>div[data-v-239e003c]{border-bottom:1px solid #edf0f5;grid-template-columns:110px 1fr;gap:12px;padding:11px 0;display:grid}.detail-list>div[data-v-239e003c]:last-child{border-bottom:0}.detail-list dt[data-v-239e003c]{color:#70818e;font-size:12px}.detail-list dd[data-v-239e003c]{overflow-wrap:anywhere;margin:0;font-size:13px}.panel-note[data-v-239e003c]{margin:5px 0 0}.permission-note[data-v-239e003c]{margin:0 0 18px;padding:22px 24px}.required[data-v-239e003c]{color:#d92d20;margin-right:3px}.form-section[data-v-239e003c]{margin-top:16px}.form-section legend[data-v-239e003c]{color:#4c6574;padding:0 5px;font-size:12px}.form-section .form-columns[data-v-239e003c]{margin-top:0}.span-two[data-v-239e003c]{grid-column:span 2}.legacy-panel[data-v-239e003c]{margin:18px 0}.legacy-heading[data-v-239e003c]{justify-content:space-between;align-items:center;padding:8px 24px 0;display:flex}.legacy-heading h3[data-v-239e003c]{margin:0;font-size:14px}.check-field input[type=checkbox][data-v-239e003c]{align-self:start;width:auto}@media (width<=1100px){.gateway-grid[data-v-239e003c]{grid-template-columns:1fr}}@media (width<=750px){.form-columns.three[data-v-239e003c]{grid-template-columns:1fr}.span-two[data-v-239e003c]{grid-column:auto}}.table-wrap table[data-v-d95a32b8]{min-width:760px}.variables-page[data-v-206cf9df]{max-width:1800px;margin:auto}.var-panel[data-v-206cf9df]{padding:0 0 8px}.var-heading[data-v-206cf9df]{padding:24px 26px 6px}.var-heading h2[data-v-206cf9df]{margin:0 0 8px;font-size:24px}.var-heading p[data-v-206cf9df]{margin:0;font-size:13px;line-height:1.7}.filter[data-v-206cf9df]{flex-wrap:wrap;align-items:flex-end;gap:12px;padding:16px 26px;display:flex}.filter label[data-v-206cf9df]{color:var(--muted);white-space:nowrap;flex-direction:row;align-items:center;gap:8px;margin:0;font-size:13px;display:flex}.filter select[data-v-206cf9df],.filter input[data-v-206cf9df]{min-width:220px;margin:0;padding:9px 11px}.var-notice[data-v-206cf9df]{color:#2b625d;background:#eef8f6;border:1px solid #d5ece8;border-radius:7px;margin:0 26px 10px;padding:11px 15px;font-size:13px;line-height:1.7}.extension-gate[data-v-206cf9df]{margin:0 26px 12px;font-size:13px;line-height:1.7}.var-section[data-v-206cf9df]{border:1px solid var(--line,#e2e8f0);background:#fbfdff;border-radius:8px;margin:14px 26px;padding:12px 16px}.var-section summary[data-v-206cf9df]{cursor:pointer;font-size:13px;font-weight:600}.var-section p[data-v-206cf9df]{font-size:13px;line-height:1.7}.var-section label[data-v-206cf9df]{align-items:center;gap:10px;margin:6px 12px 6px 0;font-size:13px;display:inline-flex}.var-section select[data-v-206cf9df]{width:auto;margin:0;padding:7px 10px}.var-table small[data-v-206cf9df]{margin-top:3px;display:block}.var-table td[data-v-206cf9df]{vertical-align:top}.table-note[data-v-206cf9df]{margin:0 26px 14px}.issue-list[data-v-206cf9df]{margin:0 0 14px;padding:12px 15px 12px 32px}.issue-list li[data-v-206cf9df]{margin:4px 0}.link-button[data-v-206cf9df]{min-height:0;color:var(--primary);background:0 0;border:0;padding:0}.link-button[data-v-206cf9df]:hover{text-decoration:underline}.danger-link[data-v-206cf9df]{color:#c8424b;margin-left:10px}.extension-tag[data-v-206cf9df]{color:#2868df;background:#eaf1ff;margin-top:6px}fieldset[data-v-0ac76619]{border:0;margin:0;padding:0}textarea[data-v-0ac76619]{width:100%;padding:12px;font-family:monospace}fieldset[data-v-866f2f4f]{border:0;min-width:0;margin:0;padding:0}textarea[data-v-866f2f4f]{border:1px solid var(--line);resize:vertical;border-radius:6px;width:100%;padding:12px;font-family:monospace}.compare[data-v-866f2f4f]{align-items:center;gap:10px;margin:16px 0;display:flex}.compare input[data-v-866f2f4f]{width:auto;margin:0}.result[data-v-866f2f4f]{margin-top:20px}code[data-v-866f2f4f]{overflow-wrap:anywhere}.diagnostic-inputs[data-v-21587efe]{border:0;min-width:0;margin:0;padding:0}textarea[data-v-21587efe]{border:1px solid var(--line);resize:vertical;border-radius:6px;width:100%;padding:12px;font-family:monospace}.diagnostic-result[data-v-21587efe]{margin-top:20px}code[data-v-21587efe]{overflow-wrap:anywhere}td[data-v-ed6109d6]{vertical-align:top;min-width:155px}td[data-v-ed6109d6]:first-child{min-width:190px}td label[data-v-ed6109d6]{white-space:nowrap;margin:0 0 8px;font-size:12px;display:block}td input[data-v-ed6109d6],td select[data-v-ed6109d6]{width:100%;min-width:120px;margin-top:4px}.radio-field[data-v-ed6109d6]{margin:0 0 8px;font-size:12px}.radio-label[data-v-ed6109d6]{display:block}.radio-group[data-v-ed6109d6]{flex-direction:column;gap:4px;margin-top:4px;display:flex}.radio-option[data-v-ed6109d6]{white-space:nowrap;cursor:pointer;align-items:center;gap:6px;font-size:12px;display:inline-flex;margin:0!important}td .radio-option input[type=radio][data-v-ed6109d6]{accent-color:#2868df;background:0 0;border:0;width:auto;min-width:0;margin:0;padding:0}.radio-option input[type=radio][data-v-ed6109d6]:focus{outline-offset:2px;outline:2px solid #aacbff}@media (width<=700px){.table-wrap[data-v-ed6109d6]{overflow-x:auto}}code[data-v-2c076eaf]{overflow-wrap:anywhere;font-size:11px}textarea[data-v-2c076eaf]{border:1px solid var(--line);resize:vertical;border-radius:6px;width:100%;padding:12px}.mobile-list[data-v-2c076eaf]{display:none}@media (width<=700px){.desktop-table[data-v-2c076eaf]{display:none}.mobile-list[data-v-2c076eaf]{display:block}.mobile-row[data-v-2c076eaf],.mobile-evidence[data-v-2c076eaf]{border-bottom:1px solid var(--line);padding:14px 12px}.mobile-row[data-v-2c076eaf]:last-child,.mobile-evidence[data-v-2c076eaf]:last-child{border-bottom:0}.mobile-row[data-v-2c076eaf]{justify-content:space-between;gap:8px;display:flex}.mobile-row>div[data-v-2c076eaf]:first-child{min-width:0}.mobile-row>div[data-v-2c076eaf]:last-child{flex:none;align-content:center;justify-items:end;gap:8px;display:grid}.mobile-row small[data-v-2c076eaf],.mobile-evidence small[data-v-2c076eaf]{color:var(--muted);overflow-wrap:anywhere;margin-top:5px;display:block}.mobile-evidence-head[data-v-2c076eaf]{justify-content:space-between;gap:8px;display:flex}.mobile-evidence-head strong[data-v-2c076eaf]{overflow-wrap:anywhere}.mobile-evidence p[data-v-2c076eaf]{margin:8px 0}.mobile-evidence code[data-v-2c076eaf]{overflow-wrap:anywhere;display:block}}.driver-filters[data-v-cab56850]{flex-wrap:wrap;gap:12px;padding:16px 21px;display:flex}.driver-filters input[data-v-cab56850]{flex:260px;max-width:440px;margin:0}.driver-filters select[data-v-cab56850]{flex:0 200px;margin:0}.protocol-references[data-v-443c38b7]{max-height:min(72vh,760px);overflow-y:auto}.protocol-references section+section[data-v-443c38b7]{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.reference-heading[data-v-443c38b7]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.reference-heading h3[data-v-443c38b7]{margin:0;font-size:15px}.tabs[data-v-443c38b7]{margin:0}.comparison-selectors[data-v-443c38b7]{flex-wrap:wrap;gap:12px;display:flex}.comparison-selectors label[data-v-443c38b7]{white-space:nowrap;align-items:center;gap:7px;display:flex}.comparison-selectors select[data-v-443c38b7]{width:74px;margin:0}.protocol-references table[data-v-443c38b7]{table-layout:auto;width:100%;min-width:580px}.protocol-references td[data-v-443c38b7]{overflow-wrap:anywhere}.protocol-references td[data-v-443c38b7]:first-child{width:25%}.protocol-references td small[data-v-443c38b7]{display:block}.changed[data-v-443c38b7]{background:#eef8f7}.mobile-references[data-v-443c38b7],.mobile-comparison[data-v-443c38b7]{display:none}@media (width<=600px){.protocol-references .table-wrap[data-v-443c38b7]{display:none}.mobile-references[data-v-443c38b7],.mobile-comparison[data-v-443c38b7]{display:block}.mobile-reference-row[data-v-443c38b7],.mobile-comparison-row[data-v-443c38b7]{border-bottom:1px solid var(--line);padding:12px 0}.mobile-reference-row p[data-v-443c38b7]{margin:8px 0;font-size:12px}.mobile-comparison-row[data-v-443c38b7]{grid-template-columns:1fr 1fr;gap:8px;font-size:12px;display:grid}.mobile-comparison-row strong[data-v-443c38b7]{grid-column:1/-1}.mobile-reference-row button[data-v-443c38b7]{margin-top:4px}}.capability-context[data-v-433215c4]{background:#eef8f6;border:1px solid #d5ece8;border-radius:7px;margin:12px 0;padding:10px 13px;font-size:13px;line-height:1.7}.capability-context p[data-v-433215c4]{margin:2px 0}.protocol-modal[data-v-433215c4]{width:760px}.form-columns.single[data-v-433215c4]{grid-template-columns:1fr}.parameter-group legend[data-v-433215c4]{color:#4c6574;padding:0 4px;font-size:12px}.parameter-group .check-label[data-v-433215c4]{margin:6px 0 0}.field-note[data-v-433215c4]{margin:8px 0 2px;line-height:1.7}.panel-note[data-v-5c88d46e]{margin:5px 0 0}.filters[data-v-5c88d46e]{background:#fbfcfe;border-bottom:1px solid #edf0f5;flex-wrap:wrap;align-items:end;gap:16px;padding:16px 24px;display:flex}.filters label[data-v-5c88d46e]{min-width:220px;margin:0}.filters input[data-v-5c88d46e],.filters select[data-v-5c88d46e]{margin-top:6px}.filter-actions[data-v-5c88d46e]{gap:8px;padding-bottom:1px;display:flex}.count-badge[data-v-5c88d46e]{color:#2868df;cursor:pointer;background:#edf4ff;border:0;border-radius:12px;place-items:center;min-width:26px;height:24px;padding:0 8px;font-size:13px;display:inline-grid}.count-badge[data-v-5c88d46e]:hover{background:#dce9ff}.alarm-tag[data-v-5c88d46e]{color:#bc3947;background:#fff0f1;font-weight:600}.pagination select[data-v-5c88d46e]{width:auto;margin:0 4px 0 0;padding:7px 9px}.archive-modal[data-v-5c88d46e]{width:min(900px,94vw)}.archive-modal .table-wrap[data-v-5c88d46e]{max-height:55vh;overflow:auto}.archive-modal .pagination[data-v-5c88d46e]{align-items:center;gap:8px;margin:0;display:flex}@media (width<=900px){.filters label[data-v-5c88d46e]{min-width:100%}}.editor-fieldset[data-v-d5f8ae4b]{border:0;min-width:0;margin:0;padding:0}.panel-note[data-v-d5f8ae4b]{margin:5px 0 0}.required[data-v-d5f8ae4b]{color:#d92d20;margin-right:3px}.radio-field[data-v-d5f8ae4b]{margin:18px 0 0;font-size:14px}.form-columns .span-all[data-v-d5f8ae4b]{grid-column:1/-1}.radio-label[data-v-d5f8ae4b]{display:block}.radio-group[data-v-d5f8ae4b]{flex-wrap:wrap;gap:8px 18px;margin-top:9px;display:flex}.radio-option[data-v-d5f8ae4b]{cursor:pointer;align-items:center;gap:6px;margin:0;font-size:14px;display:inline-flex}.radio-option input[type=radio][data-v-d5f8ae4b]{accent-color:#2868df;background:0 0;border:0;width:auto;margin:0;padding:0}.radio-option input[type=radio][data-v-d5f8ae4b]:focus{outline-offset:2px;outline:2px solid #aacbff}.field-block label[data-v-d5f8ae4b]{margin-bottom:0}.panel+.panel[data-v-d5f8ae4b]{margin-top:20px}.endpoint-block[data-v-d5f8ae4b]{border-top:1px solid #edf0f5;margin-top:14px;padding-top:2px}.endpoint-head[data-v-d5f8ae4b]{align-items:flex-start;margin-top:0}.endpoint-head h3[data-v-d5f8ae4b]{margin:0}.endpoint-note[data-v-d5f8ae4b]{max-width:900px;margin:5px 0 0}.endpoint-actions[data-v-d5f8ae4b]{flex-shrink:0;gap:10px;display:flex}.endpoint-actions .link-button[data-v-d5f8ae4b]{color:#2868df;background:0 0;border:0;padding:9px 4px}.endpoint-actions .link-button[data-v-d5f8ae4b]:hover{text-decoration:underline}.endpoint-table[data-v-d5f8ae4b]{border:1px solid #e8edf5;border-radius:10px;margin-top:14px}.endpoint-table th[data-v-d5f8ae4b],.endpoint-table td[data-v-d5f8ae4b]{vertical-align:middle;padding:12px 16px}.endpoint-table td[data-v-d5f8ae4b]:first-child{width:180px}.endpoint-table td[data-v-d5f8ae4b]:nth-child(2){min-width:280px}.endpoint-table input[data-v-d5f8ae4b],.endpoint-table select[data-v-d5f8ae4b]{min-width:0;margin-top:0}.endpoint-table td small[data-v-d5f8ae4b]{margin-top:3px}.endpoint-table button.danger[data-v-d5f8ae4b]{color:#fff;background:#c8424b;border-color:#c8424b}.endpoint-table button.danger[data-v-d5f8ae4b]:hover:not(:disabled){background:#a9343d;border-color:#a9343d}.endpoint-table button.danger[data-v-d5f8ae4b]:disabled{color:#a9787d;background:#f4e6e8;border-color:#e7cfd2}.endpoint-defaults[data-v-d5f8ae4b]{background:#fbfcfe;border:1px solid #e8edf5;border-radius:10px;margin-top:14px;padding:12px 16px}.endpoint-defaults summary[data-v-d5f8ae4b]{color:#2868df;cursor:pointer;font-size:14px}.endpoint-defaults-body[data-v-d5f8ae4b]{flex-wrap:wrap;align-items:flex-end;gap:18px;margin-top:8px;display:flex}.endpoint-defaults-body label[data-v-d5f8ae4b]{flex:0 460px;margin:0}.endpoint-defaults-body p[data-v-d5f8ae4b]{flex:320px;max-width:640px;margin:0 0 11px}.single-endpoint[data-v-d5f8ae4b]{max-width:680px}.single-endpoint p[data-v-d5f8ae4b]{margin:6px 0 0}.endpoint-derived[data-v-d5f8ae4b]{color:#5b6577;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:10px;font-size:13px;display:flex}.endpoint-derived .tag[data-v-d5f8ae4b],.endpoint-derived small[data-v-d5f8ae4b]{margin:0}.advanced-settings[data-v-d5f8ae4b]{border-top:1px solid #edf0f5;margin-top:18px;padding-top:14px}.advanced-settings summary[data-v-d5f8ae4b]{color:#2868df;cursor:pointer;font-size:14px}.advanced-settings .form-columns[data-v-d5f8ae4b]{margin-top:2px}.formula-help[data-v-d5f8ae4b]{background:#f8fafd;border:1px solid #e3eaf4;border-radius:8px;margin:8px 0 0;padding:10px 12px}.formula-help summary[data-v-d5f8ae4b]{color:#2868df;cursor:pointer}.formula-help p[data-v-d5f8ae4b]{color:#5b6577;margin:8px 0 0}.formula-help ul[data-v-d5f8ae4b]{color:#5b6577;flex-wrap:wrap;gap:6px 22px;margin:8px 0 0;padding-left:18px;display:flex}.formula-help code[data-v-d5f8ae4b]{color:#2b3a52;background:#eef2f8;border-radius:4px;padding:1px 5px}.variable-panel[data-v-d5f8ae4b]{margin-top:20px}.variable-toolbar[data-v-d5f8ae4b]{background:#fbfcfe;border-bottom:1px solid #edf0f5;align-items:center;gap:14px;padding:14px 24px;display:flex}.variable-toolbar .tag[data-v-d5f8ae4b]{margin:0}.variable-toolbar input[data-v-d5f8ae4b]{width:300px;margin:0}.variable-toolbar .archive-button[data-v-d5f8ae4b]{margin-left:auto}.field-hint[data-v-d5f8ae4b]{color:#486581;background:#f2f7ff;border:1px solid #d8e6fb;border-radius:7px;margin:14px 0 0;padding:10px 12px;font-size:13px}.dirty-bar[data-v-d5f8ae4b]{z-index:9;color:#8a6524;background:#fffaf0;border:1px solid #f0d9b5;border-radius:10px;align-items:center;gap:16px;max-width:calc(100vw - 32px);padding:11px 14px 11px 18px;font-size:13px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 34px #10213a26}.dirty-bar button[data-v-d5f8ae4b]{white-space:nowrap;margin:0}.dirty-bar button.primary[data-v-d5f8ae4b]{color:#fff}.import-body[data-v-d5f8ae4b]{flex-direction:column;gap:10px;display:flex}.import-help[data-v-d5f8ae4b]{color:#5b6577;background:#f8fafd;border:1px solid #e3eaf4;border-radius:10px;padding:12px 16px;font-size:13px;line-height:1.7}.import-help p[data-v-d5f8ae4b]{margin:0 0 4px}.import-help ul[data-v-d5f8ae4b]{margin:4px 0 6px;padding-left:18px}.import-help code[data-v-d5f8ae4b]{color:#2b3a52;background:#eef2f8;border-radius:4px;padding:1px 5px}.import-help pre[data-v-d5f8ae4b]{color:#22314a;white-space:pre-wrap;background:#eef3f9;border-radius:8px;margin:4px 0 8px;padding:10px 12px;font-size:12px;line-height:1.7}.import-help button[data-v-d5f8ae4b]{margin-top:2px}.import-label[data-v-d5f8ae4b]{margin:2px 0 0;font-size:13px}.import-textarea[data-v-d5f8ae4b]{resize:vertical;box-sizing:border-box;border:1px solid #d8e2e8;border-radius:8px;width:100%;min-height:220px;margin-top:0;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.7}.import-errors[data-v-d5f8ae4b]{white-space:pre-line}@media (width<=900px){.endpoint-head[data-v-d5f8ae4b]{flex-direction:column;gap:12px}.endpoint-defaults-body[data-v-d5f8ae4b]{align-items:stretch}.variable-toolbar input[data-v-d5f8ae4b]{width:100%}}.check-col[data-v-d5f8ae4b]{text-align:center;width:38px}.check-col input[data-v-d5f8ae4b]{width:auto;margin:0}.alarm-source-tabs[data-v-8eb891ae]{border-bottom:1px solid var(--border,#dce2e8);gap:4px;margin-bottom:18px;display:flex}.alarm-source-tabs a[data-v-8eb891ae]{min-height:40px;color:inherit;border-bottom:2px solid #0000;align-items:center;padding:8px 16px;text-decoration:none;display:inline-flex}.alarm-source-tabs a[aria-current=page][data-v-8eb891ae]{color:#1765a5;background:0 0;border-bottom-color:#1765a5;font-weight:600}.alarm-source-tabs a[data-v-8eb891ae]:focus-visible{outline-offset:-2px;outline:2px solid #1765a5}.menu-layout[data-v-52eb7e91]{grid-template-columns:minmax(0,1.55fr) minmax(340px,.85fr);align-items:start;gap:18px;display:grid}.menu-layout .panel[data-v-52eb7e91]{margin-bottom:0;overflow:hidden}.menu-tree-panel[data-v-52eb7e91]{min-width:0}.panel-sub[data-v-52eb7e91]{color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.5}.menu-search[data-v-52eb7e91]{border-bottom:1px solid var(--line);background:#fbfcfd;padding:12px 16px}.menu-search input[data-v-52eb7e91]{margin:0}.drag-hint[data-v-52eb7e91]{color:var(--muted);margin:7px 0 0;font-size:10px;line-height:1.5}.menu-tree[data-v-52eb7e91]{scrollbar-width:thin;max-height:calc(100vh - 280px);padding:6px 8px 10px;overflow:auto}.menu-group[data-v-52eb7e91]{margin:4px 0}.menu-group-head[data-v-52eb7e91]{background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:2px;padding-left:2px;display:flex}.menu-group-head[data-v-52eb7e91]:hover{background:#f1f7f7}.menu-group-head.active[data-v-52eb7e91]{background:var(--pale);border-color:#c4e5e2}.menu-group-head.dragging[data-v-52eb7e91],.menu-item-wrap.dragging[data-v-52eb7e91]{opacity:.38}.menu-group-head.drop-before[data-v-52eb7e91],.menu-item-wrap.drop-before[data-v-52eb7e91]{box-shadow:inset 0 2px 0 var(--primary)}.menu-group-head.drop-after[data-v-52eb7e91],.menu-item-wrap.drop-after[data-v-52eb7e91]{box-shadow:inset 0 -2px 0 var(--primary)}.drag-handle[data-v-52eb7e91]{text-align:center;color:#9db0b8;cursor:grab;-webkit-user-select:none;user-select:none;opacity:.5;flex-shrink:0;width:18px;font-size:14px;line-height:1;transition:opacity .12s,color .12s}.drag-handle[data-v-52eb7e91]:hover{opacity:1;color:var(--primary)}.drag-handle[data-v-52eb7e91]:active{cursor:grabbing}.drag-handle.small[data-v-52eb7e91]{width:16px;font-size:12px}.drag-handle.disabled[data-v-52eb7e91]{cursor:not-allowed;opacity:.2}.menu-group-toggle[data-v-52eb7e91]{text-align:left;color:#4b6673;background:0 0;border:1px solid #0000;border-radius:6px;flex:1;align-items:center;gap:9px;min-width:0;min-height:0;padding:8px 10px 8px 4px;display:flex}.menu-group-toggle[data-v-52eb7e91]:hover{color:var(--primary);background:0 0;border-color:#0000}.menu-group-icon[data-v-52eb7e91]{text-align:center;color:#5c7c88;width:20px;font-size:15px}.menu-group-title[data-v-52eb7e91]{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;font-weight:650;overflow:hidden}.menu-group-count[data-v-52eb7e91]{color:var(--muted);background:#edf3f4;border-radius:99px;padding:1px 7px;font-size:10px}.menu-group-chevron[data-v-52eb7e91]{color:#8ba0aa;font-size:15px;transition:transform .15s}.menu-group-chevron.open[data-v-52eb7e91]{transform:rotate(90deg)}.menu-group-tools[data-v-52eb7e91]{opacity:0;align-items:center;gap:2px;padding-right:6px;transition:opacity .12s;display:flex}.menu-group-head:hover .menu-group-tools[data-v-52eb7e91],.menu-group-head.active .menu-group-tools[data-v-52eb7e91]{opacity:1}.menu-group-tools button[data-v-52eb7e91]{color:#7d929d;background:0 0;border:1px solid #0000;border-radius:4px;min-height:0;padding:2px 6px;font-size:10px}.menu-group-tools button[data-v-52eb7e91]:hover:not(:disabled){color:var(--primary);background:#fff;border-color:#d5e3e6}.menu-group-tools button.active[data-v-52eb7e91]{color:var(--primary);background:#fff;border-color:#c4e5e2}.menu-group-items[data-v-52eb7e91]{padding:2px 0 5px}.menu-item-wrap[data-v-52eb7e91]{border-radius:6px;align-items:center;gap:2px;margin:1px 0;padding-left:26px;display:flex}.menu-item-row[data-v-52eb7e91]{text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;flex:1;align-items:center;gap:9px;min-width:0;min-height:0;padding:9px 10px 9px 4px;display:flex}.menu-item-row[data-v-52eb7e91]:hover{color:inherit;background:#f4f8f9;border-color:#0000}.menu-item-row.active[data-v-52eb7e91]{background:var(--pale);border-color:#c4e5e2}.menu-item-dot[data-v-52eb7e91]{background:#b6c8ce;border-radius:50%;flex-shrink:0;width:6px;height:6px}.menu-item-row.active .menu-item-dot[data-v-52eb7e91]{background:var(--primary)}.menu-item-copy[data-v-52eb7e91]{flex:1;min-width:0}.menu-item-copy b[data-v-52eb7e91]{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;display:block;overflow:hidden}.menu-item-copy small[data-v-52eb7e91]{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:10px;display:block;overflow:hidden}.menu-item-row .tag[data-v-52eb7e91]{flex-shrink:0;margin:0;padding:2px 7px;font-size:10px}.menu-list-note[data-v-52eb7e91]{border-top:1px solid var(--line);color:var(--muted);background:#fbfcfd;margin:0;padding:11px 16px 13px;font-size:10px;line-height:1.7}.menu-form-panel[data-v-52eb7e91]{position:sticky;top:18px}.menu-form-body[data-v-52eb7e91]{padding:4px 18px 18px}.menu-form-grid[data-v-52eb7e91]{grid-template-columns:1fr;gap:0;display:grid}.menu-form-grid label[data-v-52eb7e91]{margin-top:14px}.menu-form-grid small[data-v-52eb7e91]{line-height:1.65}.menu-switches[data-v-52eb7e91]{align-items:center;gap:22px;margin-top:16px;display:flex}.menu-switch[data-v-52eb7e91]{color:#4c6574;white-space:nowrap;align-items:center;gap:7px;margin:0;font-size:12px;display:inline-flex}.menu-switch input[data-v-52eb7e91]{width:16px;height:16px;accent-color:var(--primary);margin:0}.menu-hint[data-v-52eb7e91]{color:#56727b;background:#f6faf9;border:1px solid #e0ecec;border-radius:6px;margin:18px 0 0;padding:10px 12px;font-size:11px;line-height:1.7}.menu-form-foot[data-v-52eb7e91]{border-top:1px solid var(--line);justify-content:flex-end;gap:9px;margin-top:18px;padding-top:15px;display:flex}.menu-form-panel .empty p[data-v-52eb7e91]{margin:0 0 8px}.menu-form-panel .empty p[data-v-52eb7e91]:last-child{margin-bottom:0}@media (width<=1100px){.menu-layout[data-v-52eb7e91]{grid-template-columns:1fr}.menu-form-panel[data-v-52eb7e91]{position:static}.menu-tree[data-v-52eb7e91]{max-height:55vh}.menu-group-tools[data-v-52eb7e91]{opacity:1}}@media (width<=600px){.menu-form-grid[data-v-52eb7e91]{grid-template-columns:1fr}.menu-form-grid .span-two[data-v-52eb7e91]{grid-column:auto}.menu-switches[data-v-52eb7e91]{flex-direction:column;align-items:flex-start;gap:4px;padding-top:10px}}.breadcrumb[data-v-1c113c70]{color:var(--muted);margin-bottom:10px;font-size:12px}.permission-stats[data-v-1c113c70]{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.stat-card[data-v-1c113c70]{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.stat-card span[data-v-1c113c70]{color:#6b7f90;font-size:12px}.stat-card b[data-v-1c113c70]{color:#27435c;font-size:26px;font-weight:650}.stat-card small[data-v-1c113c70]{color:#8a9aa8;margin:0;font-size:11px;line-height:1.5}.risk-text[data-v-1c113c70]{color:#c0504d!important}.panel-sub[data-v-1c113c70]{color:var(--muted);margin:4px 0 0;font-size:11px}.permission-filters[data-v-1c113c70]{border-bottom:1px solid var(--line);background:#fbfcfd;grid-template-columns:minmax(180px,1.5fr) minmax(160px,1fr) minmax(150px,1fr) auto;align-items:end;gap:14px;padding:14px 24px 18px;display:grid}.permission-filters label[data-v-1c113c70]{margin:0}.permission-filters select[data-v-1c113c70],.permission-filters input[type=search][data-v-1c113c70]{margin-top:6px}.unassigned-filter[data-v-1c113c70]{white-space:nowrap;color:#4c6574;align-items:center;gap:7px;padding-bottom:11px;font-size:12px;display:inline-flex}.unassigned-filter input[data-v-1c113c70]{width:15px;height:15px;accent-color:var(--primary);margin:0}.code-cell code[data-v-1c113c70]{color:#31506b;background:#f3f6fa;border-radius:4px;padding:3px 6px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.target[data-v-1c113c70]{color:#8b9aa8;margin-top:5px;font-size:10px;display:block}.risk[data-v-1c113c70]{font-weight:600}.risk-low[data-v-1c113c70]{color:#3d7d5c;background:#edf6f0}.risk-medium[data-v-1c113c70]{color:#946c2a;background:#fdf4e3}.risk-high[data-v-1c113c70]{color:#b0473f;background:#fdecea}.risk-critical[data-v-1c113c70]{color:#9d2f3c;background:#f9e3e5}.role-cell[data-v-1c113c70]{line-height:1.9}.role-chip[data-v-1c113c70]{color:#2c62ad;background:#eef4ff;border-radius:4px;margin:0 5px 0 0;padding:2px 8px;font-size:11px;text-decoration:none;display:inline-block}.role-chip[data-v-1c113c70]:hover{background:#e0ebff}.role-chip.off[data-v-1c113c70]{color:#8b939e;background:#f2f2f4}.role-more[data-v-1c113c70]{color:#7a8b9c;font-size:11px}.tag.warn[data-v-1c113c70]{color:#946c2a;background:#fdf4e3}.permission-note[data-v-1c113c70]{border-top:1px solid var(--line);color:var(--muted);background:#fbfcfd;margin:0;padding:12px 24px 14px;font-size:11px;line-height:1.7}.link-button[data-v-1c113c70]{min-height:0;color:var(--primary);background:0 0;border:1px solid #0000;padding:4px 10px;font-size:12px}.link-button[data-v-1c113c70]:hover{background:#f4f8f9;border-color:#d5e3e6}.button-link[data-v-1c113c70]{color:#30465f;background:#fff;border:1px solid #d8e0eb;border-radius:7px;align-items:center;padding:9px 17px;font-size:13px;text-decoration:none;display:inline-flex}.button-link.primary[data-v-1c113c70]{background:var(--primary);border-color:var(--primary);color:#fff}.button-link.primary[data-v-1c113c70]:hover{background:#1857c7}@media (width<=1100px){.permission-stats[data-v-1c113c70]{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-filters[data-v-1c113c70]{grid-template-columns:1fr 1fr}.unassigned-filter[data-v-1c113c70]{padding-bottom:0}}@media (width<=650px){.permission-stats[data-v-1c113c70],.permission-filters[data-v-1c113c70]{grid-template-columns:1fr}.permission-filters label[data-v-1c113c70]{margin-top:8px}}.secret[data-v-2baa8efb]{color:#d7e3ff;overflow-wrap:anywhere;background:#0f172a;padding:.75rem;display:block}.player-panel video[data-v-1173dbd2]{aspect-ratio:16/9;object-fit:contain;background:#111;width:100%;max-height:64vh;display:block}.player-panel .error[data-v-1173dbd2]{margin:12px 20px}.video-table[data-v-1173dbd2]{overflow-x:auto}.video-table table[data-v-1173dbd2]{min-width:720px}.video-table .row-actions[data-v-1173dbd2]{white-space:nowrap}@media (width<=650px){.video-table table[data-v-1173dbd2],.video-table tbody[data-v-1173dbd2]{width:100%;min-width:0;display:block}.video-table thead[data-v-1173dbd2]{display:none}.video-table tr[data-v-1173dbd2]{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px 16px;display:grid}.video-table tr[data-v-1173dbd2]:last-child{border-bottom:0}.video-table td[data-v-1173dbd2]{overflow-wrap:anywhere;border:0;min-width:0;padding:0;display:block}.video-table td[data-v-1173dbd2]:first-child,.video-table td[data-v-1173dbd2]:last-child{grid-column:1/-1}.video-table td[data-label][data-v-1173dbd2]:before{content:attr(data-label);color:var(--muted);margin-bottom:4px;font-size:11px;display:block}.video-table .row-actions[data-v-1173dbd2]{gap:8px;display:flex}}.secret[data-v-9fffaed7]{color:#d7e3ff;overflow-wrap:anywhere;background:#0f172a;padding:.75rem;display:block}.cnmap[data-v-bc562cc0]{grid-template-columns:minmax(0,1.6fr) minmax(250px,.75fr);align-items:start;gap:22px;display:grid}.cnmap-main[data-v-bc562cc0]{min-width:0}.cnmap-side[data-v-bc562cc0]{border-left:1px solid var(--line);min-width:0;padding-left:20px}.cnmap-side small[data-v-bc562cc0]{color:var(--muted);letter-spacing:.4px;font-size:10px}.cnmap-side h3[data-v-bc562cc0]{margin:4px 0 10px;font-size:18px}.cnmap-total[data-v-bc562cc0]{letter-spacing:-1.5px;color:#123743;font-size:38px;font-weight:700;line-height:1.1}.cnmap-total span[data-v-bc562cc0]{letter-spacing:0;color:var(--muted);margin-left:6px;font-size:12px;font-weight:400}.cnmap-status[data-v-bc562cc0]{color:#5c7480;grid-template-columns:1fr 1fr;gap:8px 14px;margin:14px 0;font-size:11px;display:grid}.cnmap-status span[data-v-bc562cc0]{align-items:center;gap:6px;display:flex}.cnmap-status b[data-v-bc562cc0]{color:#223d49;margin-left:auto;font-size:12px}.cnmap-status i[data-v-bc562cc0]{border-radius:50%;width:8px;height:8px;display:inline-block}.cnmap-status i.on[data-v-bc562cc0]{background:#148c96}.cnmap-status i.wait[data-v-bc562cc0]{background:#c98a2e}.cnmap-status i.off[data-v-bc562cc0]{background:#8b9ca5}.cnmap-status i.alarm[data-v-bc562cc0]{background:#d15b45}.cnmap-kv[data-v-bc562cc0]{grid-template-columns:52px 1fr;gap:6px;margin:0 0 12px;font-size:11px;display:grid}.cnmap-kv dt[data-v-bc562cc0]{color:var(--muted)}.cnmap-kv dd[data-v-bc562cc0]{color:#36525f;margin:0}.cnmap-regions[data-v-bc562cc0]{gap:6px;display:grid}.cnmap-region[data-v-bc562cc0]{border:1px solid var(--line);background:#fbfdfd;border-radius:6px;justify-content:space-between;padding:7px 9px;font-size:12px;display:flex}.cnmap-region b[data-v-bc562cc0]{color:var(--primary)}.link[data-v-bc562cc0]{color:var(--primary);text-align:left;background:0 0;border:0;padding:8px 0}.grid.cols3[data-v-bc562cc0]{grid-template-columns:1fr 1fr 1fr;gap:16px;margin-top:16px;display:grid}@media (width<=1100px){.cnmap[data-v-bc562cc0],.grid.cols3[data-v-bc562cc0]{grid-template-columns:1fr}.cnmap-side[data-v-bc562cc0]{border-left:0;border-top:1px solid var(--line);padding:14px 0 0}}.config-filter[data-v-4c6cfcc6]{flex-wrap:wrap;align-items:end;gap:14px;padding:16px 21px 0;display:flex}.config-filter label[data-v-4c6cfcc6]{min-width:170px;margin:0}.config-filter label[data-v-4c6cfcc6]:last-child{flex:1;min-width:220px}.required[data-v-1610084a]{color:#d92d20;margin-right:3px}.rule-filter[data-v-1610084a]{flex-wrap:wrap;align-items:end;gap:14px;padding:16px 21px 0;display:flex}.rule-filter label[data-v-1610084a]{min-width:170px;margin:0}.rule-filter label[data-v-1610084a]:last-child{flex:1;min-width:220px}.capability-note[data-v-1610084a]{margin:14px 21px 18px;line-height:1.7}.rule-form-panel .form-body[data-v-1610084a]{padding-top:4px}.form-note[data-v-1610084a]{margin:14px 0 0}.alarm-filter[data-v-74f6bb64]{flex-wrap:wrap;align-items:end;gap:14px;padding:16px 21px 0;display:flex}.alarm-filter label[data-v-74f6bb64]{min-width:170px;margin:0}.editor[data-v-8bd6c7ea]{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:10px;grid-template-columns:190px minmax(0,1fr) 220px;align-items:start;gap:14px;padding:14px;display:grid}.palette[data-v-8bd6c7ea],.props[data-v-8bd6c7ea]{flex-direction:column;gap:8px;display:flex}.palette h3[data-v-8bd6c7ea],.props h3[data-v-8bd6c7ea]{margin:0 0 4px;font-size:13px}.palette button[data-v-8bd6c7ea]{text-align:left}.palette label[data-v-8bd6c7ea],.props label[data-v-8bd6c7ea]{margin:0;font-size:11px}.palette input[data-v-8bd6c7ea],.props input[data-v-8bd6c7ea],.props select[data-v-8bd6c7ea]{margin-top:3px;padding:6px 8px}.canvas-wrap[data-v-8bd6c7ea]{background:#0b1c26;border-radius:8px;min-height:520px;padding:12px;overflow:auto}.canvas[data-v-8bd6c7ea]{transform-origin:0 0;transition:transform .1s;position:relative}.node[data-v-8bd6c7ea]{cursor:move;-webkit-user-select:none;user-select:none;background:#ffffff08;border:1px dashed #3f6674;border-radius:4px;justify-content:center;align-items:center;display:flex;position:absolute;overflow:hidden}.node.selected[data-v-8bd6c7ea]{outline:2px solid #31b6bf}.node span[data-v-8bd6c7ea]{font-size:inherit;flex-direction:column;align-items:center;gap:2px;display:flex}.node small[data-v-8bd6c7ea]{opacity:.8;font-size:.55em}.node b[data-v-8bd6c7ea]{font-size:.8em;font-weight:600}.node .resize[data-v-8bd6c7ea]{cursor:nwse-resize;z-index:2;background:#fff;border:2px solid #31b6bf;border-radius:3px;width:12px;height:12px;position:absolute;bottom:0;right:0}.node .fluid[data-v-8bd6c7ea]{background:#0b2230;border-radius:4px;display:block;position:absolute;inset:0;overflow:hidden}.node .fluid em[data-v-8bd6c7ea]{color:#bfe9e7;z-index:2;font-size:12px;font-style:normal;position:absolute;top:8px;left:10px}.node .fluid i[data-v-8bd6c7ea]{background:linear-gradient(90deg,#0000,#2c6d78 25%,#4ad0cc 45%,#bff6f2 50%,#4ad0cc 55%,#2c6d78 75%,#0000) 0 0/200% 100%;border-radius:99px;animation:2.4s linear infinite canvasFlow-8bd6c7ea;position:absolute;inset:40% 8%}.node .fluid i[data-v-8bd6c7ea]:before{content:"";border:5px solid #1d4657;border-radius:99px;position:absolute;inset:-6px}@keyframes canvasFlow-8bd6c7ea{to{background-position:-200% 0}}.runtime-page[data-v-4727ea18]{background:#07141c;position:fixed;inset:0;overflow:hidden}.runtime-canvas[data-v-4727ea18]{transform-origin:0 0;position:absolute;top:0;left:0}.runtime-node[data-v-4727ea18]{background:#ffffff08;border:1px solid #2d5665;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;overflow:hidden}.runtime-node small[data-v-4727ea18]{opacity:.75;font-size:.55em}.runtime-node b[data-v-4727ea18]{font-size:.9em;font-weight:600}.line[data-v-4727ea18]{background:currentColor;width:70%;height:2px;margin-top:8px;display:block}.fluid[data-v-4727ea18]{width:86%;height:34%;margin-top:6px;display:block;position:relative}.fluid i[data-v-4727ea18]{background:linear-gradient(90deg,#0000,#2c6d78 25%,#4ad0cc 45%,#bff6f2 50%,#4ad0cc 55%,#2c6d78 75%,#0000) 0 0/200% 100%;border-radius:99px;animation:2.4s linear infinite runtimeFlow-4727ea18;position:absolute;inset:0}.fluid i[data-v-4727ea18]:before{content:"";border:4px solid #1d4657;border-radius:99px;position:absolute;inset:-5px}@keyframes runtimeFlow-4727ea18{to{background-position:-200% 0}}.spark[data-v-4727ea18]{background:linear-gradient(90deg,#4ad0cc,#4ad0cc 30%,#2c6d78 30% 55%,#4ad0cc 55% 75%,#2c6d78 75%);width:80%;height:2px;margin-top:10px;display:block;transform:skew(-20deg)}.rows[data-v-4727ea18]{flex-direction:column;gap:4px;width:80%;margin-top:8px;display:flex}.rows i[data-v-4727ea18]{background:#4ad0cc55;border-radius:2px;height:3px;display:block}.mapbox[data-v-4727ea18],.videobox[data-v-4727ea18]{opacity:.8;margin-top:6px;font-size:2em}.runtime-empty[data-v-4727ea18]{color:#9fb4c2;padding:40px;font-size:15px}.monitor[data-v-e1490f67]:fullscreen{width:100vw;height:100vh;min-height:0;overflow:auto}.monitor[data-v-e1490f67]{color:#d3e6ee;background:#07141c;min-height:100vh;padding:22px 26px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif}.monitor header[data-v-e1490f67]{border-bottom:1px solid #1d3c4a;justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.monitor h1[data-v-e1490f67]{letter-spacing:1px;margin:0 0 4px;font-size:24px}.monitor header p[data-v-e1490f67]{color:#7fa3b3;margin:0;font-size:12px}.monitor header button[data-v-e1490f67]{color:#b8d9e4;background:#0e2b38;border-color:#2a5a6b;margin-left:8px}.monitor-kpis[data-v-e1490f67]{grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0;display:grid}.monitor-kpis article[data-v-e1490f67]{background:#0b2130;border:1px solid #1d4657;border-radius:8px;padding:14px 16px}.monitor-kpis span[data-v-e1490f67]{color:#7fa3b3;font-size:12px}.monitor-kpis b[data-v-e1490f67]{color:#e5f5fa;margin:4px 0;font-size:26px;display:block}.monitor-kpis small[data-v-e1490f67]{color:#7fa3b3;font-size:11px}.monitor-grid[data-v-e1490f67]{grid-template-columns:1fr 1fr;gap:14px;display:grid}.monitor-card[data-v-e1490f67]{background:#0b2130;border:1px solid #1d4657;border-radius:8px;padding:14px 16px}.monitor-card h2[data-v-e1490f67]{color:#9fc4d1;margin:0 0 10px;font-size:14px}.m-dist[data-v-e1490f67]{grid-template-columns:110px 1fr 40px;align-items:center;gap:8px;margin:7px 0;font-size:11px;display:grid}.m-dist i[data-v-e1490f67]{background:#4ad0cc;border-radius:99px;height:6px;display:block}.m-dist b[data-v-e1490f67]{text-align:right}.monitor-card ul[data-v-e1490f67]{margin:0;padding:0;list-style:none}.monitor-card li[data-v-e1490f67]{border-bottom:1px solid #17394a;flex-direction:column;gap:2px;padding:8px 0;font-size:12px;display:flex}.monitor-card li small[data-v-e1490f67]{color:#7fa3b3}.sev[data-v-e1490f67]{border-bottom:1px solid #17394a;justify-content:space-between;padding:8px 0;font-size:12px;display:flex}.monitor-error[data-v-e1490f67]{color:#7fa3b3;font-size:12px}.binding-form[data-v-1f32353d]{background:#f9fbfe;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:1fr 1fr;gap:12px 14px;margin-top:16px;padding:14px;display:grid}.binding-form label[data-v-1f32353d]{margin:0}.binding-actions[data-v-1f32353d]{grid-column:1/-1;justify-content:flex-end;display:flex}.menu-visibility[data-v-1f32353d]{max-height:46vh;margin-top:14px;padding-right:4px;overflow:auto}.menu-vis-group[data-v-1f32353d]{border:1px solid #e6edf2;border-radius:8px;margin-bottom:10px;overflow:hidden}.menu-vis-head[data-v-1f32353d]{background:#f6f9fa;border-bottom:1px solid #e6edf2;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;display:flex}.menu-vis-head .inline-check[data-v-1f32353d]{align-items:center;gap:8px;margin:0;font-size:12px;display:inline-flex}.menu-vis-head input[data-v-1f32353d]{width:auto;margin:0}.menu-vis-items[data-v-1f32353d]{grid-template-columns:1fr 1fr;gap:2px 12px;padding:8px 12px 10px;display:grid}.menu-vis-item[data-v-1f32353d]{cursor:pointer;align-items:flex-start;gap:8px;margin:4px 0;font-size:12px;display:flex}.menu-vis-item input[data-v-1f32353d]{flex-shrink:0;width:auto;margin:2px 0}.menu-vis-item span[data-v-1f32353d]{min-width:0}.menu-vis-item b[data-v-1f32353d]{color:#31485f;font-weight:550}.menu-vis-item small[data-v-1f32353d]{color:#7a879b;overflow-wrap:anywhere;font-size:10px}.menu-vis-item.off[data-v-1f32353d]{opacity:.55;cursor:default}.inline-check[data-v-1f32353d]{align-items:center;gap:8px;margin:15px 0 0;font-size:13px;display:inline-flex}.inline-check input[data-v-1f32353d]{accent-color:#2868df;flex-shrink:0;width:15px;height:15px;margin:0}.role-module-chips[data-v-1f32353d]{flex-wrap:wrap;gap:5px;margin-bottom:3px;display:flex}.perm-module-chip[data-v-1f32353d]{color:#2c62ad;white-space:nowrap;background:#eef4ff;border-radius:4px;align-items:center;gap:5px;padding:2px 8px;font-size:11px;display:inline-flex}.perm-module-chip b[data-v-1f32353d]{color:#1f4f8f;font-weight:650}.permission-fieldset[data-v-1f32353d]{margin-top:18px}.perm-count[data-v-1f32353d]{color:#8191a7;margin-left:6px;font-size:11px;font-weight:400}.permission-toolbar[data-v-1f32353d]{align-items:center;gap:10px;margin:2px 0 12px;display:flex}.permission-toolbar input[data-v-1f32353d]{flex:1;min-width:0;margin:0}.link-button[data-v-1f32353d]{color:#2c62ad;white-space:nowrap;background:#fff;border:1px solid #d8e0eb;border-radius:6px;min-height:0;padding:5px 9px;font-size:12px;text-decoration:none}.link-button[data-v-1f32353d]:hover{color:#2167d5;border-color:#3478eb}.permission-groups[data-v-1f32353d]{gap:10px;max-height:44vh;padding-right:3px;display:grid;overflow:auto}.permission-group[data-v-1f32353d]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.permission-group>header[data-v-1f32353d]{background:#f5f8fb;border-bottom:1px solid #e6edf2;padding:8px 11px}.module-check[data-v-1f32353d]{cursor:pointer;align-items:center;gap:8px;margin:0;font-size:12px;display:inline-flex}.module-check input[data-v-1f32353d]{accent-color:#2868df;flex-shrink:0;width:15px;height:15px;margin:0}.module-check b[data-v-1f32353d]{color:#31485f;font-weight:600}.module-check span[data-v-1f32353d]{color:#8191a7;font-size:11px}.permission-group-items[data-v-1f32353d]{grid-template-columns:1fr 1fr;gap:1px 10px;padding:5px 10px 9px;display:grid}.permission-option[data-v-1f32353d]{cursor:pointer;border-radius:5px;align-items:flex-start;gap:8px;margin:3px 0;padding:5px 6px;font-size:12px;display:flex}.permission-option[data-v-1f32353d]:hover{background:#f5f9fc}.permission-option.selected[data-v-1f32353d]{background:#eef5fb}.permission-option input[data-v-1f32353d]{accent-color:#2868df;flex-shrink:0;width:15px;height:15px;margin:2px 0 0}.permission-option>span[data-v-1f32353d]:first-of-type{color:#31485f;flex:1;min-width:0}.permission-option small[data-v-1f32353d]{color:#8191a7;overflow-wrap:anywhere;margin-top:1px;font-size:10px}.permission-option .tag[data-v-1f32353d]{flex-shrink:0;margin:0;padding:1px 6px;font-size:10px}.risk[data-v-1f32353d]{font-weight:600}.risk-low[data-v-1f32353d]{color:#3d7d5c;background:#edf6f0}.risk-medium[data-v-1f32353d]{color:#946c2a;background:#fdf4e3}.risk-high[data-v-1f32353d]{color:#b0473f;background:#fdecea}.risk-critical[data-v-1f32353d]{color:#9d2f3c;background:#f9e3e5}.role-view-head[data-v-1f32353d]{background:#f8fbfd;border:1px solid #e6edf2;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:16px;margin-top:4px;padding:12px 14px;display:flex}.role-view-head h3[data-v-1f32353d]{color:#27435c;margin:0;font-size:16px}.role-view-head code[data-v-1f32353d]{color:#6b7f90;margin-top:3px;font-size:11px;display:inline-block}.role-view-tags[data-v-1f32353d]{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.role-view-toolbar[data-v-1f32353d]{align-items:center;gap:10px;margin:14px 0 10px;display:flex}.role-view-toolbar input[data-v-1f32353d]{flex:1;min-width:0;margin:0}.role-view-groups[data-v-1f32353d]{gap:10px;max-height:46vh;padding-right:3px;display:grid;overflow:auto}.role-view-group[data-v-1f32353d]{border:1px solid #e6edf2;border-radius:8px;overflow:hidden}.role-view-group>header[data-v-1f32353d]{background:#f5f8fb;border-bottom:1px solid #e6edf2;justify-content:space-between;align-items:center;padding:7px 11px;font-size:12px;display:flex}.role-view-group>header b[data-v-1f32353d]{color:#31485f;font-weight:600}.role-view-group>header span[data-v-1f32353d]{color:#8191a7;background:#edf3f7;border-radius:99px;padding:1px 7px;font-size:10px}.role-view-chips[data-v-1f32353d]{flex-wrap:wrap;gap:6px;padding:10px 11px 12px;display:flex}.perm-chip[data-v-1f32353d]{color:#2c62ad;background:#eef4ff;border-radius:5px;flex-direction:column;gap:1px;padding:4px 8px;font-size:11px;line-height:1.35;display:inline-flex}.perm-chip small[data-v-1f32353d]{color:#6c86a6;margin:0;font-size:9px}@media (width<=750px){.binding-form[data-v-1f32353d],.menu-vis-items[data-v-1f32353d],.permission-group-items[data-v-1f32353d]{grid-template-columns:1fr}.role-view-head[data-v-1f32353d]{flex-direction:column}.role-view-tags[data-v-1f32353d]{justify-content:flex-start}}:root{color:#24344c;font-synthesis:none;background:#f4f7fb;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{color:#30465f;cursor:pointer;background:#fff;border:1px solid #d8e0eb;border-radius:7px;padding:9px 17px}button:hover{color:#2167d5;border-color:#3478eb}button:disabled{opacity:.5;cursor:default}.primary{color:#fff;background:#2868df;border-color:#2868df}.danger{color:#c8424b}.muted,small{color:#7a879b;font-size:13px}small{margin-top:5px;display:block}.brand{align-items:center;gap:12px;font-size:20px;font-weight:650;display:flex}.brand-mark{color:#fff;background:#2868df;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.brand small{font-weight:400}.login-shell{background:radial-gradient(at 10% 20%,#e2edff,#0000 60%),#f4f7fb;place-items:center;min-height:100vh;padding:36px;display:grid}.login-card{background:#fff;border:1px solid #e3eaf3;border-radius:24px;width:min(100%,1020px);padding:38px;box-shadow:0 28px 70px #264e8b15}.login-grid{grid-template-columns:1.15fr 1fr;align-items:center;gap:48px;margin-top:35px;display:grid}.hero{background:linear-gradient(140deg,#eef5ff,#f8fbff);border-radius:16px;padding:32px}.hero h1{letter-spacing:1px;margin:18px 0;font-size:36px;line-height:1.45}.hero p{color:#657a96;line-height:1.9}.hero ul{color:#446182;grid-template-columns:1fr 1fr;gap:22px;padding:0;font-size:14px;list-style:none;display:grid}.hero li:before{content:"✓";color:#2868df;margin-right:8px}.eyebrow{letter-spacing:2px;color:#6882a6;font-size:12px}.login-form{padding:16px}.login-form h2{margin-bottom:8px;font-size:26px}.login-form>.primary{width:100%;margin-top:16px}label{margin:18px 0 0;font-size:14px;display:block}input,select{color:#24344c;background:#fff;border:1px solid #d8e0eb;border-radius:7px;width:100%;margin-top:8px;padding:11px 12px;display:block}input:focus,select:focus{border-color:#2868df;outline:2px solid #aacbff}.layout{min-height:100vh;display:flex}.layout>aside{background:#fff;border-right:1px solid #e5eaf2;flex-shrink:0;width:240px;padding:27px 20px}.layout .brand{font-size:18px}.layout nav{margin-top:36px}.layout nav h3{color:#8a97a8;padding-left:14px;font-size:12px;font-weight:500}.layout nav a{color:#53677f;border-radius:8px;margin-top:6px;padding:13px 16px;text-decoration:none;display:block}.layout nav a.router-link-active{color:#2868df;background:#eaf1ff;font-weight:600}.workspace{flex:1;min-width:0}.topbar{background:#fff;border-bottom:1px solid #e5eaf2;justify-content:space-between;align-items:center;height:76px;padding:0 34px;font-size:14px;display:flex}.topbar button{margin-left:20px}.page{padding:30px 34px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;display:flex}.page h1{margin:8px 0 10px;font-size:28px}.actions{gap:10px;display:flex}.panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.panel-heading{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.panel h2,.modal h2{margin:0;font-size:17px}.tag{color:#66809e;background:#f0f4fa;border-radius:5px;padding:4px 9px;font-size:12px;display:inline-block}.ok{color:#258658;background:#e8f6ef}.off{color:#87909d;background:#f2f2f4}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;color:#78879a;background:#f8fafd;font-weight:500}td strong{font-weight:500}.row-actions{white-space:nowrap}.row-actions button{background:#f8fafd;border:1px solid #d8e0eb;border-radius:6px;margin-right:6px;padding:5px 11px}.row-actions button:last-child{margin-right:0}.row-actions button:hover:not(:disabled){color:#2167d5;background:#eef4ff;border-color:#3478eb}.row-actions button.primary{color:#fff;background:#2868df;border-color:#2868df}.row-actions button.primary:hover:not(:disabled){color:#fff;background:#1857c7;border-color:#1857c7}.row-actions button.danger{color:#fff;background:#c8424b;border-color:#c8424b}.row-actions button.danger:hover:not(:disabled){color:#fff;background:#a9343d;border-color:#a9343d}.row-actions button.danger:disabled{color:#a9787d;background:#f4e6e8;border-color:#e7cfd2}.pagination{justify-content:flex-end;align-items:center;gap:16px;padding:18px 24px;font-size:13px;display:flex}.empty{text-align:center;color:#8191a7;padding:55px}.error,.warning,.success{overflow-wrap:anywhere;border-radius:7px;padding:12px 15px;font-size:13px;line-height:1.7}.error{color:#bc3947;background:#fff0f1}.warning{color:#97712f;background:#fff8e8}.modal-mask{z-index:10;background:#12274765;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:650px;max-width:100%;max-height:90vh;overflow:auto;box-shadow:0 25px 90px #10213a30}.form-body{padding:5px 26px 25px}.modal-footer{border-top:1px solid #edf0f5;justify-content:flex-end;gap:12px;padding:18px 26px;display:flex}fieldset{border:1px solid #e2e8f0;border-radius:8px;margin-top:20px;padding:12px}.permission-grid{grid-template-columns:1fr 1fr;gap:7px;max-height:280px;display:grid;overflow:auto}.permission-grid label{align-items:start;gap:8px;margin:8px 0;font-size:13px;display:flex}.permission-grid input{width:auto;margin:3px 0}.permission-grid small{font-size:11px}.center{color:#7a879b;place-items:center;min-height:100vh;display:grid}@media (width<=850px){.layout>aside{width:185px;padding:20px 12px}.page{padding:22px 16px}.topbar{padding:0 18px}.login-grid{grid-template-columns:1fr}.hero{display:none}.login-card{max-width:500px}.page-heading{flex-wrap:wrap}}@media (width<=600px){.layout{display:block}.layout>aside{border-right:0;width:auto;padding:16px}.layout nav{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.layout nav h3{display:none}.layout nav a{padding:8px}.topbar{height:65px}.permission-grid{grid-template-columns:1fr}.login-card{padding:22px}.login-shell{padding:20px}.page h1{font-size:23px}}.tag-panel{margin-bottom:22px}.tag-items{flex-wrap:wrap;gap:20px;padding:16px 24px;display:flex}.tag-items button{border:0;padding:5px 8px}.form-columns{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.form-columns.three{grid-template-columns:repeat(3,1fr)}.wide-modal{width:1000px}.section-head{justify-content:space-between;align-items:center;margin-top:20px;display:flex}.section-head h3{font-size:15px}.endpoint-row{grid-template-columns:1fr 2fr auto;align-items:end;gap:12px;display:grid}.variable-editor{background:#f9fbfe;border:1px solid #e2e8f0;border-radius:9px;margin:16px 0;padding:16px}.variable-editor header{justify-content:space-between;align-items:center;display:flex}.check-label{align-items:center;gap:8px;margin:10px 15px 10px 0;display:inline-flex}.check-label input{width:auto;margin:0}.inline-field{min-width:300px;margin:0}.tag{margin-right:5px}@media (width<=750px){.form-columns,.form-columns.three,.endpoint-row{grid-template-columns:1fr}.inline-field{min-width:0}}.filter-panel-body{padding:16px 24px 20px}.form-columns>*{min-width:0}.form-actions{grid-column:1/-1;gap:12px;margin-top:18px;display:flex}.page-heading .header-select{white-space:nowrap;align-items:center;gap:8px;margin:0;font-size:12px;display:flex}.page-heading .header-select select{width:160px;margin-top:0}.panel-body.filter{border-bottom:1px solid var(--line);margin:0;padding:14px 21px}@media (width<=750px){.page-heading .header-select select{width:120px}}.tag.status-badge{border:1px solid #0000;border-radius:5px;margin-right:0;padding:3px 9px;font-size:11px;font-weight:600;display:inline-block}.tag.status-online{color:#1c7c45;background:#e3f6ea;border-color:#bfe8cf}.tag.status-offline{color:#5f6b78;background:#eef1f4;border-color:#dbe1e8}.tag.status-unknown{color:#946200;background:#fff4dd;border-color:#f1dfb4}.tag.status-error{color:#b3261e;background:#fde8ea;border-color:#f3c9cd}:root{--nav:#142a3a;--navmuted:#9fb4c2;--bg:#f3f6f8;--paper:#fff;--text:#172e3e;--muted:#70818e;--line:#e1e8ed;--primary:#087f8c;--pale:#e6f5f3;--red:#c4444e;--shadow:0 5px 22px #18344708;color:var(--text);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.6}button{border-color:var(--line);min-height:36px;color:var(--text);border-radius:6px;padding:7px 14px}button:hover{border-color:var(--primary);color:var(--primary)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #62bbc4}.primary{background:var(--primary);border-color:var(--primary);color:#fff}.primary:hover{color:#fff;background:#066873}.muted,small{color:var(--muted)}.brand-mark{background:#17a5ac;border-radius:9px;width:32px;height:32px;font-size:20px}.layout>aside{background:var(--nav);color:#fff;border:0;flex-direction:column;width:220px;height:100vh;padding:0 12px;display:flex;position:sticky;top:0;overflow:auto}.layout .brand{white-space:nowrap;letter-spacing:1px;height:83px;padding:24px 11px;font-size:20px}.layout .brand small{color:var(--navmuted);letter-spacing:2px;font-size:10px}.layout nav{flex:1;margin-top:0;padding:4px 0}.navlabel{letter-spacing:2px;color:#89a3b5;padding:18px 12px 8px;font-size:10px}.navgroup{margin:4px 0}.navgroup summary{cursor:pointer;color:#c9d8e1;border-radius:6px;align-items:center;gap:12px;padding:10px 13px;font-size:13px;list-style:none;display:flex}.navgroup summary::-webkit-details-marker{display:none}.navgroup summary:after{content:"›";margin-left:auto;transform:rotate(0)}.navgroup[open] summary:after{transform:rotate(90deg)}.navgroup summary:hover{color:#fff;background:#213f52}.navicon{text-align:center;width:18px;font-size:17px}.layout nav a{color:#b6cbd8;border-radius:6px;margin:2px 0;padding:8px 12px 8px 43px;font-size:12px}.layout nav a:hover{color:#fff;background:#213f52}.layout nav a.router-link-active{color:#fff;background:#0c7c87}.navfoot{color:#9fb4c2;border-top:1px solid #2c4353;padding:17px 11px;font-size:11px}.topbar{border-color:var(--line);height:66px;padding:0 30px;font-size:12px}.topbar .right{align-items:center;gap:15px;display:flex}.avatar{background:var(--pale);width:30px;height:30px;color:var(--primary);border-radius:50%;place-items:center;font-weight:700;display:grid}.page{max-width:1800px;margin:auto;padding:25px 30px 36px}.breadcrumb{color:var(--muted);margin-bottom:9px;font-size:11px}.page-heading{margin-bottom:22px}.page h1{letter-spacing:-.5px;margin:0 0 5px;font-size:25px;font-weight:700}.page-heading p{margin:0;font-size:12px}.panel{border:1px solid var(--line);box-shadow:var(--shadow);border-radius:9px;margin-bottom:18px;overflow:visible}.panel-heading{border-color:var(--line);padding:18px 21px}.panel h2{font-size:15px;font-weight:650}.panel>p,.panel>details:not(.row-more){overflow-wrap:anywhere;margin:14px 21px}.panel>button{margin:12px 8px 12px 21px}table{font-size:12px}th{color:#6d818e;background:#f6f9fa;font-size:11px}th,td{border-bottom:1px solid #eaf0f3;padding:13px 12px}tbody tr:hover{background:#f8fbfc}td small{font-size:10px}.tag{color:#607684;background:#edf1f4;border-radius:4px;font-size:11px}.actions{flex-wrap:wrap;gap:9px}.pagination{color:var(--muted);font-size:11px}label{color:#4c6574;font-size:12px}input,select{color:var(--text);border:1px solid #d8e2e8;border-radius:5px;padding:9px 11px}input:focus,select:focus{border-color:var(--primary);outline-color:#62bbc4}input[type=checkbox]{accent-color:var(--primary)}.row-actions{position:relative}.row-more{vertical-align:middle;display:inline-block}.row-more summary{cursor:pointer;color:var(--primary);padding:5px 9px;list-style:none}.row-more[open] .row-menu{border:1px solid var(--line);background:#fff;border-radius:6px;flex-direction:column;align-items:stretch;margin:4px 0;padding:6px;display:flex;box-shadow:0 8px 24px #142a3a20}.row-menu button{text-align:left}.monitor-body{padding:18px 21px}.tabs{border-bottom:1px solid var(--line);gap:24px;margin-bottom:20px;display:flex}.tabs button{color:var(--muted);background:0 0;border:0;border-radius:0;padding:10px 1px}.tabs button.active{border-bottom:2px solid var(--primary);color:var(--primary);font-weight:600}.filter{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:18px;display:flex}.filter label{margin:0}.login-form>p.muted{font-size:13px}.login-form .login-help{text-align:center;margin-top:18px;font-size:12px}.login-shell{background:radial-gradient(ellipse at 10% 20%,#e6f5f3,transparent 60%),var(--bg)}.hero{background:linear-gradient(140deg,#edf7f6,#f8fbfc)}.hero li:before{color:var(--primary)}.hero p,.hero ul{color:#56727b}.eyebrow{color:#64848a}.modal{border-radius:10px}.success{color:#38696e;background:#eef8f7}.variable-note{margin:16px 21px}@media (width<=850px){.layout>aside{width:190px}.layout .brand{font-size:17px}.page{padding:22px 16px}.topbar{padding:0 18px}}@media (width<=600px){.layout>aside{width:auto;height:auto;position:static}.layout nav{display:block}.layout .brand{height:65px}.navfoot{display:none}.navgroup .subnav{flex-wrap:wrap;display:flex}.layout nav a{padding:8px 12px}.topbar{height:60px}.page-heading{align-items:flex-start}}.quick-select{margin-bottom:18px;position:relative}.quick-select>button{gap:16px}.quick-content{z-index:5;border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:1fr 1fr;width:min(620px,100%);display:grid;position:absolute;top:44px;left:0;box-shadow:0 12px 36px #142a3a20}.quick-devices{border-right:1px solid var(--line);max-height:360px;padding:8px;overflow:auto}.quick-devices button{text-align:left;border:0;width:100%;display:block}.quick-devices button:hover,.quick-devices button:focus{background:var(--pale)}.quick-variables{max-height:360px;padding:16px;overflow:auto}.quick-variables p{border-bottom:1px solid var(--line);padding-bottom:8px}.dc-page .page-heading{margin-bottom:18px}.dc-page .page-heading p{max-width:980px}.dc-page .panel{border-radius:10px}.dc-query .form-body{padding:18px 21px 20px}.dc-query .form-columns{grid-template-columns:1fr 1fr;gap:0 26px}.dc-query fieldset{border:1px solid #dce9e5;border-radius:10px;flex-wrap:wrap;gap:14px;margin:12px 0;padding:12px 14px;display:flex}.dc-query fieldset legend{color:#4c6574;padding:0 6px;font-size:12px}.dc-query fieldset label{color:#304b57;align-items:center;gap:6px;margin:0;font-size:12px;display:inline-flex}.dc-query input[type=checkbox]{width:17px;min-height:17px;accent-color:var(--primary)}.dc-query label{margin:12px 0 0}.dc-query .muted{font-size:12px}.dc-page .panel-heading h2{font-size:15px}.dc-page .primary{background:var(--primary);border-color:var(--primary);color:#fff}.dc-page .tag{background:var(--pale);color:var(--primary)}.dc-page .form-columns.three{grid-template-columns:1fr 1fr}.kpis{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.kpi{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:9px;padding:16px 18px}.kpi span{color:var(--muted);font-size:12px;display:block}.kpi b{letter-spacing:-1px;color:#123743;margin:6px 0;font-size:28px;line-height:1.3;display:block}.kpi small{color:var(--muted);font-size:11px}.grid{gap:18px;display:grid}.grid.cols2{grid-template-columns:1.35fr 1fr}.panel-body{padding:16px 21px}.distrow{grid-template-columns:120px 1fr 40px;align-items:center;gap:10px;margin:9px 0;font-size:12px;display:grid}.distrow div{background:#edf3f4;border-radius:99px;height:8px;overflow:hidden}.distrow i{background:var(--primary);border-radius:99px;height:100%;display:block}.distrow b{text-align:right;color:#1d4651}.attention{margin:0;padding:0;list-style:none}.attention li{border-bottom:1px solid var(--line);gap:9px;padding:10px 0;display:flex}.attention li:last-child{border:0}.attention small{color:var(--muted);font-size:11px}.dot{background:#b5761f;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.dot.critical{background:#c4444e}.dot.info{background:#7b8f9b}.quick{grid-template-columns:1fr 1fr;gap:9px;display:grid}.quick button{min-height:44px}.navitem.direct{color:#c9d8e1;border-radius:6px;align-items:center;gap:12px;margin:4px 0;padding:10px 13px;display:flex}.navitem.direct.router-link-active{color:#fff;background:#0c7c87}@media (width<=1100px){.kpis{grid-template-columns:1fr 1fr}.grid.cols2{grid-template-columns:1fr}}.navgroup-toggle{color:#c9d8e1;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:12px;width:100%;min-height:0;padding:10px 13px;font-size:13px;display:flex}.navgroup-toggle:hover{color:#fff;background:#213f52;border-color:#0000}.navgroup-toggle .chevron{margin-left:auto;font-size:14px;transition:transform .15s}.navgroup-toggle.open .chevron{transform:rotate(90deg)}
