:root{--bg: #f4f6fa;--card: #ffffff;--texto: #0f172a;--muted: #64748b;--borde: #e2e8f0;--primario: #0284c7;--rojo: #dc2626;--rojo-bg: #fee2e2;--amarillo: #b45309;--amarillo-bg: #fef3c7;--verde: #15803d;--verde-bg: #dcfce7;--gris-bg: #f1f5f9;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #0b1120;--card: #162033;--texto: #e2e8f0;--muted: #94a3b8;--borde: #26324a;--primario: #38bdf8;--rojo: #f87171;--rojo-bg: #3b1518;--amarillo: #fbbf24;--amarillo-bg: #3a2a0b;--verde: #4ade80;--verde-bg: #0f2e1b;--gris-bg: #1e293b}}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--texto);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}h1{font-size:1.6rem;margin:0}.muted{color:var(--muted)}.error{color:var(--rojo);margin:0}.centro{display:grid;place-items:center;min-height:100vh}.pantalla{max-width:560px;margin:0 auto;padding:calc(env(safe-area-inset-top) + 12px) 16px calc(env(safe-area-inset-bottom) + 150px)}.barra{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;margin-bottom:12px}.titulo-chico{font-size:1.05rem}.btn{font:inherit;border:0;border-radius:12px;padding:14px 18px;cursor:pointer}.btn:disabled{opacity:.6}.btn.primario{background:var(--primario);color:#fff;font-weight:600}.btn.link{background:none;color:var(--primario);padding:8px 4px;font-size:1rem}.btn.peligro{width:100%;margin-top:24px;background:var(--card);color:var(--rojo);border:1px solid var(--borde)}.fab{position:fixed;right:20px;bottom:calc(env(safe-area-inset-bottom) + 84px);width:60px;height:60px;border-radius:50%;border:0;background:var(--primario);color:#fff;font-size:2rem;line-height:1;box-shadow:0 6px 20px #0284c759;cursor:pointer}.login{max-width:380px;margin:0 auto;padding:calc(env(safe-area-inset-top) + 64px) 24px 24px;text-align:center}.login-logo{width:84px;height:84px;border-radius:20px;margin-bottom:12px}.login .form{text-align:left;margin-top:28px}.form{display:flex;flex-direction:column;gap:16px}.form label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;color:var(--muted)}.form input,.form select,.form textarea{font:inherit;font-size:16px;color:var(--texto);background:var(--card);border:1px solid var(--borde);border-radius:12px;padding:13px 14px;width:100%;-webkit-appearance:none;appearance:none}.form input[type=date]{min-height:50px}.fila-fotos{display:grid;grid-template-columns:1fr 1fr;gap:12px}.selector-foto{cursor:pointer;text-align:center}.selector-foto img,.selector-foto .placeholder{width:100%;aspect-ratio:1.58;object-fit:cover;border-radius:12px;border:1px dashed var(--borde);background:var(--card)}.selector-foto .placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:1.6rem}.selector-foto small{font-size:.75rem;color:var(--muted)}.resumen{border-radius:14px;padding:14px 16px;font-weight:600;margin-bottom:16px}.resumen.alerta{background:var(--rojo-bg);color:var(--rojo)}.resumen.ok{background:var(--verde-bg);color:var(--verde)}.vacio{text-align:center;padding:48px 16px}.lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.item{width:100%;display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--card);border:1px solid var(--borde);border-radius:16px;font:inherit;color:inherit;text-align:left;cursor:pointer}.emoji{font-size:1.8rem}.emoji.grande{font-size:3rem}.item-texto{flex:1;display:flex;flex-direction:column;gap:2px}.estado{font-size:.88rem}.punto{width:12px;height:12px;border-radius:50%;flex-shrink:0}.punto.vencido,.punto.rojo{background:var(--rojo)}.punto.amarillo{background:var(--amarillo)}.punto.verde{background:var(--verde)}.punto.sin_fecha{background:var(--borde)}.estado.vencido,.estado.rojo{color:var(--rojo)}.estado.amarillo{color:var(--amarillo)}.estado.verde{color:var(--verde)}.estado.sin_fecha{color:var(--muted)}.detalle-cabecera{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;margin:8px 0 20px}.chip{padding:6px 12px;border-radius:999px;font-size:.9rem;font-weight:600}.chip.vencido,.chip.rojo{background:var(--rojo-bg);color:var(--rojo)}.chip.amarillo{background:var(--amarillo-bg);color:var(--amarillo)}.chip.verde{background:var(--verde-bg);color:var(--verde)}.chip.sin_fecha{background:var(--gris-bg);color:var(--muted)}.datos{background:var(--card);border:1px solid var(--borde);border-radius:16px;padding:4px 16px;margin:0 0 16px;display:grid;grid-template-columns:auto 1fr}.datos dt,.datos dd{padding:12px 0;border-bottom:1px solid var(--borde);margin:0}.datos dt{color:var(--muted);padding-right:16px}.datos dd{text-align:right;overflow-wrap:anywhere}.datos dt:last-of-type,.datos dd:last-of-type{border-bottom:0}.datos .notas{white-space:pre-wrap;text-align:left}.fotos{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fotos figure{margin:0;text-align:center;font-size:.85rem;color:var(--muted)}.fotos img,.foto-cargando{width:100%;aspect-ratio:1.58;object-fit:cover;border-radius:12px;border:1px solid var(--borde);cursor:zoom-in;display:grid;place-items:center}.visor{position:fixed;inset:0;background:#000000eb;display:grid;place-items:center;padding:16px;z-index:10}.visor img{max-width:100%;max-height:100%;border-radius:8px}.tabs{position:fixed;left:0;right:0;bottom:0;display:flex;justify-content:center;gap:8px;padding:8px 16px calc(env(safe-area-inset-bottom) + 8px);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--borde);z-index:5}.tabs button{flex:1;max-width:200px;font:inherit;font-size:.78rem;background:none;border:0;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px;cursor:pointer}.tabs button span{font-size:1.35rem;filter:grayscale(1);opacity:.7}.tabs button.activa{color:var(--primario);font-weight:600}.tabs button.activa span{filter:none;opacity:1}.chips{display:flex;gap:8px;overflow-x:auto;margin:0 -16px 14px;padding:0 16px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chips button{font:inherit;font-size:.9rem;white-space:nowrap;border:1px solid var(--borde);background:var(--card);color:var(--texto);border-radius:999px;padding:7px 14px;cursor:pointer}.chips button.activa{background:var(--primario);border-color:var(--primario);color:#fff}.chico{font-size:.85rem}.ayuda{margin:-8px 0 0}.flecha{color:var(--muted);font-size:1.4rem}.ok-texto{color:var(--verde);margin:0}.peligro-texto{color:var(--rojo)!important}.avatar{width:44px;height:44px;border-radius:50%;background:var(--gris-bg);color:var(--primario);display:grid;place-items:center;font-weight:700;flex-shrink:0}.avatar.grande{width:84px;height:84px;font-size:1.8rem}.item.estatico{cursor:default}.lista li.item{list-style:none}h2.seccion{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:20px 4px 8px}.form h2.seccion{margin:12px 0 -4px}.seccion-con-boton{display:flex;align-items:center;justify-content:space-between}.seccion-con-boton .btn{padding:0;margin-top:12px}.notas-bloque{background:var(--card);border:1px solid var(--borde);border-radius:16px;padding:14px 16px;margin:0;white-space:pre-wrap}.datos a{color:var(--primario);text-decoration:none}.pasos{color:var(--muted);padding-left:20px;margin:0 0 16px;line-height:1.5}.pdf-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;aspect-ratio:1.58;border-radius:12px;border:1px solid var(--borde);background:var(--card);font-size:2rem;text-decoration:none;color:var(--primario)}.pdf-tile small{font-size:.8rem}.selector-foto small{max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chips button.encendida{background:color-mix(in srgb,var(--c) 18%,var(--card));border-color:var(--c);color:var(--texto)}.chips button.apagada{opacity:.45;text-decoration:line-through}.navegador{display:flex;align-items:center;gap:8px;margin:4px 0 8px;font-weight:600}.navegador .btn{font-size:1.4rem;padding:4px 10px}.navegador .hoy{font-size:.95rem;margin-left:auto}.aviso{background:var(--card);border:1px solid var(--borde);border-radius:16px;padding:16px;margin-bottom:16px;text-align:center}.aviso p{margin:0 0 12px}.dia h2.seccion{text-transform:none;letter-spacing:0;font-size:.95rem}.hoy-titulo{color:var(--primario)!important}.eventos{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.eventos li{display:flex;gap:12px;background:var(--card);border:1px solid var(--borde);border-left:4px solid var(--c);border-radius:12px;padding:10px 12px}.evento-hora{white-space:pre-line;font-size:.8rem;color:var(--muted);min-width:52px;font-variant-numeric:tabular-nums}.evento-texto{display:flex;flex-direction:column;gap:2px;min-width:0}.evento-texto strong{overflow-wrap:anywhere}.punto-color{width:16px;height:16px;border-radius:50%;flex-shrink:0}.colores{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.colores button{width:34px;height:34px;border-radius:50%;border:3px solid transparent;cursor:pointer}.colores button.elegido{border-color:var(--texto)}.sube{color:var(--verde)}.baja{color:var(--rojo)}.variacion{font-weight:600;font-size:.95rem;font-variant-numeric:tabular-nums}.hero-cartera{display:flex;flex-direction:column;gap:4px;background:var(--card);border:1px solid var(--borde);border-radius:16px;padding:16px;margin-bottom:16px}.hero-numero{font-size:2rem;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.posiciones{list-style:none;margin:0 0 12px;padding:0;background:var(--card);border:1px solid var(--borde);border-radius:16px;overflow:hidden}.posiciones li+li{border-top:1px solid var(--borde)}.pos-fila{width:100%;display:flex;align-items:center;gap:12px;padding:14px 16px;background:none;border:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.pos-id{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.pos-valor{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-variant-numeric:tabular-nums}.pos-detalle{padding:0 16px 16px;display:flex;flex-direction:column;gap:10px}.pos-desc{margin:0}.segmentos{display:flex;background:var(--gris-bg);border-radius:10px;padding:3px}.segmentos button{flex:1;font:inherit;font-size:.85rem;font-weight:600;border:0;background:none;color:var(--muted);padding:7px 0;border-radius:8px;cursor:pointer}.segmentos button.activa{background:var(--card);color:var(--texto);box-shadow:0 1px 3px #00000026}.grafico{margin:0}.grafico svg{width:100%;height:auto;display:block;touch-action:pan-y}.grafico-tooltip{font-size:.9rem;min-height:1.4em;font-variant-numeric:tabular-nums}.grafico-vacio{height:150px;display:grid;place-items:center}.g-eje{stroke:var(--borde);stroke-width:1}.g-linea{fill:none;stroke:var(--primario);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.g-area{fill:var(--primario);opacity:.1}.g-etiqueta{font-size:10px;fill:var(--muted);font-variant-numeric:tabular-nums}.g-cruz{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.g-punto{fill:var(--primario);stroke:var(--card);stroke-width:2}.aviso.izquierda{text-align:left}.aviso code{font-size:.85em;background:var(--gris-bg);padding:1px 5px;border-radius:4px}.tabs button{font-size:.72rem}:root{--serie-1: #2a78d6;--serie-2: #eb6834;--serie-3: #1baf7a}@media(prefers-color-scheme:dark){:root{--serie-1: #3987e5;--serie-2: #d95926;--serie-3: #199e70}}.s1{--serie: var(--serie-1)}.s2{--serie: var(--serie-2)}.s3{--serie: var(--serie-3)}.serie-linea{fill:none;stroke:var(--serie);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.serie-punto{fill:var(--serie);stroke:var(--card);stroke-width:2}.g-grilla{stroke:var(--borde);stroke-width:1;opacity:.6;vector-effect:non-scaling-stroke}.g-cero{stroke:var(--muted);stroke-width:1;vector-effect:non-scaling-stroke}.g-etiqueta-serie{font-size:10px;fill:var(--texto);font-weight:600}.panel-grafico{background:var(--card);border:1px solid var(--borde);border-radius:16px;padding:12px 12px 8px}.leyenda{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:.85rem;margin-bottom:6px}.leyenda-item{display:inline-flex;align-items:center;gap:6px}.leyenda-marca{display:inline-block;width:14px;height:3px;border-radius:2px;background:var(--serie);vertical-align:middle}.leyenda-tabla{margin-left:auto}.tt-item{display:inline-flex;align-items:center;gap:4px;margin-left:10px;font-size:.85rem}.tabla-meses{width:100%;border-collapse:collapse;font-size:.85rem;font-variant-numeric:tabular-nums}.tabla-meses th,.tabla-meses td{padding:6px 4px;border-bottom:1px solid var(--borde);text-align:right}.tabla-meses th:first-child,.tabla-meses td:first-child{text-align:left}.tabla-meses th{color:var(--muted);font-weight:600}.movs{list-style:none;margin:0;padding:0 12px;background:var(--card);border:1px solid var(--borde);border-radius:16px}.movs li{display:flex;gap:10px;align-items:baseline;padding:10px 0;font-size:.9rem}.movs li+li{border-top:1px solid var(--borde)}.mov-fecha{color:var(--muted);font-size:.8rem;min-width:48px;font-variant-numeric:tabular-nums}.mov-desc{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mov-monto{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.btn.secundario{background:var(--card);color:var(--primario);border:1px solid var(--borde);font-weight:600}.btn.ancho{width:100%}.chico-btn{font-size:.85rem!important;padding:0 4px!important}.form-linea{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.form-linea input{font:inherit;font-size:16px;width:90px;padding:4px 8px;border-radius:8px;border:1px solid var(--borde);background:var(--bg);color:var(--texto)}.form-linea.grande input{width:180px;font-size:1.5rem;font-weight:700}.segmentos.mini{padding:2px}.segmentos.mini button{padding:5px 12px;font-size:.8rem}.importar{background:var(--card);border:1px solid var(--borde);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px}.soltar{display:flex;flex-direction:column;align-items:center;gap:4px;padding:20px;border:2px dashed var(--borde);border-radius:14px;cursor:pointer;text-align:center}.centro-chico{text-align:center;padding:16px 0}.centro-chico p{margin:6px 0}.spinner{width:32px;height:32px;margin:0 auto 8px;border-radius:50%;border:3px solid var(--borde);border-top-color:var(--primario);animation:girar .9s linear infinite}@keyframes girar{to{transform:rotate(360deg)}}.resumen-import{display:flex;gap:16px;flex-wrap:wrap}.resumen-import>span{display:flex;flex-direction:column;font-variant-numeric:tabular-nums}.check{display:flex;gap:8px;align-items:center;font-size:.9rem}.tabs{gap:0;padding-left:4px;padding-right:4px}.tabs button{font-size:.66rem;padding:4px 0}.tabs button span{font-size:1.25rem}.item-texto{min-width:0}.item.estatico .btn.link{padding:8px 4px;font-size:.9rem;flex-shrink:0}.tabs .marca,.tabs .salir-lateral{display:none}@media(max-width:899px){.tabs.oculta-movil{display:none}}@media(min-width:900px){h1{font-size:1.9rem}.tabs{top:0;bottom:0;right:auto;width:232px;flex-direction:column;justify-content:flex-start;gap:2px;padding:20px 12px;background:var(--card);border-top:0;border-right:1px solid var(--borde);-webkit-backdrop-filter:none;backdrop-filter:none}.tabs .marca{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.1rem;padding:4px 12px 20px}.tabs .marca img{width:32px;height:32px;border-radius:8px}.tabs button{flex:none;max-width:none;flex-direction:row;justify-content:flex-start;gap:12px;font-size:.95rem;padding:10px 12px;border-radius:10px;color:var(--texto)}.tabs button span{font-size:1.15rem;filter:none;opacity:1;width:24px;text-align:center}.tabs button:hover{background:var(--gris-bg)}.tabs button.activa{background:color-mix(in srgb,var(--primario) 14%,transparent);color:var(--primario)}.tabs .salir-lateral{display:flex;margin-top:auto;color:var(--muted)}.contenido{margin-left:232px}.pantalla{max-width:1080px;padding:32px 48px 96px}.barra{margin-bottom:20px}.lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.chips{margin:0 0 16px;padding:0;flex-wrap:wrap;overflow:visible}.form{max-width:640px}.datos,.notas-bloque{max-width:760px}.fotos{max-width:640px}.detalle-cabecera{align-items:flex-start;text-align:left}.btn.peligro{width:auto;padding:12px 24px}.importar,.btn.secundario.ancho{max-width:760px}.fab{right:48px;bottom:36px}.item:not(.estatico):hover,.pos-fila:hover,.chips button:hover{background:var(--gris-bg)}.btn.link:hover{text-decoration:underline}.btn.primario:hover{filter:brightness(1.08)}.item,.pos-fila{transition:background .12s}.hero-cartera{padding:20px 24px}.hero-numero{font-size:2.4rem}.panel-grafico{padding:16px 20px 12px}.g-etiqueta,.g-etiqueta-serie{font-size:12px}.grafico-vacio{height:240px}}@media(min-width:1280px){.pantalla.bancos{max-width:1280px;display:grid;grid-template-columns:minmax(340px,420px) 1fr;column-gap:32px;align-items:start}.pantalla.bancos>.barra,.pantalla.bancos>.error,.pantalla.bancos>.aviso{grid-column:1 / -1}.pantalla.bancos>.col-izq{grid-column:1}.pantalla.bancos>.col-der{grid-column:2}}@media(min-width:900px){.solo-movil{display:none}}
