# Nexora Speed V4

## Objetivo

Reducir la sensación de peso al desplazarse y navegar entre módulos sin convertir WebEngine en SPA ni sacrificar la identidad visual de Nexora.

## Cambios principales

### Compositor / GPU
- Se elimina del DOM la capa global de 3 orbes desenfocados y 4 brasas animadas.
- Se reemplaza por gradientes radiales estáticos, sin `filter: blur()` ni animación continua.
- La topbar sticky deja de usar `backdrop-filter` permanente.
- Se retira `backdrop-filter` de botones, widgets, panels, rankings, UserCP, footer, stream dock y controles de contenido que permanecen en pantalla.
- Los overlays temporales (lightboxes/modales) pueden conservar blur porque solo existen durante interacción explícita.
- Se detienen animaciones decorativas infinitas en Castle Siege, Guías, WhatsApp, indicadores de actividad y módulos de reino.
- `nex-reveal` se anticipa y reduce de 700 ms a 320 ms.

### Terceros bajo demanda
- Twitch/TikTok ya no generan iframes durante la carga de página.
- El iframe se crea únicamente al abrir el panel y se destruye al cerrarlo.
- YouTube Music no carga `iframe_api` hasta que el usuario activa/reproducece la ambientación.
- El audio local usa `preload="none"`.
- Swiper CSS/JS se descarga únicamente cuando Content Hub o el slider se acercan al viewport.

### JavaScript global
- jQuery se elimina del frontend activo `nexoraves6custom`.
- Bootstrap JS se elimina del frontend; Bootstrap CSS se conserva por compatibilidad de layout.
- `main.js` y `events.js` se reescriben en JavaScript nativo.
- Tooltips de clase conservan su atributo `title`, por lo que tienen fallback nativo del navegador.
- Los temporizadores dejan de depender de ticks acumulados cuando la pestaña está oculta.

### Menos requests en Home
- El reloj del servidor se embebe como timestamp + offset en el HTML; ya no necesita `api/servertime.php` en la carga normal.
- `events.js` no consulta `api/events.php` si no hay contadores de evento en el DOM.
- Las imágenes del Content Hub pasan a `loading="lazy"` + `fetchpriority="low"`.

### Navegación
- Se agrega prefetch por intención para enlaces internos de la navegación.
- El prefetch solo se dispara tras hover/focus sostenido, se limita a 4 destinos y se desactiva con Data Saver / conexiones 2G.
- Se excluyen logout, cambio de idioma y descargas.

### Paint / layout
- Rankings Home, Castle Siege y footer utilizan `content-visibility:auto` con tamaño intrínseco de reserva.
- El glow rasterizado del Content Hub deja de usar blur.

### Transporte
- Se agrega compresión Brotli cuando Apache la soporta y DEFLATE como fallback.
- Los assets de `templates/nexoraves6custom/` reciben políticas explícitas de cache de 30 días.
- Los renders versionados de Arsenal conservan su cache `immutable` de 1 año.

## Alcance protegido

No se modifican:
- compra de Arsenal;
- saldo WCoinC;
- stock;
- seriales;
- Warehouse;
- encoder 0–511;
- Smart Options;
- catálogos técnicos de ítems/opciones;
- estructura SQL.

## Cache busting

- `nexora.css?v=55`
- `itemshop.css?v=7`
- `main.js?v=3`
- `music-player.js?v=5`
- `nexora.js?v=19`
- `events.js?v=3`
