@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInBottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.6)}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes strokeDraw{to{stroke-dashoffset:0}}@keyframes confetti-fall{0%{transform:translateY(-10px) rotate(0) scale(1);opacity:1}to{transform:translateY(100vh) rotate(720deg) scale(.3);opacity:0}}@keyframes rippleExpand{0%{transform:scale(0);opacity:.4}to{transform:scale(4);opacity:0}}.animate-in{animation:fadeInUp .3s var(--motion-ease-decelerate, ease-out) both}.animate-slide-right{animation:slideInRight .3s var(--motion-ease-decelerate, ease-out) both}.animate-scale{animation:scaleIn .25s var(--motion-ease-spring, ease-out) both}.animate-pop{animation:popIn .35s var(--motion-ease-spring, ease-out) both}.animate-pulse{animation:pulse 2s ease-in-out infinite}.stagger-1{animation-delay:0ms}.stagger-2{animation-delay:60ms}.stagger-3{animation-delay:.12s}.stagger-4{animation-delay:.18s}.stagger-5{animation-delay:.24s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.36s}.stagger-8{animation-delay:.42s}.stagger-9{animation-delay:.48s}.stagger-10{animation-delay:.54s}.stagger-11{animation-delay:.6s}.stagger-12{animation-delay:.66s}.btn-press{transition:transform var(--motion-duration-fast, .12s) cubic-bezier(.34,1.56,.64,1),box-shadow var(--motion-duration-fast, .12s) ease}.btn-press:active{transform:scale(.97);box-shadow:inset 0 2px 4px color-mix(in srgb,black 15%,transparent)}.card-surface{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:none}.card-interactive{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--elevation-0);transition:transform var(--motion-duration-normal, .2s) ease,box-shadow var(--motion-duration-normal, .2s) ease;cursor:pointer}.card-interactive:hover{transform:translateY(-2px);box-shadow:var(--elevation-2)}.card-interactive:active{transform:translateY(0);box-shadow:var(--elevation-1)}.card-emphasis{background:linear-gradient(180deg,color-mix(in srgb,var(--cf-color-accent, var(--accent)) 6%,transparent) 0%,transparent 100%);border:1px solid color-mix(in srgb,var(--cf-color-accent, var(--accent)) 20%,transparent);border-radius:var(--radius-lg);box-shadow:var(--elevation-1)}.card-hover{transition:transform var(--motion-duration-normal, .2s) ease,box-shadow var(--motion-duration-normal, .2s) ease}.card-hover:hover{transform:translateY(-2px);box-shadow:var(--elevation-3)}@keyframes errorShake{0%,to{transform:translate(0)}15%{transform:translate(-4px)}45%{transform:translate(4px)}75%{transform:translate(-3px)}}.shake-error{animation:errorShake .32s ease-out}@keyframes successGlow{0%{box-shadow:0 0 color-mix(in srgb,var(--cf-color-success, var(--green)) 50%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--cf-color-success, var(--green)) 0%,transparent)}to{box-shadow:0 0 color-mix(in srgb,var(--cf-color-success, var(--green)) 0%,transparent)}}.glow-success{animation:successGlow .6s ease-out}@keyframes valueUp{0%{color:inherit}30%{color:var(--green)}to{color:inherit}}@keyframes valueDown{0%{color:inherit}30%{color:var(--red)}to{color:inherit}}.value-flash-up{animation:valueUp .5s ease-out}.value-flash-down{animation:valueDown .5s ease-out}@keyframes fabItemIn{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.fab-item-enter{animation:fabItemIn .2s cubic-bezier(.34,1.56,.64,1) both}.fab-item-enter:nth-child(1){animation-delay:0ms}.fab-item-enter:nth-child(2){animation-delay:40ms}.fab-item-enter:nth-child(3){animation-delay:80ms}.fab-item-enter:nth-child(4){animation-delay:.12s}.fab-item-enter:nth-child(5){animation-delay:.16s}.fab-item-enter:nth-child(6){animation-delay:.2s}@keyframes skeleton-content-appear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.skeleton-fade-in{animation:skeleton-content-appear .3s ease-out both}.skeleton-fade-in-stagger>*{animation:skeleton-content-appear .3s ease-out both}.skeleton-fade-in-stagger>*:nth-child(1){animation-delay:0s}.skeleton-fade-in-stagger>*:nth-child(2){animation-delay:.05s}.skeleton-fade-in-stagger>*:nth-child(3){animation-delay:.1s}.skeleton-fade-in-stagger>*:nth-child(4){animation-delay:.15s}.skeleton-fade-in-stagger>*:nth-child(5){animation-delay:.2s}.skeleton-fade-in-stagger>*:nth-child(6){animation-delay:.25s}.skeleton-fade-in-stagger>*:nth-child(7){animation-delay:.3s}.skeleton-fade-in-stagger>*:nth-child(8){animation-delay:.35s}.skeleton-fade-in-stagger>*:nth-child(9){animation-delay:.4s}.skeleton-fade-in-stagger>*:nth-child(10){animation-delay:.45s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@keyframes ui-collapse-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes _ripple-expand{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:0}}.text-green{color:var(--green)}.text-red{color:var(--red)}.text-yellow{color:var(--yellow)}.text-blue{color:var(--blue)}.text-muted{color:var(--cf-color-text-muted, var(--text-muted))}.text-accent{color:var(--cf-color-accent, var(--accent))}.muted{color:var(--cf-color-text-muted, var(--text-muted))}.green{color:color-mix(in srgb,var(--cf-color-positive, var(--green)) 72%,var(--cf-color-text-primary, var(--text-primary)))}.yellow{color:color-mix(in srgb,var(--cf-color-warning, var(--yellow)) 78%,var(--cf-color-text-primary, var(--text-primary)))}.red{color:color-mix(in srgb,var(--cf-color-negative, var(--red)) 70%,var(--cf-color-text-primary, var(--text-primary)))}.urgency-danger{color:var(--red)}.urgency-warning{color:var(--yellow)}.urgency-safe{color:var(--green)}.urgency-muted{color:var(--cf-color-text-muted, var(--text-muted))}.urgency-danger-bg{background:var(--cf-color-negative, var(--red))}.urgency-warning-bg{background:var(--cf-color-warning, var(--yellow))}.urgency-safe-bg{background:var(--cf-color-positive, var(--green))}.urgency-muted-bg{background:var(--cf-color-text-muted, var(--text-muted))}.mono,.num{font-variant-numeric:tabular-nums}.hero-number{font-size:var(--text-3xl);font-weight:800;font-variant-numeric:tabular-nums;line-height:var(--leading-tight);letter-spacing:-.02em}.hero-label{font-size:var(--cf-text-xs, var(--text-xs));font-weight:700;text-transform:uppercase;letter-spacing:var(--tracking-normal);color:var(--cf-color-text-muted, var(--text-muted));margin-top:var(--space-1)}h1,h2,h3{letter-spacing:-.02em}.sr-only,.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.skip-nav{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;white-space:nowrap;z-index:var(--z-skip-nav);background:var(--cf-color-accent, var(--accent));color:var(--cf-color-on-accent, #fff);border-radius:var(--radius-sm);font-weight:600;text-decoration:none}.skip-nav:focus-visible{position:fixed;inset-block-start:.5rem;inset-inline-start:1rem;width:auto;height:auto;padding:.5rem 1rem;margin:0;overflow:visible;clip:auto}.skeleton-bar{background:linear-gradient(90deg,var(--cf-surface-card, var(--bg-card)) 25%,var(--cf-border-subtle, var(--border)) 50%,var(--cf-surface-card, var(--bg-card)) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md);min-height:160px}.field-error{color:var(--red);font-size:var(--text-xs);margin-top:2px;display:block}.section-divider{border-top:1px solid var(--cf-border-subtle, var(--border));margin:var(--space-8) 0 var(--space-6)}section>h2.section-heading{font-size:var(--cf-text-xs, var(--text-xs));color:var(--cf-color-text-muted, var(--text-muted));margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:var(--tracking-wider);font-weight:600}@media(width<=640px){.hide-mobile{display:none!important}}.show-mobile{display:none!important}@media(width<=640px){.show-mobile{display:flex!important}}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.learn-more-row{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px}.learn-more-link{font-size:var(--cf-text-xs, var(--text-xs));color:var(--cf-color-text-muted, var(--text-muted));text-decoration:none;padding:2px 8px;border:1px solid var(--cf-border-subtle, var(--border-muted));border-radius:var(--radius-pill);transition:color var(--cf-motion-fast, .12s) var(--cf-ease-standard, ease),border-color var(--cf-motion-fast, .12s) var(--cf-ease-standard, ease);white-space:nowrap}.learn-more-link:hover{color:var(--cf-color-accent, var(--blue));border-color:var(--cf-color-accent, var(--blue));text-decoration:none}@media(prefers-contrast:more){:root{--border: #8b949e;--border-muted: #6e7681;--text-muted: #c9d1d9;--elevation-1: 0 1px 3px color-mix(in srgb, black 50%, transparent);--elevation-2: 0 4px 12px color-mix(in srgb, black 60%, transparent)}*{font-weight:inherit}h1,h2,h3,h4,h5,h6,strong,b{font-weight:700}}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.ml-2{margin-inline-start:var(--space-2)}.ml-3{margin-inline-start:var(--space-3)}.p-0{padding:0}.d-inline-block{display:inline-block}.text-xs{font-size:var(--text-xs)}.bg-teal{background:var(--green-dark)}.bg-green{background:var(--green)}.bg-red{background:var(--red)}.bg-yellow{background:var(--yellow)}.bg-blue{background:var(--blue)}.bg-accent{background:var(--cf-color-accent, var(--accent))}.text-teal{color:color-mix(in srgb,var(--cf-color-accent, var(--teal)) 78%,var(--cf-color-text-primary, #0f172a))}a[target=_blank],a[rel~=noopener]{text-decoration:underline;text-underline-offset:2px}.cta-link{display:inline-block;margin-top:var(--space-3);color:var(--cf-color-accent, var(--blue));font-weight:600;text-decoration:none}.cta-link:hover{text-decoration:underline}.emphasis-card,.interactive-card,.surface-card{background:var(--cf-surface-card, var(--bg-card));border:1px solid var(--cf-border-subtle, var(--border));border-radius:var(--radius-lg);box-shadow:var(--elevation-0)}.interactive-card{cursor:pointer;transition:box-shadow var(--transition-fast),transform var(--transition-fast)}.interactive-card:hover{box-shadow:var(--elevation-1);transform:translateY(-1px)}.interactive-card:active{transform:translateY(0)}.emphasis-card{background:linear-gradient(180deg,color-mix(in srgb,var(--cf-color-accent, var(--accent)) 6%,transparent) 0%,transparent 100%);box-shadow:var(--elevation-1);border-color:color-mix(in srgb,var(--cf-color-accent, var(--accent)) 18%,transparent)}.btn-primary,.btn-secondary,[class*=btn-]{transition:transform 80ms ease,box-shadow 80ms ease,background var(--transition-fast),color var(--transition-fast)}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),[class*=btn-]:active:not(:disabled){transform:scale(.97);box-shadow:inset 0 1px 3px color-mix(in srgb,black 20%,transparent)}@keyframes error-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-3px)}40%,80%{transform:translate(3px)}}.shake{animation:error-shake .4s ease-in-out}@keyframes success-glow{0%{box-shadow:0 0 color-mix(in srgb,var(--cf-color-success, var(--green)) 40%,transparent)}70%{box-shadow:0 0 0 8px color-mix(in srgb,var(--cf-color-success, var(--green)) 0%,transparent)}to{box-shadow:none}}.glow-success{animation:success-glow .6s ease-out}.touch-target{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.isolation-root{isolation:isolate}.cq-container{container-type:inline-size}:root{--bg-primary: var(--cf-surface-page);--bg-card: var(--cf-surface-card);--bg-hover: var(--cf-surface-muted);--bg-input: var(--cf-surface-input);--bg-chrome: var(--cf-surface-chrome);--border: var(--cf-border-subtle);--border-muted: var(--cf-border-muted);--white: #fff;--text-disabled: #484f58;--focus-ring: 2px solid var(--accent);--focus-ring-offset: 2px;--focus-visible-outline: 2px solid #0070c0;--focus-visible-offset: 2px;--z-base: 1;--z-raised: 2;--z-overlay-local: 5;--z-header: 10;--z-toolbar: 20;--z-drawer: 50;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-popover: 500;--z-tooltip: 600;--z-toast: 700;--z-floating-panel: 800;--z-floating-panel-backdrop: 790;--z-bottom-sheet: 800;--z-skip-nav: 900;--z-overlay-elevated: 1000;--z-overlay-upper: 1100;--z-overlay-high: 1200;--z-critical: 9000;--z-max: 10000;--toast-success-bg: color-mix(in srgb, var(--cf-color-success, #3fb950) 12%, transparent);--toast-error-bg: color-mix(in srgb, var(--cf-color-danger, #f85149) 12%, transparent);--toast-info-bg: color-mix(in srgb, var(--cf-color-accent, #58a6ff) 12%, transparent);--toast-warn-bg: color-mix(in srgb, var(--cf-color-warning, #e3b341) 12%, transparent);--text-primary: var(--cf-text-primary);--text-secondary: var(--cf-text-secondary);--text-muted: var(--cf-text-muted);--cf-surface-page: #0a0f1e;--cf-surface-card: #131929;--cf-surface-muted: #1c2438;--cf-surface-chrome: #0d1521;--cf-surface-input: var(--cf-surface-page);--cf-border-subtle: #1e2d45;--cf-border-strong: #2c3f5e;--cf-text-primary: #f1f5f9;--cf-text-secondary: #b8c4d8;--cf-text-muted: #8b97b3;--cf-color-accent: #00c896;--cf-color-accent-strong: #00a87d;--cf-color-focus: #23d4a7;--cf-color-positive: #10b981;--cf-color-negative: #ef4444;--cf-color-warning: #f59e0b;--cf-color-info: #3b82f6;--cf-color-income: #10b981;--cf-color-expense: #ef4444;--cf-color-debt: #ef4444;--cf-color-investment: #3b82f6;--cf-accent-rgb: 0, 200, 150;--cf-positive-rgb: 16, 185, 129;--cf-negative-rgb: 239, 68, 68;--cf-warning-rgb: 245, 158, 11;--cf-info-rgb: 59, 130, 246;--cf-surface-canvas: var(--cf-surface-page);--cf-surface-raised: var(--cf-surface-card);--cf-surface-subtle: var(--cf-surface-muted);--cf-surface-popover: var(--cf-surface-card);--cf-surface-accent: color-mix(in srgb, var(--cf-color-accent) 14%, var(--cf-surface-card) 86%);--cf-surface-positive: color-mix(in srgb, var(--cf-color-positive) 16%, var(--cf-surface-card) 84%);--cf-surface-negative: color-mix(in srgb, var(--cf-color-negative) 16%, var(--cf-surface-card) 84%);--cf-surface-warning: color-mix(in srgb, var(--cf-color-warning) 16%, var(--cf-surface-card) 84%);--cf-border-muted: var(--cf-border-subtle);--cf-border-accent: color-mix(in srgb, var(--cf-color-accent) 38%, transparent);--cf-border-positive: color-mix(in srgb, var(--cf-color-positive) 40%, transparent);--cf-border-negative: color-mix(in srgb, var(--cf-color-negative) 40%, transparent);--cf-border-warning: color-mix(in srgb, var(--cf-color-warning) 40%, transparent);--cf-color-text: var(--cf-text-primary);--cf-color-text-primary: var(--cf-text-primary);--cf-color-text-secondary: var(--cf-text-secondary);--cf-color-text-muted: var(--cf-text-muted);--cf-color-text-disabled: color-mix(in srgb, var(--cf-text-muted) 72%, var(--cf-surface-page) 28%);--cf-color-accent-hover: var(--cf-color-accent-strong);--cf-color-positive-emphasis: var(--cf-chart-income-strong);--cf-color-negative-emphasis: var(--cf-chart-expense-strong);--cf-color-on-accent: #072018;--cf-color-on-accent-strong: #0d1521;--cf-color-on-positive: #072018;--cf-color-on-negative: #190707;--cf-text-on-positive: var(--white);--cf-focus-ring: 2px solid var(--cf-color-focus);--cf-overlay-backdrop: color-mix(in srgb, black 52%, transparent);--cf-overlay-blur: 8px;--cf-radius-xs: var(--radius-xs);--cf-radius-md-plus: var(--radius-md-plus);--cf-radius-xl: var(--radius-xl);--cf-radius-pill: var(--radius-pill);--cf-text-xs: .75rem;--cf-shadow-sm: var(--elevation-1);--cf-toast-shadow: var(--cf-shadow-overlay);--cf-toast-shadow-secondary: var(--shadow-sm);--bg-sidebar: var(--bg-chrome);--bg-surface: var(--bg-card);--blue-muted: color-mix(in srgb, var(--cf-color-accent, var(--blue)) 12%, transparent);--text-muted-rgb: var(--muted-rgb);--z-popover-backdrop: calc(var(--z-popover) - 1);--cf-shadow-card: 0 12px 28px color-mix(in srgb, black 28%, transparent);--cf-shadow-overlay: 0 22px 54px color-mix(in srgb, black 40%, transparent);--cf-radius-sm: .5rem;--cf-radius-md: .75rem;--cf-radius-lg: 1rem;--cf-auth-card-max-width: 26.25rem;--cf-blur-glass: blur(12px);--cf-surface-auth-start: #0d0d1a;--cf-surface-auth-mid: #1a1a2e;--cf-surface-auth-end: #16213e;--cf-sidebar-width: 15rem;--cf-sidebar-width-collapsed: 3.25rem;--cf-skeleton-card-height: 5.5rem;--cf-space-1: .25rem;--cf-space-2: .5rem;--cf-space-4: 1rem;--cf-space-6: 1.5rem;--cf-space-8: 2rem;--cf-space-12: 3rem;--cf-font-body: "Source Sans 3", sans-serif;--cf-font-display: "Bitter", serif;--cf-text-2xs: .75rem;--cf-text-xs: .8125rem;--cf-text-sm: .875rem;--cf-text-base: 1rem;--cf-text-lg: 1.125rem;--cf-text-xl: 1.25rem;--cf-text-2xl: 1.5rem;--cf-text-3xl: 1.875rem;--cf-text-4xl: 2.25rem;--cf-text-caption: var(--cf-text-xs);--cf-text-body: var(--cf-text-sm);--cf-text-title: var(--cf-text-lg);--cf-text-headline: var(--cf-text-2xl);--cf-text-display: 2.5rem;--cf-motion-fast: .12s;--cf-motion-base: .22s;--cf-motion-slow: .32s;--cf-ease-enter: cubic-bezier(.2, .8, .2, 1);--cf-ease-standard: cubic-bezier(.25, .1, .25, 1);--cf-chart-grid: color-mix(in srgb, var(--cf-color-text-muted, #93a4b5) 22%, transparent);--cf-chart-overlay-accent: color-mix(in srgb, var(--teal) 16%, transparent);--cf-chart-income: var(--cf-color-income);--cf-chart-expense: var(--cf-color-expense);--cf-chart-debt: var(--cf-color-debt);--cf-chart-investment: var(--cf-color-investment);--cf-chart-reference: var(--cf-color-warning);--cf-chart-neutral: var(--cf-text-muted);--cf-chart-income-strong: #4a9474;--cf-chart-expense-strong: #b06252;--cf-chart-tertiary: var(--purple);--cf-chart-overlay-blue: color-mix( in srgb, var(--cf-color-info, #7faed1) 14%, transparent );--cf-chart-overlay-green: color-mix( in srgb, var(--cf-color-positive, #66b291) 14%, transparent );--cf-chart-height-sm: 160px;--cf-chart-height-md: 240px;--cf-chart-height-lg: 360px;--green: var(--cf-color-positive);--red: var(--cf-color-negative);--yellow: var(--cf-color-warning);--blue: var(--cf-color-info);--accent: var(--cf-color-accent);--blue-bright: #388bfd;--blue-dark: #1f6feb;--green-dark: #238636;--green-medium: #2ea043;--blue-light: #79c0ff;--purple-light: #a371f7;--purple-dark: #8957e5;--accent-rgb: 0, 112, 192;--green-rgb: 63, 185, 80;--red-rgb: 248, 81, 73;--yellow-rgb: 227, 179, 65;--blue-rgb: 88, 166, 255;--muted-rgb: 158, 170, 182;--teal-rgb: 0, 212, 170;--white-rgb: 255, 255, 255;--black-rgb: 0, 0, 0;--purple: #bc8cff;--teal: #00d4aa;--orange: #ff9f43;--pink: #fd79a8;--ai-bg-start: color-mix(in srgb, var(--cf-color-accent, var(--blue)) 8%, transparent);--ai-bg-end: color-mix(in srgb, var(--purple) 8%, transparent);--ai-border: color-mix(in srgb, var(--cf-color-accent, var(--blue)) 20%, transparent);--ai-accent: var(--blue);--ai-accent-bg: color-mix(in srgb, var(--cf-color-accent, var(--blue)) 10%, transparent);--card: var(--bg-card);--surface-0: var(--bg-primary);--surface-bg: var(--bg-primary);--surface-primary: var(--bg-primary);--surface-1: var(--bg-card);--surface-card: var(--bg-card);--surface-secondary: var(--bg-card);--surface-2: var(--bg-hover);--surface-hover: var(--bg-hover);--surface-tertiary: var(--bg-hover);--surface-3: var(--bg-chrome);--color-surface: var(--bg-card);--color-surface-1: var(--bg-card);--color-surface-2: var(--bg-hover);--color-surface-3: var(--bg-chrome);--color-border: var(--border);--color-text: var(--text-primary);--color-text-primary: var(--text-primary);--color-text-secondary: var(--text-secondary);--color-text-muted: var(--text-muted);--color-muted: var(--text-muted);--color-primary: var(--accent);--color-accent: var(--accent);--color-accent-subtle: color-mix(in srgb, var(--cf-color-accent, var(--accent)) 12%, transparent);--color-success: var(--green);--color-success-bg: color-mix(in srgb, var(--cf-color-success, var(--green)) 12%, transparent);--color-danger: var(--red);--color-danger-bg: color-mix(in srgb, var(--cf-color-danger, var(--red)) 12%, transparent);--color-warning: var(--yellow);--color-warning-bg: color-mix(in srgb, var(--cf-color-warning, var(--yellow)) 12%, transparent);--color-info-bg: color-mix(in srgb, var(--cf-color-accent, var(--blue)) 12%, transparent);--warn: var(--yellow);--warn-bg: color-mix(in srgb, var(--cf-color-warning, var(--yellow)) 12%, transparent);--warning: var(--yellow);--warning-bg: color-mix(in srgb, var(--cf-color-warning, var(--yellow)) 12%, transparent);--warning-border: color-mix(in srgb, var(--cf-color-warning, var(--yellow)) 35%, transparent);--warning-text: var(--yellow);--font-family-base: Inter, -apple-system, blinkmacsystemfont, Segoe UI, system-ui, sans-serif;--font-sans: "Source Sans 3", system-ui, sans-serif;--font-serif: "Bitter", Georgia, serif;--ff-ui: "Inter", -apple-system, blinkmacsystemfont, "Segoe UI", system-ui, sans-serif;--ff-display: "Bitter", serif;--font-mono: ui-monospace, sfmono-regular, menlo, monaco, consolas, "Liberation Mono", "Courier New", monospace;--font-size-base: .875rem;--font-size-sm: .8125rem;--font-size-xs: .6875rem;--text-tiny: .625rem;--text-2xs: .75rem;--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .875rem;--text-lg: 1rem;--text-xl: 1.125rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.65;--text-display: 40px;--text-headline: 24px;--text-title: 18px;--text-body: 14px;--text-caption: 11px;--text-micro: 9px;--fw-display: 900;--fw-headline: 800;--fw-title: 700;--fw-body: 400;--fw-caption: 600;--fw-micro: 700;--elevation-0: none;--space-0-25: .0625rem;--space-0-5: .125rem;--space-0-75: .1875rem;--space-1: .25rem;--space-1-25: .3125rem;--space-1-5: .375rem;--space-1-75: .4375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-4-5: 1.125rem;--space-5: 1.25rem;--space-5-5: 1.375rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-13: 3.25rem;--space-15: 3.75rem;--space-18: 4.5rem;--space-20: 5rem;--bottom-nav-height: var(--space-18);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 3rem;--radius-xs: 4px;--radius-sm: 6px;--radius-base: 8px;--radius-md: 10px;--radius-md-plus: 12px;--radius-lg: 14px;--radius-lg-plus: 16px;--radius-xl: 20px;--radius-pill: 9999px;--radius-full: var(--radius-pill);--tracking-tightest: -1px;--tracking-tight: -.5px;--tracking-snug: .3px;--tracking-normal: .5px;--tracking-wide: .8px;--tracking-wider: 1px;--tracking-widest: 1.2px;--transition-fast: .12s ease;--transition-normal: .2s ease;--transition-slow: .35s ease;--transition-spring: .35s cubic-bezier(.16, 1, .3, 1);--elevation-1: 0 1px 3px color-mix(in srgb, black 24%, transparent);--elevation-2: 0 4px 12px color-mix(in srgb, black 32%, transparent);--elevation-3: 0 8px 24px color-mix(in srgb, black 40%, transparent);--elevation-4: 0 16px 48px color-mix(in srgb, black 56%, transparent);--shadow-sm: 0 1px 3px color-mix(in srgb, black 24%, transparent);--shadow-md: 0 4px 12px color-mix(in srgb, black 32%, transparent);--shadow-lg: 0 8px 24px color-mix(in srgb, black 40%, transparent);--green-emphasis: #238636;--green-emphasis-hover: #2ea043;--green-dark: #2e7d6e;--red-emphasis: #da3633;--accent-hover: #0086e6;--header-gradient-start: #1f3864;--motion-duration-instant: 80ms;--motion-duration-fast: .12s;--motion-duration-normal: .25s;--motion-duration-slow: .4s;--motion-duration-slower: .6s;--motion-ease-standard: cubic-bezier(.2, 0, 0, 1);--motion-ease-decelerate: cubic-bezier(0, 0, 0, 1);--motion-ease-accelerate: cubic-bezier(.3, 0, 1, 1);--motion-ease-spring: cubic-bezier(.16, 1, .3, 1);--motion-ease-bounce: cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;background:var(--cf-surface-page, var(--bg-primary, #fff));color:var(--cf-color-text-primary, var(--text-primary, #1a1a1a));font-family:var(--cf-font-body, var(--font-family-base));font-size:var(--font-size-base);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv01","cv02","cv03","cv04";font-variant-numeric:tabular-nums;letter-spacing:-.011em}body{padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--cf-surface-page, var(--bg-primary, #fff))}::-webkit-scrollbar-thumb{background:var(--cf-border-subtle, var(--border-muted, #d0d7de));border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--cf-border-muted, var(--border, #c9cfd4))}input,select,textarea{font-family:inherit;color:var(--cf-color-text-primary, var(--text-primary, #1a1a1a));background:var(--cf-surface-input, var(--bg-input, #fff));border:1px solid var(--cf-border-subtle, var(--border-muted, #d0d7de));border-radius:var(--radius-sm);font-size:var(--font-size-sm)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:var(--cf-focus-ring, var(--focus-ring, 2px solid #0969da));outline-offset:2px;border-color:var(--cf-color-accent, var(--accent, #0969da))}a{color:var(--cf-color-accent, var(--blue, #58a6ff));text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:var(--cf-focus-ring, var(--focus-ring, 2px solid var(--cf-color-accent, #00c896)));outline-offset:2px;border-radius:2px}button:not([disabled]):focus-visible,[role=button]:not([disabled]):focus-visible{outline:var(--cf-focus-ring, var(--focus-ring, 2px solid var(--cf-color-accent, #00c896)));outline-offset:2px}:root{--bg-primary: var(--cf-surface-page);--bg-card: var(--cf-surface-card);--bg-hover: var(--cf-surface-muted);--bg-input: var(--cf-surface-input);--bg-chrome: var(--cf-surface-chrome);--border: var(--cf-border-subtle);--border-muted: var(--cf-border-muted);--white: #fff;--text-disabled: #484f58;--focus-ring: 2px solid var(--accent);--focus-ring-offset: 2px;--focus-visible-outline: 2px solid #0070c0;--focus-visible-offset: 2px;--z-base: 1;--z-raised: 2;--z-overlay-local: 5;--z-header: 10;--z-toolbar: 20;--z-drawer: 50;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-popover: 500;--z-tooltip: 600;--z-toast: 700;--z-floating-panel: 800;--z-floating-panel-backdrop: 790;--z-bottom-sheet: 800;--z-skip-nav: 900;--z-overlay-elevated: 1000;--z-overlay-upper: 1100;--z-overlay-high: 1200;--z-critical: 9000;--z-max: 10000;--toast-success-bg: color-mix(in srgb, var(--cf-color-success, #3fb950) 12%, transparent);--toast-error-bg: color-mix(in srgb, var(--cf-color-danger, #f85149) 12%, transparent);--toast-info-bg: color-mix(in srgb, var(--cf-color-accent, #58a6ff) 12%, transparent);--toast-warn-bg: color-mix(in srgb, var(--cf-color-warning, #e3b341) 12%, transparent);--text-primary: var(--cf-text-primary);--text-secondary: var(--cf-text-secondary);--text-muted: var(--cf-text-muted);--cf-surface-page: #0a0f1e;--cf-surface-card: #131929;--cf-surface-muted: #1c2438;--cf-surface-chrome: #0d1521;--cf-surface-input: var(--cf-surface-page);--cf-border-subtle: #1e2d45;--cf-border-strong: #2c3f5e;--cf-text-primary: #f1f5f9;--cf-text-secondary: #b8c4d8;--cf-text-muted: #8b97b3;--cf-color-accent: #00c896;--cf-color-accent-strong: #00a87d;--cf-color-focus: #23d4a7;--cf-color-positive: #10b981;--cf-color-negative: #ef4444;--cf-color-warning: #f59e0b;--cf-color-info: #3b82f6;--cf-color-income: #10b981;--cf-color-expense: #ef4444;--cf-color-debt: #ef4444;--cf-color-investment: #3b82f6;--cf-accent-rgb: 0, 200, 150;--cf-positive-rgb: 16, 185, 129;--cf-negative-rgb: 239, 68, 68;--cf-warning-rgb: 245, 158, 11;--cf-info-rgb: 59, 130, 246;--cf-surface-canvas: var(--cf-surface-page);--cf-surface-raised: var(--cf-surface-card);--cf-surface-subtle: var(--cf-surface-muted);--cf-surface-popover: var(--cf-surface-card);--cf-surface-accent: color-mix(in srgb, var(--cf-color-accent) 14%, var(--cf-surface-card) 86%);--cf-surface-positive: color-mix(in srgb, var(--cf-color-positive) 16%, var(--cf-surface-card) 84%);--cf-surface-negative: color-mix(in srgb, var(--cf-color-negative) 16%, var(--cf-surface-card) 84%);--cf-surface-warning: color-mix(in srgb, var(--cf-color-warning) 16%, var(--cf-surface-card) 84%);--cf-border-muted: var(--cf-border-subtle);--cf-border-accent: color-mix(in srgb, var(--cf-color-accent) 38%, transparent);--cf-border-positive: color-mix(in srgb, var(--cf-color-positive) 40%, transparent);--cf-border-negative: color-mix(in srgb, var(--cf-color-negative) 40%, transparent);--cf-border-warning: color-mix(in srgb, var(--cf-color-warning) 40%, transparent);--cf-color-text: var(--cf-text-primary);--cf-color-text-primary: var(--cf-text-primary);--cf-color-text-secondary: var(--cf-text-secondary);--cf-color-text-muted: var(--cf-text-muted);--cf-color-text-disabled: color-mix(in srgb, var(--cf-text-muted) 72%, var(--cf-surface-page) 28%);--cf-color-accent-hover: var(--cf-color-accent-strong);--cf-color-positive-emphasis: var(--cf-chart-income-strong);--cf-color-negative-emphasis: var(--cf-chart-expense-strong);--cf-color-on-accent: #072018;--cf-color-on-accent-strong: #0d1521;--cf-color-on-positive: #072018;--cf-color-on-negative: #190707;--cf-text-on-positive: var(--white);--cf-focus-ring: 2px solid var(--cf-color-focus);--cf-overlay-backdrop: color-mix(in srgb, black 52%, transparent);--cf-overlay-blur: 8px;--cf-radius-xs: var(--radius-xs);--cf-radius-md-plus: var(--radius-md-plus);--cf-radius-xl: var(--radius-xl);--cf-radius-pill: var(--radius-pill);--cf-text-xs: .75rem;--cf-shadow-sm: var(--elevation-1);--cf-toast-shadow: var(--cf-shadow-overlay);--cf-toast-shadow-secondary: var(--shadow-sm);--bg-sidebar: var(--bg-chrome);--bg-surface: var(--bg-card);--blue-muted: color-mix(in srgb, var(--cf-color-accent, var(--blue)) 12%, transparent);--text-muted-rgb: var(--muted-rgb);--z-popover-backdrop: calc(var(--z-popover) - 1);--cf-shadow-card: 0 12px 28px color-mix(in srgb, black 28%, transparent);--cf-shadow-overlay: 0 22px 54px color-mix(in srgb, black 40%, transparent);--cf-radius-sm: .5rem;--cf-radius-md: .75rem;--cf-radius-lg: 1rem;--cf-auth-card-max-width: 26.25rem;--cf-blur-glass: blur(12px);--cf-surface-auth-start: #0d0d1a;--cf-surface-auth-mid: #1a1a2e;--cf-surface-auth-end: #16213e;--cf-sidebar-width: 15rem;--cf-sidebar-width-collapsed: 3.25rem;--cf-skeleton-card-height: 5.5rem;--cf-space-1: .25rem;--cf-space-2: .5rem;--cf-space-4: 1rem;--cf-space-6: 1.5rem;--cf-space-8: 2rem;--cf-space-12: 3rem;--cf-font-body: "Source Sans 3", sans-serif;--cf-font-display: "Bitter", serif;--cf-text-2xs: .75rem;--cf-text-xs: .8125rem;--cf-text-sm: .875rem;--cf-text-base: 1rem;--cf-text-lg: 1.125rem;--cf-text-xl: 1.25rem;--cf-text-2xl: 1.5rem;--cf-text-3xl: 1.875rem;--cf-text-4xl: 2.25rem;--cf-text-caption: var(--cf-text-xs);--cf-text-body: var(--cf-text-sm);--cf-text-title: var(--cf-text-lg);--cf-text-headline: var(--cf-text-2xl);--cf-text-display: 2.5rem;--cf-motion-fast: .12s;--cf-motion-base: .22s;--cf-motion-slow: .32s;--cf-ease-enter: cubic-bezier(.2, .8, .2, 1);--cf-ease-standard: cubic-bezier(.25, .1, .25, 1);--cf-chart-grid: color-mix(in srgb, var(--cf-color-text-muted, #93a4b5) 22%, transparent);--cf-chart-overlay-accent: color-mix(in srgb, var(--teal) 16%, transparent);--cf-chart-income: var(--cf-color-income);--cf-chart-expense: var(--cf-color-expense);--cf-chart-debt: var(--cf-color-debt);--cf-chart-investment: var(--cf-color-investment);--cf-chart-reference: var(--cf-color-warning);--cf-chart-neutral: var(--cf-text-muted);--cf-chart-income-strong: #4a9474;--cf-chart-expense-strong: #b06252;--cf-chart-tertiary: var(--purple);--cf-chart-overlay-blue: color-mix( in srgb, var(--cf-color-info, #7faed1) 14%, transparent );--cf-chart-overlay-green: color-mix( in srgb, var(--cf-color-positive, #66b291) 14%, transparent );--cf-chart-height-sm: 160px;--cf-chart-height-md: 240px;--cf-chart-height-lg: 360px;--green: var(--cf-color-positive);--red: var(--cf-color-negative);--yellow: var(--cf-color-warning);--blue: var(--cf-color-info);--accent: var(--cf-color-accent);--blue-bright: #388bfd;--blue-dark: #1f6feb;--green-dark: #238636;--green-medium: #2ea043;--blue-light: #79c0ff;--purple-light: #a371f7;--purple-dark: #8957e5;--accent-rgb: 0, 112, 192;--green-rgb: 63, 185, 80;--red-rgb: 248, 81, 73;--yellow-rgb: 227, 179, 65;--blue-rgb: 88, 166, 255;--muted-rgb: 158, 170, 182;--teal-rgb: 0, 212, 170;--white-rgb: 255, 255, 255;--black-rgb: 0, 0, 0;--purple: #bc8cff;--teal: #00d4aa;--orange: #ff9f43;--pink: #fd79a8;--ai-bg-start: color-mix(in srgb, var(--cf-color-accent, var(--blue)) 8%, transparent);--ai-bg-end: color-mix(in srgb, var(--purple) 8%, transparent);--ai-border: color-mix(in srgb, var(--cf-color-accent, var(--blue)) 20%, transparent);--ai-accent: var(--blue);--ai-accent-bg: color-mix(in srgb, var(--cf-color-accent, var(--blue)) 10%, transparent);--card: var(--bg-card);--surface-0: var(--bg-primary);--surface-bg: var(--bg-primary);--surface-primary: var(--bg-primary);--surface-1: var(--bg-card);--surface-card: var(--bg-card);--surface-secondary: var(--bg-card);--surface-2: var(--bg-hover);--surface-hover: var(--bg-hover);--surface-tertiary: var(--bg-hover);--surface-3: var(--bg-chrome);--color-surface: var(--bg-card);--color-surface-1: var(--bg-card);--color-surface-2: var(--bg-hover);--color-surface-3: var(--bg-chrome);--color-border: var(--border);--color-text: var(--text-primary);--color-text-primary: var(--text-primary);--color-text-secondary: var(--text-secondary);--color-text-muted: var(--text-muted);--color-muted: var(--text-muted);--color-primary: var(--accent);--color-accent: var(--accent);--color-accent-subtle: color-mix(in srgb, var(--cf-color-accent, var(--accent)) 12%, transparent);--color-success: var(--green);--color-success-bg: color-mix(in srgb, var(--cf-color-success, var(--green)) 12%, transparent);--color-danger: var(--red);--color-danger-bg: color-mix(in srgb, var(--cf-color-danger, var(--red)) 12%, transparent);--color-warning: var(--yellow);--color-warning-bg: color-mix(in srgb, var(--cf-color-warning, var(--yellow)) 12%, transparent);--color-info-bg: color-mix(in srgb, var(--cf-color-accent, var(--blue)) 12%, transparent);--warn: var(--yellow);--warn-bg: color-mix(in srgb, var(--cf-color-warning, var(--yellow)) 12%, transparent);--warning: var(--yellow);--warning-bg: color-mix(in srgb, var(--cf-color-warning, var(--yellow)) 12%, transparent);--warning-border: color-mix(in srgb, var(--cf-color-warning, var(--yellow)) 35%, transparent);--warning-text: var(--yellow);--font-family-base: Inter, -apple-system, blinkmacsystemfont, Segoe UI, system-ui, sans-serif;--font-sans: "Source Sans 3", system-ui, sans-serif;--font-serif: "Bitter", Georgia, serif;--ff-ui: "Inter", -apple-system, blinkmacsystemfont, "Segoe UI", system-ui, sans-serif;--ff-display: "Bitter", serif;--font-mono: ui-monospace, sfmono-regular, menlo, monaco, consolas, "Liberation Mono", "Courier New", monospace;--font-size-base: .875rem;--font-size-sm: .8125rem;--font-size-xs: .6875rem;--text-tiny: .625rem;--text-2xs: .75rem;--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .875rem;--text-lg: 1rem;--text-xl: 1.125rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.65;--text-display: 40px;--text-headline: 24px;--text-title: 18px;--text-body: 14px;--text-caption: 11px;--text-micro: 9px;--fw-display: 900;--fw-headline: 800;--fw-title: 700;--fw-body: 400;--fw-caption: 600;--fw-micro: 700;--elevation-0: none;--space-0-25: .0625rem;--space-0-5: .125rem;--space-0-75: .1875rem;--space-1: .25rem;--space-1-25: .3125rem;--space-1-5: .375rem;--space-1-75: .4375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-4-5: 1.125rem;--space-5: 1.25rem;--space-5-5: 1.375rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-13: 3.25rem;--space-15: 3.75rem;--space-18: 4.5rem;--space-20: 5rem;--bottom-nav-height: var(--space-18);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 3rem;--radius-xs: 4px;--radius-sm: 6px;--radius-base: 8px;--radius-md: 10px;--radius-md-plus: 12px;--radius-lg: 14px;--radius-lg-plus: 16px;--radius-xl: 20px;--radius-pill: 9999px;--radius-full: var(--radius-pill);--tracking-tightest: -1px;--tracking-tight: -.5px;--tracking-snug: .3px;--tracking-normal: .5px;--tracking-wide: .8px;--tracking-wider: 1px;--tracking-widest: 1.2px;--transition-fast: .12s ease;--transition-normal: .2s ease;--transition-slow: .35s ease;--transition-spring: .35s cubic-bezier(.16, 1, .3, 1);--elevation-1: 0 1px 3px color-mix(in srgb, black 24%, transparent);--elevation-2: 0 4px 12px color-mix(in srgb, black 32%, transparent);--elevation-3: 0 8px 24px color-mix(in srgb, black 40%, transparent);--elevation-4: 0 16px 48px color-mix(in srgb, black 56%, transparent);--shadow-sm: 0 1px 3px color-mix(in srgb, black 24%, transparent);--shadow-md: 0 4px 12px color-mix(in srgb, black 32%, transparent);--shadow-lg: 0 8px 24px color-mix(in srgb, black 40%, transparent);--green-emphasis: #238636;--green-emphasis-hover: #2ea043;--green-dark: #2e7d6e;--red-emphasis: #da3633;--accent-hover: #0086e6;--header-gradient-start: #1f3864}[data-theme=light],[data-theme=system]{--bg-primary: var(--cf-surface-page);--bg-card: var(--cf-surface-card);--bg-hover: var(--cf-surface-muted);--bg-input: var(--cf-surface-input);--bg-chrome: var(--cf-surface-chrome);--border: var(--cf-border-subtle);--border-muted: var(--cf-border-muted);--white: #fff;--text-disabled: #8c959f;--focus-ring: 2px solid var(--accent);--focus-ring-offset: 2px;--toast-success-bg: color-mix(in srgb, var(--cf-color-success, #1a7f37) 10%, transparent);--toast-error-bg: color-mix(in srgb, var(--cf-color-danger, #cf222e) 10%, transparent);--toast-info-bg: color-mix(in srgb, var(--cf-color-accent, #0969da) 10%, transparent);--toast-warn-bg: color-mix(in srgb, var(--cf-color-warning, #9a6700) 10%, transparent);--text-primary: var(--cf-text-primary);--text-secondary: var(--cf-text-secondary);--text-muted: var(--cf-text-muted);--cf-surface-page: #f5f7fb;--cf-surface-card: #fff;--cf-surface-muted: #eef2f8;--cf-surface-chrome: #e8edf5;--cf-surface-input: #fff;--cf-border-subtle: #d9e1ee;--cf-border-strong: #bfccdf;--cf-text-primary: #111827;--cf-text-secondary: #334155;--cf-text-muted: #64748b;--cf-color-accent: #00a87d;--cf-color-accent-strong: #008c68;--cf-color-focus: #06c;--cf-color-positive: #0f9f71;--cf-color-negative: #dc2626;--cf-color-warning: #d97706;--cf-color-info: #2563eb;--cf-color-income: #0f9f71;--cf-color-expense: #dc2626;--cf-color-debt: #dc2626;--cf-color-investment: #2563eb;--cf-accent-rgb: 0, 168, 125;--cf-positive-rgb: 15, 159, 113;--cf-negative-rgb: 220, 38, 38;--cf-warning-rgb: 217, 119, 6;--cf-info-rgb: 37, 99, 235;--cf-overlay-backdrop: color-mix(in srgb, black 24%, transparent);--cf-shadow-card: 0 10px 24px color-mix(in srgb, black 8%, transparent);--cf-shadow-overlay: 0 18px 48px color-mix(in srgb, black 14%, transparent);--cf-radius-sm: .5rem;--cf-radius-md: .75rem;--cf-radius-lg: 1rem;--cf-auth-card-max-width: 26.25rem;--cf-blur-glass: blur(12px);--cf-surface-auth-start: #f5f7fa;--cf-surface-auth-mid: #e8eef7;--cf-surface-auth-end: #dde6f0;--cf-sidebar-width: 15rem;--cf-sidebar-width-collapsed: 3.25rem;--cf-skeleton-card-height: 5.5rem;--cf-space-1: .25rem;--cf-space-2: .5rem;--cf-space-4: 1rem;--cf-space-6: 1.5rem;--cf-space-8: 2rem;--cf-space-12: 3rem;--cf-font-body: "Source Sans 3", sans-serif;--cf-font-display: "Bitter", serif;--cf-text-2xs: .75rem;--cf-text-xs: .8125rem;--cf-text-sm: .875rem;--cf-text-lg: 1.125rem;--cf-text-xl: 1.25rem;--cf-text-2xl: 1.5rem;--cf-text-3xl: 1.875rem;--cf-text-4xl: 2.25rem;--cf-text-caption: var(--cf-text-xs);--cf-text-body: var(--cf-text-sm);--cf-text-title: var(--cf-text-lg);--cf-text-headline: var(--cf-text-2xl);--cf-text-display: 2.5rem;--cf-motion-fast: .12s;--cf-motion-base: .22s;--cf-motion-slow: .32s;--cf-ease-enter: cubic-bezier(.2, .8, .2, 1);--cf-ease-standard: cubic-bezier(.25, .1, .25, 1);--cf-chart-grid: color-mix(in srgb, var(--cf-color-text-muted, #677487) 18%, transparent);--cf-chart-overlay-accent: color-mix(in srgb, var(--cf-color-positive, #157a72) 12%, transparent);--cf-chart-income: var(--cf-color-income);--cf-chart-expense: var(--cf-color-expense);--cf-chart-debt: var(--cf-color-debt);--cf-chart-investment: var(--cf-color-investment);--cf-chart-reference: var(--cf-color-warning);--cf-chart-neutral: var(--cf-text-muted);--cf-surface-subtle: color-mix(in srgb, var(--cf-surface-card) 84%, var(--cf-surface-page) 16%);--cf-surface-raised: color-mix(in srgb, var(--cf-surface-card) 90%, var(--cf-surface-muted) 10%);--cf-surface-popover: var(--cf-surface-card);--cf-surface-canvas: var(--white);--cf-surface-accent: color-mix(in srgb, var(--cf-surface-card) 88%, var(--cf-color-accent) 12%);--cf-surface-positive: color-mix(in srgb, var(--cf-surface-card) 88%, var(--cf-color-positive) 12%);--cf-surface-negative: color-mix(in srgb, var(--cf-surface-card) 88%, var(--cf-color-negative) 12%);--cf-surface-warning: color-mix(in srgb, var(--cf-surface-card) 88%, var(--cf-color-warning) 12%);--cf-border-muted: var(--cf-border-subtle);--cf-border-accent: color-mix(in srgb, var(--cf-border-subtle) 42%, var(--cf-color-accent) 58%);--cf-border-positive: color-mix(in srgb, var(--cf-border-subtle) 42%, var(--cf-color-positive) 58%);--cf-border-negative: color-mix(in srgb, var(--cf-border-subtle) 42%, var(--cf-color-negative) 58%);--cf-border-warning: color-mix(in srgb, var(--cf-border-subtle) 42%, var(--cf-color-warning) 58%);--cf-color-text: var(--cf-text-primary);--cf-color-text-primary: var(--cf-text-primary);--cf-color-text-secondary: var(--cf-text-secondary);--cf-color-text-muted: var(--cf-text-muted);--cf-color-text-disabled: var(--text-disabled);--cf-color-on-accent: #052119;--cf-color-on-positive: #052119;--cf-color-on-negative: #260909;--cf-text-on-positive: var(--white);--cf-color-accent-hover: var(--cf-color-accent-strong);--cf-color-positive-emphasis: var(--green-emphasis);--cf-color-negative-emphasis: var(--red-emphasis);--cf-text-xs: var(--text-2xs);--cf-text-sm: var(--text-base);--cf-text-base: 1rem;--cf-radius-xs: var(--radius-xs);--cf-radius-md-plus: var(--radius-md-plus);--cf-radius-xl: var(--radius-lg-plus);--cf-radius-pill: var(--radius-pill);--cf-shadow-sm: var(--shadow-sm);--cf-focus-ring: var(--focus-ring);--cf-overlay-backdrop: color-mix(in srgb, black 42%, transparent);--cf-overlay-blur: 8px;--cf-toast-shadow: var(--cf-shadow-overlay);--cf-toast-shadow-secondary: var(--shadow-sm);--cf-chart-income-strong: #1f6350;--cf-chart-expense-strong: #7a3429;--cf-chart-tertiary: var(--purple);--cf-chart-overlay-blue: color-mix( in srgb, var(--cf-color-info, #356c96) 12%, transparent );--cf-chart-overlay-green: color-mix( in srgb, var(--cf-color-positive, #2d7b63) 12%, transparent );--cf-chart-height-sm: 160px;--cf-chart-height-md: 240px;--cf-chart-height-lg: 360px;--green: var(--cf-color-positive);--red: var(--cf-color-negative);--yellow: var(--cf-color-warning);--blue: var(--cf-color-info);--accent: var(--cf-color-accent);--accent-rgb: 0, 102, 204;--green-rgb: 26, 127, 55;--red-rgb: 207, 34, 46;--yellow-rgb: 154, 103, 0;--blue-rgb: 0, 102, 204;--muted-rgb: 101, 109, 118;--teal-rgb: 14, 138, 110;--white-rgb: 255, 255, 255;--black-rgb: 0, 0, 0;--purple: #8250df;--teal: #0e8a6e;--orange: #bc4c00;--pink: #bf3989;--elevation-1: 0 2px 8px color-mix(in srgb, black 4%, transparent), 0 0 1px color-mix(in srgb, black 8%, transparent);--elevation-2: 0 4px 16px color-mix(in srgb, black 6%, transparent), 0 1px 4px color-mix(in srgb, black 6%, transparent);--elevation-3: 0 8px 28px color-mix(in srgb, black 10%, transparent), 0 2px 8px color-mix(in srgb, black 6%, transparent);--elevation-4: 0 16px 48px color-mix(in srgb, black 14%, transparent), 0 4px 16px color-mix(in srgb, black 8%, transparent);--shadow-sm: 0 2px 8px color-mix(in srgb, black 4%, transparent), 0 0 1px color-mix(in srgb, black 8%, transparent);--shadow-md: 0 4px 16px color-mix(in srgb, black 6%, transparent), 0 1px 4px color-mix(in srgb, black 6%, transparent);--shadow-lg: 0 8px 28px color-mix(in srgb, black 10%, transparent), 0 2px 8px color-mix(in srgb, black 6%, transparent);--green-emphasis: #1a7f37;--green-emphasis-hover: #15803d;--green-dark: #116329;--red-emphasis: #cf222e;--accent-hover: #0550ae;--header-gradient-start: #4a7cc0}*:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}@keyframes portfolioContentReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes portfolioSkeletonExit{0%{opacity:1}to{opacity:0}}.portfolio-async-shell--ready{animation:portfolioContentReveal var(--cf-motion-base, .24s) var(--cf-ease-standard, ease-out) both}.portfolio-async-shell--loading{animation:portfolioSkeletonExit var(--cf-motion-fast, .18s) var(--cf-ease-standard, ease-in) both}@media(prefers-reduced-motion:reduce){.portfolio-async-shell--ready,.portfolio-async-shell--loading{animation:none}}.tab-content-container{background:var(--bg-primary, var(--cf-surface-page));color:var(--text-primary, var(--cf-color-text-primary))}.empty-placeholder{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-12) var(--space-5);color:var(--text-muted);font-size:var(--text-sm)}button,[role=button],a,select,input[type=checkbox],input[type=radio]{min-height:44px}button:has(app-icon:only-child),button.icon-btn{min-width:44px}.kpi-val-sm{font-size:.75rem}.kpi-sub-tiny{font-size:.65rem;color:var(--text-muted);display:block}.text-emphasis{font-size:var(--text-xl);font-weight:700}.scroll-table-sm{max-height:250px}.no-data-padded{padding:var(--space-8)}
