:root{--color-primary-50: #eefbf1;--color-primary-100: #d8f4df;--color-primary-200: #b3e8c1;--color-primary-300: #86d89e;--color-primary-400: #52c378;--color-primary-500: #2fae64;--color-primary-600: #229352;--color-primary-700: #1b7742;--color-primary-800: #155c34;--color-primary-900: #0f3f26;--color-primary-950: #0a2417;--color-secondary-50: #fdf8ec;--color-secondary-100: #f8ecc9;--color-secondary-200: #f2dda6;--color-secondary-300: #ecce84;--color-secondary-400: #e3ba5f;--color-secondary-500: #d9a73a;--color-secondary-600: #c3922c;--color-secondary-700: #a97c1f;--color-secondary-800: #8b661a;--color-secondary-900: #6e4f12;--color-accent: #235e85;--color-accent-light: #86b9dd;--color-accent-dark: #17394f;--color-success: #229352;--color-success-light: #d8f4df;--color-warning: #db8b2b;--color-warning-light: #faebd0;--color-error: #d5473f;--color-error-light: #fae1df;--color-info: #2e7fb0;--color-info-light: #cde4f2;--color-white: #ffffff;--color-black: #0d1310;--color-gray-50: #f6f9f7;--color-gray-100: #ebf0ed;--color-gray-200: #dae3dd;--color-gray-300: #c0ccc4;--color-gray-400: #99a89f;--color-gray-500: #758479;--color-gray-600: #57655b;--color-gray-700: #414d44;--color-gray-800: #2b342d;--color-gray-900: #182019;--color-gray-950: #0d1310;--color-background: #f6f9f7;--color-surface: #ffffff;--color-surface-elevated: #ffffff;--color-surface-sunken: #ebf0ed;--color-surface-overlay: rgba(13, 19, 16, .05);--color-surface-brand: #0a2417;--color-error-50: #fdf3f2;--color-error-100: #fae1df;--color-error-200: #f3c3bf;--color-error-300: #e99a94;--color-error-400: #df6e66;--color-error-500: #d5473f;--color-error-600: #bc3b34;--color-error-700: #a83530;--color-error-800: #862a26;--color-error-900: #5f1e1b;--color-warning-50: #fdf7ec;--color-warning-100: #faebd0;--color-warning-200: #f4d5a2;--color-warning-300: #ebba6d;--color-warning-400: #e3a248;--color-warning-500: #db8b2b;--color-warning-600: #c27722;--color-warning-700: #a9691c;--color-warning-800: #855116;--color-warning-900: #5e3a10;--color-success-50: #eefbf1;--color-success-100: #d8f4df;--color-success-200: #b3e8c1;--color-success-300: #86d89e;--color-success-400: #52c378;--color-success-500: #2fae64;--color-success-600: #229352;--color-success-700: #1b7742;--color-success-800: #155c34;--color-success-900: #0f3f26;--color-info-50: #eaf3fa;--color-info-100: #cde4f2;--color-info-200: #a9cfe8;--color-info-300: #86b9dd;--color-info-400: #559cc6;--color-info-500: #2e7fb0;--color-info-600: #276e99;--color-info-700: #235e85;--color-info-800: #1c4b69;--color-info-900: #17394f;--color-indigo-50: #eaf3fa;--color-indigo-100: #cde4f2;--color-indigo-200: #a9cfe8;--color-indigo-300: #86b9dd;--color-indigo-400: #559cc6;--color-indigo-500: #2e7fb0;--color-indigo-600: #276e99;--color-indigo-700: #235e85;--color-indigo-800: #1c4b69;--color-indigo-900: #17394f;--color-purple-50: #eaf7f6;--color-purple-100: #ccebe9;--color-purple-200: #9dd9d6;--color-purple-300: #63c2be;--color-purple-400: #32ada8;--color-purple-500: #1e9c97;--color-purple-600: #18847f;--color-purple-700: #146f6c;--color-purple-800: #105855;--color-purple-900: #0c403e;--color-pink-50: #fdf3f2;--color-pink-100: #fae1df;--color-pink-200: #f3c3bf;--color-pink-300: #e99a94;--color-pink-400: #df6e66;--color-pink-500: #d5473f;--color-pink-600: #bc3b34;--color-teal-50: #eaf7f6;--color-teal-100: #ccebe9;--color-teal-200: #9dd9d6;--color-teal-300: #63c2be;--color-teal-400: #32ada8;--color-teal-500: #1e9c97;--color-teal-600: #18847f;--color-cyan-50: #eaf7f6;--color-cyan-100: #ccebe9;--color-cyan-200: #9dd9d6;--color-cyan-500: #1e9c97;--color-cyan-600: #18847f;--chart-1: #229352;--chart-2: #2e7fb0;--chart-3: #a97c1f;--chart-4: #1e9c97;--chart-5: #758479;--chart-6: #d5473f;--font-heading: "Figtree", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", "SFMono-Regular", Menlo, Consolas, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: clamp(1.125rem, 1rem + .5vw, 1.25rem);--text-2xl: clamp(1.25rem, 1.1rem + .75vw, 1.5rem);--text-3xl: clamp(1.5rem, 1.2rem + 1.25vw, 1.875rem);--text-4xl: clamp(1.75rem, 1.3rem + 1.75vw, 2.25rem);--text-5xl: clamp(2rem, 1.4rem + 2.5vw, 3rem);--text-6xl: clamp(2.5rem, 1.5rem + 3.5vw, 3.75rem);--font-light: 300;--font-regular: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--tracking-tighter: -.05em;--tracking-tight: -.025em;--tracking-normal: 0;--tracking-wide: .025em;--tracking-wider: .05em;--tracking-widest: .1em;--space-0: 0;--space-px: 1px;--space-0-5: .125rem;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-5: 1.25rem;--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-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-28: 7rem;--space-32: 8rem;--radius-none: 0;--radius-sm: .5rem;--radius-default: .5rem;--radius-md: .75rem;--radius-lg: 1.25rem;--radius-xl: 1.75rem;--radius-2xl: 1.75rem;--radius-3xl: 2rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(13, 21, 18, .04);--shadow-sm: 0 1px 2px rgba(13, 21, 18, .06), 0 1px 1px rgba(13, 21, 18, .04);--shadow-md: 0 4px 12px rgba(13, 21, 18, .08), 0 1px 2px rgba(13, 21, 18, .05);--shadow-lg: 0 16px 32px rgba(13, 21, 18, .12), 0 2px 6px rgba(13, 21, 18, .06);--shadow-xl: 0 24px 48px rgba(13, 21, 18, .14), 0 4px 10px rgba(13, 21, 18, .07);--shadow-2xl: 0 32px 64px rgba(13, 21, 18, .18);--shadow-inner: inset 0 2px 4px 0 rgba(13, 21, 18, .05);--shadow-none: 0 0 #0000;--shadow-hover: 0 4px 12px rgba(13, 21, 18, .08);--shadow-hover-lg: 0 16px 32px rgba(13, 21, 18, .12);--shadow-primary: 0 4px 12px rgba(47, 174, 100, .16);--shadow-primary-lg: 0 10px 24px rgba(47, 174, 100, .22);--transition-none: none;--transition-all: all .2s var(--ease-standard);--transition-default: background-color, border-color, color, fill, stroke, opacity, box-shadow, transform .2s var(--ease-standard);--transition-colors: background-color, border-color, color, fill, stroke .2s var(--ease-standard);--transition-opacity: opacity .2s var(--ease-standard);--transition-shadow: box-shadow .2s var(--ease-standard);--transition-transform: transform .2s var(--ease-standard);--duration-75: 75ms;--duration-100: .1s;--duration-150: .15s;--duration-200: .2s;--duration-300: .3s;--duration-500: .5s;--duration-700: .7s;--duration-1000: 1s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: var(--ease-standard);--ease-in-out: var(--ease-standard);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-in-quart: cubic-bezier(.5, 0, .75, 0);--duration-enter: .3s;--duration-exit: .22s;--duration-feedback: .12s;--duration-stagger-item: 50ms;--z-0: 0;--z-raise: 1;--z-raise-2: 2;--z-10: 10;--z-20: 20;--z-30: 30;--z-40: 40;--z-50: 50;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--color-black-alpha-5: rgba(0, 0, 0, .05);--color-black-alpha-8: rgba(0, 0, 0, .08);--color-black-alpha-10: rgba(0, 0, 0, .1);--color-black-alpha-15: rgba(0, 0, 0, .15);--color-black-alpha-20: rgba(0, 0, 0, .2);--color-black-alpha-25: rgba(0, 0, 0, .25);--color-black-alpha-30: rgba(0, 0, 0, .3);--color-black-alpha-40: rgba(0, 0, 0, .4);--color-black-alpha-50: rgba(0, 0, 0, .5);--color-black-alpha-60: rgba(0, 0, 0, .6);--color-black-alpha-70: rgba(0, 0, 0, .7);--color-white-alpha-10: rgba(255, 255, 255, .1);--color-white-alpha-15: rgba(255, 255, 255, .15);--color-white-alpha-20: rgba(255, 255, 255, .2);--color-white-alpha-25: rgba(255, 255, 255, .25);--color-white-alpha-30: rgba(255, 255, 255, .3);--color-white-alpha-50: rgba(255, 255, 255, .5);--color-white-alpha-60: rgba(255, 255, 255, .6);--color-white-alpha-80: rgba(255, 255, 255, .8);--color-white-alpha-90: rgba(255, 255, 255, .9);--color-white-alpha-98: rgba(255, 255, 255, .98);--color-success-tint: rgba(47, 174, 100, .1);--color-success-tint-light: rgba(47, 174, 100, .05);--color-success-tint-strong: rgba(47, 174, 100, .15);--color-success-tint-stronger: rgba(47, 174, 100, .2);--color-error-tint: rgba(213, 71, 63, .1);--color-error-tint-strong: rgba(213, 71, 63, .15);--color-warning-tint: rgba(219, 139, 43, .1);--color-info-tint: rgba(46, 127, 176, .1);--color-gray-tint: rgba(117, 132, 121, .1);--color-indigo-tint: rgba(46, 127, 176, .1);--color-indigo-tint-strong: rgba(46, 127, 176, .15);--color-purple-tint: rgba(30, 156, 151, .1);--color-purple-tint-strong: rgba(30, 156, 151, .15);--shadow-error: 0 2px 8px rgba(213, 71, 63, .2);--shadow-error-lg: 0 4px 12px rgba(213, 71, 63, .28);--shadow-error-ring: 0 0 0 3px rgba(213, 71, 63, .18);--shadow-error-ring-lg: 0 0 0 4px rgba(213, 71, 63, .24);--shadow-warning: 0 2px 8px rgba(219, 139, 43, .2);--shadow-warning-lg: 0 4px 12px rgba(219, 139, 43, .28);--shadow-success: 0 4px 12px rgba(47, 174, 100, .22);--shadow-success-lg: 0 8px 20px rgba(47, 174, 100, .28);--shadow-success-sm: 0 2px 6px rgba(47, 174, 100, .16);--shadow-success-glow: 0 4px 12px rgba(47, 174, 100, .22);--shadow-success-glow-lg: 0 8px 20px rgba(47, 174, 100, .28);--shadow-success-subtle: 0 4px 16px rgba(47, 174, 100, .18);--shadow-success-ring: 0 0 0 3px rgba(47, 174, 100, .35);--shadow-info: 0 4px 12px rgba(46, 127, 176, .22);--shadow-info-lg: 0 8px 24px rgba(46, 127, 176, .3);--shadow-purple: 0 4px 12px rgba(30, 156, 151, .2);--shadow-purple-lg: 0 8px 24px rgba(30, 156, 151, .28);--shadow-card: 0 1px 2px rgba(13, 21, 18, .06), 0 1px 1px rgba(13, 21, 18, .04);--shadow-card-hover: 0 4px 12px rgba(13, 21, 18, .08);--shadow-dropdown: 0 4px 12px rgba(13, 21, 18, .1);--shadow-dropdown-hover: 0 6px 16px rgba(13, 21, 18, .12);--shadow-popup: 0 16px 32px rgba(13, 21, 18, .12), 0 2px 6px rgba(13, 21, 18, .06);--shadow-popup-elevated: 0 24px 48px rgba(13, 21, 18, .14);--shadow-modal: 0 24px 48px rgba(13, 21, 18, .2), 0 4px 10px rgba(13, 21, 18, .08);--shadow-modal-heavy: 0 32px 64px rgba(13, 21, 18, .28);--shadow-elevated: 0 16px 32px rgba(13, 21, 18, .1), 0 2px 6px rgba(13, 21, 18, .05);--shadow-elevated-border: 1px solid var(--dm-border);--shadow-float: 0 4px 12px rgba(13, 21, 18, .1);--shadow-float-hover: 0 6px 20px rgba(13, 21, 18, .14);--shadow-subtle: 0 1px 2px rgba(13, 21, 18, .04);--shadow-subtle-hover: 0 4px 8px rgba(13, 21, 18, .06);--shadow-focus: 0 2px 8px rgba(13, 21, 18, .06);--shadow-deep: 0 8px 20px rgba(13, 21, 18, .12);--shadow-deep-hover: 0 12px 28px rgba(13, 21, 18, .15);--shadow-focus-ring: 0 0 0 3px rgba(47, 174, 100, .35);--text-shadow-sm: 0 1px 2px rgba(13, 21, 18, .12);--text-shadow-md: 0 1px 3px rgba(13, 21, 18, .28);--text-shadow-lg: 0 2px 4px rgba(13, 21, 18, .36);--text-shadow-glow: 0 1px 4px rgba(13, 21, 18, .16);--text-shadow-glow-lg: 0 2px 6px rgba(13, 21, 18, .2);--text-shadow-glow-xl: 0 2px 8px rgba(13, 21, 18, .36);--text-shadow-error: 0 1px 2px rgba(213, 71, 63, .12);--text-shadow-success: 0 1px 2px rgba(47, 174, 100, .12);color-scheme:light;--dm-bg: var(--color-background);--dm-surface: var(--color-surface);--dm-surface-elevated: var(--color-surface-elevated);--dm-surface-hover: var(--color-gray-50);--dm-surface-sunken: var(--color-surface-sunken);--dm-surface-brand: var(--color-surface-brand);--dm-text-primary: var(--color-gray-900);--dm-text-secondary: var(--color-gray-700);--dm-text-tertiary: #5f6e64;--dm-text-muted: #67756c;--dm-text-inverse: var(--color-white);--dm-text-on-brand: #ffffff;--dm-brand-solid: var(--color-primary-700);--dm-brand-solid-hover: var(--color-primary-800);--dm-brand-text-hover: var(--color-primary-800);--dm-border: var(--color-gray-200);--dm-border-strong: var(--color-gray-300);--dm-border-subtle: var(--color-gray-100);--dm-border-control: #85948a;--dm-input-bg: var(--color-white);--dm-input-border: var(--dm-border-control);--dm-input-text: var(--color-gray-800);--dm-input-placeholder: var(--dm-text-muted);--dm-card-bg: var(--color-surface);--dm-card-border: var(--color-gray-200);--dm-card-shadow: var(--shadow-sm);--dm-card-shadow-hover: var(--shadow-lg);--dm-nav-bg: var(--color-white);--dm-nav-border: var(--color-gray-200);--dm-tab-bg: transparent;--dm-tab-active-bg: var(--color-surface);--dm-tab-text: #5f6e64;--dm-tab-active-text: var(--color-primary-700);--dm-modal-bg: var(--color-surface);--dm-modal-backdrop: rgba(13, 21, 18, .45);--dm-modal-shadow: var(--shadow-modal);--dm-chart-grid: rgba(13, 21, 18, .06);--dm-chart-tick: var(--dm-text-muted);--dm-chart-tooltip-bg: var(--color-gray-900);--dm-chart-tooltip-text: #ffffff;--dm-success-tint-bg: var(--color-success-50);--dm-error-tint-bg: var(--color-error-50);--dm-warning-tint-bg: var(--color-warning-50);--dm-info-tint-bg: var(--color-info-50);--dm-success-text: var(--color-success-700);--dm-error-text: var(--color-error-700);--dm-warning-text: var(--color-warning-800);--dm-brand-text: var(--color-primary-700);--dm-info-text: var(--color-info-700);--dm-skeleton-base: var(--color-gray-100);--dm-skeleton-shine: var(--color-gray-200);--dm-scrollbar-track: var(--color-gray-100);--dm-scrollbar-thumb: var(--color-gray-300)}[data-theme=dark]{color-scheme:dark;--color-accent: #86b9dd;--color-accent-light: #cde4f2;--dm-bg: #0b120f;--dm-surface: #131c17;--dm-surface-elevated: #182620;--dm-surface-hover: #1e2c25;--dm-surface-sunken: #0f1613;--dm-surface-brand: #0a2417;--dm-text-primary: #eef5f0;--dm-text-secondary: #a9bbaf;--dm-text-tertiary: #93a79a;--dm-text-muted: #7c8f82;--dm-text-inverse: #0b120f;--dm-text-on-brand: #0b120f;--dm-brand-solid: var(--color-primary-400);--dm-brand-solid-hover: var(--color-primary-300);--dm-brand-text-hover: var(--color-primary-200);--dm-border: #5a685e;--dm-border-strong: #616f66;--dm-border-control: #667a6c;--dm-border-subtle: #2b352e;--dm-input-bg: #16211a;--dm-input-border: var(--dm-border-control);--dm-input-text: #e3ece6;--dm-input-placeholder: var(--dm-text-muted);--dm-card-bg: #131c17;--dm-card-border: #232e27;--dm-card-shadow: 0 1px 2px rgba(0, 0, 0, .4);--dm-card-shadow-hover: 0 20px 40px rgba(0, 0, 0, .55);--dm-nav-bg: #0f1713;--dm-nav-border: #232e27;--dm-tab-bg: transparent;--dm-tab-active-bg: #1c2a22;--dm-tab-text: #93a79a;--dm-tab-active-text: #86d89e;--dm-modal-bg: #182620;--dm-modal-backdrop: rgba(4, 8, 6, .72);--dm-modal-shadow: 0 32px 64px rgba(0, 0, 0, .6);--dm-chart-grid: rgba(255, 255, 255, .08);--dm-chart-tick: #93a79a;--dm-chart-tooltip-bg: #1c2a22;--dm-chart-tooltip-text: #eef5f0;--chart-1: #52c378;--chart-2: #86b9dd;--chart-3: #ecce84;--chart-4: #63c2be;--chart-5: #99a89f;--chart-6: #e8746c;--dm-success-tint-bg: rgba(47, 174, 100, .16);--dm-error-tint-bg: rgba(213, 71, 63, .18);--dm-warning-tint-bg: rgba(219, 139, 43, .15);--dm-info-tint-bg: rgba(46, 127, 176, .18);--dm-success-text: #86d89e;--dm-error-text: #e8746c;--dm-warning-text: #e3a248;--dm-brand-text: #86d89e;--dm-info-text: #86b9dd;--dm-skeleton-base: #1c2a22;--dm-skeleton-shine: #24352b;--dm-scrollbar-track: #131c17;--dm-scrollbar-thumb: #3a4a40}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--dm-text-secondary);background-color:var(--dm-bg);margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--dm-text-primary);letter-spacing:var(--tracking-tight);margin:0}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}a{color:var(--dm-brand-text);text-decoration:none;transition:var(--transition-colors)}a:hover{color:var(--dm-brand-text-hover)}a:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px;border-radius:var(--radius-sm)}code,pre{font-family:var(--font-mono);font-feature-settings:"tnum" 1}.amount,.currency,.financial-value{font-feature-settings:"tnum" 1;font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-to-content{position:absolute;top:-100%;left:var(--space-4);z-index:var(--z-tooltip);padding:var(--space-3) var(--space-5);background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border-radius:var(--radius-md);font-weight:var(--font-semibold);font-size:var(--text-sm);text-decoration:none;transition:top var(--duration-200) var(--ease-out)}.skip-to-content:focus{top:var(--space-4);outline:2px solid var(--dm-text-on-brand);outline-offset:2px}:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}[tabindex]:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px;border-radius:var(--radius-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);line-height:var(--leading-tight);cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.btn:active{transform:translateY(0)}.btn--primary{background:linear-gradient(135deg,var(--color-primary-500) 0%,var(--color-primary-600) 100%);color:var(--color-white);box-shadow:var(--shadow-primary)}.btn--primary:hover{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);box-shadow:var(--shadow-primary-lg)}.btn--primary:disabled{background:var(--color-gray-300);color:var(--color-gray-500);box-shadow:none;cursor:not-allowed;transform:none}.btn--secondary{background:var(--dm-nav-bg);color:var(--dm-text-secondary);border:1px solid var(--dm-border)}.btn--secondary:hover{background:var(--dm-surface-hover);border-color:var(--dm-border-strong);box-shadow:var(--shadow-sm)}.btn--secondary:disabled{background:var(--color-gray-50);color:var(--color-gray-400);border-color:var(--color-gray-200);cursor:not-allowed;transform:none}.btn--ghost{background:transparent;color:var(--color-primary-600);padding:var(--space-2) var(--space-3)}.btn--ghost:hover{background:var(--color-primary-50);color:var(--color-primary-700)}.btn--ghost:disabled{color:var(--color-gray-400);background:transparent;cursor:not-allowed}.btn--danger{background:linear-gradient(135deg,var(--color-error-500) 0%,var(--color-error-600) 100%);color:var(--color-white);box-shadow:0 2px 8px #ef444440}.btn--danger:hover{background:linear-gradient(135deg,var(--color-error-600) 0%,var(--color-error-700) 100%);box-shadow:0 4px 12px #ef444459}.btn--danger:disabled{background:var(--color-gray-300);color:var(--color-gray-500);box-shadow:none;cursor:not-allowed;transform:none}.btn--warning{background:linear-gradient(135deg,var(--color-secondary-500) 0%,var(--color-secondary-600) 100%);color:var(--color-white);box-shadow:0 2px 8px #f59e0b40}.btn--warning:hover{background:linear-gradient(135deg,var(--color-secondary-600) 0%,var(--color-secondary-700) 100%);box-shadow:0 4px 12px #f59e0b59}.btn--warning:disabled{background:var(--color-gray-300);color:var(--color-gray-500);box-shadow:none;cursor:not-allowed;transform:none}.btn--sm{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-default)}.btn--lg{padding:var(--space-4) var(--space-7);font-size:var(--text-base);border-radius:var(--radius-lg)}.btn{position:relative;overflow:hidden}.btn .ripple{position:absolute;border-radius:50%;background:var(--color-white-alpha-30);transform:scale(0);animation:ripple-expand .5s var(--ease-out) forwards;pointer-events:none}@keyframes ripple-expand{to{transform:scale(4);opacity:0}}.btn--loading{position:relative;color:transparent!important;pointer-events:none}.btn--loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:btn-spin .6s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.stagger-in{animation:fadeSlideIn var(--duration-enter) var(--ease-out-expo) both;animation-delay:calc(min(var(--i, 0),8) * var(--duration-stagger-item))}@media(prefers-reduced-motion:reduce){@keyframes fadeSlideIn{0%{opacity:0}to{opacity:1}}.stagger-in{animation-duration:var(--duration-feedback)}}@keyframes listItemEnter{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes listItemExit{to{opacity:0;transform:translate(12px);max-height:0;padding:0;margin:0;overflow:hidden}}.list-item-enter{animation:listItemEnter var(--duration-enter) var(--ease-out-expo) both}.list-item-exit{animation:listItemExit var(--duration-exit) var(--ease-in-quart) forwards}.card-item{background:var(--dm-card-bg);border:1px solid var(--dm-card-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-xs);transition:box-shadow var(--duration-feedback) var(--ease-out),border-color var(--duration-feedback) var(--ease-out);position:relative;overflow:hidden}.card-item:hover{box-shadow:var(--shadow-sm);border-color:var(--dm-border-strong)}.card-item--interactive{cursor:pointer}.card-item--interactive:hover{box-shadow:var(--shadow-md)}.card-item--slide{cursor:pointer}.card-item--slide:hover{box-shadow:var(--shadow-md);border-color:var(--dm-border-strong)}.detail-group{display:flex;flex-direction:column;gap:var(--space-1)}.detail-label{font-size:var(--text-xs);font-weight:600;color:var(--dm-text-tertiary);text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:var(--text-base);font-weight:600;color:var(--dm-text-secondary)}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-5);margin-bottom:var(--space-8);margin-top:var(--space-10)}.insight-card{background:var(--dm-surface);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-xs);transition:box-shadow var(--duration-feedback) var(--ease-out);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-3)}.insight-card:hover{box-shadow:var(--shadow-hover)}.insight-icon{font-size:36px;line-height:1}.insight-content{flex:1;display:flex;flex-direction:column;align-items:center;width:100%}.insight-label{font-size:var(--text-xs);font-weight:600;color:var(--dm-text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-1-5)}.insight-value{font-size:var(--text-2xl);font-weight:700;line-height:var(--leading-tight)}.insight-subtext{font-size:var(--text-sm);color:var(--dm-text-secondary);margin-top:var(--space-1);font-weight:600}.section-header-with-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-7);flex-wrap:wrap;gap:var(--space-4)}.section-header-with-actions h2{margin:0}.section-actions{display:flex;gap:var(--space-3);align-items:center}.search-btn{background:var(--dm-surface-hover);border:2px solid var(--dm-border);border-radius:var(--radius-md);width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color var(--duration-feedback) var(--ease-out),box-shadow var(--duration-feedback) var(--ease-out);padding:0;box-shadow:var(--shadow-xs)}.search-btn:hover{border-color:var(--color-primary-500);box-shadow:var(--shadow-hover)}.search-btn:hover svg{color:var(--color-primary-500)}@media(max-width:768px){.insights-grid{grid-template-columns:1fr}.section-header-with-actions{flex-direction:column;align-items:flex-start}.section-actions{width:100%;justify-content:flex-end}}input.is-invalid,select.is-invalid,textarea.is-invalid{border-color:var(--color-error-500)!important;box-shadow:0 0 0 3px var(--color-error-100)}input.is-invalid:focus,select.is-invalid:focus,textarea.is-invalid:focus{border-color:var(--color-error-500)!important;box-shadow:0 0 0 3px var(--color-error-200)}.field-error{display:block;color:var(--color-error-600);font-size:var(--text-xs);margin-top:var(--space-1);line-height:var(--leading-snug)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-5);text-align:center;gap:var(--space-3)}.empty-state-icon{font-size:48px;line-height:1;opacity:.6}.empty-state-text{color:var(--dm-text-tertiary);font-size:var(--text-base);max-width:300px;margin:0}.empty-state-cta{margin-top:var(--space-2)}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--dm-skeleton-base) 25%,var(--dm-skeleton-shine) 50%,var(--dm-skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-default)}.skeleton-text{height:1em;margin-bottom:var(--space-2)}.skeleton-text:last-child{width:60%}.skeleton-heading{height:1.5em;width:40%;margin-bottom:var(--space-3)}.skeleton-card{padding:var(--space-4) var(--space-5);border:1px solid var(--dm-border);border-radius:var(--radius-lg)}.skeleton-card-row{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.skeleton-card-row:last-child{margin-bottom:0}.skeleton-avatar{width:40px;height:40px;border-radius:var(--radius-full);flex-shrink:0}.skeleton-line{height:.875em;flex:1}.skeleton-line--short{width:30%;flex:none}.skeleton-line--medium{width:60%;flex:none}.skeleton-amount{height:1.25em;width:80px;flex:none;margin-left:auto}.skeleton-list{display:flex;flex-direction:column;gap:var(--space-3)}@media(prefers-reduced-motion:reduce){.skeleton{animation:none;background:var(--dm-skeleton-base)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes dialogSlideIn{0%{transform:translate(-50%,-50%) translateY(-12px);opacity:0}to{transform:translate(-50%,-50%) translateY(0);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0}to{opacity:1}}@keyframes dialogSlideIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shake{0%,to{transform:none}}@keyframes pulse{0%,to{transform:none}}@keyframes shimmer{0%,to{transform:none}}}.shake{animation:shake .5s ease-in-out}.section,.container{container-type:inline-size}@container (min-width: 500px){.card-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}}@container (max-width: 499px){.card-item{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}}@media(hover:hover){.btn--secondary:hover,.card-item--interactive:hover{transform:translateY(-1px)}}@media(pointer:coarse){.btn{min-height:44px;min-width:44px}.btn--sm{min-height:40px;padding:var(--space-2-5) var(--space-3-5)}}@media(hover:none){.btn:active{transform:scale(.97);opacity:.9}.card-item:active{background:var(--dm-surface-hover)}}*{margin:0;padding:0;box-sizing:border-box}:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}button:focus-visible,a:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px;border-radius:4px}:focus:not(:focus-visible){outline:none}body{font-family:var(--font-body);min-height:100vh;color:var(--dm-text-secondary);background-color:var(--dm-bg);position:relative;transition:background-color .3s ease,color .3s ease}body>*{position:relative;z-index:var(--z-raise)}.container{max-width:1200px;margin:0 auto;padding:var(--space-5);padding-left:max(var(--space-5),env(safe-area-inset-left));padding-right:max(var(--space-5),env(safe-area-inset-right));padding-bottom:max(var(--space-5),env(safe-area-inset-bottom))}header{background:var(--dm-surface);border-radius:var(--radius-2xl);padding:var(--space-6) var(--space-7);margin-bottom:var(--space-6);box-shadow:var(--shadow-lg);border:1px solid var(--dm-border);transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}header:before{display:none}header:hover{box-shadow:var(--shadow-primary-lg);border-color:var(--color-primary-200)}[data-theme=dark] header:hover{border-color:var(--color-primary-800)}.header-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:var(--space-6);gap:var(--space-5)}.title-currency{display:flex;align-items:center;gap:var(--space-5)}.header-selectors{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.header-selectors .header-country{flex:0 1 12rem}.header-selectors .currency-select{flex:0 0 auto}.header-selectors .profile-btn{flex:0 0 auto;margin-inline-start:auto}.header-meal-voucher{flex:1 1 100%;display:flex;align-items:center}.header-meal-voucher:empty{display:none}header h1{margin:0;flex:0 0 auto;white-space:nowrap;font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-tight);display:flex;align-items:center;gap:var(--space-2);transition:var(--transition-all)}header h1 .title-text{color:var(--dm-brand-text)}header h1 .emoji{font-size:var(--text-2xl)}header h1:hover .title-text{filter:brightness(1.1)}header h1 .title-link{text-decoration:none;color:inherit;display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;transition:var(--transition-all)}header h1 .title-link:hover .title-text,header h1 .title-link:focus-visible .title-text{filter:brightness(1.1);text-decoration:underline;text-underline-offset:4px}header h1 .title-link:focus-visible{outline:2px solid var(--color-primary-700);outline-offset:4px;border-radius:var(--radius-sm)}.currency-select{min-height:44px;padding:var(--space-2-5) var(--space-4);border:2px solid var(--dm-border-control);border-radius:var(--radius-md);background:var(--dm-nav-bg);color:var(--dm-text-secondary);font-weight:600;cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),border-color .2s var(--ease-standard),background-color .2s var(--ease-standard);min-width:110px;box-shadow:0 2px 8px var(--color-black-alpha-5)}.currency-select:hover{border-color:var(--color-primary-600);box-shadow:var(--shadow-hover);background:var(--dm-surface)}.currency-select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-200),var(--shadow-hover)}.header-controls{display:flex;align-items:center;gap:var(--space-4);margin-inline-start:auto}.header-actions{display:flex;align-items:center;gap:var(--space-2)}.logout-btn{background:var(--color-error-600);color:var(--color-white);border:2px solid transparent;min-height:44px;padding:var(--space-2-5) var(--space-5);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-error-tint-strong);display:flex;align-items:center;gap:var(--space-1-5)}.logout-btn:hover{background:var(--color-error-700);box-shadow:0 4px 12px var(--color-error-tint-strong)}.logout-btn:active{transform:translateY(0)}.theme-toggle-btn{background:var(--dm-nav-bg);border:2px solid var(--dm-border-control);border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease;padding:0;box-shadow:0 2px 8px var(--color-black-alpha-5);color:var(--dm-text-secondary)}.theme-toggle-btn:hover{border-color:var(--color-primary-600);box-shadow:var(--shadow-hover);color:var(--color-primary-600)}.theme-toggle-btn svg{transition:transform .3s ease}.theme-toggle-btn:hover svg{transform:rotate(20deg)}.profile-btn{background:var(--dm-nav-bg);border:2px solid var(--dm-border-control);border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);padding:0;box-shadow:0 2px 8px var(--color-black-alpha-5);position:relative;overflow:hidden}.profile-btn:before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--dm-brand-solid);opacity:0;transition:opacity .3s ease;z-index:-1}.profile-btn:hover{border-color:var(--color-primary-600);box-shadow:var(--shadow-hover)}.profile-btn:hover:before{opacity:1}.profile-btn:hover svg{color:#fff;transform:scale(1.1)}.profile-btn svg{color:var(--dm-text-secondary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;position:relative;z-index:var(--z-raise)}.profile-btn .profile-photo{width:100%;height:100%;border-radius:50%;object-fit:cover;position:relative;z-index:var(--z-raise)}.profile-btn:hover .profile-photo{transform:scale(1.05)}nav{display:flex;justify-content:center;gap:var(--space-2);padding:6px;background:var(--dm-nav-bg);border-radius:var(--radius-lg);border:1px solid var(--dm-nav-border);transition:background-color .3s ease,border-color .3s ease}.tab-btn{padding:var(--space-3) 28px;border:none;background:var(--dm-tab-bg);border-radius:var(--radius-md);cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);font-weight:600;font-size:var(--text-sm);color:var(--dm-tab-text);position:relative;overflow:hidden;z-index:var(--z-raise)}.tab-btn:before{content:"";position:absolute;inset:0;background:var(--dm-brand-solid);opacity:0;transition:opacity .3s ease;border-radius:var(--radius-md);z-index:-1}.tab-btn:hover:not(.active){background:var(--dm-surface);box-shadow:0 4px 12px var(--color-black-alpha-8);color:var(--color-primary-600)}[data-theme=dark] .tab-btn:hover:not(.active){color:var(--color-primary-400)}.tab-btn.active{color:var(--dm-text-on-brand)!important;box-shadow:var(--shadow-hover)}.tab-btn.active:before{opacity:1}.section{display:none;background:var(--dm-surface);border-radius:var(--radius-2xl);padding:var(--space-8);padding-bottom:120px;box-shadow:var(--shadow-hover-lg),0 2px 8px var(--color-black-alpha-8);border:1px solid var(--dm-border);opacity:0;transform:translateY(6px);transition:opacity var(--duration-enter) var(--ease-out-expo),transform var(--duration-enter) var(--ease-out-expo)}.section.active{display:block;opacity:1;transform:translateY(0);animation:sectionFadeIn var(--duration-enter) var(--ease-out-expo)}@keyframes sectionFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.section h2{margin-bottom:var(--space-7);color:var(--dm-text-primary);font-size:var(--text-2xl);font-weight:700;padding-bottom:var(--space-4);position:relative;letter-spacing:-.5px}.section h2:after{content:"";position:absolute;bottom:0;left:0;width:80px;height:4px;background:var(--dm-brand-solid);border-radius:2px}.form-group{margin-bottom:var(--space-6);animation:slideIn .3s ease}.form-group label{display:block;margin-bottom:var(--space-2-5);font-weight:600;color:var(--dm-text-secondary);font-size:var(--text-sm);letter-spacing:.3px;display:flex;align-items:center;gap:var(--space-1-5)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--space-3-5) var(--space-4);border:2px solid var(--dm-input-border);border-radius:var(--radius-md);font-size:var(--text-base);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);background:var(--dm-input-bg);color:var(--dm-input-text);box-shadow:0 2px 4px var(--color-black-alpha-5);font-family:var(--font-body)}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:var(--dm-border-strong);box-shadow:0 4px 8px var(--color-black-alpha-5)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-200),var(--shadow-hover);background:var(--dm-input-bg)}[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group select:focus,[data-theme=dark] .form-group textarea:focus{box-shadow:0 0 0 4px #05966933,var(--shadow-hover)}.form-group textarea{resize:vertical;min-height:80px}.password-input-wrapper input{padding-right:45px}.toggle-password{position:absolute;right:10px;background:none;border:none;cursor:pointer;padding:var(--space-2);display:flex;align-items:center;justify-content:center;color:var(--dm-text-tertiary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border-radius:var(--radius-sm)}.toggle-password:hover{color:var(--color-primary-600);background:var(--color-success-tint)}.toggle-password:focus{color:var(--color-primary-600)}.toggle-password svg{width:20px;height:20px;stroke-width:2}button[type=submit],.btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:var(--space-3-5) var(--space-8);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base);font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);box-shadow:var(--shadow-hover);position:relative;overflow:hidden;width:100%;margin-top:var(--space-2)}button[type=submit]:before,.btn:before{content:"";position:absolute;inset:0;background:var(--dm-brand-solid);opacity:0;transition:opacity .3s ease;z-index:-1}button[type=submit]:hover,.btn:hover{box-shadow:var(--shadow-hover-lg);background:var(--dm-brand-solid)}button[type=submit]:hover:before,.btn:hover:before{opacity:0}button[type=submit] span,.btn span,.auth-btn span{position:relative;z-index:var(--z-raise);color:#fff}.chart-container{container-type:inline-size;background:var(--dm-card-bg);border-radius:var(--radius-xl);padding:var(--space-8);margin:var(--space-8) 0;box-shadow:0 8px 24px var(--color-black-alpha-8),0 2px 8px var(--color-black-alpha-5);border:1px solid var(--dm-card-border);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;position:relative;overflow:hidden}.chart-container:before{display:none}.chart-container:hover{box-shadow:var(--shadow-xl),0 4px 12px var(--color-black-alpha-8)}.chart-container h3{margin-bottom:var(--space-6);color:var(--dm-text-primary);font-size:var(--text-xl);font-weight:700;display:flex;align-items:center;gap:var(--space-2-5)}.chart-container h3:before{content:"📊";font-size:var(--text-2xl);-webkit-text-fill-color:initial}.chart-container canvas{max-height:300px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.chart-container:hover canvas{transform:scale(1.01)}.trend-chart-container{margin-top:var(--space-10)}.trend-chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5);flex-wrap:wrap;gap:var(--space-4)}.trend-chart-header h3{margin:0}.disclosure-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;min-height:44px;margin-bottom:var(--space-3);padding:var(--space-2-5) var(--space-3);border:1px solid var(--dm-border-control);border-radius:var(--radius-lg);background:transparent;color:var(--dm-text-secondary);font-size:var(--text-sm);font-weight:500;text-align:left;cursor:pointer;transition:color .2s ease}.disclosure-toggle:hover{color:var(--dm-text-primary)}.disclosure-toggle:after{content:"";flex:0 0 auto;width:.5rem;height:.5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s ease}.disclosure-toggle[aria-expanded=true]{color:var(--dm-text-primary)}.disclosure-toggle[aria-expanded=true]:after{transform:rotate(-135deg)}.disclosure-region[hidden],.disclosure-toggle[hidden]{display:none}@media(prefers-reduced-motion:reduce){.disclosure-toggle,.disclosure-toggle:after{transition:none}}.searchable-select{position:relative}.searchable-select-input{width:100%}.searchable-select-list{position:absolute;z-index:100;inset-inline:0;top:calc(100% + var(--space-1, 4px));max-height:16rem;overflow-y:auto;margin:0;padding:var(--space-1, 4px);list-style:none;border:1px solid var(--dm-border-strong);border-radius:var(--radius-lg);background:var(--dm-surface-elevated, var(--dm-surface));box-shadow:0 8px 24px #00000026}.searchable-select-list[hidden]{display:none}.searchable-select-option{min-height:44px;display:flex;align-items:center;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md, .5rem);color:var(--dm-text-primary);font-size:var(--text-sm);cursor:pointer}.searchable-select-option:hover,.searchable-select-option.is-active{background:var(--dm-surface-hover)}.searchable-select-empty{padding:var(--space-3);color:var(--dm-text-secondary);font-size:var(--text-sm)}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-center{display:flex;align-items:center;justify-content:center}.flex-col{display:flex;flex-direction:column}.flex-wrap{display:flex;flex-wrap:wrap}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.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)}.mt-5{margin-top:var(--space-5)}.heading-lg{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-2)}.heading-md{font-size:var(--text-lg);font-weight:700}.heading-sm{font-size:var(--text-base);font-weight:600}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.text-bold{font-weight:700}.text-semibold{font-weight:600}.text-normal{font-weight:400}.text-center{text-align:center}.text-italic{font-style:italic}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.text-warning{color:var(--color-warning)}.text-info{color:var(--color-info)}.text-muted{color:var(--dm-text-tertiary)}.text-primary{color:var(--dm-text-primary)}.text-secondary{color:var(--dm-text-secondary)}.text-primary-brand{color:var(--dm-brand-text)}.bg-success-tint{background-color:var(--color-success-tint)}.bg-success-tint-light{background-color:var(--color-success-tint-light)}.bg-error-tint{background-color:var(--color-error-tint)}.bg-warning-tint{background-color:var(--color-warning-tint)}.bg-surface-hover{background-color:var(--dm-surface-hover)}.border-top-subtle{border-top:1px solid var(--dm-border)}.border-top-strong{border-top:2px solid var(--dm-border-strong)}.card-item{padding:var(--space-3);margin:var(--space-2) 0;background:var(--dm-surface-hover);border-radius:var(--radius-md)}.surface-card{background:var(--dm-card-bg);border-radius:var(--radius-lg);border:1px solid var(--dm-card-border);padding:var(--space-5)}.list-reset{list-style:none;padding:0;margin:0}.scrollable{max-height:400px;overflow-y:auto}.scrollable-sm{max-height:250px;overflow-y:auto}.clickable{cursor:pointer}.no-select{-webkit-user-select:none;user-select:none}.hidden{display:none!important}.visible{display:block}.visible-flex{display:flex}.disabled-state{opacity:.5;cursor:not-allowed;pointer-events:none}.enabled-state{opacity:1;cursor:pointer;pointer-events:auto}.transition-all{transition:var(--transition-all)}.transition-colors{transition:var(--transition-colors)}.fade-out{opacity:0;transition:opacity var(--duration-300) var(--ease-out)}.fade-in{opacity:1;transition:opacity var(--duration-300) var(--ease-out)}.slide-out-right{opacity:0;transform:translate(100%);transition:all var(--duration-300) var(--ease-out)}.slide-out-left{opacity:0;transform:translate(-100%);transition:all var(--duration-300) var(--ease-out)}.highlight-success{background-color:var(--color-success-light);transition:background-color var(--duration-300) var(--ease-out)}.progress-fill{height:100%;border-radius:inherit;transition:width .3s ease}.progress-fill--primary{background-color:var(--color-primary-600)}.progress-fill--success{background-color:var(--color-success)}.progress-fill--warning{background-color:var(--color-warning)}.progress-fill--error{background-color:var(--color-error)}.dynamic-width{width:var(--dynamic-w, 0%)}.dynamic-color{color:var(--dynamic-color, inherit)}.dynamic-bg{background-color:var(--dynamic-bg, transparent)}.stat-card-success{background:var(--dm-success-tint-bg);border-radius:var(--radius-lg)}.stat-card-error{background:var(--dm-error-tint-bg);border-radius:var(--radius-lg)}.stat-card-neutral{background:var(--dm-surface-hover);border-radius:var(--radius-lg)}.transaction-item{padding:var(--space-3);margin:var(--space-2) 0;background:var(--dm-surface-hover);border-radius:var(--radius-default)}.transaction-amount{font-weight:700;font-size:var(--text-base);white-space:nowrap;margin-left:var(--space-4)}.text-success-dark{color:var(--dm-success-text)}.text-error-dark{color:var(--dm-error-text)}.text-nowrap{white-space:nowrap}.ml-4{margin-left:var(--space-4)}.mr-3{margin-right:var(--space-3)}.pl-5{padding-left:var(--space-5)}.flex-1{flex:1}.btn-reset{background:none;border:none;padding:var(--space-2);cursor:pointer;color:inherit}.trend-selector{padding:var(--space-2-5) var(--space-4);border:2px solid var(--dm-input-border);border-radius:var(--radius-default);background:var(--dm-input-bg);color:var(--dm-input-text);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;font-size:var(--text-sm);min-width:250px}.trend-selector:hover{border-color:var(--color-primary-600)}.trend-selector:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px;border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}#trend-chart{max-height:350px}@container (max-width: 600px){.trend-chart-header{flex-direction:column;align-items:flex-start}.trend-selector{width:100%}}.spese-lista,.budget-lista{container-type:inline-size;margin-top:var(--space-8)}.spese-lista h3,.budget-lista h3{margin-bottom:var(--space-5);color:var(--dm-text-secondary);font-size:var(--text-xl);font-weight:700;display:flex;align-items:center;gap:var(--space-2-5)}.spese-lista h3:before,.budget-lista h3:before{content:"📋";font-size:var(--text-2xl)}.spesa-item{background:var(--dm-card-bg);padding:var(--space-5);border-radius:var(--radius-lg);margin-bottom:var(--space-3);display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px var(--color-black-alpha-5);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard)}.spesa-item:hover{box-shadow:var(--shadow-hover)}@container (max-width: 480px){.spesa-item{flex-direction:column;align-items:flex-start;gap:var(--space-2)}}.spesa-info,.budget-info{flex:1}.spesa-importo{font-weight:700;color:var(--color-error);font-size:var(--text-xl);text-shadow:0 2px 4px var(--color-error-tint)}.spesa-categoria{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:var(--space-1-5) var(--space-3-5);border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:600;display:inline-block;margin-top:var(--space-2);box-shadow:var(--shadow-md);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.spesa-categoria:hover{transform:scale(1.05);box-shadow:var(--shadow-hover)}.delete-btn{background:var(--color-error-600);color:#fff;border:none;padding:var(--space-2-5) var(--space-4);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-error-tint-strong);width:100px}.generate-report-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base);font-weight:600;display:flex;align-items:center;gap:var(--space-2);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:var(--shadow-hover);position:relative;overflow:hidden}.generate-report-btn:hover{box-shadow:var(--shadow-hover-lg);background:var(--color-info-600)}.generate-report-btn:active{transform:translateY(0);box-shadow:var(--shadow-hover)}.export-csv-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base);font-weight:600;display:flex;align-items:center;gap:var(--space-2);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 15px var(--color-success-tint-strong);position:relative;overflow:hidden}.export-csv-btn:hover{box-shadow:0 8px 25px var(--color-success-tint-stronger);background:var(--dm-brand-solid)}.export-csv-btn:active{transform:translateY(0);box-shadow:0 4px 15px var(--color-success-tint-strong)}.copy-budget-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base);font-weight:600;display:flex;align-items:center;gap:var(--space-2);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:var(--shadow-hover);position:relative;overflow:hidden}.copy-budget-btn:hover{box-shadow:var(--shadow-hover-lg);background:var(--dm-brand-solid)}.copy-budget-btn:active{transform:translateY(0);box-shadow:var(--shadow-hover)}.report-calendar-section{margin:30px 0;padding:var(--space-6);background:var(--dm-card-bg);border-radius:var(--radius-lg);box-shadow:0 2px 8px var(--color-black-alpha-10)}.report-calendar-header{margin-bottom:var(--space-5)}.report-calendar-header h3{font-size:var(--text-xl);color:var(--dm-text-secondary);margin:0}.report-calendars-container{display:flex;flex-direction:column;gap:var(--space-8)}.report-month-calendar{width:100%}.heatmap-cell.out-of-range{background:var(--dm-surface-hover);opacity:.3;cursor:not-allowed}.bottom-tab-nav{margin-top:var(--space-10);padding:var(--space-5);padding-bottom:max(var(--space-5),env(safe-area-inset-bottom));background:var(--dm-surface);border-radius:var(--radius-lg);box-shadow:0 2px 8px var(--color-black-alpha-10);border:1px solid var(--dm-border)}.bottom-tab-nav nav{display:flex;justify-content:center;gap:var(--space-3);flex-wrap:wrap}.bottom-nav-btn{background:var(--dm-nav-bg);color:var(--dm-tab-text);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.bottom-nav-btn:hover{background:var(--dm-surface-hover);color:var(--dm-text-secondary);box-shadow:0 4px 12px var(--color-black-alpha-10)}.bottom-nav-btn.active{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);box-shadow:var(--shadow-hover)}.btn-icon{font-size:var(--text-lg)}.categoria-report{background:var(--dm-card-bg);padding:var(--space-6);border-radius:var(--radius-lg);margin-bottom:var(--space-4);box-shadow:0 2px 8px var(--color-black-alpha-5);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard)}.categoria-report:hover{box-shadow:var(--shadow-hover)}.categoria-report h4{color:var(--dm-text-primary);margin-bottom:var(--space-4);font-size:var(--text-lg);font-weight:700}.budget-progress{background:var(--dm-border);height:24px;border-radius:var(--radius-md);overflow:hidden;margin:var(--space-3) 0;box-shadow:inset 0 2px 4px var(--color-black-alpha-5)}.budget-progress-bar{height:100%;background:var(--color-success);transition:width .8s var(--ease-standard);box-shadow:0 2px 8px var(--color-success-tint-strong);position:relative}.budget-progress-bar.over-budget{background:var(--color-error-500);box-shadow:0 2px 8px var(--color-error-tint-strong)}.budget-stats{display:flex;justify-content:space-between;font-size:var(--text-lg);font-weight:700;color:var(--dm-text-secondary)}.budget-macro-header .budget-stats{color:var(--color-white)!important;font-size:20px!important;font-weight:800!important;text-shadow:0 2px 4px var(--color-black-alpha-40)}.budget-macro-header .budget-stats span{color:var(--color-white)!important;font-weight:800!important;text-shadow:0 2px 4px var(--color-black-alpha-40)}.budget-macro-header,.budget-macro-header *{color:var(--color-white)!important;text-shadow:0 2px 4px var(--color-black-alpha-30)}.budget-macro-header strong{font-weight:800!important;text-shadow:0 2px 6px var(--color-black-alpha-40)}@media(max-width:768px){.container{padding:var(--space-2-5)}header{padding:var(--space-5);border-radius:var(--radius-xl)}header h1{font-size:var(--text-2xl)}.header-top{flex-direction:column;gap:var(--space-4);text-align:center}.title-currency{flex-direction:column;gap:var(--space-3);width:100%}.header-selectors{width:100%}.header-meal-voucher{flex:0 0 auto;width:100%;justify-content:center}.header-selectors .header-country{flex:1 1 6rem}.currency-select{width:auto;min-width:7.5rem}.header-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--space-3);width:100%}.header-controls .language-selector{grid-area:1 / 1;min-width:0;justify-content:flex-start}.header-controls .header-actions{grid-area:1 / 2;flex-wrap:wrap;justify-content:center}.header-controls .logout-btn{grid-area:1 / 3;justify-self:end}nav{padding:4px;gap:var(--space-1-5);flex-direction:row;flex-wrap:wrap}.tab-btn{padding:var(--space-2-5) var(--space-4);font-size:var(--text-xs);flex:1 1 calc(50% - 6px);min-width:calc(50% - 6px);max-width:calc(50% - 6px)}.auth-header{flex-direction:column;padding:0}.auth-tabs{width:100%}.auth-language-selector{justify-content:center;padding:15px 0;background:var(--dm-surface);border-top:1px solid var(--dm-border)}.generate-report-btn,.export-csv-btn{justify-content:center;padding:var(--space-4) var(--space-5);font-size:var(--text-lg)}.btn-icon{font-size:var(--text-xl)}.spesa-item{flex-direction:column;align-items:flex-start;gap:var(--space-2-5)}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-5)}.auth-card{background:var(--dm-surface);border-radius:var(--radius-2xl);padding:0;box-shadow:var(--shadow-2xl);border:1px solid var(--dm-border);max-width:450px;width:100%;overflow:hidden}.auth-header{display:flex;justify-content:center;align-items:center;background:var(--dm-nav-bg);padding:0}.auth-tabs{display:flex;flex:1}.auth-settings-row{display:flex;align-items:center;justify-content:center;position:relative;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--dm-border)}.auth-settings-row .auth-language-selector{display:flex;gap:var(--space-1-5)}.auth-settings-row .auth-theme-btn{position:absolute;right:var(--space-4)}.auth-language-selector{display:flex;gap:var(--space-1-5);padding:10px 0}.auth-theme-btn{background:var(--dm-surface);border:2px solid var(--dm-border);border-radius:var(--radius-default);padding:var(--space-2) var(--space-3);cursor:pointer;min-width:45px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease}.auth-theme-btn:hover{box-shadow:0 5px 15px var(--color-black-alpha-10);border-color:var(--color-primary-600)}.auth-tab{flex:1;padding:var(--space-5) var(--space-5);border:none;background:transparent;cursor:pointer;font-weight:600;color:var(--dm-text-secondary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border-bottom:3px solid transparent;font-size:var(--text-base)}.auth-tab.active{background:var(--dm-surface);color:var(--dm-brand-text);border-bottom-color:var(--dm-brand-text)}.auth-tab:hover:not(.active){color:var(--dm-text-secondary);background:var(--color-white-alpha-50)}[data-theme=dark] .auth-tab:hover:not(.active){background:var(--color-white-alpha-10)}.auth-form-container{display:none;padding:40px;text-align:center}.auth-form-container.active{display:block}.auth-form-container h2{color:var(--dm-text-secondary);margin-bottom:var(--space-2-5)}.auth-form-container p{color:var(--dm-text-tertiary);margin-bottom:30px}.form-group small{display:block;margin-top:5px;color:var(--dm-text-tertiary);font-size:var(--text-xs)}.auth-btn{width:100%;position:relative;overflow:hidden}.auth-btn .btn-text{position:relative;z-index:var(--z-raise-2);color:#fff}.btn-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-2-5)}.auth-links{margin-top:var(--space-5);text-align:center}.link-btn{background:none;border:none;color:var(--dm-brand-text);cursor:pointer;text-decoration:underline;font-size:var(--text-sm);padding:5px}.link-btn:hover{color:var(--color-indigo-500)}.form-group-consent{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-2) var(--space-3)}.form-group-consent input[type=checkbox]{order:1;width:20px;height:20px;margin-top:2px;flex:0 0 auto;accent-color:var(--color-primary-600);cursor:pointer}.form-group-consent .consent-label{order:2;flex:1;min-width:0;font-size:var(--text-sm);line-height:1.5;color:var(--dm-text-secondary);cursor:pointer;display:block;text-align:left;font-weight:400;letter-spacing:normal;margin-bottom:0}.form-group-consent .consent-label:before{content:none}.form-group-consent .consent-label a{color:var(--dm-brand-text);text-decoration:underline}.form-group-consent .consent-label a:hover{color:var(--color-indigo-500)}.form-group-consent .field-error{order:3;flex-basis:100%}.form-group-consent input[type=checkbox]:focus-visible{outline:2px solid var(--dm-brand-text);outline-offset:2px}.auth-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-1) var(--space-4);padding:var(--space-4) var(--space-5);border-top:1px solid var(--dm-border);background:var(--dm-surface)}.auth-legal-link{display:inline-flex;align-items:center;min-height:44px;padding:var(--space-2) var(--space-1);color:var(--dm-brand-text);font-size:var(--text-sm);text-decoration:underline}.auth-legal-link:hover{color:var(--color-indigo-500)}.auth-legal-link:focus-visible{outline:2px solid var(--dm-brand-text);outline-offset:2px;border-radius:var(--radius-sm)}.verification-container{padding:40px;text-align:center}.verification-icon{font-size:var(--text-5xl);margin-bottom:var(--space-5)}.verification-container h3{color:var(--dm-text-secondary);margin-bottom:15px}.verification-container p{color:var(--dm-text-tertiary);margin-bottom:30px;line-height:1.6}.verification-actions{display:flex;flex-direction:column;gap:var(--space-4);align-items:center;width:100%;max-width:400px;margin:0 auto}.verification-continue-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:14px 28px;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;width:100%;box-shadow:0 4px 12px var(--color-success-tint-strong)}.verification-continue-btn:hover{background:var(--dm-brand-solid);box-shadow:0 6px 16px var(--color-success-tint-stronger)}.verification-continue-btn:active{transform:translateY(0)}.verification-continue-btn .btn-text{display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.verification-actions .link-btn{color:var(--dm-brand-text);font-size:var(--text-sm);padding:var(--space-2) var(--space-4)}.loading{display:inline-block;width:20px;height:20px;border:3px solid var(--dm-border-subtle);border-top:3px solid var(--color-primary-600);border-radius:50%;animation:spin 1s linear infinite;margin-right:var(--space-2-5)}.sync-status{position:fixed;top:10px;right:10px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:600;z-index:var(--z-modal-backdrop)}.sync-status.online{background:var(--color-success-700);color:#fff}.sync-status.offline{background:var(--color-secondary-500);color:#fff}.sync-status.syncing{background:var(--color-primary-600);color:#fff}.form-group input.error,.form-group select.error{border-color:var(--color-error-500)!important;box-shadow:0 0 0 4px var(--color-error-tint)!important;background:var(--color-error-50)!important;animation:shake .5s ease-in-out}.form-group input.error:focus,.form-group select.error:focus{border-color:var(--color-error-500)!important;box-shadow:0 0 0 4px var(--color-error-tint-strong)!important}.form-group label:before{content:"";display:inline-block;width:4px;height:4px;background:var(--dm-brand-solid);border-radius:50%;margin-right:var(--space-2);vertical-align:middle}.categories-list{margin-top:30px}.categories-list h3{margin-bottom:15px;color:var(--dm-text-secondary)}.categoria-item{background:var(--dm-surface-hover);padding:15px;border-radius:var(--radius-default);margin-bottom:var(--space-2-5);display:flex;justify-content:space-between;align-items:center}.categoria-info{display:flex;align-items:center;gap:var(--space-2-5)}.categoria-nome{font-weight:600;color:var(--dm-text-secondary)}.categoria-badge{background:var(--color-success);color:#fff;padding:2px 8px;border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:500}@media(max-width:768px){.categoria-item{flex-direction:column;align-items:flex-start;gap:var(--space-2-5)}.categoria-info{width:100%;justify-content:space-between}}.language-select{padding:var(--space-2) var(--space-3);border:2px solid var(--dm-border-control);border-radius:var(--radius-md);background:var(--dm-nav-bg);color:var(--dm-text-secondary);font-size:var(--text-sm);font-weight:600;cursor:pointer;min-height:44px;max-width:100%;transition:box-shadow .2s var(--ease-standard),border-color .2s var(--ease-standard),background-color .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-black-alpha-5)}.language-select:hover{border-color:var(--color-primary-600);box-shadow:var(--shadow-hover);background:var(--dm-surface)}.language-select:focus-visible{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-200),var(--shadow-hover)}.language-selector,.auth-language-selector{display:flex}@media(prefers-reduced-motion:reduce){.language-select{transition:none}}.entrate-lista{margin-top:30px}.entrate-lista h3{margin-bottom:15px;color:var(--dm-text-secondary)}.entrata-item{background:var(--dm-success-tint-bg);padding:15px;border-radius:var(--radius-default);margin-bottom:var(--space-2-5);display:flex;justify-content:space-between;align-items:center}.entrata-info{flex:1}.entrata-importo{font-weight:700;color:var(--color-success);font-size:var(--text-lg)}.entrata-categoria{background:var(--color-success);color:#fff;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);display:inline-block;margin-top:5px}@media(max-width:768px){.entrata-item{flex-direction:column;align-items:flex-start;gap:var(--space-2-5)}}.income-expense-analysis{background:var(--dm-surface);border-radius:var(--radius-xl);padding:var(--space-8);margin-bottom:var(--space-8);border:2px solid var(--dm-border);box-shadow:0 8px 24px var(--color-black-alpha-8);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;position:relative;overflow:hidden}.income-expense-analysis:before{display:none}.income-expense-analysis:hover{box-shadow:0 12px 32px var(--color-black-alpha-15)}.income-expense-analysis h4{color:var(--dm-text-primary);margin-bottom:var(--space-7);text-align:center;font-size:var(--text-2xl);font-weight:700}.financial-summary{background:var(--dm-card-bg);border-radius:var(--radius-lg);padding:28px;margin-bottom:var(--space-6);box-shadow:0 4px 16px var(--color-black-alpha-8);border:2px solid var(--dm-border);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.financial-summary:hover{box-shadow:0 6px 20px var(--color-black-alpha-15)}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) 20px;font-size:var(--text-base);background:var(--dm-surface-hover);border-radius:var(--radius-md);margin-bottom:var(--space-2);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.summary-row:hover{background:var(--dm-border-subtle)}.summary-label{font-weight:700;color:var(--dm-text-secondary);font-size:var(--text-sm)}.summary-amount{font-weight:800;font-size:var(--text-xl)}.income-amount{color:var(--color-primary-600)}.expense-amount{color:var(--color-error-600)}.balance-amount{font-size:var(--text-2xl);font-weight:800}.summary-divider{height:3px;background:linear-gradient(90deg,var(--dm-border) 0%,var(--dm-border-strong) 50%,var(--dm-border) 100%);margin:var(--space-4) 0;border-radius:2px}.balance-row{background:var(--dm-surface-hover);padding:var(--space-5);border-radius:var(--radius-md);margin-top:var(--space-3)}.balance-row.positive{background:var(--color-primary-100);border:2px solid var(--color-primary-300)}.balance-row.positive .balance-amount{color:var(--color-primary-600)}.balance-row.negative{background:var(--color-error-100);border:2px solid var(--color-error-300)}.balance-row.negative .balance-amount{color:var(--color-error-600)}.balance-message{padding:var(--space-5) 24px;border-radius:var(--radius-lg);font-weight:600;text-align:center;margin-bottom:var(--space-6);font-size:var(--text-base);box-shadow:0 4px 12px var(--color-black-alpha-8);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.balance-message:hover{box-shadow:0 6px 16px var(--color-black-alpha-15)}.positive-message{background:var(--color-primary-100);color:var(--color-primary-700);border:2px solid var(--color-primary-300)}.negative-message{background:var(--color-error-100);color:var(--color-error-800);border:2px solid var(--color-error-300)}.month-comparison-message{padding:var(--space-4) 20px;border-radius:var(--radius-lg);font-weight:600;text-align:center;margin-top:var(--space-5);background:var(--color-primary-100);color:var(--color-primary-900);border:2px solid var(--color-primary-300);font-size:var(--text-sm);box-shadow:var(--shadow-primary)}.income-breakdown,.expense-breakdown{background:var(--dm-card-bg);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:0 4px 16px var(--color-black-alpha-8);margin-bottom:var(--space-5);border:2px solid var(--dm-border);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.income-breakdown:hover,.expense-breakdown:hover{box-shadow:0 6px 20px var(--color-black-alpha-15)}.income-breakdown h5,.expense-breakdown h5{color:var(--dm-text-secondary);margin-bottom:15px;font-size:var(--text-base)}.category-list{display:flex;flex-direction:column;gap:var(--space-3)}.category-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) 18px;background:var(--dm-surface-hover);border-radius:var(--radius-md);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);box-shadow:0 2px 4px var(--color-black-alpha-5);position:relative;overflow:hidden}.category-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;transition:width .3s ease}.category-item:hover{box-shadow:0 4px 12px var(--color-black-alpha-8)}.category-item:hover:before{width:8px}.income-category:before{background:var(--dm-brand-solid)}.expense-category:before{background:var(--color-error-600)}.category-name{font-weight:600;color:var(--dm-text-secondary);font-size:var(--text-sm)}.income-category .category-amount{font-weight:800;font-size:var(--text-lg);color:var(--color-primary-600)}.expense-category .category-amount{font-weight:800;font-size:var(--text-lg);color:var(--color-error-600)}.report-divider{height:3px;background:var(--dm-brand-solid);border-radius:2px;margin:25px 0}.report-section{margin-top:25px}.report-section h4{color:var(--dm-text-secondary);margin-bottom:15px;font-size:var(--text-lg)}.budget-summary{background:var(--dm-surface-hover);padding:15px;border-radius:var(--radius-default);margin-bottom:var(--space-5);text-align:center}.budget-macro-item{margin-bottom:var(--space-5);border:2px solid var(--dm-border);border-radius:var(--radius-md);overflow:hidden}.budget-macro-header{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)!important;padding:var(--space-5);border-radius:var(--radius-md) 12px 0 0}.budget-macro-header *{color:var(--color-white)!important}.budget-macro-header strong{font-size:24px!important;font-weight:900!important;color:var(--color-white)!important;text-shadow:0 2px 4px var(--color-black-alpha-40);letter-spacing:-.5px}.budget-sub-item{background:var(--dm-surface-hover);padding:var(--space-3) 15px;border-bottom:1px solid var(--dm-border);display:flex;justify-content:space-between;align-items:center;color:var(--dm-text-secondary)}.budget-sub-item:last-child{border-bottom:none}.budget-sub-item .budget-stats{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-4);color:var(--dm-text-secondary)!important}.budget-sub-item .budget-stats>span{white-space:nowrap}.macro-category{background:var(--dm-surface-hover);font-weight:600}.sub-category{background:var(--dm-nav-bg);margin-left:0}.sub-category .category-name{font-weight:400!important;font-size:var(--text-sm)}.sub-category .category-amount{font-weight:400!important}.macro-category-budget{background:var(--dm-surface-hover);margin-bottom:var(--space-2-5)}.sub-category-budget{background:var(--dm-nav-bg);margin-bottom:var(--space-2);padding-left:15px}.sub-category-budget h4,.sub-category-budget .budget-stats{font-weight:400!important}.spese-actions,.entrate-actions{display:flex;gap:var(--space-2-5);margin-top:var(--space-5);justify-content:center;flex-wrap:wrap}.action-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-2-5) var(--space-5);border-radius:var(--radius-default);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.action-btn:hover{box-shadow:var(--shadow-hover)}.modal{display:none;position:fixed;z-index:var(--z-modal-backdrop);inset:0;width:100vw;height:100vh;background:var(--dm-modal-backdrop);animation:fadeIn .4s var(--ease-standard);padding:var(--space-5);align-items:center;justify-content:center}.modal[style*="display: block"]{display:flex!important}.modal:not(.hidden){display:flex}.modal-content{background:var(--dm-modal-bg);padding:0;border-radius:var(--radius-2xl);width:90%;max-width:550px;max-height:85vh;box-shadow:var(--dm-modal-shadow);border:1px solid var(--dm-border);position:relative;overflow:hidden;animation:slideIn .4s var(--ease-standard);display:flex;flex-direction:column}.modal-content:before{display:none}.modal-content>h3{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);margin:0;padding:var(--space-7) var(--space-8);padding-right:80px;font-size:var(--text-xl);font-weight:700;text-shadow:0 2px 8px var(--color-black-alpha-15);letter-spacing:-.3px;position:relative;overflow:hidden;flex-shrink:0}.modal-content>h3:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%}.modal-content>p{flex-shrink:0}.modal-content>.months-list{flex:1;overflow-y:auto}.modal-content>p{padding:var(--space-6) 32px 0;margin:0;color:var(--dm-text-tertiary);font-size:var(--text-sm);font-weight:500}.modal-content>button{margin:24px 32px 32px;flex-shrink:0}.close-modal{position:absolute;top:24px;right:28px;background:var(--color-white-alpha-20);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-2xl);font-weight:700;cursor:pointer;line-height:1;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);z-index:var(--z-10);border:none;padding:0}.close-modal:hover,.close-modal:focus{background:var(--color-white-alpha-30);transform:rotate(90deg) scale(1.1);box-shadow:0 4px 12px var(--color-black-alpha-20);color:#fff}.months-list{overflow-y:auto;margin:24px 32px;padding:var(--space-4) 16px 32px 16px;background:var(--dm-input-bg);border:2px solid var(--dm-border);border-radius:var(--radius-lg);box-shadow:inset 0 2px 8px var(--color-black-alpha-5);max-height:calc(85vh - 200px);min-height:200px;flex:1}.months-list{scrollbar-width:thin;scrollbar-color:var(--color-primary-600) var(--dm-scrollbar-track)}.month-checkbox{display:block;padding:var(--space-3-5) var(--space-4);margin:8px 0;cursor:pointer;border-radius:var(--radius-md);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);background:var(--dm-surface-hover);border:2px solid var(--dm-border);font-weight:500;color:var(--dm-text-secondary)}.month-checkbox:hover{background:var(--dm-border-subtle);border-color:var(--color-primary-600);box-shadow:var(--shadow-hover)}.month-checkbox input{margin-right:var(--space-3);cursor:pointer;width:18px;height:18px;accent-color:var(--color-primary-600)}.month-checkbox input:checked{transform:scale(1.1)}.auth-error-message{display:none;color:var(--color-error);background:var(--color-error-50);border:1px solid var(--color-error-200);border-radius:6px;padding:var(--space-3);margin-top:15px;font-size:var(--text-sm);font-weight:500;text-align:center}.amount-currency-group{display:flex;gap:var(--space-3);align-items:stretch;position:relative}.amount-currency-group input[type=number]{flex:2;min-width:0}.amount-currency-group .currency-select{flex:1;min-width:110px;max-width:140px;padding:14px 12px;border:2px solid var(--dm-input-border);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;background:var(--dm-input-bg);color:var(--dm-input-text);cursor:pointer;height:auto;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);box-shadow:0 2px 4px var(--color-black-alpha-5)}.amount-currency-group .currency-select:hover{border-color:var(--dm-border-strong);box-shadow:0 4px 8px var(--color-black-alpha-5)}.amount-currency-group .currency-select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-200),var(--shadow-hover);background:var(--dm-input-bg)}@media(max-width:768px){.currency-select{max-width:100%}.amount-currency-group .currency-select{min-width:96px;max-width:118px;padding:14px 8px}}.time-period-filter{background:var(--dm-card-bg);border-radius:var(--radius-md);padding:var(--space-5);margin:25px 0;border:2px solid var(--dm-border);box-shadow:0 2px 8px var(--color-black-alpha-5)}.time-period-select{width:100%;padding:var(--space-3);border:2px solid var(--dm-input-border);border-radius:var(--radius-default);font-size:var(--text-base);background:var(--dm-input-bg);color:var(--dm-input-text);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.time-period-select:hover{border-color:var(--color-primary-600)}.time-period-select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}.date-range-group{display:flex;gap:var(--space-4);margin-top:var(--space-2-5)}.date-range-group .form-group{flex:1;margin-bottom:0}.date-input{width:100%;padding:var(--space-3);border:2px solid var(--dm-input-border);background:var(--dm-input-bg);color:var(--dm-input-text);border-radius:var(--radius-default);font-size:var(--text-base);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.date-input:hover{border-color:var(--color-primary-600)}.date-input:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}@media(max-width:768px){.date-range-group{flex-direction:column;gap:var(--space-2-5)}}.expenses-stats-box{background:var(--dm-brand-solid);border-radius:var(--radius-xl);padding:32px 28px;margin:var(--space-8) 0;display:flex;justify-content:space-around;align-items:stretch;gap:var(--space-6);box-shadow:var(--shadow-xl),0 4px 12px var(--color-black-alpha-10);position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.expenses-stats-box:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.expenses-stats-box:hover{box-shadow:var(--shadow-2xl),0 6px 16px var(--color-black-alpha-15)}.expenses-stats-box *{color:var(--color-primary-900)!important;text-align:center!important;position:relative;z-index:var(--z-raise)}.expenses-stats-box .stat-value,.expenses-stats-box #avg-daily-spending,.expenses-stats-box #projected-monthly-spending,.expenses-stats-box #max-spending-day{color:var(--color-primary-900)!important}.stat-item{flex:1;text-align:center!important;color:var(--color-primary-900)!important;padding:var(--space-6) 16px;border-radius:var(--radius-md);background:var(--dm-surface);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:1px solid var(--dm-border);box-shadow:var(--shadow-sm);min-height:180px;display:flex;flex-direction:column;justify-content:space-evenly;align-items:center;align-self:stretch;gap:var(--space-2)}.stat-item:hover{background:var(--dm-surface-elevated);box-shadow:0 8px 20px var(--color-black-alpha-20)}.expenses-stats-box .stat-item{text-align:center!important}.stat-label{font-size:var(--text-xs);font-weight:800;color:var(--color-primary-900)!important;opacity:1;margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:1.2px;text-align:center!important;text-shadow:none;line-height:1.3}.expenses-stats-box .stat-label{color:var(--color-primary-900)!important;text-align:center!important;font-size:12px!important;font-weight:800!important;text-shadow:none;opacity:1!important;margin-bottom:var(--space-2)}.stat-value{font-size:var(--text-2xl);font-weight:900;color:var(--color-primary-900)!important;text-shadow:none;text-align:center!important;letter-spacing:-.5px;line-height:1.1;margin:4px 0}.expenses-stats-box .stat-value{color:var(--color-primary-900)!important;text-align:center!important;font-size:32px!important;font-weight:900!important;text-shadow:none;letter-spacing:-.5px;margin:4px 0}.stat-subtext{font-size:var(--text-xs);margin-top:var(--space-1);opacity:1;text-align:center!important;color:var(--color-primary-900)!important;line-height:1.4}.expenses-stats-box .stat-subtext{color:var(--color-primary-900)!important;text-align:center!important;font-size:12px!important;font-weight:600!important;opacity:1!important;text-shadow:none;margin-top:var(--space-1)}.stat-item-clickable{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.stat-item-clickable:hover{background:var(--color-white-alpha-98)}.stat-hint{font-size:11px;margin-top:var(--space-1);opacity:1;font-style:italic;color:var(--dm-text-tertiary)!important;text-shadow:none;line-height:1.3}[data-theme=dark] .expenses-stats-box *,[data-theme=dark] .expenses-stats-box .stat-label,[data-theme=dark] .expenses-stats-box .stat-value,[data-theme=dark] .expenses-stats-box .stat-subtext,[data-theme=dark] .expenses-stats-box .stat-hint,[data-theme=dark] .expenses-stats-box #avg-daily-spending,[data-theme=dark] .expenses-stats-box #projected-monthly-spending,[data-theme=dark] .expenses-stats-box #max-spending-day{color:var(--dm-text-secondary)!important;-webkit-text-fill-color:var(--dm-text-secondary)!important}[data-theme=dark] .expenses-stats-box .stat-value{color:var(--dm-text-primary)!important;-webkit-text-fill-color:var(--dm-text-primary)!important}[data-theme=dark] .expenses-stats-box .stat-subtext,[data-theme=dark] .expenses-stats-box .stat-hint{color:var(--dm-text-tertiary)!important;-webkit-text-fill-color:var(--dm-text-tertiary)!important}[data-theme=dark] .stat-item{color:var(--dm-text-primary)!important}[data-theme=dark] .stat-item:hover,[data-theme=dark] .stat-item-clickable:hover{background:var(--dm-surface-elevated)}.popup-overlay{display:none;position:fixed;inset:0;width:100vw;height:100vh;background:var(--dm-modal-backdrop);z-index:var(--z-modal-backdrop);justify-content:center;align-items:center;animation:fadeIn .4s var(--ease-standard)}.popup-overlay.active{display:flex;padding:var(--space-5)}.popup-content{background:var(--dm-modal-bg);border-radius:var(--radius-2xl);width:90%;max-width:600px;max-height:85vh;overflow:hidden;box-shadow:var(--dm-modal-shadow);animation:popupSlideIn .4s var(--ease-standard);border:1px solid var(--dm-border);position:relative}.popup-content:before{display:none}@keyframes popupSlideIn{0%{opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.popup-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-7) var(--space-8);background:var(--dm-brand-solid);color:var(--dm-text-on-brand)!important;position:relative;overflow:hidden}.popup-header:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%}.popup-header h3{margin:0;font-size:var(--text-xl);font-weight:700;color:#fff;position:relative;z-index:var(--z-raise);text-shadow:0 2px 8px var(--color-black-alpha-15);letter-spacing:-.3px}.popup-close{background:var(--color-white-alpha-15);border:none;color:#fff;font-size:var(--text-2xl);cursor:pointer;line-height:1;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);position:relative;z-index:var(--z-raise)}.popup-close:hover{background:var(--color-white-alpha-25);transform:rotate(90deg) scale(1.1);box-shadow:0 4px 12px var(--color-black-alpha-20)}.popup-body{padding:var(--space-8);max-height:calc(85vh - 120px);overflow-y:auto;background:var(--dm-modal-bg)}.popup-body{scrollbar-width:thin;scrollbar-color:var(--color-primary-600) var(--dm-scrollbar-track)}.popup-expense-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5) var(--space-5);margin-bottom:var(--space-3);background:var(--dm-surface-hover);border-radius:var(--radius-lg);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-black-alpha-5);position:relative;overflow:hidden}.popup-expense-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--dm-brand-solid);transition:width .3s ease}.popup-expense-item:hover{background:var(--dm-border-subtle);transform:translate(8px);box-shadow:var(--shadow-hover)}.popup-expense-item:hover:before{width:8px}.popup-expense-info{flex:1}.popup-expense-description{font-weight:700;color:var(--dm-text-secondary);margin-bottom:var(--space-2);font-size:var(--text-base)}.popup-expense-category{font-size:var(--text-xs);color:var(--dm-text-on-brand);background:var(--dm-brand-solid);padding:var(--space-1) var(--space-3);border-radius:var(--radius-lg);display:inline-block;font-weight:600;box-shadow:var(--shadow-md)}.popup-expense-amount{font-size:var(--text-xl);font-weight:800;color:var(--color-primary-600)}.popup-total{margin-top:var(--space-6);padding:var(--space-6);background:var(--dm-brand-solid);border-radius:var(--radius-lg);display:flex;justify-content:space-between;align-items:center;font-size:var(--text-lg);font-weight:700;box-shadow:var(--shadow-hover-lg);position:relative;overflow:hidden}.popup-total:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%}.popup-total-label{color:#fff;position:relative;z-index:1;text-shadow:0 2px 4px var(--color-black-alpha-10)}.popup-total-amount{color:#fff;font-size:var(--text-2xl);font-weight:800;position:relative;z-index:1;text-shadow:0 2px 8px var(--color-black-alpha-15)}.copy-budget-modal{max-width:700px}.popup-subtitle{color:var(--dm-text-tertiary);margin-bottom:var(--space-5);font-size:var(--text-sm)}#copy-budget-list{max-height:400px;overflow-y:auto;margin-bottom:var(--space-5)}.budget-copy-item{display:flex;align-items:center;padding:15px;margin-bottom:var(--space-2-5);background:var(--dm-surface-hover);border-radius:var(--radius-md);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;cursor:pointer;position:relative}.budget-copy-item:hover{background:var(--dm-border-subtle);transform:translate(5px);box-shadow:var(--shadow-sm)}.budget-copy-item.selected{background:var(--color-indigo-100);box-shadow:0 4px 12px var(--color-success-tint-strong)}.budget-copy-item.selected:before{content:"✓";position:absolute;right:15px;top:50%;transform:translateY(-50%);width:28px;height:28px;background:var(--color-primary-600);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--text-lg)}.budget-copy-info{flex:1}.budget-copy-category{font-weight:600;color:var(--dm-text-secondary);margin-bottom:5px}.budget-copy-month{font-size:var(--text-xs);color:var(--dm-text-tertiary)}.budget-copy-amount{font-size:var(--text-lg);font-weight:700;color:var(--color-primary-600);margin-right:45px}.budget-copy-item.selected .budget-copy-amount{margin-right:50px;color:var(--color-primary-700)}.copy-budget-actions{display:flex;gap:var(--space-2-5);margin-bottom:var(--space-5);padding-top:15px;border-top:1px solid var(--dm-border)}.popup-footer{display:flex;justify-content:flex-end;gap:var(--space-2-5);padding:var(--space-5) 25px;background:var(--dm-nav-bg);border-top:1px solid var(--dm-border)}.btn-primary{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-default);cursor:pointer;font-size:var(--text-base);font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.btn-secondary{background:var(--dm-border);color:var(--dm-text-secondary);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-default);cursor:pointer;font-size:var(--text-base);font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.no-budget-message{text-align:center;padding:40px 20px;color:var(--dm-text-tertiary);font-size:var(--text-base)}@media(max-width:768px){.expenses-stats-box{flex-direction:column;gap:var(--space-4)}.expenses-stats-box .stat-item{min-height:auto}.stat-value{font-size:var(--text-xl)}.popup-content{width:95%;max-height:90vh}.popup-expense-item{flex-direction:column;align-items:flex-start;gap:var(--space-2-5)}.popup-expense-amount{font-size:var(--text-lg)}}@media(max-width:768px){.summary-row{font-size:var(--text-sm)}.summary-amount{font-size:var(--text-base)}.balance-amount{font-size:var(--text-lg)}.category-item{flex-direction:column;align-items:flex-start;gap:5px}.budget-macro-header{padding:var(--space-3)}.budget-sub-item{flex-direction:column;align-items:flex-start;gap:var(--space-2-5)}}.totals-section{margin-top:var(--space-10);padding:30px;background:var(--dm-surface-hover);border-radius:var(--radius-md);border:2px solid var(--dm-border)}.totals-section h3{color:var(--dm-text-secondary);margin-bottom:25px;font-size:var(--text-2xl);font-weight:700;text-align:center}.totals-boxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px}.total-box{background:var(--dm-card-bg);padding:30px;border-radius:var(--radius-md);box-shadow:0 4px 12px var(--color-black-alpha-8);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;overflow:hidden}.total-box.clickable-box{cursor:pointer}.total-box.clickable-box:hover{box-shadow:0 12px 28px var(--color-black-alpha-15)}.box-hint{margin-top:var(--space-2-5);font-size:var(--text-xs);color:var(--dm-text-secondary);font-style:italic;opacity:1;transition:opacity .3s ease}.total-box.clickable-box:hover .box-hint{opacity:1;color:var(--dm-text-secondary)}.total-box:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;transition:height .3s ease}.total-box:hover{box-shadow:0 8px 20px var(--color-black-alpha-15)}.total-box:hover:before{height:8px}.total-expenses:before{background:var(--color-error-500)}.total-income:before{background:var(--color-success-700)}.total-icon{font-size:var(--text-5xl);margin-bottom:15px}.total-label{font-size:var(--text-base);font-weight:600;color:var(--dm-text-tertiary);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.5px}.total-value{font-size:var(--text-4xl);font-weight:700;margin-top:5px}.total-expenses .total-value{color:var(--color-error)}.total-income .total-value{color:var(--color-success)}.totals-export{margin-top:30px;text-align:center}.export-period-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:15px 30px;border-radius:var(--radius-default);font-size:var(--text-base);font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-2-5);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 12px var(--color-success-tint-strong)}.export-period-btn:hover{box-shadow:0 6px 20px var(--color-success-tint-stronger);background:var(--dm-brand-solid-hover)}.export-period-btn:active{transform:translateY(0)}.export-period-btn .btn-icon{font-size:var(--text-xl)}.custom-months-modal{max-width:700px;max-height:80vh}.monthly-breakdown-modal{max-width:800px;max-height:80vh}.monthly-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);margin:10px 0;background:var(--dm-surface-hover);border-radius:var(--radius-default);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.monthly-item:hover{background:var(--dm-border-subtle);transform:translate(5px)}.monthly-month{font-weight:600;color:var(--dm-text-secondary);font-size:var(--text-base)}.monthly-amount{font-size:var(--text-lg);font-weight:700}.monthly-amount.expense-amount{color:var(--color-error)}.monthly-amount.income-amount{color:var(--color-success)}.monthly-total{margin-top:var(--space-5);padding-top:var(--space-5);border-top:3px solid var(--dm-border);display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xl);font-weight:700}.monthly-total-label{color:var(--dm-text-secondary)}.monthly-total-amount{font-size:var(--text-2xl)}.monthly-total-amount.expense-total{color:var(--color-error)}.monthly-total-amount.income-total{color:var(--color-success)}.monthly-item.clickable{cursor:pointer}.monthly-item.clickable:hover{background:var(--dm-border);transform:translate(8px)}.monthly-arrow{font-size:var(--text-xl);color:var(--dm-text-muted);margin-left:var(--space-2-5);transition:transform .2s ease}.monthly-item.clickable:hover .monthly-arrow{transform:translate(5px);color:var(--color-primary-600)}.month-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5);padding-bottom:15px;border-bottom:2px solid var(--dm-border)}.month-detail-back{background:none;border:none;color:var(--color-primary-600);font-size:var(--text-sm);font-weight:600;cursor:pointer;padding:var(--space-2) var(--space-3);border-radius:6px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.month-detail-back:hover{background:var(--color-indigo-50);color:var(--color-indigo-500)}.month-detail-summary{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1)}.month-detail-count{font-size:var(--text-xs);color:var(--dm-text-tertiary)}.month-detail-total{font-size:var(--text-xl);font-weight:700}.month-detail-list{max-height:50vh;overflow-y:auto}.month-detail-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 16px;margin:8px 0;background:var(--dm-surface-hover);border-radius:var(--radius-default);transition:background .2s ease}.month-detail-item:hover{background:var(--dm-border-subtle)}.month-detail-item-left{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.month-detail-item-date{font-size:var(--text-xs);color:var(--dm-text-tertiary);background:var(--dm-border);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-weight:500;white-space:nowrap}.month-detail-item-info{flex:1;min-width:0}.month-detail-item-desc{font-weight:600;color:var(--dm-text-secondary);font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-detail-item-category{font-size:var(--text-xs);color:var(--dm-text-tertiary);margin-top:2px;display:flex;align-items:center;gap:var(--space-1-5)}.month-detail-item-amount{font-weight:700;font-size:var(--text-sm);white-space:nowrap;margin-left:var(--space-3)}.detail-badge{font-size:10px;padding:2px 4px;border-radius:3px}.detail-badge.deductible{background:var(--color-warning-100)}.detail-badge.recurring{background:var(--color-primary-100)}@media(max-width:640px){.month-detail-header{flex-direction:column;gap:var(--space-3);align-items:stretch}.month-detail-summary{flex-direction:row;justify-content:space-between;align-items:center}.month-detail-item{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.month-detail-item-left{width:100%}.month-detail-item-amount{margin-left:0;align-self:flex-end}}.view-other-months-container{margin-top:var(--space-10);text-align:center;padding:var(--space-8) 0;position:relative}.view-other-months-container:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:80%;height:1px;background:linear-gradient(90deg,transparent 0%,var(--dm-border) 50%,transparent 100%)}.view-other-months-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-4) 36px;border-radius:14px;font-size:var(--text-base);font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-3);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);box-shadow:var(--shadow-hover);position:relative;overflow:hidden}.view-other-months-btn:before{content:"";position:absolute;inset:0;background:var(--dm-brand-solid);opacity:0;transition:opacity .3s ease}.view-other-months-btn:hover{box-shadow:var(--shadow-xl)}.view-other-months-btn:hover:before{opacity:1}.view-other-months-btn .btn-icon{font-size:var(--text-xl);position:relative;z-index:1}.view-other-months-btn .btn-text{position:relative;z-index:1}.other-months-modal{max-width:600px;max-height:70vh}.month-selection-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4);padding:8px 8px 80px}.month-selection-item{background:var(--dm-surface-hover);padding:var(--space-6) 20px;border-radius:var(--radius-lg);border:2px solid var(--dm-border);cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);text-align:center;font-weight:700;color:var(--dm-text-secondary);font-size:17px;position:relative;box-shadow:0 2px 8px var(--color-black-alpha-5)}.month-selection-item:hover{background:var(--dm-brand-solid);border-color:var(--color-primary-600);box-shadow:var(--shadow-xl);color:var(--dm-text-on-brand)}.month-selection-item:active{transform:none}.year-selection-item{background:var(--dm-surface-hover);padding:28px 20px;border-radius:var(--radius-lg);border:2px solid var(--dm-border);cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);text-align:center;font-weight:700;color:var(--dm-text-secondary);font-size:var(--text-xl);position:relative;box-shadow:0 2px 8px var(--color-black-alpha-5)}.year-selection-item:hover{background:var(--dm-brand-solid);border-color:var(--color-primary-600);box-shadow:var(--shadow-xl);color:var(--dm-text-on-brand)}.year-selection-item:active{transform:none}.back-to-years-btn{background:var(--color-white-alpha-20);border:none;border-radius:50%;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;padding:0;margin-right:var(--space-3);vertical-align:middle}.back-to-years-btn:hover{background:var(--color-white-alpha-30);transform:translate(-3px)}.back-to-years-btn svg{color:#fff}#other-months-title{display:flex;align-items:center}#other-months-title span{flex:1}.month-transactions-modal{max-width:900px;max-height:85vh}.transaction-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);margin:var(--space-2) 0;background:var(--dm-surface-hover);border-radius:var(--radius-md);border-left:3px solid transparent;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.transaction-item.expense-transaction{border-left-color:var(--color-error-400)}.transaction-item.income-transaction{border-left-color:var(--color-success-400)}.transaction-item:hover{background:var(--dm-border-subtle);transform:translate(2px)}.transaction-info{flex:1 1 60%;min-width:0;display:flex;flex-direction:column;gap:2px}.transaction-date{font-size:var(--text-xs);color:var(--dm-text-tertiary);margin-bottom:0}.transaction-category{font-weight:600;font-size:var(--text-sm);color:var(--dm-text-secondary);margin-bottom:0}.transaction-description{font-size:var(--text-sm);color:var(--dm-text-primary);font-weight:var(--font-semibold);font-style:normal;white-space:pre-wrap;word-break:break-word;order:-1}.notes-content{white-space:pre-wrap;word-break:break-word}.transaction-amount-actions{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.transaction-amount{font-size:var(--text-lg);font-weight:700;min-width:0;text-align:right;white-space:nowrap}.transaction-amount.expense-amt{color:var(--color-error)}.transaction-amount.income-amt{color:var(--color-success)}.transaction-amount.investment-amt{color:var(--color-info)}.transaction-delete-btn{background:var(--color-error-600);color:#fff;border:none;padding:6px var(--space-3);border-radius:6px;font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.transaction-delete-btn:hover{background:var(--color-error-700);transform:scale(1.05)}.no-transactions-message{text-align:center;padding:40px 20px;color:var(--dm-text-tertiary);font-size:var(--text-base)}.expenses-day-modal{display:flex;flex-direction:column;gap:var(--space-4)}.expenses-day-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--dm-surface-hover);border-radius:var(--radius-md);border-left:3px solid var(--color-error-500)}.expenses-day-date{font-weight:var(--font-semibold);font-size:var(--text-base);color:var(--dm-text-primary)}.expenses-day-total{display:inline-flex;align-items:baseline;gap:var(--space-2)}.expenses-day-total-label{font-size:var(--text-sm);color:var(--dm-text-tertiary);text-transform:uppercase;letter-spacing:.04em}.expenses-day-total-value{font-weight:700;font-size:var(--text-lg);color:var(--color-error-600);white-space:nowrap}.expenses-day-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-2)}.expenses-day-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--dm-surface-hover);border-radius:var(--radius-md);border-left:3px solid var(--color-error-400);min-width:0;transition:background-color .2s ease,transform .2s ease}.expenses-day-item:hover{background:var(--dm-border-subtle);transform:translate(2px)}.expenses-day-item-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.expenses-day-item-title{font-weight:var(--font-semibold);font-size:var(--text-sm);color:var(--dm-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expenses-day-item-cat{display:inline-block;align-self:flex-start;padding:2px var(--space-2);font-size:var(--text-xs);font-weight:500;color:var(--color-error-700);background:var(--color-error-50);border-radius:var(--radius-default);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expenses-day-item-amount{font-weight:700;font-size:var(--text-base);color:var(--color-error-600);white-space:nowrap;flex-shrink:0}@media(max-width:480px){.expenses-day-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.expenses-day-list{grid-template-columns:1fr}.expenses-day-item{padding:var(--space-3)}}.edit-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-2) var(--space-4);border-radius:6px;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;margin-right:var(--space-2)}.edit-btn:hover{background:var(--dm-brand-solid);transform:scale(1.05)}.item-buttons{display:flex;gap:var(--space-2);align-items:center}.spesa-actions-btns,.entrata-actions-btns{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2-5)}.transaction-buttons{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.transaction-edit-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:6px var(--space-3);border-radius:6px;font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.transaction-edit-btn:hover{background:var(--dm-brand-solid);transform:scale(1.05)}.edit-modal{max-width:600px;max-height:80vh}.edit-modal .form-group{margin-bottom:var(--space-5)}.edit-modal label{display:block;margin-bottom:var(--space-2);font-weight:600;color:var(--dm-text-secondary)}.edit-modal input,.edit-modal select{width:100%;padding:var(--space-2-5);border:2px solid var(--dm-input-border);background:var(--dm-input-bg);color:var(--dm-input-text);border-radius:6px;font-size:var(--text-base);transition:border-color .2s}.edit-modal input:focus,.edit-modal select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}@media(max-width:768px){.edit-modal{max-width:95%}}@media(max-width:480px){.transaction-item{grid-template-columns:1fr}.item-buttons{flex-direction:column;width:100%}.edit-btn,.delete-btn{width:100%}}.months-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-3);margin-bottom:25px;max-height:400px;overflow-y:auto;padding:var(--space-2-5)}.month-checkbox-item{display:flex;align-items:center;padding:var(--space-3) 15px;background:var(--dm-surface-hover);border:2px solid var(--dm-border);border-radius:var(--radius-default);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;-webkit-user-select:none;user-select:none}.month-checkbox-item:hover{background:var(--dm-border-subtle);border-color:var(--dm-border-strong)}.month-checkbox-item input[type=checkbox]{margin-right:var(--space-2-5);cursor:pointer;width:18px;height:18px}.month-checkbox-item.selected{background:var(--color-teal-50);border-color:var(--color-primary-600);font-weight:600}.month-checkbox-label{flex:1;cursor:pointer;color:var(--dm-text-secondary)}.popup-actions{display:flex;gap:var(--space-4);justify-content:flex-end;padding-top:var(--space-5);border-top:2px solid var(--dm-border)}.btn-primary,.btn-secondary{padding:var(--space-3) 24px;border-radius:var(--radius-default);font-weight:600;font-size:var(--text-base);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:none}.btn-primary{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)}.btn-secondary{background:var(--dm-border);color:var(--dm-text-secondary)}.btn-secondary:hover{background:var(--dm-border-strong)}@media(max-width:768px){.totals-section{padding:var(--space-5)}.totals-boxes{grid-template-columns:1fr}.total-value{font-size:var(--text-2xl)}.export-period-btn{width:100%;justify-content:center}.months-grid{grid-template-columns:1fr;max-height:300px}.popup-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.clickable-category{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border-radius:6px;padding:10px!important;margin:5px 0!important}.clickable-category:hover{background:var(--dm-border-subtle)!important;transform:translate(5px);box-shadow:0 2px 8px var(--color-black-alpha-10)}.clickable-category:active{transform:translate(3px)}.income-category.clickable-category:hover{background:var(--color-teal-50)!important}.expense-category.clickable-category:hover,.possible-duplicate{background:var(--color-error-50)!important}.duplicate-warning{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-error-100);border:1px solid var(--color-error-300);border-radius:6px;color:var(--color-error-900);font-size:var(--text-xs);font-weight:600;display:inline-block}.confirm-btn{background:var(--color-success);color:#fff;border:none;padding:var(--space-2) var(--space-4);border-radius:6px;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;margin-right:var(--space-2)}.confirm-btn:hover{background:var(--color-success-700);transform:scale(1.05);box-shadow:0 4px 12px var(--color-success-tint-strong)}.confirm-btn:active{transform:scale(.98)}.insights-container{margin:var(--space-5) 0;display:none}.insight-card{background:var(--dm-card-bg);border-radius:var(--radius-md);padding:15px;margin-bottom:var(--space-2-5);box-shadow:0 4px 15px var(--color-black-alpha-10);display:flex;align-items:center;gap:var(--space-3);transition:transform .2s ease,box-shadow .2s ease}.insight-card:hover{box-shadow:0 6px 20px var(--color-black-alpha-15)}.insight-card.warning,.insight-card.danger{background:var(--color-error-50)}.insight-card.info{background:var(--color-info-50)}.insight-icon{font-size:var(--text-2xl);flex-shrink:0}.insight-message{font-size:var(--text-sm);line-height:1.4;color:var(--dm-text-secondary);font-weight:500}.comparison-container{background:var(--dm-card-bg);border-radius:15px;padding:var(--space-5);margin:var(--space-5) 0;box-shadow:0 10px 30px var(--color-black-alpha-10)}.comparison-header h4{color:var(--dm-text-secondary);margin-bottom:15px;font-size:var(--text-lg);display:flex;align-items:center;gap:var(--space-2)}.comparison-empty{text-align:center;color:var(--dm-text-tertiary);padding:var(--space-5);font-style:italic}.comparison-list{display:flex;flex-direction:column;gap:var(--space-3)}.comparison-item{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:var(--space-3) 15px;border-radius:var(--radius-md);background:var(--dm-surface-hover);border:1px solid var(--dm-border);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.comparison-item:hover{background:var(--dm-border-subtle);transform:translate(5px)}.comparison-item.increase{background:var(--color-error-50)}.comparison-item.decrease{background:var(--color-success-50)}.comparison-item.new{background:var(--color-info-50)}.comparison-item.stopped{background:var(--color-gray-50)}.comparison-category{font-weight:600;color:var(--dm-text-secondary);font-size:var(--text-sm)}.comparison-amounts{display:flex;align-items:center;gap:var(--space-2);justify-self:center}.amount-previous{color:var(--dm-text-tertiary);font-size:var(--text-xs);text-decoration:line-through}.amount-current{color:var(--dm-text-secondary);font-weight:600;font-size:var(--text-sm)}.comparison-arrow{font-size:var(--text-base)}.comparison-change{justify-self:end;font-weight:600;font-size:var(--text-xs);padding:var(--space-1) var(--space-2);border-radius:6px}.comparison-change.increase{color:var(--color-error);background:var(--color-error-tint)}.comparison-change.decrease{color:var(--dm-brand-text);background:var(--color-success-tint)}.comparison-change.new{color:var(--color-info-400);background:var(--color-info-tint)}.comparison-change.stopped{color:var(--dm-text-tertiary);background:var(--color-gray-tint)}.budget-alert{background:var(--dm-surface);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:15px;box-shadow:0 4px 15px var(--color-black-alpha-10)}.budget-alert.danger{background:var(--color-error-50)}.budget-alert.warning{background:var(--color-warning-50)}.alert-content{display:flex;flex-direction:column;gap:var(--space-2-5)}.alert-message{font-weight:600;color:var(--dm-text-secondary);font-size:var(--text-base)}.alert-details{color:#fff;font-size:var(--text-sm)}.alert-progress{display:flex;align-items:center;gap:var(--space-2-5)}.progress-bar{flex:1;height:8px;background:var(--dm-border);border-radius:var(--radius-sm);overflow:hidden}.progress-fill{height:100%;border-radius:var(--radius-sm);transition:width .3s ease}.progress-fill.warning{background:var(--color-secondary-500)}.progress-fill.danger{background:var(--color-error)}.progress-text{font-weight:600;color:#fff;font-size:var(--text-sm);min-width:40px;text-align:right}@media(max-width:768px){.comparison-item{grid-template-columns:1fr;gap:var(--space-2);text-align:center}.comparison-amounts,.comparison-change{justify-self:center}.insight-card{flex-direction:column;text-align:center;gap:var(--space-2)}.alert-progress{flex-direction:column;gap:5px}.progress-text{text-align:center}}.category-suggestions-container{margin-top:var(--space-2);display:flex;flex-direction:column;gap:var(--space-1-5)}.category-suggestion{background:var(--color-teal-50);border:1px solid var(--color-teal-300);border-radius:var(--radius-default);padding:10px 12px;font-size:var(--text-xs);color:var(--color-teal-600);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;align-items:center;gap:var(--space-2)}.category-suggestion:hover{background:var(--color-teal-100);border-color:var(--color-teal-400);transform:translate(3px);box-shadow:0 2px 8px var(--color-success-tint-stronger)}.sub-suggestion{background:var(--color-teal-50)}.sub-suggestion:hover{background:var(--color-teal-100)}.suggestion-icon{font-size:var(--text-base);flex-shrink:0}.suggestion-text{flex:1;line-height:1.3}.suggestion-text strong{color:var(--dm-text-primary);font-weight:600}.suggestions-header{background:var(--color-warning-50);border:1px solid var(--color-warning-200);border-radius:var(--radius-default);padding:10px 12px;font-size:var(--text-xs);color:var(--color-secondary-800);display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.multiple-suggestion{background:var(--color-indigo-50);border:1px solid var(--dm-border);position:relative;padding-left:45px}.multiple-suggestion:hover{background:var(--color-indigo-100);border-color:var(--color-primary-600);transform:translate(3px);box-shadow:var(--shadow-sm)}.suggestion-rank{position:absolute;left:12px;top:50%;transform:translateY(-50%);background:var(--color-primary-600);color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.suggestion-content{display:flex;flex-direction:column;gap:2px}.suggestion-main{font-weight:600;color:var(--dm-text-secondary);font-size:var(--text-xs)}.suggestion-macro{font-size:var(--text-xs);color:var(--dm-text-secondary);font-weight:600;margin-top:3px;background:var(--dm-border-subtle);padding:2px 6px;border-radius:var(--radius-sm);display:inline-block}.suggestion-confidence{font-size:10px;color:var(--dm-text-secondary);font-weight:500}@media(max-width:768px){.category-suggestions-container{gap:var(--space-1)}.category-suggestion{padding:8px 10px;font-size:var(--text-xs)}.suggestion-icon{font-size:var(--text-sm)}.multiple-suggestion{padding-left:var(--space-10)}.suggestion-rank{width:18px;height:18px;font-size:10px;left:10px}.suggestion-main{font-size:var(--text-xs)}.suggestion-macro{font-size:var(--text-xs);font-weight:600;padding:2px 4px}.suggestion-confidence{font-size:9px}}.insight-clickable{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;position:relative}.insight-clickable:hover{box-shadow:0 8px 25px var(--color-black-alpha-20);background:var(--dm-surface-hover)}.insight-click-hint{position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:var(--text-xs);color:var(--dm-text-tertiary);opacity:0;transition:opacity .2s ease}.insight-clickable:hover .insight-click-hint{opacity:1}.insight-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--color-black-alpha-50);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);animation:fadeIn .2s ease}.insight-popup-content{background:var(--dm-surface);border-radius:15px;max-width:500px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px var(--color-black-alpha-30);animation:slideIn .3s ease}.insight-popup-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5);border-bottom:1px solid var(--dm-border);background:var(--dm-brand-solid);color:var(--dm-text-on-brand)!important;border-radius:15px 15px 0 0}.insight-popup-header h3{margin:0;font-size:var(--text-lg);color:#fff!important}.insight-popup-close{background:none;border:none;color:#fff;font-size:var(--text-2xl);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease}.insight-popup-close:hover{background:var(--color-white-alpha-20)}.insight-popup-body{padding:var(--space-5)}.insight-popup-body h4{margin:0 0 15px;color:var(--dm-text-secondary);font-size:var(--text-base)}.subcategories-list{display:flex;flex-direction:column;gap:var(--space-2-5)}.subcategory-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 15px;background:var(--dm-surface-hover);border-radius:var(--radius-default);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.subcategory-item:hover{background:var(--dm-border-subtle);transform:translate(5px)}.subcategory-name{font-weight:500;color:var(--dm-text-secondary)}.subcategory-amount{font-weight:600;color:var(--color-error);font-size:var(--text-sm)}.popup-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-4);margin-bottom:var(--space-5);padding:15px;background:var(--color-gray-50);border-radius:var(--radius-md)}.popup-summary-item{display:flex;flex-direction:column;gap:5px}.popup-summary-label{font-size:var(--text-xs);color:var(--dm-text-tertiary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.popup-summary-value{font-size:var(--text-lg);font-weight:700;color:var(--dm-text-secondary)}.expenses-detail-list{display:flex;flex-direction:column;gap:var(--space-2-5);max-height:400px;overflow-y:auto}.expense-detail-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 15px;background:var(--dm-surface-hover);border-radius:var(--radius-default);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.expense-detail-item:hover{background:var(--dm-border-subtle);transform:translate(5px)}.expense-detail-info{flex:1;display:flex;flex-direction:column;gap:var(--space-1)}.expense-detail-description{font-weight:600;color:var(--dm-text-secondary);font-size:var(--text-sm)}.expense-detail-meta{font-size:var(--text-xs);color:var(--dm-text-tertiary)}.expense-detail-amount{font-weight:700;color:var(--color-error);font-size:var(--text-base);white-space:nowrap;margin-left:15px}.insight-popup-wide{max-width:900px}.months-spending-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--space-4)}.month-spending-box{padding:var(--space-5);background:var(--dm-surface-hover);border-radius:var(--radius-md);border:2px solid var(--dm-border);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;flex-direction:column;gap:var(--space-2)}.month-spending-box:hover{box-shadow:var(--shadow-hover-lg);border-color:var(--color-primary-600)}.month-spending-name{font-size:var(--text-base);font-weight:700;color:var(--dm-text-secondary);margin-bottom:var(--space-2)}.month-spending-day{font-size:var(--text-sm);color:var(--dm-text-secondary);font-weight:600}.month-spending-average{font-size:var(--text-lg);font-weight:700;color:var(--color-primary-600);margin-top:var(--space-1)}.month-spending-hint{font-size:11px;color:var(--dm-text-tertiary);font-style:italic;margin-top:var(--space-2);opacity:0;transition:opacity .2s ease}.month-spending-box:hover .month-spending-hint{opacity:1}@media(max-width:768px){.insight-popup-content{width:95%;max-height:90vh}.insight-popup-header,.insight-popup-body{padding:15px}.subcategory-item{flex-direction:column;align-items:flex-start;gap:5px}.expense-detail-item{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.expense-detail-amount{margin-left:0}.months-spending-grid,.popup-summary{grid-template-columns:1fr}.subcategory-amount{align-self:flex-end}.insight-click-hint{position:static;transform:none;opacity:1;margin-top:5px;font-size:11px}}.budget-overview-container{margin-bottom:25px}.budget-overview-card{background:var(--dm-brand-solid);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-hover-lg);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;color:var(--dm-text-on-brand)}.budget-overview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5);padding-bottom:15px;border-bottom:1px solid var(--color-white-alpha-20)}.budget-overview-header h3{margin:0;color:#fff;font-size:1.2em;font-weight:600}.budget-status{padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-xl);font-size:.9em;font-weight:500}.budget-ok .budget-status{background:var(--color-success-50);color:var(--color-success-800)}.budget-warning .budget-status{background:var(--color-warning-50);color:var(--color-secondary-600)}.budget-exceeded .budget-status{background:var(--color-error-50);color:var(--color-error-800)}.no-budget .budget-status{background:var(--dm-border-subtle);color:var(--dm-text-tertiary)}.budget-overview-content{display:flex;flex-direction:column;gap:var(--space-5)}.budget-overview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-5)}.budget-stat{text-align:center!important;padding:var(--space-5) 15px;background:var(--color-white-alpha-20);border-radius:var(--radius-md);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:1px solid var(--color-white-alpha-25)}.budget-stat:hover{background:var(--color-white-alpha-25)}.budget-stat .stat-label{font-size:15px!important;color:var(--color-white)!important;margin-bottom:var(--space-2-5);font-weight:800!important;text-align:center!important;text-transform:uppercase;letter-spacing:1.2px;text-shadow:0 2px 4px var(--color-black-alpha-40);opacity:1!important}.budget-stat .stat-value{font-size:32px!important;font-weight:900!important;margin:0;color:var(--color-white)!important;text-align:center!important;text-shadow:0 2px 8px var(--color-black-alpha-40);letter-spacing:-.5px;line-height:1.2}.budget-stat .stat-value.spent,.budget-stat .stat-value.budget,.budget-stat .stat-value.remaining,.budget-stat .stat-value.over{color:var(--color-white)!important}.budget-overview-card .budget-stat *{color:#fff!important;text-align:center!important}.budget-overview-progress{display:flex;align-items:center;gap:var(--space-4)}.progress-bar-container{flex:1;height:12px;background:var(--dm-border);border-radius:6px;overflow:hidden}.progress-bar{height:100%;border-radius:6px;transition:width .3s ease}.progress-bar.budget-ok{background:var(--color-success-700)}.progress-bar.budget-warning{background:var(--color-secondary-500)}.progress-bar.budget-exceeded{background:var(--color-error-500)}.progress-percentage{font-weight:600;font-size:1.1em;min-width:60px;text-align:right}.budget-ok .progress-percentage{color:var(--color-success-500)}.budget-warning .progress-percentage{color:var(--color-secondary-500)}.budget-exceeded .progress-percentage{color:var(--color-error-500)}@media(max-width:768px){.stat-label:not(.expenses-stats-box .stat-label):not(.categories-analysis-section .stat-label):not(#risparmi-section .stat-label){color:#fff!important;font-weight:700!important;opacity:1!important}.budget-overview-header{flex-direction:column;gap:var(--space-2-5);text-align:center}.budget-overview-stats{grid-template-columns:1fr}.budget-overview-progress{flex-direction:column;gap:var(--space-2-5)}.progress-percentage{text-align:center}.stat-item .stat-label,.expenses-stats-box .stat-label,div[data-translate=avg-daily-spending],div[data-translate=projected-monthly-spending],div[data-translate=max-spending-day]{color:var(--color-primary-900)!important;font-weight:700!important;opacity:1!important;text-shadow:none!important}.stat-item .stat-value,.expenses-stats-box .stat-value{color:var(--color-primary-900)!important;font-weight:700!important;text-shadow:none!important}.stat-item .stat-subtext,.expenses-stats-box .stat-subtext,.stat-item .stat-hint,.expenses-stats-box .stat-hint{color:var(--color-primary-900)!important;opacity:1!important}}@media(max-width:768px){[data-translate=avg-daily-spending],[data-translate=projected-monthly-spending],[data-translate=max-spending-day]{color:var(--color-primary-900)!important;font-weight:700!important;opacity:1!important;text-shadow:none!important}.expenses-stats-box .stat-label,.expenses-stats-box .stat-item .stat-label{color:var(--color-primary-900)!important;font-weight:700!important;opacity:1!important}.stat-label:not(.categories-analysis-section .stat-label):not(#risparmi-section .stat-label),.stat-item .stat-label:not(.categories-analysis-section .stat-label):not(#risparmi-section .stat-label){color:var(--dm-text-secondary)!important;font-weight:700!important;opacity:1!important}}.savings-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-5);margin:var(--space-8) 0}@media(max-width:768px){.savings-stats-grid{grid-template-columns:1fr}}.stat-card{background:var(--dm-surface);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:0 4px 12px var(--color-black-alpha-8);border:2px solid var(--dm-border);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);display:flex;align-items:center;gap:var(--space-4)}.stat-card:hover{box-shadow:var(--shadow-hover-lg);border-color:var(--color-primary-600)}.stat-card-clickable{cursor:pointer}.stat-card-clickable:hover{box-shadow:var(--shadow-primary-lg);border-color:var(--color-primary-600)}.stat-card-clickable:active{transform:scale(1.01)}.stat-icon{font-size:var(--text-5xl);line-height:1;filter:drop-shadow(0 2px 4px var(--color-black-alpha-10))}.stat-content{flex:1}.stat-label{font-size:var(--text-sm);color:var(--dm-text-tertiary);font-weight:600;margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:var(--text-2xl);font-weight:700;color:var(--dm-text-primary)}.savings-insight-card{background:var(--dm-surface);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-5);box-shadow:0 4px 12px var(--color-black-alpha-8);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.savings-insight-card:hover{box-shadow:0 6px 20px var(--color-success-tint-strong)}.savings-insight-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.savings-insight-icon{font-size:32px}.savings-insight-title{font-size:var(--text-lg);font-weight:700;color:var(--dm-text-secondary)}.savings-insight-content{color:var(--dm-text-secondary);line-height:1.6;font-size:var(--text-sm)}.savings-insight-value{font-size:var(--text-2xl);font-weight:700;margin:var(--space-3) 0}.savings-insight-value.positive{color:var(--dm-brand-text)}.savings-insight-value.negative{color:var(--color-error-500)}@media(max-width:768px){.stat-card{padding:var(--space-5)}.stat-icon{font-size:40px}.stat-value{font-size:var(--text-xl)}}.expenses-stats-box .stat-value,.expenses-stats-box div[id*=spending],.expenses-stats-box div[id*=daily],.expenses-stats-box div[id*=projected],.expenses-stats-box div[id*=max],#avg-daily-spending,#projected-monthly-spending,#max-spending-day,#days-remaining,#monthly-budget{color:var(--color-primary-900)!important;-webkit-text-fill-color:var(--color-primary-900)!important}.budget-overview-card .stat-value,.budget-stat .stat-value,.budget-macro-header strong,.budget-macro-header .budget-stats,.budget-macro-header .budget-stats span{color:var(--color-white)!important;-webkit-text-fill-color:var(--color-white)!important}#risparmi-section .stat-label{color:var(--dm-text-tertiary)!important;-webkit-text-fill-color:var(--dm-text-tertiary)!important}#risparmi-section .stat-value{color:var(--dm-brand-text)!important;-webkit-text-fill-color:var(--dm-brand-text)!important;background:none!important}@media(max-width:768px){.bottom-tab-nav{margin-top:30px;padding:var(--space-4)}.bottom-tab-nav nav{gap:var(--space-2);flex-wrap:wrap}.bottom-nav-btn{padding:10px 12px;font-size:var(--text-xs);flex:1 1 calc(50% - 8px);min-width:calc(50% - 8px);max-width:calc(50% - 8px)}}@media(max-width:640px){.bottom-nav-btn{padding:8px 10px;font-size:var(--text-xs);flex:1 1 calc(50% - 8px);min-width:calc(50% - 8px);max-width:calc(50% - 8px)}}.section-header-with-search{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-7);gap:var(--space-4)}.section-header-with-search h2{margin-bottom:0;flex:1}.search-btn{background:var(--dm-brand-solid);border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);box-shadow:var(--shadow-hover);position:relative;overflow:hidden;flex-shrink:0}.search-btn:before{content:"";position:absolute;inset:0;background:var(--dm-brand-solid);opacity:0;transition:opacity .3s ease;border-radius:50%}.search-btn:hover{box-shadow:var(--shadow-hover-lg)}.search-btn:hover:before{opacity:1}.search-btn svg{color:#fff;position:relative;z-index:1;transition:transform .3s ease}.search-btn:hover svg{transform:scale(1.1) rotate(15deg)}.header-buttons-group{display:flex;align-items:center;gap:var(--space-3)}.excel-import-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--dm-border);border-radius:10px;background:var(--dm-surface);color:var(--color-primary-600);cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease}.excel-import-btn:hover{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)}.excel-import-btn:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}.excel-import-btn:active{transform:scale(.94)}.toggle-form-btn{background:var(--dm-brand-solid);border:none;border-radius:var(--radius-2xl);padding:var(--space-2-5) var(--space-5);display:flex;align-items:center;justify-content:center;gap:var(--space-2);cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);box-shadow:0 4px 12px var(--color-success-tint-strong);color:var(--dm-text-on-brand);font-weight:600;font-size:var(--text-sm)}.toggle-form-btn .btn-icon{font-size:var(--text-base);transition:transform .3s ease}.toggle-form-btn:hover{box-shadow:0 8px 20px var(--color-success-tint-stronger)}.toggle-form-btn.expanded{background:var(--color-error-600);box-shadow:0 4px 12px var(--color-error-tint-strong)}.toggle-form-btn.expanded:hover{box-shadow:0 8px 20px var(--color-error-tint-strong)}.toggle-form-btn.expanded .btn-icon{transform:rotate(45deg)}.collapsible-form-container{max-height:2000px;overflow:hidden;transition:max-height var(--duration-enter) var(--ease-out-expo),opacity var(--duration-enter) var(--ease-out-expo),padding var(--duration-enter) var(--ease-out-expo);opacity:1;padding-top:0}.collapsible-form-container.collapsed{max-height:0;opacity:0;padding-top:0;margin-bottom:0;transition:max-height var(--duration-exit) var(--ease-in-quart),opacity var(--duration-exit) var(--ease-in-quart),padding var(--duration-exit) var(--ease-in-quart)}.export-csv-centered-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-5);background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 12px var(--color-success-tint-strong)}.export-csv-centered-btn:hover{box-shadow:0 8px 20px var(--color-success-tint-stronger);background:var(--dm-brand-solid)}.export-csv-centered-btn:active{transform:translateY(0)}.search-modal{position:fixed;inset:0;width:100vw;height:100vh;background:var(--dm-modal-backdrop);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-5);animation:fadeIn .3s ease;margin:0;box-sizing:border-box}.search-modal-content{background:var(--dm-surface);border-radius:var(--radius-2xl);width:100%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px var(--color-black-alpha-30);animation:slideUp .3s ease;overflow:hidden}.search-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6) 28px;border-bottom:2px solid var(--dm-border);background:var(--dm-surface-hover)}.search-modal-header h3{margin:0;font-size:var(--text-xl);font-weight:700;color:var(--dm-text-primary)}.search-modal-close{background:transparent;border:none;font-size:32px;color:var(--dm-text-tertiary);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-default);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;line-height:1;padding:0}.search-modal-close:hover{background:var(--dm-surface-hover);color:var(--color-error);transform:scale(1.1)}.search-modal-body{padding:var(--space-6) 28px;overflow-y:auto;flex:1}.search-input-container{position:relative;margin-bottom:var(--space-6)}.search-input{width:100%;padding:var(--space-4) 48px 16px 20px;border:2px solid var(--dm-border-control);border-radius:var(--radius-lg);font-size:var(--text-base);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;background:var(--dm-surface);box-shadow:0 2px 8px var(--color-black-alpha-5)}.search-input:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-200),var(--shadow-hover);background:var(--dm-surface)}.clear-search-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:var(--dm-border);border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:var(--text-xl);color:var(--dm-text-secondary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;line-height:1;padding:0}.clear-search-btn:hover{background:var(--dm-border-strong);transform:translateY(-50%) scale(1.1)}.search-results{min-height:200px}.search-placeholder{text-align:center;color:var(--dm-text-tertiary);font-size:var(--text-sm);padding:40px 20px;font-style:italic}.search-result-item{background:var(--dm-surface);padding:var(--space-5);border-radius:var(--radius-lg);margin-bottom:var(--space-3);box-shadow:0 2px 8px var(--color-black-alpha-5);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);cursor:pointer}.search-result-item:hover{box-shadow:var(--shadow-hover)}.search-result-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-3);gap:var(--space-3)}.search-result-amount{font-weight:700;font-size:var(--text-xl);color:var(--color-error);text-shadow:0 2px 4px var(--color-error-tint)}.search-result-amount.income{color:var(--color-success);text-shadow:0 2px 4px var(--color-success-tint)}.search-result-date{font-size:var(--text-sm);color:var(--dm-text-tertiary);font-weight:600}.search-result-description{font-size:var(--text-sm);color:var(--dm-text-secondary);margin-bottom:var(--space-2-5);font-weight:500}.search-result-description mark{background:var(--color-success-tint-stronger);color:var(--color-primary-600);padding:2px 6px;border-radius:var(--radius-sm);font-weight:700}.search-result-meta{display:flex;gap:var(--space-2-5);flex-wrap:wrap;align-items:center}.search-result-category{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:var(--space-1-5) var(--space-3-5);border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:600;box-shadow:var(--shadow-md)}.search-result-payment{background:var(--dm-border-subtle);color:var(--dm-text-secondary);padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-xs);font-weight:600}.search-no-results{text-align:center;padding:40px 20px}.search-no-results-icon{font-size:var(--text-5xl);margin-bottom:var(--space-4)}.search-no-results-text{color:var(--dm-text-tertiary);font-size:var(--text-base);font-weight:500}.search-results-count{color:var(--dm-text-tertiary);font-size:var(--text-sm);margin-bottom:var(--space-4);font-weight:600}.financing-progress-bar{width:100%;height:8px;background:var(--dm-border);border-radius:var(--radius-sm);overflow:hidden;margin-top:var(--space-3)}.financing-progress-fill{height:100%;background:var(--dm-brand-solid);transition:width .3s ease}.toggle-filters-btn{width:100%;background:var(--color-gray-50);border:2px solid var(--dm-border);border-radius:var(--radius-md);padding:var(--space-3) 16px;display:flex;align-items:center;justify-content:center;gap:var(--space-2);cursor:pointer;font-size:var(--text-sm);font-weight:600;color:var(--dm-text-secondary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;margin-bottom:var(--space-4);position:relative}.toggle-filters-btn:hover{background:var(--dm-border-subtle);border-color:var(--dm-border-strong);box-shadow:0 4px 12px var(--color-black-alpha-8)}.toggle-filters-btn svg{transition:transform .3s ease}.toggle-filters-btn.active svg{transform:rotate(180deg)}.active-filters-badge{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border-radius:var(--radius-md);padding:2px 8px;font-size:var(--text-xs);font-weight:700;min-width:20px;text-align:center}.search-filters{background:var(--dm-surface-hover);border:2px solid var(--dm-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-5);animation:slideDown .3s ease}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-4)}.filter-group{display:flex;flex-direction:column;gap:var(--space-2)}.filter-group-months,.filter-group-category{grid-column:span 2}.filter-group label{font-size:var(--text-xs);font-weight:600;color:var(--dm-text-secondary)}.months-selector-container{position:relative}.select-months-btn{width:100%;padding:10px 12px;border:2px solid var(--dm-border);border-radius:var(--radius-md);font-size:var(--text-sm);background:var(--dm-surface);color:var(--dm-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.select-months-btn:hover{border-color:var(--dm-border-strong)}.select-months-btn:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}.select-months-btn svg{transition:transform .3s ease}.select-months-btn.active svg{transform:rotate(180deg)}.months-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--dm-surface);border:2px solid var(--dm-border);border-radius:var(--radius-md);box-shadow:0 8px 24px var(--color-black-alpha-15);z-index:var(--z-tooltip);max-height:300px;overflow:hidden;display:flex;flex-direction:column}.months-dropdown-header{display:flex;gap:var(--space-2);padding:var(--space-3);border-bottom:2px solid var(--dm-border);background:var(--dm-surface-hover)}.month-action-btn{flex:1;padding:var(--space-1-5) var(--space-3);border:1px solid var(--dm-border-strong);border-radius:6px;background:var(--dm-surface);color:var(--dm-text-secondary);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.month-action-btn:hover{background:var(--dm-border-subtle);border-color:var(--dm-text-muted)}.months-list{overflow-y:auto;max-height:240px}.month-checkbox-item{display:flex;align-items:center;padding:10px 12px;cursor:pointer;transition:background .2s ease}.month-checkbox-item:hover{background:var(--dm-surface-hover)}.month-checkbox-item input[type=checkbox]{margin-right:var(--space-2-5);width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary-600)}.month-checkbox-item label{flex:1;cursor:pointer;font-size:var(--text-sm);color:var(--dm-text-secondary);font-weight:500}.category-search-container{position:relative}.category-search-input{width:100%;padding:10px 12px;border:2px solid var(--dm-border-control);border-radius:var(--radius-md);font-size:var(--text-sm);background:var(--dm-surface);color:var(--dm-text-secondary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.category-search-input:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}.categories-list{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--dm-surface);border:2px solid var(--dm-border);border-radius:var(--radius-md);box-shadow:0 8px 24px var(--color-black-alpha-15);z-index:var(--z-popover);max-height:300px;overflow-y:auto}.category-item{padding:10px 12px;cursor:pointer;transition:background .2s ease;font-size:var(--text-sm);color:var(--dm-text-secondary)}.category-item:hover{background:var(--dm-surface-hover)}.category-item.selected{background:var(--color-success-tint);color:var(--color-primary-600);font-weight:600}.selected-categories{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.selected-category-tag{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:600;display:flex;align-items:center;gap:var(--space-1-5);box-shadow:var(--shadow-md)}.selected-category-tag button{background:var(--color-white-alpha-30);border:none;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;font-size:var(--text-sm);line-height:1;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.selected-category-tag button:hover{background:var(--color-white-alpha-50);transform:scale(1.1)}.filter-select{width:100%;padding:10px 12px;border:2px solid var(--dm-border-control);border-radius:var(--radius-md);font-size:var(--text-sm);background:var(--dm-surface);color:var(--dm-text-secondary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.filter-select:hover:not(:disabled){border-color:var(--dm-border-strong)}.filter-select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}.filter-select:disabled{background:var(--dm-surface-hover);color:var(--dm-text-muted);cursor:not-allowed}.filter-actions{display:flex;gap:var(--space-2-5);justify-content:flex-end;padding-top:var(--space-3);border-top:2px solid var(--dm-border)}.filter-action-btn{padding:var(--space-2-5) var(--space-5);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;display:flex;align-items:center;gap:var(--space-1-5);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.filter-action-btn.clear-btn{background:var(--dm-surface-hover);color:var(--dm-text-tertiary);border:2px solid var(--dm-border)}.filter-action-btn.clear-btn:hover{background:var(--dm-border-subtle);border-color:var(--dm-border-strong);color:var(--dm-text-secondary)}.filter-action-btn.apply-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);box-shadow:var(--shadow-hover)}.filter-action-btn.apply-btn:hover{box-shadow:var(--shadow-hover)}.filter-action-btn.apply-btn:active{transform:translateY(0)}@media(max-width:768px){.section-header-with-search{flex-wrap:wrap}.section-header-with-search h2{flex:1 1 100%;margin-bottom:var(--space-3)}.header-buttons-group{width:100%;justify-content:flex-end}.toggle-form-btn{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.search-btn{width:44px;height:44px}.search-modal{padding:var(--space-2-5)}.search-modal-content{max-height:90vh}.search-modal-header,.search-modal-body{padding:var(--space-5)}.search-result-header{flex-direction:column;gap:var(--space-2)}.search-result-amount{font-size:var(--text-xl)}.filters-grid{grid-template-columns:1fr}.filter-group-months,.filter-group-category{grid-column:span 1}.filter-actions{flex-direction:column}.filter-action-btn{width:100%;justify-content:center}.months-dropdown,.categories-list{max-height:250px}}.form-hint{display:block;margin-top:var(--space-1);font-size:var(--text-xs);color:var(--dm-text-tertiary);font-style:italic}#linked-financing,#linked-financing-income{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23059669' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}#linked-financing option:first-child,#linked-financing-income option:first-child{color:var(--dm-text-muted)}.deductible-expenses-container{background:var(--dm-surface);border-radius:var(--radius-xl);padding:28px;margin:28px 0;box-shadow:0 8px 24px var(--color-black-alpha-8),0 2px 8px var(--color-black-alpha-5);border:1px solid var(--dm-border);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;position:relative;overflow:hidden}.deductible-expenses-container:before{display:none}.deductible-expenses-container:hover{box-shadow:0 12px 32px var(--color-success-tint),0 4px 12px var(--color-black-alpha-8)}.deductible-expenses-container h3{margin-bottom:var(--space-6);color:var(--dm-brand-text);font-size:var(--text-xl);font-weight:700;display:flex;align-items:center;gap:var(--space-2-5)}.deductible-header-with-button{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);gap:var(--space-4)}.deductible-header-with-button h3{margin-bottom:0}.add-future-deductible-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-2-5) var(--space-5);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 12px var(--color-success-tint-strong);display:flex;align-items:center;gap:var(--space-1-5);white-space:nowrap}.add-future-deductible-btn .btn-icon{font-size:var(--text-base)}.add-future-deductible-btn:hover{box-shadow:0 6px 20px var(--color-success-tint-stronger);background:var(--dm-brand-solid)}.add-future-deductible-btn:active{transform:translateY(0)}.deductible-years-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-5)}.deductible-year-box{background:var(--dm-brand-solid);border-radius:var(--radius-lg);padding:var(--space-6);cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard);box-shadow:0 4px 16px var(--color-success-tint-stronger);position:relative;overflow:hidden}.deductible-year-box:before{content:"";position:absolute;inset:0;background:var(--dm-brand-solid-hover);opacity:0;transition:opacity var(--duration-200) var(--ease-standard)}.deductible-year-box:hover{box-shadow:0 8px 24px var(--color-success-tint-stronger)}.deductible-year-box:hover:before{opacity:1}.deductible-year-box>*{position:relative;z-index:1}.deductible-year-label{color:var(--dm-text-on-brand);font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.5px}.deductible-year-value{color:var(--dm-text-on-brand);font-size:32px;font-weight:800;margin-bottom:var(--space-2)}.deductible-year-hint{color:var(--dm-text-on-brand);font-size:var(--text-xs);font-weight:500;font-style:italic}.deductible-modal{display:none;position:fixed;inset:0;width:100vw;height:100vh;background:var(--dm-modal-backdrop);z-index:var(--z-modal);animation:fadeIn .3s ease}.deductible-modal.active{display:flex;align-items:center;justify-content:center;padding:var(--space-5)}.deductible-modal-content{background:var(--dm-surface);border-radius:var(--radius-2xl);padding:var(--space-8);max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px var(--color-black-alpha-30);animation:slideUp .3s ease;position:relative}.deductible-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:2px solid var(--dm-border)}.deductible-modal-header h3{color:var(--dm-text-primary);font-size:var(--text-2xl);font-weight:700;margin:0}.deductible-modal-close{background:var(--dm-surface-hover);border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;font-size:var(--text-xl);color:var(--dm-text-secondary)}.deductible-modal-close:hover{background:var(--dm-border);transform:rotate(90deg)}.deductible-add-section{background:var(--color-success-50);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);border:2px solid var(--color-primary-400)}.deductible-add-section h4{color:var(--dm-brand-text);font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-4)}.deductible-form{display:grid;gap:var(--space-4)}.deductible-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.deductible-form .form-group{margin-bottom:0}.deductible-add-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base);font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 16px var(--color-success-tint-strong);width:100%}.deductible-add-btn:hover{box-shadow:0 8px 24px var(--color-success-tint-stronger);background:var(--dm-brand-solid)}.deductible-list-section{margin-top:var(--space-6)}.deductible-list-section h4{color:var(--dm-text-secondary);font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-4)}.deductible-badge{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:3px 10px;border-radius:var(--radius-md);font-size:11px;font-weight:600;display:inline-block;margin-left:var(--space-2);margin-top:var(--space-1);box-shadow:0 2px 6px var(--color-success-tint-stronger);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.deductible-badge:hover{transform:scale(1.05);box-shadow:0 3px 10px var(--color-success-tint-stronger)}.deductible-total-summary{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:var(--space-5);border-radius:var(--radius-lg);margin-top:var(--space-6);text-align:center;box-shadow:0 4px 16px var(--color-success-tint-stronger)}.deductible-total-summary h4{font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-2);opacity:.9}.deductible-total-summary .total-value{font-size:var(--text-4xl);font-weight:800;text-shadow:0 2px 8px var(--color-black-alpha-20)}@media(max-width:768px){.deductible-years-container,.deductible-form-row{grid-template-columns:1fr}.deductible-modal-content{padding:var(--space-6) 16px}.deductible-header-with-button{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.add-future-deductible-btn{width:100%;justify-content:center}}.custom-popup-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:var(--dm-modal-backdrop);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease;padding:var(--space-5)}.custom-popup-overlay.active{opacity:1}.custom-popup-container{background:var(--dm-surface);border-radius:var(--radius-2xl);max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px var(--color-black-alpha-30);position:relative;animation:slideUp .3s ease}.custom-popup-close{position:absolute;top:20px;right:20px;background:var(--dm-surface-hover);border:none;width:40px;height:40px;border-radius:50%;font-size:var(--text-2xl);color:var(--dm-text-secondary);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;align-items:center;justify-content:center;z-index:10}.custom-popup-close:hover{background:var(--dm-border);transform:rotate(90deg)}.custom-popup-content{padding:40px}.deductible-popup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);gap:var(--space-5);flex-wrap:wrap}.deductible-popup-header h3{color:var(--dm-brand-text);font-size:var(--text-2xl);font-weight:700;margin:0}.add-extra-deductible-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 12px var(--color-success-tint-strong)}.add-extra-deductible-btn:hover{box-shadow:0 6px 20px var(--color-success-tint-stronger)}.deductible-popup-total{background:var(--color-success-50);padding:var(--space-5);border-radius:var(--radius-lg);margin-bottom:var(--space-6);text-align:center;border:2px solid var(--color-primary-400)}.deductible-popup-total strong{color:var(--color-primary-500);font-size:var(--text-lg);display:block;margin-bottom:var(--space-2)}.deductible-popup-list{margin-top:var(--space-6)}.deductible-popup-list h4{color:var(--dm-text-secondary);font-size:var(--text-xl);font-weight:600;margin-bottom:var(--space-4)}.deductible-item{background:var(--dm-surface);padding:var(--space-5);border-radius:var(--radius-lg);margin-bottom:var(--space-3);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);border:2px solid var(--dm-border);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.deductible-item:hover{box-shadow:0 6px 20px var(--color-success-tint-strong);border-color:var(--dm-brand-text)}.deductible-item.extra-deductible{background:var(--color-warning-50)}.deductible-item-info{flex:1}.deductible-item-description{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.deductible-item-description strong{color:var(--dm-text-secondary);font-size:var(--text-base)}.extra-badge{background:var(--color-secondary-500);color:#fff;padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:600;text-transform:uppercase}.deductible-item-date{color:var(--dm-text-tertiary);font-size:var(--text-sm);margin-bottom:var(--space-1)}.deductible-item-category{color:var(--color-primary-600);font-size:var(--text-xs);font-weight:500}.deductible-item-actions{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.deductible-item-amount{font-weight:700;color:var(--dm-brand-text);font-size:var(--text-xl)}.delete-btn-small{background:var(--color-error-600);color:#fff;border:none;padding:6px 16px;border-radius:var(--radius-default);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.delete-btn-small:hover{background:var(--color-error-700);box-shadow:0 4px 12px var(--color-error-tint-strong)}.edit-btn-small{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:6px 16px;border-radius:var(--radius-default);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.edit-btn-small:hover{background:var(--dm-brand-solid);box-shadow:var(--shadow-hover)}.convert-btn-small{background:var(--color-secondary-600);color:#fff;border:none;padding:6px 16px;border-radius:var(--radius-default);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.convert-btn-small:hover{background:var(--color-secondary-700);box-shadow:0 4px 12px var(--color-warning-tint)}.unmark-btn-small{background:var(--color-warning-600);color:#fff;border:none;padding:6px 16px;border-radius:var(--radius-default);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.unmark-btn-small:hover{background:var(--color-warning-700);box-shadow:0 4px 12px var(--color-warning-tint)}.add-deductible-form{padding:var(--space-5) 0}.add-deductible-form h3{color:var(--dm-text-primary);font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--space-6)}.add-deductible-form .form-group{margin-bottom:var(--space-5)}.add-deductible-form label{display:block;color:var(--dm-text-secondary);font-weight:600;margin-bottom:var(--space-2);font-size:var(--text-sm)}.add-deductible-form input,.add-deductible-form select{width:100%;padding:var(--space-3) 16px;border:2px solid var(--dm-border-control);border-radius:var(--radius-md);font-size:var(--text-base);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.add-deductible-form input:focus,.add-deductible-form select:focus{border-color:var(--dm-brand-text);box-shadow:0 0 0 3px var(--color-success-tint)}.form-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-6)}.cancel-btn{background:var(--dm-surface-hover);color:var(--dm-text-secondary);border:2px solid var(--dm-border);padding:var(--space-3) 24px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.cancel-btn:hover{background:var(--dm-border)}.submit-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 12px var(--color-success-tint-strong)}.submit-btn:hover{box-shadow:0 6px 20px var(--color-success-tint-stronger)}@media(max-width:768px){.custom-popup-content{padding:var(--space-6) 20px}.deductible-popup-header,.deductible-item{flex-direction:column;align-items:flex-start}.deductible-item-actions{width:100%;flex-direction:row;justify-content:space-between;align-items:center}.form-actions{flex-direction:column}.cancel-btn,.submit-btn{width:100%}}.other-years-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;margin-top:var(--space-4);box-shadow:0 4px 12px var(--color-success-tint-strong)}.other-years-btn:hover{box-shadow:0 6px 20px var(--color-success-tint-stronger)}.other-years-btn .btn-icon{font-size:var(--text-lg)}.other-years-popup h3{color:var(--dm-brand-text);font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--space-6);text-align:center}.other-years-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4);max-height:60vh;overflow-y:auto;padding:4px}.other-year-box{background:var(--dm-brand-solid);border-radius:var(--radius-lg);padding:var(--space-5);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 12px var(--color-success-tint-stronger);position:relative;overflow:hidden}.other-year-box:hover{box-shadow:0 8px 24px var(--color-success-tint-stronger)}.other-year-box>*{position:relative;z-index:1}.other-year-box.future-year{background:var(--color-purple-700);box-shadow:0 4px 12px var(--color-purple-tint)}.other-year-box.future-year:hover{box-shadow:0 8px 24px var(--color-purple-tint-strong)}.other-year-label{color:var(--color-white-alpha-90);font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.5px}.other-year-value{color:#fff;font-size:var(--text-2xl);font-weight:800;margin-bottom:var(--space-2)}.other-year-hint{color:var(--color-white-alpha-80);font-size:var(--text-xs);font-style:italic}@media(max-width:768px){.other-years-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-3)}.other-year-value{font-size:var(--text-2xl)}}.savings-sections-filter,.categories-sections-filter,.budget-sections-filter{margin:var(--space-5) 0;display:flex;justify-content:center}.expenses-sections-filter,.income-sections-filter,.investments-sections-filter,.financings-sections-filter{margin:var(--space-5) 0;display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.expenses-sections-filter-btn{background:var(--color-success-tint-strong);color:var(--color-primary-700);border:2px solid var(--color-primary-600);padding:var(--space-3) 24px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;align-items:center;gap:var(--space-2-5);white-space:nowrap}.expenses-sections-filter-btn svg{width:20px;height:20px}.expenses-sections-filter-btn:hover{background:var(--color-primary-600);color:#fff;box-shadow:var(--shadow-hover)}[data-theme=dark] .expenses-sections-filter-btn{color:var(--color-primary-400);border-color:var(--color-primary-400)}[data-theme=dark] .expenses-sections-filter-btn:hover{color:#fff}.budget-section-hidden{display:none!important}.budget-section-wrapper,.budget-form-container{margin-bottom:var(--space-5)}.expenses-sections-modal-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:var(--dm-modal-backdrop);display:none;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease}.expenses-sections-modal-overlay.show{display:flex;opacity:1}.expenses-sections-modal{background:var(--dm-surface);border-radius:var(--radius-lg);box-shadow:0 20px 60px var(--color-black-alpha-40);max-width:500px;width:90%;max-height:80vh;overflow:hidden;transform:scale(.9);transition:transform .3s ease;display:flex;flex-direction:column}.expenses-sections-modal-overlay.show .expenses-sections-modal{transform:scale(1)}.expenses-sections-modal-header{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:var(--space-5) 25px;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.expenses-sections-modal-header h3{margin:0;font-size:var(--text-xl);font-weight:600;color:#fff}.expenses-sections-close-btn{background:var(--color-white-alpha-20);color:#fff;border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;flex-shrink:0}.expenses-sections-close-btn:hover{background:var(--color-white-alpha-30);transform:rotate(90deg)}.expenses-sections-close-btn svg{width:18px;height:18px}.expenses-sections-modal-body{padding:var(--space-5) 25px;overflow-y:auto;flex:1}.expenses-sections-drag-hint{margin:0 0 15px;padding:var(--space-2-5) var(--space-4);background:var(--color-success-tint);border-radius:var(--radius-default);font-size:var(--text-xs);color:var(--color-primary-600);text-align:center}.expenses-sections-options{display:flex;flex-direction:column;gap:var(--space-2)}.expenses-sections-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 15px;cursor:grab;border-radius:var(--radius-default);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;background:var(--dm-surface-hover);border:2px solid transparent;-webkit-user-select:none;user-select:none}.expenses-sections-option:hover{background:var(--dm-border);border-color:var(--color-primary-600)}.expenses-sections-option:active{cursor:grabbing}.expenses-sections-option.dragging{opacity:.5;background:var(--dm-border);border:2px dashed var(--color-primary-600)}.expenses-sections-option.drag-over{border-color:var(--color-primary-600);background:var(--color-success-tint)}.expenses-sections-drag-handle{display:flex;flex-direction:column;gap:2px;padding:4px;cursor:grab;opacity:.4;transition:opacity .2s ease}.expenses-sections-drag-handle:hover{opacity:.8}.expenses-sections-drag-handle span{display:block;width:18px;height:2px;background:var(--color-gray-500);border-radius:1px}.expenses-sections-option:active .expenses-sections-drag-handle{cursor:grabbing}.expenses-sections-option input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-primary-600);flex-shrink:0}.expenses-sections-option-icon{font-size:var(--text-2xl);flex-shrink:0}.expenses-sections-option-name{flex:1;font-size:var(--text-sm);color:var(--dm-text-secondary);font-weight:500}.expenses-sections-modal-footer{padding:var(--space-5) 25px;background:var(--dm-surface-hover);border-top:1px solid var(--dm-border);display:flex;gap:var(--space-3);justify-content:space-between;flex-shrink:0}.expenses-sections-modal-btn{flex:1;padding:var(--space-3) 24px;border-radius:var(--radius-default);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:none}.expenses-sections-select-all-btn{background:var(--dm-surface);color:var(--color-primary-600);border:2px solid var(--color-primary-600)}.expenses-sections-select-all-btn:hover{background:var(--color-primary-600);color:#fff;box-shadow:var(--shadow-hover)}.expenses-sections-apply-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)}.expenses-sections-apply-btn:hover{box-shadow:var(--shadow-hover)}.expenses-section-hidden,.income-section-hidden,.savings-section-hidden,.categories-section-hidden,.investments-section-hidden{display:none!important}@media(max-width:768px){.expenses-sections-filter-btn{width:100%;justify-content:center}.expenses-sections-modal{max-width:95%;max-height:85vh}.expenses-sections-modal-header{padding:var(--space-5) var(--space-5)}.expenses-sections-modal-header h3{font-size:var(--text-lg)}.expenses-sections-modal-body{padding:var(--space-4) var(--space-5)}.expenses-sections-modal-footer{padding:var(--space-4) var(--space-5);flex-direction:column;gap:var(--space-2-5)}.expenses-sections-modal-btn{width:100%}}.category-filters{background:var(--dm-surface);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin:15px 0;border:1px solid var(--dm-border);display:flex;gap:var(--space-5);flex-wrap:wrap;align-items:flex-end}.category-filter-group{flex:1;min-width:180px}.category-filter-group label{display:block;font-size:var(--text-xs);font-weight:600;color:var(--dm-text-secondary);margin-bottom:var(--space-1-5)}.category-filter-select{width:100%;padding:10px 12px;border:2px solid var(--dm-border-control);border-radius:var(--radius-default);font-size:var(--text-sm);background:var(--dm-surface);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;color:var(--dm-text-secondary)}.category-filter-select:hover{border-color:var(--color-primary-600)}.category-filter-select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}@media(max-width:768px){.category-filters{flex-direction:column;gap:var(--space-4)}.category-filter-group{min-width:100%}}.currency-breakdown-card{background:var(--dm-surface);border-radius:var(--radius-xl);padding:var(--space-6);margin:var(--space-6) 0;box-shadow:0 4px 16px var(--color-black-alpha-8),0 1px 4px var(--color-black-alpha-5);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.currency-breakdown-card:hover{box-shadow:0 8px 24px var(--color-black-alpha-15),0 2px 8px var(--color-black-alpha-5)}.currency-breakdown-header{margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--dm-border)}.currency-breakdown-header h3{font-size:1.1rem;font-weight:600;color:var(--dm-text-primary);margin:0}.currency-breakdown-body{display:flex;flex-direction:column;gap:var(--space-4)}.currency-breakdown-row{display:grid;grid-template-columns:1fr auto 140px;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:#f7fafccc;border-radius:var(--radius-lg, 12px);transition:background .2s ease}.currency-breakdown-row:hover{background:#edf2f7e6}.currency-breakdown-info{display:flex;flex-direction:column;gap:var(--space-1)}.currency-breakdown-currency{display:flex;align-items:center;gap:var(--space-2)}.currency-breakdown-code{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:6px;font-size:.75rem;font-weight:700;color:var(--color-white);letter-spacing:.5px;min-width:40px}.currency-breakdown-name{font-size:.85rem;color:var(--dm-text-secondary);font-weight:500}.currency-breakdown-count{font-size:.75rem;color:var(--dm-text-muted);background:var(--color-black-alpha-5);padding:1px 6px;border-radius:4px}.currency-breakdown-rate{font-size:.75rem;color:var(--dm-text-muted);font-style:italic;padding-left:var(--space-12)}.currency-breakdown-amounts{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.currency-breakdown-original{font-size:1rem;font-weight:600;color:var(--dm-text-primary)}.currency-breakdown-converted{font-size:.8rem;color:var(--dm-text-secondary);opacity:.8}.currency-breakdown-bar-container{display:flex;align-items:center;gap:var(--space-2);min-width:140px}.currency-breakdown-bar{height:8px;border-radius:4px;transition:width .5s ease;min-width:4px;flex-shrink:0;max-width:100px}.currency-breakdown-percentage{font-size:.8rem;font-weight:600;color:var(--dm-text-secondary);min-width:40px;text-align:right}.currency-breakdown-total{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3-5) var(--space-4);margin-top:var(--space-1);background:var(--color-info-tint);border-radius:var(--radius-lg, 12px);border:1px solid var(--color-indigo-tint-strong)}.currency-breakdown-total-label{font-size:.9rem;font-weight:600;color:var(--dm-text-primary)}.currency-breakdown-total-amount{font-size:1.15rem;font-weight:700;color:var(--color-indigo-400)}.currency-breakdown-empty{text-align:center;padding:32px 16px;color:var(--dm-text-muted);font-size:.9rem}[data-theme=dark] .currency-breakdown-card{background:#1e1e28f2}[data-theme=dark] .currency-breakdown-row{background:#282837cc}[data-theme=dark] .currency-breakdown-row:hover{background:#323241e6}[data-theme=dark] .currency-breakdown-total{background:var(--color-info-tint)}@media(max-width:768px){.currency-breakdown-card{padding:var(--space-4);margin:var(--space-4) 0}.currency-breakdown-row{grid-template-columns:1fr;gap:var(--space-2-5);padding:var(--space-3)}.currency-breakdown-amounts{align-items:flex-start;flex-direction:row;gap:var(--space-2)}.currency-breakdown-bar-container{min-width:unset;width:100%}.currency-breakdown-bar{max-width:none;flex:1}.currency-breakdown-rate{padding-left:0}.currency-breakdown-total{flex-direction:column;gap:var(--space-1);text-align:center}}.site-footer{background:var(--dm-surface);border:1px solid var(--dm-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-hover-lg),0 2px 8px var(--color-black-alpha-8);text-align:center;padding:var(--space-5) var(--space-6);margin-top:var(--space-6);color:var(--dm-text-tertiary);font-size:var(--text-sm);line-height:1.6}.site-footer p{margin:0}.site-footer a{color:inherit;text-decoration:underline;text-underline-offset:2px;transition:color .2s ease}.site-footer a:hover{color:var(--dm-text-secondary)}@media(max-width:768px){.site-footer{padding:var(--space-4) var(--space-5);margin-top:var(--space-5)}}.period-summary-card{background:var(--dm-card-bg);border-radius:var(--radius-md);box-shadow:0 4px 12px var(--color-black-alpha-8);padding:var(--space-5);margin:var(--space-4) 0;text-align:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.period-summary-card:hover{box-shadow:0 8px 20px var(--color-black-alpha-15)}.period-summary-header{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-2)}.period-summary-icon{font-size:1.2em}.period-summary-name{font-size:1em;font-weight:600;color:var(--dm-text-secondary);text-transform:capitalize}.period-summary-balance{font-size:1.5em;font-weight:700;margin-bottom:var(--space-4)}.period-summary-balance.positive{color:var(--color-success-600)}.period-summary-balance.negative{color:var(--color-error-600)}.period-summary-details{display:flex;justify-content:space-between;gap:var(--space-2)}.period-summary-item{flex:1;text-align:center;padding:8px 4px;border-radius:8px;background:var(--dm-surface-hover);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60px;transition:background .2s ease,transform .2s ease}.period-summary-item:hover{background:var(--dm-surface-elevated)}.period-summary-item:active{transform:translateY(0)}.period-summary-label{display:block;font-size:.75em;color:var(--dm-text-tertiary);margin-bottom:var(--space-1);font-weight:500}.period-summary-value{display:block;font-size:.9em;font-weight:600}.period-summary-value.period-income{color:var(--dm-success-text)}.period-summary-value.period-expense{color:var(--dm-error-text)}.period-summary-recurring{display:flex;flex-direction:column;gap:2px}@media(max-width:640px){.period-summary-details{flex-direction:column;gap:var(--space-1-5)}.period-summary-balance{font-size:1.3em}}.period-transactions-total{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);margin-top:var(--space-4);background:var(--color-gray-50);border-radius:var(--radius-default, 8px);border-top:2px solid var(--color-gray-200);font-size:.95em;color:var(--dm-text-secondary)}@media(hover:hover){.chart-container:hover,.income-expense-analysis:hover,.expenses-stats-box:hover,.stat-item:hover,.month-spending-box:hover,.stat-card:hover,.deductible-expenses-container:hover{transform:translateY(-3px)}.total-box:hover{transform:translateY(-4px)}.total-box.clickable-box:hover,.stat-card-clickable:hover{transform:translateY(-4px) scale(1.01)}.month-selection-item:hover,.year-selection-item:hover,.deductible-year-box:hover,.other-year-box:hover{transform:translateY(-3px) scale(1.01)}.trend-selector:hover,.toggle-filters-btn:hover,.filter-action-btn.clear-btn:hover{transform:translateY(-1px)}}@media(hover:none){.chart-container:active,.stat-card:active,.stat-item:active,.month-spending-box:active,.total-box:active,.deductible-year-box:active,.other-year-box:active,.month-selection-item:active,.year-selection-item:active{transform:scale(.98);transition:transform var(--duration-feedback, .12s) var(--ease-out, ease-out)}}[data-theme=dark] .balance-row.positive{background:#05966926;border-color:var(--color-primary-700)}[data-theme=dark] .positive-message{background:#05966926;color:var(--color-primary-300);border-color:var(--color-primary-700)}[data-theme=dark] .month-comparison-message{background:#05966926;color:var(--color-primary-200);border-color:var(--color-primary-700)}[data-theme=dark] .detail-badge.recurring{background:#05966933;color:var(--color-primary-300)}[data-theme=dark] .comparison-item.decrease,[data-theme=dark] .comparison-item.increase,[data-theme=dark] .comparison-item.new,[data-theme=dark] .comparison-item.stopped{background:var(--dm-surface-elevated)}[data-theme=dark] .budget-ok .budget-status{background:#05966933;color:var(--color-primary-300)}[data-theme=dark] .deductible-add-section,[data-theme=dark] .deductible-popup-total{background:#0596691f;border-color:var(--color-primary-600)}[data-theme=dark] .negative-message{background:#dc262626;color:var(--color-error-300);border-color:var(--color-error-700)}[data-theme=dark] .balance-row.negative{background:#dc262626;border-color:var(--color-error-700)}[data-theme=dark] .insight-card.warning,[data-theme=dark] .insight-card.danger,[data-theme=dark] .insight-card.info{background:var(--dm-surface-elevated)}[data-theme=dark] .heatmap-cell{opacity:.9}[data-theme=dark] .heatmap-cell.out-of-range{background:var(--dm-surface)}[data-theme=dark] .budget-overview-card{background:var(--dm-surface-elevated);border-color:var(--dm-border)}[data-theme=dark] .budget-warning .budget-status{background:#f59e0b33;color:var(--color-warning-300)}[data-theme=dark] .budget-danger .budget-status{background:#dc262633;color:var(--color-error-300)}[data-theme=dark] .auth-error-message{background:#dc262626;border-color:var(--color-error-700)}[data-theme=dark] .clickable-category:hover{background:var(--dm-surface-elevated)!important}[data-theme=dark] .income-category.clickable-category:hover{background:#05966926!important}[data-theme=dark] .expense-category.clickable-category:hover{background:#dc262626!important}@media(max-width:640px){header{padding:var(--space-3) var(--space-4)!important}.header-top{flex-wrap:wrap;gap:var(--space-2)}.header-controls{gap:var(--space-2)}h1{font-size:var(--text-lg)!important}.form-section{padding:var(--space-3) var(--space-4)}.nav-tabs{gap:var(--space-1)}.tab-btn{font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}section{padding:var(--space-4)!important}.budget-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.budget-projection-card{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)!important;border-radius:var(--radius-xl);padding:28px;margin:28px 0;display:flex;align-items:center;gap:var(--space-5);box-shadow:var(--shadow-xl),0 4px 12px var(--color-black-alpha-10);position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.budget-projection-card,.budget-projection-card *{color:var(--color-white)!important}.budget-projection-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%}.budget-projection-card:hover{box-shadow:var(--shadow-2xl),0 6px 16px var(--color-black-alpha-15)}.projection-icon{font-size:56px;position:relative;z-index:1;filter:drop-shadow(0 4px 8px var(--color-black-alpha-20))}.projection-content{position:relative;z-index:1}.projection-content h4{margin:0 0 12px;font-size:20px;font-weight:700;color:var(--color-white)!important;text-shadow:0 2px 6px var(--color-black-alpha-40)}.projection-message{margin:12px 0;font-size:16px;line-height:1.6;color:var(--color-white)!important;opacity:1;text-shadow:0 2px 4px var(--color-black-alpha-30)}.projection-details{display:flex;gap:24px;margin-top:12px;font-size:14px;color:var(--color-white)!important;opacity:1;font-weight:600;text-shadow:0 2px 4px var(--color-black-alpha-30)}.savings-rate-card{background:var(--dm-surface);border-radius:var(--radius-xl);padding:32px;margin:28px 0;box-shadow:0 8px 24px var(--color-black-alpha-8),0 2px 8px var(--color-black-alpha-5);border:1px solid var(--dm-border);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;position:relative;overflow:hidden}.savings-rate-card:before{display:none}.savings-rate-card:hover{box-shadow:0 12px 32px var(--color-success-tint),0 4px 12px var(--color-black-alpha-8)}.savings-rate-card.savings-rate-warning:hover{box-shadow:0 12px 32px var(--color-warning-tint),0 4px 12px var(--color-black-alpha-8)}.savings-rate-card.savings-rate-warning .savings-rate-header h3{color:var(--color-warning-600)}.savings-rate-card.savings-rate-warning .savings-rate-main{background:var(--color-warning-50)}.savings-rate-card.savings-rate-warning .savings-rate-percentage{color:var(--color-warning-600);text-shadow:0 4px 8px var(--color-warning-tint)}.savings-rate-card.savings-rate-negative:hover{box-shadow:0 12px 32px var(--color-error-tint),0 4px 12px var(--color-black-alpha-8)}.savings-rate-card.savings-rate-negative .savings-rate-header h3{color:var(--color-error-600)}.savings-rate-card.savings-rate-negative .savings-rate-main{background:var(--color-error-50)}.savings-rate-card.savings-rate-negative .savings-rate-percentage{color:var(--color-error-600);text-shadow:0 4px 8px var(--color-error-tint)}.savings-rate-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.savings-rate-header h3{margin:0;font-size:22px;font-weight:700;color:var(--dm-text-primary)}.savings-rate-icon{font-size:36px}.savings-rate-main{text-align:center;margin:36px 0;padding:var(--space-6);background:var(--color-success-50);border-radius:var(--radius-lg)}.savings-rate-percentage{font-size:48px;font-weight:800;line-height:1;margin-bottom:12px;color:var(--color-primary-600);text-shadow:0 4px 8px var(--color-success-tint)}.savings-rate-amount{font-size:20px;color:var(--dm-text-tertiary);font-weight:600}.savings-rate-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin:24px 0}.breakdown-item{display:flex;justify-content:space-between;padding:18px;background:var(--dm-surface-hover);border-radius:var(--radius-md);border:1px solid var(--dm-border);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.breakdown-item:hover{box-shadow:0 4px 12px var(--color-black-alpha-5)}.breakdown-label{color:var(--dm-text-tertiary);font-size:14px;font-weight:600}.breakdown-value{font-weight:700;font-size:18px}.breakdown-value.income{color:var(--dm-brand-text)}.breakdown-value.expense{color:var(--color-error-500)}.savings-rate-bar{height:16px;background:var(--color-gray-200);border-radius:var(--radius-default);overflow:hidden;margin-top:24px;box-shadow:inset 0 2px 4px var(--color-black-alpha-5)}.savings-bar-fill{height:100%;transition:width .8s var(--ease-standard);border-radius:var(--radius-default);background:var(--dm-brand-solid);box-shadow:0 2px 8px var(--color-success-tint-strong)}.savings-rate-empty{text-align:center;padding:48px;color:var(--dm-text-tertiary);font-size:16px}.impulse-spending-card{background:var(--color-warning-50);border-radius:var(--radius-xl);padding:32px;margin:28px 0;box-shadow:0 8px 24px var(--color-warning-tint),0 2px 8px var(--color-black-alpha-5);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;position:relative;overflow:hidden}.impulse-spending-card:before{content:"";position:absolute;top:0;right:0;width:200px;height:200px;background:radial-gradient(circle,var(--color-warning-tint) 0%,transparent 70%);border-radius:50%;transform:translate(50%,-50%)}.impulse-spending-card:hover{box-shadow:0 12px 32px var(--color-warning-tint),0 4px 12px var(--color-black-alpha-8)}.impulse-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:24px;position:relative;z-index:1}.impulse-icon{font-size:32px;filter:drop-shadow(0 2px 4px var(--color-warning-tint))}.impulse-header h4{margin:0;font-size:20px;font-weight:700;color:var(--color-warning-600)}.impulse-summary{margin:24px 0;position:relative;z-index:1}.impulse-message{font-size:16px;line-height:1.7;color:var(--dm-text-primary)!important;margin-bottom:12px;font-weight:600}.impulse-average{font-size:15px;color:var(--color-gray-700)!important;margin-top:12px;padding:var(--space-3);background:var(--color-warning-tint);border-radius:var(--radius-md);font-weight:600}.impulse-categories{margin-top:24px;position:relative;z-index:1}.impulse-categories h5{margin:0 0 16px;font-size:14px;color:var(--dm-text-tertiary);text-transform:uppercase;letter-spacing:1px;font-weight:700}.impulse-category{display:flex;justify-content:space-between;padding:var(--space-3);background:var(--color-warning-100);border-radius:var(--radius-default);margin-bottom:8px}.category-name{font-weight:600;color:var(--color-warning-900)!important}.category-amount{font-weight:700;color:var(--color-warning-800)!important}.spending-heatmap-card{background:var(--dm-surface);border-radius:var(--radius-xl);padding:32px;margin:28px 0;box-shadow:0 8px 24px var(--color-black-alpha-8),0 2px 8px var(--color-black-alpha-5);border:1px solid var(--dm-border);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;position:relative;overflow:hidden}.spending-heatmap-card:before{display:none}.spending-heatmap-card:hover{box-shadow:var(--shadow-primary-lg),var(--shadow-md)}.heatmap-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.heatmap-header h3{margin:0;font-size:22px;font-weight:700;color:var(--dm-text-primary);display:flex;align-items:center;gap:10px}.heatmap-header h3:before{content:"📅";font-size:28px;-webkit-text-fill-color:initial}.heatmap-month{font-size:16px;color:var(--dm-text-tertiary);font-weight:600;padding:8px 16px;background:var(--color-primary-50);border-radius:var(--radius-xl);border:1px solid var(--color-primary-200)}.heatmap-calendar{margin:24px 0;padding:var(--space-5);background:var(--dm-surface);border-radius:var(--radius-lg);box-shadow:inset 0 2px 8px var(--color-black-alpha-5)}.heatmap-days-header,.heatmap-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-2)}.heatmap-days-header{margin-bottom:4px}.heatmap-day-header{text-align:center;font-size:13px;font-weight:700;color:var(--dm-text-tertiary);padding:4px 0;text-transform:uppercase;letter-spacing:.5px}.heatmap-cell{aspect-ratio:1;border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);position:relative;font-size:14px;font-weight:700;border:2px solid transparent}.heatmap-cell:hover:not(.empty){transform:scale(1.08);box-shadow:var(--shadow-md);z-index:var(--z-10);border-color:var(--color-white-alpha-50)}.heatmap-cell.empty{background:transparent;cursor:default;opacity:.3}.heatmap-cell.intensity-0{background:var(--color-gray-50);color:var(--color-gray-700)!important;border-color:var(--dm-border)}.heatmap-cell.intensity-1{background:var(--color-primary-100);color:var(--color-primary-800)!important;box-shadow:var(--shadow-sm)}.heatmap-cell.intensity-2{background:var(--dm-brand-solid);color:var(--color-primary-900)!important;box-shadow:var(--shadow-md)}.heatmap-cell.intensity-3{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)!important;box-shadow:var(--shadow-hover);text-shadow:0 2px 4px var(--color-black-alpha-30)}.heatmap-cell.intensity-4{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)!important;box-shadow:0 4px 16px var(--color-success-tint-stronger);text-shadow:0 2px 4px var(--color-black-alpha-40)}@keyframes pulse-glow{0%,to{box-shadow:0 4px 16px var(--color-success-tint-stronger)}50%{box-shadow:0 6px 24px var(--color-success-tint-stronger)}}.heatmap-day-number{font-size:15px;font-weight:700}.heatmap-amount{font-size:10px;margin-top:3px;opacity:1;font-weight:700}.heatmap-legend{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:20px;font-size:12px;color:var(--dm-text-tertiary)}.legend-scale{display:flex;gap:3px}.legend-box{width:20px;height:20px;border-radius:var(--radius-sm)}.sankey-diagram-card{background:var(--dm-surface);border-radius:15px;padding:25px;margin:20px 0;box-shadow:0 10px 30px var(--color-black-alpha-10)}.sankey-header h3{margin:0 0 30px;font-size:20px;color:var(--dm-text-primary)}.sankey-content{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:var(--space-5);align-items:start}.sankey-column{min-width:0}.sankey-column-title{font-size:16px;font-weight:600;margin:0 0 10px;text-align:center}.sankey-column-title.income{color:var(--dm-brand-text)}.sankey-column-title.expense{color:var(--color-error-500)}.sankey-column-title.savings{color:var(--color-primary-600)}.sankey-total{font-size:20px;font-weight:700;text-align:center;margin-bottom:20px;padding:15px;border-radius:var(--radius-md)}.sankey-total.income{background:var(--color-primary-100);color:var(--color-primary-700)}.sankey-total.expense{background:var(--color-error-100);color:var(--color-error-800)}.sankey-total.savings{background:var(--color-indigo-100)}.sankey-item{margin-bottom:12px}.sankey-label{font-size:13px;color:var(--dm-text-secondary);margin-bottom:5px;font-weight:500;display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.sankey-label span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.sankey-label .sankey-percentage{font-size:11px;font-weight:600;color:var(--dm-text-tertiary);white-space:nowrap;flex-shrink:0}.sankey-bar{height:24px;background:var(--dm-border-subtle);border-radius:var(--radius-md);overflow:hidden;margin-bottom:5px}.sankey-bar-fill{height:100%;transition:width .5s ease}.sankey-bar-fill.income{background:var(--dm-brand-solid)}.sankey-bar-fill.expense{background:var(--color-error-600)}.sankey-value{font-size:12px;color:var(--dm-text-tertiary);text-align:right}.sankey-arrow{font-size:32px;color:var(--dm-border-strong);display:flex;align-items:center;justify-content:center;padding-top:60px}.sankey-percentage{text-align:center;font-size:18px;font-weight:600;margin-top:10px}.sankey-empty{text-align:center;padding:40px;color:var(--dm-text-tertiary)}.benchmark-card{background:var(--dm-surface);border-radius:15px;padding:25px;margin:20px 0;box-shadow:0 10px 30px var(--color-black-alpha-10)}.benchmark-header h3{margin:0 0 25px;font-size:20px;color:var(--dm-text-primary)}.benchmark-content{display:grid;gap:var(--space-5)}.benchmark-item{display:flex;gap:var(--space-5);padding:var(--space-5);border-radius:var(--radius-md);transition:transform .2s}.benchmark-item.best{background:var(--color-warning-100)}.benchmark-item.best *{color:var(--color-warning-900)!important}.benchmark-item.average{background:var(--color-primary-100)}.benchmark-item.average *{color:var(--color-primary-900)!important}.benchmark-item.current.positive{background:var(--color-primary-100)}.benchmark-item.current.positive *{color:var(--color-primary-700)!important}.benchmark-item.current.negative{background:var(--color-error-100)}.benchmark-item.current.negative *{color:var(--color-error-800)!important}.benchmark-icon{font-size:36px;flex-shrink:0}.benchmark-details h4{margin:0 0 10px;font-size:16px;color:inherit!important;font-weight:700}.benchmark-month{font-size:14px;color:inherit!important;margin:5px 0;opacity:.85}.benchmark-amount{font-size:20px;font-weight:700;color:inherit!important;margin:10px 0 5px}.benchmark-rate{font-size:14px;color:inherit!important;opacity:.85}.benchmark-stat{display:grid;grid-template-columns:1fr auto;gap:var(--space-5);align-items:center;margin:10px 0;font-size:15px;padding:4px 0}.stat-label{color:inherit!important;font-weight:600;text-transform:uppercase;font-size:13px;letter-spacing:.5px;opacity:.85}.stat-value{font-weight:800!important;color:inherit!important;font-size:16px!important;text-align:right;white-space:nowrap}.benchmark-item .stat-label{color:inherit!important;opacity:.85}.benchmark-item .stat-value{color:inherit!important;font-weight:800!important}.benchmark-item h4,.benchmark-details .stat-value,.benchmark-details .stat-label{color:inherit!important}.benchmark-comparison{font-size:16px;line-height:1.6;color:inherit!important;font-weight:500}.benchmark-empty{text-align:center;padding:40px;color:var(--dm-text-tertiary)}.accountant-export-card{background:var(--dm-surface);border-radius:15px;padding:25px;margin:20px 0;box-shadow:0 10px 30px var(--color-black-alpha-10)}.export-header h3{margin:0 0 20px;font-size:20px;color:var(--dm-text-primary)}.export-description{color:var(--dm-text-tertiary);margin-bottom:20px;line-height:1.6}.export-period{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0}.export-period label{display:flex;flex-direction:column;gap:var(--space-2)}.export-period label span{font-size:14px;font-weight:500;color:var(--dm-text-secondary)}.export-period input[type=month]{padding:10px;border:2px solid var(--dm-border-control);border-radius:var(--radius-default);font-size:14px;transition:border-color .2s}.export-period input[type=month]:focus{border-color:var(--color-primary-600)}.export-button{width:100%;padding:15px;background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.export-button:hover{box-shadow:var(--shadow-hover-lg)}.export-button:active{transform:translateY(0)}@media(min-width:768px){.spending-heatmap-card{padding:18px!important;margin:15px 0!important;border-radius:var(--radius-md)!important}.heatmap-header{margin-bottom:15px!important}.heatmap-header h3{font-size:17px!important}.heatmap-month{font-size:14px!important}.heatmap-calendar{margin:15px 0!important}.heatmap-days-header,.heatmap-grid{gap:4px!important}.heatmap-day-header{font-size:10px!important;padding:2px 0!important}.heatmap-cell{font-size:12px!important;border-radius:6px!important}.heatmap-day-number{font-size:12px!important}.heatmap-amount{font-size:9px!important}.heatmap-legend{gap:var(--space-2)!important;margin-top:15px!important;font-size:11px!important}.legend-scale{gap:2px!important}.legend-box{width:16px!important;height:16px!important;border-radius:3px!important}}@media(max-width:768px){.budget-projection-card{flex-direction:column;text-align:center}.projection-details{flex-direction:column;gap:10px}.savings-rate-breakdown{grid-template-columns:1fr}.sankey-content{grid-template-columns:1fr;gap:var(--space-3)}.sankey-arrow{display:none}.export-period{grid-template-columns:1fr}.heatmap-days-header,.heatmap-grid{gap:2px}.heatmap-cell{min-height:28px;font-size:10px}.heatmap-amount{display:none}}@media(max-width:640px){.heatmap-days-header,.heatmap-grid{gap:1px}.heatmap-cell{min-height:24px;font-size:9px;padding:2px}.heatmap-day-header{font-size:9px}}@media(hover:hover){.advanced-insight-card:hover{transform:translateY(-3px)}}@media(hover:none){.advanced-insight-card:active{transform:scale(.98)}}[data-theme=dark] .heatmap-month{background:#05966926;border-color:var(--color-primary-700);color:var(--color-primary-300)}[data-theme=dark] .heatmap-cell.intensity-1{background:#05966940;color:var(--color-primary-200)!important}[data-theme=dark] .sankey-total.income{background:#05966933;color:var(--color-primary-300)}[data-theme=dark] .benchmark-item.average{background:#05966926}[data-theme=dark] .benchmark-item.average *{color:var(--color-primary-200)!important}[data-theme=dark] .benchmark-item.current.positive{background:#05966926}[data-theme=dark] .benchmark-item.current.positive *{color:var(--color-primary-200)!important}[data-theme=dark] .benchmark-item.average{background:var(--dm-surface-elevated)}[data-theme=dark] .sankey-total.income{background:#05966926}[data-theme=dark] .heatmap-cell.intensity-1{background:#05966926!important}[data-theme=dark] .heatmap-cell.intensity-3{background:#05966980!important}[data-theme=dark] .advanced-insights-header-content,[data-theme=dark] .savings-rate-main-card{background:var(--dm-surface-elevated)}[data-theme=dark] .savings-rate-main{background:#0596691f}[data-theme=dark] .savings-rate-card.savings-rate-warning .savings-rate-main{background:#f59e0b1f}[data-theme=dark] .savings-rate-card.savings-rate-negative .savings-rate-main{background:#dc26261f}[data-theme=dark] .categories-filter-container,[data-theme=dark] .report-calendar-section{background:var(--dm-surface-elevated)}[data-theme=dark] .heatmap-cell.intensity-0{background:var(--dm-surface-hover)!important;color:var(--dm-text-tertiary)!important}[data-theme=dark] .heatmap-cell.intensity-2{background:var(--color-success-tint-stronger)!important;color:var(--dm-text-primary)!important}dialog.modal-dialog{border:none;background:transparent;padding:var(--space-5);max-width:500px;width:90%;max-height:85vh;overflow:visible;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0}dialog.modal-dialog::backdrop{background:var(--dm-modal-backdrop)}dialog.modal-dialog[open]{animation:dialogSlideIn var(--duration-enter) var(--ease-out-expo)}dialog.modal-dialog.closing{animation:dialogSlideOut var(--duration-exit) var(--ease-in-quart) forwards}.modal-container{background:var(--dm-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);overflow:hidden;border:1px solid var(--dm-border);position:relative}.modal-header{padding:var(--space-7) var(--space-8);background:var(--dm-surface-brand);display:flex;align-items:center;gap:var(--space-4)}.modal-icon{font-size:32px;flex-shrink:0;filter:drop-shadow(0 2px 8px var(--color-black-alpha-20))}.modal-icon.info,.modal-icon.success,.modal-icon.warning,.modal-icon.error{color:#fff}.modal-title{font-size:var(--text-xl);font-weight:var(--font-bold);color:#fff;margin:0;letter-spacing:var(--tracking-tight)}.modal-header h1,.modal-header h2,.modal-header h3,.modal-header h4,.modal-header h5,.modal-header h6,.modal-header p,.modal-header span,.modal-header div{color:#fff!important}.modal-body{padding:var(--space-8);color:var(--dm-text-secondary);font-size:var(--text-sm);line-height:1.7;max-height:60vh;overflow-y:auto;background:var(--dm-surface)}.modal-body{scrollbar-width:thin;scrollbar-color:var(--color-primary-500) var(--dm-border-subtle)}.modal-body ul{list-style:none;padding:0;margin:var(--space-3) 0}.modal-body ul li{padding:var(--space-2) 0;padding-left:var(--space-6);position:relative}.modal-body ul li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%)}.modal-body .warning-title{font-weight:var(--font-semibold);font-size:var(--text-base);color:var(--dm-text-primary);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.modal-body .warning-section{margin:var(--space-4) 0}.modal-body .warning-section-title{font-weight:var(--font-semibold);color:var(--dm-text-secondary);margin-bottom:var(--space-2)}.modal-body .check-item{color:var(--color-primary-500)}.modal-body .error-item{color:var(--color-error-600);font-weight:var(--font-medium)}.modal-body .warning-item{color:var(--color-secondary-600)}.modal-body .divider{height:1px;background:var(--dm-border);margin:var(--space-4) 0}.modal-body strong{font-weight:var(--font-semibold);color:var(--dm-text-primary)}.modal-footer{padding:var(--space-6) var(--space-8);background:var(--dm-surface-hover);display:flex;justify-content:flex-end;gap:var(--space-3);border-top:1px solid var(--dm-border)}.modal-button{padding:var(--space-3) var(--space-7);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:background-color .2s var(--ease-out-expo),box-shadow .2s var(--ease-out-expo)}.modal-button.primary{background:var(--color-primary-600);color:#fff;box-shadow:var(--shadow-primary)}.modal-button.primary:hover{background:var(--color-primary-700);box-shadow:var(--shadow-primary-lg)}.modal-button.secondary{background:var(--dm-surface-hover);color:var(--dm-text-secondary);box-shadow:var(--shadow-xs)}.modal-button.secondary:hover{background:var(--dm-border-subtle);box-shadow:var(--shadow-sm)}.modal-button.success{background:var(--color-primary-500);color:#fff;box-shadow:var(--shadow-primary)}.modal-button.success:hover{background:var(--color-primary-600);box-shadow:var(--shadow-primary-lg)}.modal-button.danger{background:var(--color-error-600);color:#fff;box-shadow:0 4px 12px var(--color-error-tint-strong)}.modal-button.danger:hover{background:var(--color-error-700);box-shadow:0 6px 20px var(--color-error-tint-strong)}@keyframes dialogSlideOut{0%{transform:translate(-50%,-50%) translateY(0);opacity:1}to{transform:translate(-50%,-50%) translateY(8px);opacity:0}}@media(max-width:640px){dialog.modal-dialog{width:95%;max-width:none;padding:var(--space-3)}.modal-header{padding:var(--space-4) var(--space-5)}.modal-body{padding:var(--space-5)}.modal-footer{padding:var(--space-3) var(--space-5)}}.app-update-banner{position:fixed;top:calc(env(safe-area-inset-top,0px) + 12px);left:12px;right:12px;z-index:500;display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--dm-card-border);border-radius:var(--radius-md);background:var(--dm-modal-bg);box-shadow:var(--dm-modal-shadow);color:var(--dm-text-primary);animation:app-update-banner-in .24s var(--ease-standard)}@keyframes app-update-banner-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.app-update-banner{animation:none}}.app-update-banner__text{display:flex;flex-direction:column;gap:4px}.app-update-banner__title{font-size:var(--text-base);font-weight:600}.app-update-banner__message{font-size:var(--text-sm);color:var(--dm-text-secondary)}.app-update-banner__actions{display:flex;justify-content:flex-end;gap:8px}.app-update-banner__actions button{min-height:44px;padding:0 18px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.app-update-banner__dismiss{border:1px solid var(--dm-text-tertiary);background:transparent;color:var(--dm-text-secondary)}.app-update-banner__dismiss:hover{background:var(--dm-surface-hover);color:var(--dm-text-primary)}.app-update-banner__confirm{border:1px solid var(--dm-brand-solid);background:var(--dm-brand-solid);color:var(--dm-text-on-brand)}.app-update-banner__confirm:hover{background:var(--color-primary-700, var(--color-primary-600))}.app-update-banner__confirm:disabled{opacity:.7;cursor:progress}.app-update-banner__actions button:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}@media(min-width:768px){.app-update-banner{left:auto;right:24px;top:24px;max-width:380px}}.profile-modal-content{max-width:420px;width:92%;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;background:var(--dm-surface);border-radius:var(--radius-lg);box-shadow:0 25px 80px var(--color-black-alpha-30),0 10px 30px var(--color-black-alpha-15);border:1px solid var(--dm-border-subtle)}.profile-modal-content .modal-header{flex-shrink:0;padding:16px 18px!important;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--dm-brand-solid);position:relative;overflow:hidden;border-bottom:none;box-shadow:0 1px 0 var(--color-black-alpha-10);z-index:1}.profile-modal-content .modal-header:before{content:"";position:absolute;top:-60%;right:-20%;width:80%;height:220%;background:radial-gradient(closest-side,var(--color-white-alpha-15),transparent);pointer-events:none}.profile-modal-content .modal-header h2{font-size:17px;font-weight:700;letter-spacing:-.01em;color:#fff!important;margin:0;min-width:0;display:flex;align-items:center;gap:8px;position:relative;z-index:1}.profile-modal-content .close-modal{position:relative;top:auto;right:auto;z-index:1;flex-shrink:0;width:36px;height:36px;font-size:20px;border-radius:8px;background:var(--color-white-alpha-20)}.profile-modal-content .close-modal:hover{background:var(--color-white-alpha-30)}.profile-modal-content .close-modal:focus-visible{outline:2px solid white;outline-offset:2px}.profile-modal-content .modal-body{overflow-y:auto;overflow-x:hidden;padding:16px!important;flex:1;background:var(--dm-surface-hover)}[data-theme=dark] .profile-modal-content .modal-body{background:var(--dm-surface)}.profile-modal-content .modal-body{scrollbar-width:thin;scrollbar-color:var(--color-primary-600) var(--dm-border-subtle)}.profile-section{background:var(--dm-surface-elevated);padding:var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-3);border:1px solid var(--dm-border-subtle);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),border-color .2s var(--ease-standard);box-shadow:var(--shadow-sm);text-align:left}.profile-section:last-child{margin-bottom:0}.profile-section:hover{border-color:var(--dm-border);box-shadow:var(--shadow-md)}.profile-section h3{margin:0 0 8px;padding:0;background:none;text-shadow:none;color:var(--color-primary-700);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;line-height:1.35;display:flex;align-items:center;gap:8px}.profile-section h3:before{content:"";position:static;width:6px;height:6px;border-radius:50%;background:var(--color-primary-500);flex-shrink:0}.profile-identity{display:flex;align-items:center;gap:14px;background:var(--color-primary-50);border-color:var(--color-primary-200)}.profile-avatar{flex-shrink:0;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--dm-text-on-brand);background:var(--dm-brand-solid);box-shadow:0 4px 12px var(--color-success-tint-strong),inset 0 1px 0 var(--color-white-alpha-20)}.profile-identity-text{min-width:0;flex:1}.profile-identity .profile-info{color:var(--dm-text-primary)}.profile-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary-700);margin-bottom:2px}.profile-info{font-size:15px;color:var(--dm-text-primary);font-weight:600;margin:0;padding:0;background:none;border:none;box-shadow:none;word-break:break-word;overflow-wrap:anywhere;text-align:left;letter-spacing:-.01em}.profile-description{color:var(--dm-text-secondary);font-size:13.5px;margin:0 0 12px;line-height:1.55;text-align:left;text-wrap:pretty}.danger-zone{background:var(--dm-error-tint-bg);border:1px solid var(--color-error-300, var(--color-error-500));box-shadow:var(--shadow-sm);padding:var(--space-4)}.danger-zone h3{color:var(--color-error-700)!important;-webkit-text-fill-color:var(--color-error-700)}.danger-zone h3:before{background:var(--color-error-500)}.danger-zone .profile-description{color:var(--color-error-700)}.btn-primary{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:14px 18px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);width:100%;box-shadow:var(--shadow-hover);position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;inset:0;background:var(--dm-brand-solid);opacity:0;transition:opacity .3s ease;z-index:-1}.btn-primary:hover{box-shadow:var(--shadow-hover)}.btn-primary:hover:before{opacity:1}.btn-primary span{position:relative;z-index:1}.btn-secondary{background:var(--dm-surface-hover);color:var(--dm-text-secondary);border:1px solid var(--dm-border-strong);padding:14px 18px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);width:100%;box-shadow:0 2px 6px var(--color-black-alpha-5);position:relative;overflow:hidden}.btn-secondary:before{content:"";position:absolute;inset:0;background:var(--color-gray-100);opacity:0;transition:opacity .3s ease;z-index:-1}.btn-secondary:hover{box-shadow:0 4px 12px var(--color-black-alpha-10);border-color:var(--color-gray-400)}.btn-secondary:hover:before{opacity:1}.btn-secondary span{position:relative;z-index:1}.btn-danger{background:var(--color-error-700);color:#fff;border:none;padding:14px 18px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;width:100%;box-shadow:0 4px 12px var(--color-error-tint-strong)}.btn-danger:hover{box-shadow:0 6px 20px var(--color-error-tint-strong)}.profile-modal-content .btn-primary,.profile-modal-content .btn-secondary,.profile-modal-content .btn-danger{display:flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;min-height:44px}.profile-modal-content .btn-secondary{background:var(--color-primary-50);color:var(--color-primary-700);border:1px solid var(--color-primary-500);box-shadow:none}.profile-modal-content .btn-secondary:hover{background:var(--color-primary-100);border-color:var(--color-primary-600);box-shadow:var(--shadow-sm)}.profile-modal-content .btn-secondary:before{display:none}.profile-modal-content button:focus-visible,.profile-modal-content a:focus-visible,.profile-modal-content input:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}.profile-modal-content .btn-primary svg,.profile-modal-content .btn-secondary svg,.profile-modal-content .btn-danger svg{position:relative;z-index:1;flex-shrink:0}#export-all-data-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);font-weight:600;border:none;box-shadow:0 4px 12px var(--color-success-tint-strong)}#export-all-data-btn:hover{box-shadow:0 6px 20px var(--color-success-tint-stronger)}.delete-modal-content{max-width:550px;width:92%;max-height:95vh;overflow:hidden;display:flex;flex-direction:column}.delete-modal-content .modal-header{padding:var(--space-5) 24px;border-bottom:1px solid var(--dm-border)}.delete-modal-content .modal-header h2{font-size:20px;font-weight:600;color:var(--dm-text-secondary);margin:0}.delete-modal-content .modal-body{overflow-y:auto;padding:var(--space-5) 24px;flex:1;min-height:0}.warning-message{background:var(--dm-error-tint-bg);border:2px solid var(--color-error-300);border-radius:var(--radius-md);padding:18px;margin-bottom:16px}.warning-message p{margin:10px 0;color:var(--dm-text-secondary);font-size:15px;line-height:1.6}.warning-message p:first-child{margin-top:0}.warning-message p:last-child{margin-bottom:0}.warning-message strong{color:var(--dm-error-text);font-weight:600;font-size:16px}.warning-message ul{margin:14px 0;padding-left:24px}.warning-message li{margin:8px 0;color:var(--dm-text-secondary);font-size:15px;line-height:1.6}.password-modal-content{max-width:420px;width:90%;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.password-modal-content .modal-body{overflow-y:auto;padding:var(--space-5)}.password-modal-content .modal-body>p{margin:0 0 16px;color:var(--dm-text-secondary);font-size:14px;line-height:1.6}.modal-actions{display:flex;gap:var(--space-3);margin-top:20px;flex-wrap:wrap}.modal-actions button{flex:1;min-width:140px;padding:var(--space-3) 24px;font-size:15px}.form-group{margin-bottom:12px}.form-group label{display:block;margin-bottom:6px;color:var(--dm-text-secondary);font-weight:500;font-size:14px}.form-group input[type=text],.form-group input[type=password]{width:100%;padding:10px 12px;border:2px solid var(--dm-border-control);border-radius:var(--radius-default);font-size:14px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-sizing:border-box}.form-group input:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}.close-modal{position:absolute;top:10px;right:12px;background:var(--color-white-alpha-20);border:none;font-size:22px;color:#fff;cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;padding:0;line-height:1}.close-modal:hover{background:var(--color-white-alpha-30);color:#fff}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{flex:1;padding-right:45px}.toggle-password{position:absolute;right:10px;background:none;border:none;cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center}.toggle-password svg{width:20px;height:20px;color:var(--dm-text-tertiary)}.toggle-password:hover svg{color:var(--color-primary-600)}@media(max-width:768px){.profile-modal-content,.delete-modal-content,.password-modal-content{width:95%;max-height:94vh}.profile-modal-content .modal-header,.delete-modal-content .modal-header,.password-modal-content .modal-header{padding:10px 14px!important}.profile-modal-content .modal-header h2{font-size:15px}.profile-modal-content .modal-body{padding:14px!important}.delete-modal-content .modal-body,.password-modal-content .modal-body{padding:8px!important}.profile-section{padding:14px;margin-bottom:10px}.profile-avatar{width:44px;height:44px}.profile-info{font-size:14px}.modal-actions{flex-direction:column;gap:var(--space-2);margin-top:12px}.modal-actions button{width:100%;min-width:auto}.warning-message{padding:10px}.warning-message p,.warning-message li{font-size:12px}.profile-modal-content .btn-primary,.profile-modal-content .btn-secondary,.profile-modal-content .btn-danger{padding:12px 14px;font-size:14px}}@media(max-width:640px){.profile-modal-content,.delete-modal-content,.password-modal-content{width:96%;max-height:95vh}.profile-modal-content .modal-header h2{font-size:14px}.profile-section{padding:12px;margin-bottom:10px}.profile-info{font-size:14px}}[data-theme=dark] .profile-section h3{color:var(--dm-brand-text)}[data-theme=dark] .profile-identity{background:var(--dm-surface-elevated);border-color:var(--dm-border)}[data-theme=dark] .profile-identity .profile-label{color:var(--dm-brand-text)}[data-theme=dark] .profile-identity .profile-info{color:var(--dm-text-primary)}[data-theme=dark] .profile-modal-content .btn-secondary{background:var(--dm-surface-elevated);border-color:var(--dm-border-control);color:var(--dm-text-primary)}[data-theme=dark] .profile-modal-content .btn-secondary:hover{background:var(--dm-surface-hover);border-color:var(--dm-brand-text)}[data-theme=dark] .profile-section{border-color:var(--dm-border)}[data-theme=dark] .danger-zone{border-color:var(--color-error-600)}[data-theme=dark] .danger-zone h3{color:var(--dm-error-text)!important;-webkit-text-fill-color:var(--dm-error-text)}[data-theme=dark] .danger-zone h3:before{background:var(--color-error-400)}[data-theme=dark] .danger-zone .profile-description{color:var(--dm-error-text)}.meal-voucher-btn{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:2px solid var(--dm-border-control);border-radius:var(--radius-md);background:var(--dm-nav-bg);color:var(--dm-text-primary);box-shadow:0 2px 8px var(--color-black-alpha-5);font-size:var(--text-sm);font-weight:var(--font-semibold);white-space:nowrap;cursor:pointer;transition:var(--transition-all)}.meal-voucher-btn:hover{background:var(--dm-surface-hover);border-color:var(--dm-border-strong)}.meal-voucher-btn:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}.meal-voucher-icon{font-size:var(--text-base);line-height:1}.meal-voucher-amount-negative,.meal-voucher-row-value.meal-voucher-amount-negative{color:var(--dm-error-text)}.meal-voucher-row{display:flex;align-items:center;gap:var(--space-2)}.meal-voucher-modal .meal-voucher-detail-value{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-2)}.meal-voucher-modal .meal-voucher-detail-hint,.meal-voucher-modal .meal-voucher-empty-description{color:var(--dm-text-secondary);font-size:var(--text-sm)}.meal-voucher-modal .meal-voucher-warning{margin:var(--space-3) 0;padding:var(--space-3);border-radius:var(--radius-md);background:var(--dm-error-tint-bg);color:var(--dm-error-text);font-size:var(--text-sm)}.meal-voucher-modal .meal-voucher-opening{display:flex;align-items:baseline;gap:var(--space-2);margin:var(--space-4) 0;padding-top:var(--space-4);border-top:1px solid var(--dm-border-subtle)}.meal-voucher-modal .meal-voucher-opening dt{color:var(--dm-text-secondary);font-size:var(--text-sm)}.meal-voucher-modal .meal-voucher-opening dd{margin:0;font-weight:var(--font-semibold)}.meal-voucher-modal .meal-voucher-opening-date{color:var(--dm-text-tertiary);font-size:var(--text-sm);font-weight:var(--font-regular)}.meal-voucher-modal .meal-voucher-empty-title{font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.meal-voucher-modal .meal-voucher-empty{margin-bottom:var(--space-5)}@media(max-width:768px){.meal-voucher-btn{width:100%;justify-content:center;padding:0 var(--space-3)}}.header-country{min-width:9rem}.header-country:before{content:"🌍";position:absolute;inset-block:0;inset-inline-start:var(--space-4);z-index:1;display:flex;align-items:center;font-size:1.05rem;line-height:1;pointer-events:none}.header-country .searchable-select-input{width:100%;min-height:44px;padding:var(--space-2) var(--space-4);padding-inline-start:calc(var(--space-4) + 1.5rem);border:2px solid var(--dm-border-control);border-radius:var(--radius-md);background:var(--dm-nav-bg);color:var(--dm-text-primary);font-size:var(--text-sm);font-weight:600;box-shadow:0 2px 8px var(--color-black-alpha-5);transition:box-shadow .2s var(--ease-standard),border-color .2s var(--ease-standard),background-color .2s var(--ease-standard)}.header-country .searchable-select-input:hover{border-color:var(--color-primary-600);box-shadow:var(--shadow-hover);background:var(--dm-surface)}.header-country .searchable-select-input:focus-visible{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-200),var(--shadow-hover)}@media(max-width:768px){.header-country{min-width:0}}.country-badge{display:inline-flex;align-items:center;margin-inline-start:var(--space-2);padding:.125rem var(--space-2);border-radius:var(--radius-full, 999px);background:var(--dm-surface-hover);color:var(--dm-text-secondary);font-size:var(--text-xs);white-space:nowrap}:root{--country-map-0: var(--dm-surface-hover);--country-map-1: var(--color-primary-100);--country-map-2: var(--color-primary-300);--country-map-3: var(--color-primary-500);--country-map-4: var(--color-primary-700);--country-map-stroke: var(--dm-border-strong)}[data-theme=dark]{--country-map-0: var(--dm-surface-hover);--country-map-1: var(--color-primary-800);--country-map-2: var(--color-primary-600);--country-map-3: var(--color-primary-400);--country-map-4: var(--color-primary-200)}.country-map-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.country-map-filters{display:flex;flex-wrap:wrap;gap:var(--space-2)}.country-map-canvas:empty{display:none}.country-map-svg{display:block;width:100%;height:auto;max-height:60vh;margin-bottom:var(--space-4)}.country-shape{stroke:var(--country-map-stroke);stroke-width:.3;fill:var(--country-map-0)}.country-shape.intensity-1{fill:var(--country-map-1)}.country-shape.intensity-2{fill:var(--country-map-2)}.country-shape.intensity-3{fill:var(--country-map-3)}.country-shape.intensity-4{fill:var(--country-map-4)}.country-rank-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.country-rank-table th,.country-rank-table td{padding:var(--space-2) var(--space-2);text-align:left;border-bottom:1px solid var(--dm-border-subtle)}.country-rank-table thead th{color:var(--dm-text-secondary);font-weight:500}.country-rank-table tbody th{font-weight:500;color:var(--dm-text-primary)}.country-rank-bar{width:40%;min-width:4rem}.country-rank-fill{display:block;height:.5rem;min-width:2px;border-radius:var(--radius-full, 999px);background:var(--country-map-2)}.country-rank-fill.intensity-1{background:var(--country-map-1)}.country-rank-fill.intensity-3{background:var(--country-map-3)}.country-rank-fill.intensity-4{background:var(--country-map-4)}.country-rank-table .country-rank-amount,.country-rank-table .country-rank-count,.country-rank-table thead th:nth-child(3),.country-rank-table thead th:nth-child(4){text-align:right;white-space:nowrap}.country-map-empty,.country-map-unassigned{margin-top:var(--space-3);color:var(--dm-text-secondary);font-size:var(--text-sm)}@media(max-width:640px){.country-map-svg{max-height:34vh}.country-rank-table{font-size:var(--text-xs)}.country-rank-bar{display:none}}.modal-overlay{position:fixed;inset:0;background:var(--dm-modal-backdrop);display:none;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-5);opacity:0;transition:opacity var(--duration-enter) var(--ease-out-expo)}.modal-overlay.active{display:flex;opacity:1}.modal-overlay .modal-container{background:var(--dm-surface);border-radius:var(--radius-2xl);max-width:800px;width:100%;max-height:90vh;overflow:hidden;box-shadow:var(--shadow-2xl);border:1px solid var(--dm-border);animation:flexModalSlideIn var(--duration-enter) var(--ease-out-expo)}@keyframes flexModalSlideIn{0%{transform:translateY(-12px);opacity:0}to{transform:translateY(0);opacity:1}}.recurring-checkbox-container{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) 20px;background:var(--color-gray-50);border-radius:var(--radius-md);margin:20px 0;border:2px solid var(--dm-border);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.recurring-checkbox-container:hover{border-color:var(--dm-border-strong);box-shadow:0 4px 12px var(--color-black-alpha-5)}.recurring-checkbox-wrapper{display:flex;align-items:center;gap:var(--space-3)}.recurring-checkbox-container input[type=checkbox]{width:22px;height:22px;cursor:pointer;accent-color:var(--color-primary-600);transition:transform .2s ease}.recurring-checkbox-container input[type=checkbox]:hover{transform:scale(1.1)}.recurring-checkbox-container label{margin:0;cursor:pointer;font-weight:600;color:var(--dm-text-secondary);font-size:15px;transition:color .2s ease}.recurring-checkbox-container input[type=checkbox]:checked+label{color:var(--color-primary-600)}[data-theme=dark] .recurring-checkbox-container{background:var(--dm-surface-elevated)}[data-theme=dark] .recurring-checkbox-container label{color:var(--dm-text-primary)}[data-theme=dark] .recurring-checkbox-container input[type=checkbox]:checked+label{color:var(--dm-brand-text)}.manage-recurring-btn{display:flex;align-items:center;gap:var(--space-2);padding:10px 20px;background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;border-radius:var(--radius-md);font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);white-space:nowrap;box-shadow:0 2px 8px var(--color-info-tint);position:relative;overflow:hidden}.manage-recurring-btn:before{content:"";position:absolute;inset:0;background:var(--dm-brand-solid);opacity:0;transition:opacity .3s ease;z-index:-1}.manage-recurring-btn:hover{box-shadow:0 6px 16px var(--color-info-tint)}.manage-recurring-btn:hover:before{opacity:1}.manage-recurring-btn .btn-icon,.manage-recurring-btn .btn-text{position:relative;z-index:1}.manage-recurring-btn .btn-icon{font-size:16px;position:relative;z-index:1}.manage-recurring-btn .btn-text{position:relative;z-index:1}.recurring-modal-close-btn{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:var(--color-white-alpha-20);border:none;color:#fff;font-size:24px;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;z-index:2;line-height:1}.recurring-modal-close-btn:hover{background:var(--color-white-alpha-30);transform:translateY(-50%) scale(1.1)}.recurring-modal{max-width:700px}.recurring-modal-body{max-height:70vh;overflow-y:auto}.recurring-intro{color:var(--dm-text-tertiary);margin-bottom:20px;font-size:14px}.recurring-expenses-list{display:flex;flex-direction:column;gap:var(--space-4)}.recurring-expense-item{background:var(--dm-surface);border:2px solid var(--color-pink-300);border-radius:var(--radius-md);padding:var(--space-4);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 2px 8px #ffc0cb33}.recurring-expense-item:hover{box-shadow:0 4px 12px #ffc0cb4d}.recurring-expense-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:12px}.recurring-expense-icon{font-size:32px;flex-shrink:0}.recurring-expense-info{flex:1}.recurring-expense-title{font-size:16px;font-weight:600;color:var(--dm-text-primary);margin-bottom:4px}.recurring-expense-subtitle{font-size:13px;color:var(--dm-text-tertiary)}.recurring-expense-amount{font-size:20px;font-weight:700;color:var(--color-pink-500)}.recurring-expense-details{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--color-error-50);border-radius:var(--radius-default);margin-bottom:12px}.recurring-detail{display:flex;align-items:center;gap:var(--space-2);font-size:14px}.recurring-expense-actions{display:flex;gap:var(--space-3);justify-content:flex-end}.recurring-btn{padding:10px 20px;border:none;border-radius:var(--radius-default);font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;align-items:center;gap:6px}.recurring-btn-reject{background:var(--color-error-100);color:var(--color-error-600)}.recurring-btn-reject:hover{background:var(--color-error-200);transform:scale(1.05)}.recurring-btn-confirm{background:var(--color-primary-100);color:var(--color-primary-500)}.recurring-btn-confirm:hover{background:var(--color-primary-200);transform:scale(1.05)}.recurrence-modal{max-width:500px}.recurrence-options{margin-top:16px;padding:var(--space-4);background:var(--dm-surface-hover);border-radius:var(--radius-default)}.recurrence-select,.recurrence-input{width:100%;padding:10px 12px;border:2px solid var(--dm-border-control);border-radius:var(--radius-default);font-size:14px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.recurrence-select:focus,.recurrence-input:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-info-tint)}.reject-options{display:flex;flex-direction:column;gap:var(--space-4);margin-top:16px}.reject-option{padding:var(--space-4);background:var(--dm-surface-hover);border-radius:var(--radius-default)}.reject-option strong{display:block;color:var(--dm-text-primary);margin-bottom:8px;font-size:15px}.reject-option p{color:var(--dm-text-tertiary);font-size:13px;margin:0;line-height:1.5}.recurring-pending-box{background:var(--color-pink-200);border:2px solid var(--color-pink-400);border-radius:var(--radius-md);padding:var(--space-5);margin:20px 0;box-shadow:0 4px 12px #ff69b433}@keyframes pulseGlow{0%,to{box-shadow:0 4px 12px #ff69b433}50%{box-shadow:0 6px 20px #ff69b466}}.recurring-pending-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:16px}.recurring-pending-icon{font-size:32px}.recurring-pending-title{font-size:18px;font-weight:700;color:var(--color-pink-600);margin:0}.recurring-pending-count{background:var(--dm-surface);color:var(--color-pink-500);padding:4px 12px;border-radius:var(--radius-xl);font-size:14px;font-weight:700}.recurring-pending-button{width:100%;padding:14px;background:var(--dm-surface);color:var(--color-pink-500);border:none;border-radius:var(--radius-default);font-size:16px;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 2px 8px var(--color-black-alpha-10)}.recurring-pending-button:hover{background:var(--color-error-50);box-shadow:0 4px 12px var(--color-black-alpha-15)}.manage-recurring-modal{max-width:800px}dialog.recurring-pending-dialog{max-width:700px;width:90%;padding:0;border:none;background:transparent;overflow:visible}dialog.recurring-pending-dialog::backdrop{background:var(--dm-modal-backdrop)}.modal-overlay--top{z-index:var(--z-tooltip)}#manage-recurring-modal,#manage-recurring-income-modal{z-index:var(--z-modal)}#edit-recurring-modal{z-index:var(--z-tooltip)}.manage-recurring-list{display:flex;flex-direction:column;gap:var(--space-4);max-height:60vh;overflow-y:auto}.manage-recurring-item{background:var(--dm-surface);border:2px solid var(--dm-border);border-radius:var(--radius-md);padding:var(--space-4);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.manage-recurring-item:hover{border-color:var(--color-primary-600);box-shadow:0 4px 12px var(--color-info-tint)}.manage-recurring-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.manage-recurring-info{flex:1}.manage-recurring-title{font-size:18px;font-weight:700;color:var(--dm-text-primary);margin-bottom:4px}.manage-recurring-category{font-size:14px;color:var(--dm-text-tertiary)}.manage-recurring-amount{font-size:24px;font-weight:700;color:var(--color-primary-600)}.manage-recurring-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-3);padding:var(--space-3);background:var(--dm-surface-hover);border-radius:var(--radius-default);margin-bottom:12px}.manage-detail-item{display:flex;flex-direction:column;gap:4px}.manage-detail-label{font-size:12px;color:var(--dm-text-tertiary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.manage-detail-value{font-size:14px;color:var(--dm-text-primary);font-weight:600}.manage-recurring-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.manage-action-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;align-items:center;gap:6px}.manage-action-btn.edit{background:var(--color-primary-100);color:var(--color-primary-800)}.manage-action-btn.edit:hover{background:var(--color-primary-200);transform:scale(1.05)}.manage-action-btn.delete{background:var(--color-error-100);color:var(--color-error-600)}.manage-action-btn.delete:hover{background:var(--color-error-200);transform:scale(1.05)}.no-recurring-message{text-align:center;padding:40px 20px;color:var(--dm-text-tertiary)}.no-recurring-message .icon{font-size:48px;margin-bottom:16px}.no-recurring-message p{font-size:16px;margin:0}.edit-recurring-modal{max-width:500px}.edit-recurring-form{display:flex;flex-direction:column;gap:var(--space-4)}.edit-form-group{display:flex;flex-direction:column;gap:var(--space-2)}.edit-form-group label{font-size:14px;font-weight:600;color:var(--dm-text-secondary)}.edit-form-group input,.edit-form-group select{padding:10px 12px;border:2px solid var(--dm-border-control);border-radius:var(--radius-default);font-size:14px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.edit-form-group input:focus,.edit-form-group select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-info-tint)}.amount-currency-group-edit{display:flex;gap:var(--space-2)}.amount-currency-group-edit input{flex:1}.amount-currency-group-edit select{width:120px}@media(max-width:640px){.recurring-expense-header{flex-wrap:wrap}.recurring-expense-amount{width:100%;text-align:right;margin-top:8px}.recurring-expense-actions{flex-direction:column}.recurring-btn{width:100%;justify-content:center}.recurring-modal{width:95%}.recurring-checkbox-container{flex-direction:column;align-items:stretch}.recurring-checkbox-container .manage-recurring-btn{width:100%;justify-content:center}.manage-recurring-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.manage-recurring-amount{align-self:flex-end}.manage-recurring-details{grid-template-columns:1fr}.manage-recurring-actions{flex-direction:column}.manage-action-btn{width:100%;justify-content:center}}.projects-popup-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:var(--dm-modal-backdrop);z-index:var(--z-modal);overflow-y:auto;padding:var(--space-5);animation:fadeIn .3s ease}.projects-popup-overlay.active{display:flex;align-items:center;justify-content:center}.projects-popup-content{background:var(--dm-surface);border-radius:var(--radius-2xl);padding:40px;max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:var(--shadow-2xl),0 8px 24px var(--color-black-alpha-20);animation:slideUp .4s ease}.projects-popup-close{position:absolute;top:20px;right:20px;background:var(--color-error-600);color:#fff!important;border:none;width:40px;height:40px;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 12px var(--color-error-tint-strong);z-index:var(--z-10)}.projects-popup-close:hover{background:var(--color-error-700);transform:rotate(90deg) scale(1.1);box-shadow:0 6px 16px var(--color-error-tint-strong)}.projects-popup-title{text-align:center;font-size:32px;font-weight:700;margin:0 0 40px;color:var(--dm-text-secondary);display:flex;align-items:center;justify-content:center;gap:10px}.projects-emoji{font-size:36px;display:inline-block;filter:none!important;-webkit-text-fill-color:initial!important;color:initial!important}.projects-title-text{color:var(--dm-brand-text)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:30px;margin-bottom:40px}.project-card{background:var(--dm-surface);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:0 8px 24px var(--color-black-alpha-8);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:2px solid transparent;display:flex;flex-direction:column}.project-card:hover{box-shadow:var(--shadow-2xl);border-color:var(--color-primary-600)}.project-image{width:100%;height:200px;object-fit:cover;border-radius:var(--radius-lg);margin-bottom:20px;box-shadow:0 4px 12px var(--color-black-alpha-10)}.project-card h3{font-size:22px;font-weight:700;margin:0 0 16px;color:var(--dm-text-secondary)}.project-card p{font-size:15px;line-height:1.7;color:var(--dm-text-tertiary);margin:0 0 24px;flex:1}.project-links{display:flex;gap:var(--space-3);flex-wrap:wrap}.project-btn{flex:1;min-width:140px;padding:var(--space-3) 20px;border-radius:var(--radius-md);text-decoration:none;font-weight:600;font-size:14px;text-align:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.project-btn-app{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)!important;box-shadow:var(--shadow-hover)}.project-btn-app:hover{background:var(--color-info-600);box-shadow:var(--shadow-hover)}.project-btn-docs{background:var(--color-gray-50);color:var(--dm-text-tertiary);border:2px solid var(--dm-border)}.project-btn-docs:hover{background:var(--dm-border);border-color:var(--dm-border-strong)}.projects-footer{text-align:center;padding-top:30px;border-top:2px solid var(--dm-border)}.github-profile-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-4) 32px;background:var(--color-gray-900);color:#fff!important;text-decoration:none;border-radius:var(--radius-md);font-weight:600;font-size:16px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:var(--shadow-md)}.github-profile-link:hover{background:var(--color-black);box-shadow:var(--shadow-lg)}@media(max-width:768px){.projects-popup-content{padding:30px 20px;margin:10px;max-height:95vh}.projects-popup-title{font-size:24px;margin-bottom:30px}.projects-grid{grid-template-columns:1fr;gap:24px}.project-card{padding:var(--space-5)}.project-image{height:180px}.project-card h3{font-size:20px}.project-card p{font-size:14px}.project-links{flex-direction:column}.project-btn{min-width:100%}.github-profile-link{padding:14px 24px;font-size:14px}}.projects-popup-content{scrollbar-width:thin;scrollbar-color:var(--color-primary-600) var(--dm-border-subtle)}@media(hover:hover){.project-card:hover{transform:translateY(-3px)}}@media(hover:none){.project-card:active{transform:scale(.98)}}.help-btn{background:var(--dm-nav-bg);color:var(--dm-text-secondary);border:2px solid var(--dm-border-control);padding:10px;border-radius:50%;cursor:pointer;font-size:20px;font-weight:700;width:44px;height:44px;display:flex;align-items:center;justify-content:center;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:var(--shadow-sm)}.help-btn:hover{border-color:var(--color-primary-600);color:var(--color-primary-600);box-shadow:var(--shadow-hover)}.help-btn:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}.tutorial-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:var(--color-black-alpha-70);z-index:var(--z-modal);animation:fadeIn .3s ease}.tutorial-modal.active{display:flex;align-items:center;justify-content:center}.tutorial-content{background:var(--dm-modal-bg);color:var(--dm-text-secondary);border-radius:var(--radius-xl);max-width:800px;width:90%;max-height:85vh;overflow:hidden;box-shadow:var(--dm-modal-shadow, 0 10px 40px var(--color-black-alpha-30));animation:slideUp .4s ease;display:flex;flex-direction:column}.tutorial-header{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:25px 30px;display:flex;justify-content:center;align-items:center;position:relative}.tutorial-header h2{margin:0;font-size:24px;display:flex;align-items:center;justify-content:center;gap:10px;color:#fff!important;text-align:center;padding:0 76px}.tutorial-header h2 span:empty{display:none}.tutorial-close{position:absolute;right:30px;top:50%;transform:translateY(-50%);background:var(--color-white-alpha-20);border:none;color:#fff;font-size:28px;cursor:pointer;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.tutorial-close:hover{background:var(--color-white-alpha-30);transform:translateY(-50%) rotate(90deg)}.tutorial-body{padding:30px;overflow-y:auto;flex:1}.tutorial-slide{display:none;animation:fadeIn .3s ease}.tutorial-slide.active{display:block}.tutorial-slide h3{color:var(--color-primary-600);font-size:22px;margin-top:0;margin-bottom:15px;display:flex;align-items:center;justify-content:center;gap:10px;text-align:center}[data-theme=dark] .tutorial-slide h3{color:var(--color-primary-400)}.tutorial-slide p{color:var(--dm-text-secondary);line-height:1.8;margin-bottom:20px;font-size:16px}.tutorial-slide ul{color:var(--dm-text-secondary);line-height:1.8;margin-left:20px}.tutorial-slide li{margin-bottom:10px}.tutorial-screenshot{width:100%;max-width:600px;margin:20px auto;border-radius:var(--radius-md);box-shadow:0 4px 15px var(--color-black-alpha-10);display:block}.tutorial-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin:20px 0}.tutorial-feature-card{background:var(--dm-surface-hover);border:1px solid var(--dm-border);padding:var(--space-5);border-radius:var(--radius-md);text-align:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.tutorial-feature-card:hover{background:var(--dm-surface-elevated);border-color:var(--dm-border-strong);box-shadow:0 4px 10px var(--color-black-alpha-10)}.tutorial-feature-card .icon{font-size:40px;margin-bottom:10px}.tutorial-feature-card h4{margin:10px 0 5px;color:var(--dm-text-primary);font-size:16px}.tutorial-feature-card p{margin:0;font-size:14px;color:var(--dm-text-secondary)}.tutorial-footer{padding:var(--space-5) 30px;background:var(--dm-surface-hover);display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--dm-border)}.tutorial-progress{display:flex;gap:14px;align-items:center}.tutorial-dot{position:relative;width:10px;height:10px;padding:0;border:none;border-radius:50%;background:var(--dm-text-tertiary);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.tutorial-dot:before{content:"";position:absolute;left:50%;top:50%;width:24px;height:24px;transform:translate(-50%,-50%)}.tutorial-dot:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:3px}.tutorial-dot.active{background:var(--color-primary-600);width:30px;border-radius:5px}[data-theme=dark] .tutorial-dot.active{background:var(--color-primary-400)}[data-theme=dark] .tutorial-dot:focus-visible{outline-color:var(--color-primary-400)}.tutorial-nav{display:flex;gap:10px}.tutorial-btn{padding:10px 20px;border:none;border-radius:var(--radius-default);cursor:pointer;font-size:14px;font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.tutorial-btn-skip{background:transparent;color:var(--dm-text-secondary);font-size:var(--text-xs);padding:8px 12px;margin-right:auto}.tutorial-btn-skip:hover{color:var(--dm-text-primary);background:var(--dm-surface-hover)}.tutorial-btn-prev{background:var(--dm-surface-hover);color:var(--dm-text-secondary);border:1px solid var(--dm-border)}.tutorial-btn-prev:hover{background:var(--dm-surface-elevated);border-color:var(--dm-border-strong);color:var(--dm-text-primary)}.tutorial-btn-next{background:var(--color-primary-600);color:#fff}.tutorial-btn-next:hover{background:var(--color-indigo-600)}.tutorial-btn:disabled{opacity:.5;cursor:not-allowed}.tutorial-highlight{background:var(--color-success-tint-strong);padding:15px;border-radius:var(--radius-md);margin:15px 0}.tutorial-highlight--centered{text-align:center}.tutorial-tip{background:var(--color-secondary-100);color:var(--dm-text-primary);padding:15px;border-radius:var(--radius-md);margin:15px 0}.tutorial-tip strong{color:var(--color-secondary-700)}[data-theme=dark] .tutorial-tip{background:color-mix(in oklab,var(--color-secondary-500) 18%,transparent);color:var(--dm-text-primary);border:1px solid color-mix(in oklab,var(--color-secondary-500) 35%,transparent)}[data-theme=dark] .tutorial-tip strong{color:var(--color-secondary-300)}[data-theme=dark] .tutorial-tip a,[data-theme=dark] .tutorial-highlight a{color:var(--color-primary-400)}[data-theme=dark] .tutorial-highlight{background:color-mix(in oklab,var(--color-primary-500) 18%,transparent);color:var(--dm-text-primary);border:1px solid color-mix(in oklab,var(--color-primary-500) 35%,transparent)}@media(max-width:768px){.tutorial-content{width:95%;max-height:90vh}.tutorial-header{padding:var(--space-5)}.tutorial-header h2{font-size:18px;padding:0 56px}.tutorial-close{right:var(--space-5)}.tutorial-body{padding:var(--space-5)}.tutorial-slide h3{font-size:18px}.tutorial-feature-grid{grid-template-columns:1fr}.tutorial-feature-card{padding:15px}.tutorial-feature-card .icon{font-size:35px}.tutorial-footer{padding:15px 20px;flex-direction:column;gap:15px}.tutorial-nav{width:100%;justify-content:space-between}}.categories-section-container{display:flex;flex-direction:column;gap:30px;padding-bottom:120px;position:relative;z-index:1;width:100%;min-height:auto;height:auto}.categories-analysis-section{background:var(--dm-surface);border-radius:var(--radius-md);padding:25px;box-shadow:0 2px 8px var(--color-black-alpha-10);position:relative;z-index:1;width:100%;min-height:auto;height:auto;overflow:visible}.categories-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-collapse-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:var(--color-primary-600);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;transform:rotate(0)}.section-collapse-btn:hover{background:var(--color-success-tint);border-radius:50%}.section-content{width:100%;min-height:auto;height:auto;overflow:visible;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}#categories-expenses-analysis,#categories-income-analysis{width:100%;min-height:auto;height:auto;overflow:visible}.categories-analysis-section h3{margin:0;color:var(--color-primary-600);font-size:1.5em;font-weight:700}.budget-table{width:100%;display:flex;flex-direction:column;gap:var(--space-3)}.budget-table-header{display:grid;grid-template-columns:28px 1fr 100px 90px 48px;align-items:center;padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--dm-text-tertiary);text-transform:uppercase;letter-spacing:.06em}.budget-group{background:var(--dm-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--dm-border);overflow:hidden;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard)}.budget-group:hover{box-shadow:var(--shadow-md);border-color:var(--dm-border-strong)}.budget-group-header{display:grid;grid-template-columns:28px 1fr 100px 90px 48px;align-items:center;padding:var(--space-4) var(--space-5);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s var(--ease-standard)}.budget-group-header:hover{background:var(--color-black-alpha-5)}.budget-group.expanded .budget-group-header{border-bottom:1px solid var(--dm-border);background:var(--color-black-alpha-5)}.budget-chevron{display:flex;align-items:center;justify-content:center;color:var(--color-primary-600);transition:transform .25s var(--ease-standard)}.budget-group.expanded .budget-chevron{transform:rotate(0)}.budget-group:not(.expanded) .budget-chevron{transform:rotate(-90deg)}.budget-group-name{font-family:var(--font-heading);font-weight:var(--font-bold);color:var(--dm-text-primary);font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:var(--space-2)}.budget-group-amount{font-weight:var(--font-bold);color:var(--dm-text-primary);font-size:var(--text-sm);text-align:right}.budget-bar-wrapper{padding:0 var(--space-2)}.budget-bar{height:8px;background:var(--color-gray-200);border-radius:var(--radius-full);overflow:hidden}.budget-bar-fill{height:100%;border-radius:var(--radius-full);transition:width .5s var(--ease-standard);min-width:0}.budget-bar-fill.bar-expense{background:var(--color-error-500)}.budget-bar-fill.bar-income{background:var(--dm-brand-solid)}.budget-group-percent{text-align:right;font-weight:var(--font-semibold);font-size:var(--text-xs);color:var(--dm-text-tertiary)}.budget-group-rows{animation:btSlideDown .25s var(--ease-standard)}@keyframes btSlideDown{0%{opacity:0}to{opacity:1;transform:translateY(0)}}.budget-row{border-bottom:1px solid var(--dm-border-subtle);transition:background .15s ease}.budget-row:last-child{border-bottom:none}.budget-row:hover{background:var(--dm-surface-hover)}.budget-row-header{display:grid;grid-template-columns:28px 1fr 100px 90px 48px;align-items:center;padding:var(--space-3) var(--space-5);padding-left:calc(var(--space-5) + 12px);cursor:pointer;transition:background .15s ease}.budget-row-name{font-weight:var(--font-medium);color:var(--dm-text-tertiary);font-size:var(--text-sm)}.budget-row-amount{font-weight:var(--font-medium);color:var(--dm-text-secondary);font-size:var(--text-sm);text-align:right}.budget-row-percent{text-align:right;font-size:var(--text-xs);color:var(--dm-text-tertiary);font-weight:var(--font-medium)}.budget-row-transactions{padding:var(--space-1) var(--space-5) var(--space-4) calc(var(--space-5) + 40px);animation:btSlideDown .2s ease}.budget-row-trans-header{font-size:var(--text-xs);color:var(--dm-text-tertiary);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2);padding-bottom:var(--space-1);border-bottom:1px solid var(--dm-border-subtle)}.budget-row-transactions .items-list{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.budget-row-transactions .item-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2-5) var(--space-3);background:var(--dm-surface);border-radius:var(--radius-default);border:1px solid var(--dm-border);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard)}.budget-row-transactions .item-row:hover{box-shadow:var(--shadow-sm)}.item-info{flex:1;min-width:0}.item-date{font-size:var(--text-xs);color:var(--dm-text-tertiary);margin-bottom:2px}.item-description{font-size:var(--text-sm);color:var(--dm-text-secondary);font-weight:var(--font-medium);word-wrap:break-word;overflow-wrap:break-word}.item-amount{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--dm-text-primary);margin-left:var(--space-3);flex-shrink:0}.no-data{text-align:center;padding:40px 20px;color:var(--dm-text-tertiary);font-style:italic;font-size:var(--text-base)}@media(max-width:768px){.categories-analysis-section{padding:var(--space-4)}.categories-analysis-section h3{font-size:1.25em;margin-bottom:var(--space-4)}.budget-table-header{grid-template-columns:24px 1fr 85px 70px 40px;padding:var(--space-2) var(--space-4);font-size:.68em}.budget-group-header{grid-template-columns:24px 1fr 85px 70px 40px;padding:var(--space-3) var(--space-4)}.budget-group-name{font-size:.88em}.budget-group-amount{font-size:.85em}.budget-bar{height:6px}.budget-row-header{grid-template-columns:24px 1fr 85px 70px 40px;padding:var(--space-2-5) var(--space-4);padding-left:calc(var(--space-4) + 10px)}.budget-row-transactions{padding:var(--space-1) var(--space-4) var(--space-3) calc(var(--space-4) + 34px)}.budget-row-transactions .item-row{flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-2-5) var(--space-3)}.item-amount{margin-left:0;align-self:flex-end}}@media(max-width:640px){.categories-section-container{gap:var(--space-5)}.categories-analysis-section{padding:var(--space-3)}.categories-analysis-section h3{font-size:1.15em;margin-bottom:var(--space-3)}.budget-table{gap:var(--space-2)}.budget-table-header{grid-template-columns:20px 1fr 75px 55px 36px;padding:var(--space-1) var(--space-3);font-size:.62em}.budget-group-header{grid-template-columns:20px 1fr 75px 55px 36px;padding:var(--space-3) var(--space-3)}.budget-group-name{font-size:.82em}.budget-group-amount{font-size:.8em}.budget-group-percent{font-size:.72em}.budget-chevron svg{width:12px;height:12px}.budget-row-header{grid-template-columns:20px 1fr 75px 55px 36px;padding:var(--space-2) var(--space-3);padding-left:calc(var(--space-3) + 8px)}.budget-row-name{font-size:.82em}.budget-row-amount{font-size:.8em}.budget-row-percent{font-size:.72em}.budget-row-transactions{padding:var(--space-1) var(--space-3) var(--space-2) calc(var(--space-3) + 28px)}.budget-row-transactions .item-row{padding:var(--space-2) var(--space-2)}.item-date{font-size:.7em}.item-description,.item-amount{font-size:.82em}}.comparison-container{width:100%}.comparison-selectors{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.comparison-column{display:flex;flex-direction:column;gap:10px}.comparison-column-title{margin:0 0 4px;font-size:1.05em;font-weight:700}.comparison-income-title{color:var(--dm-brand-text)}.comparison-expense-title{color:var(--color-error-500)}.comparison-chips-container{display:flex;flex-wrap:wrap;gap:8px}.comparison-chip{display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;border-radius:20px;border:2px solid var(--dm-border);background:var(--dm-surface-hover);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;font-family:inherit;font-size:.88em}.comparison-chip:hover{border-color:var(--color-gray-400);box-shadow:0 2px 6px var(--color-black-alpha-8)}.comparison-chip-income.selected{background:var(--color-success-tint);border-color:var(--color-primary-400);color:var(--color-primary-700)}.comparison-chip-expense.selected{background:var(--color-error-tint);border-color:var(--color-error-500);color:var(--color-error-800)}.chip-name{font-weight:600;line-height:1.2}.chip-amount{font-size:.85em;opacity:.75;font-weight:500}.comparison-no-data{color:var(--dm-text-tertiary);font-style:italic;font-size:.9em;margin:0}.comparison-results{margin-top:8px}.comparison-no-selection{text-align:center;padding:30px 20px;color:var(--dm-text-tertiary);font-style:italic;font-size:1em}.comparison-bar-container{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.comparison-bar-row{display:flex;align-items:center;gap:12px}.comparison-bar-label{font-weight:700;font-size:.9em;min-width:65px;text-align:right}.comparison-bar-track{flex:1;height:24px;background:var(--dm-border-subtle);border-radius:12px;overflow:hidden}.comparison-bar-fill{height:100%;border-radius:12px;transition:width .4s ease}.comparison-bar-income{background:var(--color-primary-400)}.comparison-bar-expense{background:var(--color-error-500)}.comparison-bar-value{font-weight:700;font-size:.95em;min-width:100px;text-align:left;color:var(--dm-text-secondary)}.comparison-income-color{color:var(--dm-brand-text)}.comparison-expense-color{color:var(--color-error-500)}.comparison-summary{background:var(--dm-surface-hover);border-radius:var(--radius-default);padding:16px 20px;margin-bottom:20px;display:flex;flex-direction:column;gap:10px}.comparison-total-row{display:flex;justify-content:space-between;align-items:center}.comparison-total-label{font-weight:600;color:var(--dm-text-tertiary);font-size:.95em}.comparison-total-value{font-weight:700;font-size:1.1em}.comparison-balance-row{display:flex;justify-content:space-between;align-items:center;padding-top:10px;border-top:2px solid var(--dm-border);margin-top:4px}.comparison-balance-label{font-weight:700;font-size:1em}.comparison-balance-value{font-weight:800;font-size:1.25em}.balance-positive .comparison-balance-label,.balance-positive .comparison-balance-value{color:var(--dm-brand-text)}.balance-negative .comparison-balance-label,.balance-negative .comparison-balance-value{color:var(--color-error-500)}.comparison-details{display:grid;grid-template-columns:1fr 1fr;gap:20px}.comparison-details-column{display:flex;flex-direction:column;gap:8px}.comparison-details-title{margin:0 0 4px;font-size:.95em;font-weight:700}.comparison-detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--dm-surface);border-radius:var(--radius-default);border:1px solid var(--dm-border)}.comparison-detail-name{font-weight:600;font-size:.9em;color:var(--dm-text-secondary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comparison-detail-amount{font-weight:700;font-size:.9em;color:var(--dm-text-tertiary);flex-shrink:0;margin-left:8px}.comparison-detail-amount small{font-weight:500;opacity:.7}.comparison-detail-clickable{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.comparison-detail-clickable:hover{border-color:var(--color-primary-600);box-shadow:var(--shadow-sm)}.comparison-popup-list{max-height:350px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.comparison-popup-item{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--dm-surface-hover);border-radius:8px;border:1px solid var(--dm-border)}.comparison-popup-item-left{flex:1;min-width:0}.comparison-popup-item-date{font-size:.8em;color:var(--dm-text-tertiary);margin-bottom:2px}.comparison-popup-item-desc{font-size:.95em;font-weight:500;color:var(--dm-text-secondary)}.comparison-popup-item-subcat{font-size:.78em;color:var(--dm-text-tertiary);margin-top:2px;font-style:italic}.comparison-popup-item-amount{font-weight:700;font-size:1em;flex-shrink:0;margin-left:12px}.comparison-popup-total{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--dm-border-subtle);border-radius:8px;font-weight:700;font-size:.95em;border-top:2px solid var(--dm-border)}.comparison-subcategory-section{width:100%}.comparison-sub-divider{margin-top:28px;margin-bottom:16px;padding-top:20px;border-top:2px dashed var(--dm-border)}.comparison-sub-title{margin:0;font-size:1.15em;font-weight:700;color:var(--color-primary-600)}.comparison-sub-results{margin-top:8px}@media(max-width:768px){.comparison-selectors,.comparison-details{grid-template-columns:1fr;gap:16px}.comparison-bar-row{display:grid;grid-template-columns:60px 1fr auto;gap:8px;align-items:center}.comparison-bar-label{min-width:unset;font-size:.85em;text-align:left}.comparison-bar-value{min-width:unset;font-size:.85em}.comparison-detail-row{flex-direction:column;align-items:flex-start;gap:4px}.comparison-detail-name{white-space:normal;overflow:visible;text-overflow:unset;font-size:.95em}.comparison-detail-amount{margin-left:0;align-self:flex-end;font-size:.95em}.comparison-summary{padding:12px 14px}.comparison-total-row{flex-wrap:wrap;gap:2px}.comparison-total-label{font-size:.88em}.comparison-total-value{font-size:1em}.comparison-balance-row{flex-wrap:wrap;gap:2px}.comparison-balance-label{font-size:.9em}.comparison-balance-value{font-size:1.1em}}@media(max-width:640px){.comparison-chip{padding:6px 10px;font-size:.82em}.comparison-bar-row{grid-template-columns:50px 1fr auto;gap:6px}.comparison-bar-track{height:20px}.comparison-bar-label,.comparison-bar-value{font-size:.8em}.comparison-balance-value{font-size:1.05em}.comparison-detail-row{padding:8px 10px}}@media(hover:hover){.category-card:hover{transform:translateY(-3px)}}@media(hover:none){.category-card:active{transform:scale(.98)}}.investment-item{background:var(--dm-surface);padding:var(--space-6);border-radius:var(--radius-lg);margin-bottom:16px;display:flex;justify-content:space-between;align-items:flex-start;box-shadow:var(--shadow-focus);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);position:relative;overflow:hidden}.investment-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--dm-brand-solid);transition:width .3s ease}.investment-item:hover{box-shadow:var(--shadow-hover)}.investment-item:hover:before{width:8px}.investment-info{flex:1}.investment-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:16px;flex-wrap:wrap}.investment-name{font-size:20px;font-weight:700;color:var(--color-primary-700);margin:0}.investment-type-badge{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:6px 14px;border-radius:var(--radius-xl);font-size:12px;font-weight:600;box-shadow:var(--shadow-md);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.investment-type-badge:hover{transform:scale(1.05);box-shadow:var(--shadow-hover)}.investment-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-3)}.investment-detail{display:flex;flex-direction:column;gap:4px}.detail-subtext{font-size:12px;color:var(--dm-text-tertiary);font-style:italic;margin-left:5px}.investment-amount{color:var(--color-primary-600);font-size:18px;font-weight:700}.investment-return{color:var(--dm-brand-text);font-size:18px;font-weight:700}.investment-progress-container{grid-column:1 / -1;margin-top:16px;padding:var(--space-4);background:var(--dm-surface-hover);border-radius:var(--radius-md);border:2px solid var(--dm-border)}.investment-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.progress-label{font-size:13px;font-weight:700;color:var(--dm-text-secondary);text-transform:uppercase;letter-spacing:.5px}.progress-status{font-size:13px;font-weight:700}.investment-progress-bar{width:100%;height:12px;background:var(--dm-border);border-radius:6px;overflow:hidden;box-shadow:var(--shadow-inner);position:relative}.investment-progress-fill{height:100%;border-radius:6px;transition:width .8s var(--ease-standard);box-shadow:0 2px 8px var(--color-black-alpha-15);position:relative;overflow:hidden}.investment-progress-info{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:12px}.progress-days-elapsed{color:var(--dm-text-tertiary);font-weight:600}.progress-percentage{color:var(--dm-text-tertiary);font-weight:700;font-size:14px}.investment-actions{display:flex;flex-direction:column;gap:var(--space-2);width:340px;flex-shrink:0}.actions-row{display:flex;flex-direction:row;gap:var(--space-2);width:100%}.investment-actions .actions-row>button{flex:1;min-width:0;width:auto}.insight-subtext-container{margin-top:12px;width:100%;display:flex;flex-direction:column;gap:6px}.insight-subtext-line{display:flex;align-items:center;gap:var(--space-2);font-size:13px;color:var(--dm-text-tertiary);font-weight:600;background:var(--color-success-tint);padding:8px 12px;border-radius:var(--radius-default);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.insight-subtext-line:hover{background:var(--color-success-tint);transform:translate(2px)}.insight-subtext-icon{font-size:16px;flex-shrink:0}.export-investments-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-md);cursor:pointer;font-size:16px;font-weight:600;display:flex;align-items:center;gap:var(--space-2);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:var(--shadow-success-glow);position:relative;overflow:hidden}.export-investments-btn:hover{box-shadow:var(--shadow-success-glow-lg);background:var(--dm-brand-solid)}.export-investments-btn:active{transform:translateY(0);box-shadow:var(--shadow-success-glow)}.search-btn svg{color:var(--dm-text-tertiary);transition:color var(--duration-feedback) var(--ease-out)}.search-btn:hover svg{color:var(--color-primary-600)}@media(max-width:768px){.investment-details{grid-template-columns:1fr}.investment-item{flex-direction:column;gap:var(--space-4)}.investment-actions{width:100%}.investment-actions .actions-row>button{padding:10px 6px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.investment-progress-container{padding:var(--space-3)}.investment-progress-header{flex-direction:column;align-items:flex-start;gap:6px}.progress-label,.progress-status{font-size:12px}.investment-progress-bar{height:10px}.investment-progress-info{font-size:11px}.progress-percentage{font-size:13px}}.edit-investment-modal-overlay{position:fixed;inset:0;background:var(--dm-modal-backdrop);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease;padding:var(--space-5)}.edit-investment-modal-overlay.active{opacity:1}.edit-investment-modal{background:var(--dm-surface);border-radius:var(--radius-xl);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-modal);transform:scale(.9) translateY(20px);transition:transform .3s ease}.edit-investment-modal-overlay.active .edit-investment-modal{transform:scale(1) translateY(0)}.edit-investment-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6) 28px;border-bottom:2px solid var(--color-gray-200);background:var(--dm-brand-solid);border-radius:var(--radius-xl) 20px 0 0}.edit-investment-modal-header h2{margin:0;color:#fff;font-size:22px;font-weight:700}.edit-investment-modal-header h2:after{display:none}.edit-investment-modal-close{background:var(--color-white-alpha-20);border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;padding:0}.edit-investment-modal-close:hover{background:var(--color-white-alpha-30);transform:rotate(90deg)}.edit-investment-modal-close svg{color:#fff}.edit-investment-form{padding:28px}.edit-investment-modal-actions{display:flex;gap:var(--space-3);margin-top:28px;padding-top:20px;border-top:2px solid var(--color-gray-200)}.edit-investment-modal-actions button{flex:1;padding:14px 24px;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:none}.cancel-btn{background:var(--color-gray-200);color:var(--dm-text-tertiary)}.cancel-btn:hover{background:var(--color-gray-300);box-shadow:0 4px 12px var(--color-black-alpha-10)}.save-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);box-shadow:var(--shadow-hover)}.save-btn:hover{box-shadow:var(--shadow-hover-lg)}.edit-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-info-tint)}.end-btn{background:var(--color-secondary-600);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:700;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:var(--shadow-warning);text-transform:uppercase;letter-spacing:.5px}.end-btn:hover{background:var(--color-secondary-700);box-shadow:var(--shadow-warning-lg)}.end-btn:active{transform:translateY(0)}.restore-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-success-tint-stronger)}.restore-btn:hover{background:var(--dm-brand-solid);box-shadow:var(--shadow-hover)}.restore-btn:active{transform:translateY(0)}.investment-actions .delete-btn{background:var(--color-error-600);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-error-tint-strong)}.investment-actions .delete-btn:hover{background:var(--color-error-700);box-shadow:0 4px 12px var(--color-error-tint-strong)}.investment-actions .delete-btn:active{transform:translateY(0)}@media(max-width:768px){.edit-investment-modal{max-height:95vh;margin:10px}.edit-investment-modal-header,.edit-investment-form{padding:var(--space-5)}.edit-investment-modal-actions{flex-direction:column}.edit-investment-modal-actions button{width:100%}}.search-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--dm-modal-backdrop);z-index:var(--z-modal);display:none;align-items:center;justify-content:center;padding:var(--space-5);animation:fadeIn .3s ease}.search-modal-overlay[style*="display: flex"]{display:flex!important}.search-modal-overlay .search-modal{background:var(--dm-surface);border-radius:var(--radius-2xl);width:100%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px var(--color-black-alpha-30);animation:slideUp .3s ease;overflow:hidden;position:relative}.search-modal-overlay .search-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6) 28px;border-bottom:2px solid var(--color-gray-200);background:var(--dm-brand-solid);flex-shrink:0;gap:var(--space-5)}.search-modal-overlay .search-modal-header h2{margin:0;color:#fff;font-size:22px;font-weight:700;flex:1}.search-modal-overlay .search-modal-close{background:var(--color-white-alpha-20);border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;padding:0;flex-shrink:0}.search-modal-overlay .search-modal-close:hover{background:var(--color-white-alpha-30);transform:rotate(90deg)}.search-modal-overlay .search-modal-close svg{color:#fff}.search-modal-overlay .search-modal-body{padding:var(--space-6) 28px;overflow-y:auto;flex:1}.search-modal-overlay .search-input-container{position:relative;margin-bottom:20px}.search-modal-overlay .search-input-container input{width:100%;padding:var(--space-4) 50px 16px 20px;border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);font-size:16px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;background:var(--color-gray-50);box-sizing:border-box}.search-modal-overlay .search-input-container input:focus{border-color:var(--color-primary-600);background:var(--dm-surface);box-shadow:0 0 0 4px var(--color-primary-200)}.search-modal-overlay .clear-search-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:var(--color-gray-200);border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;padding:0}.search-modal-overlay .clear-search-btn:hover{background:var(--color-gray-300);transform:translateY(-50%) scale(1.1)}.search-modal-overlay .search-filters-toggle{margin-bottom:20px}.search-modal-overlay .filters-toggle-btn{background:var(--color-gray-50);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-3) 20px;display:flex;align-items:center;gap:10px;cursor:pointer;font-size:15px;font-weight:600;color:var(--dm-text-tertiary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;width:100%;justify-content:center;position:relative}.search-modal-overlay .filters-toggle-btn:hover{border-color:var(--color-primary-600);color:var(--color-primary-600);box-shadow:var(--shadow-hover)}.search-modal-overlay .filters-toggle-btn.active{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border-color:var(--color-primary-600)}.search-modal-overlay .filters-count-badge{background:var(--color-error-500);color:var(--color-white);border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;position:absolute;right:12px}.search-modal-overlay .search-filters{background:var(--color-gray-50);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:24px;border:2px solid var(--color-gray-200)}.search-modal-overlay .filters-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);margin-bottom:20px}.search-modal-overlay .filter-group{display:flex;flex-direction:column;gap:var(--space-2)}.search-modal-overlay .filter-group label{font-size:13px;font-weight:600;color:var(--dm-text-tertiary);text-transform:uppercase;letter-spacing:.5px}.search-modal-overlay .filter-group input,.search-modal-overlay .filter-group select{padding:10px 14px;border:2px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:14px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;background:var(--dm-surface)}.search-modal-overlay .filter-group input:focus,.search-modal-overlay .filter-group select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}.search-modal-overlay .filters-actions{display:flex;gap:var(--space-3)}.search-modal-overlay .apply-filters-btn,.search-modal-overlay .clear-filters-btn{flex:1;padding:var(--space-3) 20px;border-radius:var(--radius-md);font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:none}.search-modal-overlay .apply-filters-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);box-shadow:var(--shadow-hover)}.search-modal-overlay .apply-filters-btn:hover{box-shadow:var(--shadow-hover-lg)}.search-modal-overlay .clear-filters-btn{background:var(--color-gray-200);color:var(--dm-text-tertiary)}.search-modal-overlay .clear-filters-btn:hover{background:var(--color-gray-300)}.search-modal-overlay .search-results{max-height:500px;overflow-y:auto}.search-modal-overlay .search-placeholder{text-align:center;padding:60px 20px;color:var(--dm-text-tertiary);font-size:16px;font-weight:500}.search-modal-overlay .search-results-count{font-size:14px;font-weight:600;color:var(--color-primary-600);margin-bottom:16px;padding:10px 16px;background:var(--color-success-tint);border-radius:var(--radius-md);display:inline-block}.search-modal-overlay .search-no-results{text-align:center;padding:60px 20px}.search-modal-overlay .search-no-results-icon{font-size:64px;margin-bottom:16px;opacity:.5}.search-modal-overlay .search-no-results-text{color:var(--dm-text-tertiary);font-size:16px;font-weight:600}.search-modal-overlay .search-result-item{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:12px;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);cursor:pointer}.search-modal-overlay .search-result-item:hover{box-shadow:var(--shadow-hover)}.search-modal-overlay .investment-result-item{cursor:default}.search-modal-overlay .search-result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:var(--space-4)}.search-modal-overlay .search-result-name{font-size:18px;font-weight:700;color:var(--dm-text-secondary);flex:1}.search-modal-overlay .search-result-name mark{background:var(--color-success-tint-strong);color:var(--color-primary-600);padding:2px 6px;border-radius:var(--radius-sm)}.search-modal-overlay .search-result-amount{font-size:20px;font-weight:700;color:var(--color-primary-600);white-space:nowrap}.search-modal-overlay .search-result-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.search-modal-overlay .investment-meta-item{font-size:13px;color:var(--dm-text-tertiary);font-weight:600;background:var(--color-gray-50);padding:6px 12px;border-radius:var(--radius-default)}.search-modal-overlay .search-result-notes{margin-top:12px;padding:var(--space-3);background:var(--color-gray-50);border-radius:var(--radius-md);font-size:14px;color:var(--dm-text-tertiary)}@media(max-width:768px){.search-modal-overlay{padding:10px}.search-modal-overlay .search-modal{max-height:90vh}.search-modal-overlay .search-modal-header,.search-modal-overlay .search-modal-body{padding:var(--space-5)}.search-modal-overlay .filters-grid{grid-template-columns:1fr}.search-modal-overlay .filters-actions{flex-direction:column}.search-modal-overlay .search-result-header{flex-direction:column;align-items:flex-start}.search-modal-overlay .search-result-amount{font-size:18px}}.investment-popup-overlay{position:fixed;inset:0;background:var(--dm-modal-backdrop);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease;padding:var(--space-5)}.investment-popup-overlay.active{opacity:1}.investment-popup{background:var(--dm-surface);border-radius:var(--radius-2xl);max-width:800px;width:100%;max-height:85vh;overflow:hidden;box-shadow:0 20px 60px var(--color-black-alpha-30);transform:scale(.9) translateY(20px);transition:transform .3s ease;display:flex;flex-direction:column}.investment-popup-overlay.active .investment-popup{transform:scale(1) translateY(0)}.investment-popup-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6) 28px;border-bottom:2px solid var(--color-gray-200);background:var(--dm-brand-solid);flex-shrink:0}.investment-popup-header h2{margin:0;color:#fff;font-size:24px;font-weight:700}.investment-popup-header h2:after{display:none}.investment-popup-close{background:var(--color-white-alpha-20);border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;padding:0}.investment-popup-close:hover{background:var(--color-white-alpha-30);transform:rotate(90deg)}.investment-popup-close svg{color:#fff}.investment-popup-body{padding:28px;overflow-y:auto;flex:1}.popup-type-section{margin-bottom:32px}.popup-type-section:last-child{margin-bottom:0}.popup-type-title{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) 20px;background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border-radius:var(--radius-md);margin-bottom:16px;font-size:18px;font-weight:700}.popup-type-title:after{display:none}.popup-type-total{font-size:20px;font-weight:700}.popup-investments-list{display:flex;flex-direction:column;gap:var(--space-3)}.popup-investment-item{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-4) 20px;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4)}.popup-investment-item:hover{box-shadow:var(--shadow-hover)}.popup-investment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:var(--space-4)}.popup-investment-rate{font-size:1.2em;font-weight:700;white-space:nowrap}.popup-investment-details{display:flex;flex-direction:column;gap:var(--space-2)}.popup-investment-detail{display:flex;justify-content:space-between;align-items:center;font-size:14px}.popup-detail-label{color:var(--dm-text-tertiary);font-weight:600}.popup-detail-value{color:var(--dm-text-secondary);font-weight:700}.popup-summary-section{background:var(--color-gray-50);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:20px;border:2px solid var(--color-gray-200)}.popup-summary-section .popup-summary-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0}.popup-summary-section .popup-summary-item:not(:last-child){border-bottom:1px solid var(--color-gray-200)}.popup-summary-section .popup-summary-label{font-size:14px;color:var(--dm-text-tertiary);font-weight:600}.popup-summary-section .popup-summary-value{font-size:18px;font-weight:700;color:var(--dm-text-secondary)}.popup-divider{height:2px;background:linear-gradient(90deg,transparent,var(--color-gray-200),transparent);margin:20px 0}.popup-investment-info{flex:1;display:flex;flex-direction:column;gap:6px}.popup-investment-name{font-size:16px;font-weight:700;color:var(--dm-text-secondary)}.popup-investment-amount{font-size:18px;font-weight:700;color:var(--color-primary-600);white-space:nowrap}.popup-investment-return-type{font-size:12px;color:var(--dm-text-tertiary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.popup-investment-values{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.popup-investment-return{font-size:18px;font-weight:700;color:var(--dm-brand-text)}.popup-investment-profit{font-size:14px;font-weight:600;padding:4px 10px;border-radius:var(--radius-default)}.popup-investment-profit.positive{color:var(--dm-brand-text);background:var(--color-success-tint)}.popup-investment-profit.negative{color:var(--color-error-500);background:var(--color-error-tint)}.popup-section-title{font-size:18px;font-weight:700;color:var(--dm-text-secondary);margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--color-gray-200)}.popup-section-title:after{display:none}.popup-toggle-no-maturity{width:100%;background:var(--color-gray-50);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);padding:14px 20px;font-size:15px;font-weight:600;color:var(--dm-text-tertiary);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.popup-toggle-no-maturity:hover{border-color:var(--color-primary-600);color:var(--color-primary-600);box-shadow:var(--shadow-hover)}.popup-no-maturity-section{margin-bottom:24px}.popup-investment-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.popup-maturity-date{font-size:13px;color:var(--dm-text-tertiary);font-weight:600;background:var(--color-gray-50);padding:4px 10px;border-radius:6px}.popup-days-remaining{font-size:13px;font-weight:600;padding:4px 10px;border-radius:6px;background:var(--color-gray-50);color:var(--dm-text-tertiary)}.popup-days-remaining.warning{background:var(--color-warning-tint);color:var(--color-secondary-500)}.popup-days-remaining.expired{background:var(--color-error-tint);color:var(--color-error-500)}.popup-investment-item.past-maturity{opacity:.8}.insight-card.clickable{cursor:pointer;position:relative}.insight-card.clickable:after{content:"👆";position:absolute;top:12px;right:12px;font-size:18px;opacity:0;transition:opacity .3s ease}.insight-card.clickable:hover:after{opacity:.6}.insight-card.clickable:hover{box-shadow:var(--shadow-hover-lg)}@media(max-width:768px){.investment-popup{max-height:90vh;margin:10px}.investment-popup-header{padding:var(--space-5)}.investment-popup-header h2{font-size:20px}.investment-popup-body{padding:var(--space-5)}.popup-type-title{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.popup-investment-item{flex-direction:column;align-items:flex-start}.popup-investment-values{width:100%;flex-direction:row;justify-content:space-between;align-items:center}.popup-investment-meta{flex-direction:column;align-items:flex-start}.popup-investment-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.popup-investment-rate{font-size:1.1em}.popup-summary-section{padding:var(--space-4)}.popup-summary-section .popup-summary-item{flex-direction:column;align-items:flex-start;gap:4px}}.investments-lista{margin-top:40px}.investments-lista h3{font-size:28px;font-weight:700;margin-bottom:32px;color:var(--dm-text-primary);position:relative;padding-bottom:16px}.investments-lista h3:after{content:"";position:absolute;bottom:0;left:0;width:80px;height:4px;background:var(--dm-brand-solid);border-radius:2px}.liquidated-section{margin-top:48px;padding-top:32px;border-top:2px solid var(--color-gray-200)}.liquidated-section.no-liquidated-investments{display:none!important}.liquidated-section h3{color:var(--dm-text-tertiary)}.liquidated-section h3:after{background:var(--color-gray-500)}.investment-item.liquidated{opacity:.9;background:var(--color-success-50)}.investment-item.liquidated:before{background:var(--dm-brand-solid)}.investment-liquidated-badge{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:4px 12px;border-radius:var(--radius-lg);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:var(--shadow-sm)}.profit-positive{color:var(--dm-brand-text)!important;font-weight:700}.profit-negative{color:var(--dm-error-text)!important;font-weight:700}.liquidation-section{margin-top:24px;padding:var(--space-5);background:var(--color-gray-50);border-radius:var(--radius-md);border:2px solid var(--color-gray-200)}.liquidation-section-title{font-size:16px;font-weight:700;color:var(--dm-text-tertiary);margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid var(--color-gray-200)}.checkbox-group{margin-bottom:16px}.checkbox-label{display:flex;align-items:center;gap:var(--space-3);cursor:pointer;font-size:15px;font-weight:600;color:var(--dm-text-secondary);transition:color .2s ease;-webkit-user-select:none;user-select:none}.checkbox-label:hover{color:var(--color-primary-600)}.checkbox-label input[type=checkbox]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.checkbox-custom{position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;background:var(--dm-surface);border:2px solid var(--color-gray-300);border-radius:6px;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.checkbox-label:hover .checkbox-custom{border-color:var(--color-primary-500);box-shadow:0 0 0 4px var(--color-primary-50)}.checkbox-label input[type=checkbox]:focus-visible+.checkbox-custom{border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-100)}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{background:var(--dm-brand-solid);border-color:var(--color-primary-700)}.checkbox-label input[type=checkbox]:checked+.checkbox-custom:after{content:"";width:6px;height:11px;border-right:2px solid var(--dm-text-on-brand);border-bottom:2px solid var(--dm-text-on-brand);transform:rotate(45deg) translate(-1px,-1px)}.checkbox-label input[type=checkbox]:checked~*{color:var(--color-primary-700)}.liquidation-fields{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-gray-200);animation:fadeIn .3s ease}.liquidation-fields .form-group{margin-bottom:16px}.liquidation-fields .form-group:last-child{margin-bottom:0}.add-capital-modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);opacity:0;visibility:hidden;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.add-capital-modal-overlay.active{opacity:1;visibility:visible}.add-capital-modal{background:var(--dm-surface);border-radius:var(--radius-lg);width:90%;max-width:450px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px var(--color-black-alpha-30);transform:scale(.9) translateY(20px);transition:transform .3s ease}.add-capital-modal-overlay.active .add-capital-modal{transform:scale(1) translateY(0)}.add-capital-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5);border-bottom:1px solid var(--color-gray-200);background:var(--dm-brand-solid);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.add-capital-modal-header h2{margin:0;color:#fff;font-size:18px;font-weight:600}.add-capital-modal-close{background:var(--color-white-alpha-20);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.add-capital-modal-close:hover{background:var(--color-white-alpha-30)}.add-capital-modal-body{padding:var(--space-5)}.add-capital-investment-info{background:var(--color-success-50);border:1px solid var(--color-success-300);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.add-capital-investment-name{font-weight:700;color:var(--color-success-800);font-size:16px}.add-capital-investment-current{font-size:14px;color:var(--color-success-700)}.add-capital-liquidity-info{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-4);display:flex;justify-content:space-between;align-items:center}.add-capital-liquidity-label{font-size:13px;color:var(--color-accent)}.add-capital-liquidity-value{font-weight:600;color:var(--color-primary-600)}.add-capital-modal .form-group{margin-bottom:var(--space-4)}.add-capital-modal .form-group label{display:block;font-weight:600;margin-bottom:var(--space-2);color:var(--dm-text-secondary);font-size:14px}.amount-input-group{display:flex;align-items:center;border:2px solid var(--color-gray-200);border-radius:var(--radius-default);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.amount-input-group:focus-within{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}.amount-input-group .currency-prefix{background:var(--color-gray-100);padding:var(--space-3);color:var(--color-accent);font-weight:600;border-right:1px solid var(--color-gray-200)}.amount-input-group input{flex:1;border:none;padding:var(--space-3);font-size:16px}.add-capital-modal .funds-source-options{display:flex;flex-direction:column;gap:var(--space-2)}.add-capital-modal .radio-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-default);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;background:var(--color-gray-50);border:2px solid transparent}.add-capital-modal .radio-option:hover{background:var(--color-gray-100)}.add-capital-modal .radio-option:has(input:checked){background:var(--color-success-50);border-color:var(--color-primary-600)}.add-capital-modal .radio-option input[type=radio]{accent-color:var(--color-primary-600);width:18px;height:18px;cursor:pointer}.add-capital-modal .radio-label{font-size:14px;color:var(--dm-text-secondary)}.add-capital-modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-gray-200)}.add-capital-modal-actions .cancel-btn{background:var(--color-gray-200);color:var(--color-accent);padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-default);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.add-capital-modal-actions .cancel-btn:hover{background:var(--color-gray-300)}.add-capital-modal-actions .save-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-default);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.add-capital-modal-actions .save-btn:hover{box-shadow:var(--shadow-hover)}.investment-actions .invest-btn{background:var(--color-secondary-600);color:#fff;border:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-default);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;font-size:13px}.investment-actions .invest-btn:hover{box-shadow:0 4px 12px var(--color-warning-tint)}.investment-actions .withdraw-btn{background:var(--color-purple-700);color:#fff;border:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-default);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;font-size:13px}.investment-actions .withdraw-btn:hover{box-shadow:0 4px 12px var(--color-purple-tint)}.withdraw-capital-modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);opacity:0;visibility:hidden;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.withdraw-capital-modal-overlay.active{opacity:1;visibility:visible}.withdraw-capital-modal{background:var(--dm-surface);border-radius:var(--radius-lg);width:90%;max-width:450px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px var(--color-black-alpha-30);transform:scale(.9) translateY(20px);transition:transform .3s ease}.withdraw-capital-modal-overlay.active .withdraw-capital-modal{transform:scale(1) translateY(0)}.withdraw-capital-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5);border-bottom:1px solid var(--color-gray-200);background:var(--color-purple-700);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.withdraw-capital-modal-header h2{margin:0;color:#fff;font-size:18px;font-weight:600}.withdraw-capital-modal-close{background:var(--color-white-alpha-20);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.withdraw-capital-modal-close:hover{background:var(--color-white-alpha-30)}.withdraw-capital-modal-body{padding:var(--space-5)}.withdraw-capital-investment-info{background:var(--color-purple-50);border:1px solid var(--color-purple-300);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.withdraw-capital-investment-name{font-weight:700;color:var(--color-purple-800);font-size:16px}.withdraw-capital-investment-current{font-size:14px;color:var(--color-purple-700)}.withdraw-capital-info-box{background:var(--color-warning-50);border:1px solid var(--color-warning-300);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-4)}.withdraw-capital-info-box p{margin:0;font-size:13px;color:var(--color-warning-800);line-height:1.5}.withdraw-capital-modal .form-group{margin-bottom:var(--space-4)}.withdraw-capital-modal .form-group label{display:block;font-weight:600;margin-bottom:var(--space-2);color:var(--dm-text-secondary);font-size:14px}.withdraw-max-hint{display:block;font-size:12px;color:var(--color-accent);margin-top:var(--space-2)}.withdraw-capital-modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-gray-200)}.withdraw-capital-modal-actions .cancel-btn{background:var(--color-gray-200);color:var(--color-accent);padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-default);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.withdraw-capital-modal-actions .cancel-btn:hover{background:var(--color-gray-300)}.withdraw-capital-modal-actions .withdraw-btn-action{background:var(--color-purple-700);color:#fff;padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-default);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.withdraw-capital-modal-actions .withdraw-btn-action:hover{box-shadow:0 4px 12px var(--color-purple-tint)}@media(hover:hover){.insight-card:hover{transform:translateY(-3px)}.insight-card.clickable:hover{transform:translateY(-4px)}}@media(hover:none){.insight-card:active,.investment-item:active{transform:scale(.98)}}.returns-actions-row{display:flex;gap:var(--space-2)}.add-return-btn,.transactions-btn{flex:1;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-md);font-weight:600;font-size:14px;cursor:pointer;color:#fff;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.add-return-btn{background:var(--color-success-700)}.transactions-btn{background:var(--dm-brand-solid)}.add-return-btn:hover,.transactions-btn:hover{transform:translateY(-1px);box-shadow:0 4px 10px var(--color-black-alpha-30)}.add-return-modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.add-return-modal-overlay.active{opacity:1;visibility:visible}.add-return-modal{background:var(--dm-surface);border-radius:var(--radius-lg);width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px var(--color-black-alpha-30);transform:scale(.9) translateY(20px);transition:transform .3s ease}.add-return-modal-overlay.active .add-return-modal{transform:scale(1) translateY(0)}.add-return-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5);border-bottom:1px solid var(--color-gray-200);background:var(--color-success-700);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.add-return-modal-header h2{margin:0;color:#fff;font-size:18px;font-weight:600}.add-return-modal-close{background:var(--color-white-alpha-20);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:background-color .2s ease}.add-return-modal-close:hover{background:var(--color-white-alpha-30)}.add-return-modal-body{padding:var(--space-5)}.add-return-investment-info{background:var(--color-success-50);border:1px solid var(--color-success-300);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.add-return-investment-name{font-weight:700;color:var(--color-success-800);font-size:16px}.add-return-investment-current{font-size:13px;color:var(--color-success-700)}.add-return-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4)}.form-hint{margin:4px 0 0;font-size:12px;color:var(--dm-text-tertiary)}.transactions-modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.transactions-modal-overlay.active{opacity:1;visibility:visible}.transactions-modal{background:var(--dm-surface);border-radius:var(--radius-lg);width:95%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px var(--color-black-alpha-30);transform:scale(.9) translateY(20px);transition:transform .3s ease}.transactions-modal-overlay.active .transactions-modal{transform:scale(1) translateY(0)}.transactions-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5);border-bottom:1px solid var(--color-gray-200);background:var(--dm-surface-brand);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.transactions-modal-header h2{margin:0;color:#fff;font-size:18px;font-weight:600}.transactions-modal-close{background:var(--color-white-alpha-20);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:background-color .2s ease}.transactions-modal-close:hover{background:var(--color-white-alpha-30)}.transactions-modal-investment-info{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-gray-100);background:var(--color-gray-50)}.transactions-investment-name{font-weight:700;color:var(--dm-text-primary);font-size:15px}.transactions-modal-body{padding:var(--space-5)}.transactions-list{display:flex;flex-direction:column;gap:var(--space-3)}.transaction-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--dm-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);border-left:4px solid var(--color-gray-300);transition:box-shadow .2s ease}.transaction-item:hover{box-shadow:0 2px 8px var(--color-black-alpha-30)}.transaction-item.transaction-initial{border-left-color:var(--color-info-600)}.transaction-item.transaction-add-capital{border-left-color:var(--color-success-500)}.transaction-item.transaction-withdraw{border-left-color:var(--color-purple-600)}.transaction-item.transaction-return{border-left-color:var(--color-success-600)}.transaction-item.transaction-return-reinvested{border-left-color:var(--color-secondary-500)}.transaction-icon{font-size:24px;flex-shrink:0;width:40px;text-align:center}.transaction-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.transaction-type-badge{font-weight:600;font-size:14px;color:var(--dm-text-primary)}.transaction-date,.transaction-source,.transaction-notes{font-size:12px;color:var(--dm-text-tertiary)}.transaction-notes{font-style:italic}.transaction-amount{font-weight:700;font-size:16px;white-space:nowrap;flex-shrink:0}.transaction-item.transaction-withdraw .transaction-amount{color:var(--color-purple-700)}.transaction-item.transaction-add-capital .transaction-amount,.transaction-item.transaction-initial .transaction-amount{color:var(--color-success-700)}.transaction-item.transaction-return .transaction-amount{color:var(--color-success-600)}.transaction-item.transaction-return-reinvested .transaction-amount{color:var(--dm-warning-text)}.transaction-item.investment-fee-item{border-left-color:var(--color-error-600)}.transaction-item.investment-fee-item .transaction-amount{color:var(--dm-error-text)}.recurring-returns-section,.investment-fees-section{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px dashed var(--color-gray-200)}.recurring-returns-title,.investment-fees-title{margin:0 0 var(--space-3);font-size:14px;font-weight:700;color:var(--dm-text-secondary);text-transform:uppercase;letter-spacing:.5px}.recurring-returns-list{display:flex;flex-direction:column;gap:var(--space-2)}.recurring-return-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-info-tint);border:1px solid var(--color-primary-200);border-left:4px solid var(--color-primary-500);border-radius:var(--radius-md)}.recurring-return-item.recurring-return-reinvested{border-left-color:var(--color-secondary-500);background:var(--color-warning-tint)}.recurring-return-icon{font-size:22px;flex-shrink:0;width:36px;text-align:center}.recurring-return-info{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.recurring-return-title{font-weight:600;font-size:14px;color:var(--dm-text-primary)}.recurring-return-meta{display:flex;flex-wrap:wrap;gap:6px}.recurring-frequency-badge{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--color-primary-100);color:var(--color-primary-700);font-size:11px;font-weight:600}.recurring-reinvested-badge{display:inline-block;padding:2px 8px;border-radius:999px;background:#f59e0b26;color:var(--dm-warning-text);font-size:11px;font-weight:600}.recurring-return-next{font-size:12px;color:var(--dm-text-tertiary)}.recurring-return-amount{font-weight:700;font-size:16px;white-space:nowrap;flex-shrink:0;color:var(--color-primary-700)}.recurring-return-item.recurring-return-reinvested .recurring-return-amount{color:var(--dm-warning-text)}.transaction-actions,.recurring-return-actions{display:flex;align-items:center;gap:4px;margin-left:8px;flex-shrink:0}.transaction-action-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--dm-text-tertiary);cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}.transaction-action-btn:hover{background:var(--color-gray-100);color:var(--dm-text-primary);border-color:var(--color-gray-200)}.transaction-action-btn:focus-visible{outline:2px solid var(--dm-brand-text);outline-offset:2px;border-color:var(--dm-brand-text)}.transaction-action-btn:active{transform:scale(.94)}.transaction-action-edit:hover{color:var(--color-primary-600);background:#6366f11a;border-color:#6366f14d}.transaction-action-delete:hover{color:var(--dm-error-text);background:#ef44441a;border-color:#ef44444d}@media(max-width:480px){.transaction-action-btn{width:28px;height:28px}.transaction-action-btn svg{width:14px;height:14px}}.edit-transaction-modal-overlay{position:fixed;inset:0;background:var(--dm-modal-backdrop);display:flex;align-items:center;justify-content:center;z-index:410;opacity:0;pointer-events:none;transition:opacity .25s ease}.edit-transaction-modal-overlay.active{opacity:1;pointer-events:auto}.edit-transaction-modal{background:var(--dm-modal-bg);border-radius:16px;width:min(92vw,460px);max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0f172a40,0 8px 20px #0f172a26;transform:translateY(12px);transition:transform .25s ease}.edit-transaction-modal-overlay.active .edit-transaction-modal{transform:translateY(0)}.edit-transaction-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px;border-bottom:1px solid var(--color-gray-100)}.edit-transaction-modal-header h2{margin:0;font-size:18px;font-weight:700;color:var(--dm-text-primary)}.edit-transaction-modal-close{background:transparent;border:none;cursor:pointer;color:var(--dm-text-tertiary);padding:4px;border-radius:8px;transition:background .18s ease}.edit-transaction-modal-close:hover{background:var(--color-gray-100)}.edit-transaction-modal-body{padding:16px 24px 24px}.edit-transaction-context{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--color-gray-50);border-radius:12px;margin-bottom:16px}.edit-transaction-investment-name{font-weight:600;color:var(--dm-text-primary);font-size:14px}.edit-transaction-type-badge{padding:2px 10px;border-radius:999px;background:var(--color-primary-100);color:var(--color-primary-700);font-size:12px;font-weight:600}.edit-transaction-form .form-group{margin-bottom:14px}.edit-transaction-form label{display:block;font-size:13px;font-weight:600;color:var(--dm-text-secondary);margin-bottom:6px}.edit-transaction-form input[type=number],.edit-transaction-form input[type=text],.edit-transaction-form input[type=date]{width:100%;padding:10px 12px;border:1px solid var(--color-gray-200);border-radius:10px;font-size:14px;color:var(--dm-input-text);background:var(--dm-input-bg)}.edit-transaction-form input:focus-visible{outline:2px solid var(--dm-brand-text);outline-offset:1px;border-color:var(--dm-brand-text)}.edit-transaction-form .amount-currency-group{display:flex;align-items:stretch;gap:8px}.edit-transaction-form .currency-static-tag{display:inline-flex;align-items:center;padding:0 12px;background:var(--color-gray-100);border:1px solid var(--color-gray-200);border-radius:10px;font-size:13px;font-weight:600;color:var(--dm-text-secondary);white-space:nowrap}.edit-transaction-form .radio-options{display:flex;flex-direction:column;gap:8px}.edit-transaction-form .radio-option{display:flex;align-items:center;gap:8px;font-weight:500;font-size:14px;color:var(--dm-text-secondary);cursor:pointer}.edit-transaction-hint{margin:8px 0 0;padding:10px 12px;background:var(--color-info-tint);border-left:3px solid var(--color-info-500);border-radius:8px;font-size:12px;color:var(--dm-text-secondary)}.edit-transaction-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--color-gray-100)}.edit-transaction-modal-actions .cancel-btn,.edit-transaction-modal-actions .save-btn{padding:10px 18px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:background .18s ease,transform .18s ease}.edit-transaction-modal-actions .cancel-btn{background:var(--color-gray-100);color:var(--dm-text-secondary);border:1px solid var(--color-gray-200)}.edit-transaction-modal-actions .cancel-btn:hover{background:var(--color-gray-200)}.edit-transaction-modal-actions .save-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none}.edit-transaction-modal-actions .save-btn:hover{transform:translateY(-1px);filter:brightness(1.04)}.financing-item{background:var(--dm-surface);padding:var(--space-6);border-radius:var(--radius-lg);margin-bottom:16px;display:flex;justify-content:space-between;align-items:flex-start;box-shadow:0 2px 8px var(--color-black-alpha-5);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);position:relative;overflow:hidden}.financing-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--color-error-600);transition:width .3s ease}.financing-item:hover{box-shadow:0 6px 20px var(--color-error-tint)}.financing-item:hover:before{width:8px}.financing-info{flex:1}.financing-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:16px;flex-wrap:wrap}.financing-name{font-size:20px;font-weight:700;color:var(--color-error-600);margin:0}.financing-type-badge{background:var(--color-error-600);color:#fff;padding:6px 14px;border-radius:var(--radius-xl);font-size:12px;font-weight:600;box-shadow:0 2px 8px var(--color-error-tint-strong);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.financing-type-badge:hover{transform:scale(1.05);box-shadow:0 4px 12px var(--color-error-tint-strong)}.financing-progress-section{margin-bottom:16px}.financing-progress-bar{width:100%;height:12px;background:var(--color-gray-200);border-radius:6px;overflow:hidden;margin-bottom:8px}.financing-progress-fill{height:100%;background:var(--dm-brand-solid);border-radius:6px;transition:width .5s ease}.financing-progress-text{font-size:13px;font-weight:600;color:var(--dm-text-tertiary);text-align:center}.financing-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-3)}.financing-detail{display:flex;flex-direction:column;gap:4px}.financing-amount{color:var(--color-error-500);font-size:18px;font-weight:700}.financing-total{color:var(--color-secondary-500);font-size:18px;font-weight:700}.financing-paid{color:var(--dm-brand-text);font-size:18px;font-weight:700}.financing-remaining{color:var(--color-purple-400);font-size:18px;font-weight:700}.financing-actions{display:flex;flex-direction:column;gap:var(--space-2)}.export-financings-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 24px;border-radius:var(--radius-md);cursor:pointer;font-size:16px;font-weight:600;display:flex;align-items:center;gap:var(--space-2);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 15px var(--color-success-tint-strong);position:relative;overflow:hidden}.export-financings-btn:hover{box-shadow:0 8px 25px var(--color-success-tint-stronger);background:var(--dm-brand-solid)}.export-financings-btn:active{transform:translateY(0);box-shadow:0 4px 15px var(--color-success-tint-strong)}.search-btn:hover{border-color:var(--color-error-500);box-shadow:0 6px 20px var(--color-error-tint-strong)}.search-btn:hover svg{color:var(--color-error-500)}@media(max-width:768px){.financing-details{grid-template-columns:1fr}.financing-item{flex-direction:column;gap:var(--space-4)}.financing-actions{width:100%;flex-direction:row}}.edit-financing-modal-overlay{position:fixed;inset:0;background:var(--dm-modal-backdrop);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease;padding:var(--space-5)}.edit-financing-modal-overlay.active{opacity:1}.edit-financing-modal{background:#fff;border-radius:var(--radius-xl);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px var(--color-black-alpha-30);transform:scale(.9) translateY(20px);transition:transform .3s ease}.edit-financing-modal-overlay.active .edit-financing-modal{transform:scale(1) translateY(0)}.edit-financing-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6) 28px;border-bottom:2px solid var(--dm-border);background:var(--color-error-600);border-radius:var(--radius-xl) 20px 0 0}.edit-financing-modal-header h2{margin:0;color:#fff;font-size:22px;font-weight:700}.edit-financing-modal-header h2:after{display:none}.edit-financing-modal-close{background:var(--color-white-alpha-20);border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;padding:0}.edit-financing-modal-close:hover{background:var(--color-white-alpha-30);transform:rotate(90deg)}.edit-financing-modal-close svg{color:#fff}.edit-financing-form{padding:28px}.edit-financing-modal-actions{display:flex;gap:var(--space-3);margin-top:28px;padding-top:20px;border-top:2px solid var(--dm-border)}.edit-financing-modal-actions button{flex:1;padding:14px 24px;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:none}.cancel-btn{background:var(--dm-border);color:var(--dm-text-tertiary)}.cancel-btn:hover{background:var(--dm-border-strong);box-shadow:0 4px 12px var(--color-black-alpha-10)}.save-btn{background:var(--color-error-600);color:#fff;box-shadow:0 4px 16px var(--color-error-tint-strong)}.save-btn:hover{box-shadow:0 8px 24px var(--color-error-tint-strong)}.edit-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-info-tint);width:100px}.edit-btn:hover{background:var(--dm-brand-solid);box-shadow:var(--shadow-primary-lg)}.edit-btn:active{transform:translateY(0)}.delete-btn{background:var(--color-error-600);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-error-tint-strong);width:100px}.delete-btn:hover{background:var(--color-error-700);box-shadow:0 4px 12px var(--color-error-tint-strong)}.delete-btn:active{transform:translateY(0)}@media(max-width:768px){.edit-financing-modal{max-height:95vh;margin:10px}.edit-financing-modal-header,.edit-financing-form{padding:var(--space-5)}.edit-financing-modal-actions{flex-direction:column}.edit-financing-modal-actions button{width:100%}}.financings-lista{margin-top:40px}.financings-lista h3{font-size:28px;font-weight:700;margin-bottom:32px;color:var(--dm-text-primary);position:relative;padding-bottom:16px}.financings-lista h3:after{content:"";position:absolute;bottom:0;left:0;width:80px;height:4px;background:var(--color-error-600);border-radius:2px}.settled-section{margin-top:48px;padding-top:32px;border-top:2px solid var(--dm-border)}.settled-section h3{color:var(--dm-text-tertiary)}.settled-section h3:after{background:var(--color-gray-500)}.settled-section.no-settled-financings{display:none!important}.financing-item.settled{opacity:.9;background:var(--color-success-50)}.financing-item.settled:before{background:var(--dm-brand-solid)}.financing-settled-badge{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:4px 12px;border-radius:var(--radius-lg);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 6px var(--color-success-tint-stronger)}.financing-progress-bar.settled .financing-progress-fill{background:var(--dm-brand-solid)}.financings-section-hidden{display:none!important}.financing-actions .end-btn{background:var(--color-secondary-600);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:700;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-warning-tint);width:100px;text-transform:uppercase;letter-spacing:.5px}.financing-actions .end-btn:hover{background:var(--color-secondary-700);box-shadow:0 4px 12px var(--color-warning-tint)}.financing-actions .end-btn:active{transform:translateY(0)}.financing-actions .restore-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-success-tint-stronger);width:100px}.financing-actions .restore-btn:hover{background:var(--dm-brand-solid);box-shadow:0 4px 12px var(--color-success-tint-stronger)}.financing-actions .restore-btn:active{transform:translateY(0)}@media(max-width:768px){.financing-actions{flex-wrap:wrap;gap:var(--space-2)}.financing-actions .end-btn,.financing-actions .restore-btn{flex:1;min-width:80px}.financing-actions .edit-btn,.financing-actions .end-btn,.financing-actions .restore-btn,.financing-actions .delete-btn{width:auto;min-width:70px;padding:8px 12px;font-size:11px}}@media(hover:hover){.financing-item:hover{transform:translateY(-3px)}}@media(hover:none){.financing-item:active{transform:scale(.98)}}.financing-details-overlay{position:fixed;inset:0;background:var(--color-black-alpha-70);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease;padding:var(--space-5);overflow-y:auto}.financing-details-overlay.active{opacity:1}.financing-details-container{background:#fff;border-radius:var(--radius-md);max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px var(--color-black-alpha-30);transform:scale(.9);transition:transform .3s ease}.financing-details-overlay.active .financing-details-container{transform:scale(1)}.financing-details-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5) 24px;border-bottom:1px solid var(--dm-border)}.financing-details-header h2{margin:0;font-size:1.5rem;color:var(--dm-text-primary)}.financing-details-header .close-btn{background:none;border:none;cursor:pointer;padding:8px;border-radius:var(--radius-default);transition:background .2s;color:var(--dm-text-tertiary)}.financing-details-header .close-btn:hover{background:var(--dm-border-subtle);color:var(--dm-text-primary)}.financing-details-content{padding:var(--space-6);overflow-y:auto;flex:1}.financing-details-modal h3{margin:0 0 8px;font-size:1.25rem;color:var(--dm-text-primary)}.modal-description{margin:0 0 24px;color:var(--dm-text-tertiary);font-size:.95rem}.financing-type-group{margin-bottom:24px;border:1px solid var(--dm-border);border-radius:var(--radius-default);overflow:hidden}.type-header{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)!important;padding:var(--space-3) 16px;margin:0;font-size:1rem;font-weight:600}.type-items{padding:var(--space-3)}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3);border-bottom:1px solid var(--dm-border-subtle);transition:background .2s}.detail-item:last-child{border-bottom:none}.detail-item:hover{background:var(--dm-surface-hover)}.item-name{font-weight:500;color:var(--dm-text-primary)}.item-value{font-weight:600;color:var(--color-primary-600);font-size:1.05rem}.item-info{display:flex;flex-direction:column;gap:4px}.item-subtext{font-size:.85rem;color:var(--dm-text-tertiary)}.item-values{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.item-interest{font-size:.85rem;font-weight:500}.type-total{display:flex;justify-content:space-between;padding:var(--space-3) 16px;background:var(--dm-surface-hover);border-top:2px solid var(--dm-border);font-size:1.05rem}.financing-list{display:flex;flex-direction:column;gap:var(--space-4)}.detail-item-extended{border:1px solid var(--dm-border);border-radius:var(--radius-default);padding:var(--space-4);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.detail-item-extended:hover{box-shadow:0 4px 12px var(--color-black-alpha-10);border-color:var(--color-primary-600)}.detail-item-extended.completed{background:var(--color-success-50);border-color:var(--color-success-300)}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.item-type-badge{background:var(--color-primary-600);color:#fff!important;padding:4px 12px;border-radius:var(--radius-md);font-size:.8rem;font-weight:500}.item-progress{display:flex;align-items:center;gap:var(--space-3);margin-bottom:12px}.progress-bar{flex:1;height:8px;background:var(--color-gray-200);border-radius:var(--radius-sm);overflow:hidden}.progress-fill{height:100%;background:var(--dm-brand-solid);transition:width .3s ease}.progress-fill.completed{background:var(--dm-brand-solid)}.progress-text{font-weight:600;color:var(--color-primary-600);min-width:50px;text-align:right}.progress-text.completed{color:var(--dm-brand-text)}.item-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3)}.stat{display:flex;flex-direction:column;gap:4px}.stat-label{font-size:.85rem;color:var(--dm-text-tertiary)}.stat-value{font-weight:600;color:var(--dm-text-primary);font-size:1rem}.stat-value.paid{color:var(--dm-brand-text)}.stat-value.remaining{color:var(--color-secondary-500)}.stat-value.completed{color:var(--dm-brand-text)}.progress-section{margin-bottom:24px}.section-title{margin:0 0 16px;font-size:1.1rem;color:var(--dm-text-primary);display:flex;align-items:center;gap:var(--space-2)}.completed-section{border:1px solid var(--dm-border);border-radius:var(--radius-default);padding:var(--space-4);background:var(--dm-surface-hover)}.section-toggle{width:100%;background:none;border:none;cursor:pointer;padding:0;margin-bottom:16px;display:flex;align-items:center;gap:var(--space-3);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.section-toggle:hover{opacity:.8}.toggle-icon{font-size:.9rem;transition:transform .3s ease;color:var(--color-primary-600)}.completed-section.expanded .toggle-icon{transform:rotate(90deg)}.collapsible{max-height:0;overflow:hidden;transition:max-height .3s ease}.completed-section.expanded .collapsible{max-height:2000px}@media(max-width:768px){.financing-details-container{max-width:100%;max-height:100vh;border-radius:0}.financing-details-content{padding:var(--space-4)}.item-stats{grid-template-columns:1fr}.type-total{flex-direction:column;gap:var(--space-2);align-items:flex-start}}.insight-card{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.insight-card:hover{box-shadow:0 4px 12px var(--color-black-alpha-15)}.insight-card:active{transform:translateY(0)}.open-accounts-sections-filter{margin:20px 0;display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.open-account-item{background:var(--dm-surface);padding:var(--space-6);border-radius:var(--radius-lg);margin-bottom:16px;display:flex;justify-content:space-between;align-items:flex-start;box-shadow:0 2px 8px var(--color-black-alpha-5);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);position:relative;overflow:hidden}.open-account-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--color-secondary-600);transition:width .3s ease}.open-account-item:hover{box-shadow:0 6px 20px var(--color-warning-tint)}.open-account-item:hover:before{width:8px}.open-account-item.credit:before{background:var(--color-info-600)}.open-account-item.credit:hover{box-shadow:0 6px 20px var(--color-info-tint)}.open-account-item.closed{opacity:.9;background:var(--color-success-50)}.open-account-item.closed:before{background:var(--dm-brand-solid)}.open-account-info{flex:1}.open-account-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:16px;flex-wrap:wrap}.open-account-name{font-size:20px;font-weight:700;color:var(--color-secondary-700);margin:0}.open-account-item.credit .open-account-name{color:var(--color-info-600)}.open-account-type-badge{background:var(--color-secondary-600);color:#fff;padding:6px 14px;border-radius:var(--radius-xl);font-size:12px;font-weight:600;box-shadow:0 2px 8px var(--color-warning-tint);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.open-account-type-badge.credit{background:var(--color-info-600);box-shadow:0 2px 8px var(--color-info-tint)}.open-account-type-badge:hover{transform:scale(1.05)}.open-account-category-badge{background:var(--dm-border);color:var(--dm-text-secondary);padding:4px 12px;border-radius:var(--radius-lg);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.open-account-closed-badge{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:4px 12px;border-radius:var(--radius-lg);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 6px var(--color-success-tint-stronger)}.open-account-progress-section{margin-bottom:16px}.open-account-progress-bar{width:100%;height:12px;background:var(--color-gray-200);border-radius:6px;overflow:hidden;margin-bottom:8px}.open-account-progress-fill{height:100%;background:var(--dm-brand-solid);border-radius:6px;transition:width .5s ease}.open-account-progress-bar.closed .open-account-progress-fill{background:var(--dm-brand-solid)}.open-account-progress-text{font-size:13px;font-weight:600;color:var(--dm-text-secondary);text-align:center}.open-account-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-3)}.open-account-detail{display:flex;flex-direction:column;gap:4px}.open-account-detail.full-width{grid-column:1 / -1}.open-account-total{color:var(--dm-warning-text);font-size:18px;font-weight:700}.open-account-item.credit .open-account-total{color:var(--dm-info-text)}.open-account-paid{color:var(--dm-success-text);font-size:18px;font-weight:700}.open-account-remaining{color:var(--color-purple-700);font-size:18px;font-weight:700}[data-theme=dark] .open-account-remaining{color:var(--color-purple-400)}.notes-content{white-space:pre-wrap;font-size:14px}.open-account-actions{display:flex;flex-direction:column;gap:var(--space-2);min-width:100px}.open-account-actions .pay-btn{background:var(--color-secondary-800);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:700;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-warning-tint);width:100%;text-transform:uppercase;letter-spacing:.5px}.open-account-actions .pay-btn:hover{background:var(--color-secondary-900);box-shadow:0 4px 12px var(--color-warning-tint)}.open-account-actions .receive-btn{background:var(--color-info-700);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:700;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-info-tint);width:100%;text-transform:uppercase;letter-spacing:.5px}.open-account-actions .receive-btn:hover{background:var(--color-info-700);box-shadow:0 4px 12px var(--color-info-tint)}.open-account-actions .add-amount-btn{background:var(--color-purple-800);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-purple-tint);width:100%}.open-account-actions .add-amount-btn:hover{background:var(--color-purple-800);box-shadow:0 4px 12px var(--color-purple-tint-strong)}.open-account-actions .edit-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-info-tint);width:100%}.open-account-actions .edit-btn:hover{background:var(--dm-brand-solid);box-shadow:var(--shadow-primary-lg)}.open-account-actions .close-btn{background:var(--color-gray-600);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-gray-tint);width:100%}.open-account-actions .close-btn:hover{background:var(--color-gray-700);box-shadow:0 4px 12px var(--color-gray-tint)}.open-account-actions .restore-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-success-tint-stronger);width:100%}.open-account-actions .restore-btn:hover{background:var(--dm-brand-solid);box-shadow:0 4px 12px var(--color-success-tint-stronger)}.open-account-actions .delete-btn{background:var(--color-error-700);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-error-tint-strong);width:100%}.open-account-actions .delete-btn:hover{background:var(--color-error-700);box-shadow:0 4px 12px var(--color-error-tint-strong)}.open-account-actions .view-transactions-btn{background:var(--color-indigo-700);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:700;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard);box-shadow:0 2px 8px var(--color-indigo-tint);width:100%;text-transform:uppercase;letter-spacing:.5px}.open-account-actions .view-transactions-btn:hover{background:var(--color-indigo-700);box-shadow:0 4px 12px var(--color-indigo-tint-strong)}.linked-transactions-popup{display:flex;flex-direction:column;gap:20px}.linked-transactions-section{display:flex;flex-direction:column;gap:8px}.linked-transactions-section-title{font-size:15px;font-weight:700;padding:8px 12px;border-radius:8px}.linked-transactions-section-title.expense-title{background:var(--color-error-tint);color:var(--color-error-500)}.linked-transactions-section-title.income-title{background:var(--color-success-tint);color:var(--dm-brand-text)}.linked-transactions-list{display:flex;flex-direction:column;gap:4px}.linked-transactions-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:8px;background:var(--color-white-alpha-10);border:1px solid var(--color-white-alpha-10);gap:12px}.linked-transactions-item-left{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.linked-transactions-item-date{font-size:11px;color:var(--dm-text-tertiary);font-weight:600}.linked-transactions-item-desc{font-size:13px;color:var(--dm-border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.linked-transactions-item-cat{font-size:11px;color:var(--dm-text-tertiary);font-style:italic}.linked-transactions-item-amount{font-size:14px;font-weight:700;white-space:nowrap}.linked-transactions-item-amount.expense-amount{color:var(--color-error-500)}.linked-transactions-item-amount.income-amount{color:var(--dm-brand-text)}.linked-transactions-total{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:8px;font-weight:700;font-size:14px;margin-top:4px}.linked-transactions-total.expense-total{background:var(--color-error-tint);color:var(--color-error-500)}.linked-transactions-total.income-total{background:var(--color-success-tint);color:var(--dm-brand-text)}.open-accounts-lista{margin-top:40px}.open-accounts-lista h3{font-size:28px;font-weight:700;margin-bottom:32px;color:var(--dm-text-primary);position:relative;padding-bottom:16px}.open-accounts-lista h3:after{content:"";position:absolute;bottom:0;left:0;width:80px;height:4px;background:var(--color-secondary-600);border-radius:2px}.closed-section{margin-top:48px;padding-top:32px;border-top:2px solid var(--dm-border)}.closed-section h3{color:var(--dm-text-tertiary)}.closed-section h3:after{background:var(--color-gray-500)}.closed-section.no-closed-accounts{display:none!important}.open-account-modal-overlay{position:fixed;inset:0;background:var(--dm-modal-backdrop);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease;padding:var(--space-5)}.open-account-modal-overlay.active{opacity:1}.open-account-modal{background:var(--dm-surface);border-radius:var(--radius-xl);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px var(--color-black-alpha-30);transform:scale(.9) translateY(20px);transition:transform .3s ease}.open-account-modal-overlay.active .open-account-modal{transform:scale(1) translateY(0)}.open-account-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6) 28px;border-bottom:2px solid var(--dm-border);background:var(--color-secondary-600);border-radius:var(--radius-xl) 20px 0 0}.open-account-modal-header.credit{background:var(--color-info-600)}.open-account-modal-header h2{margin:0;color:#fff;font-size:22px;font-weight:700}.open-account-modal-header h2:after{display:none}.open-account-modal-close{background:var(--color-white-alpha-20);border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;padding:0}.open-account-modal-close:hover{background:var(--color-white-alpha-30);transform:rotate(90deg)}.open-account-modal-close svg{color:#fff}.open-account-modal-form{padding:28px}.modal-account-info{background:var(--dm-border-subtle);padding:var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-5)}.modal-account-info p{margin:0;font-size:14px;color:var(--dm-text-secondary)}.modal-account-info p:first-child{font-size:16px;color:var(--dm-text-primary);margin-bottom:4px}.quick-amount-buttons{display:flex;gap:var(--space-3);margin-top:var(--space-4)}.quick-amount-buttons button{flex:1;padding:var(--space-3);background:var(--dm-border-subtle);border:2px solid var(--dm-border);border-radius:var(--radius-md);font-size:13px;font-weight:600;color:var(--dm-text-secondary);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.quick-amount-buttons button:hover{border-color:var(--color-secondary-500);color:var(--color-secondary-500);background:var(--color-warning-tint)}.open-account-modal-actions{display:flex;gap:var(--space-3);margin-top:28px;padding-top:20px;border-top:2px solid var(--dm-border)}.open-account-modal-actions button{flex:1;padding:14px 24px;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:none}.open-account-modal-actions .cancel-btn{background:var(--dm-border);color:var(--dm-text-secondary)}.open-account-modal-actions .cancel-btn:hover{background:var(--dm-border-strong);box-shadow:0 4px 12px var(--color-black-alpha-10)}.open-account-modal-actions .save-btn{background:var(--color-secondary-600);color:#fff;box-shadow:0 4px 16px var(--color-warning-tint)}.open-account-modal-actions .save-btn:hover{box-shadow:0 8px 24px var(--color-warning-tint)}.open-account-modal-actions .save-btn.credit{background:var(--color-info-600);box-shadow:0 4px 16px var(--color-info-tint)}.open-account-modal-actions .save-btn.credit:hover{box-shadow:0 8px 24px var(--color-info-tint)}.search-btn:hover{border-color:var(--color-secondary-500);box-shadow:0 6px 20px var(--color-warning-tint)}.search-btn:hover svg{color:var(--color-secondary-500)}.no-data{text-align:center;padding:40px 20px;color:var(--dm-text-tertiary);font-size:16px;font-weight:600}.open-accounts-section-hidden{display:none!important}@media(max-width:768px){.open-account-details{grid-template-columns:1fr}.open-account-item{flex-direction:column;gap:var(--space-4)}.open-account-actions{width:100%;flex-direction:row;flex-wrap:wrap}.open-account-actions button{flex:1 1 calc(50% - var(--space-2));min-width:80px}.open-account-modal{max-height:95vh;margin:10px}.open-account-modal-header,.open-account-modal-form{padding:var(--space-5)}.open-account-modal-actions{flex-direction:column}.open-account-modal-actions button{width:100%}.quick-amount-buttons{flex-direction:column}}.delete-choice-modal{max-width:450px}.open-account-modal-header.warning{background:var(--color-error-600)}.delete-choice-content{padding:24px}.delete-choice-message{font-size:16px;color:var(--dm-text-primary);margin-bottom:16px;line-height:1.5}.delete-choice-info{display:flex;align-items:center;gap:10px;background:var(--color-warning-100);border:1px solid var(--color-secondary-500);border-radius:8px;padding:12px 16px;margin-bottom:24px;font-size:14px;color:var(--color-secondary-800)}.delete-choice-info .info-icon{font-size:18px}.delete-choice-buttons{display:flex;flex-direction:column;gap:12px}.delete-choice-btn{display:flex;align-items:center;gap:12px;padding:14px 18px;border:2px solid transparent;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;text-align:left}.delete-choice-btn .btn-icon{font-size:20px;flex-shrink:0}.delete-choice-btn .btn-text{flex:1}.delete-choice-btn.delete-all{background:var(--color-error-600);color:#fff}.delete-choice-btn.delete-all:hover{box-shadow:0 4px 12px var(--color-error-tint-strong)}.delete-choice-btn.keep-transactions{background:var(--color-secondary-600);color:#fff}.delete-choice-btn.keep-transactions:hover{box-shadow:0 4px 12px var(--color-warning-tint)}.delete-choice-btn.cancel{background:var(--dm-border-subtle);color:var(--dm-text-primary);border-color:var(--dm-border-strong)}.delete-choice-btn.cancel:hover{background:var(--dm-border)}@media(max-width:640px){.delete-choice-modal{margin:10px}.delete-choice-btn{padding:12px 14px;font-size:14px}.delete-choice-btn .btn-icon{font-size:18px}}.view-toggle-container{display:flex;justify-content:center;margin:16px 0}.view-toggle-buttons{display:flex;gap:8px;background:var(--dm-surface-hover);padding:4px;border-radius:10px}.view-toggle-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;background:transparent;color:var(--dm-text-secondary)}.view-toggle-btn:hover{background:var(--dm-border)}.view-toggle-btn.active{background:var(--dm-surface);color:var(--color-primary-600);box-shadow:0 2px 8px var(--color-black-alpha-10)}.view-toggle-btn .btn-icon{font-size:16px}.consolidated-item{background:var(--dm-surface);padding:20px;border-radius:var(--radius-lg);margin-bottom:16px;box-shadow:0 2px 8px var(--color-black-alpha-5);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.consolidated-item:hover{box-shadow:0 6px 20px var(--color-success-tint-strong)}.consolidated-item.debt:hover{box-shadow:0 6px 20px var(--color-warning-tint)}.consolidated-item.credit:hover{box-shadow:0 6px 20px var(--color-info-tint)}.consolidated-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.consolidated-person{display:flex;align-items:center;gap:10px}.person-icon{font-size:24px;background:var(--dm-border-subtle);padding:8px;border-radius:50%}.person-name{font-size:18px;font-weight:700;color:var(--dm-text-primary);margin:0}.consolidated-net-balance{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.consolidated-net-balance .net-status{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.consolidated-net-balance.credit .net-status{color:var(--dm-info-text)}.consolidated-net-balance.debt .net-status{color:var(--dm-warning-text)}.consolidated-net-balance .net-amount{font-size:24px;font-weight:800}.consolidated-net-balance.credit .net-amount{color:var(--dm-info-text)}.consolidated-net-balance.debt .net-amount{color:var(--dm-warning-text)}.consolidated-details{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:1px solid var(--dm-border);border-bottom:1px solid var(--dm-border);margin-bottom:16px;flex-wrap:wrap;gap:12px}.consolidated-breakdown{display:flex;gap:20px;flex-wrap:wrap}.breakdown-item{display:flex;align-items:center;gap:6px;font-size:14px}.breakdown-item .breakdown-label{color:var(--dm-text-secondary)}.breakdown-item.debt .breakdown-value{color:var(--dm-warning-text);font-weight:600}.breakdown-item.credit .breakdown-value{color:var(--dm-info-text);font-weight:600}.consolidated-accounts-info{font-size:13px;color:var(--dm-text-tertiary)}.consolidated-actions{display:flex;justify-content:flex-end}.view-details-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.view-details-btn:hover{box-shadow:0 4px 12px var(--color-indigo-tint-strong)}.person-details-modal{max-width:600px;max-height:80vh}.person-details-content{padding:20px;max-height:60vh;overflow-y:auto}.person-accounts-list .open-account-item{margin-bottom:12px}@media(max-width:640px){.view-toggle-buttons{width:100%}.view-toggle-btn{flex:1;justify-content:center;padding:10px 12px;font-size:13px}.consolidated-header{flex-direction:column;align-items:flex-start}.consolidated-net-balance{align-items:flex-start;width:100%;flex-direction:row;justify-content:space-between}.consolidated-net-balance .net-amount{font-size:20px}.consolidated-details{flex-direction:column;align-items:flex-start}.consolidated-actions{width:100%}.view-details-btn{width:100%;justify-content:center}}.open-account-modal-overlay .search-modal{max-width:700px;max-height:90vh;display:flex;flex-direction:column}.open-account-modal-overlay .search-modal-content{padding:20px;overflow-y:auto;flex:1}.open-account-modal-overlay .search-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px;padding:20px;background:var(--dm-surface-hover);border-radius:12px}.open-account-modal-overlay .search-filter-group{display:flex;flex-direction:column;gap:6px}.open-account-modal-overlay .search-filter-group label{font-size:13px;font-weight:600;color:var(--dm-text-secondary)}.open-account-modal-overlay .search-input,.open-account-modal-overlay .search-select,.open-account-modal-overlay .search-date{padding:10px 14px;border:2px solid var(--dm-border-control);border-radius:8px;font-size:14px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;background:var(--dm-input-bg);color:var(--dm-input-text)}.open-account-modal-overlay .search-input:focus,.open-account-modal-overlay .search-select:focus,.open-account-modal-overlay .search-date:focus{border-color:var(--color-primary-500);box-shadow:0 0 0 3px var(--color-indigo-tint)}.open-account-modal-overlay .search-input::placeholder{color:var(--dm-input-placeholder)}.open-account-modal-overlay .date-filter{grid-column:span 2}.open-account-modal-overlay .date-range-inputs{display:flex;align-items:center;gap:10px}.open-account-modal-overlay .date-range-inputs .search-date{flex:1}.open-account-modal-overlay .date-separator{color:var(--dm-text-tertiary);font-weight:600}.open-account-modal-overlay .search-results-count{text-align:center;font-size:14px;color:var(--dm-text-secondary);margin-bottom:12px;padding:8px;background:var(--dm-border-subtle);border-radius:6px}.open-account-modal-overlay .search-actions{display:flex;justify-content:center;margin-bottom:16px}.open-account-modal-overlay .reset-filters-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--dm-border-subtle);color:var(--dm-text-primary);border:1px solid var(--dm-border-strong);border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.open-account-modal-overlay .reset-filters-btn:hover{background:var(--dm-border)}.open-account-modal-overlay .search-results{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto;padding-right:8px}.open-account-modal-overlay .no-search-results{text-align:center;color:var(--dm-text-tertiary);padding:40px;font-size:15px}.open-account-modal-overlay .search-result-item{background:var(--dm-surface);padding:16px;border-radius:10px;box-shadow:0 2px 6px var(--color-black-alpha-5);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.open-account-modal-overlay .search-result-item:hover{box-shadow:0 4px 12px var(--color-black-alpha-10)}.open-account-modal-overlay .search-result-item.closed{opacity:.7;background:var(--dm-surface-hover)}.open-account-modal-overlay .search-result-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px;flex-wrap:wrap;gap:8px}.open-account-modal-overlay .search-result-name{font-size:16px;font-weight:700;color:var(--dm-text-primary);margin:0}.open-account-modal-overlay .search-result-badges{display:flex;gap:6px;flex-wrap:wrap}.open-account-modal-overlay .search-result-type,.open-account-modal-overlay .search-result-category,.open-account-modal-overlay .search-result-closed{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.open-account-modal-overlay .search-result-type.debt{background:var(--color-warning-100);color:var(--color-secondary-800)}.open-account-modal-overlay .search-result-type.credit{background:var(--color-info-100);color:var(--color-info-800)}.open-account-modal-overlay .search-result-category{background:var(--dm-border-subtle);color:var(--dm-text-secondary)}.open-account-modal-overlay .search-result-closed{background:var(--color-error-100);color:var(--color-error-800)}.open-account-modal-overlay .search-result-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;flex-wrap:wrap;gap:10px}.open-account-modal-overlay .search-result-amounts{display:flex;flex-direction:column;gap:2px}.open-account-modal-overlay .search-result-total{font-size:18px;font-weight:700;color:var(--dm-text-primary)}.open-account-modal-overlay .search-result-remaining{font-size:12px;color:var(--dm-text-tertiary)}.open-account-modal-overlay .search-result-progress{display:flex;align-items:center;gap:8px}.open-account-modal-overlay .search-result-progress-bar{width:80px;height:6px;background:var(--color-gray-200);border-radius:3px;overflow:hidden}.open-account-modal-overlay .search-result-progress-fill{height:100%;background:var(--dm-brand-solid);border-radius:3px;transition:width .3s ease}.open-account-modal-overlay .search-result-progress-text{font-size:12px;font-weight:600;color:var(--dm-text-secondary);min-width:35px}.open-account-modal-overlay .search-result-date{font-size:12px;color:var(--dm-text-tertiary)}.open-account-item.highlighted{animation:highlight-pulse 2s ease}@keyframes highlight-pulse{0%,to{box-shadow:0 2px 8px var(--color-black-alpha-5)}50%{box-shadow:0 0 0 4px var(--color-indigo-tint-strong),0 4px 20px var(--color-indigo-tint-strong)}}@media(max-width:640px){.open-account-modal-overlay .search-modal{margin:10px;max-height:95vh}.open-account-modal-overlay .search-filters{grid-template-columns:1fr;padding:16px}.open-account-modal-overlay .date-filter{grid-column:span 1}.open-account-modal-overlay .date-range-inputs{flex-direction:column}.open-account-modal-overlay .date-separator{display:none}.open-account-modal-overlay .search-results{max-height:300px}.open-account-modal-overlay .search-result-header{flex-direction:column}.open-account-modal-overlay .search-result-details{flex-direction:column;align-items:flex-start}.open-account-modal-overlay .search-result-progress{width:100%}.open-account-modal-overlay .search-result-progress-bar{flex:1}}[data-theme=dark] .open-account-item.closed{background:#0596691f}.documents-container{max-width:1200px;margin:0 auto;padding:var(--space-5)}.google-signin-section{background:var(--dm-brand-solid);border-radius:15px;padding:30px;text-align:center;color:var(--dm-text-on-brand);margin-bottom:30px;box-shadow:0 4px 15px var(--color-black-alpha-10);position:relative;min-height:60px}.google-signin-section:has(.google-signout-btn-compact){padding:15px 30px;background:transparent;box-shadow:none;margin-bottom:0;display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.google-signin-section h3{margin:0 0 15px;font-size:24px;color:#fff}.google-signin-section p{margin:0 0 20px;opacity:.9;font-size:16px;color:#fff}.google-signin-btn{background:var(--dm-surface);color:var(--dm-text-secondary);border:none;padding:var(--space-3) 30px;border-radius:var(--radius-default);font-size:16px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:10px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 2px 8px var(--color-black-alpha-15);margin-bottom:20px}.google-signin-btn:hover{box-shadow:0 4px 12px var(--color-black-alpha-20)}.google-signin-btn svg{width:20px;height:20px}.google-signout-btn{background:var(--color-white-alpha-20);color:#fff;border:2px solid white;padding:8px 20px;border-radius:var(--radius-default);font-size:14px;cursor:pointer;margin-top:15px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.google-signout-btn:hover{background:#fff;color:var(--color-primary-600)}.google-signout-btn-compact{background:var(--color-error-tint);color:var(--color-error-600);border:2px solid var(--color-error-600);padding:10px 20px;border-radius:var(--radius-default);font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;white-space:nowrap}.google-signout-btn-compact:hover{background:var(--color-error-600);color:#fff;box-shadow:0 4px 12px var(--color-error-tint-strong)}.google-limited-access-notice{margin-top:30px;margin-bottom:0;padding:15px;background:var(--color-white-alpha-15);border-radius:var(--radius-default);font-size:14px;line-height:1.6;color:var(--color-white-alpha-98)}.google-limited-access-notice em{font-style:italic}.google-access-email{color:#fff;font-weight:600;text-decoration:underline;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.google-access-email:hover{color:var(--color-warning-300);text-decoration:none}.google-user-info{display:flex;align-items:center;justify-content:center;gap:15px;margin-top:15px}.google-user-avatar{width:50px;height:50px;border-radius:50%;border:3px solid white}.google-user-avatar-placeholder{width:50px;height:50px;border-radius:50%;border:3px solid white;background:var(--color-white-alpha-30);display:flex;align-items:center;justify-content:center;font-size:24px}.google-user-details{text-align:left}.google-user-name{font-weight:600;font-size:18px}.google-user-email{font-size:14px;opacity:.9}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-5);margin-top:30px}.document-card{background:var(--dm-surface);border-radius:var(--radius-md);padding:25px;box-shadow:0 2px 10px var(--color-black-alpha-8);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:2px solid transparent;text-align:center}.document-card:hover{box-shadow:0 5px 20px var(--color-black-alpha-15);border-color:var(--color-primary-600)}.document-card-icon{font-size:48px;margin-bottom:15px;display:flex;justify-content:center;align-items:center}.document-card-title{font-size:20px;font-weight:600;color:var(--dm-text-secondary);margin:0 0 10px}.document-card-description{font-size:14px;color:var(--dm-text-tertiary);line-height:1.5;margin:0 0 20px}.document-card-btn{width:100%;background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:var(--space-3) 20px;border-radius:var(--radius-default);font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.document-card-btn:hover{box-shadow:var(--shadow-hover)}.document-card-btn:disabled{background:var(--dm-border-strong);cursor:not-allowed;transform:none}.document-card-btn svg{width:18px;height:18px}.setup-status{background:var(--dm-surface-hover);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:30px}.setup-status h4{margin:0 0 10px;color:var(--dm-text-secondary);font-size:18px}.setup-status p{margin:0;color:var(--dm-text-tertiary);font-size:14px}.setup-progress{margin-top:15px}.setup-progress-bar{width:100%;height:8px;background:var(--color-gray-200);border-radius:var(--radius-sm);overflow:hidden}.setup-progress-fill{height:100%;background:var(--dm-brand-solid);transition:width .3s ease}.setup-progress-text{margin-top:8px;font-size:13px;color:var(--dm-text-tertiary);text-align:right}.documents-language-selector{background:var(--dm-surface);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:30px;box-shadow:0 2px 10px var(--color-black-alpha-8)}.documents-language-selector h4{margin:0 0 15px;color:var(--dm-text-secondary);font-size:18px}.language-options{display:flex;gap:15px}.language-option{flex:1;padding:15px;border:2px solid var(--dm-border);border-radius:var(--radius-default);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;text-align:center}.language-option:hover{border-color:var(--color-primary-600);background:var(--dm-surface-hover)}.language-option.selected{border-color:var(--color-primary-600);background:var(--dm-brand-solid);color:var(--dm-text-on-brand)}.language-option-flag{font-size:32px;margin-bottom:8px}.language-option-name{font-weight:600;font-size:16px}.documents-loading{text-align:center;padding:40px}.documents-loading-spinner{width:50px;height:50px;border:4px solid var(--dm-border-subtle);border-top:4px solid var(--color-primary-600);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.documents-error{background:var(--color-error-50);border:2px solid var(--color-error-200);border-radius:var(--radius-md);padding:var(--space-5);margin:20px 0;color:var(--color-error-600)}.documents-error h4{margin:0 0 10px}.documents-success{background:var(--color-success-50);border:2px solid var(--color-success-200);border-radius:var(--radius-md);padding:var(--space-5);margin:20px 0;color:var(--color-success-600)}@media(max-width:768px){.documents-grid{grid-template-columns:1fr}.google-signin-section{padding:var(--space-5)}.google-signin-section h3{font-size:20px}.language-options{flex-direction:column}}.documents-notification{position:fixed;top:20px;right:20px;z-index:var(--z-modal);min-width:320px;max-width:500px;background:var(--dm-surface);border-radius:var(--radius-md);box-shadow:0 10px 40px var(--color-black-alpha-20);opacity:0;transform:translate(400px);transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .2s var(--ease-standard),border-color .2s var(--ease-standard),color .2s var(--ease-standard),opacity .2s var(--ease-standard)}.documents-notification.show{opacity:1;transform:translate(0)}.documents-notification-error.show{animation:shake .5s ease-in-out .3s}.documents-notification-content{display:flex;align-items:center;gap:15px;padding:var(--space-5);position:relative}.documents-notification-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;flex-shrink:0}.documents-notification-success .documents-notification-icon{background:var(--color-teal-500);color:#fff}.documents-notification-error .documents-notification-icon{background:var(--color-error-500);color:#fff}.documents-notification-info .documents-notification-icon{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)}.documents-notification-message{flex:1;color:var(--dm-text-secondary);font-size:15px;line-height:1.5}.documents-notification-close{position:absolute;top:10px;right:10px;background:transparent;border:none;cursor:pointer;padding:5px;color:var(--dm-text-tertiary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;width:24px;height:24px}.documents-notification-close:hover{color:var(--dm-text-secondary);transform:rotate(90deg)}.documents-notification-close svg{width:100%;height:100%}@media(max-width:768px){.documents-notification{top:10px;right:10px;left:10px;min-width:auto;max-width:none}.documents-notification-content{padding:15px}.documents-notification-icon{width:35px;height:35px;font-size:20px}.documents-notification-message{font-size:14px}}.documents-notification:nth-child(n+2){margin-top:10px}.documents-filter-dropdown{position:relative}.documents-filter-btn{background:var(--color-success-tint-strong);color:var(--color-primary-600);border:2px solid var(--color-primary-600);padding:10px 20px;border-radius:var(--radius-default);font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;align-items:center;gap:var(--space-2);white-space:nowrap}.documents-filter-btn svg{width:18px;height:18px}.documents-filter-btn:hover{background:var(--color-primary-600);color:#fff;box-shadow:var(--shadow-hover)}.documents-filter-modal-overlay{position:fixed;inset:0;background:var(--dm-modal-backdrop);display:none;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease}.documents-filter-modal-overlay.show{display:flex;opacity:1}.documents-filter-modal{background:var(--dm-surface);border-radius:var(--radius-lg);box-shadow:0 20px 60px var(--color-black-alpha-40);max-width:500px;width:90%;max-height:80vh;overflow:hidden;transform:scale(.9);transition:transform .3s ease;display:flex;flex-direction:column}.documents-filter-modal-overlay.show .documents-filter-modal{transform:scale(1)}.documents-filter-modal-header{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:var(--space-5) 25px;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.documents-filter-modal-header h3{margin:0;font-size:20px;font-weight:600;color:#fff}.documents-filter-close-btn{background:var(--color-white-alpha-20);color:#fff;border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;flex-shrink:0}.documents-filter-close-btn:hover{background:var(--color-white-alpha-30);transform:rotate(90deg)}.documents-filter-close-btn svg{width:18px;height:18px}.documents-filter-modal-body{padding:var(--space-5) 25px;overflow-y:auto;flex:1}.documents-filter-options{display:flex;flex-direction:column;gap:var(--space-2)}.documents-filter-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 15px;cursor:pointer;border-radius:var(--radius-default);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;background:var(--dm-surface-hover)}.documents-filter-option:hover{background:var(--dm-border);transform:translate(5px)}.documents-filter-option input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-primary-600);flex-shrink:0}.documents-filter-option-icon{font-size:24px;flex-shrink:0}.documents-filter-option-name{flex:1;font-size:15px;color:var(--dm-text-secondary);font-weight:500}.documents-filter-modal-footer{padding:var(--space-5) 25px;background:var(--dm-surface-hover);border-top:1px solid var(--dm-border);display:flex;gap:var(--space-3);justify-content:space-between;flex-shrink:0}.documents-filter-modal-btn{flex:1;padding:var(--space-3) 24px;border-radius:var(--radius-default);font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:none}.documents-filter-select-all-btn{background:var(--dm-surface);color:var(--color-primary-600);border:2px solid var(--color-primary-600)}.documents-filter-select-all-btn:hover{background:var(--color-primary-600);color:#fff;box-shadow:var(--shadow-hover)}.documents-filter-apply-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)}.documents-filter-apply-btn:hover{box-shadow:var(--shadow-hover)}@media(max-width:768px){.google-signin-section:has(.google-signout-btn-compact){flex-direction:column;align-items:stretch;padding:15px}.documents-filter-dropdown{width:100%;margin-bottom:10px}.documents-filter-btn{width:100%;justify-content:center}.google-signout-btn-compact{width:100%;text-align:center}.documents-filter-modal{max-width:95%;max-height:85vh}.documents-filter-modal-header{padding:18px 20px}.documents-filter-modal-header h3{font-size:18px}.documents-filter-modal-body{padding:15px 20px}.documents-filter-modal-footer{padding:15px 20px;flex-direction:column;gap:10px}.documents-filter-modal-btn{width:100%}}.documents-signout-modal-overlay{position:fixed;inset:0;background:var(--dm-modal-backdrop);display:flex;align-items:center;justify-content:center;z-index:var(--z-popover);opacity:0;transition:opacity .3s ease}.documents-signout-modal-overlay.show{opacity:1}.documents-signout-modal{background:var(--dm-surface);border-radius:var(--radius-lg);box-shadow:0 20px 60px var(--color-black-alpha-30);max-width:450px;width:90%;overflow:hidden;transform:scale(.9);transition:transform .3s ease}.documents-signout-modal-overlay.show .documents-signout-modal{transform:scale(1)}.documents-signout-modal-header{background:var(--color-error-700);color:#fff;padding:var(--space-5) 25px}.documents-signout-modal-header h3{margin:0;font-size:20px;font-weight:600}.documents-signout-modal-body{padding:25px;text-align:center}.documents-signout-modal-body p{margin:0 0 15px;color:var(--dm-text-secondary);font-size:15px;line-height:1.6}.documents-signout-modal-body p:last-child{margin-bottom:0}.documents-signout-modal-warning{background:var(--color-warning-100);padding:var(--space-3) 15px;border-radius:6px;color:var(--color-secondary-800);font-size:14px!important;margin-top:15px!important}.documents-signout-modal-footer{padding:var(--space-5) 25px;background:var(--dm-surface-hover);display:flex;gap:var(--space-3);justify-content:flex-end}.documents-signout-modal-btn{padding:10px 24px;border-radius:var(--radius-default);font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border:none}.documents-signout-modal-btn-cancel{background:var(--dm-surface);color:var(--dm-text-tertiary);border:2px solid var(--dm-border-strong)}.documents-signout-modal-btn-cancel:hover{background:var(--dm-surface-hover);border-color:var(--color-gray-400);color:var(--dm-text-secondary)}.documents-signout-modal-btn-confirm{background:var(--color-error-700);color:#fff}.documents-signout-modal-btn-confirm:hover{box-shadow:0 4px 12px var(--color-error-tint-strong)}@media(max-width:768px){.documents-signout-modal{max-width:95%}.documents-signout-modal-header{padding:18px 20px}.documents-signout-modal-header h3{font-size:18px}.documents-signout-modal-body{padding:var(--space-5)}.documents-signout-modal-footer{padding:15px 20px;flex-direction:column-reverse}.documents-signout-modal-btn{width:100%;text-align:center}}.documents-permission-error{background:var(--color-error-50);border:2px solid var(--color-error-300);border-radius:15px;padding:40px;text-align:center;margin:30px auto;max-width:600px;box-shadow:0 4px 15px var(--color-error-tint)}.permission-error-icon{font-size:64px;margin-bottom:20px}.documents-permission-error h3{color:var(--color-error);font-size:24px;margin:0 0 15px;font-weight:700}.documents-permission-error p{color:var(--color-error-800);font-size:16px;line-height:1.6;margin:0 0 25px}.documents-permission-error .google-signout-btn{background:var(--color-purple-500);color:#fff;border:none;padding:var(--space-3) 30px;border-radius:var(--radius-default);font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 4px 12px var(--color-error-tint-strong);margin-top:0}.documents-permission-error .google-signout-btn:hover{box-shadow:0 6px 20px var(--color-error-tint-strong)}.folder-progress-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--dm-modal-backdrop);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease}.folder-progress-overlay.show{opacity:1}.folder-progress-modal{background:var(--dm-surface);border-radius:var(--radius-xl);padding:40px;max-width:500px;width:90%;text-align:center;box-shadow:0 20px 60px var(--color-black-alpha-30);transform:scale(.9);transition:transform .3s ease}.folder-progress-overlay.show .folder-progress-modal{transform:scale(1)}.folder-progress-icon{font-size:64px;margin-bottom:20px}@keyframes folderBounce{0%,to{transform:translateY(0)}}.folder-progress-modal h3{color:var(--dm-text-secondary);font-size:24px;margin:0 0 25px;font-weight:700}.folder-progress-bar-container{width:100%;height:30px;background:var(--dm-border);border-radius:15px;overflow:hidden;margin-bottom:15px;box-shadow:inset 0 2px 4px var(--color-black-alpha-10)}.folder-progress-bar{height:100%;background:var(--dm-brand-solid);border-radius:15px;transition:width .4s ease;position:relative;overflow:hidden}.folder-progress-bar:after{display:none}.folder-progress-text{font-size:18px;font-weight:600;color:var(--dm-text-tertiary);margin-bottom:15px}.folder-progress-current-folder{font-size:14px;color:var(--dm-text-tertiary);font-style:italic;min-height:20px;padding:10px;background:var(--dm-surface-hover);border-radius:var(--radius-default);margin-top:15px}@media(max-width:768px){.folder-progress-modal{padding:30px 20px;width:95%}.folder-progress-icon{font-size:48px}.folder-progress-modal h3{font-size:20px}.folder-progress-bar-container{height:25px}.folder-progress-text{font-size:16px}.folder-progress-current-folder{font-size:13px}}.document-card-with-years{display:flex;flex-direction:column;gap:15px}.document-card-years{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2);margin-bottom:10px}.document-card-year-btn{background:var(--dm-surface-hover);border:2px solid var(--dm-border);color:var(--dm-text-tertiary);padding:10px 16px;border-radius:var(--radius-default);font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.document-card-year-btn:hover{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border-color:var(--color-primary-600);box-shadow:var(--shadow-hover)}.document-card-btn-main{background:var(--dm-brand-solid);margin-top:5px}.document-card-btn-main:hover{background:var(--dm-brand-solid);box-shadow:0 4px 12px var(--color-success-tint-stronger)}@media(max-width:768px){.document-card-years{grid-template-columns:1fr}}@media(hover:hover){.document-item:hover{transform:translateY(-3px)}}@media(hover:none){.document-item:active{transform:scale(.98)}}.drive-backup-notice{max-width:1200px;margin:0 auto 24px;padding:16px 20px;border:1px solid var(--dm-border);border-radius:12px;background:var(--dm-surface-hover)}.drive-backup-notice-title{margin:0 0 8px;font-size:1rem;font-weight:600;color:var(--dm-text-primary)}.drive-backup-notice-text,.drive-backup-notice-status{margin:0;font-size:.875rem;line-height:1.5;color:var(--dm-text-secondary)}.drive-backup-notice-status{margin-top:8px;font-weight:600}[data-theme=dark] .drive-backup-notice{border-color:var(--dm-border);background:var(--dm-surface-elevated)}[data-theme=dark] .drive-backup-notice-title{color:var(--dm-text-primary)}[data-theme=dark] .drive-backup-notice-text,[data-theme=dark] .drive-backup-notice-status{color:var(--dm-text-secondary)}@media(max-width:640px){.drive-backup-notice{padding:14px 16px}}.current-balance-container{background:var(--dm-surface-brand);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:24px;box-shadow:var(--shadow-hover-lg)}.current-balance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.current-balance-header h3{color:var(--color-white);font-size:22px;font-weight:700;margin:0}.set-balance-btn{background:var(--color-white-alpha-20);border:2px solid var(--color-white-alpha-30);color:var(--color-white);padding:10px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:var(--space-2);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.set-balance-btn:hover{background:var(--color-white-alpha-30);border-color:var(--color-white-alpha-50)}.set-balance-btn .btn-icon{font-size:16px}.current-balance-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4)}.balance-card{background:var(--dm-surface);border-radius:var(--radius-md);padding:var(--space-5);display:flex;align-items:flex-start;gap:var(--space-4);box-shadow:0 4px 12px var(--color-black-alpha-10);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.balance-card:hover{box-shadow:0 8px 20px var(--color-black-alpha-15)}.balance-icon{font-size:32px;flex-shrink:0}.balance-content{flex:1}.balance-label{font-size:13px;font-weight:600;color:var(--color-accent);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.balance-value{font-size:28px;font-weight:700;color:var(--dm-text-primary);margin-bottom:4px}.balance-liquid .balance-value{color:var(--color-primary-600)}.balance-total .balance-value{color:var(--dm-brand-text)}.balance-date{font-size:12px;color:var(--color-accent-light);font-style:italic}.balance-subtext{font-size:13px;color:var(--color-accent);margin-top:8px}.balance-subtext span:last-child{font-weight:600;color:var(--color-secondary-500);margin-left:4px}.set-balance-modal .set-balance-detail-value{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-2);color:var(--dm-text-primary)}.set-balance-modal .set-balance-empty-title{font-weight:var(--font-semibold);margin-bottom:var(--space-2);color:var(--dm-text-primary)}.set-balance-modal .set-balance-empty-description{color:var(--dm-text-secondary);font-size:var(--text-sm)}.set-balance-modal .set-balance-empty,.set-balance-modal .set-balance-detail{margin-bottom:var(--space-5)}.set-balance-modal .set-balance-opening{display:flex;align-items:baseline;gap:var(--space-2);margin:var(--space-4) 0;padding-top:var(--space-4);border-top:1px solid var(--dm-border-subtle)}.set-balance-modal .set-balance-opening dt{color:var(--dm-text-secondary);font-size:var(--text-sm)}.set-balance-modal .set-balance-opening dd{margin:0;font-weight:var(--font-semibold);color:var(--dm-text-primary)}.set-balance-modal .set-balance-opening-date{color:var(--dm-text-tertiary);font-size:var(--text-sm);font-weight:var(--font-regular)}.set-balance-modal .form-group{margin-bottom:20px}.set-balance-modal label{display:block;font-weight:600;margin-bottom:8px;color:var(--dm-text-primary)}.set-balance-modal input[type=number],.set-balance-modal input[type=date],.set-balance-modal select{width:100%;padding:var(--space-3);border:2px solid var(--dm-border-control);border-radius:var(--radius-default);font-size:16px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.set-balance-modal input[type=number]:focus,.set-balance-modal input[type=date]:focus,.set-balance-modal select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}.set-balance-modal .amount-currency-group{display:flex;gap:var(--space-3)}.set-balance-modal .amount-currency-group input{flex:1}.set-balance-modal .amount-currency-group select{width:120px}.set-balance-modal .modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:24px}.set-balance-modal .btn-secondary{background:var(--dm-border);color:var(--dm-text-primary);padding:var(--space-3) 24px;border:none;border-radius:var(--radius-default);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.set-balance-modal .btn-secondary:hover{background:var(--dm-border-strong)}.set-balance-modal .btn-primary{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:var(--space-3) 24px;border:none;border-radius:var(--radius-default);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.set-balance-modal .btn-primary:hover{box-shadow:var(--shadow-hover)}@media(max-width:768px){.current-balance-container{padding:var(--space-4)}.current-balance-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.current-balance-header h3{font-size:18px}.set-balance-btn{width:100%;justify-content:center}.current-balance-cards{grid-template-columns:1fr}.balance-value{font-size:24px}}.balance-card.not-set{opacity:.6}.balance-card.not-set .balance-value{color:var(--color-accent-light);font-size:16px;font-weight:500}.current-balance-buttons{display:flex;gap:var(--space-2);align-items:center}.current-balance-header .set-balance-btn.invest-btn,.current-balance-header .set-balance-btn.invest-btn:hover{background:var(--color-warning-tint);border-color:var(--color-warning-tint)}@media(max-width:768px){.current-balance-header{flex-direction:column;align-items:stretch}.current-balance-buttons{width:100%;flex-direction:column}.current-balance-buttons .set-balance-btn{width:100%;justify-content:center}}.invest-modal .invest-modal-content{max-width:500px}.invest-liquidity-info{background:var(--color-success-50);border:1px solid var(--color-success-300);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-5);display:flex;justify-content:space-between;align-items:center}.invest-liquidity-label{font-weight:600;color:var(--dm-success-text);font-size:14px}.invest-liquidity-value{font-size:20px;font-weight:700;color:var(--dm-brand-text)}.invest-liquidity-value.negative{color:var(--color-error-600)}.balance-saved-hint{font-size:12px;font-weight:500;color:var(--color-accent);display:block;margin-top:4px}.balance-recurring-hint{font-size:12px;font-weight:600;color:var(--color-error-600);display:block;margin-top:4px}.funds-source-group{margin-bottom:var(--space-4)}.funds-source-options{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.radio-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-default);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;background:var(--dm-surface-hover);border:1px solid transparent}.radio-option:hover{background:var(--dm-border-subtle);border-color:var(--dm-border-strong)}.radio-option input[type=radio]{accent-color:var(--color-primary-600);width:18px;height:18px;cursor:pointer}.radio-option .radio-label{font-size:14px;color:var(--dm-text-secondary)}.radio-option input[type=radio]:checked+.radio-custom+.radio-label{font-weight:600;color:var(--dm-brand-text)}.partial-amount-container{margin-top:var(--space-3);padding:var(--space-3);background:var(--color-warning-50);border:1px solid var(--color-warning-300);border-radius:var(--radius-default)}.partial-amount-container label{font-size:13px;font-weight:600;color:var(--color-secondary-800);margin-bottom:var(--space-2);display:block}.partial-amount-container input{width:100%;padding:var(--space-2) var(--space-3);border:2px solid var(--color-warning-300);border-radius:var(--radius-default);font-size:15px}.partial-amount-container input:focus{border-color:var(--color-secondary-500);box-shadow:0 0 0 3px var(--color-warning-tint)}.liquidity-source-group{background:var(--color-success-50);border:1px solid var(--color-success-300);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.liquidity-source-group label{color:var(--color-success-800);font-weight:600}.amount-info-group{display:flex;flex-direction:column;gap:var(--space-2)}.amount-info-group input{width:100%;padding:var(--space-2) var(--space-3);border:2px solid var(--dm-border-control);border-radius:var(--radius-default);font-size:15px}.amount-info-group input:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}.liquidity-hint{font-size:12px;color:var(--color-accent);font-style:italic}[data-theme=dark] .invest-liquidity-info,[data-theme=dark] .liquidity-source-group{background:#0596691f;border-color:var(--color-success-700)}.balance-card.balance-liquid.clickable{cursor:pointer;position:relative;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.balance-card.balance-liquid.clickable:hover{box-shadow:var(--shadow-xl);border:2px solid var(--color-primary-500)}.balance-card.balance-liquid.clickable .balance-arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--color-primary-600);font-size:20px;opacity:.6;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.balance-card.balance-liquid.clickable:hover .balance-arrow{opacity:1;transform:translateY(-50%)}.goals-badge{position:absolute;top:-8px;right:-8px;background:var(--color-secondary-600);color:var(--color-white);font-size:11px;font-weight:700;padding:4px 8px;border-radius:12px;box-shadow:0 2px 8px var(--color-warning-tint)}@keyframes pulse-badge{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}#goals-modal-overlay{z-index:var(--z-modal)!important}.goals-modal{max-width:600px;width:95%;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.goals-modal .modal-body{overflow-y:auto;padding:0;flex:1}.goals-modal .modal-header{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:20px 24px;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;align-items:center}.goals-modal .modal-header .modal-title{color:var(--color-white);font-size:20px;margin:0;display:flex;align-items:center;gap:10px}.goals-modal .modal-close{background:var(--color-white-alpha-20);border:none;color:var(--color-white);width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.goals-modal .modal-close:hover{background:var(--color-white-alpha-30);transform:rotate(90deg)}.goals-liquidity-summary{background:var(--color-success-50);padding:20px 24px;border-bottom:1px solid var(--color-primary-200)}.goals-liquidity-row{display:flex;justify-content:space-between;align-items:center}.goals-liquidity-label{font-size:14px;color:var(--color-success-800);font-weight:500}.goals-liquidity-value{font-size:28px;font-weight:700;color:var(--color-success-700)}.goals-recurring-section{background:var(--color-warning-50);padding:16px 24px;border-bottom:1px solid var(--color-warning-300)}.goals-recurring-group{padding:12px;border-radius:10px;border-inline-start:3px solid var(--color-warning-400);background:var(--color-white-alpha-60)}.goals-recurring-group+.goals-recurring-group{margin-top:12px}.goals-recurring-group--income{border-inline-start-color:var(--color-success-400)}.goals-recurring-group--investment{border-inline-start-color:var(--color-info-400)}.goals-recurring-hint{margin-bottom:10px;font-size:12px;color:var(--color-secondary-700)}.goals-recurring-group--income .goals-recurring-item-amount,.goals-recurring-group--income .goals-recurring-total-value{color:var(--color-success-700)}.goals-recurring-group--investment .goals-recurring-item-amount,.goals-recurring-group--investment .goals-recurring-total-value{color:var(--color-info-700)}.goals-recurring-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:14px;font-weight:600;color:var(--color-secondary-800)}.goals-recurring-list{display:flex;flex-direction:column;gap:8px}.goals-recurring-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--color-white-alpha-60);border-radius:8px;font-size:13px}.goals-recurring-item-name{color:var(--color-secondary-900);flex:1}.goals-recurring-item-date{color:var(--color-secondary-700);font-size:12px;margin-right:16px}.goals-recurring-item-amount{font-weight:600;color:var(--color-secondary-700)}.goals-recurring-total{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;border-top:1px dashed var(--color-warning-400)}.goals-recurring-total-label{font-size:13px;color:var(--color-secondary-800);font-weight:500}.goals-recurring-total-value{font-size:16px;font-weight:700;color:var(--color-secondary-700)}.goals-available-after{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding:10px 12px;background:var(--color-white-alpha-80);border-radius:8px}.goals-available-after-label{font-size:13px;color:var(--color-success-800);font-weight:500}.goals-available-after-value{font-size:18px;font-weight:700;color:var(--color-success-700)}.goals-list-section{padding:20px 24px}.goals-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.goals-list-title{font-size:15px;font-weight:600;color:var(--dm-text-secondary);display:flex;align-items:center;gap:8px}.goals-add-btn{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);border:none;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.goals-add-btn:hover{box-shadow:var(--shadow-hover)}.goals-list{display:flex;flex-direction:column;gap:12px}.goals-empty{text-align:center;padding:40px 20px;color:var(--dm-text-secondary)}.goals-empty-icon{font-size:48px;margin-bottom:12px}.goals-empty-text{font-size:14px;margin-bottom:16px}.goal-item{background:var(--dm-surface);border-radius:12px;padding:16px;box-shadow:0 2px 8px var(--color-black-alpha-8);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.goal-item:hover{box-shadow:0 4px 16px var(--color-black-alpha-15)}.goal-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.goal-item-name{font-size:16px;font-weight:600;color:var(--dm-text-primary);flex:1}.goal-item-actions{display:flex;gap:8px}.goal-action-btn{background:none;border:none;padding:4px 8px;cursor:pointer;font-size:14px;opacity:.6;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;border-radius:4px}.goal-action-btn:hover{opacity:1;background:var(--dm-border-subtle)}.goal-action-btn.delete:hover{background:var(--color-error-100)}[data-theme=dark] .goal-action-btn.delete:hover{background:var(--dm-error-tint-bg)}.goal-item-deadline{font-size:12px;color:var(--dm-text-secondary);margin-bottom:12px;display:flex;align-items:center;gap:4px}.goal-item-deadline.ongoing{color:var(--color-info-600);font-style:italic}[data-theme=dark] .goal-item-deadline.ongoing{color:var(--color-info-400)}.goal-item-amounts{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.goal-item-saved{font-size:20px;font-weight:700;color:var(--goal-color, var(--color-indigo-400))}.goal-item-target{font-size:14px;color:var(--dm-text-secondary)}.goal-progress-container{position:relative;margin-bottom:8px}.goal-progress-bar{height:12px;background:var(--color-gray-200);border-radius:6px;overflow:hidden}.goal-progress-fill{height:100%;background:linear-gradient(90deg,var(--goal-color, var(--color-indigo-400)) 0%,var(--goal-color-light, var(--color-indigo-400)) 100%);border-radius:6px;transition:width .5s ease;position:relative}.goal-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,var(--color-white-alpha-30) 50%,transparent 100%)}.goal-progress-info{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--dm-text-secondary)}.goal-progress-percentage{font-weight:600;color:var(--dm-text-secondary)}.goal-progress-months{display:flex;align-items:center;gap:4px}.goal-monthly-required{margin-top:12px;padding:10px 12px;background:var(--dm-surface-hover);border-radius:8px;display:flex;justify-content:space-between;align-items:center}.goal-monthly-required-label{font-size:12px;color:var(--dm-text-secondary)}.goal-monthly-required-value{font-size:14px;font-weight:600}.goal-item.on-track .goal-monthly-required-value{color:var(--dm-success-text)}.goal-item.warning .goal-monthly-required-value{color:var(--dm-warning-text)}.goal-item.at-risk .goal-monthly-required-value{color:var(--dm-error-text)}.goal-item.completed{background:var(--color-success-50)}.goal-item.completed .goal-progress-fill{background:var(--color-primary-400)}.goal-completed-badge{display:inline-flex;align-items:center;gap:4px;background:var(--color-primary-400);color:var(--color-white);font-size:11px;font-weight:600;padding:4px 8px;border-radius:12px;margin-left:8px}#goal-form-modal-overlay{z-index:var(--z-modal)!important}.goal-form-modal{max-width:480px;width:95%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.goal-form-modal .modal-header{background:var(--dm-brand-solid);color:var(--dm-text-on-brand);padding:16px 20px;border-radius:12px 12px 0 0;flex-shrink:0}.goal-form-modal .modal-header .modal-title{color:var(--color-white);font-size:18px;margin:0}.goal-form-modal .modal-body{padding:20px;overflow-y:auto;flex:1}.goal-form{display:flex;flex-direction:column;gap:14px}.goal-form-group{display:flex;flex-direction:column;gap:6px}.goal-form-group label{font-size:13px;font-weight:600;color:var(--dm-text-secondary)}.goal-form-group input,.goal-form-group select{padding:10px 12px;border:2px solid var(--dm-border-control);border-radius:8px;background:var(--dm-input-bg);color:var(--dm-input-text);font-size:14px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.goal-form-group input:focus,.goal-form-group select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-200)}.goal-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.goal-amount-group{display:flex;gap:10px;width:100%}.goal-amount-group input{flex:1;min-width:0}.goal-amount-group select{width:90px;flex-shrink:0}.goal-ongoing-group{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--dm-surface-hover);border-radius:8px}.goal-ongoing-group input[type=checkbox]{width:16px;height:16px;cursor:pointer}.goal-ongoing-group label{font-size:13px;color:var(--dm-text-secondary);cursor:pointer}.goal-ongoing-group .hint{font-size:11px;color:var(--dm-text-secondary);margin-left:auto}.goal-color-picker{display:flex;gap:6px;flex-wrap:wrap}.goal-color-option{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.goal-color-option:hover{transform:scale(1.1)}.goal-color-option.selected{border-color:var(--dm-text-primary);box-shadow:0 0 0 2px var(--color-white),0 0 0 3px currentColor}.goal-priority-group{display:flex;gap:6px}.goal-priority-option{flex:1;padding:8px 10px;border:2px solid var(--dm-border);border-radius:6px;background:var(--dm-surface);cursor:pointer;text-align:center;font-size:12px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.goal-priority-option:hover{border-color:var(--dm-border-strong)}.goal-priority-option.selected{border-color:var(--color-primary-600);background:var(--color-primary-50)}.goal-priority-option.high{color:var(--dm-error-text)}.goal-priority-option.medium{color:var(--dm-warning-text)}.goal-priority-option.low{color:var(--dm-success-text)}.goal-form-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:6px;padding-top:14px;border-top:1px solid var(--dm-border);flex-shrink:0}.goal-form-btn{padding:10px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.goal-form-btn.cancel{background:var(--dm-border-subtle);border:none;color:var(--dm-text-primary)}.goal-form-btn.cancel:hover{background:var(--dm-border)}.goal-form-btn.save{background:var(--dm-brand-solid);border:none;color:var(--dm-text-on-brand)}.goal-form-btn.save:hover{box-shadow:var(--shadow-hover)}@media(max-width:768px){.goals-modal{max-height:90vh;border-radius:12px 12px 0 0}.goals-modal .modal-header{padding:16px 20px}.goals-modal .modal-header .modal-title{font-size:18px}.goals-liquidity-summary{padding:16px 20px}.goals-liquidity-value{font-size:24px}.goals-recurring-section{padding:14px 20px}.goals-list-section{padding:16px 20px}.goals-list-header{flex-direction:column;align-items:flex-start;gap:12px}.goals-add-btn{width:100%;justify-content:center}.goal-item{padding:14px}.goal-item-name{font-size:15px}.goal-item-saved{font-size:18px}.goal-form-modal{max-height:95vh;margin:10px}.goal-form-modal .modal-body{padding:16px}.goal-form{gap:12px}.goal-form-row{grid-template-columns:1fr}.goal-form-footer{flex-direction:column-reverse;padding-top:12px}.goal-form-btn{width:100%;text-align:center}.goal-priority-group{flex-direction:row}.goal-priority-option{padding:6px 8px;font-size:11px}}.goals-liquidity-row.main{margin-bottom:8px}.goals-liquidity-row.saved{padding:8px 0}.goals-liquidity-row.saved .goals-liquidity-value{color:var(--color-secondary-500);font-size:18px}.goals-liquidity-divider{height:1px;background:var(--dm-border-strong);margin:8px 0}.goals-liquidity-row.available{padding-top:8px}.goals-liquidity-row.available .goals-liquidity-label{font-weight:600;color:var(--color-primary-500)}.goals-liquidity-row.available .goals-liquidity-value{color:var(--color-primary-500);font-size:24px}.goal-add-savings-btn{width:100%;margin-top:12px;padding:10px 16px;background:var(--color-secondary-800);color:var(--color-white);border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.goal-add-savings-btn:hover{box-shadow:0 4px 12px var(--color-warning-tint)}#add-savings-modal-overlay{z-index:var(--z-popover)!important}.add-savings-modal{max-width:400px;width:95%}.add-savings-modal .modal-header{background:var(--color-secondary-600);color:var(--color-white);padding:16px 20px;border-radius:12px 12px 0 0}.add-savings-modal .modal-header .modal-title{color:var(--color-white);font-size:18px;margin:0}.add-savings-modal .modal-body{padding:20px}.add-savings-goal-name{font-size:16px;font-weight:600;color:var(--dm-text-primary);margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--dm-border)}.add-savings-info{display:flex;flex-direction:column;gap:4px;margin-bottom:16px;font-size:13px;color:var(--dm-text-secondary)}.savings-currency{padding:10px 12px;background:var(--dm-border-subtle);border-radius:8px;font-size:14px;font-weight:500;color:var(--dm-text-secondary);flex-shrink:0}.add-savings-quick-amounts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;margin-bottom:16px}.quick-amount-btn{flex:1;min-width:60px;padding:8px 12px;background:var(--dm-border-subtle);border:2px solid var(--dm-border);border-radius:6px;font-size:13px;font-weight:600;color:var(--dm-text-secondary);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.quick-amount-btn:hover{background:var(--dm-border);border-color:var(--dm-border-strong)}.quick-amount-btn:last-child{background:var(--color-warning-100);border-color:var(--color-warning-300);color:var(--color-secondary-800)}.quick-amount-btn:last-child:hover{background:var(--color-warning-200)}.balance-saved-hint{display:block;font-size:12px;font-weight:500;color:var(--color-secondary-500);margin-top:4px}@media(max-width:768px){.add-savings-modal{margin:10px}.add-savings-quick-amounts{gap:6px}.quick-amount-btn{padding:6px 10px;font-size:12px}}@media(hover:hover){.goal-card:hover{transform:translateY(-3px)}}@media(hover:none){.goal-card:active{transform:scale(.98)}}[data-theme=dark] .goals-liquidity-summary{background:#0596691f;border-color:var(--color-primary-700)}[data-theme=dark] .goal-item.completed{background:#0596691f}[data-theme=dark] .goal-priority-option.selected{background:#05966926}.toast-container{position:fixed;top:calc(env(safe-area-inset-top,0px) + var(--space-4));right:var(--space-4);z-index:var(--z-tooltip);display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none;max-width:min(400px,calc(100vw - var(--space-8)))}@media(min-width:768px){.toast-container{top:var(--space-6);right:var(--space-6)}}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--dm-surface-elevated);border:1px solid var(--dm-border);box-shadow:var(--shadow-popup);font-family:var(--font-body);font-size:var(--text-sm);color:var(--dm-text-primary);pointer-events:auto;opacity:0;transform:translateY(-12px) scale(.95);transition:none;max-width:100%}.toast--visible{animation:toastEnter var(--duration-enter) var(--ease-out-expo) forwards}.toast--exit{animation:toastExit var(--duration-exit) var(--ease-in-quart) forwards}.toast--success{border-left:3px solid var(--color-success);background:var(--dm-success-tint-bg)}.toast--error{border-left:3px solid var(--color-error);background:var(--dm-error-tint-bg)}.toast--warning{border-left:3px solid var(--color-warning);background:var(--dm-warning-tint-bg)}.toast--info{border-left:3px solid var(--color-info);background:var(--dm-info-tint-bg)}.toast-icon{flex-shrink:0;font-size:var(--text-base);line-height:1}.toast-message{flex:1;line-height:var(--leading-snug);word-break:break-word}.toast-close{flex-shrink:0;background:none;border:none;color:var(--dm-text-tertiary);font-size:var(--text-lg);cursor:pointer;padding:var(--space-1);line-height:1;border-radius:var(--radius-sm);transition:color var(--duration-feedback) var(--ease-out),background-color var(--duration-feedback) var(--ease-out)}.toast-close:hover{color:var(--dm-text-primary);background:var(--color-black-alpha-5)}@keyframes toastEnter{0%{opacity:0;transform:translateY(-12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastExit{to{opacity:0;transform:translate(100%) scale(.95)}}@media(prefers-reduced-motion:reduce){.toast--visible{animation:toastFadeIn var(--duration-feedback) ease forwards}.toast--exit{animation:toastFadeOut var(--duration-feedback) ease forwards}}@keyframes toastFadeIn{0%{opacity:0}to{opacity:1}}@keyframes toastFadeOut{to{opacity:0}}@media(pointer:coarse){.toast-close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}}.ocr-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--dm-border);border-radius:10px;background:var(--dm-surface);color:var(--color-primary-600);cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease}.ocr-btn:hover{background:var(--dm-brand-solid);color:var(--dm-text-on-brand)}.ocr-btn:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}.ocr-btn:active{transform:scale(.94)}.ocr-modal-content{max-width:460px;width:100%}.ocr-intro{font-size:.9rem;color:var(--dm-text-secondary);margin-bottom:16px}.ocr-dropzone{border:2px dashed var(--dm-border);border-radius:14px;padding:28px 16px;text-align:center;cursor:pointer;transition:border-color .2s ease,background .2s ease}.ocr-dropzone:hover{border-color:var(--dm-brand-text);background:var(--dm-success-tint-bg)}.ocr-dropzone:focus-visible{border-color:var(--dm-brand-text);background:var(--dm-success-tint-bg);outline:2px solid var(--dm-brand-text);outline-offset:2px}.ocr-dropzone-inner{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--dm-text-secondary);font-size:.92rem}.ocr-preview{margin-top:16px;text-align:center}.ocr-preview-img{max-width:100%;max-height:220px;border-radius:12px;object-fit:contain}.ocr-preview-file{padding:16px;border-radius:12px;background:var(--dm-surface-hover);font-size:.92rem;color:var(--dm-text-primary);word-break:break-all}.ocr-status{margin-top:14px;padding:10px 14px;border-radius:10px;font-size:.9rem;text-align:center}.ocr-status--loading{background:#3b82f61f;color:var(--color-info)}.ocr-status--error{background:#ef44441f;color:var(--color-error)}.ocr-actions{margin-top:18px;display:flex;justify-content:center}.ocr-actions .btn-primary{width:100%}.ocr-no-keys{margin-top:16px;padding:16px;border-radius:12px;background:#f59e0b1a;text-align:center}.ocr-no-keys p{font-size:.9rem;color:var(--dm-text-secondary);margin-bottom:12px}.ai-keys-list{margin:12px 0;display:flex;flex-direction:column;gap:8px}.ai-keys-empty{font-size:.85rem;opacity:.8}.ai-key-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:10px;background:var(--dm-surface-hover);border:1px solid var(--dm-border-subtle);color:var(--dm-text-primary)}.ai-key-mask{font-family:monospace;font-size:.9rem;letter-spacing:1px}.ai-key-remove{background:transparent;border:none;color:inherit;font-size:1.3rem;line-height:1;cursor:pointer;padding:0 6px;opacity:.85}.ai-key-remove:hover{opacity:1}.ai-add-key{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.ai-key-input{flex:1 1 60%;min-width:0;padding:9px 12px;border-radius:10px;border:1px solid var(--dm-border-control);font-size:.9rem}.ai-enabled-toggle{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:.9rem;cursor:pointer}.coverage-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.coverage-card{display:flex;flex-direction:column;gap:6px;padding:14px;border:1px solid var(--dm-border);border-radius:12px;background:var(--dm-surface)}.coverage-card-label{font-size:.85rem;color:var(--dm-text-secondary)}.coverage-card-percent{font-size:1.5rem;font-weight:700;line-height:1.1;color:var(--dm-text-primary)}.coverage-bar{height:6px;border-radius:999px;background:var(--dm-surface-hover);overflow:hidden}.coverage-bar-fill{height:100%;border-radius:inherit;background:var(--color-primary-600);transition:width .3s ease}.coverage-card-detail{font-size:.8rem;color:var(--dm-text-secondary)}.coverage-card-status{font-size:.78rem;font-weight:600}.coverage-card-status.is-complete{color:var(--color-success)}.coverage-card-status.is-missing{color:var(--color-warning)}.coverage-categories-title{margin:0 0 8px;font-size:.9rem;color:var(--dm-text-primary)}.coverage-categories{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:6px}.coverage-category-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.85rem;color:var(--dm-text-secondary)}.coverage-category-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coverage-category-missing{flex-shrink:0;font-weight:600;color:var(--color-warning)}#payment-backfill-btn:disabled{opacity:.6;cursor:default}.backfill-modal-content{max-width:560px;width:100%}.backfill-intro{font-size:.9rem;color:var(--dm-text-secondary);margin-bottom:16px}.backfill-groups{display:flex;flex-direction:column;gap:10px;max-height:50vh;overflow-y:auto}.backfill-group{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;padding:12px;border:1px solid var(--dm-border);border-radius:12px;background:var(--dm-surface)}.backfill-group.is-decided{border-color:var(--color-success)}.backfill-group-name{font-weight:600;color:var(--dm-text-primary);overflow:hidden;text-overflow:ellipsis}.backfill-group-count{font-size:.8rem;color:var(--dm-text-secondary)}.backfill-group-select{grid-column:1;width:100%}.backfill-group-status{grid-column:2;font-size:.8rem;font-weight:600;color:var(--color-success)}.backfill-summary{margin:16px 0;font-size:.9rem;color:var(--dm-text-primary)}.backfill-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.backfill-empty{padding:24px 8px;text-align:center;color:var(--dm-text-secondary)}.cash-share-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.cash-share-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cash-share-filters select{flex:1 1 auto;min-width:0}.cash-share-container canvas{margin-bottom:16px}.cash-share-summary{margin:0;font-size:.85rem;color:var(--dm-text-secondary)}@media(max-width:640px){.coverage-cards,.backfill-group{grid-template-columns:minmax(0,1fr)}.backfill-group-status{grid-column:1}}.tax-wizard-content{max-width:620px;width:100%}#tax-wizard-body:focus-visible,.tax-wizard-file-remove:focus-visible,.tax-wizard-option input:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}.tax-wizard-progress{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.tax-wizard-progress-label{font-size:.8rem;font-weight:600;color:var(--dm-text-secondary)}.tax-wizard-progress-track{display:block;height:6px;border-radius:999px;background:var(--dm-border);overflow:hidden}.tax-wizard-progress-fill{display:block;height:100%;border-radius:999px;background:var(--dm-brand-solid);transition:width .3s ease}.tax-wizard-fieldset{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.tax-wizard-legend{font-size:1.05rem;font-weight:600;color:var(--dm-text-primary);margin-bottom:8px;padding:0}.tax-wizard-option{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--dm-border);border-radius:12px;background:var(--dm-surface);cursor:pointer;min-height:44px}.tax-wizard-option:hover{border-color:var(--color-primary-600)}.tax-wizard-option:has(input:checked){border-color:var(--color-primary-600);background:var(--dm-surface-hover)}.tax-wizard-filter-intro{font-size:.85rem;line-height:1.5;color:var(--dm-text-secondary);margin-bottom:12px}.tax-wizard-scope-note{font-size:.85rem;line-height:1.5;color:var(--dm-text-secondary);border-left:3px solid var(--dm-border);padding-left:12px;margin-bottom:16px}.tax-wizard-option:has(.tax-wizard-group-hint){align-items:flex-start}.tax-wizard-option:has(.tax-wizard-group-hint) span{display:flex;flex-direction:column;gap:2px}.tax-wizard-group-hint{font-size:.8rem;line-height:1.4;color:var(--dm-text-secondary)}.tax-wizard-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.tax-wizard-section-title{font-size:1.05rem;color:var(--dm-text-primary);margin:0}.tax-wizard-badge{flex-shrink:0;font-size:.75rem;font-weight:600;padding:2px 10px;border-radius:999px;background:var(--dm-border);color:var(--dm-text-secondary)}.tax-wizard-section button:disabled{opacity:.55;cursor:default}.tax-wizard-question,.tax-wizard-folder,.tax-wizard-empty{font-size:.9rem;color:var(--dm-text-secondary);margin-bottom:12px}.tax-wizard-warning{font-size:.85rem;color:var(--dm-warning-text);margin-top:8px}.tax-wizard-files-title{font-size:.85rem;font-weight:600;color:var(--dm-text-primary);margin:16px 0 8px}.tax-wizard-files{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;max-height:32vh;overflow-y:auto}.tax-wizard-file{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border:1px solid var(--dm-border);border-radius:10px}.tax-wizard-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tax-wizard-file-remove{flex-shrink:0;min-height:44px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--dm-error-text);font-weight:600;cursor:pointer}.tax-wizard-file-remove:hover{background:var(--dm-surface-hover)}.tax-wizard-summary-heading{font-size:.9rem;font-weight:600;color:var(--dm-text-primary);margin:16px 0 8px}.tax-wizard-summary-list{margin:0;padding-left:20px;font-size:.9rem;color:var(--dm-text-secondary)}.tax-wizard-reports{margin-top:16px;font-size:.85rem;color:var(--dm-text-secondary)}.tax-wizard-disclaimer{margin:0 0 20px;padding:12px 16px;border-left:3px solid var(--color-warning);border-radius:0 8px 8px 0;background:var(--dm-surface-hover);color:var(--dm-text-secondary);font-size:.875rem;line-height:1.55}.tax-wizard-disclaimer-link{display:inline-block;margin-top:4px;color:var(--dm-brand-text);text-decoration:underline;white-space:nowrap}.tax-wizard-disclaimer-link:focus-visible{outline:2px solid var(--dm-brand-text);outline-offset:2px}.tax-wizard-status{margin:16px 0 0;min-height:1.2em;font-size:.9rem;color:var(--dm-text-primary)}.tax-wizard-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.tax-wizard-actions button{min-height:44px}@media(max-width:640px){.tax-wizard-actions{flex-direction:column-reverse}.tax-wizard-actions button{width:100%}}[data-theme=dark] .tax-wizard-badge{background:var(--dm-surface-elevated);color:var(--dm-text-primary)}.tax-guide-step-title{font-size:1.1rem;font-weight:600;color:var(--dm-text-primary);margin:0 0 8px}.tax-guide-step-body{font-size:.95rem;line-height:1.6;color:var(--dm-text-secondary);margin-bottom:16px}.tax-guide-step-points{margin:0 0 16px;padding-left:20px;display:flex;flex-direction:column;gap:10px;font-size:.9rem;line-height:1.6;color:var(--dm-text-primary)}.tax-guide-link{margin-bottom:16px;font-size:.85rem}.tax-guide-link a{color:var(--dm-brand-text);font-weight:600}.tax-guide-link a:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}.tax-guide-decisive{font-size:.85rem;font-weight:600;color:var(--dm-warning-text);margin-bottom:12px}.tax-guide-unverified{font-size:.85rem;line-height:1.5;color:var(--dm-warning-text);border-left:3px solid currentcolor;padding-left:12px;margin-bottom:16px}.tax-guide-calendar,.tax-guide-novelties,.tax-guide-match{margin-top:20px;padding-top:16px;border-top:1px solid var(--dm-border)}.tax-guide-calendar h4,.tax-guide-novelties h4,.tax-guide-match h4{font-size:.9rem;font-weight:600;color:var(--dm-text-primary);margin:0 0 12px}.tax-guide-calendar{overflow-x:auto}.tax-guide-calendar-table{width:100%;border-collapse:collapse;font-size:.85rem}.tax-guide-calendar-table th{text-align:left;font-weight:400;color:var(--dm-text-secondary);padding:8px 12px 8px 0;border-bottom:1px solid var(--dm-border)}.tax-guide-calendar-table td{text-align:right;white-space:nowrap;font-weight:600;color:var(--dm-text-primary);padding:8px 0;border-bottom:1px solid var(--dm-border)}.tax-guide-novelties ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:.85rem;line-height:1.5;color:var(--dm-text-secondary)}.tax-guide-match p{font-size:.9rem;line-height:1.5;margin-bottom:12px;color:var(--dm-text-primary)}.tax-guide-match-intro,.tax-guide-match-empty,.tax-guide-match-note{color:var(--dm-text-secondary);font-size:.85rem}.tax-guide-match-warning,.tax-guide-match-mortgages{display:flex;flex-direction:column;gap:4px}.tax-guide-match-warning strong{color:var(--dm-warning-text)}.tax-guide-match-warning small,.tax-guide-match-mortgages small{font-size:.8rem;line-height:1.4;color:var(--dm-text-secondary)}.tax-guide-match h5{font-size:.85rem;font-weight:600;color:var(--dm-text-primary);margin:0 0 8px}.tax-guide-match-categories{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:6px;font-size:.85rem;color:var(--dm-text-secondary)}.tax-guide-disclaimer{margin-top:20px;padding-top:12px;border-top:1px solid var(--dm-border);font-size:.75rem;line-height:1.5;color:var(--dm-text-secondary)}.year-over-year-controls{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.year-over-year-controls .form-group{flex:1 1 160px;min-width:0}.year-over-year-table{overflow-x:auto;margin-bottom:16px}.yoy-table{width:100%;border-collapse:collapse;font-size:.9rem}.yoy-table th,.yoy-table td{padding:8px 12px;text-align:right;border-bottom:1px solid var(--dm-border);white-space:nowrap}.yoy-table th:first-child,.yoy-table .yoy-category{text-align:left;white-space:normal}.yoy-table thead th{font-weight:600;color:var(--dm-text-secondary)}.yoy-table tfoot td{font-weight:600;border-top:2px solid var(--dm-border);border-bottom:none}.yoy-cell-btn{appearance:none;background:none;border:none;padding:2px 4px;margin:-2px -4px;font:inherit;color:inherit;cursor:pointer;border-radius:4px;text-decoration:underline dotted;text-underline-offset:3px;text-decoration-color:var(--dm-text-tertiary)}.yoy-cell-btn:hover{background:var(--dm-surface-hover);text-decoration-color:currentcolor}.yoy-cell-btn:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}.yoy-cell-btn:active{background:var(--dm-border-subtle)}[data-theme=dark] .yoy-cell-btn:focus-visible{outline-color:var(--dm-brand-text)}[data-theme=dark] .yoy-cell-btn:hover{background:var(--dm-surface-hover)}[data-theme=dark] .yoy-cell-btn:active{background:var(--dm-surface-elevated)}.yoy-delta-up{color:var(--dm-error-text)}.yoy-delta-down{color:var(--dm-success-text)}.yoy-delta-flat{color:var(--dm-text-secondary)}.yoy-empty,.year-over-year-summary{margin:0;font-size:.85rem;color:var(--dm-text-secondary)}.year-over-year-summary{margin-top:12px}@media(max-width:640px){.year-over-year-controls{gap:12px}.yoy-table{font-size:.82rem}.yoy-table th,.yoy-table td{padding:6px 8px}.yoy-table td.yoy-amount{padding-block:0}.yoy-cell-btn{display:inline-flex;align-items:center;justify-content:flex-end;min-height:44px;min-width:44px;margin-block:0}}.money,.add-capital-investment-current,.add-return-investment-current,.amount-current,.amount-previous,.balance-amount,.balance-recurring-hint,.balance-saved-hint,.benchmark-amount,.breakdown-value,.budget-copy-amount,.category-amount,.chip-amount,.comparison-balance-value,.comparison-bar-value,.comparison-detail-amount,.comparison-expense-color,.comparison-income-color,.comparison-total-value,.country-rank-amount,.currency-breakdown-total-amount,.deductible-item-amount,.entrata-importo,.expense-amount,.expense-detail-amount,.expenses-day-item-amount,.expenses-day-total-value,.goal-item-saved,.goal-monthly-required-value,.goals-available-after-value,.goals-liquidity-value,.goals-recurring-item-amount,.goals-recurring-total-value,.impulse-average,.income-amount,.item-amount,.item-value,.manage-recurring-amount,.month-spending-average,.other-year-value,.period-expense,.period-income,.period-investment,.popup-expense-amount,.popup-investment-return,.popup-summary-value,.recurring-expense-amount,.sankey-total,.savings-rate-amount,.spesa-importo,.stat-value,.subcategory-amount,.summary-amount,.transaction-amount,.withdraw-capital-investment-current,.withdraw-max-hint,.yoy-amount{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
/*$vite$:1*/