13 claves (24 → 37). Censo aura 43 % → **80 %**; global del eje 61 %.
Su texto de estado y su detalle bajan UN paso del bundle por talla, y las TRES
coordenadas viajan juntas (tamaño, interlineado, tracking): doce declaraciones,
doce valores distintos, doce claves — 1:1, sin inflación. El valor sigue siendo
del bundle; el knob pasa a ser del componente. La decimotercera es
`idle-opacity`: el reposo no desaparece, se retira a media opacidad.
Fuera por identidad: el `--radius-full` del anillo (redondo por definición), los
cuatro `100%` del canvas y del SVG, y el `1px` × 2 de la región viva — la técnica
sr-only, la misma de `text-blur`.
DOCE ADJUDICACIONES, TODAS MEDIDAS, Y NINGUNA ES DEUDA:
- **Las seis tintas de estado y el halo pintan el FONDO DEL INDICADOR**, y la
demo corre con el canvas WebGL montado: la regla
`[data-aura-indicator]:has(canvas)` pone `background: none` A PROPÓSITO — el
orbe ES la presencia, y un disco detrás enturbia su silueta. Quitando el canvas
en vivo, el gradiente vuelve y las siete siguen al token
(oklch(0.6434 0 0) → rgb(1,2,3) dentro del radial-gradient).
- **El arco y el halo son SLOTS del anillo que sólo existen en los estados de
trabajo**; la demo se queda en la pista. Montados como
`<circle data-aura-ring-slot>` dentro del SVG real —que es exactamente lo que
el CSS selecciona—: 2px → 1234px, 1px → 1234px, 0.5 → 0.123.
- Las dos de transición, congeladas por el guard como en todo el catálogo.
Y una ceguera más del instrumento, la tercera de la sesión: **el guard no veía el
SVG del anillo** porque sus `<circle>` no llevan atributo `data-aura*`.
`extraNodes` los mete en el conjunto medido.
Gates: sonda antes/después **0 diffs en 1.710 valores** (9 nodos × 7 estados) ·
centinela 25/37 con las doce adjudicadas · censo --only 80 % · `--names` sin
desviadas · component-audit PASS · eidos-lint 0 invalid · suite eidos con el
único rojo conocido · rtl:check 0 · docs:check 0.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>