body{background:#eef2f7;color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial;margin:0;overflow-x:hidden;transition:all .3s}*,.button,[role=button],a,button{-webkit-tap-highlight-color:transparent}.button,[role=button],a,button{outline:none}.button:focus-visible,a:focus-visible,button:focus-visible{border-radius:inherit;outline:2px solid #6366f1;outline-offset:2px}.app-container{margin:auto;max-width:420px;padding:20px 20px 80px}.nav{align-items:center;background:#fff;border-radius:20px;box-shadow:0 10px 25px #00000014;display:flex;justify-content:space-between;margin-bottom:25px;padding:12px 16px}.nav-left{flex:1 1}.nav-left,.nav-right{align-items:center;display:flex;gap:10px}.nav-right{justify-content:flex-end}.nav-links{display:flex;flex-wrap:wrap;gap:14px}.nav a{color:#4338ca;font-size:15px;font-weight:600;text-decoration:none;white-space:nowrap}.nav-logo-btn{-webkit-appearance:none;appearance:none;background-color:initial;border:none;padding:0}.nav-logo,.nav-logo-btn{border-radius:10px;cursor:pointer;height:36px;width:36px}.nav-logo{-webkit-touch-callout:none;object-fit:cover;-webkit-user-select:none;user-select:none}.dark-toggle{-webkit-tap-highlight-color:transparent;background:#4338ca;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;height:36px;transition:transform .15s ease,background .15s ease;width:36px}.dark-toggle:active{transform:scale(.88)}.title{font-size:32px;font-weight:800;margin-bottom:22px}.card{background:#fff;border-radius:20px;box-shadow:0 20px 50px #00000014;margin-bottom:20px;padding:22px;transition:transform .2s ease,box-shadow .2s ease}.card:hover{box-shadow:0 25px 55px #0000001f;transform:translateY(-3px)}.button{border:none;border-radius:14px;cursor:pointer;font-size:16px;font-weight:600;padding:15px;transition:.15s;width:100%}.button:active{transform:scale(.97)}.button-blue{background:linear-gradient(135deg,#4338ca,#6366f1);box-shadow:0 8px 20px #4338ca40;color:#fff}.button-green{background:#22c55e;color:#fff}.button-red{background:#ef4444;color:#fff}.button-undo{background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;color:#92400e;cursor:pointer;font-size:14px;font-weight:600;margin-top:8px;padding:8px 0;text-align:center;width:100%}body.dark .button-undo{background:#422006;border-color:#b45309;color:#fbbf24}.input{border:1px solid #e5e7eb;border-radius:12px;box-sizing:border-box;font-size:15px;margin-bottom:12px;padding:14px;width:100%}.priority-alta,.priority-baja,.priority-media{align-items:center;border-radius:10px;display:inline-flex;font-size:12px;font-weight:600;height:24px;justify-content:center;padding:4px 10px;text-transform:lowercase}.priority-alta{background:#ef4444;color:#fff}.priority-media{background:#f59e0b;color:#fff}.priority-baja{background:#22c55e;color:#fff}.progress{background:#f1f5f9;margin-top:14px;overflow:hidden}.progress,.progress-bar{border-radius:10px;height:10px}.progress-bar{transition:width .8s ease}.bar-alta{background:#ef4444}.bar-media{background:#f59e0b}.bar-baja{background:#22c55e}.switch{height:22px;width:40px}.slider{background:#ccc;border-radius:22px;bottom:0;left:0;right:0;top:0}.slider:before{height:16px;width:16px}input:checked+.slider{background:#22c55e}input:checked+.slider:before{transform:translateX(18px)}.main-panel{background:#fff;border-radius:24px;box-shadow:0 15px 40px #00000014;margin-bottom:22px;padding:24px}.money-header{background:linear-gradient(135deg,#6366f1,#818cf8);border-radius:20px;box-shadow:0 12px 30px #6366f14d;color:#fff;margin-bottom:24px;padding:34px;text-align:center}.money-title{color:#ffffffb3;font-size:11px;font-weight:700;letter-spacing:2px;margin-bottom:6px;text-transform:uppercase}.money-amount{color:#fff;font-size:clamp(36px,8vw,52px);font-weight:900;line-height:1.1;white-space:nowrap}.panel-section{border-top:1px solid #e5e7eb;margin-bottom:22px;padding-top:10px}.withdraw-button{background:#e5e7eb;color:#374151}.panel-section h3{margin-bottom:8px;margin-top:0}.dash-tabs{display:flex;gap:4px;margin-bottom:0;padding:0}.dash-tab{align-items:center;background:#f1f5f9;border:none;border-bottom:3px solid #0000;border-radius:14px 14px 0 0;color:#64748b;cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:700;gap:6px;justify-content:center;padding:12px 6px;position:relative;transition:all .2s ease}.dash-tab-active{background:#fff;color:#1e293b;z-index:1}.dash-tab-active.dash-tab:first-child{border-bottom-color:#ef4444}.dash-tab-active.dash-tab:nth-child(2){border-bottom-color:#22c55e}.dash-tab-active.dash-tab:nth-child(3){border-bottom-color:#6366f1}.dash-tab-active.dash-tab:nth-child(4){border-bottom-color:#f59e0b}.dash-tab-content{background:#fff;border-radius:0 0 14px 14px;overflow:hidden;padding:16px}.dash-tab-icon{align-items:center;border-radius:9px;display:inline-flex;flex-shrink:0;height:30px;justify-content:center;transition:transform .2s ease;width:30px}.dash-tab-active .dash-tab-icon{transform:scale(1.1)}.dash-tab-icon-gasto{background:#ef444424;color:#ef4444}.dash-tab-icon-ingreso{background:#22c55e24;color:#22c55e}.dash-tab-icon-analisis{background:#6366f124;color:#6366f1}.dash-tab-icon-credito{background:#f59e0b24;color:#f59e0b}.dash-tab-active .dash-tab-icon-gasto{background:#ef4444;color:#fff}.dash-tab-active .dash-tab-icon-ingreso{background:#22c55e;color:#fff}.dash-tab-active .dash-tab-icon-analisis{background:#6366f1;color:#fff}.dash-tab-active .dash-tab-icon-credito{background:#f59e0b;color:#fff}body.dark .dash-tab{background:#1e293b;color:#94a3b8}body.dark .dash-tab-active{background:#334155;color:#f1f5f9}body.dark .dash-tab-content{background:#334155}body.dark .dash-tab-icon-gasto{background:#ef44442e;color:#f87171}body.dark .dash-tab-icon-ingreso{background:#22c55e2e;color:#4ade80}body.dark .dash-tab-icon-analisis{background:#6366f12e;color:#818cf8}body.dark .dash-tab-icon-credito{background:#f59e0b2e;color:#fbbf24}body.dark .dash-tab-active .dash-tab-icon-gasto{background:#ef4444;color:#fff}body.dark .dash-tab-active .dash-tab-icon-ingreso{background:#22c55e;color:#fff}body.dark .dash-tab-active .dash-tab-icon-analisis{background:#6366f1;color:#fff}body.dark .dash-tab-active .dash-tab-icon-credito{background:#f59e0b;color:#fff}.credit-verdict-badge{border-radius:20px;color:#fff;display:inline-block;font-size:18px;font-weight:800;letter-spacing:.03em;padding:8px 24px}.credit-verdict-text{color:#475569;font-size:14px;line-height:1.5;margin-top:10px}body.dark .credit-verdict-text{color:#94a3b8}.credit-bar-container{margin:16px 0}.credit-bar-label{color:#64748b;display:flex;font-size:12px;justify-content:space-between;margin-bottom:4px}.credit-bar-label:last-child{margin-bottom:0;margin-top:4px}.credit-bar-track{background:#f1f5f9;border-radius:10px;display:flex;height:20px;overflow:hidden}body.dark .credit-bar-track{background:#1e293b}.credit-bar-base{background:#6366f1;border-radius:10px 0 0 10px}.credit-bar-extra{border-radius:0 10px 10px 0}.credit-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin:16px 0}.credit-stat{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 8px;text-align:center}body.dark .credit-stat{background:#0f172a;border-color:#334155}.credit-stat-value{display:block;font-size:20px;font-weight:800}.credit-stat-label{color:#64748b;display:block;font-size:11px;margin-top:4px}body.dark .credit-stat-label{color:#94a3b8}.credit-impact{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px}body.dark .credit-impact{background:#0f172a;border-color:#334155}.credit-impact-title{color:#1e293b;font-size:13px;font-weight:700;margin-bottom:10px}body.dark .credit-impact-title{color:#e2e8f0}.credit-impact-row{color:#475569;display:flex;font-size:13px;justify-content:space-between;padding:4px 0}body.dark .credit-impact-row{color:#94a3b8}.credit-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;margin-top:20px;padding:18px}body.dark .credit-section{background:#1e293b;border-color:#334155}.credit-section-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:14px;margin-bottom:18px;padding-bottom:16px}body.dark .credit-section-header{border-bottom-color:#334155}.credit-section-icon{align-items:center;background:linear-gradient(135deg,#f59e0b,#f97316);border-radius:14px;box-shadow:0 4px 12px #f59e0b4d;color:#fff;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.credit-section-title{color:#1e293b;font-size:17px;font-weight:900;letter-spacing:-.02em;margin-bottom:3px}body.dark .credit-section-title{color:#f1f5f9}.credit-section-sub{color:#64748b;font-size:12px;font-weight:500;letter-spacing:.01em}body.dark .credit-section-sub{color:#94a3b8}.credit-rates{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:12px;padding:14px}body.dark .credit-rates{background:#0f172a;border-color:#334155}.credit-rates-title{color:#1e293b;font-size:13px;font-weight:700;margin-bottom:10px}body.dark .credit-rates-title{color:#e2e8f0}.credit-rates-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:10px}.credit-rate-item{background:#f8fafc;border-radius:10px;padding:10px 6px;text-align:center}body.dark .credit-rate-item{background:#1e293b}.credit-rate-value{color:#1e293b;display:block;font-size:18px;font-weight:900;letter-spacing:-.02em;word-break:break-all}body.dark .credit-rate-value{color:#f1f5f9}.credit-rate-label{color:#6366f1;display:block;font-size:12px;font-weight:800;margin-top:2px}.credit-rate-desc{color:#94a3b8;display:block;font-size:10px;margin-top:1px}.credit-rates-explain{color:#64748b;font-size:12px;line-height:1.4}body.dark .credit-rates-explain{color:#94a3b8}.credit-disclaimer{color:#94a3b8;font-size:11px;line-height:1.4;margin-top:14px;text-align:center}@media (max-width:600px){.nav{justify-content:center;padding:10px 12px;position:relative}.nav,.nav-left{align-items:center;display:flex}.nav-left{left:12px;position:absolute}.nav-center{align-items:center;display:flex;justify-content:center}.calibrate-nav-btn{background:linear-gradient(135deg,#5b4dff,#7b6cff);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;letter-spacing:.02em;line-height:1;padding:8px 16px}.calibrate-nav-btn:active{opacity:.85}.nav-right{align-items:center;display:flex;gap:8px;position:absolute;right:12px}.button-primary{font-size:13px;padding:8px 12px}.nav-logo,.nav-logo-btn{height:32px;width:32px}.dark-toggle{font-size:15px;height:34px;width:34px}}body.dark{background:#0b0e19;color:#f1f5f9}body.dark .nav{background:#1e293b;box-shadow:none}body.dark .nav-logo-btn{background-color:initial}body.dark .card{background:#1e293b;box-shadow:none}body.dark .card:hover{box-shadow:0 20px 45px #0009}body.dark .main-panel{background:#1e293b;box-shadow:none}body.dark .money-header{background:linear-gradient(135deg,#312e81,#1e1b4b)}body.dark .money-title{color:#c7d2fe}body.dark .money-amount{color:#f1f5f9}body.dark .input{background:#0f172a;border:1px solid #334155;color:#fff}body.dark .nav a{color:#a5b4fc}body.dark .progress{background:#334155}.bucket-summary{margin-top:16px}.bucket-summary-row{margin-bottom:10px}.bucket-summary-link{border-radius:10px;cursor:pointer;margin-left:-8px;margin-right:-8px;padding:8px;transition:background .15s}.bucket-summary-link:active{background:#4338ca14}body.dark .bucket-summary-link:active{background:#6366f126}.bucket-summary-row:last-child{margin-bottom:0}.bucket-summary-header{align-items:center;display:flex;justify-content:space-between}.bucket-summary-name{font-size:13px;font-weight:600;white-space:nowrap}.bucket-summary-pct{color:#6b7280;font-size:12px;font-weight:600}body.dark .bucket-summary-pct{color:#94a3b8}.payment-tracker{color:#6b7280;cursor:pointer;font-size:12px;margin:4px 0 0}.payment-tracker:active{opacity:.6}.payment-tracker-done{color:#16a34a;font-weight:600}body.dark .payment-tracker{color:#94a3b8}body.dark .payment-tracker-done{color:#4ade80}.month-selector{align-items:center;display:flex;gap:8px;margin:12px 0}.month-selector select{background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#1f2937;flex:1 1;font-size:13px;font-weight:600;padding:8px 12px}body.dark .month-selector select{background:#0f172a;border-color:#334155;color:#e2e8f0}.month-history-badge{background:#dbeafe;border-radius:6px;color:#1d4ed8;display:inline-block;font-size:11px;font-weight:600;padding:2px 8px}body.dark .month-history-badge{background:#1e3a5f;color:#93c5fd}.month-nav-btn{align-items:center;background:none;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;transition:background .15s,border-color .15s;width:28px}.month-nav-btn:hover{background:#f3f4f6;border-color:#9ca3af}body.dark .month-nav-btn{border-color:#475569;color:#e2e8f0}body.dark .month-nav-btn:hover{background:#334155;border-color:#64748b}.item-block{border-radius:8px;margin-bottom:4px;padding:4px 8px;transition:background .3s}.item-row{align-items:center;display:flex;gap:8px}.item-row .input{flex:1 1;min-width:0}.item-label{flex-shrink:0;font-size:14px;font-weight:600}.item-delete-btn{background:#0000;border:none;cursor:pointer;flex-shrink:0;font-size:14px;opacity:.4;padding:2px}.item-updated{background:#22c55e14}body.dark .item-updated{background:#22c55e1a}.update-counter{color:#6b7280;font-size:12px;margin-bottom:10px}.update-counter-done{color:#16a34a}body.dark .update-counter{color:#94a3b8}body.dark .update-counter-done{color:#4ade80}@keyframes saved-flash{0%{border-color:#22c55e;box-shadow:0 0 0 2px #22c55e40}to{border-color:#e2e8f0;box-shadow:none}}.input-saved,.saved-check{animation:saved-flash 1.5s ease}.saved-check{color:#22c55e;font-size:16px;font-weight:700;margin-left:-4px}.debt-label{align-items:center;cursor:pointer;display:flex;gap:6px}.debt-check{accent-color:#22c55e;cursor:pointer;flex-shrink:0;height:16px;width:16px}.debt-name-paid{opacity:.5;text-decoration:line-through}.item-paid{background:#22c55e0f!important}.debt-header{background:#fefce8;border:1px solid #fde68a;border-radius:12px;margin-bottom:12px;padding:12px;text-align:center}.debt-header-main{align-items:baseline;display:flex;gap:6px;justify-content:center}.debt-header-amount{color:#92400e;font-size:22px;font-weight:800}.debt-header-sub{color:#a16207;font-size:13px}.debt-header-meta{color:#a1a1aa;font-size:11px;margin-top:4px}body.dark .debt-header{background:#422006;border-color:#92400e}body.dark .debt-header-amount{color:#fbbf24}body.dark .debt-header-sub{color:#d97706}.debt-strategy{margin:12px 0}.debt-strategy-label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}.debt-strategy-options{display:flex;gap:8px}.debt-strategy-btn{background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:8px 12px;transition:all .2s}.debt-strategy-btn:hover{border-color:#d1d5db}.debt-strategy-active{background:#f5f3ff;border-color:#7c3aed;color:#7c3aed}.debt-strategy-desc{color:#6b7280;font-size:12px;margin:6px 0 0}body.dark .debt-strategy-btn{background:#1e293b;border-color:#334155;color:#e2e8f0}body.dark .debt-strategy-btn:hover{border-color:#475569}body.dark .debt-strategy-active{background:#2e1065;border-color:#8b5cf6;color:#c4b5fd}body.dark .debt-strategy-desc{color:#94a3b8}.debt-limit-wrap{margin-top:10px}.debt-limit-label{color:#6b7280;display:block;font-size:12px;font-weight:600;margin-bottom:4px}body.dark .debt-limit-label{color:#94a3b8}.debt-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:8px;padding:10px 12px;transition:all .2s}.debt-card-paid{background:#f0fdf4;border-color:#bbf7d0}.debt-card-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.debt-card-check-label{align-items:center;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px}.debt-card-delete{background:none;border:none;border-radius:4px;color:#d1d5db;cursor:pointer;font-size:16px;padding:2px 6px}.debt-card-delete:hover{background:#fef2f2;color:#ef4444}.debt-card-bottom{align-items:center;display:flex;gap:8px}.debt-card-amount-wrap{align-items:center;display:flex;flex:1 1;position:relative}.debt-card-input{font-size:15px;font-weight:600;width:100%!important}.debt-card-cuotas{align-items:center;display:flex;flex-direction:column;flex-shrink:0}.debt-card-total{border-top:1px solid #f3f4f6;color:#a1a1aa;font-size:11px;margin-top:6px;padding-top:6px}body.dark .debt-card{background:#1e293b;border-color:#334155}body.dark .debt-card-paid{background:#052e16;border-color:#166534}body.dark .debt-card-delete{color:#4b5563}body.dark .debt-card-delete:hover{background:#450a0a;color:#ef4444}body.dark .debt-card-total{border-color:#334155}.debt-installments-input{-moz-appearance:textfield;border-radius:8px;flex-shrink:0;font-size:13px;height:38px;max-width:38px;min-width:38px;padding:0!important;text-align:center;width:38px!important}.debt-installments-input::-webkit-inner-spin-button,.debt-installments-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.debt-installments-wrap{align-items:center;display:flex;flex-direction:column;flex-shrink:0}.debt-installments-label{color:#9ca3af;font-size:9px;margin-top:2px}body.dark .withdraw-button{background:#334155;color:#e5e7eb}body.dark .panel-section{border-top:1px solid #334155}.eco-section{margin-bottom:20px;margin-top:16px}.eco-header{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:10px}.eco-title{color:#1e1b4b;font-size:15px;font-weight:700;margin:0}.eco-update{color:#9ca3af;font-size:11px}.eco-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.eco-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;display:flex;flex-direction:column;gap:2px;padding:14px}.eco-label{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.eco-value{font-feature-settings:"tnum";color:#1e1b4b;font-size:22px;font-variant-numeric:tabular-nums;font-weight:800}.eco-value-blue{color:#2563eb}.eco-brecha{color:#f59e0b;font-size:11px;font-weight:600;margin-top:2px}.eco-sub{color:#9ca3af;font-size:11px;margin-top:1px}.eco-source{color:#b0b0b0;font-size:10px;margin-bottom:0;margin-top:10px;text-align:center}body.dark .eco-title{color:#e2e8f0}body.dark .eco-update{color:#64748b}body.dark .eco-card{background:#1e293b;border-color:#334155}body.dark .eco-label{color:#94a3b8}body.dark .eco-value{color:#e2e8f0}body.dark .eco-value-blue{color:#60a5fa}body.dark .eco-brecha{color:#fbbf24}body.dark .eco-sub{color:#64748b}body.dark .eco-source{color:#4b5563}.proj-subtitle{color:#9ca3af;font-size:13px;margin:0 0 12px}.proj-controls{align-items:center;display:flex;gap:8px;margin-bottom:16px}.proj-select{background:#fff;border:1px solid #d1d5db;border-radius:10px;color:#111827;flex:1 1;font-size:14px;font-weight:600;min-width:0;outline:none;padding:10px 12px}.proj-months{display:flex;flex-shrink:0;gap:4px}.proj-month-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#111;cursor:pointer;font-size:13px;font-weight:600;padding:7px 10px}.proj-month-active{background:#6366f1;border-color:#6366f1;color:#fff}.proj-hero{align-items:center;display:flex;flex-direction:column;margin-bottom:12px;text-align:center}.proj-hero-amount{color:#111827;font-size:32px;font-weight:800}.proj-hero-label{color:#6b7280;font-size:14px;margin-top:2px}.proj-hero-sub{color:#9ca3af;font-size:12px;margin-top:6px}.proj-section-title{color:#111827;font-size:15px;font-weight:700;margin:0 0 12px}.proj-chart{height:auto;width:100%}.proj-dot{fill:#6366f1;stroke:#fff;stroke-width:2}.proj-val-label{fill:#111827;font-size:11px;font-weight:600}.proj-x-label{fill:#6b7280;font-size:10px}.proj-caja-row{border-bottom:1px solid #f1f5f9;padding:10px 0}.proj-caja-row:last-child{border-bottom:none}.proj-caja-top{align-items:center;display:flex;justify-content:space-between}.proj-caja-name{color:#111827;font-size:14px;font-weight:600}.proj-caja-amount{color:#6366f1;font-size:14px;font-weight:700}.proj-caja-aporte{color:#16a34a;font-size:11px}.proj-caja-sub{color:#9ca3af;display:flex;font-size:11px;justify-content:space-between;margin-top:4px}body.dark .proj-subtitle{color:#64748b}body.dark .proj-month-btn,body.dark .proj-select{background:#1e293b;border-color:#334155;color:#e2e8f0}body.dark .proj-month-active{background:#6366f1;border-color:#6366f1;color:#fff}body.dark .proj-hero-amount{color:#f1f5f9}body.dark .proj-hero-label{color:#94a3b8}body.dark .proj-section-title{color:#e2e8f0}body.dark .proj-dot{fill:#818cf8;stroke:#1e293b}body.dark .proj-val-label{fill:#e2e8f0}body.dark .proj-x-label{fill:#94a3b8}body.dark .proj-caja-row{border-color:#334155}body.dark .proj-caja-name{color:#e2e8f0}body.dark .proj-caja-amount{color:#818cf8}body.dark .proj-caja-aporte{color:#34d399}.mov-summary{display:flex;gap:10px;margin-bottom:14px}.mov-summary-item{background:#fff;border:1px solid #e5e7eb;border-radius:14px;display:flex;flex:1 1;flex-direction:column;gap:4px;padding:12px}.mov-summary-label{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.mov-summary-value{font-feature-settings:"tnum";font-size:20px;font-variant-numeric:tabular-nums;font-weight:800}.mov-green{color:#16a34a}.mov-red{color:#ef4444}.mov-group{margin-bottom:16px}.mov-date-header{color:#6b7280;font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.mov-row{background:#fff;border:1px solid #e5e7eb;border-radius:12px;justify-content:space-between;margin-bottom:6px;padding:10px 12px}.mov-row,.mov-row-left{align-items:center;display:flex}.mov-row-left{gap:10px}.mov-icon{align-items:center;border-radius:8px;display:flex;flex-shrink:0;font-size:14px;height:32px;justify-content:center;width:32px}.mov-type{display:block;font-size:14px;font-weight:600}.mov-cat{color:#9ca3af;display:block;font-size:11px;margin-top:1px}.mov-row-right{text-align:right}.mov-amount{font-feature-settings:"tnum";display:block;font-size:15px;font-variant-numeric:tabular-nums;font-weight:700}.mov-time{color:#9ca3af;display:block;font-size:11px;margin-top:2px}body.dark .mov-summary-item{background:#1e293b;border-color:#334155}body.dark .mov-date-header,body.dark .mov-summary-label{color:#94a3b8}body.dark .mov-row{background:#1e293b;border-color:#334155}body.dark .mov-type{color:#e2e8f0}body.dark .mov-cat,body.dark .mov-time{color:#64748b}.mobile-nav{background:linear-gradient(0deg,#f0eef6,#f8f7fc);border-top:1px solid #ddd8ee;bottom:0;box-shadow:0 -4px 16px #4338ca14;justify-content:space-around;left:0;padding:10px 0 calc(8px + env(safe-area-inset-bottom, 0px));position:fixed;width:100%;z-index:1000}.mobile-nav,.mobile-nav a{align-items:center;display:flex}.mobile-nav a{-webkit-tap-highlight-color:transparent;border-radius:12px;color:#6b7280;flex-direction:column;font-size:12px;font-weight:500;padding:4px 12px 2px;position:relative;text-decoration:none;transition:color .2s ease,background .2s ease,transform .15s ease}.mobile-nav a:active{transform:scale(.9)}.mobile-nav a.active{background:#4338ca14;color:#4338ca}.mobile-nav a:after{background:#4338ca;border-radius:50%;content:"";display:block;height:4px;margin-top:3px;opacity:0;transform:scale(0);transition:opacity .25s ease,transform .25s ease;width:4px}.mobile-nav a.active:after{opacity:1;transform:scale(1)}.mobile-nav svg{margin-bottom:2px;transition:transform .2s ease}.mobile-nav a.active svg{transform:scale(1.15)}.mobile-nav p{font-size:11px;margin:0;transition:font-weight .2s ease}.mobile-nav a.active p{font-weight:700}body{padding-bottom:calc(80px + env(safe-area-inset-bottom, 0px))}@media(min-width:768px){.mobile-nav{display:none}}body.dark .mobile-nav{background:linear-gradient(0deg,#0d1021,#151929);border-top:1px solid #252a40;box-shadow:0 -4px 16px #0000004d}body.dark .mobile-nav a{color:#64748b}body.dark .mobile-nav a.active{background:#a5b4fc1a;color:#a5b4fc}body.dark .mobile-nav a:after{background:#a5b4fc}.card-white{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;margin-bottom:20px;padding:16px}body.dark .card-white{background:#1e293b;box-shadow:none;color:#e2e8f0}.section-title{font-size:16px;font-weight:600;margin-bottom:10px}.button-primary{background:linear-gradient(135deg,#5b4dff,#7b6cff);color:#fff;display:block;font-weight:600;margin:0 auto}.button-primary,.button-secondary{border:none;border-radius:10px;cursor:pointer;padding:10px 16px}.button-secondary{background:#f1f1f1;color:#333}.home-nav{box-shadow:0 8px 20px #0000000d;justify-content:space-between;padding:15px}.home-nav-item{align-items:center;cursor:pointer;display:flex;flex:1 1;flex-direction:column;transition:.2s}.home-nav-item:hover{transform:scale(1.05)}.home-nav-item .icon{font-size:22px}.home-nav-item .label{color:#444;font-size:12px;margin-top:5px}.home-nav{background:#fff;border-radius:20px;box-shadow:0 8px 20px #0000000f;justify-content:space-around;margin-top:20px;padding:16px 10px}.home-item,.home-nav{align-items:center;display:flex}.home-item{color:#374151;flex:1 1;flex-direction:column;font-size:12px;gap:4px;justify-content:center;text-decoration:none}.home-item span{font-size:22px}.home-item p{font-size:11px;margin:0}.category-chip{-webkit-tap-highlight-color:transparent;align-items:center;background:#fff;border:1.5px solid #e5e7eb;border-radius:20px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:5px;padding:7px 14px;transition:all .15s ease}.category-chip:active{transform:scale(.93)}.category-chip:hover{background:#f1f5f9}.category-chip-active{background:#4338ca;border-color:#4338ca;box-shadow:0 2px 8px #00000026;color:#fff}.category-chip-active:hover{opacity:.9}.button-outline{background:#0000;border:1.5px solid #6366f1;color:#6366f1}.button-outline:hover{background:#6366f114}body.dark .button-outline{border-color:#818cf8;color:#a5b4fc}body.dark .button-outline:hover{background:#818cf81a}.link-btn{background:none;border:none;color:#6366f1;cursor:pointer;font-size:13px;font-weight:600;margin-top:4px;padding:8px 0}.link-btn:hover{text-decoration:underline}body.dark .link-btn{color:#a5b4fc}.category-chip-add{border-style:dashed;color:#6b7280;font-size:16px;font-weight:700;padding:6px 12px}.new-cat-form{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:12px;padding:12px}body.dark .new-cat-form{background:#1e293b;border-color:#334155}.date-chip{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:20px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:4px;padding:8px 12px;position:relative;white-space:nowrap}.date-chip-icon{font-size:14px}.date-chip-label{color:#374151}.date-chip-input{cursor:pointer;height:100%;inset:0;opacity:0;position:absolute;width:100%}body.dark .date-chip{background:#111827;border-color:#1e293b}body.dark .date-chip-label{color:#e2e8f0}.date-pills{display:flex;flex-wrap:nowrap;gap:6px}.date-pill{background:#fff;border:1px solid #e5e7eb;border-radius:20px;color:#374151;cursor:pointer;font-size:13px;font-weight:500;padding:7px 14px;transition:.15s;white-space:nowrap}.date-pill-active{background:#4338ca;border-color:#4338ca;color:#fff}.date-pill-cal{align-items:center;display:inline-flex;position:relative}body.dark .date-pill{background:#1e293b;border-color:#334155;color:#e2e8f0}body.dark .date-pill-active{background:#4338ca;border-color:#4338ca;color:#fff}.mobile-nav p{font-size:10px}body.dark .category-chip{background:#111827;border-color:#1e293b;color:#e2e8f0}body.dark .category-chip:hover{background:#1e293b}body.dark .category-chip-active{box-shadow:0 2px 8px #0000004d;color:#fff}body.dark .category-chip-active:hover{opacity:.9}.switch-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:12px 0}.switch-row:last-child{border-bottom:none}.switch-desc{color:#9ca3af;font-size:12px;margin:2px 0 0}.switch{display:inline-block;flex-shrink:0;height:24px;position:relative;width:44px}.switch input{height:0;opacity:0;width:0}.slider{background:#cbd5e1;border-radius:24px;cursor:pointer;inset:0}.slider,.slider:before{position:absolute;transition:.3s}.slider:before{background:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;width:18px}.switch input:checked+.slider{background:#4338ca}.switch input:checked+.slider:before{transform:translateX(20px)}body.dark .switch-row{border-color:#334155}body.dark .switch-desc{color:#64748b}body.dark .slider{background:#475569}.income-prompt{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#0006;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2000}.income-prompt-card{background:#fff;border-radius:24px;max-width:380px;padding:32px 24px;text-align:center;width:100%}.income-prompt-card h2{font-size:22px;font-weight:800;margin-bottom:20px}.income-prompt-input{font-size:28px!important;font-weight:700!important;margin-bottom:16px;text-align:center}.income-prompt-card .button{margin-top:10px;width:100%}.dist-result-total{color:#16a34a;font-size:28px;font-weight:800;margin:4px 0 16px}.dist-result-list{margin-bottom:8px;width:100%}.dist-result-row{border-bottom:1px solid #f1f5f9;display:flex;font-size:14px;justify-content:space-between;padding:10px 0}.dist-result-row:last-child{border-bottom:none}.dist-result-name{font-weight:600}.dist-result-amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700}body.dark .dist-result-row{border-color:#334155}body.dark .dist-result-total{color:#4ade80}.button-secondary{background:#0000;border:1px solid #e5e7eb;color:#6b7280}.button-secondary:hover{background:#f9fafb}body.dark .income-prompt-card{background:#1e293b}body.dark .button-secondary{border-color:#334155;color:#94a3b8}body.dark .button-secondary:hover{background:#334155}.toast{align-items:center;animation:toastIn .4s ease forwards;background:#10b981;border-radius:14px;box-shadow:0 8px 24px #10b9814d;color:#fff;display:flex;font-size:14px;font-weight:700;gap:8px;left:50%;opacity:0;padding:12px 24px;position:fixed;top:24px;transform:translateX(-50%) translateY(-20px);z-index:3000}@keyframes toastIn{0%{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.toast-exit{animation:toastOut .3s ease forwards}@keyframes toastOut{0%{opacity:1;transform:translateX(-50%) translateY(0)}to{opacity:0;transform:translateX(-50%) translateY(-20px)}}.switch-row-compact{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:8px 0}.switch-row-compact:last-child{border-bottom:none}.switch-desc-inline{color:#9ca3af;font-size:12px}body.dark .switch-row-compact{border-color:#334155}body.dark .switch-desc-inline{color:#64748b}.bucket-card-header{align-items:center;display:flex;gap:8px;justify-content:space-between}.bucket-card-left{flex:1 1;min-width:0}.bucket-card-right{align-items:center;display:flex;flex-shrink:0;gap:6px}.bucket-location{color:#6b7280;display:block;font-size:11px;font-weight:500;margin-top:2px}body.dark .bucket-location{color:#64748b}.bucket-pct-badge{background:#eef2ff;border-radius:6px;color:#4338ca;font-size:12px;font-weight:700;padding:2px 8px}body.dark .bucket-pct-badge{background:#1e1b4b;color:#a5b4fc}.bucket-gear-btn{background:#f1f5f9;border:none;border-radius:8px;cursor:pointer;font-size:15px;opacity:.7;padding:5px 8px;transition:all .15s}.bucket-gear-btn:active,.bucket-gear-btn:hover{background:#e2e8f0;opacity:1}body.dark .bucket-gear-btn{background:#334155;filter:grayscale(1) brightness(2)}body.dark .bucket-gear-btn:active,body.dark .bucket-gear-btn:hover{background:#475569}.bucket-delete-btn{background:none;border:none;color:#ef4444;cursor:pointer;font-size:13px;margin-top:12px;opacity:.7;padding:6px 0;transition:opacity .15s}.bucket-delete-btn:hover{opacity:1}.bucket-card-balance{font-size:18px;font-weight:700;margin:6px 0 2px}.bucket-balance-of{font-size:13px;font-weight:400;opacity:.5}.bucket-settings{border-top:1px solid #e5e7eb;margin-top:12px;padding-top:12px}body.dark .bucket-settings{border-color:#334155}.bucket-toggle{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:700;justify-content:space-between;padding:10px 14px;transition:opacity .15s;width:100%}.bucket-toggle:active{opacity:.7}.bucket-toggle-chevron{font-size:11px;opacity:.5}body.dark .bucket-toggle{border:1px solid #ffffff14}.analyzer-results{margin-top:16px}.analyzer-summary{display:flex;gap:8px;margin-bottom:16px}.analyzer-stat{background:#f1f5f9;border-radius:12px;flex:1 1;padding:10px 6px;text-align:center}.analyzer-stat-value{color:#4338ca;display:block;font-size:16px;font-weight:800}.analyzer-stat-label{color:#6b7280;display:block;font-size:10px;margin-top:2px}.analyzer-risk-bar{background:#e5e7eb;border-radius:4px;height:8px;margin-bottom:16px;position:relative}.analyzer-risk-fill{border-radius:4px;height:100%;transition:width .5s ease}.risk-ok{background:#10b981}.risk-high{background:#ef4444}.text-red{color:#ef4444!important}.analyzer-risk-limit{color:#9ca3af;font-size:10px;position:absolute;right:0;top:12px}.analyzer-cuota-list{border-top:1px solid #f1f5f9}.analyzer-cuota-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:10px 0}.analyzer-cuota-item:last-child{border-bottom:none}.analyzer-cuota-info{display:flex;flex-direction:column;min-width:0}.analyzer-cuota-name{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analyzer-cuota-num{color:#9ca3af;font-size:11px;margin-top:1px}.analyzer-cuota-amount{font-size:14px;font-weight:700;margin-left:12px;white-space:nowrap}.analyzer-schedule{border-top:1px solid #f1f5f9;margin-top:14px;padding-top:12px}.analyzer-schedule h4{font-size:13px;font-weight:700;margin:0 0 8px}.analyzer-schedule-grid{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.analyzer-schedule-item{align-items:center;background:#f1f5f9;border-radius:10px;display:flex;flex-direction:column;flex-shrink:0;min-width:68px;padding:8px 10px}.analyzer-schedule-month{color:#6b7280;font-size:10px;font-weight:600}.analyzer-schedule-amount{font-size:12px;font-weight:700;margin-top:2px}.analyzer-section{display:flex;flex-direction:column;gap:14px}.analyzer-header{align-items:center;display:flex;gap:12px}.analyzer-icon{align-items:center;background:#f1f5f9;border-radius:14px;display:flex;flex-shrink:0;font-size:28px;height:48px;justify-content:center;width:48px}.analyzer-title{font-size:16px;font-weight:700;margin:0}.analyzer-desc{color:#6b7280;font-size:12px;margin:2px 0 0}.file-upload-btn{align-items:center;background:#fafafa;border:1.5px dashed #d1d5db;border-radius:12px;color:#6b7280;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:10px;min-width:0;overflow:hidden;padding:14px 16px;text-overflow:ellipsis;transition:border-color .2s,background .2s;white-space:nowrap}.file-upload-btn:active{background:#f1f5f9;border-color:#4338ca}.file-upload-icon{align-items:center;background:#eef2ff;border-radius:10px;color:#4338ca;display:flex;flex-shrink:0;height:34px;justify-content:center;width:34px}.analyzer-btn{background:linear-gradient(135deg,#4338ca,#6366f1);box-shadow:0 4px 14px #4338ca33;color:#fff;font-size:15px;padding:14px}.analyzer-btn:disabled{cursor:not-allowed;opacity:.4}body.dark .analyzer-icon{background:#1e293b}body.dark .analyzer-desc{color:#64748b}body.dark .file-upload-btn{background:#0f172a;border-color:#334155;color:#94a3b8}body.dark .file-upload-btn:active{background:#1e293b;border-color:#818cf8}body.dark .file-upload-icon{background:#1e1b4b;color:#818cf8}body.dark .analyzer-stat{background:#0f172a}body.dark .analyzer-stat-value{color:#818cf8}body.dark .analyzer-stat-label{color:#64748b}body.dark .analyzer-risk-bar{background:#1e293b}body.dark .analyzer-cuota-item,body.dark .analyzer-cuota-list,body.dark .analyzer-schedule{border-color:#334155}body.dark .analyzer-cuota-num{color:#64748b}.bank-fees-card{background:#fef3c7;border:1px solid #fde68a;border-radius:12px;margin-top:16px;padding:14px}.bank-fees-title{color:#92400e;font-size:14px;font-weight:700;margin:0 0 10px}.bank-fees-list{display:flex;flex-direction:column;gap:6px}.bank-fee-row{align-items:center;display:flex;font-size:13px;justify-content:space-between}.bank-fee-label{color:#78350f}.bank-fee-amount{color:#b45309;font-weight:600}.bank-fees-total{align-items:center;border-top:1px solid #fde68a;color:#92400e;display:flex;font-size:14px;font-weight:700;justify-content:space-between;margin-top:10px;padding-top:10px}.bank-fees-total-amount{color:#dc2626;font-size:18px}.bank-fees-hint{color:#78350f;font-size:12px;margin:10px 0 0}.bank-fees-disclosure{color:#a16207;font-size:10px;margin:6px 0 0;text-align:center}body.dark .bank-fees-card{background:#422006;border-color:#92400e}body.dark .bank-fees-title{color:#fbbf24}body.dark .bank-fee-label{color:#fcd34d}body.dark .bank-fee-amount{color:#f59e0b}body.dark .bank-fees-total{border-color:#92400e;color:#fbbf24}body.dark .bank-fees-total-amount{color:#ef4444}body.dark .bank-fees-hint{color:#fcd34d}body.dark .bank-fees-disclosure{color:#d97706}body.dark .analyzer-schedule-item{background:#0f172a}body.dark .analyzer-schedule-month{color:#64748b}.ob-wrap{position:relative}.ob-bubble{animation:ob-pop .3s ease;background:#4f46e5;border-radius:14px;box-shadow:0 8px 24px #4f46e559;color:#fff;left:50%;padding:14px 16px 10px;position:absolute;transform:translateX(-50%);width:260px;z-index:1500}@keyframes ob-pop{0%{opacity:0;transform:translateX(-50%) scale(.9)}to{opacity:1;transform:translateX(-50%) scale(1)}}.ob-bottom{top:calc(100% + 10px)}.ob-top{bottom:calc(100% + 10px)}.ob-arrow{border-left:8px solid #0000;border-right:8px solid #0000;height:0;left:50%;position:absolute;transform:translateX(-50%);width:0}.ob-bottom .ob-arrow{border-bottom:8px solid #4f46e5;top:-7px}.ob-top .ob-arrow{border-top:8px solid #4f46e5;bottom:-7px}.ob-text{font-size:13px;font-weight:500;line-height:1.4;margin:0 0 10px}.ob-footer{align-items:center;display:flex;justify-content:space-between}.ob-counter{font-size:11px;opacity:.6}.ob-actions{display:flex;gap:8px}.ob-skip{background:#0000;border:none;color:#fff9;cursor:pointer;font-size:12px;padding:4px 8px}.ob-next,.ob-skip:hover{color:#fff}.ob-next{background:#fff3;border:none;border-radius:8px;cursor:pointer;font-size:12px;font-weight:700;padding:6px 14px}.ob-next:hover{background:#ffffff59}.ob-overlay{background:#00000026;inset:0;pointer-events:none;position:fixed;z-index:1400}.house-suggest-banner{animation:ob-pop .3s ease;background:#eef2ff;border:1px solid #c7d2fe;border-radius:14px;bottom:80px;box-shadow:0 8px 24px #6366f12e;left:50%;max-width:360px;padding:12px 16px;position:fixed;transform:translateX(-50%);width:calc(100% - 32px);z-index:2000}body.dark .house-suggest-banner{background:#1e1b4b;border-color:#4338ca}.ref-card{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;cursor:pointer;margin-top:12px;padding:14px 32px 14px 14px;position:relative;transition:opacity .15s}.ref-card:active{opacity:.7}.ref-card-dismiss{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:14px;line-height:1;padding:4px 6px;position:absolute;right:8px;top:8px}.ref-card-headline{color:#15803d;font-size:13px;font-weight:700;line-height:1.4;margin:0}.ref-card-sub{color:#6b7280;font-size:11px;line-height:1.4;margin:6px 0 0}body.dark .ref-card{background:#052e16;border-color:#166534}body.dark .ref-card-headline{color:#4ade80}body.dark .ref-card-sub{color:#94a3b8}.ref-detail-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2500}.ref-detail-card{background:#fff;border-radius:20px;max-height:85vh;max-width:400px;overflow-y:auto;padding:24px 20px;position:relative;width:100%}.ref-detail-close{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:18px;padding:4px 8px;position:absolute;right:12px;top:12px}.ref-detail-title{font-size:18px;font-weight:800;margin:0 0 12px}.ref-detail-headline{color:#15803d;font-size:15px;font-weight:700;line-height:1.4;margin:0 0 16px}.ref-detail-breakdown{margin-bottom:16px}.ref-detail-breakdown-title{color:#6b7280;font-size:12px;font-weight:700;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.ref-detail-fee-row{border-bottom:1px solid #f1f5f9;display:flex;font-size:13px;justify-content:space-between;padding:8px 0}.ref-detail-fee-row:last-child{border-bottom:none}.ref-detail-fee-total{border-bottom:none;border-top:2px solid #e2e8f0;font-weight:700;margin-top:4px;padding-top:10px}.ref-detail-fee-amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ref-detail-text{color:#6b7280;font-size:13px;line-height:1.5;margin:0 0 16px}.ref-detail-partner{margin-bottom:12px;text-align:center}.ref-detail-partner-name{font-size:16px;font-weight:800;margin:0}.ref-detail-cta{box-sizing:border-box;display:block;text-align:center;text-decoration:none;width:100%}.ref-detail-disclosure{color:#9ca3af;font-size:11px;line-height:1.4;margin:12px 0 0;text-align:center}body.dark .ref-detail-card{background:#1e293b}body.dark .ref-detail-headline{color:#4ade80}body.dark .ref-detail-breakdown-title{color:#94a3b8}body.dark .ref-detail-fee-row{border-color:#334155}body.dark .ref-detail-fee-total{border-color:#475569}body.dark .ref-detail-text{color:#94a3b8}body.dark .ref-detail-disclosure{color:#64748b}.consent-banner{align-items:stretch;background:#fff;border-radius:16px;bottom:12px;box-shadow:0 8px 30px #00000026;box-sizing:border-box;display:flex;flex-direction:column;gap:12px;left:12px;margin:0 auto;max-width:420px;padding:16px;position:fixed;right:12px;z-index:3000}.consent-banner p{color:#4b5563;font-size:12px;line-height:1.5;margin:0;word-break:break-word}.consent-banner a{color:#4338ca;font-weight:600;text-decoration:none}.consent-banner .button{border-radius:12px;flex-shrink:0;font-size:14px;padding:12px;white-space:nowrap}body.dark .consent-banner{background:#1e293b;border:1px solid #334155;box-shadow:0 8px 30px #0006}body.dark .consent-banner p{color:#cbd5e1}body.dark .consent-banner a{color:#a5b4fc}.login-screen{align-items:center;background:#eef2f7;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:9999}.login-card{background:#fff;border-radius:24px;box-shadow:0 10px 40px #00000014;max-width:360px;padding:40px 28px;text-align:center;width:100%}.login-logo{height:72px;margin-bottom:16px;width:72px}.login-title{color:#1e293b;font-size:28px;font-weight:800;margin:0 0 4px}.login-subtitle{color:#64748b;font-size:15px;margin:0 0 32px}.login-google-btn{align-items:center;background:#fff;border:1px solid #dadce0;border-radius:12px;color:#1f2937;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;justify-content:center;padding:14px;transition:background .2s;width:100%}.login-google-btn:active{background:#f1f5f9}.login-disclaimer{color:#9ca3af;font-size:11px;line-height:1.5;margin-top:24px}body.dark .login-screen{background:#0f172a}body.dark .login-card{background:#1e293b;box-shadow:0 10px 40px #0000004d}body.dark .login-title{color:#f1f5f9}body.dark .login-subtitle{color:#94a3b8}body.dark .login-google-btn{background:#334155;border-color:#475569;color:#f1f5f9}body.dark .login-google-btn:active{background:#475569}body.dark .login-disclaimer{color:#64748b}.nav-avatar{border-radius:50%;cursor:pointer;height:34px;object-fit:cover;width:34px}.nav-avatar-fallback{align-items:center;background:#7c5cfc;color:#fff;display:flex;font-size:15px;font-weight:700;justify-content:center}.sync-indicator{animation:spin 1s linear infinite;font-size:14px;opacity:.5}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.landing-page{--lp-bg:#f3f4f9;--lp-bg-alt:#e9ebf2;--lp-surface:#fff;--lp-text:#161928;--lp-text-2:#5e6279;--lp-text-3:#9498b0;--lp-indigo:#4338ca;--lp-indigo-mid:#6366f1;--lp-indigo-pale:#4338ca12;--lp-amber:#c98a04;--lp-emerald:#16a34a;--lp-red:#dc2626;--lp-border:#dddfe8;--lp-sh-card:0 2px 12px #1619280f;--lp-sh-lift:0 12px 40px #1619281a;--lp-sh-phone:0 32px 80px #4338ca2e;--lp-phone-bg:#ecedf4;--lp-phone-sf:#fff;--lp-phone-tx:#1a1e30;--lp-phone-tx2:#8b8fa6;--lp-phone-bd:#e2e5ef;--lp-phone-input:#f5f6fa;-webkit-font-smoothing:antialiased;background:var(--lp-bg);color:var(--lp-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.6;min-height:100vh;overflow-x:hidden}body.dark .landing-page{--lp-bg:#0b0e19;--lp-bg-alt:#10142a;--lp-surface:#161b2e;--lp-text:#e2e5f0;--lp-text-2:#8a8fa8;--lp-text-3:#525770;--lp-indigo:#6366f1;--lp-indigo-mid:#818cf8;--lp-indigo-pale:#6366f11a;--lp-amber:#fbbf24;--lp-emerald:#22c55e;--lp-border:#232840;--lp-sh-card:0 2px 12px #0003;--lp-sh-lift:0 12px 40px #0000004d;--lp-sh-phone:0 32px 80px #6366f11f;--lp-phone-bg:#0f172a;--lp-phone-sf:#1e293b;--lp-phone-tx:#e5e7eb;--lp-phone-tx2:#64748b;--lp-phone-bd:#334155;--lp-phone-input:#0f172a}.landing-page .site-nav{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:color-mix(in srgb,var(--lp-surface) 85%,#0000);box-shadow:0 1px 0 var(--lp-border);padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.landing-page .nav-inner{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1080px}.landing-page .logo{align-items:center;color:var(--lp-indigo);display:flex;font-size:22px;font-weight:800;gap:10px;letter-spacing:-.03em}.landing-page .logo img{border-radius:10px;display:block;height:36px;width:36px}.landing-page .nav-cta{background:var(--lp-indigo);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 22px;transition:transform .15s,box-shadow .15s}.landing-page .nav-cta:hover{box-shadow:0 6px 20px #4338ca4d;transform:translateY(-1px)}.landing-page .nav-cta:active{transform:scale(.97)}.landing-page .hero{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1080px;padding:60px 24px 80px}.landing-page .hero-content{max-width:480px}.landing-page .hero-eyebrow{background:var(--lp-indigo-pale);border-radius:20px;color:var(--lp-indigo);display:inline-block;font-size:13px;font-weight:600;letter-spacing:.02em;margin-bottom:24px;padding:6px 14px}.landing-page .hero-title{color:var(--lp-text);font-size:clamp(36px,5vw,56px);font-weight:900;letter-spacing:-.035em;line-height:1.08;margin-bottom:20px}.landing-page .hero-title em{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--lp-indigo),var(--lp-indigo-mid));-webkit-background-clip:text;background-clip:text;font-style:normal}.landing-page .hero-sub{color:var(--lp-text-2);font-size:17px;line-height:1.65;margin-bottom:32px;max-width:420px}.landing-page .hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.landing-page .btn-primary{align-items:center;background:linear-gradient(135deg,#4338ca,#6366f1);border:none;border-radius:14px;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:700;padding:14px 28px;transition:transform .15s,box-shadow .15s}.landing-page .btn-primary:hover{box-shadow:0 10px 32px #4338ca59;transform:translateY(-2px)}.landing-page .btn-primary:active{transform:scale(.97)}.landing-page .btn-ghost{color:var(--lp-text-2);font-size:15px;font-weight:500;padding:14px 8px;text-decoration:none;transition:color .15s}.landing-page .btn-ghost:hover{color:var(--lp-indigo)}.landing-page .hero-phone-wrap{align-items:center;display:flex;justify-content:center;position:relative}.landing-page .hero-glow{background:radial-gradient(circle,#6366f11f 0,#0000 70%);filter:blur(50px);height:340px;pointer-events:none;position:absolute;width:340px}.landing-page .phone{animation:phoneFloat 6s ease-in-out infinite;background:#1c1c1e;border-radius:40px;box-shadow:var(--lp-sh-phone);height:556px;padding:4px;position:relative;width:272px;z-index:1}@keyframes phoneFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.landing-page .phone:after{background:linear-gradient(165deg,#ffffff14,#0000 40%);border-radius:36px;content:"";inset:4px;pointer-events:none;position:absolute;z-index:10}.landing-page .phone-screen{background:var(--lp-phone-bg);border-radius:36px;display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.landing-page .phone-notch{background:#1c1c1e;border-radius:0 0 18px 18px;flex-shrink:0;height:26px;margin:0 auto;width:100px}.landing-page .phone-body{display:flex;flex:1 1;flex-direction:column;gap:10px;overflow:hidden;padding:10px 14px 0}.landing-page .pm-nav{align-items:center;display:flex;justify-content:space-between}.landing-page .pm-logo{align-items:center;color:var(--lp-indigo);display:flex;font-size:14px;font-weight:800;gap:6px;letter-spacing:-.02em}.landing-page .pm-logo img{border-radius:5px;display:block;height:20px;width:20px}.landing-page .pm-dark{align-items:center;background:var(--lp-indigo);border-radius:8px;color:#fff;display:flex;font-size:12px;height:28px;justify-content:center;width:28px}.landing-page .pm-money{background:linear-gradient(135deg,var(--lp-indigo),var(--lp-indigo-mid));border-radius:16px;box-shadow:0 8px 24px #4338ca33;padding:22px 16px;text-align:center}.landing-page .pm-money-label{color:#ffffffa6;font-size:9px;font-weight:700;letter-spacing:1.5px;margin-bottom:4px;text-transform:uppercase}.landing-page .pm-money-amount{font-feature-settings:"tnum";color:#fff;font-size:32px;font-variant-numeric:tabular-nums;font-weight:900;letter-spacing:-.02em}.landing-page .pm-tabs{background:var(--lp-phone-input);border-radius:10px;display:flex;gap:3px;padding:3px}.landing-page .pm-tab{border-radius:8px;color:var(--lp-phone-tx2);flex:1 1;font-size:10px;font-weight:600;padding:7px 4px;text-align:center}.landing-page .pm-tab--active{background:var(--lp-phone-sf);box-shadow:0 1px 4px #0000000f;color:var(--lp-phone-tx)}.landing-page .pm-chips{display:flex;flex-wrap:wrap;gap:5px}.landing-page .pm-chip{background:var(--lp-phone-sf);border:1px solid var(--lp-phone-bd);border-radius:14px;color:var(--lp-phone-tx);font-size:10px;font-weight:500;padding:4px 8px;white-space:nowrap}.landing-page .pm-chip--active{background:var(--lp-indigo);border-color:var(--lp-indigo);color:#fff}.landing-page .pm-input{background:var(--lp-phone-input);border:1px solid var(--lp-phone-bd);border-radius:10px;color:var(--lp-phone-tx2);font-size:12px;padding:10px 12px}.landing-page .pm-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:10px;box-shadow:0 4px 12px #ef444440;color:#fff;font-size:13px;font-weight:700;letter-spacing:.02em;padding:11px;text-align:center}.landing-page .pm-bottom{align-items:center;border-top:1px solid var(--lp-phone-bd);display:flex;justify-content:space-around;margin-top:auto;padding:8px 0 6px}.landing-page .pm-bottom-item{align-items:center;color:var(--lp-phone-tx2);display:flex;flex-direction:column;font-size:8px;gap:1px}.landing-page .pm-bottom-item span{font-size:14px}.landing-page .pm-bottom-item.active{color:var(--lp-indigo)}.landing-page .section{margin:0 auto;max-width:1080px;padding:80px 24px}.landing-page .section-label{color:var(--lp-indigo);font-size:13px;font-weight:600;letter-spacing:.08em;margin-bottom:12px;text-transform:uppercase}.landing-page .section-title{font-size:clamp(28px,4vw,40px);font-weight:800;letter-spacing:-.03em;line-height:1.15;margin-bottom:16px}.landing-page .section-sub{color:var(--lp-text-2);font-size:16px;line-height:1.65;margin-bottom:48px;max-width:540px}.landing-page .features-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.landing-page .feat-card{background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:20px;padding:28px 24px;transition:transform .2s,box-shadow .2s}.landing-page .feat-card:hover{box-shadow:var(--lp-sh-lift);transform:translateY(-3px)}.landing-page .feat-icon{align-items:center;border-radius:12px;display:flex;font-size:20px;height:44px;justify-content:center;margin-bottom:16px;width:44px}.landing-page .feat-icon--indigo{background:var(--lp-indigo-pale);color:var(--lp-indigo)}.landing-page .feat-icon--amber{background:#c98a041a;color:var(--lp-amber)}.landing-page .feat-icon--emerald{background:#16a34a1a;color:var(--lp-emerald)}.landing-page .feat-icon--red{background:#dc262614;color:var(--lp-red)}.landing-page .feat-card h3{font-size:17px;font-weight:700;letter-spacing:-.01em;margin-bottom:8px}.landing-page .feat-card p{color:var(--lp-text-2);font-size:14px;line-height:1.55}.landing-page .steps-section{background:linear-gradient(135deg,#1e1b4b,#312e81 50%,#3730a3);overflow:hidden;padding:80px 0;position:relative}.landing-page .steps-section:before{background-image:radial-gradient(circle,#ffffff0a 1.5px,#0000 0);background-size:28px 28px;content:"";inset:0;position:absolute}.landing-page .steps-inner{margin:0 auto;max-width:1080px;padding:0 24px;position:relative;z-index:1}.landing-page .steps-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.landing-page .step-card{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffff12;border:1px solid #ffffff1a;border-radius:20px;overflow:hidden;padding:36px 28px 32px;position:relative;transition:transform .3s ease,box-shadow .3s ease,background .3s ease}.landing-page .step-card:hover{background:#ffffff1f;box-shadow:0 20px 50px #0000004d;transform:translateY(-6px)}.landing-page .step-accent{height:4px;left:0;position:absolute;right:0;top:0}.landing-page .step-accent--1{background:linear-gradient(90deg,#818cf8,#6366f1)}.landing-page .step-accent--2{background:linear-gradient(90deg,#34d399,#10b981)}.landing-page .step-accent--3{background:linear-gradient(90deg,#fbbf24,#f59e0b)}.landing-page .step-num{-webkit-text-fill-color:#0000;font-feature-settings:"tnum";background:linear-gradient(135deg,#ffffff40,#ffffff14);-webkit-background-clip:text;background-clip:text;font-size:56px;font-variant-numeric:tabular-nums;font-weight:900;letter-spacing:-.04em;line-height:1;margin-bottom:16px}.landing-page .step-card h3{color:#fff;font-size:19px;font-weight:700;letter-spacing:-.01em;margin-bottom:10px}.landing-page .step-card p{color:#ffffff8c;font-size:14px;line-height:1.65}.landing-page .step-anim{animation:stepReveal .6s ease forwards;opacity:0;transform:translateY(30px)}.landing-page .step-anim-1{animation-delay:.1s}.landing-page .step-anim-2{animation-delay:.3s}.landing-page .step-anim-3{animation-delay:.5s}@keyframes stepReveal{to{opacity:1;transform:translateY(0)}}.landing-page .locale-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr)}.landing-page .locale-card{background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:16px;padding:24px 20px;text-align:center;transition:transform .2s}.landing-page .locale-card:hover{transform:translateY(-2px)}.landing-page .locale-card .lc-emoji{display:block;font-size:28px;margin-bottom:12px}.landing-page .locale-card h4{font-size:15px;font-weight:700;margin-bottom:6px}.landing-page .locale-card p{color:var(--lp-text-2);font-size:13px;line-height:1.5}.landing-page .final-cta{margin:0 auto;max-width:600px;padding:80px 24px 60px;text-align:center}.landing-page .final-cta .section-title{margin-bottom:12px}.landing-page .final-cta p{color:var(--lp-text-2);font-size:16px;line-height:1.6;margin-bottom:32px}.landing-page .site-footer{align-items:center;border-top:1px solid var(--lp-border);display:flex;justify-content:space-between;margin:0 auto;max-width:1080px;padding:24px}.landing-page .footer-left{color:var(--lp-text-3);font-size:13px}.landing-page .footer-left strong{color:var(--lp-indigo);font-weight:600}.landing-page .footer-right a{color:var(--lp-text-3);font-size:13px;text-decoration:none}.landing-page .footer-right a:hover{color:var(--lp-text-2)}@media(max-width:820px){.landing-page .hero{gap:40px;grid-template-columns:1fr;padding:40px 24px 60px;text-align:center}.landing-page .hero-content{max-width:100%}.landing-page .hero-sub{margin-left:auto;margin-right:auto}.landing-page .hero-actions{justify-content:center}.landing-page .features-grid{grid-template-columns:1fr}.landing-page .steps-grid{gap:12px;grid-template-columns:1fr}.landing-page .step-connector{display:none}.landing-page .step-card{padding:24px}.landing-page .locale-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.landing-page .hero-title{font-size:32px}.landing-page .locale-grid{grid-template-columns:1fr}.landing-page .site-footer{flex-direction:column;gap:12px;text-align:center}.landing-page .phone{height:492px;width:240px}.landing-page .pm-money-amount{font-size:28px}}.donate-footer{padding:0 20px 32px;text-align:center}.donate-text{font-size:13px;margin-bottom:10px;opacity:.5}.donate-btn{align-items:center;background:#f3f0ff;border-radius:12px;color:#6d28d9;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:10px 20px;text-decoration:none;transition:background .2s}.donate-btn:hover{background:#ede9fe}body.dark .donate-text{opacity:.4}body.dark .donate-btn{background:#1e1b4b;color:#a78bfa}body.dark .donate-btn:hover{background:#2e1065}.potrer-inapp-card{background:linear-gradient(135deg,#eff6ff,#f8fafc);border:1px solid #dbeafe;position:relative}body.dark .potrer-inapp-card{background:linear-gradient(135deg,#0f172a,#1e293b);border-color:#1e3a5f}.potrer-inapp-dismiss{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:14px;line-height:1;padding:4px;position:absolute;right:10px;top:10px}.potrer-inapp-dismiss:hover{color:#6b7280}body.dark .potrer-inapp-dismiss{color:#475569}body.dark .potrer-inapp-dismiss:hover{color:#94a3b8}.potrer-inapp-badge{background:#dbeafe;border-radius:12px;color:#1d4ed8;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.06em;padding:3px 10px;text-transform:uppercase}body.dark .potrer-inapp-badge{background:#1e3a5f;color:#60a5fa}.potrer-inapp-btn{background:none;border:1px solid #3b82f6;border-radius:10px;color:#2563eb;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:background .15s}.potrer-inapp-btn:hover{background:#eff6ff}body.dark .potrer-inapp-btn{border-color:#3b82f6;color:#60a5fa}body.dark .potrer-inapp-btn:hover{background:#1e3a5f}.potrer-back{background:none;border:none;color:#6b7280;cursor:pointer;font-size:14px;padding:0}.potrer-back:hover{color:#374151}body.dark .potrer-back{color:#94a3b8}body.dark .potrer-back:hover{color:#e2e8f0}.potrer-label{color:#374151;display:block;font-size:13px;font-weight:600;margin-bottom:6px}body.dark .potrer-label{color:#e2e8f0}.potrer-rubros{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.potrer-rubro-btn{background:#f9fafb;border:1px solid #d1d5db;border-radius:10px;color:#374151;cursor:pointer;font-size:13px;padding:8px 16px;transition:all .15s}.potrer-rubro-btn:hover{background:#f3f4f6;border-color:#9ca3af}.potrer-rubro-active{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8;font-weight:600}body.dark .potrer-rubro-btn{background:#1e293b;border-color:#475569;color:#e2e8f0}body.dark .potrer-rubro-btn:hover{background:#334155;border-color:#64748b}body.dark .potrer-rubro-active{background:#1e3a5f;border-color:#3b82f6;color:#60a5fa}.potrer-done-card{padding:40px 24px;text-align:center}.potrer-done-icon{align-items:center;background:#dcfce7;border-radius:50%;color:#16a34a;display:flex;font-size:24px;font-weight:700;height:48px;justify-content:center;margin:0 auto 16px;width:48px}body.dark .potrer-done-icon{background:#14532d;color:#4ade80}.share-card{align-items:center;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:none;border-radius:16px;cursor:pointer;display:flex;justify-content:space-between;margin-top:16px;padding:16px;text-align:left;text-decoration:none;transition:transform .15s;width:100%}.share-card:active{transform:scale(.98)}.share-card-left{align-items:center;display:flex;gap:12px;min-width:0}.share-card-emoji{flex-shrink:0;font-size:28px}.share-card-title{color:#065f46;font-size:13px;font-weight:700;margin-bottom:2px}.share-card-sub{color:#059669;font-size:12px;opacity:.8}.share-card-arrow{color:#059669;flex-shrink:0;font-size:18px;margin-left:8px}body.dark .share-card{background:linear-gradient(135deg,#022c22,#064e3b)}body.dark .share-card-title{color:#6ee7b7}body.dark .share-card-arrow,body.dark .share-card-sub{color:#34d399}.donate-card{align-items:center;background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-radius:16px;color:inherit;display:flex;justify-content:space-between;margin-top:16px;padding:16px;text-decoration:none;transition:transform .15s,box-shadow .15s}.donate-card:active{transform:scale(.98)}.donate-card-left{align-items:center;display:flex;gap:12px;min-width:0}.donate-card-emoji{flex-shrink:0;font-size:28px}.donate-card-title{color:#4c1d95;font-size:13px;font-weight:700;margin-bottom:2px}.donate-card-sub{color:#7c3aed;font-size:12px;opacity:.8}.donate-card-arrow{color:#7c3aed;flex-shrink:0;font-size:18px;margin-left:8px}body.dark .donate-card{background:linear-gradient(135deg,#1e1b4b,#2e1065)}body.dark .donate-card-title{color:#c4b5fd}body.dark .donate-card-arrow,body.dark .donate-card-sub{color:#a78bfa}.share-section{background:#6366f10f;border-radius:8px;margin-top:10px;padding:10px}.share-chip,body.dark .share-section{background:#6366f11f}.share-chip{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;gap:6px;margin:2px 4px 2px 0;padding:4px 10px}body.dark .share-chip{background:#6366f140}.share-chip-remove{background:none;border:none;color:#6b7280;cursor:pointer;font-size:11px;padding:0 2px}.shared-bucket-card{border-left:3px solid #6366f1}.shared-expense-row{align-items:center;border-bottom:1px solid #0000000f;display:flex;font-size:13px;justify-content:space-between;padding:6px 0}body.dark .shared-expense-row{border-bottom-color:#ffffff0f}.shared-expenses-inline{background:#6366f10f;border-radius:8px;margin-top:10px;padding:8px 10px}body.dark .shared-expenses-inline{background:#6366f11f}.shared-dashboard{margin-bottom:8px;margin-top:16px}.shared-dash-card{background:#fff;border:1px solid #6366f126;border-left:3px solid #6366f1;border-radius:10px;cursor:pointer;margin-bottom:10px;padding:12px 14px;transition:box-shadow .2s}.shared-dash-card:active{box-shadow:0 0 0 2px #6366f140}.shared-dash-expense{border-top:1px solid #0000000a;color:#4b5563;display:flex;font-size:12px;justify-content:space-between;padding:3px 0}.shared-dash-expense:first-child{border-top:none}body.dark .shared-dash-card{background:#1e1e2e;border-color:#6366f140 #6366f140 #6366f140 #6366f1}body.dark .shared-dash-expense{border-top-color:#ffffff0f;color:#9ca3af}.shared-quick-btn{background:#0000;border:2px dashed #6366f166;border-radius:12px;color:#6366f1;cursor:pointer;font-size:13px;font-weight:600;padding:10px;transition:all .2s;width:100%}.shared-quick-btn:active{background:#6366f114}.shared-quick-form{background:#6366f108;border:1px solid #6366f133;border-radius:12px;padding:12px}body.dark .shared-quick-btn{border-color:#818cf84d;color:#818cf8}body.dark .shared-quick-btn:active{background:#818cf81a}body.dark .shared-quick-form{background:#6366f114;border-color:#6366f133}.shared-item-row{align-items:center;border-bottom:1px solid #0000000a;display:flex;font-size:13px;justify-content:space-between;padding:6px 0}.shared-item-row:last-child{border-bottom:none}.shared-item-paid{color:#22c55e;opacity:.5;text-decoration:line-through}body.dark .shared-item-row{border-bottom-color:#ffffff0f}