Every IndustryOS app starts from this frame: navy sidebar, white topbar, one page rhythm, one component set, one motion language. Product colour appears in the logo slot and in status only.
Plan against actual across the site. Variances beyond tolerance require sign-off.
| Heading | Metres | Δ plan | Status |
|---|---|---|---|
| ND-14 Decline | 142.6 | −12.4 | Danger |
| ND-16 Crosscut | 96.2 | −6.2 | Warning |
| SD-08 Drive | 88.4 | −1.8 | Caution |
| SD-11 Ore drive | 120.8 | +2.4 | Healthy |
| WP-02 Portal | 120.8 | +3.1 | Healthy |
Every active heading and its progress against plan. Filter by area, crew, or state.
| Heading | Area | Metres | Crew | Status |
|---|---|---|---|---|
| ND-14 Decline | North decline | 142.6 | Crew A | Danger |
| ND-16 Crosscut | North decline | 96.2 | Crew B | Warning |
| SD-08 Drive | South decline | 88.4 | Crew A | Caution |
| ED-05 Decline | North decline | 74.0 | Crew C | Caution |
| SD-11 Ore drive | North decline | 120.8 | Crew B | Healthy |
| WP-02 Portal | West portal | 120.8 | Crew C | Healthy |
Three variances open. Anything beyond tolerance needs a superintendent sign-off before the next shift.
Three consecutive shifts behind the development schedule. Jumbo availability is the stated cause; recovery plan due this shift.
Barricade cure below target in Safewall. Pour rescheduled to the back shift.
Within tolerance. Review at the shift handover, no action required now.
Same frame, product identity. This variant goes further than the platform rule: the product colour replaces cyan as the interactive accent throughout — primary buttons, active nav indicator, links, avatar — alongside the lockup, the rule under the logo slot, the page eyebrow, and the card edge. Navy chrome, neutrals, and the four-step status scale are untouched.
Development and production against the approved weekly plan. Variances beyond ±5% require planner sign-off.
| Area | Plan | Actual | Variance |
|---|---|---|---|
| ND-14 DeclineJumbo 2 | 155.0 | 142.6 | ✕ −8.0% |
| ND-16 CrosscutJumbo 1 | 102.4 | 96.2 | ! −6.1% |
| SD-08 DriveJumbo 3 | 90.0 | 88.4 | ▲ −1.8% |
| SD-11 Ore driveJumbo 2 | 118.0 | 120.8 | ✓ +2.4% |
| WP-02 PortalJumbo 1 | 117.2 | 120.8 | ✓ +3.1% |
ND-14 and ND-16 are behind plan on ground support delays. Planner sign-off required before the Week 32 plan publishes.
Motion confirms a change; it never performs. Nothing in an operational UI moves for longer than 250ms, and safety-critical content never animates in — it appears.
One family, one grid, one stroke. Lucide at 18px in nav, buttons and table cells; 20px in page heads; 16px inside small buttons. Stroke stays at 1.75 to match Inter's weight and never drops below 1.5. Colour is always currentColor, so an icon inherits the status ink or button foreground it sits in.
Each role bundles size, weight and line-height, so a heading is a name rather than three numbers. Hierarchy is built from size and colour — weight tops out at 700, and 800 exists only inside logo artwork.
Components reference roles; themes swap values. An app imports styles.css and touches nothing else — no local hex, no redefined palette, no second truth.