/* FNXC:SystemPanel 2026-07-12-11:50: Operator System-controls panel styling for the Command Center System tab. Follows the tokenized cc-* rhythm (space/radius/surface vars) so control cards sit visually beside the SystemStatsArea telemetry cards. The rebuild output and log tail use a terminal-style scroll box bounded in height so streaming output never grows the page; the page must not scroll horizontally (pre wraps). */ /* FNXC:SystemPanel 2026-07-12-17:10: The System-controls refresh button must stay inline with the "System controls" title and pinned to the far right on every breakpoint. The shared .cc-area-section-header collapses to a left-aligned column at <=768px (correct for analytics areas), so scope a row+space-between override to the System tab only, using a two-class selector so it wins over the shared mobile rule. */ .cc-area-section-header.cc-system-controls-header { flex-direction: row; align-items: center; justify-content: space-between; } @media (max-width: 768px) { .cc-area-section-header.cc-system-controls-header { flex-direction: row; align-items: center; justify-content: space-between; } } .cc-syscontrols-grid { min-inline-size: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr)); gap: var(--space-md); } .cc-syscontrol-card { display: flex; flex-direction: column; gap: var(--space-sm); padding: var(--space-md); } .cc-syscontrol-head { display: inline-flex; align-items: center; gap: var(--space-sm); } .cc-syscontrol-icon { color: var(--text-muted); flex: 0 0 auto; } .cc-syscontrol-title { font-weight: 600; } .cc-syscontrol-desc { margin: 0; color: var(--text-muted); font-size: 0.8125rem; flex: 1 1 auto; } .cc-syscontrol-note { margin: 0; color: var(--text-muted); font-size: 0.75rem; font-style: italic; } .cc-syscontrol-cta { align-self: flex-start; } .cc-syscontrols-banner { display: flex; align-items: center; gap: var(--space-sm); padding: var(--space-sm) var(--space-md); margin-block-end: var(--space-md); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface-2, var(--surface)); } .cc-syscontrols-banner--back { justify-content: space-between; } .cc-syscontrols-banner--error { justify-content: space-between; border-color: var(--color-error); } .cc-syscontrols-job-status { font-size: 0.8125rem; color: var(--text-muted); } .cc-syscontrols-job-status--succeeded { color: var(--color-success); } .cc-syscontrols-job-status--failed { color: var(--color-error); } .cc-syscontrols-output { margin: 0; padding: var(--space-md); max-block-size: 20rem; overflow-y: auto; overflow-x: auto; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface-2, var(--surface)); font-family: var(--font-mono, ui-monospace, monospace); font-size: 0.75rem; line-height: 1.5; white-space: pre-wrap; word-break: break-word; } .cc-syscontrols-logs { display: flex; flex-direction: column; } .cc-syscontrols-log-line { display: flex; gap: var(--space-sm); min-inline-size: 0; } .cc-syscontrols-log-line--warn .cc-syscontrols-log-message { color: var(--color-warning); } .cc-syscontrols-log-line--error .cc-syscontrols-log-message { color: var(--color-error); } .cc-syscontrols-log-time { color: var(--text-muted); flex: 0 0 auto; } .cc-syscontrols-log-prefix { color: var(--text-muted); flex: 0 0 auto; } .cc-syscontrols-log-message { word-break: break-word; }