Toggle de Modo Oscuro Persistente
PxThemeSwitch es un input booleano controlado — no toca el DOM ni localStorage por sí mismo (ver Theming → Modo oscuro). Esta receta lo conecta por completo: aplica la clase .dark de la que dependen las variables CSS de la librería, recuerda la elección, y respeta la preferencia del sistema operativo en la primera visita.
Por qué la clase va en <html> y no en un <div> envolvente
Los overrides .dark de Praxis Vue viven en la clase .dark misma (.dark { --ui-primary: ...; } en base.css), así que funciona sin importar dónde la apliques en la cadena de ancestros. Ponerla en document.documentElement (<html>) en vez de un wrapper local hace que el modo oscuro también afecte todo lo que está fuera del punto de montaje de tu app Vue — el fondo nativo del <body>, controles de formulario nativos del navegador, y cualquier shell HTML estático alrededor de tu SPA.
Si solo quieres tematizar parte de una página, aplica .dark a ese contenedor en su lugar — las variables CSS se propagan normalmente.