# Design ## Context La app usa nombres de iconos MDI, pero el set no estaba declarado explícitamente. El botón de navegación dependía de `d-md-none`, lo que puede ocultarlo en WebViews con un ancho reportado distinto al esperado. ## Goals / Non-Goals **Goals:** garantizar iconos MDI empaquetados, menú visible y diagnóstico claro de stock. **Non-Goals:** cambiar el application id, la base local o el flujo de firma Android. ## Decisions - Declarar `aliases`, `mdi` y `defaultSet` en `createVuetify` además de importar el CSS de MDI. - Usar un botón de menú explícito siempre visible; el drawer seguirá siendo permanente en escritorio y temporal en móvil. - Cargar stock desde movimientos y bloquear el agregado de productos sin existencias con explicación. ## Risks / Trade-offs - El botón de menú ocupa espacio adicional en escritorio, pero evita una dependencia frágil del breakpoint en WebView. - El stock se calcula localmente; esto es consistente con el modo offline.