:root{--tema:#0f766e;--tema-suave:#ccfbf1;--fondo:#f6f7f9;--superficie:#fff;--texto:#1c2430;--texto-suave:#5b6675;--borde:#dde2e8;--error:#b42318;--exito:#067647;--aviso:#fff4d6;--radio:14px;--nav-alto:64px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;-webkit-text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--tema:#2dd4bf;--tema-suave:#134e4a;--fondo:#0d1117;--superficie:#161b22;--texto:#e6edf3;--texto-suave:#9aa5b1;--borde:#2d333b;--error:#ff7b72;--exito:#3fb950;--aviso:#3b2e0a}}*{box-sizing:border-box}html,body{background:var(--fondo);color:var(--texto);overscroll-behavior-y:none;margin:0}body{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit;color:inherit}input,select{font-size:16px}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.pantalla{max-width:560px;padding:calc(env(safe-area-inset-top) + 16px) 16px calc(var(--nav-alto) + env(safe-area-inset-bottom) + 24px);margin:0 auto}.pantalla.centrada{min-height:100dvh;padding-bottom:calc(env(safe-area-inset-bottom) + 24px);flex-direction:column;justify-content:center;display:flex}h1{margin:0 0 16px;font-size:1.6rem}h2{margin:0 0 12px;font-size:1.1rem}.marca{color:var(--tema);text-align:center;font-size:2rem}.tarjeta{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);flex-direction:column;gap:12px;margin-bottom:16px;padding:16px;display:flex}.tarjeta p{margin:0}.campo{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.campo>span{color:var(--texto-suave);font-size:.85rem}.campo input,.campo select,.edicion-categoria input{border:1px solid var(--borde);background:var(--superficie);border-radius:10px;width:100%;min-height:46px;padding:12px}.campo input.codigo{letter-spacing:.4em;text-align:center;font-size:1.6rem}.boton{cursor:pointer;border:1px solid #0000;border-radius:12px;min-height:50px;padding:12px 18px;font-weight:600}.boton:disabled{opacity:.55}.boton.primario{background:var(--tema);color:#fff}@media (prefers-color-scheme:dark){.boton.primario{color:#04201d}}.boton.secundario{background:var(--superficie);border-color:var(--borde)}.boton.peligro{border-color:var(--error);color:var(--error);background:0 0;width:100%;margin-top:8px}.enlace{color:var(--tema);cursor:pointer;background:0 0;border:none;padding:8px 0;font-weight:500}.volver{margin-bottom:4px}.casilla{color:var(--texto-suave);align-items:center;gap:8px;font-size:.9rem;display:flex}.casilla input{width:20px;height:20px}details summary{cursor:pointer;list-style:none}.form-contrasena{flex-direction:column;gap:10px;margin-top:8px;display:flex}.error{color:var(--error);margin:0}.aviso{background:var(--aviso);border-radius:10px;padding:12px}.ayuda,.vacio{color:var(--texto-suave);font-size:.9rem}.vacio{text-align:center;padding:24px 0}.etiqueta{background:var(--aviso);border-radius:99px;margin-left:8px;padding:2px 8px;font-size:.75rem;display:inline-block}.form-gasto{flex-direction:column;gap:16px;display:flex}.campo-monto{background:var(--superficie);border:2px solid var(--tema);border-radius:var(--radio);align-items:center;padding:8px 16px;display:flex}.campo-monto .simbolo{color:var(--texto-suave);margin-right:6px;font-size:2rem}.campo-monto input{background:0 0;border:none;outline:none;width:100%;min-width:0;font-size:2.2rem;font-weight:700}.chips{border:none;grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;display:grid}.chip{border:1px solid var(--borde);background:var(--superficie);border-left:5px solid var(--color);cursor:pointer;text-overflow:ellipsis;border-radius:12px;min-height:48px;padding:6px;font-size:.88rem;overflow:hidden}.chip.activa{background:var(--color);color:#fff;border-color:var(--color);font-weight:600}.fila,.fila-form,.filtros,.acciones{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.acciones>.boton{flex:1}.toast{left:16px;right:16px;bottom:calc(var(--nav-alto) + env(safe-area-inset-bottom) + 12px);background:var(--texto);max-width:528px;color:var(--fondo);border-radius:12px;margin:0 auto;padding:12px 16px;animation:4s forwards desvanecer;position:fixed}@keyframes desvanecer{0%,80%{opacity:1}to{opacity:0}}.barra-estado{z-index:5;padding:calc(env(safe-area-inset-top) + 6px) 12px 6px;background:var(--aviso);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;font-size:.88rem;display:flex;position:sticky;top:0}.barra-estado .enlace{padding:0}.filtros .campo.ancho{flex-basis:100%}.resumen-lista{margin:16px 0 8px}.lista-gastos,.lista-categorias,.desglose{margin:0;padding:0;list-style:none}.fila-gasto{border:none;border-bottom:1px solid var(--borde);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:12px;width:100%;padding:12px 4px;display:flex}.fila-gasto .detalle{flex-direction:column;flex:1;min-width:0;display:flex}.fila-gasto small{color:var(--texto-suave);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.fila-gasto small.pendiente{color:#b54708}.fila-gasto small.error{color:var(--error)}.monto{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.punto{border-radius:50%;flex-shrink:0;width:12px;height:12px}.modal{z-index:20;background:#00000073;align-items:flex-end;display:flex;position:fixed;inset:0}.hoja{background:var(--fondo);width:100%;max-width:560px;padding:20px 16px calc(env(safe-area-inset-bottom) + 20px);border-radius:18px 18px 0 0;max-height:92dvh;margin:0 auto;overflow-y:auto}.segmentos{background:var(--borde);border-radius:10px;padding:3px;display:flex}.segmentos button{cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:10px}.segmentos button.activo{background:var(--superficie);font-weight:600}.periodo{justify-content:space-between;align-items:center;margin:12px 0;font-weight:600;display:flex}.periodo button{border:1px solid var(--borde);background:var(--superficie);cursor:pointer;border-radius:50%;width:44px;height:44px;font-size:1.5rem}.periodo button:disabled{opacity:.35}.total-grande{text-align:center;margin:16px 0}.total-grande strong{font-variant-numeric:tabular-nums;font-size:2.4rem;display:block}.total-grande small,.indicadores small{color:var(--texto-suave)}.comparacion{color:var(--texto-suave);margin:4px 0 0}.comparacion.sube{color:var(--error)}.comparacion.baja{color:var(--exito)}.indicadores{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.indicadores>div{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);flex-direction:column;padding:12px;display:flex}.grafico{max-width:260px;margin:0 auto 16px}.desglose li{border-bottom:1px solid var(--borde);padding:10px 0}.desglose-fila{align-items:center;gap:8px;display:flex}.desglose-fila .nombre{flex:1}.desglose small{color:var(--texto-suave)}.barra{background:var(--borde);border-radius:3px;height:6px;margin:6px 0 4px;overflow:hidden}.barra span{height:100%;display:block}.lista-categorias{margin-bottom:16px}.lista-categorias li{border-bottom:1px solid var(--borde);align-items:center;gap:12px;padding:8px 0;display:flex}.lista-categorias li.inactiva{opacity:.5}.lista-categorias .nombre{flex:1}.edicion-categoria{flex-direction:column;gap:10px;width:100%;display:flex}.colores{flex-wrap:wrap;gap:8px;display:flex}.colores button{cursor:pointer;border:3px solid #0000;border-radius:50%;width:36px;height:36px}.colores button.activo{border-color:var(--texto)}.instalar{text-align:center;align-items:center}.icono-app{border-radius:20px;margin-bottom:8px}.pasos{text-align:left;background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);padding:16px 16px 16px 36px;line-height:1.6}.pasos li+li{margin-top:8px}.icono-compartir{vertical-align:-5px;fill:none;stroke:#0a84ff;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px;margin:0 4px}.navegacion{background:var(--superficie);border-top:1px solid var(--borde);padding-bottom:env(safe-area-inset-bottom);z-index:10;display:flex;position:fixed;bottom:0;left:0;right:0}.navegacion button{height:var(--nav-alto);color:var(--texto-suave);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.72rem;display:flex}.navegacion button.activa{color:var(--tema);font-weight:600}.navegacion svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:24px;height:24px}
