/* Signature glyphs — one per run. Hairline schematics in the annotation vocabulary: nodes, a flow direction, and the one element that makes the system what it is (a threshold gate, a boxed field, a fan-in, a hierarchy). Drawn on a 48×32 grid so every card carries the same optical weight. */ const GLYPH_VB = "0 0 48 32"; const gl = { stroke: "currentColor", strokeWidth: 1, fill: "none", strokeLinecap: "round", strokeLinejoin: "round", vectorEffect: "non-scaling-stroke" }; const acc = { stroke: "var(--sx-accent)", strokeWidth: 1.4, fill: "none", strokeLinecap: "round", strokeLinejoin: "round" }; const GLYPHS = { /* agent run: a chain that branches at a gate, one path returning to a person */ "workflow-agents": ( <> ), /* document intelligence: a page with one field boxed and pulled out */ "doc-intelligence": ( <> ), /* mdm: a hierarchy fanning down to meters */ mdm: ( <> ), /* billing: a meter dial resolving into a bill */ "utility-cis": ( <> ), /* agriculture: probes at depth feeding one valve decision */ agriculture: ( <> ), /* visual inspection: a conveyor, a camera cone, one item bracketed */ "visual-inspection": ( <> ), /* iot: devices reporting up, a command returning down */ "iot-platforms": ( <> ), /* complaints: lanes with one return path */ complaints: ( <> ), /* archivist: a query fanning into passages, one cited */ "doc-archivist": ( <> ), }; function SolutionGlyph({ id, size = 48, style }) { const g = GLYPHS[id]; if (!g) return null; return ( {g} ); } Object.assign(window, { SolutionGlyph, GLYPHS });