:root{--bg:#f2f2f7;--card:#fff;--text:#111418;--muted:#6b7280;--line:#e5e7eb;--brand:#0b1d3a;--accent:#2f6df6;--in:#14804a;--out:#c2352b;--warn-bg:#fff6db;--ok-bg:#e5f6ec;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--chart-in:#2a78d6;--chart-out:#eb6834;--grid:#e8e8ec;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#000;--card:#1c1c1e;--text:#f2f2f7;--muted:#9ca3af;--line:#2c2c2e;--accent:#4d86ff;--in:#34c773;--out:#ff6b5e;--warn-bg:#3a3112;--ok-bg:#12321f;--chart-in:#3987e5;--chart-out:#d95926;--grid:#2c2c2e}}[hidden]{display:none!important}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--text);margin:0}body{padding-bottom:calc(96px + var(--sab));overscroll-behavior-y:none;font:16px/1.4 -apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.top{background:var(--brand);color:#fff;padding:calc(var(--sat) + 12px) 16px 14px;z-index:5;position:sticky;top:0}.title-row{align-items:center;gap:10px;display:flex}.title-row h1{letter-spacing:.2px;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;font-size:21px;overflow:hidden}.title-row select{color:#fff;background:#ffffff26;border:0;border-radius:10px;padding:6px 10px}.title-row select option{color:#000}.icon-btn{color:#fff;background:#ffffff26;border:0;border-radius:10px;width:38px;height:34px;font-size:18px}.summary{margin:14px 0 12px}.saldo .label,.sub .label{opacity:.7;text-transform:uppercase;letter-spacing:.5px;font-size:12px;display:block}.saldo strong{font-variant-numeric:tabular-nums;font-size:34px;font-weight:700}.saldo strong.neg{color:#ffb4ac}.sub{font-variant-numeric:tabular-nums;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;display:grid}.sub .in{color:#8ff0b6}.sub .out{color:#ffb4ac}#search{color:#fff;background:#ffffff26;border:0;border-radius:10px;width:100%;padding:9px 12px}#search::placeholder{color:#fff9}.list{background:var(--card);border-radius:14px;margin:12px;padding:0;list-style:none;overflow:hidden}.list:empty{display:none}.list li{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 14px;display:flex}.list li:last-child{border-bottom:0}.list li:active{background:var(--line)}.nr{background:var(--bg);min-width:34px;height:34px;color:var(--muted);border-radius:9px;place-items:center;font-size:13px;font-weight:600;display:grid}.main{flex-direction:column;flex:1;min-width:0;display:flex}.text{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.meta{color:var(--muted);font-size:12.5px}.amt{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.amt.in{color:var(--in)}.amt.out{color:var(--out)}.empty{text-align:center;color:var(--muted);margin:48px 24px}.actions{z-index:6;padding:10px 14px calc(10px + var(--sab));background:color-mix(in srgb, var(--card) 85%, transparent);-webkit-backdrop-filter:blur(18px);border-top:1px solid var(--line);grid-template-columns:1fr 1.3fr 1fr;gap:10px;display:grid;position:fixed;bottom:0;left:0;right:0}.action{background:var(--bg);border:0;border-radius:14px;flex-direction:column;align-items:center;padding:8px 4px;font-size:13px;font-weight:600;display:flex}.action .ico{font-size:22px;line-height:1.2}.action.primary{background:var(--accent);color:#fff}dialog.sheet{width:100%;max-width:640px;max-height:calc(100dvh - var(--sat) - 12px);background:var(--bg);color:var(--text);border:0;border-radius:16px 16px 0 0;margin:auto auto 0;padding:0}dialog.sheet.full{border-radius:0;height:100dvh;max-height:100dvh;overflow:hidden}dialog.sheet.full[open]{flex-direction:column;display:flex}dialog::backdrop{background:#0006}dialog[open]{animation:.22s ease-out up}@keyframes up{0%{opacity:.6;transform:translateY(40px)}}.sheet-head{background:var(--bg);z-index:1;border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;padding:14px 16px;display:grid;position:sticky;top:0}.sheet-head h2{text-align:center;margin:0;font-size:17px}.sheet-head .link:last-child{justify-self:end}.link{color:var(--accent);background:0 0;border:0;justify-self:start;padding:4px 0}.link.strong{font-weight:600}.link:disabled{opacity:.4}.sheet-body{padding:16px;padding-bottom:calc(24px + var(--sab));flex-direction:column;gap:14px;display:flex}.sheet.full .sheet-head{padding-top:calc(var(--sat) + 10px);flex:none;position:static}.sheet.full .sheet-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.sheet-body h3{text-transform:uppercase;color:var(--muted);letter-spacing:.5px;margin:10px 0 -4px;font-size:13px}.field{background:var(--card);border-radius:12px;flex-direction:column;gap:6px;padding:10px 14px;display:flex}.field span{color:var(--muted);font-size:12.5px}.field input{background:0 0;border:0;outline:none;width:100%;min-height:28px;padding:2px 0;font-size:18px}.field input[name=amount]{font-variant-numeric:tabular-nums;font-size:28px;font-weight:600}.segmented{grid-template-columns:1fr 1fr;gap:8px;display:grid}.segmented label{position:relative}.segmented input{opacity:0;position:absolute}.segmented span{text-align:center;background:var(--card);border:2px solid #0000;border-radius:12px;padding:14px;font-weight:600;display:block}.segmented input[value=in]:checked+span{border-color:var(--in);color:var(--in);background:var(--ok-bg)}.segmented input[value=out]:checked+span{border-color:var(--out);color:var(--out)}.doc-preview{flex-direction:column;align-items:center;gap:8px;display:flex}.doc-preview canvas{object-fit:contain;background:#fff;border-radius:8px;max-width:100%;max-height:190px;box-shadow:0 2px 12px #0000002e}.status{border-radius:10px;margin:0;padding:10px 12px;font-size:14px}.status.ok{background:var(--ok-bg)}.status.warn{background:var(--warn-bg)}.hint{color:var(--muted);margin:0;font-size:13px}.center{text-align:center}.pill{background:var(--card);color:var(--accent);border:0;border-radius:12px;padding:8px 14px;font-weight:500}.pill.big{text-align:left;width:100%;padding:14px}.row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.row .pill.big{text-align:center}.check{align-items:center;gap:8px;font-size:14px;display:flex}.danger{background:var(--card);color:var(--out);border:0;border-radius:12px;padding:14px;font-weight:600}.pages{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;display:grid}.page{position:relative}.page img{border-radius:8px;width:100%;display:block;box-shadow:0 1px 6px #0003}.page button{color:#fff;background:#0009;border:0;border-radius:50%;width:26px;height:26px;position:absolute;top:4px;right:4px}.page span{color:var(--muted);font-size:12px}#doc-pages canvas,#doc-pages img{background:#fff;border-radius:4px;width:100%;height:auto}.busy{z-index:50;color:#fff;background:#00000073;place-content:center;justify-items:center;display:grid;position:fixed;inset:0}.busy[hidden]{display:none}.spinner{border:4px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:42px;height:42px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.toast{left:16px;right:16px;bottom:calc(100px + var(--sab));z-index:60;color:#fff;text-align:center;background:#1e1e20f2;border-radius:12px;padding:12px 16px;font-size:14px;position:fixed}.toast[hidden]{display:none}.search-row{gap:8px;display:flex}.search-row #search{flex:1;min-width:0}.chip{white-space:nowrap;color:#ffd58a;background:#ffffff26;border:0;border-radius:10px;padding:0 12px;font-size:14px}.chip[aria-pressed=true]{color:#3a2a00;background:#ffd58a;font-weight:600}.nodoc-tag{color:#c27c0e;font-weight:500}.nodoc{background:var(--warn-bg);border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;font-size:14px;display:flex}.nodoc span{color:var(--muted);font-size:13px}.doc-actions .pill{padding:12px}.center-link{color:var(--out);place-self:center;font-size:14px}.sync-badge{white-space:nowrap;color:#cfe0ff;background:#ffffff26;border:0;border-radius:10px;padding:6px 9px;font-size:13px}.sync-badge.bad{color:#3a2a00;background:#ffd58a;font-weight:600}.stack{flex-direction:column;gap:10px;display:flex}.sync-info{background:var(--card);border-radius:12px;margin:0;padding:12px 14px;font-size:14px}.sync-info .out{color:var(--out)}#dlg-first .pill.big small{color:var(--muted);font-weight:400}#dlg-first .pill.big strong{color:var(--accent)}.chips{scrollbar-width:none;margin-top:10px;gap:8px;margin-inline:-16px;padding-inline:16px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chips .chip{color:#dfe7ff;flex:none;padding:7px 12px}.chip-select{appearance:none;max-width:210px}.chip-select.active,.chips .chip[aria-pressed=true]{color:#3a2a00;background:#ffd58a;font-weight:600}.filter-banner{background:#ffffff1f;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:8px 10px;font-size:13.5px;display:flex}.filter-banner .chip{color:#fff;flex:none;padding:6px 10px}.cat-tag{color:var(--accent)}.nocat-tag{color:var(--muted);font-style:italic}.list.selecting li{cursor:pointer}.check-dot{border:2px solid var(--muted);border-radius:50%;flex:none;width:22px;height:22px}.list li.selected{background:color-mix(in srgb, var(--accent) 12%, var(--card))}.list li.selected .check-dot{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 3px var(--card)}.select-bar{z-index:6;padding:12px 14px calc(12px + var(--sab));background:color-mix(in srgb, var(--card) 92%, transparent);-webkit-backdrop-filter:blur(18px);border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid;position:fixed;bottom:0;left:0;right:0}.select-bar #select-count{text-align:center;font-weight:600}.primary-pill{background:var(--accent);color:#fff}.primary-pill:disabled{opacity:.45}.cat-hint{background:var(--ok-bg);color:var(--in);border-radius:6px;margin-left:4px;padding:1px 6px;font-size:11px;font-style:normal}.field select{width:100%;min-height:28px;color:var(--text);background:0 0;border:0;padding:2px 0;font-size:17px}.sheet-body h4{color:var(--muted);margin:6px 0 -4px;font-size:13px}.danger-text{color:var(--out)!important}.danger-link{color:var(--out)}.cat-settings{flex-direction:column;gap:10px;display:flex}.cat-list{background:var(--card);border-radius:12px;margin:0;padding:0;list-style:none;overflow:hidden}.cat-list li{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:8px 8px 8px 14px;display:flex}.cat-list li:last-child{border-bottom:0}.cat-name{flex:1;min-width:0}.cat-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.icon-small{background:var(--bg);border:0;border-radius:8px;width:34px;height:32px}.cat-settings .link{align-self:flex-start}.stats-body{gap:12px}.stats-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.segmented.small{flex:240px;grid-template-columns:repeat(3,1fr)}.segmented.small span{padding:9px;font-size:14px}.segmented input:checked+span{border-color:var(--accent);color:var(--accent)}.stats-selects{flex:220px;align-items:center;gap:8px;display:flex}.stats-selects select{background:var(--card);border:0;border-radius:10px;flex:1;padding:9px 10px;font-size:15px}#stats-content{flex-direction:column;gap:12px;display:flex}.card{background:var(--card);border-radius:14px;min-width:0;padding:14px}.card h3{text-transform:none;color:var(--text);letter-spacing:0;margin:0 0 10px;font-size:15px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.kpi{background:var(--card);border-radius:14px;flex-direction:column;gap:2px;min-width:0;padding:12px;display:flex}.kpi-label{color:var(--muted);font-size:12.5px}.kpi-value{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:21px;font-weight:600;overflow:hidden}.kpi-value.neg{color:var(--out)}.delta{font-size:12px;font-weight:500}.delta.good{color:var(--in)}.delta.bad{color:var(--out)}.delta.muted{color:var(--muted);font-weight:400}.delta-label{color:var(--muted);font-size:11.5px}.stats-grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.legend{color:var(--muted);flex-wrap:wrap;gap:14px;margin-bottom:6px;font-size:13px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.sw{border-radius:3px;width:10px;height:10px;display:inline-block}.sw.in{background:var(--chart-in)}.sw.out{background:var(--chart-out)}.sw.prev{background:var(--muted);border-radius:1px;width:14px;height:2px}.chart{max-width:100%;display:block;overflow:visible}.chart .grid{stroke:var(--grid);stroke-width:1px}.chart .baseline{stroke:var(--muted);stroke-width:1px;opacity:.5}.chart .axis{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:10.5px}.chart .b-in{fill:var(--chart-in)}.chart .b-out{fill:var(--chart-out)}.chart .prev{stroke:var(--text);stroke-width:2px;stroke-linecap:round;opacity:.55}.chart .hit{fill:#0000}.chart .month{cursor:pointer}.chart .month.dim .b-in,.chart .month.dim .b-out{opacity:.3}.chart .month:active .hit,.chart .month:hover .hit{fill:var(--line);opacity:.5}.barlist{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.barlist button{text-align:left;background:0 0;border:0;border-radius:8px;flex-direction:column;gap:6px;width:100%;padding:8px 4px;display:flex}.barlist button:active{background:var(--bg)}.bl-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.bl-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.bl-val{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.bl-val small{color:var(--muted);font-weight:400}.bl-track{background:var(--bg);border-radius:4px;height:8px;overflow:hidden}.bl-fill{background:var(--chart-out);border-radius:0 4px 4px 0;height:100%;display:block}.bl-fill.none{background:var(--muted);opacity:.5}.sub-meta{color:var(--muted);font-size:12.5px}.sub-total{background:var(--bg);font-variant-numeric:tabular-nums;border-radius:10px;justify-content:space-between;gap:10px;margin-bottom:6px;padding:10px 12px;display:flex}.hints{background:var(--warn-bg);flex-wrap:wrap;gap:10px;padding:10px;display:flex}.hints button{background:var(--card);text-align:left;border:0;border-radius:10px;flex:140px;padding:10px 12px;font-size:14px}.hints.ok{background:var(--ok-bg);font-size:14px}.table-view summary{color:var(--accent);cursor:pointer;padding:6px 0;font-size:14px}.table-view table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.table-view th,.table-view td{text-align:right;border-bottom:1px solid var(--line);padding:5px 4px}.table-view th:first-child,.table-view td:first-child{text-align:left}@media (min-width:700px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid .card.wide{grid-column:1/-1}}dialog.sheet.stats-sheet{width:100%;max-width:none}.stats-sheet .sheet-body{width:100%;max-width:1100px;padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right));margin:0 auto}.missing-banner{color:#3a2a00;text-align:left;background:#ffd58a;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;margin-bottom:10px;padding:9px 12px;font-size:14.5px;display:flex}.missing-card{background:var(--card);border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex}.mc-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.mc-amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.mc-meta{color:var(--muted);font-size:13px}.missing-card .row .pill{background:var(--bg);white-space:nowrap;padding:11px 8px;font-size:15px}.mc-links{justify-content:space-between;gap:10px;display:flex}.mc-links .link{font-size:14px}.muted{color:var(--muted);font-weight:400}#missing-inactive{flex-direction:column;gap:10px;display:flex}#missing-inactive:empty{display:none}.center-text{text-align:center!important}.pill.big.primary-pill{color:#fff;font-weight:600}#tax-check .row .pill{padding:11px 8px}.missing-card.group{border:2px solid #ffd58a}.field.compact{background:var(--bg);padding:8px 12px}.field.compact select{font-size:15px}html:has(dialog[open]){overflow:hidden}html:has(dialog[open]) body{overflow:hidden}dialog .sheet-body,dialog.sheet{overscroll-behavior:contain}dialog:focus{outline:none}
