:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--plane:#f9f9f7;--surface:#fcfcfb;--surface-sunk:#f2f2ef;--ink:#0b0b0b;--ink-2:#52514e;--ink-muted:#898781;--hairline:#0b0b0b1a;--gridline:#e1e0d9;--baseline:#c3c2b7;--series-revenue:#2a78d6;--series-profit:#eb6834;--series-net:#0f7a52;--good:#006300;--bad:#d03b3b;--warn:#9c6716;--radius:12px;--radius-sm:8px}@media (prefers-color-scheme:dark){:root:where(:not([data-theme=light])){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--plane:#0d0d0d;--surface:#1a1a19;--surface-sunk:#232322;--ink:#fff;--ink-2:#c3c2b7;--ink-muted:#898781;--hairline:#ffffff1a;--gridline:#2c2c2a;--baseline:#383835;--series-revenue:#3987e5;--series-profit:#d95926;--series-net:#35b184;--good:#0ca30c;--bad:#e66767;--warn:#d3a055}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--plane:#0d0d0d;--surface:#1a1a19;--surface-sunk:#232322;--ink:#fff;--ink-2:#c3c2b7;--ink-muted:#898781;--hairline:#ffffff1a;--gridline:#2c2c2a;--baseline:#383835;--series-revenue:#3987e5;--series-profit:#d95926;--series-net:#35b184;--good:#0ca30c;--bad:#e66767;--warn:#d3a055}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw}body{background:var(--plane);min-height:100%;color:var(--ink);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Noto Sans Arabic,Dubai,Tahoma,sans-serif;font-size:15px;line-height:1.6}.page{flex-direction:column;gap:1.5rem;width:100%;max-width:1120px;margin:0 auto;padding:1.75rem 1.25rem 4rem;display:flex}.pageHead{flex-direction:column;gap:.15rem;display:flex}.pageTitle{letter-spacing:-.01em;font-size:1.4rem;font-weight:650}.pageSubtitle{color:var(--ink-muted);font-size:.9rem}.shell{flex-direction:column;gap:1.5rem;display:flex}.shell.busy{opacity:.6;transition:opacity .12s}.branchBar{flex-wrap:wrap;gap:.25rem;margin-top:-1.1rem;display:flex}.periodBar{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:.75rem 1rem;padding:.6rem .75rem;display:flex}.presets{flex-wrap:wrap;gap:.25rem;display:flex}.preset,.segBtn{color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:.32rem .7rem;font-size:.88rem}.preset:hover,.segBtn:hover{background:var(--surface-sunk)}.preset.active,.segBtn.active{background:var(--ink);color:var(--surface);font-weight:600}.periodNav{align-items:center;gap:.4rem;margin-inline-start:auto;display:flex}.navBtn{border-radius:var(--radius-sm);border:1px solid var(--hairline);background:var(--surface);width:30px;height:30px;color:var(--ink);cursor:pointer;font-size:1.15rem;line-height:1}.navBtn:hover:not(:disabled){background:var(--surface-sunk)}.navBtn:disabled{opacity:.35;cursor:not-allowed}.periodLabel{text-align:center;min-width:15ch;font-size:.9rem;font-weight:600}.customRange{align-items:center;gap:.35rem;display:flex}.customRange input{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--hairline);background:var(--surface);color:var(--ink);color-scheme:normal;padding:.28rem .4rem;font-size:.82rem}.rangeDash{color:var(--ink-muted)}.tileRow{grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:.75rem;display:grid}.tile{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);flex-direction:column;gap:.25rem;min-height:108px;padding:.85rem .95rem;display:flex}.tileLabel{color:var(--ink-muted);font-size:.82rem}.tileValue{letter-spacing:-.015em;font-size:1.45rem;font-weight:650}.tileFoot{flex-direction:column;gap:.1rem;margin-top:auto;display:flex}.tileDelta{font-size:.82rem;font-weight:600}.tileDelta.up{color:var(--good)}.tileDelta.down{color:var(--bad)}.tileDelta.flat{color:var(--ink-muted);font-weight:400}.tileNote{color:var(--ink-muted);font-size:.75rem}.chartWrap{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);padding:1rem 1.1rem .75rem;position:relative}.chartHead{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem 1rem;margin-bottom:.5rem;display:flex}.sectionTitle{font-size:1rem;font-weight:650}.sectionNote{color:var(--ink-muted);font-size:.82rem}.legend{gap:.9rem;display:flex}.legendItem{color:var(--ink-2);align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.legendKey{border-radius:2px;width:12px;height:3px;display:inline-block}.chart{touch-action:pan-y;direction:ltr;display:block}.gridline{stroke:var(--gridline);stroke-width:1px}.crosshair{stroke:var(--baseline);stroke-width:1px}.axisText{fill:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:11px}.series{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.series.dashed{stroke-dasharray:6 4}.legendKey.dashed{-webkit-mask-image:linear-gradient(90deg,#000 60%,#0000 60%);mask-image:linear-gradient(90deg,#000 60%,#0000 60%);-webkit-mask-size:5px 100%;mask-size:5px 100%}.zeroLine{stroke:var(--baseline);stroke-width:1.5px}.endDot{stroke:var(--surface);stroke-width:2px}.tooltip{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-sm);pointer-events:none;width:168px;padding:.5rem .6rem;font-size:.82rem;position:absolute;top:3.4rem;box-shadow:0 6px 20px #0000001f}.tipMonth{margin-bottom:.25rem;font-weight:650}.tipRow{align-items:center;gap:.35rem;display:flex}.tipRow b{font-variant-numeric:tabular-nums;margin-inline-start:auto}.tipRow.muted{color:var(--ink-muted);margin-top:.15rem}.chartEmpty,.emptyNote{color:var(--ink-muted);padding:.75rem 0;font-size:.9rem}.twoUp{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:1rem;display:grid}.panel{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);min-width:0;padding:1rem 1.1rem .5rem}.panelHead{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem 1rem;margin-bottom:.6rem;display:flex}.panelTotal{font-size:1.1rem;font-weight:650}.segmented{gap:.2rem;display:flex}.sectionError{color:var(--bad);padding:1rem 1.1rem;font-size:.9rem}.dataTable{border-collapse:collapse;width:100%;font-size:.88rem}.dataTable th{text-align:start;color:var(--ink-muted);border-bottom:1px solid var(--hairline);white-space:nowrap;padding:.3rem .5rem;font-size:.78rem;font-weight:500}.dataTable td{border-bottom:1px solid var(--hairline);vertical-align:middle;padding:.42rem .5rem}.dataTable tbody tr:last-child td{border-bottom:none}.numCol{text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}.numCol.negative{color:var(--bad);font-weight:650}.barCell{min-width:0;padding:.1rem .4rem;display:block;position:relative}.barFill{background:color-mix(in srgb, var(--series-revenue) 16%, transparent);border-radius:4px;position:absolute;inset-block:0;inset-inline-start:0}.barName{position:relative}.chip{color:var(--ink-muted);border:1px solid var(--hairline);border-radius:999px;margin-inline-start:.4rem;padding:0 .4rem;font-size:.7rem;display:inline-block}.never{color:var(--warn)}.stockRow{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;padding-bottom:.5rem;display:grid}.stockCell{background:var(--surface-sunk);border-radius:var(--radius-sm);padding:.6rem .7rem}.stockName{color:var(--ink-muted);font-size:.82rem}.stockValue{font-size:1.05rem;font-weight:650}.stockMeta{color:var(--ink-muted);font-size:.75rem}.healthStrip{color:var(--ink-muted);border-top:1px solid var(--hairline);flex-wrap:wrap;gap:.4rem 1.25rem;padding-top:.75rem;font-size:.8rem;display:flex}.healthStrip.bad{color:var(--bad)}.healthItem{white-space:nowrap}.chatPanel{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.chatMessages{flex-direction:column;gap:.6rem;max-height:380px;display:flex;overflow-y:auto}.chatMessage{border-radius:var(--radius-sm);white-space:pre-wrap;max-width:85%;padding:.5rem .7rem;font-size:.9rem;line-height:1.5}.chatMessage.user{background:var(--ink);color:var(--surface);align-self:flex-start}.chatMessage.assistant{background:var(--surface-sunk);align-self:flex-end}.chatForm{gap:.5rem;display:flex}.chatInput{border-radius:var(--radius-sm);border:1px solid var(--hairline);background:var(--plane);color:var(--ink);font:inherit;flex:1;padding:.55rem .7rem;font-size:.92rem}.chatSubmit{border-radius:var(--radius-sm);background:var(--ink);color:var(--surface);font:inherit;cursor:pointer;border:none;padding:.55rem 1.1rem;font-weight:600}.chatSubmit:disabled{opacity:.45;cursor:not-allowed}.loginPage{place-items:center;min-height:100dvh;padding:1.25rem;display:grid}.loginCard{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);flex-direction:column;gap:.35rem;width:100%;max-width:360px;padding:1.75rem 1.5rem;display:flex}.loginTitle{font-size:1.35rem;font-weight:650}.loginSub{color:var(--ink-muted);margin-bottom:1rem;font-size:.9rem}.loginForm{flex-direction:column;gap:.8rem;display:flex}.field{flex-direction:column;gap:.25rem;display:flex}.field span{color:var(--ink-2);font-size:.82rem}.field input{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--hairline);background:var(--plane);color:var(--ink);padding:.55rem .7rem}.loginError{color:var(--bad);font-size:.85rem}.loginNotice{color:var(--ink-2);font-size:.85rem;line-height:1.7}.loginNotice code{background:var(--surface-sunk);direction:ltr;border-radius:4px;padding:0 .25rem;font-size:.85em;display:inline-block}.signOut{border:1px solid var(--hairline);border-radius:var(--radius-sm);color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;margin-inline-start:auto;padding:.25rem .7rem;font-size:.82rem}.signOut:hover{background:var(--surface-sunk)}.pageHead{flex-direction:row;align-items:center;gap:.75rem}.pageHeadText{flex-direction:column;gap:.15rem;display:flex}@media (max-width:560px){.periodNav{margin-inline-start:0}.customRange{width:100%}.tileValue{font-size:1.25rem}}.pageHeadActions{align-items:center;gap:.5rem;margin-inline-start:auto;display:flex}.pageHeadActions .signOut{margin-inline-start:0}.linkBtn{border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-2);white-space:nowrap;padding:.25rem .7rem;font-size:.82rem;text-decoration:none}.linkBtn:hover{background:var(--surface-sunk)}.linkBtn.active{color:var(--ink);border-color:var(--ink-muted);background:var(--surface-sunk)}.linkBtn.danger{color:var(--bad)}.monthGrid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;padding-bottom:.6rem;display:grid}.monthCell{border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--plane);color:var(--ink);font:inherit;cursor:pointer;text-align:start;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.6rem .7rem;display:flex}.monthCell:hover{background:var(--surface-sunk)}.monthCell.active{border-color:var(--ink-muted);background:var(--surface-sunk)}.monthName{font-size:.85rem;font-weight:600}.monthSum{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:.8rem}.monthCell.empty .monthSum{color:var(--warn)}.monthCell.future{opacity:.5}.expenseTable td{vertical-align:middle}.ruleRow td{border-top:2px solid var(--baseline);font-weight:650}.amountInput{font:inherit;font-variant-numeric:tabular-nums;text-align:end;border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--plane);width:100%;max-width:190px;color:var(--ink);padding:.4rem .6rem}.amountInput:focus{border-color:var(--ink-muted);background:var(--surface);outline:none}.outsideProfit{background:var(--surface-sunk);border-radius:var(--radius-sm);margin:.9rem 0 .6rem;padding:.7rem .9rem}.outsideHead{margin-bottom:.35rem;font-size:.9rem;font-weight:650}.outsideList{flex-direction:column;gap:.15rem;list-style:none;display:flex}.outsideList li{color:var(--ink-2);gap:.5rem;font-size:.85rem;display:flex}.outsideList b{font-variant-numeric:tabular-nums;margin-inline-start:auto}.kindBlock{margin-bottom:1.1rem}.kindHead{border-top:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1rem;margin-bottom:.2rem;padding-top:.7rem;display:flex}.kindHead.profit{border-top:2px solid var(--series-net)}.kindName{font-size:.95rem;font-weight:650}.kindWhy{color:var(--ink-muted);margin-top:.1rem;font-size:.78rem;display:block}.kindSum{font-variant-numeric:tabular-nums;text-align:end;font-weight:650}.kindTag{color:var(--ink-muted);margin-top:.1rem;font-size:.72rem;font-weight:500;display:block}.kindTag.profit{color:var(--series-net)}.addLine{margin-top:.4rem;display:inline-block}.twoTotals{border-top:2px solid var(--baseline);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem;margin-top:.4rem;padding-top:.9rem;display:grid}.totalBox{background:var(--surface-sunk);border-radius:var(--radius-sm);flex-direction:column;gap:.1rem;padding:.6rem .8rem;display:flex}.totalLabel{color:var(--ink-muted);font-size:.8rem}.totalValue{font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:650}.totalNote{color:var(--ink-muted);font-size:.74rem}.bankRow{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding-top:.8rem;display:flex}.bankField{align-items:center;gap:.5rem;display:flex}.bankField span{color:var(--ink-2);white-space:nowrap;font-size:.85rem}.bankGap{color:var(--warn);font-size:.85rem;font-weight:600}.bankGap.ok{color:var(--good)}.editorActions{flex-wrap:wrap;align-items:center;gap:.6rem;padding:.9rem 0 .6rem;display:flex}.savedNote{color:var(--good);font-size:.82rem;font-weight:600}.warnNote{color:var(--warn);margin-bottom:.6rem;line-height:1.7}
