:root{--kui-brand-50:#eaf5f0;--kui-brand-100:#cfe9dc;--kui-brand-200:#a5d8c0;--kui-brand-300:#83f0c0;--kui-brand-400:#4ccf98;--kui-brand-500:#167653;--kui-brand-600:#126246;--kui-brand-700:#104f3c;--kui-brand-800:#102c27;--kui-brand-900:#0b211d;--kui-neutral-0:#fff;--kui-neutral-50:#f6f7f5;--kui-neutral-100:#eef1ee;--kui-neutral-200:#dde3de;--kui-neutral-300:#c3cec6;--kui-neutral-400:#9baaa0;--kui-neutral-500:#718176;--kui-neutral-600:#53635a;--kui-neutral-700:#39483f;--kui-neutral-800:#252f2a;--kui-neutral-900:#17231e;--kui-neutral-950:#151a18;--kui-font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--kui-font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--kui-font-weight-regular:400;--kui-font-weight-medium:500;--kui-font-weight-semibold:600;--kui-font-weight-bold:700;--kui-font-size-xs:.75rem;--kui-font-size-sm:.875rem;--kui-font-size-md:1rem;--kui-font-size-lg:1.125rem;--kui-font-size-xl:1.25rem;--kui-font-size-2xl:1.5rem;--kui-font-size-3xl:1.875rem;--kui-line-height-tight:1.2;--kui-line-height-heading:1.3;--kui-line-height-normal:1.5;--kui-line-height-relaxed:1.65;--kui-letter-spacing-tight:-.025em;--kui-letter-spacing-normal:0;--kui-letter-spacing-wide:.04em;--kui-space-0:0;--kui-space-1:.25rem;--kui-space-2:.5rem;--kui-space-3:.75rem;--kui-space-4:1rem;--kui-space-5:1.25rem;--kui-space-6:1.5rem;--kui-space-8:2rem;--kui-space-10:2.5rem;--kui-space-12:3rem;--kui-space-16:4rem;--kui-radius-none:0;--kui-radius-sm:.375rem;--kui-radius-md:.5rem;--kui-radius-lg:.625rem;--kui-radius-xl:.75rem;--kui-radius-full:9999px;--kui-border-width-default:1px;--kui-border-width-strong:2px;--kui-shadow-none:none;--kui-shadow-sm:0 1px 2px #102c270f;--kui-shadow-md:0 4px 12px #102c2714;--kui-shadow-lg:0 12px 32px #102c2724;--kui-motion-duration-fast:.1s;--kui-motion-duration-normal:.18s;--kui-motion-duration-slow:.26s;--kui-motion-ease-standard:cubic-bezier(.2, 0, 0, 1)}:root,[data-theme=light]{--kui-color-canvas:#f6f7f5;--kui-color-surface:#fff;--kui-color-surface-subtle:#eef1ee;--kui-color-surface-elevated:#fff;--kui-color-text-primary:#17231e;--kui-color-text-secondary:#53635a;--kui-color-text-muted:#718176;--kui-color-text-muted-accessible:#607065;--kui-color-border:#dde3de;--kui-color-border-strong:#c3cec6;--kui-color-brand:#102c27;--kui-color-brand-primary:#167653;--kui-color-brand-accent:#83f0c0;--kui-color-brand-hover:#104f3c;--kui-color-accent:#83f0c0;--kui-color-focus-ring:#167653;--kui-color-overlay:#0f1a157a;--kui-color-success:#167653;--kui-color-success-surface:#eaf5f0;--kui-color-success-border:#a5d8c0;--kui-color-warning:#8a5a00;--kui-color-warning-surface:#fff4d8;--kui-color-warning-border:#f5d38a;--kui-color-danger:#b42318;--kui-color-danger-surface:#feeceb;--kui-color-danger-border:#fecdca;--kui-color-info:#245fc7;--kui-color-info-surface:#eaf1ff;--kui-color-info-border:#b2ccff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--kui-color-canvas:#151a18;--kui-color-surface:#1d2521;--kui-color-surface-subtle:#252f2a;--kui-color-surface-elevated:#2a3430;--kui-color-text-primary:#f2f6f3;--kui-color-text-secondary:#b8c5bd;--kui-color-text-muted:#91a198;--kui-color-text-muted-accessible:#b8c5bd;--kui-color-border:#35423b;--kui-color-border-strong:#4a5a50;--kui-color-brand:#83f0c0;--kui-color-brand-primary:#83f0c0;--kui-color-brand-accent:#83f0c0;--kui-color-brand-hover:#a5f5d2;--kui-color-accent:#83f0c0;--kui-color-focus-ring:#83f0c0;--kui-color-overlay:#000000a3;--kui-color-success:#83f0c0;--kui-color-success-surface:#19372b;--kui-color-success-border:#167653;--kui-color-warning:#f5c66b;--kui-color-warning-surface:#3b2d16;--kui-color-warning-border:#8a5a00;--kui-color-danger:#ff9b91;--kui-color-danger-surface:#40211f;--kui-color-danger-border:#801c16;--kui-color-info:#8ab4ff;--kui-color-info-surface:#1c2c48;--kui-color-info-border:#245fc7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--kui-color-canvas:#151a18;--kui-color-surface:#1d2521;--kui-color-surface-subtle:#252f2a;--kui-color-surface-elevated:#2a3430;--kui-color-text-primary:#f2f6f3;--kui-color-text-secondary:#b8c5bd;--kui-color-text-muted:#91a198;--kui-color-text-muted-accessible:#b8c5bd;--kui-color-border:#35423b;--kui-color-border-strong:#4a5a50;--kui-color-brand:#83f0c0;--kui-color-brand-primary:#83f0c0;--kui-color-brand-accent:#83f0c0;--kui-color-brand-hover:#a5f5d2;--kui-color-accent:#83f0c0;--kui-color-focus-ring:#83f0c0;--kui-color-overlay:#000000a3;--kui-color-success:#83f0c0;--kui-color-success-surface:#19372b;--kui-color-success-border:#167653;--kui-color-warning:#f5c66b;--kui-color-warning-surface:#3b2d16;--kui-color-warning-border:#8a5a00;--kui-color-danger:#ff9b91;--kui-color-danger-surface:#40211f;--kui-color-danger-border:#801c16;--kui-color-info:#8ab4ff;--kui-color-info-surface:#1c2c48;--kui-color-info-border:#245fc7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:focus-visible{outline:2px solid var(--kui-color-focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes kui-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes kui-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes kui-dropdown-enter{0%{opacity:0;transform:scale(.97)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}:root{--bg-primary:var(--kui-color-canvas);--bg-secondary:var(--kui-color-surface);--bg-tertiary:var(--kui-color-surface-subtle);--bg-card:var(--kui-color-surface);--bg-card-hover:var(--kui-color-surface-subtle);--bg-glass:var(--kui-color-surface);--border-color:var(--kui-color-border);--border-subtle:var(--kui-color-border);--border-focus:var(--kui-color-focus-ring);--text-primary:var(--kui-color-text-primary);--text-secondary:var(--kui-color-text-secondary);--text-muted:var(--kui-color-text-muted);--accent-primary:var(--kui-color-brand);--accent-primary-hover:var(--kui-color-brand-hover);--accent-primary-light:var(--kui-color-surface-subtle);--income-color:var(--kui-color-success);--income-light:var(--kui-color-success-surface);--income-border:var(--kui-color-success-border);--expense-color:var(--kui-color-danger);--expense-light:var(--kui-color-danger-surface);--expense-border:var(--kui-color-danger-border);--loan-color:var(--kui-color-warning);--loan-light:var(--kui-color-warning-surface);--loan-border:var(--kui-color-warning-border);--savings-color:var(--kui-color-info);--savings-light:var(--kui-color-info-surface);--savings-border:var(--kui-color-info-border);--lent-color:var(--kui-brand-500);--lent-light:var(--kui-brand-50);--lent-border:var(--kui-brand-200);--radius-sm:var(--kui-radius-sm);--radius-md:var(--kui-radius-md);--radius-lg:var(--kui-radius-lg);--radius-xl:var(--kui-radius-xl);--shadow-xs:var(--kui-shadow-sm);--shadow-sm:var(--kui-shadow-sm);--shadow-md:var(--kui-shadow-md);--shadow-lg:var(--kui-shadow-lg);--font-display:var(--kui-font-sans);--font-body:var(--kui-font-sans);--sidebar-width:250px;--transition:all var(--kui-motion-duration-normal) var(--kui-motion-ease-standard)}[data-theme=dark]{--bg-primary:var(--kui-color-canvas);--bg-secondary:var(--kui-color-surface);--bg-tertiary:var(--kui-color-surface-subtle);--bg-card:var(--kui-color-surface);--bg-card-hover:var(--kui-color-surface-elevated);--bg-glass:var(--kui-color-surface);--border-color:var(--kui-color-border);--border-subtle:var(--kui-color-border);--border-focus:var(--kui-color-focus-ring);--text-primary:var(--kui-color-text-primary);--text-secondary:var(--kui-color-text-secondary);--text-muted:var(--kui-color-text-muted);--accent-primary:var(--kui-color-accent);--accent-primary-hover:#a5f5d2;--accent-primary-light:var(--kui-color-surface-subtle);--income-color:var(--kui-color-success);--income-light:var(--kui-color-success-surface);--income-border:var(--kui-color-success-border);--expense-color:var(--kui-color-danger);--expense-light:var(--kui-color-danger-surface);--expense-border:var(--kui-color-danger-border);--loan-color:var(--kui-color-warning);--loan-light:var(--kui-color-warning-surface);--loan-border:var(--kui-color-warning-border);--savings-color:var(--kui-color-info);--savings-light:var(--kui-color-info-surface);--savings-border:var(--kui-color-info-border);--lent-color:var(--kui-brand-300);--lent-light:var(--kui-color-success-surface);--lent-border:var(--kui-color-success-border)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;max-width:100%;position:relative;overflow-x:hidden}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;overflow-x:hidden}#root{width:100%;max-width:100%;min-height:100vh;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.015em;font-weight:600}button,input,select,textarea{font-family:inherit;font-size:inherit}button{cursor:pointer;background:0 0;border:none}.app-container{width:100%;max-width:100vw;min-height:100vh;display:flex;position:relative;overflow-x:hidden}.sidebar{width:var(--sidebar-width);background-color:var(--bg-secondary);border-right:1px solid var(--border-color);z-index:100;transition:var(--transition);flex-direction:column;padding:20px 14px;display:flex;position:fixed;top:0;bottom:0;left:0}.brand{border-bottom:1px solid var(--border-color);align-items:center;gap:10px;margin-bottom:16px;padding:4px 8px 18px;display:flex}.brand-logo{border-radius:var(--radius-md);background:var(--text-primary);width:34px;height:34px;color:var(--bg-secondary);justify-content:center;align-items:center;display:flex}.brand-logo svg{width:18px;height:18px}.brand-text h2{color:var(--text-primary);font-size:1.05rem;font-weight:700;line-height:1.2}.brand-text span{color:var(--text-muted);font-size:.72rem;font-weight:500;display:block}.nav-menu{flex-direction:column;flex:1;gap:4px;display:flex}.nav-item{border-radius:var(--radius-sm);color:var(--text-secondary);transition:var(--transition);text-align:left;cursor:pointer;align-items:center;gap:10px;width:100%;padding:9px 12px;font-size:.875rem;font-weight:500;text-decoration:none;display:flex}.nav-item svg{width:17px;height:17px;color:var(--text-muted);transition:var(--transition)}.nav-item:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.nav-item:hover svg{color:var(--text-primary)}.nav-item.active{background:var(--accent-primary-light);color:var(--accent-primary);font-weight:600}.nav-item.active svg{color:var(--accent-primary)}.badge-count{background-color:var(--loan-light);color:var(--loan-color);border:1px solid var(--loan-border);border-radius:999px;margin-left:auto;padding:1px 6px;font-size:.7rem;font-weight:700}.sidebar-footer{border-top:1px solid var(--border-color);flex-direction:column;gap:10px;padding-top:14px;display:flex}.currency-selector-wrap{flex-direction:column;gap:4px;display:flex}.currency-selector-wrap label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.03em;align-items:center;gap:5px;font-size:.7rem;font-weight:600;display:flex}.currency-selector-wrap label svg{width:12px;height:12px}.currency-select{background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);transition:var(--transition);outline:none;padding:6px 10px;font-size:.8rem;font-weight:500}.currency-select:focus{border-color:var(--border-focus)}.quick-backup-btns{grid-template-columns:1fr 1fr;gap:6px;display:grid}.btn-sidebar{border-radius:var(--radius-sm);background-color:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);transition:var(--transition);justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-size:.75rem;font-weight:500;display:inline-flex}.btn-sidebar:hover{background-color:var(--border-color);color:var(--text-primary)}.btn-sidebar svg{width:13px;height:13px}.theme-toggle-row{color:var(--text-secondary);justify-content:space-between;align-items:center;padding:2px;font-size:.78rem;font-weight:500;display:flex}.theme-toggle-btn{border-radius:var(--radius-sm);background-color:var(--bg-tertiary);border:1px solid var(--border-color);width:30px;height:30px;color:var(--text-secondary);transition:var(--transition);justify-content:center;align-items:center;display:flex}.theme-toggle-btn:hover{color:var(--text-primary);border-color:var(--border-focus)}.theme-toggle-btn svg{width:15px;height:15px}.main-content{margin-left:var(--sidebar-width);background-color:var(--bg-primary);flex-direction:column;flex:1;min-width:0;max-width:100%;min-height:100vh;display:flex;overflow-x:hidden}.top-header{z-index:50;background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);box-sizing:border-box;justify-content:space-between;align-items:center;gap:16px;width:100%;max-width:100%;padding:14px 28px;display:flex;position:sticky;top:0}.top-header-left{align-items:center;gap:10px;min-width:0;display:flex}.mobile-menu-btn{border-radius:var(--radius-sm);background:var(--bg-tertiary);width:34px;height:34px;color:var(--text-primary);flex-shrink:0;justify-content:center;align-items:center;display:none}.mobile-menu-btn svg{width:18px;height:18px}.header-titles h1{font-size:1.25rem;font-weight:700;line-height:1.2}.header-titles p{color:var(--text-secondary);font-size:.8rem}.header-actions{align-items:center;gap:10px;display:flex}.month-filter-badge{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);align-items:center;gap:6px;padding:5px 10px;display:flex}.month-filter-badge svg{width:14px;height:14px;color:var(--text-muted)}.month-filter-badge input[type=month]{color:var(--text-primary);cursor:pointer;background:0 0;border:none;outline:none;font-size:.8rem;font-weight:500}.content-body{box-sizing:border-box;flex:1;width:100%;padding:24px 28px}.view-panel{box-sizing:border-box;width:100%;min-width:0;max-width:100%;animation:.2s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.view-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.toolbar-left h2{margin-bottom:2px;font-size:1.2rem}.toolbar-left p{color:var(--text-secondary);font-size:.825rem}.toolbar-actions{align-items:center;gap:8px;display:flex}@media (width<=960px){:root{--sidebar-width:220px}.content-body{padding:16px}.top-header{padding:12px 16px}}@media (width<=768px){.sidebar{transform:translate(-100%)}.sidebar.open{box-shadow:var(--shadow-lg);transform:translate(0)}.main-content{margin-left:0}.mobile-menu-btn{display:flex}}.auth-container{background:radial-gradient(circle at top right, #6366f114, transparent 400px), radial-gradient(circle at bottom left, #10b9810d, transparent 400px), var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.auth-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);width:100%;max-width:440px;box-shadow:var(--shadow-lg), 0 20px 25px -5px #0000000d;padding:32px 28px;animation:.25s ease-out fadeInScale}@keyframes fadeInScale{0%{opacity:0;transform:scale(.97)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.auth-header{text-align:center;margin-bottom:24px}.auth-logo-badge{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border:1px solid #c7d2fe;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:12px;display:inline-flex;box-shadow:0 4px 12px #4f46e526}.auth-title{color:var(--text-primary);letter-spacing:-.025em;margin-bottom:4px;font-size:1.5rem;font-weight:800}.auth-subtitle{color:var(--text-secondary);margin-bottom:10px;font-size:.875rem;line-height:1.4}.auth-security-badge{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:9999px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.auth-tabs{background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);margin-bottom:20px;padding:4px;display:flex}.auth-tab{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex:1;padding:8px 12px;font-size:.875rem;font-weight:600;transition:all .18s}.auth-tab.active{background:var(--bg-card);color:var(--accent-primary);box-shadow:var(--shadow-sm)}.auth-error-banner{color:#be123c;border-radius:var(--radius-md);background:#fff1f2;border:1px solid #fecdd3;align-items:center;gap:8px;margin-bottom:18px;padding:10px 14px;font-size:.825rem;font-weight:500;display:flex}.auth-form{flex-direction:column;gap:16px;display:flex}.input-icon{width:18px;height:18px;color:var(--text-muted);pointer-events:none;position:absolute;left:12px}.auth-input{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);width:100%;color:var(--text-primary);outline:none;padding:10px 38px;font-size:.9rem;transition:border-color .18s,box-shadow .18s}.auth-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #4f46e51f}.password-toggle-btn{color:var(--kui-color-neutral-muted,var(--text-muted));cursor:pointer;border-radius:var(--kui-radius-sm,var(--radius-sm));z-index:2;background:0 0;border:none;justify-content:center;align-items:center;padding:6px;line-height:0;transition:color .15s,background-color .15s;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.password-toggle-btn:hover{color:var(--kui-color-neutral-foreground,var(--text-primary));background-color:var(--kui-color-neutral-hover,#ffffff14)}.password-toggle-btn:focus-visible{outline:2px solid var(--kui-color-brand);outline-offset:1px}.password-toggle-btn svg{pointer-events:none;flex-shrink:0;display:block;width:18px!important;height:18px!important;position:static!important;top:auto!important;left:auto!important}.label-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.link-btn{color:var(--accent-primary);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.link-btn:hover{text-decoration:underline}.helper-text{color:var(--text-muted);margin-top:4px;font-size:.75rem}.auth-submit-btn{background:var(--accent-primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;margin-top:8px;padding:12px 18px;font-size:.95rem;font-weight:600;transition:all .18s;box-shadow:0 2px 4px #4f46e533}.auth-submit-btn:hover:not(:disabled){background:var(--accent-primary-hover);transform:translateY(-1px);box-shadow:0 4px 10px #4f46e54d}.auth-submit-btn:disabled{opacity:.65;cursor:not-allowed}.onboarding-steps{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex;position:relative}.onboarding-step-item{z-index:1;flex-direction:column;flex:1;align-items:center;gap:4px;display:flex;position:relative}.onboarding-step-circle{background:var(--bg-tertiary);border:2px solid var(--border-color);width:32px;height:32px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;transition:all .2s;display:flex}.onboarding-step-item.active .onboarding-step-circle{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;box-shadow:0 0 0 3px #4f46e533}.onboarding-step-item.completed .onboarding-step-circle{background:var(--income-color);border-color:var(--income-color);color:#fff}.onboarding-step-label{color:var(--text-muted);text-align:center;font-size:.72rem;font-weight:600}.onboarding-step-item.active .onboarding-step-label{color:var(--text-primary)}.entity-grid{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.entity-card{border-radius:var(--radius-md);border:1.5px solid var(--border-color);background:var(--bg-card);cursor:pointer;text-align:left;align-items:flex-start;gap:14px;padding:14px;transition:all .18s;display:flex}.entity-card:hover{border-color:var(--accent-primary);background:var(--bg-tertiary);transform:translateY(-1px)}.entity-card.selected{border-color:var(--accent-primary);background:var(--accent-primary-light);box-shadow:0 0 0 1px var(--accent-primary)}.entity-icon-box{border-radius:var(--radius-sm);background:var(--bg-tertiary);flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.3rem;transition:all .18s;display:flex}.entity-card.selected .entity-icon-box{background:var(--bg-card);box-shadow:var(--shadow-sm)}.entity-info{flex:1}.entity-header-row{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.entity-header-row h4{color:var(--text-primary);font-size:.95rem;font-weight:700}.entity-tag{background:var(--bg-tertiary);color:var(--text-secondary);border-radius:999px;padding:1px 6px;font-size:.68rem;font-weight:600}.entity-desc{color:var(--text-secondary);font-size:.775rem;line-height:1.35}.wizard-nav-row{justify-content:space-between;align-items:center;gap:12px;margin-top:20px;display:flex}.super-admin-banner{border-radius:var(--radius-md);background:#fffbeb;border:1px solid #fde68a;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px;display:flex}[data-theme=dark] .super-admin-banner{background:#f59e0b1a;border-color:#f59e0b40}.super-admin-banner-text{color:#92400e;font-size:.775rem;line-height:1.35}[data-theme=dark] .super-admin-banner-text{color:#fcd34d}.role-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;align-items:center;gap:4px;padding:2px 7px;font-size:.7rem;font-weight:700;display:inline-flex}.role-badge.super-admin{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.role-badge.admin{color:#4f46e5;background:#eef2ff;border:1px solid #c7d2fe}.role-badge.member{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.role-badge.viewer{color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0}.workspace-header-pill{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);align-items:center;gap:8px;padding:4px 10px;display:flex}.workspace-icon-mini{font-size:1rem}.workspace-name-display{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.8rem;font-weight:700;overflow:hidden}.workspace-id-badge{font-family:var(--font-mono,monospace);background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--accent-primary);letter-spacing:.03em;border-radius:4px;padding:1px 6px;font-size:.68rem;font-weight:600}.workspace-copy-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:3px;transition:all .15s;display:flex}.workspace-copy-btn:hover{color:var(--accent-primary);background:var(--bg-tertiary)}.header-user-profile{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);align-items:center;gap:8px;margin-left:4px;padding:4px 6px;display:flex}.header-user-avatar{color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:700;display:flex;box-shadow:0 1px 3px #4f46e54d}.header-user-info{flex-direction:column;display:flex}.header-user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:110px;font-size:.8rem;font-weight:600;overflow:hidden}.header-logout-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.header-logout-btn:hover{color:#dc2626;background:#fee2e2}@media (width<=640px){.header-user-info{display:none}}.pwa-install-banner{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);z-index:9999;justify-content:space-between;align-items:center;gap:12px;max-width:380px;padding:12px 16px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pwa-install-content{align-items:center;gap:10px;display:flex}.pwa-install-icon{background:#eef2ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.pwa-install-text{flex-direction:column;display:flex}.pwa-install-title{color:var(--text-primary);font-size:.85rem;font-weight:700}.pwa-install-subtitle{color:var(--text-secondary);font-size:.725rem}.pwa-install-actions{align-items:center;gap:6px;display:flex}.btn-install-pwa{background:var(--accent-primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;align-items:center;gap:5px;padding:6px 12px;font-size:.8rem;font-weight:600;transition:all .15s;display:flex}.btn-install-pwa:hover{background:var(--accent-primary-hover)}.btn-dismiss-pwa{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}.btn-dismiss-pwa:hover{background:var(--bg-tertiary);color:var(--text-primary)}@media (width<=640px){.pwa-install-banner{left:16px;right:16px;bottom:calc(76px + env(safe-area-inset-bottom,0px));max-width:none}}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);z-index:99;opacity:0;pointer-events:none;background:#0f172a73;transition:opacity .25s;position:fixed;inset:0}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.sidebar-close-btn{border-radius:var(--radius-sm);background:var(--bg-tertiary);width:32px;height:32px;color:var(--text-secondary);transition:var(--transition);justify-content:center;align-items:center;margin-left:auto;display:none}.sidebar-close-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.bottom-nav{z-index:90;background:var(--bg-glass);-webkit-backdrop-filter:blur(18px);border-top:1px solid var(--border-color);padding-bottom:env(safe-area-inset-bottom,0px);display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0000000f}[data-theme=dark] .bottom-nav{background:#0f172ae6;border-top:1px solid #ffffff14;box-shadow:0 -4px 25px #00000059}.bottom-nav-container{justify-content:space-around;align-items:center;max-width:540px;height:60px;margin:0 auto;padding:0 12px;display:flex;position:relative}.bottom-nav-item{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:4px 0;text-decoration:none;transition:all .2s;display:flex}.bottom-nav-item.active{color:var(--accent-primary)}.bottom-nav-icon-wrap{justify-content:center;align-items:center;transition:transform .2s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative}.bottom-nav-item.active .bottom-nav-icon-wrap{transform:translateY(-2px)}.bottom-badge-count{background:var(--loan-color);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:14px;height:14px;padding:1px 4px;font-size:.625rem;font-weight:700;line-height:1;display:flex;position:absolute;top:-4px;right:-8px;box-shadow:0 2px 4px #d977064d}.bottom-nav-label{letter-spacing:-.01em;font-size:.68rem;font-weight:600;transition:color .15s}.bottom-nav-fab-wrap{flex:1;justify-content:center;align-items:center;display:flex;position:relative}.bottom-nav-fab{background:linear-gradient(135deg, var(--accent-primary) 0%, #6366f1 100%);color:#fff;border:3px solid var(--bg-card);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:flex;transform:translateY(-12px);box-shadow:0 4px 14px #4f46e573}.bottom-nav-fab:active{transform:translateY(-9px)scale(.94);box-shadow:0 2px 8px #4f46e559}@media (width<=768px){.app-container{max-width:100vw;overflow-x:hidden}.main-content{width:100%!important;min-width:0!important;max-width:100vw!important;margin-left:0!important;overflow-x:hidden!important}.bottom-nav{width:100%;max-width:100vw;display:block}.sidebar-close-btn{display:flex}.top-header{box-sizing:border-box;gap:6px;width:100%;max-width:100vw;padding:8px 10px}.top-header-left{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.mobile-menu-btn{flex-shrink:0;width:32px;height:32px;display:flex}.header-titles,.desktop-quick-add{display:none!important}.content-body{overflow-x:hidden;box-sizing:border-box!important;width:100%!important;max-width:100vw!important;padding:12px 10px calc(84px + env(safe-area-inset-bottom,0px))!important}.view-panel{overflow-x:hidden;width:100%!important;min-width:0!important;max-width:100%!important}.workspace-header-pill{flex-shrink:1;gap:4px;min-width:0;max-width:125px;padding:3px 6px}.workspace-id-badge{display:none!important}.workspace-name-display{text-overflow:ellipsis;white-space:nowrap;max-width:70px;font-size:.72rem;overflow:hidden}.workspace-icon-mini{font-size:.85rem}.month-filter-badge{flex-shrink:1;gap:4px;min-width:0;max-width:105px;padding:3px 6px}.month-filter-badge input[type=month]{min-width:0;max-width:76px;font-size:.7rem}.header-actions{flex-shrink:0;gap:4px}.user-avatar-circle{width:28px;height:28px;font-size:.72rem}.header-logout-btn{width:28px;height:28px;padding:4px}.header-logout-btn svg{width:15px;height:15px}}.btn{border-radius:var(--radius-sm);transition:var(--transition);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;font-weight:500;display:inline-flex}.btn svg{width:15px;height:15px}.btn-primary{background:var(--text-primary);color:var(--bg-secondary)}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-tertiary)}.btn-success{background:var(--income-color);color:#fff}.btn-success:hover{opacity:.92;transform:translateY(-1px)}.btn-outline{border:1px solid var(--border-color);color:var(--text-secondary);background:var(--bg-secondary)}.btn-outline:hover{border-color:var(--text-secondary);color:var(--text-primary)}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover{color:var(--text-primary);background:var(--bg-tertiary)}.btn-sm{border-radius:var(--radius-sm);padding:5px 10px;font-size:.78rem}.btn-sm svg{width:13px;height:13px}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:20px;display:grid}.kpi-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:var(--transition);flex-direction:column;padding:18px 20px;display:flex}.kpi-card:hover{box-shadow:var(--shadow-sm);border-color:#cbd5e1}[data-theme=dark] .kpi-card:hover{border-color:#ffffff29}.kpi-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.kpi-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.78rem;font-weight:600}.kpi-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:28px;height:28px;display:flex}.income-card .kpi-icon{background:var(--income-light);color:var(--income-color)}.expense-card .kpi-icon{background:var(--expense-light);color:var(--expense-color)}.loan-card .kpi-icon{background:var(--loan-light);color:var(--loan-color)}.savings-card .kpi-icon{background:var(--savings-light);color:var(--savings-color)}.kpi-icon svg{width:15px;height:15px}.kpi-value{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.02em;margin-bottom:10px;font-size:1.6rem;font-weight:700}.kpi-footer{justify-content:space-between;align-items:center;gap:6px;margin-top:auto;font-size:.78rem;display:flex}.kpi-subtext{color:var(--text-muted);font-size:.75rem}.kpi-action-link{color:var(--accent-primary);font-size:.78rem;font-weight:600}.kpi-action-link:hover{text-decoration:underline}.kpi-badge-savings{color:var(--income-color);background:var(--income-light);border:1px solid var(--income-border);border-radius:999px;padding:2px 7px;font-size:.72rem;font-weight:600}.kpi-badge-savings.negative{color:var(--expense-color);background:var(--expense-light);border-color:var(--expense-border)}.financial-health-banner{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);box-sizing:border-box;width:100%;max-width:100%;margin-bottom:22px;transition:all .25s;overflow:hidden}.health-banner-summary{grid-template-columns:1.4fr 1fr;align-items:center;gap:24px;padding:20px 24px;display:grid}.dti-label{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:4px;font-size:.8rem;font-weight:600;display:flex}.info-tooltip svg{width:13px;height:13px;color:var(--text-muted);cursor:help}.dti-value-row{align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.dti-value-row h3{font-size:1.8rem;font-weight:700}.dti-status-pill{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:600}.dti-status-pill.healthy{background:var(--income-light);color:var(--income-color);border:1px solid var(--income-border)}.dti-status-pill.moderate{background:var(--loan-light);color:var(--loan-color);border:1px solid var(--loan-border)}.dti-status-pill.high{background:var(--expense-light);color:var(--expense-color);border:1px solid var(--expense-border)}.dti-status-pill.debt-free{color:#059669;background:#10b9811f;border:1px solid #10b9814d}.dti-status-pill.co-borrower{color:#6366f1;background:#6366f11f;border:1px solid #6366f14d}.progress-bar-wrap{background-color:var(--bg-tertiary);border-radius:999px;width:100%;height:6px;margin-bottom:6px;overflow:hidden}.progress-bar-fill{background:var(--income-color);border-radius:999px;height:100%;transition:width .4s}.progress-bar-fill.moderate{background:var(--loan-color)}.progress-bar-fill.high{background:var(--expense-color)}.progress-bar-fill.co-borrower{background:#6366f1}.progress-bar-fill.debt-free{background:var(--income-color)}.dti-guidance{color:var(--text-muted);font-size:.75rem}.total-outstanding-block{border-left:1px solid var(--border-color);padding-left:24px}.outstanding-label{color:var(--text-muted);text-transform:uppercase;margin-bottom:2px;font-size:.78rem;font-weight:600}.outstanding-value{font-family:var(--font-display);color:var(--text-primary);font-size:1.6rem;font-weight:700}.outstanding-subtext{color:var(--text-muted);margin-top:2px;font-size:.75rem}.dti-collapse-bar{border-top:1px solid var(--border-color);background:var(--bg-secondary)}.dti-collapse-toggle-btn{cursor:pointer;width:100%;color:var(--text-secondary);background:0 0;border:none;justify-content:space-between;align-items:center;padding:10px 20px;font-size:.8rem;font-weight:500;transition:all .2s;display:flex}.dti-collapse-toggle-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.dti-collapse-toggle-left{align-items:center;gap:8px;display:flex}.toggle-icon-users{color:var(--accent-primary)}.toggle-title{color:var(--text-primary);font-weight:600}.member-count-badge{background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border-color);border-radius:999px;padding:2px 8px;font-size:.7rem;font-weight:500}.dti-collapse-toggle-right{color:var(--accent-primary);align-items:center;gap:6px;font-size:.78rem;font-weight:600;display:flex}.member-debt-breakdown-drawer{background:var(--bg-primary);border-top:1px solid var(--border-color);padding:18px 20px 22px;animation:.2s ease-out forwards fadeInDown}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.member-debt-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;display:grid}.member-debt-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;gap:13px;padding:16px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.member-debt-card:hover{box-shadow:var(--shadow-sm);border-color:var(--border-focus)}.member-debt-card-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.member-debt-user-info{align-items:center;gap:10px;display:flex}.member-debt-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:700;display:flex;box-shadow:0 1px 3px #0000001f}.member-debt-name-row{align-items:center;gap:6px;display:flex}.member-debt-name{color:var(--text-primary);margin:0;font-size:.92rem;font-weight:700}.member-debt-relation-badge{background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border-color);border-radius:4px;padding:1px 5px;font-size:.65rem;font-weight:600}.member-debt-loans-meta{color:var(--text-muted);margin-top:1px;font-size:.72rem;display:block}.pill-content{align-items:center;gap:4px;display:inline-flex}.member-debt-stats-grid{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);grid-template-columns:1fr 1fr 1fr;gap:8px;padding:10px 12px;display:grid}.member-debt-stat-col{flex-direction:column;display:flex}.member-debt-stat-col .stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px;font-size:.65rem;font-weight:600}.member-debt-stat-col .stat-value{color:var(--text-primary);font-size:.88rem;font-weight:700}.stat-note-co{color:#6366f1;font-size:.74rem;font-weight:600}.stat-note-free{color:#059669}.member-debt-progress-wrap{flex-direction:column;gap:4px;display:flex}.member-debt-progress-subtext{color:var(--text-muted);font-size:.71rem;line-height:1.3}.member-active-loans-list{flex-direction:column;gap:5px;margin-top:2px;display:flex}.active-loans-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.68rem;font-weight:600}.loan-chips-container{flex-wrap:wrap;gap:6px;display:flex}.member-loan-chip{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:3px 8px;font-size:.72rem;transition:all .15s;display:inline-flex}.member-loan-chip:hover{background:var(--bg-secondary);border-color:var(--accent-primary);color:var(--accent-primary)}.chip-loan-name{color:var(--text-secondary);font-weight:600}.chip-loan-amount{color:var(--text-primary);font-weight:700;font-family:var(--font-display)}.member-debt-card-footer{border-top:1px solid var(--border-color);justify-content:flex-end;padding-top:4px;display:flex}.btn-link-sm{color:var(--accent-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:3px;padding:0;font-size:.74rem;font-weight:600;display:inline-flex}.btn-link-sm:hover{text-decoration:underline}@media (width<=768px){.health-banner-summary{grid-template-columns:1fr;gap:14px;padding:14px}.total-outstanding-block{border-left:none;border-top:1px solid var(--border-color);padding-top:12px;padding-left:0}.dti-guidance,.outstanding-subtext{word-break:break-word;overflow-wrap:break-word}.outstanding-value{font-size:1.45rem}.dti-value-row h3{font-size:1.6rem}.dti-collapse-toggle-btn{box-sizing:border-box;flex-direction:column;align-items:flex-start;gap:6px;width:100%;padding:8px 12px}.dti-collapse-toggle-left{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px;width:100%;min-width:0;display:flex}.toggle-title{font-size:.74rem}.member-count-badge{padding:1px 6px;font-size:.65rem}.dti-collapse-toggle-right{border-top:1px dashed var(--border-color);justify-content:flex-end;align-items:center;width:100%;padding-top:5px;font-size:.72rem;display:flex}.member-debt-grid{grid-template-columns:1fr;gap:10px}.member-debt-breakdown-drawer{padding:12px}.member-debt-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:8px}.member-debt-stat-col .stat-value{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.member-debt-stat-col .stat-label{font-size:.6rem}.member-debt-progress-subtext{word-break:break-word;overflow-wrap:break-word}}.dashboard-charts-grid{grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px;display:grid}.chart-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;padding:18px 20px;display:flex}.chart-card.full-width{grid-column:1/-1}.chart-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.chart-header h3{font-size:.95rem;font-weight:600}.chart-legend-badge{color:var(--text-muted);background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:3px 8px;font-size:.72rem}.chart-wrapper{width:100%;height:240px;position:relative}.trend-wrapper{height:290px}@media (width<=900px){.dashboard-charts-grid{grid-template-columns:1fr}}.glance-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.glance-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:18px 20px}.glance-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.glance-header h3{font-size:.95rem;font-weight:600}.quick-loans-list,.quick-expense-list{flex-direction:column;gap:8px;display:flex}.quick-loan-item,.quick-expense-item{border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border-subtle);transition:var(--transition);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.quick-loan-item:hover,.quick-expense-item:hover{background:var(--bg-secondary);border-color:var(--border-color)}.quick-item-left{align-items:center;gap:10px;display:flex}.quick-item-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:32px;height:32px;display:flex}.quick-item-icon svg{width:15px;height:15px}.quick-item-text h4{margin-bottom:1px;font-size:.85rem;font-weight:600}.quick-item-text span{color:var(--text-muted);font-size:.72rem}.quick-item-right{text-align:right}.quick-item-amount{font-size:.875rem;font-weight:600}.quick-item-meta{color:var(--text-muted);font-size:.7rem}.empty-state-notice{text-align:center;color:var(--text-muted);padding:24px;font-size:.825rem}@media (width<=900px){.glance-grid{grid-template-columns:1fr}}.loans-summary-bar{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:20px;padding:16px 20px;display:grid}.summary-stat-box{flex-direction:column;gap:2px;display:flex}.stat-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.03em;font-size:.72rem;font-weight:600}.stat-num{font-family:var(--font-display);font-size:1.35rem;font-weight:700}.text-danger{color:var(--expense-color)}.text-warning{color:var(--loan-color)}.text-success{color:var(--income-color)}.text-primary{color:var(--accent-primary)}.loan-cards-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;display:grid}.loan-card-item{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:var(--transition);flex-direction:column;padding:20px;display:flex}.loan-card-item:hover{box-shadow:var(--shadow-sm);border-color:#cbd5e1}[data-theme=dark] .loan-card-item:hover{border-color:#ffffff29}.loan-card-top{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.loan-badge-type{border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);text-transform:uppercase;align-items:center;margin-bottom:4px;padding:2px 6px;font-size:.7rem;font-weight:600;display:inline-flex}.loan-card-title h3{font-size:1rem;font-weight:600}.loan-card-title p{color:var(--text-muted);font-size:.75rem}.loan-actions-dropdown{gap:4px;display:flex}.btn-icon-sm{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);transition:var(--transition);justify-content:center;align-items:center;display:flex}.btn-icon-sm:hover{background:var(--bg-tertiary);color:var(--text-primary)}.btn-icon-sm.danger:hover{background:var(--expense-light);color:var(--expense-color)}.btn-icon-sm svg{width:14px;height:14px}.loan-progress-box{background:var(--bg-tertiary);border-radius:var(--radius-sm);margin-bottom:14px;padding:12px 14px}.loan-progress-header{justify-content:space-between;margin-bottom:6px;font-size:.78rem;font-weight:500;display:flex}.loan-progress-header .highlight-emis{color:var(--loan-color);font-weight:700}.loan-bar-track{background:var(--border-color);border-radius:999px;height:5px;margin-bottom:6px;overflow:hidden}.loan-bar-fill{background:var(--loan-color);border-radius:999px;height:100%;transition:width .4s}.loan-progress-sub{color:var(--text-muted);justify-content:space-between;font-size:.7rem;display:flex}.loan-metrics-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;display:grid}.loan-metric-item{flex-direction:column;display:flex}.loan-metric-item span{color:var(--text-muted);text-transform:uppercase;font-size:.7rem;font-weight:600}.loan-metric-item strong{color:var(--text-primary);font-size:.95rem;font-weight:600}.loan-card-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;display:flex}.due-date-pill{color:var(--text-muted);align-items:center;gap:4px;font-size:.75rem;display:flex}.due-date-pill svg{width:13px;height:13px}.income-summary-row{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-bottom:20px;display:grid}.member-income-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.member-avatar{border-radius:var(--radius-sm);background:var(--income-light);width:34px;height:34px;color:var(--income-color);border:1px solid var(--income-border);justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.member-details h4{font-size:.875rem;font-weight:600}.member-details span{color:var(--text-muted);font-size:.72rem}.member-amount{font-family:var(--font-display);color:var(--income-color);font-size:.95rem;font-weight:700}.filter-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);margin-bottom:16px;padding:14px 18px}.filters-wrap{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.filter-group{flex-direction:column;flex:1;gap:4px;min-width:140px;display:flex}.filter-group label{text-transform:uppercase;color:var(--text-muted);font-size:.7rem;font-weight:600}.filter-group select,.filter-group input{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);transition:var(--transition);outline:none;padding:7px 10px;font-size:.825rem}.filter-group select:focus,.filter-group input:focus{border-color:var(--border-focus)}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon>svg:not(.password-toggle-btn svg),.input-with-icon>.input-icon{width:14px;height:14px;color:var(--text-muted);position:absolute;left:9px}.input-with-icon input{width:100%;padding-left:30px!important}.table-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);overflow:hidden}.table-header{border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;display:flex}.table-title-group{align-items:center;gap:8px;display:flex}.count-chip{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);padding:2px 7px;font-size:.72rem}.sum-chip{background:var(--expense-light);color:var(--expense-color);border:1px solid var(--expense-border);border-radius:var(--radius-sm);padding:2px 8px;font-size:.75rem;font-weight:600}.search-wrap{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);align-items:center;gap:6px;padding:5px 10px;display:flex}.search-wrap svg{width:14px;height:14px;color:var(--text-muted)}.search-wrap input{color:var(--text-primary);background:0 0;border:none;outline:none;min-width:200px;font-size:.8rem}.table-responsive{width:100%;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:.825rem}.data-table th{background:var(--bg-tertiary);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-color);padding:10px 16px;font-size:.7rem;font-weight:600}.data-table td{border-bottom:1px solid var(--border-color);color:var(--text-secondary);vertical-align:middle;padding:11px 16px}.data-table tbody tr:hover td{background:var(--bg-tertiary);color:var(--text-primary)}.table-member-tag{background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-primary);border:1px solid var(--border-subtle);align-items:center;gap:5px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-flex}.table-category-tag{border-radius:var(--radius-sm);align-items:center;gap:5px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-flex}.table-amount{font-family:var(--font-display);font-size:.875rem;font-weight:600}.table-amount.expense{color:var(--expense-color)}.table-amount.income{color:var(--income-color)}.badge-mode{border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-muted);padding:2px 6px;font-size:.7rem}.modal-backdrop{-webkit-backdrop-filter:blur(4px);z-index:1000;background:#0f172a73;justify-content:center;align-items:center;padding:16px;animation:.18s fadeIn;display:flex;position:fixed;inset:0}.modal-dialog,.modal-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:520px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.modal-dialog.modal-sm,.modal-container.modal-sm{max-width:400px}.modal-dialog.modal-md,.modal-container.modal-md{max-width:540px}.modal-dialog.modal-lg,.modal-container.modal-lg{max-width:650px}.modal-subtitle{color:var(--text-muted);margin-top:2px;font-size:.75rem}.form-error-banner{background:var(--expense-light);color:var(--expense-color);border:1px solid var(--expense-border);border-radius:var(--radius-sm);grid-column:1/-1;align-items:center;gap:8px;margin-bottom:12px;padding:10px 14px;font-size:.82rem;font-weight:500;display:flex}.form-row{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:12px;display:grid}.label-optional{color:var(--text-muted);margin-left:4px;font-size:.7rem;font-weight:400}.form-hint{color:var(--text-muted);margin-top:4px;font-size:.72rem;display:block}.modal-header{border-bottom:1px solid var(--border-color);background:var(--bg-secondary);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h3{align-items:center;gap:6px;font-size:1.05rem;font-weight:600;display:flex}.modal-close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);transition:var(--transition);justify-content:center;align-items:center;display:flex}.modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-body{padding:20px;overflow-y:auto}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-group{flex-direction:column;gap:4px;display:flex}.form-group.full-span{grid-column:1/-1}.form-group label{color:var(--text-secondary);font-size:.75rem;font-weight:600}.form-group label .req{color:var(--expense-color)}.form-group input,.form-group select,.form-group textarea{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);transition:var(--transition);outline:none;padding:8px 12px;font-size:.85rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--border-focus);background:var(--bg-secondary)}.field-hint{color:var(--text-muted);font-size:.7rem}.checkbox-label{cursor:pointer;color:var(--text-secondary);align-items:center;gap:8px;font-size:.8rem;display:flex}.checkbox-label input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent-primary)}.modal-footer,.modal-actions{border-top:1px solid var(--border-color);background:var(--bg-secondary);justify-content:flex-end;align-items:center;gap:8px;padding:14px 20px;display:flex}.modal-form{flex-direction:column;flex:1;padding:20px;display:flex;overflow-y:auto}.quick-options-body{flex-direction:column;gap:10px;display:flex}.quick-option-btn{border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border-color);text-align:left;transition:var(--transition);align-items:center;gap:12px;padding:12px 14px;display:flex}.quick-option-btn:hover{background:var(--bg-secondary);border-color:var(--text-primary)}.quick-opt-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.quick-opt-icon.expense{background:var(--expense-light);color:var(--expense-color);border:1px solid var(--expense-border)}.quick-opt-icon.income{background:var(--income-light);color:var(--income-color);border:1px solid var(--income-border)}.quick-opt-icon.loan{background:var(--loan-light);color:var(--loan-color);border:1px solid var(--loan-border)}.quick-opt-icon svg{width:18px;height:18px}.quick-opt-info h4{margin-bottom:2px;font-size:.9rem;font-weight:600}.quick-opt-info p{color:var(--text-muted);font-size:.75rem}.pay-emi-header-box{background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-color);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.pay-emi-header-box h4{font-size:.95rem}.pay-emi-meta{color:var(--text-secondary);gap:16px;font-size:.78rem;display:flex}.sim-desc{color:var(--text-secondary);margin-bottom:14px;font-size:.8rem}.sim-results-card{background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-color);margin-top:16px;padding:16px}.sim-metric-row{grid-template-columns:1fr 1fr;gap:12px;margin-top:10px;display:grid}.sim-metric-box{background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border-color);padding:10px 12px}.sim-metric-box label{color:var(--text-muted);text-transform:uppercase;font-size:.7rem;font-weight:600}.sim-metric-box h4{margin-top:2px;font-size:1.15rem}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{pointer-events:auto;background:var(--bg-secondary);min-width:260px;max-width:340px;color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);align-items:center;gap:10px;padding:10px 14px;animation:.2s forwards toastSlide;display:flex}@keyframes toastSlide{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.toast-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.toast.success .toast-icon{background:var(--income-light);color:var(--income-color)}.toast.error .toast-icon{background:var(--expense-light);color:var(--expense-color)}.toast.info .toast-icon{background:var(--bg-tertiary);color:var(--text-primary)}.toast-content{flex:1}.toast-title{font-size:.8rem;font-weight:600}.toast-message{color:var(--text-muted);font-size:.72rem}.amount-input-container{flex-direction:column;gap:4px;display:flex}.amount-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.amount-currency-prefix{color:var(--text-muted);pointer-events:none;font-size:.9rem;font-weight:700;position:absolute;left:11px}.amount-input-field{width:100%;font-family:var(--font-display);letter-spacing:.02em;padding-left:28px!important;font-size:1rem!important;font-weight:600!important}.amount-verbal-badge{background:var(--income-light);color:var(--income-color);border:1px solid var(--income-border);border-radius:var(--radius-sm);align-items:center;gap:6px;width:fit-content;margin-top:2px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.amount-verbal-badge .verbal-text{color:var(--income-color);font-weight:700}.members-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.member-profile-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:var(--transition);flex-direction:column;padding:18px 20px;display:flex}.member-profile-card:hover{box-shadow:var(--shadow-sm);border-color:#cbd5e1}[data-theme=dark] .member-profile-card:hover{border-color:#ffffff29}.member-card-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.member-avatar-lg{border-radius:var(--radius-sm);background:var(--accent-primary-light);width:42px;height:42px;color:var(--accent-primary);justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.member-role-badge{border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);text-transform:uppercase;padding:2px 7px;font-size:.7rem;font-weight:600}.member-stats-row{background:var(--bg-tertiary);border-radius:var(--radius-sm);grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;padding:12px 14px;display:grid}.member-stat-cell{flex-direction:column;display:flex}.member-stat-cell span{color:var(--text-muted);text-transform:uppercase;font-size:.68rem;font-weight:600}.member-stat-cell strong{font-size:.95rem;font-weight:700}.member-card-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:auto;padding-top:10px;font-size:.75rem;display:flex}.expense-subnav{background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-color);gap:8px;width:fit-content;margin-bottom:16px;padding:4px;display:flex}.expense-subnav-btn{border-radius:calc(var(--radius-sm) - 2px);color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;border:none;align-items:center;gap:6px;padding:6px 14px;font-size:.8rem;font-weight:600;display:flex}.expense-subnav-btn.active{background:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-xs)}.recurring-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.recurring-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:var(--transition);flex-direction:column;padding:18px 20px;display:flex}.recurring-card:hover{box-shadow:var(--shadow-sm);border-color:#cbd5e1}[data-theme=dark] .recurring-card:hover{border-color:#ffffff29}.recurring-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.recurring-badge-cycle{border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);align-items:center;gap:4px;margin-bottom:6px;padding:2px 7px;font-size:.7rem;font-weight:600;display:inline-flex}.recurring-amortized-box{background:var(--income-light);border:1px solid var(--income-border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:12px;padding:10px 14px;display:flex}.recurring-amortized-box span{color:var(--text-secondary);font-size:.72rem;font-weight:600}.recurring-amortized-box strong{color:var(--income-color);font-size:1rem;font-weight:700}.recurring-due-chip{border-radius:var(--radius-sm);align-items:center;gap:4px;padding:3px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.recurring-due-chip.normal{background:var(--bg-tertiary);color:var(--text-secondary)}.recurring-due-chip.soon{background:var(--loan-light);color:var(--loan-color);border:1px solid var(--loan-border)}.recurring-due-chip.overdue{background:var(--expense-light);color:var(--expense-color);border:1px solid var(--expense-border)}.mobile-card-list{display:none}.desktop-only-table{display:block}.mobile-item-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:var(--transition);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.mobile-item-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.mobile-item-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.mobile-item-icon.income-badge-icon{background:var(--income-light);color:var(--income-color);border:1px solid var(--income-border)}.mobile-item-info{flex-direction:column;flex:1;min-width:0;display:flex}.mobile-item-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0 0 3px;font-size:.88rem;font-weight:600;overflow:hidden}.mobile-item-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:.72rem;display:flex}.mobile-item-date{color:var(--text-muted);font-family:monospace;font-size:.7rem}.mobile-item-tag{background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-secondary);border:1px solid var(--border-subtle);align-items:center;padding:1px 6px;font-size:.7rem;display:inline-flex}.mobile-item-cat-tag{border-radius:var(--radius-sm);align-items:center;padding:1px 6px;font-size:.68rem;font-weight:600;display:inline-flex}.mobile-item-right{flex-direction:column;flex-shrink:0;justify-content:center;align-items:flex-end;gap:6px;display:flex}.mobile-item-amount{white-space:nowrap;font-size:.95rem;font-weight:700}.mobile-item-actions{align-items:center;gap:4px;display:flex}.mobile-empty-state{text-align:center;color:var(--text-muted);background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-md);padding:32px 16px;font-size:.85rem}@media (width<=768px){.desktop-only-table{display:none!important}.mobile-card-list{flex-direction:column;gap:8px;display:flex}.table-card{box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.table-summary-bar{padding:10px 14px;font-size:.75rem}}@media (width<=640px){.kpi-grid{box-sizing:border-box!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;max-width:100%!important;margin-bottom:12px!important;display:grid!important}.kpi-card{min-width:0!important;padding:10px!important;overflow:hidden!important}.kpi-header{margin-bottom:4px!important}.kpi-icon svg{width:14px!important;height:14px!important}.kpi-title{white-space:nowrap!important;text-overflow:ellipsis!important;max-width:calc(100% - 20px)!important;font-size:.65rem!important;overflow:hidden!important}.kpi-value{white-space:nowrap!important;text-overflow:ellipsis!important;margin-bottom:2px!important;font-size:1.15rem!important;overflow:hidden!important}.kpi-footer{flex-direction:column!important;align-items:flex-start!important;gap:2px!important;min-width:0!important}.kpi-subtext{white-space:nowrap!important;text-overflow:ellipsis!important;width:100%!important;font-size:.64rem!important;overflow:hidden!important}.kpi-badge-savings{padding:1px 6px!important;font-size:.62rem!important}.kpi-action-link{font-size:.68rem!important}.chart-card{padding:12px 14px;overflow:hidden;min-width:0!important;max-width:100%!important}.chart-header{flex-wrap:wrap;gap:6px}.chart-header h3{font-size:.85rem}.chart-legend-badge{padding:2px 6px;font-size:.65rem}.chart-wrapper{min-width:0;max-width:100%;overflow:hidden}.chart-wrapper canvas{max-width:100%!important}.glance-card{min-width:0;max-width:100%;padding:12px 14px;overflow:hidden}.modal-backdrop{align-items:flex-end;padding:0}.modal-dialog{border-bottom:none;border-radius:20px 20px 0 0;max-width:100%;max-height:88vh;animation:.25s cubic-bezier(.16,1,.3,1) slideUpBottomSheet}@keyframes slideUpBottomSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.form-grid{gap:10px;grid-template-columns:1fr!important}.form-group input,.form-group select,.form-group textarea{min-height:42px;font-size:.9rem}.loans-summary-bar{grid-template-columns:1fr 1fr;gap:10px;padding:12px 14px}.loan-metrics-grid{grid-template-columns:1fr 1fr;gap:8px}}.pm-selector-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-direction:column;gap:10px;margin-top:4px;padding:12px;display:flex}.pm-category-tabs{background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-color);grid-template-columns:repeat(3,1fr);gap:6px;padding:4px;display:grid}.pm-cat-tab{border-radius:calc(var(--radius-sm) - 2px);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:.78rem;font-weight:600;transition:all .15s;display:flex}.pm-cat-tab:hover{color:var(--text-primary);background:#ffffff0a}.pm-cat-tab.active{background:var(--bg-primary);color:var(--text-primary);border-color:var(--border-color);box-shadow:0 1px 3px #0000001f}.pm-cat-count{background:var(--bg-tertiary);color:var(--text-muted);border-radius:10px;padding:1px 6px;font-size:.68rem}.pm-cat-tab.active .pm-cat-count{background:var(--accent-primary);color:#fff}.pm-cat-add-hint{color:var(--accent-primary);border:1px solid var(--accent-primary);cursor:pointer;background:#6366f126;border-radius:4px;margin-left:2px;padding:1px 6px;font-size:.65rem;font-weight:700;transition:all .15s}.pm-cat-add-hint:hover{background:var(--accent-primary);color:#fff}.pm-sub-filters{align-items:center;gap:6px;margin-bottom:8px;display:flex}.pm-filter-pill{border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;border-radius:20px;padding:4px 10px;font-size:.72rem;font-weight:500;transition:all .15s}.pm-filter-pill:hover{border-color:var(--accent-primary);color:var(--text-primary)}.pm-filter-pill.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.pm-items-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;max-height:240px;padding-right:2px;display:grid;overflow-y:auto}.pm-tile{border-radius:var(--radius-sm);background:var(--bg-primary);border:1px solid var(--border-color);cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:8px 10px;transition:all .15s;display:flex;position:relative}.pm-tile:hover{border-color:var(--accent-primary);transform:translateY(-1px);box-shadow:0 2px 6px #00000014}.pm-tile.selected{border-color:var(--accent-primary);box-shadow:0 0 0 1.5px var(--accent-primary);background:#6366f114}.pm-tile-icon-circle{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;display:flex;box-shadow:0 2px 4px #0000001a}.pm-tile-icon-circle.cash{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%)}.pm-tile-icon-circle.loan{color:#fff;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%)}.pm-tile-icon-circle.add{background:var(--bg-tertiary);color:var(--text-muted);border:1px dashed var(--border-color)}.pm-tile-meta{flex-direction:column;flex:1;min-width:0;display:flex}.pm-tile-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;font-weight:600;overflow:hidden}.pm-tile-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.65rem;overflow:hidden}.pm-tile-check{background:var(--accent-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:flex;position:absolute;top:4px;right:4px}.pm-badge-default{color:#f59e0b;align-items:center;gap:2px;margin-top:1px;font-size:.6rem;font-weight:600;display:inline-flex}.pm-tile.loan-tile{grid-column:1/-1;padding:10px 12px}.pm-cards-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;max-height:250px;padding-right:2px;display:grid;overflow-y:auto}.mini-credit-card{color:#fff;cursor:pointer;text-align:left;border:1px solid #ffffff26;border-radius:12px;flex-direction:column;justify-content:space-between;height:108px;padding:10px 12px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #0003}.mini-credit-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff1a 0%,#0000 60%);width:200%;height:200%;position:absolute;top:-50%;left:-50%}.mini-credit-card:hover{border-color:#ffffff59;transform:translateY(-2px);box-shadow:0 6px 18px #0000004d}.mini-credit-card.selected{box-shadow:0 0 0 2px var(--accent-primary), 0 6px 18px #00000059;border-color:#fff}.mcc-top{justify-content:space-between;align-items:center;gap:6px;width:100%;display:flex}.mcc-bank{letter-spacing:.3px;text-transform:uppercase;color:#fff;white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:.74rem;font-weight:700;overflow:hidden}.mcc-default-tag{color:#f59e0b;background:#0006;border:1px solid #f59e0b99;border-radius:4px;align-items:center;gap:3px;padding:1px 5px;font-size:.6rem;font-weight:700;display:inline-flex}.mcc-middle{align-items:center;gap:8px;margin:4px 0;display:flex}.mcc-chip{background:linear-gradient(135deg,#d4af37 0%,#aa820a 100%);border-radius:3px;flex-shrink:0;width:20px;height:15px;position:relative;box-shadow:inset 0 1px 1px #fff9}.mcc-chip:after{content:"";border:1px solid #0000004d;border-radius:1px;position:absolute;inset:4px 3px}.mcc-number{letter-spacing:1.2px;color:#ffffffe6;font-size:.78rem;font-weight:600}.mcc-bottom{justify-content:space-between;align-items:center;width:100%;display:flex}.mcc-cycle-badge{color:#ffffffd9;background:#00000059;border:1px solid #ffffff26;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:.65rem;font-weight:500;display:inline-flex}.mcc-network-text{letter-spacing:.5px;color:#ffffffbf;font-size:.68rem;font-weight:800}.mcc-check-badge{color:#0f172a;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;top:8px;right:8px;box-shadow:0 2px 6px #0006}.mini-credit-card-add{border:1.5px dashed var(--border-color);background:var(--bg-tertiary);height:108px;color:var(--text-secondary);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:.75rem;font-weight:600;transition:all .2s;display:flex}.mini-credit-card-add:hover{border-color:var(--accent-primary);color:var(--text-primary);background:#6366f10d}.pm-empty-cards{text-align:center;background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px dashed var(--border-color);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:24px 16px;display:flex}.pm-empty-cards p{color:var(--text-primary);margin:0;font-size:.82rem;font-weight:600}.pm-empty-cards span{color:var(--text-muted);font-size:.72rem}.btn-add-card-link{background:var(--accent-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:5px;margin-top:6px;padding:6px 12px;font-size:.72rem;font-weight:600;display:inline-flex}.pm-status-bar{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:2px;padding-top:8px;display:flex}.pm-active-selection{align-items:center;gap:6px;min-width:0;display:flex}.pm-sel-label{color:var(--text-muted);font-size:.7rem}.pm-sel-value{color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:700}.pm-manage-btn{color:var(--accent-primary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;padding:4px 6px;font-size:.72rem;font-weight:600;transition:all .15s;display:inline-flex}.pm-manage-btn:hover{background:#6366f114;text-decoration:underline}.pm-modal-tabs{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);align-items:center;gap:8px;padding:10px 18px;display:flex}.pm-modal-tab{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:7px 16px;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.pm-modal-tab:hover{color:var(--text-primary);background:#ffffff0d}.pm-modal-tab.active{background:var(--bg-primary);color:var(--text-primary);border-color:var(--border-color);box-shadow:0 2px 4px #0000001a}.pm-modal-tab-badge{background:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--border-color);border-radius:10px;padding:1px 6px;font-size:.68rem}.pm-modal-tab.active .pm-modal-tab-badge{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.pm-modal-body{padding:16px}.pm-manager-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.pm-section-note{color:var(--text-muted);font-size:.75rem}.btn-add-pill{background:var(--accent-primary);color:#fff;cursor:pointer;border:none;border-radius:20px;flex-shrink:0;align-items:center;gap:5px;padding:5px 12px;font-size:.72rem;font-weight:600;transition:opacity .15s;display:inline-flex}.btn-add-pill:hover{opacity:.9}.saved-cards-list{flex-direction:column;gap:8px;max-height:380px;display:flex;overflow-y:auto}.saved-card-row{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);align-items:center;gap:12px;padding:10px 12px;transition:border-color .15s;display:flex}.saved-card-row:hover{border-color:var(--accent-primary)}.saved-card-visual{color:#fff;border-radius:6px;flex-direction:column;flex-shrink:0;justify-content:space-between;width:60px;height:40px;padding:4px 6px;display:flex;box-shadow:0 2px 4px #0003}.scv-chip{background:#d4af37;border-radius:1px;width:10px;height:7px}.scv-digits{letter-spacing:.5px;font-size:.6rem}.saved-card-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.saved-card-name-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.saved-card-name{color:var(--text-primary);margin:0;font-size:.82rem;font-weight:600}.saved-card-network{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:3px;padding:1px 5px;font-size:.65rem;font-weight:700}.saved-card-default-badge{color:#f59e0b;background:#f59e0b1f;border-radius:3px;align-items:center;gap:3px;padding:1px 6px;font-size:.65rem;font-weight:600;display:inline-flex}.saved-card-meta-row{color:var(--text-muted);align-items:center;gap:6px;font-size:.72rem;display:flex}.saved-card-cycle strong,.saved-card-due strong{color:var(--text-primary)}.saved-card-subtext{color:var(--text-muted);font-size:.72rem}.upi-app-avatar{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.saved-card-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.btn-set-default{border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-size:.7rem;font-weight:500;transition:all .15s;display:inline-flex}.btn-set-default:hover{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b}.btn-delete-pm{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.btn-delete-pm:hover{color:var(--expense-color);background:#ef44441a}.preset-upi-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:4px;display:grid}.preset-upi-btn{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;align-items:center;gap:6px;padding:8px 10px;font-size:.75rem;font-weight:500;transition:all .15s;display:flex;position:relative}.preset-upi-btn:hover{border-color:var(--accent-primary)}.preset-upi-btn.selected{border-color:var(--accent-primary);background:#6366f114}.preset-upi-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.preset-check{color:var(--accent-primary);margin-left:auto}.card-theme-picker{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.theme-color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:transform .15s;display:flex}.theme-color-swatch:hover{transform:scale(1.1)}.theme-color-swatch.selected{box-shadow:0 0 0 2px var(--accent-primary);border-color:#fff}@media (width<=640px){.pm-category-tabs{grid-template-columns:1fr;gap:4px}.pm-cards-grid{grid-template-columns:1fr}.preset-upi-grid{grid-template-columns:1fr 1fr}.saved-card-row{flex-direction:column;align-items:flex-start;gap:8px}.saved-card-actions{justify-content:flex-end;width:100%}}.wizard-modal-dialog{width:100%;max-width:580px}.wizard-modal-header{padding:16px 20px 12px}.wizard-stepper-wrap{border-bottom:1px solid var(--border-color);padding:0 20px 14px}.wizard-progress-bar-container{background:var(--bg-tertiary);border-radius:2px;width:100%;height:3px;margin-bottom:10px;overflow:hidden}.wizard-progress-track-fill{background:linear-gradient(90deg, var(--accent-primary) 0%, #10b981 100%);height:100%;transition:width .3s cubic-bezier(.16,1,.3,1)}.wizard-steps-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.wizard-step-btn{cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:4px 6px;transition:all .15s;display:flex}.wizard-step-btn:disabled{cursor:not-allowed;opacity:.4}.wizard-step-circle{background:var(--bg-tertiary);border:1.5px solid var(--border-color);width:22px;height:22px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;transition:all .15s;display:flex}.wizard-step-title{color:var(--text-muted);font-size:.78rem;font-weight:600;transition:color .15s}.wizard-step-btn.active .wizard-step-circle{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;box-shadow:0 0 0 3px #6366f133}.wizard-step-btn.active .wizard-step-title{color:var(--text-primary);font-weight:700}.wizard-step-btn.completed .wizard-step-circle{color:#fff;background:#10b981;border-color:#10b981}.wizard-step-btn.completed .wizard-step-title{color:var(--text-secondary)}.wizard-step-line{background:var(--border-color);flex:1;height:1.5px;transition:background .3s}.wizard-step-line.completed{background:#10b981}.wizard-form{flex-direction:column;min-height:380px;display:flex}.wizard-step-body{flex-direction:column;flex:1;padding:16px 20px;display:flex}.wizard-step-content{flex-direction:column;gap:12px;display:flex}.animate-step{animation:.22s cubic-bezier(.16,1,.3,1) stepFadeIn}@keyframes stepFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.wizard-hero-amount-box{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center;flex-direction:column;gap:6px;padding:18px 20px;display:flex}.wizard-amount-label{color:var(--text-muted);font-size:.8rem;font-weight:600}.wizard-hero-amount-box .amount-input{text-align:center!important;height:54px!important;color:var(--expense-color)!important;background:var(--bg-primary)!important;border-radius:var(--radius-sm)!important;border:1.5px solid var(--border-color)!important;font-size:1.8rem!important;font-weight:800!important}.wizard-hero-amount-box .amount-input:focus{border-color:var(--accent-primary)!important;box-shadow:0 0 0 3px #6366f126!important}.wizard-hero-amount-box .amount-preview-badge{margin:4px auto 0}.wizard-quick-chips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.wizard-chips-label{color:var(--text-muted);margin-right:2px;font-size:.72rem;font-weight:600}.wizard-amount-chip{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:20px;padding:5px 10px;font-size:.74rem;font-weight:600;transition:all .15s}.wizard-amount-chip:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#6366f114;transform:translateY(-1px)}.btn-tiny-chip{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;border-radius:12px;padding:1px 7px;font-size:.65rem;font-weight:600;transition:all .15s}.btn-tiny-chip:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.wizard-summary-pill{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;justify-content:space-between;align-items:center;padding:8px 12px;transition:border-color .15s;display:flex}.wizard-summary-pill:hover{border-color:var(--accent-primary)}.wsp-left{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:.78rem;display:flex;overflow:hidden}.wsp-amount{font-size:.85rem}.wsp-dot{color:var(--text-muted)}.wsp-meta{color:var(--text-secondary);font-size:.74rem}.wsp-edit-link{color:var(--accent-primary);flex-shrink:0;margin-left:8px;font-size:.7rem;font-weight:600}.wizard-desc-chips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:-4px;display:flex}.wizard-desc-chip{border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:3px 8px;font-size:.7rem;font-weight:500;transition:all .15s}.wizard-desc-chip:hover{border-color:var(--accent-primary);color:var(--text-primary)}.wizard-desc-chip.selected{border-color:var(--accent-primary);color:var(--accent-primary);background:#6366f11f;font-weight:600}.wizard-category-grid{grid-template-columns:repeat(3,1fr);gap:8px;max-height:220px;padding-right:2px;display:grid;overflow-y:auto}.wizard-cat-tile{border-radius:var(--radius-sm);border:1.5px solid var(--border-color);cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:8px 10px;transition:all .15s;display:flex;position:relative}.wizard-cat-tile:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000014}.wizard-cat-tile.selected{box-shadow:0 0 0 1px}.wizard-cat-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.wizard-cat-name{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.74rem;font-weight:600;overflow:hidden}.wizard-cat-check{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:flex}.wizard-full-summary-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.wfsc-left{flex-direction:column;flex:1;min-width:0;display:flex}.wfsc-amount{font-size:1.25rem;line-height:1.2}.wfsc-desc{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.85rem;font-weight:600;overflow:hidden}.wfsc-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.wfsc-sub{color:var(--text-muted);font-size:.72rem}.wizard-modal-footer{border-top:1px solid var(--border-color);background:var(--bg-secondary);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}@media (width<=640px){.wizard-category-grid{grid-template-columns:1fr 1fr}.wizard-step-title{display:none}.wizard-hero-amount-box .amount-input{font-size:1.5rem!important}}.btn-lens{transition:var(--transition);background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border:1px solid #ffffff26;align-items:center;gap:7px;font-weight:600;display:inline-flex;box-shadow:0 2px 6px -1px #6366f159;color:#fff!important}.btn-lens:hover:not(:disabled){background:linear-gradient(135deg,#4f46e5 0%,#4338ca 100%);transform:translateY(-1px);box-shadow:0 4px 12px -2px #6366f173}.btn-lens:disabled{opacity:.5;cursor:not-allowed}.loans-summary-bar.lens-active-bar{background:linear-gradient(to right, var(--bg-card), var(--accent-primary-light));box-shadow:0 0 0 1px #6366f133, var(--shadow-sm);border-color:#6366f159}.stat-lens-tag{border-radius:var(--radius-sm);align-items:center;width:fit-content;margin-top:3px;padding:2px 6px;font-size:.72rem;font-weight:600;display:inline-flex}.stat-lens-tag.success{background:var(--income-light);color:var(--income-color);border:1px solid var(--income-border)}.stat-lens-tag.info{background:var(--accent-primary-light);color:var(--accent-primary);border:1px solid #6366f140}.future-lens-quickbar{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:var(--transition);margin-bottom:20px;padding:16px 20px}.future-lens-quickbar.active{border-color:#6366f14d;box-shadow:0 2px 10px -2px #6366f11f}.quickbar-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.quickbar-title-wrap{align-items:center;gap:12px;display:flex}.quickbar-icon-badge{border-radius:var(--radius-md);background:var(--accent-primary-light);width:36px;height:36px;color:var(--accent-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.quickbar-title{align-items:center;gap:8px;display:flex}.quickbar-title h4{margin:0;font-size:1rem;font-weight:700}.quickbar-badge{text-transform:uppercase;letter-spacing:.04em;background:var(--accent-primary-light);color:var(--accent-primary);border:1px solid #6366f133;border-radius:999px;padding:2px 7px;font-size:.68rem;font-weight:600}.quickbar-subtitle{color:var(--text-secondary);margin:2px 0 0;font-size:.78rem}.btn-lens-deepdive{background:var(--accent-primary-light);color:var(--accent-primary);transition:var(--transition);border:1px solid #6366f140;font-weight:600}.btn-lens-deepdive:hover{background:var(--accent-primary);color:#fff}.quickbar-controls{background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-color);flex-direction:column;gap:10px;padding:12px 14px;display:flex}.lens-chips-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lens-chip{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:var(--transition);padding:4px 10px;font-size:.75rem;font-weight:600}.lens-chip:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.lens-chip.selected{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 1px 3px #6366f14d}.lens-slider-wrap{align-items:center;gap:12px;display:flex}.slider-min-label,.slider-max-label{color:var(--text-muted);flex-shrink:0;font-size:.72rem;font-weight:600}.lens-range-input{accent-color:var(--accent-primary);cursor:pointer;border-radius:999px;flex:1;height:6px}.lens-slider-counter{color:var(--accent-primary);background:var(--accent-primary-light);border-radius:var(--radius-sm);text-align:center;min-width:54px;padding:3px 8px;font-size:.75rem;font-weight:600}.quickbar-metrics-strip{border-top:1px solid var(--border-color);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:14px;padding-top:14px;display:grid}.quickbar-metric-cell{flex-direction:column;gap:2px;display:flex}.cell-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.03em;font-size:.7rem;font-weight:600}.cell-val-row{align-items:baseline;gap:6px;display:flex}.cell-num{font-family:var(--font-display);font-size:1.15rem;font-weight:700}.cell-delta-pill{border-radius:var(--radius-sm);background:var(--income-light);color:var(--income-color);align-items:center;gap:3px;padding:1px 5px;font-size:.68rem;font-weight:600;display:inline-flex}.cell-delta-pill.positive,.cell-delta-pill.green{background:var(--income-light);color:var(--income-color)}.cell-sub{color:var(--text-muted);font-size:.72rem}.quickbar-idle-hint{color:var(--text-muted);border-top:1px solid var(--border-color);align-items:center;gap:8px;margin-top:12px;padding-top:10px;font-size:.78rem;display:flex}.sparkle-icon{color:var(--accent-primary)}.loan-card-item.lens-mode-card{background:var(--bg-card);border-color:#6366f140}.loan-card-item.lens-card-cleared{background:linear-gradient(180deg, var(--bg-card) 0%, #10b9810a 100%);border-color:#10b98159}.lens-card-badge-paid{border-radius:var(--radius-sm);background:var(--income-light);color:var(--income-color);border:1px solid var(--income-border);align-items:center;gap:4px;padding:2px 6px;font-size:.68rem;font-weight:700;display:inline-flex}.modal-dialog.modal-xl{width:95%;max-width:960px}.future-lens-modal-header{padding:18px 24px}.future-lens-modal-title{align-items:center;gap:12px;display:flex}.lens-modal-icon{border-radius:var(--radius-md);background:var(--accent-primary-light);width:42px;height:42px;color:var(--accent-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.future-lens-modal-title h3{margin:0;font-size:1.15rem;font-weight:700}.future-lens-modal-title p{color:var(--text-secondary);margin:2px 0 0;font-size:.8rem}.future-lens-modal-body{flex-direction:column;gap:20px;max-height:calc(86vh - 120px);padding:20px 24px;display:flex;overflow-y:auto}.lens-horizon-box{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-direction:column;gap:12px;padding:16px 20px;display:flex}.lens-horizon-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.lens-horizon-label{color:var(--text-primary);align-items:center;gap:8px;font-size:.85rem;display:flex}.horizon-target-pill{background:var(--accent-primary-light);color:var(--accent-primary);border:1px solid #6366f140;border-radius:999px;margin-left:6px;padding:3px 8px;font-size:.72rem;font-weight:700}.lens-horizon-input-group{color:var(--text-secondary);align-items:center;gap:8px;font-size:.8rem;display:flex}.lens-num-input{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-card);width:70px;color:var(--text-primary);text-align:center;padding:5px 8px;font-size:.85rem;font-weight:600}.lens-horizon-slider-row{align-items:center;gap:12px;display:flex}.slider-edge-label{color:var(--text-muted);font-size:.75rem;font-weight:600}.lens-horizon-chips{flex-wrap:wrap;gap:6px;display:flex}.lens-chip-btn{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:var(--transition);padding:5px 12px;font-size:.75rem;font-weight:600}.lens-chip-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.lens-chip-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 1px 3px #6366f159}.lens-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.lens-kpi-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;padding:16px;display:flex}.lens-kpi-card.highlight-primary{background:linear-gradient(135deg, var(--bg-card) 0%, var(--accent-primary-light) 100%);border-color:#6366f14d}.lens-kpi-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.kpi-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.03em;font-size:.72rem;font-weight:700}.kpi-tag-sub{color:var(--text-secondary);font-size:.68rem;font-weight:600}.lens-kpi-val{font-family:var(--font-display);font-size:1.4rem;font-weight:700;line-height:1.2}.emi-per-mo{color:var(--text-muted);font-size:.8rem;font-weight:500}.lens-kpi-footer{flex-direction:column;gap:3px;margin-top:10px;display:flex}.delta-badge{border-radius:var(--radius-sm);align-items:center;gap:4px;width:fit-content;padding:2px 6px;font-size:.72rem;font-weight:700;display:inline-flex}.delta-badge.success{background:var(--income-light);color:var(--income-color);border:1px solid var(--income-border)}.kpi-origin{color:var(--text-muted);font-size:.7rem}.lens-kpi-split-row{justify-content:space-between;margin-bottom:8px;display:flex}.split-label{color:var(--text-muted);text-transform:uppercase;font-size:.68rem;display:block}.lens-kpi-bar-track{background:var(--loan-light);border:1px solid var(--loan-border);border-radius:999px;height:6px;margin-bottom:4px;overflow:hidden}.lens-kpi-bar-fill-principal{background:var(--income-color);border-radius:999px;height:100%;transition:width .3s}.lens-kpi-sub-split{color:var(--text-muted);justify-content:space-between;font-size:.68rem;font-weight:600;display:flex}.lens-milestone-banner{border:1px solid var(--income-border);border-radius:var(--radius-md);background:linear-gradient(135deg,#10b9811a 0%,#0596690d 100%);align-items:flex-start;gap:12px;padding:14px 18px;display:flex}.milestone-icon{color:var(--income-color);flex-shrink:0;margin-top:2px}.milestone-text strong{color:var(--income-color);font-size:.85rem}.milestone-text ul{color:var(--text-primary);flex-direction:column;gap:4px;margin:6px 0 0 16px;padding:0;font-size:.8rem;display:flex}.lens-chart-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:18px 20px}.lens-chart-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.lens-chart-title h4{margin:0;font-size:.95rem;font-weight:700}.lens-chart-title p{color:var(--text-muted);margin:2px 0 0;font-size:.75rem}.lens-chart-legend-badge{color:var(--text-secondary);align-items:center;gap:6px;font-size:.75rem;font-weight:600;display:inline-flex}.chart-legend-dot{background:#6366f1;border-radius:50%;width:10px;height:10px}.lens-chart-canvas-wrap{width:100%;height:220px}.lens-breakdown-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:18px 20px}.lens-breakdown-header{margin-bottom:14px}.lens-breakdown-header h4{margin:0;font-size:.95rem;font-weight:700}.lens-breakdown-header p{color:var(--text-muted);margin:2px 0 0;font-size:.75rem}.lens-loans-table-wrap{overflow-x:auto}.lens-table{border-collapse:collapse;width:100%;font-size:.8rem}.lens-table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);border-bottom:1px solid var(--border-color);background:var(--bg-tertiary);padding:10px 12px;font-size:.7rem;font-weight:700}.lens-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;padding:12px}.lens-table tr:hover td{background:var(--bg-tertiary)}.lens-table tr.row-paid-off td{background:#10b9810a}.lens-loan-cell-title{flex-direction:column;display:flex}.lens-loan-cell-title strong{color:var(--text-primary);font-size:.85rem}.lens-loan-cell-sub{color:var(--text-muted);font-size:.72rem}.cell-delta-pill-sm{color:var(--income-color);background:var(--income-light);border-radius:4px;margin-left:5px;padding:1px 4px;font-size:.65rem;font-weight:700}.lens-emis-cell{flex-direction:column;display:flex}.cell-sub-emis{color:var(--text-muted);font-size:.68rem}.lens-badge-closed{color:var(--income-color);background:var(--income-light);border:1px solid var(--income-border);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.lens-badge-active{color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-color);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.future-lens-modal-footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.lens-footer-hint{color:var(--text-muted);align-items:center;gap:8px;font-size:.75rem;display:flex}@media (width<=768px){.quickbar-header{flex-direction:column;align-items:flex-start}.quickbar-actions{width:100%}.btn-lens-deepdive{justify-content:center;width:100%}.lens-horizon-header{flex-direction:column;align-items:flex-start}.future-lens-modal-footer{flex-direction:column;align-items:stretch;gap:12px}}.savings-cards-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;display:grid}.savings-card-item{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);flex-direction:column;transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),border-color .2s;display:flex;position:relative;overflow:hidden}.savings-card-item:hover{box-shadow:var(--shadow-md);border-color:#0284c759;transform:translateY(-2px)}.savings-card-accent-bar{width:100%;height:5px}.savings-card-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 14px;display:flex}.savings-card-meta{flex:1}.savings-badge-type{border-radius:var(--radius-sm);background:var(--savings-light,#f0f9ff);color:var(--savings-color,#0284c7);border:1px solid var(--savings-border,#bae6fd);align-items:center;gap:5px;margin-bottom:8px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.savings-account-name{color:var(--text-primary);margin-bottom:4px;font-size:1.08rem;font-weight:700}.savings-institution-row{color:var(--text-secondary);align-items:center;gap:6px;font-size:.82rem;display:flex}.savings-institution-row .institution-icon{color:var(--text-muted)}.account-mask{background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-muted);border:1px solid var(--border-color);padding:1px 6px;font-family:monospace;font-size:.75rem}.savings-card-actions{align-items:center;gap:4px;display:flex}.savings-balance-section{padding:4px 20px 16px}.savings-balance-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:4px;font-size:.75rem;font-weight:600;display:block}.savings-balance-amount{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.5px;font-size:1.65rem;font-weight:800}.savings-card-footer{background:var(--bg-tertiary);border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding:14px 20px;display:flex}.savings-holder-info{color:var(--text-secondary);flex-direction:column;gap:2px;font-size:.76rem;display:flex}.interest-rate-tag{color:var(--income-color,#059669);align-items:center;font-weight:600;display:inline-flex}.savings-footer-buttons{align-items:center;gap:8px;display:flex}.btn-outline-savings{border:1px solid var(--savings-color,#0284c7);color:var(--savings-color,#0284c7);background:0 0;font-weight:600}.btn-outline-savings:hover{background:var(--savings-light,#f0f9ff)}.adjust-mode-toggle{background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);gap:8px;padding:4px;display:flex}.mode-btn{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:.82rem;font-weight:600;display:flex}.mode-btn.active.deposit{background:var(--income-color,#059669);color:#fff;box-shadow:var(--shadow-xs)}.mode-btn.active.withdraw{background:var(--expense-color,#e11d48);color:#fff;box-shadow:var(--shadow-xs)}.mode-btn.active.set{background:var(--accent-primary,#4f46e5);color:#fff;box-shadow:var(--shadow-xs)}.account-balance-preview-box{background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:14px;padding:12px 16px;display:flex}.preview-label{color:var(--text-secondary);font-size:.78rem;font-weight:600}.preview-val{font-family:var(--font-display);color:var(--text-primary);font-size:1.15rem;font-weight:700}.resulting-balance-banner{background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);margin-bottom:14px;padding:12px 16px}.resulting-balance-banner .banner-row{justify-content:space-between;align-items:center;display:flex}.resulting-balance-banner .result-val{font-family:var(--font-display);font-size:1.25rem;font-weight:700}.diff-indicator{color:var(--text-muted);text-align:right;margin-top:4px;font-size:.78rem}.transfer-account-selector-box{flex-direction:column;gap:8px;display:flex}.transfer-swap-btn-row{z-index:2;justify-content:center;align-items:center;margin:-4px 0;display:flex;position:relative}.transfer-swap-icon-btn{background:var(--bg-card);border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-xs);transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;display:flex}.transfer-swap-icon-btn:hover{background:var(--accent-primary-light);color:var(--accent-primary);border-color:var(--accent-primary);transform:rotate(180deg)}.transfer-preview-card{background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);margin-bottom:14px;padding:14px 16px}.transfer-preview-header{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:10px;font-size:.75rem;font-weight:700}.transfer-impact-cols{grid-template-columns:1fr 1fr;gap:12px;display:grid}.transfer-impact-box{background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border-color);padding:10px 12px}.impact-account-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:.8rem;font-weight:600;overflow:hidden}.impact-balance-row{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.account-chip{background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-color);align-items:center;gap:6px;padding:3px 8px;font-size:.82rem;display:inline-flex}.transfer-amount-pill{font-family:var(--font-display);color:var(--savings-color,#0284c7);font-weight:700;display:inline-block}.text-teal{color:var(--lent-color,#0d9488)}.badge-lent{border-radius:var(--radius-sm);background:var(--lent-light,#f0fdfa);color:var(--lent-color,#0d9488);border:1px solid var(--lent-border,#99f6e4);align-items:center;gap:4px;padding:2px 7px;font-size:.72rem;font-weight:600;display:inline-flex}.lent-cards-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;display:grid}.lent-card-item{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);flex-direction:column;padding:18px 20px;transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),border-color .2s;display:flex}.lent-card-item:hover{box-shadow:var(--shadow-md);border-color:#0d948859;transform:translateY(-2px)}.lent-card-item.settled-card{opacity:.85;background:var(--bg-card)}.lent-card-top{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.relation-pill{border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);padding:2px 6px;font-size:.7rem;font-weight:600}.borrower-name{color:var(--text-primary);align-items:center;gap:6px;margin-bottom:2px;font-size:1.08rem;font-weight:700;display:flex}.borrower-contact-row{color:var(--text-muted);align-items:center;gap:4px;font-size:.76rem;display:flex}.lent-balance-box{background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);justify-content:space-between;align-items:flex-end;margin-bottom:12px;padding:12px 14px;display:flex}.lent-balance-box .balance-item .label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:2px;font-size:.72rem;font-weight:600;display:block}.lent-balance-box .balance-item .val{font-family:var(--font-display);font-size:1.25rem;font-weight:700}.recovery-progress-container{margin-bottom:12px}.progress-labels{color:var(--text-secondary);justify-content:space-between;align-items:center;margin-bottom:5px;font-size:.75rem;display:flex}.recovery-progress-bar{background:var(--border-color);border-radius:999px;height:6px;overflow:hidden}.recovery-progress-bar .progress-fill{background:linear-gradient(90deg, var(--lent-color,#0d9488), var(--income-color,#059669));border-radius:999px;height:100%;transition:width .3s}.lent-meta-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.meta-pill{color:var(--text-secondary);background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border-color);align-items:center;gap:4px;padding:3px 8px;font-size:.74rem;display:inline-flex}.lent-notes-snippet{color:var(--text-secondary);background:var(--bg-tertiary);border-radius:var(--radius-sm);border-left:3px solid var(--lent-color,#0d9488);margin-bottom:14px;padding:6px 10px;font-size:.78rem;font-style:italic}.lent-card-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:8px;display:flex}.btn-primary-teal{background:var(--lent-color,#0d9488);color:#fff;border:none;align-items:center;gap:6px;font-weight:600;display:inline-flex}.btn-primary-teal:hover{background:#0f766e}.settled-pill{color:var(--income-color,#059669);background:var(--income-light);border-radius:var(--radius-sm);align-items:center;gap:5px;padding:4px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.repayment-history-tray{border-top:1px dashed var(--border-color);margin-top:12px;padding-top:12px}.tray-title{text-transform:uppercase;color:var(--text-muted);margin-bottom:8px;font-size:.74rem;font-weight:700}.repayments-list{flex-direction:column;gap:6px;display:flex}.repayment-row{background:var(--bg-tertiary);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:6px 8px;font-size:.78rem;display:flex}.repay-left{align-items:center;gap:6px;display:flex}.repay-date{color:var(--text-primary);font-weight:600}.repay-mode{color:var(--text-secondary)}.repay-note{color:var(--text-muted);font-style:italic}.repay-right{align-items:center;gap:6px;display:flex}.repay-amt{font-weight:700;font-family:var(--font-display)}.btn-icon-tiny{cursor:pointer;opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;transition:opacity .15s;display:flex}.btn-icon-tiny:hover{opacity:1}.net-wealth-hero-card{border-radius:var(--radius-lg);background:linear-gradient(135deg,#4f46e514 0%,#0d948814 50%,#0284c714 100%);border:1px solid #4f46e533;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:20px 24px;display:flex}[data-theme=dark] .net-wealth-hero-card{background:linear-gradient(135deg,#6366f11f 0%,#2dd4bf1a 50%,#38bdf814 100%);border-color:#6366f140}.wealth-hero-left{align-items:center;gap:16px;display:flex}.wealth-hero-icon{color:#fff;background:linear-gradient(135deg,#4f46e5 0%,#0d9488 100%);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:0 4px 14px #4f46e559}.wealth-hero-title{text-transform:uppercase;letter-spacing:.8px;color:var(--text-secondary);margin-bottom:4px;font-size:.82rem;font-weight:700}.wealth-hero-amount{font-family:var(--font-display);letter-spacing:-.5px;color:var(--text-primary);font-size:2.1rem;font-weight:800}.wealth-breakdown-badges{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.wealth-metric-pill{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;padding:8px 14px;display:flex}.wealth-metric-pill .pill-label{text-transform:uppercase;color:var(--text-muted);font-size:.7rem;font-weight:600}.wealth-metric-pill .pill-val{font-family:var(--font-display);font-size:1.05rem;font-weight:700}
