/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--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}::backdrop{--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}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-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]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.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}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.block{display:block}.hidden{display:none}.table{display:table}.resize{resize:both}.rounded{border-radius:.25rem}.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,)}}:root{--bg:#11101e;--bg-deep:#0c0b16;--panel:#1b1a2e;--panel-2:#23213a;--panel-3:#302d4c;--border:#37334f;--border-strong:#52486f;--text:#f5f3ff;--muted:#c3bed8;--muted-2:#a49dbd;--accent:#b394ff;--accent-soft:#a673ff24;--expense:#ff8395;--investment:#c088ff;--saving:#5ee4c2;--shortfall:#ff758b;--net:#64b7ff;--focus:#c4b1ff;--input:#131222;--accent-button:#8d4dea;--accent-end:#bd48df;--chart-1:#ff8596;--chart-2:#67b7ff;--chart-3:#5ee4c2;--chart-4:#ffc975;--chart-5:#b89bff;--chart-6:#ee92d6;--motion-duration:.38s;--shadow:0 18px 50px #0003}*{box-sizing:border-box}html{background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-width:320px;margin:0;font-family:Inter,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.account-gate{place-items:center;min-height:100vh;padding:24px;display:grid}.account-card{width:min(100%,560px);padding:clamp(24px,5vw,44px)!important}.account-card h1{margin:12px 0 20px;font-size:clamp(26px,5vw,36px);line-height:1.2}.account-card p{color:var(--muted);font-size:16px;line-height:1.65}.account-card .account-note{margin:22px 0 0;font-size:14px}a.primary-button{justify-content:center;align-items:center;min-height:44px;font-size:16px;text-decoration:none;display:inline-flex}.account-toolbar{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;margin:-10px 0 24px;font-size:14px;display:flex}.account-toolbar>span{overflow-wrap:anywhere}.account-toolbar a{color:var(--accent);padding:6px 0}.mobile-save-status{display:none}.sync-message{border:1px solid var(--shortfall);background:var(--panel);border-radius:14px;margin-bottom:20px;padding:20px}.sync-message p{margin:0 0 14px;font-size:16px;line-height:1.5}.sync-message>button{margin-top:12px}.sync-message button{min-height:44px;font-size:14px}.recovery-message{border-color:var(--accent)}@media (max-width:900px){.mobile-save-status{display:inline}.account-toolbar{justify-content:flex-start}}button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}textarea:focus-visible{outline:3px solid var(--focus);outline-offset:2px}summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}::selection{background:#49b8e84d}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.live-region{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:fixed;overflow:hidden}.app-shell{min-height:100vh}.sidebar{background:var(--bg-deep);border-right:1px solid var(--border);z-index:20;flex-direction:column;width:246px;padding:28px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand-block{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:0 8px 28px;display:flex}.brand-mark{background:radial-gradient(circle at 28% 20%,#6ed9ff33,#0000 45%),linear-gradient(145deg,#193f60,#0b2135);border:1px solid #356586;border-radius:15px;flex:none;width:48px;height:48px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff14,0 10px 26px #0000003d}.brand-mark:after{content:"";filter:blur(1px);background:#35c69a1a;border-radius:50%;width:34px;height:34px;position:absolute;inset:auto -9px -13px auto}.brand-cap-arc{z-index:2;filter:drop-shadow(0 0 6px #49b8e857);border:2px solid #8be3ff;border-bottom:0;border-radius:22px 22px 0 0;width:27px;height:15px;position:absolute;top:9px;left:10px;transform:rotate(-5deg)}.brand-cap-arc:after{content:"";background:#61dfb8;border-radius:50%;width:5px;height:5px;position:absolute;top:-3px;right:-4px;box-shadow:0 0 0 3px #35c69a1f}.brand-cap-bars{z-index:2;border-bottom:1px solid #8be3ff61;align-items:flex-end;gap:3px;height:14px;padding:0 3px;display:flex;position:absolute;bottom:9px;left:11px;right:10px}.brand-cap-bars i{background:linear-gradient(#72d5f9,#3189b8);border-radius:2px 2px 0 0;flex:1;min-width:0}.brand-cap-bars i:first-child{opacity:.62;height:5px}.brand-cap-bars i:nth-child(2){opacity:.82;height:8px}.brand-cap-bars i:nth-child(3){background:linear-gradient(#67dfba,#2ba77f);height:12px}.brand-copy{min-width:0}.brand-copy strong{letter-spacing:-.01em;font-size:14px;display:block}.brand-copy span{color:var(--muted-2);margin-top:3px;font-size:11px;display:block}.sidebar nav{gap:6px;margin-top:28px;display:grid}.nav-button{width:100%;min-height:44px;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;padding:0 13px;font-size:13px;transition:background .15s,color .15s;display:flex}.nav-button:hover{color:var(--text);background:#ffffff09}.nav-button.active{color:var(--text);background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent)}.nav-icon{color:#6e8eaa;background:#ffffff06;border:1px solid #0000;border-radius:8px;flex:none;width:26px;height:26px;transition:color .15s,border-color .15s,background .15s,transform .15s;position:relative}.nav-button:hover .nav-icon{color:#9bc6df;transform:translateY(-1px)}.nav-button.active .nav-icon{color:var(--accent);background:#49b8e81a;border-color:#49b8e83b;box-shadow:0 5px 14px #00000024}.nav-icon>span{display:block;position:absolute}.nav-icon.dashboard>span:first-child{background:currentColor;border-radius:1.5px;width:5px;height:5px;top:6px;left:6px;box-shadow:8px 0,0 8px,8px 8px}.nav-icon.dashboard>span:not(:first-child){display:none}.nav-icon.payroll-setup>span:first-child{border:1.5px solid;border-radius:4px;inset:5px 3px 4px}.nav-icon.payroll-setup>span:nth-child(2){background:var(--bg-deep);border:1.5px solid;border-radius:3px;width:8px;height:6px;top:9px;right:2px}.nav-icon.payroll-setup>span:nth-child(3){background:currentColor;border-radius:50%;width:2px;height:2px;top:11px;right:5px}.nav-icon.expenses>span:first-child{border:1.5px solid;border-radius:3px;inset:4px 6px}.nav-icon.expenses>span:nth-child(2),.nav-icon.expenses>span:nth-child(3){background:currentColor;border-radius:99px;width:8px;height:1.5px;left:9px}.nav-icon.expenses>span:nth-child(2){top:10px}.nav-icon.expenses>span:nth-child(3){width:6px;top:15px}.nav-icon.investments>span{background:currentColor;border-radius:2px 2px 1px 1px;width:4px;bottom:5px}.nav-icon.investments>span:first-child{opacity:.6;height:6px;left:5px}.nav-icon.investments>span:nth-child(2){opacity:.8;height:10px;left:11px}.nav-icon.investments>span:nth-child(3){height:15px;left:17px}.nav-icon.settings>span{background:currentColor;border-radius:99px;width:16px;height:1.5px;left:5px}.nav-icon.settings>span:first-child{top:7px}.nav-icon.settings>span:nth-child(2){top:12px}.nav-icon.settings>span:nth-child(3){top:17px}.nav-icon.settings>span:after{content:"";background:var(--bg-deep);border:1.5px solid;border-radius:50%;width:5px;height:5px;position:absolute;top:-2px}.nav-icon.settings>span:first-child:after,.nav-icon.settings>span:nth-child(3):after{left:3px}.nav-icon.settings>span:nth-child(2):after{right:3px}.privacy-chip{color:var(--muted);background:var(--panel);border:1px solid var(--border);border-radius:11px;align-items:center;gap:8px;margin-top:auto;padding:12px 13px;font-size:14px;display:flex}.status-dot{background:var(--saving);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #35c69a1a}.main-content{min-height:100vh;margin-left:246px;padding:28px clamp(24px,4vw,64px) 40px}.topbar{justify-content:space-between;align-items:center;gap:24px;max-width:1500px;margin:0 auto 28px;display:flex}.topbar h1{letter-spacing:-.035em;margin:3px 0 0;font-size:28px;line-height:1.1}.eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:10px;font-weight:750}.topbar-actions{align-items:center;gap:12px;display:flex}.plan-pill{border:1px solid var(--border-strong);background:var(--panel);min-height:34px;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.plan-pill.plan-fits{color:#8de5c7;background:#35c69a14;border-color:#35c69a59}.plan-pill.shortfall{color:#f0a3ac;background:#db6b7814;border-color:#db6b785c}.period-picker{border:1px solid var(--border);background:var(--panel);border-radius:11px;max-width:min(540px,60vw);padding:3px;display:inline-flex;overflow-x:auto}.period-picker button{min-height:28px;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:0 9px;font-size:10px}.period-picker button.active{background:var(--panel-3);color:var(--text);box-shadow:0 1px 6px #0003}.period-picker.expanded{max-width:100%;padding:4px}.period-picker.expanded button{min-height:34px;padding:0 12px}.first-run{border:1px solid var(--border);max-width:1160px;min-height:610px;box-shadow:var(--shadow);background:radial-gradient(circle at 15% 15%,#49b8e81a,#0000 38%),linear-gradient(145deg,#0e1b2c,#091421);border-radius:24px;grid-template-columns:minmax(0,1.1fr) minmax(310px,.9fr);align-items:center;gap:clamp(36px,7vw,90px);margin:20px auto 0;padding:clamp(30px,6vw,76px);display:grid}.first-run h2{letter-spacing:-.055em;max-width:620px;margin:10px 0 16px;font-size:clamp(38px,5vw,64px);line-height:.98}.first-run-copy>p:not(.eyebrow){max-width:560px;color:var(--muted);font-size:15px;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.primary-button,.secondary-button,.danger-button{border:1px solid #0000;border-radius:11px;min-height:42px;padding:0 16px;font-size:12px;font-weight:750;transition:transform .12s,background .12s}.primary-button{background:var(--accent);color:#04111b;border-color:#62caef}.secondary-button{color:var(--text);background:var(--panel-2);border-color:var(--border-strong)}.secondary-button:hover{background:var(--panel-3)}.danger-button{color:#f5b4bc;background:#db6b7814;border-color:#db6b7859}.setup-checklist{gap:12px;margin:0;padding:0;list-style:none;display:grid}.setup-checklist li{border:1px solid var(--border);background:#07111f7a;border-radius:14px;gap:14px;padding:15px;display:flex}.setup-checklist li>span{background:var(--panel-3);width:30px;height:30px;color:var(--accent);border-radius:9px;flex:none;place-items:center;font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,monospace;font-size:10px;font-weight:800;display:grid}.setup-checklist li.done>span{color:var(--saving)}.setup-checklist strong{font-size:13px;display:block}.setup-checklist p{color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.45}.validation-summary,.missing-note{color:#efb3bb;background:#db6b7814;border:1px solid #db6b7840;border-radius:12px;grid-column:1/-1;margin:0;padding:14px 16px;font-size:12px}.validation-summary ul{margin:8px 0 0 18px;padding:0;line-height:1.6}.dashboard-stack,.setup-layout,.entries-section,.settings-grid{max-width:1500px;margin:0 auto}.dashboard-stack{gap:20px;display:grid}.dashboard-stack>*{min-width:0;margin-block:0}.dashboard-intro{border:1px solid var(--border);background:linear-gradient(135deg,#49b8e817,#0d1929e6 45%);border-radius:18px;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:16px;padding:26px 28px;display:flex}.dashboard-intro h2,.section-heading h2,.entries-hero h2,.section-card h2{letter-spacing:-.04em;margin:6px 0 7px;font-size:clamp(22px,2.5vw,32px)}.dashboard-intro p:last-child,.entries-hero p:last-child,.portability-card>p{color:var(--muted);margin:0;font-size:12px}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.kpi-card{border:1px solid var(--border);background:var(--panel);border-radius:16px;flex-direction:column;justify-content:space-between;min-height:140px;padding:18px;display:flex;box-shadow:0 10px 28px #0000001a}.kpi-card.blue{background:linear-gradient(145deg, #49b8e81a, var(--panel));border-color:#49b8e866}.kpi-card.green{border-color:#35c69a59}.kpi-card.red{border-color:#db6b7866}.metric-label{color:var(--muted);align-items:center;gap:6px;font-size:11px;line-height:1.4;display:flex}.kpi-card>strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:clamp(23px,2.2vw,32px)}.kpi-card>span{color:var(--muted-2);font-size:10px}.info-tip{border:1px solid var(--border-strong);width:16px;height:16px;color:var(--muted);cursor:help;border-radius:50%;flex:none;place-items:center;font-size:9px;display:inline-grid;position:relative}.info-tip [role=tooltip]{z-index:50;border:1px solid var(--border-strong);width:230px;color:var(--text);box-shadow:var(--shadow);background:#13243a;border-radius:10px;padding:10px 12px;font-size:11px;line-height:1.5;display:none;position:absolute;top:24px;left:50%;transform:translate(-50%)}.info-tip:hover [role=tooltip],.info-tip:focus [role=tooltip]{display:block}.cash-cards{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.small-metric{border:1px solid var(--border);background:#0d1929b8;border-radius:12px;padding:13px 15px}.small-metric span{color:var(--muted);font-size:10px;display:block}.small-metric strong{letter-spacing:-.025em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:17px;display:block}.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.chart-card{border:1px solid var(--border);background:var(--panel);border-radius:16px;min-height:290px;padding:20px;overflow:hidden}.chart-header h3{margin:0;font-size:14px}.chart-header span{color:var(--muted-2);margin-top:4px;font-size:10px;display:block}.allocation-body{flex-shrink:0;width:100%;margin:auto 0;position:relative}.allocation-pie{border-radius:50%;position:absolute}.allocation-leaders{pointer-events:none;position:absolute;inset:0;overflow:visible}.allocation-leaders polyline{fill:none;stroke:var(--text);stroke-width:1.5px}.allocation-label{text-align:center;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;flex-direction:column;align-items:center;width:max-content;max-width:100%;font-size:14px;line-height:20px;display:flex;position:absolute}.allocation-label.inside{color:#07111f}.allocation-label.outside{color:var(--text)}.allocation-measure{visibility:hidden;pointer-events:none;width:100%;position:absolute}.allocation-measure .allocation-label{position:relative}.allocation-note{color:var(--text);margin:14px 0 0;font-size:14px;line-height:1.5}.allocation-empty{text-align:center;place-items:center;font-size:14px;display:grid;position:absolute;inset:0}.allocation-chart{flex-direction:column;display:flex}.legend-dot.expense{background:var(--expense)}.legend-dot.investment{background:var(--investment)}.legend-dot.saving{background:var(--saving)}.legend-list{gap:10px;margin-top:20px;display:grid}.legend-row{grid-template-columns:9px minmax(100px,1fr) auto 54px;align-items:center;gap:8px;font-size:11px;display:grid}.legend-dot{border-radius:50%;width:8px;height:8px}.legend-row>span:nth-child(2){color:var(--muted)}.legend-row strong{font-variant-numeric:tabular-nums}.legend-row small{color:var(--muted-2);text-align:right}.shortfall-block,.inline-warning,.double-count-warning{color:#efadb5;background:#db6b7814;border:1px solid #db6b784d;border-radius:10px;margin-top:16px;padding:11px 13px;font-size:11px;line-height:1.5}.bar-list{gap:15px;display:grid}.bar-row>div:first-child,.coverage-row>div:first-child,.earnings-row>div:first-child{justify-content:space-between;align-items:center;gap:16px;margin-bottom:6px;font-size:11px;display:flex}.bar-row span,.coverage-row span,.earnings-row span{color:var(--muted)}.bar-track,.coverage-track,.earnings-track{background:var(--panel-3);border-radius:999px;height:7px;overflow:hidden}.bar-track span,.earnings-track span{border-radius:inherit;background:linear-gradient(90deg, #2e6fae, var(--expense));height:100%;display:block}.chart-empty{min-height:180px;color:var(--muted-2);text-align:center;border:1px dashed var(--border);border-radius:12px;place-items:center;font-size:12px;display:grid}.margin-callout{border-radius:10px;justify-content:space-between;gap:18px;margin-top:26px;padding:13px 15px;font-size:11px;display:flex}.margin-callout.positive{color:#9ce5cd;background:#35c69a14;border:1px solid #35c69a38}.margin-callout.negative{color:#f0a8b0;background:#db6b7814;border:1px solid #db6b7838}.expense-groups-chart .bar-row>div:first-child{align-items:start;font-size:.875rem}.allocation-chart .chart-header h3,.expense-groups-chart .chart-header h3,.hourly-coverage-chart .chart-header h3,.cash-flow-chart .chart-header h3{font-size:1.125rem}.allocation-chart .chart-header span,.expense-groups-chart .chart-header span,.hourly-coverage-chart .chart-header span,.cash-flow-chart .chart-header span{color:var(--muted);font-size:.875rem}.expense-groups-chart .bar-row strong{text-align:right;font-variant-numeric:tabular-nums}.expense-groups-chart .bar-row small{color:var(--muted);margin-top:3px;font-size:.875rem;font-weight:400;display:block}.expense-groups-chart .bar-track{height:10px}.expense-groups-chart .bar-list{gap:20px}.coverage-total,.hourly-legend>div{justify-content:space-between;align-items:start;gap:12px;font-size:.875rem;display:flex}.coverage-total{margin-bottom:14px}.coverage-total span,.hourly-legend>div>span{color:var(--muted)}.coverage-total strong,.hourly-legend strong{text-align:right;font-variant-numeric:tabular-nums}.hourly-allocation{background:var(--panel-3);border-radius:5px;height:26px;display:flex;position:relative}.hourly-allocation>span{flex:none;height:100%;display:block}.hourly-allocation .expense,.waterfall-bar.expense{background:var(--expense)}.hourly-allocation .investment,.waterfall-bar.investment{background:var(--investment)}.hourly-allocation .shortfall,.waterfall-bar.shortfall{background:var(--shortfall)}.income-boundary{z-index:1;background:var(--text);width:2px;position:absolute;top:-5px;bottom:-5px;transform:translate(-1px)}.coverage-overflow-note{color:#f0a8b0;margin:14px 0 0;font-size:.875rem;line-height:1.5}.hourly-legend{gap:12px;margin-top:22px;display:grid}.hourly-legend>div>span{align-items:baseline;gap:8px;display:flex}.hourly-legend .legend-dot{flex-shrink:0}.legend-dot.shortfall{background:var(--shortfall)}.hourly-coverage-chart .margin-callout{flex-wrap:wrap;margin-top:22px;font-size:.875rem}.margin-callout small{margin-top:4px;font-size:.875rem;display:block}.waterfall{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;height:190px;margin:10px 0 18px;display:grid;position:relative}.waterfall-baseline{background:var(--muted-2);height:1px;position:absolute;inset-inline:0}.waterfall-column{min-width:0;height:100%;position:relative}.waterfall-bar{background:var(--accent);border-radius:4px 4px 0 0;position:absolute;inset-inline:0}.waterfall-bar.shortfall{border-radius:0 0 4px 4px}.waterfall-index{display:none}.waterfall-labels{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.waterfall-labels>div{flex-direction:column;justify-content:space-between;gap:8px;min-width:0;display:flex}.waterfall-labels span{color:var(--muted);overflow-wrap:anywhere;font-size:.875rem;line-height:1.5}.waterfall-labels strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:.875rem}.waterfall-labels .legend-dot{margin-right:6px;display:inline-block}.waterfall-label-index{display:none}@container chart (width<=430px){.waterfall{gap:12px;margin-bottom:38px}.waterfall-index{text-align:center;width:100%;color:var(--muted);font-size:.875rem;display:block;position:absolute;top:calc(100% + 8px)}.waterfall-labels{grid-template-columns:1fr;gap:12px}.waterfall-labels>div{flex-direction:row;align-items:baseline}.waterfall-labels strong{text-align:right;flex-shrink:0}.waterfall-label-index{font-weight:400;display:inline}}.cash-flow-chart{container:chart/inline-size}.payroll-insights{border:1px solid var(--border);background:var(--panel);border-radius:16px;margin-top:12px;overflow:hidden}.payroll-insights summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:64px;padding:0 20px;list-style:none;display:flex}.payroll-insights summary::-webkit-details-marker{display:none}.payroll-insights summary span:first-child{flex-direction:column;gap:4px;display:flex}.payroll-insights summary small{color:var(--muted-2);font-size:10px}.payroll-insights[open] summary>span:last-child{transform:rotate(45deg)}.insights-body{border-top:1px solid var(--border);grid-template-columns:1.2fr .8fr;gap:32px;padding:20px;display:grid}.insight-metrics{background:var(--border);border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.insight-metrics>div{background:var(--panel-2);justify-content:space-between;gap:12px;padding:11px 13px;font-size:10px;display:flex}.insight-metrics span{color:var(--muted)}.deduction-breakdown h3{margin:0 0 8px;font-size:13px}.deduction-breakdown{align-content:start;display:grid}.deduction-breakdown p{color:var(--muted-2);margin:14px 0 0;font-size:9px;line-height:1.55}.setup-layout{grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr);align-items:start;gap:14px;display:grid}.setup-side{gap:14px;display:grid;position:sticky;top:20px}.section-card{border:1px solid var(--border);background:var(--panel);border-radius:18px;padding:clamp(20px,3vw,30px)}.section-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px;display:flex}.payroll-guidance{color:var(--muted);background:#49b8e80d;border:1px solid #49b8e833;border-radius:11px;margin:-8px 0 22px;padding:12px 14px;font-size:10px;line-height:1.55}.readiness{color:#edaeb6;background:#db6b7814;border:1px solid #db6b7840;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:750}.readiness.ready{color:#94e7ca;background:#35c69a14;border-color:#35c69a40}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.field{min-width:0}.field label{color:#dce6f0;margin-bottom:7px;font-size:11px;font-weight:680;display:block}.field label span{color:var(--muted-2);font-weight:450}.field input,.field select,.field textarea,.search-field input{border:1px solid var(--border-strong);width:100%;min-height:44px;color:var(--text);background:#0a1524;border-radius:10px;padding:0 12px;font-size:13px;transition:border-color .12s,box-shadow .12s}.field textarea{resize:vertical;padding-top:11px}.field small{color:var(--muted-2);margin-top:6px;font-size:9px;line-height:1.45;display:block}.field-error{color:#f0a7b0;margin-top:6px;font-size:10px;line-height:1.4;display:block}.has-error input{border-color:var(--shortfall);box-shadow:0 0 0 3px #db6b7814}.compact-settings{gap:16px;display:grid}.setup-summary .eyebrow{margin-bottom:8px}.summary-line{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:20px;padding:11px 0;font-size:11px;display:flex}.summary-line:last-child{border:0}.summary-line span{color:var(--muted)}.summary-line strong{text-align:right;font-variant-numeric:tabular-nums}.entries-hero{border:1px solid var(--border);background:linear-gradient(145deg, var(--panel), #0b1727);border-radius:18px;justify-content:space-between;align-items:flex-end;gap:24px;padding:28px;display:flex}.entry-total{text-align:right;min-width:180px}.entry-total span,.entry-total small{color:var(--muted-2);font-size:10px;display:block}.entry-total strong{letter-spacing:-.04em;margin:3px 0;font-size:27px;display:block}.inline-note{border:1px solid var(--border);color:var(--muted);background:#49b8e80d;border-radius:10px;margin:12px 0;padding:11px 13px;font-size:10px;line-height:1.5}.entry-toolbar{border:1px solid var(--border);background:var(--panel);border-radius:14px;grid-template-columns:minmax(180px,1fr) 180px 150px auto;align-items:end;gap:10px;margin:14px 0;padding:14px;display:grid}.search-field label{color:var(--muted);margin-bottom:5px;font-size:9px;font-weight:700;display:block}.entry-toolbar .field label{color:var(--muted);margin-bottom:5px;font-size:9px}.entry-toolbar .field select,.search-field input,.add-button{min-height:39px}.entries-empty{text-align:center;border:1px dashed var(--border-strong);background:#0d192973;border-radius:18px;align-content:center;place-items:center;min-height:330px;padding:36px;display:grid}.entries-empty>span{background:var(--accent-soft);width:48px;height:48px;color:var(--accent);border-radius:15px;place-items:center;font-size:22px;display:grid}.entries-empty h3{margin:15px 0 5px;font-size:17px}.entries-empty p{color:var(--muted);margin:0 0 16px;font-size:11px}.entry-list{gap:9px;display:grid}.entry-card{border:1px solid var(--border);background:var(--panel);border-radius:15px;overflow:hidden}.entry-card.excluded{opacity:.62}.entry-main{grid-template-columns:auto minmax(180px,1fr) auto auto;align-items:center;gap:14px;min-height:82px;padding:14px 16px;display:grid}.switch{border:1px solid var(--border-strong);background:var(--panel-3);border-radius:999px;width:38px;height:22px;padding:2px}.switch span{background:var(--muted);border-radius:50%;width:16px;height:16px;transition:transform .15s,background .15s;display:block}.entry-title{align-items:center;gap:10px;min-width:0;display:flex}.entry-title h3{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:13px;overflow:hidden}.entry-title span:not(.warning-badge){color:var(--muted);margin-top:4px;font-size:10px;display:block}.warning-badge{color:#f2c777;white-space:nowrap;background:#d7a84d1a;border:1px solid #d7a84d40;border-radius:7px;padding:5px 7px;font-size:8px;font-weight:750}.entry-amount{text-align:right;min-width:112px}.entry-amount strong{font-size:16px;display:block}.entry-amount span{color:var(--muted-2);font-size:9px}.entry-actions{gap:4px;display:flex}.entry-actions button{min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:0 8px;font-size:9px}.entry-actions button:hover{background:var(--panel-3);color:var(--text)}.entry-card>.double-count-warning{margin:0 16px 12px 68px}.equivalents{border-top:1px solid var(--border)}.equivalents summary{color:var(--muted);cursor:pointer;padding:10px 16px;font-size:9px}.equivalents>div{background:var(--border);border-top:1px solid var(--border);grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;display:grid}.equivalents small{color:var(--muted-2);font-size:8px;display:block}.equivalents strong{margin-top:4px;font-size:10px;display:block}.equivalents>p{color:var(--muted);margin:0;padding:11px 16px;font-size:10px;line-height:1.5}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#01070dc7;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.entry-modal{border:1px solid var(--border-strong);background:var(--panel);border-radius:20px;width:min(620px,100%);max-height:calc(100vh - 36px);overflow-y:auto;box-shadow:0 30px 90px #00000080}.entry-modal header{z-index:2;background:var(--panel);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 22px 14px;display:flex;position:sticky;top:0}.entry-modal header h2{margin:4px 0 0;font-size:23px}.modal-close{border:1px solid var(--border);background:var(--panel-2);width:38px;height:38px;color:var(--muted);border-radius:10px;font-size:20px}.entry-modal form{gap:17px;padding:20px 22px 24px;display:grid}.modal-two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.custom-row{border-top:1px solid var(--border);grid-template-columns:1fr auto;align-items:end;gap:10px;padding-top:4px;display:grid}.checkbox-row{color:var(--muted);align-items:center;gap:9px;font-size:11px;display:flex}.checkbox-row input{width:17px;height:17px;accent-color:var(--saving)}.modal-actions{justify-content:flex-end;gap:8px;padding-top:6px;display:flex}.undo-toast{z-index:120;border:1px solid var(--border-strong);min-width:280px;box-shadow:var(--shadow);background:#17283f;border-radius:12px;align-items:center;gap:12px;padding:12px 13px 12px 15px;font-size:11px;display:flex;position:fixed;bottom:24px;right:24px}.undo-toast span{flex:1}.undo-toast button{color:var(--accent);background:0 0;border:0;font-size:11px;font-weight:800}.undo-toast .toast-close{color:var(--muted);font-size:18px}.settings-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:14px;display:grid}.portability-card{position:sticky;top:20px}.data-stats{border-top:1px solid var(--border);margin:20px 0}.portability-actions{flex-wrap:wrap;gap:8px;display:flex}footer{border-top:1px solid var(--border);max-width:1500px;color:var(--muted-2);margin:28px auto 0;padding:18px 0 0;font-size:9px;line-height:1.6}.mobile-nav{display:none}@media (max-width:1180px){.sidebar{width:210px;padding-inline:14px}.main-content{margin-left:210px;padding-inline:24px}.kpi-grid,.cash-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.setup-layout{grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr)}.entry-toolbar{grid-template-columns:minmax(180px,1fr) 160px 130px}.entry-toolbar .add-button{grid-column:1/-1}}@media (max-width:900px){.sidebar{display:none}.main-content{margin-left:0;padding:20px 18px 96px}.mobile-nav{z-index:80;border:1px solid var(--border-strong);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow);background:#08121ff0;border-radius:15px;grid-template-columns:repeat(5,1fr);padding:5px;display:grid;position:fixed;bottom:10px;left:10px;right:10px}.mobile-nav button{min-width:0;min-height:52px;color:var(--muted);text-overflow:ellipsis;background:0 0;border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:5px 2px;font-size:8px;display:flex;overflow:hidden}.mobile-nav .nav-icon{width:25px;height:25px;color:var(--muted-2);transform:scale(.88)}.mobile-nav button.active{color:var(--text);background:var(--accent-soft)}.mobile-nav button.active .nav-icon{color:var(--accent);background:#49b8e81a;border-color:#49b8e838}.first-run{grid-template-columns:1fr;min-height:0}.setup-layout,.settings-grid{grid-template-columns:1fr}.setup-side,.portability-card{position:static}.chart-grid,.insights-body{grid-template-columns:1fr}.entry-main{grid-template-columns:auto minmax(0,1fr) auto}.entry-actions{grid-column:2/-1;justify-content:flex-end}}@media (max-width:680px){.topbar{align-items:flex-start}.topbar-actions .period-picker{display:none}.topbar h1{font-size:24px}.dashboard-intro{flex-direction:column;align-items:flex-start;padding:20px}.period-picker.expanded{width:100%}.period-picker.expanded button{flex:1;padding-inline:7px;font-size:9px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-card{min-height:126px;padding:15px}.cash-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}.entry-toolbar{grid-template-columns:1fr 1fr}.search-field,.entry-toolbar .add-button{grid-column:1/-1}.entries-hero{flex-direction:column;align-items:flex-start;padding:21px}.entry-total{text-align:left}.entry-main{grid-template-columns:auto minmax(0,1fr);align-items:start}.entry-amount{text-align:left;grid-column:2}.entry-actions{border-top:1px solid var(--border);grid-column:1/-1;justify-content:stretch;padding-top:8px}.entry-actions button{background:var(--panel-2);flex:1}.entry-card>.double-count-warning{margin-left:16px}.equivalents>div{grid-template-columns:repeat(2,minmax(0,1fr))}.equivalents>div>span:last-child{grid-column:1/-1}.legend-row{grid-template-columns:9px minmax(80px,1fr) auto}.legend-row small{text-align:left;grid-column:2/-1}.insight-metrics,.modal-two-col,.custom-row{grid-template-columns:1fr}.modal-actions{grid-template-columns:1fr;display:grid}.undo-toast{min-width:0;bottom:78px;left:14px;right:14px}}@media (max-width:420px){.main-content{padding-inline:12px}.first-run{border-radius:18px;padding:25px 19px}.first-run h2{font-size:36px}.hero-actions{display:grid}.kpi-grid,.cash-cards{grid-template-columns:1fr}.kpi-card{min-height:112px}.period-picker.expanded button{font-size:8px}.entry-toolbar{grid-template-columns:1fr}.search-field,.entry-toolbar .add-button{grid-column:auto}.section-card,.chart-card{padding:17px}.mobile-nav{bottom:5px;left:5px;right:5px}.mobile-nav button{font-size:7px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.nav-icon.allowance svg{width:18px;height:18px;margin:3px}.weekly-spending-page{max-width:1500px;margin-inline:auto}.weekly-spending-page p{color:var(--muted);font-size:16px;line-height:1.55}.weekly-spending-page h2{margin:0;font-size:22px;line-height:1.3}.weekly-spending-page button{min-height:44px;font-size:14px}.weekly-spending-page .field label{font-size:14px}.weekly-spending-page .field input{min-height:44px;font-size:16px}.weekly-spending-page .field-error{font-size:14px}.spending-week-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.spending-week-bar p{margin:8px 0 0}.spending-week-controls{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.spending-week-controls .field{width:174px;margin:0}.spending-week-controls .field label{margin-bottom:6px}.spending-setup{margin-bottom:20px}.spending-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.spending-stat{background:var(--panel);border:1px solid var(--border);border-radius:16px;min-width:0;padding:24px}.spending-stat>span{color:var(--muted);margin-bottom:16px;font-size:14px;display:block}.spending-stat>strong,.spending-stat>output{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:clamp(28px,3vw,40px);font-weight:750;line-height:1.2;display:block}.spending-stat p{margin:12px 0 0;font-size:14px}.spending-remaining.within-budget{background:linear-gradient(135deg, #35c69a1a, var(--panel));border-color:#35c69a73}.spending-remaining.within-budget>output{color:#8de5c7}.spending-remaining.over-budget{border-color:var(--shortfall);background:linear-gradient(135deg, #db6b781f, var(--panel))}.spending-remaining.over-budget>output{color:#f5adb8}.spending-budget-detail{grid-column:1/-1}.spending-budget-detail p{margin:10px 0 0;font-size:14px}.spending-progress{background:var(--panel-3);border-radius:999px;height:12px;overflow:hidden}.spending-progress>span{border-radius:inherit;background:var(--accent);height:100%;transition:width .18s;display:block}.spending-progress.over-budget>span{background:var(--shortfall)}.spending-workspace{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);align-items:start;gap:20px;display:grid}.purchase-form-card>p{margin:10px 0 24px}.purchase-form-card form{gap:20px;display:grid}.purchase-fields{grid-template-columns:1fr 1fr;gap:14px;display:grid}.purchase-preview{color:#9de7ce;background:#35c69a0f;border:1px solid #35c69a47;border-radius:12px;padding:18px}.purchase-preview>span{font-size:16px;line-height:1.5;display:block}.purchase-preview>strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:8px 0;font-size:28px;display:block}.purchase-preview>small{font-size:14px;line-height:1.5;display:block}.purchase-preview.over-budget{color:#f5b4bc;background:#db6b7814;border-color:#db6b7880}.purchase-preview p{margin:0;font-size:14px}.purchase-form-actions{flex-wrap:wrap;gap:8px;display:flex}.purchase-list-card>header{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:12px;padding-bottom:20px;display:flex}.purchase-list-card>header p{margin:8px 0 0;font-size:14px}.purchase-list-card>header>strong{font-variant-numeric:tabular-nums;font-size:22px}.purchase-list{margin:0;padding:0;list-style:none}.purchase-list>li{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:20px 0;display:grid}.purchase-list-copy{min-width:0}.purchase-list-copy>strong{overflow-wrap:anywhere;font-size:16px;display:block}.purchase-list-copy>span{color:var(--muted);margin-top:7px;font-size:14px;display:block}.purchase-list-price{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:18px}.purchase-row-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.purchase-empty{border:1px dashed var(--border-strong);border-radius:12px;padding:28px 20px}.purchase-empty h3{margin:0 0 10px;font-size:18px}.purchase-empty p{margin:0}@media (max-width:1100px){.spending-workspace{grid-template-columns:1fr}}@media (max-width:900px){.mobile-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;display:grid}.mobile-nav button{white-space:nowrap;min-height:52px;padding:4px 2px;font-size:14px;line-height:1.2;overflow:visible}.main-content{padding-bottom:150px}.undo-toast{bottom:140px}}@media (max-width:680px){.spending-summary{grid-template-columns:1fr}.spending-stat{padding:20px}.spending-stat>span{margin-bottom:10px}.spending-workspace{gap:16px}.spending-week-controls{width:100%}.spending-week-controls button{flex:auto}.spending-week-controls .field{flex:150px}}@media (max-width:420px){.purchase-fields{grid-template-columns:1fr}.purchase-row-actions>button{flex:1}}@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}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f4fc;--bg-deep:#fdfcff;--panel:#fff;--panel-2:#f3effa;--panel-3:#e8e1f3;--border:#e1d9ee;--border-strong:#c7b6df;--text:#211936;--muted:#5f5279;--muted-2:#746888;--input:#fdfcff;--accent:#7139bc;--accent-soft:#884de919;--focus:#7139bc;--expense:#bb344f;--investment:#843bbf;--saving:#087e64;--shortfall:#bd2945;--net:#176eaf;--chart-1:#d74665;--chart-2:#247fc9;--chart-3:#098c74;--chart-4:#b8770b;--chart-5:#834fc6;--chart-6:#b53f95;--shadow:0 18px 50px #51427612}:root[data-accent=pink]{--accent:#ef9cd7;--accent-soft:#e775c624;--accent-button:#a52782;--accent-end:#c439a0;--focus:#f3a4dc}:root[data-accent=blue]{--accent:#7ec1ff;--accent-soft:#549ce824;--accent-button:#1765b9;--accent-end:#4979dd;--focus:#8dcbff}:root[data-accent=mint]{--accent:#66e6ce;--accent-soft:#38c6aa24;--accent-button:#067760;--accent-end:#14847c;--focus:#8beedb}:root[data-accent=peach]{--accent:#ffb891;--accent-soft:#e89e7c24;--accent-button:#ab4724;--accent-end:#bc5967;--focus:#ffc6a8}:root[data-accent=amber]{--accent:#ffd17f;--accent-soft:#eeb85124;--accent-button:#956010;--accent-end:#ac6e18;--focus:#ffe0a5}:root[data-theme=light][data-accent=pink]{--accent:#a12780;--focus:#a12780}:root[data-theme=light][data-accent=blue]{--accent:#1765b9;--focus:#1765b9}:root[data-theme=light][data-accent=mint]{--accent:#067760;--focus:#067760}:root[data-theme=light][data-accent=peach]{--accent:#ab4724;--focus:#ab4724}:root[data-theme=light][data-accent=amber]{--accent:#956010;--focus:#956010}body{background:radial-gradient(ellipse at 70% 0%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 45%), var(--bg);line-height:1.5}button,input,select,textarea{font-size:1rem}button{touch-action:manipulation}button:disabled{opacity:.5;cursor:default}svg{flex-shrink:0;width:22px;height:22px}.page-transition{min-width:0}.sidebar{background:linear-gradient(180deg, var(--bg-deep), color-mix(in srgb, var(--accent) 5%, var(--bg-deep)));width:246px;padding:26px 16px 20px}.brand-block{gap:10px;padding:0 8px 26px}.brand-mark{border-color:var(--border-strong);background:linear-gradient(145deg, var(--accent-button), var(--accent-end));border-radius:13px;width:42px;height:42px}.brand-cap-arc{border-color:#eadfff;top:7px;left:8px}.brand-cap-arc:after{background:#77e5cd}.brand-cap-bars{bottom:7px;left:8px;right:8px}.brand-cap-bars i{background:#bba9ff}.brand-cap-bars i:nth-child(3){background:#6ce6ce}.brand-copy strong{font-size:.9375rem;line-height:1.35}.brand-copy span{color:var(--muted);margin-top:6px;font-size:.75rem}.sidebar nav{gap:8px;margin-top:24px}.nav-button{min-height:52px;color:var(--muted);border:1px solid #0000;border-radius:13px;padding:10px 12px;font-size:.9375rem}.nav-button.active{background:linear-gradient(100deg, var(--accent-soft), color-mix(in srgb, var(--accent) 20%, var(--panel)));border-color:color-mix(in srgb, var(--accent) 42%, transparent);box-shadow:inset 3px 0 var(--accent);color:var(--text)}.nav-button:hover{background:var(--panel-2);color:var(--text)}.nav-icon{background:0 0;border:0;border-radius:5px;place-items:center;width:26px;height:26px;margin:0;display:grid}.nav-icon svg,.nav-icon.weekly-spending svg{width:23px;height:23px;margin:0}.nav-icon.dashboard{color:var(--net)}.nav-icon.payroll-setup{color:var(--chart-5)}.nav-icon.expenses{color:var(--expense)}.nav-icon.investments{color:var(--investment)}.nav-icon.weekly-spending{color:var(--saving)}.nav-icon.settings{color:var(--chart-5)}.nav-button.active .nav-icon{color:var(--accent);box-shadow:none;background:0 0;border:0}.privacy-chip{background:0 0;border:0;gap:10px;margin-top:auto;padding:12px}.privacy-chip>div{min-width:0}.privacy-chip strong{text-overflow:ellipsis;font-size:.875rem;font-weight:600;display:block;overflow:hidden}.privacy-chip div>span{color:var(--muted);margin-top:3px;font-size:.75rem;display:block}.account-avatar{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.main-content{padding:30px clamp(22px,3.2vw,48px) 36px}.topbar{align-items:start;margin-bottom:18px}.topbar h1{margin-top:8px;font-size:clamp(1.8rem,2.6vw,2.5rem);line-height:1.15}.eyebrow{letter-spacing:.09em;font-size:.75rem}.account-toolbar{max-width:1500px;margin:0 auto 24px;font-size:.875rem}.plan-pill{min-height:36px;font-size:.875rem}.plan-pill.plan-fits,.readiness.ready{color:var(--saving);border-color:color-mix(in srgb, var(--saving) 40%, transparent);background:color-mix(in srgb, var(--saving) 9%, transparent)}.plan-pill.shortfall,.readiness,.field-error{color:var(--shortfall)}.period-picker{flex-wrap:wrap;max-width:100%;padding:4px}.period-picker button,.period-picker.expanded button{min-height:36px;padding:7px 10px;font-size:.875rem}.period-picker button.active{background:linear-gradient(120deg, var(--accent-button), var(--accent-end));color:#fff}.topbar-actions{flex-wrap:wrap;justify-content:flex-end}.primary-button,.secondary-button,.danger-button,a.primary-button{border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-size:.875rem;font-weight:650;display:inline-flex}.primary-button{color:#fff;background:linear-gradient(115deg, var(--accent-end), var(--accent-button));border-color:color-mix(in srgb, var(--accent) 48%, transparent);box-shadow:0 4px 16px color-mix(in srgb, var(--accent) 12%, transparent)}.primary-button:hover{background:linear-gradient(115deg, var(--accent-button), var(--accent-end));transform:translateY(-1px)}.secondary-button{background:var(--panel-2);color:var(--text)}.danger-button{color:var(--shortfall);border-color:color-mix(in srgb, var(--shortfall) 35%, transparent);background:color-mix(in srgb, var(--shortfall) 7%, transparent)}.chart-card,.section-card,.kpi-card,.payroll-insights,.entries-table-wrap{border-color:var(--border);background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 3%, var(--panel)), var(--panel));border-radius:20px;box-shadow:0 10px 28px #00000009}.section-card{padding:24px}.section-card h2,.weekly-spending-page h2{letter-spacing:-.025em;align-items:center;gap:9px;margin:0 0 14px;font-size:1.25rem;line-height:1.35;display:flex}.section-card h2 svg{color:var(--accent)}.section-heading h2{margin-top:8px}.section-card p,.entry-guidance,.weekly-spending-page p,.account-card p{color:var(--muted);font-size:1rem;line-height:1.6}.dashboard-intro{background:linear-gradient(110deg, color-mix(in srgb, var(--saving) 8%, var(--panel)), color-mix(in srgb, var(--accent) 8%, var(--panel)));border-radius:20px;padding:22px 24px}.dashboard-intro h2{margin:4px 0 8px;font-size:1.4rem}.dashboard-intro p:last-child{color:var(--muted);font-size:1rem}.kpi-grid{gap:12px}.kpi-card{justify-content:start;gap:10px;min-height:174px;padding:20px;position:relative}.kpi-card.income{border-color:color-mix(in srgb, var(--net) 40%, var(--border));background:linear-gradient(145deg, color-mix(in srgb, var(--net) 12%, var(--panel)), var(--panel))}.kpi-card.purple{border-color:color-mix(in srgb, var(--investment) 40%, var(--border));background:linear-gradient(145deg, color-mix(in srgb, var(--investment) 10%, var(--panel)), var(--panel))}.kpi-card.expense,.kpi-card.red{border-color:color-mix(in srgb, var(--expense) 40%, var(--border));background:linear-gradient(145deg, color-mix(in srgb, var(--expense) 10%, var(--panel)), var(--panel))}.kpi-card.green{border-color:color-mix(in srgb, var(--saving) 40%, var(--border));background:linear-gradient(145deg, color-mix(in srgb, var(--saving) 12%, var(--panel)), color-mix(in srgb, var(--accent) 6%, var(--panel)))}.metric-icon{color:var(--accent);width:25px;height:25px}.kpi-card.income .metric-icon{color:var(--net)}.kpi-card.green .metric-icon,.kpi-card.green>strong{color:var(--saving)}.kpi-card.expense .metric-icon,.kpi-card.red .metric-icon{color:var(--expense)}.metric-label{color:var(--muted);align-items:start;font-size:.875rem}.kpi-card>strong{overflow-wrap:anywhere;margin-top:auto;font-size:clamp(1.5rem,2vw,2.1rem);line-height:1.2}.kpi-card>span{font-size:.75rem}.info-tip{width:18px;height:18px;font-size:.75rem}.info-tip [role=tooltip]{background:var(--panel-2);width:min(240px,65vw);font-size:.875rem}.cash-cards{gap:10px;margin:14px 0 18px}.small-metric{background:var(--panel);border-radius:14px;min-width:0;padding:16px}.small-metric span{font-size:.875rem}.small-metric strong{overflow-wrap:anywhere;font-size:1.15rem}.small-metric.expense strong{color:var(--expense)}.small-metric.investment strong{color:var(--investment)}.small-metric.saving strong{color:var(--saving)}.small-metric.shortfall strong{color:var(--shortfall)}.small-metric.income strong{color:var(--net)}.chart-grid{gap:18px}.chart-card{min-height:280px;padding:24px}.chart-header{margin-bottom:24px}.chart-header h3{font-size:1.125rem;line-height:1.35}.chart-header span{color:var(--muted);font-size:.875rem}.flow-donut-layout{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;display:flex}.flow-donut{aspect-ratio:1;border-radius:50%;flex:none;width:clamp(150px,15vw,210px);padding:clamp(20px,2.1vw,29px);box-shadow:inset 0 0 0 1px #ffffff09}.flow-donut>div{text-align:center;background:var(--panel);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:9px;display:flex}.flow-donut svg{width:30px;height:30px;color:var(--muted)}.flow-allocation-details{flex:210px;min-width:0;max-width:480px}.flow-chart-total{border-bottom:1px solid var(--border);flex-direction:column;gap:4px;margin-bottom:14px;padding-bottom:14px;display:flex}.flow-chart-total>span{color:var(--muted);font-size:.875rem;line-height:1.4}.flow-chart-total>strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:1.125rem;line-height:1.4}.flow-chart-legend{gap:12px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.flow-chart-legend li{grid-template-columns:10px minmax(0,1fr) minmax(0,auto);align-items:start;gap:4px 10px;font-size:.875rem;line-height:1.4;display:grid}.flow-chart-legend i{border-radius:50%;width:10px;height:10px;margin-top:6px}.flow-chart-legend strong{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.flow-chart-legend small{color:var(--muted);grid-column:2/-1;font-size:.75rem}.flow-chart-legend li>span{color:var(--muted);overflow-wrap:anywhere}.flow-donut-layout .chart-empty{flex-basis:100%;min-height:40px;padding:12px;font-size:1rem}.chart-empty,.allocation-note{color:var(--muted);font-size:.875rem}.bar-track{height:12px!important}.bar-list{gap:20px}.bar-row>div:first-child{font-size:.875rem}.hourly-allocation{border-radius:9px;height:40px;overflow:hidden}.hourly-allocation>span:first-child{border-radius:9px 0 0 9px}.hourly-allocation>span.saving{border-radius:0 9px 9px 0}.hourly-allocation .expense,.waterfall-bar.expense,.payroll-stack .expense{background:linear-gradient(120deg, var(--expense), color-mix(in srgb, var(--expense) 85%, #ffdbb0))}.hourly-allocation .investment,.waterfall-bar.investment,.payroll-stack .investment{background:linear-gradient(120deg, var(--investment), color-mix(in srgb, var(--investment) 85%, #fcb0dd))}.hourly-allocation .saving,.waterfall-bar.saving{background:linear-gradient(120deg, var(--saving), color-mix(in srgb, var(--saving) 85%, #71d4ff))}.legend-dot.net{background:var(--net)}.waterfall-bar.net,.payroll-stack .net{background:linear-gradient(120deg, var(--net), color-mix(in srgb, var(--net) 85%, #b3ddff))}.waterfall{gap:25px;height:220px;margin-top:22px}.waterfall-baseline{top:auto}.waterfall-bar{border-radius:6px}.waterfall-connector{border-top:1px dashed var(--muted-2);width:25px;position:absolute;right:-25px}.margin-callout.positive{color:var(--saving);background:color-mix(in srgb, var(--saving) 7%, transparent);border-color:color-mix(in srgb, var(--saving) 25%, transparent)}.margin-callout.negative,.shortfall-block,.inline-warning,.double-count-warning,.validation-summary,.missing-note{color:var(--shortfall);background:color-mix(in srgb, var(--shortfall) 8%, transparent);border-color:color-mix(in srgb, var(--shortfall) 30%, transparent);font-size:.875rem}.coverage-overflow-note{color:var(--shortfall)}.payroll-insights summary small,.deduction-breakdown p,.insight-metrics>div,.summary-line{font-size:.875rem}.deduction-breakdown h3{font-size:1rem}.setup-layout{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:20px}.setup-side{gap:20px;position:static}.payroll-guidance{color:var(--muted);background:var(--accent-soft);border-color:var(--border);padding:14px;font-size:.875rem}.readiness{font-size:.875rem}.field label,.weekly-spending-page .field label{color:var(--text);font-size:.875rem;line-height:1.4}.field input,.field select,.field textarea,.search-field input,.weekly-spending-page .field input{background:var(--input);color:var(--text);border-radius:11px;min-height:46px;font-size:1rem}.field input:hover,.field select:hover,.field textarea:hover,.search-field input:hover{border-color:var(--accent)}.field small{font-size:.8125rem;line-height:1.55}.field-error,.weekly-spending-page .field-error{font-size:.875rem}.compact-settings{gap:18px}.compact-settings h2{margin-top:-5px}.payroll-visual h2{font-size:1.125rem}.payroll-stack{background:var(--panel-3);border-radius:8px;height:30px;margin:22px 0;display:flex;overflow:hidden}.payroll-stack>span{min-width:0;height:100%;display:block}.payroll-visual-legend{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.payroll-visual-legend>div{min-width:0}.payroll-visual-legend span{color:var(--muted);font-size:.8125rem}.payroll-visual-legend .legend-dot{margin-right:5px;display:inline-block}.payroll-visual-legend strong{overflow-wrap:anywhere;margin:6px 0;font-size:1.05rem;display:block}.payroll-visual-legend small{color:var(--muted);font-size:.8125rem}.entry-overview{grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);align-items:stretch;gap:18px;display:grid}.entries-hero{background:linear-gradient(130deg, color-mix(in srgb, var(--expense) 18%, var(--panel)), color-mix(in srgb, var(--accent) 15%, var(--panel)));border-radius:20px;flex-direction:column;justify-content:center;align-items:start;gap:8px;min-width:0;padding:28px;display:flex}.entries-hero>svg{width:34px;height:34px;color:var(--expense);margin-bottom:10px}.entries-hero .eyebrow{color:var(--muted)}.entries-hero .entry-hero-total{letter-spacing:-.035em;overflow-wrap:anywhere;color:var(--expense);font-size:clamp(2rem,3.7vw,3.2rem);line-height:1.2}.entries-hero>span{color:var(--text);font-size:1rem}.entries-hero>small{color:var(--muted);font-size:.875rem}.investments-page .entries-hero{background:linear-gradient(130deg, color-mix(in srgb, var(--investment) 20%, var(--panel)), color-mix(in srgb, var(--accent) 15%, var(--panel)))}.investments-page .entries-hero>svg,.investments-page .entry-hero-total{color:var(--investment)}.entry-allocation{flex-direction:column;min-width:0;min-height:0;display:flex;container-type:inline-size}.entry-allocation .chart-header{margin-bottom:16px}.entry-allocation .flow-donut-layout{flex:1;grid-template-columns:minmax(120px,165px) minmax(0,1fr);justify-content:stretch;align-items:start;gap:20px;min-width:0;display:grid}.entry-allocation .flow-donut{justify-self:start;width:100%;max-width:165px;padding:23px}.entry-allocation .flow-allocation-details{width:100%;min-width:0;max-width:none}.entry-allocation .flow-chart-total{flex-flow:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;margin-bottom:12px;padding-bottom:12px}.entry-allocation .flow-chart-total>strong{font-size:clamp(1.125rem,3cqi,1.5rem)}.entry-allocation .flow-chart-legend{overscroll-behavior:contain;scrollbar-gutter:stable;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));align-content:start;gap:12px 16px;max-height:340px;padding-right:4px;overflow-y:auto}.entry-allocation .flow-chart-legend li{border-bottom:1px solid var(--border);min-width:0;padding:8px 0}.entry-allocation [data-density=compact] .flow-chart-legend{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:4px 12px}.entry-allocation [data-density=compact] .flow-chart-legend li{gap:2px 8px;padding-block:5px;font-size:.8125rem}.entry-allocation .chart-empty{grid-column:1/-1;margin:0}.entry-allocation .flow-chart-legend:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}@container (width<=430px){.entry-allocation .flow-donut-layout{grid-template-columns:1fr;gap:16px}.entry-allocation .flow-donut{max-width:145px;padding:20px}.entry-allocation .flow-chart-legend{max-height:300px}}.investment-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.entry-guidance{margin:20px 0}.category-chips{flex-wrap:wrap;gap:8px;display:flex}.category-chips button{border:1px solid var(--border);background:var(--panel);min-height:42px;color:var(--muted);border-radius:11px;align-items:center;gap:8px;padding:9px 12px;font-size:.875rem;display:inline-flex}.category-chips i{border-radius:50%;flex:none;width:8px;height:8px}.category-chips .selected{color:var(--text);background:var(--accent-soft);border-color:var(--accent)}.entry-toolbar{background:var(--panel);border-radius:16px;grid-template-columns:minmax(170px,1fr) 160px 130px auto;gap:12px;padding:18px}.search-field label,.entry-toolbar .field label{margin-bottom:7px;font-size:.875rem}.entries-empty{background:var(--panel);min-height:240px}.entries-empty>svg{width:40px;height:40px;color:var(--accent)}.entries-empty h3{font-size:1.25rem}.entries-empty p{font-size:1rem}.entries-table-wrap{border:1px solid var(--border);overflow:hidden}.entries-table{border-collapse:collapse;text-align:left;width:100%}.entries-table th,.entries-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:16px 14px;font-size:.875rem}.entries-table thead th{background:var(--panel-2);color:var(--muted);font-weight:600}.entries-table th small,.entries-table td small{color:var(--muted);margin-top:4px;font-size:.75rem;font-weight:400;display:block}.entry-table-row>th{max-width:260px;font-weight:600}.entry-table-row:hover{background:color-mix(in srgb, var(--accent) 4%, var(--panel))}.entry-table-row.excluded{opacity:.64}.entry-name{overflow-wrap:anywhere;align-items:center;gap:10px;display:flex}.category-icon,.purchase-icon{background:color-mix(in srgb, currentColor 12%, transparent);border-radius:9px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.category-icon svg,.purchase-icon svg{width:20px;height:20px}.category-badge{background:color-mix(in srgb, currentColor 12%, transparent);overflow-wrap:anywhere;border-radius:7px;padding:5px 9px;font-size:.8125rem;display:inline-flex}.table-amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:650}.entry-actions{white-space:nowrap;display:table-cell}.entry-actions button{color:var(--muted);background:0 0;border:0;min-width:34px;min-height:38px;padding:8px}.entry-actions svg{width:17px;height:17px}.entry-actions .danger-link{color:var(--shortfall)}.entry-detail-row td{background:var(--panel-2);padding:12px 16px}[hidden]{display:none!important}.expanded-equivalents{border:0}.equivalents>div>span{background:var(--panel-2);padding:12px}.equivalents small{font-size:.8125rem}.equivalents strong,.equivalents>p{font-size:.875rem}.switch{border-color:var(--border-strong);flex-shrink:0;width:42px;height:24px}.switch span{background:var(--muted);width:18px;height:18px}.switch.on{background:var(--accent-button);border-color:var(--accent)}.switch.on span{background:#fff;transform:translate(17px)}.modal-backdrop{background:#0907139c;place-items:stretch end;padding:0}.entry-modal{border-color:var(--border-strong);border-radius:24px 0 0 24px;width:min(560px,100%);height:100dvh;max-height:100dvh}.entry-modal header{padding:24px}.entry-modal header h2{font-size:1.6rem}.entry-modal form{gap:20px;padding:24px}.checkbox-row{font-size:.875rem}.modal-close{color:var(--text);font-size:1.5rem}.success-toast{z-index:110;border:1px solid var(--border-strong);background:var(--panel-2);max-width:min(440px,100vw - 32px);box-shadow:var(--shadow);border-radius:16px;align-items:center;gap:12px;padding:15px 18px;font-size:.875rem;display:flex;position:fixed;top:20px;right:24px}.success-toast>svg{color:var(--saving)}.success-toast button{color:var(--muted);background:0 0;border:0;padding:6px;font-size:1.4rem}.undo-toast{background:var(--panel-2);font-size:.875rem}.undo-toast button{font-size:.875rem}.settings-grid{grid-template-columns:minmax(0,1fr) minmax(300px,1fr);gap:20px}.settings-form{margin-top:20px}.portability-card{position:static}.portability-card>p{font-size:1rem;line-height:1.6}.data-stats{margin:14px 0 20px}.device-diagram{justify-content:center;align-items:center;gap:12px;padding:22px 0;display:flex}.device-diagram>span{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:9px;font-size:.8125rem;display:flex}.device-diagram svg{width:38px;height:38px;color:var(--net)}.device-diagram>span:nth-of-type(2) svg{color:var(--accent)}.device-diagram>span:nth-of-type(3) svg{color:var(--investment)}.device-diagram>i{border-top:2px dotted var(--border-strong);width:26px}.appearance-card{grid-column:1/-1}.appearance-card>p{margin:0 0 24px}.appearance-layout{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:32px;display:grid}.theme-previews{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;display:grid}.theme-choice{text-align:center;border:1px solid var(--border);background:var(--panel-2);min-width:0;color:var(--muted);border-radius:14px;padding:10px;position:relative}.theme-choice.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);color:var(--text)}.theme-choice strong{margin-top:10px;font-size:.875rem;display:block}.theme-choice>svg{background:var(--accent-button);color:#fff;border-radius:50%;width:18px;height:18px;padding:2px;position:absolute;top:12px;right:12px}.theme-mini{background:#f6f1fb;border:1px solid #ddd1eb;border-radius:8px;gap:7px;height:125px;padding:8px;display:flex;overflow:hidden}.theme-mini.dark{background:#141122;border-color:#534467}.theme-mini.system{background:linear-gradient(90deg,#141122 50%,#f6f1fb 50%)}.theme-mini>i{background:#cbbadd;border-radius:3px;width:23%}.theme-mini.dark>i,.theme-mini.system>i{background:#39314b}.theme-mini>span{flex-wrap:wrap;flex:1;align-items:start;gap:6px;display:flex}.theme-mini b{background:#ad89dd;border-radius:3px;width:calc(50% - 3px);height:25px}.theme-mini b:nth-child(2){background:#74d2b9}.theme-mini em{background:#b997e5;border-radius:3px;width:calc(33.33% - 4px);height:43px;margin-top:10px}.theme-mini em:nth-of-type(2){background:#fb99b0;height:53px;margin-top:0}.theme-mini em:nth-of-type(3){background:#69bae9;height:35px;margin-top:18px}.appearance-controls{border-left:1px solid var(--border);padding-left:28px}.appearance-controls fieldset{border:0;margin:0 0 22px;padding:0}.appearance-controls legend{margin-bottom:12px;font-size:.875rem;font-weight:650}.accent-swatches{flex-wrap:wrap;gap:12px;display:flex}.accent-swatch{outline-offset:3px;border:2px solid #0000;border-radius:50%;outline:2px solid #0000;place-items:center;width:34px;height:34px;padding:0;display:grid}.accent-swatch.selected{outline-color:var(--accent)}.accent-swatch svg{color:#20112f;width:19px;height:19px}.accent-swatch.violet{background:#b394ff}.accent-swatch.pink{background:#ef9cd7}.accent-swatch.blue{background:#7ec1ff}.accent-swatch.mint{background:#66e6ce}.accent-swatch.peach{background:#ffb891}.accent-swatch.amber{background:#ffd17f}.preference-row{justify-content:space-between;align-items:center;gap:16px;margin-top:20px;display:flex}.preference-row strong{font-size:.875rem;display:block}.preference-row span,.appearance-controls>small{color:var(--muted);font-size:.8125rem;line-height:1.5;display:block}.appearance-controls>small{margin-top:16px}.spending-week-bar{margin-bottom:20px}.spending-week-bar h2{margin-bottom:0;font-size:1.125rem}.spending-week-bar p{font-size:.875rem}.spending-week-controls{gap:10px}.spending-workspace{grid-template-columns:minmax(0,1.5fr) minmax(300px,.85fr);grid-template-areas:"balance form""daily form""history form";align-items:start;gap:20px;display:grid}.spending-summary,.spending-setup{grid-area:balance;margin:0}.spending-summary{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--border));background:linear-gradient(115deg, color-mix(in srgb, var(--accent) 14%, var(--panel)), color-mix(in srgb, var(--saving) 5%, var(--panel)));border-radius:20px;flex-direction:column;gap:22px;padding:28px;display:flex}.spending-hero{align-items:center;gap:18px;display:flex}.spending-hero>svg{width:42px;height:42px;color:var(--saving)}.spending-hero>div{min-width:0}.spending-hero>div>span{font-size:1rem;font-weight:600}.spending-hero output{color:var(--saving);letter-spacing:-.04em;overflow-wrap:anywhere;font-size:clamp(2.5rem,4.3vw,3.5rem);font-weight:750;line-height:1.25;display:block}.spending-hero p{margin:8px 0 0;font-size:.8125rem}.spending-figures{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.spending-stat{background:color-mix(in srgb, var(--net) 6%, var(--panel));border-radius:12px;align-items:center;gap:10px;padding:14px;display:flex}.spending-stat:nth-child(2){background:color-mix(in srgb, var(--expense) 6%, var(--panel))}.spending-stat>svg{color:var(--net)}.spending-stat:nth-child(2)>svg{color:var(--expense)}.spending-stat>div{min-width:0}.spending-stat div>span{color:var(--muted);margin-bottom:5px;font-size:.8125rem;display:block}.spending-stat strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:1.4rem;line-height:1.25;display:block}.spending-progress{background:color-mix(in srgb, var(--saving) 28%, var(--panel-3));height:15px}.spending-progress>span{background:linear-gradient(100deg, var(--expense), color-mix(in srgb, var(--expense) 75%, #f9c1df))}.spending-meter>div:last-child{color:var(--muted);justify-content:space-between;gap:16px;margin-top:9px;font-size:.8125rem;display:flex}.spending-meter strong{color:var(--saving);font-weight:600}.spending-summary.over-budget{border-color:var(--shortfall);background:linear-gradient(115deg, color-mix(in srgb, var(--shortfall) 10%, var(--panel)), var(--panel))}.spending-summary.over-budget .spending-hero output,.spending-summary.over-budget .spending-hero>svg,.spending-summary.over-budget .spending-meter strong{color:var(--shortfall)}.spending-status-note{margin:-8px 0 0;font-size:.875rem!important}.spending-budget-detail{border-top:1px solid var(--border);padding-top:14px}.spending-budget-detail summary{color:var(--muted);cursor:pointer;font-size:.875rem}.spending-budget-detail p{font-size:.875rem}.daily-purchases{grid-area:daily}.daily-purchases h2{font-size:1.125rem}.daily-chart{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:24px;display:grid}.daily-column{text-align:center;font-variant-numeric:tabular-nums;min-width:0}.daily-column>strong{overflow-wrap:anywhere;min-height:36px;font-size:.75rem;display:block}.daily-bar-space{background:linear-gradient(transparent 32%, var(--border) 33%, transparent 34%, transparent 65%, var(--border) 66%, transparent 67%, transparent 98%, var(--border) 99%);align-items:end;height:104px;padding:0 5px;display:flex}.daily-bar{border-radius:7px 7px 2px 2px;width:100%;min-height:2px;display:block}.daily-column.future .daily-bar{border:1px dashed var(--border-strong);min-height:0;background:0 0!important;height:26px!important}.daily-column>span{margin-top:9px;font-size:.8125rem;display:block}.daily-column>small{color:var(--muted);margin-top:3px;font-size:.75rem;line-height:1.4;display:block}.daily-note{margin:16px 0 0;font-size:.8125rem!important}.purchase-form-card{grid-area:form;position:sticky;top:20px}.purchase-form-card>p{margin:0 0 20px;font-size:.875rem}.purchase-form-card form{gap:20px}.purchase-preview{color:var(--saving);background:color-mix(in srgb, var(--saving) 7%, var(--panel));border-color:color-mix(in srgb, var(--saving) 32%, transparent)}.purchase-preview.over-budget{color:var(--shortfall);border-color:color-mix(in srgb, var(--shortfall) 35%, transparent);background:color-mix(in srgb, var(--shortfall) 8%, transparent)}.purchase-preview>span{font-size:.875rem}.purchase-preview>strong{font-size:1.75rem}.purchase-preview>small{font-size:.8125rem}.purchase-form-actions{display:grid}.purchase-list-card{grid-area:history}.purchase-list-card header{padding-bottom:8px}.purchase-list-card header h2{font-size:1.125rem}.purchase-list-card header p{font-size:.8125rem}.purchase-list>li{grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px 0}.purchase-list-copy>strong{font-size:.9375rem}.purchase-list-copy>span{font-size:.8125rem}.purchase-list-price{font-size:1rem}.purchase-row-actions{grid-column:2/-1}.purchase-row-actions button{min-height:36px;padding:6px 10px;font-size:.8125rem}.purchase-empty{padding:24px}.purchase-empty h3{font-size:1.125rem}.first-run{background:linear-gradient(130deg, color-mix(in srgb, var(--accent) 12%, var(--panel)), var(--panel));gap:40px;min-height:450px;margin-top:0;padding:40px}.first-run h2{font-size:clamp(2rem,4vw,3rem);line-height:1.1}.first-run-copy>p:not(.eyebrow){font-size:1rem}.setup-checklist li{background:var(--panel-2)}.setup-checklist strong{font-size:.9375rem}.setup-checklist p,.setup-checklist li>span{font-size:.875rem}.account-gate{background:radial-gradient(ellipse at 30% 25%, var(--accent-soft), transparent 60%)}.account-card{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 8%, var(--panel)), var(--panel));box-shadow:var(--shadow);border-radius:24px}footer{font-size:.8125rem}[data-motion=on] .page-transition{animation:.3s ease-out both flow-enter}[data-motion=on] .flow-donut{animation:.55s cubic-bezier(.2,.8,.2,1) both flow-chart-reveal}[data-motion=on] .bar-track>span,[data-motion=on] .hourly-allocation>span,[data-motion=on] .payroll-stack>span{transform-origin:0;animation:.55s cubic-bezier(.2,.8,.2,1) both flow-bar-reveal}[data-motion=on] .waterfall-bar,[data-motion=on] .daily-bar{transform-origin:bottom;animation:.55s cubic-bezier(.2,.8,.2,1) both flow-column-reveal}[data-motion=on] .entry-modal{animation:.28s cubic-bezier(.2,.8,.2,1) flow-sheet-enter}[data-motion=on] .success-toast,[data-motion=on] .undo-toast{animation:.22s ease-out flow-enter}[data-motion=on] .spending-progress>span,[data-motion=on] .bar-track>span,[data-motion=on] .hourly-allocation>span,[data-motion=on] .payroll-stack>span{transition:width var(--motion-duration) cubic-bezier(.2,.8,.2,1)}[data-motion=on] .waterfall-bar,[data-motion=on] .daily-bar{transition:height var(--motion-duration) ease, bottom var(--motion-duration) ease}@keyframes flow-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes flow-sheet-enter{0%{opacity:.3;transform:translate(36px)}to{opacity:1;transform:translate(0)}}@keyframes flow-chart-reveal{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes flow-bar-reveal{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes flow-column-reveal{0%{transform:scaleY(0)}to{transform:scaleY(1)}}[data-motion=off] *,[data-motion=off] :before,[data-motion=off] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (max-width:1350px){.cash-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.entry-toolbar{grid-template-columns:minmax(0,1fr) 160px 130px}.entry-toolbar .add-button{grid-column:1/-1}}@media (max-width:1180px){.sidebar{width:220px;padding-inline:12px}.main-content{margin-left:220px;padding-inline:24px}.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.entries-table th,.entries-table td{padding:12px 8px}.entry-actions button{min-width:30px;padding:6px}.spending-workspace{grid-template-columns:minmax(0,1fr) 300px}.flow-allocation-details{flex-basis:180px}.setup-layout{grid-template-columns:minmax(0,1fr) 310px}}@media (max-width:1050px){.chart-grid{grid-template-columns:1fr}.flow-donut{width:200px}.entry-overview{grid-template-columns:1fr}.entries-hero{padding:24px}.spending-workspace{grid-template-columns:1fr;grid-template-areas:"balance""form""daily""history"}.purchase-form-card{position:static}.setup-layout,.settings-grid{grid-template-columns:1fr}.payroll-visual-legend strong{font-size:1.125rem}.appearance-layout{grid-template-columns:1fr}.appearance-controls{border-left:0;border-top:1px solid var(--border);padding:24px 0 0}.first-run{grid-template-columns:1fr}}@media (max-width:900px){.sidebar{display:none}.main-content{margin-left:0;padding:24px 20px 154px}.mobile-nav{background:color-mix(in srgb, var(--bg-deep) 95%, transparent);border-color:var(--border-strong);border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:6px}.mobile-nav button{gap:5px;min-height:54px;font-size:.8125rem}.mobile-nav .nav-icon{background:0 0;transform:none}.mobile-nav button.active{background:var(--accent-soft);color:var(--text)}.mobile-nav button.active .nav-icon{color:var(--accent);background:0 0;border:0}.undo-toast{bottom:145px}.account-toolbar{justify-content:space-between;gap:12px}.topbar{flex-wrap:wrap}.topbar-actions{justify-content:start}.spending-week-controls button{flex:auto}}@media (max-width:680px){.main-content{padding-inline:16px}.topbar h1{font-size:2rem}.dashboard-intro{flex-direction:column;align-items:stretch;gap:18px}.dashboard-intro .period-picker{width:100%}.period-picker.expanded button{flex:auto;padding-inline:8px;font-size:.8125rem}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-card{min-height:164px;padding:18px}.cash-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-card,.section-card{padding:20px}.entry-toolbar{grid-template-columns:1fr 1fr;padding:14px}.search-field,.entry-toolbar .add-button{grid-column:1/-1}.entries-table,.entries-table tbody,.entry-table-row,.entry-detail-row,.entries-table th,.entries-table td{display:block}.entries-table thead{display:none}.entry-table-row{border-bottom:1px solid var(--border);padding:12px 16px}.entry-table-row>th{border:0;max-width:none;padding:10px 0}.entry-table-row td{border:0;justify-content:space-between;gap:16px;padding:9px 0;display:flex}.entry-table-row td:before{content:attr(data-label);color:var(--muted);font-weight:400}.entry-table-row td>small{text-align:right}.entry-table-row .entry-actions{border-top:1px solid var(--border);justify-content:end;gap:8px;margin-top:6px;padding-top:10px}.entry-actions button{min-width:42px;min-height:42px}.entry-detail-row td{padding:16px}.entry-table-row .table-amount{flex-wrap:wrap;justify-content:flex-start}.table-amount:before{flex:1}.investment-summary{grid-template-columns:1fr}.spending-figures{grid-template-columns:1fr 1fr}.spending-summary{padding:22px}.spending-hero{gap:12px}.spending-stat{gap:7px;padding:12px}.spending-stat>svg{display:none}.purchase-fields{grid-template-columns:1fr}.daily-bar-space{height:90px;padding-inline:2px}.daily-chart{gap:5px}.spending-week-controls{width:100%}.spending-week-controls .field{flex:145px}.form-grid{grid-template-columns:1fr}.theme-previews{gap:8px}.theme-choice{padding:7px}.theme-mini{gap:5px;height:95px;padding:5px}.theme-mini>span{gap:4px}.theme-mini em{height:32px}.theme-mini em:nth-of-type(2){height:39px}.theme-mini em:nth-of-type(3){height:25px}.first-run{padding:24px}.entry-modal{border-radius:0}.modal-two-col{grid-template-columns:1fr}.modal-actions{flex-wrap:wrap;display:flex}.portability-actions{flex-direction:column}.insights-body{grid-template-columns:1fr;padding:16px}.insight-metrics{grid-template-columns:1fr}}@media (max-width:420px){.main-content{padding-inline:12px}.kpi-grid,.cash-cards{grid-template-columns:1fr}.kpi-card{min-height:150px}.entry-toolbar{grid-template-columns:1fr}.search-field,.entry-toolbar .add-button{grid-column:auto}.flow-donut-layout{flex-direction:column;gap:22px}.flow-allocation-details{flex-basis:auto;width:100%}.flow-donut{width:180px}.spending-hero>svg{width:32px;height:32px}.spending-hero output{font-size:2.5rem}.spending-stat strong{font-size:1.15rem}.daily-column>strong,.daily-column>small{font-size:.75rem}.daily-bar-space{height:70px}.payroll-visual-legend{grid-template-columns:1fr;gap:15px}.payroll-visual-legend>div{flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.payroll-visual-legend strong{margin:0 0 0 auto}.payroll-visual-legend small{flex-basis:100%}.device-diagram{gap:7px}.device-diagram>i{width:12px}.device-diagram svg{width:30px;height:30px}.appearance-card{padding:18px}.theme-mini{height:80px}.theme-mini b{height:19px}.theme-mini em{height:23px;margin-top:8px}.theme-mini em:nth-of-type(2){height:31px}.theme-mini em:nth-of-type(3){height:19px;margin-top:12px}.theme-choice strong{font-size:.8125rem}.purchase-list>li{grid-template-columns:28px minmax(0,1fr)}.purchase-icon{width:28px;height:28px}.purchase-list-price{text-align:left;grid-column:2}.purchase-row-actions{grid-column:2;justify-content:start}.purchase-row-actions button{flex:1}}.calculation-info{vertical-align:middle;border:1px solid var(--border-strong);width:20px;height:20px;color:var(--muted);cursor:help;background:0 0;border-radius:50%;flex:none;place-items:center;margin-left:6px;padding:0;font-size:12px;line-height:1;display:inline-grid}:is(.calculation-info:hover,.calculation-info:focus-visible){color:var(--text);border-color:var(--accent);outline:2px solid var(--accent);outline-offset:3px}.calculation-tooltip{z-index:10000;box-sizing:border-box;border:1px solid var(--border-strong);background:var(--panel);color:var(--text);text-align:left;letter-spacing:normal;border-radius:14px;padding:14px 16px;font-size:14px;font-weight:400;line-height:1.5;position:fixed;overflow-y:auto;box-shadow:0 12px 36px #0005}.calculation-tooltip[hidden]{display:none}.calculation-tooltip>b{font-size:14px}.calculation-tooltip p{color:var(--text);margin:8px 0;font-size:14px}.calculation-tooltip dl{margin:10px 0}.calculation-tooltip dl>div{justify-content:space-between;gap:14px;padding:4px 0;display:flex}.calculation-tooltip dt{min-width:0}.calculation-tooltip dd{font-variant-numeric:tabular-nums;flex-shrink:0;margin:0}
