
Glydways
Lumasis is what the Metro standard becomes in software — the vehicles, the rider's phone, the platform kiosks, and the control room. Metro fixes the values; Lumasis decides how they behave when a screen has to change while a vehicle is moving.

The vehicles don't see the world the way people do — they see sensor data. The visual system is built from that machine perception, not layered on top of it afterward.
Built on Metro, so palette, icon, type, and motion resolve to four parameters — color, light, material, depth. Every surface inherits the grammar before it inherits a component.

Four parameters carry the whole system — color, light, material, depth. Every token below resolves to one of them, so a new surface is specified by naming values rather than by drawing a new component.


Token names come from the value itself — family from the HSL hue, step from the HSL lightness. Two designers naming the same swatch independently arrive at --lum-blue-52.
Core and applied light are the same family read at two levels — the applied set is the core color seen through refractive glass, not a second palette.
Depth is carried by opacity alone — five levels, .05 → .40, against a blur that never changes. Blur moved to motion, where it measures the gap between a moving object and the line it leaves behind.
A dark theme with glowing accents has to clear WCAG AA[1] on every primary text and control; each applied value sits 18 to 30 points of lightness above its core.
Frosted, Dark, Tinted, and Prismatic all carry text at the same lightness-lifted values, so contrast doesn't reset depending on which surface a control lands on.
The same lightness thresholds hold in the Command & Control view, where a missed color read costs more than it does on a platform sign.

The operator sees the same lane guidance and classification-confidence data the vehicle uses, not a translation of it — same color logic, same type scale, same iconography, at fleet scale. One system serves the person taking a ride and the person watching twenty, and a wrong read costs more at the second.









