@import"https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&family=Space+Grotesk:wght@300..700&display=swap";:root{--primary: #10b981;--primary-hover: #059669;--primary-light: #e6fdf0;--surface-dark: #0A1911;--bg-color: #F8FAFC;--sidebar-bg: #ffffff;--text-main: #111827;--text-muted: #6b7280;--card-bg: #ffffff;--border-color: #e5e7eb;--input-bg: #ffffff;--sidebar-link-hover: #f3f4f6;--sidebar-link-active-bg: #e6fdf0;--header-bg: rgba(255, 255, 255, .8);--radius-md: 8px;--radius-sm: 4px;--radius-lg: 12px;--font-heading: "Cormorant Garamond", serif;--font-body: "Outfit", sans-serif;--font-data: "Space Grotesk", sans-serif;--font-family: var(--font-body);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--transition-speed: .3s}[data-theme=dark]{--bg-color: #0f172a;--sidebar-bg: #1e293b;--text-main: #f8fafc;--text-muted: #94a3b8;--card-bg: #1e293b;--border-color: #334155;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5), 0 2px 4px -1px rgba(0, 0, 0, .3);--input-bg: #0f172a;--sidebar-link-hover: #334155;--sidebar-link-active-bg: #064e3b;--header-bg: rgba(30, 41, 59, .8)}*{box-sizing:border-box;margin:0;padding:0}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}html,body{overflow-x:hidden;max-width:100%}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2}a{text-decoration:none;color:inherit}button{background:none;border:none;cursor:pointer;font-family:var(--font-body)}ul{list-style:none}.font-data{font-family:var(--font-data)}.hero-value,.evo-stat-value,.cf-v3-metric-value,.cf-txn-amount,.metric-value-large,.trend-percentage,.stat-value,.total-amount,.balance-amount,.currency-symbol,.allocation-value,.avg-amount,.table-amount,.card-value,.amounts-cell,.cc-outstanding,.cc-balance-limit,.goal-amount,.essentials-amount{font-family:var(--font-data);font-weight:600}.text-muted{color:var(--text-muted)}.text-primary{color:var(--primary)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-right{text-align:right}.text-left{text-align:left}.text-center{text-align:center}.cursor-pointer{cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-md);font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease;border:1px solid transparent;font-family:var(--font-body)}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:0 4px 12px #10b98133}.btn-secondary{background-color:var(--primary-light);color:var(--primary)}.btn-secondary:hover{background-color:#d1fae5}.btn-outline{background-color:transparent;border-color:var(--border-color);color:var(--text-main)}.btn-outline:hover{border-color:var(--primary);color:var(--primary);background-color:var(--primary-light)}.btn-ghost{background-color:transparent;color:var(--text-muted)}.btn-ghost:hover{background-color:var(--sidebar-link-hover);color:var(--text-main)}.btn:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-container{background-color:var(--bg-color);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 25px #0000001a;display:flex;flex-direction:column;margin:16px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0}.modal-header h3{margin:0;font-size:1.1rem;font-weight:700;color:var(--text-main)}.modal-body{padding:20px 24px}.modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:0 24px 20px}.btn-close{background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.btn-close:hover{color:var(--text-main)}.btn{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;border:none;transition:all .2s}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-outline{background:transparent;border:1px solid #cbd5e1;color:var(--text-main);padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer}.btn-outline:hover{background:var(--sidebar-link-hover)}.form-group,.form-group-full{display:flex;flex-direction:column;gap:6px}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group label,.form-group-full label{font-size:.8rem;font-weight:600;color:var(--text-main)}.form-group label span,.form-group-full label span{color:#f87171;margin-left:2px}.form-group input,.form-group-full input,.form-group select,.form-group-full select,.select-wrapper select,.custom-select-wrapper select{padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;font-family:var(--font-body);color:var(--text-main);background-color:var(--card-bg);width:100%;box-sizing:border-box}.form-group input:focus,.form-group-full input:focus,.form-group select:focus,.form-group-full select:focus,.select-wrapper select:focus,.custom-select-wrapper select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #10b9811a}.form-group input::placeholder,.form-group-full input::placeholder,.form-group textarea::placeholder,.form-group-full textarea::placeholder{color:var(--text-muted);font-weight:400}.select-wrapper,.custom-select-wrapper,.input-with-icon{position:relative;width:100%}.select-wrapper select,.custom-select-wrapper select{appearance:none;cursor:pointer;padding-right:36px}.select-icon,.input-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.input-with-symbol{position:relative;display:flex;align-items:center;width:100%}.input-with-symbol .currency-symbol{position:absolute;left:10px;color:#94a3b8;font-size:.9rem;font-weight:600;pointer-events:none;z-index:1}.input-with-symbol input{padding-left:32px!important}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:8px}input[type=date]{position:relative}input[type=date]::-webkit-calendar-picker-indicator{opacity:0;position:absolute;left:0;top:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer}.update-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(100px);display:flex;align-items:center;gap:12px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:12px 16px;box-shadow:0 8px 24px #0000001f;z-index:9999;opacity:0;transition:transform .3s ease,opacity .3s ease;max-width:420px;width:calc(100% - 32px)}.update-toast-visible{transform:translate(-50%) translateY(0);opacity:1}.update-toast-text{font-family:var(--font-body, "Outfit", sans-serif);font-size:.875rem;font-weight:500;color:var(--text-main, #111827);flex:1}.update-toast-btn{font-family:var(--font-body, "Outfit", sans-serif);font-size:.8rem;font-weight:600;color:#fff;background:var(--primary, #10b981);border:none;border-radius:8px;padding:6px 16px;cursor:pointer;white-space:nowrap;transition:background .2s}.update-toast-btn:hover{background:var(--primary-hover, #059669)}.update-toast-dismiss{background:none;border:none;color:var(--text-muted, #6b7280);font-size:1rem;cursor:pointer;padding:4px;line-height:1}.update-toast-dismiss:hover{color:var(--text-main, #111827)}[data-theme=dark] .update-toast{background:var(--card-bg);border-color:var(--border-color);box-shadow:0 8px 24px #0000004d}@media(max-width:767px){.update-toast{bottom:80px}}.info-tooltip-icon{position:relative;display:inline-flex;align-items:center;cursor:pointer;color:#3b82f6;opacity:.8;margin-left:4px;vertical-align:middle}.info-tooltip-icon:hover{opacity:1}.info-tooltip-fixed{position:fixed;width:240px;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:10px 14px;font-size:.75rem;font-weight:400;color:var(--text-muted);line-height:1.5;box-shadow:0 4px 16px #0000001f;z-index:9999;pointer-events:none;white-space:normal;text-transform:none;letter-spacing:normal}[data-theme=dark] .info-tooltip-fixed{background:#1f2937;border-color:#374151;color:#9ca3af}@media(max-width:767px){.info-tooltip-fixed{width:220px}}.profile-guard-btn{position:relative;display:inline-block;cursor:not-allowed}.profile-guard-btn>button,.profile-guard-btn>a{pointer-events:none;opacity:.45;cursor:not-allowed}.profile-guard-btn:after{content:"Switch to a profile to add items";position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1e293b;color:#fff;font-size:11px;font-family:var(--font-body);padding:5px 10px;border-radius:6px;white-space:nowrap;z-index:9999;pointer-events:none;opacity:0;transition:opacity .15s}.profile-guard-btn:hover:after{opacity:1}[data-theme=dark] .profile-guard-btn:after{background:#334155}.layout-container{display:flex;flex-direction:column;height:100vh;width:100%;max-width:100vw;position:relative;background-color:var(--bg-color);overflow:hidden}.top-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background-color:var(--bg-color);border-bottom:1px solid var(--border-color)}.top-header-left{display:flex;align-items:center;gap:12px}.top-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.logo-icon-neon{width:36px;height:36px;background-color:var(--primary);border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #10b98133}.logo-monogram{font-family:Cormorant Garamond,serif;font-weight:700;font-size:18px;color:#fff;letter-spacing:-.05em;line-height:1}.logo-text-neon{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:600;letter-spacing:-.025em;line-height:1}.logo-text-flow{color:var(--primary)}.logo-text-track{color:var(--text-main)}.hamburger-btn{color:var(--text-main);background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center}.mobile-only,.mobile-tablet-only{display:flex}.mobile-avatar-wrapper{position:relative}.mobile-header-avatar{width:28px;height:28px;font-size:.65rem}.mobile-avatar-dropdown{top:calc(100% + 12px);left:0;right:auto}@media(max-width:1023px){.top-header{position:sticky;top:0;justify-content:center}.top-header .hamburger-btn{position:absolute;left:16px;z-index:2}.top-header .mobile-theme-toggle{position:absolute;right:52px;z-index:2}.top-header .mobile-avatar-wrapper{position:absolute;right:16px;z-index:2}}.top-nav-pills{display:none}.top-header-right{display:none;align-items:center;gap:8px}.icon-btn{width:36px;height:36px;border-radius:8px;background-color:transparent;border:1px solid transparent;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:all .2s}.icon-btn:hover{border-color:var(--border-color);background-color:var(--sidebar-link-hover);color:var(--text-main)}.micro-avatar{width:32px;height:32px;font-size:.75rem;background:linear-gradient(135deg,#f472b6,#a78bfa);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;border:none;cursor:pointer;transition:transform .15s}.micro-avatar:hover{transform:scale(1.05)}.micro-avatar.has-photo{padding:0;background:none;overflow:hidden}.avatar-photo{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar-dropdown-wrapper{position:relative}.avatar-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 8px 30px #0000001f;min-width:220px;padding:8px;z-index:110;animation:dropdownFade .15s ease}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-user-info{padding:10px 12px;display:flex;align-items:center;gap:10px}.dropdown-avatar-photo{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.dropdown-avatar-initials{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#f472b6,#a78bfa);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.8rem;flex-shrink:0}.dropdown-user-name{font-size:.85rem;font-weight:600;color:var(--text-main)}.dropdown-divider{height:1px;background:var(--border-color);margin:4px 0}.dropdown-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;font-size:.85rem;font-weight:500;color:var(--text-muted);text-decoration:none;transition:all .15s;width:100%;border:none;background:none;cursor:pointer;font-family:inherit}.dropdown-item:hover{background:var(--bg-hover);color:var(--text-main)}.dropdown-item-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:inherit}.dropdown-signout{color:#f87171}.dropdown-signout:hover{background:#fef2f2;color:#dc2626}[data-theme=dark] .dropdown-signout:hover{background:#ef44441a}.drawer-overlay{position:fixed;inset:0;background-color:#0006;z-index:90}.mobile-drawer{position:fixed;top:56px;left:0;right:0;background:var(--card-bg);border-bottom:1px solid var(--border-color);box-shadow:0 8px 30px #0000001f;z-index:95;padding:8px 12px 16px;max-height:calc(100vh - 136px);overflow-y:auto;transform:translateY(-100%);opacity:0;pointer-events:none;transition:transform .25s ease,opacity .2s ease}.mobile-drawer.open{transform:translateY(0);opacity:1;pointer-events:auto}.mobile-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 8px}.mobile-drawer-title{font-size:.8rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px}.mobile-drawer-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center}.mobile-drawer-close:hover{background:var(--bg-hover);color:var(--text-main)}.mobile-drawer-nav{display:flex;flex-direction:column;gap:2px}.mobile-drawer-link{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;color:var(--text-muted);font-weight:600;font-size:.9rem;text-decoration:none;transition:all .15s;border:none;background:none;cursor:pointer;font-family:inherit;width:100%;text-align:left}.mobile-drawer-link:hover{background:var(--bg-hover);color:var(--text-main)}.mobile-drawer-link.active{background:var(--primary-light);color:var(--primary)}[data-theme=dark] .mobile-drawer-link.active{background:#10b9811a;color:#10b981}.mobile-drawer-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px}.mobile-drawer-divider{height:1px;background:var(--border-color);margin:8px 12px}.mobile-drawer-section-label{font-size:.65rem;font-weight:800;color:var(--text-muted);letter-spacing:1.5px;margin:4px 0 4px 12px;text-transform:uppercase;opacity:.6}.mobile-drawer-signout{color:#f87171}.mobile-drawer-signout:hover{background:#fef2f2;color:#dc2626}[data-theme=dark] .mobile-drawer-signout:hover{background:#ef44441a}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;padding:6px 8px 2px;z-index:50;padding-bottom:env(safe-area-inset-bottom);background:#ffffffb8;backdrop-filter:blur(20px) saturate(1.8);-webkit-backdrop-filter:blur(20px) saturate(1.8);border-top:1px solid rgba(255,255,255,.3);border-radius:20px 20px 0 0;box-shadow:0 -4px 30px #0000000f}[data-theme=dark] .bottom-nav{background:#0f1723b8;border-top:1px solid rgba(255,255,255,.08);box-shadow:0 -4px 30px #0000004d}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--text-muted);font-size:.6rem;font-weight:600;letter-spacing:.04em;text-decoration:none;padding:6px 14px;border-radius:14px;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;background:none;border:none;cursor:pointer}.bottom-nav-item.active{color:var(--primary);background:#10b9811f}[data-theme=dark] .bottom-nav-item.active{background:#10b98126;color:#34d399}.bottom-nav-item.active svg{transform:scale(1.1);transition:transform .25s cubic-bezier(.4,0,.2,1)}.bottom-nav-item.add-button{color:var(--primary);transform:translateY(-18px);background:none;padding:0;font-size:.65rem;gap:4px}.bottom-nav-item.add-button.active{background:none}.bottom-nav-item.add-button .add-button-icon{background:var(--primary);color:#fff;border-radius:16px;padding:14px;box-shadow:0 4px 20px #10b98173;transition:box-shadow .25s ease,transform .25s ease;outline:5px solid var(--bg-color)}.bottom-nav-item.add-button:active .add-button-icon{transform:scale(.95)}[data-theme=dark] .bottom-nav-item.add-button .add-button-icon{box-shadow:0 4px 24px #10b98180,0 0 8px #10b98133}.main-content{flex:1;min-height:0;display:flex;flex-direction:column;min-width:0;width:100%;max-width:100vw;padding-bottom:80px;overflow-y:auto;overflow-x:hidden}.content-inner{padding:0;flex:1;display:flex;flex-direction:column}@media(min-width:768px){.mobile-only{display:none}.mobile-drawer{display:none!important}.drawer-overlay{display:none}.top-header{padding:0 24px}.top-nav-pills{display:flex;align-items:center;gap:2px;background:var(--bg-hover);padding:4px;border-radius:12px}.top-nav-pill{padding:7px 14px;border-radius:8px;font-size:.8rem;font-weight:600;color:var(--text-muted);text-decoration:none;transition:all .2s;white-space:nowrap}.top-nav-pill:hover{background:var(--card-bg);color:var(--text-main)}.top-nav-pill.active{background:var(--primary);color:#fff;box-shadow:0 2px 8px #10b98140}[data-theme=dark] .top-nav-pill.active{background:var(--primary);color:#fff}[data-theme=dark] .top-nav-pills{background:#ffffff0d}[data-theme=dark] .top-nav-pill:hover{background:#ffffff14}.top-header-right{display:flex;gap:12px}.top-header-right .avatar-dropdown-wrapper{display:none}}@media(min-width:1024px){.mobile-tablet-only{display:none}.top-header-right .avatar-dropdown-wrapper{display:block}.bottom-nav{display:none}.main-content{padding-bottom:0}.top-header{padding:14px 48px}.top-nav-pill{padding:8px 18px;font-size:.85rem}}[data-theme=dark] .top-header{background-color:var(--bg-color);border-bottom-color:var(--border-color)}[data-theme=dark] .avatar-dropdown-menu{background:var(--card-bg);border-color:var(--border-color);box-shadow:0 8px 30px #0006}[data-theme=dark] .mobile-drawer{background:var(--card-bg);border-bottom-color:var(--border-color);box-shadow:0 8px 30px #0006}[data-theme=dark] .logo-text-track{color:#f3f4f6}.ai-panel-backdrop{display:none}.ai-panel{position:fixed;bottom:80px;right:16px;width:min(380px,calc(100vw - 32px));max-height:520px;background:var(--bg-primary, #ffffff);border-radius:16px;border:1px solid rgba(66,133,244,.2);box-shadow:0 8px 40px #0000001f,0 2px 8px #0000000f,0 0 0 1px #4285f40f;display:flex;flex-direction:column;z-index:200;overflow:hidden;animation:ai-panel-slide-in .25s cubic-bezier(.32,.72,0,1)}@keyframes ai-panel-slide-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}[data-theme=dark] .ai-panel{background:var(--card-bg);border-color:#4285f440;box-shadow:0 8px 40px #0006,0 0 0 1px #4285f41f}@media(min-width:1024px){.ai-panel{bottom:32px;right:32px}}.ai-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;border-bottom:1px solid var(--border-color, rgba(0,0,0,.07));flex-shrink:0}.ai-panel-header-left{display:flex;align-items:center;gap:7px}.ai-panel-title{font-size:14px;font-weight:600;color:var(--text-primary)}.ai-panel-close{background:none;border:none;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;transition:background .15s;flex-shrink:0}.ai-panel-close:hover{background:var(--bg-secondary, rgba(0,0,0,.05))}.ai-panel-context{padding:10px 16px 6px;flex-shrink:0}.ai-panel-page-label{display:block;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(90deg,#4285f4,#a259ff 60%,#0ec8a4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:3px}.ai-panel-subtitle{font-size:12px;font-style:italic;color:var(--text-secondary);margin:0;line-height:1.4}.ai-panel-messages{flex:1;overflow-y:auto;padding:10px 14px;display:flex;flex-direction:column;gap:8px;min-height:0}.ai-panel-msg{max-width:88%;padding:8px 12px;border-radius:12px;font-size:13.5px;line-height:1.5;word-break:break-word}.ai-panel-msg--user{align-self:flex-end;background:var(--primary, #10b981);color:#fff;border-bottom-right-radius:4px}.ai-panel-msg--ai{align-self:flex-start;background:var(--bg-secondary, #f3f4f6);color:var(--text-primary);border-bottom-left-radius:4px}[data-theme=dark] .ai-panel-msg--ai{background:#ffffff14}.ai-panel-msg--action{background:#10b9811a;border:1px solid rgba(16,185,129,.2);color:#10b981;font-size:12.5px;font-weight:500;align-self:flex-start}.ai-panel-cursor{display:inline-block;width:2px;height:13px;background:currentColor;margin-left:2px;vertical-align:middle;animation:ai-cursor-blink .9s ease-in-out infinite}@keyframes ai-cursor-blink{0%,to{opacity:1}50%{opacity:0}}.ai-panel-initial{flex:1;overflow-y:auto;padding:8px 14px 4px;display:flex;flex-direction:column;gap:10px;min-height:0}.ai-panel-section-label{display:block;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:6px}.ai-panel-chip-section{flex-shrink:0}.ai-panel-chips{display:flex;flex-wrap:wrap;gap:6px}.ai-panel-chip{background:none;border:1px solid var(--border-color, rgba(0,0,0,.12));border-radius:20px;padding:5px 12px;font-size:12.5px;color:var(--text-primary);cursor:pointer;transition:background .15s,border-color .15s,color .15s;font-family:var(--font-body);white-space:nowrap}.ai-panel-chip:hover{background:#4285f414;border-color:#4285f466;color:#4285f4}[data-theme=dark] .ai-panel-chip{border-color:#ffffff24}.ai-panel-suggestions{display:flex;flex-direction:column;gap:2px}.ai-panel-suggestion{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:none;border:none;border-radius:8px;text-align:left;font-size:13px;color:var(--text-primary);cursor:pointer;transition:background .15s;font-family:var(--font-body)}.ai-panel-suggestion:hover{background:var(--bg-secondary, rgba(0,0,0,.04))}[data-theme=dark] .ai-panel-suggestion:hover{background:#ffffff0f}.ai-panel-sparkle-icon{flex-shrink:0}.ai-panel-input-row{display:flex;align-items:center;gap:8px;padding:10px 12px 12px;border-top:1px solid var(--border-color, rgba(0,0,0,.07));flex-shrink:0;padding-bottom:max(12px,env(safe-area-inset-bottom,12px))}.ai-panel-input{flex:1;border:1.5px solid var(--border-color, rgba(0,0,0,.12));border-radius:20px;padding:9px 14px;font-size:13.5px;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-secondary, #f8f9fa);outline:none;transition:border-color .15s;min-width:0}.ai-panel-input:focus{border-color:#4285f4;background:var(--bg-primary, #ffffff)}[data-theme=dark] .ai-panel-input{background:#ffffff12;border-color:#ffffff1f}[data-theme=dark] .ai-panel-input:focus{border-color:#4285f4;background:#ffffff1a}.ai-panel-send{width:34px;height:34px;border-radius:50%;border:none;background:linear-gradient(135deg,#4285f4,#a259ff,#0ec8a4);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:opacity .15s,transform .15s}.ai-panel-send:disabled{opacity:.4;cursor:not-allowed}.ai-panel-send:not(:disabled):hover{opacity:.88;transform:scale(1.06)}.ai-panel-spinner{animation:ai-spin .8s linear infinite}@keyframes ai-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.quick-add-fab{position:fixed;bottom:80px;right:20px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(66,133,244,.18);background:#fff;box-shadow:0 2px 12px #4285f438,0 1px 4px #00000014;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:110;transition:transform .2s ease,box-shadow .2s ease}.quick-add-fab:hover{transform:scale(1.1);box-shadow:0 4px 20px #4285f459,0 1px 6px #0000001a}.quick-add-fab:active{transform:scale(.94)}[data-theme=dark] .quick-add-fab{background:var(--card-bg);border-color:#4285f447;box-shadow:0 2px 12px #4285f44d,0 1px 4px #0000004d}@media(min-width:1024px){.quick-add-fab{bottom:32px;right:32px}}.quick-add-overlay{position:fixed;inset:0;background:#00000073;z-index:200;display:flex;align-items:flex-end;animation:qa-overlay-in .2s ease}@keyframes qa-overlay-in{0%{opacity:0}to{opacity:1}}.quick-add-panel{width:100%;background:var(--bg-primary, #ffffff);border-radius:20px 20px 0 0;padding:0 0 env(safe-area-inset-bottom,16px);animation:qa-panel-in .28s cubic-bezier(.32,.72,0,1);max-height:90vh;overflow-y:auto}@keyframes qa-panel-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}[data-theme=dark] .quick-add-panel{background:var(--card-bg)}.quick-add-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--border-color, rgba(0,0,0,.08))}.quick-add-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text-primary)}.quick-add-close{background:none;border:none;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;transition:background .15s}.quick-add-close:hover{background:var(--bg-secondary, rgba(0,0,0,.05))}.quick-add-body{padding:16px 20px 24px;display:flex;flex-direction:column;gap:12px}.quick-add-subtitle{font-size:13px;color:var(--text-secondary);margin:0}.quick-add-input{width:100%;border:1.5px solid var(--border-color, rgba(0,0,0,.12));border-radius:12px;padding:12px 14px;font-size:15px;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-secondary, #f8f9fa);resize:none;outline:none;transition:border-color .15s;box-sizing:border-box}.quick-add-input:focus{border-color:#4285f4;background:var(--bg-primary, #ffffff)}[data-theme=dark] .quick-add-input{background:#ffffff0f;border-color:#ffffff1f;color:var(--text-primary)}[data-theme=dark] .quick-add-input:focus{border-color:#4285f4;background:#ffffff14}.quick-add-hints{display:flex;flex-direction:row;flex-wrap:wrap;gap:6px}.quick-add-hint-chip{background:none;border:1px solid var(--border-color, rgba(0,0,0,.12));border-radius:20px;padding:4px 10px;font-size:12px;color:var(--text-secondary);cursor:pointer;transition:background .15s,border-color .15s,color .15s;font-family:var(--font-body);white-space:nowrap}.quick-add-hint-chip:hover{background:#4285f414;border-color:#4285f459;color:#4285f4}[data-theme=dark] .quick-add-hint-chip{border-color:#ffffff24}.quick-add-error{font-size:13px;color:#ef4444;margin:0;padding:10px 12px;background:#ef444414;border-radius:8px}.quick-add-parse-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;border:none;border-radius:12px;background:linear-gradient(135deg,#4285f4,#a259ff,#0ec8a4);color:#fff;font-size:15px;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:opacity .15s,transform .15s}.quick-add-parse-btn:disabled{opacity:.5;cursor:not-allowed}.quick-add-parse-btn:not(:disabled):hover{opacity:.92;transform:translateY(-1px)}.quick-add-spinner{animation:qa-spin .8s linear infinite}@keyframes qa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.quick-add-confirm-card{border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:8px}.quick-add-confirm-card.income{background:#10b98114;border:1px solid rgba(16,185,129,.2)}.quick-add-confirm-card.expense{background:#ef444412;border:1px solid rgba(239,68,68,.18)}.quick-add-confirm-type{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.quick-add-confirm-card.income .quick-add-confirm-type{color:#10b981}.quick-add-confirm-card.expense .quick-add-confirm-type{color:#ef4444}.quick-add-confirm-amount{font-size:28px;font-weight:700;font-family:var(--font-data);color:var(--text-primary);line-height:1.1}.quick-add-confirm-meta{display:flex;flex-direction:column;gap:4px}.quick-add-confirm-category{display:inline-block;padding:2px 10px;border-radius:20px;font-size:12px;font-weight:500;width:fit-content}.quick-add-confirm-card.income .quick-add-confirm-category{background:#10b9811f;color:#10b981}.quick-add-confirm-card.expense .quick-add-confirm-category{background:#ef44441a;color:#ef4444}.quick-add-confirm-desc{font-size:14px;color:var(--text-primary)}.quick-add-confirm-date{font-size:12px;color:var(--text-secondary);font-family:var(--font-data)}.quick-add-confirm-actions{display:flex;gap:10px}.quick-add-edit-btn{display:flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;padding:13px 18px;border:1.5px solid var(--border-color, rgba(0,0,0,.12));border-radius:12px;background:none;color:var(--text-secondary);font-size:14px;font-family:var(--font-body);cursor:pointer;transition:background .15s}.quick-add-edit-btn:hover{background:var(--bg-secondary, rgba(0,0,0,.04))}.quick-add-confirm-btn{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;padding:14px;border:none;border-radius:12px;background:var(--primary, #10b981);color:#fff;font-size:15px;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:opacity .15s,transform .15s}.quick-add-confirm-btn:disabled{opacity:.6;cursor:not-allowed}.quick-add-confirm-btn:not(:disabled):hover{opacity:.9;transform:translateY(-1px)}.add-sheet-overlay{position:fixed;inset:0;background:#00000080;z-index:100;display:flex;align-items:flex-end;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.add-sheet-panel{background:var(--card-bg);border-radius:20px 20px 0 0;width:100%;max-width:500px;padding:24px 24px calc(24px + env(safe-area-inset-bottom));animation:sheetSlideUp .3s cubic-bezier(.34,1.56,.64,1)}@keyframes sheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.add-sheet-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.add-sheet-header h3{font-size:1.15rem;font-weight:700;color:var(--text-main);margin:0}.add-sheet-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background .15s}.add-sheet-close:hover{background:var(--bg-color)}.add-sheet-options{display:flex;flex-direction:column;gap:8px}.add-sheet-option{display:flex;align-items:center;gap:16px;padding:16px;border-radius:14px;border:1px solid var(--border-color);background:var(--bg-color);cursor:pointer;transition:all .15s;width:100%;text-align:left}.add-sheet-option:hover{border-color:var(--primary);background:var(--card-bg)}.add-sheet-option:active{transform:scale(.98)}.add-sheet-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.add-sheet-icon.green{background:#10b9811a;color:#10b981}.add-sheet-icon.orange{background:#f59e0b1a;color:#f59e0b}.add-sheet-icon.blue{background:#3b82f61a;color:#3b82f6}.add-sheet-text{display:flex;flex-direction:column;gap:2px}.add-sheet-label{font-size:.95rem;font-weight:600;color:var(--text-main)}.add-sheet-desc{font-size:.75rem;color:var(--text-muted)}[data-theme=dark] .add-sheet-overlay{background:#000000b3}.add-sheet-header-actions{display:flex;align-items:center;gap:8px}.add-sheet-mic-btn{width:36px;height:36px;border-radius:50%;border:none;background:#8b5cf61a;color:#8b5cf6;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.add-sheet-mic-btn:hover{background:#8b5cf633}.voice-modal-overlay{position:fixed;inset:0;background:#0009;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.voice-modal{background:var(--card-bg);border-radius:20px;width:100%;max-width:400px;box-shadow:0 20px 60px #0003;animation:onboardingSlideUp .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.voice-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color)}.voice-modal-header h3{margin:0;font-size:1.1rem;font-weight:700;color:var(--text-main)}.voice-modal-body{padding:24px;display:flex;flex-direction:column;align-items:center;gap:20px}.voice-mic-btn{width:80px;height:80px;border-radius:50%;border:none;background:var(--bg-color);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;position:relative}.voice-mic-btn.listening{background:#ef44441a;color:#f87171;animation:voicePulse 1.5s ease-in-out infinite}@keyframes voicePulse{0%,to{box-shadow:0 0 #ef44444d}50%{box-shadow:0 0 0 16px #ef444400}}.voice-mic-label{font-size:.8rem;color:var(--text-muted);font-weight:500}.voice-transcript{width:100%;text-align:center}.voice-transcript-label{font-size:.65rem;font-weight:700;letter-spacing:.5px;color:var(--text-muted)}.voice-transcript p{margin:6px 0 0;font-size:1rem;font-weight:600;color:var(--text-main);font-style:italic}.voice-error{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#ef444414;border:1px solid rgba(239,68,68,.15);border-radius:10px;font-size:.8rem;color:#f87171;width:100%}.voice-parsed{width:100%}.voice-parsed-label{font-size:.65rem;font-weight:700;letter-spacing:.5px;color:var(--text-muted);display:block;margin-bottom:8px}.voice-parsed-card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}.voice-parsed-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.voice-parsed-key{color:var(--text-muted);font-weight:500}.voice-parsed-badge{font-size:.7rem;font-weight:700;padding:3px 10px;border-radius:12px;text-transform:uppercase}.voice-parsed-badge.expense{background:#ef44441a;color:#f87171}.voice-parsed-badge.income{background:#10b9811a;color:#10b981}.voice-parsed-amount{font-family:var(--font-data);font-weight:700;color:var(--text-main)}.voice-modal-footer{padding:16px 24px;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;gap:12px}.voice-hint{font-size:.8rem;color:var(--text-muted);text-align:center;width:100%}.voice-btn-retry{display:flex;align-items:center;gap:6px;padding:10px 16px;border:1px solid var(--border-color);border-radius:10px;background:transparent;color:var(--text-muted);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.voice-btn-retry:hover{background:var(--bg-color)}.voice-btn-confirm{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:10px;background:var(--primary);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.voice-btn-confirm:hover{background:var(--primary-hover)}[data-theme=dark] .voice-modal-overlay{background:#000000bf}.ai-chat-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:flex-end;justify-content:center}.ai-chat-panel{width:100%;max-width:480px;height:75vh;background:var(--bg);border-radius:20px 20px 0 0;display:flex;flex-direction:column;animation:chatSlideUp .3s ease-out;overflow:hidden}@keyframes chatSlideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.ai-chat-drag-handle{width:36px;height:4px;background:var(--border-color);border-radius:2px;margin:8px auto 0;flex-shrink:0}.ai-chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;flex-shrink:0}.ai-chat-title{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:700;color:var(--text-main)}.ai-chat-sparkle{color:#8b5cf6}.ai-chat-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center}.ai-chat-close:hover{color:var(--text-main);background:var(--sidebar-link-hover)}.ai-chat-messages{flex:1;overflow-y:auto;padding:8px 16px 16px;display:flex;flex-direction:column;gap:10px}.ai-chat-bubble{max-width:85%;padding:10px 14px;border-radius:16px;font-size:.85rem;line-height:1.5;word-wrap:break-word}.ai-chat-bubble p{margin:0 0 4px}.ai-chat-bubble p:last-child{margin-bottom:0}.ai-msg{align-self:flex-start;background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-main);border-bottom-left-radius:4px}.user-msg{align-self:flex-end;background:var(--primary);color:#fff;border-bottom-right-radius:4px}.ai-tx-card{margin-top:8px;padding:12px;background:var(--bg);border:1px solid var(--border-color);border-radius:12px}.ai-tx-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.ai-tx-badge{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:2px 10px;border-radius:10px}.ai-tx-badge.expense{background:#ef44441a;color:#f87171}.ai-tx-badge.income{background:#10b9811a;color:var(--primary)}.ai-tx-amount{font-size:1.1rem;font-weight:700;font-family:var(--font-data);color:var(--text-main)}.ai-tx-detail{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.78rem;color:var(--text-muted);margin-bottom:10px}.ai-tx-desc{color:var(--text-main);font-weight:500}.ai-tx-date{font-family:var(--font-data)}.ai-tx-actions{display:flex;gap:8px}.ai-tx-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:8px;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.ai-tx-btn.primary{background:var(--primary);color:#fff}.ai-tx-btn.primary:hover{background:var(--primary-hover)}.ai-tx-btn.outline{background:transparent;border:1px solid var(--border-color);color:var(--text-main)}.ai-tx-btn.outline:hover{border-color:var(--primary);color:var(--primary)}.ai-tx-done-badge{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:.72rem;font-weight:600;color:var(--primary)}.ai-chat-typing{display:flex;gap:4px;padding:4px 0}.ai-chat-typing span{width:6px;height:6px;border-radius:50%;background:var(--text-muted);animation:typingDot 1.2s infinite}.ai-chat-typing span:nth-child(2){animation-delay:.2s}.ai-chat-typing span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.ai-chat-input-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;border-top:1px solid var(--border-color);background:var(--bg);flex-shrink:0}.ai-chat-input{flex:1;padding:10px 14px;border:1px solid var(--border-color);border-radius:24px;background:var(--card-bg);font-size:.85rem;color:var(--text-main);outline:none;transition:border-color .2s}.ai-chat-input::placeholder{color:var(--text-muted)}.ai-chat-input:focus{border-color:var(--primary)}.ai-chat-send-btn{width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0}.ai-chat-send-btn:hover{background:var(--primary-hover)}.ai-chat-mic-btn{width:40px;height:40px;border-radius:50%;background:#8b5cf6;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.ai-chat-mic-btn:hover{background:#7c3aed}.ai-chat-mic-btn.listening{animation:voicePulse 1.5s infinite}[data-theme=dark] .ai-chat-overlay{background:#000000b3}[data-theme=dark] .ai-chat-panel{background:var(--bg)}[data-theme=dark] .ai-tx-card{background:var(--card-bg);border-color:var(--border-color)}@media(min-width:768px){.ai-chat-overlay{align-items:center}.ai-chat-panel{height:70vh;max-height:700px;border-radius:20px;margin:0 16px}}.profile-dropdown-wrapper{position:relative;flex-shrink:0}.profile-dropdown-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);color:var(--text-main);font-family:var(--font-body);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.profile-dropdown-btn:hover{border-color:var(--primary);background:var(--primary-light)}.profile-dropdown-chevron{transition:transform .2s ease;color:var(--text-muted)}.profile-dropdown-chevron.open{transform:rotate(180deg)}.profile-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:180px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 8px 24px #0000001f;z-index:200;padding:4px;animation:fadeInUp .15s ease}.profile-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;border-radius:7px;background:transparent;color:var(--text-main);font-family:var(--font-body);font-size:.82rem;font-weight:500;cursor:pointer;transition:background .15s ease;text-align:left}.profile-dropdown-item:hover{background:#0000000a}.profile-dropdown-item.active{background:var(--primary-light);color:var(--primary);font-weight:600}.profile-dropdown-emoji{font-size:1rem}[data-theme=dark] .profile-dropdown-btn{background:var(--card-bg);border-color:var(--border-color)}[data-theme=dark] .profile-dropdown-btn:hover{border-color:var(--primary);background:#10b9811a}[data-theme=dark] .profile-dropdown-menu{background:var(--card-bg);border-color:var(--border-color);box-shadow:0 8px 24px #0000004d}[data-theme=dark] .profile-dropdown-item:hover{background:#ffffff0f}[data-theme=dark] .profile-dropdown-item.active{background:#10b98126;color:#6ee7b7}.dropdown-section-label{font-family:var(--font-body);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:8px 12px 4px}.dropdown-item-active{background:var(--primary-light)!important;color:var(--primary)!important;font-weight:600!important}[data-theme=dark] .dropdown-item-active{background:#10b98126!important;color:#6ee7b7!important}.mobile-profile-menu{right:0;left:auto}.chip-dropdown-wrapper{position:relative}.active-profile-chip{display:flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;background:none;transition:opacity .15s}.active-profile-chip:hover{opacity:.8}.chip-chevron{transition:transform .2s;flex-shrink:0}.chip-chevron.open{transform:rotate(180deg)}.chip-profile-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 8px 24px #0000001f;padding:6px;z-index:200;display:flex;flex-direction:column;gap:2px}.chip-dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-main);font-size:.85rem;font-weight:500;cursor:pointer;text-align:left;width:100%;transition:background .12s}.chip-dropdown-item:hover{background:var(--sidebar-link-hover)}.chip-dropdown-item.active{background:#10b9811a;color:var(--primary);font-weight:600}.chip-dropdown-emoji{font-size:1rem}.active-profile-chip .chip-emoji{font-size:13px;line-height:1}.active-profile-chip .chip-name{font-family:var(--font-body)}.chip-individual{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary)}.chip-all-profiles{background:#fb923c1f;border:1px solid rgba(251,146,60,.3);color:#c2410c}[data-theme=dark] .chip-individual{background:#ffffff0f;border-color:#ffffff1a;color:var(--text-muted)}[data-theme=dark] .chip-all-profiles{background:#fb923c26;border-color:#fb923c4d;color:#fb923c}.profile-strip-wrapper{position:relative;flex-shrink:0}.profile-context-strip{display:flex;align-items:center;gap:6px;padding:6px 16px;font-size:12px;font-weight:500;width:100%;text-align:left;font-family:inherit;border:none;border-radius:0;cursor:pointer;transition:filter .15s}.profile-context-strip:hover{filter:brightness(.97)}[data-theme=dark] .profile-context-strip:hover{filter:brightness(1.1)}.profile-context-strip .strip-emoji{font-size:13px;line-height:1}.profile-context-strip .strip-label{font-family:var(--font-body);font-weight:600}.profile-context-strip .strip-separator{opacity:.5}.profile-context-strip .strip-sub{font-family:var(--font-body);opacity:.8}.strip-chevron{margin-left:auto;opacity:.6;flex-shrink:0;transition:transform .2s ease}.strip-chevron.open{transform:rotate(180deg)}.strip-all-profiles{background:#fb923c14;border-bottom:1px solid rgba(251,146,60,.2);color:#c2410c}.strip-single-profile{background:var(--bg-hover);border-bottom:1px solid var(--border-color);color:var(--text-secondary)}[data-theme=dark] .strip-all-profiles{background:#fb923c1a;border-bottom-color:#fb923c33;color:#fb923c}[data-theme=dark] .strip-single-profile{background:#ffffff08;border-bottom-color:#ffffff12;color:var(--text-muted)}.strip-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--card-bg);border:1px solid var(--border-color);border-top:none;border-radius:0 0 12px 12px;box-shadow:0 8px 20px #0000001f;z-index:300;overflow:hidden}.strip-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:11px 16px;font-size:13px;font-weight:500;font-family:var(--font-body);color:var(--text-main);background:none;border:none;cursor:pointer;text-align:left;transition:background .15s}.strip-dropdown-item:hover{background:var(--bg-hover)}.strip-dropdown-item.active{color:var(--primary);font-weight:600;background:var(--primary-light)}.strip-dropdown-emoji{font-size:15px;line-height:1}[data-theme=dark] .strip-dropdown{background:var(--card-bg);border-color:var(--border-color);box-shadow:0 8px 24px #00000059}[data-theme=dark] .strip-dropdown-item:hover{background:#ffffff0f}[data-theme=dark] .strip-dropdown-item.active{background:#10b98126;color:#6ee7b7}@media(min-width:768px){.strip-single-profile{display:none}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:24px}.error-boundary-card{max-width:420px;width:100%;text-align:center;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:16px;padding:32px 24px;box-shadow:0 4px 24px #0000000f}.error-boundary-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#ef44441f;color:#ef4444;margin-bottom:16px}.error-boundary-title{font-family:var(--font-heading, inherit);font-size:1.25rem;margin:0 0 8px;color:var(--text-primary, #111827)}.error-boundary-message{font-size:.9rem;line-height:1.5;color:var(--text-muted, #6b7280);margin:0 0 20px}.error-boundary-detail{text-align:left;font-size:.75rem;background:#ef44440f;border:1px solid rgba(239,68,68,.2);border-radius:8px;padding:10px 12px;margin:0 0 20px;color:#ef4444;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.error-boundary-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.error-boundary-btn-primary,.error-boundary-btn-secondary{font-family:var(--font-body, inherit);font-size:.9rem;font-weight:600;padding:10px 20px;border-radius:10px;cursor:pointer;min-height:44px;border:1px solid transparent;transition:background .15s ease,border-color .15s ease}.error-boundary-btn-primary{background:var(--primary, #10b981);color:#fff}.error-boundary-btn-primary:hover{background:var(--primary-dark, #059669)}.error-boundary-btn-secondary{background:transparent;color:var(--text-primary, #111827);border-color:var(--border-color, #e5e7eb)}.error-boundary-btn-secondary:hover{background:var(--hover-bg, #f3f4f6)}[data-theme=dark] .error-boundary-card{background:var(--card-bg, #1f2937);border-color:var(--border-color, #374151);box-shadow:0 4px 24px #0000004d}[data-theme=dark] .error-boundary-btn-secondary{color:var(--text-primary, #f9fafb)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f0fdf4,#ecfdf5,#f8fafc);padding:20px}[data-theme=dark] .login-page{background:linear-gradient(135deg,#022c22,#064e3b,#111827)}.login-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;box-shadow:0 20px 60px #00000014;padding:40px 36px;width:100%;max-width:420px}.login-header{text-align:center;margin-bottom:28px}.login-logo{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 auto 16px}.login-logo-badge{width:48px;height:48px;background-color:var(--primary);border-radius:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 12px #10b98140}.login-logo-monogram{font-family:Cormorant Garamond,serif;font-weight:700;font-size:24px;color:#fff;letter-spacing:-.05em;line-height:1}.login-logo-wordmark{font-family:Cormorant Garamond,serif;font-size:28px;font-weight:600;letter-spacing:-.025em;line-height:1}.login-logo-flow{color:var(--primary)}.login-logo-track{color:var(--text-main)}[data-theme=dark] .login-logo-track{color:#f3f4f6}.login-header h1{font-family:var(--font-heading);font-size:1.6rem;font-weight:700;color:var(--text-main);margin:0 0 6px}.login-subtitle{font-size:.9rem;color:var(--text-muted);margin:0;line-height:1.5}.btn-google{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--card-bg);color:var(--text-main);font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background-color .2s,box-shadow .2s}.btn-google:hover{background-color:var(--sidebar-link-hover, #f9fafb);box-shadow:0 2px 8px #0000000f}.login-divider{display:flex;align-items:center;gap:12px;margin:24px 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background-color:var(--border-color)}.login-divider span{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.login-form{display:flex;flex-direction:column;gap:16px}.login-field{display:flex;flex-direction:column;gap:6px}.login-field label{font-size:.82rem;font-weight:600;color:var(--text-main)}.login-field input{width:100%;padding:10px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.9rem;font-family:inherit;color:var(--text-main);background-color:var(--card-bg);outline:none;transition:border-color .2s;box-sizing:border-box}.login-field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #10b98114}.login-field input::placeholder{color:var(--text-muted)}.forgot-password-link{background:none;border:none;color:var(--primary);font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;padding:0;align-self:flex-end;margin-top:2px}.forgot-password-link:hover{text-decoration:underline}.login-error{color:#f87171;font-size:.82rem;margin:0;padding:8px 12px;background:#fef2f2;border-radius:var(--radius-md)}[data-theme=dark] .login-error{background:#ef44441a}.login-success{color:var(--primary);font-size:.82rem;margin:0;padding:8px 12px;background:#f0fdf4;border-radius:var(--radius-md)}[data-theme=dark] .login-success{background:#10b9811a}.btn-login{width:100%;padding:12px 16px;background-color:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background-color .2s,transform .1s}.btn-login:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-1px)}.btn-login:disabled{opacity:.6;cursor:not-allowed}.login-toggle{text-align:center;font-size:.85rem;color:var(--text-muted);margin:24px 0 0}.btn-switch{background:none;border:none;color:var(--primary);font-weight:600;cursor:pointer;font-size:.85rem;font-family:inherit;padding:0;margin-left:4px}.btn-switch:hover{text-decoration:underline}.login-legal{text-align:center;font-size:.75rem;color:var(--text-muted);margin:16px 0 0;line-height:1.6}.login-legal a{color:var(--text-muted);text-decoration:underline;text-underline-offset:2px}.login-legal a:hover{color:var(--primary)}@media(max-width:480px){.login-card{padding:32px 24px;border-radius:16px}}.oj-container{position:fixed;inset:0;z-index:2000;background:var(--bg-color);overflow:hidden;display:flex;flex-direction:column}.oj-track{display:flex;width:500%;flex:1;transition:transform .5s cubic-bezier(.4,0,.2,1)}.oj-screen{width:20%;height:100%;overflow-y:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;position:relative}.oj-screen-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:480px;flex:1;gap:24px}.oj-dots{display:flex;justify-content:center;gap:8px;padding:20px 0;padding-bottom:max(20px,env(safe-area-inset-bottom));flex-shrink:0}.oj-dot{width:8px;height:8px;border-radius:50%;background:var(--border-color);transition:all .3s ease}.oj-dot.active{background:var(--primary);width:24px;border-radius:4px}.oj-screen-welcome{background:linear-gradient(135deg,#10b981,#059669);position:relative}.oj-screen-welcome:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.oj-welcome-icon{width:72px;height:72px;border-radius:20px;background:#fff3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;color:#fff;animation:ojPulse 2s ease-in-out infinite}@keyframes ojPulse{0%,to{transform:scale(1);box-shadow:0 0 #ffffff4d}50%{transform:scale(1.05);box-shadow:0 0 20px 4px #ffffff26}}.oj-welcome-title{font-size:clamp(1.75rem,5vw,2.5rem);font-weight:800;color:#fff;text-align:center;line-height:1.2;margin:0}.oj-welcome-subtitle{font-size:clamp(.95rem,2.5vw,1.1rem);color:#ffffffd9;text-align:center;line-height:1.6;margin:0;max-width:360px}.oj-currency-group{width:100%;max-width:320px}.oj-currency-label{font-size:.8rem;font-weight:600;color:#fffc;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;display:block}.oj-currency-select{width:100%;padding:14px 44px 14px 16px;border:1px solid rgba(255,255,255,.3);border-radius:12px;font-size:1rem;color:#fff;background:#ffffff26;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);appearance:none;-webkit-appearance:none;cursor:pointer;transition:border-color .2s,background .2s;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.oj-currency-select:focus{outline:none;border-color:#fff9;background:#fff3}.oj-currency-select option{color:var(--text-main);background:var(--card-bg)}.oj-btn-primary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;max-width:320px;padding:16px 32px;border:none;border-radius:14px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:transform .15s,box-shadow .2s,background .2s;font-family:var(--font-body)}.oj-btn-primary:active{transform:scale(.97)}.oj-btn-white{background:#fff;color:#059669;box-shadow:0 4px 16px #0000001a}.oj-btn-white:hover{background:#f0fdf4;box-shadow:0 6px 20px #00000026}.oj-btn-green{background:var(--primary);color:#fff;box-shadow:0 4px 16px #10b9814d}.oj-btn-green:hover{background:var(--primary-hover);box-shadow:0 6px 20px #10b98166}.oj-btn-back{position:absolute;top:20px;left:20px;display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-muted);font-size:.9rem;font-weight:500;cursor:pointer;padding:8px 12px;border-radius:8px;transition:background .2s,color .2s;font-family:var(--font-body);z-index:1}.oj-btn-back:hover{background:#0000000d;color:var(--text-main)}.oj-btn-back-light{color:#ffffffb3}.oj-btn-back-light:hover{background:#ffffff1a;color:#fff}.oj-info-title{font-size:clamp(1.35rem,4vw,1.75rem);font-weight:700;color:var(--text-main);text-align:center;margin:0;line-height:1.3}.oj-info-subtitle{font-size:clamp(.9rem,2.5vw,1rem);color:var(--text-muted);text-align:center;line-height:1.6;margin:0;max-width:360px}.oj-preview-card{width:100%;max-width:360px;border-radius:20px;padding:clamp(20px,3vw,28px);position:relative;overflow:hidden;color:#fff}.oj-preview-card:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.oj-preview-card-green{background:linear-gradient(135deg,#10b981,#059669)}.oj-preview-card-red{background:linear-gradient(135deg,#991b1b,#dc2626)}.oj-preview-card-title{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;opacity:.85;margin-bottom:12px;position:relative}.oj-mockup-pie-container{display:flex;align-items:center;gap:20px;position:relative}.oj-mockup-pie{width:100px;height:100px;border-radius:50%;background:conic-gradient(#3b82f6 0deg 162deg,#10b981 162deg 252deg,#f59e0b 252deg 306deg,#8b5cf6 306deg 360deg);position:relative;flex-shrink:0}.oj-mockup-pie:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669)}.oj-mockup-pie-legend{display:flex;flex-direction:column;gap:6px}.oj-mockup-legend-item{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:500;opacity:.9}.oj-mockup-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.oj-mockup-debts{display:flex;flex-direction:column;gap:14px;position:relative}.oj-mockup-debt-item{display:flex;flex-direction:column;gap:6px}.oj-mockup-debt-label{display:flex;justify-content:space-between;font-size:.8rem;font-weight:500;opacity:.9}.oj-mockup-debt-bar{width:100%;height:8px;background:#fff3;border-radius:4px;overflow:hidden}.oj-mockup-debt-fill{height:100%;background:#fff;border-radius:4px;transition:width .8s ease-out}.oj-icon-row{display:flex;gap:16px;justify-content:center}.oj-icon-badge{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--primary-light);color:var(--primary);transition:transform .2s}.oj-icon-badge:hover{transform:scale(1.1)}.oj-icon-badge-red{background:#fef2f2;color:#dc2626}.oj-form-card{width:100%;max-width:400px;background:var(--card-bg);border-radius:20px;padding:clamp(20px,3vw,28px);border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.oj-form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.oj-form-group:last-child{margin-bottom:0}.oj-form-label{font-size:.8rem;font-weight:600;color:var(--text-main);text-transform:uppercase;letter-spacing:.5px}.oj-form-input{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:10px;font-size:1rem;color:var(--text-main);background:var(--bg-color);transition:border-color .2s,box-shadow .2s;box-sizing:border-box;font-family:var(--font-body)}.oj-form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #10b9811a}.oj-form-input::placeholder{color:var(--text-muted);opacity:.6}.oj-input-with-prefix{position:relative;display:flex;align-items:center}.oj-currency-prefix{position:absolute;left:16px;color:var(--text-muted);font-weight:600;font-family:var(--font-data);pointer-events:none;z-index:1}.oj-input-with-prefix .oj-form-input{padding-left:36px;font-family:var(--font-data)}.oj-savings-badge{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:12px;margin-top:8px;font-size:.9rem;font-weight:600;font-family:var(--font-data);animation:ojFadeIn .3s ease}@keyframes ojFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.oj-savings-badge-good{background:#ecfdf5;color:#059669}.oj-savings-badge-ok{background:#fffbeb;color:#d97706}.oj-savings-badge-low{background:#fef2f2;color:#dc2626}.oj-screen-celebration{background:linear-gradient(135deg,#10b981,#06b6d4);position:relative;overflow:hidden}.oj-screen-celebration:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.oj-celebration-title{font-size:clamp(1.75rem,5vw,2.5rem);font-weight:800;color:#fff;text-align:center;margin:0;line-height:1.2}.oj-celebration-subtitle{font-size:clamp(.95rem,2.5vw,1.1rem);color:#ffffffd9;text-align:center;line-height:1.6;margin:0;max-width:360px}.oj-summary-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.oj-summary-badge{display:flex;align-items:center;gap:6px;padding:10px 16px;border-radius:12px;background:#fff3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;font-size:.85rem;font-weight:600}.oj-feature-tiles{display:flex;gap:12px;width:100%;max-width:400px}.oj-feature-tile{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;border-radius:16px;background:#ffffff26;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:center}.oj-feature-tile-icon{width:40px;height:40px;border-radius:12px;background:#fff3;display:flex;align-items:center;justify-content:center;color:#fff}.oj-feature-tile-label{font-size:.75rem;font-weight:600;color:#ffffffe6;line-height:1.3}.oj-confetti-container{position:absolute;inset:0;pointer-events:none;overflow:hidden}.oj-confetti-piece{position:absolute;width:8px;height:8px;border-radius:2px;opacity:0;animation:ojConfettiFall 3.5s ease-in-out forwards}@keyframes ojConfettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}80%{opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.oj-dots-light .oj-dot{background:#ffffff4d}.oj-dots-light .oj-dot.active{background:#fff}[data-theme=dark] .oj-icon-badge{background:#10b98126}[data-theme=dark] .oj-icon-badge-red{background:#dc262626}[data-theme=dark] .oj-form-card{background:var(--card-bg);border-color:var(--border-color)}[data-theme=dark] .oj-form-input{background:var(--input-bg);border-color:var(--border-color)}[data-theme=dark] .oj-savings-badge-good{background:#10b98126;color:#34d399}[data-theme=dark] .oj-savings-badge-ok{background:#d9770626;color:#fbbf24}[data-theme=dark] .oj-savings-badge-low{background:#dc262626;color:#f87171}[data-theme=dark] .oj-btn-back:hover{background:#ffffff0d}@media(min-width:768px){.oj-screen{padding:40px 32px}.oj-mockup-pie{width:120px;height:120px}.oj-mockup-pie:after{width:64px;height:64px}.oj-feature-tiles{max-width:480px}}@media(min-width:1024px){.oj-screen{padding:48px 40px}.oj-welcome-icon{width:80px;height:80px;border-radius:22px}.oj-feature-tile{padding:20px 16px}}.lock-screen{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-color, #0f1117);padding:24px;gap:24px}.lock-header{display:flex;flex-direction:column;align-items:center;gap:8px}.lock-logo{width:56px;height:56px;border-radius:16px;background:var(--primary);display:flex;align-items:center;justify-content:center;margin-bottom:8px}.lock-logo-text{font-size:1.2rem;font-weight:800;color:#fff;font-family:var(--font-body)}.lock-title{font-size:1.4rem;font-weight:700;color:var(--text-main);margin:0}.lock-subtitle{font-size:.9rem;color:var(--text-muted);margin:0}.lock-dots{display:flex;gap:16px;padding:16px 0}.lock-dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--text-muted);background:transparent;transition:all .15s ease}.lock-dot.filled{background:var(--primary);border-color:var(--primary)}.lock-dots.shake{animation:lock-shake .4s ease}@keyframes lock-shake{0%,to{transform:translate(0)}20%{transform:translate(-12px)}40%{transform:translate(12px)}60%{transform:translate(-8px)}80%{transform:translate(8px)}}.lock-error{color:#f87171;font-size:.85rem;font-weight:500;margin:0;min-height:20px}.lock-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:280px;width:100%}.lock-key{width:100%;aspect-ratio:1.4;max-height:64px;border-radius:14px;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-main);font-size:1.4rem;font-weight:600;font-family:var(--font-data);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;min-height:56px}.lock-key:active{background:var(--primary);color:#fff;border-color:var(--primary);transform:scale(.95)}.lock-key-action{color:var(--text-muted);background:transparent;border-color:transparent}.lock-key-action:active{background:#ef44441a;color:#f87171;border-color:transparent}.lock-forgot-btn{background:none;border:none;color:var(--text-muted);font-size:.85rem;font-weight:500;cursor:pointer;padding:8px 16px;margin-top:8px}.lock-forgot-btn:hover{color:var(--primary);text-decoration:underline}[data-theme=light] .lock-screen{background:var(--bg-color, #f8fafc)}[data-theme=light] .lock-key{background:#fff;border-color:#e2e8f0}[data-theme=light] .lock-key:active{background:var(--primary);color:#fff}
