Files
ScadaBridge/src/ZB.MOM.WW.ScadaBridge.CentralUI/Components/Pages/Deployment/FlowDebugger.razor.css
T

126 lines
3.5 KiB
CSS

/* Flow Debugger page — toolbar / status strip / flow / detail (design 2026-09-05 §4). */
.fd-status {
display: flex;
flex-wrap: wrap;
gap: 0.5rem 1.25rem;
align-items: center;
font-size: 0.85rem;
padding: 0.4rem 0.75rem;
border: 1px solid var(--rule);
border-radius: 4px;
background: var(--bs-body-bg, #fff);
}
.fd-status .fd-label {
color: var(--ink-faint);
font-size: 0.65rem;
letter-spacing: 0.06em;
text-transform: uppercase;
margin-right: 0.3rem;
}
.fd-status .fd-mono { font-family: var(--mono); }
.fd-chip {
display: inline-block;
padding: 0.1rem 0.5rem;
border-radius: 999px;
border: 1px solid var(--rule-strong);
font-size: 0.75rem;
font-weight: 600;
}
.fd-chip.idle { color: var(--ink-soft); }
.fd-chip.predicted { color: var(--accent); border-color: var(--accent); border-style: dashed; }
.fd-chip.running { color: var(--accent); border-color: var(--accent); }
.fd-chip.completed { color: var(--ok); border-color: var(--ok); }
.fd-chip.failed { color: var(--bs-danger, #c0392b); border-color: var(--bs-danger, #c0392b); }
.fd-chip.timed-out { color: var(--warn); border-color: var(--warn); }
.fd-flow-tools {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 0.4rem;
}
.fd-inputs .form-control-sm { font-family: var(--mono); }
::deep .fsd-eyebrow {
color: var(--ink-faint);
font-size: 0.65rem;
letter-spacing: 0.06em;
text-transform: uppercase;
}
::deep .fsd-pane {
border: 1px solid var(--rule);
border-top: none;
padding: 0.6rem 0.75rem;
min-height: 6rem;
}
::deep .fsd-json {
font-family: var(--mono);
font-size: 0.75rem;
margin: 0;
white-space: pre-wrap;
word-break: break-word;
max-height: 18rem;
overflow: auto;
}
/* Step detail Log tab (step-logs plan 2026-09-09 D8): the thrown exception, then the folded lines. */
::deep .fsd-exc {
border: 1px solid var(--bad, var(--bs-danger, #e03131));
border-left-width: 4px;
border-radius: 4px;
background: var(--bad-bg, rgba(var(--bs-danger-rgb, 220, 53, 69), 0.08));
padding: 8px 12px;
margin-bottom: 10px;
}
::deep .fsd-exc-type {
font-family: var(--mono, var(--bs-font-monospace));
font-weight: 600;
color: var(--bad, var(--bs-danger, #e03131));
}
::deep .fsd-exc-detail {
margin: 6px 0 0;
font-family: var(--mono, var(--bs-font-monospace));
font-size: 0.75rem;
white-space: pre;
overflow-x: auto;
color: var(--ink-soft, var(--bs-secondary-color));
}
::deep .fsd-line-exc {
color: var(--ink-soft, var(--bs-secondary-color));
margin-top: 2px;
}
::deep .fsd-logctl {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 8px;
font-size: 0.8rem;
}
::deep .fsd-lvl {
display: inline-block;
min-width: 46px;
text-align: center;
font-size: 0.66rem;
font-weight: 600;
letter-spacing: 0.04em;
padding: 1px 6px;
border-radius: 3px;
}
::deep .fsd-lvl-info { color: var(--ink-soft, var(--bs-secondary-color)); background: var(--rule, rgba(0, 0, 0, 0.06)); }
::deep .fsd-lvl-warn { color: var(--warn, var(--bs-warning, #e8920c)); background: var(--warn-bg, rgba(var(--bs-warning-rgb, 255, 193, 7), 0.15)); }
::deep .fsd-lvl-error { color: var(--bad, var(--bs-danger, #e03131)); background: var(--bad-bg, rgba(var(--bs-danger-rgb, 220, 53, 69), 0.12)); }
::deep .fsd-lvl-debug { color: var(--ink-faint, var(--bs-tertiary-color)); background: transparent; border: 1px dashed var(--rule-strong, var(--bs-border-color)); }