Contexto — Variantes de componente: el mismo botón, cuatro roles
Primary

acción principal

Secondary

acción alternativa

Destructive

acción irreversible

Ghost

navegación, acciones bajas

Disabled

opacity 40%, no interactivo

Pressed

estado activo, feedback táctil

Contexto — Loading states según duración de operación
Operación <500ms

Sin indicador. La respuesta es inmediata.

Operación 500ms–2s

Spinner dentro del botón. No se deshabilita — muestra el estado.

Carga de lista >2s

Skeleton. El layout ya existe — solo falta el contenido.