.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}:root{--ff-bg-primary: #FAFAFA;--ff-bg-secondary: #FFFFFF;--ff-bg-tertiary: #F5F5F5;--ff-bg-hover: #F0F0F0;--ff-bg-active: #E5E5E5;--ff-text-primary: #0A0A0A;--ff-text-secondary: #737373;--ff-text-tertiary: #A3A3A3;--ff-text-inverse: #FFFFFF;--ff-text-link: var(--ff-accent);--ff-accent: #0055D4;--ff-accent-hover: #0046B0;--ff-accent-active: #003A91;--ff-accent-light: #EBF2FF;--ff-accent-subtle: rgba(0, 85, 212, .08);--ff-success: #16A34A;--ff-success-light: #F0FDF4;--ff-warning: #CA8A04;--ff-warning-light: #FEFCE8;--ff-danger: #DC2626;--ff-danger-light: #FEF2F2;--ff-info: #0055D4;--ff-info-light: #EBF2FF;--ff-danger-hover: #B91C1C;--ff-danger-active: #991B1B;--ff-danger-ring: rgba(220, 38, 38, .1);--ff-border: #E5E5E5;--ff-border-subtle: #F5F5F5;--ff-border-focus: var(--ff-accent);--ff-backdrop: rgba(0, 0, 0, .4);--ff-account-checking: #2563EB;--ff-account-savings: #0D9488;--ff-account-credit: #EA580C;--ff-account-liability: #DC2626;--ff-account-revenue: #16A34A;--ff-account-expense: #737373;--ff-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ff-font-mono: "JetBrains Mono", "Fira Code", monospace;--ff-text-xs: .75rem;--ff-text-sm: .875rem;--ff-text-base: 1rem;--ff-text-lg: 1.125rem;--ff-text-xl: 1.25rem;--ff-text-2xl: 1.5rem;--ff-text-3xl: 2rem;--ff-text-4xl: 2.5rem;--ff-font-normal: 400;--ff-font-medium: 500;--ff-font-semibold: 600;--ff-font-bold: 700;--ff-leading-tight: 1.2;--ff-leading-snug: 1.375;--ff-leading-normal: 1.5;--ff-leading-relaxed: 1.625;--ff-tracking-tight: -.025em;--ff-tracking-normal: 0;--ff-tracking-wide: .025em;--ff-space-0: 0;--ff-space-px: 1px;--ff-space-0\.5: .125rem;--ff-space-1: .25rem;--ff-space-1\.5: .375rem;--ff-space-2: .5rem;--ff-space-3: .75rem;--ff-space-4: 1rem;--ff-space-5: 1.25rem;--ff-space-6: 1.5rem;--ff-space-8: 2rem;--ff-space-10: 2.5rem;--ff-space-12: 3rem;--ff-space-16: 4rem;--ff-space-20: 5rem;--ff-space-24: 6rem;--ff-radius-xs: .25rem;--ff-radius-sm: .375rem;--ff-radius-md: .5rem;--ff-radius-lg: .75rem;--ff-radius-xl: 1rem;--ff-radius-full: 9999px;--ff-shadow-xs: 0 1px 2px rgba(0, 0, 0, .03);--ff-shadow-sm: 0 1px 3px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .02);--ff-shadow-md: 0 4px 6px rgba(0, 0, 0, .04), 0 2px 4px rgba(0, 0, 0, .02);--ff-shadow-lg: 0 10px 15px rgba(0, 0, 0, .05), 0 4px 6px rgba(0, 0, 0, .02);--ff-shadow-xl: 0 20px 25px rgba(0, 0, 0, .06), 0 8px 10px rgba(0, 0, 0, .02);--ff-shadow-ring: 0 0 0 3px var(--ff-accent-subtle);--ff-transition-fast: .12s ease;--ff-transition-base: .2s ease;--ff-transition-slow: .3s ease;--ff-transition-spring: .3s cubic-bezier(.34, 1.56, .64, 1);--ff-sidebar-width: 260px;--ff-sidebar-collapsed: 72px;--ff-topbar-height: 64px;--ff-content-max-width: 1280px;--ff-z-dropdown: 50;--ff-z-sticky: 80;--ff-z-sidebar: 100;--ff-z-topbar: 110;--ff-z-overlay: 150;--ff-z-modal: 200;--ff-z-toast: 300}[data-theme=dark]{--ff-bg-primary: #0A0A0A;--ff-bg-secondary: #141414;--ff-bg-tertiary: #1C1C1C;--ff-bg-hover: #262626;--ff-bg-active: #333333;--ff-text-primary: #FAFAFA;--ff-text-secondary: #A3A3A3;--ff-text-tertiary: #737373;--ff-accent: #2E7CF6;--ff-accent-hover: #5A9DF5;--ff-accent-active: #0055D4;--ff-accent-light: #0A1628;--ff-accent-subtle: rgba(46, 124, 246, .12);--ff-success: #22C55E;--ff-success-light: #052E16;--ff-warning: #EAB308;--ff-warning-light: #1C1A05;--ff-danger: #EF4444;--ff-danger-hover: #DC2626;--ff-danger-active: #B91C1C;--ff-danger-light: #1F0A0A;--ff-danger-ring: rgba(239, 68, 68, .15);--ff-info: #2E7CF6;--ff-info-light: #0A1628;--ff-border: #262626;--ff-border-subtle: #1C1C1C;--ff-backdrop: rgba(0, 0, 0, .6);--ff-shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--ff-shadow-sm: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .2);--ff-shadow-md: 0 4px 6px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .2);--ff-shadow-lg: 0 10px 15px rgba(0, 0, 0, .5), 0 4px 6px rgba(0, 0, 0, .2);--ff-shadow-xl: 0 20px 25px rgba(0, 0, 0, .5), 0 8px 10px rgba(0, 0, 0, .2);--ff-shadow-ring: 0 0 0 3px var(--ff-accent-subtle);--ff-account-checking: #3B82F6;--ff-account-savings: #14B8A6;--ff-account-credit: #F97316;--ff-account-liability: #EF4444;--ff-account-revenue: #22C55E;--ff-account-expense: #A3A3A3}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--ff-font-family),system-ui;font-size:var(--ff-text-base);font-weight:var(--ff-font-normal);line-height:var(--ff-leading-normal);color:var(--ff-text-primary);background:var(--ff-bg-primary);min-height:100vh}a{color:var(--ff-accent);text-decoration:none}a:hover{color:var(--ff-accent-hover)}button{font-family:inherit;font-size:inherit;border:none;background:none;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit;outline:none;border:none;background:none;color:inherit}table{border-collapse:collapse;width:100%}img,svg{display:block;max-width:100%}h1,h2,h3,h4,h5,h6{font-weight:var(--ff-font-semibold);line-height:var(--ff-leading-tight);color:var(--ff-text-primary)}.ff-dialog-backdrop{position:fixed;inset:0;background:var(--ff-backdrop)}.cdk-overlay-container{z-index:var(--ff-z-modal)}.ff-select-dropdown{background:var(--ff-bg-secondary);border:1px solid var(--ff-border);border-radius:var(--ff-radius-sm);box-shadow:var(--ff-shadow-lg);max-height:260px;overflow-y:auto;padding:var(--ff-space-1) 0}.ff-select-option-list{list-style:none;margin:0;padding:0}.ff-select-option{display:flex;align-items:center;justify-content:space-between;gap:var(--ff-space-2);padding:var(--ff-space-2) var(--ff-space-3);font-size:var(--ff-text-sm);color:var(--ff-text-primary);cursor:pointer;outline:none;transition:background var(--ff-transition-fast)}.ff-select-option:hover,.ff-select-option.cdk-active,.ff-select-option[data-active=true]{background:var(--ff-bg-hover)}.ff-select-option[aria-selected=true]{font-weight:var(--ff-font-medium)}.ff-select-option-check{flex-shrink:0;color:var(--ff-accent)}.ff-datepicker-popup{background:var(--ff-bg-secondary);border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);box-shadow:var(--ff-shadow-lg);padding:var(--ff-space-3);min-width:280px}.ff-datepicker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ff-space-3)}.ff-datepicker-title{font-size:var(--ff-text-sm);font-weight:var(--ff-font-semibold);color:var(--ff-text-primary)}.ff-datepicker-nav{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--ff-radius-xs);background:none;color:var(--ff-text-secondary);cursor:pointer;transition:background var(--ff-transition-fast),color var(--ff-transition-fast)}.ff-datepicker-nav:hover{background:var(--ff-bg-hover);color:var(--ff-text-primary)}.ff-datepicker-nav:focus-visible{outline:2px solid var(--ff-accent);outline-offset:-2px}.ff-datepicker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin-bottom:var(--ff-space-1)}.ff-datepicker-weekdays span{display:flex;align-items:center;justify-content:center;height:28px;font-size:var(--ff-text-xs);font-weight:var(--ff-font-medium);color:var(--ff-text-tertiary);text-transform:uppercase;letter-spacing:var(--ff-tracking-wide)}.ff-datepicker-days{display:grid;grid-template-columns:repeat(7,1fr);gap:0}.ff-datepicker-day{display:flex;align-items:center;justify-content:center;width:36px;height:34px;border:none;border-radius:var(--ff-radius-xs);background:none;font-size:var(--ff-text-sm);color:var(--ff-text-primary);cursor:pointer;transition:background var(--ff-transition-fast)}.ff-datepicker-day:hover{background:var(--ff-bg-hover)}.ff-datepicker-day:focus-visible{outline:2px solid var(--ff-accent);outline-offset:-2px}.ff-datepicker-day.outside{color:var(--ff-text-tertiary)}.ff-datepicker-day.today{font-weight:var(--ff-font-semibold);box-shadow:inset 0 -2px 0 var(--ff-accent)}.ff-datepicker-day.selected{background:var(--ff-accent);color:var(--ff-text-inverse);font-weight:var(--ff-font-medium)}.ff-datepicker-day.selected:hover{background:var(--ff-accent-hover)}.ff-datepicker-time{display:flex;align-items:center;justify-content:space-between;margin-top:var(--ff-space-2);padding-top:var(--ff-space-2);border-top:1px solid var(--ff-border-subtle)}.ff-datepicker-time-label{font-size:var(--ff-text-xs);color:var(--ff-text-secondary)}.ff-datepicker-time-input{padding:var(--ff-space-1) var(--ff-space-2);font-size:var(--ff-text-sm);font-family:var(--ff-font-mono);color:var(--ff-text-primary);background:var(--ff-bg-primary);border:1px solid var(--ff-border);border-radius:var(--ff-radius-sm);outline:none}.ff-datepicker-time-input:focus{border-color:var(--ff-accent);box-shadow:var(--ff-ring)}.ff-datepicker-footer{display:flex;justify-content:space-between;margin-top:var(--ff-space-2);padding-top:var(--ff-space-2);border-top:1px solid var(--ff-border-subtle)}.ff-datepicker-footer-btn{border:none;background:none;font-size:var(--ff-text-xs);font-weight:var(--ff-font-medium);color:var(--ff-accent);cursor:pointer;padding:var(--ff-space-1) var(--ff-space-2);border-radius:var(--ff-radius-xs);transition:background var(--ff-transition-fast)}.ff-datepicker-footer-btn:hover{background:var(--ff-accent-light)}.ff-datepicker-footer-btn:focus-visible{outline:2px solid var(--ff-accent);outline-offset:-2px}.ff-field .field input,.ff-field .field select,.ff-field .field textarea{flex:1;min-width:0;border:none;background:transparent;color:var(--ff-text-primary);font-family:var(--ff-font-family);outline:none}.ff-field .field input::placeholder,.ff-field .field select::placeholder,.ff-field .field textarea::placeholder{color:var(--ff-text-tertiary)}.ff-field .field textarea{min-height:calc(var(--ff-leading-normal) * 5em);resize:vertical;padding-top:var(--ff-space-2);padding-bottom:var(--ff-space-2)}.ff-field .field select{appearance:none;cursor:pointer}.ff-field .field [ffPrefix],.ff-field .field [ffSuffix]{align-self:center}.ff-field--sm .field input,.ff-field--sm .field select,.ff-field--sm .field textarea{padding:0 var(--ff-space-2\.5, var(--ff-space-3));font-size:var(--ff-text-sm)}.ff-field--md .field input,.ff-field--md .field select,.ff-field--md .field textarea{padding:0 var(--ff-space-3);font-size:var(--ff-text-sm)}.ff-field--lg .field input,.ff-field--lg .field select,.ff-field--lg .field textarea{padding:0 var(--ff-space-4);font-size:var(--ff-text-base)}
