@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial;--tw-leading:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial;--tw-leading:initial}}}@layer theme{:root,:host{--spacing:.25rem;--container-md:28rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--leading-tight:1.25;--leading-snug:1.375;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-8{margin-top:calc(var(--spacing)*8)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\[320px\]{min-height:320px}.min-h-screen{min-height:100vh}.\!w-full{width:100%!important}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.flex-none{flex:none}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.overscroll-y-contain{overscroll-behavior-y:contain}.rounded{border-radius:.25rem}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--color-danger\)\]{border-color:var(--color-danger)}.bg-\[var\(--color-bg\)\]{background-color:var(--color-bg)}.bg-\[var\(--color-card\)\]{background-color:var(--color-card)}.bg-\[var\(--color-error-bg\)\]{background-color:var(--color-error-bg)}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-4{padding-inline:calc(var(--spacing)*4)}.pt-4{padding-top:calc(var(--spacing)*4)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-5{padding-bottom:calc(var(--spacing)*5)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-\[var\(--color-danger\)\]{color:var(--color-danger)}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-\[var\(--text-muted\)\]{color:var(--text-muted)}.text-\[var\(--text-primary\)\]{color:var(--text-primary)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-85{opacity:.85}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-sm\)\]{--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:underline:hover{text-decoration-line:underline}}@media not all and (min-width:80rem){.max-lg\:order-0{order:0}.max-lg\:order-1{order:1}.max-lg\:order-3{order:3}.max-lg\:order-4{order:4}.max-lg\:order-last{order:9999}.max-lg\:mt-0{margin-top:calc(var(--spacing)*0)}.max-lg\:mt-1{margin-top:calc(var(--spacing)*1)}.max-lg\:mb-0{margin-bottom:calc(var(--spacing)*0)}.max-lg\:\!hidden{display:none!important}.max-lg\:flex{display:flex}.max-lg\:hidden{display:none}.max-lg\:\!h-12{height:calc(var(--spacing)*12)!important}.max-lg\:w-full{width:100%}.max-lg\:flex-col{flex-direction:column}.max-lg\:items-center{align-items:center}.max-lg\:items-start{align-items:flex-start}.max-lg\:items-stretch{align-items:stretch}.max-lg\:justify-between{justify-content:space-between}.max-lg\:gap-0{gap:calc(var(--spacing)*0)}.max-lg\:gap-1{gap:calc(var(--spacing)*1)}.max-lg\:gap-2{gap:calc(var(--spacing)*2)}.max-lg\:gap-3{gap:calc(var(--spacing)*3)}.max-lg\:overflow-visible{overflow:visible}.max-lg\:\!rounded-xl{border-radius:var(--radius-xl)!important}.max-lg\:rounded-xl{border-radius:var(--radius-xl)}.max-lg\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.max-lg\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.max-lg\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.max-lg\:leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.max-lg\:leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.max-lg\:font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.max-lg\:text-\[var\(--text-muted\,\#64748b\)\]{color:var(--text-muted,#64748b)}}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:48rem){.md\:p-6{padding:calc(var(--spacing)*6)}}@media (min-width:80rem){.lg\:mx-0{margin-inline:calc(var(--spacing)*0)}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:inline{display:inline}.lg\:\!h-auto{height:auto!important}.lg\:\!w-auto{width:auto!important}.lg\:max-w-none{max-width:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:gap-3{gap:calc(var(--spacing)*3)}.lg\:gap-\[4px\]{gap:4px}.lg\:\!rounded-lg{border-radius:var(--radius-lg)!important}}}:root{--color-primary:#0038a8;--color-success:#059669;--color-danger:#ce1126;--color-bg:#f5f6f8;--color-card:#fff;--color-border:#e2e8f0;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-premium:#c9a227;--chart-income:var(--color-success);--chart-expense:var(--color-danger);--chart-savings:var(--color-primary);--color-blue:var(--color-primary);--color-blue-dark:#002d8a;--color-blue-light:#1a4fbf;--color-blue-muted:#0038a808;--color-red:var(--color-danger);--color-red-muted:#ce112614;--color-yellow:#fcd116;--color-yellow-muted:#fcd1161f;--background:var(--color-bg);--foreground:var(--color-text-primary);--surface:var(--color-card);--surface-elevated:var(--color-card);--border:var(--color-border);--border-soft:#e2e8f0d9;--border-muted:#f1f5f9;--text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary);--text-muted:#475569;--text-helper:#64748b;--text-inverse:#fff;--color-primary-hover:#002d8a;--color-primary-shadow:#0038a82e;--color-success-muted:#05966914;--color-error:var(--color-danger);--color-error-bg:#fef2f2;--color-warning:#fcd116;--sidebar-width:240px;--sidebar-width-collapsed:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 12px #0000000f;--shadow-lg:0 10px 40px #00000014;--text-display:32px;--text-h1:24px;--text-h2:20px;--text-h3:16px;--text-body:14px;--text-small:12px;--text-data-lg:22px;--text-data-md:18px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--motion-fast:.15s;--motion-medium:.3s;--motion-ambient:3s;--ease-enter:ease-out;--ease-exit:ease-in;--ease-ambient:ease-in-out}*{box-sizing:border-box}html,body{height:100%;overflow-x:hidden}#root,body>div:first-child{min-height:100%}@media (max-width:1279px){.goal-momentum-executive,.card.dash-card{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.card.dash-card{margin-top:var(--space-6)}.dash-card-header{align-items:stretch;gap:var(--space-3);flex-direction:column}.dash-card-header>div:last-child{width:100%;align-items:stretch!important;gap:var(--space-4)!important;flex-direction:column!important;display:flex!important}.dash-card-header .card-outline-link,.dash-card-header .btn-primary{box-sizing:border-box;justify-content:center;width:100%}.free-plan-banner{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.main-wrapper{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.tabular-nums{font-variant-numeric:tabular-nums}.flow-snapshot-value,.goal-momentum-executive-value,.kpi-value,.marathon-goal-amount{overflow-wrap:break-word;word-break:break-word;min-width:0}body{background:var(--background);color:var(--foreground);font-family:var(--font-geist-sans),system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}@media (max-width:1279px){html.drawer-scroll-lock{overscroll-behavior:none;touch-action:manipulation;overflow:hidden}.dashboard-layout.dashboard-layout--drawer-open{overscroll-behavior:none}.dashboard-layout.dashboard-layout--drawer-open .main-wrapper{overscroll-behavior:none;overflow:hidden}}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sidebar{width:var(--sidebar-width);background:var(--color-blue);height:100vh;max-height:100vh;color:var(--text-inverse);flex-direction:column;align-self:flex-start;display:flex;position:sticky;top:0;overflow:hidden}@media (min-width:1280px){.dashboard-layout.dashboard-layout--drawer-portal-mounted .main-wrapper{margin-left:var(--sidebar-width)}.sidebar.sidebar-layout-portal{height:100vh;max-height:100vh;width:var(--sidebar-width);z-index:50;will-change:auto;backface-visibility:visible;align-self:stretch;position:fixed;top:0;bottom:0;left:0;transform:none}.sidebar.sidebar-layout-portal.drawer-open{z-index:50;transform:none}}.sidebar-nav-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden auto}.sidebar-scroll-column{box-sizing:border-box;flex-direction:column;flex:1 0 auto;min-height:min-content;display:flex}.sidebar-logo{padding:var(--space-3)var(--space-3)var(--space-3)28px;border-bottom:1px solid #ffffff1a;flex-shrink:0;justify-content:flex-start;align-items:center;display:flex}.sidebar-logo a,.sidebar-logo span{max-width:100%;display:block}.sidebar-logo img{object-fit:contain;object-position:left center;width:auto;max-width:100%;max-height:48px}.sidebar-logo h1{font-size:var(--text-h1);letter-spacing:-.02em;color:var(--text-inverse);margin:0;font-weight:700}.sidebar-logo p{margin:var(--space-1)0 0;font-size:var(--text-small);color:#fff9;letter-spacing:.04em;text-transform:uppercase}.sidebar-nav{padding:var(--space-4)var(--space-3);flex-direction:column;flex-shrink:0;gap:4px;display:flex}.sidebar-section-title{text-transform:uppercase;letter-spacing:.04em;opacity:.65;color:#fff9;padding:6px 16px;font-size:11px;font-weight:600}.sidebar-link{align-items:center;gap:var(--space-3);border-radius:var(--radius-sm);color:#ffffffbf;min-height:38px;transition:background-color var(--motion-fast)var(--ease-enter),color var(--motion-fast)var(--ease-enter);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;padding:8px 16px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;display:flex}.sidebar-link:hover{color:var(--text-inverse);background:#ffffff1a}.sidebar-link.active{color:var(--text-inverse);border-left:3px solid var(--color-yellow);background:#ffffff26;padding-left:13px}.sidebar-link svg{flex-shrink:0;width:18px;height:18px}.sidebar-link-text{white-space:nowrap}.sidebar-footer{padding:var(--space-4);background-color:var(--color-blue);z-index:2;background-image:linear-gradient(#0000001a 0%,#0000002e 100%);border-top:1px solid #ffffff1f;flex-shrink:0;margin-top:auto;margin-bottom:0;position:sticky;bottom:0;box-shadow:0 -10px 28px #00000038}.sidebar-footer-inner{gap:var(--space-4);flex-direction:column;display:flex}.sidebar-user-block{gap:var(--space-2);flex-direction:column;display:flex}.sidebar-user-name{color:#fffffff2;margin:0;font-size:14px;font-weight:600}.sidebar-clarity-badge{opacity:.75;color:#fffc;margin:0;font-size:12px}.sidebar-plan-card{border-radius:var(--radius-sm);background:#ffffff14;align-items:center;gap:4px;margin-top:0;padding:8px;display:flex}.sidebar-plan-badge{letter-spacing:.05em;color:var(--color-yellow);flex-shrink:0;font-size:10px;font-weight:700}.sidebar-plan-status{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar-plan-status strong{color:#fffffff2;font-size:12px;font-weight:600}.sidebar-plan-status span{color:#ffffffb3;font-size:11px}.sidebar-footer-actions{gap:var(--space-3);flex-direction:column;display:flex}.sidebar-footer-email{color:#ffffff8c;word-break:break-all;margin:0;font-size:11px;line-height:1.35}.sidebar-logout{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4)var(--space-2)0;border-radius:var(--radius-sm);color:#ffffffbf;width:100%;min-height:44px;font-size:var(--text-body);cursor:pointer;transition:background-color var(--motion-fast)var(--ease-enter);background:#ffffff14;border:none;font-family:inherit;display:flex}.sidebar-logout:hover{color:var(--text-inverse);background:#ffffff26}.dashboard-layout{min-height:100vh}.main-wrapper{flex-direction:column;flex:1;min-width:0;max-width:100%;min-height:100%;display:flex}.main-content{min-height:0;padding:var(--space-5);flex:1;min-width:0;max-width:100%;margin-left:0;overflow-x:hidden}.dashboard-footer{text-align:center;color:#6b7280;padding:1rem var(--space-5);border-top:1px solid #e5e7eb;flex-shrink:0;font-size:.875rem}@media (max-width:1279px){.dashboard-footer{padding:1rem var(--space-4);font-size:.8125rem}.sidebar{height:100%;max-height:none;width:var(--sidebar-width);will-change:left;backface-visibility:visible;z-index:50;transition:left .3s;position:fixed;top:0;left:-100%;transform:none}.sidebar.drawer-open{z-index:1100;left:0}.sidebar-link-text{clip:auto;white-space:nowrap;border:0;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.sidebar-link{padding:var(--space-3)var(--space-4);justify-content:flex-start}.sidebar-link.active{padding-left:13px}.sidebar .sidebar-nav a.sidebar-link[href=\/dashboard],.sidebar .sidebar-nav a.sidebar-link[href="/dashboard/goals"],.sidebar .sidebar-nav a.sidebar-link[href="/dashboard/income"],.sidebar .sidebar-nav a.sidebar-link[href="/dashboard/expenses"],.sidebar .sidebar-link.sidebar-nav-hide-mobile{display:none!important}.sidebar .sidebar-footer{padding-bottom:calc(6rem + env(safe-area-inset-bottom,0px))}.sidebar-nav{padding:var(--space-4)var(--space-3);align-items:stretch}.sidebar-footer-email{display:block}.sidebar-logout-text{clip:auto;white-space:nowrap;border:0;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.sidebar-logout{padding:var(--space-2)var(--space-4)var(--space-2)0;justify-content:flex-start}.sidebar-logo img{max-height:60px}.main-content{padding:var(--space-4)}}@media (max-width:480px){.main-content{padding:var(--space-3)}}@media (max-width:1279px){.kpi-value{font-size:22px;font-weight:600}.dash-card-title{font-size:var(--text-h3)}.goal-momentum-executive-title,.page-header h2{font-size:var(--text-h2)}}.drawer-backdrop{z-index:40;cursor:pointer;width:100%;height:100%;font:inherit;color:inherit;appearance:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-touch-callout:none;background:#0006;border:none;border-radius:0;margin:0;padding:0;display:none;position:fixed;inset:0}@media (max-width:1279px){.drawer-backdrop.visible{z-index:1000;display:block}}.modal-backdrop{z-index:9999;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface);border-radius:var(--radius-md);width:min(480px,92vw);max-height:90vh;box-shadow:var(--shadow-lg);overflow-y:auto}.modal-panel-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-panel-body{-webkit-overflow-scrolling:touch;overflow-y:auto}.modal-backdrop-premium{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-panel-premium{border:1px solid var(--border-soft,#0000000f)}.modal-close-btn:hover{color:var(--text-primary,#111827);background:var(--color-blue-muted,#0038a80f)}.budget-planner-amount-input:focus-visible,.budget-planner-note-input:focus-visible{outline:none}.budget-planner-amount-input:focus-visible{box-shadow:0 0 0 2px #2563eb26;border-color:var(--color-primary,#2563eb)!important}.budget-planner-note-input:focus-visible{box-shadow:0 0 0 1px #94a3b833;border-color:#94a3b8!important}.budget-note-icon-btn:hover{color:#334155;background-color:#47556914}.budget-note-icon-btn:active{background-color:#4755691f}@media (max-width:768px){.modal-backdrop{padding:var(--space-2)}.modal-panel{width:min(92vw,480px);max-height:min(90vh,100dvh - 16px)}.modal-panel-header,.modal-panel-body{padding:var(--space-4)var(--space-3)}}.add-expense-field{margin-bottom:20px}.add-expense-field:last-of-type{margin-bottom:0}.add-expense-suggestion-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-helper,#64748b);font-size:11px;font-weight:500}.add-expense-suggestion-stars{color:var(--color-blue,#0038a8);opacity:.85;align-items:center;display:inline-flex}.add-expense-chips{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.add-expense-chip{white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:9999px;align-items:center;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:500;transition:border-color .2s,color .2s,box-shadow .2s,background .2s;display:inline-flex}.add-expense-chip-gradient{color:var(--text-secondary,#475569);background:linear-gradient(160deg,var(--surface,#fff)0%,var(--color-blue-muted,#0038a80f)50%,var(--surface,#fff)100%);border-color:#0038a81f;box-shadow:0 1px 2px #0038a80a}.add-expense-chip-gradient:hover{color:var(--color-blue,#0038a8);background:linear-gradient(160deg,#0038a80f 0%,#0038a81a 50%,#0038a80f 100%);border-color:#0038a840;box-shadow:0 2px 6px #0038a81a}.add-expense-chip-gradient.active{border-color:var(--color-blue,#0038a8);color:var(--color-blue,#0038a8);background:linear-gradient(160deg,#0038a81f 0%,#0038a82e 50%,#0038a81f 100%);box-shadow:0 2px 8px #0038a833}.add-expense-chip-gradient.active:hover{border-color:var(--color-blue,#0038a8);background:linear-gradient(160deg,#0038a826 0%,#0038a838 50%,#0038a826 100%);box-shadow:0 3px 10px #0038a840}.mobile-fab{background:var(--color-blue);color:#fff;width:56px;height:56px;box-shadow:var(--shadow-lg);z-index:1000;cursor:pointer;font:inherit;transition:transform var(--motion-fast)var(--ease-enter),box-shadow var(--motion-fast)var(--ease-enter);border:none;border-radius:50%;justify-content:center;align-items:center;display:none;position:fixed;bottom:20px;right:20px}.mobile-fab:hover{box-shadow:var(--shadow-xl);transform:scale(1.05)}.mobile-fab:active{transform:scale(.98)}@media (max-width:1279px){.mobile-fab{display:flex}}.mobile-fab-backdrop{z-index:999;background:0 0;display:none;position:fixed;inset:0}.mobile-fab-menu{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;flex-direction:column;gap:8px;min-width:160px;padding:8px;display:none;position:fixed;bottom:90px;right:20px}@media (max-width:1279px){.mobile-fab-backdrop{display:block}.mobile-fab-menu{display:flex}}.mobile-fab-menu-item{border-radius:var(--radius-sm);width:100%;min-height:44px;font-size:var(--text-body);color:var(--text-primary);text-align:left;cursor:pointer;transition:background-color var(--motion-fast)var(--ease-enter);background:0 0;border:none;padding:0 16px;font-family:inherit;font-weight:500;display:block}.mobile-fab-menu-item:hover{background:var(--color-blue-muted);color:var(--color-primary)}.mobile-fab-menu-item:active{background:var(--border-muted)}.mobile-bottom-nav,.mobile-bottom-nav-sheet-backdrop,.mobile-bottom-nav-sheet{display:none}@media (max-width:1279px){.dashboard-layout{--mobile-bottom-nav-row-min-h:56px;--mobile-bottom-nav-fab-size:54px;--mobile-bottom-nav-fab-overlap:24px;--mobile-bottom-nav-pad-bottom:max(7.5rem,calc(var(--mobile-bottom-nav-row-min-h) + var(--mobile-bottom-nav-fab-overlap) + env(safe-area-inset-bottom,0px) + 48px))}.mobile-bottom-nav{z-index:950;padding-bottom:env(safe-area-inset-bottom,0px);background:linear-gradient(#fffffff7 0%,#f4f7fc 38%,#e8eef8 72%,#dfe8f4 100%);border-top:1px solid #0038a81f;display:block;position:fixed;bottom:0;left:0;right:0;box-shadow:inset 0 -1px #ffffffe6,0 -8px 28px #0038a814}.mobile-bottom-nav-track{box-sizing:border-box;width:100%;position:relative}.mobile-bottom-nav-fab{z-index:3;width:var(--mobile-bottom-nav-fab-size);height:var(--mobile-bottom-nav-fab-size);cursor:pointer;font:inherit;color:#fff;background:linear-gradient(145deg,#0048c4 0%,var(--color-primary,#0038a8)45%,#002d7a 100%);transform:translate(-50%,calc(-1*var(--mobile-bottom-nav-fab-overlap)));-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;transition:transform .18s,box-shadow .18s;display:flex;position:absolute;top:0;left:50%;box-shadow:0 4px 16px #0038a86b,0 2px 6px #0f172a1f}.mobile-bottom-nav-fab:hover,.mobile-bottom-nav-fab:focus-visible{transform:translate(-50%,calc(-1*var(--mobile-bottom-nav-fab-overlap) - 2px));outline:none;box-shadow:0 8px 22px #0038a87a,0 2px 8px #0f172a24}.mobile-bottom-nav-fab:active{transform:translate(-50%,calc(-1*var(--mobile-bottom-nav-fab-overlap) + 1px))}.mobile-bottom-nav-row{box-sizing:border-box;width:100%;min-height:var(--mobile-bottom-nav-row-min-h);flex-flow:row;justify-content:space-between;align-items:center;gap:2px;padding:10px 6px 12px;display:flex}.mobile-bottom-nav-fab-placeholder{flex:0 0 var(--mobile-bottom-nav-fab-size);width:var(--mobile-bottom-nav-fab-size);min-width:var(--mobile-bottom-nav-fab-size);pointer-events:none;visibility:hidden;align-self:center;height:1px}.mobile-bottom-nav-item{cursor:pointer;-webkit-touch-callout:none;text-align:center;min-width:0;max-width:100%;color:var(--text-muted,#64748b);box-sizing:border-box;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:none;flex-flow:column;flex:1 1 0;justify-content:center;align-items:center;gap:6px;margin:0;padding:6px 2px;font-family:inherit;text-decoration:none;transition:color .15s,opacity .15s;display:flex}.mobile-bottom-nav-item--menu{z-index:4;position:relative}.mobile-bottom-nav-item:hover,.mobile-bottom-nav-item:focus-visible{color:var(--color-primary,#0038a8);outline:none}.mobile-bottom-nav-item.active{color:var(--color-primary,#0038a8);opacity:1}.mobile-bottom-nav-item:not(.active){opacity:.88}.mobile-bottom-nav-icon{width:24px;height:24px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;display:flex}.mobile-bottom-nav-svg{flex-shrink:0;display:block}.mobile-bottom-nav-label{letter-spacing:.01em;text-align:center;white-space:normal;overflow-wrap:break-word;word-break:break-word;flex-shrink:0;width:100%;max-width:100%;margin:0;padding:0;font-size:10px;font-weight:600;line-height:1.2;display:block}.mobile-bottom-nav-item.active .mobile-bottom-nav-label{font-weight:700}.mobile-bottom-nav-sheet-backdrop{z-index:1150;cursor:pointer;background:#0f172a73;border:none;margin:0;padding:0;animation:.2s forwards mobile-nav-backdrop-in;display:block;position:fixed;inset:0}@keyframes mobile-nav-backdrop-in{0%{opacity:0}to{opacity:1}}.mobile-bottom-nav-sheet{left:12px;right:12px;bottom:calc(var(--mobile-bottom-nav-pad-bottom) + 4px);z-index:1160;background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:16px;flex-direction:column;gap:10px;max-width:400px;margin:0 auto;padding:20px 18px 18px;animation:.22s cubic-bezier(.22,1,.36,1) forwards mobile-nav-sheet-in;display:flex;position:fixed;box-shadow:0 24px 48px #0f172a2e}@keyframes mobile-nav-sheet-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.mobile-bottom-nav-sheet-title{color:var(--text-primary,#0f172a);letter-spacing:-.02em;margin:0;font-size:1.05rem;font-weight:700}.mobile-bottom-nav-sheet-sub{color:var(--text-muted,#64748b);margin:-4px 0 4px;font-size:13px;line-height:1.35}.mobile-bottom-nav-sheet-action{border:1px solid var(--border,#e2e8f0);background:var(--background,#f8fafc);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:14px 16px;font-family:inherit;transition:background .15s,border-color .15s;display:flex}.mobile-bottom-nav-sheet-action:hover,.mobile-bottom-nav-sheet-action:focus-visible{background:var(--color-blue-muted,#0038a814);border-color:#0038a840;outline:none}.mobile-bottom-nav-sheet-action-label{color:var(--text-primary,#0f172a);font-size:16px;font-weight:700}.mobile-bottom-nav-sheet-action-hint{color:var(--text-muted,#64748b);font-size:12px}.mobile-bottom-nav-sheet-action-accent .mobile-bottom-nav-sheet-action-label{color:var(--color-success,#059669)}.mobile-bottom-nav-sheet-action-warn .mobile-bottom-nav-sheet-action-label{color:var(--color-danger,#ce1126)}.dashboard-layout .main-wrapper .main-content{padding-bottom:var(--mobile-bottom-nav-pad-bottom);overflow-x:visible}.dashboard-layout .footer.footer-dashboard-mobile{margin-top:.25rem}.dashboard-layout .footer-dashboard-mobile .footer-inner{padding:8px 16px 6px}.dashboard-layout .footer-dashboard-mobile{padding-bottom:calc(var(--mobile-bottom-nav-pad-bottom) + 8px)}.dashboard-layout .footer.footer-dashboard-mobile .footer-columns{gap:8px}.dashboard-layout .footer.footer-dashboard-mobile .footer-brand-title{margin:0 0 2px;font-size:13px}.dashboard-layout .footer.footer-dashboard-mobile .footer-brand-tagline{max-width:22rem;margin-left:auto;margin-right:auto;font-size:10px;line-height:1.35}.dashboard-layout .footer.footer-dashboard-mobile .footer-social-label{margin:0 0 4px;font-size:9px}.dashboard-layout .footer.footer-dashboard-mobile .footer-fb-btn{gap:4px;padding:4px 12px;font-size:11px}.dashboard-layout .footer.footer-dashboard-mobile .footer-col-legal{flex-flow:wrap;justify-content:center;align-items:center;gap:4px 12px}.dashboard-layout .footer.footer-dashboard-mobile .footer-legal-link{font-size:11px}.dashboard-layout .footer.footer-dashboard-mobile .footer-bottom-row{margin-top:6px;padding-top:6px;font-size:10px;line-height:1.3}.dashboard-page .dashboard-page-header{overflow:visible}.dashboard-page-header .dashboard-header-logo-mobile,.page-header .dashboard-header-logo-mobile{justify-content:flex-end;align-items:center;width:40px;height:40px}.dashboard-page-header .dashboard-header-logo-scale,.page-header .dashboard-header-logo-scale{transform-origin:100%;transform:scale(2)}.dashboard-layout .mobile-fab,.dashboard-layout .mobile-fab-backdrop,.dashboard-layout .mobile-fab-menu{display:none!important}.dashboard-layout .drawer-menu-btn{display:none}}@media (max-width:1279px) and (min-width:769px){.page-header .dashboard-header-logo-scale,.dashboard-page-header .dashboard-header-logo-scale{transform-origin:100%;transform:scale(1.65)}}.income-expense-two-col,.income-expense-left-col,.flow-col,.main-content{min-height:0}.income-expense-two-col,.income-expense-left-col,.income-expense-trend-section,.income-expense-category-section,.flow-col,.income-expense-chart-wrapper{min-width:0}.income-expense-page{display:block}.income-expense-summary-grid{grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:24px;display:grid}.income-expense-two-col{grid-template-columns:2fr 3fr;align-items:start;gap:24px;display:grid}.income-expense-left-col{flex-direction:column;gap:24px;display:flex}.income-expense-category-content{grid-template-rows:auto 1fr;gap:8px;display:grid}.income-expense-category-chart-row{flex-direction:column;display:flex}.income-expense-breakdown-scroll{flex:1;min-height:0;max-height:320px;overflow-y:auto}.income-expense-table-card{flex-direction:column;min-height:380px;max-height:720px;display:flex}.income-expense-table-card.premium-section{background:#fff}.income-expense-table-card>div:last-child{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.income-expense-table-body-scroll{flex:1;min-height:0;overflow:auto}.income-expense-table-body-empty{text-align:center;flex:1;justify-content:center;align-items:center;min-height:0;padding:24px;display:flex}.income-expense-table-card table thead th{z-index:1;box-shadow:0 1px 0 var(--border);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);text-align:left;background:#fff;padding:10px 20px;font-size:12px;font-weight:600;position:sticky;top:0}.income-expense-table-card table thead th:last-child{text-align:right}.income-expense-table-card table tbody td{color:var(--text-primary);border-bottom:1px solid var(--border-muted);padding:10px 20px;font-size:13px}.income-expense-table-card table tbody tr:last-child td{border-bottom:none}.income-expense-table-card table tbody tr{transition:background .12s}.income-expense-table-card table tbody tr:hover{background:#00000008}.income-expense-table-card table tbody tr.income-expense-table-total td{border-top:2px solid var(--border);border-bottom:none;padding:10px 20px;font-weight:600}.income-expense-category-section{overflow:hidden}.income-expense-summary-card,.income-expense-trend-section,.income-expense-category-section,.income-expense-table-card{padding:24px!important}.income-expense-summary-card:not(.income-expense-filters-card)>div:first-child{color:var(--text-secondary);font-size:13px}.income-expense-summary-card:not(.income-expense-filters-card)>div:nth-child(2){font-size:24px;font-weight:700}.income-expense-summary-card:not(.income-expense-filters-card){transition:transform .18s,box-shadow .18s}.income-expense-summary-card:not(.income-expense-filters-card):hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000000f}.income-expense-trend-header,.income-expense-trend-section>div:first-child,.income-expense-trend-section .dash-card-header,.income-expense-category-section .dash-card-header,.income-expense-trend-section .focus-goals-header,.income-expense-category-section .focus-goals-header{margin-bottom:16px}.income-expense-chart-wrapper{width:100%;min-width:0;overflow:hidden}.income-expense-trend-chart-container{width:100%;height:220px;position:relative}.income-expense-pie-chart-container{aspect-ratio:1;width:100%;max-width:280px;margin:0 auto;position:relative}@media (max-width:1279px){.income-expense-chart-wrapper{justify-content:center;align-items:center;height:280px;display:flex}}.chart-stable-container{aspect-ratio:1;width:100%;position:relative}.financial-chart-container{width:100%;min-width:0;height:100%;position:relative;overflow:hidden}.chart-fade-in{animation:.3s forwards chartFadeIn}@keyframes chartFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1279px){.income-expense-summary-grid{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:1fr}.income-expense-two-col{gap:var(--space-4);grid-template-columns:1fr}.income-expense-left-col{gap:var(--space-4)}.income-expense-summary-card{height:auto;min-height:0}.income-expense-filters-card{max-height:none;overflow:visible}.income-expense-category-content{flex-direction:column;display:flex}.income-expense-category-chart-row{flex:none}.income-expense-breakdown-scroll{flex:none;max-height:none;overflow-y:visible}.income-expense-table-card{min-height:280px;max-height:none}.income-expense-table-card>div:last-child{overflow:hidden}.income-expense-table-body-scroll{overflow:auto}.income-expense-table-body-empty{padding:var(--space-4)}.income-expense-category-section{overflow:visible}.income-expense-trend-section,.income-expense-category-section{padding:var(--space-4)var(--space-4)var(--space-6)var(--space-4)!important}.income-expense-chart-wrapper{overflow:visible}.financial-chart-container{overflow:visible!important}}.rotate-overlay{margin-bottom:16px}.income-expense-filters-card .rotate-overlay{margin-bottom:0}.budget-overview-loading-skeleton{box-sizing:border-box;width:100%;min-height:560px}@media (max-width:1279px){.budget-overview-loading-skeleton{min-height:480px}}.dashboard-page .budget-overview-loading-skeleton{min-height:640px}@media (max-width:1279px){.dashboard-page .budget-overview-loading-skeleton{min-height:540px}}.budget-overview-skeleton-cols{pointer-events:none}.budget-skeleton-select{background:var(--border,#e2e8f0);opacity:.65;border-radius:6px;width:140px;height:32px;display:inline-block}.budget-skeleton-block{background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted,#e8eef8)45%,var(--surface)100%);border:1px solid var(--border);opacity:.55;border-radius:12px;min-height:280px}@media (min-width:1280px){.budget-skeleton-block.budget-skeleton-breakdown{min-height:320px}}.dashboard-expenses-trend-placeholder{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);box-sizing:border-box;width:100%;min-height:268px}.dashboard-income-expense-flow-placeholder{border-radius:var(--radius-md);box-sizing:border-box;width:100%;min-height:360px}@media (min-width:1024px){.dashboard-income-expense-flow-placeholder{min-height:420px}}.goal-momentum-executive-equal .goal-momentum-donut-wrap{width:140px;height:140px}.budget-health-donut-block-equal{justify-content:center;align-items:center;height:140px;display:flex}.budget-health-donut-wrap-equal{flex-shrink:0;width:140px;height:140px;position:relative}.dashboard-card-link{border-radius:6px;padding:6px 12px;font-size:13px}.budget-overview-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:11px;margin-bottom:24px;display:flex}.budget-overview-title{color:var(--color-text-primary,#1e293b);margin:0;font-size:18px;font-weight:600}.budget-overview-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.budget-overview-two-col{grid-template-columns:1fr;align-items:stretch;gap:20px;display:grid}@media (min-width:1280px){.budget-overview-two-col{grid-template-columns:auto 1fr;gap:24px}}.budget-section-title{color:var(--color-text-primary,#1e293b);margin:0 0 12px;font-size:14px;font-weight:600}.budget-health-card{background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)35%,var(--surface)100%);border:1px solid var(--border);border-radius:12px;flex-direction:column;align-items:center;min-width:0;padding:20px;display:flex;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}@media (min-width:1280px){.budget-health-card{align-items:stretch;width:320px}}.budget-health-donut-block{justify-content:center;align-items:center;margin-top:2px;margin-bottom:0;display:flex}.budget-health-donut-ring{background:var(--surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:160px;height:160px;display:flex;position:relative;box-shadow:0 2px 16px #0000000f,inset 0 1px #fffc}.budget-health-donut-ring .budget-health-donut-wrap{width:128px;height:128px}.budget-health-donut-ring .budget-health-donut-pct{letter-spacing:-.02em;font-size:1.25rem;font-weight:700}.budget-health-donut-wrap{aspect-ratio:1;flex-shrink:0;width:160px;height:160px;position:relative}.budget-health-donut-svg{width:100%;height:100%;transition:stroke-dashoffset var(--motion-medium)var(--ease-enter)}.budget-health-donut-track{stroke:var(--border-muted)}.budget-health-donut-center{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.budget-health-donut-pct{font-size:var(--text-h1);color:var(--text-primary);font-weight:700;line-height:1}.budget-health-used-label{color:var(--text-secondary);margin:-2px 0 8px;font-size:13px}.budget-health-numbers{flex-direction:column;gap:5px;width:100%;display:flex}.budget-health-row{justify-content:space-between;align-items:baseline;display:flex}.budget-health-label{color:var(--text-secondary,#64748b);font-size:14px}.budget-health-value{color:var(--text-primary);font-variant-numeric:tabular-nums;text-align:right;box-sizing:border-box;min-width:7.5rem;font-size:14px;font-weight:700}.budget-health-value-over{color:#dc2626}.budget-burn-indicator{border-top:1px solid var(--border,#e2e8f0);width:100%;margin-top:12px;padding-top:10px}.budget-burn-row{align-items:center;gap:10px;margin-bottom:6px;display:flex}.budget-burn-label{color:var(--text-muted);min-width:100px;font-size:12px}.budget-burn-bar-track{background:var(--border,#e2e8f0);border-radius:9999px;flex:1;min-width:80px;height:8px;min-height:8px;overflow:hidden}.budget-burn-bar-fill{background-color:#16a34a;border-radius:9999px;height:100%;min-height:8px;transition:width .2s}.budget-burn-bar-month{background-color:var(--text-muted,#94a3b8)}.budget-burn-bar-warning{background-color:#ea580c}.budget-burn-warning{color:#ea580c;align-items:center;gap:4px;margin:6px 0 0 110px;font-size:12px;display:flex}.budget-burn-warning:before{content:"⚠"}@keyframes budget-burn-shimmer-keyframes{0%{opacity:1}50%{opacity:.85}to{opacity:1}}.budget-burn-shimmer{animation:2s ease-in-out infinite budget-burn-shimmer-keyframes}.budget-breakdown-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;min-width:0;padding:20px;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.budget-overview-rows{grid-template-columns:1fr;gap:14px 16px;min-width:0;display:grid}@media (min-width:1280px){.budget-breakdown-card .budget-overview-rows{grid-template-columns:repeat(4,1fr)}}.budget-overview-rows-deferred{min-height:200px}@media (min-width:1280px){.budget-breakdown-card .budget-overview-rows-deferred{min-height:160px}}.budget-breakdown-deferred-loading{min-height:120px;color:var(--text-muted);justify-content:center;align-items:center;font-size:13px;display:flex}.dashboard-page .budget-overview-rows-deferred{min-height:260px}@media (min-width:1280px){.dashboard-page .budget-breakdown-card .budget-overview-rows-deferred{min-height:180px}}.budget-overview-empty-state .budget-overview-empty-message{color:var(--text-secondary);margin:0 0 16px;font-size:14px;line-height:1.5}.budget-category-item{flex-direction:column;align-items:stretch;gap:4px;display:flex}.budget-category-name{color:var(--text-primary);font-size:14px;font-weight:600}.budget-category-amount{color:var(--text-secondary);font-size:13px}.budget-category-over{color:#dc2626;font-size:12px;font-weight:500}.budget-category-muted{color:var(--text-muted);font-size:13px}.budget-category-unbudgeted{color:#ea580c;font-size:12px;font-weight:500}.budget-category-insight-row{min-width:0;color:var(--text-secondary);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.budget-category-insight-label{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.budget-category-insight-value{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;flex:none}.budget-category-secondary{color:var(--text-secondary);font-size:12px}.budget-category-secondary .budget-category-over{font-size:inherit}.budget-overview-bar{background:var(--border,#e2e8f0);border-radius:9999px;flex-shrink:0;width:100%;height:8px;min-height:8px;overflow:hidden}.budget-overview-bar-fill{border-radius:9999px;height:100%;transition:width .2s}.rotate-card{background:var(--color-blue-muted);text-align:center;border:1px solid #0038a833;border-radius:8px;padding:12px 16px;font-size:14px}.page-header{margin-bottom:var(--space-5)}.page-header h2{margin:0 0 var(--space-2);font-size:var(--text-h1);color:var(--text-primary);letter-spacing:-.01em;font-weight:700}.page-header p{font-size:var(--text-body);color:var(--text-helper);margin:0}.page-header-with-actions{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.page-header-with-actions>div:first-child{min-width:0}.page-header-with-actions .page-header-actions{gap:var(--space-2);flex-shrink:0;align-items:center;display:flex}@media (max-width:1023px){.page-header.page-header-with-actions{flex-flow:column;align-items:stretch}.page-header.page-header-with-actions>div:first-child{flex:none;width:100%;min-width:0;max-width:100%}.page-header.page-header-with-actions .page-header-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;width:100%}}.premium-banner{margin-bottom:var(--space-5);padding:var(--space-4)var(--space-5);background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--color-primary);border-radius:12px;box-shadow:0 1px 3px #0000000a}.premium-banner-title{font-size:var(--text-body);margin-bottom:var(--space-1);color:var(--text-primary);font-weight:600}.premium-banner-desc{margin:0 0 var(--space-3);font-size:var(--text-small);color:var(--text-secondary)}.premium-banner-message{margin-bottom:var(--space-5);padding:var(--space-4)var(--space-5);background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--color-yellow);border-radius:12px;box-shadow:0 1px 3px #0000000a}.premium-banner-message p{font-size:var(--text-body);color:var(--text-secondary);margin:0;line-height:1.6}.premium-card{padding:var(--space-5);background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);border:1px solid var(--border);transition:box-shadow var(--motion-fast)ease;border-radius:12px;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.premium-card:hover{box-shadow:0 4px 16px #0000000f}.premium-summary-card{padding:var(--space-5);background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);border:1px solid var(--border);transition:transform var(--motion-fast)ease,box-shadow var(--motion-fast)ease;border-radius:12px;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.premium-summary-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000000f}.premium-summary-card-accent-blue{border-left:4px solid var(--color-blue)}.premium-summary-card-accent-yellow{border-left:4px solid var(--color-yellow)}.premium-summary-card-accent-red{border-left:4px solid var(--color-danger)}.premium-section{padding:var(--space-5);background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);border:1px solid var(--border);border-radius:12px;flex-direction:column;display:flex;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.premium-btn-disabled{opacity:.85;cursor:not-allowed;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:500;display:inline-flex}.learning-page .learning-card{padding:var(--space-5);background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);border:1px solid var(--border);transition:box-shadow var(--motion-fast)ease;border-radius:12px;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.learning-page .learning-card:hover{box-shadow:0 4px 16px #0000000f}.learning-page .learning-card h3{margin:0 0 var(--space-2);color:var(--text-primary);font-size:1.0625rem;font-weight:600}.learning-page .learning-card p{font-size:var(--text-body);color:var(--text-secondary);margin:0;line-height:1.55}.learning-page .learning-card .learning-card-tag{color:var(--color-blue);background:var(--color-blue-muted);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.04em;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-block}.card{background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);border:1px solid var(--color-border);padding:var(--space-5);border-radius:16px;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.dash-card{background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);border:1px solid var(--color-border);padding:var(--space-4);border-radius:16px;min-width:0;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.expenses-trend-chart-card{background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%)!important;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a!important}.card,.dash-card,.premium-card,.premium-summary-card,.premium-section,.goal-card-premium,.goal-momentum-executive,.budget-overview-card,.budget-health-card,.budget-breakdown-card,.expenses-trend-chart-card,.premium-banner,.premium-banner-message{border-color:var(--border-soft)}.dash-card-title,.dashboard-card-title,.budget-overview-title,.budget-section-title,.goal-momentum-executive-title{letter-spacing:-.02em;color:var(--text-primary);font-weight:650}.summary-card-label,.goal-momentum-executive-label,.budget-health-label,.budget-burn-label,.budget-category-insight-label,.kpi-label,.flow-snapshot-label,.budget-health-used-label{color:var(--text-helper);letter-spacing:.03em;font-weight:500}.income-expense-summary-card:not(.income-expense-filters-card)>div:first-child{color:var(--text-helper)}.income-expense-summary-card:not(.income-expense-filters-card)>div:nth-child(2){font-variant-numeric:tabular-nums;letter-spacing:-.02em}.summary-card-value,.goal-momentum-executive-value,.kpi-value,.budget-health-value,.flow-snapshot-value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:700}.dash-card-header{margin-bottom:var(--space-4)}.dash-card,.goal-momentum-executive{padding:var(--space-4)var(--space-5)}.budget-overview-card{padding:var(--space-5)}.budget-overview-header{margin-bottom:var(--space-4)}.budget-overview-two-col{gap:var(--space-5)}@media (min-width:1280px){.budget-overview-two-col{gap:var(--space-6)}}.budget-health-card,.budget-breakdown-card{padding:var(--space-4)var(--space-5)}.budget-section-title{margin-bottom:var(--space-3)}.card.dash-card.dash-card-no-border,.dash-card.dash-card-no-border{padding:var(--space-4)var(--space-5);border:none}.goal-momentum-donut-track,.budget-health-donut-track{stroke:var(--border-soft)}.goal-card-premium-bar{background:var(--border-muted);border-color:var(--border-soft)}.budget-overview-bar{background:var(--border)}.sidebar-footer{padding:var(--space-4);border-top-color:#ffffff1f}.sidebar-footer-inner{gap:var(--space-4)}.sidebar-user-block{gap:var(--space-2)}.sidebar-footer-email{color:#ffffff8c;margin-bottom:var(--space-1);font-size:11px}.sidebar-plan-card{padding:var(--space-2)var(--space-3);background:#ffffff0f}.sidebar-plan-status span{color:#fff9}.goal-momentum-executive-encourage{color:var(--text-helper);font-weight:500}.dash-card-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.dash-card-title{font-size:var(--text-h3);color:var(--color-text-primary);margin:0;font-weight:600}.dash-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.kpi-grid{gap:var(--space-4);grid-template-columns:repeat(4,1fr);min-width:0;display:grid}@media (max-width:1279px){.kpi-grid{grid-template-columns:1fr}}.summary-card{background:var(--color-card);border:1px solid var(--color-border);padding:var(--space-5);border-radius:16px;position:relative}.summary-card-label{font-size:var(--text-small);color:var(--text-muted);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.04em}.summary-card-value{font-size:var(--text-data-lg);color:var(--text-primary);font-weight:700}.btn-primary{padding:var(--space-2)var(--space-5);min-height:44px;font-size:var(--text-body);border-radius:var(--radius-sm);background:var(--color-primary);color:var(--text-inverse);cursor:pointer;border:none;font-family:inherit;font-weight:600;transition:background .12s,transform .12s}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:var(--space-2)var(--space-5);min-height:44px;font-size:var(--text-body);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-card);color:var(--color-text-secondary);cursor:pointer;font-family:inherit;font-weight:500;transition:background .12s,transform .12s}.btn-secondary:hover:not(:disabled){background:var(--border-muted);transform:translateY(-1px)}.grace-banner .grace-banner-cta{transition:opacity .15s,transform .15s}.grace-banner .grace-banner-cta:hover{opacity:.92;transform:translateY(-1px)}.grace-banner .grace-banner-cta:active{transform:translateY(0)}.btn-ghost{padding:var(--space-2)var(--space-5);min-height:44px;font-size:var(--text-body);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--motion-fast)var(--ease-enter);background:0 0;border:none;font-family:inherit;font-weight:500}.btn-ghost:hover:not(:disabled){background:var(--border-muted)}.btn-danger{padding:var(--space-2)var(--space-5);min-height:44px;font-size:var(--text-body);border-radius:var(--radius-sm);background:var(--color-danger);color:var(--text-inverse);cursor:pointer;border:none;font-family:inherit;font-weight:500}.motivation-banner{background:var(--surface);border:1px solid var(--border);padding:var(--space-4)var(--space-5);margin-bottom:var(--space-5);border-left:4px solid var(--color-yellow);border-radius:12px;box-shadow:0 1px 3px #0000000a}.motivation-banner p{font-size:var(--text-body);color:var(--text-secondary);margin:0;line-height:1.6}.chart-placeholder{background:var(--border-muted);border:1px solid var(--border);border-radius:var(--radius-md);height:200px;color:var(--text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.tool-card{background:var(--color-card);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);padding:var(--space-5);gap:var(--space-3);border-radius:16px;flex-direction:column;display:flex}.tool-card-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:44px;height:44px;display:flex}.tool-card h3{color:var(--text-primary);margin:0;font-size:16px;font-weight:600}.tool-card p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.login-page{background:var(--background);justify-content:center;align-items:center;min-height:100%;padding:24px;display:flex;position:relative;overflow:hidden}.login-page:before{content:"";background:radial-gradient(ellipse 80% 50% at 50% -20%,var(--color-blue-muted),transparent),radial-gradient(ellipse 60% 40% at 100% 100%,#0038a80d,transparent);pointer-events:none;position:absolute;inset:0}.login-card{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-lg);border:1px solid var(--border);padding:40px;position:relative}.login-title{color:var(--color-blue);letter-spacing:-.02em;margin:0 0 8px;font-size:28px;font-weight:700}.login-subtitle{color:var(--text-secondary);margin:0 0 28px;font-size:15px}.login-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text-primary);padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}.login-input::placeholder{color:var(--text-muted)}.login-input:hover{border-color:var(--text-muted)}.login-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-blue-muted);outline:none}.password-input-wrap{width:100%;position:relative}.password-input-wrap .login-input{padding-right:2.75rem}.password-input-toggle{border-radius:var(--radius-sm);width:2.25rem;height:2.25rem;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-family:inherit;transition:color .15s,background-color .15s;display:inline-flex;position:absolute;top:50%;right:.375rem;transform:translateY(-50%)}.password-input-toggle:hover{color:var(--text-primary);background:var(--color-blue-muted)}.password-input-toggle:focus{outline:none}.password-input-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.login-forgot-link{color:var(--color-blue);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none}.login-forgot-link:hover{text-decoration:underline}.login-btn-primary{border-radius:var(--radius-sm);background:var(--color-blue);width:100%;color:var(--text-inverse);cursor:pointer;border:none;padding:14px 20px;font-family:inherit;font-size:15px;font-weight:600;transition:background-color .15s}.login-btn-primary:hover:not(:disabled){background:var(--color-blue-dark)}.login-btn-primary:disabled{opacity:.7;cursor:not-allowed}.login-divider{color:var(--text-muted);align-items:center;gap:16px;margin:24px 0;font-size:13px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.login-google{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:12px 20px;font-family:inherit;font-size:15px;font-weight:500;transition:background-color .15s;display:flex}.login-google:hover:not(:disabled){background:var(--border-muted)}.login-google:disabled{opacity:.7;cursor:not-allowed}html{scroll-behavior:smooth}.landing-page{background:var(--background);min-height:100%;position:relative;overflow-x:hidden}.promo-banner{top:max(12px,env(safe-area-inset-top,0px));z-index:9998;text-align:center;max-width:min(420px,100vw - 24px);color:var(--text-primary);background:var(--surface);border:1px solid var(--border);pointer-events:none;border-radius:10px;margin:0;padding:10px 16px;font-size:14px;font-weight:500;line-height:1.4;animation:.4s forwards promo-banner-in;position:fixed;left:50%;box-shadow:0 4px 20px #00000014}@keyframes promo-banner-in{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.legal-page{background:var(--background);min-height:100%;padding-bottom:var(--space-6)}.legal-header{padding:var(--space-4)var(--space-5);background:var(--color-blue);border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;display:flex}.legal-logo{align-items:center;display:flex}.legal-back{color:#ffffffe6;font-size:14px;font-weight:500;text-decoration:none}.legal-back:hover{color:var(--text-inverse)}.legal-main{max-width:800px;padding:var(--space-6)var(--space-5);margin:0 auto}.legal-title{margin:0 0 var(--space-2);color:var(--text-primary);font-size:28px;font-weight:700}.legal-updated{margin:0 0 var(--space-6);color:var(--text-muted);font-size:14px}.legal-section{margin-bottom:var(--space-6)}.legal-section h2{margin:0 0 var(--space-3);color:var(--text-primary);font-size:18px;font-weight:700}.legal-section p,.legal-section ul{margin:0 0 var(--space-3);color:var(--text-secondary);font-size:15px;line-height:1.6}.legal-section ul{padding-left:24px}.legal-section li{margin-bottom:var(--space-2)}.legal-link{color:var(--color-primary);text-decoration:underline}.legal-link:hover{color:var(--color-primary-hover)}.legal-footer-note{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border);color:var(--text-muted);font-size:14px}@media (max-width:600px){.legal-main{padding:var(--space-4)var(--space-4)}.legal-header{padding:var(--space-3)var(--space-4)}}.landing-skip-link{z-index:9999;background:var(--color-blue,#0038a8);color:#fff;border-radius:0 0 var(--radius-sm)0;padding:12px 20px;font-weight:600;text-decoration:none;transition:transform .2s;position:absolute;top:0;left:0;transform:translateY(-100%)}.landing-skip-link:focus{outline-offset:2px;outline:2px solid #fff;transform:translateY(0)}.landing-nav{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0038a8f7;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:20px 56px;display:flex;position:fixed;top:0;left:0;right:0}.landing-nav-brand{color:var(--text-inverse);letter-spacing:-.02em;align-items:center;gap:10px;font-size:22px;font-weight:700;text-decoration:none;display:flex}.landing-nav-links{flex-wrap:nowrap;align-items:center;gap:40px;display:flex}.landing-nav-links-primary{align-items:center;gap:40px;display:flex}.landing-nav-link{color:#fffc;cursor:pointer;white-space:nowrap;background:0 0;border:none;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;transition:color .15s}.landing-nav-link:hover{color:var(--text-inverse)}.landing-nav-add-home{color:#ffffffe6;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:#ffffff14;background:0 0;border:2px solid #fff9;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:14px;font-weight:500;transition:color .15s,border-color .15s,background .15s,opacity .15s,box-shadow .15s;display:inline-flex}.landing-nav-add-home:hover{color:var(--text-inverse);background:#ffffff14;border-color:#ffffffe6}.landing-nav-add-home:active{opacity:.94;background:#ffffff1f;box-shadow:inset 0 1px 2px #0000000f}.landing-nav-add-home-icon{color:#ffffffe6;flex-shrink:0;display:inline-flex}.landing-nav-add-home:hover .landing-nav-add-home-icon{color:var(--text-inverse)}.landing-nav-add-home-label-desktop{display:inline}.landing-nav-add-home-label-mobile{display:none}.landing-hero{text-align:center;background:linear-gradient(160deg,#0038a8 0%,#002d8a 35%,#001d5c 100%);justify-content:center;align-items:center;min-height:100%;padding:120px 48px 80px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.landing-hero-saas{text-align:left;min-height:85vh;padding:100px 48px 64px;overflow:visible}.landing-hero-inner{z-index:1;grid-template-columns:30% 1fr;align-items:center;gap:48px;width:100%;max-width:1280px;margin:0 auto;display:grid;position:relative}.landing-hero-left{max-width:480px;padding-left:16px}.landing-hero-headline{color:var(--text-inverse);letter-spacing:-.02em;margin:0 0 28px;font-size:clamp(32px,4vw,44px);font-weight:700;line-height:1.18}.landing-hero-subheadline{color:#fff;max-width:420px;margin:0 0 36px;font-size:18px;line-height:1.55}.landing-hero-ctas{flex-wrap:wrap;gap:14px;display:flex}.landing-hero-pwa-helper{color:#ffffffbf;margin:10px 0 0;font-size:13px;font-weight:500}.landing-hero-ctas .landing-cta-btn{border-radius:12px;min-height:52px;padding:14px 28px;font-size:16px;font-weight:600;transition:box-shadow .2s,border-color .2s,background .2s,color .2s}.landing-cta-primary{background:var(--color-yellow);color:#0f172a;border:2px solid #0000;box-shadow:0 4px 20px #fcd11659}.landing-cta-primary:hover{box-shadow:0 8px 28px #fcd11673}.landing-cta-secondary{color:var(--text-inverse);background:#ffffff0f;border:2px solid #ffffff80}.landing-cta-secondary:hover{color:var(--text-inverse);box-shadow:none;background:#ffffff1f;border-color:#ffffffd9}.landing-hero-right{z-index:2;justify-content:flex-end;align-items:center;min-width:0;display:flex;position:relative;overflow:visible}.landing-hero-mock-stack{width:100%;max-width:760px;position:relative;overflow:visible}.landing-hero-mock-image{width:100%;height:auto;display:block}.landing-hero-mock-web{border-radius:12px;box-shadow:0 8px 32px #0000002e}.landing-hero-mock-mobile{z-index:3;pointer-events:none;width:105%;box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;position:absolute;bottom:-15%;right:-52.5%}.landing-hero-mock-mobile .landing-hero-mock-image{box-shadow:none;background:0 0;border:0;border-radius:0;outline:none}.landing-how{background:var(--surface);border-top:1px solid var(--border);padding:64px 48px}.landing-how-title{text-align:center;color:var(--text-primary);margin:0 0 40px;font-size:28px;font-weight:700}.landing-how-steps{text-align:center;grid-template-columns:repeat(3,1fr);gap:32px;max-width:800px;margin:0 auto;display:grid}.landing-how-step{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--background);padding:24px 16px;transition:box-shadow .2s,border-color .2s;position:relative}.landing-how-step:hover{box-shadow:var(--shadow-sm);border-color:var(--color-blue-muted)}.landing-how-icon{margin-bottom:8px;font-size:32px;display:block}.landing-how-num{background:var(--color-blue-muted);width:24px;height:24px;color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex;position:absolute;top:12px;right:12px}.landing-how-step h3{color:var(--text-primary);margin:0;font-size:16px;font-weight:600}.landing-compare{padding:var(--space-6)var(--space-5);background:var(--background)}.landing-compare-title{text-align:center;color:var(--text-primary);margin:0 0 var(--space-6);font-size:28px;font-weight:700}.landing-compare-grid{gap:var(--space-5);grid-template-columns:repeat(2,1fr);align-items:start;max-width:680px;margin:0 auto;display:grid}.landing-plan-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:box-shadow .2s}.landing-plan-card:hover{box-shadow:var(--shadow-md)}.landing-plan-card h3{margin:0 0 var(--space-4);color:var(--text-primary);font-size:20px;font-weight:700}.landing-plan-card ul{margin:0;padding:0;list-style:none}.landing-plan-card li{color:var(--text-secondary);padding:6px 0;font-size:14px;line-height:1.4}.landing-plan-pro{border-color:var(--color-primary);box-shadow:0 8px 30px #0038a826,0 0 0 2px var(--color-blue-muted);position:relative;overflow:hidden}.landing-plan-pro:before{content:"";background:linear-gradient(90deg,var(--color-primary),var(--color-yellow));height:4px;position:absolute;top:0;left:0;right:0}.landing-plan-pro .landing-plan-badge{margin-top:var(--space-2)}.landing-plan-pro:hover{box-shadow:0 12px 40px #0038a833,0 0 0 2px var(--color-blue-muted)}.landing-plan-pro h3{color:var(--color-primary)}.landing-plan-badge{padding:var(--space-2)var(--space-3);background:var(--color-primary);color:var(--text-inverse);border-radius:var(--radius-sm);margin-bottom:var(--space-3);font-size:12px;font-weight:600;display:inline-block}.landing-plan-price{margin:0 0 var(--space-2);color:var(--text-primary);font-size:24px;font-weight:700}.landing-plan-price span{color:var(--text-muted);font-size:14px;font-weight:500}.landing-plan-value{margin:0 0 var(--space-4);color:var(--text-muted);font-size:13px;font-weight:500}.plan-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 0 var(--space-2);border-bottom:1px solid var(--border-muted);padding-bottom:6px;font-size:11px;font-weight:700}.plan-section-title+ul{margin-top:0}.plan-section-tools{margin-top:var(--space-4)}.plan-feature-premium{align-items:center;gap:6px;display:inline-flex}.plan-feature-premium-icon{width:14px;height:14px;color:var(--color-premium,#c9a227);flex-shrink:0;align-items:center;display:inline-flex}.plan-feature-premium-icon svg{width:100%;height:100%}.upgrade-modal-table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);margin-bottom:20px;overflow-x:auto}.upgrade-modal-table{border-collapse:collapse;width:100%;font-size:14px}.upgrade-modal-table thead tr{border-bottom:1px solid var(--border);background:var(--border-muted)}.upgrade-modal-th-feature{text-align:left;color:var(--text-primary);padding:10px 14px;font-weight:600}.upgrade-modal-th-free,.upgrade-modal-th-pro{text-align:center;color:var(--text-primary);white-space:nowrap;padding:10px 14px;font-weight:600}.upgrade-modal-row{border-bottom:1px solid var(--border-muted)}.upgrade-modal-row:last-child{border-bottom:none}.upgrade-modal-feature{color:var(--text-primary);vertical-align:middle;padding:8px 14px}.upgrade-modal-free,.upgrade-modal-pro{text-align:center;color:var(--text-secondary);vertical-align:middle;padding:8px 14px}.upgrade-modal-pro{color:var(--color-primary);font-weight:600}.upgrade-modal-section-row{border-bottom:1px solid var(--border)}.upgrade-modal-section{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:var(--border-muted);padding:10px 14px;font-size:11px;font-weight:700}.landing-final-cta{background:var(--color-blue);text-align:center;padding:64px 48px}.landing-final-headline{color:var(--text-inverse);max-width:560px;margin:0 auto 12px;font-size:clamp(24px,3vw,32px);font-weight:700}.landing-final-sub{color:#ffffffe6;margin:0 0 24px;font-size:18px}.landing-cta-large{padding:18px 48px;font-size:18px}.landing-final-checks{justify-content:center;gap:var(--space-4)var(--space-6);margin-top:var(--space-4);color:#ffffffd9;flex-wrap:wrap;font-size:13px;display:flex}.landing-final-checks span{white-space:nowrap}.login-btn-secondary{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text-secondary);cursor:pointer;margin-top:12px;padding:12px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:background-color .15s}.login-btn-secondary:hover:not(:disabled){background:var(--border-muted)}.login-btn-secondary:disabled{opacity:.7;cursor:not-allowed}.login-terms-label{cursor:pointer;color:var(--text-secondary);align-items:flex-start;gap:10px;margin-top:16px;font-size:13px;line-height:1.5;display:flex}.login-terms-checkbox{width:18px;height:18px;accent-color:var(--color-primary);flex-shrink:0;margin-top:3px}.login-terms-link{color:var(--color-primary);text-decoration:underline}.login-terms-link:hover{color:var(--color-primary-hover)}.login-remember-label{margin-top:4px}.consent-backdrop{z-index:200;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.consent-modal{background:var(--surface);border-radius:var(--radius-md);width:100%;max-width:420px;box-shadow:var(--shadow-lg);border:1px solid var(--border);padding:24px}.forgot-password-modal{padding:40px}.forgot-password-modal .login-title{color:var(--color-blue);margin:0 0 8px;font-size:22px;font-weight:700}.forgot-password-modal .login-subtitle{color:var(--text-secondary);margin:0 0 24px;font-size:15px}.forgot-success-msg,.forgot-error-msg{border-radius:var(--radius-sm);margin:0 0 16px;padding:12px;font-size:14px;line-height:1.45}.forgot-success-msg{color:var(--color-success);background:var(--color-primary-muted)}.forgot-error-msg{color:var(--color-error);background:var(--color-error-bg)}.reset-password-wrap{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.reset-password-header{justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:absolute;top:0;left:0;right:0}.reset-password-logo{align-items:center;display:flex}.reset-password-back{color:var(--color-blue);font-size:14px;font-weight:500;text-decoration:none}.reset-password-back:hover{text-decoration:underline}.reset-password-card{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-lg);border:1px solid var(--border);padding:40px}.consent-modal h3{color:var(--text-primary);margin:0 0 12px;font-size:18px;font-weight:600}.consent-modal p{color:var(--text-secondary);margin:0 0 20px;font-size:14px;line-height:1.5}.consent-checkbox-label{color:var(--text-secondary);cursor:pointer;align-items:flex-start;gap:10px;margin:0 0 20px;font-size:14px;line-height:1.5;display:flex}.consent-checkbox{width:18px;height:18px;accent-color:var(--color-primary);flex-shrink:0;margin-top:3px}.consent-actions{justify-content:flex-end;gap:12px;display:flex}.consent-btn{border-radius:var(--radius-sm);cursor:pointer;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s}.consent-btn-secondary{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border)}.consent-btn-secondary:hover{background:var(--border-muted)}.consent-btn-primary{background:var(--color-primary);color:var(--text-inverse);border:none}.consent-btn-primary:hover{background:var(--color-primary-hover)}.consent-btn-primary:disabled{background:var(--border-muted);color:var(--text-muted);cursor:not-allowed}.pwa-cta-backdrop{z-index:200;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pwa-cta-modal{background:var(--surface);border-radius:var(--radius-md);width:100%;max-width:400px;box-shadow:var(--shadow-lg);border:1px solid var(--border);text-align:center;padding:28px 24px}.pwa-cta-title{color:var(--text-primary);margin:0 0 8px;font-size:20px;font-weight:600}.pwa-cta-subtitle{color:var(--text-secondary);margin:0 0 20px;font-size:14px;line-height:1.5}.pwa-cta-desktop-fallback.pwa-cta-subtitle{margin-bottom:20px}.pwa-cta-desktop-fallback p{color:var(--text-secondary);margin:0 0 8px;font-size:14px;line-height:1.5}.pwa-cta-desktop-fallback p:last-child{margin-bottom:0}.pwa-cta-desktop-steps{color:var(--text-muted);font-size:13px}.pwa-cta-icon-wrap{margin-bottom:20px}.pwa-cta-icon{border-radius:22px;width:96px;height:96px;margin:0 auto;display:block}.pwa-cta-instruction{background:var(--color-blue-muted);border-radius:var(--radius-sm);border:1px solid #0038a826;margin-bottom:20px;padding:12px 16px}.pwa-cta-instruction-text{color:var(--text-primary);margin:0;font-size:14px;line-height:1.5}.pwa-cta-instruction-text strong{color:var(--color-primary)}.pwa-cta-actions{flex-direction:column;gap:10px;display:flex}.pwa-cta-btn{border-radius:var(--radius-sm);cursor:pointer;padding:12px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s}.pwa-cta-primary{background:var(--color-primary);color:var(--text-inverse);border:none}.pwa-cta-primary:hover{background:var(--color-primary-hover)}.pwa-cta-secondary{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border)}.pwa-cta-secondary:hover{background:var(--border-muted);color:var(--text-primary)}.signup-modal{max-width:440px;position:relative}.signup-modal-heading{color:var(--text-primary);margin:0 0 20px;font-size:20px;font-weight:600}.signup-modal-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px;font-family:inherit;font-size:22px;line-height:1;transition:color .15s,background-color .15s;position:absolute;top:16px;right:16px}.signup-modal-close:hover{color:var(--text-primary);background:var(--border-muted)}.signup-form{flex-direction:column;gap:16px;display:flex}.signup-field label{color:var(--text-primary);margin-bottom:6px;font-size:14px;font-weight:500;display:block}.signup-field-error{color:var(--color-error);margin:6px 0 0;font-size:13px}.signup-terms{margin-top:4px}.signup-submit-error{color:var(--color-error);background:var(--color-error-bg);border-radius:var(--radius-sm);margin:0;padding:12px;font-size:14px}.signup-success{text-align:center;padding:8px 0 0}.signup-success-title{color:var(--text-primary);margin:0 0 12px;font-size:20px;font-weight:600}.signup-success-message{color:var(--text-secondary);margin:0 0 24px;font-size:14px;line-height:1.6}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.onboarding-page{background:var(--background);min-height:100%}.onboarding-flow{flex-direction:column;min-height:100%;display:flex}.onboarding-flow-header{padding:var(--space-4)var(--space-5);background:var(--color-blue);border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;display:flex}.onboarding-flow-logo{align-items:center;display:flex}.onboarding-flow-progress{color:#ffffffe6;margin:0;font-size:14px;font-weight:500}.onboarding-flow-main{padding:var(--space-6)var(--space-4);flex:1;justify-content:center;align-items:center;display:flex}.onboarding-flow-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);width:100%;max-width:440px;box-shadow:var(--shadow-md);padding:var(--space-6)}.onboarding-flow-title{margin:0 0 var(--space-2);color:var(--text-primary);font-size:22px;font-weight:700}.onboarding-flow-desc{margin:0 0 var(--space-5);color:var(--text-secondary);font-size:14px;line-height:1.5}.onboarding-flow-field{margin-bottom:var(--space-4)}.onboarding-flow-field label{color:var(--text-primary);margin-bottom:6px;font-size:14px;font-weight:500;display:block}.onboarding-flow-radios{gap:var(--space-3);flex-wrap:wrap;display:flex}.onboarding-flow-radios-stack{gap:var(--space-2);flex-direction:column}.onboarding-flow-radio{cursor:pointer;color:var(--text-secondary);align-items:center;gap:8px;font-size:14px;display:flex}.onboarding-flow-radio input{width:18px;height:18px;accent-color:var(--color-primary)}.onboarding-flow-range{width:100%;accent-color:var(--color-primary);margin-top:8px}.onboarding-flow-range-labels{color:var(--text-muted);justify-content:space-between;margin-top:4px;font-size:12px;display:flex}.onboarding-flow-actions{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border);display:flex}.onboarding-flow-actions .login-btn-primary{flex:1;max-width:200px}@media (max-width:600px){.onboarding-flow-header{padding:var(--space-3)var(--space-4)}.onboarding-flow-main,.onboarding-flow-card{padding:var(--space-4)}}.landing-hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#fcd11614 0%,#0000 65%);border-radius:50%;width:640px;height:640px;position:absolute;top:-220px;right:-180px}.landing-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff0a 0%,#0000 65%);border-radius:50%;width:420px;height:420px;position:absolute;bottom:-80px;left:-80px}.landing-hero-content{z-index:1;max-width:720px;position:relative}.landing-logo{margin:0 auto 32px;animation:.8s ease-out fadeSlideUp}.landing-hero-title-wrap{justify-content:center;align-items:center;gap:16px;margin-bottom:16px;display:flex}.landing-hero-title-wrap .landing-hero-title{margin:0}.landing-hero-title{color:var(--text-inverse);letter-spacing:-.02em;margin:0 0 16px;font-size:52px;font-weight:700;line-height:1.1;animation:.8s ease-out .2s both fadeSlideUp}.landing-hero-tagline{color:#ffffffb3;margin:0 0 40px;font-size:20px;line-height:1.6;animation:.8s ease-out .4s both fadeSlideUp}.landing-cta-btn{border-radius:var(--radius-sm);background:var(--color-yellow);color:#0f172a;cursor:pointer;border:none;padding:16px 44px;font-family:inherit;font-size:16px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s;animation:.8s ease-out .6s both fadeSlideUp;display:inline-block;box-shadow:0 4px 20px #fcd1164d}.landing-cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px #fcd11666}.landing-stats{background:var(--surface);border-bottom:1px solid var(--border);justify-content:center;gap:64px;padding:48px;display:flex}.landing-stat{text-align:center}.landing-stat-value{color:var(--color-blue);font-size:32px;font-weight:700}.landing-stat-label{color:var(--text-secondary);margin-top:4px;font-size:14px}.landing-features{background:var(--background);border-top:1px solid #0000;margin-top:-1px;padding:88px 48px 80px;position:relative}.landing-features-title{text-align:center;color:var(--text-primary);margin:0 0 12px;font-size:32px;font-weight:700}.landing-features-subtitle{text-align:center;color:var(--text-secondary);max-width:560px;margin:0 auto 48px;font-size:16px}.landing-features-grid{gap:var(--space-5);max-width:1100px;margin:0 auto;display:grid}.landing-features-responsive{grid-template-columns:repeat(3,1fr)}.landing-features-responsive .landing-feature-icon{background:var(--color-blue-muted);color:var(--color-blue)}.landing-feature-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6);text-align:center;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s}.landing-feature-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.landing-feature-icon{border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 20px;display:flex}.landing-feature-card h3{color:var(--text-primary);margin:0 0 8px;font-size:18px;font-weight:600}.landing-feature-card p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.6}.landing-tools{background:var(--color-bg);padding:64px 48px}.landing-seo-why{background:var(--surface);border-top:1px solid var(--border);padding:48px 48px 32px}.landing-seo-why-inner{max-width:1100px;margin:0 auto}.landing-seo-why-title{text-align:center;color:var(--text-primary);margin:0 0 12px;font-size:28px;font-weight:700}.landing-seo-why-paragraph{text-align:center;max-width:860px;color:var(--text-secondary);margin:0 auto;font-size:15px;line-height:1.7}.landing-tools-title{text-align:center;color:var(--text-primary);margin:0 0 8px;font-size:28px;font-weight:700}.landing-tools-subtitle{text-align:center;color:var(--text-secondary);margin:0 0 32px;font-size:15px;line-height:1.5}.landing-tools-grid{grid-template-columns:repeat(2,1fr);gap:20px;max-width:720px;margin:0 auto 24px;display:grid}@media (max-width:640px){.landing-tools-grid{grid-template-columns:1fr}}.landing-tool-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:inherit;padding:20px 24px;text-decoration:none;transition:border-color .2s,box-shadow .2s;display:block}.landing-tool-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #0038a814}.landing-tool-card h3{color:var(--color-primary);margin:0 0 6px;font-size:17px;font-weight:600}.landing-tool-card p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.5}.landing-tool-badge{color:var(--text-muted);background:var(--border-muted);border-radius:var(--radius-sm);margin-top:10px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-block}.landing-tools-hub-wrap{text-align:center;max-width:720px;margin:0 auto 8px}.landing-tools-hub-link{color:var(--color-primary);font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.landing-tools-hub-link:hover{text-decoration:underline}.landing-tools-cta{text-align:center;color:var(--text-muted);margin:0;font-size:13px}.landing-login{background:var(--surface);flex-direction:column;align-items:center;padding:80px 48px;display:flex}.landing-login-title{color:var(--text-primary);text-align:center;margin:0 0 8px;font-size:28px;font-weight:700}.landing-login-subtitle{color:var(--text-secondary);text-align:center;margin:0 0 32px;font-size:15px}.landing-facebook{background:var(--surface);text-align:center;border-top:1px solid var(--border-muted,#eee);padding:56px 48px}.landing-facebook-title{color:var(--text-primary);margin:0 0 12px;font-size:24px;font-weight:700}.landing-facebook-body{color:var(--text-secondary);max-width:420px;margin:0 auto 24px;font-size:16px;line-height:1.5}.landing-facebook .landing-cta-btn{text-decoration:none}.footer{flex-shrink:0}.footer-inner{max-width:1200px;margin:0 auto;padding:20px 48px 16px}.footer-columns{grid-template-columns:1fr auto auto;align-items:start;gap:32px 48px;display:grid}.footer-col{min-width:0}.footer-brand-title{color:var(--text-primary);margin:0 0 4px;font-size:15px;font-weight:600}.footer-brand-tagline{color:var(--text-muted);max-width:220px;margin:0;font-size:12px;line-height:1.4}.footer-social-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 0 8px;font-size:11px;font-weight:600}.footer-fb-btn{color:#fff;background:#1877f2;border:1px solid #1877f2;border-radius:9999px;align-items:center;gap:6px;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.footer-fb-btn:hover{color:#fff;background:#166fe5;border-color:#166fe5}.footer-col-legal{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.footer-legal-link{color:var(--text-muted);font-size:12px;text-decoration:none;transition:color .15s}.footer-legal-link:hover{color:var(--text-primary)}.footer-bottom-row{border-top:1px solid var(--border-muted);color:var(--text-muted);text-align:center;margin-top:14px;padding-top:12px;font-size:11px}.footer-variant-landing{background:var(--color-blue)}.footer-variant-landing .footer-inner{padding:20px 48px 16px}.footer-variant-landing .footer-brand-title,.footer-variant-landing .footer-brand-tagline,.footer-variant-landing .footer-social-label{color:#fff}.footer-variant-landing .footer-fb-btn{color:#fff;background:#1877f2;border-color:#1877f2}.footer-variant-landing .footer-fb-btn:hover{color:#fff;background:#166fe5;border-color:#166fe5}.footer-variant-landing .footer-legal-link{color:#fff}.footer-variant-landing .footer-legal-link:hover{color:#fff;text-decoration:underline}.footer-variant-landing .footer-bottom-row{color:#fff;border-top-color:#ffffff40}.footer-variant-default{background:var(--surface);border-top:1px solid var(--border)}.footer-variant-default .footer-inner{padding:20px 24px 16px}@media (max-width:640px){.footer-inner,.footer-variant-landing .footer-inner{padding:20px 24px 16px}.footer-columns{text-align:center;grid-template-columns:1fr;gap:20px}.footer-brand-tagline{max-width:none;margin-left:auto;margin-right:auto}.footer-col-social{flex-direction:column;align-items:center;display:flex}.footer-col-legal{align-items:center;gap:8px}.footer-bottom-row{margin-top:16px;padding-top:14px}}@media (max-width:900px){.landing-hero-saas .landing-hero-inner{text-align:center;grid-template-columns:1fr}.landing-hero-left{max-width:none;margin:0 auto;padding-left:0}.landing-hero-subheadline{margin-left:auto;margin-right:auto}.landing-hero-ctas{justify-content:center}.landing-hero-right{order:-1;justify-content:center}.landing-hero-mock-stack{max-width:580px;margin:0 auto}.landing-hero-mock-mobile{width:30%}.landing-features-responsive{grid-template-columns:repeat(2,1fr)}.landing-how-steps,.landing-compare-grid{grid-template-columns:1fr}.landing-nav{padding:var(--space-3)var(--space-5)}.landing-nav-links,.landing-nav-links-primary{gap:var(--space-4)}.landing-features,.landing-how,.landing-compare,.landing-final-cta,.landing-login,.landing-facebook{padding-left:var(--space-5);padding-right:var(--space-5)}}@media (max-width:768px){.landing-hero,.landing-hero-saas{padding:100px 20px 40px}.landing-nav{padding:14px 20px;padding-right:max(24px,env(safe-area-inset-right,24px));flex-direction:row;justify-content:space-between;align-items:center;gap:8px;min-height:56px}.landing-nav-brand{flex-shrink:0;min-width:0}.landing-nav-brand svg{width:44px;height:44px}.landing-nav-links{flex-shrink:0;align-items:center;gap:6px;min-width:0;padding-left:6px;display:flex}.landing-nav-links-primary,.landing-nav-add-home-label-desktop{display:none}.landing-nav-add-home-label-mobile{display:inline}.landing-nav-add-home{background:#ffffff0f;border-color:#ffffffb3;min-width:0;padding:6px 8px;font-size:13px;font-weight:600}.landing-nav-add-home:hover{background:#ffffff1f}.landing-nav-add-home:active{opacity:.94;background:#ffffff24}.landing-nav-signin{color:#ffffffb8;white-space:nowrap;-webkit-tap-highlight-color:#ffffff0f;flex-shrink:0;padding:10px 8px 10px 4px;font-size:13px;font-weight:500}.landing-nav-signin:hover{color:#fffffff2}.landing-hero-headline{margin-top:8px;font-size:28px;line-height:1.2}.landing-hero-inner,.landing-hero-content{gap:12px}.landing-hero-right{order:-1;justify-content:center;margin-bottom:0}.landing-hero-mock-stack{max-width:340px;margin:0 auto;position:relative;overflow:visible}.landing-hero-mock-web{border-radius:10px;width:100%;box-shadow:0 6px 24px #00000029}.landing-hero-mock-mobile{z-index:3;width:100%;box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;position:absolute;bottom:-5%;right:-37.5%}.landing-hero-mock-mobile .landing-hero-mock-image{box-shadow:none;background:0 0;border:0;border-radius:0;outline:none}}@media (max-width:400px){.landing-nav{padding-left:16px;padding-right:max(20px,env(safe-area-inset-right,20px));gap:4px}.landing-nav-brand{flex-shrink:0}.landing-nav-brand svg{width:40px;height:40px}.landing-nav-links{gap:4px;padding-left:4px}.landing-nav-add-home{padding:5px 6px;font-size:12px}.landing-nav-signin{padding:8px 6px 8px 2px;font-size:12px}}@media (max-width:600px){.landing-hero-headline{font-size:28px;line-height:1.2}.landing-hero-subheadline{max-width:100%;font-size:16px}.landing-hero-ctas{flex-direction:column;gap:12px}.landing-hero-ctas .landing-cta-btn{text-align:center;width:100%;min-height:48px;padding:14px 20px}.landing-features-responsive{grid-template-columns:1fr}.landing-final-checks{align-items:center;gap:var(--space-2);flex-direction:column}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.tools-header-wrap{background:var(--surface);border-bottom:1px solid var(--border);padding:16px 24px;box-shadow:0 1px 3px #0000000f}.tools-header-tagline{color:var(--color-blue);letter-spacing:.02em;text-transform:uppercase;margin:0 0 12px;font-size:13px;font-weight:700}.tools-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tools-header-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:background-color .15s,border-color .15s,color .15s;display:flex}.tools-header-btn:hover{background:var(--color-blue-muted);border-color:var(--color-blue);color:var(--color-blue)}.tools-header-btn svg,.tool-link-btn svg{flex-shrink:0;width:18px;height:18px}.drawer-menu-btn{top:max(var(--space-3),env(safe-area-inset-top,0px));left:max(var(--space-3),env(safe-area-inset-left,0px));z-index:45;border-radius:var(--radius-sm);background:var(--surface);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--text-primary);cursor:pointer;-webkit-touch-callout:none;box-shadow:var(--shadow-md);transition:background-color var(--motion-fast)var(--ease-enter);-webkit-tap-highlight-color:transparent;touch-action:manipulation;border:none;justify-content:center;align-items:center;padding:0;display:none;position:fixed}.drawer-menu-btn:hover{background:var(--border-muted)}@media (max-width:1279px){.drawer-menu-btn{z-index:980;display:flex}}.free-plan-banner{margin-bottom:var(--space-5);padding:var(--space-4)var(--space-5);background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--color-primary);justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--text-body);color:var(--text-primary);border-radius:12px;flex-wrap:wrap;display:flex;box-shadow:0 1px 3px #0000000a}.premium-badge{background:linear-gradient(135deg,#d4af37 0%,#c9a227 40%,var(--color-primary)100%);color:#fff;letter-spacing:.05em;transition:transform var(--motion-fast)ease,box-shadow var(--motion-fast)ease;border-radius:9999px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0038a840}.premium-badge:hover{transform:scale(1.05);box-shadow:0 4px 12px #0038a859}.premium-badge-sm{padding:2px 6px;font-size:10px}.premium-badge-md{padding:4px 10px;font-size:11px}.premium-badge-icon{color:inherit;align-items:center;display:inline-flex}.premium-badge-text{color:inherit}@keyframes premium-badge-shimmer{0%{opacity:.6;filter:brightness(.9)}50%{opacity:1;filter:brightness(1.15)}to{opacity:1;filter:brightness()}}.premium-badge-shimmer{animation:1.2s ease-out premium-badge-shimmer}.pro-plan-chip{background:var(--color-blue-muted);border-radius:var(--radius-sm);color:var(--color-primary);border:1px solid #0038a833;flex-direction:column;align-items:flex-end;gap:2px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.pro-plan-chip-renewal{color:var(--text-secondary);font-size:10px;font-weight:400}.dashboard-premium{position:relative}.dashboard-premium .dash-card{box-shadow:var(--shadow-sm),0 2px 12px #0038a80f}@media (prefers-reduced-motion:no-preference){.dashboard-premium .dash-card{transition:box-shadow var(--motion-fast)ease}.dashboard-premium .dash-card:hover{box-shadow:var(--shadow-md),0 4px 16px #0038a814}}.premium-header-inner{align-items:stretch;max-width:100%;height:100%;display:flex}.premium-header-mobile-spacer{display:none}.premium-header-left{flex-direction:column;align-items:stretch;gap:0;width:35%;min-width:0;padding:0;display:flex;position:relative}.header-angled-bg{z-index:0;clip-path:polygon(0 0,100% 0,calc(100% - 48px) 100%,0 100%);pointer-events:none;background:linear-gradient(145deg,#f0f2f5 0%,#e6e9ef 100%);position:absolute;inset:0;box-shadow:inset 0 1px #ffffff40}.premium-header-left .mobile-header-row-1,.premium-header-left .mobile-header-row-2,.premium-header-left .premium-header-line{z-index:1;position:relative}.premium-header-photo-frame{background:var(--color-blue-muted);border:none;border-right:1px solid var(--border);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:80px;height:100%;min-height:80px;display:flex;position:relative;box-shadow:1px 0 #0000000a}.premium-header-add-photo{font-size:var(--text-small);color:var(--color-primary);padding:var(--space-1)var(--space-2);text-align:center;justify-content:center;align-items:center;min-height:44px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.premium-header-add-photo:hover{text-decoration:underline}.premium-header-profile-lines{min-width:0;padding:var(--space-1)var(--space-4)var(--space-1)var(--space-3);flex-direction:column;flex:1;justify-content:center;gap:4px;display:flex}.premium-header-line{flex-wrap:wrap;align-items:center;min-height:0;display:flex}.premium-header-line-60{flex:none;align-items:flex-end}.premium-header-line-25{flex:none}.premium-header-line-15{flex-direction:row;flex:none;align-items:center;gap:0}.premium-header-hi{font-size:var(--text-h3);color:var(--text-primary);letter-spacing:-.01em;text-shadow:0 1px #fff6;font-weight:700}.premium-header-clarity-badge{background:var(--color-blue-muted);color:var(--color-primary);letter-spacing:.02em;white-space:nowrap;border:1px solid #0038a833;border-radius:10px;align-items:center;gap:6px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.premium-header-clarity-badge:after{content:"";width:50%;height:100%;animation:clarity-badge-sweep 6s var(--ease-ambient)infinite;background:linear-gradient(90deg,#0000,#ffffff40,#0000);position:absolute;top:0;left:-100%}@keyframes clarity-badge-sweep{0%{opacity:0;left:-100%}15%{opacity:1}85%{opacity:1}to{opacity:0;left:200%}}.premium-header-incomplete-label{font-size:var(--text-small);color:var(--text-secondary);font-weight:600}.premium-header-progress-wrap{background:var(--border-muted);border-radius:2px;width:100%;max-width:100px;height:3px;overflow:hidden}.premium-header-progress-fill{background:var(--color-primary);height:100%;transition:width var(--motion-medium)var(--ease-enter);border-radius:2px}.premium-header-cta{color:var(--color-primary);white-space:nowrap;align-items:center;min-height:28px;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.premium-header-cta:hover{text-decoration:underline}.premium-header-complete{font-size:var(--text-small);color:var(--color-success);font-weight:600}.premium-header-right{align-items:center;gap:var(--space-5);width:65%;min-width:0;padding:0 var(--space-5);flex-wrap:wrap;display:flex}.premium-header-pro-chip{align-items:center;gap:var(--space-2);margin-left:auto;display:inline-flex}.premium-header-tagline-block{gap:var(--space-1);flex-direction:column;line-height:1.15;display:flex}.premium-header-tagline-line1{font-size:var(--text-body);color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.premium-header-tagline-line2{font-size:var(--text-h3);color:var(--color-primary);letter-spacing:.22em;text-transform:uppercase;font-weight:800}.premium-header-tools{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.premium-tool-card{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);min-width:76px;height:88px;color:inherit;transition:background var(--motion-medium)var(--ease-enter),transform var(--motion-fast)var(--ease-enter);flex-direction:column;flex:1 1 0;text-decoration:none;display:flex}.premium-tool-card-label{color:var(--text-primary);text-align:center;justify-content:center;align-items:center;min-height:28px;font-size:11px;font-weight:600;line-height:1.2;display:flex}.premium-tool-card-icon{width:44px;min-width:44px;height:44px;min-height:44px;transition:transform var(--motion-fast)var(--ease-enter);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.premium-tool-card-icon svg{width:24px;height:24px}.premium-tool-card:hover .premium-tool-card-icon{transform:scale(1.06)}.premium-tool-card-health{background:var(--color-blue-muted);color:var(--color-primary)}.premium-tool-card-health:hover{background:#0038a824}.premium-tool-card-salary{background:var(--color-success-muted);color:var(--color-success)}.premium-tool-card-salary:hover{background:#05966929}.premium-tool-card-13th{background:var(--color-yellow-muted);color:#b8960d}.premium-tool-card-13th:hover{background:#fcd11638}.premium-tool-card-loan{background:var(--color-red-muted);color:var(--color-red)}.premium-tool-card-loan:hover{background:#ce112624}.tool-link-btn{border-radius:var(--radius-sm);cursor:pointer;color:#fff;border:none;align-items:center;gap:8px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex;position:relative;overflow:hidden}.tool-link-btn:after{content:"";background:linear-gradient(90deg,#0000,#ffffff40,#0000);width:60%;height:100%;animation:3s ease-in-out infinite tool-shine;position:absolute;top:0;left:-100%}@keyframes tool-shine{0%{left:-100%}60%,to{left:100%}}.tool-link-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.tool-link-btn-health{background:var(--color-blue)}.tool-link-btn-salary{background:var(--color-success)}.tool-link-btn-13th{background:#0ea5e9}.tool-link-btn-loan{background:var(--color-red)}.tool-page .tool-page-title{color:var(--text-primary);margin:0 0 8px;font-size:24px;font-weight:700}.tool-page .tool-page-desc{color:var(--text-secondary);margin:0 0 24px;font-size:14px;line-height:1.5}.tool-page .dash-card{background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);padding:var(--space-5);border-radius:12px;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.tool-page-faq{margin-top:28px}.tool-page-faq-title{color:var(--text-primary);margin:0 0 12px;font-size:18px;font-weight:700}.tool-page-faq-item{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.tool-page-faq-q{color:var(--text-primary);margin:0 0 6px;font-size:14px;font-weight:700}.tool-page-faq-a{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.6}.dashboard-top-cluster{width:100%;margin-bottom:var(--space-5);contain:layout style}.dashboard-top-row{gap:var(--space-4);grid-template-columns:25% 75%;align-items:start;display:grid}.dashboard-col-left{align-self:start;min-width:0;display:block}.dashboard-left-module{gap:var(--space-3);flex-direction:column;width:100%;display:flex}.expenses-trend-chart-container .financial-chart-container{width:100%;min-height:0;overflow:visible;height:100%!important}.expenses-trend-chart-container canvas{max-height:190px}.dashboard-page .page-header{margin-bottom:var(--space-3)}.dashboard-page .page-header h2{margin:0 0 var(--space-1);font-size:var(--text-h2)}.dashboard-page .page-header p{font-size:var(--text-small)}.income-page .page-header.dashboard-page-header,.expenses-page .page-header.dashboard-page-header{margin-bottom:var(--space-3)}.income-page .page-header.dashboard-page-header h2,.expenses-page .page-header.dashboard-page-header h2{margin:0 0 var(--space-1);font-size:var(--text-h2);letter-spacing:-.01em;color:var(--text-primary);font-weight:600}@media (max-width:1279px){.income-page .page-header.dashboard-page-header h2,.expenses-page .page-header.dashboard-page-header h2{margin-bottom:0}}.income-page .page-header.dashboard-page-header p,.expenses-page .page-header.dashboard-page-header p{font-size:var(--text-small);color:var(--text-helper)}@media (max-width:1023px){.income-page .page-header.dashboard-page-header .income-expenses-page-header-actions,.expenses-page .page-header.dashboard-page-header .income-expenses-page-header-actions{grid-template-columns:1fr 1fr;align-items:stretch;gap:8px;margin-top:2px;display:grid}.income-page .page-header.dashboard-page-header .income-expenses-page-header-actions>*,.expenses-page .page-header.dashboard-page-header .income-expenses-page-header-actions>*{text-align:center;justify-content:center;min-width:0}.income-page .page-header.dashboard-page-header .income-expenses-page-header-actions .btn-secondary,.expenses-page .page-header.dashboard-page-header .income-expenses-page-header-actions .btn-secondary{box-sizing:border-box;width:100%}.income-page .page-header.dashboard-page-header .income-expenses-page-header-actions .premium-btn-disabled,.expenses-page .page-header.dashboard-page-header .income-expenses-page-header-actions .premium-btn-disabled{box-sizing:border-box;justify-content:center;width:100%}}@media (min-width:1024px){.income-page .page-header.dashboard-page-header .income-expenses-page-header-actions,.expenses-page .page-header.dashboard-page-header .income-expenses-page-header-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}}.dashboard-header-actions-desktop{gap:var(--space-2);align-items:center;display:flex}@media (max-width:1279px){.dashboard-header-actions-desktop{display:none}.header-add-btn-desktop-only{display:none!important}}.dashboard-page .dashboard-top-row{gap:var(--space-3)}.dashboard-page .dashboard-top-cluster{margin-bottom:var(--space-3)}.dashboard-page .dashboard-left-module{gap:var(--space-3)}.dashboard-page .goal-momentum-executive{padding:var(--space-3)}.dashboard-page .goal-momentum-executive-body{gap:var(--space-3)}.dashboard-page .goal-momentum-executive-stats{gap:var(--space-2)}.dashboard-page .goal-momentum-executive-encourage{min-height:2.75em;font-size:11px;line-height:1.4;margin-bottom:var(--space-2)!important}.dashboard-page .goal-momentum-executive-body{align-items:center;min-height:140px}.dashboard-page .goal-momentum-executive-value{font-size:var(--text-body);font-variant-numeric:tabular-nums;text-align:right;box-sizing:border-box;min-width:10.5rem;display:inline-block}@media (max-width:1279px){.dashboard-page .goal-momentum-executive-value{text-align:center}}.dashboard-page .goal-momentum-donut-wrap{width:120px;height:120px}.dashboard-page .goal-momentum-donut-pct{font-size:var(--text-h3)}.dashboard-page .expenses-trend-chart-card .expenses-trend-chart-container{padding-top:0}.dashboard-page .expenses-trend-chart-card{padding-bottom:0}.dashboard-page .card.dash-card.dash-card-no-border,.dashboard-page .dash-card.dash-card-no-border{padding:var(--space-3);margin-top:var(--space-4)}.dashboard-page .dash-card-header{margin-bottom:var(--space-2)}.dashboard-page .dash-card-title,.dashboard-page .dashboard-card-title{font-size:calc(var(--text-h2)*.85)}.dashboard-page .financial-health-two-col{grid-template-columns:65fr 35fr;align-items:start;gap:24px;margin-top:24px;display:grid}@media (max-width:900px){.dashboard-page .financial-health-two-col{grid-template-columns:1fr}}.dashboard-page .expenses-trend-chart-card h2{font-size:calc(var(--text-h2)*.85)}.dashboard-page .budget-overview-card{padding:24px}.dashboard-page .budget-overview-header{align-items:center;gap:11px;margin-bottom:24px}.dashboard-page .budget-overview-title{font-size:18px;font-weight:600;line-height:normal}.dashboard-page .budget-overview-controls{flex-wrap:wrap;align-items:center;gap:8px}.dashboard-page .budget-overview-controls label,.dashboard-page .budget-overview-controls select,.dashboard-page .budget-overview-controls .btn-primary,.dashboard-page .budget-overview-controls .card-outline-link{font-size:13px;line-height:normal}.dashboard-page .budget-overview-two-col{gap:20px}@media (min-width:1280px){.dashboard-page .budget-overview-two-col{gap:24px}}.dashboard-page .budget-health-card,.dashboard-page .budget-breakdown-card{padding:20px}.dashboard-page .budget-section-title{margin:0 0 12px;font-size:14px;font-weight:600;line-height:normal}.dashboard-page .budget-overview-rows{row-gap:var(--space-2);column-gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-page .budget-category-name{font-size:14px;font-weight:600;line-height:normal}.dashboard-page .budget-category-amount,.dashboard-page .budget-category-secondary,.dashboard-page .budget-category-muted{font-size:13px;line-height:normal}.dashboard-page .budget-category-insight-row{gap:8px;font-size:12px;line-height:normal}@media (min-width:1280px){.dashboard-top-cluster .goal-momentum-executive .dash-card-header,.dashboard-top-cluster .expenses-trend-chart-header,.dashboard-top-cluster .budget-overview-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);min-height:36px;display:flex}.dashboard-top-cluster .goal-momentum-executive .dash-card-header>div:last-child{width:auto;flex-direction:row!important;align-items:flex-start!important;gap:8px!important;display:flex!important}.dashboard-top-cluster .card-outline-link{white-space:nowrap;justify-content:center;min-height:32px}}.dashboard-page .flow-header-and-filters{gap:var(--space-2)var(--space-3);margin-bottom:var(--space-2)}.dashboard-page .flow-filter-btn{padding:6px 12px;font-size:12px}.dashboard-page .flow-three-col{gap:var(--space-3)}.dashboard-page .flow-col-snapshot{gap:var(--space-2);padding:var(--space-3)}.dashboard-page .flow-snapshot-card{padding:var(--space-2)var(--space-3);gap:var(--space-2)}.dashboard-page .flow-snapshot-label{font-size:11px}.dashboard-page .flow-snapshot-value{font-size:15px}.dashboard-page .flow-table-header{padding:var(--space-2)var(--space-3);font-size:13px}.dashboard-page .flow-table th{padding:6px var(--space-3);font-size:11px}.dashboard-page .flow-table td{padding:6px var(--space-3);font-size:12px}.dashboard-page .flow-empty{padding:var(--space-3);font-size:12px}.dashboard-page .flow-table-scroll{max-height:200px}@media (max-width:1279px){.dashboard-page .page-header.dashboard-page-header,.dashboard-page .page-header,.dashboard-page .page-header h2{margin-bottom:0}.dashboard-page .page-header p,.dashboard-page .free-plan-banner,.dashboard-page .dashboard-top-cluster{margin-top:0;margin-bottom:0}.dashboard-page .card.dash-card.dash-card-no-border,.dashboard-page .dash-card.dash-card-no-border{padding:var(--space-2)var(--space-3);margin-top:0;margin-bottom:0}.dashboard-page .budget-overview-card{padding:var(--space-3)var(--space-3)var(--space-4);margin-top:0;margin-bottom:0}.dashboard-page .budget-overview-header{margin-bottom:var(--space-2);gap:var(--space-2);flex-direction:column;align-items:flex-start}.dashboard-page .budget-overview-title{text-align:left;width:100%;font-size:var(--text-h3);font-weight:600;line-height:1.25}.dashboard-page .budget-overview-controls{justify-content:flex-start;width:100%}.dashboard-page .budget-section-title{text-align:left;font-size:var(--text-h3);font-weight:600;line-height:1.25}.dashboard-page .budget-overview-two-col{gap:var(--space-3)}.dashboard-page .budget-health-card,.dashboard-page .budget-breakdown-card{padding:var(--space-3)}.dashboard-page .budget-health-donut-ring{width:132px;height:132px}.dashboard-page .budget-health-donut-ring .budget-health-donut-wrap{width:104px;height:104px}.dashboard-page .budget-health-used-label{margin:0 0 6px}.dashboard-page .goal-momentum-executive{box-sizing:border-box;width:100%;max-width:100%;padding:var(--space-2)var(--space-3);margin-top:0;margin-bottom:0}.dashboard-page .dashboard-col-left{align-self:stretch;width:100%;min-width:0;max-width:100%}.dashboard-page .dashboard-left-module{width:100%;max-width:100%}.dashboard-page .card.dash-card{margin-top:0}.dashboard-page .dash-card-header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;gap:var(--space-2);flex-direction:row;padding-bottom:0}.dashboard-page .dash-card-title,.dashboard-page .dashboard-card-title{font-size:var(--text-h3);text-align:left;font-weight:600}.dashboard-page .income-expense-flow--dashboard-page .flow-three-col{grid-template-columns:1fr;gap:.75rem}.dashboard-page .income-expense-flow--dashboard-page .flow-col-income,.dashboard-page .income-expense-flow--dashboard-page .flow-col-expense{display:none!important}.dashboard-page .income-expense-flow--dashboard-page .flow-col.flow-col-snapshot{overflow:visible}.dashboard-page .income-expense-flow--dashboard-page .flow-col-snapshot{flex-direction:row;align-items:stretch;gap:4px;padding:4px 4px 6px;overflow:visible}.dashboard-page .income-expense-flow--dashboard-page .flow-snapshot-card{text-align:center;flex-direction:column;flex:1 1 0;justify-content:flex-start;align-items:center;gap:4px;min-width:0;padding:6px 4px;overflow:visible}.dashboard-page .income-expense-flow--dashboard-page .flow-snapshot-card>div{width:100%;min-width:0;overflow:visible}.dashboard-page .income-expense-flow--dashboard-page .flow-snapshot-card svg{flex-shrink:0;width:16px;height:16px}.dashboard-page .income-expense-flow--dashboard-page .flow-snapshot-label{white-space:nowrap;color:var(--text-muted,#64748b);margin-bottom:0;font-size:.6875rem;line-height:1.2}.dashboard-page .income-expense-flow--dashboard-page .flow-snapshot-value{white-space:nowrap;text-overflow:clip;max-width:none;font-size:.875rem;font-weight:700;line-height:1.25;overflow:visible}.dashboard-page .income-expense-flow--dashboard-page .flow-header-and-filters{flex-direction:column;align-items:stretch;gap:4px 6px;margin-bottom:.375rem}.dashboard-page .income-expense-flow--dashboard-page .flow-header-and-filters .dash-card-title{text-align:left;width:100%;font-size:var(--text-h3);font-weight:600}.dashboard-page .income-expense-flow--dashboard-page .flow-filter-row{flex-flow:column wrap;align-items:stretch;gap:6px;width:100%;margin-bottom:0}.dashboard-page .income-expense-flow--dashboard-page .flow-filter-buttons{flex-wrap:nowrap;justify-content:stretch;gap:4px;width:100%;min-width:0}.dashboard-page .income-expense-flow--dashboard-page .flow-filter-buttons .flow-filter-btn{white-space:nowrap;text-overflow:ellipsis;flex:1 1 0;justify-content:center;align-items:center;gap:3px;min-width:0;padding:7px 4px;font-size:11px;line-height:1.2;display:flex;overflow:hidden}.dashboard-page .income-expense-flow--dashboard-page .flow-range-label{text-align:center;flex-basis:100%;width:100%;margin-left:0}.dashboard-page .income-expense-flow--dashboard-page .flow-custom-range{flex-wrap:wrap;flex-basis:100%;justify-content:center;width:100%}.dashboard-page .budget-overview-card .budget-overview-rows>.budget-category-item:nth-child(n+4){display:none!important}.dashboard-page .budget-overview-rows{column-gap:0!important;row-gap:var(--space-3)!important;grid-template-columns:1fr!important;display:grid!important}.dashboard-page .budget-breakdown-card{padding:var(--space-3)}.dashboard-page .budget-breakdown-card .budget-section-title{margin-bottom:var(--space-3)}.dashboard-page .budget-breakdown-card .budget-category-item{gap:var(--space-3);width:100%;padding-bottom:var(--space-3);border-bottom:1px solid var(--border,#e2e8f0);margin-bottom:0}.dashboard-page .budget-breakdown-card .budget-category-item:last-child{border-bottom:none;padding-bottom:0}.dashboard-page .budget-breakdown-card .budget-category-name{width:100%;font-size:13px;line-height:1.3}.dashboard-page .budget-breakdown-card .budget-category-amount{width:100%;color:var(--text-primary,#0f172a);font-weight:600}.dashboard-page .budget-breakdown-card .budget-category-insight-row{justify-content:space-between;align-items:center;gap:var(--space-2);flex-flow:row;width:100%;min-width:0;margin-top:2px;display:flex}.dashboard-page .budget-breakdown-card .budget-category-insight-label{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;font-weight:500;line-height:1.35;overflow:hidden}.dashboard-page .budget-breakdown-card .budget-category-insight-value{text-align:right;font-variant-numeric:tabular-nums;flex:none;font-weight:700;line-height:1.35}.dashboard-page .budget-breakdown-card .budget-overview-bar{width:100%;margin-top:var(--space-2)}}.dashboard-col-budget{align-self:start;min-width:0}@media (max-width:1279px){.dashboard-top-row{gap:var(--space-5);grid-template-columns:1fr}.dashboard-page .dashboard-top-row{align-items:stretch;gap:var(--space-3);flex-direction:column;display:flex!important}.dashboard-page .dashboard-col-budget{order:1;align-self:stretch;width:100%;min-width:0;max-width:100%}.dashboard-page .dashboard-col-left{order:2}.dashboard-page .budget-overview-card{box-sizing:border-box;width:100%;max-width:100%}.dashboard-page .budget-overview-two-col{width:100%;min-width:0}.dashboard-page .budget-health-card{box-sizing:border-box;width:100%;max-width:100%}}.goal-momentum-executive{padding:var(--space-4);background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;display:flex;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.goal-momentum-executive-header{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.goal-momentum-executive-title{font-size:var(--text-h2);color:var(--text-primary);margin:0;font-weight:600}.goal-momentum-executive-body{align-items:center;gap:var(--space-5);display:flex}.goal-momentum-executive-donut-ring{background:var(--surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:140px;height:140px;display:flex;position:relative;box-shadow:0 2px 16px #0000000f,inset 0 1px #fffc}.goal-momentum-executive-donut-ring .goal-momentum-donut-wrap{width:110px;height:110px}.goal-momentum-executive-donut-ring .goal-momentum-donut-pct{font-size:var(--text-h2);color:var(--color-primary);letter-spacing:-.02em;font-weight:700}.goal-momentum-donut-wrap{aspect-ratio:1;flex-shrink:0;width:160px;height:160px;position:relative}.goal-momentum-donut-svg{width:100%;height:100%;transition:stroke-dashoffset var(--motion-medium)var(--ease-enter)}.goal-momentum-donut-track{stroke:var(--border-muted)}.goal-momentum-donut-fill{stroke:var(--color-primary);stroke-linecap:round}.goal-momentum-donut-center{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.goal-momentum-donut-pct{font-size:var(--text-h1);color:var(--color-primary);font-weight:700}.goal-momentum-executive-stats{gap:var(--space-3);flex-direction:column;flex:1;min-width:0;display:flex}.goal-momentum-executive-stat{flex-direction:column;gap:2px;display:flex}.goal-momentum-executive-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:11px}.goal-momentum-executive-value{font-size:var(--text-data-md);color:var(--text-primary);font-weight:700}.goal-momentum-value-success{color:var(--color-success)}.goal-momentum-executive-encourage{font-size:var(--text-small);color:var(--text-primary);text-align:center;min-height:2.75em;margin:0;font-weight:700;line-height:1.35}@media (max-width:1279px){.goal-momentum-executive-body{flex-direction:column;align-items:center}.goal-momentum-executive-donut-ring{width:120px;height:120px}.goal-momentum-executive-donut-ring .goal-momentum-donut-wrap{width:96px;height:96px}.goal-momentum-donut-wrap{width:min(140px,40vw);height:min(140px,40vw);max-height:none}.goal-momentum-donut-pct{font-size:clamp(20px,5vw,var(--text-h2))}.goal-momentum-executive{padding:var(--space-4)}.goal-momentum-executive-stats{text-align:center;align-items:center}.goal-momentum-executive-encourage{text-align:center}}.goals-grid-focus{gap:var(--space-4);grid-template-columns:1fr;min-width:0;padding:0}@media (max-width:1279px){.goals-grid-focus{gap:var(--space-5)}}.focus-goals-manage-wrap{margin-top:var(--space-3)}.focus-goals-manage-link{min-height:36px;padding:var(--space-1)0;font-size:var(--text-small);color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;font-family:inherit;font-weight:600;text-decoration:none;display:inline-flex}.focus-goals-manage-link:hover{text-decoration:underline}.goals-grid{gap:var(--space-4);padding:0 var(--space-1);grid-template-columns:repeat(3,1fr);display:grid}@media (max-width:900px){.goals-grid{grid-template-columns:1fr}}@media (max-width:1279px){.goals-grid{gap:var(--space-5)}}.goals-encourage-note{margin:0 0 var(--space-3);font-size:var(--text-small);color:var(--text-muted)}.marathon-goal{padding:var(--space-5)0}.marathon-goal-compact{padding:var(--space-3)0}.marathon-goal-compact .marathon-goal-header{margin-bottom:var(--space-2)}.marathon-goal-compact .marathon-goal-name{font-size:var(--text-body)}.marathon-goal-compact .marathon-track{height:32px}.goals-grid-focus .marathon-goal{padding:var(--space-3)var(--space-4)}.goals-grid-focus .marathon-track{height:32px}.focus-goals-card{padding:var(--space-4);margin-bottom:0}.focus-goals-header{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;align-items:center}.focus-goals-header .btn-primary{padding:var(--space-1)var(--space-4);min-height:36px;font-size:var(--text-small)}.focus-goals-upgrade-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.focus-goals-limit-text{font-size:var(--text-body);color:var(--text-muted)}.focus-goals-loading{padding:var(--space-5);font-size:var(--text-body);color:var(--text-muted);margin:0}.focus-goals-empty-text{margin:0 0 var(--space-4);font-size:var(--text-body);color:var(--text-secondary)}.focus-goal-cell{position:relative}.focus-goal-clickable{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:var(--radius-md);transition:box-shadow var(--motion-fast)ease;background:0 0;border:none;margin:0;padding:0;display:block}.focus-goal-clickable:hover{box-shadow:0 0 0 2px var(--color-primary)}.focus-goal-clickable:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.goals-grid .marathon-goal+.marathon-goal{border-top:none}.goals-grid .marathon-goal{padding:var(--space-3)var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.marathon-goal-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:flex-start;display:flex}.marathon-goal-name{font-size:var(--text-h3);color:var(--text-primary);margin:0 0 var(--space-1);font-weight:600}.marathon-goal-amount{font-size:var(--text-body);color:var(--text-secondary)}.marathon-goal-pct{font-size:var(--text-body);color:var(--color-blue);font-weight:600}.marathon-track{height:48px;margin-top:var(--space-1);position:relative}.marathon-road{background:var(--border);border-radius:6px;height:12px;position:absolute;top:50%;left:0;right:0;overflow:hidden;transform:translateY(-50%)}.marathon-road-fill{background:linear-gradient(90deg,var(--color-blue)0%,var(--color-blue-light)100%);height:100%;transition:width var(--motion-medium)var(--ease-enter);border-radius:6px}.marathon-road-dashes{background:repeating-linear-gradient(90deg,#fff6 0 8px,#0000 8px 20px);height:2px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.marathon-runner{z-index:2;transition:left .6s;position:absolute;top:50%;transform:translate(-50%,-50%)}.marathon-flag{z-index:1;position:absolute;top:50%;right:0;transform:translate(50%,-50%)}.goal-momentum-hero{margin-bottom:var(--space-6);padding:var(--space-6);background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);border:1px solid var(--border);border-radius:16px;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.goal-momentum-hero-inner{max-width:720px;margin:0 auto}.goal-momentum-hero-header{margin-bottom:var(--space-5)}.goal-momentum-hero-title{margin:0 0 var(--space-2);color:var(--text-primary);letter-spacing:-.03em;font-size:1.5rem;font-weight:700;line-height:1.2}.goal-momentum-hero-encourage{font-size:var(--text-body);color:var(--text-secondary);margin:0;font-weight:500;line-height:1.45}.goal-momentum-hero-body{align-items:center;gap:var(--space-6);column-gap:var(--space-6);grid-template-columns:auto 1fr;display:grid}.goal-momentum-hero-donut{flex-shrink:0}.goal-momentum-hero-donut-ring{background:var(--surface);border-radius:50%;justify-content:center;align-items:center;width:200px;height:200px;display:flex;position:relative;box-shadow:0 2px 16px #0000000f,inset 0 1px #fffc}.goal-momentum-hero-donut-ring .goal-momentum-donut-wrap{width:160px;height:160px}.goal-momentum-hero-donut-ring .goal-momentum-donut-pct{color:var(--color-primary);letter-spacing:-.02em;font-size:1.75rem;font-weight:700}.goal-momentum-hero-stats{gap:var(--space-4)var(--space-5);grid-template-columns:repeat(2,1fr);align-content:start;min-width:0;display:grid}.goal-momentum-hero-stat{flex-direction:column;gap:4px;display:flex}.goal-momentum-hero-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:11px;font-weight:600}.goal-momentum-hero-value{color:var(--text-primary);letter-spacing:-.02em;font-size:1.25rem;font-weight:700}.goal-momentum-hero-value-accent{color:var(--color-success);font-size:1.35rem}.goal-momentum-hero-insight{margin-top:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border);flex-direction:column;grid-column:1/-1;gap:4px;display:flex}.goal-momentum-hero-insight-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:11px;font-weight:600}.goal-momentum-hero-insight-value{font-size:var(--text-body);color:var(--color-primary);font-weight:600}@media (max-width:1279px){.goal-momentum-hero{padding:var(--space-5);margin-bottom:var(--space-5)}.goal-momentum-hero-body{text-align:center;grid-template-columns:1fr;justify-items:center}.goal-momentum-hero-header{text-align:center;margin-bottom:var(--space-4)}.goal-momentum-hero-donut-ring{width:160px;height:160px}.goal-momentum-hero-donut-ring .goal-momentum-donut-wrap{width:128px;height:128px}.goal-momentum-hero-stats{text-align:left;grid-template-columns:1fr;width:100%}.goal-momentum-hero-insight{text-align:left}}.goals-page .goals-grid-premium{gap:var(--space-4)}.goal-card-premium{gap:var(--space-4);padding:var(--space-5);background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);border:1px solid var(--border);transition:box-shadow var(--motion-fast)ease,border-color var(--motion-fast)ease;border-radius:12px;flex-direction:column;display:flex;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.goal-card-premium:hover{border-color:var(--border);box-shadow:0 4px 16px #0000000f}.goal-card-premium-head{align-items:flex-start;gap:var(--space-4);display:flex}.goal-card-premium-icon-wrap{background:var(--color-blue-muted);width:44px;height:44px;color:var(--color-primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.goal-card-premium-titles{flex:1;min-width:0}.goal-card-premium-name{margin:0 0 var(--space-1);color:var(--text-primary);font-size:1.0625rem;font-weight:600;line-height:1.3}.goal-card-premium-amount{font-size:var(--text-body);color:var(--text-secondary);font-variant-numeric:tabular-nums;margin:0}.goal-card-premium-saved{color:var(--text-primary);font-weight:600}.goal-card-premium-sep{color:var(--text-muted);font-weight:400}.goal-card-premium-date{margin:var(--space-1)0 0;font-size:var(--text-small);color:var(--text-muted)}.goal-card-premium-bar-wrap{width:100%}.goal-card-premium-bar{background:var(--border-muted);height:10px;margin-bottom:var(--space-2);border-radius:6px;overflow:hidden}.goal-card-premium-bar-fill{background:linear-gradient(90deg,var(--color-primary)0%,var(--color-blue-light)100%);min-width:0;height:100%;transition:width var(--motion-medium)var(--ease-enter);border-radius:6px}.goal-card-premium-bar-meta{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.goal-card-premium-pct{font-size:var(--text-small);color:var(--text-secondary);font-weight:600}.goal-card-premium-pct-done{color:var(--color-success)}.goal-card-premium-actions{align-items:center;gap:var(--space-1);display:flex}.goal-card-premium-btn{border:1px solid var(--border);cursor:pointer;color:var(--text-muted);transition:color var(--motion-fast)ease,background var(--motion-fast)ease,border-color var(--motion-fast)ease;background:0 0;border-radius:8px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:500}.goal-card-premium-btn:hover{color:var(--text-primary);background:var(--surface);border-color:var(--border)}.goal-card-premium-btn-edit{color:var(--color-primary);border-color:#0000}.goal-card-premium-btn-edit:hover{color:var(--color-primary);background:var(--color-blue-muted);border-color:#0000}.goal-card-premium-btn-delete:hover{color:var(--color-danger,#b91c1c);background:#b91c1c0f;border-color:#0000}.goals-page-limit-banner{margin-bottom:var(--space-5);padding:var(--space-4)var(--space-5);background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--color-primary);border-radius:12px;box-shadow:0 1px 3px #0000000a}.goals-page-limit-title{font-size:var(--text-body);margin-bottom:var(--space-1);color:var(--text-primary);font-weight:600}.goals-page-limit-desc{margin:0 0 var(--space-3);font-size:var(--text-small);color:var(--text-secondary)}.goals-page-add-disabled{opacity:.85;cursor:not-allowed;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:8px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:500;display:inline-flex}.goals-page-cards-wrap{margin-top:0}.goals-page .dash-card-title{margin:0;font-size:1.125rem;font-weight:600}@media (max-width:1279px){.goals-page .goals-page-cards-wrap .dash-card-header{gap:var(--space-2);flex-wrap:wrap}.goals-page .goals-page-add-goal-btn,.goals-page .goals-page-add-disabled{justify-content:center;width:100%}}.flow-filter-bar,.flow-filter-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;display:flex}.flow-filter-row{justify-content:space-between;align-items:center}.flow-filter-buttons{flex-wrap:wrap;gap:6px;display:flex}.flow-range-label{color:var(--text-muted);margin-left:auto;font-size:12px}.flow-custom-to{color:var(--text-muted);font-size:13px}.flow-loading{text-align:center;color:var(--text-muted);padding:32px;font-size:14px}.flow-breakdown-loading{box-sizing:border-box;text-align:center;min-height:200px;color:var(--text-muted);justify-content:center;align-items:center;padding:32px 16px;font-size:14px;display:flex}.income-expense-flow--dashboard-page .flow-breakdown-loading{min-height:220px}@media (max-width:1279px){.income-expense-flow--dashboard-page .flow-breakdown-loading{min-height:180px}}.goal-momentum-section-placeholder{border-radius:var(--radius-md);border:1px solid var(--border);background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);box-sizing:border-box;width:100%;min-height:280px;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}@media (max-width:1279px){.goal-momentum-section-placeholder{min-height:300px}}.income-expense-flow--dashboard-page .flow-loading{box-sizing:border-box;min-height:260px}@media (max-width:1279px){.income-expense-flow--dashboard-page .flow-loading{min-height:480px}}.income-expense-flow{min-width:0}.flow-three-col{gap:var(--space-4);grid-template-columns:1fr 1fr 1fr;min-width:0;margin-top:0;display:grid}@media (max-width:1279px){.flow-three-col{grid-template-columns:1fr}}.flow-col{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;overflow:hidden}.flow-col-snapshot{flex-direction:column;gap:12px;padding:16px;display:flex}.flow-snapshot-card{border-radius:var(--radius-sm);border:1px solid var(--border);align-items:center;gap:12px;padding:14px 16px;display:flex}.flow-snapshot-card svg{flex-shrink:0}.flow-snapshot-income{border-left:4px solid var(--color-success);color:var(--color-success)}.flow-snapshot-income .flow-snapshot-value{color:var(--color-success)}.flow-snapshot-expense{border-left:4px solid var(--color-red);color:var(--color-red)}.flow-snapshot-expense .flow-snapshot-value{color:var(--color-red)}.flow-snapshot-net.positive{border-left:4px solid var(--color-success);color:var(--color-success)}.flow-snapshot-net.positive .flow-snapshot-value{color:var(--color-success)}.flow-snapshot-net.negative{border-left:4px solid var(--color-red);color:var(--color-red)}.flow-snapshot-net.negative .flow-snapshot-value{color:var(--color-red)}.flow-snapshot-label{color:var(--text-muted);margin-bottom:2px;font-size:12px}.flow-snapshot-value{font-size:18px;font-weight:700}.flow-header-and-filters{flex-wrap:wrap;align-items:center;gap:16px 24px;margin-bottom:16px;display:flex}.flow-header-and-filters .dash-card-title{margin:0}.flow-header-and-filters .flow-filter-row{flex:1;min-width:0;margin-bottom:0}.flow-col-income .flow-table-header,.flow-col-expense .flow-table-header{border-radius:0}.flow-empty{color:var(--text-muted);text-align:center;padding:20px;font-size:13px}.flow-table-scroll{max-height:280px;overflow:hidden auto}.flow-table-scroll .flow-table thead th{z-index:1;background:var(--surface);box-shadow:0 1px 0 var(--border);position:sticky;top:0}.card-outline-link{color:var(--color-primary);background:var(--surface);border:1px solid var(--color-primary);border-radius:6px;align-items:center;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}.card-outline-link:hover{background:var(--color-blue-muted)}.flow-filter-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:background-color .15s,border-color .15s,color .15s}.flow-filter-btn:hover{border-color:var(--color-blue);color:var(--color-blue)}.flow-filter-btn.active{background:var(--color-blue);border-color:var(--color-blue);color:var(--text-inverse)}@media (max-width:1279px){.dashboard-page .dash-card-header .card-outline-link,.dashboard-page .budget-overview-header .budget-overview-controls .card-outline-link,.dashboard-page .goal-momentum-executive .dash-card-header .card-outline-link,.dashboard-page .expenses-trend-chart-header .card-outline-link,.dashboard-page .income-expense-flow--dashboard-page .flow-filter-buttons>button.flow-filter-btn:not([data-mobile-dashboard-filter=keep]){display:none!important}}.flow-custom-range{align-items:center;gap:8px;display:flex}.flow-custom-range input[type=date]{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);padding:6px 10px;font-family:inherit;font-size:13px}.flow-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.flow-card+.flow-card{margin-top:8px}.flow-card-label{color:var(--text-secondary);font-size:14px;font-weight:500}.flow-card-value{font-size:22px;font-weight:700}.flow-card-bar{background:var(--border);border-radius:3px;flex:1;height:6px;margin:0 20px;overflow:hidden}.flow-card-bar-fill{border-radius:3px;height:100%;transition:width .4s}.flow-breakdown{grid-template-columns:1fr 1fr;gap:24px;margin-top:20px;display:grid}.flow-table-wrapper{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.flow-table-header{color:var(--text-primary);border-bottom:1px solid var(--border);background:var(--border-muted);padding:14px 20px;font-size:14px;font-weight:600}.flow-table{border-collapse:collapse;width:100%}.flow-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);padding:10px 20px;font-size:12px;font-weight:600}.flow-table td{color:var(--text-primary);border-bottom:1px solid var(--border-muted);padding:10px 20px;font-size:13px}.flow-table tr:last-child td{border-bottom:none}.flow-table-total td{border-top:2px solid var(--border);font-weight:600}.empty-state{text-align:center;border-radius:var(--radius-md);background:var(--border-muted);border:1px dashed var(--border);padding:48px 24px}.empty-state p:first-child{color:var(--text-primary);margin:0 0 8px;font-size:16px;font-weight:600}.empty-state p:last-of-type{color:var(--text-secondary);margin:0 0 20px;font-size:14px}.learning-card{background:linear-gradient(160deg,var(--surface)0%,var(--color-blue-muted)45%,var(--surface)100%);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.learning-card h3{color:var(--text-primary);margin:0 0 8px;font-size:15px;font-weight:600}.learning-card p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.onboarding-content{max-height:65vh;padding-right:4px;overflow-y:auto}.onboarding-section{margin-bottom:24px}.onboarding-section:last-of-type{margin-bottom:28px}.onboarding-heading{color:var(--color-blue);margin:0 0 8px;font-size:15px;font-weight:600}.onboarding-section p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.6}.onboarding-actions{border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:12px;padding-top:8px;display:flex}.onboarding-cta{border-radius:var(--radius-sm);background:var(--color-primary);width:100%;color:var(--text-inverse);cursor:pointer;border:none;padding:14px 20px;font-family:inherit;font-size:15px;font-weight:600;transition:background-color .15s}.onboarding-cta:hover{background:var(--color-primary-hover)}.onboarding-close-link{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:13px;text-decoration:underline}.onboarding-close-link:hover{color:var(--text-secondary)}.tools-public-wrap{background:var(--color-bg);min-height:100vh}.tools-public-header{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.tools-public-logo{color:var(--color-primary);font-size:18px;font-weight:600;text-decoration:none}.tools-public-logo:hover{color:var(--color-primary-hover)}.tools-public-back{color:var(--text-secondary);font-size:14px;text-decoration:none}.tools-public-back:hover{color:var(--text-primary)}.tools-public-main{max-width:1200px;margin:0 auto;padding:40px 24px 56px}.tools-hub-wrap{background:var(--background);flex-direction:column;min-height:100vh;display:flex}.tools-hub-header{z-index:10;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;justify-content:space-between;align-items:center;padding:18px 24px;display:flex;position:sticky;top:0}.tools-hub-logo{align-items:center;display:flex}.tools-hub-back{color:var(--text-secondary);font-size:14px;text-decoration:none}.tools-hub-back:hover{color:var(--text-primary)}.tools-hub-main{width:100%;max-width:1100px;margin:0 auto;padding:56px 24px 64px}.tools-hub-hero{margin-bottom:28px}.tools-hub-title{color:var(--text-primary);letter-spacing:-.02em;margin:0 0 10px;font-size:34px;font-weight:800;line-height:1.15}.tools-hub-subtitle{max-width:820px;color:var(--text-secondary);margin:0;font-size:15px;line-height:1.7}.tools-hub-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:24px;margin-bottom:34px;display:grid}@media (max-width:720px){.tools-hub-grid{grid-template-columns:1fr}}.tools-hub-seo{border-top:1px solid var(--border);padding-top:20px}.tools-hub-seo-title{color:var(--text-primary);margin:0 0 10px;font-size:18px;font-weight:800}.tools-hub-seo-paragraph{max-width:920px;color:var(--text-secondary);margin:0;font-size:14px;line-height:1.7}.tools-hub-cta{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);margin-top:22px;padding:18px}.tools-hub-cta-text{color:var(--text-secondary);margin:0 0 12px;font-size:14px}.tools-hub-cta-link{border-radius:var(--radius-sm);background:var(--color-primary);color:var(--text-inverse);padding:12px 18px;font-size:14px;font-weight:600;text-decoration:none;display:inline-block}.tools-hub-cta-link:hover{background:var(--color-primary-hover)}.tools-public-content{grid-template-columns:1.65fr 1fr 1fr;align-items:start;gap:48px 40px;display:grid}.tools-public-content-salary{grid-template-columns:minmax(320px,.8fr) minmax(480px,1.2fr);gap:48px 56px}.tools-right-col-salary,.tools-right-col-guide{order:2;min-width:0}.salary-calc-info-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:32px;position:sticky;top:96px;box-shadow:0 2px 16px #0000000f}.salary-guide-card-header{border-bottom:1px solid var(--border);margin-bottom:28px;padding-bottom:20px}.salary-guide-card-title{color:var(--text-primary);margin:0 0 8px;font-size:22px;font-weight:600;line-height:1.3}.salary-guide-card-badge{color:var(--text-muted);margin:0;font-size:13px;font-weight:500}.salary-guide-card-inner{grid-template-columns:1fr 1fr;gap:32px 40px;display:grid}.salary-guide-col{min-width:0}.salary-guide-section{margin-bottom:28px}.salary-guide-section:last-child{margin-bottom:0}.salary-guide-section-title{color:var(--text-primary);margin:0 0 12px;font-size:15px;font-weight:600}.salary-guide-list{color:var(--text-secondary);margin:0 0 12px;padding-left:20px;font-size:14px;line-height:1.55}.salary-guide-list li{margin-bottom:4px}.salary-guide-formula-box{color:var(--text-primary);background:var(--border-muted);border-radius:var(--radius-sm);border-left:3px solid var(--color-primary);margin-top:12px;padding:12px 14px;font-size:13px;font-weight:500}.salary-guide-note-box{color:var(--text-secondary);background:var(--border-muted);border:1px solid var(--border);border-radius:var(--radius-sm);margin-top:12px;padding:14px;font-size:13px;line-height:1.5}.salary-guide-note-box p{margin:0}.salary-guide-note-example{margin-top:10px!important}.salary-guide-links{margin:0;padding-left:0;list-style:none}.salary-guide-links li{margin-bottom:10px}.salary-calc-official-link{color:var(--color-primary);font-size:14px;text-decoration:none}.salary-calc-official-link:hover{text-decoration:underline}.salary-guide-disclaimer{border-top:1px solid var(--border);margin-top:28px;padding-top:24px}.salary-guide-disclaimer-text{color:var(--text-muted);margin:0;font-size:13px;line-height:1.55}.salary-guide-footer{border-top:1px solid var(--border);color:var(--text-muted);margin-top:20px;padding-top:16px;font-size:12px}.salary-calc-table-wrap{margin-top:12px;overflow-x:auto}.salary-calc-table{border-collapse:collapse;width:100%;font-size:13px}.salary-calc-table th,.salary-calc-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}.salary-calc-table th{color:var(--text-primary);background:var(--border-muted);font-weight:600}.salary-calc-table td{color:var(--text-secondary)}.salary-calc-table-compact th,.salary-calc-table-compact td{padding:8px 12px}@media (max-width:1279px){.tools-public-content,.tools-public-content-salary{grid-template-columns:1fr;gap:40px}.tools-public-calc{order:1}.tools-pricing-col-free{order:2}.tools-pricing-col-pro{order:3}.tools-right-col-salary,.tools-right-col-guide{order:2}.salary-calc-info-card{position:static}.salary-guide-card-inner{grid-template-columns:1fr}}.salary-tool-layout{grid-template-columns:minmax(320px,.8fr) minmax(480px,1.2fr);align-items:start;gap:48px 56px;display:grid}.salary-tool-calc-col{min-width:0}.salary-tool-guide-col{min-width:0;position:sticky;top:96px}@media (max-width:1279px){.salary-tool-layout{grid-template-columns:1fr;gap:40px}.salary-tool-guide-col{position:static}}.tools-public-calc{min-width:0}.tools-calc-column{flex-direction:column;gap:24px;display:flex}.tools-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0;font-size:13px;font-weight:700}.tools-section-title-calc{margin-bottom:4px}.tools-calc-column .tool-page{margin:0}.tools-calc-column .tool-page .dash-card{max-width:100%;box-shadow:0 8px 32px #00000014,0 2px 8px #0000000a}.tools-calc-column .tool-page .page-header{margin-bottom:20px}.tools-explore-label{color:var(--text-secondary);margin:8px 0 0;font-size:13px;font-weight:600}.tools-explore-chips{flex-wrap:wrap;gap:10px;display:flex}.tools-explore-chip{color:var(--color-primary);background:var(--color-blue-muted);border-radius:var(--radius-sm);border:1px solid #0038a833;padding:8px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s;display:inline-block}.tools-explore-chip:hover{border-color:var(--color-primary);background:#0038a814}.tools-cta-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);margin-top:8px;padding:24px}.tools-cta-text{color:var(--text-secondary);margin:0 0 16px;font-size:14px;line-height:1.5}.tools-cta-buttons{flex-wrap:wrap;gap:12px;display:flex}.tools-cta-primary{border-radius:var(--radius-sm);background:var(--color-primary);color:var(--text-inverse);padding:12px 20px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;transition:background-color .15s;display:inline-block}.tools-cta-primary:hover{background:var(--color-primary-hover)}.tools-cta-secondary{border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);padding:10px 20px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-block}.tools-cta-secondary:hover{background:var(--border-muted);color:var(--text-primary)}.tools-pricing-col{min-width:0;position:sticky;top:24px}.tools-pricing-heading{margin:0 0 var(--space-4);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:13px;font-weight:700}.tools-pricing-col-free .landing-plan-card{padding:var(--space-5);box-shadow:0 2px 12px #0000000d}.tools-pricing-col-free .landing-plan-card h3{margin:0 0 var(--space-3);font-size:18px}.tools-pricing-col-free .landing-plan-card li{padding:4px 0;font-size:13px;line-height:1.4}.tools-pricing-col-free .plan-section-title{margin:0 0 var(--space-2)}.tools-pricing-col-free .plan-section-tools{margin-top:var(--space-3)}.tools-pricing-col-pro .landing-plan-card{padding:var(--space-5);box-shadow:0 4px 20px #0038a81a}.tools-pricing-col-pro .landing-plan-card h3{margin:0 0 var(--space-3);font-size:18px}.tools-pricing-col-pro .landing-plan-card li{padding:4px 0;font-size:13px;line-height:1.4}.tools-pricing-col-pro .plan-section-title{margin:0 0 var(--space-2)}.tools-pricing-col-pro .plan-section-tools{margin-top:var(--space-3)}@media (max-width:1279px){.tools-pricing-col{position:static}.tools-pricing-col-free .landing-plan-card,.tools-pricing-col-pro .landing-plan-card{padding:var(--space-6);box-shadow:var(--shadow-sm)}.tools-pricing-col-free .landing-plan-card h3,.tools-pricing-col-pro .landing-plan-card h3{font-size:20px}.tools-pricing-col-free .landing-plan-card li,.tools-pricing-col-pro .landing-plan-card li{padding:6px 0;font-size:14px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-leading{syntax:"*";inherits:false}
