@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-600-normal-BFCDtZfi.woff2) format("woff2"),url(/assets/fraunces-latin-600-normal-DL5QCzvS.woff) format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fraunces-latin-700-normal-CEOla-zY.woff2) format("woff2"),url(/assets/fraunces-latin-700-normal-DTjk5d1Q.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff")}:root{--ground: #eff2ef;--surface: #ffffff;--surface-2: #f6f8f5;--ink: #16201b;--muted: #5c6b62;--line: #dae2dc;--line-strong: #c3ced6;--debt: #ae3a26;--debt-soft: #f6e5e1;--save: #0a7b55;--save-soft: #e0eee6;--extra: #ad7c22;--extra-soft: #f5ecd9;--shadow: 0 1px 2px rgb(22 32 27 / 6%), 0 8px 24px -12px rgb(22 32 27 / 14%);--r: 10px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--ground: #0d130f;--surface: #151d18;--surface-2: #1b241e;--ink: #e7ede8;--muted: #93a399;--line: #24302a;--line-strong: #33423a;--debt: #c86249;--debt-soft: #33201b;--save: #1b9c7a;--save-soft: #12281f;--extra: #a98230;--extra-soft: #2b2418;--shadow: 0 1px 2px rgb(0 0 0 / 40%), 0 8px 24px -12px rgb(0 0 0 / 60%)}}:root[data-theme=dark]{--ground: #0d130f;--surface: #151d18;--surface-2: #1b241e;--ink: #e7ede8;--muted: #93a399;--line: #24302a;--line-strong: #33423a;--debt: #c86249;--debt-soft: #33201b;--save: #1b9c7a;--save-soft: #12281f;--extra: #a98230;--extra-soft: #2b2418;--shadow: 0 1px 2px rgb(0 0 0 / 40%), 0 8px 24px -12px rgb(0 0 0 / 60%)}*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink);font-family:IBM Plex Sans,system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-family:Fraunces,Iowan Old Style,Georgia,serif;text-wrap:balance}h1{font-size:clamp(26px,4vw,34px);font-weight:700;letter-spacing:-.015em}h2{font-size:19px;font-weight:700}h3{font-size:15px;font-weight:600}.num{font-family:IBM Plex Mono,ui-monospace,Menlo,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.eyebrow{margin:0;font-size:11px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}.app{max-width:1120px;margin:0 auto;padding:24px 20px 80px}.top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.nav{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:24px}.nav button{padding:7px 14px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:14px;font-weight:500}.nav button:hover{color:var(--ink);background:var(--surface-2)}.nav button[aria-current=page]{background:var(--surface);border-color:var(--line);color:var(--ink);box-shadow:var(--shadow)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:20px 22px}.grid{display:grid;gap:16px}.g2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.stack{display:flex;flex-direction:column;gap:16px}.fila{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.entre{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.cifra{display:block;font-size:30px;font-weight:600;line-height:1.15;margin-top:2px}.cifra.sm{font-size:22px}.nota{margin:0;font-size:13px;color:var(--muted)}.nota b{color:var(--ink);font-weight:600}.barra{height:9px;border-radius:5px;overflow:hidden;margin:14px 0 10px}.barra>i{display:block;height:100%;border-radius:5px;transition:width .35s ease}.barra.deuda{background:var(--debt-soft)}.barra.deuda>i{background:var(--debt)}.barra.ahorro{background:var(--save-soft)}.barra.ahorro>i{background:var(--save)}.punto{width:9px;height:9px;border-radius:2px;flex:none;display:inline-block}.pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap;background:var(--surface-2);color:var(--muted)}.pill.rojo{background:var(--debt-soft);color:var(--debt)}.pill.verde{background:var(--save-soft);color:var(--save)}.pill.dorado{background:var(--extra-soft);color:var(--extra)}.tabla-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px;table-layout:fixed}th:first-child,td:first-child{width:22%}td{overflow:hidden;text-overflow:ellipsis}th{text-align:center;padding:0 12px 9px 0;border-bottom:1px solid var(--line);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);white-space:normal;overflow-wrap:break-word}td{padding:10px 12px 10px 0;border-bottom:1px solid var(--line);vertical-align:middle;text-align:center}tr:last-child td{border-bottom:none}td .fila{flex-wrap:nowrap}td input,td select{min-width:0}th.n:last-child,td.n:last-child{padding-right:0}th:first-child,td:first-child{text-align:left}.fichas{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(430px,100%),1fr))}.ficha{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);overflow:hidden}.ficha.apagada{opacity:.55}.ficha.apagada:hover,.ficha.apagada:focus-within{opacity:1}.ficha>header{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--surface-2)}.ficha-nombre{display:flex;align-items:center;gap:8px;flex:1 1 220px;min-width:0}.ficha>header input.titulo{flex:1;min-width:0;width:auto;padding:4px 6px;border-color:transparent;background:transparent;font-weight:600;font-size:16px}.ficha>header input.titulo:hover{border-color:var(--line-strong)}.ficha>header input.titulo:focus{border-color:var(--line-strong);background:var(--surface)}.ficha-acciones{display:flex;align-items:center;gap:8px;flex:none;margin-left:auto}.ficha-acciones .pill{border:0;cursor:pointer;font:inherit;font-size:11px;font-weight:600}.ficha-cuerpo{padding:14px;display:flex;flex-direction:column;gap:14px;flex:1}.campos{display:grid;gap:12px 14px;grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.campos .campo{margin:0}.campos .campo.ancho{grid-column:span 2}.manejo>.eyebrow{display:block;margin-bottom:4px}.manejo .fila{gap:10px}.enmarcado.angosto{flex:none;width:130px}.campos .campo>.eyebrow{display:block;margin-bottom:4px}.campos .campo>.ayuda,.campo.alineado>.ayuda{display:block;margin:5px 0 0;min-height:18px;font-size:12px;color:var(--muted)}.enmarcado{display:flex;align-items:center;gap:2px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);padding-right:8px}.enmarcado:focus-within{outline:2px solid var(--save);outline-offset:2px}.enmarcado>input{border:0;background:transparent;border-radius:8px 0 0 8px;min-width:0;padding-right:2px}.enmarcado>input:focus-visible{outline:0}.enmarcado>.sufijo{flex:none;font-size:13px;color:var(--muted)}.enmarcado.fuerte>input{font-weight:600}.segmento{display:inline-flex;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);overflow:hidden;max-width:100%}.segmento button{border:0;background:transparent;cursor:pointer;padding:3px 9px;font:inherit;font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap;min-width:0}.segmento button[aria-pressed=true]{background:var(--ink);color:var(--ground)}.segmento button:not([aria-pressed=true]):hover{color:var(--ink)}.ficha-nombre>b{font-size:16px;font-weight:600;min-width:0}.marcar{list-style:none;margin:0;padding:0}.marcar>li{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:10px 0;border-bottom:1px solid var(--line)}.marcar>li:last-child{border-bottom:0}.marcar>li.hecho{opacity:.6}.marcar>li.hecho:hover,.marcar>li.hecho:focus-within{opacity:1}.marcar .que{display:flex;align-items:flex-start;gap:9px;flex:1 1 190px;min-width:0}.marcar .que>.punto{margin-top:7px}.marcar .que .texto{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 8px;min-width:0}.marcar .que .texto>b{font-weight:600}.marcar .que .texto>.nota{flex-basis:100%;font-size:12.5px}.marcar-accion{display:flex;align-items:center;gap:10px;flex:none;margin-left:auto}.marcar .cuanto{flex:none;width:130px;display:flex;flex-direction:column;gap:2px}.marcar .cuanto .ayuda{font-size:12px;color:var(--muted);text-align:right}.marcar .cuanto .enmarcado>input{text-align:right}button.estado{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:112px;padding:5px 12px;border-radius:999px;cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);font:inherit;font-size:12px;font-weight:600;color:var(--ink);white-space:nowrap}button.estado:hover{background:var(--surface-2)}button.estado.rojo{border-color:var(--debt);color:var(--debt);background:var(--debt-soft)}button.estado.dorado{border-color:var(--extra);color:var(--extra);background:var(--extra-soft)}button.estado.verde{border-color:var(--save);color:var(--save);background:var(--save-soft)}.entrada{display:flex;flex-wrap:wrap;align-items:flex-start;gap:16px 28px}.entrada>.campo{flex:0 0 190px}.entrada-resultado{flex:1 1 220px;min-width:0}.reparto{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.reparto-fila{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.reparto .barra{display:block;margin:5px 0 0;height:7px}.uso-cupo .barra{margin:0 0 6px}.uso-cupo .nota b.malo{color:var(--debt)}.ficha-pie{margin-top:auto;padding:11px 14px;border-top:1px solid var(--line);background:var(--surface-2);display:grid;gap:10px 14px;grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.dato{display:flex;flex-direction:column;gap:2px;min-width:0}.dato .valor,.dato .nota{font-size:14px}label{display:block;font-size:13px;font-weight:500;margin-bottom:4px}input,select,textarea{width:100%;padding:8px 10px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:14px}input[type=number]{font-family:IBM Plex Mono,monospace;font-variant-numeric:tabular-nums}input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid var(--save);outline-offset:2px}.campo{min-width:0}.campo .ayuda{font-size:12px;color:var(--muted);margin:4px 0 0}.detalle-forma{margin-top:16px;padding:14px 16px 16px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface-2)}.detalle-forma>.eyebrow{display:block;margin:0 0 10px}button.accion{padding:9px 18px;border:1px solid var(--save);border-radius:8px;background:var(--save);color:#fff;font:inherit;font-weight:600;font-size:14px;cursor:pointer}button.accion:hover{filter:brightness(1.08)}button.accion:disabled{opacity:.5;cursor:not-allowed;filter:none}button.suave{padding:7px 14px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:14px;cursor:pointer}button.suave:hover{background:var(--surface-2)}button.enlace{border:0;background:none;padding:0;color:var(--debt);font:inherit;font-size:13px;cursor:pointer;text-decoration:underline}.vacio{padding:34px 22px;text-align:center;border:1px dashed var(--line-strong);border-radius:var(--r);background:var(--surface-2)}.vacio h3{margin-bottom:6px}.vacio .nota{max-width:46ch;margin:0 auto 18px}.vacio .nota:last-child{margin-bottom:0}.pasos li.hecho{opacity:.5}.pasos li.hecho>b{text-decoration:line-through}.pasos li.hecho:before{content:"✓";background:var(--save);color:var(--surface);font-size:13px}.oculto{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);border:0;opacity:0}.aviso{padding:12px 14px;border-radius:8px;font-size:13.5px;border:1px solid var(--line);background:var(--surface-2)}.aviso.error{border-color:var(--debt);background:var(--debt-soft);color:var(--debt)}.aviso.ok{border-color:var(--save);background:var(--save-soft);color:var(--save)}svg{display:block}svg text{font-family:IBM Plex Mono,monospace;font-variant-numeric:tabular-nums}.pasos{list-style:none;counter-reset:paso;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.pasos li{counter-increment:paso;position:relative;padding-left:34px}.pasos li:before{content:counter(paso);position:absolute;left:0;top:1px;width:24px;height:24px;border-radius:999px;background:var(--save-soft);color:var(--save);font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center}.cargando{color:var(--muted);font-size:14px;padding:40px 0;text-align:center}.barra-carga{position:fixed;inset:0 0 auto 0;height:2px;z-index:10;background:var(--save);transform:scaleX(0);transform-origin:left;opacity:0;transition:opacity .25s ease,transform .5s ease;pointer-events:none}.barra-carga.activa{transform:scaleX(1);opacity:1}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media(max-width:860px),(pointer:coarse){.nav button,button.accion,button.suave,button.pill,button.estado,.segmento button{min-height:44px}button.pill{display:inline-flex;align-items:center;padding-inline:12px}button.enlace{min-height:44px;display:inline-flex;align-items:center;padding:0 8px}input,select,textarea{min-height:44px}input[type=checkbox],input[type=radio]{min-height:0;width:20px;height:20px}input,select,textarea{font-size:16px}}@media(max-width:860px){.app{padding:20px 16px 64px}.card{padding:18px 16px}}@media(max-width:640px){body{font-size:15px}.app{padding:16px 14px 56px}.card{padding:16px 14px}.grid,.stack{gap:12px}h1{font-size:25px}h2{font-size:18px}.cifra{font-size:26px}.cifra.sm{font-size:20px}.top{align-items:flex-start;gap:8px;margin-bottom:14px}.entre{flex-wrap:wrap}.card input[type=number]{max-width:none!important}.nav{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;margin:0 -14px 16px;padding:0 14px 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.nav::-webkit-scrollbar{display:none}.nav button{flex:none;scroll-snap-align:center;white-space:nowrap}}@media(max-width:640px){.tabla-scroll{overflow-x:visible}table.apilar{font-size:14px}table.apilar thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}table.apilar,table.apilar tbody,table.apilar tr,table.apilar td{display:block}table.apilar tr{border:1px solid var(--line);border-radius:var(--r);background:var(--surface-2);padding:12px 14px;margin-bottom:10px}table.apilar tr:last-child{margin-bottom:0}table.apilar td{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:3px 0;border:0;text-align:right}table.apilar td:before{content:attr(data-etiqueta);flex:none;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);text-align:left}table.apilar td:first-child{display:block;width:auto;text-align:left;font-weight:600;font-size:15px;padding:0 0 8px;margin-bottom:8px;border-bottom:1px solid var(--line)}table.apilar td:first-child:before{content:none}table.apilar td[data-etiqueta=""]:before{content:none}table.apilar td[data-etiqueta=""]{justify-content:flex-end;padding-top:8px}table.apilar td[colspan]{display:block;text-align:center}table.apilar td[colspan]:before{content:none}table.apilar td input[type=number]{max-width:none!important}}
