:root{--orange:#ff5a00;--orange-dark:#e84d00;--page:#f3f5f8;--surface:#fff;--line:#e7ebf2;--text:#2b2f36;--muted:#6d7480;--soft:#9aa1aa;--danger:#d92d20;--warning:#f79009;--success:#17b26a;--info:#2e90fa;--shadow:0 12px 32px rgba(15,23,42,.14)}*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--page);font-family:Inter,"PingFang SC","Microsoft YaHei",Arial,sans-serif}button,input,select{font:inherit}.app-shell{min-height:100vh;display:flex}.sidebar{width:176px;flex:0 0 176px;background:var(--orange);color:#fff;box-shadow:8px 0 24px rgba(255,90,0,.22);transition:.18s}.app-shell.collapsed .sidebar{width:64px;flex-basis:64px}.brand{height:58px;display:flex;align-items:center;padding:0 18px;font-size:18px;font-weight:800;white-space:nowrap;overflow:hidden}.primary-nav{padding:8px 10px 20px}.nav-item,.sub-item{width:100%;border:0;color:#fff;background:transparent;display:flex;align-items:center;gap:10px;min-height:42px;padding:0 10px;border-radius:4px;cursor:pointer;text-align:left}.nav-item.active,.nav-item:hover{background:var(--orange-dark)}.sub-list{padding:2px 0 8px 24px}.sub-item{min-height:32px;font-size:13px;opacity:.92}.sub-item.active{background:rgba(255,255,255,.16);font-weight:700}.nav-icon{width:18px;text-align:center;flex:0 0 18px}.app-shell.collapsed .nav-label,.app-shell.collapsed .sub-list,.app-shell.collapsed .brand{display:none}.main{flex:1;min-width:0}.topbar{height:56px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 24px}.topbar-actions{display:flex;align-items:center;gap:14px;color:var(--muted)}.icon-btn{border:0;background:transparent;color:var(--text);cursor:pointer;width:32px;height:32px;border-radius:4px;font-size:18px}.icon-btn:hover{background:#f2f4f7}.avatar{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#b8c0ca;background:#eef1f5}.workspace{padding:20px 24px 32px}.breadcrumb{color:#5faf42;font-size:13px;margin-bottom:18px}.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.page-title h1{margin:0 0 6px;font-size:22px}.page-title p{margin:0;color:var(--muted);font-size:13px;max-width:980px;line-height:1.5}.page-actions,.filter-actions{display:flex;gap:10px}.metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:16px}.metric-card,.filter-card,.table-card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:4px}.metric-card{padding:16px}.metric-card span{display:block;color:var(--muted);font-size:13px}.metric-card strong{display:block;margin:8px 0 4px;font-size:26px;font-family:"SFMono-Regular",Consolas,monospace}.orange{color:var(--orange)}.danger{color:var(--danger)}.success{color:var(--success)}.info{color:var(--info)}.filter-card{display:grid;grid-template-columns:repeat(7,minmax(140px,1fr)) 110px;gap:16px;align-items:end;padding:18px;margin-bottom:16px}.field label{display:block;margin-bottom:8px;font-size:13px;font-weight:700}.field input,.field select{width:100%;height:38px;border:1px solid #dce2ea;border-radius:4px;padding:0 11px;background:#fff}.check{height:38px;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.btn{min-height:38px;border:1px solid transparent;border-radius:4px;padding:0 14px;cursor:pointer;white-space:nowrap;font-weight:700}.btn.primary{color:#fff;background:var(--orange)}.btn.secondary{color:#fff;background:#8c929d}.panel{padding:16px;margin-bottom:16px}.grid-2{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.section-head,.table-toolbar{height:38px;display:flex;align-items:center;justify-content:space-between}
.input-combo{display:flex;gap:8px}.input-combo input{flex:1;min-width:0}.input-combo select{width:88px;flex:none}
.ss-wrap{position:relative;width:100%}.ss-wrap select.searchable{display:none}.add-row .ss-wrap{flex:1;max-width:320px}.ss-input{width:100%;height:38px;border:1px solid #dce2ea;border-radius:4px;padding:0 11px;background:#fff;font-size:13px;box-sizing:border-box}.add-row .ss-input{height:36px}.ss-wrap.open .ss-input{border-color:var(--orange)}.ss-panel{display:none;position:absolute;z-index:40;left:0;right:0;top:calc(100% + 4px);max-height:240px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px rgba(16,24,40,.12)}.ss-wrap.open .ss-panel{display:block}.ss-opt{padding:8px 12px;font-size:13px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ss-opt:hover{background:#fff6f0}.ss-opt.sel{background:#fff1e8;color:var(--orange);font-weight:600}.ss-empty{padding:10px 12px;font-size:12px;color:var(--soft)}
.grain-toggle{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#f7f9fc}.grain-toggle .grain-btn{border:0;background:transparent;padding:5px 12px;font-size:12px;color:var(--soft);cursor:pointer;line-height:1}.grain-toggle .grain-btn+.grain-btn{border-left:1px solid var(--line)}.grain-toggle .grain-btn.active{background:var(--orange);color:#fff;font-weight:700}.section-head span,.table-toolbar span{color:var(--muted);font-size:13px}.bar-chart{display:grid;gap:8px}.bar-chart.compact{margin-top:12px}.bar-row{display:grid;grid-template-columns:48px 1fr 52px;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.bar-row div{height:12px;background:#f2f4f7;border-radius:8px;overflow:hidden}.bar-row i{display:block;height:100%;background:var(--orange);border-radius:8px}.tabs{height:54px;display:flex;align-items:center;gap:8px;padding:0 16px;border-bottom:1px solid var(--line)}.tab{height:32px;border:1px solid var(--line);background:#fff;border-radius:4px;padding:0 12px;cursor:pointer;color:var(--muted);font-weight:700}.tab.active{color:#fff;background:var(--orange);border-color:var(--orange)}.table-toolbar{padding:0 16px}.table-wrap{overflow:auto;border-top:1px solid var(--line)}table{width:100%;min-width:1120px;border-collapse:collapse;table-layout:fixed}th,td{height:52px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 12px;text-align:left;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}th{background:#f8fafc;color:var(--text);font-weight:800}td{color:var(--muted)}.tag{display:inline-flex;align-items:center;height:24px;border-radius:3px;padding:0 8px;font-size:12px;font-weight:800;background:#f2f4f7;color:var(--muted)}.tag.danger{color:var(--danger);background:#fff1f0}.tag.success{color:var(--success);background:#eafbf3}.up{color:var(--success)}.down{color:var(--danger)}.mini-btn{height:30px;border:0;border-radius:4px;padding:0 10px;color:#fff;background:#8c929d;cursor:pointer;font-size:12px;font-weight:800}.mini-btn.primary{background:var(--orange)}.empty{text-align:center;color:var(--soft)}.drawer{position:fixed;inset:0;display:none;background:rgba(15,23,42,.32);z-index:20}.drawer.open{display:block}.drawer-panel{margin-left:auto;width:560px;height:100%;background:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column}.drawer-head{display:flex;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid var(--line)}.drawer-head h2{margin:0 0 6px;font-size:20px}.drawer-head p{margin:0;color:var(--muted);font-size:13px}.drawer-body{padding:20px 22px;overflow:auto}.detail-list{display:grid;gap:12px}.detail-item,.detail-line{display:grid;grid-template-columns:150px 1fr;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:13px}.detail-item span,.detail-line span{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast{position:fixed;right:24px;bottom:24px;min-width:220px;padding:12px 16px;color:#fff;background:#263238;border-radius:4px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);transition:.18s;z-index:30}.toast.show{opacity:1;transform:translateY(0)}@media (max-width:1200px){.metrics{grid-template-columns:repeat(3,1fr)}.filter-card{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:1fr}}@media (max-width:760px){.sidebar{display:none}.metrics,.filter-card{grid-template-columns:1fr}.page-title{display:block}.grid-2{grid-template-columns:1fr}}
.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tree-map{height:210px;display:flex;flex-wrap:wrap;gap:6px;align-content:stretch}.tree-cell{border:0;border-radius:4px;padding:10px;text-align:left;min-width:95px;min-height:62px;color:#fff;cursor:pointer;overflow:hidden}.tree-cell strong,.tree-cell span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-cell span{margin-top:6px;font-size:18px;font-weight:800}.c0{background:#ff5a00}.c1{background:#2e90fa}.c2{background:#17b26a}.c3{background:#f79009}.c4{background:#7a5af8}.line-chart svg{width:100%;height:210px}.grid-line{stroke:#e7ebf2;stroke-width:1}.line-path{fill:none;stroke:var(--orange);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.line-chart circle{fill:#fff;stroke:var(--orange);stroke-width:2}@media (max-width:1200px){.chart-grid{grid-template-columns:1fr}}@media (max-width:760px){.chart-grid{grid-template-columns:1fr}}
.tree-cell em{display:block;margin-top:4px;font-style:normal;font-size:12px;opacity:.9}.line-area{fill:rgba(255,90,0,.1)}.line-chart text{font-size:11px;fill:var(--muted)}.line-chart svg{overflow:visible}
.filter-card{grid-template-columns:repeat(6,minmax(140px,1fr)) 110px}.filter-card.is-custom{grid-template-columns:repeat(8,minmax(130px,1fr)) 110px}.period-field span{display:block;margin-top:6px;color:var(--muted);font-size:12px}.custom-date{display:none}.filter-card.is-custom .custom-date{display:block}.bar-row{grid-template-columns:68px 1fr 52px}@media (max-width:1200px){.filter-card,.filter-card.is-custom{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.filter-card,.filter-card.is-custom{grid-template-columns:1fr}}
.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card.accent{border-top:3px solid var(--orange)}.metric-deltas{display:flex;gap:8px;margin-top:6px}.delta{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:3px;font-size:12px;font-weight:800}.delta.up{color:var(--success);background:#eafbf3}.delta.down{color:var(--danger);background:#fff1f0}button.metric-card{text-align:left;cursor:pointer;font:inherit}button.metric-card:hover{border-color:var(--danger)}.metric-card.alert.has-alert{border-color:#f5c6c0;background:#fffaf9}
.overview-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:18px}.overview-grid>div{display:flex;flex-direction:column;min-width:0}.overview-grid .bar-chart{flex:1}.overview-grid .operator-pie{flex:1;min-height:0}
.chart-tip{position:fixed;z-index:40;min-width:150px;padding:10px 12px;background:#263238;color:#fff;border-radius:6px;font-size:12px;box-shadow:var(--shadow);pointer-events:none;opacity:0;transition:opacity .12s}.chart-tip.show{opacity:1}.chart-tip>b{display:block;margin-bottom:6px;font-size:13px}.chart-tip .tip-row{display:flex;justify-content:space-between;gap:16px;margin-top:3px}.chart-tip .tip-row i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px}.chart-tip .tip-row b{font-family:"SFMono-Regular",Consolas,monospace}
.hover-zone{fill:transparent;cursor:crosshair}.hover-zone:hover{fill:rgba(255,90,0,.07)}.vbar.hot{fill:var(--orange-dark)}
.inbound-table{min-width:1560px}
a.sub-item{text-decoration:none}.inv-filter{grid-template-columns:repeat(4,minmax(160px,1fr)) 110px}@media (max-width:1200px){.inv-filter{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.inv-filter{grid-template-columns:1fr}}
.field-hint{display:block;margin-top:6px;color:var(--soft);font-size:12px}.global-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width:1200px){.global-grid{grid-template-columns:repeat(2,1fr)}}
.rule-explain{border-top:3px solid var(--orange)}.formula-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.formula-card{border:1px solid var(--line);border-radius:4px;background:#fcfdfe;padding:14px 16px}.formula-card b{display:block;margin-bottom:8px;font-size:14px}.formula-card p{margin:0 0 8px;color:var(--orange);font-size:14px;font-weight:800;line-height:1.5}.formula-card span{display:block;color:var(--muted);font-size:12px;line-height:1.6}@media (max-width:1200px){.formula-grid{grid-template-columns:1fr}}
.picker-list{display:grid;gap:8px;margin-top:14px}.picker-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:6px;padding:12px 14px;background:#fff}.picker-row:hover{border-color:#ffc6aa;background:#fffaf7}.picker-row.disabled{background:#f5f6f8;color:var(--soft)}.picker-row.disabled:hover{border-color:var(--line);background:#f5f6f8}.picker-main{min-width:0}.picker-main strong{display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-main span{display:block;margin-top:4px;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-row.disabled .picker-main span{color:var(--soft)}.picker-row .mini-btn:disabled{cursor:not-allowed;background:#c4c9d2;color:#fff}#pickPager .pager{padding-top:14px}
.radio-row{display:flex;gap:18px;height:38px;align-items:center}.radio-item{display:inline-flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.radio-item input{accent-color:var(--orange)}
.add-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.task-field label{display:flex;align-items:center}
.modal{position:fixed;inset:0;display:none;background:rgba(15,23,42,.38);z-index:25;align-items:center;justify-content:center}.modal.open{display:flex}.modal-panel{width:640px;max-width:calc(100vw - 48px);max-height:calc(100vh - 80px);background:#fff;border-radius:8px;box-shadow:var(--shadow);display:flex;flex-direction:column}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:baseline;gap:10px;min-width:0}.modal-sub{color:var(--muted);font-size:13px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-body{padding:20px 22px;overflow:auto}.modal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 18px;margin-bottom:8px}.modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid var(--line)}
.modal-panel.wide{width:880px}.modal-head-info{min-width:0}.modal-head-info h2{margin:0 0 4px;font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-head-info p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.modal-section-title{font-size:13px;font-weight:800;color:var(--text);margin:4px 0 14px;padding-left:10px;border-left:3px solid var(--orange);display:flex;align-items:baseline;gap:10px}.modal-section-title em{font-style:normal;font-weight:400;color:var(--soft);font-size:12px}.modal-grid+.modal-section-title{margin-top:20px;padding-top:0}
.flag-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:6px;padding:12px 14px;margin-bottom:10px;background:#fcfdfe}.flag-row .flag-info{min-width:0}.flag-row b{display:block;font-size:13px;margin-bottom:3px}.flag-row span{color:var(--muted);font-size:12px}.flag-row .switch{flex:0 0 38px}
.cfg-table th,.cfg-table td{height:48px}.cell-input{width:100%;max-width:140px;height:32px;border:1px solid #dce2ea;border-radius:4px;padding:0 8px;background:#fff}.cell-input:disabled{background:#f2f4f7;color:var(--soft)}
.switch{width:38px;height:20px;border:0;border-radius:10px;background:#d5dae2;cursor:pointer;position:relative;transition:.15s}.switch::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.15s}.switch.on{background:var(--success)}.switch.on::after{left:20px}.switch.on.danger-sw{background:var(--danger)}
.tag.key-brand{color:var(--orange);background:#fff2ea}.tag.warning-tag{color:var(--warning);background:#fff7e8}.tag.info-tag{color:var(--info);background:#eef6ff}.row-stopped td{opacity:.55}
.trigger-note,.push-note{color:var(--muted);font-size:13px;line-height:1.6;background:#f8fafc;border-radius:4px;padding:10px 12px}.detail-table{width:100%;border-collapse:collapse;min-width:0}.detail-table th,.detail-table td{height:40px;font-size:12px;border-bottom:1px solid var(--line);padding:0 8px;text-align:left;border-right:0}.qty-input{max-width:80px}
.flow-list{display:grid;gap:8px;margin-bottom:16px}.flow-step{display:grid;grid-template-columns:150px 120px 1fr;gap:10px;align-items:center;border:1px solid var(--line);border-radius:4px;padding:10px 12px;font-size:13px}.flow-step.ok{border-color:#bfe8d4;background:#f4fcf8}.flow-step.no{border-color:#f5c6c0;background:#fffaf9}.flow-step em{font-style:normal;color:var(--muted)}.flow-step i{grid-column:1/-1;font-style:normal;color:var(--muted);font-size:12px}.drawer-actions{display:flex;gap:10px;margin-top:16px}
.code-import{display:grid;grid-template-columns:1fr 170px;gap:14px;align-items:start}.import-drop{min-height:116px;border:1px dashed #cfd6e1;border-radius:4px;background:#fafbfc;padding:18px;display:flex;flex-direction:column;justify-content:center;gap:8px}.import-drop strong{font-size:15px}.import-drop span{color:var(--muted);font-size:13px}.code-side{display:grid;gap:8px}.link-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:var(--orange);background:#fff;border-color:#ffcab0}.row-note{color:var(--soft);font-size:11px;margin-top:2px;white-space:normal}
.field input[readonly]{background:#f7f9fc;color:var(--muted)}
#newModal .modal-panel{width:1080px}#newModal .modal-grid{grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){#newModal .modal-grid{grid-template-columns:repeat(2,1fr)}}
.review-count{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:4px;background:#fff1e8;color:var(--orange);border:1px solid #ffb58f;font-size:14px;font-weight:900}.review-count b{font-size:20px;line-height:1;color:var(--orange-dark)}.total-count{margin-left:10px;color:var(--muted);font-size:13px}
.op-stack{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
#detailModal .modal-panel{width:1080px}#detailModal .modal-body{padding-top:20px}.readonly-grid{grid-template-columns:repeat(3,1fr)}.readonly-value{width:100%;min-height:38px;border:1px solid #dce2ea;border-radius:4px;padding:8px 11px;background:#f7f9fc;color:var(--text);font-size:13px;line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.readonly-field label{font-size:13px}.readonly-code{margin-bottom:8px}.readonly-code .import-drop{min-height:88px}
@media (max-width:900px){.readonly-grid{grid-template-columns:repeat(2,1fr)}}
.flow-editor{display:grid;gap:4px;margin-bottom:14px}.level-card{border:1px solid var(--line);border-radius:6px;padding:14px 16px;background:#fcfdfe}.level-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.level-badge{width:26px;height:26px;border-radius:50%;background:var(--orange);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex:0 0 26px}.route-badge{background:var(--info)}.level-name{max-width:160px;font-weight:700}.level-hint{color:var(--soft);font-size:12px}.level-ops{margin-left:auto;display:flex;gap:6px}.danger-btn{background:var(--danger)}
.price-label{font-size:12px;font-weight:800;fill:var(--text)}.price-legend{display:flex;gap:18px;margin-top:10px;flex-wrap:wrap}.price-legend .pie-item{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent}.price-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.price-legend span span{color:var(--muted);font-size:12px}
.feishu-grid{display:grid;grid-template-columns:minmax(320px,560px) 160px;gap:16px;align-items:start}
.scene-card .section-head strong{display:flex;align-items:center;gap:8px}.scene-head-right{display:flex;align-items:center;gap:12px}.scene-head-right em{font-style:normal;color:var(--muted);font-size:13px}.scene-off .scene-body{opacity:.45;pointer-events:none}
.scene-row{display:grid;grid-template-columns:180px 200px 180px;gap:16px;margin:6px 0 14px}
.scene-row.scene-channel{grid-template-columns:200px minmax(0,1fr) 120px;border-bottom:1px dashed var(--line);padding-bottom:12px}
.status-tags{display:flex;flex-wrap:wrap;gap:4px}
.req{color:#e5484d;font-weight:700}
.pager{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:12px 2px 2px;justify-content:flex-end}.pager-info{color:var(--muted);font-size:12px;margin-right:auto}.pager-btn{min-width:30px;height:30px;padding:0 8px;border:1px solid var(--line);background:#fff;border-radius:4px;font-size:13px;cursor:pointer;color:#344054}.pager-btn:hover:not(:disabled){border-color:var(--orange);color:var(--orange)}.pager-btn.active{background:var(--orange);border-color:var(--orange);color:#fff;font-weight:700}.pager-btn:disabled{opacity:.5;cursor:not-allowed}.pager-gap{color:var(--soft);padding:0 2px}
.filter-card.dash-filter{display:flex;flex-wrap:wrap;gap:16px;align-items:end}.dash-filter .field{width:150px}.dash-filter .period-field{width:130px}.dash-filter .adv-search{display:none}.filter-card.dash-filter.adv-open .adv-search{display:block}.dash-filter .check{align-self:center}.dash-filter .filter-actions{display:flex;gap:8px;margin-left:auto}
.metric-card span.metric-money{margin-top:6px;padding-top:6px;border-top:1px dashed var(--line);color:var(--orange);font-weight:700;font-size:13px}
.notice-panel{display:flex;flex-direction:column;gap:4px}.notice-panel strong{font-size:14px}.notice-panel span{color:var(--muted);font-size:13px}.scene-row select,.scene-row input{width:100%;height:36px;border:1px solid #dce2ea;border-radius:4px;padding:0 10px;background:#fff}.scene-row input:disabled{background:#f2f4f7;color:var(--soft)}
.scene-subs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px dashed var(--line);padding-top:12px}
.scene-tpl{border-top:1px dashed var(--line);padding-top:12px}.scene-tpl .tpl-box{margin:6px 0 6px;padding:10px 12px;background:#f7f9fc;border:1px solid var(--line);border-left:3px solid var(--orange);border-radius:4px;font-size:13px;color:#344054;line-height:1.7;white-space:pre-wrap;word-break:break-word}.sub-chip{border:1px solid var(--line);border-radius:4px;padding:6px 12px;font-size:12px;color:var(--soft);cursor:pointer;background:#fff;text-decoration:line-through}.sub-chip.on{color:var(--orange);border-color:#ffc9a8;background:#fff6f0;font-weight:700;text-decoration:none}
@media (max-width:1200px){.scene-row{grid-template-columns:repeat(2,1fr)}.feishu-grid{grid-template-columns:1fr}}
.level-body{display:flex;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}.pick-label{color:var(--muted);font-size:13px}.user-picker{display:flex;gap:8px;flex-wrap:wrap}.user-chip{border:1px solid var(--line);border-radius:16px;padding:5px 12px;font-size:12px;color:var(--muted);cursor:pointer;background:#fff}.user-chip.on{color:#fff;background:var(--orange);border-color:var(--orange);font-weight:700}.flow-arrow{text-align:center;color:var(--soft);font-size:16px;line-height:1}.route-input{max-width:110px}.route-list{display:grid;gap:10px}.alert-list{display:grid;gap:8px;max-height:280px;overflow:auto;align-content:start}.alert-item{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #f5dcd6;background:#fffaf9;border-radius:4px;padding:9px 12px;cursor:pointer;text-align:left}.alert-item:hover{border-color:var(--danger)}.alert-main{min-width:0}.alert-main strong{display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert-main span{color:var(--muted);font-size:12px}
.alert-main span.alert-sub{display:block;margin-top:2px;color:var(--soft);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert-tags{display:flex;gap:6px;flex:0 0 auto}.alert-tags i{font-style:normal;font-size:11px;font-weight:800;color:var(--danger);background:#fff1f0;border-radius:3px;padding:3px 6px;white-space:nowrap}
.top-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.rank-list{display:grid;gap:6px;align-content:start}.rank-row{display:grid;grid-template-columns:26px minmax(0,1fr) 92px;gap:10px;align-items:center;border:0;background:transparent;padding:5px 4px;border-radius:4px;cursor:pointer;text-align:left}.rank-row:hover{background:#fff6f1}.rank-no{font-style:normal;width:22px;height:22px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:var(--muted);background:#f2f4f7}.rank-no.hot{color:#fff;background:var(--orange)}.rank-info{min-width:0}.rank-name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-flag{font-style:normal;font-size:11px;font-weight:800;color:var(--danger);background:#fff1f0;border-radius:3px;padding:1px 5px;margin-left:6px}.rank-bar{height:8px;background:#f2f4f7;border-radius:6px;overflow:hidden;margin-top:5px}.rank-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--orange),#ff8a4d);border-radius:6px}.rank-num{text-align:right}.rank-num b{display:block;font-size:13px}.rank-num span{color:var(--muted);font-size:12px}
@media (max-width:1200px){.metrics{grid-template-columns:repeat(2,1fr)}.overview-grid,.top-grid{grid-template-columns:1fr}}@media (max-width:760px){.metrics{grid-template-columns:1fr}}
.filter-card{align-items:start}.filter-card .check,.filter-card .filter-actions{margin-top:27px}.period-field span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chart-legend{display:flex;gap:14px;margin:2px 0 8px}.legend-item{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;cursor:pointer;font-size:12px;color:var(--muted);font-weight:700;padding:3px 6px;border-radius:4px}.legend-item:hover{background:#f5f6f8}.legend-item.off{opacity:.35;text-decoration:line-through}.sw.bar{width:12px;height:12px;border-radius:3px;background:var(--orange)}.sw.line{width:16px;height:0;border-top:3px solid}.sw.line.yoy{border-color:var(--info)}.sw.line.mom{border-color:var(--success)}
.trend-line{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.trend-line.yoy{stroke:var(--info)}.trend-line.mom{stroke:var(--success)}.trend-dot{stroke:#fff;stroke-width:1.5}.trend-dot.yoy{fill:var(--info)}.trend-dot.mom{fill:var(--success)}.zero-line{stroke:#cfd6e1;stroke-width:1;stroke-dasharray:4 4}
.vertical-bars{width:100%;height:300px;display:block}.vbar{fill:var(--orange)}.axis-line{fill:none;stroke:#cfd6e1;stroke-width:1}.axis-label{font-size:12px;fill:var(--muted)}.axis-name{font-size:12px;fill:var(--text);font-weight:700}.operator-pie{display:grid;grid-template-columns:220px 1fr;gap:18px;align-items:center;min-height:230px}.pie-visual{width:210px;aspect-ratio:1;border:10px solid #fff;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line),0 0 0 1px var(--line);cursor:pointer}.pie-legend{display:grid;gap:8px}.pie-item{display:grid;grid-template-columns:12px minmax(0,1fr) 58px 48px;gap:8px;align-items:center;border:0;background:#fff;text-align:left;cursor:pointer;padding:2px 0}.pie-item i{width:10px;height:10px;border-radius:2px}.pie-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.pie-item b{font-size:12px;text-align:right}.pie-item em{font-style:normal;color:var(--muted);font-size:12px;text-align:right}@media (max-width:760px){.operator-pie{grid-template-columns:1fr}.pie-visual{width:min(220px,80vw);justify-self:center}}
