*{box-sizing:border-box;margin:0;padding:0}:root{--font-ui:"Microsoft YaHei UI","Noto Sans SC","PingFang SC","Segoe UI",sans-serif;--font-data:"Fira Code","Cascadia Mono","JetBrains Mono","Consolas",monospace;--sidebar-w:192px;--sidebar-w-md:184px;--bg-base:#f0f5fb;--bg-panel:#fff;--bg-card:#f7fafd;--bg-hover:#eaf2fb;--border:#d6e4f0;--border-mid:#c2d6ea;--border-dark:#a8c4de;--blue:#1d6fbf;--blue-lt:#4a9eff;--blue-bg:#e8f1fb;--teal:#0e8fa8;--teal-bg:#e3f6fa;--red:#dc2626;--red-lt:#ef4444;--red-bg:#fef2f2;--red-border:#fca5a5;--green:#16a34a;--green-bg:#f0fdf4;--orange:#c2540a;--orange-bg:#fff7ed;--purple:#6d28d9;--purple-bg:#f5f3ff;--text:#1e3a5f;--text2:#4a6a8a;--textm:#7a9ab8;--textd:#b3c8da;--shadow-sm:0 1px 2px #0f172a0d;--shadow-md:0 10px 28px #1e3a5f1a;--shadow-lg:0 18px 46px #1e3a5f24;--ring-blue:0 0 0 3px #2563eb21}html,body,#app{width:100%;min-height:100%}body{color:#17324d;font-family:var(--font-ui,"Microsoft YaHei UI", "Noto Sans SC", "Segoe UI", sans-serif);background:#eef4fb;margin:0;overflow-x:hidden}button,select{font:inherit;border-radius:6px;min-height:34px}button{color:#fff;cursor:pointer;background:#2f73ff;border:1px solid #2f73ff;padding:0 14px;font-size:13px;font-weight:700}button:hover{background:#1d62e5}button.ghost{color:#385a78;background:#fff;border-color:#c6d5e4}select{color:#17324d;background:#fff;border:1px solid #c8d9ea;padding:0 10px}pre,code{font-family:var(--font-data,"Cascadia Mono", "Consolas", monospace)}.jigui-demo{background:linear-gradient(#eef4fbf2,#e5eef8f2),#eef4fb;grid-template-rows:auto minmax(0,1fr);gap:14px;min-height:100vh;padding:16px;display:grid}.demo-topbar,.propagation-panel,.format-panel>section{background:#fff;border:1px solid #c8d9ea;border-radius:8px;box-shadow:0 10px 28px #1e3a5f14}.demo-topbar{justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.demo-topbar h1,.demo-topbar p,.scenario-controls h2,.scenario-controls p,.measurement-response-head h2,.scope-section h2,.format-card h2,.format-card p,.event-panel h2,.status-card h2,.status-card p{margin:0}.demo-topbar h1{font-size:22px;font-weight:800;line-height:1.2}.demo-topbar p{color:#617d98;margin-top:6px;font-size:13px;line-height:1.55}.run-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;min-width:520px;display:flex}.run-controls>span{color:#385a78;text-align:center;min-width:72px;font-family:var(--font-data,"Consolas", monospace);background:#f7fafd;border:1px solid #d2e0ee;border-radius:6px;padding:8px 10px;font-size:13px}.run-mode-toggle{background:#f7fafd;border:1px solid #c8d9ea;border-radius:6px;display:inline-flex;overflow:hidden}.run-mode-toggle button{color:#607c96;background:0 0;border:0;border-radius:0}.run-mode-toggle button.active{color:#1d62e5;background:#e7f0ff}.primary-run[data-running=true]{background:#d97706;border-color:#d97706}.demo-grid{grid-template-columns:minmax(760px,1fr) minmax(360px,440px);gap:14px;min-height:0;display:grid}.propagation-panel{grid-template-rows:auto auto auto auto;gap:14px;min-width:0;padding:14px;display:grid}.scenario-controls{border-bottom:1px solid #e0ebf5;grid-template-columns:minmax(280px,1fr) 220px 260px;align-items:end;gap:12px;padding-bottom:14px;display:grid}.scenario-controls h2,.measurement-response-head h2,.scope-section h2,.format-card h2,.event-panel h2{font-size:16px;line-height:1.25}.scenario-controls p,.format-card p,.status-card p{color:#617d98;font-size:12px;line-height:1.55}.scenario-controls label{color:#4b6986;gap:6px;font-size:12px;display:grid}.flow-map{background:linear-gradient(#f9fcff,#f1f6fb);border:1px solid #d4e3f0;border-radius:8px;padding:14px;overflow-x:auto}.flow-map__lanes{grid-template-columns:repeat(5,minmax(140px,1fr));gap:10px;min-width:960px;margin-bottom:12px;display:grid}.flow-map__lanes span{color:#5e7891;border-left:3px solid #9fbbe0;padding-left:8px;font-size:12px;font-weight:700}.flow-map__nodes{grid-template-columns:180px 48px 180px 48px 220px 48px 180px 48px 180px 48px 180px;align-items:center;min-width:1260px;display:grid}.flow-node{background:#fff;border:1px solid #c6d7e8;border-radius:8px;align-content:start;gap:7px;min-height:124px;padding:12px;display:grid}.flow-node[data-status=normal]{background:#f1fbf5;border-color:#93d7ad}.flow-node[data-status=fault]{background:#fff5f5;border-color:#f2a4a4}.flow-node[data-status=warning]{background:#fff9ec;border-color:#f4c879}.flow-node[data-status=info]{background:#f4f8ff;border-color:#9fc1ff}.flow-node span{color:#6b87a0;font-size:11px;font-weight:800}.flow-node strong{color:#17324d;font-size:15px;line-height:1.3}.flow-node code{color:#245a91;overflow-wrap:anywhere;font-size:12px}.flow-node em{color:#617d98;font-size:12px;font-style:normal;line-height:1.4}.flow-edge{background:#2f73ff;height:8px;position:relative}.flow-edge[data-status=fault]{background:repeating-linear-gradient(90deg,#dc2626 0 9px,#0000 9px 15px)}.flow-edge span{width:0;height:0;color:inherit;border-top:8px solid #0000;border-bottom:8px solid #0000;border-left:12px solid;position:absolute;top:50%;right:-1px;transform:translateY(-50%)}.measurement-response-panel{background:#f9fcff;border:1px solid #d4e3f0;border-radius:8px;padding:12px}.measurement-response-head,.section-title{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.measurement-response-eyebrow{color:#66839f;margin-bottom:4px;font-size:11px;font-weight:800}.response-summary{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.response-summary span{background:#fff;border:1px solid #d7e4f0;border-radius:6px;min-width:64px;padding:6px 8px}.response-summary em,.measurement-response-row em{color:#6d879f;font-size:11px;font-style:normal;display:block}.response-summary strong,.measurement-response-row b{color:#17324d;font-size:14px}.measurement-response-matrix{gap:8px;display:grid}.measurement-response-row{background:#fff;border-left:4px solid #2f73ff;border-radius:6px;grid-template-columns:minmax(180px,1.4fr) 90px 90px 90px minmax(190px,1fr);align-items:center;gap:8px;padding:9px 10px;display:grid}.measurement-response-row[data-status=normal]{border-left-color:#16a34a}.measurement-response-row[data-status=cut],.measurement-response-row[data-status=abnormal]{border-left-color:#dc2626}.measurement-response-row__point strong,.measurement-response-row__point code{display:block}.measurement-response-row__point strong{margin-bottom:4px}.measurement-response-row__point code,.measurement-response-row__reason b{overflow-wrap:anywhere;color:#456782;font-size:12px;line-height:1.4}.scope-section{background:#f9fcff;border:1px solid #d4e3f0;border-radius:8px;padding:12px}.section-title span{color:#617d98;font-family:var(--font-data,"Consolas", monospace);font-size:12px}.scope-frame{background:linear-gradient(#617d9824 1px,#0000 1px) 0 0/100% 44px,linear-gradient(90deg,#617d9824 1px,#0000 1px) 0 0/44px 100%,#fff;border:1px solid #d4e3f0;border-radius:6px;padding:8px}.scope-svg{width:100%;height:142px;display:block}.scope-guide{stroke:#46678259;stroke-width:1px}.scope-guide--high{stroke-dasharray:5 5}.scope-wave{fill:none;stroke-linecap:round;stroke-linejoin:round}.scope-wave--expected{stroke:#6aa7ff;stroke-width:2px;stroke-dasharray:7 7}.scope-wave--signal{stroke:#16a34a;stroke-width:4px}.scope-legend{color:#4b6986;justify-content:space-between;gap:8px;margin-top:8px;font-size:12px;display:flex}.scope-legend span{align-items:center;gap:6px;display:inline-flex}.legend-dot{border-radius:50%;width:8px;height:8px}.legend-dot--signal{background:#16a34a}.legend-dot--expected{background:#6aa7ff}.format-panel{align-content:start;gap:14px;min-width:0;display:grid}.format-panel>section{padding:14px}.status-card{align-items:center;gap:12px;display:flex}.status-light{border-radius:50%;flex:none;width:16px;height:16px;box-shadow:0 0 14px}.status-card[data-status=fault] .status-light{color:#dc2626;background:#dc2626}.status-card[data-status=normal] .status-light{color:#16a34a;background:#16a34a}.format-card{min-width:0}.format-card h2{margin-bottom:7px}.format-card p{margin-bottom:10px}.format-card pre{color:#cde7ff;background:#0f1720;border:1px solid #d4e3f0;border-radius:6px;max-height:330px;padding:10px;font-size:12px;line-height:1.5;overflow:auto}.event-list{gap:7px;margin-top:10px;display:grid}.event-row{background:#f7fafd;border-left:4px solid #dc2626;border-radius:6px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:9px;padding:8px 10px;display:grid}.event-row[data-level=normal]{border-left-color:#16a34a}.event-row span{color:#617d98;font-family:var(--font-data,"Consolas", monospace);font-size:12px}.event-row p{color:#385a78;margin:0;font-size:12px;line-height:1.45}@media (width<=1180px){.demo-topbar{flex-direction:column;align-items:flex-start}.run-controls{justify-content:flex-start;width:100%;min-width:0}.demo-grid{grid-template-columns:1fr}}@media (width<=760px){.jigui-demo{padding:10px}.scenario-controls{grid-template-columns:1fr}.measurement-response-row{grid-template-columns:1fr 1fr}.measurement-response-row__point,.measurement-response-row__reason{grid-column:1/-1}}
