@font-face{font-family:Bungee Inline;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bungee-inline-vietnamese-400-normal-CzgLcRNb.woff2)format("woff2"),url(/assets/bungee-inline-vietnamese-400-normal-B62QYqWO.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bungee Inline;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bungee-inline-latin-ext-400-normal-ypmThfHB.woff2)format("woff2"),url(/assets/bungee-inline-latin-ext-400-normal-DzK9CibT.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bungee Inline;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bungee-inline-latin-400-normal-o2cXPa_i.woff2)format("woff2"),url(/assets/bungee-inline-latin-400-normal-DbnS7Vcy.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#f7f3e9;--paper-input:#fbf8f0;--desk:#e7decb;--ink:#1e1c17;--muted:#7c7159;--rule:#c9bd9c;--box:#dcd3bc;--green:#2e6b3e;--red:#b23a2e;--mono:ui-monospace, "SF Mono", Menlo, Consolas, "Courier New", monospace;--display:"Bungee Inline", ui-monospace, monospace;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-pill:999px;--shadow-card:0 10px 28px #1e1c1712;--shadow-float:0 16px 42px #14131133;--chart-grid:#e7decb;--chart-area:#c9e0d0;--chart-blue:#2563eb;--chart-amber:#b9770e;--c1:#2e6b3e;--c2:#b23a2e;--c3:#2563eb;--c4:#b9770e;--c5:#7c3aed;--c6:#0e9384;--c7:#be185d;--c8:#65a30d}.theme-noir{--paper:#1e1c17;--paper-input:#26231e;--desk:#141311;--ink:#edecea;--muted:#b8b3a6;--rule:#3d382f;--box:#2b2822;--green:#6fae7f;--red:#d9705c;--chart-grid:#3d382f;--chart-area:#24402f;--chart-blue:#6ea8fe;--chart-amber:#e0a458;--c1:#6fae7f;--c2:#d9705c;--c3:#6ea8fe;--c4:#e0a458;--c5:#a78bfa;--c6:#3fbfa5;--c7:#f472b6;--c8:#a3c76d}:root[data-color-theme=oceano]{--paper:#f2f7f9;--paper-input:#f9fcfd;--desk:#dcebef;--ink:#18313a;--muted:#607880;--rule:#abc6ce;--box:#c9dde2;--green:#147a70;--red:#b94b42;--chart-grid:#d5e6ea;--chart-area:#b9dfe1;--chart-blue:#176b87;--chart-amber:#a86b16;--c1:#147a70;--c2:#b94b42;--c3:#176b87;--c4:#a86b16;--c5:#6355b5;--c6:#0d8390;--c7:#ad3b72;--c8:#5f812d}:root.theme-noir[data-color-theme=oceano]{--paper:#13252b;--paper-input:#192f36;--desk:#0c191e;--ink:#e8f2f4;--muted:#a8bec4;--rule:#35515a;--box:#203b43;--green:#58b9a9;--red:#e27d72;--chart-grid:#35515a;--chart-area:#21484b;--chart-blue:#67b6d1;--chart-amber:#e0aa5e;--c1:#58b9a9;--c2:#e27d72;--c3:#67b6d1;--c4:#e0aa5e;--c5:#aaa0ec;--c6:#47bdc8;--c7:#e77eac;--c8:#a7c46c}:root[data-color-theme=lavanda]{--paper:#f7f3fa;--paper-input:#fcf9fd;--desk:#e8dff0;--ink:#30273a;--muted:#786b83;--rule:#c9b9d5;--box:#ddd1e5;--green:#52734f;--red:#a24f79;--chart-grid:#e5daec;--chart-area:#d8ccec;--chart-blue:#6956a8;--chart-amber:#a16b32;--c1:#6956a8;--c2:#a24f79;--c3:#3d7390;--c4:#a16b32;--c5:#8054a6;--c6:#397e76;--c7:#b05265;--c8:#667f3f}:root.theme-noir[data-color-theme=lavanda]{--paper:#261f2d;--paper-input:#302638;--desk:#18131d;--ink:#f1eaf5;--muted:#c3b4cc;--rule:#4c3c58;--box:#382d42;--green:#8eb68a;--red:#dc7fa9;--chart-grid:#4c3c58;--chart-area:#433652;--chart-blue:#aa97eb;--chart-amber:#d9a76e;--c1:#aa97eb;--c2:#dc7fa9;--c3:#7eb5cf;--c4:#d9a76e;--c5:#c092df;--c6:#73b8ad;--c7:#e68a98;--c8:#a7bd77}:root[data-color-theme=terracota]{--paper:#faf2eb;--paper-input:#fff9f4;--desk:#ecdccd;--ink:#3b2b23;--muted:#806c60;--rule:#d0b6a3;--box:#e2ccbb;--green:#34705e;--red:#a34f2c;--chart-grid:#ead9cc;--chart-area:#d9ddc1;--chart-blue:#3f6f8a;--chart-amber:#a86828;--c1:#a34f2c;--c2:#34705e;--c3:#3f6f8a;--c4:#a86828;--c5:#765aa0;--c6:#347f81;--c7:#aa5260;--c8:#6e7f35}:root.theme-noir[data-color-theme=terracota]{--paper:#2b211b;--paper-input:#352820;--desk:#1b1511;--ink:#f4eae2;--muted:#c7b2a4;--rule:#523f32;--box:#3e3027;--green:#79b49f;--red:#df825c;--chart-grid:#523f32;--chart-area:#454530;--chart-blue:#7eaec5;--chart-amber:#dda15c;--c1:#df825c;--c2:#79b49f;--c3:#7eaec5;--c4:#dda15c;--c5:#aa93d0;--c6:#6fb4b0;--c7:#df8992;--c8:#a5b66c}:root[data-color-theme=bosque]{--paper:#f0f5ed;--paper-input:#f8fbf6;--desk:#d8e4d2;--ink:#243429;--muted:#667565;--rule:#b2c5ae;--box:#ccd9c7;--green:#37633f;--red:#9a4f3e;--chart-grid:#d7e2d2;--chart-area:#bdd7bc;--chart-blue:#47748a;--chart-amber:#8a6530;--c1:#37633f;--c2:#9a4f3e;--c3:#47748a;--c4:#8a6530;--c5:#675790;--c6:#377b6b;--c7:#97546d;--c8:#68833f}:root.theme-noir[data-color-theme=bosque]{--paper:#1c291f;--paper-input:#243328;--desk:#111a13;--ink:#ebf1e9;--muted:#b2c0af;--rule:#3b5140;--box:#2b3c2f;--green:#7bb487;--red:#dc806e;--chart-grid:#3b5140;--chart-area:#304b35;--chart-blue:#7dafc3;--chart-amber:#d0a56a;--c1:#7bb487;--c2:#dc806e;--c3:#7dafc3;--c4:#d0a56a;--c5:#a699d0;--c6:#71b4a1;--c7:#d890aa;--c8:#a5bd78}:root[data-color-theme=citrico]{--paper:#fff8df;--paper-input:#fffcf0;--desk:#efe4b9;--ink:#35301d;--muted:#7d7248;--rule:#d4c585;--box:#e5d9a8;--green:#52752d;--red:#b94f32;--chart-grid:#ecdfae;--chart-area:#dbe0a1;--chart-blue:#397791;--chart-amber:#d06b24;--c1:#52752d;--c2:#d06b24;--c3:#397791;--c4:#b88b19;--c5:#7656a1;--c6:#23847c;--c7:#b84169;--c8:#7d8b20}:root.theme-noir[data-color-theme=citrico]{--paper:#292617;--paper-input:#34301d;--desk:#19170e;--ink:#faf3d9;--muted:#c7bd93;--rule:#554d2c;--box:#3e3923;--green:#9abd68;--red:#e47d62;--chart-grid:#554d2c;--chart-area:#454729;--chart-blue:#79b4c8;--chart-amber:#ee9b50;--c1:#9abd68;--c2:#ee9b50;--c3:#79b4c8;--c4:#d9bd55;--c5:#ad94d5;--c6:#6ebcb1;--c7:#e486a5;--c8:#b4c666}:root[data-color-theme=rosa]{--paper:#fff2f6;--paper-input:#fff9fb;--desk:#efdbe4;--ink:#3b2932;--muted:#806873;--rule:#d3b2c1;--box:#e4ccd7;--green:#477258;--red:#9b3f68;--chart-grid:#ecd6e0;--chart-area:#e0c7da;--chart-blue:#6553a5;--chart-amber:#a56b31;--c1:#9b3f68;--c2:#6553a5;--c3:#3d748d;--c4:#a56b31;--c5:#86519a;--c6:#397b72;--c7:#b54b5c;--c8:#667d3b}:root.theme-noir[data-color-theme=rosa]{--paper:#2d2026;--paper-input:#38272f;--desk:#1d1419;--ink:#f7eaf0;--muted:#cab1bd;--rule:#583b49;--box:#422f38;--green:#82b394;--red:#df7da8;--chart-grid:#583b49;--chart-area:#4b3444;--chart-blue:#a798e7;--chart-amber:#dca56b;--c1:#df7da8;--c2:#a798e7;--c3:#7fb5cb;--c4:#dca56b;--c5:#c494d5;--c6:#70b4a8;--c7:#e88894;--c8:#a5b976}:root[data-color-theme=grafito]{--paper:#f2f3f4;--paper-input:#fafafa;--desk:#dcdfe1;--ink:#252b30;--muted:#66717a;--rule:#b9c0c5;--box:#d0d5d8;--green:#426a57;--red:#8d4f55;--chart-grid:#d9dde0;--chart-area:#c8d7d2;--chart-blue:#364653;--chart-amber:#8a672f;--c1:#364653;--c2:#8d4f55;--c3:#466f89;--c4:#8a672f;--c5:#655788;--c6:#40766f;--c7:#8e526e;--c8:#64783e}:root.theme-noir[data-color-theme=grafito]{--paper:#22272b;--paper-input:#2a3035;--desk:#15191c;--ink:#edf0f2;--muted:#b5bdc3;--rule:#424b52;--box:#31383e;--green:#7daf96;--red:#d48289;--chart-grid:#424b52;--chart-area:#354741;--chart-blue:#87a9bf;--chart-amber:#d1a768;--c1:#87a9bf;--c2:#d48289;--c3:#74a9c7;--c4:#d1a768;--c5:#a99bcd;--c6:#76aea7;--c7:#d289a7;--c8:#a1b678}:root[data-color-theme=custom]{--paper:var(--custom-light,#f7f3e9);--paper-input:color-mix(in srgb, var(--custom-light,#f7f3e9) 91%, white);--desk:color-mix(in srgb, var(--custom-light,#f7f3e9) 78%, var(--custom-primary,#2e6b3e));--ink:color-mix(in srgb, var(--custom-light,#f7f3e9) 12%, #090909);--muted:color-mix(in srgb, var(--custom-light,#f7f3e9) 42%, #252525);--rule:color-mix(in srgb, var(--custom-light,#f7f3e9) 67%, var(--custom-primary,#2e6b3e));--box:color-mix(in srgb, var(--custom-light,#f7f3e9) 81%, var(--custom-primary,#2e6b3e));--green:var(--custom-primary,#2e6b3e);--red:var(--custom-secondary,#b23a2e);--chart-grid:var(--box);--chart-area:color-mix(in srgb, var(--custom-light,#f7f3e9) 68%, var(--custom-primary,#2e6b3e));--chart-blue:var(--custom-primary,#2e6b3e);--chart-amber:var(--custom-secondary,#b23a2e);--c1:var(--custom-primary,#2e6b3e);--c2:var(--custom-secondary,#b23a2e);--c3:color-mix(in srgb, var(--custom-primary,#2e6b3e) 58%, #2563eb);--c4:color-mix(in srgb, var(--custom-secondary,#b23a2e) 65%, #f0a020);--c5:color-mix(in srgb, var(--custom-primary,#2e6b3e) 45%, #7c3aed);--c6:color-mix(in srgb, var(--custom-primary,#2e6b3e) 60%, #0e9384);--c7:color-mix(in srgb, var(--custom-secondary,#b23a2e) 55%, #be185d);--c8:color-mix(in srgb, var(--custom-primary,#2e6b3e) 62%, #8ca51c)}:root.theme-noir[data-color-theme=custom]{--paper:var(--custom-dark,#1e1c17);--paper-input:color-mix(in srgb, var(--custom-dark,#1e1c17) 88%, white);--desk:color-mix(in srgb, var(--custom-dark,#1e1c17) 82%, black);--ink:color-mix(in srgb, var(--custom-dark,#1e1c17) 9%, white);--muted:color-mix(in srgb, var(--custom-dark,#1e1c17) 35%, white);--rule:color-mix(in srgb, var(--custom-dark,#1e1c17) 72%, white);--box:color-mix(in srgb, var(--custom-dark,#1e1c17) 83%, white);--green:color-mix(in srgb, var(--custom-primary,#2e6b3e) 70%, white);--red:color-mix(in srgb, var(--custom-secondary,#b23a2e) 72%, white);--chart-grid:var(--rule);--chart-area:color-mix(in srgb, var(--custom-dark,#1e1c17) 68%, var(--custom-primary,#2e6b3e));--chart-blue:color-mix(in srgb, var(--custom-primary,#2e6b3e) 62%, white);--chart-amber:color-mix(in srgb, var(--custom-secondary,#b23a2e) 62%, white);--c1:color-mix(in srgb, var(--custom-primary,#2e6b3e) 70%, white);--c2:color-mix(in srgb, var(--custom-secondary,#b23a2e) 72%, white);--c3:color-mix(in srgb, var(--custom-primary,#2e6b3e) 48%, #8ab8ff);--c4:color-mix(in srgb, var(--custom-secondary,#b23a2e) 52%, #ffc878);--c5:color-mix(in srgb, var(--custom-primary,#2e6b3e) 40%, #c2a9ff);--c6:color-mix(in srgb, var(--custom-primary,#2e6b3e) 52%, #73d5c4);--c7:color-mix(in srgb, var(--custom-secondary,#b23a2e) 48%, #ff9ac9);--c8:color-mix(in srgb, var(--custom-primary,#2e6b3e) 52%, #c5dd83)}*{box-sizing:border-box}body{background:var(--desk);color:var(--ink);font-family:var(--mono);-webkit-font-smoothing:antialiased;margin:0}.app{background:var(--paper);border:1px solid var(--box);flex-direction:column;max-width:480px;margin:2rem auto;padding:1.5rem 1.5rem 1.75rem;display:flex}.card{background:0 0;border:none;border-radius:0;padding:0}.ticket-head{text-align:center;border-bottom:3px double var(--ink);padding-bottom:12px;position:relative}.ticket-head h1{letter-spacing:7px;text-transform:uppercase;margin:0;font-size:1.4rem;font-weight:400}.subtitle{letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin:5px 0 0;font-size:.68rem}.head-actions{gap:14px;display:flex;position:absolute;top:0;right:0}.head-link{color:var(--muted);font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;cursor:pointer;background:0 0;border:none;padding:0;font-size:.68rem;text-decoration:none}.head-link:hover{color:var(--ink)}.totals{border-bottom:1.5px dashed var(--rule);flex-direction:column;gap:6px;padding:14px 0;display:flex}.totals-line{letter-spacing:1px;text-transform:uppercase;color:var(--muted);justify-content:space-between;font-size:.78rem;display:flex}.totals-line span:last-child{color:var(--ink)}.totals-box{border:2px solid var(--ink);justify-content:space-between;align-items:baseline;margin-top:8px;padding:8px 12px;display:flex}.totals-box .lbl{letter-spacing:2px;text-transform:uppercase;font-size:.8rem}.totals-box .val{font-variant-numeric:tabular-nums;font-size:1.35rem}.form{border-bottom:1.5px dashed var(--rule);flex-direction:column;gap:12px;padding:16px 0;display:flex}.form .row{gap:12px;display:flex}.form label{letter-spacing:1px;text-transform:uppercase;min-width:0;color:var(--muted);flex-direction:column;flex:1;gap:4px;font-size:.68rem;display:flex}.form input,.form select{width:100%;min-width:0;font-family:var(--mono);color:var(--ink);background:var(--paper-input);border:1px solid var(--box);border-radius:0;padding:7px 8px;font-size:.9rem}.form input:focus,.form select:focus{border-color:var(--ink);outline:none}.form button{background:var(--green);color:var(--paper);font-family:var(--mono);letter-spacing:2px;text-transform:uppercase;cursor:pointer;border:none;border-radius:0;align-self:stretch;padding:10px;font-size:.85rem}.form button:hover{filter:brightness(1.08)}.form button:disabled{opacity:.6;cursor:default}.invite-result{padding:16px 0 0}.invite-ok{color:var(--green);letter-spacing:.5px;margin:0 0 14px;font-size:.8rem}.invite-label{color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin:0 0 6px;font-size:.68rem}.invite-box{border:1px solid var(--box);background:var(--paper-input);word-break:break-all;padding:12px;font-size:.8rem}.list{flex-direction:column;margin:0;padding:8px 0 0;list-style:none;display:flex}.list li{border-bottom:1px dashed var(--rule);justify-content:space-between;align-items:center;padding:9px 0;display:flex}.list li:last-child{border-bottom:none}.list-main{flex-direction:column;gap:2px;display:flex}.badge{letter-spacing:1.5px;text-transform:uppercase;color:var(--green);font-size:.68rem}.note{color:var(--ink);font-size:.85rem}.list-side{align-items:center;gap:12px;display:flex}.date{color:var(--muted);font-size:.68rem}.amount{font-variant-numeric:tabular-nums;font-size:.95rem}.link{color:var(--red);cursor:pointer;background:0 0;border:none;font-size:.9rem}.empty{text-align:center;color:var(--muted);letter-spacing:1px;text-transform:uppercase;padding:20px 0;font-size:.75rem}.state{text-align:center;color:var(--muted);letter-spacing:1px;text-transform:uppercase;padding:40px 0;font-size:.8rem}.state p{margin:0 0 14px}.state-btn{border:1px solid var(--ink);color:var(--ink);font-family:var(--mono);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;padding:7px 16px;font-size:.75rem}.state-btn:hover{background:var(--ink);color:var(--paper)}.action-error{text-align:center;color:var(--red);letter-spacing:.5px;text-transform:uppercase;margin:0;padding:12px 0 0;font-size:.72rem}.auth{--n-desk:var(--desk);--n-paper:var(--paper);--n-input:var(--paper-input);--n-rule:var(--rule);--n-ink:var(--ink);--n-muted:var(--muted);--n-red:var(--red);--n-green:var(--green);background:var(--n-desk);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.auth-content{flex-direction:column;align-items:center;gap:18px;width:100%;display:flex}.auth-fizz{color:var(--n-muted);letter-spacing:.8px;text-transform:uppercase;align-items:center;gap:7px;font-size:.65rem;text-decoration:none;display:inline-flex}.auth-fizz-logo{width:72px;height:27px;display:inline-block;position:relative}.auth-fizz-logo img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.auth-fizz-logo-dark,.theme-noir .auth-fizz-logo-light{opacity:0}.theme-noir .auth-fizz-logo-dark{opacity:1}.auth-fizz:hover,.auth-fizz:focus-visible{color:var(--n-ink)}.ticket-stamp{border:1.5px solid var(--red);color:var(--red);font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;cursor:pointer;background:0 0;padding:4px 8px;font-size:.6rem;animation:.22s ease-out both hunu-stamp-claro;position:absolute;top:10px;right:12px;transform:rotate(-5deg)}.theme-noir .ticket-stamp{border-color:var(--muted);color:var(--muted);animation-name:hunu-stamp-noir;transform:rotate(6deg)}.ticket-stamp:hover{border-color:var(--ink);color:var(--ink)}.ticket-stamp.in-nav{position:static}@keyframes hunu-stamp-noir{0%{opacity:0;transform:rotate(6deg)scale(1.5)}to{opacity:1;transform:rotate(6deg)scale(1)}}@keyframes hunu-stamp-claro{0%{opacity:0;transform:rotate(-5deg)scale(1.5)}to{opacity:1;transform:rotate(-5deg)scale(1)}}@media (prefers-reduced-motion:reduce){.ticket-stamp{animation:none}}.ticket-print{width:100%;max-width:380px;animation:.55s cubic-bezier(.22,1,.36,1) both hunu-print}@keyframes hunu-print{0%{opacity:0;transform:translateY(-22px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.ticket-print{animation:none}}.ticket-zz{background:linear-gradient(45deg, transparent 33.33%, var(--n-paper) 33.33%, var(--n-paper) 66.67%, transparent 66.67%), linear-gradient(-45deg, transparent 33.33%, var(--n-paper) 33.33%, var(--n-paper) 66.67%, transparent 66.67%);background-size:14px 28px;height:12px}.ticket-zz-top{transform:rotate(180deg)}.auth-card{background:var(--n-paper);flex-direction:column;gap:14px;padding:1.5rem;display:flex;position:relative}.ticket-brand{text-align:center;border-bottom:3px double var(--n-ink);flex-direction:column;gap:6px;padding-bottom:14px;display:flex}.ticket-wordmark{font-family:var(--display);letter-spacing:6px;color:var(--n-ink);margin-left:6px;font-size:2.1rem;font-weight:400}.ticket-tagline{letter-spacing:2px;text-transform:uppercase;color:var(--n-muted);font-size:.68rem}.ticket-meta{letter-spacing:1px;text-transform:uppercase;color:var(--n-muted);justify-content:space-between;font-size:.62rem;display:flex}.auth-card h1{text-align:center;letter-spacing:4px;text-transform:uppercase;color:var(--n-ink);border-bottom:3px double var(--n-ink);margin:0;padding-bottom:12px;font-size:1.1rem;font-weight:400}.auth-form{color:var(--n-ink);flex-direction:column;gap:12px;display:flex}.auth-form label{letter-spacing:1px;text-transform:uppercase;color:var(--n-muted);flex-direction:column;gap:4px;font-size:.68rem;display:flex}.auth-form input{font-family:var(--mono);color:var(--n-ink);background:var(--n-input);border:1px solid var(--n-rule);border-radius:0;width:100%;padding:9px;font-size:.9rem}.auth-form input::placeholder{color:var(--n-muted);opacity:.55}.auth-form input:focus{border-color:var(--n-ink);outline:none}.auth-pass{display:flex}.auth-pass input{border-right:none;flex:1}.auth-pass-toggle{border:1px solid var(--n-rule);background:var(--n-input);color:var(--n-muted);font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;cursor:pointer;padding:0 12px;font-size:.62rem}.auth-pass-toggle:hover{color:var(--n-ink)}.auth-button,.auth-form button[type=submit],.auth-form .auth-button{background:var(--n-ink);color:var(--n-desk);font-family:var(--mono);letter-spacing:3px;text-transform:uppercase;text-align:center;cursor:pointer;border:none;border-radius:0;padding:12px;font-size:.85rem;font-weight:600;text-decoration:none;transition:transform 60ms;display:block}.auth-form button[type=submit]:hover:not(:disabled),.auth-button:hover{transform:translateY(-1px)}.auth-form button[type=submit]:disabled{opacity:.6;cursor:default}.auth-link{text-align:center;color:var(--n-muted);text-underline-offset:3px;font-size:.72rem;text-decoration:underline}.auth-link:hover{color:var(--n-ink)}.auth-help{color:var(--n-muted);margin:0;font-size:.78rem;line-height:1.55}.auth-ok{color:var(--n-green);margin:0;font-size:.8rem;line-height:1.6}.auth-stamp,.auth-error{color:var(--n-red);border:1px solid var(--n-red);letter-spacing:1px;text-transform:uppercase;margin:0;padding:8px 10px;font-size:.72rem}.ticket-foot{border-top:1px dashed var(--n-rule);flex-direction:column;align-items:center;gap:10px;padding-top:16px;display:flex}.ticket-barcode{background:repeating-linear-gradient(90deg, var(--n-ink) 0 2px, transparent 2px 5px, var(--n-ink) 5px 6px, transparent 6px 9px, var(--n-ink) 9px 12px, transparent 12px 14px);opacity:.9;width:86%;height:40px}.ticket-rate{letter-spacing:1px;text-transform:uppercase;color:var(--n-green);font-size:.76rem}.ticket-legal{letter-spacing:2px;text-transform:uppercase;color:var(--n-muted);font-size:.68rem}.dash{max-width:1000px;color:var(--ink);font-family:var(--sans);margin:0 auto;padding:16px}.dash-top{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:8px 4px 15px;display:flex}.dash-top-left{align-items:center;gap:12px;min-width:0;display:flex}.dash-brand{font-family:var(--display);letter-spacing:5px;color:var(--ink);cursor:pointer;background:0 0;border:none;margin-left:2px;padding:0;font-size:27px;font-weight:400;line-height:1}.dash-section{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.dash-section:before{content:"· "}.dash-top-actions{align-items:center;gap:12px;display:flex}.dash-link{color:var(--muted);font:inherit;cursor:pointer;text-transform:uppercase;letter-spacing:.06em;background:0 0;border:none;font-size:12px;text-decoration:none}.dash-link:hover{color:var(--ink)}.dash-burger{border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:0;flex-direction:column;flex:none;justify-content:center;gap:4px;width:34px;height:34px;padding:0 8px;display:flex}.dash-burger span{background:var(--ink);height:2px;transition:width .15s;display:block}.dash-burger span:first-child,.dash-burger span:nth-child(2){width:100%}.dash-burger span:nth-child(3){width:60%}.dash-burger:hover{border-color:var(--ink)}.dash-burger:hover span:nth-child(3){width:100%}.bottom-nav{--bottom-nav-bg:var(--ink);--bottom-nav-fg:var(--paper);left:50%;bottom:max(8px, env(safe-area-inset-bottom));z-index:40;border:1px solid color-mix(in srgb, var(--bottom-nav-fg) 18%, transparent);background:color-mix(in srgb, var(--bottom-nav-bg) 96%, transparent);-webkit-backdrop-filter:blur(18px);border-radius:24px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;width:min(100% - 20px,560px);min-height:70px;padding:8px 10px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 18px 44px #1413114d,0 2px 8px #14131129}.theme-noir .bottom-nav{--bottom-nav-bg:color-mix(in srgb, var(--paper) 78%, black);--bottom-nav-fg:var(--ink)}.bottom-nav-item{min-width:0;min-height:52px;color:color-mix(in srgb, var(--bottom-nav-fg) 66%, transparent);cursor:pointer;font-family:var(--sans);background:0 0;border:0;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:4px 2px;transition:color .16s,background .16s,transform .16s;display:flex}.bottom-nav-item>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;font-weight:650;line-height:1.1;overflow:hidden}.bottom-nav-item:hover{color:var(--bottom-nav-fg);background:color-mix(in srgb, var(--bottom-nav-fg) 10%, transparent)}.bottom-nav-item:active{transform:scale(.96)}.bottom-nav-item:focus-visible{outline:2px solid var(--bottom-nav-fg);outline-offset:-2px}.bottom-nav-item.is-active{color:var(--bottom-nav-fg);background:var(--green);box-shadow:0 5px 14px #14131129}.bottom-nav-item.is-active svg{stroke-width:2.2px}.bottom-nav-register{justify-content:center;align-items:stretch;min-width:0;display:flex;position:relative}.bottom-nav-item.is-register{width:100%;color:var(--bottom-nav-fg);overflow:visible}.bottom-nav-item.is-register:hover{background:0 0}.bottom-nav-plus{border:4px solid var(--bottom-nav-bg);background:var(--green);width:48px;height:48px;color:var(--bottom-nav-fg);border-radius:50%;place-items:center;margin-top:-25px;transition:transform .18s;display:grid;box-shadow:0 8px 20px #1413114d}.bottom-nav-plus svg{width:23px;height:23px}.menu-wheel{flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:calc(100vh - 210px);padding:8px 0 16px;display:flex}.wheel-svg{width:min(440px,88vw);height:auto;animation:.55s cubic-bezier(.22,1,.36,1) wheel-in}@keyframes wheel-in{0%{opacity:0;transform:scale(.92)rotate(-3deg)}to{opacity:1;transform:none}}.gajo{cursor:pointer}.gajo:focus{outline:none}.gajo-fill{fill:var(--box);transition:fill .16s}.gajo-label{fill:var(--ink);font-family:var(--mono);letter-spacing:.06em;font-weight:700;transition:fill .16s}.gajo:hover .gajo-fill,.gajo:focus-visible .gajo-fill{fill:var(--ink)}.gajo:hover .gajo-label,.gajo:focus-visible .gajo-label{fill:var(--paper)}.wheel-gap{stroke:var(--paper);stroke-width:3px}.wheel-ring{fill:none;stroke:var(--rule);stroke-width:1.5px;pointer-events:none}.wheel-hub{fill:var(--paper);stroke:var(--ink);stroke-width:2.5px}.wheel-mark{fill:var(--ink);font-family:var(--display);letter-spacing:3px}.wheel-hub-btn{cursor:pointer}.wheel-hub-btn:focus{outline:none}.wheel-hub-btn:hover .wheel-hub,.wheel-hub-btn:focus-visible .wheel-hub{fill:var(--ink)}.wheel-hub-btn:hover .wheel-mark,.wheel-hub-btn:focus-visible .wheel-mark{fill:var(--paper)}.menu-hint{color:var(--muted);letter-spacing:.04em;margin:0;font-size:12px}.dash-subtabs{border:1px solid var(--rule);border-radius:var(--radius-pill);background:var(--paper-input);scrollbar-width:none;flex-wrap:nowrap;gap:4px;margin-bottom:18px;padding:5px;display:flex;overflow-x:auto}.dash-subtabs::-webkit-scrollbar{display:none}.subtab{border-radius:var(--radius-pill);font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:none;flex:none;padding:9px 14px;font-size:14px}.subtab:hover{color:var(--ink)}.subtab.is-active{color:var(--ink);background:var(--paper);font-weight:700;box-shadow:0 2px 10px #14131114}.dash{padding-bottom:112px}@media (width<=380px){.bottom-nav{width:calc(100% - 12px);padding-inline:5px}.bottom-nav-item>span:last-child{font-size:9px}.bottom-nav-plus{width:46px;height:46px}}.nav-overlay{z-index:50;background:#1413118c;animation:.18s ease-out both nav-fade;display:flex;position:fixed;inset:0}.nav-drawer{flex-direction:column;width:min(84vw,264px);animation:.26s cubic-bezier(.22,1,.36,1) both nav-slide;display:flex;overflow-y:auto}.nav-zz{background-color:var(--desk);background-image:linear-gradient(45deg, transparent 33.33%, var(--paper) 33.33%, var(--paper) 66.67%, transparent 66.67%), linear-gradient(-45deg, transparent 33.33%, var(--paper) 33.33%, var(--paper) 66.67%, transparent 66.67%);background-size:12px 24px;flex:none;height:10px;transform:rotate(180deg)}.nav-body{background:var(--paper);flex:1 0 auto;padding:16px 18px 24px}.nav-brand{text-align:center;font-family:var(--display);letter-spacing:4px;border-bottom:3px double var(--ink);margin-left:4px;padding-bottom:12px;font-size:20px;display:block}.nav-group{padding-top:14px}.nav-group+.nav-group{border-top:1px dashed var(--rule);margin-top:14px}.nav-group-label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;font-size:10px;display:block}.nav-item{text-align:left;width:100%;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:0;padding:9px 10px;font-size:14px;text-decoration:none;display:block}.nav-item:hover{background:var(--box)}.nav-item.is-active{background:var(--ink);color:var(--paper);font-weight:600}@keyframes nav-fade{0%{opacity:0}to{opacity:1}}@keyframes nav-slide{0%{transform:translate(-100%)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.nav-overlay,.nav-drawer{animation:none}}.dash-view{animation:.32s cubic-bezier(.22,1,.36,1) both hunu-view-in}@keyframes hunu-view-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.sk{flex-direction:column;gap:12px;padding:4px 0;display:flex}.sk-line{background:repeating-linear-gradient(90deg, var(--box) 0 8px, transparent 8px 12px);border-radius:3px;height:12px;animation:1.3s ease-in-out infinite sk-pulse}.sk-title{width:40%;height:16px}@keyframes sk-pulse{0%,to{opacity:.4}50%{opacity:.9}}@media (prefers-reduced-motion:reduce){.dash-view{animation:none}.sk-line{opacity:.6;animation:none}}.modal-overlay{z-index:60;background:#1413118c;justify-content:center;align-items:center;padding:1rem;animation:.16s ease-out both nav-fade;display:flex;position:fixed;inset:0}.modal-panel{width:100%;max-width:360px;animation:.2s cubic-bezier(.22,1,.36,1) both modal-pop}.modal-zz{background:linear-gradient(45deg, transparent 33.33%, var(--paper) 33.33%, var(--paper) 66.67%, transparent 66.67%), linear-gradient(-45deg, transparent 33.33%, var(--paper) 33.33%, var(--paper) 66.67%, transparent 66.67%);background-size:12px 24px;height:10px;transform:rotate(180deg)}.modal-body{background:var(--paper);padding:16px 18px 20px}.modal-head{border-bottom:3px double var(--ink);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;display:flex}.modal-title{letter-spacing:2px;text-transform:uppercase;margin:0;font-size:.95rem;font-weight:400}.modal-x{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:2px 6px;font-size:15px}.modal-x:hover{color:var(--ink)}.modal-panel.is-movement{filter:drop-shadow(0 24px 48px #1413113d);max-width:540px}.modal-panel.is-movement .modal-zz{display:none}.modal-panel.is-movement .modal-body{border:1px solid color-mix(in srgb, var(--rule) 72%, transparent);max-height:calc(100dvh - 32px);box-shadow:var(--shadow-float);overscroll-behavior:contain;border-radius:24px;padding:22px 24px 24px;overflow-y:auto}.modal-panel.is-movement .modal-head{border-bottom:1px solid var(--rule);margin-bottom:18px;padding-bottom:14px}.modal-panel.is-movement .modal-title{font:750 18px/1.2 var(--sans);letter-spacing:-.01em;text-transform:none}.modal-panel.is-movement .modal-x{background:var(--paper-input);border-radius:50%;place-items:center;width:34px;height:34px;padding:0;font-size:14px;display:grid}@media (width<=620px){.modal-overlay.is-movement{align-items:flex-end;padding:0}.modal-panel.is-movement{filter:none;max-width:none;animation:.28s cubic-bezier(.22,1,.36,1) both movement-sheet-up}.modal-panel.is-movement .modal-body{max-height:92dvh;padding:10px 18px calc(18px + env(safe-area-inset-bottom));border-bottom:0;border-left:0;border-right:0;border-radius:24px 24px 0 0}.modal-panel.is-movement .modal-body:before{content:"";border-radius:var(--radius-pill);background:var(--rule);width:42px;height:5px;margin:0 auto 9px;display:block}.modal-panel.is-movement .modal-head{z-index:2;background:var(--paper);padding-top:7px;position:sticky;top:-10px}.modal-panel.is-movement .mv-actions{bottom:calc(-18px - env(safe-area-inset-bottom));z-index:2;padding:12px 2px calc(18px + env(safe-area-inset-bottom));background:linear-gradient(to bottom, color-mix(in srgb, var(--paper) 0%, transparent), var(--paper) 18%);margin:2px -2px 0;position:sticky}.modal-panel.is-movement .mv-cancel,.modal-panel.is-movement .mv-save{flex:1;min-width:0}}@media (width<=420px){.modal-panel.is-movement .mv-grid{grid-template-columns:1fr}}@keyframes modal-pop{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes movement-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.modal-overlay,.modal-panel{animation:none}}.gestion-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.gestion-head .table-title{margin:0}.gestion-head .dash-btn{flex:none;margin:0}.gestion-list{margin:0;padding:0;list-style:none}.gestion-row{border-bottom:1px solid var(--box);align-items:center;gap:10px;padding:9px 0;display:flex}.gestion-row:last-child{border-bottom:none}.gestion-link{color:var(--chart-blue);cursor:pointer;font:inherit;background:0 0;border:none;font-size:.85rem}.gestion-link.is-danger{color:var(--red)}.gestion-link:disabled{opacity:.5;cursor:default}.gestion-color-row{justify-content:space-between;align-items:center;flex-direction:row!important}.gestion-color-row input[type=color]{border:1px solid var(--rule);background:var(--paper-input);border-radius:0;width:46px;height:34px;padding:2px}.dash-state,.dash-empty{color:var(--muted);text-align:center;padding:24px}.dash-btn{background:var(--ink);color:var(--paper);border-radius:var(--radius-pill);cursor:pointer;font:inherit;border:none;margin-top:8px;padding:10px 16px;font-weight:700}.view-stack{flex-direction:column;gap:16px;display:flex}.view-stack>.kpi-row,.view-stack>.chart-2col,.view-stack>.anual-filter,.view-stack>.goal-card{margin-bottom:0}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:16px;display:grid}.kpi{background:var(--paper-input);border:1px solid color-mix(in srgb, var(--rule) 72%, transparent);border-radius:var(--radius-lg);min-height:154px;box-shadow:var(--shadow-card);flex-direction:column;justify-content:space-between;gap:9px;padding:18px;display:flex;position:relative;overflow:hidden}.kpi:after{content:"";background:color-mix(in srgb, var(--green) 10%, transparent);pointer-events:none;border-radius:50%;width:92px;height:92px;position:absolute;top:-48px;right:-42px}.kpi.neg:after{background:color-mix(in srgb, var(--red) 12%, transparent)}.kpi-head{align-items:center;gap:9px;display:flex}.kpi-icon{background:color-mix(in srgb, var(--green) 14%, transparent);width:30px;height:30px;color:var(--green);font:700 17px/1 var(--sans);border-radius:10px;flex:none;place-items:center;display:grid}.kpi-icon.is-expense,.kpi.neg .kpi-icon{background:color-mix(in srgb, var(--red) 14%, transparent);color:var(--red)}.kpi-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:700}.kpi-value{font-size:clamp(23px,4vw,31px);font-weight:750;font-family:var(--mono);letter-spacing:-.04em}.kpi-budget{color:var(--muted);font-size:11px;line-height:1.4}.kpi.pos .kpi-value{color:var(--green)}.kpi.neg .kpi-value{color:var(--red)}.goal-card{background:var(--paper-input);border:1px solid color-mix(in srgb, var(--rule) 72%, transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:14px;margin-bottom:16px;padding:19px;display:flex}.goal-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.goal-head>div{flex-direction:column;gap:3px;display:flex}.goal-head strong{font-size:17px}.goal-percent{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--green) 14%, transparent);min-width:52px;height:34px;color:var(--green);font:700 13px/1 var(--mono);place-items:center;padding:0 10px;display:grid}.goal-bar{background:var(--box);border-radius:var(--radius-pill);height:10px;overflow:hidden}.goal-fill{background:linear-gradient(90deg, var(--green), color-mix(in srgb, var(--green) 70%, white));border-radius:var(--radius-pill);transform-origin:0;height:100%;transition:width .3s;animation:.95s cubic-bezier(.22,1,.36,1) both goal-grow}@keyframes goal-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.goal-fill{animation:none}}.goal-meta{color:var(--muted);justify-content:space-between;gap:12px;font-size:12px;display:flex}.goal-meta span{flex-direction:column;gap:3px;display:flex}.goal-meta span:last-child{text-align:right}.goal-meta strong{color:var(--ink);font-family:var(--mono);font-size:13px}.table-card{background:var(--paper-input);border:1px solid color-mix(in srgb, var(--rule) 72%, transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:18px}.table-title{letter-spacing:-.01em;color:var(--ink);margin:0 0 12px;font-size:15px;font-weight:750}.table-scroll{overflow-x:auto}.tx-table{border-collapse:collapse;width:100%;font-size:14px}.tx-table th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--rule);padding:8px;font-size:10px;font-weight:700}.tx-table td{border-bottom:1px solid var(--box);padding:11px 8px}.tx-table .num{font-family:var(--mono);white-space:nowrap}.tx-table tr.is-in .num{color:var(--green)}.tx-table tr.is-out .num{color:var(--red)}.tx-description{color:var(--muted);max-width:280px}.detalle-month{flex-wrap:wrap;align-items:flex-end;gap:8px;margin-bottom:12px;display:flex}.mes-field{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:inline-flex}.mes-field input{border:1px solid var(--rule);background:var(--paper-input);color:var(--ink);font:inherit;border-radius:8px;padding:8px 10px}.mes-nav{border:1px solid var(--rule);background:var(--paper-input);color:var(--ink);cursor:pointer;border-radius:8px;padding:9px 12px;font-size:18px;line-height:1}.mes-nav:hover{border-color:var(--ink)}.mes-all{border:1px solid var(--rule);color:var(--muted);cursor:pointer;font:inherit;background:0 0;border-radius:8px;padding:9px 12px;font-size:13px}.mes-all:hover{color:var(--ink);border-color:var(--ink)}@media (width<=560px){.kpi{min-height:142px;padding:16px}.kpi-value{font-size:clamp(20px,6vw,27px)}.dash-brand{font-size:18px}.table-scroll{overflow-x:visible}.tx-table,.tx-table tbody{width:100%;display:block}.tx-table thead{display:none}.tx-table tr{border:1px solid var(--box);border-radius:var(--radius-md);background:var(--paper);grid-template-columns:auto 1fr auto;grid-template-areas:"cat cat amount""desc desc desc""date source actions";align-items:center;gap:6px 10px;margin-bottom:10px;padding:13px;display:grid;box-shadow:0 5px 16px #1413110a}.tx-table tr:last-child{margin-bottom:0}.tx-table td{border:none;padding:0;display:block}.tx-table td:first-child{color:var(--muted);white-space:nowrap;grid-area:date;font-size:12px}.tx-table td:nth-child(2){grid-area:amount;font-size:16px;font-weight:600}.tx-table td:nth-child(3){color:var(--muted);grid-area:source;font-size:13px}.tx-table td:nth-child(4){grid-area:cat}.tx-table td:nth-child(5){grid-area:desc;font-size:13px}.tx-table td:nth-child(6){text-align:right;grid-area:actions}.tx-actions button{padding:6px 8px;font-size:17px}}.dash-btn.wide{width:100%;margin:0 0 16px;padding:12px;font-size:15px}.resumen-register{border:1px solid color-mix(in srgb, var(--rule) 72%, transparent);border-radius:var(--radius-lg);background:var(--ink);width:100%;color:var(--paper);box-shadow:var(--shadow-card);cursor:pointer;font-family:var(--sans);text-align:left;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:0 0 16px;padding:13px 15px;transition:transform .16s,box-shadow .16s;display:grid}.resumen-register:hover{transform:translateY(-2px);box-shadow:0 14px 32px #14131126}.resumen-register:active{transform:scale(.992)}.resumen-register-icon{background:color-mix(in srgb, var(--paper) 16%, transparent);border-radius:50%;place-items:center;width:38px;height:38px;font-size:23px;line-height:1;display:grid}.resumen-register>span:nth-child(2){flex-direction:column;gap:2px;display:flex}.resumen-register strong{font-size:14px}.resumen-register small{color:color-mix(in srgb, var(--paper) 68%, transparent);font-size:11px}.resumen-register-arrow{opacity:.75;font-size:20px}.resumen-form-card,.resumen-form-card .table-title{margin-bottom:16px}.resumen-form-card .mv-form input,.resumen-form-card .mv-form select{background:var(--paper);border-radius:12px;min-height:42px;padding:10px 12px}.resumen-form-card .mv-seg{border-radius:var(--radius-pill);padding:11px 14px;font-weight:700}.resumen-form-card .mv-cancel,.resumen-form-card .mv-save{border-radius:var(--radius-pill);min-height:42px;padding-inline:20px;font-weight:700}.resumen-movements-card{overflow:hidden}.resumen-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.resumen-section-head>div{align-items:baseline;gap:8px;display:flex}.resumen-section-head .table-title{margin:0}.resumen-section-head>div>span{color:var(--muted);font:12px/1 var(--mono)}.resumen-count{border-radius:var(--radius-pill);background:var(--box);min-width:30px;height:30px;color:var(--muted);font:700 11px/1 var(--mono);place-items:center;padding:0 9px;display:grid}@media (width<=560px){.goal-meta{flex-direction:column;gap:8px}.goal-meta span:last-child{text-align:left}.table-card{padding:15px}.resumen-register small{display:none}}a.dash-btn{box-sizing:border-box;text-align:center;text-decoration:none;display:inline-block}a.dash-btn.wide{margin-top:16px;display:block}.mv-form{flex-direction:column;gap:12px;display:flex}.mv-type{gap:8px;display:flex}.mv-seg{border:1px solid var(--rule);background:var(--paper);color:var(--muted);font:inherit;cursor:pointer;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:9px;padding:10px;font-size:13px;display:flex;position:relative}.mv-seg-icon{background:color-mix(in srgb, currentColor 12%, transparent);border-radius:50%;place-items:center;width:22px;height:22px;font-size:17px;line-height:1;display:grid}.mv-seg-copy{flex-direction:column;align-items:flex-start;gap:1px;min-width:0;display:flex}.mv-seg-copy strong{font-size:13px;line-height:1.15}.mv-seg-copy small{opacity:.78;font-size:10px;font-weight:500;line-height:1.2}.mv-seg.on.out{background:var(--red);color:#fff;border-color:var(--red)}.mv-seg.on.in{background:var(--green);color:#fff;border-color:var(--green)}.mv-seg.on:after{content:"✓";font-size:11px;font-weight:800;position:absolute;top:7px;right:9px}.mv-type-status{color:var(--muted);font:12px/1.35 var(--sans);text-align:center;margin:-5px 0 0}.mv-type-status strong{text-transform:uppercase}.mv-type-status.is-egreso strong{color:var(--red)}.mv-type-status.is-ingreso strong{color:var(--green)}.mv-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.mv-form label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.mv-form input,.mv-form select{border:1px solid var(--rule);background:var(--paper-input);color:var(--ink);font:inherit;border-radius:8px;padding:9px 10px}.mv-check{text-transform:none;color:var(--ink);align-items:center;gap:8px;font-size:14px;flex-direction:row!important}.mv-check input{width:auto}.mv-form label.mv-recurring-toggle{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--paper-input);min-height:64px;color:var(--ink);cursor:pointer;text-transform:none;flex-direction:row;align-items:center;gap:12px;padding:11px 12px;transition:border-color .16s,background .16s,box-shadow .16s;display:flex;position:relative}.mv-recurring-toggle:hover{border-color:var(--green)}.mv-recurring-toggle:focus-within{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 18%, transparent)}.mv-recurring-toggle.is-on{border-color:color-mix(in srgb, var(--green) 68%, var(--rule));background:color-mix(in srgb, var(--green) 9%, var(--paper))}.mv-recurring-toggle>input{opacity:0;pointer-events:none;height:1px;margin:0;position:absolute;width:1px!important}.mv-toggle-track{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--muted) 35%, var(--paper));width:44px;height:26px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--rule) 80%, transparent);flex:none;transition:background .18s;position:relative}.mv-toggle-track>span{background:var(--paper);border-radius:50%;width:20px;height:20px;transition:transform .18s cubic-bezier(.22,1,.36,1);position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #14131138}.mv-recurring-toggle.is-on .mv-toggle-track{background:var(--green)}.mv-recurring-toggle.is-on .mv-toggle-track>span{transform:translate(18px)}.mv-toggle-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.mv-toggle-copy strong{font:750 13px/1.2 var(--sans)}.mv-toggle-copy small{color:var(--muted);font:400 11px/1.35 var(--sans)}.mv-recur{border-top:1px dashed var(--rule);flex-direction:column;gap:10px;padding-top:10px;display:flex}.mv-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.mv-cancel{border:1px solid var(--rule);color:var(--muted);cursor:pointer;font:inherit;background:0 0;border-radius:8px;padding:9px 16px}.mv-save{background:var(--ink);color:var(--paper);cursor:pointer;font:inherit;border:none;border-radius:8px;padding:9px 18px}.mv-save:disabled{opacity:.6;cursor:default}.mv-error{color:var(--red);margin:4px 0 0;font-size:13px}.mv-hint{color:var(--muted);margin:0;font-size:12px}.modal-panel.is-movement .mv-form{gap:16px}.modal-panel.is-movement .mv-type{border-radius:var(--radius-pill);background:var(--paper-input);gap:6px;padding:5px}.modal-panel.is-movement .mv-seg{border-color:color-mix(in srgb, var(--rule) 62%, transparent);border-radius:var(--radius-pill);background:var(--paper);min-height:46px;color:var(--ink);font-family:var(--sans);letter-spacing:0;text-transform:none;padding:9px 14px;font-weight:750}.modal-panel.is-movement .mv-seg.on{box-shadow:0 5px 14px #14131124}.modal-panel.is-movement .mv-seg.on.out{border-color:var(--red);background:var(--red);color:#fff}.modal-panel.is-movement .mv-seg.on.in{border-color:var(--green);background:var(--green);color:#fff}.modal-panel.is-movement .mv-seg:not(.on) .mv-seg-copy small{color:var(--muted);opacity:1}.modal-panel.is-movement .mv-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.modal-panel.is-movement .mv-amount{grid-column:1/-1}.modal-panel.is-movement .mv-form label{color:var(--muted);font-family:var(--sans);letter-spacing:.02em;text-transform:none;gap:7px;font-size:12px;font-weight:700}.modal-panel.is-movement .mv-form input,.modal-panel.is-movement .mv-form select{border-color:color-mix(in srgb, var(--rule) 78%, transparent);background:var(--paper-input);border-radius:13px;outline:none;width:100%;min-height:48px;padding:11px 13px;transition:border-color .16s,box-shadow .16s}.modal-panel.is-movement .mv-form input:focus,.modal-panel.is-movement .mv-form select:focus{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 18%, transparent)}.modal-panel.is-movement .mv-amount input{letter-spacing:-.02em;min-height:62px;padding-block:10px;font-size:28px;font-weight:750}.modal-panel.is-movement .mv-check{background:var(--paper-input);border-radius:12px;min-height:42px;padding:10px 12px}.modal-panel.is-movement .mv-recurring-toggle{border-color:color-mix(in srgb, var(--rule) 72%, transparent);border-radius:15px}.modal-panel.is-movement .mv-recur{border:1px solid color-mix(in srgb, var(--rule) 72%, transparent);background:color-mix(in srgb, var(--paper-input) 75%, transparent);border-radius:15px;padding:14px}.modal-panel.is-movement .mv-actions{gap:10px;margin-top:2px}.modal-panel.is-movement .mv-cancel,.modal-panel.is-movement .mv-save{border-radius:var(--radius-pill);min-height:48px;font-family:var(--sans);padding:11px 20px;font-weight:750}.modal-panel.is-movement .mv-save{min-width:145px}.mv-confirm{background:var(--paper-input);border:1px solid var(--red);border-radius:12px;flex-direction:column;gap:10px;margin-bottom:16px;padding:14px;display:flex}.mv-confirm-actions{flex-wrap:wrap;gap:8px;display:flex}.mv-confirm-actions button{border:1px solid var(--rule);background:var(--paper);cursor:pointer;font:inherit;border-radius:8px;padding:8px 14px}.tx-actions{white-space:nowrap}.tx-actions button{cursor:pointer;color:var(--muted);background:0 0;border:none;padding:2px 6px;font-size:15px}.tx-actions button:hover{color:var(--ink)}.tx-recur{color:var(--muted);margin-left:6px;font-size:12px}.shortcut-card{background:var(--paper-input);border:1px solid var(--rule);border-radius:12px;margin-top:16px;padding:14px}.shortcut-card summary{cursor:pointer;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:14px}.shortcut-hint{color:var(--muted);margin:10px 0 12px;font-size:13px}.shortcut-card .mv-grid{margin-bottom:12px}.shortcut-card label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.shortcut-card input,.shortcut-card select{border:1px solid var(--rule);background:var(--paper-input);color:var(--ink);font:inherit;border-radius:8px;padding:9px 10px}.shortcut-actions{align-items:center;gap:10px;margin-bottom:10px;display:flex}.shortcut-actions .dash-btn{margin-top:0;text-decoration:none;display:inline-block}.shortcut-link{word-break:break-all;color:var(--muted);background:var(--box);font-size:11px;font-family:var(--mono);border-radius:8px;padding:8px 10px;display:block}.detalle-filters{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.detalle-filters label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:inline-flex}.detalle-filters select,.detalle-filters input{border:1px solid var(--rule);background:var(--paper-input);color:var(--ink);font:inherit;border-radius:8px;min-width:140px;padding:8px 10px}.detalle-totals{grid-template-columns:repeat(3,minmax(130px,1fr));gap:8px;margin:0 0 14px;display:grid}.detalle-totals div{border:1px solid var(--rule);background:var(--paper);border-radius:9px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.detalle-totals span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.detalle-totals strong{font-family:var(--mono);font-size:15px}.detalle-totals strong.pos{color:var(--green)}.detalle-totals strong.neg{color:var(--red)}.budget-global-card,.budget-new-card{margin-bottom:16px}.budget-global-values{grid-template-columns:repeat(3,minmax(130px,1fr));gap:8px;display:grid}.budget-global-values span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:3px;font-size:12px;display:flex}.budget-global-values strong{color:var(--ink);font-family:var(--mono);font-size:16px}.budget-global-bar{background:var(--box);border-radius:999px;height:9px;margin-top:12px;overflow:hidden}.budget-global-bar div{border-radius:inherit;background:var(--green);height:100%;transition:width .3s}.chart-tooltip{border:1px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:8px;flex-direction:column;gap:5px;padding:9px 11px;font-size:12px;display:flex;box-shadow:0 5px 16px #00000024}.chart-tooltip strong{font-size:12px}.chart-tooltip span{flex-direction:column;gap:1px;display:flex}.chart-tooltip small{color:var(--muted);font-size:10px}@media (width<=560px){.detalle-filters label{flex:135px}.detalle-filters select,.detalle-filters input{box-sizing:border-box;width:100%;min-width:0}.detalle-totals,.budget-global-values{grid-template-columns:1fr}}.anual-filter{margin-bottom:12px}.anual-filter-row{flex-wrap:wrap;gap:12px;display:flex}.anual-filter label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:inline-flex}.anual-filter select{border:1px solid var(--rule);background:var(--paper-input);color:var(--ink);font:inherit;border-radius:8px;padding:8px 10px}.annual-goal-card{justify-content:center;margin:0}.annual-category-chart{flex-direction:column;gap:13px;display:flex}.annual-category-row{min-width:0}.annual-category-meta{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-bottom:5px;font-size:13px;display:grid}.annual-category-meta span{overflow-wrap:anywhere;min-width:0}.annual-category-meta strong{white-space:nowrap;font-family:var(--mono);font-size:12px}.annual-category-track{background:var(--box);border-radius:999px;height:11px;overflow:hidden}.annual-category-track div{border-radius:inherit;min-width:3px;height:100%}.annual-savings-table th,.annual-savings-table td{text-align:center}.chart-2col{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:16px;display:grid}.chart-2col .table-card{margin:0}.desb-hero{color:#fff;text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:4px;margin-bottom:16px;padding:22px;display:flex}.desb-label{text-transform:uppercase;letter-spacing:.06em;opacity:.9;font-size:13px}.desb-value{font-size:34px;font-weight:700;font-family:var(--mono)}.desb-hint{opacity:.92;font-size:13px}.perfil-actions{flex-wrap:wrap;gap:10px;display:flex}.perfil-hint{color:var(--muted);margin:0 0 12px;font-size:.85rem}.profile-theme-picker{border:1px solid var(--rule);border-radius:8px;margin:2px 0;padding:12px}.profile-theme-picker legend{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding:0 5px;font-size:12px}.profile-theme-picker>p{color:var(--muted);margin:0 0 10px;font-size:12px}.profile-theme-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.profile-theme-options button{border:1px solid var(--rule);background:var(--paper);color:var(--ink);cursor:pointer;font:inherit;text-align:left;border-radius:8px;flex-direction:column;align-items:stretch;gap:7px;padding:9px;display:flex}.profile-theme-options button:hover{border-color:var(--ink)}.profile-theme-options button.is-selected{outline:2px solid var(--green);outline-offset:1px}.profile-theme-options strong{font-size:12px;font-weight:600}.profile-theme-swatches{border:1px solid #0000001f;border-radius:4px;grid-template-columns:1.5fr 1fr 1fr;height:18px;display:grid;overflow:hidden}.profile-theme-swatches i{display:block}.appearance-card{max-width:780px;margin:0 auto}.appearance-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.appearance-custom{border-top:1px dashed var(--rule);margin-top:16px;padding-top:16px}.appearance-custom-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.appearance-custom-head h3{text-transform:uppercase;letter-spacing:.05em;margin:0 0 3px;font-size:14px}.appearance-custom-head p{color:var(--muted);margin:0;font-size:12px}.appearance-color-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.appearance-color-grid>label{border:1px solid var(--rule);background:var(--paper);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.appearance-color-grid label>span:first-child{flex-direction:column;gap:3px;min-width:0;display:flex}.appearance-color-grid strong{font-size:12px}.appearance-color-grid small{color:var(--muted);font-size:10px;line-height:1.35}.appearance-color-control{flex:none;align-items:center;gap:8px;display:flex}.appearance-color-control code{color:var(--muted);font-size:11px}.appearance-color-control input[type=color]{border:1px solid var(--rule);background:var(--paper-input);cursor:pointer;border-radius:6px;width:42px;height:36px;padding:2px}.appearance-actions{margin-top:16px}.wa-link{background:var(--green);color:var(--paper);font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;cursor:pointer;border:none;border-radius:0;align-items:center;gap:8px;padding:10px 16px;font-size:.85rem;text-decoration:none;display:inline-flex}.wa-link:hover{filter:brightness(1.08)}.mv-form input:disabled{opacity:.6}@media (width<=620px){.appearance-presets{grid-template-columns:repeat(2,minmax(0,1fr))}.appearance-color-grid{grid-template-columns:1fr}}@media (width<=380px){.profile-theme-options{grid-template-columns:1fr}.appearance-color-grid>label{align-items:flex-start}.appearance-color-control{flex-direction:column-reverse;align-items:flex-end}}.mv-ok{color:var(--green);margin:4px 0 0;font-size:13px}.tx-table th.num,.tx-table td.num{text-align:right}.cat-chip{color:color-mix(in srgb, var(--chip,#9098a0) 62%, #000);background:color-mix(in srgb, var(--chip,#9098a0) 15%, transparent);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-block}.theme-noir .cat-chip{background:color-mix(in srgb, var(--chip,#9098a0) 26%, transparent);color:color-mix(in srgb, var(--chip,#9098a0) 58%, #fff)}.tx-note{color:var(--muted);font-size:13px}.src-dot{vertical-align:middle;background:var(--dot,#9098a0);border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.theme-noir .src-dot{background:color-mix(in srgb, var(--dot,#9098a0) 72%, #fff)}.kpi-delta{font-size:12px;font-family:var(--mono);margin-top:2px}@media (hover:none) and (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea,[contenteditable=true]{font-size:16px!important}}
