*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:#0e0e0e;color:#e6edf3;line-height:1.5;min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased;overflow-x:hidden}@media(max-width:768px){.field-input,.login-input,.currency-input__field,.modal-form .field-input{font-size:16px}}#root{min-height:100vh}input[type=number]{appearance:textfield;-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.app{max-width:1040px;margin:0 auto;padding:40px 24px 56px;overflow-x:clip;overflow-y:visible;width:100%;box-sizing:border-box}.app-shell{position:relative;z-index:1;isolation:isolate;min-height:100vh;min-height:100dvh;background:#0e0e0e}.app-shell-content{position:relative;z-index:1}.app-header{margin-bottom:32px}.app-header-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px}.auth-bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.auth-email{font-size:.8125rem;color:#8b949e;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-signout{padding:8px 14px;border-radius:10px;border:1px solid rgba(240,246,252,.12);background:#f0f6fc0f;color:#e6edf3;font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer}.auth-signout:hover{background:#f0f6fc1a}.app--sync{min-height:50vh;display:flex;align-items:center;justify-content:center}.app-sync-text{font-size:.95rem;color:#8b949e}.firebase-config-banner{position:relative;z-index:4;max-width:1040px;margin:0 auto;padding:14px 24px;background:#bb80091f;border-bottom:1px solid rgba(187,128,9,.35);color:#e3b341;font-size:.8125rem;line-height:1.5}.firebase-config-banner--prod{background:#58a6ff14;border-bottom-color:#58a6ff33;color:#8b949e}.firebase-config-banner-title{display:block;color:#d4a72c;margin-bottom:6px}.firebase-config-banner--prod .firebase-config-banner-body{color:#8b949e}.firebase-config-banner--prod .firebase-config-banner-title{color:#79c0ff}.firebase-config-code{font-size:.78em;padding:2px 6px;border-radius:6px;background:#0d111780;color:#e6edf3}@keyframes vaultBannerDrop{0%{opacity:0;transform:translateY(-18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes vaultBannerLiftOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-16px) scale(.985)}}@keyframes vaultTimerDrain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.vault-action-banners{position:absolute;top:10px;left:0;right:0;z-index:90;display:grid;gap:10px;padding:0 14px;pointer-events:none}.vault-action-banner{pointer-events:auto;margin:0 auto;width:min(780px,100%);border-radius:14px;border:1px solid rgba(240,246,252,.12);background:#181818eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 18px 40px #00000080,0 0 0 1px #c799ff0f inset;overflow:hidden;animation:vaultBannerDrop .42s cubic-bezier(.22,1,.36,1) both;transform-origin:top center;transition:transform .16s ease,filter .16s ease}.vault-action-banner.is-exiting{animation:vaultBannerLiftOut .24s ease both}.vault-action-banner:hover{transform:translateY(-1px);filter:brightness(1.05)}.vault-action-banner-main{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px}.vault-action-banner-text{color:#e6edf3;font-size:.9rem;font-weight:650;letter-spacing:-.01em}.vault-action-banner-action{flex-shrink:0;padding:8px 12px;border-radius:999px;border:1px solid rgba(240,246,252,.16);background:#f0f6fc14;color:#e6edf3;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;transition:transform .16s ease,background .18s ease,border-color .18s ease}.vault-action-banner-action:hover:not(:disabled){transform:translateY(-1px);background:#4af8e31f;border-color:#4af8e338}.vault-action-banner-timer{height:3px;transform-origin:left;background:linear-gradient(90deg,#c799ffe6,#4af8e3d9);animation-name:vaultTimerDrain;animation-timing-function:linear;animation-fill-mode:forwards}.vault-action-banner--success .vault-action-banner-timer{background:linear-gradient(90deg,#4af8e3e6,#c799ffd9)}.vault-action-banner--error .vault-action-banner-timer{background:linear-gradient(90deg,#ff8ea3f2,#e3b341d9)}.vault-confirm-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:18px;background:#0000008c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.vault-confirm{width:min(520px,100%);border-radius:18px;border:1px solid rgba(240,246,252,.14);background:#121212f5;box-shadow:0 22px 60px #000000a6;padding:18px 18px 16px;animation:vaultBannerDrop .38s cubic-bezier(.22,1,.36,1) both}.vault-confirm-title{margin:0 0 8px;color:#f0f6fc;font-size:1.1rem;font-weight:850;letter-spacing:-.02em}.vault-confirm-desc{margin:0 0 14px;color:#9da7b3;line-height:1.5;font-size:.9rem}.vault-confirm-actions{display:flex;justify-content:flex-end;gap:10px}.vault-confirm-btn{padding:10px 14px;border-radius:12px;border:1px solid rgba(240,246,252,.14);background:#f0f6fc0f;color:#e6edf3;font-weight:750;cursor:pointer;transition:transform .16s ease,filter .16s ease,background .18s ease}.vault-confirm-btn:hover{transform:translateY(-1px);filter:brightness(1.05)}.vault-confirm-btn--ghost{background:#f0f6fc08}.vault-confirm-btn--primary{background:#c799ff29;border-color:#c799ff42}.vault-confirm-btn--danger{background:#ff8ea324;border-color:#ff8ea347}.login-screen{position:relative;isolation:isolate;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 20px;overflow:hidden;background:#0e0e0e}.login-screen--stitch{background:radial-gradient(1200px 600px at 50% -20%,rgba(43,26,61,.35),transparent 65%),#0e0e0e}@keyframes loginCardDrop{0%{opacity:0;transform:translateY(-36px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.login-card{animation:none;opacity:1;transform:none}}.login-card{position:relative;z-index:1;width:100%;max-width:440px;padding:30px 26px;border-radius:24px;background:#161616;border:1px solid rgba(72,72,71,.55);box-shadow:0 24px 56px #0000009e,0 0 0 1px #c799ff0f inset;animation:loginCardDrop .58s cubic-bezier(.22,1,.36,1) both}.login-title{font-size:clamp(2rem,4vw,2.45rem);font-weight:800;color:#f0f6fc;margin:0;letter-spacing:-.02em;text-transform:uppercase}.login-subtitle{font-size:.74rem;color:#adaaaa;margin:0;line-height:1.35;text-transform:uppercase;letter-spacing:.2em}.login-error{font-size:.8125rem;color:#ff8ea3;margin:0 0 14px;line-height:1.4}.login-info{font-size:.8125rem;color:#bfb8cc;margin:0 0 14px;line-height:1.45}.login-forgot-wrap{display:flex;justify-content:flex-end;margin-top:2px}.login-forgot{padding:0;border:none;background:none;color:#c799ff;font-size:.62rem;font-weight:700;font-family:inherit;cursor:pointer;text-transform:uppercase;letter-spacing:.12em;transition:color .2s ease}.login-forgot:hover:not(:disabled){color:#4af8e3}.login-forgot:disabled{opacity:.5;cursor:not-allowed}.login-google{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:15px 16px;border-radius:999px;border:1px solid rgba(72,72,71,.45);background:#262626b3;color:#fff;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-family:inherit;cursor:pointer;transition:transform .16s ease,filter .16s ease,background .2s ease}.login-google-icon{flex-shrink:0}.login-google:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);background:#2c2c2cbf}.login-google:disabled{opacity:.6;cursor:not-allowed}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0 16px;color:#6e7681;font-size:.62rem;text-transform:uppercase;letter-spacing:.26em;font-weight:800}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:#f0f6fc14}.login-divider--compact-top{margin-top:18px;margin-bottom:16px}.login-email-form{display:flex;flex-direction:column;gap:16px}.login-field{display:flex;flex-direction:column;gap:7px}.login-field-label{font-size:.66rem;font-weight:700;color:#adaaaa;text-transform:uppercase;letter-spacing:.12em;margin-left:1px}.login-input{width:100%;min-height:54px;border-radius:12px;border:1px solid rgba(72,72,71,.5);background:#000;color:#fff}.login-input-wrap{position:relative}.login-input-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#767575;font-size:19px;line-height:1;z-index:2;pointer-events:none}.login-input--icon{padding-left:50px!important}.login-input::placeholder{color:#7f7f86;opacity:1}.login-input:focus{border-color:#c799ffb3;box-shadow:0 0 0 2px #c799ff33}.login-field-top{display:flex;align-items:center;justify-content:space-between}.login-submit{margin-top:4px;min-height:54px;padding:0 16px;border-radius:999px;border:none;background:linear-gradient(135deg,#c799ff,#bc87fe);color:#340064;font-size:.95rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-family:inherit;cursor:pointer;box-shadow:0 20px 44px #c799ff38;transition:transform .16s ease,filter .16s ease,box-shadow .2s ease}.login-submit:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px) scale(1.01);box-shadow:0 24px 48px #c799ff47}.login-submit:disabled{opacity:.6;cursor:not-allowed}.login-toggle-mode{width:100%;margin-top:16px;padding:0;border:none;background:none;color:#adaaaa;font-size:.88rem;font-weight:600;font-family:inherit;cursor:pointer;text-align:center}.login-toggle-mode:hover{color:#4af8e3}.login-shell{width:100%;max-width:440px;display:flex;flex-direction:column;align-items:center;gap:26px;z-index:2}.login-brand-header{display:flex;flex-direction:column;align-items:center;gap:8px}.login-brand-icon-wrap{position:relative;width:116px;height:116px;display:grid;place-items:center}.login-brand-icon-glow{position:absolute;inset:0;border-radius:999px;background:#c799ff33;filter:blur(28px)}.login-title-logo{width:108px;height:108px;border-radius:14px;display:block;object-fit:cover;position:relative;z-index:1;border:1px solid rgba(199,153,255,.22)}.login-bg-glow{position:absolute;width:380px;height:380px;border-radius:999px;pointer-events:none;z-index:0;filter:blur(120px);opacity:.22}.login-bg-glow--left{top:-120px;left:-140px;background:#c799ff}.login-bg-glow--right{right:-140px;bottom:-120px;background:#4af8e3}.login-floor-glow{position:absolute;inset:auto 0 0;height:32vh;background:linear-gradient(0deg,rgba(199,153,255,.12),transparent);pointer-events:none;z-index:0}.login-grain{position:absolute;inset:0;pointer-events:none;opacity:.04;background-image:radial-gradient(rgba(255,255,255,.12) .5px,transparent .5px);background-size:3px 3px;z-index:0}.login-card--stitch{overflow:hidden}.app-title{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:700;letter-spacing:-.02em;color:#f0f6fc;margin-bottom:6px;display:flex;align-items:center;gap:12px}@media(max-width:480px){.login-brand-icon-wrap{width:100px;height:100px}.login-title-logo{width:92px;height:92px}}.app-subtitle{font-size:.95rem;font-weight:500;color:#8b949e}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-tabs{display:inline-flex;gap:4px;padding:5px;margin-bottom:28px;background:#161b22;border-radius:14px;border:1px solid rgba(240,246,252,.08);box-shadow:0 4px 16px #00000040}.app-tab{padding:10px 22px;border:none;border-radius:10px;background:transparent;color:#8b949e;font-size:.875rem;font-weight:600;font-family:inherit;cursor:pointer;transition:color .15s ease,background .15s ease}.app-tab:hover{color:#e6edf3;background:#f0f6fc0a}.app-tab--active{color:#f0f6fc;background:linear-gradient(145deg,#58a6ff38,#8957e52e);box-shadow:inset 0 1px #ffffff0f}.app-tab,.app-tab--active{transition:color .28s cubic-bezier(.16,1,.3,1),background .28s cubic-bezier(.16,1,.3,1),transform .2s ease,box-shadow .28s ease}.app-tab:active{transform:scale(.98)}.year-toolbar{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:24px}.year-toolbar-label{font-size:1.35rem;font-weight:700;color:#f0f6fc;letter-spacing:-.02em;min-width:4.5rem;text-align:center}.calendar-nav-btn{width:44px;height:44px;border-radius:12px;border:1px solid rgba(240,246,252,.1);background:#161b22;color:#c9d1d9;font-size:1.35rem;line-height:1;cursor:pointer;font-family:inherit;transition:background .15s ease,color .15s ease,border-color .15s ease}.calendar-nav-btn:hover{background:#58a6ff1f;border-color:#58a6ff59;color:#79c0ff}.goals-hero{position:relative;margin-bottom:28px;padding:28px 28px 26px;border-radius:20px;border:1px solid rgba(240,246,252,.08);background:radial-gradient(1200px 400px at 10% -20%,rgba(88,166,255,.14),transparent 55%),radial-gradient(900px 360px at 90% 0%,rgba(163,113,247,.12),transparent 50%),linear-gradient(165deg,#161b22,#12171f);box-shadow:0 24px 48px #00000073,inset 0 1px #ffffff0a;overflow:visible}.goals-hero:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(120deg,transparent 40%,rgba(255,255,255,.02) 50%,transparent 60%);animation:goalsShimmer 8s ease-in-out infinite}.goals-hero-head{position:relative;z-index:1;margin-bottom:22px}.goals-hero-eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#79c0ff;margin-bottom:8px}.goals-hero-title{font-size:clamp(1.25rem,3vw,1.5rem);font-weight:700;letter-spacing:-.03em;color:#f0f6fc;margin-bottom:10px}.goals-hero-lead{font-size:.875rem;line-height:1.55;color:#8b949e;max-width:40rem}.goals-empty-state{position:relative;z-index:1;padding:20px 18px;border-radius:14px;background:#0d11178c;border:1px dashed rgba(240,246,252,.12);color:#8b949e;font-size:.875rem;margin-bottom:20px}.goals-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:16px;margin-bottom:22px}.goal-card{padding:20px 20px 18px;border-radius:16px;background:#0d1117b8;border:1px solid rgba(240,246,252,.08);box-shadow:0 12px 28px #00000059;transition:border-color .3s ease,box-shadow .3s ease,transform .3s cubic-bezier(.16,1,.3,1)}.goal-card:hover{border-color:#58a6ff38;box-shadow:0 16px 36px #0006;transform:translateY(-2px)}.goal-card-top{display:flex;gap:18px;align-items:flex-start;margin-bottom:16px}.goal-card-main{flex:1;min-width:0}.goal-card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:6px}.goal-card-name{font-size:1rem;font-weight:650;color:#f0f6fc;letter-spacing:-.02em}.goal-card-remove{flex-shrink:0;padding:6px 12px;border-radius:10px;border:1px solid rgba(240,246,252,.1);background:#f851490f;color:#ff7b72;font-size:.72rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s ease,border-color .2s ease}.goal-card-remove:hover{background:#f8514924;border-color:#f8514959}.goal-card-kind{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#6e7681;margin-bottom:8px}.goal-card-kind-cat{text-transform:none;letter-spacing:0;color:#8b949e}.goal-card-detail{font-size:.8125rem;line-height:1.45;color:#c9d1d9}.goal-card-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:12px}.goal-field{display:flex;flex-direction:column;gap:6px;min-width:120px}.goal-field--grow{flex:1;min-width:160px}.goal-field--kind{min-width:200px}.goal-field-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6e7681}.goal-field-label--phantom{visibility:hidden}.goal-field-input,.goal-field .currency-input{width:100%;max-width:200px}.goal-field-select{width:100%}.goal-meter{height:8px;border-radius:999px;background:#f0f6fc14;overflow:hidden}.goal-meter--card{margin-top:4px}.goal-meter-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#238636,#2ea043);transition:width .55s cubic-bezier(.16,1,.3,1)}.goal-meter-fill--savings{background:linear-gradient(90deg,#238636,#56d364)}.goal-meter-fill--over{background:linear-gradient(90deg,#da3633,#f85149)}.goal-composer{position:relative;z-index:1;margin-top:8px;padding:20px;border-radius:16px;background:#0d111780;border:1px solid rgba(240,246,252,.07)}.goal-composer-title{display:block;font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8b949e;margin-bottom:14px}.goal-composer-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.goal-field--submit{min-width:120px}.goal-composer-submit{width:100%;min-height:44px;padding:0 20px;border-radius:12px;border:none;background:linear-gradient(135deg,#58a6ff59,#8957e559);color:#f0f6fc;font-weight:700;font-size:.875rem;font-family:inherit;cursor:pointer;box-shadow:0 8px 24px #58a6ff26;transition:transform .2s ease,filter .2s ease,box-shadow .25s ease}.goal-composer-submit:hover{filter:brightness(1.08);box-shadow:0 10px 28px #58a6ff38}.goal-composer-submit:active{transform:scale(.98)}.goal-ring{position:relative;flex-shrink:0;width:88px;height:88px}.goal-ring-progress{transition:stroke-dasharray .65s cubic-bezier(.16,1,.3,1)}.goal-ring-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:800;color:#e6edf3;pointer-events:none}.month-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:24px}@media(max-width:900px){.month-strip{grid-template-columns:repeat(3,1fr)}}@media(max-width:480px){.month-strip{grid-template-columns:repeat(2,1fr)}}.month-strip-cell{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;border-radius:12px;border:1px solid rgba(240,246,252,.08);background:#161b22;cursor:pointer;font-family:inherit;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.month-strip-cell:hover{border-color:#58a6ff73;box-shadow:0 0 0 1px #58a6ff26;transform:translateY(-1px)}.month-strip-name{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8b949e}.month-strip-net{font-size:.9rem;font-weight:700;color:#79c0ff}.month-strip-exp{font-size:.68rem;color:#6e7681}.calendar-card{background:#161b22;border-radius:16px;padding:22px 20px 26px;margin-bottom:20px;border:1px solid rgba(240,246,252,.06);box-shadow:0 8px 32px #0006}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding:0 4px}.calendar-title{font-size:1.1rem;font-weight:700;color:#f0f6fc;letter-spacing:-.02em}.calendar-title-year{font-weight:600;color:#8b949e}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:8px;padding:0 4px}.calendar-weekday{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6e7681;text-align:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:72px;padding:8px 4px 6px;border-radius:12px;border:1px solid transparent;background:#0d1117a6;color:#e6edf3;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .2s ease}.calendar-day:hover{background:#58a6ff1a;border-color:#58a6ff33}.calendar-day--muted{opacity:.38}.calendar-day--muted:hover{opacity:.55}.calendar-day--today{border-color:#2ea0438c;box-shadow:0 0 0 1px #2ea04340}.calendar-day--selected{border-color:#58a6ffd9;background:linear-gradient(160deg,#58a6ff33,#8957e524);box-shadow:0 0 24px #58a6ff1f}.calendar-day-num{font-size:.9rem;font-weight:600}.calendar-day-meta{margin-top:auto;min-height:14px;display:flex;align-items:center;justify-content:center}.calendar-day-spend{font-size:.62rem;font-weight:600;color:#f85149;opacity:.95}.calendar-day-dot{width:5px;height:5px;border-radius:50%;background:#58a6ff;opacity:.85}.day-scope-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;margin-bottom:20px;border-radius:12px;background:#58a6ff14;border:1px solid rgba(88,166,255,.2)}.day-scope-text{font-size:.875rem;color:#c9d1d9}.day-scope-text strong{color:#79c0ff}.day-scope-clear{padding:8px 14px;border-radius:10px;border:1px solid rgba(240,246,252,.15);background:#161b22;color:#e6edf3;font-size:.8125rem;font-weight:600;cursor:pointer;font-family:inherit}.day-scope-clear:hover{border-color:#58a6ff66;color:#79c0ff}.transactions-subtitle{font-size:.8125rem;color:#8b949e;margin:8px 0 18px;font-weight:500;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.transactions-empty{text-align:center;color:#6e7681;font-size:.875rem;padding:28px 16px!important}.transactions-empty-wrap{flex:1;min-height:0;display:grid;place-items:center}input[type=date]{color-scheme:dark}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}@media(max-width:720px){.summary{grid-template-columns:1fr}}.summary-card{position:relative;background:#161b22;border-radius:14px;padding:20px 20px 22px;overflow:hidden;border:1px solid rgba(240,246,252,.06);box-shadow:0 8px 24px #00000059;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease,border-color .25s ease}.summary-card:hover{transform:translateY(-3px);border-color:#f0f6fc1a;box-shadow:0 14px 36px #0000006b}.summary .summary-card:nth-child(1){animation:cardRise .55s cubic-bezier(.16,1,.3,1) backwards;animation-delay:.05s}.summary .summary-card:nth-child(2){animation:cardRise .55s cubic-bezier(.16,1,.3,1) backwards;animation-delay:.1s}.summary .summary-card:nth-child(3){animation:cardRise .55s cubic-bezier(.16,1,.3,1) backwards;animation-delay:.15s}.summary-card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:14px 14px 0 0}.summary-card--income:before{background:linear-gradient(90deg,#238636,#2ea043,#56d364)}.summary-card--expense:before{background:linear-gradient(90deg,#da3633,#f85149,#ff7b72)}.summary-card--balance:before{background:linear-gradient(90deg,#8957e5,#58a6ff,#79c0ff)}.summary-card-label{font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8b949e;margin-bottom:8px}.summary-card-value{font-size:clamp(1.5rem,3vw,1.85rem);font-weight:700;letter-spacing:-.02em;line-height:1.2}.summary-card-value--income{color:#2ea043}.summary-card-value--expense{color:#f85149}.summary-card-value--balance{color:#79c0ff}.chart-card{background:#161b22;border-radius:16px;padding:22px 24px 28px;margin-bottom:0;border:1px solid rgba(240,246,252,.06);box-shadow:0 8px 24px #00000059;animation:cardRise .6s cubic-bezier(.16,1,.3,1) backwards;animation-delay:.08s}.chart-card-title{font-size:1rem;font-weight:600;color:#f0f6fc;margin-bottom:24px}.chart-wrap{display:flex;gap:14px;align-items:stretch}.chart-y-labels{display:flex;flex-direction:column;justify-content:space-between;flex-shrink:0;width:44px;height:220px;font-size:.7rem;font-weight:500;color:#6e7681;text-align:right}.chart-plot{flex:1;min-width:0}.chart-plot-inner{position:relative;height:220px;margin-bottom:40px}.chart-grid{position:absolute;inset:0;display:flex;flex-direction:column;pointer-events:none}.chart-grid-segment{flex:1;border-top:1px solid rgba(240,246,252,.06)}.chart-grid-segment:first-child{border-top:none}.chart-bars{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:space-around;gap:8px;padding:0 4px;overflow:visible}.chart-bar-col{flex:1;max-width:88px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;position:relative;cursor:pointer}.chart-bar{width:100%;min-height:0;border-radius:10px 10px 4px 4px;transition:height .35s ease}.chart-bar-label{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:10px;font-size:.68rem;font-weight:500;color:#8b949e;text-align:center;white-space:normal;line-height:1.15;max-width:52px;width:max-content;overflow-wrap:anywhere;word-break:break-word}@media(max-width:560px){.chart-plot-inner{margin-bottom:56px}.chart-bars{gap:5px;padding:0 1px}.chart-bar-label{font-size:.58rem;max-width:40px;line-height:1.2}}.app-panels{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start;overflow:visible}@media(max-width:900px){.app-panels{grid-template-columns:1fr;min-width:0}.app-panels>*{min-width:0;max-width:100%}}.add-transaction,.transactions{background:#161b22;border-radius:16px;padding:22px 24px;border:1px solid rgba(240,246,252,.06);box-shadow:0 8px 24px #00000059;overflow:visible}.add-transaction h2,.transactions h2{font-size:.95rem;font-weight:600;color:#f0f6fc;margin-bottom:16px}.transaction-form{display:flex;flex-direction:column;gap:12px}.field-input{width:100%;min-height:44px;padding:0 14px;border-radius:12px;border:1px solid rgba(240,246,252,.12);background:#0d1117;color:#e6edf3;font-size:.875rem;font-family:inherit;transition:border-color .22s ease,box-shadow .22s ease,background .22s ease}.field-input--date{padding-top:0;padding-bottom:0}.field-input::placeholder{color:#6e7681}.field-input:hover{border-color:#f0f6fc2e}.field-input:focus{outline:none;border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff2e}.currency-input{display:flex;align-items:center;justify-content:flex-start;gap:0;width:100%;min-height:44px;border-radius:12px;border:1px solid rgba(240,246,252,.12);background:#0d1117;overflow:hidden;transition:border-color .24s cubic-bezier(.16,1,.3,1),box-shadow .24s cubic-bezier(.16,1,.3,1),transform .2s ease}.currency-input:hover{border-color:#f0f6fc2e}.currency-input:focus-within{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff2e;transform:translateY(-1px)}.currency-input--error{border-color:#f85149}.currency-input--error:focus-within{border-color:#f85149;box-shadow:0 0 0 3px #f8514933}.currency-input__prefix{display:flex;align-items:center;justify-content:center;padding:0 0 0 14px;color:var(--vault-muted, #8b949e);font-size:.9375rem;font-weight:600;font-variant-numeric:tabular-nums;flex-shrink:0;-webkit-user-select:none;user-select:none;border:none;line-height:1;transition:color .22s cubic-bezier(.16,1,.3,1),opacity .22s ease}.currency-input:focus-within .currency-input__prefix{color:color-mix(in srgb,var(--vault-primary, #c799ff) 75%,#fff)}.currency-input__field{flex:1;min-width:0;min-height:44px;padding:0 14px 0 10px;border:none!important;border-left:none!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.currency-input__field:focus{outline:none;box-shadow:none!important}.form-submit-btn{min-height:44px;padding:0 20px;margin-top:4px;border-radius:12px;border:none;background:linear-gradient(180deg,#238636,#2ea043);color:#fff;font-weight:600;font-size:.875rem;cursor:pointer;font-family:inherit;transition:transform .2s ease,filter .2s ease,box-shadow .25s ease;box-shadow:0 6px 20px #2ea04340}.form-submit-btn:hover{filter:brightness(1.08);box-shadow:0 8px 26px #2ea04352}.form-submit-btn:active{transform:scale(.99)}.date-field{display:flex;flex-direction:column;gap:6px}.date-field-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6e7681}.date-field-inner{position:relative;display:flex;align-items:center}.date-field-inner .field-input--date{width:100%;padding-left:44px;padding-right:12px;font-variant-numeric:tabular-nums;color:#f0f6fc;border-color:#f0f6fc24;background:linear-gradient(165deg,#0d1117,#12171f);box-shadow:inset 0 1px #ffffff0a}.date-field-inner .field-input--date:hover{border-color:#58a6ff47}.date-field-inner .field-input--date:focus{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff2e,inset 0 1px #ffffff0d}.date-field-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#79c0ff;opacity:.9;pointer-events:none}.date-field-inner .field-input--date::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.75;filter:invert(.72) sepia(.35) saturate(3) hue-rotate(175deg);padding:4px;margin-right:-4px}.date-field-inner .field-input--date::-webkit-calendar-picker-indicator:hover{opacity:1}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.filters--premium{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.filters--premium .animated-select{min-width:0}@media(max-width:480px){.filters--premium{grid-template-columns:1fr}}table{width:100%;border-collapse:collapse}thead{background:#f0f6fc0a}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid rgba(240,246,252,.06);font-size:.8125rem}th{font-size:.65rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#8b949e}td{color:#c9d1d9}th.actions-col,td.actions-col{text-align:right;width:1%;white-space:nowrap}.income-amount{color:#2ea043;font-weight:600}.expense-amount{color:#f85149;font-weight:600}.delete-btn{padding:6px 12px;border-radius:8px;background:#f851491f;border:1px solid rgba(248,81,73,.35);color:#ff7b72;cursor:pointer;font-size:.75rem;font-family:inherit}.delete-btn:hover{background:#f8514933}.charts-dashboard{display:grid;grid-template-columns:1fr;gap:20px;margin-bottom:24px}@media(min-width:960px){.charts-dashboard{grid-template-columns:1.12fr .88fr;align-items:start}}.charts-dashboard-pies{display:flex;flex-direction:column;gap:16px}.charts-dashboard-pies .pie-card{min-height:220px}.charts-dashboard-pies .pie-card-body,.charts-dashboard-pies .pie-card-body--compact{grid-template-columns:118px minmax(0,1fr);gap:10px;align-items:center}.charts-dashboard-pies .pie-svg-wrap,.charts-dashboard-pies .pie-svg-wrap--sm{width:100%;max-width:118px}.charts-dashboard-pies .pie-legend{min-width:0;gap:8px}.charts-dashboard-pies .pie-legend-row{grid-template-columns:10px minmax(0,1fr) auto auto;gap:6px 10px;font-size:.74rem;align-items:baseline}.charts-dashboard-pies .pie-legend-name,.charts-dashboard-pies .pie-legend-amt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pie-card{background:#161b22;border-radius:16px;padding:20px 22px 22px;border:1px solid rgba(240,246,252,.06);box-shadow:0 8px 24px #00000059;animation:cardRise .6s cubic-bezier(.16,1,.3,1) backwards;animation-delay:.12s}.pie-card--compact{animation-delay:.18s}.pie-card-title{font-size:.95rem;font-weight:600;color:#f0f6fc;margin-bottom:16px;letter-spacing:-.02em}.pie-card-empty{font-size:.875rem;color:#8b949e;line-height:1.5}.pie-card-body{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:20px;align-items:center}@media(max-width:640px){.pie-card-body{grid-template-columns:1fr;justify-items:center;text-align:center}.pie-legend{width:100%}}.pie-card-body--compact{grid-template-columns:minmax(0,140px) minmax(0,1fr)}.pie-svg-wrap{width:100%;max-width:200px;margin:0 auto;filter:drop-shadow(0 12px 24px rgba(0,0,0,.35))}.pie-svg-wrap--sm{max-width:140px}.pie-svg{width:100%;height:auto;display:block}.chart-hover-tooltip{position:fixed;z-index:9999;pointer-events:none;padding:9px 13px;border-radius:11px;font-size:.8rem;font-weight:600;line-height:1.35;letter-spacing:.01em;color:#f4ecff;background:linear-gradient(145deg,#26203af7,#120e1cfc);border:1px solid rgba(199,153,255,.5);box-shadow:0 0 0 1px #00000059,0 12px 32px #00000080;max-width:240px}.pie-slice{opacity:0;transform-origin:center;animation:pieSliceIn .55s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(var(--si, 0) * .06s);cursor:pointer}.pie-hole{fill:#12171f;stroke:#f0f6fc0f;stroke-width:1}.pie-center-label{fill:#8b949e;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.pie-center-value{fill:#f0f6fc;font-size:18px;font-weight:700}.pie-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.pie-legend-row{display:grid;grid-template-columns:10px 1fr auto auto;gap:10px 12px;align-items:center;font-size:.8125rem;color:#c9d1d9}.pie-legend-swatch{width:10px;height:10px;border-radius:3px;box-shadow:0 0 0 1px #ffffff0f}.pie-legend-name{font-weight:500;color:#e6edf3}.pie-legend-pct{font-weight:700;color:#8b949e;font-variant-numeric:tabular-nums}.pie-legend-amt{font-weight:600;color:#79c0ff;font-variant-numeric:tabular-nums}.animated-select{position:relative;width:100%}.animated-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;padding:0 14px;border-radius:12px;text-align:left;cursor:pointer;font-weight:500;font-size:.875rem;font-family:inherit;border:1px solid rgba(240,246,252,.12);background:#0d1117;color:#e6edf3;transition:border-color .22s ease,box-shadow .22s ease,transform .18s ease}.animated-select-trigger:hover{border-color:#f0f6fc33}.animated-select--open .animated-select-trigger{border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff2e}.animated-select--open{z-index:2}.animated-select-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.animated-select-chevron{flex-shrink:0;width:10px;height:10px;border-right:2px solid #8b949e;border-bottom:2px solid #8b949e;transform:rotate(45deg) translateY(-2px);transition:transform .28s cubic-bezier(.16,1,.3,1)}.animated-select--open .animated-select-chevron{transform:rotate(225deg) translateY(2px)}.animated-select--disabled .animated-select-trigger{opacity:.45;cursor:not-allowed}.animated-select-menu--portal{position:fixed;z-index:26000;margin:0;padding:6px;list-style:none;border-radius:12px;background:linear-gradient(180deg,#1f1c2a,#16131e);border:1px solid rgba(199,153,255,.35);box-shadow:0 24px 56px #0009,0 0 0 1px #58a6ff14;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(88,166,255,.35) rgba(240,246,252,.06);animation:selectMenuIn .26s cubic-bezier(.16,1,.3,1) both}.animated-select-menu--portal::-webkit-scrollbar{width:8px}.animated-select-menu--portal::-webkit-scrollbar-thumb{background:#58a6ff4d;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.animated-select-option{padding:11px 12px;border-radius:10px;font-size:.84rem;font-weight:500;color:#ddd8ea;cursor:pointer;transition:background .15s ease,color .15s ease,transform .15s ease;animation:selectOptionIn .32s cubic-bezier(.16,1,.3,1) backwards;animation-delay:calc(var(--opt-i, 0) * 35ms)}.animated-select-option:hover,.animated-select-option--highlight{background:#c799ff29;color:#fff}.animated-select-option--selected{color:#79c0ff}@keyframes cardRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes pieSliceIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes selectOptionIn{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@keyframes selectMenuIn{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes goalsShimmer{0%,to{opacity:.35;transform:translate(-30%)}50%{opacity:.6;transform:translate(30%)}}@keyframes fadeSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-toolbar{animation:fadeSlide .55s cubic-bezier(.16,1,.3,1) backwards}.animate-panel{animation:cardRise .55s cubic-bezier(.16,1,.3,1) backwards;animation-delay:.08s}.vault-budget-switch-anim{animation:fadeSlide .32s cubic-bezier(.16,1,.3,1) both}.vault-budget-carousel{overflow:hidden}.vault-budget-carousel-track{display:flex;transition:transform .35s cubic-bezier(.16,1,.3,1);will-change:transform}.vault-budget-carousel-page{flex:0 0 100%;display:flex;flex-direction:column;gap:10px}.vault-budget-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.vault-budget-carousel-arrow{width:34px;height:34px;border-radius:999px;border:1px solid rgba(199,153,255,.45);background:#121018db;color:#efe8fb;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .16s ease,filter .16s ease,border-color .2s ease}.vault-budget-carousel-arrow span{font-size:20px;line-height:1;display:block}.vault-budget-carousel-arrow:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06);border-color:#c799ffad}.vault-budget-carousel-arrow:disabled{opacity:.42;cursor:not-allowed;transform:none}.vault-budget-carousel-dots{display:flex;align-items:center;justify-content:center;gap:10px;flex:1}.vault-budget-carousel-dot{width:8px;height:8px;border-radius:999px;background:#f0f6fc2e;border:1px solid rgba(72,72,71,.8);transition:transform .18s ease,background .2s ease,border-color .2s ease}.vault-budget-carousel-dot.is-active{background:var(--vault-primary);border-color:#c799ffe6;transform:scale(1.15)}.vault-planning-budget-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:10px 0}.vault-planning-edit-form{display:grid;gap:10px;margin-top:8px}.vault-planning-edit-form .animated-select-trigger{min-height:44px;border-color:#a779ff8c;background:#141218}.goals-grid .goal-card.animate-card-in{animation:cardRise .55s cubic-bezier(.16,1,.3,1) backwards;animation-delay:calc(var(--i, 0) * .06s)}@media(prefers-reduced-motion:reduce){.pie-slice,.summary-card,.chart-card,.pie-card,.goal-card,.animate-toolbar,.animate-panel,.vault-page-switch,.vault-budget-switch-anim,.goals-grid .goal-card.animate-card-in{animation:none!important}.goal-ring-progress,.goal-meter-fill,.chart-bar{transition-duration:.01ms!important}.goals-hero:after{animation:none!important}.animated-select-menu--portal,.vault-confirm-backdrop,.vault-confirm-dialog,.vault-status-view{animation:none!important}.vault-chip-spotlight,.vault-budget-carousel-track{transition:none!important}}.accounts-panel{background:#161b22;border-radius:16px;padding:22px 24px 24px;margin-bottom:24px;border:1px solid rgba(240,246,252,.06);box-shadow:0 8px 24px #00000059}.accounts-panel-title{font-size:1rem;font-weight:600;color:#f0f6fc;margin-bottom:8px}.accounts-panel-lead{font-size:.8125rem;color:#8b949e;line-height:1.5;margin-bottom:18px;max-width:44rem}.accounts-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:12px;background:#58a6ff14;border:1px solid rgba(88,166,255,.2);margin-bottom:18px}.accounts-total-label{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8b949e}.accounts-total-value{font-size:1.35rem;font-weight:700;color:#79c0ff}.accounts-empty{font-size:.875rem;color:#6e7681;margin-bottom:16px}.accounts-list{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:10px}.accounts-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:12px;background:#0d11178c;border:1px solid rgba(240,246,252,.08)}.accounts-row-name{font-weight:600;color:#e6edf3;display:block}.accounts-row-kind{font-size:.72rem;color:#6e7681;text-transform:uppercase;letter-spacing:.06em}.accounts-row-controls{display:flex;align-items:center;gap:10px}.accounts-balance-wrap{width:120px;min-height:40px}.accounts-balance-wrap .currency-input__field,.accounts-balance-wrap.currency-input,.accounts-balance-input{min-height:40px}.accounts-add-row .currency-input.accounts-add-balance{flex:1;min-width:140px}.accounts-remove{padding:8px 12px;border-radius:8px;border:1px solid rgba(240,246,252,.12);background:transparent;color:#8b949e;font-size:.75rem;cursor:pointer;font-family:inherit}.accounts-remove:hover{color:#ff7b72;border-color:#f8514959}.accounts-add-form{padding-top:16px;border-top:1px solid rgba(240,246,252,.08)}.accounts-add-title{display:block;font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#8b949e;margin-bottom:12px}.accounts-add-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.accounts-add-row .field-input{flex:1;min-width:140px}.accounts-kind-select{min-width:160px}.accounts-add-btn{min-height:44px;padding:0 18px;border-radius:12px;border:none;background:linear-gradient(135deg,#58a6ff59,#8957e559);color:#f0f6fc;font-weight:600;font-size:.875rem;font-family:inherit;cursor:pointer}.accounts-add-btn:hover{filter:brightness(1.08)}.year-txn-hint{text-align:center;font-size:.875rem;color:#8b949e;margin:8px 0 0;padding:16px}.year-txn-hint-link{background:none;border:none;color:#79c0ff;font-weight:600;font-size:inherit;font-family:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.year-txn-hint-link:hover{color:#a371f7}.date-picker-trigger{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:0 14px;border-radius:12px;border:1px solid rgba(240,246,252,.14);background:linear-gradient(165deg,#0d1117,#12171f);color:#f0f6fc;font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;text-align:left;transition:border-color .2s ease,box-shadow .2s ease;box-shadow:inset 0 1px #ffffff0a}.date-picker-trigger:hover{border-color:#58a6ff59}.date-picker-trigger--open,.date-picker-trigger:focus{outline:none;border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff2e,inset 0 1px #ffffff0d}.date-picker-trigger-icon{flex-shrink:0;width:18px;height:18px;color:#79c0ff;opacity:.95}.date-picker-trigger-text{flex:1}.date-picker-popover{position:fixed;z-index:26000;padding:16px 14px 14px;border-radius:16px;background:linear-gradient(180deg,#1a2029,#161b22);border:1px solid rgba(240,246,252,.12);box-shadow:0 24px 64px #000000a6,0 0 0 1px #58a6ff1a;animation:selectMenuIn .22s cubic-bezier(.16,1,.3,1) both}.date-picker-popover-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.date-picker-month-label{font-weight:700;font-size:.95rem;color:#f0f6fc}.date-picker-nav{width:36px;height:36px;border-radius:10px;border:1px solid rgba(240,246,252,.1);background:#0d1117cc;color:#c9d1d9;font-size:1.2rem;cursor:pointer;font-family:inherit;line-height:1}.date-picker-nav:hover{border-color:#58a6ff66;color:#79c0ff}.date-picker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px}.date-picker-wd{font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6e7681;text-align:center}.date-picker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.date-picker-cell{aspect-ratio:1;max-height:38px;border:1px solid transparent;border-radius:10px;background:#0d111780;color:#e6edf3;font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.date-picker-cell:hover:not(:disabled){background:#58a6ff26;border-color:#58a6ff40}.date-picker-cell--muted{opacity:.35}.date-picker-cell--today:not(.date-picker-cell--selected){border-color:#2ea04373}.date-picker-cell--selected{background:linear-gradient(145deg,#58a6ff59,#a371f747);border-color:#58a6ff8c;color:#fff}.date-picker-cell:disabled{opacity:.2;cursor:not-allowed}.date-picker-footer{display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(240,246,252,.08)}.date-picker-foot-btn{padding:8px 14px;border-radius:10px;border:none;background:#58a6ff1f;color:#79c0ff;font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer}.date-picker-foot-btn:hover{background:#58a6ff33}.txn-form-hint{font-size:.78rem;color:#8b949e;margin:-6px 0 14px;line-height:1.45;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.txn-field-wrap{display:flex;flex-direction:column;gap:6px}.txn-field-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6e7681}.txn-optional{font-weight:500;text-transform:none;letter-spacing:0;color:#6e7681}.field-error{font-size:.78rem;color:#ff7b72;margin:0}.field-input--error{border-color:#f851498c!important}.txn-splits{padding:14px;border-radius:14px;background:#58a6ff0f;border:1px solid rgba(88,166,255,.12);overflow:hidden;box-sizing:border-box}.txn-splits-head{margin-bottom:12px}.txn-splits-sub{display:block;font-size:.72rem;color:#8b949e;margin-top:4px;font-weight:400;text-transform:none;letter-spacing:0}.txn-split-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,34%);gap:10px 12px;align-items:center;margin-bottom:10px;padding:12px 12px 10px;border-radius:12px;background:#0d111780;border:1px solid rgba(240,246,252,.07);box-sizing:border-box}.txn-split-row>.animated-select{grid-column:1;min-width:0}.txn-split-row>.currency-input.txn-split-amt{grid-column:2;min-width:0}.txn-split-row>.txn-split-remove{grid-column:1 / -1;justify-self:end;margin-top:2px}.txn-split-amt{min-height:44px}.txn-split-remove{padding:8px 14px;border-radius:10px;border:1px solid rgba(248,81,73,.22);background:#f851490f;color:#ff7b72;font-size:.75rem;font-weight:600;cursor:pointer;font-family:inherit;flex-shrink:0;white-space:nowrap}.txn-split-remove:hover{background:#f851491f;border-color:#f8514959}@media(max-width:480px){.txn-split-row{grid-template-columns:1fr}.txn-split-row>.animated-select,.txn-split-row>.currency-input.txn-split-amt{grid-column:1}}.txn-split-add{margin-top:8px;padding:10px 14px;border-radius:12px;border:1px solid rgba(88,166,255,.22);background:#58a6ff0f;color:#79c0ff;font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;width:100%;box-sizing:border-box}.txn-split-add:hover{background:#58a6ff1f;border-color:#58a6ff61}.transactions-table-wrap{overflow-x:auto;margin:0 -4px}.txn-desc-cell,.txn-splits-cell{font-size:.78rem;color:#8b949e;max-width:160px}.txn-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.edit-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;border:1px solid color-mix(in srgb,var(--vault-primary) 38%,rgba(255,255,255,.06));background:color-mix(in srgb,var(--vault-primary) 14%,transparent);color:color-mix(in srgb,var(--vault-primary) 85%,#e6edf3 15%);font-size:.72rem;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap}.edit-btn:hover{background:color-mix(in srgb,var(--vault-primary) 22%,transparent)}.edit-btn-text{white-space:nowrap}.edit-icon{width:14px;height:14px}@media(max-width:480px){.edit-btn-text{display:none}.transactions-table-wrap td.actions-col .edit-btn-text{display:inline}}.modal-backdrop{position:fixed;inset:0;z-index:20000;background:#000000b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px;animation:modalIn .2s ease both}@keyframes modalIn{0%{opacity:0}to{opacity:1}}@keyframes modalOut{0%{opacity:1}to{opacity:0}}.modal-backdrop.is-exiting{animation:modalOut .22s ease both}@keyframes modalDialogIn{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modalDialogOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(10px) scale(.985)}}.modal-dialog{animation:modalDialogIn .22s cubic-bezier(.22,1,.36,1) both}.modal-dialog.is-exiting{animation:modalDialogOut .22s ease both}@keyframes imageLightboxIn{0%{opacity:0}to{opacity:1}}@keyframes imageLightboxOut{0%{opacity:1}to{opacity:0}}@keyframes imageZoomIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes imageZoomOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}@keyframes saveBannerIn{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}.modal-dialog{width:100%;max-width:420px;max-height:min(90vh,720px);overflow-y:auto;border-radius:18px;background:linear-gradient(180deg,#1c222c,#161b22);border:1px solid rgba(240,246,252,.1);box-shadow:0 32px 80px #0009}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 12px;border-bottom:1px solid rgba(240,246,252,.08)}.modal-head h2{font-size:1rem;font-weight:600;color:#f0f6fc}.modal-close{width:36px;height:36px;border:none;border-radius:10px;background:#f0f6fc0f;color:#8b949e;font-size:1.35rem;line-height:1;cursor:pointer;font-family:inherit}.modal-close:hover{color:#f0f6fc;background:#f0f6fc1a}.modal-form{padding:18px 20px 22px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px;padding-top:16px;border-top:1px solid rgba(240,246,252,.08)}.modal-btn{min-height:42px;padding:0 18px;border-radius:12px;font-weight:600;font-size:.875rem;font-family:inherit;cursor:pointer;border:none}.modal-btn--ghost{background:transparent;border:1px solid rgba(240,246,252,.15);color:#c9d1d9}.modal-btn--ghost:hover{border-color:#f0f6fc47}.modal-btn--primary{background:linear-gradient(180deg,#238636,#2ea043);color:#fff}.modal-btn--primary:hover{filter:brightness(1.06)}@keyframes vaultConfirmBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes vaultConfirmBackdropOut{0%{opacity:1}to{opacity:0}}@keyframes vaultConfirmDialogIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes vaultConfirmDialogOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(8px) scale(.98)}}@keyframes vaultStatusViewIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.vault-confirm-backdrop{position:fixed;inset:0;z-index:20100;background:#000000bf;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:24px;animation:vaultConfirmBackdropIn .24s ease both}.vault-confirm-backdrop.is-exiting{animation:vaultConfirmBackdropOut .24s ease both}.vault-confirm-dialog{width:100%;max-width:400px;border-radius:18px;padding:22px 22px 20px;background:linear-gradient(180deg,var(--vault-surface-high) 0%,var(--vault-surface) 100%);border:1px solid var(--vault-outline);box-shadow:0 28px 72px #0000008c,0 0 0 1px #c799ff14;animation:vaultConfirmDialogIn .32s cubic-bezier(.16,1,.3,1) both}.vault-confirm-backdrop.is-exiting .vault-confirm-dialog{animation:vaultConfirmDialogOut .24s ease both}.vault-confirm-dialog h2{margin:0 0 12px;font-size:1.05rem;font-weight:700;color:var(--vault-text);letter-spacing:-.02em}.vault-confirm-message{margin:0 0 22px;font-size:.9rem;line-height:1.5;color:var(--vault-muted)}.vault-confirm-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.vault-confirm-btn{min-height:42px;padding:0 18px;border-radius:12px;font-weight:600;font-size:.875rem;font-family:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease}.vault-confirm-btn--ghost{background:transparent;border:1px solid var(--vault-outline);color:var(--vault-muted)}.vault-confirm-btn--ghost:hover{border-color:color-mix(in srgb,var(--vault-primary) 45%,var(--vault-outline));color:var(--vault-text)}.vault-confirm-btn--danger{border:none;background:linear-gradient(180deg,color-mix(in srgb,var(--vault-tertiary) 85%,#000) 0%,var(--vault-tertiary) 100%);color:#1a0a0d;box-shadow:0 4px 20px color-mix(in srgb,var(--vault-tertiary) 35%,transparent)}.vault-confirm-btn--danger:hover{filter:brightness(1.08);box-shadow:0 6px 24px color-mix(in srgb,var(--vault-tertiary) 45%,transparent)}.vault-edit-txn-dialog{background:linear-gradient(180deg,var(--vault-surface-high) 0%,var(--vault-surface) 100%);border:1px solid var(--vault-outline);box-shadow:0 32px 80px #000000a6,0 0 0 1px #c799ff0f}.vault-edit-txn-head{border-bottom-color:#484847d9}.vault-edit-txn-head h2{color:var(--vault-text);font-weight:700;letter-spacing:-.02em}.vault-edit-txn-close{background:var(--vault-surface-low);color:var(--vault-muted);border:1px solid var(--vault-outline)}.vault-edit-txn-close:hover{color:var(--vault-text);border-color:color-mix(in srgb,var(--vault-primary) 40%,var(--vault-outline));background:var(--vault-surface)}.vault-edit-txn-actions{border-top-color:#484847d9;display:flex;align-items:center;gap:10px}.vault-edit-txn-btn--ghost{border-color:var(--vault-outline);color:var(--vault-muted)}.vault-edit-txn-btn--ghost:hover{border-color:color-mix(in srgb,var(--vault-primary) 45%,var(--vault-outline));color:var(--vault-text)}.vault-edit-txn-btn--primary{background:linear-gradient(180deg,color-mix(in srgb,var(--vault-primary) 88%,#000) 0%,var(--vault-primary) 100%);color:#12081c;box-shadow:0 4px 24px color-mix(in srgb,var(--vault-primary) 32%,transparent)}.vault-edit-txn-btn--primary:hover{filter:brightness(1.07);box-shadow:0 6px 28px color-mix(in srgb,var(--vault-primary) 42%,transparent)}.vault-edit-txn-delete-icon-btn{width:34px;height:34px;border-radius:10px;border:1px solid rgba(255,142,163,.38);background:#ff8ea324;color:#ff9dac;display:inline-grid;place-items:center;cursor:pointer;transition:filter .16s ease,transform .16s ease,border-color .2s ease}.vault-edit-txn-delete-icon-btn svg{width:16px;height:16px}.vault-edit-txn-delete-icon-btn:hover{filter:brightness(1.08);transform:translateY(-1px);border-color:#ff8ea38f}.vault-edit-txn-dialog .currency-input{align-items:center;background:var(--vault-surface)!important;border-color:#484847d1!important;box-shadow:none!important}.vault-edit-txn-dialog .currency-input:focus-within{border-color:#c799ffad!important;box-shadow:0 0 0 2px #c799ff33!important;transform:translateY(-1px)}.vault-edit-txn-dialog .currency-input__prefix{padding-left:16px;color:color-mix(in srgb,var(--vault-primary) 55%,var(--vault-muted))!important}.vault-edit-txn-dialog .currency-input:focus-within .currency-input__prefix{color:var(--vault-primary)!important}.vault-edit-txn-dialog .currency-input__field{padding-left:8px;color:#fff!important}.vault-edit-txn-dialog .animated-select-trigger,.vault-edit-txn-dialog .date-picker-trigger{background:var(--vault-surface)!important;border-color:#484847d1!important;color:#fff!important;box-shadow:none!important}.vault-edit-txn-dialog .animated-select--open .animated-select-trigger,.vault-edit-txn-dialog .date-picker-trigger--open,.vault-edit-txn-dialog .date-picker-trigger:focus{border-color:#c799ffad!important;box-shadow:0 0 0 2px #c799ff33!important}.vault-edit-txn-dialog .animated-select-chevron{border-color:color-mix(in srgb,var(--vault-primary) 55%,#8b949e)}.image-lightbox-backdrop{position:fixed;inset:0;z-index:25000;background:#040406d6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px;animation:imageLightboxIn .24s ease both}.image-lightbox-backdrop.is-closing{animation:imageLightboxOut .22s ease both}.image-lightbox-frame{width:min(92vw,980px);display:grid;gap:10px;justify-items:center}.image-lightbox-actions{justify-self:end;display:inline-flex;gap:8px}.image-lightbox-btn{border:1px solid rgba(199,153,255,.45);background:#121018db;color:#efe8fb;border-radius:999px;min-height:36px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;font-family:inherit;font-size:.78rem;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .16s ease,filter .16s ease,border-color .2s ease}.image-lightbox-btn:hover{transform:translateY(-1px);filter:brightness(1.06);border-color:#c799ffad}.image-lightbox-image{width:min(92vw,980px);max-height:calc(100vh - 130px);border-radius:14px;object-fit:contain;box-shadow:0 24px 54px #0000008c;animation:imageZoomIn .26s cubic-bezier(.16,1,.3,1) both}.image-lightbox-backdrop.is-closing .image-lightbox-image{animation:imageZoomOut .2s ease both}.vault-save-banner{position:sticky;top:12px;z-index:80;margin-bottom:8px;width:fit-content;padding:9px 14px;border-radius:999px;border:1px solid rgba(74,248,227,.45);background:linear-gradient(135deg,#4af8e338,#1a2927d9);color:#dffef8;font-size:.78rem;font-weight:800;letter-spacing:.04em;animation:saveBannerIn .28s cubic-bezier(.16,1,.3,1) both}@media(max-width:900px){.app{padding:16px max(14px,env(safe-area-inset-right)) 40px max(14px,env(safe-area-inset-left))}.app-shell{min-height:100dvh}.app-header{margin-bottom:20px}.app-title{font-size:clamp(1.35rem,6vw,1.85rem)}.app-subtitle{font-size:.875rem}.auth-email{max-width:min(200px,45vw)}.app-tabs{display:flex;width:100%;max-width:100%;box-sizing:border-box;margin-bottom:20px;padding:4px;gap:3px}.app-tab{flex:1 1 0;min-width:0;padding:10px 8px;font-size:.8125rem;text-align:center}.firebase-config-banner{padding:12px max(14px,env(safe-area-inset-right)) 12px max(14px,env(safe-area-inset-left));font-size:.78rem}.year-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:18px}.year-toolbar-label{font-size:clamp(1.1rem,5vw,1.25rem);min-width:3.5rem}.goals-hero{padding:18px 16px 16px;margin-bottom:20px}.goals-hero:after{animation:none;opacity:0}.goals-grid{grid-template-columns:1fr}.calendar-card{padding:16px 10px 18px;margin-bottom:16px}.calendar-toolbar{margin-bottom:14px;padding:0 2px;gap:8px}.calendar-title{font-size:1rem;line-height:1.25}.calendar-weekdays{gap:4px;padding:0 2px}.calendar-grid{gap:4px}.calendar-day{min-height:56px;padding:6px 2px 4px;border-radius:10px}.calendar-day-num{font-size:.8rem}.day-scope-bar{flex-direction:column;align-items:stretch;padding:12px 14px;gap:10px}.day-scope-clear{width:100%;text-align:center}.charts-dashboard{gap:14px;margin-bottom:20px}.add-transaction,.transactions{padding:16px 14px;border-radius:14px}.transactions-table-wrap{margin:0;padding:0;overflow-x:visible}.transactions-table-wrap table,.transactions-table-wrap tbody,.transactions-table-wrap tr,.transactions-table-wrap td{width:100%;max-width:100%;box-sizing:border-box}.transactions-table-wrap table{display:block;border-collapse:separate;border-spacing:0}.transactions-table-wrap thead{display:none}.transactions-table-wrap tbody{display:block}.transactions-table-wrap tbody tr{display:block;margin-bottom:12px;border-radius:12px;background:#0d11178c;border:1px solid rgba(240,246,252,.08);overflow:hidden}.transactions-table-wrap tbody tr.transactions-empty-row{background:transparent;border:none;margin-bottom:0}.transactions-table-wrap td{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-start;justify-content:flex-start;gap:10px 12px;padding:10px 14px;border-bottom:1px solid rgba(240,246,252,.06);font-size:.8125rem;text-align:left}.transactions-table-wrap td:last-child{border-bottom:none}.transactions-table-wrap td:before{content:attr(data-label);flex:0 0 34%;max-width:7.5rem;font-size:.6rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#8b949e;line-height:1.35;padding-top:3px}.transactions-table-wrap .txn-cell-value{flex:1 1 0;min-width:0;text-align:right;word-break:break-word;overflow-wrap:anywhere;line-height:1.4}.transactions-table-wrap td.transactions-empty{display:block;text-align:center;border:none;padding:24px 16px}.transactions-table-wrap td.transactions-empty:before{display:none}.transactions-table-wrap td.actions-col{flex-direction:column;align-items:stretch;gap:10px;padding-top:12px;padding-bottom:14px}.transactions-table-wrap td.actions-col:before{flex:none;max-width:none;width:100%;padding-top:0}.transactions-table-wrap td.actions-col .txn-actions{width:100%;justify-content:stretch;flex-wrap:wrap}.transactions-table-wrap td.actions-col .edit-btn,.transactions-table-wrap td.actions-col .delete-btn{flex:1 1 calc(50% - 4px);min-height:44px;justify-content:center;box-sizing:border-box}.accounts-panel{padding:16px 14px 18px;margin-bottom:20px}.accounts-balance-wrap{width:100%;max-width:160px}.modal-backdrop{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));align-items:flex-end}.modal-dialog{max-height:min(92dvh,720px);border-radius:16px 16px 0 0}@media(min-height:540px){.modal-backdrop{align-items:center}.modal-dialog{border-radius:18px}}}@media(max-width:768px){.login-screen{padding:max(24px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.login-card{padding:24px 18px}}.stitch-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px}.stitch-tab-btn{border:1px solid rgba(240,246,252,.12);background:#161b22bf;color:#e6edf3;border-radius:12px;padding:10px 14px;font:inherit;font-size:.9rem;font-weight:600;cursor:pointer}.stitch-tab-btn--active{background:linear-gradient(120deg,#6f5cf9,#8c7bff);border-color:transparent;color:#fff}.stitch-screen{display:grid;gap:16px}.stitch-screen-head h2{margin:0;color:#f0f6fc}.stitch-screen-head p{margin:6px 0 0;color:#8b949e}.stitch-metrics-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.stitch-metric-card{padding:14px 16px;border-radius:14px;border:1px solid rgba(240,246,252,.1);background:#161b22b3}.stitch-metric-label{display:block;font-size:.82rem;color:#8b949e;margin-bottom:6px}.stitch-metric-card strong{color:#f0f6fc;font-size:1.15rem}.stitch-recent-card{border:1px solid rgba(240,246,252,.1);border-radius:14px;background:#161b22bf;padding:14px 16px}.stitch-recent-card h3{margin:0 0 8px}.stitch-recent-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.stitch-recent-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;font-size:.9rem;color:#c9d1d9;padding:8px 0;border-bottom:1px solid rgba(240,246,252,.07)}.stitch-recent-list li:last-child{border-bottom:none}.stitch-empty{margin:0;color:#8b949e}:root{--vault-bg: #0e0e0e;--vault-surface-low: #131313;--vault-surface: #1a1a1a;--vault-surface-high: #262626;--vault-primary: #c799ff;--vault-secondary: #4af8e3;--vault-tertiary: #ff9dac;--vault-text: #ffffff;--vault-muted: #adaaaa;--vault-outline: #484847}.field-input{width:100%;background:var(--vault-surface);color:#fff;border:1px solid rgba(72,72,71,.8);border-radius:12px;padding:10px 12px;box-sizing:border-box}.field-input:focus{outline:1px solid color-mix(in srgb,var(--vault-primary) 60%,transparent);border-color:color-mix(in srgb,var(--vault-primary) 60%,transparent)}.vault-app{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh;height:100vh;max-height:100vh;overflow:hidden;background:var(--vault-bg);color:var(--vault-text);font-family:Plus Jakarta Sans,Inter,system-ui,-apple-system,Segoe UI,sans-serif}.vault-sidenav{border-right:1px solid rgba(72,72,71,.6);padding:24px 16px;display:flex;flex-direction:column;gap:24px;background:color-mix(in srgb,var(--vault-bg) 92%,#000 8%)}.vault-branding h1{margin:0;font-size:2rem;color:var(--vault-primary)}.vault-branding p{margin:4px 0 0;color:var(--vault-muted);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.vault-sidenav-nav{display:flex;flex-direction:column;gap:6px}.vault-nav-item{border:1px solid transparent;background:transparent;color:var(--vault-muted);border-radius:12px;padding:10px 12px;text-align:left;font:inherit;cursor:pointer;display:flex;align-items:center;gap:12px;min-height:44px;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.vault-nav-icon{font-size:1.15rem;font-variation-settings:"wght" 500,"FILL" 0;opacity:.92}.vault-nav-item--active{background:#c799ff24;border-color:#c799ff73;color:#fff}.vault-nav-label{display:block;font-weight:700;font-size:.9rem;line-height:1.1}.vault-side-user{margin-top:auto;position:relative;display:grid;gap:12px}.vault-side-user-trigger{width:100%;border:1px solid rgba(72,72,71,.7);background:var(--vault-surface-low);color:#fff;border-radius:14px;padding:10px 12px;display:flex;align-items:center;gap:10px}.vault-new-btn--side{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:54px;box-shadow:0 10px 24px #a779ff33;transition:transform .18s ease,filter .18s ease}.vault-new-btn--side:hover{filter:brightness(1.06);transform:translateY(-1px)}.vault-side-support{border:none;background:transparent;color:var(--vault-muted);display:inline-flex;align-items:center;gap:10px;padding:0 14px;min-height:34px;font-weight:700;cursor:pointer;transition:color .15s ease}.vault-side-support:hover{color:#fff}.vault-side-signout{width:100%;border:none;background:transparent;color:var(--vault-muted);border-radius:12px;padding:6px 14px;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;cursor:pointer;font-weight:700;transition:color .15s ease}.vault-side-signout:hover{color:#fff}.vault-side-user-text{display:grid;min-width:0;text-align:left}.vault-side-user-text strong,.vault-side-user-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-side-user-text small{color:var(--vault-muted);font-size:.74rem}.vault-avatar{width:30px;height:30px;border-radius:999px;background:#c799ff33;border:1px solid rgba(199,153,255,.45);display:inline-flex;align-items:center;justify-content:center;color:#e9d9ff;font-weight:700;flex-shrink:0}.vault-user-menu{position:absolute;left:0;right:0;bottom:calc(100% + 8px);background:#161616;border:1px solid rgba(72,72,71,.8);border-radius:12px;padding:6px;z-index:60}.vault-user-menu button{width:100%;border:0;border-radius:9px;background:transparent;color:#fff;text-align:left;padding:10px;cursor:pointer}.vault-user-menu button:hover{background:#c799ff29}.vault-user-menu--top{left:auto;right:0;bottom:auto;top:calc(100% + 8px);min-width:170px}.vault-new-btn{border:none;border-radius:999px;background:var(--vault-primary);color:#280047;padding:12px 14px;font-weight:800;cursor:pointer}.vault-content{position:relative;padding:22px 28px;min-height:0;display:flex;flex-direction:column;overflow:hidden}.vault-app--mobile{grid-template-columns:1fr;min-height:100dvh;height:100dvh;max-height:100dvh;overflow:visible}.vault-content--mobile{padding:0 0 calc(88px + env(safe-area-inset-bottom));overflow:visible}.vault-mobile-topbar{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(72,72,71,.55);background:#0e0e0eeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.vault-mobile-topbar strong{font-size:1.05rem;letter-spacing:-.02em;color:var(--vault-primary)}.vault-content--mobile .vault-side-signout{border-radius:12px;padding:8px 10px}.vault-content--mobile .vault-page-switch{flex:1;min-height:0;padding:12px 14px 0;overflow-y:auto!important;overflow-x:hidden;-webkit-overflow-scrolling:touch}.vault-content--mobile .vault-page-switch--transactions-fill{overflow:hidden!important;display:flex;flex-direction:column}.vault-content--mobile .vault-screen{padding-bottom:14px}.mobile-tab-identity{display:flex;align-items:center;justify-content:space-between;margin:2px 0 10px}.mobile-tab-identity-user{display:inline-flex;align-items:center;gap:8px}.mobile-tab-identity-user strong{color:var(--vault-primary);text-transform:uppercase;font-size:.76rem;letter-spacing:.01em}.mobile-tab-identity-chat{width:34px;height:34px;border-radius:999px;border:1px solid rgba(88,88,96,.8);background:#1a1a20f2;color:var(--vault-primary);display:grid;place-items:center}.vault-content--mobile .vault-topbar{display:none}.vault-content--mobile .vault-screen-head h2{font-size:1.55rem}.vault-content--mobile .vault-screen-head p{font-size:.82rem}.vault-mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:60;height:72px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:10px 8px calc(10px + env(safe-area-inset-bottom));background:#0e0e0ef5;border-top:1px solid rgba(72,72,71,.55);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.vault-mobile-nav-item{border:none;background:transparent;color:var(--vault-muted);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:.7rem;font-weight:700;cursor:pointer;min-height:44px}.vault-mobile-nav-item .material-symbols-outlined{font-size:21px}.vault-mobile-nav-item.is-active{color:var(--vault-primary)}.vault-mobile-nav-add{position:absolute;left:50%;top:-20px;transform:translate(-50%);width:46px;height:46px;border:none;border-radius:14px;background:linear-gradient(180deg,#c799fff2,#8f58ddf2);color:#2a003f;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 10px 24px #00000059;cursor:pointer}.vault-mobile-nav-add .material-symbols-outlined{font-size:26px}.vault-content--mobile .vault-dash-grid,.vault-content--mobile .vault-budget-grid,.vault-content--mobile .vault-planning-grid,.vault-content--mobile .vault-add-grid,.vault-content--mobile .vault-account-grid,.vault-content--mobile .vault-credit-showcase,.vault-content--mobile .vault-trans-grid{grid-template-columns:1fr}.vault-screen--mobile-dashboard{display:grid;gap:12px}.mobile-dash-top{display:flex;justify-content:space-between;align-items:center}.mobile-dash-brand{display:flex;align-items:center;gap:10px}.mobile-dash-brand strong{color:var(--vault-primary);font-weight:800;letter-spacing:-.01em;text-transform:uppercase;font-size:.78rem}.mobile-dash-bell{width:36px;height:36px;border-radius:999px;border:1px solid rgba(72,72,71,.6);background:var(--vault-surface-low);color:var(--vault-primary);display:grid;place-items:center;cursor:pointer}.mobile-dash-header-title h2{margin:0;font-size:2.55rem;letter-spacing:-.03em}.mobile-dash-header-title p{margin:2px 0 0;color:var(--vault-muted);letter-spacing:.11em;font-size:.65rem;text-transform:uppercase}.mobile-dash-hero p{margin:0 0 4px;color:var(--vault-muted);font-size:.7rem;letter-spacing:.18em}.mobile-dash-hero-row{display:flex;align-items:baseline;gap:10px}.mobile-dash-hero-row h2{margin:0;font-size:2.6rem;letter-spacing:-.03em}.mobile-dash-hero-row span{color:var(--vault-secondary);font-weight:800}.mobile-dash-card{border:1px solid rgba(72,72,71,.58);border-radius:16px;background:var(--vault-surface-low);padding:14px;box-shadow:0 10px 18px #0003}.mobile-dash-card--chart{padding:12px}.mobile-dash-card-head{display:flex;align-items:center;justify-content:space-between}.mobile-dash-card-head h3{margin:0;font-size:1.05rem}.mobile-dash-card-head small,.mobile-dash-card-head button{color:var(--vault-primary);font-size:.76rem;letter-spacing:.08em;border:none;background:transparent;font-weight:800}.mobile-dash-portfolio ul{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:9px}.mobile-dash-portfolio li{display:flex;justify-content:space-between}.mobile-dash-portfolio li span{color:var(--vault-muted)}.mobile-dash-splitbar{margin-top:12px;height:6px;border-radius:999px;overflow:hidden;display:flex;background:#1d1d1d}.mobile-dash-splitbar i:nth-child(1){background:var(--vault-primary)}.mobile-dash-splitbar i:nth-child(2){background:var(--vault-secondary)}.mobile-dash-splitbar i:nth-child(3){background:var(--vault-tertiary)}.mobile-dash-insight{display:flex;gap:12px;align-items:center;text-align:left;cursor:pointer}.mobile-dash-insight p{margin:0 0 2px;color:var(--vault-primary);letter-spacing:.09em;font-size:.72rem;font-weight:800}.mobile-dash-insight strong{font-size:.95rem;line-height:1.45;color:#f4f4f7eb}.mobile-dash-insight-icon{width:40px;height:40px;border-radius:999px;display:grid;place-items:center;color:#2a003f;background:linear-gradient(180deg,#c799fff2,#8f58ddf2)}.mobile-dash-goals{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mobile-dash-goal h4{margin:0 0 10px;font-size:.92rem;letter-spacing:.08em}.mobile-dash-goal small{color:var(--vault-muted)}.mobile-dash-goal strong{display:block;margin-top:6px}.mobile-dash-ring{--ring: 0%;position:relative;width:76px;height:76px;border-radius:999px;margin:0 auto 10px;background:conic-gradient(var(--vault-secondary) var(--ring),#242424 0);display:grid;place-items:center}.mobile-dash-ring:before{content:"";width:58px;height:58px;border-radius:999px;background:var(--vault-surface-low);border:1px solid rgba(72,72,71,.5);position:absolute}.mobile-dash-ring span{position:relative;z-index:1;font-size:.82rem;font-weight:800}.mobile-dash-ring--pink{background:conic-gradient(var(--vault-tertiary) var(--ring),#242424 0)}.mobile-dash-recent-list{display:grid;gap:10px;margin-top:8px}.mobile-dash-recent-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;border:1px solid rgba(72,72,71,.58);border-radius:14px;background:var(--vault-surface-low);padding:10px;text-align:left}.mobile-dash-recent-row div strong{display:block}.mobile-dash-recent-row div small{color:var(--vault-muted)}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-card{border:none;background:transparent;box-shadow:none;padding:0;min-height:0}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-card:hover{transform:none}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-card-title{margin:0 0 8px;font-size:1.05rem}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-card-body,.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-card-body--compact{border-radius:14px;border:1px solid rgba(72,72,71,.5);background:linear-gradient(180deg,#1c1c22c7,#101014db);padding:12px 10px;min-height:172px;grid-template-columns:118px minmax(0,1fr);gap:10px;align-items:center}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-svg-wrap,.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-svg-wrap--sm{width:100%;max-width:118px;margin:0;justify-self:start}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend{min-width:0;width:100%}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-name,.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-pct,.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-amt{font-size:.82rem;white-space:nowrap}.vault-content--mobile .pie-legend-pct{display:none}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-amt{color:#f4f4f7eb}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-row{grid-template-columns:10px minmax(0,1fr) auto;gap:6px 10px;align-items:baseline}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-name{justify-self:start;overflow:hidden;text-overflow:ellipsis}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-pct,.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-amt{justify-self:end;white-space:nowrap}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-pct{display:none!important}.vault-content--mobile .charts-dashboard--accounts .pie-card-body,.vault-content--mobile .charts-dashboard--accounts .pie-card-body--compact{grid-template-columns:118px minmax(0,1fr);gap:10px;align-items:center}.vault-content--mobile .charts-dashboard--accounts .pie-svg-wrap{width:100%;max-width:118px;margin:0;justify-self:start}.vault-content--mobile .charts-dashboard--accounts .pie-legend{min-width:0;width:100%}.vault-content--mobile .charts-dashboard--accounts .pie-legend-row{grid-template-columns:10px minmax(0,1fr) auto;gap:6px 10px;align-items:baseline}.vault-content--mobile .charts-dashboard--accounts .pie-legend-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-content--mobile .charts-dashboard--accounts .pie-legend-amt{justify-self:end;white-space:nowrap}@media(max-width:640px){.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-card-body,.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-card-body--compact{grid-template-columns:118px minmax(0,1fr);justify-items:stretch;text-align:left;align-items:center;gap:10px;padding:11px 8px}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-card-body:not(.pie-card-body--compact){grid-template-columns:118px minmax(0,1fr)}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-svg-wrap{margin:0;justify-self:start;width:100%;max-width:118px}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-svg-wrap--sm{width:100%;max-width:118px}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-row{grid-template-columns:10px minmax(0,1fr) auto;gap:6px 10px}.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-name,.vault-screen--mobile-dashboard .mobile-dash-card--chart .pie-legend-amt{font-size:.77rem}}.mobile-dash-recent-row strong,.mobile-dash-recent-row .vault-txn-title-text strong{color:#f4f4f7f5}.vault-content--mobile .vault-screen{gap:12px}.vault-content--mobile .vault-screen-head{margin:0;padding:0 2px}.vault-content--mobile .vault-screen-head h2{font-size:2.25rem;letter-spacing:-.03em;line-height:1.05}.vault-content--mobile .vault-screen-head p{text-transform:uppercase;letter-spacing:.1em;font-size:.63rem;color:var(--vault-muted);margin-top:6px}.vault-content--mobile .vault-transactions,.vault-content--mobile .vault-add-page,.vault-content--mobile .vault-planning-pane,.vault-content--mobile .vault-budget-card,.vault-content--mobile .vault-rail-card,.vault-content--mobile .vault-account-card,.vault-content--mobile .vault-amount-card,.vault-content--mobile .vault-category-card,.vault-content--mobile .vault-detail-card,.vault-content--mobile .vault-receipt-card{border-radius:16px;border:1px solid rgba(72,72,71,.58);background:linear-gradient(180deg,#1b1b1ff2,#101013fa);box-shadow:0 12px 24px #0000003d}.vault-content--mobile .vault-add-page{border-color:transparent}.vault-content--mobile .vault-accounts{border:none;background:transparent;box-shadow:none;border-radius:0;margin-top:0}.vault-accounts--mobile .vault-accounts-head{border:none;box-shadow:none;padding-bottom:4px;margin-bottom:8px;gap:10px}.vault-content--mobile .vault-screen--assets .vault-screen-head{padding:0 16px;margin:0 0 2px}.vault-content--mobile .vault-planning-tabs{border-radius:12px;background:#ffffff08;padding:4px}.vault-content--mobile .vault-planning-tab{min-height:34px;border-radius:9px;font-size:.72rem;letter-spacing:.03em}.vault-content--mobile .vault-planning-tab.is-active{background:#af78ff38;color:#f1e7ff}.vault-content--mobile .vault-planning-grid:not(.vault-planning-grid--goals){gap:0}.vault-content--mobile .vault-planning-grid:not(.vault-planning-grid--goals)>.vault-budget-card:first-child{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none}.vault-content--mobile .vault-planning-grid:not(.vault-planning-grid--goals)>.vault-budget-card:last-child{border-top-left-radius:0;border-top-right-radius:0;border-top:1px solid rgba(90,90,98,.45)}.vault-content--mobile .vault-transaction-toolbar,.vault-content--mobile .vault-filter-row,.vault-content--mobile .vault-txn-period-bar,.vault-content--mobile .vault-plaid-panel,.vault-content--mobile .accounts-add-form{border-radius:14px;border:1px solid rgba(100,100,108,.28);background:#131317e0;padding:10px}.vault-content--mobile .vault-search--inner,.vault-content--mobile .field-input,.vault-content--mobile .txn-split-amt,.vault-content--mobile .accounts-add-balance,.vault-content--mobile .accounts-kind-select{border-radius:10px;background:#ffffff0a;border-color:#606066a6}.vault-content--mobile .vault-export-btn,.vault-content--mobile .vault-link-inline,.vault-content--mobile .vault-submit-btn,.vault-content--mobile .accounts-add-btn{border-radius:999px}.vault-content--mobile .vault-day-group{border-radius:14px;border:1px solid rgba(72,72,71,.58);background:#141417e6;padding:8px 8px 4px}.vault-content--mobile .vault-day-table>.vault-txn-row{border-radius:12px;margin-bottom:8px;border-color:#48484770;background:#0f0f12f5;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:9px 10px}.vault-content--mobile .vault-day-table>.vault-txn-row .vault-txn-main .category-txn-icon{width:34px;height:34px;border-radius:10px}.vault-content--mobile .vault-day-table>.vault-txn-row .vault-txn-title-text strong{font-size:.9rem}.vault-content--mobile .vault-day-table>.vault-txn-row .vault-txn-title-text p,.vault-content--mobile .vault-day-table>.vault-txn-row .vault-txn-main small,.vault-content--mobile .vault-day-table>.vault-txn-row .vault-txn-meta small{font-size:.73rem}.vault-content--mobile .vault-day-table>.vault-txn-row .vault-txn-meta{min-width:92px;gap:2px}.vault-content--mobile .vault-day-table>.vault-txn-row .txn-actions{display:none}.vault-content--mobile .vault-txn-title-text strong{color:#f4f4f7f5}.vault-transactions--mobile{gap:8px}.vault-transactions--mobile .vault-trans-grid-wrap--mobile{flex:1 1 auto;min-height:min(52vh,580px);overflow:hidden}.vault-transactions--mobile .vault-trans-grid-wrap--mobile .vault-txn-list-scroll{min-height:min(40vh,420px);overflow-y:auto;overscroll-behavior:contain}.vault-content--mobile .vault-screen--transactions .vault-rail-card{border-color:#64646c4d}.vault-transaction-toolbar--mobile{flex-direction:column;align-items:stretch}.vault-transaction-toolbar--mobile .vault-search--inner{width:100%}.vault-filter-row--mobile{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:8px 10px!important}.vault-filter-row--mobile .animated-select-trigger{min-height:36px;font-size:.78rem}.vault-txn-month-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:14px;border:1px solid rgba(100,100,108,.28);background:#131317f5;flex-shrink:0;animation:vaultFadeSlide .28s ease both}.vault-txn-month-footer-label{flex:1;text-align:center;font-size:.92rem;font-weight:700;color:#f4f4f7f2;letter-spacing:-.02em}.vault-txn-month-footer-btn{width:44px;height:44px;border-radius:12px;border:1px solid rgba(199,153,255,.35);background:#c799ff1a;color:var(--vault-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .14s ease,background .14s ease}.vault-txn-month-footer-btn:hover{background:#c799ff2e}.vault-txn-month-footer-btn:active{transform:scale(.96)}.vault-accounts--mobile .vault-curated-overview{margin-bottom:8px}.vault-accounts--mobile .accounts-panel-title{font-size:1.35rem}.vault-accounts--mobile .charts-dashboard--accounts{gap:10px;margin-top:10px}.vault-accounts-bank-footer{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.vault-accounts-bank-footer .vault-link-inline{width:100%;justify-content:center;text-align:center;padding:10px 8px;font-size:.78rem}.vault-content--mobile .vault-mobile-nav{border-top-color:#7e54b980;box-shadow:0 -8px 28px #0000005c}.finance-chat-fullscreen-layer{position:fixed;inset:0;z-index:200;pointer-events:auto}.finance-chat-fullscreen-backdrop{position:absolute;inset:0;background:#0000009e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.finance-chat-fullscreen{position:absolute;inset:0;display:flex;flex-direction:column;background:#0a0a0cf7;border:none;border-radius:0;box-shadow:none;overflow:hidden;animation:financeChatFullscreenIn .22s ease both}.finance-chat-fullscreen.is-closing{animation:financeChatFullscreenOut .2s ease both}@keyframes financeChatFullscreenIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes financeChatFullscreenOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(14px)}}.finance-chat-root{position:fixed;right:16px;bottom:calc(88px + env(safe-area-inset-bottom));z-index:70;display:flex;align-items:flex-end;justify-content:flex-end;pointer-events:none}.finance-chat-root .finance-chat-launcher{pointer-events:auto}@media(min-width:1101px){.finance-chat-root{bottom:24px;right:24px}}.finance-chat-launcher{width:52px;height:52px;border-radius:999px;border:1px solid rgba(199,153,255,.45);background:linear-gradient(180deg,#c089fff2,#8f58ddf2);color:#120a22;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 14px 28px #00000052;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease;will-change:transform}.finance-chat-launcher:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 20px 44px #0006;filter:saturate(1.05)}.finance-chat-launcher:active{transform:scale(.98)}.finance-chat-panel{width:min(640px,calc(100vw - 64px));height:min(720px,calc(100vh - 140px));border-radius:18px;border:1px solid rgba(255,255,255,.06);background:#0c0c0eeb;box-shadow:0 26px 60px #00000094,0 0 0 1px #c799ff0f inset;display:flex;flex-direction:column;overflow:hidden;margin-right:8px;animation:financeChatPanelIn .17s ease both;transition:transform .15s ease,box-shadow .15s ease}.finance-chat-panel:hover{transform:translateY(-2px);box-shadow:0 26px 52px #0000007a}@keyframes financeChatPanelIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.finance-chat-panel.is-closing{animation:financeChatPanelOut .17s ease both}@keyframes financeChatPanelOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}.finance-chat-fullscreen .finance-chat-log{flex:1;min-height:0}.finance-chat-head{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 12px;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.finance-chat-head-left{display:flex;align-items:center;gap:10px}.finance-chat-head-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#c799ff38;border:1px solid rgba(199,153,255,.28);color:#eadbff;flex-shrink:0}.finance-chat-head-icon .material-symbols-outlined{font-size:20px}.finance-chat-head-text{display:grid;gap:3px}.finance-chat-title{font-size:1.02rem;letter-spacing:-.01em;color:#f4f1ff}.finance-chat-status{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:#e7e4f4b8}.finance-chat-status-dot{width:8px;height:8px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 6px #22c55e1f}.finance-chat-head-actions{display:inline-flex;gap:6px}.finance-chat-icon-btn{width:34px;height:34px;border-radius:12px;border:1px solid rgba(255,255,255,.06);background:#ffffff05;color:#e7e4f4c7;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.finance-chat-icon-btn:disabled{opacity:.5;cursor:not-allowed}.finance-chat-icon-btn:hover:not(:disabled){background:#ffffff0a}.finance-chat-log{flex:1;min-height:0;padding:16px 16px 10px;overflow-y:auto;display:grid;gap:14px;background:radial-gradient(120% 160% at 0% 0%,rgba(199,153,255,.08),transparent 45%),#0c0c0ee0}.finance-chat-suggestions,.finance-chat-inputbar{flex-shrink:0}.finance-chat-row{display:flex;align-items:flex-end;gap:10px;animation:financeChatMsgIn .18s ease both}.finance-chat-row--user{justify-content:flex-end}.finance-chat-avatar{width:26px;height:26px;border-radius:999px;display:grid;place-items:center;flex-shrink:0}.finance-chat-avatar .material-symbols-outlined{font-size:16px}.finance-chat-avatar--ai{background:#c799ff2e;border:1px solid rgba(199,153,255,.22);color:#eee4ffe6}.finance-chat-avatar--user{background:#ffffff12;border:1px solid rgba(255,255,255,.08);color:#f0f6fccc}.finance-chat-bubble{max-width:min(520px,78%);border-radius:16px;padding:14px 16px;border:1px solid rgba(255,255,255,.06);background:#ffffff08;color:#f0f6fcdb;box-shadow:0 10px 24px #00000038;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.finance-chat-bubble:hover{transform:translateY(-1px);box-shadow:0 14px 30px #00000047}.finance-chat-bubble p{margin:0;font-size:.92rem;line-height:1.55;white-space:pre-wrap}.finance-chat-bulletlist{margin:0;padding-left:18px;display:grid;gap:8px}.finance-chat-bulletlist li{color:#f0f6fcdb;font-size:.92rem;line-height:1.45}.finance-chat-bubble--user{background:#c799ff1f;border-color:#c799ff2e}@keyframes financeChatMsgIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.finance-chat-bubble--typing{padding:12px 14px;min-width:68px}.finance-chat-dots{display:inline-flex;gap:6px;align-items:center}.finance-chat-dots>span{width:7px;height:7px;border-radius:999px;background:#f0f6fc99;animation:financeChatDot .9s ease-in-out infinite}.finance-chat-dots>span:nth-child(2){animation-delay:.12s}.finance-chat-dots>span:nth-child(3){animation-delay:.24s}@keyframes financeChatDot{0%,to{transform:translateY(0);opacity:.55}50%{transform:translateY(-4px);opacity:.95}}.finance-chat-suggestions{padding:10px 16px 12px;display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;background:#0c0c0eeb}.finance-chat-chip{border:1px solid rgba(255,255,255,.06);background:#ffffff08;color:#f0f6fcc7;border-radius:14px;padding:10px 12px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font:inherit;font-size:.82rem}.finance-chat-chip .material-symbols-outlined{font-size:18px;color:#f0f6fcb3}.finance-chat-chip:hover:not(:disabled){background:#ffffff0d}.finance-chat-chip:disabled{opacity:.6;cursor:not-allowed}.finance-chat-inputbar{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid rgba(255,255,255,.06);background:#0c0c0ef5}.finance-chat-attach{width:38px;height:38px;border-radius:14px;border:1px solid rgba(255,255,255,.06);background:#ffffff05;color:#f0f6fca6;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.finance-chat-attach:disabled{opacity:.55;cursor:not-allowed}.finance-chat-inputline{flex:1;height:44px;border-radius:16px;border:1px solid rgba(255,255,255,.06);background:#ffffff08;color:#f0f6fcdb;padding:0 14px;outline:none;font:inherit;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.finance-chat-inputline:focus{border-color:#c799ff47;box-shadow:0 0 0 2px #c799ff24}.finance-chat-inputline::placeholder{color:#f0f6fc73}.finance-chat-sendbtn{width:44px;height:44px;border:none;border-radius:14px;cursor:pointer;background:linear-gradient(180deg,#c089fff2,#8f58ddf2);color:#130a26;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 14px 26px #0000004d;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}.finance-chat-sendbtn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 32px #0000005c;filter:saturate(1.05)}.finance-chat-sendbtn:active:not(:disabled){transform:scale(.98)}.finance-chat-sendbtn:disabled{opacity:.55;cursor:not-allowed}.finance-chat-sendbtn .material-symbols-outlined{font-size:20px}.vault-page-switch{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;animation:fadeSlide .42s cubic-bezier(.16,1,.3,1) both}.vault-page-switch--transactions-fill,.vault-page-switch--insights-fill{overflow:hidden;display:flex;flex-direction:column}.vault-screen--transactions{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;gap:12px}.vault-screen--transactions>.vault-screen-head{flex-shrink:0}.vault-screen--transactions .vault-transactions{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.vault-transactions>h2,.vault-transactions>.transactions-subtitle,.vault-transactions>.vault-transaction-toolbar,.vault-transactions>.vault-txn-period-bar,.vault-transactions>.vault-filter-row{flex-shrink:0}.vault-trans-grid-wrap{flex:1;min-height:0;min-width:0;overflow:hidden}.vault-trans-grid-wrap .vault-trans-grid{height:100%;min-height:0;align-items:stretch}.vault-trans-grid-wrap .vault-timeline{min-height:0;display:flex;flex-direction:column;overflow:hidden}.vault-txn-list-scroll{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;padding-right:8px;scrollbar-width:thin;scrollbar-color:rgba(199,153,255,.45) rgba(22,20,30,.95)}.vault-txn-list-scroll::-webkit-scrollbar{width:10px}.vault-txn-list-scroll::-webkit-scrollbar-track{background:#12101aeb;border-radius:999px}.vault-txn-list-scroll::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#c799ff8c,#9370db66);border-radius:999px;border:2px solid rgba(18,16,26,.92)}.vault-txn-list-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#d2aaffa6,#a782e680)}.vault-trans-grid-wrap .vault-right-rail{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(199,153,255,.45) rgba(22,20,30,.95);padding-right:4px}.vault-trans-grid-wrap .vault-right-rail::-webkit-scrollbar{width:10px}.vault-trans-grid-wrap .vault-right-rail::-webkit-scrollbar-track{background:#12101aeb;border-radius:999px}.vault-trans-grid-wrap .vault-right-rail::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#c799ff73,#9370db59);border-radius:999px;border:2px solid rgba(18,16,26,.92)}.vault-screen--insights{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;gap:0}.vault-insights-layout{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.vault-insights-layout--simple{gap:16px}.vault-insights-hero{flex-shrink:0;padding:0 2px 4px}.vault-insights-hero h2{margin:0 0 8px;font-size:1.35rem;letter-spacing:-.02em}.vault-insights-hero-sub{margin:0;max-width:42rem;font-size:.95rem;line-height:1.5;color:var(--vault-muted)}.vault-insights-scroll-middle--cards{padding-right:6px}.vault-insights-card-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.vault-insights-simple-card{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:14px;border:1px solid rgba(199,153,255,.22);background:linear-gradient(135deg,#c799ff12,#16141ef0)}.vault-insights-simple-card-num{flex-shrink:0;width:28px;height:28px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;background:#c799ff38;color:#eed8ff}.vault-insights-simple-card-body h3{margin:0 0 6px;font-size:1rem;font-weight:600}.vault-insights-simple-card-body p{margin:0;font-size:.92rem;line-height:1.5;color:#e6edf3e6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.vault-ai-bottom-panel--solo .vault-ai-bottom-swap{animation:none}.vault-insights-layout--no-page-scroll{overflow:hidden;min-height:0}.vault-insights-middle--fit{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding-right:2px}.vault-insights-card-list--fit{flex:1 1 auto;min-height:0;overflow:hidden}.vault-insights-fit-hint{flex-shrink:0;margin:10px 0 0;padding:10px 12px;font-size:.8rem;line-height:1.4;color:var(--vault-muted);border-radius:10px;border:1px dashed rgba(199,153,255,.25);background:#c799ff0d}.vault-insights-hero-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:14px}.vault-insights-more-btn{flex-shrink:0}.vault-insights-inline-error{margin:8px 0 0;font-size:.85rem}.vault-insights-top-block{flex-shrink:0}.vault-insights-scroll-middle{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.vault-insights-scroll-middle .vault-insights-grid{margin-top:0}.vault-ai-bottom-panel{flex-shrink:0;height:min(52vh,640px);min-height:320px;display:flex;flex-direction:column;border-radius:16px;border:1px solid rgba(72,72,71,.75);background:var(--vault-surface-low);overflow:hidden}.vault-screen--insights .vault-ai-bottom-panel{height:clamp(280px,38vh,440px);min-height:280px;max-height:440px}.vault-ai-panel-head{flex-shrink:0;padding:12px 14px 10px;border-bottom:1px solid rgba(72,72,71,.55)}.vault-ai-panel-title{margin:0 0 4px;font-size:1rem}.vault-ai-panel-caption{margin:0}.vault-ai-plan-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}.vault-ai-plan-head .vault-insights-plan-actions-inline{margin-top:4px}.vault-insights-plan-actions-inline{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.vault-plan-panel-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px 14px 14px}.vault-chat-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.vault-chat-bubble{max-width:min(92%,520px);padding:10px 14px;border-radius:14px;font-size:.9rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}.vault-chat-bubble--user{align-self:flex-end;background:#c799ff38;border:1px solid rgba(199,153,255,.35);color:#f0e8ff}.vault-chat-bubble--ai{align-self:flex-start;background:#f0f6fc0f;border:1px solid rgba(240,246,252,.1)}.vault-chat-thinking{display:inline-flex;align-items:center;gap:5px;min-width:56px}.vault-chat-thinking-dot{width:7px;height:7px;border-radius:50%;background:#c799ffd9;animation:vaultChatDotBounce 1.05s ease-in-out infinite both}.vault-chat-thinking-dot:nth-child(2){animation-delay:.15s}.vault-chat-thinking-dot:nth-child(3){animation-delay:.3s}@keyframes vaultChatDotBounce{0%,70%,to{transform:translateY(0);opacity:.35}35%{transform:translateY(-5px);opacity:1}}.vault-chat-input-row{flex-shrink:0;display:flex;gap:10px;padding:10px 12px;border-top:1px solid rgba(72,72,71,.55);align-items:center}.vault-chat-input{flex:1;min-width:0}.vault-chat-send{flex-shrink:0}.vault-chat-hint,.vault-chat-foot-error{margin:0}.vault-chat-foot-error{padding:0 14px 4px}.vault-insights-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.vault-insights-secondary-btn{min-height:42px;padding:0 18px;border-radius:12px;border:1px solid rgba(199,153,255,.35);background:transparent;color:var(--vault-primary);font-weight:600;font-size:.875rem;cursor:pointer;font-family:inherit;transition:background .2s ease,border-color .2s ease}.vault-insights-secondary-btn:hover:not(:disabled){background:#c799ff1a;border-color:#c799ff8c}.vault-insights-secondary-btn:disabled{opacity:.45;cursor:not-allowed}.vault-insights-ghost-btn{border:none;background:transparent;color:var(--vault-muted);font-size:.85rem;font-weight:600;cursor:pointer;font-family:inherit;padding:6px 8px;border-radius:8px}.vault-insights-ghost-btn:hover{color:var(--vault-text);background:#f0f6fc0f}.vault-topbar{display:flex;justify-content:flex-end;gap:14px;margin-bottom:24px}.vault-top-actions{display:flex;flex-direction:row;align-items:flex-end;gap:8px}.vault-theme-toggle{border:1px solid rgba(72,72,71,.8);background:var(--vault-surface-low);color:var(--vault-text);border-radius:999px;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.vault-curated-overview{color:#a388c9;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:700;margin-bottom:-6px}.vault-search{width:min(480px,100%);background:var(--vault-surface-low);border:1px solid rgba(72,72,71,.8);color:#fff;border-radius:999px;padding:12px 16px}.vault-search--inner{width:100%;min-height:46px;border-radius:14px;border:1px solid rgba(199,153,255,.28);background:radial-gradient(120% 160% at 0% 0%,rgba(199,153,255,.08),transparent 45%),linear-gradient(180deg,#181422f0,#0e0d14f5);box-shadow:inset 0 1px #ffffff08,0 8px 18px #0000002e;transition:border-color .22s ease,box-shadow .22s ease,transform .16s ease,filter .16s ease}.vault-search--inner::placeholder{color:#b5abc8}.vault-search--inner:hover{transform:translateY(-1px);border-color:#c799ff70;filter:brightness(1.03)}.vault-search--inner:focus{outline:none;transform:translateY(-1px);border-color:#c799ffb8;box-shadow:0 0 0 2px #c799ff33,inset 0 1px #ffffff0d}.vault-user{display:flex;align-items:center;gap:8px;color:var(--vault-muted);font-size:.88rem;position:relative}.vault-new-btn--top{padding:10px 16px;font-size:.84rem}.vault-planning-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.vault-planning-grid--goals{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.vault-planning-tabs{display:inline-flex;gap:6px;padding:4px;border-radius:12px;border:1px solid rgba(72,72,71,.7);background:#141418}.vault-planning-tab{border:none;background:transparent;color:var(--vault-muted);min-height:34px;padding:0 16px;border-radius:9px;font-weight:700;font-size:.82rem;cursor:pointer;transition:background .22s ease,color .22s ease,transform .16s ease,box-shadow .2s ease}.vault-planning-tab:hover{color:#f4ecff;background:#c799ff24;transform:translateY(-1px)}.vault-planning-tab.is-active{background:#c799ff38;color:#fff;box-shadow:0 6px 16px #a779ff38}.vault-planning-pane{display:grid;gap:16px}.vault-planning-form{display:grid;gap:10px}.vault-planning-form .field-input{min-height:44px}.vault-planning-form .animated-select-trigger{min-height:44px;border-color:#a779ff8c;background:#141218}.vault-planning-form input[type=number]::-webkit-outer-spin-button,.vault-planning-form input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.vault-planning-form input[type=number]{-moz-appearance:textfield}.vault-planning-budget-row{margin-bottom:10px}.vault-accounts-total-card{display:grid;gap:4px;padding:8px 12px;border:none;border-radius:14px;background:transparent;text-align:right}.vault-accounts-total-card small{color:var(--vault-muted);font-size:.84rem;letter-spacing:.08em}.vault-accounts-total-card .accounts-total-label{font-size:.72rem}.vault-accounts-total-card .accounts-total-value{font-size:clamp(2.05rem,3vw,2.7rem);line-height:1}.vault-linked-head{display:flex;justify-content:space-between;align-items:center;margin:2px 0 4px}.vault-linked-head h3{margin:0;font-size:1.9rem;letter-spacing:-.02em}.vault-linked-actions-row{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 12px}.vault-link-inline{border:none;background:transparent;color:var(--vault-primary);font-weight:700;cursor:pointer;transition:color .15s ease}.vault-link-inline:hover{color:#e7d5ff}.vault-link-inline:disabled{opacity:.45;cursor:not-allowed}.vault-link-inline--primary{padding:10px 16px;border-radius:999px;border:1px solid rgba(199,153,255,.55);background:color-mix(in srgb,var(--vault-primary) 22%,transparent)}.vault-link-inline--primary:hover:not(:disabled){background:color-mix(in srgb,var(--vault-primary) 35%,transparent);color:var(--vault-text)}.vault-link-inline--secondary{padding:10px 16px;border-radius:999px;border:1px solid rgba(240,246,252,.2);background:#f0f6fc0f;color:var(--vault-text)}.vault-link-inline--secondary:hover:not(:disabled){border-color:#c799ff73;background:#c799ff1f}.vault-accounts .accounts-panel-title{font-size:clamp(2.05rem,3.4vw,2.7rem);line-height:1.04}.vault-add-institution--stitch{border-top:none;padding-top:0;margin-top:4px}.vault-link-account-btn{background:linear-gradient(135deg,var(--vault-primary),#a87df9);color:#22003a;min-height:44px;border-radius:12px}.charts-dashboard--accounts{margin-top:18px}.vault-icon-btn{border:none;background:transparent;color:#a4a2a2;cursor:pointer;display:inline-flex}.vault-user-avatar-btn{border:1px solid rgba(72,72,71,.8);background:var(--vault-surface-low);border-radius:999px;padding:2px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.vault-avatar--small{width:28px;height:28px}.vault-screen{display:grid;gap:16px}.vault-screen-head h2{margin:0;font-size:2.2rem;letter-spacing:-.02em}.vault-screen-head p{margin:6px 0 0;color:var(--vault-muted)}.vault-dash-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}.vault-card{background:var(--vault-surface-low);border:1px solid rgba(72,72,71,.7);border-radius:18px;padding:20px}.vault-card strong{display:block;font-size:1.9rem;margin:8px 0}.vault-card p{margin:0;color:var(--vault-muted)}.vault-card[role=button],.vault-budget-card[role=button]{cursor:pointer}.vault-budget-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.vault-budget-card{background:var(--vault-surface-low);border:1px solid rgba(72,72,71,.7);border-radius:16px;padding:16px}.vault-budget-card h3{margin:0 0 12px;font-size:1rem}.vault-budget-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.vault-budget-switch-tabs{margin:0}.vault-budget-item{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;color:#d2cfcf;font-size:.85rem}.vault-budget-item strong,.vault-budget-item p{margin:0}.vault-budget-item p{color:var(--vault-muted);font-size:.72rem}.vault-progress{height:6px;border-radius:999px;background:#252524;margin:0 0 14px;overflow:hidden}.vault-progress div{height:100%;border-radius:999px;background:var(--vault-primary)}.vault-insight-list{margin:0;padding-left:18px;color:#e7e4e4;display:grid;gap:8px}.vault-caption{text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;color:var(--vault-muted);font-weight:700}.vault-summary{margin:2px 0}.vault-summary-card{border-radius:16px;border:1px solid rgba(72,72,71,.5);background:var(--vault-surface-low);box-shadow:none}.vault-summary .summary-card-label{color:var(--vault-muted)}.vault-summary .summary-card-value{font-size:clamp(1.45rem,2.2vw,1.95rem)}.vault-summary-card--income{background:linear-gradient(155deg,#4af8e329,#131313f2 58%);border-color:#4af8e359}.vault-summary-card--income .summary-card-value--income{color:var(--vault-secondary)}.vault-summary-card--expense{background:linear-gradient(155deg,#ff9dac29,#131313f2 58%);border-color:#ff9dac59}.vault-summary-card--expense .summary-card-value--expense{color:var(--vault-tertiary)}.vault-summary-card--balance{background:linear-gradient(155deg,#c799ff33,#131313f2 58%);border-color:#c799ff6b}.vault-summary-card--balance .summary-card-value--balance{color:#eed8ff}.vault-recent-card{border:1px solid rgba(72,72,71,.7);background:var(--vault-surface-low);border-radius:16px;padding:16px}.vault-recent-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.vault-recent-list--compact{gap:6px;max-height:none;overflow:visible}.vault-recent-date{font-size:.82rem;color:var(--vault-muted);white-space:nowrap;align-self:start;padding-top:2px}.vault-planning-plan-bridge{grid-column:1 / -1}.vault-planning-plan-bridge-summary{margin:0 0 12px;font-size:.88rem;line-height:1.45;color:#e6edf3e0}.vault-planning-plan-bridge-hint{margin:10px 0 0}.vault-planning-plan-hint{grid-column:1 / -1;margin:0 0 8px}@keyframes vaultTxnRowFlash{0%{box-shadow:0 0 #c799ff8c}to{box-shadow:0 0 0 8px #c799ff00}}.vault-txn-row--flash{animation:vaultTxnRowFlash 1.1s ease-out 2}.vault-recent-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;border-bottom:1px solid rgba(72,72,71,.4);padding:8px 0;cursor:pointer}@keyframes vaultRecentItemEnter{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.vault-recent-item--enter{animation:vaultRecentItemEnter .5s cubic-bezier(.16,1,.3,1) both}.vault-recent-list--compact .vault-recent-item{border-radius:10px;padding:10px 10px 10px 8px;margin:0 -4px;border-bottom:none;border:1px solid transparent;transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s ease,border-color .22s ease,background .22s ease}.vault-recent-list--compact .vault-recent-item:hover{transform:translate(6px);background:#c799ff12;border-color:#c799ff38;box-shadow:0 8px 24px #00000040}.vault-recent-list--compact .vault-recent-item:active{transform:translate(4px) scale(.99)}.vault-recent-list li p,.vault-recent-list li strong{margin:0}.vault-recent-txn-head{display:flex;align-items:center;gap:10px;min-width:0}.vault-recent-txn-head .category-txn-icon{width:36px;height:36px}.vault-recent-txn-head .category-txn-icon .material-symbols-outlined{font-size:20px}.vault-recent-txn-text{min-width:0}.vault-empty{color:var(--vault-muted)}.vault-add-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:18px}.vault-add-main,.vault-add-side{display:grid;gap:14px}.vault-amount-card,.vault-category-card,.vault-detail-card,.vault-transactions,.vault-accounts,.txn-splits{background:var(--vault-surface-low);border:1px solid rgba(72,72,71,.7);border-radius:18px;padding:16px}.vault-amount-input-wrap{display:flex;align-items:center;min-height:74px}.vault-amount-card .currency-input input{font-size:2.6rem;font-weight:800;border:none;background:transparent;padding-left:0}.vault-amount-card .currency-input{min-height:74px;border-color:#c799ff47;background:var(--vault-surface)}.vault-amount-card .currency-input__prefix{font-size:1.35rem;color:var(--vault-primary);padding-left:12px}.vault-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.vault-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.vault-category-chip{border:1px solid rgba(72,72,71,.9);background:var(--vault-surface);color:#d0cdcd;border-radius:12px;padding:12px 10px;font-weight:600;cursor:pointer;transition:transform .16s ease,border-color .2s ease,box-shadow .2s ease,filter .16s ease}.vault-category-chip:hover{transform:translateY(-1px);border-color:#c799ff73;box-shadow:0 8px 16px #0000002e;filter:brightness(1.03)}.vault-category-chip:active{transform:translateY(0) scale(.985)}.vault-category-chip.is-active{background:var(--vault-primary);color:#130025;border-color:var(--vault-primary)}.vault-category-card .animated-select-trigger{min-width:148px;background:var(--vault-surface);border-color:#484847cc;color:#fff}.vault-category-card .animated-select--open .animated-select-trigger{border-color:#c799ffa6;box-shadow:0 0 0 2px #c799ff33}.vault-detail-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;overflow:visible;padding-top:4px}.vault-detail-payment-wrap{overflow:visible;padding-top:2px;padding-bottom:4px}.vault-amount-card{min-height:138px}.vault-category-card{min-height:190px}.vault-detail-card .field-input,.vault-detail-card .date-picker-trigger,.vault-detail-card .animated-select-trigger{background:var(--vault-surface);border-color:#484847cc;color:#fff;box-shadow:none;transition:border-color .2s ease,box-shadow .2s ease,transform .16s ease,filter .16s ease}.vault-detail-card .date-picker-trigger:hover,.vault-detail-card .animated-select-trigger:hover{transform:translateY(-1px);filter:brightness(1.04)}.vault-add-main .vault-detail-card .animated-select-trigger:hover,.vault-add-main .vault-detail-card .animated-select-trigger:focus-visible,.vault-add-main .vault-detail-card .date-picker-trigger:hover,.vault-add-main .vault-detail-card .date-picker-trigger:focus-visible{transform:none;filter:brightness(1.05);box-shadow:0 6px 18px #00000038}.vault-detail-card .field-input::placeholder{color:var(--vault-muted)}.vault-detail-card .field-input:focus,.vault-detail-card .date-picker-trigger:focus,.vault-detail-card .date-picker-trigger--open,.vault-detail-card .animated-select--open .animated-select-trigger{border-color:#c799ffa6;box-shadow:0 0 0 2px #c799ff33}.vault-detail-card select.field-input{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#b5b2b2 50%),linear-gradient(135deg,#b5b2b2 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:34px}.vault-detail-card .date-picker-trigger-icon{color:var(--vault-primary)}.vault-add-main .field-input,.vault-add-main .currency-input,.vault-add-main .animated-select-trigger,.vault-add-main .date-picker-trigger,.vault-add-side .field-input,.vault-add-side .currency-input,.vault-add-side .animated-select-trigger,.vault-add-side .date-picker-trigger,.vault-accounts .field-input,.vault-accounts .currency-input,.vault-accounts .animated-select-trigger,.vault-transactions .field-input,.vault-transactions .currency-input,.vault-transactions .animated-select-trigger{background:var(--vault-surface)!important;border-color:#484847d1!important;color:#fff!important;box-shadow:none!important}.vault-add-main .field-input::placeholder,.vault-add-side .field-input::placeholder,.vault-accounts .field-input::placeholder,.vault-transactions .field-input::placeholder{color:var(--vault-muted)!important}.vault-add-main .field-input:focus,.vault-add-main .currency-input:focus-within,.vault-add-main .animated-select--open .animated-select-trigger,.vault-add-main .date-picker-trigger--open,.vault-add-main .date-picker-trigger:focus,.vault-add-side .field-input:focus,.vault-add-side .currency-input:focus-within,.vault-add-side .animated-select--open .animated-select-trigger,.vault-add-side .date-picker-trigger--open,.vault-add-side .date-picker-trigger:focus,.vault-accounts .field-input:focus,.vault-accounts .currency-input:focus-within,.vault-transactions .field-input:focus,.vault-transactions .currency-input:focus-within,.vault-transactions .animated-select--open .animated-select-trigger{border-color:#c799ffad!important;box-shadow:0 0 0 2px #c799ff33!important}.vault-add-main .currency-input__field,.vault-add-side .currency-input__field,.vault-accounts .currency-input__field,.vault-transactions .currency-input__field{color:#fff!important}.vault-add-main .currency-input__prefix,.vault-add-side .currency-input__prefix,.vault-accounts .currency-input__prefix,.vault-transactions .currency-input__prefix{color:var(--vault-primary)!important}.vault-accounts .accounts-balance-wrap .currency-input,.vault-accounts .accounts-add-row .currency-input.accounts-add-balance,.txn-split-row>.currency-input.txn-split-amt{min-height:44px;border-radius:12px}.date-picker-popover{background:linear-gradient(180deg,#1f1f1f,#151515);border:1px solid rgba(72,72,71,.85)}.date-picker-nav,.date-picker-foot-btn{border-color:#484847d9;background:#1f1f1f;color:#ece8e8}.date-picker-nav:hover,.date-picker-foot-btn:hover{border-color:#c799ff73;color:#fff}.date-picker-cell--selected{background:#c799ff40;border-color:#c799ffa6}.vault-detail-span{grid-column:1 / -1}.vault-submit-btn{border:none;border-radius:999px;padding:16px;font-weight:800;font-size:1rem;background:linear-gradient(135deg,var(--vault-primary),#bc87fe);color:#2a003f;cursor:pointer;box-shadow:0 16px 40px #bc87fe2e,inset 0 1px #ffffff14}.vault-submit-btn:hover{filter:brightness(1.06);box-shadow:0 20px 50px #bc87fe40,inset 0 1px #ffffff1a}.vault-submit-btn:active{filter:brightness(.98);box-shadow:0 12px 34px #bc87fe38,inset 0 1px #ffffff14}.vault-receipt-card{background:var(--vault-surface);border:1px solid rgba(72,72,71,.7);border-radius:16px;padding:12px}.vault-receipt-preview{margin-top:10px;border-radius:12px;overflow:hidden;border:1px solid rgba(72,72,71,.6)}.vault-receipt-preview-btn{width:100%;padding:0;cursor:pointer;position:relative;transition:transform .16s ease,filter .16s ease}.vault-receipt-scan-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#0a0a0cbf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:4;pointer-events:none}.vault-receipt-scan-ring{width:48px;height:48px;border-radius:50%;border:3px solid rgba(199,153,255,.28);border-top-color:var(--vault-primary);animation:vaultReceiptSpin .85s linear infinite}@keyframes vaultReceiptSpin{to{transform:rotate(360deg)}}.vault-receipt-scan-label{font-size:.82rem;color:var(--vault-text);font-weight:600;letter-spacing:.04em}.vault-receipt-scan-error{margin-top:8px;font-size:.82rem}.vault-receipt-preview-btn:hover{transform:translateY(-1px);filter:brightness(1.04)}.vault-receipt-overlay{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:flex-end;padding:10px;background:linear-gradient(180deg,rgba(0,0,0,.32),transparent 48%);opacity:0;transition:opacity .2s ease}.vault-receipt-preview-btn:hover .vault-receipt-overlay{opacity:1}.vault-receipt-remove{width:30px;height:30px;border-radius:999px;background:#0f0f0fd1;color:#ffb6be;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(248,81,73,.55);cursor:pointer;transition:transform .16s ease,filter .16s ease}.vault-receipt-remove:hover{transform:scale(1.05);filter:brightness(1.08)}.vault-receipt-preview img{width:100%;height:220px;object-fit:cover;display:block}.vault-file-pill{margin-top:10px;border:1px solid rgba(72,72,71,.7);border-radius:12px;padding:10px;background:#ffffff08}.vault-file-pill strong,.vault-file-pill span{display:block}.vault-file-pill span{color:var(--vault-muted);font-size:.78rem}.vault-receipt-confirm{margin-top:14px;padding:14px;border-radius:14px;border:1px solid rgba(199,153,255,.28);background:linear-gradient(165deg,#c799ff14,#14121ceb);display:flex;flex-direction:column;gap:12px}.vault-receipt-confirm--animated{animation:vaultReceiptConfirmIn .45s cubic-bezier(.16,1,.3,1) both}@keyframes vaultReceiptConfirmIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.vault-receipt-confirm-title{margin:0;font-size:.95rem;font-weight:700;color:var(--vault-primary)}.vault-receipt-confirm-lead{margin:0;line-height:1.45}.vault-receipt-confirm-payment .txn-field-label{margin-bottom:6px}.vault-receipt-confirm-btn{margin-top:4px;border:none;border-radius:12px;padding:12px 16px;font-weight:700;font-size:.9rem;cursor:pointer;font-family:inherit;background:linear-gradient(135deg,#c799ff59,#bc87fe8c);color:#1a0a2e;transition:transform .18s ease,filter .18s ease}.vault-receipt-confirm-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.vault-submit-btn:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.2)}.vault-submit-note{margin:0;color:var(--vault-muted);font-size:.8rem;text-align:center}.vault-submit-note--muted{font-size:.78rem;opacity:.9}.vault-plaid-panel{margin-bottom:16px;padding:14px;border-radius:14px;border:1px solid rgba(72,72,71,.65);background:var(--vault-surface-low)}.vault-accounts .vault-plaid-panel:empty{display:none}.vault-plaid-hint{margin:0;font-size:.85rem;color:var(--vault-muted)}.vault-plaid-items{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}.vault-plaid-items li{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;font-size:.88rem}.vault-plaid-item-main{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px 16px;flex:1;min-width:0}.vault-plaid-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-plaid-item-sync{flex-shrink:0;color:var(--vault-muted);font-size:.75rem;white-space:nowrap}.vault-plaid-items li .material-symbols-outlined{font-size:22px;color:var(--vault-primary);flex-shrink:0}.vault-linked-head-actions{display:flex;gap:8px;flex-wrap:wrap}.vault-insights-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:14px}.vault-insights-refresh{min-height:42px;padding:0 18px;border-radius:12px;border:1px solid var(--vault-outline);background:var(--vault-surface-low);color:var(--vault-text);font-weight:600;font-size:.875rem;cursor:pointer;font-family:inherit}.vault-insights-refresh:disabled{opacity:.65;cursor:not-allowed}.vault-insights-refresh-inner{display:inline-flex;align-items:center;gap:8px}.vault-insights-spinner{width:18px;height:18px;border-radius:50%;border:2px solid rgba(199,153,255,.3);border-top-color:var(--vault-primary);animation:vaultReceiptSpin .75s linear infinite}.vault-insights-refresh--fancy .vault-insights-refresh__icon{font-size:19px;line-height:1;margin-right:2px;vertical-align:middle}.vault-insights-refresh--fancy.is-loading .vault-insights-refresh__icon{animation:vaultInsightsIconPulse .9s ease-in-out infinite}@keyframes vaultInsightsIconPulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}.vault-insights-refresh--fancy:not(:disabled):not(.is-loading){animation:vaultRefreshGlow 3.2s ease-in-out infinite}@keyframes vaultRefreshGlow{0%,to{box-shadow:0 0 #c799ff00}50%{box-shadow:0 0 0 4px #c799ff24}}.vault-insights-mode-toggle{position:relative;display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:0 16px 0 12px;border-radius:12px;border:1px solid rgba(199,153,255,.38);background:#14121ceb;color:var(--vault-primary);font-weight:600;font-size:.875rem;cursor:pointer;font-family:inherit;transition:border-color .28s ease,background .28s ease,box-shadow .28s ease}.vault-insights-mode-toggle:hover:not(:disabled){border-color:#c799ff8c;background:#c799ff14;box-shadow:0 6px 20px #0003}.vault-insights-mode-toggle:disabled{opacity:.45;cursor:not-allowed}.vault-insights-mode-toggle__track{width:38px;height:22px;border-radius:999px;background:#f0f6fc1f;position:relative;flex-shrink:0;transition:background .32s ease}.vault-insights-mode-toggle__thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:linear-gradient(145deg,#e8d4ff,var(--vault-primary));box-shadow:0 2px 10px #00000059;transition:transform .34s cubic-bezier(.16,1,.3,1)}.vault-insights-mode-toggle--active-plan .vault-insights-mode-toggle__thumb{transform:translate(16px)}.vault-insights-mode-toggle--active-plan .vault-insights-mode-toggle__track{background:#c799ff52}.vault-insights-mode-toggle__label{min-width:5.5rem;text-align:left;animation:vaultModeLabelIn .34s cubic-bezier(.16,1,.3,1) both}@keyframes vaultModeLabelIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.vault-ai-bottom-panel>.vault-ai-bottom-swap{flex:1;min-height:0;display:flex;flex-direction:column;animation:vaultAiPanelEnter .42s cubic-bezier(.16,1,.3,1) both}@keyframes vaultAiPanelEnter{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.vault-insights-meta{margin:0 0 12px;font-size:.8rem;color:var(--vault-muted)}.vault-insights-error{margin-bottom:10px}.vault-insights-grid{margin-top:8px}.vault-insights-plan-card{margin-top:20px}.vault-insights-plan-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:12px}.vault-insights-plan-head h3{margin:0 0 4px}.vault-insights-plan-actions{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px}.vault-insights-plan-duration{width:auto;min-width:140px}.vault-insights-plan-btn{flex-shrink:0}.vault-insights-plan-body{margin-top:8px}.vault-insights-plan-weeks{margin:12px 0 0;padding-left:1.25rem;color:var(--vault-text);font-size:.9rem}.vault-insights-plan-weeks>li{margin-bottom:12px}.vault-insights-plan-weeks ul{margin:6px 0 0;padding-left:1.1rem;color:#e6edf3e0}.vault-insights-plan-placeholder{margin-top:4px}.vault-subscriptions-hint{margin:0 0 12px}.vault-subscriptions-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.vault-subscriptions-row{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid rgba(240,246,252,.1);background:#f0f6fc0a}.vault-subscriptions-main{display:flex;flex-direction:column;gap:4px;min-width:0}.vault-subscriptions-meta{font-size:.75rem;color:var(--vault-muted)}.vault-subscriptions-amt{flex-shrink:0;font-weight:600;font-variant-numeric:tabular-nums;color:#f0883e}.vault-insight-card h3{font-size:.85rem;color:var(--vault-primary);margin:0 0 8px}.vault-insights-local-hint{margin-top:16px;font-size:.85rem;color:var(--vault-muted)}.vault-upload-dropzone{margin-top:10px;border:1px dashed rgba(199,153,255,.35);border-radius:12px;background:#14121c8c;min-height:150px;display:grid;place-items:center;padding:14px;cursor:pointer;transition:border-color .2s ease,transform .16s ease,background .2s ease}.vault-upload-dropzone:hover{border-color:#c799ff9e;transform:translateY(-1px);background:#1815239e}.vault-upload-dropzone.is-dragover{border-color:#4af8e3a6;background:#0d252359}.vault-upload-desktop-copy{text-align:center;display:grid;gap:6px}.vault-upload-desktop-copy .material-symbols-outlined{font-size:24px;color:var(--vault-primary);justify-self:center}.vault-upload-desktop-copy p{margin:0;font-weight:700}.vault-upload-desktop-copy small{color:var(--vault-muted)}.vault-accounts-head{display:flex;justify-content:space-between;align-items:end;gap:10px;margin-bottom:12px}.vault-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;margin:0 0 14px;list-style:none}.vault-account-card{background:var(--vault-surface);border:1px solid rgba(72,72,71,.6);border-radius:14px;padding:12px}.vault-add-institution{border-top:1px solid rgba(72,72,71,.6);padding-top:14px}.vault-credit-showcase{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.vault-credit-card{border-radius:14px;padding:14px;border:1px solid rgba(72,72,71,.7);background:linear-gradient(135deg,#1f1f1f,#131313)}.vault-credit-card--elite{border-color:#c799ff73}.vault-credit-card p,.vault-credit-card strong,.vault-credit-card span{margin:0;display:block}.vault-credit-card p{font-size:.7rem;color:var(--vault-muted);letter-spacing:.12em}.vault-credit-card strong{margin:8px 0 10px}.vault-credit-card span{color:#cbc8c8;font-size:.85rem}.vault-transaction-toolbar{margin-bottom:14px;display:flex;gap:10px}.vault-filter-row{margin-bottom:20px}.vault-export-btn{border:1px solid rgba(199,153,255,.42);border-radius:12px;background:linear-gradient(135deg,#c799ff47,#8f74ff33);color:#f4ecff;padding:10px 16px;font-weight:700;font-size:.8rem;letter-spacing:.02em;cursor:pointer;box-shadow:0 8px 18px #8f74ff33}.vault-export-btn:hover{border-color:#c799ff9e;box-shadow:0 10px 22px #8f74ff47}.vault-chip-row{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.vault-chip-row--segmented{position:relative;flex-wrap:nowrap;max-width:100%;width:min(100%,440px);padding:4px;gap:0;border-radius:999px;background:var(--vault-surface-low);border:1px solid var(--vault-outline);box-sizing:border-box}.vault-chip-spotlight{position:absolute;top:4px;bottom:4px;left:4px;width:calc((100% - 8px) / 3);border-radius:999px;background:var(--vault-primary);box-shadow:0 2px 16px #c799ff61;transition:transform .34s cubic-bezier(.16,1,.3,1);transform:translate(calc(var(--vault-chip-index, 0) * 100%));pointer-events:none;z-index:0}.vault-chip-row--segmented .vault-chip{position:relative;z-index:1;flex:1;min-width:0;border:none;background:transparent;padding:10px;margin:0;font-size:.78rem;font-weight:700;letter-spacing:.02em;transition:color .26s cubic-bezier(.16,1,.3,1),transform .2s ease}.vault-chip-row--segmented .vault-chip.is-active{background:transparent;border-color:transparent;color:#2a003f;box-shadow:none}.vault-chip-row--segmented .vault-chip:not(.is-active){color:var(--vault-muted)}.vault-chip-row--segmented .vault-chip:hover:not(.is-active){color:color-mix(in srgb,var(--vault-text) 88%,var(--vault-muted))}.vault-chip-row--segmented .vault-chip:active{transform:scale(.98)}.vault-chip-row--segmented .vault-chip:hover{transform:none}.vault-status-view{animation:vaultStatusViewIn .38s cubic-bezier(.16,1,.3,1) both}.vault-chip{border:1px solid rgba(72,72,71,.9);border-radius:999px;background:var(--vault-surface);color:var(--vault-muted);padding:8px 12px;font-size:.82rem;font-weight:700;cursor:pointer;transition:background .22s ease,border-color .22s ease,color .22s ease,box-shadow .22s ease,transform .18s ease}.vault-chip.is-active{background:var(--vault-primary);border-color:var(--vault-primary);color:#2a003f;box-shadow:0 4px 16px #c799ff47}.vault-timeline{display:grid;gap:14px}.vault-trans-grid-wrap .vault-timeline{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.vault-trans-grid-wrap .vault-txn-list-scroll{flex:1}.vault-trans-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px}.vault-day-group h3,.vault-day-group-title{margin:0 0 12px;color:var(--vault-primary);font-size:.95rem;text-transform:uppercase;letter-spacing:.09em}.vault-txn-list-scroll .vault-day-group+.vault-day-group{margin-top:28px;padding-top:8px;border-top:1px solid rgba(72,72,71,.45)}.vault-day-table{display:grid;gap:10px}.vault-txn-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;border-radius:14px;border:1px solid rgba(72,72,71,.6);background:var(--vault-surface);padding:12px}.vault-txn-row.is-income,.vault-txn-row.is-expense{border-left:none!important}.vault-txn-title-row{display:flex;align-items:flex-start;gap:10px}.vault-txn-title-text{min-width:0;flex:1}.category-txn-icon{flex-shrink:0;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--vault-surface-low) 88%,var(--vault-primary));border:1px solid rgba(72,72,71,.75)}.category-txn-icon .material-symbols-outlined{font-size:22px;color:var(--vault-primary)}.vault-txn-main strong,.vault-txn-main p,.vault-txn-main small,.vault-txn-title-text strong,.vault-txn-title-text p{display:block;margin:0}.vault-txn-main p,.vault-txn-main small,.vault-txn-title-text p,.vault-txn-meta small{color:var(--vault-muted)}.txn-receipt-thumb-btn{border:none;background:none;padding:0;margin-top:6px;cursor:pointer}.txn-receipt-thumb{width:44px;height:44px;border-radius:10px;object-fit:cover;border:1px solid rgba(199,153,255,.4);transition:transform .16s ease,box-shadow .2s ease}.txn-receipt-thumb:hover{transform:translateY(-1px);box-shadow:0 10px 18px #00000052}.vault-txn-meta{display:grid;gap:4px;text-align:right;min-width:110px}.vault-right-rail{display:grid;gap:10px;align-content:start;min-width:0}.vault-rail-card{border:1px solid rgba(72,72,71,.7);border-radius:16px;background:var(--vault-surface);padding:12px}.vault-rail-card--chart{border:none;padding:0;background:transparent}.vault-rail-card--chart .pie-card{margin:0;min-height:220px}.vault-right-rail .pie-card-body{grid-template-columns:118px minmax(0,1fr);gap:10px;align-items:center}.vault-right-rail .pie-svg-wrap{max-width:118px}.vault-right-rail .pie-legend{min-width:0;gap:8px}.vault-right-rail .pie-legend-row{grid-template-columns:10px minmax(0,1fr) auto auto;gap:6px 10px;font-size:.74rem;align-items:baseline}.vault-right-rail .pie-legend-name,.vault-right-rail .pie-legend-amt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vault-right-rail .pie-legend-name{font-weight:600;color:#e6edf3}.vault-right-rail .pie-legend-pct{min-width:34px;text-align:right}.vault-right-rail .pie-legend-amt{min-width:42px;text-align:right}.chart-card,.pie-card{border:1px solid rgba(72,72,71,.55);background:linear-gradient(160deg,#ffffff05,#00000026);transition:transform .2s ease,border-color .2s ease;box-shadow:0 0 0 1px #4848478c inset}.chart-card-title,.pie-card-title{font-size:1.02rem}.chart-y-labels{font-size:.74rem}.chart-bar-label{font-size:.72rem}.pie-legend-row{font-size:.76rem}.chart-card:hover,.pie-card:hover{transform:translateY(-2px);border-color:#c799ff59;box-shadow:0 0 0 1px #c799ff59 inset}.vault-card,.vault-budget-card,.vault-account-card,.vault-txn-row,.vault-credit-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.vault-card:hover,.vault-budget-card:hover,.vault-account-card:hover,.vault-txn-row:hover,.vault-credit-card:hover{transform:translateY(-1px);border-color:#c799ff59;box-shadow:0 10px 20px #00000038}.vault-amount-card .currency-input{min-height:56px;border-radius:14px;border-color:#c799ff8c;background:linear-gradient(180deg,#191425e6,#101014e6)}.vault-amount-card .currency-input__prefix{width:38px;justify-content:center;padding-left:6px;padding-right:6px;border-right:1px solid rgba(199,153,255,.3)}.vault-amount-card .currency-input__field{padding-left:12px!important;min-height:56px!important;line-height:1}.vault-amount-card .currency-input__prefix{align-items:center}.vault-planning-goal-form{margin-bottom:12px;padding-bottom:2px;border-bottom:none}.vault-export-btn,.vault-chip,.vault-nav-item,.vault-submit-btn,.vault-side-user-trigger,.vault-side-support,.vault-side-signout,.field-input,.currency-input,.animated-select-trigger,.vault-link-account-btn,.vault-link-inline,.accounts-remove,.edit-btn,.delete-btn{transition:transform .15s ease,filter .15s ease,border-color .2s ease,box-shadow .2s ease}.vault-export-btn:hover,.vault-chip:hover,.vault-nav-item:hover,.vault-submit-btn:hover,.vault-side-user-trigger:hover,.vault-side-support:hover,.vault-side-signout:hover,.field-input:hover,.currency-input:hover,.animated-select-trigger:hover,.vault-link-account-btn:hover,.accounts-remove:hover,.edit-btn:hover,.delete-btn:hover{transform:translateY(-1px)}.vault-transactions>h2{margin:0;font-size:clamp(1.9rem,3.1vw,2.45rem);line-height:1.08;letter-spacing:-.02em}.vault-transaction-toolbar{margin-bottom:12px}.vault-filter-row{margin-bottom:18px}.accounts-balance-wrap.currency-input,.accounts-balance-wrap .currency-input__field{min-height:40px!important}.accounts-balance-wrap.currency-input{border-radius:12px;border-color:#a779ffa6;background:#15121c}.accounts-balance-wrap .currency-input__prefix{width:36px;justify-content:center;padding-left:8px;padding-right:8px;border-right:1px solid rgba(199,153,255,.32)}.accounts-balance-wrap .currency-input__field{padding-left:12px!important}.accounts-kind-select .animated-select-trigger{min-width:160px;min-height:46px;border-color:#c799ff4d!important;background:linear-gradient(180deg,#181422f0,#100d16f5)!important;box-shadow:inset 0 1px #ffffff08}.accounts-kind-select .animated-select-trigger:hover{transform:translateY(-1px);border-color:#c799ff80!important;filter:brightness(1.04)}.accounts-kind-select.animated-select--open .animated-select-trigger{border-color:#c799ffad!important;box-shadow:0 0 0 2px #c799ff38,inset 0 1px #ffffff0d!important}.accounts-add-row .currency-input.accounts-add-balance .currency-input__prefix{width:36px;justify-content:center;padding-left:8px;padding-right:8px;border-right:1px solid rgba(199,153,255,.32)}.accounts-add-row .currency-input.accounts-add-balance .currency-input__field{padding-left:12px!important}.vault-filter-row .animated-select-trigger{min-height:46px;border-color:#c799ff4d;background:linear-gradient(180deg,#16141eeb,#0f0f12f0)}.vault-add-page .vault-add-main>*,.vault-add-page .vault-add-side>*{animation:cardRise .5s cubic-bezier(.16,1,.3,1) backwards}.vault-add-page .vault-add-main>:nth-child(1){animation-delay:.03s}.vault-add-page .vault-add-main>:nth-child(2){animation-delay:.08s}.vault-add-page .vault-add-main>:nth-child(3){animation-delay:.13s}.vault-add-page .vault-add-side>:nth-child(1){animation-delay:.16s}.vault-add-page .vault-add-side>:nth-child(2){animation-delay:.2s}.vault-add-page .vault-add-side>:nth-child(3){animation-delay:.24s}.vault-add-page .vault-add-side>:nth-child(4){animation-delay:.28s}.txn-split-row .animated-select-trigger,.txn-split-add{background:#151823!important;border-color:#58a6ff47!important}.txn-split-row .animated-select-trigger:hover,.txn-split-add:hover{border-color:#c799ff80!important}.vault-add-page .animated-select-trigger{min-height:46px;border-color:#c799ff4d!important;background:linear-gradient(180deg,#181422f0,#100d16f5)!important;box-shadow:inset 0 1px #ffffff08}.vault-add-page .animated-select--open .animated-select-trigger{border-color:#c799ffad!important;box-shadow:0 0 0 2px #c799ff38,inset 0 1px #ffffff0d!important}.vault-add-page .date-picker-trigger{transition:border-color .2s ease,box-shadow .2s ease,transform .16s ease,filter .16s ease}.vault-add-page .date-picker-trigger:hover{transform:translateY(-1px);filter:brightness(1.04)}.vault-add-page .vault-submit-btn,.vault-add-page .txn-split-add,.vault-add-page .txn-split-remove{transition:transform .16s ease,filter .16s ease,border-color .2s ease,box-shadow .22s ease}.vault-add-page .vault-submit-btn{border:0!important;outline:0;-webkit-appearance:none;appearance:none;box-shadow:0 16px 40px #bc87fe38}.vault-add-page .vault-submit-btn:hover,.vault-add-page .txn-split-add:hover,.vault-add-page .txn-split-remove:hover{transform:translateY(-1px)}.vault-add-page .vault-submit-btn:active,.vault-add-page .txn-split-add:active,.vault-add-page .txn-split-remove:active{transform:translateY(0) scale(.985)}.txn-split-row>.currency-input.txn-split-amt .currency-input__prefix{width:36px;justify-content:center;padding-left:8px;padding-right:8px;border-right:1px solid rgba(199,153,255,.32)}.txn-split-row>.currency-input.txn-split-amt .currency-input__field{padding-left:12px!important}.vault-rail-card h4,.vault-rail-card p{margin:0}.vault-rail-card h4{margin-bottom:8px}.vault-rail-card p{color:var(--vault-muted);font-size:.84rem;margin-bottom:6px}.vault-rail-card--tip{background:#bc87fe40;border-color:#bc87fe80}.vault-tip-btn{width:100%;border:none;border-radius:10px;background:#2d0054;color:#fff;font-size:.75rem;padding:8px 10px;cursor:pointer}@media(max-width:1100px){.vault-app{grid-template-columns:1fr;height:auto;max-height:none;min-height:100dvh;overflow:visible}.vault-content{overflow:visible;flex:none}.vault-page-switch,.vault-page-switch--transactions-fill,.vault-page-switch--insights-fill{flex:none;overflow:visible;min-height:0}.vault-screen--transactions,.vault-screen--insights,.vault-insights-layout{flex:none;overflow:visible}.vault-insights-middle--fit{min-height:200px;max-height:48vh}.vault-screen--transactions .vault-transactions{flex:none;min-height:0;overflow:visible}.vault-trans-grid-wrap{flex:none;overflow:visible}.vault-txn-list-scroll{overflow:visible;max-height:none}.vault-trans-grid-wrap .vault-right-rail{overflow:visible}.vault-sidenav{position:sticky;top:0;z-index:20;border-right:none;border-bottom:1px solid rgba(72,72,71,.5)}.vault-dash-grid,.vault-budget-grid,.vault-planning-grid,.vault-add-grid,.vault-account-grid,.vault-credit-showcase,.vault-trans-grid{grid-template-columns:1fr}.vault-rail-card--chart .pie-card{min-height:0}.vault-topbar{flex-direction:column;align-items:flex-start}.vault-top-actions{width:auto;align-items:flex-end}.vault-screen-head h2{font-size:1.8rem}.finance-chat-root{right:12px;bottom:calc(86px + env(safe-area-inset-bottom))}.finance-chat-head{padding:12px;padding-top:calc(12px + env(safe-area-inset-top))}.finance-chat-log{padding:12px;gap:10px}.finance-chat-suggestions{padding:8px 10px}.finance-chat-inputbar{padding:8px 10px 10px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}.vault-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.vault-content--mobile .vault-screen--transactions,.vault-content--mobile .vault-screen--transactions .vault-transactions,.vault-content--mobile .vault-trans-grid-wrap{flex:1 1 auto;min-height:0;overflow:hidden}.vault-screen-head--dashboard{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}.vault-dashboard-year-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.vault-dashboard-year-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#e6edf373}.vault-dashboard-year--animated .animated-select{animation:vaultFadeSlide .35s ease both}.vault-summary-year--animated{animation:vaultFadeSlide .32s ease both}.vault-metric-swap{display:inline-block;animation:vaultFadeSlide .28s ease both}.vault-txn-period-bar{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:10px 12px;margin-bottom:16px;max-width:100%;overflow-x:auto;overflow-y:visible;padding:8px 2px 10px;-webkit-overflow-scrolling:touch}.vault-txn-period-bar--enter{animation:vaultFadeSlide .42s cubic-bezier(.16,1,.3,1) both}.vault-txn-period-bar--enter>.animated-select{animation:vaultTxnPeriodStagger .48s cubic-bezier(.16,1,.3,1) backwards;animation-delay:.04s}.vault-txn-period-bar--enter .vault-month-nav>*{animation:vaultTxnPeriodStagger .48s cubic-bezier(.16,1,.3,1) backwards}.vault-txn-period-bar--enter .vault-month-nav>*:nth-child(1){animation-delay:.1s}.vault-txn-period-bar--enter .vault-month-nav>*:nth-child(2){animation-delay:.14s}.vault-txn-period-bar--enter .vault-month-nav>*:nth-child(3){animation-delay:.18s}.vault-txn-period-bar--enter .vault-month-nav>*:nth-child(4){animation-delay:.22s}.vault-txn-period-bar--enter .vault-month-nav>*:nth-child(5){animation-delay:.26s}@keyframes vaultTxnPeriodStagger{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.vault-txn-period-bar .vault-month-nav-btn--animated{transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s ease,background .2s ease,border-color .2s ease}.vault-txn-period-bar .vault-month-nav-btn--animated:active{transform:scale(.9)}.vault-txn-period-bar .vault-txn-period-select--animated .animated-select-trigger{transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s ease,border-color .2s ease,filter .2s ease}.vault-txn-period-bar .vault-txn-period-select--animated .animated-select-trigger:active{transform:scale(.98)}.vault-filter-row.filters--premium{padding-block:6px}.vault-txn-period-bar .vault-month-nav-btn:hover,.vault-txn-period-bar .vault-month-nav-btn:focus-visible{transform:translateY(-2px) scale(1.05);box-shadow:0 8px 22px #c799ff33;border-color:#c799ff59}.vault-txn-period-bar .animated-select-trigger:hover,.vault-txn-period-bar .animated-select-trigger:focus-visible{transform:translateY(-2px);box-shadow:0 8px 22px #c799ff29;border-color:#c799ff52}.vault-txn-period-bar>.animated-select{width:auto;flex:0 0 auto;min-width:140px;max-width:min(220px,100%)}.vault-month-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:8px;flex:1 1 auto;min-width:0}.vault-month-nav>.animated-select{width:auto;flex:0 1 128px;min-width:104px;max-width:160px}.vault-month-nav--animated{animation:vaultFadeSlide .3s ease both}.vault-month-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;border:1px solid rgba(240,246,252,.12);background:#f0f6fc0f;color:#e6edf3;cursor:pointer;transition:background .2s ease,transform .2s ease,border-color .2s ease}.vault-month-nav-btn:hover{background:#f0f6fc1a;transform:translateY(-1px)}.vault-transactions .vault-txn-period-bar .vault-month-nav-btn:hover,.vault-transactions .vault-txn-period-bar .vault-month-nav-btn:focus-visible{transform:translateY(-2px) scale(1.05);box-shadow:0 8px 22px #c799ff33}.vault-txn-list-pane{animation:vaultFadeSlide .32s ease both;flex:1;min-height:100%;display:flex;flex-direction:column}@keyframes vaultFadeSlide{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.vault-goal-duration-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#e6edf380;margin:8px 0 6px}.vault-goal-duration-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.vault-goal-duration-chips--animated .vault-goal-chip{transition:background .22s ease,border-color .22s ease,transform .2s ease,box-shadow .22s ease}.vault-goal-chip{padding:8px 14px;border-radius:999px;border:1px solid rgba(240,246,252,.14);background:#141416d9;color:#c9d1d9;font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer}.vault-goal-chip:hover{border-color:#a855f773;transform:translateY(-1px)}.vault-goal-chip.is-active{background:linear-gradient(135deg,#581c878c,#2d0054e6);border-color:#a855f78c;color:#fff;box-shadow:0 4px 20px #581c8740}.vault-progress--time{margin-top:6px;height:4px;opacity:.85}.vault-progress--time>div{background:linear-gradient(90deg,#22d3ee80,#a855f7bf)}.vault-insight-card--animated{animation:vaultInsightIn .45s ease both}@keyframes vaultInsightIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.vault-insight-body{line-height:1.55;color:#e6edf3d1;font-size:.9375rem}
