@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Outfit:wght@500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--ds-surface-base: hsl(220 10% 5%);--ds-surface-elevated: hsl(220 8% 8%);--ds-surface-overlay: rgba(255, 255, 255, .03);--ds-surface-border: rgba(255, 255, 255, .06);--ds-surface-border-strong: rgba(255, 255, 255, .1);--ds-primary: #91a3bf;--ds-primary-soft: rgba(145, 163, 191, .16);--ds-primary-strong: rgba(145, 163, 191, .32);--ds-primary-muted: hsl(217 18% 48%);--ds-accent: hsl(35 45% 68%);--ds-accent-muted: hsl(35 28% 48%);--ds-glow: hsl(35 55% 74%);--ds-emerald: hsl(147 45% 60%);--ds-rose: hsl(12 45% 65%);--ds-amber: hsl(35 47% 63%);--ds-income: hsl(147 45% 60%);--ds-income-bg: rgba(103, 200, 141, .12);--ds-expense: hsl(12 45% 65%);--ds-expense-bg: rgba(216, 137, 120, .12);--ds-pending: hsl(35 47% 63%);--ds-pending-bg: rgba(210, 170, 114, .12);--ds-text-primary: rgba(255, 255, 255, .92);--ds-text-secondary: rgba(255, 255, 255, .55);--ds-text-tertiary: rgba(255, 255, 255, .35);--ds-text-inverse: hsl(220 20% 6%);--ds-glass-bg: rgba(11, 12, 15, .88);--ds-glass-bg-strong: rgba(9, 10, 13, .94);--ds-glass-bg-subtle: rgba(255, 255, 255, .03);--ds-glass-border: rgba(255, 255, 255, .06);--ds-glass-border-strong: rgba(255, 255, 255, .1);--ds-glass-blur: blur(18px) saturate(150%);--ds-glass-blur-strong: blur(28px) saturate(165%);--ds-glass-blur-subtle: blur(10px) saturate(130%);--ds-glass-shadow: 0 18px 42px rgba(0, 0, 0, .28);--ds-glass-shadow-strong: 0 28px 72px rgba(0, 0, 0, .36);--ds-glass-shadow-subtle: 0 10px 26px rgba(0, 0, 0, .18);--ds-gradient-page: radial-gradient( ellipse 72% 44% at 50% -16%, rgba(145, 163, 191, .14) 0%, transparent 60% ), radial-gradient( ellipse 50% 36% at 85% 18%, hsl(35 45% 68% / .08) 0%, transparent 50% ), hsl(220 10% 5%);--ds-gradient-ai: linear-gradient(135deg, var(--ds-primary), var(--ds-accent));--ds-gradient-ai-subtle: linear-gradient(135deg, rgba(145, 163, 191, .18), hsl(35 45% 68% / .16));--ds-gradient-primary: linear-gradient(135deg, var(--ds-primary), hsl(217 18% 54%));--ds-gradient-accent: linear-gradient(135deg, hsl(35 45% 68%), hsl(147 45% 60%));--ds-gradient-income: linear-gradient(135deg, rgba(103, 200, 141, .8), rgba(63, 150, 102, .8));--ds-gradient-expense: linear-gradient(135deg, rgba(216, 137, 120, .82), rgba(181, 93, 76, .82));--ds-gradient-card: linear-gradient(180deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .02));--ds-page-px: clamp(16px, 4vw, 24px);--ds-page-py: clamp(16px, 3vw, 24px);--ds-card-pad: 20px;--ds-bottom-nav-height: 64px;--ds-top-bar-height: 56px;--ds-safe-bottom: env(safe-area-inset-bottom, 0px);--ds-radius-xs: 6px;--ds-radius-sm: 10px;--ds-radius-md: 16px;--ds-radius-lg: 24px;--ds-radius-xl: 32px;--ds-radius-full: 9999px;--ds-radius-card: 20px;--ds-radius-button: 12px;--ds-radius-input: 12px;--ds-radius-chip: 8px;--ds-font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ds-font-display: "Outfit", "DM Sans", sans-serif;--ds-font-mono: "JetBrains Mono", "Fira Code", monospace;--ds-shadow-xs: 0 1px 3px rgba(0, 0, 0, .2);--ds-shadow-sm: 0 4px 12px rgba(0, 0, 0, .24);--ds-shadow-md: 0 8px 24px rgba(0, 0, 0, .28);--ds-shadow-lg: 0 16px 48px rgba(0, 0, 0, .36);--ds-shadow-xl: 0 32px 80px rgba(0, 0, 0, .44);--ds-glow-primary: 0 0 24px rgba(145, 163, 191, .32);--ds-glow-accent: 0 0 24px hsl(35 45% 68% / .28);--ds-glow-income: 0 0 16px rgba(103, 200, 141, .28);--ds-glow-expense: 0 0 16px rgba(216, 137, 120, .28);--ds-ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ds-ease-smooth: cubic-bezier(.4, 0, .2, 1);--ds-ease-in: cubic-bezier(.4, 0, 1, 1);--ds-ease-out: cubic-bezier(0, 0, .2, 1);--ds-duration-fast: .15s;--ds-duration-normal: .25s;--ds-duration-slow: .4s;--ds-z-cards: 1;--ds-z-sticky: 10;--ds-z-bottom-nav: 20;--ds-z-drawer: 30;--ds-z-modal: 40;--ds-z-toast: 50}[data-theme=light]{--ds-surface-base: hsl(36 26% 93%);--ds-surface-elevated: hsl(0 0% 100%);--ds-surface-overlay: rgba(0, 0, 0, .04);--ds-surface-border: rgba(0, 0, 0, .08);--ds-surface-border-strong: rgba(0, 0, 0, .14);--ds-primary: #425c83;--ds-primary-soft: rgba(66, 92, 131, .12);--ds-primary-strong: rgba(66, 92, 131, .22);--ds-glass-bg: rgba(255, 255, 255, .56);--ds-glass-bg-strong: rgba(255, 255, 255, .66);--ds-glass-bg-subtle: rgba(255, 255, 255, .4);--ds-glass-border: rgba(66, 92, 131, .14);--ds-glass-border-strong: rgba(66, 92, 131, .2);--ds-glass-shadow: 0 12px 36px rgba(30, 50, 100, .12), inset 0 1px 0 rgba(255, 255, 255, .92);--ds-glass-shadow-strong: 0 24px 64px rgba(30, 50, 100, .16), inset 0 1px 0 rgba(255, 255, 255, 1), 0 0 0 1px rgba(66, 92, 131, .08);--ds-glass-shadow-subtle: 0 6px 20px rgba(30, 50, 100, .09), inset 0 1px 0 rgba(255, 255, 255, .84);--ds-gradient-page: radial-gradient(ellipse 82% 52% at 50% -8%, rgba(66, 92, 131, .34) 0%, transparent 55%), radial-gradient(ellipse 56% 40% at 94% 14%, rgba(210, 170, 114, .2) 0%, transparent 45%), radial-gradient(ellipse 52% 44% at 6% 92%, rgba(66, 92, 131, .18) 0%, transparent 50%), hsl(220 20% 88%);--ds-text-primary: rgba(15, 23, 42, .92);--ds-text-secondary: rgba(15, 23, 42, .55);--ds-text-tertiary: rgba(15, 23, 42, .35);--ds-text-inverse: rgba(255, 255, 255, .92);--ds-shadow-xs: 0 1px 3px rgba(0, 0, 0, .08);--ds-shadow-sm: 0 4px 12px rgba(0, 0, 0, .1);--ds-shadow-md: 0 8px 24px rgba(0, 0, 0, .12);--ds-shadow-lg: 0 16px 48px rgba(0, 0, 0, .16);--ds-shadow-xl: 0 32px 80px rgba(0, 0, 0, .2)}@media (prefers-reduced-motion: reduce){:root{--ds-duration-fast: 0ms;--ds-duration-normal: 0ms;--ds-duration-slow: 0ms;--ds-ease-spring: linear;--ds-ease-smooth: linear}}@keyframes spinContinuous{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spinContinuous .7s linear infinite;display:inline-flex;flex-shrink:0}@media (prefers-reduced-motion: reduce){.spin{animation:none}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmerSlide{0%{left:-60%}to{left:160%}}@keyframes ds-ai-pulse{0%,to{box-shadow:var(--ds-glass-shadow-strong),0 0 #91a3bf00}50%{box-shadow:var(--ds-glass-shadow-strong),0 0 32px #91a3bf38}}.ds-font-sans{font-family:var(--ds-font-sans)}.ds-font-mono{font-family:var(--ds-font-mono);font-variant-numeric:tabular-nums}.ds-glass{background:var(--ds-glass-bg);border:1px solid transparent;backdrop-filter:var(--ds-glass-blur);-webkit-backdrop-filter:var(--ds-glass-blur);box-shadow:var(--ds-glass-shadow);border-radius:var(--ds-radius-card)}.ds-glass-strong{background:var(--ds-glass-bg-strong);border:1px solid transparent;backdrop-filter:var(--ds-glass-blur-strong);-webkit-backdrop-filter:var(--ds-glass-blur-strong);box-shadow:var(--ds-glass-shadow-strong);border-radius:var(--ds-radius-card)}.ds-ai-text{background:var(--ds-gradient-ai);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.ds-pb-safe{padding-bottom:calc(var(--ds-bottom-nav-height) + var(--ds-safe-bottom))}.pg-premium-bg{position:relative;isolation:isolate}.pg-premium-bg:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;background:var(--ds-gradient-page)}.pg-glass{position:relative;overflow:hidden;border-radius:var(--pg-r, 24px);backdrop-filter:var(--_pg-blur);-webkit-backdrop-filter:var(--_pg-blur);background:var(--_pg-bg);border:1px solid var(--_pg-border);box-shadow:var(--_pg-shadow);transition:box-shadow .26s var(--ds-ease-smooth),border-color .26s var(--ds-ease-smooth)}@media (prefers-reduced-motion: reduce){.pg-glass{transition:none}}.pg-glass:before{content:"";position:absolute;inset:0 auto auto 0;width:40%;height:44%;border-radius:999px;background:radial-gradient(circle,var(--_pg-glow) 0%,transparent 70%);filter:blur(6px);pointer-events:none}.pg-glass:after{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:var(--_pg-top-line);opacity:.9;pointer-events:none}.pg-glass:hover{border-color:var(--_pg-border-hover);box-shadow:var(--_pg-shadow-hover)}:root .pg-glass,[data-theme=dark] .pg-glass{--_pg-blur: blur(28px) saturate(160%);--_pg-bg: linear-gradient(160deg, rgba(255,255,255,.055) 0%, rgba(9,10,14,.94) 100%);--_pg-border: rgba(255,255,255,.06);--_pg-border-hover: rgba(145,163,191,.24);--_pg-shadow: 0 28px 80px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.07), 0 0 0 1px rgba(255,255,255,.02);--_pg-shadow-hover: 0 32px 90px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.09), 0 0 40px rgba(145,163,191,.08);--_pg-glow: rgba(145,163,191,.18);--_pg-top-line: linear-gradient(90deg, transparent, rgba(255,255,255,.3), transparent)}[data-theme=dark] .pg-glass[data-pg-accent=primary],:root .pg-glass[data-pg-accent=primary]{--_pg-border: rgba(145,163,191,.22);--_pg-border-hover: rgba(145,163,191,.32);--_pg-glow: rgba(145,163,191,.22);--_pg-top-line: linear-gradient(90deg, transparent, rgba(145,163,191,.5), transparent)}[data-theme=dark] .pg-glass[data-pg-accent=gold],:root .pg-glass[data-pg-accent=gold]{--_pg-border: rgba(210,170,114,.22);--_pg-border-hover: rgba(210,170,114,.32);--_pg-glow: rgba(210,170,114,.2);--_pg-top-line: linear-gradient(90deg, transparent, rgba(210,170,114,.5), transparent)}[data-theme=light] .pg-glass{--_pg-blur: blur(20px) saturate(190%) brightness(1.06);--_pg-bg: linear-gradient(160deg, rgba(255,255,255,.64) 0%, rgba(226,236,255,.52) 100%);--_pg-border: rgba(66,92,131,.16);--_pg-border-hover: rgba(66,92,131,.26);--_pg-shadow: 0 24px 60px rgba(30,50,100,.14), 0 6px 18px rgba(30,50,100,.08), inset 0 1px 0 rgba(255,255,255,.92), 0 0 0 1px rgba(66,92,131,.08);--_pg-shadow-hover: 0 30px 72px rgba(30,50,100,.18), inset 0 1px 0 rgba(255,255,255,.98), 0 0 0 1px rgba(66,92,131,.14);--_pg-glow: rgba(66,92,131,.18);--_pg-top-line: linear-gradient(90deg, transparent, rgba(66,92,131,.28), transparent)}[data-theme=light] .pg-glass[data-pg-accent=primary]{--_pg-border: rgba(66,92,131,.2);--_pg-glow: rgba(66,92,131,.2);--_pg-top-line: linear-gradient(90deg, transparent, rgba(66,92,131,.36), transparent)}[data-theme=light] .pg-glass[data-pg-accent=gold]{--_pg-border: rgba(210,170,114,.22);--_pg-glow: rgba(210,170,114,.18);--_pg-top-line: linear-gradient(90deg, transparent, rgba(210,170,114,.38), transparent)}@media (max-width: 600px){:root .pg-glass,[data-theme=dark] .pg-glass{--_pg-blur: blur(16px) saturate(140%)}[data-theme=light] .pg-glass{--_pg-blur: blur(12px) saturate(160%)}}.pg-hero-metric{position:relative;overflow:hidden;border-radius:24px;padding:15px 17px;backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);transition:box-shadow .22s var(--ds-ease-smooth),border-color .22s var(--ds-ease-smooth)}@media (prefers-reduced-motion: reduce){.pg-hero-metric{transition:none}}:root .pg-hero-metric,[data-theme=dark] .pg-hero-metric{background:linear-gradient(180deg,#ffffff14,#ffffff06);border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 34px #0000002e,inset 0 1px #ffffff0d}[data-theme=light] .pg-hero-metric{background:linear-gradient(180deg,#ffffffc7,#ebf2ff99);border:1px solid rgba(66,92,131,.14);box-shadow:0 12px 28px #1e32641a,inset 0 1px #fffffff5}.pg-hero-metric:before{content:"";position:absolute;inset:0 auto auto 0;width:54%;height:60%;border-radius:999px;background:radial-gradient(circle,var(--_hm-glow, rgba(145,163,191,.12)) 0%,transparent 70%);filter:blur(4px);pointer-events:none}.pg-hero-metric[data-tone=positive]{--_hm-glow: rgba(103,200,141,.14)}.pg-hero-metric[data-tone=negative]{--_hm-glow: rgba(216,137,120,.14)}:root .pg-hero-metric:hover,[data-theme=dark] .pg-hero-metric:hover{box-shadow:0 20px 40px #00000038,inset 0 1px #ffffff14}[data-theme=light] .pg-hero-metric:hover{box-shadow:0 16px 34px #1e326424,inset 0 1px #fffffffa,0 0 0 1px #425c831f}.pg-hero-metric[data-tone=positive]:hover{border-color:#67c88d38}.pg-hero-metric[data-tone=negative]:hover{border-color:#d8897838}:root .pg-hero-metric:not([data-tone]):hover,[data-theme=dark] .pg-hero-metric:not([data-tone]):hover{border-color:#91a3bf2e}[data-theme=light] .pg-hero-metric:not([data-tone]):hover{border-color:#425c8333}.pg-link-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit;min-height:220px;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s var(--ds-ease-smooth),border-color .2s var(--ds-ease-smooth)}@media (prefers-reduced-motion: reduce){.pg-link-card{transition:none}}@media (max-width: 600px){.pg-link-card{min-height:180px}}.pg-link-card:hover{transform:translateY(-4px)}:root .pg-link-card:hover,[data-theme=dark] .pg-link-card:hover{border-color:#91a3bf52!important;box-shadow:0 30px 70px #00000052,inset 0 1px #ffffff14,0 0 32px #91a3bf14!important}[data-theme=light] .pg-link-card:hover{border-color:#425c8347!important;box-shadow:0 28px 56px #1e326429,inset 0 1px #fff,0 0 0 1px #425c831f!important}.pg-link-card[data-pg-accent=gold]:hover{border-color:#d2aa725c!important}.pg-link-card .card-shimmer{position:absolute;top:0;left:-60%;width:60%;height:1px;animation:shimmerSlide 3.5s ease-in-out infinite;pointer-events:none}@media (prefers-reduced-motion: reduce){.pg-link-card .card-shimmer{animation:none}}:root .pg-link-card .card-shimmer,[data-theme=dark] .pg-link-card .card-shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent)}[data-theme=light] .pg-link-card .card-shimmer{background:linear-gradient(90deg,transparent,rgba(66,92,131,.28),transparent)}.pg-link-card[data-pg-accent=gold] .card-shimmer{background:linear-gradient(90deg,transparent,rgba(210,170,114,.55),transparent);animation-delay:.8s}.pg-anim{animation:fadeSlideUp .44s cubic-bezier(.22,1,.36,1) both}@media (prefers-reduced-motion: reduce){.pg-anim{animation:none!important}}.pg-row{display:flex;flex-direction:row}.pg-col{display:flex;flex-direction:column}.pg-wrap{flex-wrap:wrap}.pg-items-center{align-items:center}.pg-items-end{align-items:flex-end}.pg-justify-between{justify-content:space-between}.pg-min-w-0{min-width:0}.pg-z1{position:relative;z-index:1}.pg-mt-auto{margin-top:auto}.pg-col-md-row{display:flex;flex-direction:column}@media (min-width: 900px){.pg-col-md-row{flex-direction:row}}.pg-col-sm-row{display:flex;flex-direction:column}@media (min-width: 600px){.pg-col-sm-row{flex-direction:row}}.pg-col-lg-row{display:flex;flex-direction:column}@media (min-width: 1200px){.pg-col-lg-row{flex-direction:row}}.pg-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pg-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 899px){.pg-grid-2,.pg-grid-4{grid-template-columns:1fr}}.pg-overline{display:block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--ds-text-secondary)}.pg-label{display:block;font-size:.75rem;color:var(--ds-text-secondary);letter-spacing:.08em}:root{--ds-shell-hover: rgba(255, 255, 255, .065);--ds-shell-sidebar-bg: rgba(7, 8, 12, .94);--ds-shell-topbar-bg: rgba(7, 8, 12, .9);--ds-shell-border: rgba(255, 255, 255, .055);--ds-shell-inset-top: inset 0 1px 0 rgba(255, 255, 255, .05), 0 8px 32px rgba(0, 0, 0, .28);--ds-shell-active-bar: var(--ds-primary);--ds-shell-active-glow: rgba(145, 163, 191, .28);--ds-shell-brand-from: #91a3bf;--ds-shell-brand-via: rgba(255, 255, 255, .88);--ds-shell-brand-to: hsl(35 45% 72%)}[data-theme=light]{--ds-shell-hover: rgba(66, 92, 131, .08);--ds-shell-sidebar-bg: rgba(244, 247, 255, .92);--ds-shell-topbar-bg: rgba(244, 247, 255, .9);--ds-shell-border: rgba(66, 92, 131, .1);--ds-shell-inset-top: inset 0 1px 0 rgba(255, 255, 255, .95), 0 6px 24px rgba(30, 50, 100, .07);--ds-shell-active-bar: var(--ds-primary-muted);--ds-shell-active-glow: rgba(66, 92, 131, .18);--ds-shell-brand-from: var(--ds-primary-muted);--ds-shell-brand-via: hsl(217 28% 30%);--ds-shell-brand-to: var(--ds-accent-muted)}@keyframes shellFadeIn{0%{opacity:0}to{opacity:1}}@keyframes shellSlideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes shellBrandShimmer{0%{background-position:200% center}to{background-position:-200% center}}@keyframes shellActiveIn{0%{transform:scaleY(.4);opacity:0}to{transform:scaleY(1);opacity:1}}.shell-sidebar-inner{height:100%;display:flex;flex-direction:column;overflow:hidden;position:relative}.shell-sidebar-orb{position:absolute;top:-80px;left:-60px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(145,163,191,.09) 0%,transparent 68%);filter:blur(16px);pointer-events:none;z-index:0}[data-theme=light] .shell-sidebar-orb{background:radial-gradient(circle,rgba(66,92,131,.07) 0%,transparent 68%)}.shell-sidebar-highlight{position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12) 40%,rgba(255,255,255,.06) 70%,transparent);pointer-events:none;z-index:1}[data-theme=light] .shell-sidebar-highlight{background:linear-gradient(90deg,transparent,rgba(255,255,255,.8) 40%,rgba(255,255,255,.5) 70%,transparent)}.shell-sidebar-content{position:relative;z-index:1;display:flex;flex-direction:column;height:100%;overflow:hidden}.shell-sidebar-header{display:flex;align-items:center;min-height:58px;padding:0 10px;gap:8px;flex-shrink:0;border-bottom:1px solid var(--ds-shell-border)}.shell-sidebar-footer{padding:8px;flex-shrink:0;border-top:1px solid var(--ds-shell-border)}.shell-brand-name{font-family:var(--ds-font-display);font-weight:700;font-size:.9375rem;letter-spacing:-.03em;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:linear-gradient(110deg,var(--ds-shell-brand-from) 0%,var(--ds-shell-brand-via) 42%,var(--ds-shell-brand-from) 58%,var(--ds-shell-brand-to) 100%);background-size:300% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shellBrandShimmer 7s linear infinite}@media (prefers-reduced-motion: reduce){.shell-brand-name{animation:none;background-position:0% center}}.shell-group-header{display:flex;align-items:center;gap:8px;width:100%;padding:4px 10px;margin:10px 0 3px;border:none;background:transparent;cursor:pointer;color:var(--ds-text-tertiary);font-family:var(--ds-font-sans);font-size:.625rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;border-radius:var(--ds-radius-xs);outline:none;-webkit-tap-highlight-color:transparent;transition:color var(--ds-duration-fast) var(--ds-ease-smooth)}.shell-group-header:before{content:"";flex:0 0 10px;height:1px;background:currentColor;opacity:.4;border-radius:1px}.shell-group-header:hover{color:var(--ds-text-secondary)}.shell-nav-item{position:relative;display:flex;align-items:center;gap:10px;padding:8px 12px 8px 14px;border-radius:var(--ds-radius-md);margin-bottom:1px;text-decoration:none;font-family:var(--ds-font-sans);font-size:.8438rem;min-height:38px;white-space:nowrap;overflow:hidden;width:100%;box-sizing:border-box;border:none;background:transparent;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;transition:background var(--ds-duration-fast) var(--ds-ease-smooth),color var(--ds-duration-fast) var(--ds-ease-smooth)}.shell-nav-item:focus-visible{outline:2px solid var(--ds-primary);outline-offset:2px}.shell-nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s var(--ds-ease-spring)}.shell-nav-item--inactive{color:var(--ds-text-secondary);font-weight:400}.shell-nav-item--inactive:hover{color:var(--ds-text-primary);background:var(--ds-shell-hover)}.shell-nav-item--inactive:hover .shell-nav-icon{transform:scale(1.12) translate(1px)}.shell-nav-item--active{color:var(--ds-primary);background:linear-gradient(90deg,var(--ds-primary-soft) 0%,transparent 80%);font-weight:600}.shell-nav-item--active:before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:2.5px;border-radius:0 3px 3px 0;background:var(--ds-shell-active-bar);box-shadow:0 0 10px var(--ds-shell-active-glow),0 0 20px var(--ds-shell-active-glow);animation:shellActiveIn .26s var(--ds-ease-spring) forwards}.shell-nav-item--active .shell-nav-icon{filter:drop-shadow(0 0 6px var(--ds-shell-active-glow));color:var(--ds-primary)}[data-theme=light] .shell-nav-item--active{background:linear-gradient(90deg,rgba(66,92,131,.11) 0%,transparent 80%)}.shell-badge{position:absolute;top:-4px;right:-6px;min-width:14px;height:14px;border-radius:999px;background:var(--ds-pending);color:var(--ds-text-inverse);font-size:9px;font-weight:700;font-family:var(--ds-font-sans);display:flex;align-items:center;justify-content:center;padding:0 2px;line-height:1}.shell-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--ds-radius-sm);border:1px solid transparent;background:transparent;color:var(--ds-text-secondary);cursor:pointer;flex-shrink:0;outline:none;-webkit-tap-highlight-color:transparent;transition:background var(--ds-duration-fast) var(--ds-ease-smooth),border-color var(--ds-duration-fast) var(--ds-ease-smooth),color var(--ds-duration-fast) var(--ds-ease-smooth)}.shell-icon-btn:hover{background:var(--ds-shell-hover);border-color:var(--ds-shell-border);color:var(--ds-text-primary)}.shell-icon-btn:focus-visible{outline:2px solid var(--ds-primary);outline-offset:2px}.shell-topbar{position:sticky;top:0;z-index:var(--ds-z-sticky);transition:box-shadow .24s var(--ds-ease-smooth)}.shell-topbar.is-scrolled{box-shadow:var(--ds-shell-inset-top),0 0 0 1px var(--ds-shell-border)}.shell-topbar-title{font-family:var(--ds-font-display);font-size:.875rem;font-weight:600;letter-spacing:-.02em;color:var(--ds-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shell-cta-btn{display:flex;align-items:center;gap:6px;padding:6px 14px 6px 12px;border-radius:var(--ds-radius-full);background:var(--ds-primary);color:var(--ds-text-inverse);font-family:var(--ds-font-sans);font-size:.8125rem;font-weight:600;text-decoration:none;letter-spacing:.01em;box-shadow:0 0 20px var(--ds-primary-strong),0 2px 8px #0000003d;transition:opacity var(--ds-duration-fast) var(--ds-ease-smooth),box-shadow var(--ds-duration-fast) var(--ds-ease-smooth);flex-shrink:0;white-space:nowrap;outline:none}.shell-cta-btn:hover{opacity:.88;box-shadow:0 0 28px var(--ds-primary-strong),0 4px 12px #00000047}.shell-cta-btn:focus-visible{outline:2px solid var(--ds-primary);outline-offset:3px}[data-theme=light] .shell-cta-btn{color:#fffffff5}.shell-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:340px;border-radius:var(--ds-radius-lg);z-index:var(--ds-z-modal);overflow:hidden;animation:fadeSlideUp .18s var(--ds-ease-smooth) forwards}@media (max-width: 599px){.shell-dropdown{position:fixed;top:auto;bottom:calc(var(--ds-bottom-nav-height) + 8px);right:8px;left:8px;width:auto}}.auth-input-wrap{display:flex;flex-direction:column;gap:5px;width:100%}.auth-label{font-family:var(--ds-font-sans);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ds-text-tertiary)}.auth-input{width:100%;box-sizing:border-box;padding:11px 14px;border-radius:var(--ds-radius-md);background:#ffffff0a;border:1px solid var(--ds-shell-border);color:var(--ds-text-primary);font-family:var(--ds-font-sans);font-size:.9375rem;outline:none;transition:border-color .15s var(--ds-ease-smooth),background .15s var(--ds-ease-smooth);-webkit-appearance:none}.auth-input::placeholder{color:var(--ds-text-tertiary)}.auth-input:hover{border-color:var(--ds-shell-border);background:#ffffff0e}.auth-input:focus{border-color:var(--ds-primary);background:#91a3bf0f;box-shadow:0 0 0 3px var(--ds-primary-soft)}[data-theme=light] .auth-input{background:#fff9;border-color:var(--ds-shell-border);color:var(--ds-text-primary)}[data-theme=light] .auth-input:hover{background:#ffffffbf}[data-theme=light] .auth-input:focus{background:#ffffffe6;border-color:var(--ds-primary-muted);box-shadow:0 0 0 3px #425c831f}.auth-input--code{letter-spacing:.4em;font-size:1.5rem;text-align:center;font-family:var(--ds-font-mono);font-weight:500;padding:14px}.auth-helper{font-family:var(--ds-font-sans);font-size:.75rem;color:var(--ds-text-tertiary);margin:0}.auth-btn-primary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 20px;border-radius:var(--ds-radius-md);border:none;background:var(--ds-primary);color:var(--ds-text-inverse);font-family:var(--ds-font-sans);font-size:.9375rem;font-weight:600;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;box-shadow:0 0 22px var(--ds-primary-strong),0 2px 8px #00000038;transition:opacity .15s var(--ds-ease-smooth),box-shadow .15s var(--ds-ease-smooth)}.auth-btn-primary:hover:not(:disabled){opacity:.88;box-shadow:0 0 30px var(--ds-primary-strong),0 4px 14px #00000047}.auth-btn-primary:disabled{opacity:.38;cursor:not-allowed;box-shadow:none}.auth-btn-primary:focus-visible{outline:2px solid var(--ds-primary);outline-offset:3px}[data-theme=light] .auth-btn-primary{color:#fffffff5}.auth-btn-outline{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:10px 20px;border-radius:var(--ds-radius-md);border:1px solid var(--ds-shell-border);background:transparent;color:var(--ds-text-primary);font-family:var(--ds-font-sans);font-size:.9375rem;font-weight:500;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;transition:background .15s var(--ds-ease-smooth),border-color .15s var(--ds-ease-smooth)}.auth-btn-outline:hover:not(:disabled){background:var(--ds-shell-hover);border-color:var(--ds-shell-active-bar)}.auth-btn-outline:disabled{opacity:.4;cursor:not-allowed}.auth-btn-outline:focus-visible{outline:2px solid var(--ds-primary);outline-offset:3px}.auth-btn-ghost{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;border:none;background:transparent;color:var(--ds-text-secondary);font-family:var(--ds-font-sans);font-size:.875rem;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;transition:color .15s var(--ds-ease-smooth);border-radius:var(--ds-radius-sm)}.auth-btn-ghost:hover:not(:disabled){color:var(--ds-text-primary)}.auth-btn-ghost:disabled{opacity:.38;cursor:not-allowed}.auth-btn-ghost:focus-visible{outline:2px solid var(--ds-primary);outline-offset:2px}.auth-alert{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-radius:var(--ds-radius-md);font-family:var(--ds-font-sans);font-size:.875rem;line-height:1.45}.auth-alert--error{background:var(--ds-expense-bg);border:1px solid rgba(216,137,120,.22);color:var(--ds-expense)}.auth-alert--success{background:var(--ds-income-bg);border:1px solid rgba(103,200,141,.22);color:var(--ds-income)}.auth-alert--info{background:var(--ds-primary-soft);border:1px solid var(--ds-primary-strong);color:var(--ds-primary)}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--ds-text-tertiary);font-family:var(--ds-font-sans);font-size:.75rem;letter-spacing:.06em}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--ds-shell-border)}
