/* machine.css — labels and the live lane over the WebGPU stage */
.mc-labels { position: absolute; inset: 0; pointer-events: none; font: 500 12px/1 var(--f-mono); color: var(--text-muted); }
.mc-l { position: absolute; transform: translateX(-50%); white-space: nowrap; font-variant-numeric: tabular-nums; animation: mc-in .6s var(--ease) both; }
.mc-out { transform: translateY(-50%); font: 500 14px/1.2 var(--f-ar); color: var(--text-muted); }
:root:lang(en) .mc-out { font-family: var(--f-lat); }
.mc-out b { font: 600 15px/1 var(--f-lat); color: var(--text); margin-inline-end: 6px; }
.mc-out.is-gold, .mc-out.is-gold b { color: var(--signature); }
.mc-peak { font: 600 13px/1 var(--f-lat); color: var(--text); }
.mc-chassis { font: 500 15px/1.4 var(--f-ar); color: var(--text); }
:root:lang(en) .mc-chassis { font-family: var(--f-lat); }
.mc-lane { position: absolute; inset-inline: 0; bottom: 0; width: 100%; pointer-events: none; }
@keyframes mc-in { from { opacity: 0; } to { opacity: 1; } }
.mf-bars rect { fill: var(--text); }
.mf-bars rect.is-gold { fill: var(--signature); }
.mf-bars text, .machine-fallback svg text { fill: var(--text-muted); font: 11px var(--f-lat); }
.mf-chassis { fill: none; stroke: var(--text); stroke-width: 2; }
