:root{--bg: #fafafa;--surface: #ffffff;--surface-alt: #f4f4f5;--surface-hover: #efeff1;--border: rgba(9, 9, 11, .09);--border-strong: rgba(9, 9, 11, .16);--text: #09090b;--text-muted: #52525b;--text-faint: #8b8b95;--accent: #4f46e5;--accent-hover: #4338ca;--accent-soft: rgba(79, 70, 229, .09);--accent-ring: rgba(79, 70, 229, .35);--accent-contrast: #ffffff;--income: #047857;--income-soft: rgba(4, 120, 87, .1);--expense: #be123c;--expense-soft: rgba(190, 18, 60, .09);--warn: #a16207;--warn-soft: rgba(161, 98, 7, .1);--chart-1: #2a78d6;--chart-2: #eb6834;--chart-3: #1baf7a;--chart-4: #eda100;--chart-5: #e87ba4;--chart-6: #008300;--grid: rgba(9, 9, 11, .07);--axis: #8b8b95;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 18px;--shadow-xs: 0 1px 2px rgba(9, 9, 11, .05);--shadow-sm: 0 1px 3px rgba(9, 9, 11, .07), 0 1px 2px rgba(9, 9, 11, .04);--shadow-md: 0 4px 16px rgba(9, 9, 11, .08);--shadow-lg: 0 16px 48px rgba(9, 9, 11, .14);--ease: cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--bg: #09090b;--surface: #111113;--surface-alt: #18181b;--surface-hover: #1f1f23;--border: rgba(255, 255, 255, .07);--border-strong: rgba(255, 255, 255, .14);--text: #fafafa;--text-muted: #a1a1aa;--text-faint: #71717a;--accent: #818cf8;--accent-hover: #a5b4fc;--accent-soft: rgba(129, 140, 248, .13);--accent-ring: rgba(129, 140, 248, .4);--accent-contrast: #0b0b12;--income: #34d399;--income-soft: rgba(52, 211, 153, .13);--expense: #fb7185;--expense-soft: rgba(251, 113, 133, .13);--warn: #fbbf24;--warn-soft: rgba(251, 191, 36, .13);--chart-1: #3987e5;--chart-2: #d95926;--chart-3: #199e70;--chart-4: #c98500;--chart-5: #d55181;--chart-6: #008300;--grid: rgba(255, 255, 255, .06);--axis: #71717a;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5);--shadow-md: 0 4px 20px rgba(0, 0, 0, .5);--shadow-lg: 0 24px 64px rgba(0, 0, 0, .7)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}h1,h2,h3,h4{letter-spacing:-.018em;font-weight:650;line-height:1.25}h3{font-size:.975rem;margin:0 0 2px}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.app-shell{min-height:100vh}.tabular{font-variant-numeric:tabular-nums}.topbar{background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.topbar-inner{max-width:1240px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:9px;font-weight:640;font-size:.975rem;letter-spacing:-.02em}.brand-mark{width:26px;height:26px;border-radius:7px;background:var(--accent);display:flex;align-items:center;justify-content:center;color:var(--accent-contrast);flex-shrink:0}.topbar-actions{display:flex;align-items:center;gap:4px}.user-menu{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-muted);padding-right:8px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn{border:none;background:transparent;color:var(--text-muted);border-radius:var(--r-sm);width:32px;height:32px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s var(--ease),color .15s var(--ease);flex-shrink:0}.icon-btn:hover{background:var(--surface-hover);color:var(--text)}.icon-btn:active{transform:scale(.94)}.primary-nav-row{max-width:1240px;margin:0 auto;padding:0 24px 12px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.segmented{display:inline-flex;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--r-md);padding:3px;gap:2px}.segmented button{border:1px solid transparent;background:transparent;color:var(--text-muted);padding:6px 14px;border-radius:7px;font-weight:550;font-size:.83rem;cursor:pointer;transition:all .15s var(--ease);white-space:nowrap;font-family:inherit}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--surface);border-color:var(--border);color:var(--text);box-shadow:var(--shadow-xs)}.period-switcher{display:flex;align-items:center;gap:2px;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--r-md);padding:3px}.period-label{min-width:132px;text-align:center;font-weight:550;font-size:.83rem;font-variant-numeric:tabular-nums}.subnav{max-width:1240px;margin:0 auto;padding:0 24px;display:flex;gap:2px;border-bottom:1px solid var(--border)}.subnav-btn{border:none;background:none;padding:9px 12px;cursor:pointer;font-size:.84rem;font-weight:500;color:var(--text-muted);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s var(--ease),border-color .15s var(--ease);font-family:inherit}.subnav-btn:hover{color:var(--text)}.subnav-btn.active{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.main-content{max-width:1240px;margin:0 auto;padding:28px 24px 64px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;margin-bottom:18px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.section-head h2{font-size:1.15rem;margin:0 0 2px}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:18px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:18px;transition:border-color .15s var(--ease)}.card:hover{border-color:var(--border-strong)}.card-top{display:flex;align-items:center;gap:8px;margin-bottom:12px}.card-icon{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-alt);color:var(--text-muted);flex-shrink:0}.card.income .card-icon{background:var(--income-soft);color:var(--income)}.card.expense .card-icon{background:var(--expense-soft);color:var(--expense)}.card.net .card-icon{background:var(--accent-soft);color:var(--accent)}.card-label{color:var(--text-muted);font-size:.8rem;font-weight:500}.card-value{font-size:1.75rem;font-weight:640;letter-spacing:-.03em;line-height:1.1;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card-sub{font-size:.78rem;color:var(--text-faint);margin-top:6px}.card.income .card-value{color:var(--income)}.card.expense .card-value{color:var(--expense)}.card.net.positive .card-value{color:var(--income)}.card.net.negative .card-value{color:var(--expense)}.trend-pill{display:inline-flex;align-items:center;gap:3px;font-size:.72rem;font-weight:600;padding:3px 7px;border-radius:999px;letter-spacing:0;background:var(--surface-alt);color:var(--text-muted)}.trend-pill.up{background:var(--income-soft);color:var(--income)}.trend-pill.down{background:var(--expense-soft);color:var(--expense)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dashboard-grid .full-width{grid-column:1 / -1}@media (max-width: 860px){.dashboard-grid{grid-template-columns:1fr}}.reverify-banner{display:flex;align-items:center;gap:10px;padding:11px 15px;margin-bottom:18px;border-radius:var(--r-md);background:var(--warn-soft);border:1px solid color-mix(in srgb,var(--warn) 35%,transparent);color:var(--warn);font-size:.85rem;font-weight:500;flex-wrap:wrap}.reverify-banner svg{flex-shrink:0}.reverify-banner .link-btn{color:var(--warn);text-decoration:underline;margin-left:auto}.insights-list{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.insight-card{display:flex;align-items:center;gap:10px;padding:12px 15px;border-radius:var(--r-md);font-size:.86rem;font-weight:500;border:1px solid var(--border);background:var(--surface);color:var(--text)}.insight-icon{flex-shrink:0;display:inline-flex}.insight-card.warning .insight-icon{color:var(--warn)}.insight-card.danger .insight-icon{color:var(--expense)}.insight-card.positive .insight-icon{color:var(--income)}.budget-list{display:flex;flex-direction:column;gap:15px}.budget-row-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:.85rem;gap:10px}.budget-row-header>span:first-child{display:inline-flex;align-items:center;gap:7px;font-weight:500}.budget-row-header>span:last-child{font-variant-numeric:tabular-nums;color:var(--text-muted);font-weight:500}.over-budget{color:var(--expense)!important;font-weight:600!important}.progress-track{background:var(--surface-alt);border-radius:999px;height:6px;overflow:hidden}.progress-fill{height:100%;border-radius:999px;transition:width .5s var(--ease)}.empty-hint{color:var(--text-muted);font-size:.86rem}.error-box{background:var(--expense-soft);border:1px solid color-mix(in srgb,var(--expense) 35%,transparent);color:var(--expense);padding:10px 14px;border-radius:var(--r-md);margin-bottom:16px;font-size:.86rem;font-weight:500}.loading{color:var(--text-faint);padding:56px;text-align:center;font-size:.9rem}.empty-state{text-align:center;padding:56px 20px;color:var(--text-muted)}.empty-state-icon{color:var(--text-faint);margin-bottom:12px;display:flex;justify-content:center}.form-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px}.form-row label,.auth-card label{display:flex;flex-direction:column;gap:5px;font-size:.78rem;color:var(--text-muted);font-weight:500}.form-row label.grow{flex:1;min-width:200px}input,select{font:inherit;font-size:.875rem;padding:8px 11px;border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--text);transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}input[type=number]{font-variant-numeric:tabular-nums}input::placeholder{color:var(--text-faint)}input:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}input[type=color]{padding:2px;cursor:pointer}.form-actions{display:flex;gap:8px;flex-wrap:wrap}.primary-btn,.secondary-btn,.danger-btn{font:inherit;font-size:.85rem;font-weight:550;padding:8px 16px;border-radius:var(--r-sm);cursor:pointer;transition:all .15s var(--ease);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.primary-btn{background:var(--accent);color:var(--accent-contrast);border:1px solid transparent}.primary-btn:hover:not(:disabled){background:var(--accent-hover)}.secondary-btn{background:var(--surface);border:1px solid var(--border-strong);color:var(--text)}.secondary-btn:hover:not(:disabled){background:var(--surface-hover)}.danger-btn{background:var(--expense);color:#fff;border:1px solid transparent}.primary-btn:disabled,.secondary-btn:disabled,.danger-btn:disabled{opacity:.5;cursor:not-allowed}.primary-btn:active:not(:disabled),.secondary-btn:active:not(:disabled){transform:scale(.98)}.link-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 6px;font-size:.82rem;font-weight:500;font-family:inherit;border-radius:var(--r-sm);transition:color .15s var(--ease),background .15s var(--ease)}.link-btn:hover{color:var(--text);background:var(--surface-hover)}.link-btn.danger:hover{color:var(--expense);background:var(--expense-soft)}.data-table{width:100%;border-collapse:collapse;font-size:.86rem}.data-table th{text-align:left;color:var(--text-faint);font-weight:500;font-size:.75rem;padding:0 12px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:11px 12px;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}.data-table tbody tr{transition:background .12s var(--ease)}.data-table tbody tr:hover{background:var(--surface-alt)}.data-table tbody tr:last-child td{border-bottom:none}.align-right{text-align:right}.text-income{color:var(--income);font-weight:550}.text-expense{color:var(--expense);font-weight:550}.row-actions{white-space:nowrap;text-align:right}.cell-with-icon{display:inline-flex;align-items:center;gap:8px}.color-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.category-icon{display:inline-flex;align-items:center;color:var(--text-muted);flex-shrink:0}.budget-input{width:108px}.budget-progress-cell{min-width:130px}.checkbox-label{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:.83rem;color:var(--text-muted)}.checkbox-label input{accent-color:var(--accent);width:15px;height:15px;cursor:pointer}.filter-row{display:flex;gap:8px;margin:14px 0;flex-wrap:wrap}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#09090b8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:50;display:flex;justify-content:flex-end;animation:fade-in .15s var(--ease)}@keyframes fade-in{0%{opacity:0}}@keyframes slide-in{0%{transform:translate(16px);opacity:0}}.drawer{background:var(--bg);width:min(440px,100%);height:100%;overflow-y:auto;padding:22px;border-left:1px solid var(--border);animation:slide-in .2s var(--ease)}.drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.drawer-head h3{font-size:1.05rem}.category-row{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid var(--border)}.category-row input[type=text]{flex:1;min-width:0}.category-row input[type=color]{width:30px;height:30px;border-radius:var(--r-sm);flex-shrink:0}.category-type-heading{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);font-weight:600;margin:22px 0 6px}.account-actions{display:flex;flex-direction:column;gap:8px;align-items:stretch}.account-actions .secondary-btn{justify-content:flex-start}.secondary-btn.danger-outline{color:var(--expense);border-color:color-mix(in srgb,var(--expense) 40%,transparent)}.secondary-btn.danger-outline:hover:not(:disabled){background:var(--expense-soft)}.confirm-box{background:var(--warn-soft);border:1px solid color-mix(in srgb,var(--warn) 35%,transparent);border-radius:var(--r-md);padding:14px;margin-top:10px;font-size:.84rem}.goal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:18px}.goal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;transition:border-color .15s var(--ease)}.goal-card:hover{border-color:var(--border-strong)}.goal-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:16px}.goal-name{font-size:1rem;font-weight:620;letter-spacing:-.015em}.goal-target-date{color:var(--text-muted);font-size:.79rem;margin-top:1px}.goal-ring-row{display:flex;align-items:center;gap:18px;margin-bottom:14px}.goal-stats{flex:1;display:flex;flex-direction:column;gap:7px;min-width:0}.goal-stat-line{display:flex;justify-content:space-between;font-size:.82rem;gap:10px}.goal-stat-line span:first-child{color:var(--text-muted)}.goal-stat-line span:last-child{font-weight:550;font-variant-numeric:tabular-nums}.goal-status{display:inline-flex;align-items:center;gap:6px;font-size:.79rem;font-weight:550;padding:5px 11px;border-radius:var(--r-sm)}.goal-status.on-track{background:var(--income-soft);color:var(--income)}.goal-status.behind{background:var(--warn-soft);color:var(--warn)}.account-groups{display:grid;grid-template-columns:1fr 1fr;gap:18px}.account-list{display:flex;flex-direction:column}.account-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--border)}.account-row:last-child{border-bottom:none}.account-icon{width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-alt);color:var(--text-muted);flex-shrink:0}.account-row-main{flex:1;min-width:0}.account-row-name{font-weight:550;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-row-type{font-size:.75rem;color:var(--text-faint)}.tvm-table{min-width:620px}.tvm-table th:first-child,.tvm-table td:first-child{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:550}.tvm-table tbody tr:hover td:first-child{background:var(--surface-alt)}.tvm-col-head{display:flex;align-items:center;justify-content:flex-end;gap:5px}.tvm-swatch{width:8px;height:8px;border-radius:2px;flex-shrink:0}.tvm-col-suffix{font-size:.72rem;color:var(--text-faint)}.tvm-header-input{width:84px;text-align:right;font-weight:600;font-size:.82rem;padding:5px 8px}.tvm-remove-col{padding:0 3px;line-height:1}.scroll-x{overflow-x:auto;margin:0 -20px;padding:0 20px}.chart-note{font-size:.78rem;color:var(--text-faint);margin:12px 0 0;line-height:1.5}.recharts-cartesian-axis-tick text{font-variant-numeric:tabular-nums}.recharts-surface:focus{outline:none}.chart-tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);padding:9px 11px;box-shadow:var(--shadow-md);font-size:.8rem}.chart-tooltip-label{color:var(--text-faint);font-size:.73rem;margin-bottom:5px;font-weight:500}.chart-tooltip-row{display:flex;align-items:center;gap:7px;padding:2px 0;color:var(--text)}.chart-tooltip-row .swatch{width:8px;height:8px;border-radius:2px;flex-shrink:0}.chart-tooltip-row .name{color:var(--text-muted);margin-right:auto}.chart-tooltip-row .value{font-weight:600;font-variant-numeric:tabular-nums}.overlay.center{align-items:center;justify-content:center}.import-modal{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-xl);width:min(880px,100%);max-height:90vh;overflow-y:auto;padding:22px;margin:auto;box-shadow:var(--shadow-lg);animation:slide-in .2s var(--ease)}.dropzone{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px;padding:44px 20px;border:1.5px dashed var(--border-strong);border-radius:var(--r-lg);background:var(--surface);color:var(--text-muted);cursor:pointer;font:inherit;text-align:center;transition:border-color .15s var(--ease),background .15s var(--ease)}.dropzone:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.dropzone strong{color:var(--text);font-size:.95rem}.dropzone .empty-hint{max-width:380px}.import-summary{display:flex;align-items:center;gap:18px;padding:12px 15px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:14px;font-size:.86rem;font-variant-numeric:tabular-nums;flex-wrap:wrap}.import-rows{max-height:46vh;overflow-y:auto;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.import-rows table{font-size:.82rem}.import-rows thead th{position:sticky;top:0;background:var(--surface);z-index:1;padding-top:10px}.import-rows select{font-size:.8rem;padding:4px 7px}.import-done{text-align:center;padding:28px 10px}.import-done-icon{width:52px;height:52px;border-radius:50%;background:var(--income-soft);color:var(--income);display:flex;align-items:center;justify-content:center;margin:0 auto 14px}@media (max-width: 680px){.import-modal{border-radius:var(--r-lg);padding:16px;max-height:100vh;height:100%}.import-rows{max-height:50vh}}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:32px;width:100%;max-width:380px;box-shadow:var(--shadow-md)}.auth-card h2{font-size:1.25rem;text-align:center;margin:0 0 20px}.auth-card .primary-btn{width:100%;justify-content:center;padding:10px 16px}.auth-switch{text-align:center;color:var(--text-muted);font-size:.84rem;margin:14px 0 0}.auth-disclaimer{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--border);font-size:.74rem;line-height:1.5;color:var(--text-faint);text-align:center}.auth-switch .link-btn{color:var(--accent);font-weight:550}.auth-switch .link-btn:hover{color:var(--accent-hover);background:transparent;text-decoration:underline}.stack-gap-sm{display:flex;flex-direction:column;gap:12px}.bottom-tab-bar{display:none}@media (max-width: 860px){.account-groups{grid-template-columns:1fr}}@media (max-width: 680px){.topbar-inner,.primary-nav-row,.subnav{padding-left:16px;padding-right:16px}.topbar-inner{padding-top:10px;padding-bottom:10px}.main-content{padding:20px 16px 92px}.user-menu,.primary-nav-row .segmented{display:none}.primary-nav-row{justify-content:center;padding-bottom:10px}.period-switcher{width:100%;justify-content:space-between}.bottom-tab-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));justify-content:space-around}.bottom-tab-bar button{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;background:none;border:none;color:var(--text-faint);font-size:.66rem;font-weight:500;padding:7px 2px;border-radius:var(--r-sm);font-family:inherit;transition:color .15s var(--ease);cursor:pointer}.bottom-tab-bar button.active{color:var(--accent)}.subnav{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.subnav::-webkit-scrollbar{display:none}.subnav-btn{flex-shrink:0}.summary-cards{grid-template-columns:1fr 1fr;gap:10px}.card{padding:14px}.card-value{font-size:1.35rem}.card-top{margin-bottom:9px}.panel{padding:16px}.scroll-x{margin:0 -16px;padding:0 16px}.form-row{flex-direction:column;gap:12px}.form-row label,.form-row label.grow{min-width:0;width:100%}.goal-grid{grid-template-columns:1fr}.goal-ring-row{flex-wrap:wrap}.responsive-table thead{display:none}.responsive-table,.responsive-table tbody,.responsive-table tr,.responsive-table td{display:block;width:100%}.responsive-table tr{border:1px solid var(--border);border-radius:var(--r-md);padding:6px 13px;margin-bottom:9px;background:var(--surface)}.responsive-table tbody tr:hover{background:var(--surface)}.responsive-table td{border-bottom:none;padding:6px 0;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:right}.responsive-table td[data-label]:before{content:attr(data-label);font-size:.75rem;font-weight:500;color:var(--text-faint);text-align:left;flex-shrink:0}.responsive-table td.row-actions{justify-content:flex-end;padding-top:7px;border-top:1px solid var(--border);margin-top:3px}.responsive-table .budget-input{width:104px}}@media (max-width: 420px){.summary-cards{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
