:root{color:#e6edf3;font-synthesis:none;--bg:#0d1117;--panel:#161b22;--panel-muted:#0d1117;--border:#30363d;--text:#e6edf3;--muted:#8b949e;--blue:#2f81f7;--green:#3fb950;--red:#f85149;--orange:#d29922;--purple:#a371f7;background:#0d1117;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body,#root{background:var(--bg);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,select,label,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:20;background:#010409;border-bottom:1px solid #21262d;height:68px;padding:0;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;width:min(1600px,100% - 40px);height:100%;margin:0 auto;display:flex}.topbar-left,.brand,.primary-nav,.topbar-actions,.merchant-cell,.notice,.bulk-bar{align-items:center;display:flex}.topbar-left{align-self:stretch;gap:clamp(12px,2.5vw,34px);min-width:0}.topbar-actions{gap:8px}.brand{gap:10px}.primary-nav{align-self:stretch;gap:24px}.brand-mark{border:1px solid var(--border);width:34px;height:34px;color:var(--muted);background:var(--panel);border-radius:6px;place-items:center;font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace;display:grid}.brand strong,.brand span{display:block}.brand strong{font-size:14px;line-height:1.2}.brand span{color:var(--muted);margin-top:2px;font:10px ui-monospace,SFMono-Regular,Menlo,monospace}.local-pill{color:var(--muted);font:11px ui-monospace,SFMono-Regular,Menlo,monospace}.local-pill i{background:var(--green);border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block;box-shadow:0 0 0 3px #3fb9501a}.shared-pill{color:#79c0ff;background:#2f81f71a;border:1px solid #2f81f773;border-radius:20px;align-items:center;gap:6px;height:30px;padding:0 9px;font-size:11px;display:inline-flex}.topbar-button{border:1px solid var(--border);color:#c9d1d9;cursor:pointer;background:#161b22;border-radius:6px;align-items:center;gap:7px;height:34px;padding:0 10px;font-size:11px;display:inline-flex}.topbar-button:hover{color:#f0f6fc;border-color:#8b949e}.primary-nav .topbar-button{height:68px;color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;padding:0 3px;font-size:14px;font-weight:600}.primary-nav .topbar-button:hover{color:var(--text);background:0 0;border-bottom-color:#484f58}.primary-nav .topbar-button.active{border-bottom-color:var(--blue);color:#79c0ff;background:0 0}.primary-nav .topbar-button.has-disputes{border-bottom-color:var(--orange);color:#e3b341;background:0 0}.nav-alert{background:var(--orange);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace;display:inline-grid}.topbar-button.icon-only{justify-content:center;width:34px;padding:0}.user-logout-button{border:1px solid var(--border);background:var(--panel);max-width:240px;height:34px;color:var(--text);cursor:pointer;border-radius:20px;align-items:center;gap:7px;padding:0 9px;font-size:11px;display:inline-flex}.user-logout-button:hover{border-color:#8b949e}.user-logout-button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-logout-button svg:first-child{color:var(--muted);flex:none}.user-logout-button svg:last-child{color:var(--muted);flex:none;margin-left:2px}.user-pill{border:1px solid var(--border);max-width:210px;height:30px;color:var(--text);border-radius:20px;align-items:center;gap:6px;padding:0 9px;font-size:11px;display:inline-flex}.user-pill span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-pill svg{color:var(--muted);flex:none}main{flex-direction:column;flex:1;width:min(1600px,100% - 40px);margin:0 auto;padding:28px 0 56px;display:flex}.page-header{justify-content:space-between;align-items:end;margin-bottom:20px;display:flex}.page-kicker,.family-dashboard-title p{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 5px;font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace}.path-label{color:var(--blue);margin:0 0 5px;font:11px ui-monospace,SFMono-Regular,Menlo,monospace}h1,h2,h3{margin:0}h1{font-size:24px;line-height:1.3}h2{font:600 13px ui-monospace,SFMono-Regular,Menlo,monospace}.page-header>span{color:var(--muted);font:11px ui-monospace,SFMono-Regular,Menlo,monospace}.notice{border:1px solid;border-radius:6px;gap:10px;margin-bottom:16px;padding:9px 12px;font-size:12px}.notice.success{color:#7ee787;background:#2ea0431a;border-color:#3fb95059}.notice.error{color:#ff7b72;background:#f851491a;border-color:#f8514959}.notice>span{border:1px solid;border-radius:50%;place-items:center;width:19px;height:19px;font-size:10px;display:grid}.notice p{flex:1;margin:0}.notice button{cursor:pointer;opacity:.7;background:0 0;border:0;font-size:18px}.summary-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px;display:grid}.metric-card{background:var(--panel);border:1px solid var(--border);border-radius:6px;min-height:102px;padding:16px}.metric-card span,.metric-card strong,.metric-card small{display:block}.metric-card span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font:10px ui-monospace,SFMono-Regular,Menlo,monospace}.metric-card strong{letter-spacing:-.04em;margin:13px 0 5px;font:600 22px ui-monospace,SFMono-Regular,Menlo,monospace}.metric-card small{color:#6e7681;font-size:10px}.metric-card.dispute-alert{box-shadow:inset 3px 0 0 var(--orange);background:#d299221c;border-color:#d29922bf}.metric-card.dispute-alert span,.metric-card.dispute-alert strong{color:#e3b341}.metric-card.dispute-alert small{color:#c69026}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.family-dashboard{margin-bottom:18px}.family-dashboard-title{margin-bottom:14px}.family-matrix{border:1px solid var(--border);background:var(--panel);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden;box-shadow:0 4px 16px #01040924}.family-person-card,.family-result-card{min-width:0;padding:22px}.family-person-card{border-right:1px solid var(--border)}.family-person-card>header{align-items:center;gap:11px;margin-bottom:20px;display:flex}.family-person-card>header>span{color:#79c0ff;background:#2f81f724;border-radius:50%;place-items:center;width:40px;height:40px;font-weight:700;display:grid}.family-person-anna>header>span{color:#d2a8ff;background:#a371f724}.family-person-card h3,.family-result-card h3{margin:0;font-size:17px}.family-person-section{border:1px solid #8b949e29;border-radius:8px;padding:14px}.family-income-section{background:#2f81f709}.family-finance-row,.family-net-row,.family-paid-details>div,.family-deductions>button,.family-total{justify-content:space-between;align-items:center;gap:12px;display:flex}.family-finance-row{color:#c9d1d9;width:100%;font-size:14px}.family-finance-row strong,.family-paid-section strong,.family-total strong{color:var(--text);white-space:nowrap;font:600 13px ui-monospace,SFMono-Regular,Menlo,monospace}.family-metric-filter{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.family-metric-filter.family-finance-row{font-size:14px}.family-metric-filter:hover>span,.family-metric-filter:focus-visible>span{text-underline-offset:3px;text-decoration:underline}.family-metric-filter:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:2px}.family-deductions{border-left:2px solid #f8514933;gap:8px;margin:12px 0;padding-left:9px;display:grid}.family-deductions>button{color:var(--muted);font-size:12px}.family-deductions strong{color:var(--muted);white-space:nowrap;font:500 11px ui-monospace,SFMono-Regular,Menlo,monospace}.family-net-row{border-top:1px solid var(--border);padding-top:11px;font-size:13px;font-weight:700}.family-net-row strong{color:#79c0ff;white-space:nowrap;font:700 13px ui-monospace,SFMono-Regular,Menlo,monospace}.family-person-anna .family-net-row strong{color:#d2a8ff}.family-paid-section{background:#a371f709;margin-top:10px;font-size:13px;display:grid}.family-paid-details{border-left:2px solid #2f81f733;gap:8px;margin:12px 0;padding-left:9px;display:grid}.family-target-row{color:var(--muted);font-size:11px}.family-target-row strong{color:var(--muted);font:500 11px ui-monospace,SFMono-Regular,Menlo,monospace}.family-difference{font-weight:700}.family-person-card .family-net-row.family-difference strong{color:var(--text)!important}.family-result-card{background:var(--panel-muted);flex-direction:column;justify-content:space-between;gap:24px;display:flex}.family-result-card h3{align-items:center;gap:8px;margin-bottom:25px;display:flex}.ratio-labels{justify-content:space-between;gap:10px;font-size:11px;display:flex}.ratio-labels .khaled{color:#79c0ff}.ratio-labels .anna{color:#d2a8ff}.ratio-track{background:#21262d;border-radius:10px;height:11px;margin:9px 0 8px;display:flex;overflow:hidden}.ratio-track i{height:100%;display:block}.ratio-track .khaled{background:var(--blue)}.ratio-track .anna{background:var(--purple)}.family-result-card>div>small{color:var(--muted);text-align:center;font-size:9px;display:block}.family-totals{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:22px;margin-top:20px;padding-top:17px;display:grid}.family-calculation{min-width:0}.family-calculation h4{color:var(--text);margin:0 0 10px;font-size:12px}.family-calculation-person,.family-calculation-total{justify-content:space-between;align-items:center;gap:10px;display:flex}.family-calculation-person{color:var(--muted);margin:6px 0;font-size:10px}.family-calculation-person strong{color:var(--muted);white-space:nowrap;font:500 10px ui-monospace,SFMono-Regular,Menlo,monospace}.family-calculation-total{border-top:1px solid var(--border);margin-top:9px;padding-top:9px;font-size:10px;font-weight:700}.family-calculation-total span{color:var(--muted);letter-spacing:.05em;font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace}.family-calculation-total strong{color:var(--text);white-space:nowrap;font:600 12px ui-monospace,SFMono-Regular,Menlo,monospace}.settlement-card{background:#a371f717;border:1px solid #a371f747;border-radius:8px;padding:15px}.settlement-card p{color:#d2a8ff;letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:7px;margin:0 0 10px;font:700 11px ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.settlement-card>span{color:#e6ddff;font-size:14px;line-height:1.55}.settlement-card strong{color:#d2a8ff;white-space:nowrap;font-size:16px}.family-dispute-alert{border:1px solid #d2992273;border-left:4px solid var(--orange);color:#e3b341;background:#d299221a;border-radius:0 8px 8px 0;align-items:flex-start;gap:11px;margin-top:16px;padding:14px 16px;display:flex}.family-dispute-alert>svg{flex:none;margin-top:2px}.family-dispute-alert>div{width:100%;min-width:0}.family-dispute-alert header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.family-dispute-alert h3{color:#e3b341;align-items:center;gap:8px;font-size:13px;display:flex}.family-dispute-alert h3 b{background:var(--orange);color:#0d1117;border-radius:10px;place-items:center;min-width:20px;height:20px;padding:0 6px;font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace;display:inline-grid}.family-dispute-alert button{color:#e3b341;cursor:pointer;background:#d299221f;border:1px solid #d299224d;border-radius:5px;align-items:center;gap:4px;padding:6px 8px;font-size:10px;display:inline-flex}.family-dispute-alert button:hover{background:#d2992233}.family-dispute-alert ul{margin:0;padding:0;list-style:none}.family-dispute-alert li{color:#c69026;border-bottom:1px solid #d299222e;justify-content:space-between;gap:14px;padding:6px 0;font-size:11px;display:flex}.family-dispute-alert li:last-child{border-bottom:0}.family-dispute-alert li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.family-dispute-alert li strong{white-space:nowrap;font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace}.workspace-grid{flex:1;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:14px;display:grid}.workspace-grid.with-breakdown{grid-template-columns:minmax(0,1fr) 420px}.transactions-panel,.insights-panel{background:var(--panel);border:1px solid var(--border);border-radius:6px;overflow:visible}.transactions-panel{flex-direction:column;min-width:0;min-height:100%;display:flex}.panel-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:55px;padding:14px 16px;display:flex}.panel-tools{align-items:center;gap:8px;display:flex}.rules-count{border:1px solid var(--border);color:var(--muted);border-radius:20px;padding:4px 8px;font:9px ui-monospace,SFMono-Regular,Menlo,monospace}.breakdown-toggle{border:1px solid var(--border);color:#c9d1d9;cursor:pointer;background:#21262d;border-radius:6px;align-items:center;gap:7px;height:32px;padding:0 10px;font:10px ui-monospace,SFMono-Regular,Menlo,monospace;display:inline-flex}.breakdown-toggle:hover{border-color:#8b949e}.breakdown-toggle.active{border-color:var(--blue);color:#79c0ff;background:#2f81f71a}.reset-filters{color:#e3b341;cursor:pointer;background:#d2992214;border:1px solid #d299228c;border-radius:6px;align-items:center;gap:6px;height:32px;padding:0 10px;font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace;display:inline-flex}.reset-filters:hover{border-color:var(--orange);background:#d2992224}.sticky-controls{z-index:100;background:#0d1117;position:sticky;top:64px;overflow:visible;box-shadow:0 8px 18px #01040961}.filters{border-bottom:1px solid var(--border);background:#0d1117;flex-wrap:wrap;align-items:center;gap:10px;padding:14px;display:flex;position:relative;overflow:visible}.filters select,.search-field,.bulk-bar select,.month-trigger,.category-trigger{border:1px solid var(--border);height:42px;color:var(--text);background:#21262d;border-radius:6px;outline:none;font-size:13px}.filters select{min-width:170px;padding:0 32px 0 12px}.filters select:focus,.search-field:focus-within,.month-filter.open .month-trigger,.category-filter.open .category-trigger{border-color:var(--blue);box-shadow:0 0 0 3px #2f81f726}.search-field{background:var(--bg);flex:1;align-items:center;min-width:280px;padding:0 12px;display:flex}.search-field>svg{color:var(--muted);flex:none;margin-right:9px}.search-field input{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:13px}.search-field input::placeholder{color:#6e7681}.search-clear{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;place-items:center;padding:0;font-size:20px;line-height:1;display:grid}.search-clear:hover{color:var(--text);background:#21262d}.filters-locked{background:#0b0f14}.filters-locked .search-field,.filters-locked select,.filters-locked .month-trigger,.filters-locked .category-trigger{opacity:.58;cursor:not-allowed}.filters-locked .search-field input,.filters button:disabled,.filters select:disabled{cursor:not-allowed}.month-filter{z-index:102;position:relative}.month-trigger{cursor:pointer;align-items:center;gap:9px;min-width:180px;padding:0 12px;display:flex}.month-trigger>svg:first-child{color:var(--muted)}.month-trigger b{color:#79c0ff;text-align:center;background:#2f81f721;border-radius:12px;min-width:32px;margin-left:auto;padding:3px 6px;font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace}.month-trigger>svg:last-child{color:var(--muted)}.month-menu{z-index:30;border:1px solid var(--border);background:#161b22;border-radius:8px;width:430px;padding:14px;position:absolute;top:49px;left:0;box-shadow:0 12px 34px #010409cc}.month-menu-header{border-bottom:1px solid #21262d;justify-content:space-between;align-items:center;padding:2px 2px 9px;display:flex}.month-menu-header strong{font-size:13px}.month-grid{grid-template-columns:repeat(2,1fr);gap:8px;padding-top:12px;display:grid}.month-grid button{text-align:left;border:1px solid var(--border);color:#c9d1d9;cursor:pointer;text-transform:capitalize;background:#0d1117;border-radius:6px;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:8px;min-width:0;padding:11px 10px 11px 12px;display:grid}.month-grid button:hover{background:#1c2128;border-color:#8b949e}.month-grid button.selected{border-color:var(--blue);color:#79c0ff;background:#2f81f71a}.month-grid button span{font-size:13px}.month-grid button small{color:var(--muted);white-space:nowrap;font:9px ui-monospace,SFMono-Regular,Menlo,monospace}.month-grid button i{border:1px solid var(--border);width:15px;height:15px;color:var(--muted);border-radius:50%;place-items:center;font:9px ui-monospace,SFMono-Regular,Menlo,monospace;display:grid}.month-grid button.selected i{border-color:var(--blue);background:var(--blue);color:#fff}.category-filter{z-index:101;position:relative}.category-trigger{cursor:pointer;color:#f0f6fc;border-color:#484f58;align-items:center;gap:10px;min-width:255px;max-width:310px;padding:0 12px;font-size:14px;font-weight:600;display:flex}.category-trigger>svg:first-child{color:#8b949e;flex:none}.category-trigger span{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.category-trigger>svg:last-child{color:var(--muted);flex:none}.category-menu{z-index:32;background:#161b22;border:1px solid #484f58;border-radius:8px;width:310px;max-height:min(520px,100vh - 150px);padding:7px;position:absolute;top:49px;left:0;overflow-y:auto;box-shadow:0 14px 38px #010409d9}.category-menu-search{z-index:1;color:#8b949e;background:#0d1117;border:1px solid #484f58;border-radius:6px;align-items:center;gap:8px;height:42px;margin-bottom:7px;padding:0 9px;display:flex;position:sticky;top:0}.category-menu-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2f81f726}.category-menu-search input{color:#f0f6fc;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:14px}.category-menu-search input::placeholder{color:#6e7681}.category-menu-search button{color:#8b949e;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;place-items:center;width:27px;height:27px;padding:0;display:grid}.category-menu-search button:hover{color:#f0f6fc;background:#21262d}.category-menu>button{color:#e6edf3;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:25px 1fr 18px;align-items:center;gap:9px;width:100%;min-height:42px;padding:7px 9px;font-size:14px;display:grid}.category-menu>button:hover{background:#21262d}.category-menu>button.selected{color:#79c0ff;background:#2f81f71f}.category-menu>button>svg{color:#8b949e}.category-menu>button.selected>svg{color:#79c0ff}.category-menu-empty{color:#8b949e;text-align:center;padding:18px 10px;font-size:13px}.bulk-bar{border-bottom:1px solid var(--border);background:#2f81f714;gap:9px;min-height:58px;padding:8px 14px;font-size:12px}.bulk-bar strong{color:#79c0ff;margin-right:7px}.bulk-bar>button,.bulk-category-trigger{border:1px solid var(--border);cursor:pointer;background:#21262d;border-radius:6px;min-height:38px;padding:8px 12px;font-size:11px}.bulk-bar>button:hover,.bulk-category-trigger:hover{border-color:#8b949e}.bulk-category-picker{z-index:103;position:relative}.bulk-category-trigger{color:#e6edf3;text-align:left;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:8px;width:225px;display:grid}.bulk-category-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bulk-category-menu{background:#161b22;border:1px solid #484f58;border-radius:8px;width:310px;max-height:min(520px,100vh - 150px);padding:7px;position:absolute;top:46px;left:0;overflow-y:auto;box-shadow:0 14px 38px #010409d9}.bulk-category-menu>button{color:#e6edf3;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-height:42px;padding:7px 9px;font-size:14px;display:grid}.bulk-category-menu>button:hover{background:#21262d;border-color:#0000}.bulk-bar .clear-selection{color:#f0f6fc;background:#21262d;border:1px solid #484f58;min-height:42px;margin-left:auto;padding:9px 16px;font-size:13px;font-weight:600}.bulk-bar .clear-selection:hover{border-color:var(--blue);color:#79c0ff}.table-wrap{z-index:0;flex:1;position:relative;overflow-x:auto}.table-wrap:has(.row-category-picker.open){z-index:200;overflow:visible}table{border-collapse:collapse;width:100%;min-width:980px;font-size:12px}th{text-align:left;color:var(--muted);border-bottom:1px solid var(--border);background:#0d1117;height:36px}th button{cursor:pointer;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background:0 0;border:0;padding:9px 6px;font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace}th button:hover{color:var(--text)}td{vertical-align:middle;border-bottom:1px solid #21262d;padding:10px 7px}tbody tr:hover{background:#1c2128}tbody tr.selected-row{background:#2f81f714}tbody tr.disputed-row{box-shadow:inset 3px 0 0 var(--orange)}.checkbox-cell{text-align:center;width:50px;min-width:50px;padding:0 8px}.checkbox-cell input[type=checkbox]{accent-color:var(--blue);cursor:pointer;vertical-align:middle;width:20px;height:20px}tbody tr.null-row>td:not(.category-cell),tbody tr.null-row .row-category-picker>button{opacity:.58}tbody tr.null-row .amount-cell{text-decoration:line-through;color:var(--muted)!important}tbody tr:has(.row-category-picker.open){z-index:210;position:relative}.date-cell{color:var(--muted);white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.owner-header,.owner-cell{width:100px;min-width:100px}.owner-badge{color:#79c0ff;white-space:nowrap;background:0 0;border:0;max-width:100%;padding:0;font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace;display:inline}.owner-badge.owner-anna{color:#f2a4cf}.merchant-column{width:175px;min-width:175px;max-width:175px}.merchant-cell{align-items:flex-start;gap:7px;width:100%;min-width:0}.source-logo{border:1px solid var(--border);background:#f6f8fa;border-radius:6px;flex:none;place-items:center;width:32px;height:32px;display:grid;overflow:hidden}.source-logo img{object-fit:contain;width:23px;height:23px;display:block}.merchant-toggle{width:calc(100% - 39px);min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;padding:3px 2px}.merchant-toggle:hover,.merchant-toggle:focus-visible{background:#21262d;outline:none}.merchant-cell strong,.merchant-cell small{display:block}.merchant-cell strong{text-overflow:ellipsis;white-space:nowrap;max-width:125px;font-size:12px;overflow:hidden}.merchant-cell small{color:#6e7681;text-overflow:ellipsis;white-space:nowrap;max-width:125px;margin-top:2px;font-size:9px;overflow:hidden}.merchant-column.expanded .merchant-cell strong,.merchant-column.expanded .merchant-cell small{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;max-width:100%;overflow:visible}.purpose-cell{color:var(--muted);width:40%;min-width:340px;max-width:520px}.purpose-line{align-items:flex-start;gap:5px;display:flex}.purpose-toggle{width:100%;min-width:0;color:inherit;cursor:text;font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:text;user-select:text;background:0 0;border:0;border-radius:4px;padding:5px 4px;line-height:1.45;display:block;overflow:hidden}.purpose-toggle:focus-visible{outline:1px solid var(--border);outline-offset:-1px}.purpose-cell.expanded .purpose-toggle{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;color:#e6edf3;overflow:visible}.comment-toggle{color:#6e7681;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;width:30px;height:30px;padding:0;display:grid}.comment-toggle:hover,.comment-toggle:focus-visible{color:#e6edf3;background:#21262d;outline:none}.comment-toggle.has-comment{color:#79c0ff}.dispute-toggle{color:#8b949e;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #484f58;border-radius:5px;flex:none;align-items:center;gap:6px;min-height:30px;padding:5px 8px;font-size:10px;display:inline-flex}.dispute-toggle:hover{border-color:var(--orange);color:#e3b341}.dispute-toggle.active{color:#e3b341;background:#d299221f;border-color:#d29922b3}.dispute-toggle:disabled{opacity:.55;cursor:wait}.mobile-dispute,.mobile-category-tag{display:none}.mobile-category-tag{border:1px solid var(--border);color:#c9d1d9;white-space:nowrap;background:#21262d;border-radius:20px;align-items:center;gap:5px;max-width:100%;padding:4px 7px;font-size:10px}.transaction-comment{color:#d2a8ff;white-space:normal;overflow-wrap:anywhere;align-items:flex-start;gap:7px;margin:5px 4px 2px;font-size:12px;line-height:1.45;display:flex}.transaction-comment svg{flex:none;margin-top:1px}.dispute-reason{border-left:2px solid var(--orange);color:#e3b341;white-space:normal;overflow-wrap:anywhere;background:#d2992217;border-radius:0 5px 5px 0;align-items:flex-start;gap:7px;margin:7px 4px 2px;padding:7px 8px;font-size:12px;line-height:1.45;display:flex}.dispute-reason svg{flex:none;margin-top:1px}.comment-editor{background:#0d1117;border:1px solid #484f58;border-radius:6px;margin:8px 4px 3px;padding:8px}.comment-editor textarea{resize:vertical;border:1px solid var(--border);color:#e6edf3;background:#161b22;border-radius:5px;outline:0;width:100%;min-height:72px;padding:8px;font:12px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:block}.comment-editor textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2f81f726}.comment-editor>div{justify-content:flex-end;align-items:center;gap:7px;margin-top:7px;display:flex}.comment-editor small{color:#6e7681;margin-right:auto;font:9px ui-monospace,SFMono-Regular,Menlo,monospace}.comment-editor button{border:1px solid var(--border);color:#c9d1d9;cursor:pointer;background:#21262d;border-radius:5px;align-items:center;gap:5px;min-height:31px;padding:0 9px;font-size:11px;display:inline-flex}.comment-editor button:hover{color:#f0f6fc;border-color:#8b949e}.comment-editor .save-comment{color:#fff;background:#1f6feb;border-color:#1f6feb}.dispute-editor{background:#d2992212;border-color:#d299228c}.dispute-editor textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #d2992226}.comment-editor .save-dispute{color:#fff;background:#9e6a03;border-color:#9e6a03}.comment-editor button:disabled{opacity:.6;cursor:wait}.editable-field{align-items:center;gap:7px;display:flex}.row-category-icon{color:#8b949e;flex:none;place-items:center;width:25px;height:25px;display:grid}td select{border:1px solid var(--border);color:#c9d1d9;background:#21262d;border-radius:5px;outline:none;max-width:165px;height:32px;padding:0 26px 0 9px;font-size:11px}td select:hover,td select:focus{border-color:#8b949e}td select:disabled{opacity:.68;cursor:not-allowed}td select.unassigned,.allocation-select.unassigned{color:#d29922;background:#d2992214}.allocation-select.family{color:#7ee787;background:#3fb95014}.allocation-select.private{color:#79c0ff;background:#2f81f714}.suggestion-dot{color:#d2a8ff;place-items:center;display:grid}td select.has-suggestion{border-color:#a371f7a6}.row-category-picker{width:216px;min-width:216px;position:relative}.row-category-picker.open{z-index:220}.row-category-picker>button{border:1px solid var(--border);color:#e6edf3;cursor:pointer;text-align:left;background:#21262d;border-radius:6px;grid-template-columns:24px minmax(0,1fr) 16px;align-items:center;gap:8px;width:100%;min-height:38px;padding:6px 9px;font-size:13px;display:grid}.row-category-picker>button:hover,.row-category-picker.open>button{border-color:#8b949e}.row-category-picker>button.unassigned{color:#d29922;background:#d2992214}.row-category-picker>button.has-suggestion{border-color:#a371f7a6;grid-template-columns:24px minmax(0,1fr) 16px 18px}.row-category-picker>button>svg:first-child{color:#8b949e}.row-category-picker>button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row-category-picker .inline-suggestion{color:#d2a8ff}.readonly-category{border:1px solid var(--border);color:#c9d1d9;background:#21262d;border-radius:6px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;width:216px;min-height:38px;padding:6px 9px;font-size:13px;display:grid}.readonly-category span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scope-header,.scope-cell{text-align:center;width:44px;min-width:44px}.scope-header>span{color:var(--muted);place-items:center;display:inline-grid}.scope-marker{border-radius:50%;place-items:center;width:28px;height:28px;margin:0 auto;display:inline-grid}.scope-marker.ratio{color:#d2a8ff;background:#a371f71f}.scope-marker.family{color:#8b949e;background:#8b949e1f}.scope-marker.other{color:#484f58}.row-category-menu{z-index:230;overscroll-behavior:contain;scrollbar-gutter:stable;isolation:isolate;background:#161b22;border:1px solid #484f58;border-radius:8px;width:300px;max-height:min(440px,100vh - 160px);padding:7px;position:absolute;top:44px;left:0;overflow:hidden scroll;box-shadow:0 18px 48px #010409eb}.row-category-menu::-webkit-scrollbar{width:10px}.row-category-menu::-webkit-scrollbar-track{background:#0d1117;border-radius:0 7px 7px 0}.row-category-menu::-webkit-scrollbar-thumb{background:#484f58;border:2px solid #0d1117;border-radius:8px}.row-category-menu::-webkit-scrollbar-thumb:hover{background:#6e7681}.row-category-menu>button{color:#e6edf3;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:25px minmax(0,1fr) 20px;align-items:center;gap:9px;width:100%;min-height:43px;padding:7px 9px;font-size:14px;display:grid}.row-category-menu>button:hover{background:#21262d}.row-category-menu>button.selected{color:#79c0ff;background:#2f81f71f}.row-category-menu>button.suggested{color:#d2a8ff;background:#a371f717;border:1px solid #a371f780;margin-bottom:6px}.row-category-menu>button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row-category-menu>button span small{color:#a371f7;text-transform:uppercase;letter-spacing:.08em;font:8px ui-monospace,SFMono-Regular,Menlo,monospace;display:block}.family-header{text-align:center;width:82px}.family-header button{float:none}.family-cell{text-align:center;width:82px}.family-cell input[type=checkbox]{accent-color:#6e7681;cursor:pointer;vertical-align:middle;width:22px;height:22px}.family-cell input[type=checkbox]:disabled{opacity:.4;cursor:not-allowed}.amount-cell{text-align:right;white-space:nowrap;padding-right:16px;font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace}th.amount-cell button{float:right}tfoot td{border:0;border-top:1px solid var(--border);background:#0d1117;height:43px;font-weight:600}tfoot td:first-child{text-align:right;color:#c9d1d9}tfoot td span{color:#6e7681;margin-left:7px;font-weight:400}.empty-state{min-height:220px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state>span{font-size:26px}.empty-state strong{color:var(--text);margin:8px 0 3px}.empty-state p{margin:0;font-size:11px}.insights-panel{min-width:0;padding-bottom:14px}.mobile-breakdown-back{display:none}.breakdown-back{color:#8b949e;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;margin:0 0 7px;padding:0;font-size:11px;display:inline-flex}.breakdown-back:hover{color:#79c0ff}.category-bars{padding:13px 14px}.category-row{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-bottom-color:#21262d;border-radius:6px;grid-template-columns:7px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:10px 8px;display:grid}.category-row:hover{background:#1c2128;border-color:#30363d}.category-row:hover .category-name{color:var(--blue)}.category-key{border-radius:50%;width:6px;height:6px}.category-name{color:#c9d1d9;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;font-size:12px;display:flex;overflow:hidden}.category-name svg{color:#8b949e;flex:none}.category-row>strong{font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace}.bar-track{background:#21262d;border-radius:3px;grid-column:2/4;height:3px;overflow:hidden}.bar-fill{border-radius:inherit;height:100%;display:block}.category-preview{grid-column:2/4;gap:4px;margin-top:2px;display:grid}.category-preview>span{color:#8b949e;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;display:grid}.category-preview i,.breakdown-items i{color:#6e7681;background:#21262d;border-radius:50%;place-items:center;width:18px;height:18px;font:9px ui-monospace,SFMono-Regular,Menlo,monospace;display:grid}.category-preview b{text-overflow:ellipsis;white-space:nowrap;color:#8b949e;font-size:10px;font-weight:500;overflow:hidden}.category-preview small{color:#c9d1d9;font:9px ui-monospace,SFMono-Regular,Menlo,monospace}.breakdown-detail{padding:14px}.breakdown-total{background:#0d1117;border:1px solid #30363d;border-radius:6px;justify-content:space-between;align-items:end;padding:12px;display:flex}.breakdown-total span{color:#8b949e;font-size:11px}.breakdown-total strong{font:600 18px ui-monospace,SFMono-Regular,Menlo,monospace}.breakdown-items{gap:2px;margin-top:10px;display:grid}.breakdown-items>div{border-bottom:1px solid #21262d;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:9px 5px;display:grid}.breakdown-items span{min-width:0}.breakdown-items b,.breakdown-items small{display:block}.breakdown-items b{text-overflow:ellipsis;white-space:nowrap;color:#c9d1d9;font-size:11px;overflow:hidden}.breakdown-items small{color:#6e7681;margin-top:2px;font:9px ui-monospace,SFMono-Regular,Menlo,monospace}.breakdown-items strong{font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace}.breakdown-empty{color:#8b949e;text-align:center;padding:28px 8px;font-size:12px}.key-0{background:var(--blue)}.key-1{background:var(--green)}.key-2{background:var(--orange)}.key-3{background:var(--purple)}.key-4{background:var(--red)}.allocation-summary{border-top:1px solid var(--border);margin:0 14px;padding:14px 0 4px}.allocation-summary h3{margin:0 0 8px;font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace}.allocation-summary button{cursor:pointer;text-align:left;color:#c9d1d9;background:0 0;border:0;grid-template-columns:1fr auto;gap:6px;width:100%;padding:5px 0;font-size:10px;display:grid}.allocation-summary button strong{font:600 9px ui-monospace,SFMono-Regular,Menlo,monospace}.allocation-summary button i{background:#21262d;border-radius:3px;grid-column:1/3;height:3px;display:block;overflow:hidden}.allocation-summary button b{border-radius:inherit;background:var(--blue);height:100%;display:block}.allocation-summary button:disabled{cursor:default;opacity:.8}.loading-screen{width:100%;min-height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.loading-logout{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:6px;padding:8px 12px}.login-screen,.setup-screen{place-items:center;width:100%;min-height:100vh;padding:24px;display:grid}.login-card,.setup-card{border:1px solid var(--border);background:var(--panel);border-radius:10px;width:min(500px,100%);padding:30px}.login-card{width:min(420px,100%)}.login-card .brand-mark,.setup-card .brand-mark{margin-bottom:22px}.login-card h1,.setup-card h1{margin-bottom:10px}.login-card>p:not(.path-label){color:var(--muted);margin:0 0 22px;font-size:13px;line-height:1.6}.login-card>button{color:#fff;cursor:pointer;background:#1f6feb;border:1px solid #1f6feb;border-radius:6px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:44px;font-weight:600;display:flex}.login-error{max-width:520px;color:var(--red);background:#f851491a;border:1px solid #f8514966;border-radius:6px;margin:0 0 14px;padding:10px 12px;font-size:12px}.setup-card .login-error{margin-top:18px;line-height:1.55}.signed-in-user{border:1px solid var(--border);background:var(--panel-muted);border-radius:6px;gap:3px;margin:16px 0 0;padding:11px 12px;display:grid}.signed-in-user span{color:var(--muted);text-transform:uppercase;font:9px ui-monospace,SFMono-Regular,Menlo,monospace}.signed-in-user strong{overflow-wrap:anywhere;font-size:13px}.signed-in-user code{color:var(--muted);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;margin-top:4px;font-size:9px}.setup-actions{gap:8px;display:flex}.setup-actions button{border:1px solid var(--border);background:var(--panel-muted);min-height:40px;color:var(--text);cursor:pointer;border-radius:6px;padding:0 13px}.setup-actions .retry-button{color:#fff;background:#1f6feb;border-color:#1f6feb;font-weight:600}.file-input{display:none}.import-button,.manual-button{color:#fff;cursor:pointer;background:#1f6feb;border:1px solid #1f6feb;border-radius:6px;align-items:center;gap:7px;height:32px;padding:0 10px;font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace;display:inline-flex}.manual-button{border-color:var(--border);color:var(--text);background:#21262d}.manual-button:hover{border-color:#8b949e}.import-button:disabled{opacity:.6;cursor:wait}.modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#010409b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.import-modal{background:var(--panel);border:1px solid #484f58;border-radius:10px;width:min(980px,100%);max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 24px 80px #010409a6}.import-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:76px;padding:18px 20px;display:flex}.import-modal-header h2{text-overflow:ellipsis;white-space:nowrap;max-width:760px;font-size:16px;overflow:hidden}.import-modal-header>button{border:1px solid var(--border);width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;place-items:center;display:grid}.import-stats{grid-template-columns:repeat(4,1fr);gap:10px;padding:16px 20px;display:grid}.import-stats article{border:1px solid var(--border);background:var(--panel-muted);border-radius:6px;min-width:0;padding:13px}.import-stats span,.import-stats strong,.import-stats small{display:block}.import-stats span{color:var(--muted);text-transform:uppercase;font:9px ui-monospace,SFMono-Regular,Menlo,monospace}.import-stats strong{text-overflow:ellipsis;white-space:nowrap;margin:8px 0 4px;font:600 18px ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden}.import-stats small{color:var(--muted);font-size:10px}.preview-table-wrap{border:1px solid var(--border);border-radius:6px;margin:0 20px;overflow-x:auto}.preview-table{min-width:680px}.preview-table th{text-transform:uppercase;padding:0 10px;font:600 9px ui-monospace,SFMono-Regular,Menlo,monospace}.preview-table td{padding:9px 10px}.preview-table th:first-child,.preview-table td:first-child{white-space:nowrap;width:110px}.preview-table th:nth-child(2),.preview-table td:nth-child(2){width:180px}.preview-table th:last-child,.preview-table td:last-child{text-align:right;white-space:nowrap;width:120px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.preview-gap td{color:var(--muted);padding:13px;text-align:center!important}.preview-gap span,.preview-gap small{display:block}.preview-gap span{font-size:20px;line-height:10px}.preview-gap small{margin-top:6px;font-size:9px}.import-note{color:var(--muted);background:#2f81f714;border:1px solid #2f81f759;border-radius:6px;align-items:flex-start;gap:9px;margin:14px 20px 0;padding:11px 12px;font-size:11px;line-height:1.5;display:flex}.import-note svg{color:var(--blue);flex:none}.import-actions{justify-content:flex-end;gap:9px;padding:16px 20px 20px;display:flex}.import-actions button{border:1px solid var(--border);background:var(--panel-muted);min-height:40px;color:var(--text);cursor:pointer;border-radius:6px;padding:0 15px}.import-actions .confirm-import{color:#fff;background:#1f6feb;border-color:#1f6feb;align-items:center;gap:7px;font-weight:600;display:inline-flex}.import-actions button:disabled{opacity:.55;cursor:not-allowed}.manual-source-logo{color:#79c0ff;background:#2f81f71a;position:relative}.manual-source-logo svg:last-child{background:var(--panel);color:var(--text);border-radius:3px;padding:1px;position:absolute;bottom:2px;right:2px}.bulk-bar>button.delete-manual{color:#ff7b72;background:#f851491a;border-color:#f851498c;align-items:center;gap:6px;display:inline-flex}.bulk-bar>button.delete-manual:hover{border-color:var(--red);background:#f8514929}.bulk-bar>button.delete-manual:disabled{opacity:.55;cursor:wait}.manual-modal{width:min(720px,100%)}.manual-form{grid-template-columns:1fr 1fr;gap:16px;padding:20px;display:grid}.manual-form>label{gap:7px;min-width:0;display:grid}.manual-form>label>span{color:var(--muted);text-transform:uppercase;font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace}.manual-form>label>span b{color:var(--red)}.manual-form input:not([type=checkbox]),.manual-form select{border:1px solid var(--border);background:var(--panel-muted);width:100%;height:42px;color:var(--text);border-radius:6px;outline:0;padding:0 11px;font-size:13px}.manual-form input:focus,.manual-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2f81f726}.manual-form input[readonly]{color:var(--muted);cursor:default}.manual-purpose,.manual-form-error,.manual-actions{grid-column:1/-1}.manual-form-error{color:#ff7b72;background:#f851491a;border:1px solid #f8514966;border-radius:6px;padding:10px 12px;font-size:12px}.manual-family{border:1px solid var(--border);background:var(--panel-muted);cursor:pointer;border-radius:6px;align-self:end;align-items:center;min-height:42px;padding:0 11px;grid-template-columns:none!important;gap:9px!important;display:flex!important}.manual-family input{width:19px;height:19px;accent-color:var(--blue)}.manual-family input:disabled{opacity:.55}.manual-family>span{color:var(--text)!important;text-transform:none!important;font:600 13px -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important}.manual-actions{justify-content:flex-end;align-items:center;gap:9px;padding-top:4px;display:flex}.manual-actions small{color:var(--muted);margin-right:auto;font-size:10px}.manual-actions button{border:1px solid var(--border);background:var(--panel-muted);min-height:40px;color:var(--text);cursor:pointer;border-radius:6px;padding:0 14px}.manual-actions .save-manual{color:#fff;background:#1f6feb;border-color:#1f6feb;align-items:center;gap:7px;font-weight:600;display:inline-flex}.manual-actions button:disabled{opacity:.55;cursor:wait}:root[data-theme=light]{color:#1f2328;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f8fa;--panel:#fff;--panel-muted:#f6f8fa;--border:#d0d7de;--text:#1f2328;--muted:#59636e;--blue:#0969da;--green:#1a7f37;--red:#cf222e;--orange:#9a6700;--purple:#8250df;background:#f6f8fa}:root[data-theme=light] .topbar{background:#fff;border-color:#d8dee4}:root[data-theme=light] .brand-mark,:root[data-theme=light] .topbar-button,:root[data-theme=light] .breakdown-toggle,:root[data-theme=light] .filters select,:root[data-theme=light] .month-trigger,:root[data-theme=light] .category-trigger,:root[data-theme=light] .bulk-bar>button,:root[data-theme=light] .bulk-category-trigger,:root[data-theme=light] .row-category-picker>button,:root[data-theme=light] .readonly-category,:root[data-theme=light] .comment-editor button{color:#1f2328;background:#f6f8fa}:root[data-theme=light] .primary-nav .topbar-button{color:#59636e;background:0 0;border-color:#0000}:root[data-theme=light] .primary-nav .topbar-button.active{color:#0969da;background:0 0;border-bottom-color:#0969da}:root[data-theme=light] .primary-nav .topbar-button.has-disputes{color:#7d4e00;background:0 0;border-bottom-color:#bf8700}:root[data-theme=light] .user-logout-button{color:#1f2328;background:#fff}:root[data-theme=light] .search-clear:hover{color:#1f2328;background:0 0}:root[data-theme=light] .family-income-section{background:#f6f9fc;border-color:#d8dee4}:root[data-theme=light] .family-paid-section{background:#faf8fd;border-color:#ddd8e8}:root[data-theme=light] .modal-backdrop{background:#1f232859}:root[data-theme=light] .import-modal{border-color:#afb8c1;box-shadow:0 24px 70px #1f232838}:root[data-theme=light] .preview-table th,:root[data-theme=light] .sticky-controls,:root[data-theme=light] .filters,:root[data-theme=light] th,:root[data-theme=light] tfoot td{background:#f6f8fa}:root[data-theme=light] .sticky-controls,:root[data-theme=light] .search-field:focus-within{box-shadow:none}:root[data-theme=light] .month-menu,:root[data-theme=light] .category-menu,:root[data-theme=light] .bulk-category-menu,:root[data-theme=light] .row-category-menu{background:#fff;border-color:#d0d7de;box-shadow:0 12px 34px #1f23282e}:root[data-theme=light] .row-category-menu::-webkit-scrollbar-track{background:#f6f8fa}:root[data-theme=light] .row-category-menu::-webkit-scrollbar-thumb{background:#afb8c1;border-color:#f6f8fa}:root[data-theme=light] .category-menu-search,:root[data-theme=light] .month-grid button,:root[data-theme=light] .comment-editor,:root[data-theme=light] .breakdown-total{background:#fff}:root[data-theme=light] .category-menu-search input,:root[data-theme=light] .comment-editor textarea{color:#1f2328;background:#fff}:root[data-theme=light] .manual-button,:root[data-theme=light] .manual-form input:not([type=checkbox]),:root[data-theme=light] .manual-form select,:root[data-theme=light] .manual-family,:root[data-theme=light] .manual-actions button{color:#1f2328;background:#f6f8fa}:root[data-theme=light] .manual-actions .save-manual{color:#fff;background:#0969da}:root[data-theme=light] .manual-source-logo{color:#0969da;background:#0969da14}:root[data-theme=light] .manual-source-logo svg:last-child{background:#fff}:root[data-theme=light] .category-menu>button,:root[data-theme=light] .bulk-category-menu>button,:root[data-theme=light] .row-category-menu>button{color:#1f2328}:root[data-theme=light] .category-menu>button:hover,:root[data-theme=light] .bulk-category-menu>button:hover,:root[data-theme=light] .row-category-menu>button:hover,:root[data-theme=light] tbody tr:hover,:root[data-theme=light] .category-row:hover,:root[data-theme=light] .merchant-toggle:hover{background:#f3f4f6}:root[data-theme=light] td,:root[data-theme=light] .category-row,:root[data-theme=light] .breakdown-items>div{border-color:#d8dee4}:root[data-theme=light] .purpose-cell.expanded .purpose-toggle,:root[data-theme=light] .category-name,:root[data-theme=light] .breakdown-items b,:root[data-theme=light] tfoot td:first-child{color:#1f2328}:root[data-theme=light] .bulk-bar{background:#0969da12}:root[data-theme=light] .shared-pill{color:#0969da;background:#0969da14;border-color:#0969da59}:root[data-theme=light] .owner-badge{color:#0550ae;background:0 0}:root[data-theme=light] .owner-badge.owner-anna{color:#9e2f6a}:root[data-theme=light] .metric-card.dispute-alert{background:#fff8c5;border-color:#bf8700;box-shadow:inset 3px 0 #bf8700}:root[data-theme=light] .metric-card.dispute-alert span,:root[data-theme=light] .metric-card.dispute-alert strong,:root[data-theme=light] .metric-card.dispute-alert small{color:#7d4e00}:root[data-theme=light] .dispute-toggle.active{color:#7d4e00;background:#fff8c5}:root[data-theme=light] .notice.success{color:#116329;background:#dafbe1;border-color:#4ac26b}:root[data-theme=light] .transaction-comment{color:#6639ba;background:#8250df14}:root[data-theme=light] .comment-toggle.has-comment{color:#6639ba}:root[data-theme=light] .family-matrix{box-shadow:0 4px 16px #1f232814}:root[data-theme=light] .family-finance-row{color:#424a53}:root[data-theme=light] .family-person-card>header>span{color:#0969da;background:#ddf4ff}:root[data-theme=light] .family-person-anna>header>span{color:#8250df;background:#fbefff}:root[data-theme=light] .family-net-row strong,:root[data-theme=light] .ratio-labels .khaled{color:#0969da}:root[data-theme=light] .family-person-anna .family-net-row strong,:root[data-theme=light] .ratio-labels .anna{color:#8250df}:root[data-theme=light] .ratio-track{background:#d8dee4}:root[data-theme=light] .settlement-card{background:#f6f1ff;border-color:#d8c7ff}:root[data-theme=light] .settlement-card p,:root[data-theme=light] .settlement-card strong{color:#6639ba}:root[data-theme=light] .settlement-card>span{color:#3d2462}:root[data-theme=light] .family-dispute-alert{color:#7d4e00;background:#fff8c5;border-color:#d4a72c #d4a72c #d4a72c #bf8700}:root[data-theme=light] .family-dispute-alert h3,:root[data-theme=light] .family-dispute-alert button,:root[data-theme=light] .family-dispute-alert li{color:#7d4e00}:root[data-theme=light] .family-dispute-alert h3 b{color:#fff;background:#bf8700}:root[data-theme=light] .category-preview i,:root[data-theme=light] .breakdown-items i{color:#424a53;background:#eaeef2}@media (width<=1250px){.workspace-grid.with-breakdown{grid-template-columns:1fr}.insights-panel{grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);display:grid}.insights-panel .panel-heading{grid-column:1/3}.category-bars,.breakdown-detail{border-right:1px solid var(--border)}.allocation-summary{border-top:0}}@media (width<=1050px){.family-matrix{grid-template-columns:1fr 1fr}.family-person-card:nth-child(2){border-right:0}.family-result-card{border-top:1px solid var(--border);grid-column:1/-1}}@media (width<=760px){main{width:min(100% - 20px,1600px);padding:18px 0 32px}.summary-grid{grid-template-columns:1fr 1fr}.family-matrix{display:block}.family-person-card{border-right:0;border-bottom:1px solid var(--border)}.family-result-card{border-top:0}.family-person-card,.family-result-card{padding:17px}.family-dispute-alert header{align-items:flex-start}.workspace-grid.with-breakdown{display:block}.workspace-grid.with-breakdown .transactions-panel{display:none}.workspace-grid.with-breakdown .insights-panel{width:100%;display:block}.workspace-grid.with-breakdown .insights-panel .panel-heading{display:flex}.workspace-grid.with-breakdown .mobile-breakdown-back{color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin:0 0 8px;padding:0;font-size:12px;display:inline-flex}.workspace-grid.with-breakdown .breakdown-back{display:none}.topbar-left{flex:1;gap:8px}.primary-nav{flex:1;min-width:0}.primary-nav .topbar-button{flex:1;justify-content:center;min-width:0;height:68px;padding:0 7px;font-size:12px}.primary-nav .topbar-button span{text-overflow:ellipsis;white-space:nowrap;display:inline;overflow:hidden}.topbar-actions .topbar-button span{display:none}.user-logout-button{justify-content:center;width:34px;padding:0}.user-logout-button span,.user-logout-button svg:first-child{display:none}.panel-tools{gap:5px}.rules-count{display:none}.import-button,.manual-button,.breakdown-toggle,.reset-filters{padding:0 8px}.modal-backdrop{align-items:end;padding:0}.import-modal{border-radius:12px 12px 0 0;width:100%;max-height:94vh}.import-modal-header{min-height:66px;padding:14px}.import-modal-header h2{max-width:calc(100vw - 90px);font-size:13px}.import-stats{grid-template-columns:1fr 1fr;gap:7px;padding:12px 14px}.import-stats article{padding:10px}.import-stats strong{font-size:15px}.preview-table-wrap{margin:0 14px}.import-note{margin:12px 14px 0}.import-actions{padding:12px 14px 16px}.import-actions button{flex:1;padding:0 9px;font-size:11px}.manual-form{grid-template-columns:1fr;gap:13px;padding:14px}.manual-purpose,.manual-form-error,.manual-actions{grid-column:auto}.manual-actions{flex-wrap:wrap}.manual-actions small{width:100%}.manual-actions button{flex:1;padding:0 9px;font-size:11px}.topbar-button{justify-content:center;width:34px;padding:0}.shared-pill{justify-content:center;width:32px;padding:0;font-size:0}.filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:10px;display:grid}.search-field{grid-column:1/-1;width:100%;min-width:0}.month-filter,.category-filter{width:100%;min-width:0}.month-trigger,.category-trigger{width:100%;min-width:0;max-width:none}.filters>select{grid-column:1/-1;width:100%}.month-menu{width:min(430px,100vw - 32px)}.month-menu,.category-menu{max-width:calc(100vw - 20px)}.category-menu{width:min(310px,100vw - 20px);left:auto;right:0}.table-wrap{background:var(--bg);padding:10px;overflow:visible}table,tbody,tfoot{width:100%;min-width:0;display:block}thead{display:none}tbody{gap:10px;display:grid}tbody tr[data-transaction-row]{border:1px solid var(--border);background:var(--panel);border-radius:8px;grid-template-columns:34px minmax(0,1fr) auto;grid-template-areas:"check merchant amount""date purpose purpose"".category family";align-items:start;gap:9px 10px;min-width:0;min-height:142px;padding:11px;display:grid}.shared-table tbody tr[data-transaction-row]{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"merchant amount""date owner""purpose purpose""category scope";min-height:166px}tbody tr[data-transaction-row]>td{border:0;min-width:0;padding:0}tbody .checkbox-cell{text-align:left;grid-area:check;width:34px;min-width:34px}tbody .date-cell{grid-area:date;align-self:center;font-size:10px}tbody .owner-cell{text-align:right;grid-area:owner;width:auto;min-width:0}tbody .owner-badge{padding:0;font-size:9px}tbody .merchant-column{grid-area:merchant;width:auto;min-width:0;max-width:none}tbody .purpose-cell{border-top:1px solid var(--border);grid-area:purpose;width:auto;min-width:0;max-width:none;padding-top:3px}tbody .category-cell{grid-area:category}tbody .scope-cell{grid-area:scope;align-self:center;width:32px}tbody .family-cell{grid-area:family;align-self:center;width:42px}tbody .amount-cell{grid-area:amount;padding:4px 0 0 8px;font-size:12px}.merchant-cell{width:100%}.merchant-toggle{pointer-events:none;cursor:default;width:calc(100% - 39px)}.merchant-cell strong,.merchant-cell small,.merchant-column.expanded .merchant-cell strong,.merchant-column.expanded .merchant-cell small{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;max-width:100%;overflow:visible}.purpose-line{flex-wrap:wrap;padding-top:6px}.purpose-toggle,.purpose-cell.expanded .purpose-toggle{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;flex:220px;overflow:visible}.shared-table .desktop-dispute,.shared-table .desktop-category{display:none}.shared-table .mobile-category-tag{color:#4b2f1d;background:#f4dfc2;border-color:#d7b98d;margin-left:auto;display:inline-flex}.shared-table .mobile-dispute{justify-content:center;width:100%;min-height:38px;margin:0;display:flex}.shared-table .transaction-comment{border-left:2px solid var(--purple);background:#a371f712;border-radius:0 5px 5px 0;margin:7px 4px 3px;padding:7px 8px}.row-category-picker,.readonly-category{width:100%;min-width:0}.row-category-menu{width:min(300px,100vw - 54px)}tfoot{margin-top:10px}tfoot tr{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}tfoot td{padding:10px;display:block}tfoot td:first-child{text-align:left}}@media (width<=520px){.topbar-inner{width:calc(100% - 20px)}.family-totals{grid-template-columns:1fr}.brand span{display:none}.summary-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.metric-card{min-height:104px;padding:12px 10px}.metric-card strong{margin:11px 0 5px;font-size:17px}.metric-card small{font-size:9px;line-height:1.35}.month-grid{grid-template-columns:1fr}.insights-panel{display:block}.category-bars,.breakdown-detail{border-right:0}.page-header{align-items:start}.rules-count{display:none}}@media (hover:none){.dispute-toggle:hover:not(.active){color:var(--muted);background:0 0;border-color:#484f58}}
