diff --git a/CLAUDE.md b/CLAUDE.md
new file mode 100644
index 0000000..1d62fde
--- /dev/null
+++ b/CLAUDE.md
@@ -0,0 +1,29 @@
+# rm-PAGOs — Sistema de Gestión de Gastos y Pagos
+
+## Repositorio Git
+
+**Remote actual:** Gitea DIIAA — `http://10.0.10.205:3000/rmonla/rm-PAGOs.git`
+
+> ⚠️ La carpeta local está en `~/Documentos/GitHub/rm-PAGOs/` por convención de nombre de directorio,
+> pero el repositorio **ya fue migrado a Gitea** y NO apunta a GitHub.
+> Verificar siempre con `git remote -v` antes de operar.
+
+## Stack Técnico
+
+| Capa | Tecnología |
+| :--- | :--- |
+| **Frontend** | HTML + CSS Vainilla + JS (diseño Lumina Finance / Quiet Wealth) |
+| **Backend** | PHP 8.2 |
+| **Base de Datos** | SQLite3 |
+| **Despliegue** | LXC `srvv-nginx-rm` (Debian 12, NGINX 1.22.1, HTTPS) |
+
+## Estructura
+
+```
+pagos/ → Aplicación desplegable (index.html, css/, api/, db/)
+docs/plan/ → Plan de desarrollo (00_PLAN.md)
+```
+
+## Plan de Desarrollo
+
+Ver [`docs/plan/00_PLAN.md`](docs/plan/00_PLAN.md) — fases: Frontend estático → Backend PHP/SQLite → Integración → Despliegue.
diff --git a/pagos/add.php b/pagos/add.php
new file mode 100644
index 0000000..0e87e11
--- /dev/null
+++ b/pagos/add.php
@@ -0,0 +1,190 @@
+query("SELECT id, nombre FROM categorias ORDER BY nombre")->fetchAll(PDO::FETCH_ASSOC);
+?>
+
+
+
+
+
+Nuevo Movimiento — Quiet Wealth
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Nuevo Movimiento
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ expand_more
+
+
+
+
+
+
+
+
+ calendar_today
+
+
+
+
+
+
+ edit_note
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pagos/js/add.js b/pagos/js/add.js
index 0d51807..7615524 100644
--- a/pagos/js/add.js
+++ b/pagos/js/add.js
@@ -13,27 +13,7 @@ document.addEventListener('DOMContentLoaded', () => {
// Default a hoy
iptFecha.valueAsDate = new Date();
- // Cargar categorías
- cargarCategorias();
-
- async function cargarCategorias() {
- const sel = document.getElementById('ui-categoria');
- try {
- const r = await apiFetch('api/categorias.php');
- if (!r) return; // redirigió a login
- const data = await r.json();
- if (!data.categorias?.length) {
- sel.innerHTML = '';
- return;
- }
- sel.innerHTML = data.categorias.map(c =>
- ``
- ).join('');
- } catch (e) {
- console.error('Error cargando categorías:', e);
- sel.innerHTML = '';
- }
- }
+ // Categorías ya vienen renderizadas por PHP (add.php)
// Tipo selector
const updateTipoUI = () => {