.landing-page{--bg: #0B0D12;--bg-1: #11141B;--bg-2: #171B24;--bg-3: #1E2330;--line: rgba(255,255,255,.07);--line-strong: rgba(255,255,255,.12);--fg: #F5F6F8;--fg-1: rgba(245,246,248,.78);--fg-2: rgba(245,246,248,.54);--fg-3: rgba(245,246,248,.34);--accent: #C7FF4A;--accent-ink: #0B0D12;--accent-soft: rgba(199,255,74,.14);--accent-line: rgba(199,255,74,.38);--warn: #FF6B57;--warn-soft: rgba(255,107,87,.14);--r-sm: 10px;--r: 16px;--r-lg: 22px;--r-pill: 999px;--font-sans: "Geist", "Inter", -apple-system, system-ui, sans-serif;--font-mono: "Geist Mono", "JetBrains Mono", ui-monospace, monospace;--font-display: "Fraunces", ui-serif, Georgia, serif;--lp-bg: #0B0D12;--lp-bg-1: #11141B;--lp-bg-2: #171B24;--lp-bg-3: #1E2330;--lp-fg: #F5F6F8;--lp-fg-1: rgba(245,246,248,.78);--lp-fg-2: rgba(245,246,248,.54);--lp-fg-3: rgba(245,246,248,.34);--lp-accent: #C7FF4A;--lp-accent-ink: #0B0D12;--lp-accent-soft: rgba(199,255,74,.14);--lp-accent-line: rgba(199,255,74,.38);--lp-line: rgba(255,255,255,.07);--lp-line-strong: rgba(255,255,255,.12);--lp-warn: #FF6B57;--lp-warn-soft: rgba(255,107,87,.14);--lp-font-sans: "Geist", "Inter", -apple-system, system-ui, sans-serif;--lp-font-mono: "Geist Mono", "JetBrains Mono", ui-monospace, monospace;--lp-font-display: "Fraunces", ui-serif, Georgia, serif;--lp-r-sm: 10px;--lp-r: 16px;--lp-r-lg: 22px;--lp-r-pill: 999px;--lp-accent-pulse: rgba(199,255,74,.6);--notch: #000;--lp-notch: #000;background:var(--bg);color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}.landing-page *,.landing-page *:before,.landing-page *:after{box-sizing:border-box}.lp-nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 40px;height:64px;background:#0b0d12d1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--line);animation:lpNavSlide .6s cubic-bezier(.16,1,.3,1) both}.lp-nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.lp-nav-wordmark{font-family:var(--font-display);font-size:22px;letter-spacing:-.8px;color:var(--fg);line-height:1;font-weight:400}.lp-nav-wordmark span{color:var(--accent)}.lp-nav-links{display:flex;align-items:center;gap:32px}.lp-nav-links a{font-size:14px;color:var(--fg-2);text-decoration:none;font-weight:500;letter-spacing:-.1px;transition:color .2s}.lp-nav-links a:hover,.lp-nav-links a.active{color:var(--fg)}.lp-nav-cta{display:flex;gap:10px;align-items:center}.lp-btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:var(--accent-ink);border:none;border-radius:var(--r-pill);padding:10px 20px;font-size:14px;font-weight:600;font-family:var(--font-sans);cursor:pointer;letter-spacing:-.2px;text-decoration:none;transition:opacity .15s,transform .15s;white-space:nowrap}.lp-btn-primary:hover{opacity:.88;transform:translateY(-1px)}.lp-btn-ghost{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--fg-1);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:9px 18px;font-size:14px;font-weight:500;font-family:var(--font-sans);cursor:pointer;letter-spacing:-.2px;text-decoration:none;transition:border-color .2s,color .2s,transform .15s;white-space:nowrap}.lp-btn-ghost:hover{border-color:var(--accent-line);color:var(--fg);transform:translateY(-1px)}.lp-btn-store{display:inline-flex;align-items:center;gap:10px;padding:13px 24px;border-radius:var(--r-pill);font-size:15px;font-weight:600;font-family:var(--font-sans);text-decoration:none;cursor:pointer;border:none;transition:transform .15s,opacity .15s;letter-spacing:-.2px}.lp-btn-store:hover{transform:translateY(-2px);opacity:.9}.lp-btn-ios{background:var(--accent);color:var(--accent-ink);box-shadow:0 0 #c7ff4a00;transition:transform .15s,opacity .15s,box-shadow .3s}.lp-btn-ios:hover{box-shadow:0 6px 28px #c7ff4a47;opacity:1!important}.lp-btn-android{background:var(--bg-2);color:var(--fg);border:1px solid var(--line-strong)}.lp-nav-mobile-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;color:var(--fg)}.lp-mobile-menu{display:none;position:fixed;top:64px;right:0;bottom:0;left:0;z-index:99;background:#0b0d12f7;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);flex-direction:column;padding:32px 24px;gap:4px;border-top:1px solid var(--line);transform:translateY(-8px);opacity:0;transition:opacity .25s,transform .25s;pointer-events:none}.lp-mobile-menu.open{opacity:1;transform:translateY(0);pointer-events:all}.lp-mobile-menu a{font-size:22px;font-weight:500;color:var(--fg-1);text-decoration:none;padding:14px 0;border-bottom:1px solid var(--line);letter-spacing:-.4px;transition:color .15s}.lp-mobile-menu a:hover{color:var(--fg)}.lp-mobile-menu-ctas{display:flex;flex-direction:column;gap:10px;margin-top:28px}.lp-mobile-menu-ctas .lp-btn-store{justify-content:center;font-size:15px}.landing-page section{width:100%}.lp-container{max-width:1120px;margin:0 auto;padding:0 40px}.lp-hero{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;column-gap:60px;padding:120px clamp(40px,6%,100px) 80px;position:relative;overflow:hidden;max-width:1400px;margin:0 auto}.lp-hero-glow{position:absolute;top:-200px;left:50%;transform:translate(-50%);width:900px;height:700px;background:radial-gradient(ellipse at 50% 30%,rgba(199,255,74,.08) 0%,transparent 65%);pointer-events:none;animation:lpGlowPulse 8s ease-in-out infinite}.lp-hero-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:var(--r-pill);font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:24px;animation:lpFadeUp .7s .1s cubic-bezier(.16,1,.3,1) both}.lp-hero-headline{font-family:var(--font-display);font-size:clamp(48px,7vw,88px);font-weight:400;line-height:.95;letter-spacing:-3px;color:var(--fg);max-width:900px;margin-bottom:28px;animation:lpFadeUp .9s .22s cubic-bezier(.16,1,.3,1) both}.lp-hero-headline em{font-style:italic;background:linear-gradient(90deg,#c7ff4a,#ef9 45%,#c7ff4a);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:lpShimmer 4s 1.5s ease-in-out infinite}.lp-hero-sub{font-size:clamp(16px,2vw,19px);line-height:1.6;color:var(--fg-2);max-width:560px;margin:0 auto 44px;font-weight:400;animation:lpFadeUp .8s .38s cubic-bezier(.16,1,.3,1) both}.lp-hero-ctas{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;margin-bottom:72px;animation:lpFadeUp .8s .5s cubic-bezier(.16,1,.3,1) both}.lp-hero-note{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);letter-spacing:.06em;margin-bottom:64px;animation:lpFadeUp .7s .62s cubic-bezier(.16,1,.3,1) both}.lp-hero-screens{display:flex;gap:20px;align-items:flex-end;justify-content:center;width:100%;max-width:700px;margin:0 auto;animation:lpFadeUp 1s .72s cubic-bezier(.16,1,.3,1) both}.lp-phone{flex:1;max-width:200px;aspect-ratio:9/19.5;border-radius:36px;border:1px solid var(--line-strong);background:var(--bg-1);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.lp-phone.center{max-width:230px;transform:translateY(-20px)}.lp-phone:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(-45deg,transparent,transparent 6px,rgba(255,255,255,.025) 6px,rgba(255,255,255,.025) 7px)}.lp-phone-label{font-family:var(--font-mono);font-size:10px;color:var(--fg-3);letter-spacing:.1em;text-transform:uppercase;text-align:center;padding:0 16px;position:relative;z-index:1;line-height:1.6}.lp-phone:nth-child(1){animation:lpFloat1 6s 1s ease-in-out infinite}.lp-phone:nth-child(2){animation:lpFloat2 7s .5s ease-in-out infinite}.lp-phone:nth-child(3){animation:lpFloat3 6.5s 1.5s ease-in-out infinite}.lp-trust-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;background:var(--bg-1)}.lp-trust-inner{display:flex;align-items:center;justify-content:center;gap:48px;flex-wrap:wrap}.lp-trust-item{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--fg-2);font-weight:500}.lp-trust-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;animation:lpDotPop 3s ease-in-out infinite}.lp-trust-item:nth-child(2) .lp-trust-dot{animation-delay:.4s}.lp-trust-item:nth-child(3) .lp-trust-dot{animation-delay:.8s}.lp-trust-item:nth-child(4) .lp-trust-dot{animation-delay:1.2s}.lp-trust-item:nth-child(5) .lp-trust-dot{animation-delay:1.6s}.lp-section-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}.lp-section-heading{font-family:var(--font-display);font-size:clamp(36px,5vw,60px);font-weight:400;letter-spacing:-2px;line-height:1;color:var(--fg);margin-bottom:24px}.lp-section-heading em{font-style:italic;color:var(--accent)}.lp-section-body{font-size:17px;line-height:1.65;color:var(--fg-2);max-width:640px}.lp-problem-section{padding:120px 0}.lp-problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;margin-top:64px}.lp-problem-cards{display:flex;flex-direction:column;gap:12px}.lp-problem-card{padding:20px 22px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-lg);display:flex;gap:16px;align-items:flex-start}.lp-problem-card-icon{width:36px;height:36px;border-radius:var(--r-sm);background:var(--warn-soft);display:grid;place-items:center;flex-shrink:0;font-size:16px}.lp-problem-card-title{font-size:14px;font-weight:600;color:var(--fg);margin-bottom:4px;letter-spacing:-.2px}.lp-problem-card-body{font-size:13px;line-height:1.55;color:var(--fg-2)}.lp-comparison-section{padding:100px 0;background:var(--bg-1);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lp-comparison-header{text-align:center;max-width:680px;margin:0 auto 56px}.lp-comparison-table-wrap{overflow-x:auto;border-radius:var(--r-lg);border:1px solid var(--line-strong)}.lp-comparison-table{width:100%;border-collapse:collapse;min-width:700px}.lp-comparison-table th{padding:16px 20px;font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;font-weight:500;color:var(--fg-2);text-align:left;background:var(--bg-2);border-bottom:1px solid var(--line)}.lp-comparison-table th.hl{color:var(--accent);background:#c7ff4a0f}.lp-comparison-table td{padding:15px 20px;font-size:13.5px;color:var(--fg-1);border-bottom:1px solid var(--line);line-height:1.45;vertical-align:top}.lp-comparison-table tr:last-child td{border-bottom:0}.lp-comparison-table td.row-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);font-weight:600}.lp-comparison-table td.hl{background:#c7ff4a0a;color:var(--fg);font-weight:500}.lp-comparison-table tbody tr{transition:background .18s}.lp-comparison-table tbody tr:hover td{background:#ffffff06}.lp-comparison-table tbody tr:hover td.hl{background:#c7ff4a12}.lp-check{color:var(--accent);font-size:15px}.lp-dash{color:var(--fg-3)}.lp-features-section{padding:120px 0}.lp-features-header{max-width:600px;margin-bottom:64px}.lp-features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.lp-feature-card{padding:40px 36px;background:var(--bg-1);transition:background .2s,box-shadow .25s}.lp-feature-card:hover{background:var(--bg-2);box-shadow:inset 0 0 0 1px var(--accent-line)}.lp-feature-num{font-family:var(--font-display);font-style:italic;font-size:44px;color:var(--accent);line-height:1;letter-spacing:-2px;margin-bottom:20px;opacity:.7}.lp-feature-title{font-size:20px;font-weight:600;color:var(--fg);letter-spacing:-.4px;margin-bottom:12px}.lp-feature-body{font-size:14px;line-height:1.65;color:var(--fg-2);margin-bottom:24px}.lp-feature-pills{display:flex;flex-wrap:wrap;gap:8px}.lp-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;background:var(--bg-3);border:1px solid var(--line);border-radius:var(--r-pill);font-size:12px;color:var(--fg-2);font-family:var(--font-mono);letter-spacing:.02em}.lp-privacy-section{padding:100px 0;background:var(--bg-1);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lp-privacy-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.lp-privacy-rule{padding:32px;border:1px solid var(--accent-line);border-radius:var(--r-lg);background:var(--accent-soft);margin-bottom:28px}.lp-privacy-rule-headline{font-family:var(--font-display);font-size:28px;font-weight:400;letter-spacing:-1px;color:var(--fg);margin-bottom:8px}.lp-privacy-rule-headline em{font-style:italic;color:var(--accent)}.lp-privacy-rule-body{font-size:14px;line-height:1.6;color:var(--fg-2)}.lp-privacy-diagram{aspect-ratio:4/3;border-radius:var(--r-lg);background:var(--bg-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.lp-privacy-diagram:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(-45deg,transparent,transparent 6px,rgba(255,255,255,.018) 6px,rgba(255,255,255,.018) 7px)}.lp-privacy-diagram-label{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);text-transform:uppercase;letter-spacing:.1em;text-align:center;line-height:1.8;position:relative;z-index:1}.lp-privacy-steps{display:flex;flex-direction:column;gap:16px}.lp-privacy-step{display:flex;gap:16px;align-items:flex-start}.lp-privacy-step-num{width:28px;height:28px;border-radius:50%;background:var(--bg-3);border:1px solid var(--line);display:grid;place-items:center;font-family:var(--font-mono);font-size:11px;color:var(--fg-2);flex-shrink:0;transition:background .2s,color .2s,border-color .2s}.lp-privacy-step:hover .lp-privacy-step-num{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.lp-privacy-step-title{font-size:14px;font-weight:600;color:var(--fg);margin-bottom:3px;letter-spacing:-.2px}.lp-privacy-step-body{font-size:13px;line-height:1.55;color:var(--fg-2)}.lp-who-section{padding:120px 0}.lp-who-header{text-align:center;max-width:560px;margin:0 auto 56px}.lp-who-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.lp-who-card{padding:32px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-lg)}.lp-who-tag{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:12px}.lp-who-title{font-size:17px;font-weight:600;color:var(--fg);letter-spacing:-.3px;margin-bottom:10px}.lp-who-body{font-size:14px;line-height:1.6;color:var(--fg-2)}.lp-pricing-section{padding:120px 0;background:var(--bg-1);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lp-pricing-header{text-align:center;max-width:560px;margin:0 auto 56px}.lp-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start}.lp-pricing-card{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.lp-pricing-card.featured{border-color:var(--accent-line);background:var(--bg-1);position:relative}.lp-pricing-card-head{padding:28px 28px 24px;border-bottom:1px solid var(--line)}.lp-pricing-tier{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--fg-3);margin-bottom:10px}.lp-pricing-card.featured .lp-pricing-tier{color:var(--accent)}.lp-pricing-price{font-family:var(--font-display);font-size:44px;font-weight:400;letter-spacing:-2px;color:var(--fg);line-height:1;margin-bottom:4px}.lp-pricing-price sup{font-size:20px;letter-spacing:0;vertical-align:super;font-family:var(--font-sans);font-weight:500}.lp-pricing-price-note{font-size:13px;color:var(--fg-2);margin-top:6px;line-height:1.4}.lp-pricing-card-body{padding:24px 28px 28px}.lp-pricing-features{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.lp-pricing-features li{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--fg-1);line-height:1.4}.lp-pricing-features li:before{content:"✓";color:var(--accent);font-size:13px;flex-shrink:0;margin-top:1px}.lp-pricing-badge{display:inline-block;padding:3px 10px;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--r-pill);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:16px}.lp-faq-section{padding:120px 0}.lp-faq-layout{display:grid;grid-template-columns:300px 1fr;gap:80px}.lp-faq-list{display:flex;flex-direction:column}.lp-faq-item{border-bottom:1px solid var(--line)}.lp-faq-q{width:100%;background:none;border:none;text-align:left;padding:20px 0;font-size:15px;font-weight:500;color:var(--fg);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;font-family:var(--font-sans);letter-spacing:-.2px;transition:color .15s}.lp-faq-q:hover{color:var(--accent)}.lp-faq-chevron{width:20px;height:20px;flex-shrink:0;transition:transform .25s;color:var(--fg-3)}.lp-faq-item.open .lp-faq-chevron{transform:rotate(180deg)}.lp-faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}.lp-faq-item.open .lp-faq-a{grid-template-rows:1fr}.lp-faq-a-inner{overflow:hidden;min-height:0;font-size:14px;line-height:1.7;color:var(--fg-2);padding-bottom:20px;transition:padding-bottom .3s ease}.lp-faq-item:not(.open) .lp-faq-a-inner{padding-bottom:0}.lp-footer-cta{padding:120px 0;text-align:center;background:var(--bg);position:relative;overflow:hidden}.lp-footer-cta-glow{position:absolute;bottom:-100px;left:50%;transform:translate(-50%);width:800px;height:600px;background:radial-gradient(ellipse at 50% 60%,rgba(199,255,74,.07) 0%,transparent 65%);pointer-events:none;animation:lpGlowPulse 10s 2s ease-in-out infinite}.lp-footer-headline{font-family:var(--font-display);font-size:clamp(40px,6vw,72px);font-weight:400;letter-spacing:-2.5px;line-height:1;color:var(--fg);max-width:800px;margin:0 auto 20px}.lp-footer-headline em{font-style:italic;background:linear-gradient(90deg,#c7ff4a,#ef9 45%,#c7ff4a);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:lpShimmer 4s 1.5s ease-in-out infinite}.lp-footer-sub{font-size:16px;color:var(--fg-2);margin-bottom:44px;line-height:1.6}.lp-site-footer{border-top:1px solid var(--line);padding:36px 0;background:var(--bg-1)}.lp-footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.lp-footer-brand{display:flex;align-items:center;gap:10px}.lp-footer-wordmark{font-family:var(--font-display);font-size:18px;letter-spacing:-.6px;color:var(--fg);font-weight:400}.lp-footer-wordmark span{color:var(--accent)}.lp-footer-note{font-size:13px;color:var(--fg-3)}.lp-footer-links{display:flex;gap:28px}.lp-footer-links a{font-size:13px;color:var(--fg-3);text-decoration:none;transition:color .15s}.lp-footer-links a:hover{color:var(--fg-2)}.lp-reveal{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.lp-reveal.lp-in-view{opacity:1;transform:translateY(0)}.lp-stagger>*{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}.lp-stagger.lp-in-view>*:nth-child(1){opacity:1;transform:none;transition-delay:.05s}.lp-stagger.lp-in-view>*:nth-child(2){opacity:1;transform:none;transition-delay:.12s}.lp-stagger.lp-in-view>*:nth-child(3){opacity:1;transform:none;transition-delay:.19s}.lp-stagger.lp-in-view>*:nth-child(4){opacity:1;transform:none;transition-delay:.26s}.lp-stagger.lp-in-view>*:nth-child(5){opacity:1;transform:none;transition-delay:.33s}.lp-stagger.lp-in-view>*:nth-child(6){opacity:1;transform:none;transition-delay:.4s}@keyframes lpNavSlide{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes lpFadeUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes lpFloat1{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes lpFloat2{0%,to{transform:translateY(-20px)}50%{transform:translateY(-32px)}}@keyframes lpFloat3{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes lpGlowPulse{0%,to{opacity:1;transform:translate(-50%) scale(1)}50%{opacity:.6;transform:translate(-50%) scale(1.12)}}@keyframes lpShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes lpDotPop{0%,80%,to{transform:scale(1);opacity:1}40%{transform:scale(1.5);opacity:.8;box-shadow:0 0 8px var(--lp-accent-pulse)}}.lp-hero-left{display:flex;flex-direction:column;align-items:flex-start}.lp-hero-left .lp-hero-sub{margin:0 0 44px;text-align:left}.lp-hero-left .lp-hero-ctas{justify-content:flex-start}.lp-hero-left .lp-hero-note{text-align:left;margin-bottom:0}.lp-live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;box-shadow:0 0 8px var(--accent);animation:lpLivePulse 1.4s ease-in-out infinite}.lp-inline-code{font-family:var(--font-mono);font-size:.875em;background:var(--accent-soft);color:var(--accent);padding:1px 6px;border-radius:5px;border:1px solid var(--accent-line)}.lp-btn-login{display:inline-flex;align-items:center;background:transparent;color:var(--fg-1);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:8px 16px;font-size:13.5px;font-weight:500;font-family:var(--font-sans);cursor:pointer;letter-spacing:-.1px;text-decoration:none;transition:border-color .2s,color .2s;white-space:nowrap}.lp-btn-login:hover{border-color:var(--accent-line);color:var(--fg)}.lp-btn-login-full{width:100%;justify-content:center;font-size:15px;padding:13px 20px}.lp-hero-right{position:relative;display:flex;justify-content:center;align-items:center;height:600px;animation:lpFadeUp 1s .45s cubic-bezier(.16,1,.3,1) both}.lp-hero-orbits{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.lp-hero-orbit{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;animation:lpOrbitSpin 30s linear infinite}.lp-o1{width:480px;height:480px;border:1px solid var(--line);opacity:.5;animation-duration:40s}.lp-o2{width:580px;height:580px;border:1px solid var(--line);opacity:.3;animation-duration:60s;animation-direction:reverse}.lp-o3{width:700px;height:700px;border:1px solid var(--line);opacity:.15;animation-duration:80s}.lp-float-tag{position:absolute;display:inline-flex;align-items:center;gap:3px;padding:5px 12px;background:var(--bg-2);border:1px solid var(--line-strong);border-radius:var(--r-pill);font-family:var(--font-mono);font-size:12px;color:var(--fg-2);pointer-events:none;white-space:nowrap;box-shadow:0 4px 16px #0000004d}.lp-float-tag.shared{border-color:var(--accent-line);color:var(--accent);background:var(--accent-soft)}.lp-hash{color:var(--accent)}.lp-ft1{top:50px;left:-10px;animation:lpTagFloat 5s ease-in-out infinite}.lp-ft2{top:180px;right:-20px;animation:lpTagFloat 5s 1.5s ease-in-out infinite}.lp-ft3{bottom:130px;left:-40px;animation:lpTagFloat 5s .8s ease-in-out infinite}.lp-ft4{bottom:50px;right:-10px;animation:lpTagFloat 5s 2.2s ease-in-out infinite}.lp-hero-phone{position:relative;z-index:2;width:320px;height:600px;border-radius:44px;background:var(--bg-1);border:1px solid var(--line-strong);box-shadow:0 40px 80px #00000080,0 0 0 8px #00000040,inset 0 0 0 1px #ffffff0f;padding:14px;animation:lpPhoneFloat 6s ease-in-out infinite}.lp-hero-phone-screen{width:100%;height:100%;background:var(--bg);border-radius:32px;overflow:hidden;position:relative;display:flex;flex-direction:column}.lp-phone-notch{position:absolute;top:8px;left:50%;transform:translate(-50%);width:100px;height:26px;border-radius:14px;background:var(--notch);z-index:5;flex-shrink:0}.lp-phone-statusbar{display:flex;justify-content:space-between;align-items:center;padding:10px 20px 4px;font-size:10.5px;font-weight:600;color:var(--fg);flex-shrink:0}.lp-phone-icons{display:flex;align-items:center;gap:5px}.lp-phone-header{padding:4px 20px 12px;flex-shrink:0}.lp-phone-greeting{font-family:var(--font-mono);font-size:9.5px;color:var(--fg-3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px}.lp-phone-balance{font-family:var(--font-display);font-size:34px;font-weight:400;letter-spacing:-1.5px;color:var(--fg);line-height:1;margin-bottom:5px}.lp-currency{font-size:18px;vertical-align:super;font-family:var(--font-sans)}.lp-phone-pace{font-family:var(--font-mono);font-size:10px;color:var(--accent);letter-spacing:.02em}.lp-phone-tabs{display:flex;gap:4px;padding:6px 10px;flex-shrink:0;background:var(--bg-1);border-bottom:1px solid var(--line)}.lp-phone-tab{font-size:11px;font-weight:500;color:var(--fg-3);padding:5px 10px;cursor:default;white-space:nowrap;border-radius:var(--r-pill)}.lp-phone-tab.active{background:var(--accent);color:var(--accent-ink);font-weight:600}.lp-phone-list{flex:1;overflow:hidden;padding:8px;display:flex;flex-direction:column;gap:6px}.lp-tx-row{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;padding:10px;flex-shrink:0;background:var(--bg-1);border:1px solid var(--line);border-radius:12px}.lp-tx-row.shared{border-color:var(--accent-line);background:linear-gradient(90deg,var(--accent-soft) 0%,var(--bg-1) 80%)}.lp-tx-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-size:14px;flex-shrink:0}.lp-tx-name{font-size:12px;font-weight:500;color:var(--fg);letter-spacing:-.2px;line-height:1.3}.lp-tx-tag{font-family:var(--font-mono);font-size:10px;color:var(--fg-3);letter-spacing:.02em}.lp-tx-tag.shared{color:var(--accent);opacity:.8}.lp-tx-amt{margin-left:auto;font-family:var(--font-mono);font-size:11.5px;font-weight:600;color:var(--fg);white-space:nowrap}.lp-tx-amt.income{color:var(--accent)}.lp-tx-toast{position:absolute;top:100px;left:50%;width:88%;transform:translate(-50%,-50%) scale(.9);background:var(--bg-2);border:1px solid var(--accent-line);border-radius:14px;padding:12px 14px;z-index:10;opacity:0;box-shadow:0 20px 50px #0006,0 0 0 1px var(--accent-soft)}.lp-toast-show{animation:lpToastShow 2.4s ease-in-out forwards}.lp-toast-eyebrow{font-family:var(--font-mono);font-size:9px;color:var(--accent);letter-spacing:.07em;text-transform:uppercase;margin-bottom:4px}.lp-toast-name{font-size:12px;font-weight:600;color:var(--fg);letter-spacing:-.2px}.lp-toast-amt{font-family:var(--font-mono);font-size:11px;color:var(--fg-2);margin-top:2px}.lp-sharing-section{padding:120px 0;position:relative;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lp-sharing-bg{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 15% 50%,rgba(199,255,74,.08) 0%,transparent 55%),radial-gradient(ellipse at 85% 50%,rgba(123,168,255,.06) 0%,transparent 55%);pointer-events:none}.lp-sharing-header{text-align:center;max-width:680px;margin:0 auto 56px}.lp-sharing-stage{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;margin-bottom:40px}.lp-ledger-pane{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;min-height:360px}.lp-ledger-head{padding:16px 20px;border-bottom:1px solid var(--line);background:var(--bg-2)}.lp-ledger-head-inner{display:flex;align-items:center;gap:12px}.lp-ledger-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:14px;font-weight:700;flex-shrink:0}.lp-ledger-avatar.you{background:var(--accent);color:var(--accent-ink)}.lp-ledger-avatar.partner{background:#7ba8ff24;border:1px solid rgba(123,168,255,.3);color:#7ba8ff}.lp-ledger-name{font-size:13.5px;font-weight:600;color:var(--fg);letter-spacing:-.2px}.lp-ledger-tag-label{font-family:var(--font-mono);font-size:10.5px;color:var(--fg-3);letter-spacing:.04em;margin-top:2px}.lp-ledger-list{padding:6px 0}.lp-ledger-tx{display:flex;align-items:center;gap:10px;padding:10px 20px;transition:background .25s,border-left-color .25s;border-left:2px solid transparent}.lp-ledger-tx.tagged{background:var(--accent-soft);border-left-color:var(--accent-line)}.lp-ledger-tx.split{background:var(--accent-soft);border-left-style:dashed}.lp-ledger-tx-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-size:14px;flex-shrink:0}.lp-ledger-tx-name{font-size:12.5px;font-weight:500;color:var(--fg);letter-spacing:-.2px;line-height:1.3}.lp-ledger-tx-tag{font-family:var(--font-mono);font-size:10.5px;color:var(--fg-3);letter-spacing:.02em}.lp-ledger-tx-tag.shared{color:var(--accent);opacity:.85}.lp-ledger-tx-amt{margin-left:auto;font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--fg);white-space:nowrap;text-align:right}.lp-ledger-tx-amt.split-half{display:block;font-size:11.5px}.lp-ledger-tx-amt.split-half.strike{font-size:10px;color:var(--fg-3);text-decoration:line-through}.lp-ledger-empty{padding:40px 20px;text-align:center;font-size:13px;color:var(--fg-3);line-height:1.6}.lp-ledger-bridge{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 20px;gap:8px;min-height:360px}.lp-bridge-label{font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.12em;padding:4px 10px;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--r-pill);color:var(--accent);white-space:nowrap}.lp-bridge-pipe{width:6px;height:80px;background:var(--line);border-radius:3px;position:relative;overflow:hidden}.lp-bridge-flow{position:absolute;top:-40%;left:0;right:0;height:40%;background:linear-gradient(180deg,transparent 0%,var(--accent) 50%,transparent 100%);animation:lpFlowDown 2.4s ease-in-out infinite}.lp-bridge-icon{font-size:16px;color:var(--accent)}.lp-tag-rules{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px 28px 28px}.lp-tag-rules-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.lp-tag-rules-title{font-size:15px;font-weight:600;color:var(--fg);letter-spacing:-.2px;margin-bottom:4px}.lp-tag-rules-sub{font-size:13px;color:var(--fg-2);line-height:1.5}.lp-tag-rules-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.lp-tag-rule{display:flex;flex-direction:column;gap:6px;padding:14px 16px;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r);cursor:pointer;text-align:left;transition:background .2s,border-color .2s;font-family:var(--font-sans)}.lp-tag-rule:hover{border-color:var(--line-strong)}.lp-tag-rule.shared{background:var(--accent-soft);border-color:var(--accent-line)}.lp-tag-rule-name{font-family:var(--font-mono);font-size:12.5px;font-weight:600;color:var(--fg-2)}.lp-tag-rule.shared .lp-tag-rule-name{color:var(--accent)}.lp-tag-rule-state{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--fg-3)}.lp-tag-rule.shared .lp-tag-rule-state{color:var(--fg-2)}.lp-toggle-dot{width:8px;height:8px;border-radius:50%;background:var(--fg-3);flex-shrink:0;transition:background .2s}.lp-tag-rule.shared .lp-toggle-dot{background:var(--accent)}.lp-theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:transparent;border:1px solid var(--line-strong);border-radius:var(--r-pill);cursor:pointer;color:var(--fg-2);transition:color .2s,border-color .2s,background .2s;flex-shrink:0}.lp-theme-toggle:hover{color:var(--fg);border-color:var(--accent-line);background:var(--accent-soft)}[data-theme=light] .landing-page{--bg: #F5F1E8;--bg-1: #FBF8F1;--bg-2: #EFEADC;--bg-3: #E6DFCC;--line: rgba(20,18,14,.08);--line-strong: rgba(20,18,14,.16);--fg: #14120E;--fg-1: rgba(20,18,14,.78);--fg-2: rgba(20,18,14,.56);--fg-3: rgba(20,18,14,.36);--accent: #3D6B00;--accent-ink: #FBF8F1;--accent-soft: rgba(61,107,0,.1);--accent-line: rgba(61,107,0,.32);--warn: #C93A1E;--warn-soft: rgba(201,58,30,.1);--lp-bg: #F5F1E8;--lp-bg-1: #FBF8F1;--lp-bg-2: #EFEADC;--lp-bg-3: #E6DFCC;--lp-fg: #14120E;--lp-fg-1: rgba(20,18,14,.78);--lp-fg-2: rgba(20,18,14,.56);--lp-fg-3: rgba(20,18,14,.36);--lp-accent: #3D6B00;--lp-accent-ink: #FBF8F1;--lp-accent-soft: rgba(61,107,0,.1);--lp-accent-line: rgba(61,107,0,.32);--lp-line: rgba(20,18,14,.08);--lp-line-strong: rgba(20,18,14,.16);--lp-warn: #C93A1E;--lp-warn-soft: rgba(201,58,30,.1);--lp-accent-pulse: rgba(61,107,0,.45);--notch: #e0d9cc;--lp-notch: #e0d9cc}[data-theme=light] .lp-nav{background:#f5f1e8d9;border-bottom-color:#14120e14}[data-theme=light] .lp-mobile-menu{background:#f5f1e8f7;border-top-color:#14120e14}[data-theme=light] .lp-hero-glow{background:radial-gradient(ellipse at 50% 30%,rgba(61,107,0,.07) 0%,transparent 65%)}[data-theme=light] .lp-footer-cta-glow{background:radial-gradient(ellipse at 50% 60%,rgba(61,107,0,.05) 0%,transparent 65%)}[data-theme=light] .lp-sharing-bg{background:radial-gradient(ellipse at 15% 50%,rgba(61,107,0,.06) 0%,transparent 55%),radial-gradient(ellipse at 85% 50%,rgba(61,107,0,.04) 0%,transparent 55%)}[data-theme=light] .lp-float-tag{background:#fbf8f1;border-color:#14120e24;box-shadow:0 4px 16px #14120e14}[data-theme=light] .lp-float-tag.shared{background:#3d6b0014;border-color:#3d6b004d}[data-theme=light] .lp-hero-phone{box-shadow:0 40px 80px #14120e1f,0 0 0 8px #14120e0f,inset 0 0 0 1px #14120e14}[data-theme=light] .lp-comparison-table tbody tr:hover td{background:#14120e06}[data-theme=light] .lp-comparison-table th.hl{background:#3d6b0012}[data-theme=light] .lp-comparison-table td.hl{background:#3d6b000a}[data-theme=light] .lp-comparison-table tbody tr:hover td.hl{background:#3d6b0014}[data-theme=light] .lp-phone:before,[data-theme=light] .lp-privacy-diagram:before{background:repeating-linear-gradient(-45deg,transparent,transparent 6px,rgba(20,18,14,.025) 6px,rgba(20,18,14,.025) 7px)}[data-theme=light] .lp-btn-ios:hover{box-shadow:0 6px 28px #3d6b0047}[data-theme=light] .lp-hero-headline em,[data-theme=light] .lp-footer-headline em{background:linear-gradient(90deg,#3d6b00,#618f10 45%,#3d6b00);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes lpLivePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}@keyframes lpPhoneFloat{0%,to{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-12px) rotate(-.5deg)}}@keyframes lpOrbitSpin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes lpTagFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes lpToastShow{0%{opacity:0;transform:translate(-50%,-50%) scale(.85)}15%{opacity:1;transform:translate(-50%,-50%) scale(1)}85%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-56%) scale(.95)}}@keyframes lpFlowDown{0%{top:-40%;opacity:0}20%{opacity:1}80%{opacity:1}to{top:130%;opacity:0}}@media (max-width: 860px){.lp-nav{padding:0 20px}.lp-nav-links{display:none}.lp-nav-mobile-toggle,.lp-mobile-menu{display:flex}.lp-container{padding:0 24px}.lp-problem-grid,.lp-privacy-layout,.lp-who-grid,.lp-faq-layout{grid-template-columns:1fr;gap:40px}.lp-pricing-grid{grid-template-columns:1fr;max-width:480px;margin:0 auto}.lp-features-grid{grid-template-columns:1fr}.lp-hero{grid-template-columns:1fr;padding:100px 40px 64px;max-width:680px}.lp-phone.center{transform:none}.lp-hero-screens{gap:10px}.lp-hero-right{height:560px}.lp-hero-phone{transform:scale(.92);transform-origin:center top}.lp-o3{display:none}.lp-sharing-stage{grid-template-columns:1fr}.lp-ledger-bridge{min-height:auto;padding:12px 0;flex-direction:row;gap:16px}.lp-bridge-pipe{width:80px;height:2px}.lp-bridge-flow{width:40%;height:100%;top:0;animation:none}.lp-bridge-icon{transform:rotate(-90deg)}.lp-tag-rules-grid{grid-template-columns:repeat(2,1fr)}.lp-tag-rules-head{flex-direction:column;gap:8px}}@media (max-width: 480px){.lp-nav{padding:0 16px}.lp-nav-mobile-toggle,.lp-mobile-menu{display:flex}.lp-nav-cta{display:none}.lp-container{padding:0 16px}.lp-hero{padding:88px 16px 48px;max-width:100%}.lp-hero-eyebrow{text-align:left}.lp-hero-headline{letter-spacing:-2px}.lp-hero-sub{text-align:left;margin:0 0 36px}.lp-hero-ctas{justify-content:flex-start;flex-direction:column;align-items:stretch}.lp-hero-note{text-align:left}.lp-btn-store{justify-content:center}.lp-hero-screens{margin-top:40px}.lp-phone:nth-child(1),.lp-phone:nth-child(3){display:none}.lp-phone.center{max-width:100%;transform:none!important;animation:lpFloat2 7s .5s ease-in-out infinite!important;aspect-ratio:9/18;border-radius:28px}.lp-hero-right{height:auto;padding-top:40px}.lp-hero-orbits,.lp-float-tag{display:none}.lp-hero-phone{width:280px;height:480px;border-radius:38px;transform:none}.lp-sharing-section{padding:72px 0}.lp-sharing-header{margin-bottom:40px}.lp-tag-rules{padding:18px 16px 20px}.lp-ledger-pane{min-height:auto}.lp-tag-rules-grid{grid-template-columns:repeat(2,1fr);gap:8px}.lp-tag-rule{padding:12px 14px}.lp-trust-inner{gap:16px 28px;justify-content:flex-start}.lp-trust-item{font-size:12px}.lp-problem-section,.lp-features-section,.lp-who-section,.lp-faq-section,.lp-footer-cta,.lp-comparison-section,.lp-privacy-section,.lp-pricing-section{padding:72px 0}.lp-section-heading{letter-spacing:-1.5px}.lp-problem-grid{margin-top:40px;gap:32px}.lp-problem-cards{gap:10px}.lp-problem-card{padding:16px 18px}.lp-comparison-table-wrap{border-radius:var(--r);overflow-x:auto;-webkit-overflow-scrolling:touch}.lp-comparison-table{min-width:680px}.lp-feature-card{padding:28px 22px}.lp-feature-num{font-size:36px;margin-bottom:14px}.lp-privacy-rule{padding:22px 20px}.lp-privacy-rule-headline{font-size:22px}.lp-privacy-steps{gap:20px}.lp-who-grid{grid-template-columns:1fr;gap:12px}.lp-who-card{padding:24px 20px}.lp-pricing-grid{max-width:100%}.lp-pricing-card-head{padding:22px 22px 18px}.lp-pricing-card-body{padding:18px 22px 22px}.lp-pricing-price{font-size:36px}.lp-pricing-card.featured{order:-1}.lp-faq-layout{gap:32px}.lp-faq-q{font-size:14px}.lp-footer-headline{letter-spacing:-2px}.lp-footer-inner{flex-direction:column;align-items:flex-start;gap:20px}.lp-footer-links{flex-wrap:wrap;gap:16px 24px}}.brand-logo-container{display:flex;align-items:center;gap:12px}.brand-logo-icon{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#c7ff4a;border-radius:9px;flex-shrink:0}.brand-logo-text{display:flex;flex-direction:row;align-items:baseline;margin:0;font-family:var(--font-body);font-size:24px;line-height:1;letter-spacing:-.025em;color:#fff}.brand-text-track{font-weight:400;color:#fff}.brand-text-it{font-weight:800;color:var(--accent-strong)}.mobile-dashboard{display:none;min-height:100vh;min-height:100dvh;background:var(--bg);padding:calc(var(--safe-top, 0px) + 12px) 16px calc(100px + var(--safe-bottom, 0px));flex-direction:column;gap:24px;overflow-x:hidden}@media (max-width: 1024px){.mobile-dashboard{display:flex!important}}.mobile-home{display:flex;flex-direction:column;gap:20px;flex:1}.mobile-section{display:flex;flex-direction:column;gap:12px}.mobile-section-head{display:flex;justify-content:space-between;align-items:center;padding:0 2px}.mobile-section-title{margin:0;font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--text);letter-spacing:-.005em}.mobile-section-link{display:inline-flex;align-items:center;gap:2px;background:transparent;border:none;padding:8px 4px;color:var(--text-dim);font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;min-height:32px;-webkit-tap-highlight-color:transparent;transition:color .15s cubic-bezier(.22,1,.36,1)}.mobile-section-link:active{color:var(--accent-strong)}.mobile-section-link .material-symbols-outlined{font-size:14px;margin-top:1px}.mobile-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;background:var(--panel);border:1px dashed var(--border-strong);border-radius:18px;text-align:center}.mobile-empty-icon{font-size:32px;color:var(--text-whisper)}.mobile-empty-title{margin:0;font-size:15px;font-weight:600;color:var(--text-2)}.mobile-empty-sub{margin:0;font-size:13px;color:var(--text-faint);line-height:1.4}.mobile-header{display:flex;justify-content:space-between;align-items:center;padding:4px 0 8px}.mobile-header-left{display:flex;align-items:center;gap:12px}.mobile-user-name{margin:0;font-size:18px;font-weight:700;color:var(--text)}.mobile-user-plan{margin:0;font-size:11px;color:var(--primary);letter-spacing:.12em;text-transform:uppercase}.mobile-header-right{display:flex;align-items:center;gap:12px}.mobile-icon-btn{width:44px;height:44px;border-radius:999px;background:#1e293b99;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;color:#94a3b8;-webkit-tap-highlight-color:transparent;transition:transform .15s ease,background .15s ease}.mobile-icon-btn:active{transform:scale(.94);background:#1e293be6}.mobile-icon-btn .material-symbols-outlined{font-size:22px}.mobile-avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;border:2px solid rgba(var(--primary-rgb),.4);padding:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-avatar-btn{display:inline-flex;align-items:center;justify-content:center;transition:transform .15s ease}.mobile-avatar-btn:active{transform:scale(.94)}.mobile-avatar img{width:100%;height:100%;object-fit:cover}.mobile-summary-card{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:20px 20px 18px;box-shadow:none;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:14px}.mobile-summary-greeting{margin:0 0 2px;font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--text-dim);letter-spacing:-.005em}.mobile-summary-cta{margin-top:4px;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 14px;border-radius:8px;border:1px solid var(--accent-border);background:transparent;color:var(--accent-strong);font-family:var(--font-mono);font-size:11.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1)}.mobile-summary-cta:active{transform:scale(.98);border-color:var(--accent-border-strong);color:var(--accent-active)}.mobile-summary-cta .material-symbols-outlined{font-size:16px}.mobile-summary-card:before{content:none}.mobile-summary-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2px}.mobile-summary-label{margin:0;font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint);letter-spacing:.14em;text-transform:uppercase;font-weight:600}.mobile-sync-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:20px;background:rgba(var(--primary-rgb),.15);border:1px solid rgba(var(--primary-rgb),.3);color:var(--primary);font-size:11px;font-weight:600;letter-spacing:.05em;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.mobile-sync-btn:hover{background:rgba(var(--primary-rgb),.25)}.mobile-summary-amount{margin:0;font-family:var(--font-mono);font-size:clamp(30px,9vw,40px);font-weight:500;color:var(--text);letter-spacing:-.025em;font-variant-numeric:tabular-nums}.mobile-summary-change{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.mobile-change-badge{display:inline-flex;align-items:center;gap:3px;padding:0;border-radius:0;background:transparent;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.02em;font-variant-numeric:tabular-nums}.mobile-change-badge .material-symbols-outlined{font-size:14px}.mobile-change-badge.down{background:transparent;color:var(--income-strong)}.mobile-change-badge.up{background:transparent;color:var(--danger)}.mobile-change-text{font-family:var(--font-mono);font-size:11px;color:var(--text-faint);letter-spacing:.02em}.mobile-summary-icons{display:flex;gap:8px;margin-bottom:16px}.mobile-cat-icon{width:36px;height:36px;border-radius:10px;background:#1e293bcc;display:flex;align-items:center;justify-content:center;font-size:16px}.mobile-details-btn{position:absolute;bottom:24px;right:24px;background:transparent;border:none;color:var(--primary);font-size:12px;font-weight:600;letter-spacing:.08em;cursor:pointer;display:flex;align-items:center;gap:4px}.mobile-details-btn span{font-size:16px}.mobile-categories{display:flex;flex-direction:column;gap:16px}.mobile-section-header{display:flex;justify-content:space-between;align-items:center}.mobile-section-header h2{margin:0;font-size:20px;font-weight:700;color:var(--text)}.mobile-section-date{font-size:12px;color:#64748b;letter-spacing:.05em}.mobile-categories-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mobile-category-card{background:var(--panel);border-radius:20px;padding:18px;border:1px solid var(--border);display:flex;flex-direction:column;gap:12px}.mobile-category-icon{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:20px}.mobile-category-card.teal .mobile-category-icon{background:rgba(var(--primary-rgb),.2)}.mobile-category-card.green .mobile-category-icon{background:#22c55e33}.mobile-category-card.amber .mobile-category-icon{background:#fbbf2433}.mobile-category-card.rose .mobile-category-icon{background:#f43f5e33}.mobile-category-name{margin:0;font-size:10px;color:#64748b;letter-spacing:.1em;text-transform:uppercase}.mobile-category-amount{margin:0;font-size:22px;font-weight:700;color:var(--text)}.mobile-category-bar{height:6px;background:var(--border);border-radius:999px;overflow:hidden}.mobile-category-bar-fill{height:100%;border-radius:999px;transition:width .3s ease}.mobile-category-card.teal .mobile-category-bar-fill{background:var(--primary)}.mobile-category-card.green .mobile-category-bar-fill{background:#22c55e}.mobile-category-card.amber .mobile-category-bar-fill{background:#fbbf24}.mobile-category-card.rose .mobile-category-bar-fill{background:#f43f5e}.mobile-breakdown-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.mobile-breakdown-row{display:flex;flex-direction:column;gap:8px;padding:12px 2px;border-top:1px solid var(--divider)}.mobile-breakdown-row:first-child{border-top:none}.mobile-breakdown-row-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-width:0}.mobile-breakdown-row-name{flex:1;min-width:0;font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--text);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-breakdown-row-amount{flex-shrink:0;font-family:var(--font-mono);font-size:14px;font-weight:500;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.mobile-breakdown-row-bar{height:1.5px;background:var(--divider);overflow:hidden}.mobile-breakdown-row-bar>span{display:block;height:100%;background:var(--accent);transition:width .3s cubic-bezier(.22,1,.36,1)}.mobile-activity{display:flex;flex-direction:column;gap:16px}.mobile-see-all{background:transparent;border:none;color:#64748b;font-size:12px;font-weight:600;letter-spacing:.08em;cursor:pointer}.mobile-activity-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.mobile-activity-list>li{border-top:1px solid var(--divider)}.mobile-activity-list>li:first-child{border-top:none}.mobile-activity-row{width:100%;display:flex;flex-direction:column;gap:4px;padding:12px 2px;background:transparent;border:none;text-align:left;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .15s cubic-bezier(.22,1,.36,1)}.mobile-activity-row:active{opacity:.6}.mobile-activity-row-primary{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-width:0}.mobile-activity-row-merchant{flex:1;min-width:0;font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--text);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-activity-row-amount{flex-shrink:0;font-family:var(--font-mono);font-size:14px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.mobile-activity-row-amount.expense{color:var(--text)}.mobile-activity-row-amount.income{color:var(--income-strong)}.mobile-activity-row-meta{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);font-variant-numeric:tabular-nums}.mobile-activity-row-category{color:var(--text-dim)}.mobile-activity-row-dot{color:var(--text-whisper)}.mobile-activity-row-time{color:var(--text-faint);letter-spacing:.1em}.mobile-activity-row-flag{color:var(--warning)}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;display:none;justify-content:space-around;align-items:center;padding:10px 8px 16px;background:var(--bg);border-top:1px solid var(--border);z-index:500}@media (max-width: 1024px){.mobile-bottom-nav{display:flex}}.mobile-tabbar{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:stretch;padding:6px 4px calc(6px + var(--safe-bottom, 0px));background:var(--bg);border-top:1px solid var(--border);z-index:500;-webkit-tap-highlight-color:transparent}.mobile-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 4px 6px;min-height:52px;background:transparent;border:none;cursor:pointer;color:var(--text-dim);transition:color .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.mobile-tab:active{transform:scale(.92)}.mobile-tab-icon{font-size:26px;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;transition:color .15s ease,font-variation-settings .15s ease}.mobile-tab-label{font-size:10.5px;font-weight:500;letter-spacing:-.01em;line-height:1}.mobile-tab.is-active{color:var(--accent-strong)}.mobile-tab.is-active .mobile-tab-icon{font-variation-settings:"FILL" 1,"wght" 500,"GRAD" 0,"opsz" 24}.mobile-tab.is-active .mobile-tab-label{font-weight:600}@media (min-width: 1025px){.mobile-tabbar{display:none}}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;background:transparent;border:none;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.mobile-nav-icon{font-size:22px;opacity:.5;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.mobile-nav-label{font-size:10px;color:#64748b;letter-spacing:.05em;font-weight:500}.mobile-nav-item.active .mobile-nav-icon{opacity:1}.mobile-nav-item.active .mobile-nav-label{color:var(--primary)}@media (min-width: 1025px){.mobile-dashboard,.mobile-bottom-nav{display:none!important}}.mobile-dashboard *{-webkit-tap-highlight-color:transparent}.mobile-dashboard button:active{transform:scale(.98)}@media (min-width: 769px) and (max-width: 1024px){.mobile-dashboard{padding:24px 32px 100px}.mobile-header{padding:12px 0}.mobile-user-name{font-size:22px}.mobile-summary-card{padding:32px;border-radius:32px}.mobile-summary-amount{font-size:56px}.mobile-categories-grid{grid-template-columns:repeat(4,1fr);gap:16px}.mobile-category-card{padding:20px}.mobile-category-icon{width:52px;height:52px;font-size:24px}.mobile-category-amount{font-size:24px}.mobile-activity-row{padding:16px 4px}.mobile-activity-row-merchant,.mobile-activity-row-amount{font-size:15px}.mobile-history{gap:24px}.mobile-history-title h1{font-size:26px}.mobile-search-input{height:56px}.mobile-filter-btn{width:56px;height:56px}.mobile-history-item{padding:18px 20px}.mobile-history-icon{width:56px;height:56px;font-size:24px}.mobile-history-merchant{font-size:17px}.mobile-bottom-nav{padding:12px 40px 20px;justify-content:space-around}.mobile-nav-item{padding:10px 32px}.mobile-nav-icon{font-size:26px}.mobile-nav-label{font-size:12px}.mobile-fab{width:60px;height:60px;right:32px;bottom:110px}.modal-overlay{align-items:center;padding:24px}.modal-content{max-width:500px;border-radius:24px;max-height:85vh}}@media (min-width: 900px) and (max-width: 1024px){.mobile-categories-grid{grid-template-columns:repeat(4,1fr)}.mobile-history-items{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;background:transparent;border:none}.mobile-history-item{background:var(--panel);border-radius:20px;border:1px solid var(--border)}}.mobile-history{display:flex;flex-direction:column;gap:20px;flex:1}.mobile-history-header{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.mobile-history-title{display:flex;align-items:center;gap:14px}.mobile-history-title h1{margin:0;font-family:var(--font-body);font-size:22px;font-weight:600;color:var(--text);letter-spacing:-.015em}.mobile-history-subtitle{margin:4px 0 0;font-family:var(--font-mono);font-size:10px;color:var(--text-faint);letter-spacing:.14em;text-transform:uppercase;font-weight:600}.mobile-notification-btn{width:40px;height:40px;border-radius:8px;background:var(--panel);border:1px solid var(--border);color:var(--text-dim);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;transition:border-color .15s cubic-bezier(.22,1,.36,1)}.mobile-notification-btn:hover{border-color:var(--border-strong)}.mobile-notification-btn:disabled{cursor:not-allowed;opacity:.6}.mobile-history-search{display:flex;gap:12px;align-items:center}.mobile-search-input{flex:1;display:flex;align-items:center;gap:10px;height:44px;padding:0 14px;background:var(--panel);border-radius:8px;border:1px solid var(--border);transition:border-color .15s cubic-bezier(.22,1,.36,1)}.mobile-search-input:focus-within{border-color:var(--accent-border)}.mobile-search-icon{font-size:18px;color:var(--text-faint)}.mobile-search-clear{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--border);border:none;color:#94a3b8;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}.mobile-search-clear .material-symbols-outlined{font-size:18px}.mobile-search-input input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--font-body);font-size:14px;height:100%}.mobile-search-input input::placeholder{color:var(--text-faint)}.mobile-filter-btn{width:44px;height:44px;border-radius:8px;background:var(--panel);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;color:var(--text-dim);transition:border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1);position:relative}.mobile-filter-btn:hover{border-color:var(--border-strong)}.mobile-filter-btn.active{background:transparent;border-color:var(--accent-border);color:var(--accent-strong)}.mobile-filter-btn .material-symbols-outlined{font-size:20px}.mobile-filter-badge{position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:999px;background:var(--accent-strong);box-shadow:none}.mobile-history-filters{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.mobile-history-filters::-webkit-scrollbar{display:none}.mobile-filter-pill{padding:6px 12px;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--text-dim);font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1)}.mobile-filter-pill.active{background:transparent;color:var(--accent-strong);border-color:#06658e;box-shadow:none}.mobile-history-list{display:flex;flex-direction:column;gap:24px}.mobile-history-group{display:flex;flex-direction:column;gap:12px}.mobile-history-group-header{display:flex;justify-content:space-between;align-items:center;padding:0 4px}.mobile-history-date{font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint);letter-spacing:.14em;font-weight:600;text-transform:uppercase}.mobile-history-total{font-family:var(--font-mono);font-size:12px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.005em}.mobile-history-total.expense{color:var(--text-dim)}.mobile-history-total.income{color:var(--income-strong)}.mobile-history-compile-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:3px;border:1px solid var(--accent-border);background:transparent;color:var(--accent);font-family:var(--font-mono);font-size:9.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1)}.mobile-history-compile-btn:hover{border-color:var(--accent-border-strong);color:#bae5ff;color:oklch(.9 .08 235)}.mobile-history-compile-btn .material-symbols-outlined{font-size:12px}.mobile-history-items{display:flex;flex-direction:column;gap:0;background:var(--panel);border-radius:10px;overflow:hidden;border:1px solid var(--border)}.mobile-history-item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:transparent;border-bottom:1px solid var(--divider);transition:background .15s cubic-bezier(.22,1,.36,1)}.mobile-history-item:last-child{border-bottom:none}.mobile-history-item:active{background:var(--panel-2)}.mobile-history-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent;color:var(--text-dim)}.mobile-history-icon .material-symbols-outlined{font-size:22px;font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24}.mobile-history-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.mobile-history-primary{display:flex;align-items:baseline;gap:7px;min-width:0;overflow:hidden}.mobile-history-merchant{margin:0;font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--text);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:0 1 auto;line-height:1.25}.mobile-history-primary-dot{color:var(--text-faint);font-size:14px;font-weight:500;flex-shrink:0}.mobile-history-category{font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#bdc6cb;cursor:pointer;white-space:nowrap;flex-shrink:0}.mobile-history-meta{margin:0;font-family:var(--font-mono);font-size:10px;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:5px;flex-wrap:nowrap;white-space:nowrap;line-height:1.4;overflow:hidden;text-overflow:ellipsis}.mobile-history-meta-dot{color:#2d3438;flex-shrink:0}.mobile-history-date,.mobile-history-time{color:var(--text-faint);letter-spacing:.02em;font-weight:400;flex-shrink:0}.mobile-history-category{flex-shrink:0}.mobile-history-right{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0;padding-left:8px;min-width:84px}.mobile-history-amount{margin:0;font-family:var(--font-mono);font-size:14px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap;line-height:1.25;color:var(--text)}.mobile-history-amount.expense{color:var(--text)}.mobile-history-amount.income{color:var(--income-strong)}.mobile-history-tag{display:none}.mobile-fab{position:fixed;bottom:calc(88px + var(--safe-bottom, 0px));right:18px;width:52px;height:52px;border-radius:10px;background:var(--accent-strong);border:none;box-shadow:0 8px 18px #54c4ff47;box-shadow:0 8px 18px oklch(.78 .15 235 / .28);display:none;align-items:center;justify-content:center;color:#040d12;cursor:pointer;transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s cubic-bezier(.22,1,.36,1);z-index:600;padding:0;-webkit-tap-highlight-color:transparent}.mobile-fab .material-symbols-outlined{font-size:28px;font-variation-settings:"FILL" 0,"wght" 600,"GRAD" 0,"opsz" 24}@media (max-width: 1024px){.mobile-fab{display:flex}}.mobile-fab:hover{transform:translateY(-1px);box-shadow:0 12px 24px #54c4ff59;box-shadow:0 12px 24px oklch(.78 .15 235 / .35)}.mobile-fab:active{transform:scale(.96)}.mobile-back-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:8px;background:var(--panel);border:1px solid var(--border);color:#b0b9be;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .15s cubic-bezier(.22,1,.36,1)}.mobile-back-btn:active{border-color:var(--accent-border);color:#cceafc}.mobile-back-btn .material-symbols-outlined{font-size:18px}.mobile-category-controls{padding:0 2px}.mobile-category-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:32px 0;color:var(--text-dim);font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.mobile-category-loading .material-symbols-outlined{font-size:16px;animation:spin 1s linear infinite}.mobile-category-wrap{display:flex;flex-direction:column;gap:16px}.mobile-category-summary{display:grid;grid-template-columns:1fr auto;gap:24px;padding:10px 4px 12px;border-bottom:1px solid var(--divider)}.mobile-category-summary>div{display:flex;flex-direction:column;gap:4px;min-width:0}.mobile-category-summary>div:last-child{align-items:flex-end;text-align:right}.mobile-category-summary-label{font-family:var(--font-mono);font-size:9.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint)}.mobile-category-summary-value{font-family:var(--font-mono);font-size:18px;font-weight:500;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.mobile-category-list{display:flex;flex-direction:column;background:var(--panel);border-radius:10px;overflow:hidden;border:1px solid var(--border)}.mobile-category-row{display:grid;grid-template-columns:22px 24px 1fr;align-items:center;gap:12px;width:100%;padding:14px;background:transparent;border:none;border-bottom:1px solid var(--divider);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s cubic-bezier(.22,1,.36,1)}.mobile-category-row:last-child{border-bottom:none}.mobile-category-row:active{background:var(--panel-2)}.mobile-category-row-rank{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--text-whisper);font-variant-numeric:tabular-nums}.mobile-category-row-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--text-dim)}.mobile-category-row-icon .material-symbols-outlined{font-size:20px;font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24}.mobile-category-row-body{display:flex;flex-direction:column;gap:6px;min-width:0}.mobile-category-row-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-width:0}.mobile-category-row-name{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--text);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.mobile-category-row-amount{font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--text-2);font-variant-numeric:tabular-nums;letter-spacing:-.005em;flex-shrink:0}.mobile-category-row-bar{height:1.5px;background:#1a2024;overflow:hidden}.mobile-category-row-bar>span{display:block;height:100%;background:var(--accent);transition:width .3s cubic-bezier(.22,1,.36,1)}.mobile-category-row-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.mobile-category-row-meta .material-symbols-outlined{font-size:14px;color:var(--text-whisper)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:flex-end;justify-content:center;z-index:1000;padding:0;animation:fadeIn .2s ease;overflow:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{width:100%;max-width:100%;max-height:85vh;background:#080e11;border-radius:14px 14px 0 0;border:1px solid var(--border);border-bottom:none;overflow:hidden;animation:slideUp .3s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column}@media (min-width: 500px){.modal-content{max-width:420px;border-radius:14px;border-bottom:1px solid var(--border);max-height:80vh}.modal-overlay{align-items:center;padding:20px}}.modal-content:before{content:"";display:block;height:1px;background:#272f34;opacity:.6;margin:10px auto 0;width:40px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 20px 16px;border-bottom:1px solid var(--border)}.modal-title{display:flex;align-items:flex-start;gap:12px;min-width:0;flex:1}.modal-icon{width:28px;height:28px;border-radius:6px;background:transparent;border:1px solid var(--border-strong);display:flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0;margin-top:2px}.modal-icon .material-symbols-outlined{font-size:16px;font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24}.modal-title h2{margin:0;font-family:var(--font-body);font-size:18px;font-weight:600;color:var(--text);letter-spacing:-.01em;line-height:1.25}.modal-title p{margin:4px 0 0;font-family:var(--font-body);font-size:12.5px;font-weight:400;color:var(--text-dim);letter-spacing:-.005em;line-height:1.5}.modal-close-btn{width:32px;height:32px;border-radius:6px;background:transparent;border:1px solid var(--border);color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1)}.modal-close-btn .material-symbols-outlined{font-size:16px}.modal-close-btn:hover,.modal-close-btn:active{border-color:#2c4654;color:var(--text-2)}.modal-body{padding:20px;display:flex;flex-direction:column;gap:16px;overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}.modal-mode-toggle{display:flex;background:#ffffff0f;border-radius:10px;padding:3px;margin-bottom:16px}.mode-toggle-btn{flex:1;padding:8px 12px;border:none;border-radius:8px;background:transparent;color:#ffffff80;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.mode-toggle-btn.active{background:#ffffff1f;color:var(--text)}.mode-toggle-btn:hover:not(.active):not(:disabled){color:#ffffffb3}.modal-input-group{display:flex;flex-direction:column;gap:10px}.modal-input-group label{font-size:13px;font-weight:600;color:#94a3b8;letter-spacing:.02em}.modal-textarea-wrapper{position:relative}.modal-textarea-wrapper textarea{width:100%;min-height:140px;padding:16px 50px 16px 16px;background:var(--panel);border:1px solid var(--border);border-radius:16px;color:var(--text);font-size:14px;font-family:inherit;line-height:1.5;resize:none;outline:none;transition:border-color .2s ease}.modal-textarea-wrapper textarea::placeholder{color:#4a5568}.modal-textarea-wrapper textarea:focus{border-color:rgba(var(--primary-rgb),.5)}.modal-textarea-wrapper textarea:disabled{opacity:.6}.paste-btn{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:10px;background:rgba(var(--primary-rgb),.15);border:1px solid rgba(var(--primary-rgb),.3);color:var(--primary);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease;-webkit-tap-highlight-color:transparent}.paste-btn .material-symbols-outlined{font-size:20px}.paste-btn:hover{background:rgba(var(--primary-rgb),.25)}.paste-btn:disabled{opacity:.5;cursor:not-allowed}.modal-error{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;color:var(--error);font-size:13px}.modal-error .material-symbols-outlined{font-size:20px}.modal-submit-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px 18px;background:transparent;border:1px solid var(--accent-border);border-radius:8px;color:var(--accent-strong);font-family:var(--font-mono);font-size:11.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1)}.modal-submit-btn:hover:not(:disabled),.modal-submit-btn:active:not(:disabled){border-color:var(--accent-border-strong);color:var(--accent-active)}.modal-submit-btn:disabled{opacity:.4;cursor:not-allowed}.modal-submit-btn .material-symbols-outlined{font-size:16px}.spinner{width:14px;height:14px;border:1.5px solid oklch(.4 .08 235 / .4);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.modal-helper{margin:0;text-align:left;font-family:var(--font-body);font-size:12px;color:var(--text-faint);line-height:1.55}.modal-success{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:20px 0 8px;border-bottom:1px solid var(--divider)}.success-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:none;border:none;color:var(--income-strong);margin:0}.success-icon .material-symbols-outlined{font-size:18px;font-variation-settings:"FILL" 0,"wght" 500}.modal-success h3{margin:0;font-family:var(--font-body);font-size:18px;font-weight:600;color:var(--text);letter-spacing:-.01em}.modal-success p{margin:0;font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--text-dim);font-variant-numeric:tabular-nums;letter-spacing:.02em}.parsed-transaction{background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:hidden}.parsed-row{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--divider)}.parsed-row:last-child{border-bottom:none}.parsed-label{font-size:13px;color:#64748b}.parsed-value{font-size:14px;font-weight:600;color:var(--text)}.parsed-value.expense{color:var(--error)}.parsed-value.income{color:#34d399}.parsed-tag{padding:4px 10px;background:rgba(var(--primary-rgb),.15);border-radius:8px;font-size:11px;font-weight:600;color:var(--primary);text-transform:uppercase;letter-spacing:.05em}.modal-actions{display:flex;gap:12px}.modal-secondary-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;background:#1e293b99;border:1px solid var(--border-strong);border-radius:12px;color:#e2e8f0;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.modal-secondary-btn:hover{background:#1e293bcc}.modal-primary-btn{flex:1;padding:14px 20px;background:var(--accent);border:none;border-radius:12px;color:#000;font-size:14px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.modal-primary-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(var(--primary-rgb),.3)}.sms-setup-modal{max-height:90vh}.sms-setup-modal .modal-body{overflow-y:auto;max-height:calc(90vh - 100px)}.sms-setup-tabs{display:flex;gap:8px;margin-bottom:16px}.sms-setup-tab{flex:1;padding:10px 16px;background:#1e293b99;border:1px solid var(--border-strong);border-radius:8px;color:#94a3b8;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.sms-setup-tab:hover{background:#1e293bcc}.sms-setup-tab.active{background:var(--accent);border-color:transparent;color:#000}.sms-setup-info{background:rgba(var(--primary-rgb),.1);border:1px solid rgba(var(--primary-rgb),.2);border-radius:12px;padding:16px;margin-bottom:16px}.sms-setup-info h4{color:var(--primary);font-size:14px;font-weight:600;margin:0 0 8px}.sms-setup-info p{color:#94a3b8;font-size:13px;line-height:1.5;margin:0}.sms-setup-webhook{background:#1e293b99;border:1px solid var(--border-strong);border-radius:12px;padding:14px;margin-bottom:16px}.webhook-label{display:block;color:#64748b;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.webhook-url-container{display:flex;align-items:center;gap:8px}.webhook-url{flex:1;color:var(--primary);font-size:12px;font-family:var(--font-mono);word-break:break-all}.webhook-copy-btn{background:rgba(var(--primary-rgb),.15);border:1px solid rgba(var(--primary-rgb),.3);border-radius:8px;padding:8px;font-size:14px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.webhook-copy-btn:hover{background:rgba(var(--primary-rgb),.25)}.sms-setup-steps{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.sms-setup-step{display:flex;gap:12px;background:#1e293b66;border:1px solid var(--border);border-radius:12px;padding:14px}.step-number{width:28px;height:28px;min-width:28px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#000;font-size:13px;font-weight:700}.step-content{flex:1}.step-title{color:var(--text);font-size:14px;font-weight:600;margin:0 0 4px}.step-description{color:#94a3b8;font-size:13px;line-height:1.5;margin:0}.sms-setup-app-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 20px;background:var(--accent);border:none;border-radius:12px;color:#000;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease;margin-bottom:12px}.sms-setup-app-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(var(--primary-rgb),.3)}.sms-setup-app-btns{display:flex;gap:12px;margin-bottom:12px}.sms-setup-app-btn.half{flex:1;margin-bottom:0}.sms-setup-configured-btn{width:100%;padding:14px 20px;background:#22c55e26;border:1px solid rgba(34,197,94,.3);border-radius:12px;color:#22c55e;font-size:14px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.sms-setup-configured-btn:hover{background:#22c55e40}.step-webhook-inline{display:flex;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;background:var(--panel);border:1px solid rgba(var(--primary-rgb),.3);border-radius:8px}.webhook-url-inline{flex:1;color:var(--primary);font-size:11px;font-family:var(--font-mono);word-break:break-all;line-height:1.4}.webhook-copy-btn-small{background:rgba(var(--primary-rgb),.15);border:1px solid rgba(var(--primary-rgb),.3);border-radius:6px;padding:6px;font-size:12px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease;flex-shrink:0}.webhook-copy-btn-small:hover{background:rgba(var(--primary-rgb),.25)}.preview-image-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 16px;background:var(--border);border:1px dashed var(--border-strong);border-radius:12px;color:#94a3b8;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease;margin-bottom:12px}.preview-image-btn:hover{background:var(--border);border-color:var(--border-strong);color:#e2e8f0}.preview-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1100;padding:20px;animation:fadeIn .2s ease}.preview-modal-content{position:relative;max-width:320px;width:100%;display:flex;flex-direction:column;align-items:center;animation:scaleIn .2s ease}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.preview-modal-close{position:absolute;top:-40px;right:0;width:32px;height:32px;border-radius:50%;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:var(--text);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.preview-modal-close:hover{background:#fff3}.preview-image{width:100%;max-height:70vh;object-fit:contain;border-radius:16px;box-shadow:0 20px 60px #00000080}.preview-caption{margin:16px 0 0;color:#94a3b8;font-size:13px;text-align:center}@media (max-width: 1024px){.accounts-page{padding:20px 16px 100px}.accounts-page .period-selector{margin-bottom:16px;border-radius:14px;background:#121417e6;border:1px solid rgba(52,211,153,.15)}.accounts-page .period-selector-header{padding:12px 14px}.accounts-page .period-selector-icon{font-size:16px}.accounts-page .period-selector-value{font-size:13px}.accounts-page .period-selector-option{padding:10px 12px;font-size:13px}.accounts-grid{grid-template-columns:1fr}.account-card{padding:18px}.account-card-bg{font-size:64px;right:10px;top:14px;opacity:.35}.account-card-details{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:4px}.account-card-label{grid-column:1;grid-row:1}.account-card-amount{grid-column:1;grid-row:2;font-size:26px}.account-card-meta{grid-column:1;grid-row:3;justify-self:start;margin-top:4px}.account-details-panel{position:fixed;bottom:0;left:0;right:0;max-height:75vh;border-radius:14px 14px 0 0;overflow:hidden;z-index:100;animation:slideUp .32s cubic-bezier(.22,1,.36,1);background:#090f13;border:1px solid var(--border);border-bottom:none;box-shadow:0 -16px 36px #0000008c;display:flex;flex-direction:column}.account-details-sticky{position:sticky;top:0;background:#090f13;z-index:10;padding:18px 18px 0;border-radius:14px 14px 0 0}.account-details-scroll{padding:0 18px 24px;overflow-y:auto;flex:1}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.accounts-summary{gap:12px}.accounts-stat{padding:16px}.accounts-stat-value{font-size:22px}}@media (min-width: 769px) and (max-width: 1024px){.accounts-page{padding:28px 32px 120px}.accounts-grid{grid-template-columns:repeat(2,1fr)}.accounts-summary{grid-template-columns:repeat(4,1fr)}}.category-modal{--term-surface: var(--panel);--term-surface-raised: oklch(.205 .014 232);--term-border: oklch(.3 .02 232);--term-border-hair: var(--border);--term-text-primary: var(--text);--term-text-secondary: oklch(.76 .01 232);--term-text-tertiary: oklch(.56 .012 232);--term-text-muted: oklch(.465 .01 232);--term-accent: oklch(.8 .15 235);--term-warn: var(--danger, oklch(.68 .18 28));--term-pos: var(--income-strong, oklch(.78 .13 155));background:var(--term-surface);border-radius:16px 16px 0 0;width:100%;max-width:100%;position:absolute;bottom:0;left:0;animation:slideUp .3s cubic-bezier(.22,1,.36,1);border-top:1px solid var(--term-border-hair);padding-bottom:30px;display:flex;flex-direction:column;max-height:85vh;color:var(--term-text-primary)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-drag-handle{width:36px;height:3px;background:var(--term-border, rgba(255, 255, 255, .2));border-radius:2px;margin:10px auto 0}.category-modal .modal-header{padding:14px 20px 12px;border-bottom:1px solid var(--term-border-hair, rgba(255, 255, 255, .06));display:flex;justify-content:space-between;align-items:center}.category-modal .modal-title-text{margin:0;font-family:var(--font-body);font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--term-text-primary, var(--text))}.category-modal .modal-close-btn{background:transparent;border:1px solid var(--term-border-hair, rgba(255, 255, 255, .08));border-radius:8px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--term-text-tertiary, #7B8794);transition:color .18s ease,border-color .18s ease}.category-modal .modal-close-btn:hover{color:var(--term-text-primary, var(--text));border-color:var(--term-border, #2D3748)}.category-modal .modal-body{padding:0;overflow-y:auto;flex:1}.transaction-preview{padding:20px 24px;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.05)}.merchant-name{font-size:14px;color:#94a3b8;margin-bottom:4px;margin-top:0}.amount{font-size:24px;font-weight:700;color:var(--text);margin:0}.category-name-input{margin:12px 24px 0;display:flex;flex-direction:column;gap:6px}.category-name-input input{background:#0f172a;border:1px solid #334155;border-radius:10px;padding:10px 12px;color:var(--text);font-size:14px;outline:none}.category-name-input input:focus{border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf826}.category-name-input input::placeholder{color:#64748b}.search-box{margin:12px 24px;background:#1e293b;border:1px solid #334155;border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px}.search-box .search-icon{color:#64748b;flex-shrink:0}.search-box input{background:transparent;border:none;color:var(--text);font-size:14px;width:100%;outline:none}.search-box input::placeholder{color:#64748b}.category-section{padding:0 24px 16px}.section-label{font-size:12px;color:#94a3b8;margin:0 0 12px;font-weight:500}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.category-card{position:relative;background:#1e293b66;border:1px solid var(--border);border-radius:12px;padding:12px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.category-card:hover{background:#1e293b99}.category-card.selected{background:rgba(var(--primary-rgb),.1);border:1px solid var(--primary);box-shadow:0 0 0 1px rgba(var(--primary-rgb),.2)}.category-icon{color:#94a3b8;display:flex;align-items:center;justify-content:center}.category-icon svg{width:22px;height:22px}.category-card.selected .category-icon{color:var(--primary)}.category-name{font-size:10px;color:#94a3b8;text-align:center;line-height:1.2}.category-card.selected .category-name{color:var(--text)}.check-badge{position:absolute;top:6px;right:6px;width:16px;height:16px;background:var(--primary);border-radius:50%;color:#000;font-size:10px;display:flex;align-items:center;justify-content:center;font-weight:700}.create-card{border-style:dashed;border-color:var(--border-strong)}.modal-footer{padding:14px 20px 18px;border-top:1px solid var(--term-border-hair, var(--border));background:var(--term-surface, #0F1419)}.apply-btn{width:100%;padding:14px 16px;background:var(--term-accent, var(--accent, oklch(.8 .15 235)));border:1px solid var(--term-accent, var(--accent, oklch(.8 .15 235)));border-radius:10px;color:var(--bg);font-family:var(--font-body);font-size:15px;font-weight:600;letter-spacing:.005em;cursor:pointer;transition:background-color .18s ease,transform .08s ease,opacity .2s ease}.apply-btn:active{transform:scale(.99);background:color-mix(in oklch,var(--term-accent, var(--accent)) 88%,#000)}.apply-btn:disabled{opacity:.42;cursor:not-allowed;transform:none}.category-modal.edit-view{max-height:80vh}.modal-body.edit-modal-body{padding:8px 20px 20px;display:flex;flex-direction:column;gap:16px}.edit-field{display:flex;flex-direction:column;gap:8px}.edit-field-label{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--term-text-tertiary, #7B8794);text-transform:uppercase;letter-spacing:.14em;display:flex;align-items:center;gap:7px}.edit-field-label svg{opacity:.55;width:13px;height:13px}.edit-field-input{background:var(--term-surface, rgba(15, 23, 42, .6));border:1px solid var(--term-border-hair, var(--border-strong));border-radius:10px;padding:13px 14px;color:var(--term-text-primary, var(--text));font-family:var(--font-body);font-size:15px;outline:none;transition:border-color .18s ease;width:100%;box-sizing:border-box}.edit-field-input:focus{border-color:var(--term-accent, var(--accent, oklch(.8 .15 235)))}.edit-field-input::placeholder{color:var(--term-text-muted, #4B5563)}.edit-amount-wrapper{position:relative;display:flex;align-items:center}.edit-amount-currency{position:absolute;left:14px;color:var(--term-text-tertiary, #7B8794);font-family:var(--font-mono);font-size:17px;font-weight:500;pointer-events:none;z-index:1;font-variant-numeric:tabular-nums}.edit-amount-input{padding-left:34px;font-family:var(--font-mono);font-size:19px;font-weight:500;letter-spacing:0;font-variant-numeric:tabular-nums}.edit-amount-input::-webkit-outer-spin-button,.edit-amount-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.edit-amount-input[type=number]{-moz-appearance:textfield}.edit-category-btn{background:var(--term-surface, rgba(15, 23, 42, .6));border:1px solid var(--term-border-hair, var(--border-strong));border-radius:10px;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:border-color .18s ease,background .18s ease;width:100%}.edit-category-btn:active{background:var(--term-surface-raised, rgba(30, 41, 59, .8))}.edit-category-btn-left{display:flex;align-items:center;gap:12px}.edit-category-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;color:var(--term-text-secondary, #9AA4B2);background:transparent;border:0;border-radius:0}.edit-category-name{font-family:var(--font-body);font-size:15px;color:var(--term-text-primary, var(--text));font-weight:500;letter-spacing:-.003em}.edit-category-chevron{color:var(--term-text-muted, #4B5563)}.edit-raw-sms{background:var(--term-surface, rgba(15, 23, 42, .6));border:1px solid var(--term-border-hair, var(--border));border-radius:10px;padding:12px 14px;color:var(--term-text-secondary, #9AA4B2);font-family:var(--font-mono);font-size:12.5px;line-height:1.55;white-space:pre-wrap;word-break:break-word;max-height:124px;overflow-y:auto;font-variant-numeric:tabular-nums}.edit-archive-btn{background:transparent;border:1px solid var(--term-border-hair, var(--border));border-radius:10px;padding:11px 14px;color:var(--term-text-tertiary, #7B8794);font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:color .18s ease,border-color .18s ease,background-color .18s ease;margin-top:4px}.edit-archive-btn svg{width:14px;height:14px}.edit-archive-btn:active{background:color-mix(in oklch,var(--term-warn, oklch(.68 .18 28)) 10%,transparent);color:var(--term-warn, oklch(.78 .14 28));border-color:color-mix(in oklch,var(--term-warn, oklch(.68 .18 28)) 40%,transparent)}.edit-archive-btn.unarchive{color:var(--term-text-tertiary, #7B8794)}.edit-archive-btn.unarchive:active{background:color-mix(in oklch,var(--term-pos, oklch(.78 .13 155)) 10%,transparent);color:var(--term-pos, oklch(.78 .13 155));border-color:color-mix(in oklch,var(--term-pos, oklch(.78 .13 155)) 40%,transparent)}.modal-back-btn{background:#ffffff1a;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#94a3b8;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s;flex-shrink:0}.modal-back-btn:active{background:#fff3;color:var(--text)}.search-clear-btn{background:#ffffff1a;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#64748b;flex-shrink:0;padding:0}.search-clear-btn:active{color:var(--text)}.icon-picker-preview{display:flex;flex-direction:column;align-items:center;padding:20px 24px 16px;gap:8px}.icon-picker-preview-icon{width:64px;height:64px;border-radius:18px;background:var(--border);border:2px dashed var(--border-strong);display:flex;align-items:center;justify-content:center;color:#64748b;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.icon-picker-preview-icon.has-icon{background:rgba(var(--primary-rgb),.15);border:2px solid var(--primary);color:var(--primary)}.icon-picker-category-name{font-size:18px;font-weight:700;color:var(--text);margin:0}.icon-picker-hint{font-size:13px;color:#64748b;margin:0}.icon-picker-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;padding:0 20px 16px}.icon-picker-item{aspect-ratio:1;border-radius:12px;background:#1e293b66;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;color:#94a3b8;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .15s ease,opacity .15s ease}.icon-picker-item:active{transform:scale(.92)}.icon-picker-item.selected{background:rgba(var(--primary-rgb),.15);border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 1px rgba(var(--primary-rgb),.2)}.filter-modal{background:var(--surface);max-width:440px}.filter-modal-header{display:flex;align-items:center;gap:12px;padding:16px 20px 12px;border-bottom:1px solid var(--border)}.filter-modal-title{flex:1;margin:0;font-size:18px;font-weight:700;color:var(--text)}.filter-reset-btn{background:none;border:none;font-size:13px;font-weight:600;color:#94a3b8;cursor:pointer;padding:8px 12px;border-radius:8px;transition:background .2s}.filter-reset-btn:hover{color:var(--text)}.filter-modal .modal-close-btn{background:var(--border);border:none;color:#94a3b8}.filter-modal .modal-close-btn:hover{background:var(--border-strong);color:var(--text)}.filter-modal-body{padding:20px;display:flex;flex-direction:column;gap:24px;overflow-y:auto;flex:1}.filter-section{display:flex;flex-direction:column;gap:16px}.filter-section-title{margin:0;font-size:11px;font-weight:600;color:#94a3b8;letter-spacing:1px}.filter-type-row{display:flex;gap:12px}.filter-type-btn{padding:10px 18px;border-radius:20px;background:#1e293b66;border:1px solid var(--border);font-size:13px;font-weight:600;color:#94a3b8;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.filter-type-btn:hover{background:#1e293b99}.filter-type-btn.selected{background:#00eeff1a;border-color:var(--primary);color:var(--primary)}.filter-sort-options{display:flex;flex-direction:column;gap:12px}.filter-sort-option{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:#1e293b66;border:1px solid var(--border);font-size:14px;font-weight:500;color:#e2e8f0;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.filter-sort-option:hover{background:#1e293b99}.filter-sort-option.selected{background:#00eeff0d;border-color:var(--primary);color:var(--text)}.filter-sort-option.selected .filter-radio{border-color:var(--primary)}.filter-sort-label{flex:1}.filter-radio{width:20px;height:20px;border-radius:50%;border:2px solid #475569;display:flex;align-items:center;justify-content:center;transition:border-color .2s}.filter-radio-inner{width:10px;height:10px;border-radius:50%;background:var(--primary)}.filter-category-row{display:flex;flex-wrap:wrap;gap:10px}.filter-category-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:16px;background:#1e293b66;border:1px solid var(--border);font-size:13px;font-weight:500;color:#94a3b8;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.filter-category-btn:hover{background:#1e293b99}.filter-category-btn.selected{background:#00eeff1a;border-color:var(--primary);color:var(--primary)}.filter-modal-footer{padding:16px 20px 20px;border-top:1px solid var(--border)}.filter-apply-btn{width:100%;padding:14px;border-radius:20px;background:var(--primary);border:none;font-size:15px;font-weight:700;color:#000;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.filter-apply-btn:hover{background:#00d2e0;transform:translateY(-1px);box-shadow:0 4px 12px #00eeff4d}.filter-apply-btn:active{transform:scale(.98)}@media (max-width: 500px){.filter-modal{max-width:100%;border-radius:24px 24px 0 0}}.archive-btn{width:100%;padding:14px;margin-top:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:14px;color:#ef4444;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.archive-btn:hover{background:#ef444433}.archive-btn:active{transform:scale(.98)}.archive-btn.unarchive{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.archive-btn.unarchive:hover{background:#22c55e33}.mobile-history-item.archived{opacity:.5}.mobile-history-item.archived .mobile-history-merchant{text-decoration:line-through}.archived-badge{padding:2px 6px;background:var(--border-strong);border-radius:4px;font-size:9px;font-weight:600;color:#94a3b8;letter-spacing:.05em;text-transform:uppercase;margin-left:8px}.consolidate-modal{display:flex;flex-direction:column;max-height:85vh;background:var(--panel)}.consolidate-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid var(--border)}.consolidate-modal-body{padding:20px;display:flex;flex-direction:column;gap:20px;overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}.consolidate-modal-footer{padding:16px 20px 20px;border-top:1px solid var(--border)}.consolidate-date-section{display:flex;flex-direction:column;gap:16px;padding:20px;background:#1e293b4d;border-radius:16px;border:1px solid var(--border)}.consolidate-date-presets{display:flex;gap:8px;flex-wrap:wrap}.consolidate-preset-btn{padding:8px 16px;border-radius:999px;background:#1e293b99;border:1px solid var(--border-strong);color:#94a3b8;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease;white-space:nowrap}.consolidate-preset-btn:hover{background:#1e293bcc}.consolidate-preset-btn.active{background:var(--accent);border-color:transparent;color:#000;box-shadow:0 4px 12px rgba(var(--primary-rgb),.3)}.consolidate-date-inputs{display:flex;gap:12px}.consolidate-date-input-group{flex:1;display:flex;flex-direction:column;gap:8px}.consolidate-date-input-group label{font-size:12px;font-weight:600;color:#94a3b8;letter-spacing:.05em}.consolidate-date-input-group input[type=date]{padding:12px 14px;background:var(--panel);border:1px solid var(--border-strong);border-radius:12px;color:var(--text);font-size:14px;font-family:inherit;outline:none;transition:border-color .2s ease}.consolidate-date-input-group input[type=date]:focus{border-color:var(--primary)}.consolidate-llm-toggle{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#0f141c80;border-radius:12px;cursor:pointer;transition:background .2s ease}.consolidate-llm-toggle:hover{background:var(--panel)}.consolidate-llm-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary)}.consolidate-llm-toggle span{font-size:14px;color:#e2e8f0;font-weight:500}.consolidate-scan-btn{width:100%;padding:14px 20px;background:var(--accent);border:none;border-radius:14px;color:#000;font-size:15px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.consolidate-scan-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px rgba(var(--primary-rgb),.4)}.consolidate-scan-btn:disabled{opacity:.5;cursor:not-allowed}.consolidate-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px 20px}.consolidate-loading .spinner-icon{animation:spin 1s linear infinite;color:var(--primary)}.consolidate-loading p{font-size:16px;color:#94a3b8;margin:0}.consolidate-summary{display:flex;align-items:center;gap:12px;padding:14px 18px;background:rgba(var(--primary-rgb),.1);border:1px solid rgba(var(--primary-rgb),.2);border-radius:12px;font-size:14px;color:#e2e8f0;font-weight:600}.consolidate-summary .separator{color:#64748b}.consolidate-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;text-align:center}.consolidate-empty h3{margin:0;font-size:20px;font-weight:700;color:var(--text)}.consolidate-empty p{margin:0;font-size:14px;color:#94a3b8}.consolidate-groups{display:flex;flex-direction:column;gap:12px}.consolidate-group{background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:hidden}.consolidate-group-header{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;cursor:pointer;transition:background .2s ease}.consolidate-group-header:hover{background:#1e293b4d}.consolidate-group-info{flex:1;min-width:0}.consolidate-group-info h4{margin:0 0 6px;font-size:16px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.consolidate-group-meta{margin:0;font-size:12px;color:#94a3b8;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.consolidate-confidence-badge{font-weight:600}.consolidate-llm-badge{color:var(--primary);font-weight:600}.consolidate-expand-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;transition:color .2s ease}.consolidate-expand-btn:hover{color:var(--text)}.consolidate-group-body{border-top:1px solid var(--border);background:#0c101699}.consolidate-tx-row{display:flex;align-items:flex-start;gap:14px;padding:14px 18px;border-bottom:1px solid rgba(148,163,184,.05);transition:background .2s ease}.consolidate-tx-row:last-child{border-bottom:none}.consolidate-tx-row:hover{background:#1e293b33}.consolidate-tx-row.selected-archive{background:#ef44440d}.consolidate-tx-row.keep{background:#22c55e0d}.consolidate-tx-row input[type=checkbox]{width:18px;height:18px;margin-top:2px;cursor:pointer;accent-color:var(--error);flex-shrink:0}.consolidate-tx-row.keep input[type=checkbox]{accent-color:#22c55e;cursor:not-allowed}.consolidate-tx-info{flex:1;min-width:0}.consolidate-tx-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.consolidate-tx-merchant{font-size:15px;font-weight:600;color:var(--text)}.consolidate-keep-badge{padding:3px 8px;background:#22c55e26;border:1px solid rgba(34,197,94,.3);border-radius:6px;font-size:10px;font-weight:700;color:#22c55e;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.consolidate-tx-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:#94a3b8}.consolidate-tx-amount{font-weight:600;color:#e2e8f0}.consolidate-tx-meta .separator{color:#475569}.consolidate-archive-btn{width:100%;padding:14px 20px;background:var(--danger);border:none;border-radius:14px;color:var(--text);font-size:15px;font-weight:700;cursor:pointer;transition:background-color .15s cubic-bezier(.22,1,.36,1)}.consolidate-archive-btn:hover:not(:disabled){background:#d6483e}.consolidate-archive-btn:disabled{opacity:.5;cursor:not-allowed}.consolidate-done{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;text-align:center}.consolidate-done h3{margin:0;font-size:20px;font-weight:700;color:var(--text)}.consolidate-done p{margin:0;font-size:14px;color:#94a3b8}.consolidate-done-btn{margin-top:12px;padding:12px 32px;background:var(--accent);border:none;border-radius:12px;color:#000;font-size:15px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.consolidate-done-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(var(--primary-rgb),.4)}.consolidate-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;text-align:center}.consolidate-error h3{margin:0;font-size:20px;font-weight:700;color:var(--text)}.consolidate-error p{margin:0;font-size:14px;color:#ef4444}.consolidate-retry-btn{margin-top:12px;padding:12px 32px;background:var(--border-strong);border:1px solid var(--border-strong);border-radius:12px;color:#e2e8f0;font-size:15px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.consolidate-retry-btn:hover{background:var(--border-strong);transform:translateY(-1px)}@media (min-width: 769px) and (max-width: 1024px){.consolidate-modal{max-width:600px;border-radius:24px;max-height:80vh}.consolidate-date-presets{gap:12px}.consolidate-preset-btn{padding:10px 20px;font-size:14px}}.mobile-profile{display:flex;flex-direction:column;gap:24px;padding:0 4px 40px;flex:1}.profile-header{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 20px 8px;background:transparent;border-radius:24px}.profile-avatar-wrap{position:relative;width:88px;height:88px}.profile-avatar-lg{width:88px;height:88px;border-radius:50%;overflow:hidden;background:var(--panel-2);border:1px solid var(--border)}.profile-avatar-lg img{width:100%;height:100%;object-fit:cover}.profile-avatar-edit{position:absolute;bottom:-2px;right:-2px;width:28px;height:28px;border-radius:50%;background:var(--panel);color:var(--accent-strong);border:1px solid var(--accent-border);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}.profile-avatar-edit .material-symbols-outlined{font-size:14px;font-variation-settings:"wght" 600}.profile-name{margin:0;font-family:var(--font-body);font-size:22px;font-weight:600;color:var(--text);letter-spacing:-.02em}.profile-plan{background:transparent;color:var(--accent-strong);padding:4px 12px;border-radius:4px;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--accent-border)}.profile-section{display:flex;flex-direction:column;gap:10px;padding:0 16px}.profile-section-title{margin:0 4px;font-family:var(--font-mono);font-size:10px;font-weight:600;color:var(--text-faint);letter-spacing:.18em;text-transform:uppercase}.profile-sms-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;background:var(--panel);border:1px solid var(--border);border-radius:18px}.profile-sms-copy{flex:1;min-width:0}.profile-sms-title{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--text)}.profile-sms-desc{margin:0 0 8px;font-size:13px;color:var(--text-dim);line-height:1.4}.profile-sms-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-faint)}.profile-sms-dot{width:8px;height:8px;border-radius:50%;background:var(--text-faint);box-shadow:0 0 0 2px color-mix(in oklab,var(--text-faint) 20%,transparent)}.profile-sms-status.is-on{color:var(--income-strong)}.profile-sms-status.is-on .profile-sms-dot{background:var(--income-strong);box-shadow:0 0 0 3px color-mix(in oklab,var(--income-strong) 25%,transparent)}.profile-sms-btn{padding:10px 16px;border-radius:8px;border:1px solid var(--accent-border);background:transparent;color:var(--accent-strong);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1),transform .15s ease}.profile-sms-btn:hover,.profile-sms-btn:active{border-color:var(--accent-border-strong);color:var(--accent-active)}.profile-sms-btn:active{transform:scale(.96)}.profile-theme-card{display:flex;flex-direction:column;gap:14px;padding:16px;background:var(--panel);border:1px solid var(--border);border-radius:12px}.profile-theme-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.profile-theme-title{margin:0;font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--text);letter-spacing:-.005em}.profile-theme-desc{margin:0;font-family:var(--font-mono);font-size:10.5px;font-weight:500;color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase}.profile-theme-toggle{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:3px}.profile-theme-option{padding:9px 10px;background:transparent;border:none;border-radius:6px;color:var(--text-dim);font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1)}.profile-theme-option:hover:not(.is-active){color:var(--text-2)}.profile-theme-option.is-active{background:var(--panel);color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--accent-border)}.profile-menu-list{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:18px;overflow:hidden}.profile-menu-item{display:flex;align-items:center;gap:14px;padding:14px 16px;width:100%;background:transparent;border:none;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent;transition:background .15s ease}.profile-menu-item:last-child{border-bottom:none}.profile-menu-item:active{background:var(--panel-hover)}.profile-menu-icon{width:32px;height:32px;border-radius:8px;background:transparent;border:1px solid var(--border);color:var(--text-dim);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.profile-menu-icon .material-symbols-outlined{font-size:18px}.profile-menu-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.profile-menu-label{font-size:14.5px;font-weight:600;color:var(--text);letter-spacing:-.005em}.profile-menu-desc{font-size:12px;color:var(--text-faint)}.profile-menu-chevron{font-size:20px;color:var(--text-whisper);flex-shrink:0}.profile-logout{margin:8px 16px 0;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 18px;border-radius:8px;border:1px solid color-mix(in oklab,var(--danger) 42%,transparent);background:transparent;color:var(--danger);font-family:var(--font-mono);font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .15s cubic-bezier(.22,1,.36,1),transform .15s ease}.profile-logout:active{transform:scale(.98);border-color:var(--danger)}.profile-logout .material-symbols-outlined{font-size:18px}.profile-version{text-align:center;font-family:var(--font-mono);color:var(--text-whisper);font-size:10.5px;letter-spacing:.12em;margin:0 0 24px}.profile-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;padding:24px;z-index:2000;animation:fadeIn .15s ease}.profile-confirm{width:100%;max-width:320px;background:#1a2030;border:1px solid var(--border);border-radius:20px;padding:20px;text-align:center}.profile-confirm h3{margin:4px 0 8px;font-size:18px;font-weight:700;color:var(--text)}.profile-confirm p{margin:0 0 20px;font-size:14px;color:#94a3b8;line-height:1.4}.profile-confirm-actions{display:flex;gap:10px}.profile-confirm-cancel,.profile-confirm-ok{flex:1;padding:12px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;border:none;-webkit-tap-highlight-color:transparent}.profile-confirm-cancel{background:var(--border);color:#e2e8f0}.profile-confirm-ok{background:#ff6b8a33;color:#ff6b8a;border:1px solid rgba(255,107,138,.3)}.sms-setup-section{margin-top:18px;padding:16px;background:#1e293b8c;border:1px solid var(--border);border-radius:16px}.sms-setup-section-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}.sms-setup-section-index{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--panel-2);color:var(--accent-strong);font-family:var(--font-mono);font-weight:600;font-size:13px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border)}.sms-setup-section-title{margin:0;font-size:16px;font-weight:700;color:#f1f5f9}.sms-setup-section-sub{margin:4px 0 0;font-size:13px;color:#94a3b8;line-height:1.5}.sms-setup-section-body{display:flex;flex-direction:column;gap:10px}.sms-setup-primary-btn{padding:14px 18px;background:var(--accent);color:var(--bg);border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:background-color .15s cubic-bezier(.22,1,.36,1),transform .1s ease}.sms-setup-primary-btn:active{transform:scale(.98);background:var(--accent-strong)}.sms-setup-primary-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.sms-setup-secondary-btn{padding:12px 16px;background:#3b82f61f;color:#93c5fd;border:1px solid rgba(59,130,246,.3);border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:background .1s ease}.sms-setup-secondary-btn:active{background:#3b82f633}.sms-setup-tertiary-btn{padding:11px 14px;background:transparent;color:#cbd5e1;border:1px dashed rgba(148,163,184,.35);border-radius:10px;font-size:13px;font-weight:600;cursor:pointer}.sms-setup-tertiary-btn:active{background:var(--border)}.sms-setup-hint{margin:2px 2px 0;font-size:12.5px;color:#94a3b8;line-height:1.5}.sms-setup-hint strong{color:#f1f5f9}.sms-walkthrough{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:10px}.sms-walkthrough-item{display:flex;gap:12px;align-items:flex-start;padding:10px;background:#0f172a80;border-radius:12px;border:1px solid var(--border)}.sms-walkthrough-copy{flex:1;min-width:0}.sms-walkthrough-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#f1f5f9}.sms-walkthrough-index{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:#3b82f633;color:#93c5fd;font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center}.sms-walkthrough-copy p{margin:4px 0 0;font-size:12.5px;color:#94a3b8;line-height:1.5}.sms-status-card{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:12px;border:1px solid}.sms-status-card .material-symbols-outlined{font-size:28px;flex-shrink:0;margin-top:2px}.sms-status-card strong{display:block;font-size:14px;color:#f1f5f9;margin-bottom:2px}.sms-status-card p{margin:0;font-size:12.5px;color:#94a3b8;line-height:1.5}.sms-status-card-waiting{background:#3b82f614;border-color:#3b82f640;color:#93c5fd}.sms-status-card-ok{background:#22c55e1a;border-color:#22c55e4d;color:#86efac}.sms-setup-disclosure{width:100%;margin-top:18px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;background:transparent;color:#94a3b8;border:1px solid var(--border-strong);border-radius:10px;font-size:13px;font-weight:500;cursor:pointer}.sms-setup-disclosure:active{background:var(--divider)}.material-symbols-outlined.spin{animation:sms-spin 1.2s linear infinite}@keyframes sms-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.home-hero{--term-surface: var(--panel);--term-surface-raised: oklch(.205 .014 232);--term-border-hair: var(--border);--term-text-primary: var(--text);--term-text-secondary: oklch(.76 .01 232);--term-text-tertiary: oklch(.56 .012 232);--term-text-muted: oklch(.465 .01 232);--term-accent: oklch(.8 .15 235);--term-warn: var(--danger, oklch(.68 .18 28));--term-pos: var(--income-strong, oklch(.78 .13 155));display:flex;flex-direction:column;gap:8px;padding:20px 18px 18px;background:var(--term-surface);border:1px solid var(--term-border-hair);border-radius:14px;color:var(--term-text-primary);box-shadow:inset 1px 0 0 var(--term-hero-accent, var(--term-border-hair))}.home-hero.tone-neutral{--term-hero-accent: var(--term-text-tertiary)}.home-hero.tone-pos{--term-hero-accent: var(--term-pos)}.home-hero.tone-warn-soft{--term-hero-accent: var(--warning, oklch(.78 .14 80))}.home-hero.tone-warn{--term-hero-accent: var(--term-warn)}.home-hero-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--term-text-tertiary);font-variant-numeric:tabular-nums}.home-hero-greeting{font-family:var(--font-body);text-transform:none;letter-spacing:0;font-size:13px;color:var(--term-text-secondary);font-weight:500}.home-hero-headline{margin:2px 0 0;font-family:var(--font-body);font-size:clamp(20px,5.5vw,23px);font-weight:600;letter-spacing:-.01em;line-height:1.24;color:var(--term-text-primary)}.home-hero-total{margin:4px 0 0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:clamp(28px,8vw,34px);font-weight:500;letter-spacing:-.015em;line-height:1.1;color:var(--term-text-primary)}.home-hero-delta-row{display:flex;align-items:baseline;gap:8px;margin-top:4px}.home-hero-delta-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--term-text-tertiary)}.home-hero-supporting{margin:0;font-family:var(--font-body);font-size:13px;line-height:1.5;color:var(--term-text-secondary);max-width:44ch}.home-hero-pace-hint{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--term-text-tertiary);font-variant-numeric:tabular-nums}.home-hero.tone-warn .home-hero-pace-hint{color:var(--term-warn)}.home-hero.tone-warn-soft .home-hero-pace-hint{color:var(--warning, oklch(.78 .14 80))}.home-hero.tone-pos .home-hero-pace-hint{color:var(--term-pos)}.home-hero-progress{margin-top:8px;position:relative;width:100%;height:3px;border-radius:2px;background:color-mix(in oklch,var(--term-text-muted) 20%,transparent);overflow:hidden}.home-hero-progress>span{display:block;height:100%;background:var(--term-hero-accent, var(--term-text-tertiary));transition:width .4s cubic-bezier(.22,1,.36,1)}.home-hero-progress-label{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--term-text-muted);font-variant-numeric:tabular-nums}.home-hero-delta.down{color:var(--term-pos)}.home-hero-delta.up{color:var(--term-warn)}.home-cashflow{--term-surface: var(--panel);--term-border-hair: var(--border);--term-text-tertiary: oklch(.56 .012 232);--term-pos: var(--income-strong, oklch(.78 .13 155));--term-neg: var(--term-text-primary, var(--text));display:grid;grid-template-columns:repeat(3,1fr);background:var(--term-surface);border:1px solid var(--term-border-hair);border-radius:12px;overflow:hidden}.home-cashflow-cell{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px;min-width:0;border-right:1px solid var(--term-border-hair)}.home-cashflow-cell:last-child{border-right:none}.home-cashflow-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--term-text-tertiary);font-weight:600}.home-cashflow-value{font-family:var(--font-mono);font-size:15px;font-weight:500;font-variant-numeric:tabular-nums;color:var(--text);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-cashflow-value.pos{color:var(--term-pos, oklch(.78 .13 155))}.home-cashflow-value.neg{color:var(--text)}.home-add-transaction{display:inline-flex;align-items:center;justify-content:center;gap:8px;align-self:stretch;padding:12px 16px;background:transparent;border:1px solid var(--border);border-radius:10px;color:var(--text);font-family:var(--font-body);font-size:14px;font-weight:500;letter-spacing:-.003em;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .18s ease,color .18s ease,background .18s ease}.home-add-transaction .material-symbols-outlined{font-size:18px!important;color:var(--accent-strong, oklch(.8 .15 235))}.home-add-transaction:active{background:color-mix(in oklch,var(--accent, oklch(.8 .15 235)) 10%,transparent);border-color:var(--accent, oklch(.8 .15 235))}.home-split{--term-surface: var(--panel);--term-border-hair: var(--border);--term-text-primary: var(--text);--term-text-secondary: oklch(.76 .01 232);--term-text-tertiary: oklch(.56 .012 232);--term-text-muted: oklch(.465 .01 232);--term-pos: var(--income-strong, oklch(.78 .13 155));--term-warn: var(--danger, oklch(.68 .18 28));display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:var(--term-surface);border:1px solid var(--term-border-hair);border-radius:12px}.home-split-bar{display:flex;width:100%;height:6px;border-radius:3px;overflow:hidden;background:color-mix(in oklch,var(--term-text-muted) 18%,transparent)}.home-split-bar-fixed{display:block;height:100%;background:color-mix(in oklch,var(--term-text-tertiary) 70%,transparent);transition:width .3s cubic-bezier(.22,1,.36,1)}.home-split-bar-disc{display:block;height:100%;background:var(--accent-strong, oklch(.8 .15 235));transition:width .3s cubic-bezier(.22,1,.36,1)}.home-split-rows{display:flex;flex-direction:column;gap:6px}.home-split-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:baseline;gap:10px;font-variant-numeric:tabular-nums}.home-split-swatch{width:8px;height:8px;border-radius:2px;background:var(--term-text-tertiary)}.home-split-swatch.fixed{background:color-mix(in oklch,var(--term-text-tertiary) 70%,transparent)}.home-split-swatch.disc{background:var(--accent-strong, oklch(.8 .15 235))}.home-split-key{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--term-text-tertiary);font-weight:600}.home-split-val{font-family:var(--font-mono);font-size:14px;font-weight:500;color:var(--term-text-primary);letter-spacing:-.005em}.home-split-pct{font-family:var(--font-mono);font-size:11px;color:var(--term-text-tertiary);min-width:36px;text-align:right}.home-split-pct.over{color:var(--term-warn)}.home-split-caption{margin:2px 0 0;font-family:var(--font-body);font-size:12px;line-height:1.45;color:var(--term-text-muted)}.home-upcoming{--term-surface: var(--panel);--term-border-hair: var(--border);--term-text-primary: var(--text);--term-text-secondary: oklch(.76 .01 232);--term-text-tertiary: oklch(.56 .012 232);--term-text-muted: oklch(.465 .01 232);background:var(--term-surface);border:1px solid var(--term-border-hair);border-radius:12px;padding:12px 14px 10px;display:flex;flex-direction:column;gap:8px}.home-upcoming-head{display:flex;justify-content:space-between;align-items:baseline}.home-upcoming-title{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--term-text-tertiary);font-weight:600}.home-upcoming-count{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--term-text-muted);font-variant-numeric:tabular-nums}.home-upcoming-empty{margin:0;font-family:var(--font-body);font-size:13px;color:var(--term-text-muted);padding:2px 0 4px}.home-upcoming-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.home-upcoming-row{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:baseline;gap:10px;padding:9px 0;border-bottom:1px solid var(--term-border-hair);font-variant-numeric:tabular-nums}.home-upcoming-row:last-child{border-bottom:none}.home-upcoming-when{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--term-text-tertiary)}.home-upcoming-merchant{font-family:var(--font-body);font-size:14px;color:var(--term-text-primary);font-weight:500;letter-spacing:-.005em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-upcoming-amount{font-family:var(--font-mono);font-size:13.5px;font-weight:500;color:var(--term-text-primary);letter-spacing:-.005em}.mobile-bell-btn{position:relative}.mobile-bell-badge{position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--accent, oklch(.8 .15 235));color:#0b0f14;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.02em;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--bg, #0B0F14);font-variant-numeric:tabular-nums}.home-review-nudge{--term-surface: var(--panel);--term-border-hair: var(--border);--term-text-primary: var(--text);--term-text-secondary: oklch(.76 .01 232);--term-text-tertiary: oklch(.56 .012 232);--term-accent: oklch(.8 .15 235);display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--term-surface);border:1px solid var(--term-border-hair);border-radius:12px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .18s ease,background .18s ease;text-align:left}.home-review-nudge:active{border-color:var(--term-accent);background:color-mix(in oklch,var(--term-accent) 6%,var(--term-surface))}.home-review-nudge-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:color-mix(in oklch,var(--term-accent) 16%,transparent);color:var(--term-accent);flex-shrink:0}.home-review-nudge-icon .material-symbols-outlined{font-size:18px!important}.home-review-nudge-body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.home-review-nudge-title{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--term-text-primary);letter-spacing:-.003em}.home-review-nudge-sub{font-family:var(--font-body);font-size:12px;color:var(--term-text-tertiary);line-height:1.4}.home-review-nudge-chevron{color:var(--term-text-tertiary)}.review-queue-page{--term-surface: var(--panel);--term-surface-raised: oklch(.205 .014 232);--term-border-hair: var(--border);--term-text-primary: var(--text);--term-text-secondary: oklch(.76 .01 232);--term-text-tertiary: oklch(.56 .012 232);--term-text-muted: oklch(.465 .01 232);--term-accent: oklch(.8 .15 235);--term-warn: var(--danger, oklch(.68 .18 28));min-height:100vh;background:var(--bg, #0B0F14);color:var(--term-text-primary);padding:calc(env(safe-area-inset-top,0) + 16px) 16px calc(env(safe-area-inset-bottom,0) + 24px);display:flex;flex-direction:column;gap:16px}.review-queue-header{display:flex;align-items:flex-start;gap:12px;padding-top:4px}.review-queue-back{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid var(--term-border-hair);background:transparent;color:var(--term-text-secondary);cursor:pointer;flex-shrink:0}.review-queue-back .material-symbols-outlined{font-size:20px!important}.review-queue-title-wrap{display:flex;flex-direction:column;gap:2px}.review-queue-title{margin:0;font-family:var(--font-body);font-size:22px;font-weight:600;letter-spacing:-.01em;color:var(--term-text-primary)}.review-queue-sub{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--term-text-tertiary);font-variant-numeric:tabular-nums}.review-queue-error{padding:12px 14px;border:1px solid color-mix(in oklch,var(--term-warn) 35%,transparent);background:color-mix(in oklch,var(--term-warn) 8%,transparent);color:var(--term-warn);border-radius:10px;font-family:var(--font-body);font-size:13px}.review-queue-groups{display:flex;flex-direction:column;gap:14px}.review-queue-group{background:var(--term-surface);border:1px solid var(--term-border-hair);border-radius:12px;padding:10px 12px 4px}.review-queue-group-head{display:flex;align-items:baseline;gap:10px;padding:2px 2px 6px}.review-queue-vpa{font-family:var(--font-mono);font-size:11.5px;color:var(--term-text-secondary);letter-spacing:.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.review-queue-occ{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--term-text-muted)}.review-queue-apply-all{background:transparent;border:1px solid var(--term-border-hair);border-radius:8px;color:var(--term-accent);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:5px 8px;cursor:pointer}.review-queue-apply-all:active{background:color-mix(in oklch,var(--term-accent) 12%,transparent)}.review-queue-rows{list-style:none;margin:0;padding:0}.review-queue-row{display:flex;align-items:center;gap:10px;padding:10px 2px;border-top:1px solid var(--term-border-hair)}.review-queue-row:first-child{border-top:none}.review-queue-row-main{flex:1;min-width:0;background:transparent;border:none;padding:0;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:2px}.review-queue-merchant{font-family:var(--font-body);font-size:15px;color:var(--term-text-primary);font-weight:500;letter-spacing:-.003em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-queue-meta{font-family:var(--font-mono);font-size:11px;color:var(--term-text-tertiary);letter-spacing:.01em;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-queue-row-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.review-queue-amount{font-family:var(--font-mono);font-size:14.5px;font-weight:500;color:var(--term-text-primary);font-variant-numeric:tabular-nums;letter-spacing:-.005em}.review-queue-dismiss{background:transparent;border:1px solid var(--term-border-hair);border-radius:6px;color:var(--term-text-tertiary);font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:3px 7px;cursor:pointer}.review-queue-dismiss:active{color:var(--term-text-primary);border-color:var(--term-text-tertiary)}.review-queue-footer{margin-top:4px;padding:12px 0 0;border-top:1px solid var(--term-border-hair)}.review-queue-dismiss-all{width:100%;padding:12px 14px;background:transparent;border:1px solid var(--term-border-hair);border-radius:10px;color:var(--term-text-secondary);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer}.review-queue-empty{margin:40px auto 0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--term-text-tertiary);max-width:320px}.review-queue-empty p{margin:4px 0 0;font-family:var(--font-body);font-size:15px;font-weight:500;color:var(--term-text-primary)}.review-queue-empty-sub{font-family:var(--font-body);font-size:12px;color:var(--term-text-muted);line-height:1.45}@media (max-width: 768px){.app{display:none!important}}@media (min-width: 769px) and (max-width: 1024px){.mobile-dashboard{display:flex!important;padding:24px 24px 100px;max-width:100%}.app{display:none!important}.mobile-header{padding:12px 0}.mobile-user-name{font-size:22px}.mobile-summary-card{padding:32px;border-radius:32px}.mobile-summary-amount{font-size:56px}.mobile-categories-grid{grid-template-columns:repeat(4,1fr);gap:16px}.mobile-category-card{padding:20px}.mobile-category-icon{width:52px;height:52px;font-size:24px}.mobile-category-amount{font-size:24px}.mobile-activity-row{padding:16px 4px}.mobile-activity-row-merchant,.mobile-activity-row-amount{font-size:15px}.mobile-history{gap:24px}.mobile-history-title h1{font-size:26px}.mobile-search-input{height:56px}.mobile-filter-btn{width:56px;height:56px}.mobile-history-item{padding:18px 20px}.mobile-history-icon{width:56px;height:56px;font-size:24px}.mobile-history-merchant{font-size:17px}.mobile-bottom-nav{padding:12px 24px 20px}.mobile-nav-item{padding:10px 24px}.mobile-nav-icon{font-size:26px}.mobile-nav-label{font-size:12px}.mobile-fab{width:60px;height:60px;right:24px;bottom:110px}.modal-overlay{align-items:center;padding:24px}.modal-content{max-width:500px;border-radius:24px;max-height:85vh}.insights-page{padding:28px 24px 120px}.insights-hero h2{font-size:28px}.insights-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.insights-card{padding:20px}.insights-quick-stats{grid-column:span 2}.insights-summary-card,.insights-money-flow-card{grid-column:span 1}.insights-category-card{grid-column:span 2}.profile-page{padding:28px 24px 120px}.profile-hero{padding:32px}.profile-avatar-large{width:100px;height:100px}.profile-name{font-size:26px}.profile-menu-grid{grid-template-columns:repeat(2,1fr);gap:16px}.accounts-page{padding:28px 24px 120px}.accounts-grid{grid-template-columns:repeat(2,1fr);gap:16px}.account-card{padding:24px}.account-card-amount{font-size:28px}}@media (min-width: 1025px){.mobile-dashboard{display:none!important}.app{display:grid!important;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{padding:32px 24px 28px;gap:40px}.brand{margin-bottom:40px}.brand-icon{width:48px;height:48px;border-radius:16px;font-size:22px}.brand-title{font-size:22px}.nav{gap:10px}.nav-item{font-size:15px;padding:14px 18px;border-radius:16px}.sidebar-footer{gap:24px}.profile{padding:16px;background:#0f172a80;border-radius:16px;border:1px solid rgba(148,163,184,.1)}.main-content{padding:32px 40px 40px;gap:32px;overflow-y:auto;max-height:100vh}.overview-grid{grid-template-columns:1.2fr .8fr;gap:28px}.summary-card{padding:32px;border-radius:32px}.summary-card h2{font-size:48px;margin:16px 0 12px}.summary-stats{gap:24px}.summary-stats h4{font-size:20px}.spending-section{gap:20px}.spending-grid{gap:16px}.spending-card{padding:20px;border-radius:20px}.spending-amount{font-size:22px}.transaction-toolbar{margin-bottom:8px}.transactions{padding:20px 24px}.transaction-header,.transaction-row{grid-template-columns:2fr 1fr .8fr .6fr .8fr;gap:20px}.transaction-icon{width:48px;height:48px}.insights{padding:24px}.insight-list{gap:16px}.insight-item{padding:20px}.history{padding:28px}.history-header,.history-row{grid-template-columns:2fr 1fr .8fr 1fr .8fr .8fr}}@media (min-width: 1400px){.app{grid-template-columns:300px 1fr}.main-content{padding:40px 48px 48px;max-width:1600px;margin:0 auto;width:100%}.overview-grid{grid-template-columns:1fr 1fr 1fr}.summary-card{grid-column:span 2}.spending-section{grid-column:span 1}.spending-grid{grid-template-columns:1fr}.transaction-header,.transaction-row{grid-template-columns:2fr 1fr .8fr .8fr .8fr .8fr}.insights{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.insights-header{grid-column:span 2;margin-bottom:0}.insight-list{grid-column:span 2}}.responsive-container{width:100%;max-width:100%;margin:0 auto;padding:0 16px}@media (min-width: 769px){.responsive-container{padding:0 24px}}@media (min-width: 1025px){.responsive-container{padding:0 32px;max-width:1400px}}@media (min-width: 1400px){.responsive-container{padding:0 48px;max-width:1600px}}.responsive-grid{display:grid;gap:16px}.responsive-grid-2,.responsive-grid-3,.responsive-grid-4{grid-template-columns:repeat(2,1fr)}@media (min-width: 769px){.responsive-grid-3{grid-template-columns:repeat(3,1fr)}.responsive-grid-4{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1025px){.responsive-grid{gap:20px}.responsive-grid-2{grid-template-columns:repeat(2,1fr)}}.responsive-heading{font-size:24px;font-weight:700}@media (min-width: 769px){.responsive-heading{font-size:28px}}@media (min-width: 1025px){.responsive-heading{font-size:32px}}.responsive-subheading{font-size:18px;font-weight:600}@media (min-width: 769px){.responsive-subheading{font-size:20px}}@media (min-width: 1025px){.responsive-subheading{font-size:22px}}.responsive-card{background:var(--surface);border-radius:20px;padding:20px;border:1px solid rgba(0,238,255,.1)}@media (min-width: 769px){.responsive-card{border-radius:24px;padding:24px}}@media (min-width: 1025px){.responsive-card{border-radius:28px;padding:28px}}.responsive-button{padding:12px 20px;font-size:14px;border-radius:12px}@media (min-width: 769px){.responsive-button{padding:14px 24px;font-size:15px;border-radius:14px}}@media (min-width: 1025px){.responsive-button{padding:16px 28px;font-size:16px}}.responsive-input{padding:14px 16px;font-size:15px;border-radius:12px}@media (min-width: 769px){.responsive-input{padding:16px 18px;font-size:16px}}.responsive-gap{gap:16px}@media (min-width: 769px){.responsive-gap{gap:20px}}@media (min-width: 1025px){.responsive-gap{gap:24px}}.responsive-padding{padding:16px}@media (min-width: 769px){.responsive-padding{padding:24px}}@media (min-width: 1025px){.responsive-padding{padding:32px}}.hide-mobile{display:none}@media (min-width: 769px){.hide-mobile{display:block}.hide-tablet-up{display:none}}@media (min-width: 1025px){.hide-tablet{display:none}.show-desktop{display:block}}@media (min-width: 769px){.modal-overlay{align-items:center;justify-content:center;padding:24px}.modal-content{max-width:520px;border-radius:24px;max-height:85vh}}@media (min-width: 1025px){.modal-content{max-width:600px}}.desktop-nav{display:none}@media (min-width: 1025px){.desktop-nav{display:flex;flex-direction:column;gap:8px}.desktop-nav-item{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:14px;color:#94a3b8;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease;border:none;background:transparent;text-align:left}.desktop-nav-item:hover{background:#1e293b99;color:#e2e8f0}.desktop-nav-item.active{background:#00eeff26;color:var(--primary);box-shadow:inset 0 0 0 1px #0ef6}.desktop-nav-icon{font-size:22px;display:flex;align-items:center;justify-content:center}}@media (min-width: 769px){.chart-container{height:300px}}@media (min-width: 1025px){.chart-container{height:350px}}@media (min-width: 769px){.responsive-list-item{padding:18px 20px}}@media (min-width: 1025px){.responsive-list-item{padding:20px 24px}}@media (min-width: 1025px){::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0f172a80;border-radius:4px}::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b880}.main-content::-webkit-scrollbar{width:10px}.main-content::-webkit-scrollbar-track{background:transparent}}@media (prefers-reduced-motion: no-preference){.responsive-transition{transition:background-color .3s cubic-bezier(.4,0,.2,1),color .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1)}}@media print{.mobile-dashboard,.mobile-bottom-nav,.sidebar,.mobile-fab{display:none!important}.app{display:block!important}.main-content{padding:20px;max-width:100%}}/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-slate-400:oklch(70.4% .04 256.788);--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:var(--accent)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.float-left{float:left}.m-1{margin:calc(var(--spacing)*1)}.m-2{margin:calc(var(--spacing)*2)}.m-3{margin:calc(var(--spacing)*3)}.m-4{margin:calc(var(--spacing)*4)}.m-5{margin:calc(var(--spacing)*5)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-3{margin-inline:calc(var(--spacing)*3)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-5{margin-inline:calc(var(--spacing)*5)}.my-1{margin-block:calc(var(--spacing)*1)}.my-2{margin-block:calc(var(--spacing)*2)}.my-3{margin-block:calc(var(--spacing)*3)}.my-4{margin-block:calc(var(--spacing)*4)}.my-5{margin-block:calc(var(--spacing)*5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-5{margin-top:calc(var(--spacing)*5)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-2{margin-right:calc(var(--spacing)*2)}.mr-3{margin-right:calc(var(--spacing)*3)}.mr-4{margin-right:calc(var(--spacing)*4)}.mr-5{margin-right:calc(var(--spacing)*5)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-3{margin-left:calc(var(--spacing)*3)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-5{margin-left:calc(var(--spacing)*5)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-10{height:calc(var(--spacing)*10)}.w-10{width:calc(var(--spacing)*10)}.flex-shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.border{border-style:var(--tw-border-style);border-width:1px}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-8{padding-block:calc(var(--spacing)*8)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-5{padding-top:calc(var(--spacing)*5)}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-3{padding-right:calc(var(--spacing)*3)}.pr-4{padding-right:calc(var(--spacing)*4)}.pr-5{padding-right:calc(var(--spacing)*5)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-5{padding-bottom:calc(var(--spacing)*5)}.pl-1{padding-left:calc(var(--spacing)*1)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-5{padding-left:calc(var(--spacing)*5)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-primary{color:var(--color-primary)}.text-slate-400{color:var(--color-slate-400)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:text-primary\/80:hover{color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.hover\:text-primary\/80:hover{color:color-mix(in oklab,var(--color-primary)80%,transparent)}}}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}:root{--primary: var(--accent);--primary-dim: var(--accent-strong);--primary-rgb: 111, 184, 255;--background-dark: #000000;--background-light: #f5f8f8;--surface: #121417;--surface-highlight: #1E2125;--bg: #0B0F14;--panel: #181d24;--panel-2: #1d232b;--panel-hover: #20262e;--border: #262d35;--border-strong: #2f3742;--divider: #20262e;--text: #f2f4f6;--text-2: #dee2e6;--text-dim: #9fa6ae;--text-faint: #6e7680;--text-whisper: #585f68;--accent: #6fb8ff;--accent-strong: #84c8ff;--accent-active: #a2d4ff;--accent-border: #2f6aa6;--accent-border-strong: #4684c4;--income: oklch(.72 .15 155);--income-strong: oklch(.78 .13 155);--danger: oklch(.68 .18 28);--warning: oklch(.8 .14 78);--success: #00C853;--error: #FF6B8A;--error-muted: #E57373;--text-primary: #ffffff;--text-secondary: #eef2f6;--text-muted: #94a3b8;--card-bg: var(--panel);--card-border: var(--border);--shadow-neon: none;--shadow-neon-sm: none;font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;color:var(--text);background-color:var(--bg);color-scheme:dark;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--font-body: "Figtree", "Manrope", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "Azeret Mono", ui-monospace, SFMono-Regular, Menlo, "Courier New", monospace}[data-font-theme=terminal]{--font-body: "Manrope", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "Martian Mono", ui-monospace, SFMono-Regular, Menlo, "Courier New", monospace}:root[data-theme=light]{--bg: #fef7ec;--panel: #ffffff;--panel-2: #f9efdd;--panel-hover: #f3e7d0;--border: #ecddc0;--border-strong: #d8c49e;--divider: #efe2c7;--text: #24201a;--text-2: #3b342a;--text-dim: #6b5f4c;--text-faint: #8f8165;--text-whisper: #a89978;--accent: oklch(.52 .14 242);--accent-strong: oklch(.46 .15 242);--accent-active: oklch(.4 .16 242);--accent-border: oklch(.7 .1 242);--accent-border-strong: oklch(.6 .13 242);--income: oklch(.46 .17 155);--income-strong: oklch(.4 .17 155);--danger: oklch(.5 .2 28);--warning: oklch(.58 .16 70);--success: #0a8a4a;--error: #c63754;--error-muted: #b14d4d;color-scheme:light}[data-font-theme=editorial]{--font-body: "Satoshi", "Manrope", ui-sans-serif, system-ui, sans-serif;--font-mono: "Fragment Mono", ui-monospace, SFMono-Regular, Menlo, monospace}[data-font-theme=grotesque]{--font-body: "General Sans", "Manrope", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}[data-font-theme=warm]{--font-body: "Figtree", "Manrope", ui-sans-serif, system-ui, sans-serif;--font-mono: "Azeret Mono", ui-monospace, SFMono-Regular, Menlo, monospace}[data-font-theme=civic]{--font-body: "Public Sans", "Manrope", ui-sans-serif, system-ui, sans-serif;--font-mono: "Red Hat Mono", ui-monospace, SFMono-Regular, Menlo, monospace}.font-theme-toggle{position:fixed;bottom:calc(env(safe-area-inset-bottom,0px) + 80px);left:12px;z-index:700;display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 8px;border-radius:999px;background:var(--panel);border:1px solid var(--border-strong);color:var(--text-2);font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:border-color .15s cubic-bezier(.22,1,.36,1),background .15s cubic-bezier(.22,1,.36,1);-webkit-tap-highlight-color:transparent}.font-theme-toggle:hover,.font-theme-toggle:active{border-color:var(--accent-border-strong);background:var(--panel-hover)}.font-theme-toggle-prefix{font-family:var(--font-body);font-size:12px;font-weight:700;text-transform:none;letter-spacing:-.02em;color:var(--accent-strong)}.font-theme-toggle-label{white-space:nowrap}.font-theme-toggle-arrow{color:var(--text-faint);font-size:11px}.font-theme-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:699}.font-theme-panel{position:fixed;bottom:calc(env(safe-area-inset-bottom,0px) + 118px);left:12px;z-index:701;width:220px;padding:6px;background:var(--panel);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 12px 28px #0006;display:flex;flex-direction:column;gap:2px;animation:font-theme-panel-in .2s cubic-bezier(.22,1,.36,1)}@keyframes font-theme-panel-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.font-theme-panel-head{padding:8px 10px 6px;font-family:var(--font-mono);font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint)}.font-theme-option{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;width:100%;padding:10px;background:transparent;border:none;border-radius:6px;color:var(--text-2);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .12s cubic-bezier(.22,1,.36,1);text-align:left}.font-theme-option:hover,.font-theme-option.is-active{background:#131c21}.font-theme-option-sample{font-size:17px;font-weight:600;letter-spacing:-.015em;color:#eff2f5;line-height:1}.font-theme-option-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.font-theme-option-label{font-family:var(--font-mono);font-size:9.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.font-theme-option-num{font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;color:#a7afb4;letter-spacing:-.005em}.font-theme-option-check{color:var(--accent-strong);font-size:12px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);overflow-x:hidden;min-height:100vh;min-height:100dvh}#root{min-height:100vh;min-height:100dvh}button,input{font-family:inherit}:where(a,button,[role=button],input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:inherit}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.app{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:linear-gradient(180deg,rgba(18,20,23,.98),var(--background-dark));border-right:1px solid rgba(255,255,255,.05);padding:28px 20px 24px;display:flex;flex-direction:column;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;gap:12px;margin-bottom:32px}.brand-icon{width:44px;height:44px;border-radius:14px;background:rgba(var(--primary-rgb),.2);display:grid;place-items:center;color:var(--primary);font-size:20px}.brand-title{margin:0;font-weight:700;letter-spacing:.08em}.brand-subtitle{margin:2px 0 0;font-size:11px;color:var(--primary);text-transform:uppercase;letter-spacing:.18em}.nav{display:flex;flex-direction:column;gap:8px}.nav-item{border:none;background:transparent;color:#cbd5f5;font-size:15px;padding:12px 16px;border-radius:14px;text-align:left;cursor:pointer;transition:.2s ease}.nav-item:hover{background:#1e293b99}.nav-item.active{background:rgba(var(--primary-rgb),.15);color:var(--primary);box-shadow:inset 0 0 0 1px rgba(var(--primary-rgb),.4)}.sidebar-footer{display:flex;flex-direction:column;gap:20px}.profile{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.avatar{width:40px;height:40px;border-radius:50%;background:var(--accent);display:grid;place-items:center;font-weight:600}.profile-name{margin:0;font-weight:600}.profile-plan{margin:2px 0 0;font-size:12px;color:var(--text-muted)}.main-content{padding:32px 40px 64px;display:flex;flex-direction:column;gap:28px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:24px}.topbar h1{margin:0 0 6px;font-size:28px}.topbar-subtitle{margin:0;color:#94a3b8}.topbar-actions{display:flex;align-items:center;gap:12px}.search-field{display:flex;align-items:center;gap:8px;background:#0f172ab3;border-radius:999px;padding:8px 14px;border:1px solid var(--border-strong)}.search-field input{background:transparent;border:none;color:#e2e8f0;outline:none;width:220px}.search-field.history-search input{width:280px}.overview-grid{display:grid;grid-template-columns:minmax(320px,1.2fr) minmax(320px,1fr);gap:24px}.summary-card{background:linear-gradient(180deg,#1e293bcc,#0f172af2);border-radius:28px;padding:28px;box-shadow:0 20px 45px #00000073}.summary-header{display:flex;justify-content:space-between}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:#94a3b8}.status-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:rgba(var(--primary-rgb),.15);color:var(--primary);font-size:12px;font-weight:600}.summary-card h2{margin:12px 0 8px;font-size:42px}.summary-meta{margin:0;color:#94a3b8;display:flex;gap:12px;align-items:center}.trend{background:#10b98133;color:#34d399;padding:4px 10px;border-radius:999px;font-weight:600;font-size:12px}.summary-divider{height:1px;background:var(--border-strong);margin:24px 0}.summary-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.summary-stats p{margin:0;color:#94a3b8;font-size:12px}.summary-stats h4{margin:6px 0 0;font-size:18px}.spending-section{display:flex;flex-direction:column;gap:16px}.spending-header{display:flex;justify-content:space-between;align-items:center}.spending-header h2{margin:0 0 6px}.spending-header p{margin:0;color:#94a3b8}.spending-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.spending-card{background:#0f172ab3;border-radius:20px;padding:18px;border:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.spending-card-top{display:flex;justify-content:space-between;align-items:center}.spending-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;font-size:18px}.spending-status{font-size:12px;color:#94a3b8}.spending-card h3{margin:0;font-size:16px}.spending-amount{margin:0;font-size:20px;font-weight:600}.spending-bar{height:6px;background:var(--border);border-radius:999px;overflow:hidden}.spending-bar span{display:block;height:100%;border-radius:999px}.spending-card.teal .spending-icon,.spending-card.teal .spending-bar span{background:rgba(var(--primary-rgb),.35)}.spending-card.green .spending-icon,.spending-card.green .spending-bar span{background:#22c55e59}.spending-card.amber .spending-icon,.spending-card.amber .spending-bar span{background:#fbbf2459}.spending-card.rose .spending-icon,.spending-card.rose .spending-bar span{background:#f43f5e59}.transaction-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px}.transaction-toolbar h2{margin:0 0 6px}.transaction-toolbar p{margin:0;color:#94a3b8}.toolbar-actions{display:flex;gap:16px;align-items:flex-end}.field-group{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#94a3b8}.field-group.inline input{min-width:150px}input{border-radius:10px;border:1px solid var(--border-strong);padding:8px 12px;background:#0f172a99;color:#e2e8f0}.toolbar-buttons{display:flex;gap:10px;flex-wrap:wrap}.button{border-radius:999px;border:none;padding:10px 16px;font-weight:600;cursor:pointer;transition:.2s ease;font-size:13px}.button.primary{background:var(--primary);color:var(--background-dark)}.button.ghost{background:#0f172a99;color:#e2e8f0;border:1px solid var(--border-strong)}.button.ghost.filter-active{background:#4b7bf526;color:#4b7bf5;border-color:#4b7bf5}.button.full{width:100%;justify-content:center}.button:hover{transform:translateY(-1px)}.icon-button{background:#0f172a99;border:1px solid var(--border-strong);color:#e2e8f0;border-radius:12px;padding:8px 12px;cursor:pointer;display:flex;align-items:center;justify-content:center}.icon-button.active{border-color:rgba(var(--primary-rgb),.6);color:var(--primary)}.transactions{background:#0f172ab3;border-radius:20px;padding:16px 20px;border:1px solid var(--border);box-shadow:0 16px 30px #0000004d}.transaction-header{display:grid;grid-template-columns:1.6fr 1fr .8fr .6fr;gap:16px;color:#94a3b8;font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:0 8px 12px}.transaction-list{display:flex;flex-direction:column;gap:12px}.transaction-row{display:grid;grid-template-columns:1.6fr 1fr .8fr .6fr;gap:16px;align-items:center;padding:14px 8px;border-radius:16px;background:#080c1299;border:1px solid var(--border)}.transaction-main{display:flex;align-items:center;gap:12px}.transaction-icon{width:42px;height:42px;border-radius:14px;background:#1e293be6;display:grid;place-items:center;font-size:18px}.transaction-merchant{margin:0 0 4px;font-weight:600}.transaction-meta{margin:0;font-size:12px;color:#94a3b8}.transaction-category{display:flex;flex-direction:column;gap:6px}.transaction-tag{background:rgba(var(--primary-rgb),.15);color:var(--primary);border-radius:999px;padding:4px 10px;font-size:12px;width:fit-content}.transaction-status{font-size:12px;color:#94a3b8}.transaction-status.synced{color:var(--primary)}.transaction-status.manual{color:#fbbf24}.transaction-amount{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.amount{font-size:16px;font-weight:600}.amount.expense{color:var(--error)}.amount.income{color:#34d399}.transaction-actions{display:flex;justify-content:flex-end;gap:8px}.edit-fields{display:grid;gap:6px}.pill{background:#fbbf2433;color:#fbbf24;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;width:fit-content}.insights{background:#0f172ab3;border-radius:20px;padding:20px;border:1px solid var(--border)}.insights-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.insights-header h2{margin:0 0 6px}.insights-header p{margin:0;color:#94a3b8}.insight-list{display:grid;gap:16px}.insight-item{display:flex;justify-content:space-between;gap:16px;padding:16px;border-radius:16px;border:1px solid var(--border);background:#080c1299}.insights-page{padding:24px 20px 120px;color:#e2e8f0}.insights-loading,.insights-error{padding:40px;text-align:center;color:#94a3b8}.insights-error{color:var(--error)}.insights-retry{display:block;margin:20px auto 0;background:transparent;border:1px solid var(--border-strong);color:var(--text);padding:8px 16px;border-radius:10px}.insights-hero{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.insights-hero h2{margin:4px 0;font-size:24px}.insights-hero-label{margin:0;font-size:12px;letter-spacing:.2em;color:#38bdf8;text-transform:uppercase;font-weight:600}.insights-hero-subtitle{margin:0;color:#94a3b8;font-size:13px}.insights-icon-button{width:42px;height:42px;border-radius:50%;border:1px solid var(--border-strong);background:#0f172ab3;color:#e2e8f0;display:grid;place-items:center}.insights-toggle{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:16px}.insights-toggle-button{border-radius:999px;border:1px solid var(--border-strong);background:#0f172a80;color:#94a3b8;font-size:12px;font-weight:600;padding:8px 12px}.insights-toggle-button.is-active{background:#3b82f633;color:var(--text);border-color:#3b82f680;box-shadow:0 0 18px #3b82f640}.insights-grid{display:flex;flex-direction:column;gap:18px}.insights-card{background:#0a0f18e6;border-radius:20px;padding:18px;border:1px solid var(--border);box-shadow:0 10px 24px #080c1266}.insights-summary-card{background:var(--panel);border:1px solid var(--border)}.insights-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.insights-card-label{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);font-weight:600}.insights-chip{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#6bc3f4;background:transparent;border:1px solid var(--accent-border);border-radius:2px;padding:3px 6px;font-weight:500}.insights-meta{font-size:12px;color:#94a3b8}.insights-summary-text{margin:0;font-size:13px;line-height:1.6;color:#cbd5f5}.insights-forecast-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.insights-forecast-value{font-family:var(--font-mono);font-size:22px;font-weight:500;letter-spacing:-.015em;color:var(--text);margin-top:6px;font-variant-numeric:tabular-nums}.insights-forecast-subtitle{margin:4px 0 0;color:#94a3b8;font-size:12px}.insights-pill{font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.04em;padding:0;border-radius:0;background:transparent;border:none;color:var(--text-faint);font-variant-numeric:tabular-nums;white-space:nowrap}.insights-pill.positive{color:var(--income-strong)}.insights-pill.negative{color:var(--danger)}.insights-sparkline{margin-top:14px}.insights-sparkline svg{width:100%;height:80px}.insights-sparkline-path{fill:none;stroke:#3b82f6;stroke-width:4;stroke-linecap:round;filter:drop-shadow(0 0 8px rgba(59,130,246,.5))}.insights-sparkline-dot{fill:#0f172a;stroke:#3b82f6;stroke-width:4}.insights-sparkline-labels{display:flex;justify-content:space-between;font-size:11px;color:#64748b;margin-top:6px}.insights-split-card{position:relative}.insights-period-pill{position:absolute;top:18px;right:18px;font-size:11px;color:#38bdf8;background:#38bdf81f;border-radius:999px;padding:4px 10px;font-weight:600}.insights-split-row{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}.insights-split-row p{margin:0;font-size:12px;color:#94a3b8}.insights-split-value{font-size:16px;font-weight:600;color:var(--text)}.insights-split-bar{width:100%;height:8px;border-radius:999px;background:var(--border-strong);overflow:hidden}.insights-split-bar span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.insights-split-bar.is-weekend span{background:var(--warning)}.insights-merchant-card{padding-bottom:14px}.insights-merchant-list{display:flex;flex-direction:column;margin-top:12px}.insights-merchant-item{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:12px;padding:8px 0;border-top:1px solid var(--border);background:transparent;border-radius:0;border-left:none;border-right:none;border-bottom:none;transition:none}.insights-merchant-item:first-child{border-top:none;padding-top:2px}.insights-merchant-item:hover{background:transparent;border-color:var(--border);border-top-color:var(--border)}.merchant-name{margin:0;font-family:var(--font-body);font-size:13px;font-weight:500;color:var(--text);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.merchant-stats{font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--text-dim);font-variant-numeric:tabular-nums;letter-spacing:-.005em;text-align:right;white-space:nowrap}.insights-expenses-card strong{color:var(--text);font-weight:500}.insights-expenses-list{display:flex;flex-direction:column;margin-top:12px}.insights-expense-item{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:12px;padding:10px 0;border-top:1px solid var(--border);background:transparent;border-radius:0;border-left:none;border-right:none;border-bottom:none}.insights-expense-item:first-child{border-top:none;padding-top:2px}.insights-expense-item>div{min-width:0;display:flex;flex-direction:column;gap:2px}.insights-expense-item p{margin:0;font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--text);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insights-expense-item span{font-family:var(--font-mono);font-size:10.5px;font-weight:400;color:var(--text-faint);letter-spacing:.02em;font-variant-numeric:tabular-nums}.insights-expense-item strong{font-family:var(--font-mono);font-size:14px;font-weight:500;color:var(--text-2);font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap}.insights-week-nav{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-top:4px}.insights-week-nav-btn{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-strong);border-radius:4px;color:#a7afb4;font-family:var(--font-mono);font-size:12px;line-height:1;cursor:pointer;padding:0;transition:border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1)}.insights-week-nav-btn:hover:not(:disabled){border-color:#1c6589;color:#9ad7fb}.insights-week-nav-btn:disabled{opacity:.3;cursor:not-allowed}.insights-week-nav-label{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.04em;color:var(--text-dim);font-variant-numeric:tabular-nums;min-width:12ch}.insights-savings-card{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--border)}.insights-savings-card p{margin:4px 0 0;font-family:var(--font-body);color:#b8bfc3;font-size:13px;line-height:1.5}.insights-savings-card .material-symbols-outlined{color:#4a99c3;font-size:20px}.insights-alerts{display:flex;flex-direction:column;gap:12px}.insights-alert-card{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px;border-radius:14px;background:var(--panel);border:1px solid var(--border)}.insights-alert-card h4{margin:6px 0;font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--text);letter-spacing:-.005em}.insights-alert-card p{margin:0;font-family:var(--font-body);font-size:12.5px;line-height:1.5;color:var(--text-dim)}.insights-alert-card button{background:transparent;border:1px solid var(--accent-border);color:var(--accent-strong);border-radius:4px;padding:5px 12px;font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .15s,color .15s}.insights-alert-card button:hover{border-color:var(--accent-border-strong);color:var(--accent-active)}.insights-alert-tag{display:inline-block;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--danger);font-weight:600}.insights-budget-card{background:var(--panel);border:1px solid var(--border)}.insights-budget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.insights-budget-status{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.insights-budget-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:24px 16px;text-align:center;color:#64748b}.insights-budget-empty p{margin:0;font-size:14px;font-weight:600;color:#94a3b8}.insights-budget-empty span{font-size:12px}.insights-budget-flow{display:flex;align-items:center;gap:6px;margin-bottom:16px}.insights-budget-flow-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:8px 4px;border-radius:10px;background:#0f172a99;border:1px solid var(--border)}.insights-budget-flow-item.highlight{border-color:#0ef3;background:#00eeff0f}.insights-budget-flow-label{font-size:10px;color:#94a3b8;margin-bottom:2px}.insights-budget-flow-value{font-size:13px;font-weight:700;color:var(--text)}.insights-budget-flow-op{font-size:14px;font-weight:700;color:#64748b;flex-shrink:0}.insights-budget-progress{margin-bottom:16px}.insights-budget-progress-bg{position:relative;height:8px;border-radius:4px;background:var(--border);overflow:hidden}.insights-budget-progress-fill{position:absolute;top:0;left:0;height:100%;border-radius:4px;transition:width .6s ease}.insights-budget-progress-labels{display:flex;justify-content:space-between;margin-top:6px;font-size:10px;color:#64748b}.insights-budget-hero{text-align:center;margin-bottom:16px}.insights-budget-hero-value{display:block;font-size:28px;font-weight:800;line-height:1.2}.insights-budget-hero-label{font-size:12px;color:#94a3b8}.insights-budget-metrics{display:flex;gap:8px;margin-bottom:12px}.insights-budget-metric{flex:1;display:flex;flex-direction:column;align-items:center;padding:10px 4px;border-radius:12px;background:#0f172a99;border:1px solid var(--border)}.insights-budget-metric-value{font-size:14px;font-weight:700;color:var(--text)}.insights-budget-metric-label{font-size:9px;color:#94a3b8;margin-top:2px;text-align:center}.insights-budget-insight{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:#00eeff0f;border:1px solid rgba(0,238,255,.12);font-size:12px;color:#94a3b8;margin-bottom:12px}.insights-budget-insight strong{color:var(--text)}.insights-budget-fixed{margin-bottom:12px}.insights-budget-fixed-title{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-bottom:8px;font-weight:600}.insights-budget-fixed-item{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--divider)}.insights-budget-fixed-item:last-child{border-bottom:none}.insights-budget-fixed-name{font-size:12px;color:#e2e8f0}.insights-budget-fixed-amount{font-size:12px;font-weight:600;color:var(--text)}.insights-budget-fixed-freq{font-weight:400;color:#64748b;font-size:10px}.insights-pace-streak{display:flex;align-items:center;gap:6px;margin-top:12px;padding:8px 12px;border-radius:10px;background:#00c8531a;border:1px solid rgba(0,200,83,.2);font-size:12px;color:#00c853;font-weight:600}.insights-pace-streak-fire{font-size:16px}.insights-recurring-card{padding-bottom:10px}.insights-recurring-summary{display:flex;gap:12px;margin-top:12px;margin-bottom:16px}.insights-recurring-stat{flex:1;display:flex;flex-direction:column;align-items:center;padding:10px 8px;border-radius:12px;background:#0f172a99;border:1px solid var(--border)}.insights-recurring-stat-value{font-size:16px;font-weight:700;color:var(--text)}.insights-recurring-stat-label{font-size:10px;color:#94a3b8;margin-top:2px;text-align:center}.insights-recurring-list{display:flex;flex-direction:column;gap:10px}.insights-recurring-item{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:14px;background:#0f172a99;border:1px solid var(--border);transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease}.insights-recurring-item:hover{background:#1e293bcc;border-color:#0ef3}.insights-recurring-info{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.insights-recurring-merchant{font-size:14px;font-weight:600;color:var(--text);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.insights-recurring-meta{display:flex;align-items:center;gap:6px;font-size:11px;color:#94a3b8}.insights-recurring-frequency{display:inline-block;padding:1px 6px;border-radius:4px;background:#00eeff26;color:var(--primary, #00EEFF);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.insights-recurring-amount{text-align:right;flex-shrink:0}.insights-recurring-amount-value{font-size:14px;font-weight:700;color:var(--text)}.insights-recurring-next{font-size:10px;color:#64748b;margin-top:2px}.loading{color:#94a3b8;font-size:14px}.history{display:flex;flex-direction:column;gap:20px;padding:24px;border-radius:24px;background:#090c12cc;border:1px solid var(--border)}.history-topbar{display:flex;justify-content:space-between;gap:24px;align-items:center}.history-title h2{margin:0 0 6px;font-size:26px}.history-title p{margin:0;color:#94a3b8}.history-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.profile-chip{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:999px;background:#0f172ab3;border:1px solid var(--border);font-size:13px;font-weight:600}.history-overview{display:flex;justify-content:space-between;align-items:center;gap:16px}.history-overview h3{margin:0;font-size:22px}.history-overview h3 span{color:#94a3b8;font-weight:400}.history-export{display:flex;gap:8px}.history-table{background:#080c12b3;border-radius:22px;padding:16px;border:1px solid var(--border)}.history-header{display:grid;grid-template-columns:1.6fr 1fr .8fr 1fr .8fr;gap:12px;padding:4px 8px 16px;font-size:12px;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em}.history-rows{display:flex;flex-direction:column;gap:12px}.history-row{display:grid;grid-template-columns:1.6fr 1fr .8fr 1fr .8fr;gap:12px;align-items:center;background:#0c1018e6;border-radius:16px;padding:14px 8px;border:1px solid var(--border)}.history-merchant{display:flex;align-items:center;gap:12px}.history-merchant p{margin:0 0 4px;font-weight:600}.history-merchant span{font-size:12px;color:#94a3b8}.history-tag{display:inline-flex;padding:4px 10px;border-radius:999px;background:rgba(var(--primary-rgb),.12);color:var(--primary);font-size:11px;font-weight:600}.history-status{font-size:12px;display:inline-flex;align-items:center;gap:6px}.history-status.synced{color:var(--primary)}.history-status.manual{color:#fbbf24}.history-amount{font-weight:600;font-size:15px}.history-amount.expense{color:var(--error)}.history-amount.income{color:#34d399}.history-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 8px 4px;color:#94a3b8;font-size:12px}.pagination{display:flex;gap:6px}.insights-bar-chart{display:flex;align-items:flex-end;gap:8px;height:120px;margin-top:14px;padding:0 4px}.insights-bar-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease;position:relative}.insights-bar-item:hover .insights-bar{transform:scaleY(1.05)}.insights-bar-item.is-selected .insights-bar{background:var(--accent-strong)}.insights-bar-item.is-selected .insights-bar-label{color:var(--accent-strong);font-weight:700}.insights-bar-container{width:100%;height:80px;display:flex;align-items:flex-end}.insights-bar{width:100%;background:#0f5c80;border-radius:1px 1px 0 0;transition:background .2s cubic-bezier(.22,1,.36,1),width .3s cubic-bezier(.22,1,.36,1);min-height:3px}.insights-bar-label{font-family:var(--font-mono);font-size:10px;color:var(--text-faint);letter-spacing:.05em;font-variant-numeric:tabular-nums;font-weight:500}.insights-bar-value{position:absolute;top:-22px;left:50%;transform:translate(-50%);font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:-.005em;color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums;background:transparent;padding:0;border-radius:0;border:none}.insights-bar-hint{position:absolute;top:-8px;left:50%;transform:translate(-50%);font-size:9px;color:#ffffff80;white-space:nowrap}.insights-bar-hint{font-size:9px;color:#ffffff80;position:absolute;top:-8px;left:50%;transform:translate(-50%);white-space:nowrap}.insights-monthly-bar-chart{display:flex;align-items:flex-end;gap:4px;height:120px;margin-top:14px;padding:0 4px;overflow-x:auto;-webkit-overflow-scrolling:touch}.insights-monthly-bar-chart::-webkit-scrollbar{display:none}.insights-monthly-bar-item{flex:1;min-width:16px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;position:relative}.insights-monthly-bar-item .insights-bar-container{width:100%;height:70px;display:flex;align-items:flex-end}.insights-monthly-bar-item .insights-bar{width:100%;background:#134e6a;border-radius:1px 1px 0 0;min-height:2px;transition:background .15s cubic-bezier(.22,1,.36,1)}.insights-monthly-bar-item:hover .insights-bar{background:var(--accent-border-strong)}.insights-monthly-bar-item.is-selected .insights-bar{background:var(--accent-strong);box-shadow:none}.insights-monthly-bar-item .insights-bar-label{font-family:var(--font-mono);font-size:9.5px;color:#626a6f;font-weight:400;letter-spacing:.02em;font-variant-numeric:tabular-nums}.insights-monthly-bar-item.is-selected .insights-bar-label{color:#9ad7fb;font-weight:600}.insights-monthly-bar-item .insights-bar-value{position:absolute;top:-24px;left:50%;transform:translate(-50%);font-size:11px;font-weight:700;color:#60a5fa;white-space:nowrap;background:#3b82f626;padding:3px 6px;border-radius:4px;border:1px solid rgba(59,130,246,.3)}.insights-money-flow-card{background:var(--panel)}.insights-money-flow-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.insights-money-flow-item{display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;background:#0f172a99;border:1px solid var(--border)}.insights-money-flow-item .material-symbols-outlined{font-size:24px;padding:8px;border-radius:10px}.insights-money-flow-item.income .material-symbols-outlined{color:#34d399;background:#34d39926}.insights-money-flow-item.expense .material-symbols-outlined{color:#f87171;background:#f8717126}.insights-money-flow-label{margin:0;font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.insights-money-flow-value{margin:4px 0 0;font-size:16px;font-weight:700;color:var(--text)}.insights-net-savings{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding-top:14px;border-top:1px solid var(--border);font-size:13px;color:#94a3b8}.insights-net-value{font-weight:700;font-size:15px}.insights-net-value.positive{color:#34d399}.insights-net-value.negative{color:#f87171}.insights-quick-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.insights-stat-card{display:flex;align-items:center;gap:12px;padding:16px}.insights-stat-card .material-symbols-outlined{font-size:22px;color:#38bdf8;background:#38bdf81f;padding:10px;border-radius:12px}.insights-stat-value{margin:0;font-size:15px;font-weight:700;color:var(--text)}.insights-stat-label{margin:2px 0 0;font-size:11px;color:#94a3b8}.insights-category-card{padding-bottom:14px}.insights-category-bars{display:flex;flex-direction:column;gap:14px;margin-top:16px}.insights-category-bar-item{display:flex;flex-direction:column;gap:6px}.insights-category-bar-header{display:flex;align-items:center;gap:8px}.insights-category-bar-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--accent)}.insights-category-bar-name{flex:1;font-size:13px;color:#e2e8f0;font-weight:500}.insights-category-bar-amount{font-size:13px;color:var(--text);font-weight:600}.insights-category-bar-track{height:6px;background:var(--border);border-radius:999px;overflow:hidden}.insights-category-bar-fill{height:100%;border-radius:999px;background:var(--accent);transition:width .3s cubic-bezier(.22,1,.36,1)}.insights-category-bar-percent{font-size:11px;color:#94a3b8;align-self:flex-end}.period-selector{margin-bottom:16px;border-radius:8px;background:var(--panel);border:1px solid var(--border);overflow:hidden}.period-selector-header{display:flex;align-items:center;gap:12px;padding:12px 14px;width:100%;background:transparent;border:none;color:var(--text);cursor:pointer;transition:background .15s cubic-bezier(.22,1,.36,1)}.period-selector-header:hover{background:var(--panel-2)}.period-selector-header.is-expanded{border-bottom:1px solid var(--border)}.period-selector-icon{color:var(--accent)}.period-selector-text{flex:1;text-align:left}.period-selector-label{display:block;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);font-weight:600;margin-bottom:2px}.period-selector-value{display:block;font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--text);letter-spacing:-.005em}.period-selector-options{padding:8px}.period-selector-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 14px;background:transparent;border:none;border-radius:12px;color:#94a3b8;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.period-selector-option:hover{background:var(--border);color:#e2e8f0}.period-selector-option.is-selected{background:#00eeff14;color:var(--primary)}.period-option-check{color:var(--primary)}.period-option-arrow{color:var(--primary);opacity:.7}.datepicker-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;z-index:1000;display:flex;align-items:flex-end;justify-content:center}.datepicker-modal{background:var(--panel);width:100%;max-width:420px;border-radius:24px 24px 0 0;padding:20px 20px 32px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.datepicker-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.datepicker-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:8px;border-radius:8px;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.datepicker-close-btn:hover{background:var(--border);color:#e2e8f0}.datepicker-mode-toggle{flex:1;display:flex;background:#0f172a99;border-radius:999px;padding:4px;max-width:200px;margin:0 auto}.datepicker-mode-btn{flex:1;padding:8px 16px;background:transparent;border:none;border-radius:999px;color:#64748b;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.datepicker-mode-btn.is-active{background:var(--primary);color:#0a0f18}.datepicker-range-display{text-align:center;margin-bottom:4px}.datepicker-date{font-size:28px;font-weight:700;color:var(--text)}.datepicker-separator{font-size:24px;color:#64748b;margin:0 12px}.datepicker-days-count{text-align:center;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#64748b;font-weight:600;margin-bottom:20px}.datepicker-presets{display:flex;gap:8px;justify-content:center;margin-bottom:20px;flex-wrap:wrap}.datepicker-preset-btn{padding:8px 14px;background:#0f172acc;border:1px solid var(--border-strong);border-radius:999px;color:#94a3b8;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.datepicker-preset-btn:hover{background:#00eeff1a;border-color:#00eeff4d;color:var(--primary)}.datepicker-calendar{background:#0f172a80;border-radius:16px;padding:16px;margin-bottom:20px}.datepicker-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.datepicker-nav-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:8px;border-radius:8px;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.datepicker-nav-btn:hover:not(:disabled){background:var(--border);color:#e2e8f0}.datepicker-nav-btn:disabled{opacity:.3;cursor:not-allowed}.datepicker-month-label{font-size:15px;font-weight:600;color:#e2e8f0}.datepicker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.datepicker-weekday{text-align:center;font-size:11px;font-weight:600;color:#64748b;padding:8px 0}.datepicker-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.datepicker-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:#e2e8f0;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s,transform .15s,opacity .15s}.datepicker-day:hover:not(.is-disabled):not(.datepicker-day-empty){background:var(--border)}.datepicker-day.datepicker-day-empty{cursor:default}.datepicker-day.is-today{border:1px solid var(--border-strong)}.datepicker-day.is-start,.datepicker-day.is-end{background:var(--primary);color:#0a0f18;font-weight:700}.datepicker-day.in-range{background:#00eeff26;border-radius:0}.datepicker-day.is-start{border-radius:50% 0 0 50%}.datepicker-day.is-end{border-radius:0 50% 50% 0}.datepicker-day.is-start.is-end{border-radius:50%}.datepicker-day.is-disabled{color:#475569;cursor:not-allowed}.datepicker-apply-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 24px;background:var(--primary);border:none;border-radius:14px;color:#0a0f18;font-size:15px;font-weight:700;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .2s,opacity .2s}.datepicker-apply-btn:hover:not(:disabled){background:#00d4e8;transform:translateY(-1px)}.datepicker-apply-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1100px){.app{grid-template-columns:1fr}.sidebar{flex-direction:row;align-items:center}.overview-grid,.transaction-header,.transaction-row{grid-template-columns:1fr}.transaction-actions{justify-content:flex-start}.toolbar-actions{flex-direction:column;align-items:flex-start}}.desktop-page-container{display:flex;flex-direction:column;gap:24px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.desktop-page-header{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.desktop-page-header h1{margin:0;font-size:28px;font-weight:700;color:var(--text)}.desktop-page-header p{margin:0;color:#94a3b8;font-size:14px}.text-muted{color:#94a3b8}.desktop-nav{display:flex;flex-direction:column;gap:6px}.desktop-nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;color:#94a3b8;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,opacity .2s ease;border:none;background:transparent;text-align:left}.desktop-nav-item:hover{background:#1e293b99;color:#e2e8f0}.desktop-nav-item.active{background:#00eeff26;color:var(--primary);box-shadow:inset 0 0 0 1px #0ef6}.desktop-nav-icon{font-size:22px;display:flex;align-items:center;justify-content:center;width:24px;height:24px}@media (max-width: 1024px){.app{display:none!important}}@media (min-width: 1025px){.app{display:grid!important}}.accounts-page{padding:28px 20px 120px;color:var(--text-2);position:relative;min-height:100vh;background:var(--bg)}.accounts-loading,.accounts-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:16px;color:#94a3b8}.accounts-retry{padding:8px 16px;border-radius:8px;background:rgba(var(--primary-rgb),.2);color:var(--primary);border:1px solid rgba(var(--primary-rgb),.3);cursor:pointer}.accounts-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.accounts-hero h2{margin:4px 0 2px;font-family:var(--font-body);font-size:26px;font-weight:600;letter-spacing:-.02em;color:var(--text)}.accounts-hero-label{margin:0;font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.14em;color:var(--text-faint);text-transform:uppercase}.accounts-hero-subtitle{margin:0;font-family:var(--font-body);color:var(--text-dim);font-size:13px}.accounts-icon-button{width:40px;height:40px;border-radius:8px;border:1px solid var(--border);background:var(--panel);color:var(--text-dim);display:grid;place-items:center;cursor:pointer;position:relative;transition:border-color .15s cubic-bezier(.22,1,.36,1);flex-shrink:0}.accounts-icon-button:hover{border-color:var(--border-strong)}.accounts-icon-button:after{content:"";position:absolute;width:6px;height:6px;border-radius:999px;background:var(--accent-strong);top:7px;right:7px}.accounts-toggle{display:none}.accounts-summary{display:grid;grid-template-columns:auto 1fr;gap:14px 18px;margin:4px 0 22px;padding:14px 16px;background:var(--panel);border:1px solid var(--border);border-radius:10px}.accounts-stat{display:flex;flex-direction:column;gap:4px;background:transparent;border:none;border-radius:0;padding:0;box-shadow:none}.accounts-stat:last-child{align-items:flex-end;text-align:right}.accounts-stat-label{display:block;font-family:var(--font-mono);font-size:10px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.14em;font-weight:600}.accounts-stat-value{font-family:var(--font-mono);font-size:20px;font-weight:500;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.accounts-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#64748b}.accounts-empty .material-symbols-outlined{font-size:48px;margin-bottom:16px;opacity:.5}.accounts-empty p{margin:0 0 8px;font-size:16px;color:#94a3b8}.accounts-empty span{font-size:13px}.accounts-grid{display:flex;flex-direction:column;gap:0;margin-bottom:24px;background:var(--panel);border:1px solid var(--border);border-radius:10px;overflow:hidden}.account-row{--account-accent: var(--accent);display:flex;align-items:center;gap:12px;padding:14px 16px;background:transparent;border-bottom:1px solid var(--divider);cursor:pointer;transition:background .15s cubic-bezier(.22,1,.36,1);position:relative}.account-row:last-child{border-bottom:none}.account-row:hover,.account-row:active{background:var(--panel-2)}.account-row.is-selected{background:#111a1e}.account-row.is-hidden-account{opacity:.55}.account-row.card-credit{--account-accent: oklch(.72 .17 25)}.account-row.card-debit{--account-accent: oklch(.78 .14 150)}.account-row.card-upi{--account-accent: oklch(.72 .16 295)}.account-row.card-bank{--account-accent: oklch(.75 .12 235)}.account-row-icon{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:transparent;color:var(--account-accent);flex-shrink:0}.account-row-icon .material-symbols-outlined{font-size:22px;font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24}.account-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.account-row-primary{display:flex;align-items:baseline;gap:8px;min-width:0}.account-row-name{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--text);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;line-height:1.25}.account-row-hidden{font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);padding:1px 5px;border:1px solid oklch(.28 .015 232);border-radius:2px;flex-shrink:0}.account-row-meta{margin:0;display:flex;align-items:baseline;gap:6px;flex-wrap:nowrap;overflow:hidden;font-family:var(--font-mono);font-size:10.5px;font-variant-numeric:tabular-nums;line-height:1.4;white-space:nowrap}.account-row-type{color:#b0b9be;font-weight:600;letter-spacing:.12em;text-transform:uppercase;flex-shrink:0}.account-row-txns{color:var(--text-faint);letter-spacing:.02em;flex-shrink:0}.account-row-meta-dot{color:#353c40;flex-shrink:0}.account-row-change{letter-spacing:.02em;flex-shrink:0;font-weight:500}.account-row-change.up{color:var(--danger)}.account-row-change.down{color:var(--income-strong)}.account-balance-row{display:flex;align-items:baseline;gap:6px;margin-top:4px;flex-wrap:wrap}.account-balance-label{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);flex-shrink:0}.account-balance-value{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.account-balance-change{font-size:10px;font-weight:500;letter-spacing:.01em}.account-balance-change.up{color:var(--income-strong)}.account-balance-change.down{color:var(--danger)}.account-row-right{display:flex;align-items:center;gap:4px;flex-shrink:0;padding-left:8px}.account-row-amount{font-family:var(--font-mono);font-size:14px;font-weight:500;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap}.account-row-menu{width:28px;height:28px;display:grid;place-items:center;background:transparent;border:none;color:var(--text-faint);cursor:pointer;border-radius:4px;transition:background .12s cubic-bezier(.22,1,.36,1);flex-shrink:0}.account-row-menu:hover,.account-row-menu:active{background:#1a2328;color:#bdc6cb}.account-row-menu .material-symbols-outlined{font-size:18px}.account-details-panel{background:#090f13;border-radius:14px;border:1px solid var(--border);margin-top:24px;box-shadow:0 -12px 32px #00000073;display:flex;flex-direction:column;max-height:520px;overflow:hidden}.account-details-sticky{padding:18px 18px 0;background:#090f13;border-radius:14px 14px 0 0;flex-shrink:0}.account-details-scroll{padding:0 18px 20px;overflow-y:auto;flex:1}.account-details-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}.account-details-title{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.account-details-header h3{margin:0;font-family:var(--font-body);font-size:20px;font-weight:600;letter-spacing:-.015em;color:var(--text);line-height:1.2;word-break:break-word}.account-details-subtitle{margin:0;font-family:var(--font-mono);font-size:10px;color:var(--text-faint);font-weight:500;letter-spacing:.12em;text-transform:uppercase}.account-details-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.account-details-edit,.account-details-close{width:32px;height:32px;border-radius:7px;background:transparent;border:1px solid oklch(.28 .018 232);color:#97a0a5;display:grid;place-items:center;cursor:pointer;transition:border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1)}.account-details-edit:hover,.account-details-close:hover{border-color:#3a4a53;color:var(--text-2)}.account-details-edit:disabled{cursor:not-allowed;opacity:.45}.account-details-edit .material-symbols-outlined,.account-details-close .material-symbols-outlined{font-size:17px}.account-details-loading{text-align:center;padding:32px 20px;color:var(--text-faint);font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.account-details-total{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;background:transparent;border-radius:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:18px}.account-details-total span{font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint);letter-spacing:.14em;font-weight:600;text-transform:uppercase}.account-details-total strong{font-family:var(--font-mono);font-size:22px;font-weight:500;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.025em}.account-alias-form{background:var(--panel-2);border:1px solid oklch(.28 .018 232);border-radius:8px;padding:12px;margin-bottom:14px;display:flex;flex-direction:column;gap:8px}.account-alias-label{font-family:var(--font-mono);font-size:9.5px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.14em;font-weight:600}.account-alias-input{background:#04080b;border:1px solid var(--border-strong);border-radius:6px;padding:9px 12px;color:var(--text);font-family:var(--font-body);font-size:14px;outline:none;transition:border-color .15s cubic-bezier(.22,1,.36,1)}.account-alias-input:focus{border-color:var(--accent-border-strong)}.account-alias-input:disabled{opacity:.65}.account-alias-hint{margin:0;font-family:var(--font-body);font-size:11.5px;color:var(--text-faint);line-height:1.4}.account-alias-error{margin:0;font-family:var(--font-body);font-size:11.5px;color:var(--danger)}.account-alias-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:2px}.account-alias-cancel,.account-alias-save{border-radius:6px;border:1px solid var(--border-strong);padding:6px 12px;font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:transparent;transition:border-color .15s,color .15s}.account-alias-cancel{color:var(--text-dim)}.account-alias-cancel:hover{border-color:#3a4a53;color:#c6cfd4}.account-alias-save{color:#81cffc;border-color:var(--accent-border)}.account-alias-save:hover{color:var(--accent-active);border-color:var(--accent-border-strong)}.account-alias-save:disabled,.account-alias-cancel:disabled{cursor:not-allowed;opacity:.45}.account-categories h4,.account-recent h4{margin:0 0 10px;font-family:var(--font-mono);font-size:10px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.14em;font-weight:600}.account-recent h4{margin-top:22px}.account-category-row{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:4px 12px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--divider)}.account-category-row:last-child{border-bottom:none}.account-category-info{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:4px;min-width:0}.account-category-name{font-family:var(--font-body);font-weight:600;color:var(--text);font-size:14px;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-category-count{display:block;font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint);letter-spacing:.02em;font-variant-numeric:tabular-nums}.account-category-amount{grid-column:2;grid-row:1;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.account-category-value{display:block;font-family:var(--font-mono);font-weight:500;color:var(--text);font-size:14px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.account-category-percent{display:block;font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint);font-variant-numeric:tabular-nums;letter-spacing:.02em}.account-category-bar{grid-column:1 / -1;grid-row:2;height:3px;background:#1a2024;border-radius:0;overflow:hidden;margin-top:4px}.account-category-bar-fill{height:100%;background:#287aa3;border-radius:0;transition:width .3s cubic-bezier(.22,1,.36,1)}.account-category-info:after{content:attr(data-count)}.account-recent{margin-top:14px}.account-recent-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--divider);background:transparent;border-left:none;border-right:none;border-top:none;color:inherit;text-align:left;cursor:pointer;border-radius:0;transition:background .15s cubic-bezier(.22,1,.36,1);width:100%}.account-recent-item:hover,.account-recent-item:active{background:var(--panel-2)}.account-recent-item:last-child{border-bottom:none}.account-recent-info{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.account-recent-merchant{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--text);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-recent-date{font-family:var(--font-mono);font-size:10px;color:var(--text-faint);letter-spacing:.02em;font-variant-numeric:tabular-nums}.account-recent-amount{font-family:var(--font-mono);font-size:14px;font-weight:500;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap;flex-shrink:0}.accounts-insights{margin-top:24px}.accounts-section-title{margin:0 0 10px;font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.14em;font-weight:600}.accounts-insight-card{display:flex;gap:14px;padding:14px 16px;background:var(--panel);border-radius:10px;border:1px solid var(--border);margin-bottom:8px}.accounts-insight-card .material-symbols-outlined{color:var(--accent);font-size:20px;flex-shrink:0}.accounts-insight-card.warning .material-symbols-outlined{color:var(--danger)}.accounts-insight-card.info .material-symbols-outlined{color:var(--accent)}.accounts-insight-card h4{margin:0 0 4px;font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--text);letter-spacing:-.005em}.accounts-insight-card p{margin:0;font-family:var(--font-body);font-size:12px;color:var(--text-dim);line-height:1.45}.history-load-more{min-height:60px;display:flex;align-items:center;justify-content:center;padding:16px}.loading-indicator{display:flex;align-items:center;justify-content:center;gap:12px;color:#94a3b8;font-size:14px}.loading-indicator:before{content:"";width:20px;height:20px;border:2px solid rgba(var(--primary-rgb),.3);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:40px 20px;color:#64748b;font-size:14px}.account-card{cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.account-card:active{transform:scale(.985)}.account-card.is-hidden-account{opacity:.6;border-style:dashed}.account-card-header{gap:10px;align-items:flex-start}.account-card-title{min-width:0;display:flex;flex-direction:column;gap:4px}.account-card-hidden-tag{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;background:var(--border);padding:2px 8px;border-radius:999px;align-self:flex-start}.account-card-menu{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#cbd5f5;cursor:pointer;transition:background .15s ease,border-color .15s ease}.account-card-menu:hover{background:#ffffff14;border-color:#ffffff29}.account-card-menu .material-symbols-outlined{font-size:20px}.account-card-details{display:flex;flex-direction:column;gap:6px}.account-card-amount-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.account-card-name{white-space:normal}.account-action-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05080fb8;z-index:60;display:flex;align-items:flex-end;justify-content:center;padding:16px}.account-action-sheet{width:100%;max-width:420px;background:#121417;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:16px;box-shadow:0 20px 48px #00000080;animation:accountSheetIn .18s ease}@keyframes accountSheetIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.account-action-sheet-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:8px}.account-action-sheet-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:0 0 4px}.account-action-sheet-name{margin:0;font-size:16px;font-weight:600;color:var(--text);word-break:break-word}.account-action-sheet-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:8px}.account-action-sheet-close:hover{background:#ffffff0f;color:#e2e8f0}.account-action-item{display:flex;align-items:center;gap:14px;width:100%;padding:14px 12px;background:transparent;border:none;border-radius:12px;color:#e2e8f0;font-size:15px;text-align:left;cursor:pointer;transition:background .15s ease}.account-action-item:hover{background:var(--border)}.account-action-item.danger{color:#fca5a5}.account-action-item.danger:hover{background:#f871711a}.account-action-item .material-symbols-outlined{font-size:20px;flex-shrink:0}.account-action-sheet-note{margin:8px 4px 0;font-size:12px;line-height:1.45;color:#64748b}.account-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05080fd1;z-index:70;display:flex;align-items:center;justify-content:center;padding:20px}.account-confirm-dialog{background:#121417;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:22px 20px;max-width:400px;width:100%;box-shadow:0 20px 48px #0009}.account-confirm-dialog h3{margin:0 0 8px;color:var(--text);font-size:18px}.account-confirm-dialog p{margin:0 0 20px;color:#94a3b8;font-size:14px;line-height:1.5}.account-confirm-actions{display:flex;gap:10px;justify-content:flex-end}.account-confirm-cancel,.account-confirm-ok{padding:10px 18px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background .15s ease,border-color .15s ease}.account-confirm-cancel{background:transparent;color:#cbd5f5;border-color:#ffffff1a}.account-confirm-cancel:hover{background:#ffffff0f}.account-confirm-ok{background:#3b82f6;color:var(--text)}.account-confirm-ok:hover{background:#2563eb}.account-confirm-ok.danger{background:#dc2626}.account-confirm-ok.danger:hover{background:#b91c1c}.accounts-hidden-toggle{display:inline-flex;align-items:center;gap:8px;margin:8px 0 24px;padding:8px 14px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-dim);font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:color .15s cubic-bezier(.22,1,.36,1),border-color .15s cubic-bezier(.22,1,.36,1)}.accounts-hidden-toggle:hover{color:#c6cfd4;border-color:var(--border-strong)}.accounts-hidden-toggle .material-symbols-outlined{font-size:14px}@media (max-width: 420px){.account-row{padding:12px 14px;gap:10px}.account-row-name,.account-row-amount{font-size:13.5px}.account-row-meta{font-size:10px;gap:5px}}.term-card{--term-surface: var(--panel);--term-surface-raised: oklch(.205 .014 232);--term-border: oklch(.3 .02 232);--term-border-hair: var(--border);--term-text-primary: var(--text);--term-text-secondary: oklch(.76 .01 232);--term-text-tertiary: oklch(.56 .012 232);--term-text-muted: oklch(.465 .01 232);--term-accent: oklch(.8 .15 235);--term-accent-dim: var(--accent-border-strong);--term-warn: var(--danger);--term-warn-dim: oklch(.38 .13 32);--term-pos: var(--income-strong);--term-pos-dim: oklch(.4 .09 155);--term-mono: var(--font-mono);background:var(--term-surface);border:1px solid var(--term-border-hair);border-radius:14px;color:var(--term-text-primary);font-variant-numeric:tabular-nums;overflow:hidden;padding:0;margin-bottom:20px}.term-header{display:flex;align-items:baseline;gap:8px;padding:14px 20px;border-bottom:1px solid var(--term-border-hair);font-family:var(--term-mono);font-size:10.5px;font-weight:600;letter-spacing:.14em;color:var(--term-text-tertiary);text-transform:uppercase}.term-header-dot{color:var(--term-text-muted)}.term-hero{padding:24px 20px 20px;border-bottom:1px solid var(--term-border-hair)}.term-hero-action{margin:0;font-family:var(--font-body);font-size:clamp(18px,2.6vw,22px);font-weight:500;line-height:1.35;letter-spacing:-.005em;color:var(--term-text-primary);max-width:42ch}.term-hero-context{margin:10px 0 0;font-family:var(--font-body);font-size:13px;line-height:1.5;color:var(--term-text-tertiary);max-width:48ch}.term-num{font-family:var(--term-mono);font-weight:600;color:var(--term-text-primary);letter-spacing:-.01em}.term-hero-context .term-num{color:var(--term-text-secondary)}.term-grid{margin:0;padding:14px 20px;display:grid;grid-template-columns:1fr;row-gap:2px;border-bottom:1px solid var(--term-border-hair)}.term-grid-divider{height:1px;background:var(--term-border-hair);margin:10px 0 8px}.term-row{display:grid;grid-template-columns:minmax(96px,auto) minmax(0,1fr) auto;column-gap:12px;align-items:center;min-height:22px}.term-row-label{font-family:var(--term-mono);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--term-text-tertiary)}.term-row-muted .term-row-label,.term-row-muted .term-row-value{color:var(--term-text-muted)}.term-row-visual{display:flex;align-items:center;gap:10px;min-width:0}.term-row-meta{font-family:var(--term-mono);font-size:10.5px;font-weight:500;color:var(--term-text-muted);flex-shrink:0;min-width:3ch;text-align:right}.term-row-value{font-family:var(--term-mono);font-size:13.5px;font-weight:500;letter-spacing:-.005em;color:var(--term-text-primary);text-align:right;white-space:nowrap}.term-row-emphasis .term-row-label{color:var(--term-text-secondary);font-weight:600}.term-row-emphasis .term-row-value{font-size:15px;font-weight:600;color:var(--term-text-primary)}.term-row-warn .term-row-value{color:var(--term-warn)}.term-row-pos .term-row-value{color:var(--term-pos)}.term-bar{position:relative;flex:1;min-width:0;height:4px;background:#1d2326;overflow:hidden}.term-bar-fill{height:100%;background:var(--term-accent-dim);transition:width .32s cubic-bezier(.22,1,.36,1)}.term-row-warn .term-bar-fill{background:var(--term-warn-dim)}.term-row-muted .term-bar-fill{background:#373b3e}.term-bar-over{position:absolute;top:0;right:0;height:100%;background:var(--term-warn);transition:width .32s cubic-bezier(.22,1,.36,1)}.term-fixed{padding:16px 20px;border-bottom:1px solid var(--term-border-hair)}.term-subhead{font-family:var(--term-mono);font-size:10px;font-weight:600;letter-spacing:.14em;color:var(--term-text-muted);margin-bottom:10px;text-transform:uppercase}.term-fixed-list{display:flex;flex-direction:column;gap:2px}.term-fixed-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:6px 0;border-top:1px solid var(--term-border-hair)}.term-fixed-row:first-child{border-top:none;padding-top:0}.term-fixed-copy{min-width:0;display:flex;flex-direction:column;gap:1px}.term-fixed-category{font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--term-text-primary);letter-spacing:-.005em}.term-fixed-merchant{font-family:var(--term-mono);font-size:10.5px;font-weight:400;color:var(--term-text-muted);letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:32ch}.term-fixed-amount{font-family:var(--term-mono);font-size:13.5px;font-weight:500;color:var(--term-text-secondary);text-align:right;white-space:nowrap;flex-shrink:0}.term-footer{padding:14px 20px 16px}.term-footer-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.term-footer-label{font-family:var(--term-mono);font-size:10px;font-weight:600;letter-spacing:.14em;color:var(--term-text-muted);text-transform:uppercase}.term-footer-value{font-family:var(--term-mono);font-size:13.5px;font-weight:500;color:var(--term-text-primary)}.term-footer-value.is-warn{color:var(--term-warn)}.term-footer-value.is-pos{color:var(--term-pos)}.term-footer-caveat{margin:6px 0 0;font-family:var(--font-body);font-size:11.5px;line-height:1.45;color:var(--term-text-muted);max-width:52ch}.term-footer-streak{margin:10px 0 0;font-family:var(--font-body);font-size:12px;color:var(--term-text-tertiary)}.term-footer-streak .term-num{color:var(--term-pos)}.term-empty{padding:28px 20px;text-align:left}.term-empty p{margin:0;font-family:var(--font-body);font-size:15px;color:var(--term-text-primary)}.term-empty span{display:block;margin-top:6px;font-family:var(--font-body);font-size:12.5px;color:var(--term-text-muted)}@media (max-width: 420px){.term-header{padding:12px 16px;font-size:10px}.term-hero{padding:20px 16px 16px}.term-hero-action{font-size:17px}.term-grid,.term-fixed,.term-footer{padding-left:16px;padding-right:16px}.term-row{grid-template-columns:minmax(80px,auto) minmax(0,1fr) auto;column-gap:8px}.term-row-label,.term-row-meta{font-size:10px}.term-row-value{font-size:12.5px}.term-row-emphasis .term-row-value{font-size:14px}.term-fixed-merchant{max-width:22ch}}.td2{--td2-bg: #0B0D12;--td2-bg-1: #11141B;--td2-bg-2: #171B24;--td2-bg-3: #1E2330;--td2-line: rgba(255, 255, 255, .07);--td2-line-strong: rgba(255, 255, 255, .12);--td2-fg: #F5F6F8;--td2-fg-1: rgba(245, 246, 248, .78);--td2-fg-2: rgba(245, 246, 248, .54);--td2-fg-3: rgba(245, 246, 248, .34);--td2-accent: #C7FF4A;--td2-accent-ink: #0B0D12;--td2-accent-soft: rgba(199, 255, 74, .14);--td2-accent-line: rgba(199, 255, 74, .38);--td2-warn: #FF6B57;--td2-warn-soft: rgba(255, 107, 87, .14);--td2-warn-line: rgba(255, 107, 87, .28);--td2-info: #7BA8FF;--td2-info-soft: rgba(123, 168, 255, .14);--td2-info-line: rgba(123, 168, 255, .28);--td2-gold: #F4C77B;--td2-violet: #B89CFF;--td2-tabbar-fade-0: rgba(11, 13, 18, 0);--td2-tabbar-fade-1: rgba(11, 13, 18, .92);--td2-tabbar-bg: rgba(11, 13, 18, 1);--td2-tabbar-pill: rgba(20, 24, 32, .92);--td2-r-sm: 10px;--td2-r: 16px;--td2-r-lg: 22px;--td2-r-pill: 999px;--td2-font-sans: "Geist", "Inter", -apple-system, system-ui, sans-serif;--td2-font-mono: "Geist Mono", "JetBrains Mono", ui-monospace, monospace;--td2-font-display: "Fraunces", "Tiempos", ui-serif, Georgia, serif;background:var(--td2-bg);color:var(--td2-fg);font-family:var(--td2-font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=light] .td2{--td2-bg: #F5F1E8;--td2-bg-1: #FBF8F1;--td2-bg-2: #EFEADC;--td2-bg-3: #E6DFCC;--td2-line: rgba(20, 18, 14, .08);--td2-line-strong: rgba(20, 18, 14, .16);--td2-fg: #14120E;--td2-fg-1: rgba(20, 18, 14, .78);--td2-fg-2: rgba(20, 18, 14, .56);--td2-fg-3: rgba(20, 18, 14, .36);--td2-accent: #3D6B00;--td2-accent-ink: #FBF8F1;--td2-accent-soft: rgba(61, 107, 0, .1);--td2-accent-line: rgba(61, 107, 0, .32);--td2-warn: #C93A1E;--td2-warn-soft: rgba(201, 58, 30, .1);--td2-warn-line: rgba(201, 58, 30, .28);--td2-info: #1F5CB0;--td2-info-soft: rgba(31, 92, 176, .1);--td2-info-line: rgba(31, 92, 176, .28);--td2-gold: #8A5B1F;--td2-violet: #5A3EA1;--td2-tabbar-fade-0: rgba(245, 241, 232, 0);--td2-tabbar-fade-1: rgba(245, 241, 232, .94);--td2-tabbar-bg: rgba(245, 241, 232, 1);--td2-tabbar-pill: rgba(251, 248, 241, .96)}.td2 .td2-mono{font-family:var(--td2-font-mono);font-feature-settings:"ss01","tnum";letter-spacing:-.01em}.td2 .td2-display{font-family:var(--td2-font-display);font-feature-settings:"ss01"}.td2 .td2-caps{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:500;color:var(--td2-fg-2);font-family:var(--td2-font-mono)}.td2-app{display:none;position:relative;min-height:100vh;min-height:100dvh;background:var(--td2-bg);color:var(--td2-fg);overflow-x:hidden}@media (max-width: 1024px){.td2-app{display:block}}.td2-scroll{padding:0 0 120px;min-height:100vh;min-height:100dvh}.td2 *{box-sizing:border-box}.td2 button{font-family:inherit}.td2 button:focus-visible{outline:2px solid var(--td2-accent);outline-offset:2px}.td2~.font-theme-toggle,.td2-app~.font-theme-toggle{display:none!important}@media (max-width: 1024px){.font-theme-toggle{display:none!important}}.td2-noscroll::-webkit-scrollbar{display:none}.td2-noscroll{scrollbar-width:none;-ms-overflow-style:none}.td2 input,.td2 textarea{font-family:var(--td2-font-sans)}@keyframes td2-fade{0%{opacity:0}to{opacity:1}}@keyframes td2-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes td2-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
