:root,[data-theme=dark]{--bg:#0f1115;--surface:#181c23;--surface-2:#222833;--surface-3:#1b212b;--border:#ffffff12;--border-soft:#ffffff0d;--text:#f5f7fa;--muted:#8a95a8;--accent:#5b8cff;--accent-dim:#5b8cff1f;--purple:#7b61ff;--green:#32d583;--green-bg:#32d5831f;--red:#ff6b6b;--red-bg:#ff6b6b1f;--amber:#f5b942;--amber-bg:#f5b9421f;--shadow-sm:0 4px 16px #0003;--shadow-md:0 8px 30px #00000040;--shadow-lg:0 20px 60px #00000073;--shadow-accent:0 6px 20px #5b8cff4d;--bg-gradient:radial-gradient(circle at top left, #5b8cff14, transparent 30%), radial-gradient(circle at bottom right, #32d5830f, transparent 30%);--sidebar-bg:linear-gradient(180deg, #ffffff05, #fff0), #0f1115eb;--card-bg:linear-gradient(180deg, #ffffff05, transparent), var(--surface);--input-bg:#ffffff12;--input-bg-focus:#ffffff1a}[data-theme=light]{--bg:#f0f2f8;--surface:#fff;--surface-2:#e8ebf4;--surface-3:#edf0f8;--border:#00000017;--border-soft:#0000000f;--text:#111827;--muted:#6b7280;--accent:#4a7aef;--accent-dim:#4a7aef1f;--purple:#6b52e8;--green:#16a34a;--green-bg:#16a34a1a;--red:#dc2626;--red-bg:#dc26261a;--amber:#b45309;--amber-bg:#b453091a;--shadow-sm:0 2px 8px #00000012;--shadow-md:0 4px 16px #00000017;--shadow-lg:0 12px 40px #00000021;--shadow-accent:0 4px 16px #4a7aef33;--bg-gradient:radial-gradient(circle at top left, #4a7aef0d, transparent 30%), radial-gradient(circle at bottom right, #16a34a0a, transparent 30%);--sidebar-bg:#fff;--card-bg:#fff;--input-bg:#0000000a;--input-bg-focus:#4a7aef0f}:root{--radius:16px;--radius-sm:10px;--radius-xs:8px;--font-sans:"DM Sans", system-ui, sans-serif;--font-mono:"DM Mono", "Fira Code", monospace;--sidebar-width:300px;--topbar-height:60px;--transition:all .18s ease;--transition-slow:all .28s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{overscroll-behavior:none;background-color:#0f1115;width:100%;height:100%;min-height:100%}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--text);overscroll-behavior:none;min-height:100dvh;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:-1;background-image:radial-gradient(circle at 0 0,#5b8cff14,#0000 30%),radial-gradient(circle at 100% 100%,#32d5830f,#0000 30%);position:fixed;inset:0}a{color:inherit;text-decoration:none}button{font-family:var(--font-sans)}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}.hidden{display:none!important}.ambient-bg:before{content:"";pointer-events:none;z-index:-1;background-image:radial-gradient(circle at 0 0,#5b8cff14,#0000 30%),radial-gradient(circle at 100% 100%,#32d5830f,#0000 30%);position:fixed;inset:0}.top-auth{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));z-index:1000;align-items:center;gap:8px;display:flex;position:fixed}.sync-status{transition:var(--transition);border-radius:999px;align-items:center;gap:6px;padding:7px 13px;font-size:12px;font-weight:600;display:inline-flex}.sync-status.saved{background:var(--green-bg);color:var(--green);border:1px solid #32d58333}.sync-status.saving{background:var(--amber-bg);color:var(--amber);border:1px solid #f5b94233}.sync-status.error{background:var(--red-bg);color:var(--red);border:1px solid #ff6b6b33}html.theme-transitioning,html.theme-transitioning *,html.theme-transitioning :before,html.theme-transitioning :after{transition:background-color .3s,border-color .3s,color .2s!important}.theme-toggle-btn{border:1px solid var(--border);cursor:pointer;width:42px;height:42px;transition:var(--transition);color:var(--muted);background:#ffffff0d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.theme-toggle-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.theme-toggle-btn svg{pointer-events:none;width:18px;height:18px}.theme-toggle-btn.sidebar-theme-btn{border-radius:var(--radius-xs);border:1px solid var(--border-soft);background:#ffffff08;width:36px;height:36px;padding:0}.theme-toggle-btn.sidebar-theme-btn:hover{background:var(--accent-dim);color:var(--text);border-color:#5b8cff40}.theme-toggle-btn.topbar-theme-btn{border:1px solid var(--border);background:var(--surface);border-radius:13px;width:40px;height:40px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes cardIn{0%{opacity:0;transform:scale(.97)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes menuIn{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rowIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes errorIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.account-btn,.account-btn-text{cursor:pointer;transition:var(--transition);font-family:var(--font-sans)}.account-btn{-webkit-backdrop-filter:blur(12px);width:42px;height:42px;box-shadow:var(--shadow-sm);color:var(--accent);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;display:flex}.account-btn:hover{background:#5b8cff1a;border-color:#5b8cff66}.account-btn .account-icon{width:20px;height:20px;display:block}.account-btn-text{border-radius:var(--radius-xs);border:1px solid var(--border-soft);width:100%;color:var(--text);text-align:left;background:#ffffff08;padding:10px 12px;font-size:13px;font-weight:600}.account-btn-text:hover{background:#ffffff12;border-color:#5b8cff40}.account-menu{background:var(--surface);-webkit-backdrop-filter:blur(18px);width:190px;box-shadow:var(--shadow-lg);z-index:1001;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:2px;padding:6px;animation:.16s menuIn;display:flex;position:absolute}.account-menu.hidden,.hidden{display:none!important}.top-auth .account-menu{top:52px;right:0}.sidebar-footer .account-wrapper{position:relative}.sidebar-footer .account-menu{width:100%;inset:auto 0 calc(100% + 8px)}.account-menu button{width:100%;color:var(--text);text-align:left;border-radius:var(--radius-xs);cursor:pointer;font-family:var(--font-sans);background:0 0;border:none;padding:10px 12px;font-size:13px;font-weight:600;transition:background .15s}.account-menu button:hover{background:#ffffff0f}#menuLogout{color:var(--red)}#menuLogout:hover{background:#ff6b6b1a}.auth-modal{z-index:2000;-webkit-backdrop-filter:blur(5px);padding:calc(env(safe-area-inset-top) + 50px) calc(env(safe-area-inset-right) + 50px) calc(env(safe-area-inset-bottom) + 50px) calc(env(safe-area-inset-left) + 50px);background:#000000b8;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:-50px}.auth-modal.hidden{display:none!important}.auth-card{border-radius:var(--radius);background:var(--surface);-webkit-backdrop-filter:blur(20px);width:340px;box-shadow:var(--shadow-lg);border:1px solid #ffffff17;flex-direction:column;gap:0;padding:28px 24px 22px;animation:.18s cardIn;display:flex}.auth-title{letter-spacing:-.5px;color:var(--text);margin-bottom:20px;font-size:20px;font-weight:700}.auth-input{border-radius:var(--radius-sm);background:var(--input-bg);width:100%;color:var(--text);font-size:16px;font-family:var(--font-sans);box-sizing:border-box;appearance:none;border:1px solid #ffffff14;outline:none;margin-bottom:10px;padding:11px 14px;transition:border-color .15s,background .15s}.auth-input:focus{background:#5b8cff0d;border-color:#5b8cff80}.auth-input::placeholder{color:var(--muted)}.auth-input-wrap{width:100%;margin-bottom:10px;position:relative}.auth-input-pw{width:100%;margin-bottom:0;padding-right:44px}.pw-toggle{cursor:pointer;color:var(--muted);background:0 0;border:none;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0;transition:color .15s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.pw-toggle:hover{color:var(--text)}.pw-toggle svg,.eye-svg{width:17px;height:17px}.eye-slash{stroke-dasharray:30;stroke-dashoffset:0;opacity:1;transition:stroke-dashoffset .25s,opacity .18s}.pw-toggle.active .eye-slash{opacity:0;stroke-dashoffset:30px}.pw-toggle svg{transition:transform .22s,opacity .18s}.pw-toggle.active svg{transform:scale(1.08)}.auth-error{border-radius:var(--radius-sm);background:var(--red-bg);color:var(--red);border:1px solid #ff6b6b4d;margin-bottom:10px;padding:10px 13px;font-size:13px;font-weight:500;animation:.18s errorIn}.auth-error.hidden{display:none!important}.auth-btn{border-radius:var(--radius-sm);cursor:pointer;width:100%;font-size:14px;font-weight:600;font-family:var(--font-sans);transition:var(--transition);color:var(--text);border:none;min-height:44px;margin-top:6px;padding:11px}.auth-btn.primary{background:linear-gradient(135deg, var(--accent), var(--purple));box-shadow:0 4px 16px #5b8cff4d}.auth-btn.primary:hover{transform:translateY(-1px);box-shadow:0 6px 22px #5b8cff73}.auth-btn.primary:active{transform:translateY(0)}.auth-btn:not(.primary){color:var(--muted);border:1px solid var(--border-soft);background:#ffffff0d}.auth-btn:not(.primary):hover{color:var(--text);background:#ffffff17}.account-btn-text .account-btn-avatar{object-fit:cover;vertical-align:middle;border:1px solid #ffffff26;border-radius:50%;width:20px;height:20px;margin-right:2px}@media (width<=600px){.auth-card{width:calc(100vw - 24px);max-width:360px}}.gate-loading{background:var(--bg);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gate-spinner{border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:30px;height:30px;animation:.75s linear infinite spin}.gate-denied{background:var(--bg);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.gate-card{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.gate-icon{margin-bottom:4px;font-size:44px}.gate-title{color:var(--text);font-size:20px;font-weight:600}.gate-desc{color:var(--muted);max-width:280px;font-size:14px;line-height:1.5}.gate-btn{background:var(--accent-dim);color:var(--accent);border-radius:var(--radius-sm);border:1px solid #5b8cff4d;margin-top:8px;padding:10px 24px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s}.gate-btn:hover{background:#5b8cff2e}.fin-app{flex-direction:column;width:100%;max-width:100vw;min-height:100dvh;display:flex;overflow-x:clip}@media (width>=768px){.fin-app{height:100dvh}}.fin-header{z-index:200;padding:max(env(safe-area-inset-top), 14px) 20px 14px;-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);background:#0f1115e0;align-items:center;gap:12px;display:flex;position:sticky;top:0}[data-theme=light] .fin-header{background:#f0f2f8e6}.fin-back{border-radius:var(--radius-xs);border:1px solid var(--border);width:36px;height:36px;color:var(--muted);transition:var(--transition);flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:flex}.fin-back:hover{color:var(--text);border-color:var(--accent);background:var(--accent-dim)}.fin-header-title{flex:1;min-width:0}.fin-header-label{color:var(--text);font-size:15px;font-weight:600}.fin-header-sub{color:var(--muted);font-size:11px}.header-actions{align-items:center;gap:8px;display:flex}.account-wrapper{position:relative}.theme-toggle-btn{border:1px solid var(--border);width:36px;height:36px;color:var(--muted);cursor:pointer;transition:var(--transition);background:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;display:flex}.theme-toggle-btn:hover{color:var(--text);background:var(--accent-dim);border-color:#5b8cff66}.fin-main{flex-direction:column;flex:1;gap:14px;width:100%;max-width:600px;margin:0 auto;padding:20px 16px 48px;display:flex}.overview-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;flex-direction:column;gap:18px;padding:22px;display:flex;position:relative;overflow:hidden}.overview-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#5b8cff17,#0000 70%);width:180px;height:180px;position:absolute;top:-50px;right:-50px}.overview-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.overview-period-wrap{align-items:center;gap:8px;display:flex}.period-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.period-badge{font-size:12px;font-family:var(--font-sans);letter-spacing:-.2px;color:var(--accent);background:var(--accent-dim);font-variant-numeric:tabular-nums;border:1px solid #5b8cff33;border-radius:999px;padding:3px 10px;font-weight:600}.overview-status{border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600}.overview-status.paid{background:var(--green-bg);color:var(--green)}.overview-status.unpaid{background:var(--amber-bg);color:var(--amber)}.overview-amount-row{align-items:center;gap:20px;display:flex}.amount-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:11px;font-weight:500}.amount-value{font-family:var(--font-sans);letter-spacing:-2px;color:var(--text);font-variant-numeric:tabular-nums lining-nums;font-size:34px;font-weight:800;line-height:1}.amount-available{font-family:var(--font-sans);letter-spacing:-.8px;color:var(--green);font-variant-numeric:tabular-nums lining-nums;font-size:22px;font-weight:700;line-height:1}.amount-cupo{font-family:var(--font-sans);letter-spacing:-.8px;color:var(--muted);font-variant-numeric:tabular-nums lining-nums;font-size:22px;font-weight:700;line-height:1}.amount-divider{background:var(--border);flex-shrink:0;width:1px;height:36px}.progress-wrap{align-items:center;gap:10px;display:flex}.progress-track{background:var(--surface-2);border-radius:999px;flex:1;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent), var(--purple));border-radius:999px;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.progress-fill.warning{background:linear-gradient(90deg, var(--amber), #f59e0b)}.progress-fill.danger{background:linear-gradient(90deg, var(--red), #f44)}.progress-pct{font-family:var(--font-sans);color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:36px;font-size:12px;font-weight:600}.overview-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.payment-info{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.payment-info.urgent{color:var(--amber)}.payment-info.overdue{color:var(--red)}.payment-info.paid{color:var(--green)}.btn-paid{background:var(--green-bg);color:var(--green);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:var(--transition);border:1px solid #32d5834d;padding:8px 16px;font-size:13px;font-weight:500}.btn-paid:hover{background:#32d58338}.btn-paid.is-paid{opacity:.55;cursor:default;pointer-events:none}.section-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:14px;padding:20px;display:flex}.section-header{justify-content:space-between;align-items:center;display:flex}.section-title{color:var(--text);font-size:14px;font-weight:600}.section-count{color:var(--muted);font-size:12px;font-family:var(--font-mono)}.quick-add{flex-direction:column;gap:10px;display:flex}.qa-top{flex-wrap:wrap;align-items:stretch;gap:10px;display:flex}.qa-amount-wrap{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius-sm);flex:1;align-items:center;gap:4px;min-width:130px;padding:0 14px;transition:border-color .15s;display:flex}.qa-amount-wrap:focus-within{border-color:var(--accent);background:var(--input-bg-focus)}.qa-currency{color:var(--muted);font-size:16px;font-family:var(--font-mono);flex-shrink:0}.qa-amount-input{color:var(--text);font-family:var(--font-mono);background:0 0;border:none;outline:none;width:100%;padding:11px 0;font-size:17px}.qa-amount-input::placeholder{color:var(--muted);opacity:.4}.qa-amount-input::-webkit-inner-spin-button{-webkit-appearance:none}.qa-amount-input::-webkit-outer-spin-button{-webkit-appearance:none}.qa-cats{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.qa-cat{border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--surface-2);color:var(--muted);cursor:pointer;transition:var(--transition);white-space:nowrap;padding:7px 11px;font-size:12px;font-weight:500}.qa-cat:hover{border-color:var(--accent);color:var(--accent)}.qa-cat.active{background:var(--accent-dim);color:var(--accent);border-color:#5b8cff59}.qa-desc-input{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:var(--font-sans);color:var(--text);outline:none;width:100%;padding:10px 14px;transition:border-color .15s,background .15s}.qa-desc-input:focus{border-color:var(--accent);background:var(--input-bg-focus)}.qa-desc-input::placeholder{color:var(--muted);opacity:.5}.btn-add{background:var(--accent);color:#fff;border-radius:var(--radius-sm);width:100%;font-size:14px;font-weight:600;font-family:var(--font-sans);cursor:pointer;letter-spacing:.01em;border:none;padding:12px;transition:opacity .15s,transform .1s}.btn-add:hover{opacity:.88}.btn-add:active{transform:scale(.985)}.btn-add.loading{opacity:.55;pointer-events:none}.tx-list{flex-direction:column;gap:2px;display:flex}.list-empty{color:var(--muted);text-align:center;padding:24px 0 8px;font-size:13px}.tx-item{border-radius:var(--radius-xs);align-items:center;gap:12px;padding:9px 10px;transition:background .15s;display:flex}.tx-item:hover{background:var(--surface-2)}.tx-icon{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;display:flex}.tx-icon.comida{background:var(--amber-bg)}.tx-icon.transporte{background:var(--accent-dim)}.tx-icon.otros{background:#7b61ff1f}.tx-info{flex:1;min-width:0}.tx-desc{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.tx-date{color:var(--muted);font-size:11px;font-family:var(--font-mono);margin-top:2px}.tx-amount{font-family:var(--font-sans);letter-spacing:-.3px;color:var(--red);font-variant-numeric:tabular-nums lining-nums;flex-shrink:0;font-size:14px;font-weight:600}.tx-del{border-radius:var(--radius-xs);width:28px;height:28px;color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .15s,background .15s,color .15s;display:flex}.tx-item:hover .tx-del{opacity:1}.tx-del:hover{background:var(--red-bg);color:var(--red)}.history-list{flex-direction:column;gap:8px;display:flex}.history-item{border-radius:var(--radius-sm);background:var(--surface-2);justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.history-period{color:var(--text);flex:1;font-size:13px}.history-total{font-family:var(--font-sans);color:var(--muted);font-variant-numeric:tabular-nums lining-nums;flex-shrink:0;font-size:13px;font-weight:600}.history-badge{border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:600}.history-badge.paid{background:var(--green-bg);color:var(--green)}.history-badge.unpaid{background:var(--amber-bg);color:var(--amber)}.history-badge.overdue{background:var(--red-bg);color:var(--red)}.tool-icon--accent{color:var(--accent);background:var(--accent-dim);border-color:#5b8cff33}.tool-icon--green{color:var(--green);background:var(--green-bg);border-color:#32d58333}.tool-name{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.tool-private-tag{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:4px;flex-shrink:0;padding:2px 7px;font-size:9px;font-weight:700;line-height:1.6}.btn-paid.is-locked{background:var(--surface-2);color:var(--muted);border-color:var(--border);opacity:.6;cursor:not-allowed;pointer-events:none}.qa-bottom{align-items:stretch;gap:8px;display:flex}.qa-datepicker{flex-shrink:0;position:relative}.qa-date-display{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-family:var(--font-sans);color:var(--text);cursor:pointer;white-space:nowrap;align-items:center;gap:7px;height:100%;padding:10px 12px;font-weight:500;transition:border-color .15s,background .15s;display:flex}.qa-date-display:hover{border-color:var(--accent);background:var(--input-bg-focus)}.qa-date-display svg{color:var(--muted);flex-shrink:0}.qa-cal{z-index:500;background:var(--surface);border:1px solid var(--border);border-radius:14px;width:244px;padding:14px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 32px #00000047}.qa-cal.hidden{display:none}.qa-cal-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.qa-cal-month{color:var(--text);text-transform:capitalize;font-size:13px;font-weight:700}.qa-cal-nav{border:1px solid var(--border);width:28px;height:28px;color:var(--muted);cursor:pointer;transition:var(--transition);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:flex}.qa-cal-nav:hover{background:var(--surface-2);color:var(--text);border-color:var(--accent)}.qa-cal-days-header{grid-template-columns:repeat(7,1fr);margin-bottom:4px;display:grid}.qa-cal-days-header span{color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.04em;padding:3px 0;font-size:10px;font-weight:700}.qa-cal-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.qa-cal-cell{aspect-ratio:1;font-size:12px;font-weight:500;font-family:var(--font-sans);color:var(--text);cursor:pointer;font-variant-numeric:tabular-nums;border-radius:7px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.qa-cal-cell:not(.disabled):not(.empty):not(.selected):hover{background:var(--surface-2)}.qa-cal-cell.today{color:var(--accent);font-weight:700}.qa-cal-cell.selected{background:var(--accent);color:#fff;font-weight:700}.qa-cal-cell.disabled{opacity:.22;cursor:not-allowed;pointer-events:none}.qa-cal-cell.empty{pointer-events:none}.qa-bottom .qa-desc-input{flex:1}.tx-actions{flex-shrink:0;align-items:center;display:flex}.tx-confirm{align-items:center;gap:5px;display:none}.tx-confirm-label{color:var(--muted);white-space:nowrap;font-size:12px}.tx-confirm-yes,.tx-confirm-no{font-size:12px;font-weight:600;font-family:var(--font-sans);border-radius:var(--radius-xs);border:1px solid var(--border);cursor:pointer;transition:var(--transition);padding:4px 10px}.tx-confirm-yes{background:var(--red-bg);color:var(--red);border-color:#ff453a4d}.tx-confirm-yes:hover{background:#ff453a38}.tx-confirm-yes:disabled{opacity:.5;pointer-events:none}.tx-confirm-no{background:var(--surface-2);color:var(--muted)}.tx-confirm-no:hover{color:var(--text);border-color:var(--accent)}.tx-item.is-confirming{background:var(--red-bg)}.tx-item.is-confirming .tx-del{display:none}.tx-item.is-confirming .tx-confirm{display:flex}.tx-item.is-confirming .tx-actions{opacity:1}.toast-container{z-index:999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:20px}.toast{border-radius:var(--radius-sm);font-size:13px;font-weight:500;font-family:var(--font-sans);opacity:0;-webkit-backdrop-filter:blur(12px);border:1px solid #0000;max-width:300px;padding:11px 16px;transition:opacity .22s,transform .22s;transform:translateY(10px)}.toast--in{opacity:1;transform:translateY(0)}.toast--error{color:var(--red);background:#1e0a0aeb;border-color:#ff453a59}.toast--success{color:var(--green);background:#0a1e14eb;border-color:#32d58359}[data-theme=light] .toast--error{background:#fff0eef5}[data-theme=light] .toast--success{background:#ebfff5f5}.fin-body{flex:1;min-height:0;display:flex;overflow-x:clip}@media (width>=768px){.fin-main{flex:1;min-width:0;max-width:none;margin:0;overflow-y:auto}}.sidebar-toggle-btn{border-radius:var(--radius-xs);border:1px solid var(--border);width:36px;height:36px;color:var(--muted);cursor:pointer;transition:var(--transition);background:#ffffff0d;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-toggle-btn:hover{color:var(--text);background:var(--accent-dim);border-color:#5b8cff66}.fin-app.sidebar-open .sidebar-toggle-btn{background:var(--accent-dim);color:var(--accent);border-color:#5b8cff59}.fin-sidebar{background:var(--surface);border-left:1px solid #0000;flex-direction:column;flex-shrink:0;width:0;transition:width .28s cubic-bezier(.4,0,.2,1),border-color .28s;display:flex;overflow:hidden}.fin-app.sidebar-open .fin-sidebar{border-color:var(--border);width:340px;overflow:visible}.fin-app.sidebar-open .sidebar-body{overflow:hidden auto}.sidebar-tabs-wrap{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:4px;padding:12px 12px 0;display:flex}.sidebar-tabs-inner{flex:1;gap:2px;min-width:0;display:flex}.sidebar-tab{font-size:11px;font-weight:600;font-family:var(--font-sans);color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;align-items:center;gap:5px;padding:8px 10px 10px;transition:color .15s,border-color .15s;display:flex}.sidebar-tab:hover{color:var(--text)}.sidebar-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.sidebar-close-mobile:hover{color:var(--text);background:var(--surface-2)}.sidebar-body{scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex:1;min-height:0;overflow:hidden auto}.sidebar-body::-webkit-scrollbar{width:3px}.sidebar-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.sidebar-panel{flex-direction:column;gap:12px;min-height:100%;padding:16px;display:flex}.sidebar-panel.hidden{display:none!important}#panelHistorial .history-list{flex-direction:column;gap:8px;display:flex}.sidebar-overlay{z-index:299;-webkit-backdrop-filter:blur(2px);background:#0009;display:none;position:fixed;inset:0}.sidebar-overlay.hidden{display:none!important}@media (width>=768px){.sidebar-overlay{display:none!important}}@media (width<=767px){.fin-sidebar{z-index:300;transition:transform .28s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:0;right:0;transform:translate(100%);border-left:1px solid var(--border)!important;width:100%!important;max-width:340px!important}.fin-app.sidebar-open .fin-sidebar{transform:translate(0);border-color:var(--border)!important;width:100%!important}.fin-app.sidebar-open .sidebar-overlay{display:block}.sidebar-close-mobile{flex-shrink:0;display:flex}.sidebar-tabs-inner{scrollbar-width:none;-ms-overflow-style:none;flex:1;min-width:0;overflow-x:auto}.sidebar-tabs-inner::-webkit-scrollbar{display:none}.sidebar-tabs-wrap{gap:6px;padding:10px 10px 0}}.resumen-chart-wrap{flex-direction:column;align-items:center;gap:12px;width:100%;padding:4px 0;display:flex}.resumen-legend{flex-direction:column;gap:8px;width:100%;display:flex}.resumen-legend-item{align-items:center;gap:8px;display:flex}.resumen-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.resumen-legend-label{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:12px;overflow:hidden}.resumen-legend-amount{color:var(--text);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:12px;font-weight:600}.resumen-stats{grid-template-columns:1fr 1fr;gap:8px;display:grid}.resumen-stat{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.resumen-stat:last-child:nth-child(odd){grid-column:1/-1}.resumen-stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px;font-size:10px;font-weight:700}.resumen-stat-value{color:var(--text);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.sim-title{color:var(--text);font-size:14px;font-weight:700}.sim-note{color:var(--muted);margin-top:-6px;font-size:11px;line-height:1.4}.sim-field{flex-direction:column;gap:7px;display:flex}.sim-field label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:700}.sim-amount-wrap{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:4px;padding:0 12px;transition:border-color .15s;display:flex}.sim-amount-wrap:focus-within{border-color:var(--accent);background:var(--input-bg-focus)}.sim-amount-wrap span{color:var(--muted);font-size:15px;font-family:var(--font-sans)}.sim-input{color:var(--text);font-family:var(--font-sans);font-variant-numeric:tabular-nums;background:0 0;border:none;outline:none;width:100%;padding:10px 0;font-size:16px;font-weight:600}.sim-input::-webkit-inner-spin-button{-webkit-appearance:none}.sim-input::-webkit-outer-spin-button{-webkit-appearance:none}.sim-pills{flex-wrap:wrap;gap:5px;display:flex}.sim-pill{border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--surface-2);color:var(--muted);font-family:var(--font-sans);cursor:pointer;transition:var(--transition);padding:6px 12px;font-size:12px;font-weight:700}.sim-pill:hover{border-color:var(--accent);color:var(--accent)}.sim-pill.active{background:var(--accent-dim);color:var(--accent);border-color:#5b8cff59}.sim-result{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;padding:14px;display:flex}.sim-result.hidden{display:none!important}.sim-result-main{text-align:center;border-bottom:1px solid var(--border);padding-bottom:10px}.sim-result-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px;font-size:11px;font-weight:700}.sim-result-value{color:var(--text);letter-spacing:-1px;font-variant-numeric:tabular-nums;font-size:28px;font-weight:800}.sim-result-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.sim-result-item-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:3px;font-size:10px;font-weight:700}.sim-result-item-value{color:var(--text);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.sim-result-item-value.red{color:var(--red)}.minimo-compare{align-items:center;gap:8px;display:flex}.minimo-col{background:var(--surface-2);border:1px solid var(--border);text-align:center;border-radius:10px;flex:1;padding:12px}.minimo-col.green{border-color:#32d58340}.minimo-col.red{border-color:#ff453a40}.minimo-col-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px;font-size:10px;font-weight:700;line-height:1.3}.minimo-col-value{letter-spacing:-.5px;font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:16px;font-weight:800}.minimo-col.green .minimo-col-value{color:var(--green)}.minimo-col.red .minimo-col-value{color:var(--red)}.minimo-col-sub{color:var(--muted);font-size:10px;line-height:1.3}.minimo-vs{color:var(--muted);flex-shrink:0;font-size:11px;font-weight:700}.minimo-warning{color:var(--amber);background:var(--amber-bg);border:1px solid #fbbf2440;border-radius:9px;padding:10px 12px;font-size:12px;line-height:1.5}.minimo-warning strong{font-weight:700}@media (width<=767px){.overview-amount-row{gap:10px}.amount-value{font-size:clamp(18px,6vw,34px)}.amount-available,.amount-cupo{font-size:clamp(13px,4vw,22px)}.overview-card{padding:16px}}.account-wrapper .account-menu{left:auto;right:0}
