body{font-family:Inter,sans-serif;background:#06060a;color:#fff;min-height:100vh;min-height:100dvh;overflow-x:hidden;-webkit-text-size-adjust:100%;--accent: #10b981;--accent-dark: #059669;--accent-alt: #06b6d4;--accent-shadow: rgba(16, 185, 129, .3);--accent-glow: rgba(16, 185, 129, .15)}#bgCanvas{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}body:has(.auth-container){display:block!important}body:has(.auth-container) #root{width:100%;min-height:100vh}.btn-kid-signin{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin-top:14px;padding:14px;border-radius:12px;background:linear-gradient(135deg,#f59e0b,#ec4899);color:#fff;font-weight:700;font-size:.95rem;text-decoration:none;box-shadow:0 6px 16px #f59e0b4d;transition:transform .15s ease,box-shadow .2s ease}.btn-kid-signin:hover{transform:translateY(-1px);box-shadow:0 10px 24px #f59e0b66}.btn-kid-signin:active{transform:translateY(0)}.btn-kid-signin-sub{display:block;font-weight:500;font-size:.78rem;opacity:.9;margin-top:2px}.auth-container{display:flex;min-height:100vh;min-height:100dvh;position:relative;z-index:1}.auth-left{flex:1;display:flex;flex-direction:column;justify-content:center;padding:60px 60px 60px 80px;position:relative}.auth-left:after{content:"";position:absolute;top:20%;left:10%;width:300px;height:300px;background:radial-gradient(circle,rgba(16,185,129,.08),transparent 70%);filter:blur(60px);pointer-events:none}.brand{display:flex;align-items:center;gap:12px;margin-bottom:50px}.brand-icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent-dark));display:flex;align-items:center;justify-content:center}.brand h1{font-size:1.4rem;font-weight:700;letter-spacing:-.3px}.auth-left h2{font-size:3.2rem;font-weight:800;line-height:1.15;letter-spacing:-1.5px;margin-bottom:20px}.gradient-text{background:linear-gradient(135deg,var(--accent),var(--accent-alt));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-sub{color:#ffffff73;font-size:1.05rem;line-height:1.7;max-width:440px;margin-bottom:40px}.features-list{display:flex;flex-direction:column;gap:14px}.feature-item{display:flex;align-items:center;gap:12px;color:#ffffff8c;font-size:.9rem}.feature-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0}.auth-right{width:480px;display:flex;align-items:center;justify-content:center;padding:40px}.auth-card{width:100%;max-width:400px;background:#ffffff08;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.06);border-radius:24px;padding:36px 32px}.auth-tabs{display:flex;gap:4px;background:#ffffff0a;border-radius:12px;padding:4px;margin-bottom:28px}.tab-btn{flex:1;padding:10px;border:none;background:transparent;color:#fff6;font-family:Inter,sans-serif;font-size:.9rem;font-weight:600;border-radius:10px;cursor:pointer;transition:all .3s}.tab-btn.active{background:var(--accent-glow);color:var(--accent)}.auth-form.hidden,.field.hidden{display:none}.field{margin-bottom:18px}.field label{display:block;font-size:.78rem;color:#fff6;margin-bottom:6px;font-weight:500;text-transform:uppercase;letter-spacing:.8px}.field input{width:100%;padding:12px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#fff;font-family:Inter,sans-serif;font-size:.9rem;outline:none;transition:all .3s}.field input::placeholder{color:#fff3}.field input:focus,.field select:focus{border-color:var(--accent);background:#ffffff0a;box-shadow:0 0 0 4px var(--accent-glow)}.auth-select{width:100%;padding:12px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#fff;font-family:Inter,sans-serif;font-size:.9rem;outline:none;transition:all .3s;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23888' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.auth-select option{background:#1a1a2e;color:#fff}.btn-primary{width:100%;padding:14px;background:linear-gradient(135deg,var(--accent),var(--accent-dark));border:none;border-radius:12px;color:#fff;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s;margin-top:4px}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px var(--accent-shadow)}.btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.auth-error{color:#ef4444;font-size:.82rem;margin-top:12px;min-height:20px}.password-wrap{position:relative}.password-wrap input{padding-right:44px}.toggle-pw{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:#ffffff4d;cursor:pointer;padding:4px;display:flex;align-items:center;transition:color .2s}.toggle-pw:hover{color:#fff9}.toggle-pw .eye-closed,.toggle-pw.showing .eye-open{display:none}.toggle-pw.showing .eye-closed{display:block}.forgot-link{text-align:center;margin-top:14px;font-size:.82rem}.forgot-link a{color:#fff6;text-decoration:none;transition:color .2s}.forgot-link a:hover{color:var(--accent)}.forgot-desc{color:#ffffff73;font-size:.88rem;line-height:1.6;margin-bottom:20px}.divider{display:flex;align-items:center;gap:16px;margin:24px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:#ffffff14}.divider span{color:#ffffff40;font-size:.8rem}.btn-google{width:100%;padding:13px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .3s}.btn-google:hover{background:#ffffff14;border-color:#fff3}@media (max-width: 900px){.auth-container{flex-direction:column}.auth-left{padding:40px 24px 20px;text-align:center;align-items:center}.auth-left h2{font-size:2.2rem}.hero-sub{font-size:.9rem;margin-bottom:20px}.features-list{display:none}.auth-right{width:100%;padding:0 24px 40px}.auth-card{max-width:100%}}@media (max-width: 480px){.auth-left{padding:30px 16px 16px}.brand{margin-bottom:24px}.auth-left h2{font-size:1.8rem}.hero-sub{font-size:.82rem;margin-bottom:12px}.auth-right{padding:0 16px 30px}.auth-card{padding:28px 20px;border-radius:20px}.field input{padding:11px 14px;font-size:16px}.btn-primary{padding:13px;font-size:.9rem}.btn-google{padding:12px;font-size:.85rem}}@media (max-width: 390px){.auth-left{padding:24px 14px 12px}.brand{margin-bottom:18px}.brand-icon{width:40px;height:40px;border-radius:12px}.brand h1{font-size:1.2rem}.auth-left h2{font-size:1.5rem;letter-spacing:-1px}.hero-sub{font-size:.78rem;margin-bottom:8px}.auth-right{padding:0 12px 24px}.auth-card{padding:24px 16px;border-radius:18px}.auth-tabs{margin-bottom:22px}.tab-btn{padding:9px;font-size:.82rem}.field{margin-bottom:14px}.divider{margin:18px 0}.account-type-toggle{flex-direction:column;border-radius:10px}.type-btn{padding:12px 16px;font-size:.82rem}}@media (max-width: 320px){.auth-left h2{font-size:1.3rem}.auth-card{padding:20px 14px}.type-btn{font-size:.78rem;padding:10px 14px}}.account-type-toggle{display:flex;flex-wrap:wrap;gap:4px;background:#ffffff0a;border-radius:12px;padding:4px}.type-desc{font-size:.75rem;color:#ffffff59;margin-top:8px;line-height:1.5;transition:color .3s}.type-btn{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 16px;white-space:nowrap;border:none;border-radius:10px;background:transparent;color:#ffffff59;font-size:.85rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .25s}.type-btn:hover{color:#fff9}.pro-tag{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:8px;font-weight:800;padding:2px 5px;border-radius:4px;letter-spacing:.5px;line-height:1}.type-btn.active[data-type=personal]{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 12px #10b9814d}.type-btn.active[data-type=business]{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f64d}.type-btn.active[data-type=family]{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 4px 12px #8b5cf64d}.type-btn svg{flex-shrink:0}:root{--accent: #10b981;--accent-rgb: 16, 185, 129}body.business-mode{--accent: #3b82f6;--accent-rgb: 59, 130, 246}body.family-mode{--accent: #8b5cf6;--accent-rgb: 139, 92, 246}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#06060a;display:flex;align-items:center;justify-content:center;z-index:10000;transition:opacity .4s}.loading-overlay.hidden{opacity:0;pointer-events:none}.loading-spinner{width:40px;height:40px;border:3px solid rgba(var(--accent-rgb),.15);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}body{font-family:Inter,sans-serif;background:#06060a;color:#fff;min-height:100vh;min-height:100dvh;display:flex;-webkit-text-size-adjust:100%;overflow-x:hidden}#root{flex:1;min-width:0;width:100%;min-height:100vh;min-height:100dvh}html.light-early body{background:linear-gradient(135deg,#f0fdf4,#ecfdf5 30%,#f5f3ff 70%,#eff6ff);color:#1a1a2e}body:before{content:"";position:fixed;top:-30%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgba(var(--accent-rgb),.06),transparent 70%);filter:blur(80px);pointer-events:none;z-index:0}body:after{content:"";position:fixed;bottom:-20%;left:10%;width:500px;height:500px;background:radial-gradient(circle,rgba(59,130,246,.04),transparent 70%);filter:blur(80px);pointer-events:none;z-index:0}.sidebar{width:260px;height:100vh;position:fixed;left:0;top:0;background:#ffffff04;border-right:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;padding:28px 16px;z-index:50;transition:transform .3s;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:0 14px;margin-bottom:16px;color:var(--accent);font-weight:700;font-size:1.15rem;letter-spacing:-.3px}.mode-dropdown{position:relative;margin:0 14px 24px}.mode-dropdown-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff0a;color:#fff;font-size:.85rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s}.mode-dropdown-btn:hover{background:#ffffff12;border-color:rgba(var(--accent-rgb),.3)}.mode-dropdown-selected{display:flex;align-items:center;gap:10px}.mode-dropdown-selected svg{color:var(--accent)}.mode-chevron{color:#ffffff4d;transition:transform .2s}.mode-dropdown.open .mode-chevron{transform:rotate(180deg)}.mode-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#16161e;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:6px;z-index:100;opacity:0;transform:translateY(-8px);pointer-events:none;transition:all .2s ease;box-shadow:0 12px 40px #00000080}.mode-dropdown.open .mode-dropdown-menu{opacity:1;transform:translateY(0);pointer-events:all}.mode-option{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:#fff9;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s}.mode-option:hover{background:#ffffff0f;color:#fff}.mode-option.active{color:var(--accent)}.mode-option .mode-check{margin-left:auto;opacity:0;color:var(--accent)}.mode-option.active .mode-check{opacity:1}.beta-badge{font-size:9px;font-weight:700;letter-spacing:.5px;background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff;padding:1px 6px;border-radius:4px;margin-left:6px;line-height:1.4}.pro-mode-tag{font-size:8px;font-weight:800;letter-spacing:.5px;background:linear-gradient(135deg,#10b981,#06b6d4);color:#fff;padding:1px 5px;border-radius:3px;margin-left:4px;line-height:1.4}body.light .mode-dropdown-btn{background:#0000000a;border-color:#00000014;color:#1a1a2e}body.light .mode-dropdown-btn:hover{background:#00000012}body.light .mode-chevron{color:#0000004d}body.light .mode-dropdown-menu{background:#fff;border-color:#00000014;box-shadow:0 12px 40px #00000026}body.light .mode-option{color:#0000008c}body.light .mode-option:hover{background:#0000000a;color:#1a1a2e}body.light .mode-option.active{color:var(--accent)}.mode-transition{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#06060a;opacity:0;pointer-events:none;transition:opacity .3s ease}.mode-transition.active{opacity:1;pointer-events:all}.mode-transition-content{display:flex;flex-direction:column;align-items:center;gap:16px;animation:modeTransPulse .6s ease}.mode-transition-icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center}.mode-transition-icon.personal{background:linear-gradient(135deg,#10b981,#059669)}.mode-transition-icon.business{background:linear-gradient(135deg,#3b82f6,#2563eb)}.mode-transition-icon svg{width:28px;height:28px}.mode-transition-label{font-size:.85rem;font-weight:600;color:#fff9;letter-spacing:1px;text-transform:uppercase}@keyframes modeTransPulse{0%{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.business-setup-modal{text-align:center}.business-setup-icon{width:64px;height:64px;border-radius:18px;background:#3b82f61f;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.business-setup-modal h2{color:#3b82f6}.business-setup-modal .field{text-align:left}.business-setup-modal .field input:focus,.business-setup-modal .field select:focus{border-color:#3b82f680;box-shadow:0 0 0 4px #3b82f614;background:#3b82f608}.biz-cancel-btn{background:none;border:none;color:#ffffff59;font-size:.85rem;font-family:inherit;cursor:pointer;margin-top:16px;padding:8px 20px;transition:color .2s}.biz-cancel-btn:hover{color:#fff9}body.light .business-setup-icon{background:#3b82f614}body.light .biz-cancel-btn{color:#00000059}body.light .biz-cancel-btn:hover{color:#0009}body.light .business-setup-modal .field input:focus,body.light .business-setup-modal .field select:focus{border-color:#3b82f680;box-shadow:0 0 0 4px #3b82f61a,0 1px 3px #0000000a}body.light .mode-transition{background:#f8fafc}body.light .mode-transition-label{color:#00000080}.sidebar-nav{list-style:none;flex:1;display:flex;flex-direction:column;gap:4px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;color:#ffffff59;cursor:pointer;transition:all .2s;font-size:.88rem;font-weight:500;text-decoration:none}.nav-item:hover{background:#ffffff0a;color:#ffffffb3}.nav-item.active{background:rgba(var(--accent-rgb),.1);color:var(--accent);box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.15)}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;padding:14px;border-top:1px solid rgba(255,255,255,.05);margin-top:8px}.user-info{display:flex;align-items:center;gap:10px;min-width:0}.user-avatar{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent),#000 20%));display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;flex-shrink:0}.user-info span{font-size:.82rem;color:#ffffff73;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-logout{background:none;border:none;color:#fff3;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s}.btn-logout:hover{background:#ef44441a;color:#ef4444}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:calc(56px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px);background:#06060af2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.05);align-items:center;padding-left:16px;padding-right:16px;gap:12px;z-index:40}.menu-toggle{background:none;border:none;color:#fff;cursor:pointer;padding:4px}.mobile-brand{font-weight:700;color:var(--accent)}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:45}.sidebar-overlay.active{display:block}.main-content{margin-left:260px;flex:1;padding:36px 40px;min-height:100vh;position:relative;z-index:1;opacity:0;transition:opacity .4s ease}.main-content.loaded{opacity:1}.page{display:none;animation:fadeIn .5s ease}.page.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:32px;flex-wrap:wrap;gap:16px}.page-header h1{font-size:2rem;font-weight:800;letter-spacing:-.8px;background:linear-gradient(135deg,#fff,#ffffffb3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-subtitle{color:#ffffff4d;font-size:.85rem;margin-top:6px}.header-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn-add{display:flex;align-items:center;gap:8px;padding:11px 22px;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent),#000 20%));border:none;border-radius:12px;color:#fff;font-family:Inter,sans-serif;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .25s;position:relative;overflow:hidden;box-shadow:0 4px 15px rgba(var(--accent-rgb),.2)}.btn-add:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,.15),transparent);transform:translate(-100%);transition:transform .5s}.btn-add:hover:before{transform:translate(100%)}.btn-add:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(var(--accent-rgb),.35)}.btn-add:active{transform:translateY(0)}.month-filter{padding:10px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#fff;font-family:Inter,sans-serif;font-size:.85rem;outline:none;transition:border-color .3s}.month-filter:focus{border-color:rgba(var(--accent-rgb),.4)}.month-filter option{background:#12121a;color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}.stat-card{background:#ffffff06;border:1px solid rgba(255,255,255,.05);border-radius:18px;padding:22px;display:flex;align-items:flex-start;gap:16px;transition:all .3s;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent)}.stat-card:hover{border-color:#ffffff1a;transform:translateY(-2px);box-shadow:0 8px 30px #0000004d}.stat-icon{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-green{background:rgba(var(--accent-rgb),.1);color:var(--accent);box-shadow:0 0 20px rgba(var(--accent-rgb),.08)}.stat-red{background:#ef44441a;color:#ef4444;box-shadow:0 0 20px #ef444414}.stat-blue{background:#3b82f61a;color:#3b82f6;box-shadow:0 0 20px #3b82f614}.stat-purple{background:#8b5cf61a;color:#8b5cf6;box-shadow:0 0 20px #8b5cf614}.stat-info{display:flex;flex-direction:column;gap:6px;min-width:0}.stat-label{font-size:.72rem;color:#ffffff4d;text-transform:uppercase;letter-spacing:.8px;font-weight:600}.stat-value{font-size:1.35rem;font-weight:800;letter-spacing:-.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.chart-card{background:#ffffff06;border:1px solid rgba(255,255,255,.05);border-radius:18px;padding:26px;margin-bottom:16px;transition:border-color .3s;position:relative;overflow:hidden}.chart-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent)}.chart-card:hover{border-color:#ffffff14}.chart-card.full-width{margin-bottom:16px}.chart-card h3{font-size:.95rem;font-weight:600;margin-bottom:20px;color:#ffffffa6;letter-spacing:-.2px}.chart-subtitle{color:#ffffff40;font-size:.8rem;margin-top:-12px;margin-bottom:16px}.chart-container{position:relative;height:280px}.chart-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff3;pointer-events:none}.chart-empty p{font-size:.82rem;font-weight:500}.chart-empty.hidden{display:none}body.light .chart-empty{color:#0003}.chart-wide{height:320px}.savings-progress-bar{padding:10px 0}.progress-track{width:100%;height:14px;background:#ffffff0a;border-radius:7px;overflow:hidden;margin-bottom:12px;border:1px solid rgba(255,255,255,.03)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),#06b6d4,#3b82f6);background-size:200%;border-radius:7px;width:0%;transition:width 1.8s cubic-bezier(.4,0,.2,1);animation:progressShimmer 3s ease-in-out infinite;box-shadow:0 0 15px rgba(var(--accent-rgb),.3)}@keyframes progressShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.progress-labels{display:flex;justify-content:space-between;font-size:.82rem;color:#fff6;font-weight:500}.table-wrap{overflow-x:auto}.expense-table{width:100%;border-collapse:collapse}.expense-table th{text-align:left;padding:12px 16px;font-size:.72rem;color:#ffffff40;text-transform:uppercase;letter-spacing:.8px;border-bottom:1px solid rgba(255,255,255,.05);font-weight:600}.expense-table td{padding:16px;font-size:.88rem;border-bottom:1px solid rgba(255,255,255,.03);color:#fff9}.expense-table tr{transition:background .2s}.expense-table tr:hover td{background:#ffffff05}.category-badge{display:inline-block;padding:5px 12px;border-radius:8px;font-size:.75rem;font-weight:600;letter-spacing:.2px}.btn-delete{background:none;border:none;color:#ffffff26;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s}.btn-delete:hover{background:#ef44441a;color:#ef4444}.empty-state{text-align:center;color:#fff3;padding:50px 20px;font-size:.9rem;font-weight:400}.empty-state.hidden{display:none}body.modal-open{overflow:hidden;position:fixed;width:100%}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000a6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:500;padding:40px 20px;overflow-y:auto}.modal-overlay.hidden{display:none}.modal{background:#111118;border:1px solid rgba(255,255,255,.07);border-radius:22px;padding:36px 32px;width:100%;max-width:440px;max-height:calc(100vh - 80px);overflow-y:auto;animation:modalIn .35s cubic-bezier(.4,0,.2,1);box-shadow:0 25px 60px #00000080}@keyframes modalIn{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.modal h2{font-size:1.3rem;font-weight:700;letter-spacing:-.3px;margin-bottom:8px}.modal p,.modal-desc{color:#ffffff59;font-size:.85rem;margin-bottom:24px;line-height:1.5}.modal-close{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);color:#fff6;font-size:1.3rem;cursor:pointer;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;transition:all .2s}.modal-close:hover{background:#ffffff14;color:#fff}.modal .field{margin-bottom:16px}.modal .field label{display:block;font-size:.75rem;color:#ffffff59;margin-bottom:6px;font-weight:600;text-transform:uppercase;letter-spacing:.8px}.modal .field input,.modal .field select{width:100%;padding:12px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.07);background:#ffffff08;color:#fff;font-family:Inter,sans-serif;font-size:.9rem;outline:none;transition:all .3s}.modal .field input::placeholder{color:#ffffff2e}.modal .field input:focus,.modal .field select:focus{border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.07);background:rgba(var(--accent-rgb),.03)}.modal .field select option{background:#12121a;color:#fff}.btn-primary{width:100%;padding:14px;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent),#000 20%));border:none;border-radius:12px;color:#fff;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s;margin-top:8px;box-shadow:0 4px 15px rgba(var(--accent-rgb),.2)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(var(--accent-rgb),.35)}.btn-secondary{padding:14px 20px;background:transparent;border:2px solid var(--accent);border-radius:12px;color:var(--accent);font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-secondary:hover:not(:disabled){background:color-mix(in srgb,var(--accent),transparent 92%);transform:translateY(-2px)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.inline-form{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap}.inline-form .field{flex:1;min-width:180px}.inline-form .field input{width:100%;padding:0 16px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.07);background:#ffffff08;color:#fff;font-family:Inter,sans-serif;font-size:.9rem;outline:none}.inline-form .field input::placeholder{color:#ffffff2e}.inline-form .field input:focus{border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.07)}.inline-form .field label{display:block;font-size:.75rem;color:#ffffff59;margin-bottom:6px;font-weight:600;text-transform:uppercase;letter-spacing:.8px}.inline-form .field{margin-bottom:0}.btn-danger{padding:0 20px;height:44px;border-radius:12px;border:1px solid rgba(239,68,68,.3);background:#ef44441a;color:#ef4444;font-family:Inter,sans-serif;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;align-self:flex-end}.btn-danger:hover{background:#ef444433;border-color:#ef444480}body.light .btn-danger{background:#ef444414;border-color:#ef444433}body.light .btn-danger:hover{background:#ef444426}.inline-form .btn-primary{width:auto;padding:0 28px;white-space:nowrap;margin-top:0;margin-bottom:0;height:44px;line-height:44px;align-self:flex-end}.converter-grid{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:16px}.converter-side{flex:1;min-width:140px}.converter-side label{display:block;font-size:.72rem;color:#ffffff4d;margin-bottom:6px;text-transform:uppercase;letter-spacing:.8px;font-weight:600}.converter-side input,.converter-side select{width:100%;padding:12px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.07);background:#ffffff08;color:#fff;font-family:Inter,sans-serif;font-size:.9rem;outline:none;transition:all .3s}.converter-side input:focus,.converter-side select:focus{border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.07)}.converter-side select option{background:#12121a;color:#fff}.convert-result{padding:12px 16px;border-radius:12px;background:rgba(var(--accent-rgb),.06);border:1px solid rgba(var(--accent-rgb),.15);font-size:1.15rem;font-weight:800;color:var(--accent);letter-spacing:-.3px}.converter-arrow{color:#ffffff26;padding-bottom:8px}.rate-info{color:#ffffff40;font-size:.78rem}.comfort-card{margin-bottom:20px}.comfort-subtitle{font-size:.82rem;color:#ffffff59;margin-bottom:20px}body.light .comfort-subtitle{color:#0006}.comfort-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.comfort-item{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.05)}body.light .comfort-item{background:#00000005;border-color:#0000000f}.comfort-item.comfort-total{background:rgba(var(--accent-rgb),.08);border-color:rgba(var(--accent-rgb),.15);grid-column:span 1}body.light .comfort-item.comfort-total{background:rgba(var(--accent-rgb),.06);border-color:rgba(var(--accent-rgb),.12)}.comfort-label{font-size:.8rem;color:#ffffff73;font-weight:500}body.light .comfort-label{color:#00000080}.comfort-total .comfort-label{color:var(--accent);font-weight:600}.comfort-value{font-size:1.05rem;font-weight:700;color:#ffffffd9}body.light .comfort-value{color:#000c}.comfort-total .comfort-value{color:var(--accent);font-size:1.15rem}.comfort-note{margin-top:16px;font-size:.8rem;color:#ffffff4d;line-height:1.6}body.light .comfort-note{color:#00000059}.account-profile-clean{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:28px}.account-name-top{font-size:1.4rem;font-weight:700;color:#fff;text-align:center}body.light .account-name-top{color:#1a1a2e}.account-profile{display:flex;align-items:center;gap:20px;margin-bottom:24px;padding:28px;background:#ffffff06;border:1px solid rgba(255,255,255,.05);border-radius:20px}.account-avatar-wrap{position:relative;flex-shrink:0}.account-avatar{width:130px;height:130px;border-radius:50%;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent),#000 20%));display:flex;align-items:center;justify-content:center;font-size:2.4rem;font-weight:700;color:#fff;overflow:hidden;background-size:cover;background-position:center}.account-avatar[role=button]{cursor:pointer;transition:transform .2s,box-shadow .2s}.account-avatar[role=button]:hover{transform:scale(1.05);box-shadow:0 4px 16px #0000004d}.avatar-upload{position:absolute;bottom:-2px;right:-2px;width:24px;height:24px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;cursor:pointer;border:2px solid #06060a;transition:transform .2s;z-index:2}.avatar-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:600;cursor:pointer;animation:fadeIn .25s ease}.avatar-preview-overlay.hidden{display:none}.avatar-preview-img{width:260px;height:260px;border-radius:50%;background-size:cover;background-position:center;box-shadow:0 20px 60px #00000080;animation:avatarZoomIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes avatarZoomIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}body.light .avatar-upload{border-color:#fff}.avatar-upload:hover{transform:scale(1.1)}.avatar-upload svg{color:#fff}.account-info h2{font-size:1.3rem;font-weight:700;margin-bottom:6px}.account-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:rgba(var(--accent-rgb),.1);color:var(--accent);border:1px solid rgba(var(--accent-rgb),.2)}body.light .account-profile{background:#fffc;border-color:#0000000f;box-shadow:0 2px 12px #0000000a}.pro-card{margin-bottom:20px;background:linear-gradient(135deg,#10b9811f,#06b6d414);border:1px solid rgba(16,185,129,.25);border-radius:16px;padding:24px}.pro-card.is-pro{background:linear-gradient(135deg,#10b98114,#06b6d40a);border-color:#10b98126}.pro-card-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.pro-card-left{display:flex;align-items:center;gap:16px}.pro-plan-badge{background:#ffffff14;color:#9ca3af;font-size:11px;font-weight:700;padding:6px 12px;border-radius:8px;letter-spacing:1px;white-space:nowrap}.pro-plan-badge.badge-pro{background:linear-gradient(135deg,#10b981,#06b6d4);color:#fff}.pro-card-text h3{font-size:16px;font-weight:600;color:#f1f5f9;margin:0 0 4px}.pro-card-text p{font-size:13px;color:#9ca3af;margin:0}.btn-upgrade{background:linear-gradient(135deg,#10b981,#06b6d4);color:#fff;border:none;padding:10px 24px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;white-space:nowrap;transition:transform .2s,box-shadow .2s}.btn-upgrade:hover{transform:translateY(-1px);box-shadow:0 4px 16px #10b9814d}.btn-upgrade.btn-manage{background:#ffffff14;color:#d1d5db}.btn-upgrade.btn-manage:hover{background:#ffffff1f;box-shadow:none;transform:none}.pro-badge{background:linear-gradient(135deg,#10b981,#06b6d4);color:#fff;font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;letter-spacing:.5px;margin-left:6px}.pro-badge.hidden{display:none}.upgrade-modal{max-width:820px;width:95vw}.upgrade-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.plan-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:24px 20px;display:flex;flex-direction:column;position:relative}.plan-card.popular{border-color:#10b981;box-shadow:0 0 0 1px #10b981,0 8px 32px #10b98126}.plan-popular-tag,.plan-save-tag{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:#10b981;color:#fff;font-size:11px;font-weight:700;padding:3px 12px;border-radius:20px;white-space:nowrap}.plan-save-tag{background:#f59e0b}.plan-name{font-size:14px;font-weight:600;color:#d1d5db;margin-bottom:8px}.plan-price{font-size:36px;font-weight:800;color:#f1f5f9;line-height:1;margin-bottom:4px}.plan-price span{font-size:14px;font-weight:400;color:#9ca3af}.plan-per-month{font-size:13px;color:#10b981;margin-bottom:8px;font-weight:500}.plan-features{list-style:none;padding:0;margin:16px 0;flex:1}.plan-features li{font-size:13px;padding:6px 0;color:#d1d5db;display:flex;align-items:center;gap:8px}.plan-features li.included:before{content:"✓";color:#10b981;font-weight:700;font-size:14px}.plan-features li.excluded{color:#6b7280;text-decoration:line-through;opacity:.6}.plan-features li.excluded:before{content:"✗";color:#6b7280;font-size:14px}.btn-plan{width:100%;padding:12px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#9ca3af;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s}.btn-plan:disabled{cursor:default;opacity:.5}.btn-plan-pro{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none}.btn-plan-pro:hover{box-shadow:0 4px 16px #10b9814d;transform:translateY(-1px)}.btn-plan-yearly{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none}.btn-plan-yearly:hover{box-shadow:0 4px 16px #f59e0b4d;transform:translateY(-1px)}.trial-banner{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#f59e0b1a,#10b98114);border:1px solid rgba(245,158,11,.25);border-radius:12px;padding:16px 20px;margin-bottom:16px}.trial-icon{font-size:28px}.trial-text{flex:1;display:flex;flex-direction:column;gap:2px}.trial-text strong{font-size:15px;color:#f1f5f9}.trial-text span{font-size:12px;color:#9ca3af}.btn-trial{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;padding:10px 20px;border-radius:10px;font-weight:600;font-size:13px;cursor:pointer;white-space:nowrap;transition:transform .2s,box-shadow .2s}.btn-trial:hover{transform:translateY(-1px);box-shadow:0 4px 16px #f59e0b4d}.upgrade-modal .modal-header h2{color:#fff}.upgrade-modal .modal-close{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#ffffffb3}.upgrade-modal .modal-close:hover{background:#ffffff26;color:#fff}body.light .upgrade-modal .modal-header h2{color:#1a1a2e}body.light .upgrade-modal .modal-close{background:#0000000f;border-color:#0000001a;color:#00000080}body.light .upgrade-modal .modal-close:hover{background:#0000001a;color:#1a1a2e}.upgrade-modal{animation:modalSlideUp .35s ease-out}.plan-card{animation:planFadeIn .4s ease-out backwards}.plan-card:nth-child(1){animation-delay:.1s}.plan-card:nth-child(2){animation-delay:.2s}.plan-card:nth-child(3){animation-delay:.3s}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes planFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pro-card{animation:proCardPulse 3s ease-in-out infinite alternate}@keyframes proCardPulse{0%{border-color:#10b98140}to{border-color:#06b6d459}}.upgrade-note{text-align:center;font-size:12px;color:#6b7280;margin:0}.pro-celebration{position:fixed;top:0;left:0;right:0;bottom:0;background:#06060ae6;z-index:10000;display:flex;align-items:center;justify-content:center;animation:celebrationIn .5s ease;overflow:hidden;cursor:pointer}.pro-celebration.celebration-fade{opacity:0;transition:opacity .5s ease}.pro-celebration-content{text-align:center;animation:celebrationBounce .6s cubic-bezier(.34,1.56,.64,1);z-index:2}.pro-celebration-icon{font-size:72px;margin-bottom:16px;animation:crownFloat 2s ease-in-out infinite alternate}.pro-celebration-content h2{font-size:32px;font-weight:800;background:linear-gradient(135deg,#10b981,#06b6d4,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.pro-celebration-content p{color:#9ca3af;font-size:16px}.confetti-particle{position:absolute;top:-10px;width:8px;height:8px;border-radius:2px;animation:confettiFall linear forwards;opacity:.9}@keyframes celebrationIn{0%{opacity:0}to{opacity:1}}@keyframes celebrationBounce{0%{opacity:0;transform:scale(.5) translateY(40px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes crownFloat{0%{transform:translateY(0) rotate(-5deg)}to{transform:translateY(-8px) rotate(5deg)}}@keyframes confettiFall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.paywall-lock{position:relative}.paywall-lock:after{content:"PRO";position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#10b981,#06b6d4);color:#fff;font-size:9px;font-weight:700;padding:2px 8px;border-radius:4px;letter-spacing:.5px}@media (max-width: 768px){.pro-card-inner{flex-direction:column;text-align:center}.pro-card-left{flex-direction:column}#upgradeModal.modal-overlay{padding:0 12px}.modal.upgrade-modal{max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px);overflow:hidden;display:flex;flex-direction:column;padding:20px 16px 16px}.upgrade-modal .modal-header{margin-bottom:10px;flex-shrink:0;padding:0 0 8px}.upgrade-modal .modal-header h2{font-size:1.05rem}.upgrade-modal .upgrade-scroll-wrap{overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1;min-height:0}.upgrade-plans{grid-template-columns:1fr;gap:10px;margin:8px 0}.plan-card.popular{order:-1}.plan-card{padding:14px}.plan-name{font-size:12px;margin-bottom:2px}.plan-price{font-size:24px;margin-bottom:2px}.plan-price span{font-size:11px}.plan-per-month{font-size:11px;margin-bottom:4px}.plan-features{margin:6px 0}.plan-features li{font-size:11px;padding:2px 0}.plan-features li.included:before,.plan-features li.excluded:before{font-size:11px}.btn-plan{padding:8px;font-size:.78rem}.plan-popular-tag,.plan-save-tag{font-size:9px;padding:2px 8px;top:-8px}.trial-banner{padding:10px 12px;font-size:.78rem;gap:8px;flex-wrap:wrap;justify-content:center;text-align:center}.trial-icon{font-size:1.1rem}.btn-trial{padding:7px 12px;font-size:.75rem}.upgrade-note{font-size:.7rem;margin-top:6px;text-align:center}}.light-early .pro-card,body.light .pro-card{background:linear-gradient(135deg,#10b98114,#06b6d40d)}.light-early .pro-card-text h3,body.light .pro-card-text h3{color:#1e293b}.light-early .plan-card,body.light .plan-card{background:#fff;border-color:#e5e7eb}.light-early .plan-price,body.light .plan-price{color:#1a1a2e}.light-early .plan-price span,body.light .plan-price span{color:#6b7280}.light-early .plan-name,body.light .plan-name{color:#374151}.light-early .plan-features li,body.light .plan-features li{color:#1f2937}.light-early .plan-features li.excluded,body.light .plan-features li.excluded{color:#9ca3af}body.light .plan-per-month{color:#059669}body.light .upgrade-note{color:#0006}body.light .trial-banner{background:#10b98114;border-color:#10b98126}body.light .trial-text span{color:#374151}body.light .btn-plan{background:#0000000a;border-color:#0000001a;color:#374151}.tithe-value{display:flex;align-items:center;gap:12px}.tithe-toggle{position:relative;display:inline-block;width:40px;height:22px;cursor:pointer}.tithe-toggle input{opacity:0;width:0;height:0}.tithe-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff1a;border-radius:22px;transition:.3s}.tithe-slider:before{content:"";position:absolute;width:16px;height:16px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s}.tithe-toggle input:checked+.tithe-slider{background:var(--accent, #10b981)}.tithe-toggle input:checked+.tithe-slider:before{transform:translate(18px)}.account-grid{display:flex;flex-direction:column;gap:16px}.account-details{display:flex;flex-direction:column;gap:0}.account-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.04);gap:8px}body.light .account-row{border-bottom-color:#0000000f}.account-row:last-child{border-bottom:none}.account-label{font-size:.82rem;color:#fff6;font-weight:500}body.light .account-label{color:#00000073}.account-value{font-size:.88rem;font-weight:600;color:#ffffffd9}body.light .account-value{color:#000000bf}.account-actions{display:flex;gap:12px;flex-wrap:wrap}.account-actions .btn-primary{display:flex;align-items:center;gap:8px}@media (max-width: 768px){.account-profile{padding:20px}.account-avatar{width:200px;height:200px;font-size:4rem}.account-info h2{font-size:1.1rem}}@media (max-width: 768px){.comfort-grid{grid-template-columns:1fr}}.advice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.advice-card{background:#ffffff06;border:1px solid rgba(255,255,255,.05);border-radius:18px;padding:26px;transition:all .3s;position:relative;overflow:hidden}.advice-card:hover{border-color:#ffffff1a;transform:translateY(-2px)}.advice-card.warning{border-left:3px solid #f59e0b}.advice-card.warning:before{content:"";position:absolute;top:0;left:0;width:100px;height:100px;background:radial-gradient(circle,rgba(245,158,11,.06),transparent);pointer-events:none}.advice-card.danger{border-left:3px solid #ef4444}.advice-card.danger:before{content:"";position:absolute;top:0;left:0;width:100px;height:100px;background:radial-gradient(circle,rgba(239,68,68,.06),transparent);pointer-events:none}.advice-card.success{border-left:3px solid var(--accent)}.advice-card.success:before{content:"";position:absolute;top:0;left:0;width:100px;height:100px;background:radial-gradient(circle,rgba(var(--accent-rgb),.06),transparent);pointer-events:none}.advice-card.info{border-left:3px solid #3b82f6}.advice-card.info:before{content:"";position:absolute;top:0;left:0;width:100px;height:100px;background:radial-gradient(circle,rgba(59,130,246,.06),transparent);pointer-events:none}.advice-icon{font-size:1.6rem;margin-bottom:14px}.advice-card h3{font-size:.95rem;font-weight:700;margin-bottom:10px;color:#ffffffd9;letter-spacing:-.2px}.advice-card p{font-size:.84rem;color:#ffffff61;line-height:1.65}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr}}@media (max-width: 768px){.sidebar{transform:translate(-100%);padding:16px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.sidebar.open{transform:translate(0);box-shadow:20px 0 60px #00000080;background:#0a0a10}.sidebar-brand{margin-bottom:12px}.sidebar-nav{flex:1;gap:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.nav-item{padding:10px 16px;font-size:.84rem;min-height:44px}.sidebar-footer{display:none}.mobile-header{display:flex}.main-content{margin-left:0;padding:68px 14px 24px;width:100%;max-width:100vw}.page-header{margin-bottom:20px}.page-header h1{font-size:1.4rem}.page-subtitle{font-size:.78rem}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:14px;border-radius:14px}.stat-icon{width:36px;height:36px;border-radius:10px}.stat-icon svg{width:18px;height:18px}.stat-label{font-size:.62rem}.stat-value{font-size:.95rem}.charts-grid{grid-template-columns:1fr;gap:12px}.chart-card{padding:16px 12px;border-radius:14px;margin-bottom:12px}.chart-card h3{font-size:.85rem;margin-bottom:14px}.chart-container{height:200px}.chart-wide{height:230px}.advice-grid{grid-template-columns:1fr;gap:12px}.advice-card{padding:18px 14px}.welcome-banner{padding:18px 16px;flex-direction:column;align-items:flex-start;gap:12px}.welcome-banner h2{font-size:1.15rem}.streak-badge{align-self:flex-start;padding:6px 12px;font-size:.78rem}.expense-toolbar{flex-direction:column}.search-box{min-width:100%}#page-currency .chart-card{width:100%;box-sizing:border-box;padding:16px}.converter-grid{flex-direction:column;width:100%}.converter-arrow{transform:rotate(90deg);align-self:center}.converter-side{min-width:0;width:100%}.converter-side input,.converter-side select{font-size:16px}.btn-add{padding:9px 16px;font-size:.8rem;min-height:44px}.header-actions{width:100%}.month-filter{flex:1;font-size:16px;min-height:44px}.expense-table thead{display:none}.expense-table,.expense-table tbody,.expense-table tr,.expense-table td{display:block;width:100%}.expense-table tr{background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:14px;margin-bottom:10px;position:relative}body.light .expense-table tr{background:#fff9;border-color:#0000000f}.expense-table td{padding:2px 0;border:none;font-size:.82rem}.expense-table td:first-child{font-size:.72rem;color:#ffffff4d;margin-bottom:4px}body.light .expense-table td:first-child{color:#00000059}.expense-table td:nth-child(3){font-weight:600;font-size:.88rem;color:#fffc}body.light .expense-table td:nth-child(3){color:#000000bf}.expense-table td:last-child{position:absolute;top:14px;right:14px;width:auto}.category-badge{padding:3px 8px;font-size:.7rem}.btn-export{flex:1;justify-content:center;min-width:0}.category-filter{width:100%}.modal-overlay{padding:0 12px;align-items:center;justify-content:center;overflow:hidden}.modal{padding:24px 18px;border-radius:18px;max-width:100%;max-height:70vh;max-height:70dvh;display:flex;flex-direction:column}.modal h2{font-size:1.1rem}#budgetLimitsList{max-height:220px;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal .field input,.modal .field select{font-size:16px;padding:12px 14px}.inline-form{flex-direction:column}.inline-form .field{min-width:100%}.inline-form .field input{font-size:16px}.inline-form .btn-primary{width:100%;margin-bottom:0}.progress-track{height:10px}.progress-labels{font-size:.75rem}.goal-header{flex-direction:column;align-items:flex-start;gap:10px}.goal-actions{width:100%;justify-content:flex-end}.monthly-summary{font-size:.82rem;padding:12px 14px;gap:10px}.ai-insight{flex-direction:column;gap:10px}.shared-groups-grid{grid-template-columns:1fr}.budget-warning-item{font-size:.8rem;padding:10px 14px}.budget-limit-row{gap:8px}.limit-cat-name{font-size:.82rem}.limit-input{width:90px;font-size:16px}.bank-balance-banner{padding:20px 16px}.balance-amount{font-size:1.8rem}.bank-cards-grid,.comfort-grid{grid-template-columns:1fr}.account-profile{padding:18px}.account-avatar{width:200px;height:200px;font-size:4rem}.account-info h2{font-size:1.05rem}.account-row{flex-wrap:wrap}.account-label{width:100%;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.account-value{font-size:.9rem}.btn-change-inline{margin-left:auto}.account-details{gap:0}.account-actions{flex-direction:column}.account-actions .btn-primary{width:100%}}@media (max-width: 480px){.main-content{padding:64px 12px 20px}.stats-grid{grid-template-columns:1fr;gap:8px}.stat-card{flex-direction:row;align-items:center;padding:12px;gap:12px}.stat-icon{width:34px;height:34px}.stat-value{font-size:.95rem}.page-header{flex-direction:column;gap:10px;margin-bottom:16px}.page-header h1{font-size:1.25rem}.btn-add{width:100%;justify-content:center}.header-actions{flex-wrap:wrap;gap:8px}.header-actions .btn-export,.header-actions .btn-add{flex:1;min-width:0;justify-content:center}.month-filter{width:100%}.chart-container{height:180px}.chart-wide{height:200px}.chart-card{padding:14px 10px}.advice-card{padding:16px 12px}.advice-icon{font-size:1.3rem}.advice-card h3{font-size:.88rem}.advice-card p{font-size:.8rem}.welcome-banner{padding:16px 14px;border-radius:14px}.welcome-banner h2{font-size:1.05rem}.welcome-banner p{font-size:.78rem}.fab{bottom:20px;right:16px;width:50px;height:50px}.chore-card{padding:12px 14px;gap:12px}.chore-reward{font-size:.78rem;padding:3px 8px}.family-goal-name{font-size:.95rem}.family-goal-card,.member-card{padding:16px}.member-avatar{width:40px;height:40px;font-size:.95rem}.allowance-card{padding:16px}}@media (max-width: 390px){.main-content{padding:60px 10px 18px}.page-header h1{font-size:1.15rem}.stat-card{padding:10px;gap:10px}.stat-label{font-size:.58rem}.stat-value{font-size:.88rem}.stat-icon{width:32px;height:32px;border-radius:8px}.stat-icon svg{width:16px;height:16px}.chart-container{height:160px}.chart-wide{height:180px}.chart-card{padding:12px 8px;border-radius:12px}.chart-card h3{font-size:.82rem}.modal{padding:20px 14px;border-radius:16px;max-height:calc(100vh - 40px)}.modal h2{font-size:1rem}.welcome-banner h2{font-size:.95rem}.advice-card{padding:14px 10px;border-radius:12px}.nav-item{padding:9px 14px;font-size:.82rem}.mode-dropdown{margin:0 10px 20px}.mode-dropdown-btn{font-size:.82rem;padding:8px 12px}.expense-table tr{padding:12px}.category-badge{padding:2px 6px;font-size:.65rem}.goal-card{padding:16px}.goal-card h4{font-size:.88rem}.btn-goal-add{padding:5px 10px;font-size:.72rem}.bank-card{padding:18px;min-height:160px}.bank-card-number{font-size:.95rem;letter-spacing:2px}.bank-card-balance{font-size:1.2rem}.pnl-row-left{min-width:100px}.pnl-amount{min-width:60px;font-size:.8rem}.client-stats{gap:16px}.client-stat-val{font-size:.9rem}}@media (max-width: 320px){.main-content{padding:58px 8px 16px}.page-header h1{font-size:1.05rem}.stat-card{padding:8px}.stat-value{font-size:.82rem}.chart-container{height:140px}.modal{padding:18px 12px;max-height:calc(100vh - 36px)}.modal h2{font-size:.95rem}.welcome-banner{padding:12px 10px}.welcome-banner h2{font-size:.88rem}}.theme-toggle{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:#ffffff80;cursor:pointer;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.theme-toggle:hover{background:#ffffff1a;color:#fff}.theme-toggle .icon-sun{display:none}.theme-toggle .icon-moon{display:block}.mobile-header .theme-toggle{margin-left:auto}body.light{background:linear-gradient(135deg,#f0fdf4,#ecfdf5,#f0f9ff,#faf5ff,#fdf2f8);background-attachment:fixed;color:#1a1a2e}body.light:before{background:radial-gradient(circle,rgba(var(--accent-rgb),.12),transparent 70%)}body.light:after{background:radial-gradient(circle,rgba(139,92,246,.08),transparent 70%)}body.light .sidebar{background:linear-gradient(180deg,#fffffff2,#f0fdf4f2);border-right:1px solid rgba(var(--accent-rgb),.12);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:4px 0 20px #00000008}body.light .sidebar.open{background:linear-gradient(180deg,#fff,#f0fdf4)}body.light .sidebar-brand{color:#059669}body.light .nav-item{color:#00000080}body.light .nav-item:hover{background:rgba(var(--accent-rgb),.06);color:#000000bf}body.light .nav-item.active{background:linear-gradient(135deg,rgba(var(--accent-rgb),.12),#06b6d414);color:#059669;box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.2),0 2px 8px rgba(var(--accent-rgb),.08)}.nav-install{display:none;align-items:center;gap:12px;padding:12px 16px;margin-top:12px;border-radius:12px;font-size:.88rem;font-weight:600;cursor:pointer;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent),#000 20%));color:#fff;list-style:none;transition:all .2s;box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}.nav-install:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(var(--accent-rgb),.4)}.nav-install:active{transform:translateY(0)}.nav-install.hidden{display:none!important}.mobile-install-banner{display:none;position:fixed;bottom:0;left:0;right:0;padding:14px 16px;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px));background:linear-gradient(135deg,#06060af7,#10101af7);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid rgba(var(--accent-rgb),.15);z-index:95;align-items:center;gap:12px;animation:slideUp .4s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes shimmer{0%{opacity:.4}50%{opacity:.8}to{opacity:.4}}.mobile-install-banner.hidden{display:none!important}body.light .mobile-install-banner{background:linear-gradient(135deg,#fffffff7,#f0fdf4f7);border-top-color:rgba(var(--accent-rgb),.2)}.install-banner-text{flex:1;display:flex;flex-direction:column;gap:2px}.install-banner-text strong{font-size:.88rem;font-weight:700;color:#fff}body.light .install-banner-text strong{color:#1a1a2e}.install-banner-text span{font-size:.75rem;color:#ffffff73}body.light .install-banner-text span{color:#00000073}.install-banner-btn{padding:10px 20px;border:none;border-radius:10px;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent),#000 20%));color:#fff;font-family:Inter,sans-serif;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;box-shadow:0 4px 12px rgba(var(--accent-rgb),.3);transition:all .2s}.install-banner-btn:active{transform:scale(.95)}.install-banner-dismiss{background:none;border:none;color:#ffffff4d;font-size:1.2rem;cursor:pointer;padding:4px;line-height:1}body.light .install-banner-dismiss{color:#0000004d}@media (max-width: 768px){.nav-install:not(.hidden){display:flex}.mobile-install-banner{display:none!important}}@media (min-width: 769px){.mobile-install-banner{display:none!important}}body.light .nav-install{background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent),#000 20%));color:#fff}.welcome-banner{display:flex;justify-content:space-between;align-items:center}.streak-badge{display:flex;align-items:center;gap:6px;background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);border-radius:20px;padding:8px 16px;font-size:.85rem;white-space:nowrap}.streak-flame{font-size:1.2rem}.streak-count{font-weight:700;color:#f59e0b;font-size:1.1rem}.streak-label{color:#ffffff80;font-size:.78rem}body.light .streak-label{color:#00000073}.streak-badge.hidden{display:none}.monthly-summary{display:flex;align-items:center;gap:12px;background:#6366f114;border:1px solid rgba(99,102,241,.15);border-radius:14px;padding:14px 20px;margin-bottom:20px;font-size:.88rem;color:#ffffffb3;animation:slideDown .3s ease}body.light .monthly-summary{background:#6366f10f;color:#0009}.summary-icon{font-size:1.4rem;flex-shrink:0}.monthly-summary p{flex:1}.summary-dismiss{background:none;border:none;color:#ffffff4d;font-size:1.3rem;cursor:pointer;padding:4px;line-height:1}body.light .summary-dismiss{color:#0000004d}.monthly-summary.hidden{display:none}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.fab{display:none;position:fixed;bottom:calc(24px + env(safe-area-inset-bottom,0px));right:24px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent),#000 20%));border:none;color:#fff;box-shadow:0 4px 20px rgba(var(--accent-rgb),.4);cursor:pointer;z-index:90;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s}.fab:active{transform:scale(.92)}@media (max-width: 768px){.fab{display:flex}}.budget-warnings{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.budget-warnings.hidden{display:none}.budget-warning-item{display:flex;flex-direction:column;gap:6px;padding:12px 16px;border-radius:12px;font-size:.85rem}.budget-warn{background:#f59e0b14;border:1px solid rgba(245,158,11,.15)}.budget-danger{background:#ef444414;border:1px solid rgba(239,68,68,.15)}.budget-over{background:#ef44441f;border:1px solid rgba(239,68,68,.25)}.bw-info{display:flex;justify-content:space-between;align-items:center}.bw-cat{font-weight:600;color:#fffc}body.light .bw-cat{color:#000000b3}.bw-detail{color:#fff6;font-size:.8rem}body.light .bw-detail{color:#0006}.bw-bar{height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden}body.light .bw-bar{background:#0000000f}.bw-fill{height:100%;border-radius:3px;transition:width .5s ease}.bw-fill-warn{background:#f59e0b}.bw-fill-danger{background:#ef4444}.bw-fill-over{background:#ef4444;animation:pulse-bar 1.5s ease infinite}@keyframes pulse-bar{0%,to{opacity:1}50%{opacity:.6}}.budget-limit-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.04)}body.light .budget-limit-row{border-bottom-color:#0000000f}.limit-cat-name{flex:1;font-size:.88rem;color:#ffffffb3}body.light .limit-cat-name{color:#0009}.limit-input{width:110px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:8px 10px;color:#fff;font-family:Inter,sans-serif;font-size:.85rem;text-align:right}body.light .limit-input{background:#00000008;border-color:#0000001a;color:#1a1a2e}.limit-input:focus{outline:none;border-color:var(--accent)}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.achievement-card{display:flex;align-items:center;gap:12px;padding:14px;border-radius:12px;background:#ffffff05;border:1px solid rgba(255,255,255,.04);opacity:.35;filter:grayscale(1);transition:all .3s}.achievement-card.unlocked{opacity:1;filter:none;background:rgba(var(--accent-rgb),.06);border-color:rgba(var(--accent-rgb),.15)}body.light .achievement-card{background:#00000005;border-color:#0000000f}body.light .achievement-card.unlocked{background:rgba(var(--accent-rgb),.06);border-color:rgba(var(--accent-rgb),.15)}.achievement-icon{font-size:1.6rem;flex-shrink:0}.achievement-info{display:flex;flex-direction:column;gap:2px}.achievement-title{font-weight:600;font-size:.85rem;color:#fffc}body.light .achievement-title{color:#000000b3}.achievement-desc{font-size:.75rem;color:#ffffff59}body.light .achievement-desc{color:#0006}body.light .sidebar-footer{border-top-color:rgba(var(--accent-rgb),.1)}body.light .user-info span{color:#0000008c}body.light .user-avatar{box-shadow:0 2px 8px rgba(var(--accent-rgb),.2)}body.light .btn-logout{color:#0000004d}body.light .btn-logout:hover{background:#ef44441a;color:#ef4444}body.light .mobile-header{background:linear-gradient(90deg,#fffffff7,#f0fdf4f7);border-bottom:1px solid rgba(var(--accent-rgb),.1);box-shadow:0 2px 12px #0000000a}body.light .menu-toggle{color:#1a1a2e}body.light .mobile-brand{color:#059669}body.light .theme-toggle{background:linear-gradient(135deg,#f59e0b1a,#fbbf2426);border-color:#f59e0b33;color:#f59e0b}body.light .theme-toggle:hover{background:linear-gradient(135deg,#f59e0b26,#fbbf2433);color:#d97706;box-shadow:0 2px 8px #f59e0b26}body.light .theme-toggle .icon-sun{display:block}body.light .theme-toggle .icon-moon{display:none}body.light .page-header h1{background:linear-gradient(135deg,#059669,#0891b2,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.light .page-subtitle{color:#00000073}body.light .stat-card{background:linear-gradient(135deg,#ffffffe6,#ffffffb3);border:1px solid rgba(255,255,255,.8);box-shadow:0 4px 16px #0000000f,0 1px 3px #0000000a,inset 0 1px #fffc}body.light .stat-card:before{background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.06),transparent)}body.light .stat-card:hover{border-color:rgba(var(--accent-rgb),.2);box-shadow:0 8px 30px rgba(var(--accent-rgb),.1),0 2px 6px #0000000d;transform:translateY(-3px)}body.light .stat-green{background:linear-gradient(135deg,rgba(var(--accent-rgb),.15),rgba(var(--accent-rgb),.08));box-shadow:0 4px 12px rgba(var(--accent-rgb),.12)}body.light .stat-red{background:linear-gradient(135deg,#ef444426,#ef444414);box-shadow:0 4px 12px #ef44441f}body.light .stat-blue{background:linear-gradient(135deg,#3b82f626,#3b82f614);box-shadow:0 4px 12px #3b82f61f}body.light .stat-purple{background:linear-gradient(135deg,#8b5cf626,#8b5cf614);box-shadow:0 4px 12px #8b5cf61f}body.light .stat-label{color:#00000073}body.light .stat-value{color:#1a1a2e}body.light .chart-card{background:linear-gradient(135deg,#ffffffe6,#ffffffb3);border:1px solid rgba(255,255,255,.8);box-shadow:0 4px 16px #0000000d,inset 0 1px #fffc}body.light .chart-card:before{background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.05),transparent)}body.light .chart-card:hover{border-color:rgba(var(--accent-rgb),.15);box-shadow:0 8px 24px #00000012}body.light .chart-card h3{color:#000000a6}body.light .chart-subtitle{color:#0006}body.light .progress-track{background:linear-gradient(90deg,#0000000a,#0000000f);border-color:#0000000d}body.light .progress-labels{color:#0000008c}body.light .expense-table th{color:#0006;border-bottom:2px solid rgba(var(--accent-rgb),.1)}body.light .expense-table td{color:#000000a6;border-bottom-color:#0000000a}body.light .expense-table tr:hover td{background:rgba(var(--accent-rgb),.03)}body.light .btn-delete{color:#00000040}body.light .btn-delete:hover{background:#ef44441a;color:#ef4444}body.light .empty-state{color:#00000059}body.light .btn-add{box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}body.light .btn-add:hover{box-shadow:0 8px 25px rgba(var(--accent-rgb),.4)}body.light .btn-primary{box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}body.light .btn-primary:hover{box-shadow:0 8px 25px rgba(var(--accent-rgb),.4)}body.light .modal-overlay{background:#00000040;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}body.light .modal{background:linear-gradient(135deg,#fff,#f0fdf4);border:1px solid rgba(var(--accent-rgb),.1);box-shadow:0 25px 60px #0000001f,0 0 0 1px #ffffff80}body.light .modal h2{color:#1a1a2e}body.light .modal p,body.light .modal-desc{color:#00000080}body.light .modal-close{background:#0000000d;border-color:#00000014;color:#0006}body.light .modal-close:hover{background:#0000001a;color:#1a1a2e}body.light .modal .field label,body.light .inline-form .field label,body.light .converter-side label{color:#00000080}body.light .modal .field input,body.light .modal .field select,body.light .inline-form .field input,body.light .converter-side input,body.light .converter-side select,body.light .month-filter{background:#fffc;border:1px solid rgba(0,0,0,.1);color:#1a1a2e;box-shadow:0 1px 3px #0000000a}body.light .modal .field input::placeholder,body.light .inline-form .field input::placeholder{color:#0000004d}body.light .modal .field input:focus,body.light .modal .field select:focus,body.light .inline-form .field input:focus,body.light .converter-side input:focus,body.light .converter-side select:focus{border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.1),0 1px 3px #0000000a;background:#fff}body.light .modal .field select option,body.light .converter-side select option,body.light .month-filter option{background:#fff;color:#1a1a2e}body.light .convert-result{background:linear-gradient(135deg,rgba(var(--accent-rgb),.1),#06b6d414);border-color:rgba(var(--accent-rgb),.25);box-shadow:0 2px 8px rgba(var(--accent-rgb),.1)}body.light .converter-arrow{color:var(--accent)}body.light .rate-info{color:#0006}body.light .advice-card{background:linear-gradient(135deg,#ffffffe6,#ffffffb3);border:1px solid rgba(255,255,255,.8);box-shadow:0 4px 16px #0000000d,inset 0 1px #fffc}body.light .advice-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014}body.light .advice-card.warning{border-left:3px solid #f59e0b;background:linear-gradient(135deg,#ffffffe6,#fef3c74d)}body.light .advice-card.danger{border-left:3px solid #ef4444;background:linear-gradient(135deg,#ffffffe6,#fee2e24d)}body.light .advice-card.success{border-left:3px solid var(--accent);background:linear-gradient(135deg,#ffffffe6,#d1fae54d)}body.light .advice-card.info{border-left:3px solid #3b82f6;background:linear-gradient(135deg,#ffffffe6,#dbeafe4d)}body.light .advice-card h3{color:#000c}body.light .advice-card p{color:#00000080}body.light .goal-card{background:linear-gradient(135deg,#ffffffe6,#ffffffb3);border:1px solid rgba(255,255,255,.8);box-shadow:0 4px 16px #0000000d,inset 0 1px #fffc}body.light .goal-card:hover{border-color:rgba(var(--accent-rgb),.2);box-shadow:0 8px 24px rgba(var(--accent-rgb),.08);transform:translateY(-2px)}body.light .goal-card h4{color:#000c}body.light .goal-stats{color:#00000073}body.light .goal-stats span:nth-child(2){color:#059669;font-weight:700}body.light .goal-advice{color:#00000073;border-top-color:rgba(var(--accent-rgb),.1)}body.light .btn-goal-add{background:linear-gradient(135deg,rgba(var(--accent-rgb),.12),rgba(var(--accent-rgb),.08));border-color:rgba(var(--accent-rgb),.25);box-shadow:0 2px 6px rgba(var(--accent-rgb),.1)}body.light .btn-goal-add:hover{background:linear-gradient(135deg,rgba(var(--accent-rgb),.2),rgba(var(--accent-rgb),.15));box-shadow:0 4px 10px rgba(var(--accent-rgb),.15)}body.light .category-badge{box-shadow:0 1px 4px #0000000f}body.light .sidebar-overlay.active{background:#00000026;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.welcome-banner{margin-bottom:24px;padding:24px 28px;background:linear-gradient(135deg,rgba(var(--accent-rgb),.08),#06b6d40d);border:1px solid rgba(var(--accent-rgb),.1);border-radius:18px;position:relative;overflow:hidden}.welcome-banner:after{content:"";position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,rgba(var(--accent-rgb),.08),transparent 70%);pointer-events:none}.welcome-banner h2{font-size:1.5rem;font-weight:800;letter-spacing:-.5px;margin-bottom:4px;background:linear-gradient(135deg,var(--accent),#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-banner p{color:#fff6;font-size:.85rem}body.light .welcome-banner{background:linear-gradient(135deg,rgba(var(--accent-rgb),.1),#06b6d40f);border-color:rgba(var(--accent-rgb),.15)}body.light .welcome-banner p{color:#00000073}.expense-toolbar{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.search-box{flex:1;min-width:200px;display:flex;align-items:center;gap:8px;padding:0 14px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;transition:all .3s}.search-box:focus-within{border-color:rgba(var(--accent-rgb),.4);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.07)}.search-box svg{color:#ffffff40;flex-shrink:0}.search-box input{flex:1;background:none;border:none;color:#fff;font-family:Inter,sans-serif;font-size:.85rem;padding:10px 0;outline:none}.search-box input::placeholder{color:#fff3}body.light .search-box{background:#fffc;border-color:#0000001a}body.light .search-box svg{color:#0000004d}body.light .search-box input{color:#1a1a2e}body.light .search-box input::placeholder{color:#0000004d}.category-filter{padding:10px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#fff;font-family:Inter,sans-serif;font-size:.82rem;outline:none}.category-filter option{background:#12121a;color:#fff}body.light .category-filter{background:#fffc;border-color:#0000001a;color:#1a1a2e}body.light .category-filter option{background:#fff;color:#1a1a2e}.btn-export{display:flex;align-items:center;gap:6px;padding:10px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#ffffff80;font-family:Inter,sans-serif;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-export:hover{background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.3);color:var(--accent)}body.light .btn-export{background:#fffc;border-color:#0000001a;color:#00000080}body.light .btn-export:hover{background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.3);color:#059669}.savings-goals-list{display:flex;flex-direction:column;gap:16px}.custom-cat-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.custom-cat-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:10px}body.light .custom-cat-item{background:#00000008;border-color:#0000000f}.cat-color-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0}.custom-cat-item span{flex:1;font-size:.88rem;font-weight:500}.custom-cat-item .badge-default{font-size:.7rem;color:#ffffff40;padding:2px 8px;border-radius:6px;background:#ffffff0a}body.light .custom-cat-item .badge-default{color:#0000004d;background:#0000000a}.drill-list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto}.drill-day{padding:12px 14px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:10px}body.light .drill-day{background:#00000005;border-color:#0000000f}.drill-day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.drill-day-header strong{font-size:.85rem;color:#ffffffb3}body.light .drill-day-header strong{color:#000000b3}.drill-day-header span{font-size:.82rem;font-weight:700;color:var(--accent)}.drill-day-items{display:flex;flex-direction:column;gap:4px}.drill-item{display:flex;justify-content:space-between;font-size:.8rem;color:#fff6;padding:2px 0}body.light .drill-item{color:#00000073}.drill-item .drill-amount{font-weight:600;color:#fff9}body.light .drill-item .drill-amount{color:#0009}.goal-card{background:#ffffff06;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:20px;transition:border-color .3s}.goal-card:hover{border-color:#ffffff1a}.goal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.goal-name-row{display:flex;align-items:center;gap:10px}.goal-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.goal-card h4{font-size:.95rem;font-weight:600;color:#fffc}.goal-actions{display:flex;gap:8px;align-items:center}.btn-goal-add{padding:6px 14px;background:rgba(var(--accent-rgb),.1);border:1px solid rgba(var(--accent-rgb),.2);border-radius:8px;color:var(--accent);font-family:Inter,sans-serif;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-goal-add:hover{background:rgba(var(--accent-rgb),.2)}.goal-progress{margin-bottom:10px}.goal-progress .progress-track{height:10px;margin-bottom:8px}.goal-stats{display:flex;justify-content:space-between;font-size:.78rem;color:#ffffff59;font-weight:500}.goal-stats span:nth-child(2){color:#fff9;font-weight:700}.goal-advice{font-size:.82rem;color:#ffffff59;line-height:1.5;padding-top:10px;border-top:1px solid rgba(255,255,255,.04)}.ai-insights-card{border:1px solid rgba(var(--accent-rgb),.15);position:relative;overflow:hidden}.ai-insights-card:before{content:"";position:absolute;top:-50%;right:-20%;width:200px;height:200px;background:radial-gradient(circle,rgba(var(--accent-rgb),.06),transparent 70%);pointer-events:none}.ai-insights-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.ai-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;padding:4px 12px;border-radius:20px;background:rgba(var(--accent-rgb),.12);color:var(--accent)}.ai-insights-body{display:flex;flex-direction:column;gap:14px}.ai-placeholder{color:#ffffff59;font-size:.88rem;text-align:center;padding:20px 0}.ai-insight{display:flex;gap:14px;padding:14px;border-radius:12px;background:#ffffff05;border:1px solid rgba(255,255,255,.04)}.ai-insight-icon{font-size:1.4rem;flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:rgba(var(--accent-rgb),.08)}.ai-insight-content h4{font-size:.88rem;font-weight:600;margin-bottom:4px}.ai-insight-content p{font-size:.82rem;color:#ffffff73;line-height:1.5}.ai-insight.positive{border-color:rgba(var(--accent-rgb),.15)}.ai-insight.negative{border-color:#ef444426}.ai-insight.neutral{border-color:#3b82f626}.ai-insight.positive .ai-insight-icon{background:rgba(var(--accent-rgb),.1)}.ai-insight.negative .ai-insight-icon{background:#ef44441a}.ai-insight.neutral .ai-insight-icon{background:#3b82f61a}body.light .ai-insight{background:#00000005;border-color:#0000000f}body.light .ai-insight-content p{color:#00000080}body.light .ai-placeholder{color:#0006}.shared-groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.empty-state{grid-column:1 / -1;text-align:center;padding:60px 20px;color:#ffffff59;font-size:.9rem;line-height:1.6}.empty-state svg{margin-bottom:16px}.shared-group-card{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:24px;transition:border-color .3s}.shared-group-card:hover{border-color:rgba(var(--accent-rgb),.2)}.shared-group-card h3{font-size:1.05rem;font-weight:600;margin-bottom:4px}.shared-group-card .group-meta{font-size:.8rem;color:#ffffff59;margin-bottom:16px}.shared-group-card .group-budget-bar{height:6px;border-radius:3px;background:#ffffff0f;margin-bottom:10px;overflow:hidden}.shared-group-card .group-budget-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--accent),#06b6d4);transition:width .5s}.shared-group-card .group-budget-text{display:flex;justify-content:space-between;font-size:.78rem;color:#ffffff73;margin-bottom:16px}.group-members{display:flex;gap:-8px}.group-member-avatar{width:28px;height:28px;border-radius:50%;background:rgba(var(--accent-rgb),.15);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;border:2px solid #0d0d14;margin-left:-6px}.group-member-avatar:first-child{margin-left:0}.group-actions{display:flex;gap:8px;margin-top:16px}.group-actions button{flex:1;padding:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#fff9;border-radius:8px;font-family:Inter,sans-serif;font-size:.78rem;cursor:pointer;transition:all .2s}.group-actions button:hover{background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.2);color:var(--accent)}body.light .shared-group-card{background:#fffc;border-color:#00000014}body.light .shared-group-card .group-meta{color:#0006}body.light .shared-group-card .group-budget-bar{background:#0000000f}body.light .shared-group-card .group-budget-text{color:#00000073}body.light .group-member-avatar{border-color:#f5f5f5}body.light .group-actions button{background:#00000008;border-color:#00000014;color:#00000080}body.light .empty-state{color:#0006}.btn-sm{padding:8px 16px!important;font-size:.82rem!important;width:auto!important;display:inline-flex;align-items:center;gap:6px}.bank-connect-grid{display:flex;flex-direction:column;gap:20px}.bank-hero-card .bank-hero{text-align:center;padding:30px 20px}.bank-hero svg{margin-bottom:16px;color:var(--accent)}.bank-hero h3{font-size:1.2rem;margin-bottom:10px}.bank-hero p{color:#ffffff73;font-size:.88rem;line-height:1.6;max-width:500px;margin:0 auto 24px}.bank-steps{display:flex;flex-direction:column;gap:16px}.bank-step{display:flex;gap:16px;align-items:flex-start}.bank-step-num{width:32px;height:32px;border-radius:50%;background:rgba(var(--accent-rgb),.12);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0}.bank-step strong{display:block;font-size:.9rem;margin-bottom:2px}.bank-step p{font-size:.82rem;color:#fff6;line-height:1.4}.bank-info-card{border:1px dashed rgba(255,255,255,.08)}body.light .bank-hero p{color:#00000080}body.light .bank-step p{color:#00000073}body.light .bank-info-card{border-color:#0000001a}.bank-balance-banner{text-align:center;padding:30px 20px;margin-bottom:24px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:20px;position:relative;overflow:hidden}.bank-balance-banner:before{content:"";position:absolute;top:-40%;left:30%;width:200px;height:200px;background:radial-gradient(circle,rgba(var(--accent-rgb),.08),transparent 70%);pointer-events:none}.balance-label{font-size:.78rem;text-transform:uppercase;letter-spacing:1.2px;color:#fff6;margin-bottom:8px}.balance-amount{font-size:2.4rem;font-weight:800;letter-spacing:-1px;background:linear-gradient(135deg,var(--accent),#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:6px}.balance-sub{font-size:.82rem;color:#ffffff59}body.light .bank-balance-banner{background:#fffc;border-color:#00000014}body.light .balance-label{color:#00000073}body.light .balance-amount{-webkit-text-fill-color:transparent}body.light .balance-sub{color:#0006}.bank-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:24px}.bank-card{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border-radius:18px;padding:24px;position:relative;overflow:hidden;min-height:180px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 8px 32px #0000004d;transition:transform .3s}.bank-card:hover{transform:translateY(-4px)}.bank-card:before{content:"";position:absolute;top:-30%;right:-20%;width:200px;height:200px;border-radius:50%;background:#ffffff08;pointer-events:none}.bank-card:after{content:"";position:absolute;bottom:-20%;left:-10%;width:150px;height:150px;border-radius:50%;background:#ffffff05;pointer-events:none}.bank-card.visa{background:linear-gradient(135deg,#1a1a2e,#1e3a5f,#1a5276)}.bank-card.mastercard{background:linear-gradient(135deg,#2d1b3d,#4a1942,#6b2157)}.bank-card.checking{background:linear-gradient(135deg,#1a2e1a,#1e4d2b,#0d7a3e)}.bank-card.savings-card{background:linear-gradient(135deg,#2e2a1a,#4d3f1e,#7a6b0d)}.bank-card.credit{background:linear-gradient(135deg,#2e1a1a,#4d1e1e,#7a0d0d)}.bank-card-top{display:flex;justify-content:space-between;align-items:flex-start}.bank-card-institution{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#fff9}.bank-card-type{font-size:.65rem;text-transform:uppercase;letter-spacing:1.5px;padding:3px 10px;border-radius:20px;background:#ffffff1a;color:#ffffffb3}.bank-card-number{font-size:1.1rem;letter-spacing:3px;color:#ffffffb3;font-weight:500;margin:20px 0}.bank-card-bottom{display:flex;justify-content:space-between;align-items:flex-end}.bank-card-balance-label{font-size:.68rem;text-transform:uppercase;letter-spacing:1px;color:#fff6;margin-bottom:2px}.bank-card-balance{font-size:1.4rem;font-weight:700;color:#fff}.bank-card-actions{display:flex;gap:6px}.bank-card-actions button{padding:6px 12px;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:#ffffffb3;border-radius:8px;font-family:Inter,sans-serif;font-size:.7rem;cursor:pointer;transition:all .2s}.bank-card-actions button:hover{background:#ffffff1f;color:#fff}.bank-card-actions button.btn-remove:hover{background:#ef444433;border-color:#ef44444d;color:#ef4444}@media (max-width: 480px){.bank-cards-grid{grid-template-columns:1fr}.balance-amount{font-size:1.6rem}.bank-balance-banner{padding:18px 14px}}.bank-search-wrap{position:relative}.bank-search-wrap .input{width:100%;padding:12px 16px 12px 36px;border-radius:12px;border:1px solid rgba(255,255,255,.07);background:#ffffff08;color:#fff;font-family:Inter,sans-serif;font-size:.9rem;outline:none;transition:all .3s}.bank-search-wrap .input::placeholder{color:#ffffff2e}.bank-search-wrap .input:focus{border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.07);background:rgba(var(--accent-rgb),.03)}body.light .bank-search-wrap .input{background:#00000008;border-color:#0000001a;color:#1a1a2e}body.light .bank-search-wrap .input::placeholder{color:#0000004d}body.light .bank-search-wrap .input:focus{border-color:rgba(var(--accent-rgb),.4);background:rgba(var(--accent-rgb),.04)}.bank-search-result.hidden{display:none}.region-card.search-match{border-color:var(--accent, #10b981)!important;box-shadow:0 0 0 2px #10b98133}.region-card.search-dim{opacity:.3;pointer-events:none}.region-grid{display:flex;flex-direction:column;gap:10px;max-height:380px;overflow-y:auto;padding-right:4px}.region-grid::-webkit-scrollbar{width:4px}.region-grid::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.region-card{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff08;color:#fff;text-align:left;cursor:pointer;font-family:Inter,sans-serif;transition:all .2s;flex-shrink:0}.region-card:hover{border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.05)}.region-flag{font-size:1.1rem;letter-spacing:2px}.region-card strong{font-size:.92rem;font-weight:600}.region-provider{font-size:.72rem;color:var(--accent);font-weight:500;text-transform:uppercase;letter-spacing:.8px}.region-banks{font-size:.78rem;color:#ffffff59;line-height:1.4}body.light .region-card{background:#00000005;border-color:#00000014;color:#1a1a2e}body.light .region-card:hover{border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.04)}body.light .region-banks{color:#0006}.beta-badge{font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;padding:1px 6px;border-radius:8px;vertical-align:middle;margin-left:4px;animation:beta-pulse 2s ease-in-out infinite}@keyframes beta-pulse{0%,to{opacity:1}50%{opacity:.7}}.beta-tag{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;padding:3px 10px;border-radius:10px;vertical-align:middle;margin-left:8px}.region-status{position:absolute;top:8px;right:8px;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:6px}.region-status.ready{background:rgba(var(--accent-rgb),.15);color:var(--accent);border:1px solid rgba(var(--accent-rgb),.3)}.region-status.soon{background:#f59e0b1a;color:#f59e0b;border:1px solid rgba(245,158,11,.2)}.region-card{position:relative}.region-card.region-soon{opacity:.55}.region-card.region-soon:hover{opacity:.8}.region-card.region-ready{border-color:rgba(var(--accent-rgb),.15)}body.light .region-status.ready{background:rgba(var(--accent-rgb),.08)}body.light .region-status.soon{background:#f59e0b14}body.light .beta-badge,body.light .beta-tag{background:linear-gradient(135deg,#f59e0b,#ef4444)}.sa-bank-list{display:flex;flex-direction:column;gap:8px}.sa-bank-btn{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:14px;color:#ffffffd9;cursor:pointer;transition:all .2s;text-align:left}.sa-bank-btn:hover{border-color:#ffffff26;background:#ffffff12;transform:translate(4px)}.sa-bank-btn.selected{border-color:var(--accent);background:rgba(var(--accent-rgb),.1);box-shadow:0 0 0 1px rgba(var(--accent-rgb),.2)}.sa-bank-logo{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:800;color:#fff;flex-shrink:0;letter-spacing:-.5px}.sa-bank-name{font-size:.95rem;font-weight:600;color:#ffffffe6;line-height:1.2}.sa-bank-full{font-size:.72rem;color:#ffffff59;display:block;margin-top:1px}.sa-bank-btn .sa-bank-name,.sa-bank-btn .sa-bank-full{display:block}#saBankForm .form-group{margin-bottom:14px}#saBankForm label{display:block;font-size:.78rem;font-weight:600;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}#saBankForm .input{width:100%;padding:12px 14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-size:.9rem;font-family:inherit;transition:border-color .2s;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}#saBankForm .input:focus{outline:none;border-color:var(--accent);background:#ffffff14}#saBankForm select.input{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.4)' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}body.light .sa-bank-btn{background:#00000005;border-color:#00000014}body.light .sa-bank-btn:hover{background:#0000000a;border-color:#0000001f}body.light .sa-bank-btn.selected{border-color:var(--accent);background:rgba(var(--accent-rgb),.06)}body.light .sa-bank-name{color:#1a1a2e}body.light .sa-bank-full{color:#0006}body.light #saBankForm label{color:#00000080}body.light #saBankForm .input{background:#00000008;border-color:#0000001a;color:#1a1a2e}body.light #saBankForm .input:focus{border-color:var(--accent);background:#00000005}body.light #saBankForm select.input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(0,0,0,0.4)' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}.bank-providers-strip{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;padding:16px 0 4px;border-top:1px solid rgba(255,255,255,.06);margin-top:20px}.bank-providers-strip span{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#ffffff40;padding:4px 12px;border:1px solid rgba(255,255,255,.06);border-radius:20px}body.light .bank-providers-strip{border-top-color:#0000000f}body.light .bank-providers-strip span{color:#0000004d;border-color:#00000014}.inv-status{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-paid{background:#10b98126;color:#10b981}.status-pending{background:#f59e0b26;color:#f59e0b}.status-overdue{background:#ef444426;color:#ef4444}.btn-mark-paid{padding:4px 10px;border:1px solid rgba(16,185,129,.3);background:#10b9811a;color:#10b981;border-radius:6px;font-family:Inter,sans-serif;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-mark-paid:hover{background:#10b98140}.actions-cell{display:flex;gap:6px;align-items:center}.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.client-card{padding:20px!important}.client-card-header{display:flex;align-items:center;gap:14px;margin-bottom:16px}.client-avatar{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,rgba(var(--accent-rgb),.2),rgba(var(--accent-rgb),.1));color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0}.client-info{flex:1;min-width:0}.client-info h4{font-size:.95rem;font-weight:600;margin-bottom:2px}.client-info span{font-size:.78rem;color:#fff6;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-delete{flex-shrink:0}.client-stats{display:flex;gap:24px;padding-top:14px;border-top:1px solid rgba(255,255,255,.06)}.client-stats>div{display:flex;flex-direction:column}.client-stat-val{font-size:1rem;font-weight:700;color:#fff}.client-stat-lbl{font-size:.72rem;color:#ffffff59;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.pnl-breakdown{display:flex;flex-direction:column;gap:12px}.pnl-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.pnl-row-left{display:flex;align-items:center;gap:10px;min-width:140px}.pnl-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.pnl-row-left span{font-size:.85rem;color:#ffffffb3}.pnl-row-right{display:flex;align-items:center;gap:12px;flex:1}.pnl-bar-track{flex:1;height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden}.pnl-bar-fill{height:100%;border-radius:3px;transition:width .5s ease}.pnl-amount{font-size:.85rem;font-weight:600;color:#fff;min-width:80px;text-align:right}.pnl-pct{font-size:.75rem;color:#ffffff59;min-width:40px;text-align:right}body.light .client-info span{color:#0006}body.light .client-stats{border-top-color:#0000000f}body.light .client-stat-val{color:#1a1a2e}body.light .client-stat-lbl{color:#0006}body.light .pnl-row-left span{color:#0009}body.light .pnl-bar-track{background:#0000000f}body.light .pnl-amount{color:#1a1a2e}body.light .pnl-pct{color:#00000059}body.light .status-paid{background:#10b9811a}body.light .status-pending{background:#f59e0b1a}body.light .status-overdue{background:#ef44441a}.btn-change-inline{padding:3px 10px;margin-left:10px;border:1px solid rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.08);color:var(--accent);border-radius:6px;font-family:Inter,sans-serif;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-change-inline:hover{background:rgba(var(--accent-rgb),.18)}@media (max-width: 480px){.clients-grid{grid-template-columns:1fr}.pnl-row{flex-direction:column;align-items:flex-start;gap:6px}.pnl-row-right{width:100%}.actions-cell{flex-wrap:wrap}}.members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.member-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:20px;transition:transform .2s,box-shadow .2s}.member-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.member-card-header{display:flex;align-items:center;gap:14px;margin-bottom:16px}.member-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;color:#fff;flex-shrink:0}.member-info h4{font-size:1rem;font-weight:600;color:#fff;margin-bottom:2px}.member-role{font-size:.75rem;padding:2px 8px;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-parent{background:#8b5cf626;color:#a78bfa}.role-teen{background:#3b82f626;color:#60a5fa}.role-child{background:#f59e0b26;color:#fbbf24}.member-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:14px;border-top:1px solid rgba(255,255,255,.06)}.member-stat{text-align:center}.member-stat-val{display:block;font-weight:700;font-size:1rem;color:#fff}.member-stat-lbl{font-size:.7rem;color:#fff6;text-transform:uppercase;letter-spacing:.3px}.member-actions{display:flex;gap:8px;margin-top:14px}.member-actions button{flex:1;padding:6px;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#ffffff80;font-size:.75rem;font-family:Inter,sans-serif;cursor:pointer;transition:all .2s}.member-actions button:hover{background:rgba(var(--accent-rgb),.1);color:var(--accent);border-color:rgba(var(--accent-rgb),.2)}.member-actions .btn-remove:hover{background:#ef44441a;color:#ef4444;border-color:#ef444433}.allowance-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.allowance-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:20px}.allowance-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.allowance-header-left{display:flex;align-items:center;gap:12px}.allowance-mini-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:#fff}.allowance-name{font-weight:600;color:#fff}.allowance-amount{font-size:.85rem;color:#fff6}.allowance-progress{margin-bottom:12px}.allowance-bar-track{height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden;margin-bottom:6px}.allowance-bar-fill{height:100%;border-radius:4px;transition:width .5s ease}.allowance-bar-labels{display:flex;justify-content:space-between;font-size:.75rem;color:#fff6}.allowance-spent{color:var(--accent);font-weight:600}.allowance-log{border-top:1px solid rgba(255,255,255,.06);padding-top:12px}.allowance-log h5{font-size:.75rem;color:#ffffff4d;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.allowance-entry{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:.85rem}.allowance-entry-desc{color:#ffffffb3}.allowance-entry-amount{color:#ef4444;font-weight:600}.allowance-entry-amount.earned{color:#10b981}.chores-list{display:grid;gap:12px}.chore-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:16px 20px;display:flex;align-items:center;gap:16px;transition:all .2s}.chore-card:hover{border-color:rgba(var(--accent-rgb),.15)}.chore-card.completed{opacity:.5}.chore-check{width:24px;height:24px;border-radius:50%;border:2px solid rgba(255,255,255,.15);cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .2s}.chore-check:hover{border-color:var(--accent)}.chore-card.completed .chore-check{background:var(--accent);border-color:var(--accent)}.chore-card.completed .chore-check:after{content:"✓";color:#fff;font-size:12px;font-weight:700}.chore-details{flex:1}.chore-name{font-weight:600;color:#fff;margin-bottom:2px}.chore-card.completed .chore-name{text-decoration:line-through;color:#fff6}.chore-meta{font-size:.75rem;color:#fff6}.chore-reward{padding:4px 10px;background:#10b9811f;color:#10b981;border-radius:6px;font-weight:700;font-size:.85rem;white-space:nowrap}.chore-actions{display:flex;gap:6px}.chore-actions button{padding:4px 8px;border:none;background:transparent;color:#ffffff4d;cursor:pointer;border-radius:4px;transition:all .2s}.chore-actions button:hover{background:#ef44441a;color:#ef4444}.family-goals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.family-goal-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:20px}.family-goal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.family-goal-name{font-weight:700;font-size:1.05rem;color:#fff}.family-goal-deadline{font-size:.75rem;color:#ffffff59}.family-goal-progress{margin-bottom:14px}.family-goal-bar-track{height:10px;background:#ffffff0f;border-radius:5px;overflow:hidden;margin-bottom:8px}.family-goal-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),rgba(var(--accent-rgb),.6));border-radius:5px;transition:width .5s ease}.family-goal-amounts{display:flex;justify-content:space-between;font-size:.85rem}.family-goal-saved{color:var(--accent);font-weight:700}.family-goal-target{color:#fff6}.family-goal-contributors{border-top:1px solid rgba(255,255,255,.06);padding-top:12px}.family-goal-contributors h5{font-size:.7rem;color:#ffffff4d;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.contributor-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.contributor-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.contributor-name{flex:1;font-size:.8rem;color:#fff9}.contributor-amount{font-size:.8rem;font-weight:600;color:#fffc}.family-goal-actions{display:flex;gap:8px;margin-top:14px}.family-goal-actions button{flex:1;padding:8px;border-radius:8px;border:none;font-family:Inter,sans-serif;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-contribute{background:rgba(var(--accent-rgb),.12);color:var(--accent)}.btn-contribute:hover{background:rgba(var(--accent-rgb),.22)}.btn-goal-delete{background:#ef444414;color:#ef444499}.btn-goal-delete:hover{background:#ef444426;color:#ef4444}.color-picker-row{display:flex;gap:8px;flex-wrap:wrap}.color-dot{width:32px;height:32px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:all .2s}.color-dot:hover{transform:scale(1.15)}.color-dot.active{border-color:#fff;box-shadow:0 0 0 2px #fff3}.family-overview-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:20px}.family-spending-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.04)}.family-spending-row:last-child{border-bottom:none}.family-spending-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;color:#fff;flex-shrink:0}.family-spending-info{flex:1}.family-spending-name{font-weight:600;font-size:.85rem;color:#fff}.family-spending-bar{height:4px;background:#ffffff0f;border-radius:2px;margin-top:4px;overflow:hidden}.family-spending-bar-fill{height:100%;border-radius:2px}.family-spending-amount{font-weight:700;font-size:.85rem;color:#fffc;min-width:70px;text-align:right}body.light .member-info h4,body.light .member-stat-val{color:#1a1a2e}body.light .member-stat-lbl{color:#0006}body.light .member-stats{border-top-color:#0000000f}body.light .member-card,body.light .allowance-card{background:#00000005;border-color:#0000000f}body.light .allowance-name{color:#1a1a2e}body.light .allowance-bar-track{background:#0000000f}body.light .allowance-entry-desc{color:#0009}body.light .chore-card{background:#00000005;border-color:#0000000f}body.light .chore-name{color:#1a1a2e}body.light .chore-meta{color:#0006}body.light .family-goal-card{background:#00000005;border-color:#0000000f}body.light .family-goal-name{color:#1a1a2e}body.light .family-goal-bar-track{background:#0000000f}body.light .family-goal-target{color:#0006}body.light .color-dot.active{border-color:#1a1a2e;box-shadow:0 0 0 2px #0000001a}body.light .family-spending-name{color:#1a1a2e}body.light .family-spending-bar{background:#0000000f}body.light .family-spending-amount{color:#1a1a2e}@media (max-width: 480px){.members-grid,.allowance-cards,.family-goals-grid{grid-template-columns:1fr}.chore-card{flex-wrap:wrap}}.undo-toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%) translateY(100px);display:flex;align-items:center;gap:16px;padding:14px 20px;background:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:14px;box-shadow:0 12px 40px #00000080;z-index:600;transition:transform .35s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.undo-toast.show{transform:translate(-50%) translateY(0)}.undo-toast.hidden{display:none}.undo-message{color:#fffc;font-size:.88rem;font-weight:500}.undo-btn{padding:6px 16px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-family:Inter,sans-serif;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.undo-btn:hover{filter:brightness(1.2)}body.light .undo-toast{background:#fff;border-color:#00000014;box-shadow:0 12px 40px #00000026}body.light .undo-message{color:#1a1a2e}@media (max-width: 768px){.undo-toast{bottom:calc(80px + env(safe-area-inset-bottom,0px));left:16px;right:16px;transform:translate(0) translateY(100px);max-width:none}.undo-toast.show{transform:translate(0) translateY(0)}}.quick-add-bar{display:flex;gap:8px;align-items:center;padding:12px 16px;background:#ffffff06;border:1px solid rgba(255,255,255,.06);border-radius:14px;margin-bottom:20px;flex-wrap:wrap}.quick-select{padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#fff;font-family:Inter,sans-serif;font-size:.85rem;outline:none;min-width:140px;flex:1}.quick-select option{background:#12121a;color:#fff}.quick-input{padding:10px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#fff;font-family:Inter,sans-serif;font-size:.85rem;outline:none;width:110px;transition:border-color .2s}.quick-input:focus,.quick-select:focus{border-color:rgba(var(--accent-rgb),.4)}.quick-input::placeholder{color:#fff3}.quick-desc{flex:1;min-width:120px}.quick-add-btn{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:10px;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent),#000 20%));color:#fff;font-family:Inter,sans-serif;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;box-shadow:0 2px 10px rgba(var(--accent-rgb),.2)}.quick-add-btn:hover{box-shadow:0 4px 18px rgba(var(--accent-rgb),.35);transform:translateY(-1px)}.quick-add-btn:active{transform:translateY(0)}body.light .quick-add-bar{background:#fffc;border-color:#00000014}body.light .quick-select,body.light .quick-input{background:#ffffffe6;border-color:#0000001a;color:#1a1a2e}body.light .quick-select option{background:#fff;color:#1a1a2e}body.light .quick-input::placeholder{color:#0000004d}@media (max-width: 768px){.quick-add-bar{flex-direction:column;gap:8px}.quick-select,.quick-input,.quick-desc{width:100%;min-width:100%;font-size:16px}.quick-add-btn{width:100%;justify-content:center;min-height:44px}}.month-comparison{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;font-size:.85rem;font-weight:500;margin-bottom:16px;animation:fadeIn .3s ease}.month-comparison.up{background:#ef444414;border:1px solid rgba(239,68,68,.15);color:#ef4444}.month-comparison.down{background:#10b98114;border:1px solid rgba(16,185,129,.15);color:#10b981}.month-comparison.same{background:#6366f114;border:1px solid rgba(99,102,241,.15);color:#6366f1}.month-comparison.hidden{display:none}.comparison-icon{font-size:1.1rem}body.light .month-comparison.up{background:#ef44440f}body.light .month-comparison.down{background:#10b9810f}body.light .month-comparison.same{background:#6366f10f}.empty-state-action{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 20px}.empty-state-action p{font-size:.9rem;color:#ffffff59}body.light .empty-state-action p{color:#0006}.empty-action-btn{padding:10px 24px;border:1px solid rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.08);color:var(--accent);border-radius:10px;font-family:Inter,sans-serif;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s}.empty-action-btn:hover{background:rgba(var(--accent-rgb),.18);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--accent-rgb),.15)}.budget-ring-wrap{display:flex;align-items:center;justify-content:center;gap:24px;padding:20px}.budget-ring{position:relative;width:120px;height:120px;flex-shrink:0}.budget-ring svg{transform:rotate(-90deg)}.budget-ring-bg{fill:none;stroke:#ffffff0f;stroke-width:10}body.light .budget-ring-bg{stroke:#0000000f}.budget-ring-fill{fill:none;stroke-width:10;stroke-linecap:round;transition:stroke-dashoffset 1.2s cubic-bezier(.4,0,.2,1),stroke .5s}.budget-ring-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.budget-ring-pct{font-size:1.5rem;font-weight:800;letter-spacing:-.5px}.budget-ring-label{font-size:.65rem;color:#ffffff59;text-transform:uppercase;letter-spacing:.5px}body.light .budget-ring-label{color:#0006}.budget-ring-details{display:flex;flex-direction:column;gap:10px}.ring-detail{display:flex;align-items:center;gap:8px;font-size:.85rem}.ring-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ring-detail-label{color:#ffffff80}body.light .ring-detail-label{color:#00000080}.ring-detail-value{font-weight:700;margin-left:auto}@media (max-width: 480px){.budget-ring-wrap{flex-direction:column;gap:16px}.budget-ring{width:100px;height:100px}.budget-ring-pct{font-size:1.2rem}}.tour-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:800;pointer-events:all}.tour-overlay.hidden,.tour-spotlight.hidden,.tour-tooltip.hidden{display:none}.tour-spotlight{position:absolute;border-radius:14px;box-shadow:0 0 0 9999px #0000008c;z-index:801;transition:all .4s ease;pointer-events:none}.tour-tooltip{position:absolute;z-index:802;background:#1a1a2e;border:1px solid rgba(var(--accent-rgb),.2);border-radius:16px;padding:20px;max-width:300px;box-shadow:0 16px 48px #0006;animation:modalIn .3s ease}body.light .tour-tooltip{background:#fff;border-color:rgba(var(--accent-rgb),.15);box-shadow:0 16px 48px #0000001f}.tour-tooltip h3{font-size:1rem;font-weight:700;margin-bottom:6px;color:var(--accent)}.tour-tooltip p{font-size:.85rem;color:#fff9;line-height:1.5;margin-bottom:16px}body.light .tour-tooltip p{color:#0000008c}.tour-actions{display:flex;justify-content:space-between;align-items:center}.tour-dots{display:flex;gap:6px}.tour-dot{width:6px;height:6px;border-radius:50%;background:#ffffff26}body.light .tour-dot{background:#0000001f}.tour-dot.active{background:var(--accent);width:16px;border-radius:3px}.tour-next{padding:8px 18px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-family:Inter,sans-serif;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s}.tour-next:hover{filter:brightness(1.15)}.tour-skip{background:none;border:none;color:#ffffff59;font-family:Inter,sans-serif;font-size:.78rem;cursor:pointer}body.light .tour-skip{color:#00000059}.page-hint{position:absolute;z-index:50;display:flex;align-items:flex-start;gap:10px;max-width:300px;padding:14px 16px;background:#1a1a2e;border:1px solid rgba(16,185,129,.25);border-radius:14px;box-shadow:0 12px 40px #0006;animation:modalIn .3s ease;pointer-events:all}body.light .page-hint{background:#fff;border-color:#10b98133;box-shadow:0 12px 40px #0000001a}.page-hint-icon{font-size:1.2rem;flex-shrink:0;line-height:1}.page-hint-text{font-size:.8rem;line-height:1.5;color:#ffffffb3}body.light .page-hint-text{color:#0009}.page-hint-text strong{color:#10b981}.page-hint-close{position:absolute;top:6px;right:8px;background:none;border:none;color:#ffffff4d;font-size:1rem;cursor:pointer;line-height:1}body.light .page-hint-close{color:#0000004d}.page-hint-pulse{position:relative}.page-hint-pulse:after{content:"";position:absolute;top:-4px;right:-4px;width:10px;height:10px;border-radius:50%;background:#10b981;animation:pulse 1.5s ease infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.8);opacity:0}}.page-hints-bar{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}.hint-step{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#10b9810f;border:1px solid rgba(16,185,129,.12);border-radius:10px;font-size:.78rem;line-height:1.4;color:#fff9;flex:1;min-width:200px}body.light .hint-step{background:#10b9810a;border-color:#10b9811a;color:#0000008c}.hint-step-num{width:22px;height:22px;border-radius:50%;background:#10b981;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;flex-shrink:0}.hint-dismiss-all{padding:6px 14px;border:none;border-radius:8px;background:#ffffff0f;color:#fff6;font-family:Inter,sans-serif;font-size:.72rem;cursor:pointer;align-self:center}body.light .hint-dismiss-all{background:#0000000a;color:#0006}@media (max-width: 480px){.hint-step{min-width:100%}}.help-section{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-bottom:24px}.help-section-title{grid-column:1 / -1;font-size:1.1rem;font-weight:800;margin-bottom:4px;padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}body.light .help-section-title{border-top-color:#0000000f}.help-card{padding:20px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:16px;transition:all .25s}.help-card:hover{border-color:#10b98133;background:#10b98108}body.light .help-card{background:#00000005;border-color:#0000000f}body.light .help-card:hover{border-color:#10b98133;background:#10b98108}.help-card-icon{font-size:1.6rem;margin-bottom:10px}.help-card h3{font-size:.92rem;font-weight:700;margin-bottom:6px}.help-card p{font-size:.82rem;line-height:1.6;color:#ffffff80}body.light .help-card p{color:#0000008c}.help-card p strong{color:#10b981}@media (max-width: 480px){.help-section{grid-template-columns:1fr}}.swipe-row{position:relative;overflow:hidden;touch-action:pan-y}.swipe-row-inner{position:relative;z-index:2;transition:transform .25s ease;background:inherit}.swipe-action{position:absolute;top:0;bottom:0;width:80px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:#fff;z-index:1}.swipe-action-delete{right:0;background:#ef4444}.swipe-action-edit{left:0;background:#3b82f6}.global-search-trigger{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#ffffff59;font-family:Inter,sans-serif;font-size:.82rem;cursor:pointer;transition:all .2s;margin-bottom:16px}.global-search-trigger:hover{border-color:#ffffff26;color:#ffffff80}body.light .global-search-trigger{background:#00000008;border-color:#00000014;color:#00000059}.global-search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:700;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;animation:fadeIn .15s ease}.global-search-overlay.hidden{display:none}body.light .global-search-overlay{background:#0000004d}.global-search-box{width:90%;max-width:520px;background:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;box-shadow:0 24px 64px #00000080;animation:modalIn .2s ease}body.light .global-search-box{background:#fff;border-color:#0000001a;box-shadow:0 24px 64px #00000026}.global-search-input{width:100%;padding:16px 20px;border:none;background:transparent;color:#fff;font-family:Inter,sans-serif;font-size:1rem;outline:none}body.light .global-search-input{color:#111}.global-search-input::placeholder{color:#ffffff4d}body.light .global-search-input::placeholder{color:#0000004d}.global-search-results{max-height:320px;overflow-y:auto;border-top:1px solid rgba(255,255,255,.06)}body.light .global-search-results{border-top-color:#0000000f}.search-result-item{display:flex;align-items:center;gap:12px;padding:12px 20px;cursor:pointer;transition:background .15s}.search-result-item:hover{background:#ffffff0a}body.light .search-result-item:hover{background:#00000008}.search-result-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}.search-result-info{flex:1;min-width:0}.search-result-title{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-meta{font-size:.75rem;color:#ffffff59}body.light .search-result-meta{color:#0006}.search-result-amount{font-weight:700;font-size:.85rem;flex-shrink:0}.search-no-results{padding:24px;text-align:center;color:#ffffff4d;font-size:.85rem}body.light .search-no-results{color:#00000059}.search-result-group{padding:8px 20px 4px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#ffffff40}body.light .search-result-group{color:#0000004d}.recurring-suggestion{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:12px;background:#6366f114;border:1px solid rgba(99,102,241,.15);border-radius:12px;font-size:.85rem;animation:slideUp .3s ease}body.light .recurring-suggestion{background:#6366f10f;border-color:#6366f11f}.recurring-suggestion-icon{font-size:1.2rem;flex-shrink:0}.recurring-suggestion-text{flex:1;color:#ffffffb3;line-height:1.4}body.light .recurring-suggestion-text{color:#0009}.recurring-suggestion-text strong{color:#fff}body.light .recurring-suggestion-text strong{color:#111}.recurring-suggestion-actions{display:flex;gap:6px;flex-shrink:0}.recurring-suggestion-actions button{padding:6px 12px;border:none;border-radius:8px;font-family:Inter,sans-serif;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s}.recurring-yes{background:#6366f1;color:#fff}.recurring-dismiss{background:#ffffff0f;color:#ffffff80}body.light .recurring-dismiss{background:#0000000d;color:#00000080}@media (max-width: 480px){.recurring-suggestion{flex-wrap:wrap}.recurring-suggestion-actions{width:100%}.recurring-suggestion-actions button{flex:1}}.template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.template-card{padding:14px 10px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;text-align:center;cursor:pointer;transition:all .25s}.template-card:hover{border-color:#10b9814d;background:#10b9810a}.template-card.active{border-color:#10b98180;background:#10b98114}.template-card-icon{font-size:1.5rem;margin-bottom:6px}.template-card-name{font-size:.82rem;font-weight:600;margin-bottom:2px}.template-card-desc{font-size:.68rem;color:#ffffff59}body.light .template-card{border-color:#00000014;background:#00000005}body.light .template-card-desc{color:#0006}@media (max-width: 390px){.template-grid{grid-template-columns:1fr}}.edit-member-modal .field{margin-bottom:14px}.family-overview-card{padding:16px}.family-overview-title{font-size:.85rem;font-weight:700;margin-bottom:14px}.family-bar-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.family-bar-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:#fff;flex-shrink:0}.family-bar-info{flex:1;min-width:0}.family-bar-name{font-size:.78rem;font-weight:600;margin-bottom:3px}.family-bar-track{height:8px;border-radius:4px;background:#ffffff0f;overflow:hidden}body.light .family-bar-track{background:#0000000f}.family-bar-fill{height:100%;border-radius:4px;transition:width .6s ease}.family-bar-amount{font-size:.78rem;font-weight:700;min-width:60px;text-align:right}.tip-banner{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;margin-bottom:12px;border-radius:12px;background:#10b9810f;border:1px solid rgba(16,185,129,.12)}body.light .tip-banner{background:#10b9810a}.tip-banner-icon{font-size:1.3rem;flex-shrink:0;line-height:1}.tip-banner-text{font-size:.82rem;line-height:1.5;color:#ffffffa6}body.light .tip-banner-text{color:#0009}.tip-dismiss{background:none;border:none;color:#ffffff4d;cursor:pointer;font-size:1.1rem;margin-left:auto;flex-shrink:0}.wish-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:14px;margin-bottom:8px}body.light .wish-card{background:#00000005;border-color:#0000000f}.wish-icon{font-size:1.3rem;flex-shrink:0}.wish-info{flex:1;min-width:0}.wish-name{font-size:.85rem;font-weight:600}.wish-cost{font-size:.75rem;color:#fff6}body.light .wish-cost{color:#0006}.wish-progress-mini{width:60px;height:6px;border-radius:3px;background:#ffffff0f;overflow:hidden}body.light .wish-progress-mini{background:#0000000f}.wish-progress-fill{height:100%;border-radius:3px;background:#f59e0b;transition:width .5s}.wish-actions{display:flex;gap:4px}.wish-actions button{padding:5px 8px;border:none;border-radius:6px;font-size:.72rem;font-weight:600;font-family:Inter,sans-serif;cursor:pointer;transition:all .2s}.btn-wish-save{background:#f59e0b;color:#fff}.btn-wish-delete{background:#ffffff0f;color:#ffffff80}body.light .btn-wish-delete{background:#0000000d;color:#00000080}.leaderboard{display:flex;flex-direction:column;gap:8px}.leaderboard-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;background:#ffffff08}body.light .leaderboard-row{background:#00000005}.leaderboard-rank{font-size:1.1rem;font-weight:800;min-width:26px}.leaderboard-row:first-child .leaderboard-rank{color:#f59e0b}.leaderboard-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:#fff;flex-shrink:0}.leaderboard-name{flex:1;font-size:.85rem;font-weight:600}.leaderboard-amount{font-size:.85rem;font-weight:700;color:#10b981}.allowance-warning{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;background:#ef44441f;color:#ef4444;font-size:.7rem;font-weight:600;margin-top:4px}.family-report{max-height:60vh;overflow-y:auto}.report-section{margin-bottom:20px}.report-section h4{font-size:.85rem;font-weight:700;margin-bottom:8px;color:var(--accent)}.report-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:2px 12px;padding:6px 0;font-size:.82rem;border-bottom:1px solid rgba(255,255,255,.04)}body.light .report-row{border-bottom-color:#0000000a}.report-row-label{color:#fff9}body.light .report-row-label{color:#0000008c}html{scroll-behavior:smooth}.main-content,.modal,.table-wrap,.sidebar nav{scroll-behavior:smooth}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff26}body.light ::-webkit-scrollbar-thumb{background:#0000001a}body.light ::-webkit-scrollbar-thumb:hover{background:#0003}.modal-overlay{opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1);pointer-events:none}.modal-overlay:not(.hidden){opacity:1;pointer-events:auto;display:flex}.sidebar-overlay{opacity:0;transition:opacity .3s ease;display:block!important;pointer-events:none}.sidebar-overlay.active{opacity:1;pointer-events:auto}.page{animation:pageSlideIn .4s cubic-bezier(.22,1,.36,1)}@keyframes pageSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.stat-card{animation:cardFadeUp .5s cubic-bezier(.22,1,.36,1) backwards}.stats-grid .stat-card:nth-child(1){animation-delay:.05s}.stats-grid .stat-card:nth-child(2){animation-delay:.1s}.stats-grid .stat-card:nth-child(3){animation-delay:.15s}.stats-grid .stat-card:nth-child(4){animation-delay:.2s}@keyframes cardFadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.stat-card{transition:transform .3s cubic-bezier(.22,1,.36,1),border-color .3s,box-shadow .4s}.expense-table tr{transition:background .25s ease,transform .2s ease}.expense-table tr:hover td{background:#ffffff08}body.light .expense-table tr:hover td{background:#00000005}.btn-primary:active{transform:translateY(0) scale(.98);transition:transform .1s}.btn-delete:active{transform:scale(.9);transition:transform .1s}.input,.modal .field input,.modal .field select,.quick-add-bar input,.quick-add-bar select{transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}.input:focus,.modal .field input:focus,.modal .field select:focus{box-shadow:0 0 0 3px rgba(var(--accent-rgb),.12)}.nav-item{transition:all .25s cubic-bezier(.22,1,.36,1)}.nav-item:active{transform:scale(.97)}.mode-dropdown-menu{transition:opacity .2s ease,transform .2s cubic-bezier(.22,1,.36,1)}.loading-overlay{transition:opacity .5s cubic-bezier(.4,0,.2,1)}.quick-add-btn{transition:all .2s cubic-bezier(.22,1,.36,1)}.quick-add-btn:active{transform:translateY(0) scale(.96)}.category-badge{transition:transform .2s ease}.category-badge:hover{transform:scale(1.05)}.undo-toast{transition:transform .4s cubic-bezier(.22,1,.36,1),opacity .3s}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}.tracking-desc{color:#ffffff73}.invite-code-box{background:#10b98114;border:1px solid rgba(16,185,129,.2);color:inherit}body.light .tracking-desc{color:#00000073}body.light .invite-code-box{background:#10b9811f;border-color:#10b9814d;color:#1a1a2e}body.light #copyCodeBtn{background:#0000000f!important;color:#00000080!important}.stokvel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.stokvel-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:20px}.stokvel-card h3{font-size:1.1rem;margin-bottom:4px}.stokvel-card .stokvel-goal{color:#fff6;font-size:.8rem;margin-bottom:12px}.stokvel-card .stokvel-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.stokvel-card .stokvel-stat-label{color:#fff6;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px}.stokvel-card .stokvel-stat-value{font-size:1rem;font-weight:600;color:#10b981}.stokvel-progress{background:#ffffff0f;border-radius:8px;height:8px;overflow:hidden;margin-bottom:12px}.stokvel-progress-bar{height:100%;background:linear-gradient(90deg,#10b981,#06b6d4);border-radius:8px;transition:width .5s}.stokvel-actions{display:flex;gap:8px}.stokvel-actions button{flex:1;padding:8px;border-radius:10px;border:none;font-size:.8rem;font-weight:500;cursor:pointer;transition:opacity .2s}.stokvel-actions .btn-contrib{background:#10b98126;color:#10b981}.stokvel-actions .btn-delete-stokvel{background:#ef44441a;color:#ef4444}body.light .stokvel-card{background:#00000005;border-color:#0000000f}body.light .stokvel-card .stokvel-goal,body.light .stokvel-card .stokvel-stat-label{color:#00000073}body.light .stokvel-progress{background:#0000000f}.inline-form .field select{width:100%;padding:0 36px 0 16px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.07);background:#ffffff08;color:#fff;font-family:Inter,sans-serif;font-size:.9rem;outline:none;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%2712%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27rgba(255,255,255,0.4)%27 stroke-width=%272%27><path d=%27M6 9l6 6 6-6%27/></svg>");background-repeat:no-repeat;background-position:right 14px center}.inline-form .field select:focus{border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.07)}body.light .inline-form .field select{background-color:#00000008;border-color:#0000001a;color:#111;background-image:url("data:image/svg+xml;utf8,<svg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%2712%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27rgba(0,0,0,0.45)%27 stroke-width=%272%27><path d=%27M6 9l6 6 6-6%27/></svg>")}body.light .inline-form .field select option{background:#fff;color:#111}body.light .inline-form .field input{background-color:#00000008;border-color:#0000001a;color:#111}body.light .inline-form .field input::placeholder{color:#00000059}body.light .inline-form .field label{color:#00000080}body.light .tithe-slider{background:#00000026}body.light .tithe-slider:before{background:#fff;box-shadow:0 1px 3px #0003}body.light .sms-coming-soon p{color:inherit}.admin-page{max-width:1100px;margin:0 auto;padding:8px 0}.admin-page a{color:var(--accent, #10b981);text-decoration:none}.admin-page a:hover{text-decoration:underline}.admin-page .header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.admin-page .header h1{font-size:1.5rem;font-weight:700;color:#fff;margin:0}.admin-page .header h1 span{color:var(--accent, #10b981)}.admin-page .back-link{font-size:.875rem;color:#ffffff8c}.admin-page .back-link:hover{color:#fff}.admin-page .denied{text-align:center;padding:4rem 1rem;color:#ffffff8c;font-size:1.1rem}.admin-page .loading,.admin-page .empty{text-align:center;padding:3rem;color:#fff6}.admin-page .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.admin-page .stat-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem;display:block}.admin-page .stat-card .value{font-size:2rem;font-weight:700;color:#fff}.admin-page .stat-card .label{font-size:.8rem;color:#ffffff8c;margin-top:.25rem}.admin-page .stat-card.accent .value{color:var(--accent, #10b981)}.admin-page .tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:.5rem}.admin-page .tab-btn{background:none;border:none;color:#ffffff8c;font-size:.875rem;font-family:inherit;padding:.5rem 1rem;cursor:pointer;border-radius:6px;transition:all .2s}.admin-page .tab-btn:hover{color:#fff;background:#ffffff0a}.admin-page .tab-btn.active{color:var(--accent, #10b981);background:rgba(var(--accent-rgb),.1);font-weight:600}.admin-page .table-wrap{overflow-x:auto}.admin-page table{width:100%;border-collapse:collapse;font-size:.85rem}.admin-page th{text-align:left;color:#ffffff73;font-weight:600;padding:.75rem;border-bottom:1px solid rgba(255,255,255,.08);white-space:nowrap}.admin-page td{padding:.75rem;border-bottom:1px solid rgba(255,255,255,.04);white-space:nowrap;color:#ffffffd9}.admin-page tr:hover td{background:#ffffff05}.admin-page .badge{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.7rem;font-weight:600}.admin-page .badge-green{background:#10b98126;color:#34d399}.admin-page .badge-blue{background:#3b82f626;color:#60a5fa}.admin-page .badge-purple{background:#8b5cf626;color:#a78bfa}.admin-page .badge-gray{background:#94a3b826;color:#94a3b8}.admin-page .refresh-btn{background:rgba(var(--accent-rgb),.1);border:1px solid rgba(var(--accent-rgb),.2);color:var(--accent, #10b981);padding:.4rem 1rem;border-radius:8px;font-size:.8rem;cursor:pointer;font-family:inherit;transition:all .2s}.admin-page .refresh-btn:hover{background:rgba(var(--accent-rgb),.2)}body.light .admin-page .header h1{color:#1a1a2e}body.light .admin-page .back-link{color:#64748b}body.light .admin-page .back-link:hover{color:#1a1a2e}body.light .admin-page .denied,body.light .admin-page .loading,body.light .admin-page .empty{color:#94a3b8}body.light .admin-page .stat-card{background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000f}body.light .admin-page .stat-card .value{color:#1a1a2e}body.light .admin-page .stat-card .label{color:#64748b}body.light .admin-page .stat-card.accent .value{color:var(--accent, #10b981)}body.light .admin-page .tabs{border-bottom-color:#e2e8f0}body.light .admin-page .tab-btn{color:#64748b}body.light .admin-page .tab-btn:hover{color:#1a1a2e;background:#0000000a}body.light .admin-page .tab-btn.active{color:var(--accent, #10b981);background:rgba(var(--accent-rgb),.1)}body.light .admin-page th{color:#475569;border-bottom-color:#e2e8f0}body.light .admin-page td{color:#334155;border-bottom-color:#f1f5f9}body.light .admin-page tr:hover td{background:#00000005}body.light .admin-page .refresh-btn{background:rgba(var(--accent-rgb),.08);border-color:rgba(var(--accent-rgb),.2)}body.light .admin-page .badge-green{background:#10b9811a;color:#059669}body.light .admin-page .badge-blue{background:#3b82f61a;color:#2563eb}body.light .admin-page .badge-purple{background:#8b5cf61a;color:#7c3aed}body.light .admin-page .badge-gray{background:#64748b1a;color:#475569}@media (max-width: 640px){.admin-page .stats{grid-template-columns:1fr 1fr}.admin-page .header h1{font-size:1.25rem}}@media (max-width: 640px){.btn-scan{flex:0 0 44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px;padding:0!important;gap:0!important;display:flex!important;align-items:center;justify-content:center}.btn-scan svg{flex-shrink:0;width:20px;height:20px}.btn-scan .btn-scan-label{display:none}}.automation-toggle.account-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;flex-wrap:nowrap}.automation-toggle>div:first-child{flex:1 1 auto;min-width:0}@media (max-width: 640px){.automation-toggle.account-row{flex-direction:column!important;align-items:flex-start!important}.automation-toggle .tithe-toggle{align-self:flex-start}}@media (max-width: 640px){.page-header{flex-wrap:wrap;gap:12px}.page-header .header-actions{flex-wrap:wrap}}@media (max-width: 640px){.stats-grid{grid-template-columns:1fr 1fr}.inline-form{flex-direction:column;align-items:stretch}.inline-form .field{min-width:0}}body.junior-active,body:has(.junior-shell){display:block!important;background:linear-gradient(180deg,#fff7ed,#fef3c7)!important}body.junior-active #root,body:has(.junior-shell) #root{width:100%;min-height:100vh}.junior-shell{--junior-accent: #10b981;--junior-accent-soft: rgba(16, 185, 129, .1);--junior-hero-bg: #10b981;--junior-bg-from: #fff7ed;--junior-bg-to: #fef3c7;--junior-scale: 1;min-height:100vh;flex:1;width:100%;background:linear-gradient(180deg,var(--junior-bg-from) 0%,var(--junior-bg-to) 100%);color:#1f2937;font-family:Inter,system-ui,sans-serif;padding-bottom:calc(136px + env(safe-area-inset-bottom));font-size:calc(1rem * var(--junior-scale))}.junior-shell[data-bracket="7-9"]{--junior-accent: #f59e0b;--junior-accent-soft: rgba(245, 158, 11, .12);--junior-hero-bg: linear-gradient(135deg, #f59e0b, #ec4899);--junior-bg-from: #fff7ed;--junior-bg-to: #fce7f3;--junior-scale: 1.1}.junior-shell[data-bracket="13-15"]{--junior-accent: #3b82f6;--junior-accent-soft: rgba(59, 130, 246, .1);--junior-hero-bg: linear-gradient(135deg, #3b82f6, #8b5cf6);--junior-bg-from: #eff6ff;--junior-bg-to: #e0e7ff;--junior-scale: .96}.junior-shell[data-bracket="16-17"]{--junior-accent: #10b981;--junior-accent-soft: rgba(16, 185, 129, .12);--junior-hero-bg: linear-gradient(135deg, #1e293b, #0f172a);--junior-bg-from: #f8fafc;--junior-bg-to: #e2e8f0;--junior-scale: .92}.junior-shell.dark{background:linear-gradient(180deg,#1a1a2e,#16213e);color:#f9fafb}.junior-main{max-width:520px;margin:0 auto;padding:24px 20px 32px}.junior-bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #fde68a;padding:10px 16px calc(10px + env(safe-area-inset-bottom));display:flex;justify-content:space-around;z-index:100}.junior-grid-tiles{display:grid;gap:12px;grid-template-columns:1fr 1fr}.junior-grid-cards{display:grid;gap:12px;grid-template-columns:1fr}.junior-hero-span{grid-column:1 / -1}@keyframes junior-pop-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes junior-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}}@keyframes junior-pulse{0%,to{transform:scale(1);box-shadow:0 4px 12px #ef444440}50%{transform:scale(1.04);box-shadow:0 6px 20px #ef444473}}@keyframes junior-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes junior-bounce-in{0%{opacity:0;transform:scale(.3)}60%{opacity:1;transform:scale(1.1)}to{transform:scale(1)}}@keyframes junior-shine{0%{background-position:-200% center}to{background-position:200% center}}.junior-mission-card{animation:junior-pop-in .4s ease-out backwards}.junior-mission-card:hover{transform:translateY(-3px)!important;box-shadow:0 10px 24px #0000001a!important}.junior-mission-card:active{transform:translateY(-1px)!important}.junior-mission-card:hover>div:first-of-type>svg{animation:junior-wiggle .5s ease-in-out}.junior-mission-card{animation-delay:0ms}li:nth-child(2) .junior-mission-card{animation-delay:60ms}li:nth-child(3) .junior-mission-card{animation-delay:.12s}li:nth-child(4) .junior-mission-card{animation-delay:.18s}li:nth-child(5) .junior-mission-card{animation-delay:.24s}li:nth-child(6) .junior-mission-card{animation-delay:.3s}.junior-shell[data-bracket="7-9"] .junior-hero{animation:junior-float 4s ease-in-out infinite}.junior-grid-tiles>div{animation:junior-bounce-in .5s cubic-bezier(.34,1.56,.64,1) backwards}.junior-grid-tiles>div:nth-child(1){animation-delay:50ms}.junior-grid-tiles>div:nth-child(2){animation-delay:.15s}.junior-grid-tiles>div:nth-child(3){animation-delay:.25s}.junior-main a[href^="/junior/mission/"][style*=linear-gradient]{animation:junior-pulse 2.6s ease-in-out infinite}.junior-main a[href^="/junior/mission/"] span[style*="border-radius: 999"]{background:linear-gradient(90deg,#ffffff40 25%,#ffffff73,#ffffff40 75%)!important;background-size:200% auto!important;animation:junior-shine 3s linear infinite}.junior-bottom-nav a:active{transform:scale(.94);transition:transform .1s ease}@keyframes junior-celebrate-wow{0%{opacity:0;transform:scale(.3) rotate(-10deg)}50%{opacity:1;transform:scale(1.15) rotate(4deg)}70%{transform:scale(.95) rotate(-2deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes junior-celebrate-welldone{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes junior-celebrate-dot{0%{opacity:0;transform:translateY(0) scale(0)}30%{opacity:1;transform:translateY(-20px) scale(1.2)}to{opacity:0;transform:translateY(-40px) scale(.6)}}@keyframes junior-celebrate-check-pop{0%{opacity:0;transform:scale(0) rotate(-180deg)}60%{opacity:1;transform:scale(1.15) rotate(10deg)}to{opacity:1;transform:scale(1) rotate(0)}}.junior-celebrate-burst{position:relative;width:100%;height:100px;margin-bottom:8px}.junior-celebrate-dot{position:absolute;width:14px;height:14px;border-radius:50%;animation:junior-celebrate-dot 1.8s ease-out forwards}.junior-celebrate-check{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);animation:junior-celebrate-check-pop .7s cubic-bezier(.34,1.56,.64,1) backwards}.junior-celebrate-wow{font-size:2.6rem;font-weight:900;letter-spacing:.02em;color:#10b981;margin:8px 0 4px;animation:junior-celebrate-wow .9s cubic-bezier(.34,1.56,.64,1) backwards;animation-delay:.3s;text-shadow:0 2px 0 rgba(16,185,129,.2)}.junior-celebrate-welldone{font-size:1.2rem;font-weight:700;color:#1f2937;margin:0 0 4px;animation:junior-celebrate-welldone .6s ease-out backwards;animation-delay:.6s}@media (prefers-reduced-motion: reduce){.junior-celebrate-wow,.junior-celebrate-welldone,.junior-celebrate-dot,.junior-celebrate-check{animation:none!important}}.junior-jars-card{animation:junior-pop-in .5s ease-out backwards}.junior-jars-row{display:flex;justify-content:space-around;align-items:flex-end;gap:8px;padding:4px 4px 16px;margin-bottom:8px}.junior-jar{display:flex;flex-direction:column;align-items:center;gap:2px;animation:junior-bounce-in .6s cubic-bezier(.34,1.56,.64,1) backwards}.junior-jar:nth-child(1){animation-delay:80ms}.junior-jar:nth-child(2){animation-delay:.18s}.junior-jar:nth-child(3){animation-delay:.28s}.junior-jar svg{filter:drop-shadow(0 4px 10px rgba(0,0,0,.12))}.junior-jar-label{font-weight:700;font-size:.82rem;color:#1f2937;margin-top:2px}.junior-jar-pct{font-weight:800;font-size:1.05rem;color:#1f2937}.junior-jar-coin{animation:junior-float 2.6s ease-in-out infinite;transform-origin:center}.junior-jar:nth-child(2) .junior-jar-coin{animation-delay:.3s}.junior-jar:nth-child(3) .junior-jar-coin{animation-delay:.6s}.junior-jars-bar{position:relative}.junior-jars-bar.is-full:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:6px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.55) 50%,transparent 100%);background-size:200% 100%;animation:junior-shine 2s linear infinite;pointer-events:none}.junior-jars-field{animation:junior-pop-in .38s ease-out backwards}.junior-jars-total{font-weight:700;margin:14px 0 4px;text-align:center;font-size:1rem}.junior-jars-total.is-off{color:#dc2626;animation:junior-wiggle .42s ease-in-out}.junior-jars-total.is-ok{color:#10b981;animation:junior-bounce-in .5s cubic-bezier(.34,1.56,.64,1)}.junior-jars-save.can-save{animation:junior-pulse 2.6s ease-in-out infinite}.junior-jars-saved-badge{display:inline-block;animation:junior-bounce-in .5s cubic-bezier(.34,1.56,.64,1)}@media (prefers-reduced-motion: reduce){.junior-jars-card,.junior-jar,.junior-jar-coin,.junior-jars-bar.is-full:after,.junior-jars-field,.junior-jars-total,.junior-jars-save.can-save,.junior-jars-saved-badge{animation:none!important}.junior-jar svg g{transition:none!important}}@media (prefers-reduced-motion: reduce){.junior-mission-card,.junior-grid-tiles>div,.junior-shell[data-bracket="7-9"] .junior-hero,.junior-main a[href^="/junior/mission/"][style*=linear-gradient],.junior-main a[href^="/junior/mission/"] span[style*="border-radius: 999"]{animation:none!important}}.junior-auth-buttons{display:flex;gap:6px;flex-direction:row;order:-1;flex-basis:100%;justify-content:flex-end;padding:6px 4px;margin-bottom:4px;border-bottom:1px solid rgba(253,230,138,.6)}.junior-auth-buttons button{padding:6px 10px;font-size:.72rem;border-radius:8px;font-family:inherit;border:1px solid #e5e7eb;background:#fff;color:#1f2937;cursor:pointer;font-weight:600;display:inline-flex;align-items:center;gap:6px}.junior-auth-buttons .junior-signout-btn{color:#dc2626;border-color:#fecaca}.junior-bottom-nav{flex-wrap:wrap}@media (min-width: 900px){.junior-shell{display:grid;grid-template-columns:260px minmax(0,1fr);padding-bottom:0}.junior-main{grid-column:2;max-width:none;margin:0;padding:40px 64px 64px;width:100%}.junior-bottom-nav{position:sticky;top:0;left:auto;right:auto;bottom:auto;grid-column:1;grid-row:1;width:100%;height:100vh;flex-direction:column;justify-content:flex-start;gap:6px;padding:32px 16px 24px;border-top:0;border-right:1px solid rgba(251,191,36,.3);background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.junior-bottom-nav:before{content:"BudgetWise Junior";display:block;font-weight:800;font-size:.95rem;color:var(--junior-accent);padding:4px 12px 20px;letter-spacing:.01em}.junior-bottom-nav a,.junior-bottom-nav>button{flex-direction:row;justify-content:flex-start;gap:12px;padding:12px 16px;font-size:.95rem;border-radius:12px;width:100%}.junior-auth-buttons{flex-direction:column;order:0;flex-basis:auto;margin-top:auto;margin-bottom:0;padding:20px 0 0;border-bottom:0;border-top:1px solid rgba(251,191,36,.3);gap:8px;justify-content:flex-start}.junior-auth-buttons button{width:100%;padding:10px 14px;font-size:.88rem;border-radius:10px;justify-content:center}.junior-bottom-nav{flex-wrap:nowrap}.junior-hero{padding:40px 36px}.junior-hero h1{font-size:2.2rem}.junior-grid-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.junior-hero-span{grid-column:auto}.junior-grid-cards{grid-template-columns:1fr 1fr;gap:14px}}@media (min-width: 1400px){.junior-main{padding:48px 80px 80px}.junior-grid-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}.junior-bottom-nav a,.junior-bottom-nav button{background:none;border:0;font:inherit;padding:8px 12px;border-radius:12px;color:#6b7280;text-decoration:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;font-size:.78rem;gap:2px}.junior-bottom-nav a.active,.junior-bottom-nav button.active{color:var(--junior-accent);background:var(--junior-accent-soft);font-weight:600}.junior-hero{background:var(--junior-hero-bg);color:#fff;border-radius:24px;padding:28px 24px;box-shadow:0 20px 40px -16px #00000040}.junior-hero h1{font-size:1.8rem;font-weight:700;margin:0 0 8px}.junior-hero p{margin:0;opacity:.9;font-size:1rem}.junior-signout{margin-top:24px;background:#fff;color:#dc2626;border:1px solid #fecaca;border-radius:12px;padding:10px 16px;font:inherit;font-weight:600;cursor:pointer}
