/* D5-F1: CSP safety — utilities extracted from inline style="..." refactor */
/* Version: 20260519a — see /tmp/d5f1_inventory.txt for crawl report */

.u-hidden              { display: none !important; }
.u-w-auto              { width: auto; }
.u-mono                { font-family: 'SF Mono', 'Menlo', monospace; font-size: 0.75rem; }
.u-text-13             { font-size: 0.8125rem; }
.u-text-12             { font-size: 12px; }
.u-text-muted          { color: var(--gray-500); }
.u-text-danger         { color: var(--u-danger); }
.u-fg-3                { color: var(--u-fg-3); }
.u-opacity-85          { opacity: 0.85; }
.u-truncate            { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.u-max-w-340           { max-width: 340px; }
.u-mt-18               { margin-top: 18px; }
.u-mb-18               { margin-bottom: 18px; }
.u-icon-spacing-sm     { margin-right: 6px; }
.u-icon-spacing        { margin-right: 0.5rem; }
.u-flex-between-wrap   { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem; }
.u-flex-col-gap-sm     { display: flex; flex-direction: column; gap: 0.5rem; }

/* Code blocks — used by compliance controls, auditor portal */
.u-code-block          { display: block; background: var(--gray-50); padding: 0.875rem 1rem; border-radius: var(--radius-md); font-family: 'SF Mono','Menlo',monospace; font-size: 0.8125rem; color: var(--gray-700); word-break: break-all; }

/* KPI icon badges — shared by incidents, dashboards */
.u-kpi-badge           { width: 40px; height: 40px; border-radius: 8px; display: flex; align-items: center; justify-content: center; }
.u-kpi-blue            { background: rgba(52,152,219,0.12); color: #3498DB; }
.u-kpi-orange          { background: rgba(230,126,34,0.12); color: var(--orange-high); }
.u-kpi-green           { background: rgba(39,174,96,0.12); color: var(--green-low); }
.u-kpi-red             { background: rgba(231,76,60,0.12); color: var(--red-critical); }
.u-kpi-purple          { background: rgba(155,89,182,0.12); color: #9B59B6; }
.u-kpi-amber           { background: var(--inconclusive-amber-bg); color: var(--inconclusive-amber); }

/* Framework badge — used by compliance controls */
.u-framework-badge     { font-size: 0.625rem; padding: 0.1875rem 0.375rem; }
