:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-canvas:#f6f7f9;--color-surface:#fff;--color-surface-raised:#fff;--color-surface-recessed:#f8faf9;--color-surface-hover:#f1f5f3;--color-surface-selected:#e6f2ec;--color-surface-accent:#f0f8f4;--color-border-subtle:#e3e8e5;--color-border-default:#dce1de;--color-border-strong:#aebdb5;--color-text-primary:#17201b;--color-text-secondary:#68736d;--color-text-tertiary:#87908b;--color-text-inverse:#fff;--color-action-primary:#176b4d;--color-action-primary-soft:#e8f3ee;--color-positive:#168158;--color-positive-soft:#e8f3ee;--color-negative:#a63535;--color-negative-soft:#fff0ef;--color-warning:#9a6121;--color-warning-soft:#fff3e8;--color-focus:#68a78f;--color-overlay:#0a140f8f;--shadow-surface:0 1px 2px #14231b0a;--shadow-raised:0 12px 34px #13231b1f;--bg:var(--color-canvas);--text:var(--color-text-primary);--muted:var(--color-text-secondary);--line:var(--color-border-subtle);--primary:var(--color-action-primary);--soft:var(--color-action-primary-soft);--surface:var(--color-surface);--surface-soft:var(--color-surface-raised);--surface-muted:var(--color-surface-recessed);--input:var(--color-surface-recessed);--overlay:var(--color-overlay)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#0d1512;--color-surface:#14201b;--color-surface-raised:#192a23;--color-surface-recessed:#101b17;--color-surface-hover:#20332b;--color-surface-selected:#1d3a2e;--color-surface-accent:#18372b;--color-border-subtle:#2a3c34;--color-border-default:#34483e;--color-border-strong:#567164;--color-text-primary:#edf5f1;--color-text-secondary:#9cafa5;--color-text-tertiary:#7f9388;--color-text-inverse:#08110d;--color-action-primary:#66c29d;--color-action-primary-soft:#18372b;--color-positive:#78d6ae;--color-positive-soft:#173a2c;--color-negative:#f08b91;--color-negative-soft:#3a2024;--color-warning:#e5a86b;--color-warning-soft:#36291b;--color-focus:#66c29d;--color-overlay:#020604c7;--shadow-surface:0 1px 2px #00000024;--shadow-raised:0 14px 36px #0000004d}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#0d1512;--color-surface:#14201b;--color-surface-raised:#192a23;--color-surface-recessed:#101b17;--color-surface-hover:#20332b;--color-surface-selected:#1d3a2e;--color-surface-accent:#18372b;--color-border-subtle:#2a3c34;--color-border-default:#34483e;--color-border-strong:#567164;--color-text-primary:#edf5f1;--color-text-secondary:#9cafa5;--color-text-tertiary:#7f9388;--color-text-inverse:#08110d;--color-action-primary:#66c29d;--color-action-primary-soft:#18372b;--color-positive:#78d6ae;--color-positive-soft:#173a2c;--color-negative:#f08b91;--color-negative-soft:#3a2024;--color-warning:#e5a86b;--color-warning-soft:#36291b;--color-focus:#66c29d;--color-overlay:#020604c7;--shadow-surface:0 1px 2px #00000024;--shadow-raised:0 14px 36px #0000004d}}body,.auth-page{background-color:var(--color-canvas);color:var(--color-text-primary)}.app-shell>main>header,.metrics>article,.card,.upcoming article,.upcoming-empty,.month-chip,.modal,.auth-card,.bottom-nav,.settings-card,.transaction-summary article,.transaction-panel,.category-overview article,.category-panel,.plan-overview article,.plan-panel,.project-card{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-border-subtle);box-shadow:var(--shadow-surface)}.smart-select-popover,.category-actions>div,.project-card details>div{background:var(--color-surface-raised);color:var(--color-text-primary);border-color:var(--color-border-default);box-shadow:var(--shadow-raised)}.search kbd,.bell,.page-heading>button,.modal input,.modal select,.auth-form input,.auth-form select,.settings-card button,.transaction-search,.transaction-filters label,.transaction-filters select,.transaction-pagination button,.smart-select-trigger,.category-search,.category-sort,.category-sort select,.category-editor-modal input,.category-editor-modal select,.category-merge-modal select,.category-colours .none,.project-order button{background:var(--color-surface-recessed);color:var(--color-text-primary);border-color:var(--color-border-default)}input::placeholder,textarea::placeholder{color:var(--color-text-tertiary)}.transaction-header,.category-header,.filter-status,.category-row.archived,.project-card.archived,.category-type-readonly{background:var(--color-surface-recessed);color:var(--color-text-secondary)}.transaction-row,.category-row,.transactions article,.categories>div,.project-order{border-color:var(--color-border-subtle)}.transaction-row-button{background:var(--color-surface);color:var(--color-text-primary)}.transaction-row-button:hover,.category-actions summary:hover,.category-actions[open] summary,.category-actions button:hover,.project-card summary:hover,.project-card details button:hover,.smart-select-options button:hover,.smart-select-options button[aria-selected=true],.transaction-name>i,.upcoming article>i,.project-card.archived .project-rank,.plan-tabs button span,.category-share>div,.progress,.project-progress{background:var(--color-surface-hover)}.transaction-name>i.income,.project-rank,.plan-empty>i,.plan-confirm>i,.merge-icon,.theme-options button>i{background:var(--color-positive-soft);color:var(--color-action-primary)}.transaction-row em,.category-colours .none,.project-rank{background-color:var(--color-surface-hover);color:var(--color-text-secondary)}.sidebar nav>a.active,.sidebar nav>button.active,.sidebar footer>a.active,.plan-tabs button.active{background:var(--color-surface-selected);color:var(--color-action-primary);font-weight:700}.plan-tabs button.active span{background:var(--color-action-primary-soft)}.metrics .featured,.plan-overview article.featured,.project-card.completed{background:linear-gradient(135deg, var(--color-surface) 42%, var(--color-surface-accent));border-color:color-mix(in srgb, var(--color-action-primary) 28%, var(--color-border-subtle))}.metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.metrics .savings-needed{border-color:color-mix(in srgb, var(--color-action-primary) 35%, var(--color-border-subtle))}.metrics .savings-needed svg,.project-progress-label b,.project-pace,.category-trend.down,.income{color:var(--color-positive)!important}.donut:before,.plan-panel,.project-card{background:var(--color-surface)}.forecast,.project-pace{background:var(--color-positive-soft)}.project-pace.overdue{background:var(--color-warning-soft);color:var(--color-warning)!important}.category-trend.up{color:var(--color-warning)}.backdrop{background:var(--color-overlay)}.form-error,.field-error,.smart-select-error,.required-mark,.category-actions button.danger{color:var(--color-negative)}.validation-summary,.category-page-error,.category-modal-error,.plan-error,.plan-modal-error{background:var(--color-negative-soft);color:var(--color-negative);border-color:color-mix(in srgb, var(--color-negative) 35%, var(--color-border-subtle))}.delete-modal .delete-icon,.confirm-icon.danger{background:var(--color-negative-soft);color:var(--color-negative)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,.smart-select-trigger:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.modal-actions,.modal form>footer{justify-content:flex-end;gap:9px;margin-top:2px;display:flex!important}.modal-actions>button,.modal form>footer>button{min-width:112px;min-height:42px;width:auto!important;padding:0 16px!important}.modal-actions .modal-cancel,.modal form>footer>button:first-child,.delete-modal footer button:first-child,.category-merge-modal footer button:first-child,.category-confirm-modal footer button:first-child,.plan-editor form>footer>button:first-child,.progress-editor form>footer>button:first-child,.plan-confirm footer>button:first-child,.modal-action.secondary{border:1px solid var(--color-border-default);background:var(--color-surface-recessed);color:var(--color-text-primary);border-radius:8px}.transaction-modal form>footer.modal-actions{background:var(--color-surface)}.settings-page{max-width:980px;margin:0 auto;padding:34px 38px 100px}.settings-card{border:1px solid var(--color-border-subtle);border-radius:14px;padding:22px}.settings-card h2{margin:0 0 5px;font-size:16px}.settings-card>div:first-child>p{color:var(--color-text-secondary);margin:0;font-size:12px}.theme-options{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px;display:grid}.theme-options button{border:1px solid var(--color-border-default);text-align:left;border-radius:12px;align-items:flex-start;gap:12px;min-height:108px;padding:16px;display:flex;position:relative}.theme-options button:hover{background:var(--color-surface-hover)}.theme-options button.active{border-color:var(--color-action-primary);background:var(--color-surface-selected);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-action-primary) 20%, transparent)}.theme-options button>i{border-radius:10px;flex:0 0 36px;place-items:center;width:36px;height:36px;display:grid}.theme-options button>i svg{width:18px}.theme-options button>span{flex-direction:column;gap:5px;display:flex}.theme-options button b{font-size:13px}.theme-options button small,.theme-status{color:var(--color-text-secondary);font-size:11px}.theme-options button small{line-height:1.45}.theme-options button>svg{width:17px;color:var(--color-action-primary);position:absolute;top:12px;right:12px}.theme-status{margin:16px 0 0}@media (max-width:1180px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics .savings-needed{grid-column:span 2}}@media (max-width:700px){.settings-page{padding:24px 18px 100px}.theme-options{grid-template-columns:1fr}.theme-options button{min-height:84px}.modal-actions,.modal form>footer{flex-direction:column-reverse}.modal-actions>button,.modal form>footer>button{min-width:0;width:100%!important}.modal-actions .primary,.modal form>footer>.primary{min-height:44px;display:inline-flex!important}}@media (max-width:620px){.metrics .savings-needed{grid-column:1/-1}}
:root{--brand-green:#10b981;--brand-blue:#0ea5e9;--brand-navy:#0f172a;--brand-slate:#64748b;--brand-light:#f8fafc;--brand-green-strong:#059669;--brand-green-soft:#d1fae5;--brand-blue-strong:#0284c7;--brand-blue-soft:#e0f2fe;--brand-navy-soft:#1e293b;--brand-border:#e2e8f0;--brand-white:#fff;--brand-gradient:linear-gradient(135deg, var(--brand-blue) 0%, var(--brand-green) 100%);--brand-gradient-soft:linear-gradient(135deg, var(--brand-blue-soft) 0%, var(--brand-green-soft) 100%);--font-sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-display:clamp(2rem, 4vw, 3.75rem);--font-size-h1:clamp(1.75rem, 3vw, 2.5rem);--font-size-h2:clamp(1.375rem, 2vw, 1.875rem);--font-size-h3:1.125rem;--font-size-body:.9375rem;--font-size-small:.8125rem;--font-size-label:.6875rem;--tracking-tight:-.035em;--tracking-label:.12em;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--shadow-brand-surface:0 1px 2px #0f172a0d;--shadow-brand-raised:0 18px 48px #0f172a1f;--shadow-brand-focus:0 0 0 3px #0ea5e92e;--color-canvas:var(--brand-light);--color-surface:var(--brand-white);--color-surface-raised:var(--brand-white);--color-surface-recessed:#f1f5f9;--color-surface-hover:#eef6f8;--color-surface-selected:#e6f8f3;--color-surface-accent:#effcf8;--color-border-subtle:var(--brand-border);--color-border-default:#cbd5e1;--color-border-strong:#94a3b8;--color-text-primary:var(--brand-navy);--color-text-secondary:var(--brand-slate);--color-text-tertiary:#94a3b8;--color-text-inverse:var(--brand-white);--color-action-primary:var(--brand-green-strong);--color-action-primary-soft:var(--brand-green-soft);--color-positive:var(--brand-green-strong);--color-positive-soft:var(--brand-green-soft);--color-negative:#dc2626;--color-negative-soft:#fee2e2;--color-warning:#b45309;--color-warning-soft:#ffedd5;--color-focus:var(--brand-blue);--color-overlay:#0f172a9e;--shadow-surface:var(--shadow-brand-surface);--shadow-raised:var(--shadow-brand-raised)}:root[data-theme=dark]{--brand-light:#08111d;--brand-border:#263449;--color-canvas:#08111d;--color-surface:#0f1b2b;--color-surface-raised:#142337;--color-surface-recessed:#0b1726;--color-surface-hover:#172a3d;--color-surface-selected:#12372f;--color-surface-accent:#102c2b;--color-border-subtle:#22344a;--color-border-default:#31455e;--color-border-strong:#57708d;--color-text-primary:#f8fafc;--color-text-secondary:#a8b6c8;--color-text-tertiary:#7f91a8;--color-text-inverse:#06110d;--color-action-primary:#34d399;--color-action-primary-soft:#12372f;--color-positive:#34d399;--color-positive-soft:#12372f;--color-negative:#f87171;--color-negative-soft:#3b1c24;--color-warning:#fbbf24;--color-warning-soft:#3a2d14;--color-focus:#38bdf8;--color-overlay:#020617c7;--shadow-surface:0 1px 2px #0000002e;--shadow-raised:0 20px 52px #00000057}@media (prefers-color-scheme:dark){:root:not([data-theme]){--brand-light:#08111d;--brand-border:#263449;--color-canvas:#08111d;--color-surface:#0f1b2b;--color-surface-raised:#142337;--color-surface-recessed:#0b1726;--color-surface-hover:#172a3d;--color-surface-selected:#12372f;--color-surface-accent:#102c2b;--color-border-subtle:#22344a;--color-border-default:#31455e;--color-border-strong:#57708d;--color-text-primary:#f8fafc;--color-text-secondary:#a8b6c8;--color-text-tertiary:#7f91a8;--color-text-inverse:#06110d;--color-action-primary:#34d399;--color-action-primary-soft:#12372f;--color-positive:#34d399;--color-positive-soft:#12372f;--color-negative:#f87171;--color-negative-soft:#3b1c24;--color-warning:#fbbf24;--color-warning-soft:#3a2d14;--color-focus:#38bdf8;--color-overlay:#020617c7;--shadow-surface:0 1px 2px #0000002e;--shadow-raised:0 20px 52px #00000057}}body{font-family:var(--font-sans)}.brand-gradient-text{color:var(--brand-green);background:var(--brand-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.brand-gradient-surface{background:var(--brand-gradient);color:var(--brand-white)}
.transactions-heading>div:last-child>button:not(.primary),.smart-select-options button,.smart-select-create{background:var(--color-surface-recessed);color:var(--color-text-primary);border-color:var(--color-border-default)}.smart-select-create{border-top-color:var(--color-border-subtle);color:var(--color-action-primary)}.smart-select-search{border-bottom-color:var(--color-border-subtle)}.category-colours>button:not(.none){border-color:var(--color-surface);box-shadow:0 0 0 1px var(--color-border-default)}.category-colours>button.selected:not(.none){box-shadow:0 0 0 2px var(--color-action-primary)}.project-card.archived,.project-progress-label,.project-pace small{color:var(--color-text-secondary)}.transactions article>i{background:var(--color-surface-hover)}.transactions article>i.income{background:var(--color-positive-soft);color:var(--color-positive)!important}.insight>button{background:var(--color-surface-selected);color:var(--color-action-primary)}.insight .dismiss{color:var(--color-text-secondary);background:0 0}.auth-page{background:radial-gradient(circle at 50% -10%, var(--color-surface-accent) 0, transparent 42%), var(--color-canvas)}.route-loading{background:radial-gradient(circle at 50% 43%, var(--color-surface-accent) 0, var(--color-canvas) 42%, var(--color-canvas) 100%);color:var(--color-text-primary)}.route-loading>span:last-child{color:var(--color-text-secondary)}.saving-pot{border-color:color-mix(in srgb, var(--color-action-primary) 28%, var(--color-border-subtle));background:linear-gradient(145deg, var(--color-surface-raised), var(--color-surface-accent));color:var(--color-action-primary);box-shadow:var(--shadow-raised)}.bottom-nav .mobile-nav-add-circle{border-color:var(--color-canvas);background:var(--color-action-primary);color:var(--color-text-inverse)}.app-update-banner{border-color:color-mix(in srgb, var(--color-action-primary) 25%, var(--color-border-subtle));background:var(--color-surface-raised);box-shadow:var(--shadow-raised);color:var(--color-text-primary)}.app-update-icon{background:var(--color-positive-soft);color:var(--color-action-primary)}.app-update-copy span,.app-update-dismiss,.app-version-label{color:var(--color-text-secondary)}.app-update-dismiss:hover{background:var(--color-surface-hover)}.app-update-action{background:var(--color-action-primary);color:var(--color-text-inverse)}.global-app-version{background:color-mix(in srgb, var(--color-surface-raised) 90%, transparent);box-shadow:var(--shadow-surface)}select,option{color-scheme:normal}@media (max-width:900px){.bottom-nav{border-top-color:var(--color-border-subtle);background:var(--color-surface-raised)}}
.transaction-desktop-actions{z-index:4;gap:6px;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.transaction-desktop-actions button{border:1px solid var(--color-border-default,var(--line));background:var(--color-surface,#fff);width:34px;height:34px;color:var(--color-text-secondary,var(--muted));border-radius:8px;place-items:center;display:grid;box-shadow:0 1px 2px #14231b0d}.transaction-desktop-actions button:hover,.transaction-desktop-actions button:focus-visible{border-color:var(--color-action-primary,var(--primary));color:var(--color-action-primary,var(--primary));outline:none}.transaction-desktop-actions button.danger:hover,.transaction-desktop-actions button.danger:focus-visible{border-color:var(--color-negative,#a63535);color:var(--color-negative,#a63535)}.transaction-desktop-actions svg{width:15px}.planned-row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.planned-row-actions button{border:1px solid var(--color-border-default,var(--line));background:var(--color-surface-recessed,#f7faf8);min-height:34px;color:var(--color-text-secondary,var(--muted));border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:9px;font-weight:800;display:inline-flex}.planned-row-actions button:hover,.planned-row-actions button:focus-visible{border-color:var(--color-action-primary,var(--primary));color:var(--color-action-primary,var(--primary));outline:none}.planned-row-actions button.danger:hover,.planned-row-actions button.danger:focus-visible{border-color:var(--color-negative,#a63535);color:var(--color-negative,#a63535)}.planned-row-actions button:disabled{opacity:.5;cursor:default}.planned-row-actions svg{width:14px}@media (min-width:901px){.transaction-row-button{padding-right:104px}.planned-row{grid-template-columns:38px minmax(240px,1fr) 125px 130px minmax(190px,auto)}}@media (max-width:900px){.transaction-desktop-actions{display:none}.planned-row{grid-template-columns:34px minmax(0,1fr) 110px minmax(170px,auto)}}@media (max-width:650px){.planned-row{grid-template-columns:32px minmax(0,1fr)}.planned-row-actions{flex-wrap:wrap;grid-column:2;justify-content:flex-start}.planned-row-actions button{flex:auto;min-height:38px}.planned-row>strong{text-align:left;grid-column:2}}
.auth-page{background:radial-gradient(circle at 12% 10%,#10b98129,#0000 34%),radial-gradient(circle at 88% 16%,#0ea5e924,#0000 36%),linear-gradient(#f8fafc 0%,#f2fbf8 100%);position:relative;overflow:hidden}.auth-page:before{content:"";filter:blur(8px);pointer-events:none;background:linear-gradient(135deg,#0ea5e91a,#10b98124);border-radius:50%;width:420px;height:420px;position:absolute;bottom:-190px;left:-170px}.auth-card{z-index:1;border-color:#0f172a1a;position:relative;box-shadow:0 28px 80px #0f172a1f}.auth-brand{max-width:238px;display:inline-flex}.auth-brand img{width:min(238px,64vw);height:auto;display:block}.auth-card .eyebrow{color:var(--brand-primary,#10b981)}.auth-submit{background:linear-gradient(100deg,#10b981 0%,#0ea5e9 100%);box-shadow:0 10px 24px #0ea5e924}.sidebar .brand{gap:8px}.sidebar .brand-home{align-items:center;min-width:0;text-decoration:none;display:flex}.sidebar .brand-lockup{width:150px;height:auto;display:block}.sidebar .brand-mark{width:34px;height:auto;display:none}.sidebar.collapsed .brand-lockup{display:none}.sidebar.collapsed .brand-mark{display:block}.sidebar nav>a.active{color:#dffcf2;background:linear-gradient(100deg,#10b9812e,#0ea5e924)}.sidebar .household:hover,.sidebar .household.active{background:linear-gradient(110deg,#10b98124,#0ea5e91a);border-color:#10b98170}@media (max-width:900px){.sidebar.collapsed .brand-lockup{display:block}.sidebar.collapsed .brand-mark{display:none}.sidebar .brand-lockup{width:154px}}@media (max-width:520px){.auth-card{border-radius:16px;padding:30px 22px}.auth-brand img{width:min(220px,72vw)}}
.app-shell,.dashboard,.transactions-page,.categories-page,.plan-page,.accounts-page,.household-page,.settings-page,.assistant-page{color:var(--color-text-primary)}.app-shell>main{background:radial-gradient(circle at 88% 0%, #0ea5e912, transparent 24rem), radial-gradient(circle at 12% 8%, #10b98112, transparent 22rem), var(--color-canvas)}.primary,.auth-submit,.modal .primary,button.primary,a.primary{border-radius:var(--radius-md);background:var(--brand-gradient);color:var(--brand-white);transition:transform .14s,box-shadow .14s,filter .14s;box-shadow:0 8px 20px #0ea5e91f}.primary:hover,.auth-submit:hover,.modal .primary:hover,button.primary:hover,a.primary:hover{filter:brightness(1.03)saturate(1.03);transform:translateY(-1px);box-shadow:0 12px 26px #0ea5e92b}.primary:active,.auth-submit:active,button.primary:active,a.primary:active{transform:translateY(0)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}button:disabled,[aria-disabled=true]{cursor:not-allowed;opacity:.55}input,select,textarea,.modal input,.modal select,.auth-form input{border-color:var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-primary)}input::placeholder,textarea::placeholder{color:var(--color-text-tertiary)}input:focus,select:focus,textarea:focus,.modal input:focus,.modal select:focus,.auth-form input:focus{border-color:var(--color-focus);box-shadow:var(--shadow-brand-focus)}.card,.metrics>article,.upcoming article,.upcoming-empty,.modal,.month-chip,.dashboard-data-note{border-color:var(--color-border-subtle);background:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--shadow-surface)}.card,.metrics>article,.upcoming article,.upcoming-empty{border-radius:var(--radius-md)}.metrics>article{transition:transform .15s,border-color .15s,box-shadow .15s;position:relative;overflow:hidden}.metrics>article:after{content:"";opacity:0;background:linear-gradient(90deg,#0000,#0ea5e957,#10b98166,#0000);height:2px;transition:opacity .15s;position:absolute;inset:0 0 auto}.metrics>article:hover{border-color:color-mix(in srgb, var(--brand-blue) 25%, var(--color-border-subtle));transform:translateY(-2px);box-shadow:0 14px 34px #0f172a14}.metrics>article:hover:after{opacity:1}.metrics .featured{border-color:color-mix(in srgb, var(--brand-green) 28%, var(--color-border-subtle));background:radial-gradient(circle at 100% 0%, #0ea5e914, transparent 55%), linear-gradient(135deg, var(--color-surface) 42%, var(--color-surface-accent))}.metrics article>div,.page-heading p,.title p,.project-meta small,.transactions small,.dashboard-empty,.upcoming article p{color:var(--color-text-secondary)}.page-heading label,.title a,.title button,.upcoming article>span>small{color:var(--color-action-primary)}.page-heading h1,.title h2,.ai-title h2,.project h3,.dashboard-empty b{color:var(--color-text-primary)}.month-chip{border-radius:var(--radius-md);color:var(--color-text-primary);transition:border-color .14s,background .14s}.month-chip:hover{border-color:var(--color-border-default);background:var(--color-surface-hover)}.dashboard-empty{border-radius:var(--radius-md);background:linear-gradient(#0000,#0ea5e906)}.dashboard-empty>svg{color:var(--brand-blue)}.transactions .dashboard-empty{border-top-color:var(--color-border-subtle)}.target{background:var(--color-action-primary-soft);color:var(--color-action-primary)}.progress{background:var(--color-surface-recessed)}.progress i{background:var(--brand-gradient)}.forecast{border:1px solid color-mix(in srgb, var(--brand-green) 16%, var(--color-border-subtle));background:var(--color-surface-accent);color:var(--color-action-primary)}.forecast small{color:var(--color-text-secondary)}.income,.money-positive,.amount-positive,.positive{color:var(--color-positive)!important}.money-negative,.amount-negative,.negative,.expense{color:var(--color-negative)!important}.insight{background:radial-gradient(circle at 100% 0%, #0ea5e92e, transparent 42%), radial-gradient(circle at 0% 100%, #10b98126, transparent 44%), var(--brand-navy);color:var(--brand-white);border-color:#0ea5e92e;position:relative;overflow:hidden;box-shadow:0 18px 46px #0f172a29}.insight .ai-title>i{color:#6ee7b7;background:#ffffff17}.insight .ai-title p,.insight>p,.insight-source{color:#cbd5e1}.insight-source svg{color:#38bdf8}.insight>button{color:var(--brand-navy);background:#ffffffed;border:1px solid #ffffff24}.insight .dismiss{color:#cbd5e1;background:0 0;border-color:#0000}.backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised)}.modal-top p{color:var(--color-text-secondary)}.toast{border-radius:var(--radius-md);background:var(--brand-navy-soft);color:var(--brand-white);box-shadow:var(--shadow-raised);border:1px solid #ffffff17}.toast b{background:var(--color-positive-soft);color:var(--color-positive)}.dashboard-data-note{border-color:color-mix(in srgb, var(--color-warning) 24%, var(--color-border-subtle));background:var(--color-warning-soft);color:var(--color-warning)}@media (max-width:900px){.bottom-nav{border-top-color:var(--color-border-subtle);background:color-mix(in srgb, var(--color-surface) 94%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 -10px 30px #0f172a0f}.bottom-nav a,.bottom-nav button{color:var(--color-text-secondary)}.bottom-nav .active{color:var(--color-action-primary)}.bottom-nav .mobile-nav-add-circle{border-color:var(--color-canvas);background:var(--brand-gradient);box-shadow:0 10px 28px #0ea5e93d}}:root[data-theme=dark] .metrics>article:hover,:root[data-theme=dark] .card,:root[data-theme=dark] .upcoming article,:root[data-theme=dark] .modal{box-shadow:0 12px 30px #0000002e}:root[data-theme=dark] .insight{background:radial-gradient(circle at 100% 0,#0ea5e929,#0000 42%),radial-gradient(circle at 0 100%,#10b9811f,#0000 44%),#081522;border-color:#38bdf82e}@media (prefers-color-scheme:dark){:root:not([data-theme]) .metrics>article:hover,:root:not([data-theme]) .card,:root:not([data-theme]) .upcoming article,:root:not([data-theme]) .modal{box-shadow:0 12px 30px #0000002e}}@media (prefers-reduced-motion:reduce){.primary,.auth-submit,.metrics>article{transition:none}.primary:hover,.auth-submit:hover,.metrics>article:hover{transform:none}}
.transactions-page,.categories-page{position:relative}.transactions-heading h1,.categories-heading h1{color:var(--color-text-primary)}.transactions-heading>div:first-child label,.categories-heading>div label{color:var(--brand-green-strong)}.transaction-summary article,.category-overview article,.transaction-panel,.category-panel,.planned-panel-heading,.planned-list,.forecast-card{border-color:var(--color-border-subtle);background:var(--color-surface-raised);box-shadow:var(--shadow-surface)}.transaction-summary article:first-child,.category-overview article:first-child{background:linear-gradient(var(--color-surface-raised), var(--color-surface-raised)) padding-box, var(--brand-gradient) border-box;border:1px solid #0000}.transaction-toolbar,.category-toolbar,.forecast-heading{background:color-mix(in srgb, var(--color-surface-raised) 94%, var(--brand-blue-soft))}.transaction-search,.transaction-filters label,.category-search,.category-sort,.smart-select-trigger,.category-editor-modal input,.category-editor-modal select,.category-merge-modal select{border-color:var(--color-border-default);background:var(--color-surface);color:var(--color-text-primary)}.transaction-search:focus-within,.category-search:focus-within,.smart-select-trigger:focus-visible,.category-editor-modal input:focus,.category-editor-modal select:focus,.category-merge-modal select:focus{border-color:var(--color-focus);box-shadow:var(--shadow-brand-focus);outline:none}.transaction-header,.category-header,.filter-status{background:var(--color-surface-recessed);color:var(--color-text-tertiary)}.transaction-row,.category-row{border-color:var(--color-border-subtle)}.transaction-row-button{background:var(--color-surface);color:var(--color-text-primary)}.transaction-row-button:hover,.category-actions button:hover{background:var(--color-surface-hover)}.transaction-name>i,.category-type-readonly,.category-share>div,.transaction-row em{background:var(--color-surface-recessed)}.transaction-name>i.income,.planned-row.income>i,.forecast-event.income{background:var(--color-positive-soft);color:var(--color-positive)}.transaction-row b.income,.planned-row>strong.income,.forecast-summary b.income,.forecast-agenda-row.income>strong{color:var(--color-positive)!important}.planned-row>strong.expense,.forecast-event.expense,.forecast-agenda-row.expense>strong,.forecast-summary b.negative{color:var(--color-negative)!important}.category-tabs,.transactions-view-tabs{border-color:var(--color-border-subtle)}.category-tabs button.active{border-bottom-color:var(--brand-blue);color:var(--brand-blue-strong)}.transactions-view-tabs button.active,.planned-panel-heading>div>svg,.forecast-heading-icon,.planned-entry-note>svg{color:var(--brand-green-strong)}.forecast-heading-icon{background:var(--brand-gradient-soft)}.forecast-day.today{box-shadow:inset 0 0 0 2px var(--brand-blue)}.forecast-day.today .forecast-day-number{background:var(--brand-gradient);color:#fff}.forecast-event.savings,.planned-row.savings>i,.transaction-name>i.transfer{background:var(--color-action-primary-soft);color:var(--color-action-primary)}.forecast-calendar-weekdays{background:color-mix(in srgb, var(--color-surface-recessed) 90%, var(--brand-blue-soft))}.forecast-card{box-shadow:0 16px 40px #0f172a12}.category-share>div i{background:var(--brand-gradient)}.category-actions>div,.smart-select-popover{border-color:var(--color-border-default);background:var(--color-surface-raised);box-shadow:var(--shadow-raised)}.category-empty>svg,.transactions-empty svg,.forecast-empty svg{color:var(--brand-blue)}.category-empty button,.transactions-empty button,.smart-select-create,.filter-status button{color:var(--brand-green-strong)}.merge-icon,.confirm-icon{background:var(--brand-gradient-soft);color:var(--brand-green-strong)}@media (max-width:900px){.transactions-page,.categories-page{padding-top:22px}}:root[data-theme=dark] .transaction-toolbar,:root[data-theme=dark] .category-toolbar,:root[data-theme=dark] .forecast-heading,:root[data-theme=dark] .forecast-calendar-weekdays{background:color-mix(in srgb, var(--color-surface-raised) 92%, #0ea5e9 8%)}@media (prefers-reduced-motion:reduce){.transaction-row-button,.category-row,.forecast-day{transition:none}}
.route-loading{background:radial-gradient(circle at 25% 15%, #0ea5e91f, transparent 34%), radial-gradient(circle at 76% 72%, #10b9811f, transparent 38%), var(--color-canvas);color:var(--color-text-primary)}.route-loading>span:last-child{color:var(--color-text-secondary)}.brand-route-loader,.brand-spark-loader{border:1px solid var(--color-border-subtle);background:var(--color-surface-raised);width:88px;height:88px;color:var(--brand-green-strong);box-shadow:var(--shadow-brand-raised);border-radius:26px;place-items:center;display:grid;position:relative}.brand-route-loader svg,.brand-spark-loader svg{width:34px;height:34px}.brand-route-loader:before,.brand-spark-loader:before{content:"";z-index:-1;border-radius:inherit;background:var(--brand-gradient);opacity:.22;filter:blur(12px);position:absolute;inset:-1px}.brand-route-loader i{background:var(--brand-gradient);transform-origin:0;border-radius:999px;width:28px;height:4px;animation:1.45s ease-in-out infinite route-forward;position:absolute;bottom:13px;right:12px}.brand-spark-loader i{background:var(--brand-blue);border-radius:50%;width:7px;height:7px;animation:1.3s ease-in-out infinite brand-twinkle;position:absolute}.brand-spark-loader i:first-of-type{top:17px;right:18px}.brand-spark-loader i:last-of-type{background:var(--brand-green);animation-delay:.32s;bottom:17px;left:18px}@keyframes route-forward{0%,to{opacity:.45;transform:scaleX(.45)}50%{opacity:1;transform:scaleX(1)}}@keyframes brand-twinkle{0%,to{opacity:.3;transform:scale(.4)}50%{opacity:1;transform:scale(1.35)}}@media (prefers-reduced-motion:reduce){.brand-route-loader i,.brand-spark-loader i{opacity:1;animation:none}}
:where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}:where(button,a,input,select,textarea,summary):disabled,:where(button,a)[aria-disabled=true]{cursor:not-allowed;opacity:.55}:where(.primary,.modal-action,.month-chip,.sidebar nav>a,.sidebar footer>a,.bottom-nav a,.bottom-nav button){-webkit-tap-highlight-color:transparent}.primary,.modal-action,.month-chip,.transaction-pagination button,.sidebar-mobile-close,.sidebar-collapse{min-height:40px}.transaction-pagination button,.sidebar-mobile-close,.sidebar-collapse,.category-actions summary{min-width:40px}:where(.card,.transaction-panel,.category-panel,.forecast-card,.planned-list,.planned-panel-heading){border-radius:var(--radius-md)}:where(.modal,.auth-card){border-radius:var(--radius-lg)}:where(.primary,.modal-action,input,select,textarea,.smart-select-trigger){transition:border-color .14s,background-color .14s,color .14s,box-shadow .14s,transform .14s}.primary:hover:not(:disabled){transform:translateY(-1px)}.primary:active:not(:disabled){transform:translateY(0)}:where(input,select,textarea)::placeholder{color:var(--color-text-tertiary)}:where(input,select,textarea)[aria-invalid=true]{border-color:var(--color-negative)!important}@media (max-width:900px){.bottom-nav a,.bottom-nav button{min-height:48px}.sidebar nav>a,.sidebar nav>button,.sidebar footer>a,.sidebar footer>button{min-height:44px}}:root[data-theme=dark] :where(input,select,textarea,.smart-select-trigger){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}:where(.primary,.modal-action,input,select,textarea,.smart-select-trigger){transition-duration:.01ms!important}.primary:hover:not(:disabled){transform:none}}
