:root{--bg: #e6e9ec;--card: #fafbfc;--line: #d4d9dd;--line2: #e8ecef;--ink: #161a1f;--ink2: #474e55;--muted: #828a91;--acc: #1c6a70;--acc-soft: #d9eaeb;--warn: #b08433;--warn-soft: #efe7d2;--neg: #ad4f2b;--neg-soft: #f0e0d6;--ui: "IBM Plex Sans", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--radius: 6px;--radius-pill: 99px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--ui);line-height:1.5;-webkit-font-smoothing:antialiased}.num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}a{color:inherit;text-decoration:none}button{font-family:inherit}.app{max-width:760px;margin:0 auto;padding:max(10px,env(safe-area-inset-top)) 10px calc(40px + env(safe-area-inset-bottom))}.topbar{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px}.brand .sq{width:24px;height:24px;border-radius:6px;object-fit:cover;border:1px solid var(--line);display:block}.topbar .spacer{flex:1}.navlink{font-family:var(--mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:6px 9px;border-radius:6px;border:1px solid transparent}.navlink:hover{color:var(--ink2)}.navlink.active{color:var(--acc);background:var(--acc-soft)}.monthrow{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.mo{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px}.arw{width:28px;height:28px;border-radius:6px;border:1px solid var(--line);display:grid;place-items:center;color:var(--muted);background:var(--card);cursor:pointer;font-size:13px}.arw:hover{color:var(--ink);border-color:var(--muted)}.chip{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;padding:4px 9px;border-radius:var(--radius-pill);background:var(--neg-soft);color:var(--neg)}.chip.ok{background:var(--acc-soft);color:var(--acc)}.chip .dot{width:5px;height:5px;border-radius:50%;background:currentColor}.verdict{background:var(--neg-soft);border:1px solid color-mix(in srgb,var(--neg) 24%,transparent);border-radius:var(--radius);padding:10px;margin-bottom:8px}.verdict .vh{display:flex;align-items:center;gap:6px;font-weight:700;font-size:14px;color:var(--neg)}.verdict .vs{font-size:12px;color:var(--ink2);margin:4px 0 8px}.verdict .vs b{color:var(--ink)}.vrow{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;background:var(--card);border-radius:5px;margin-top:5px;border:1px solid var(--line);min-height:40px}.vrow .nm{font-weight:600;font-size:12.5px;line-height:1.15}.vrow .nm small{display:block;color:var(--muted);font-weight:400;font-size:10px}.vrow .amt{font-weight:700;color:var(--neg);font-size:13px;flex:0 0 auto}.rta{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;margin-bottom:10px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.rta.over{border-color:color-mix(in srgb,var(--neg) 40%,var(--line));background:var(--neg-soft)}.rta .lab{font-size:9.5px;color:var(--muted);font-weight:600;margin:0 0 2px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em}.rta .big{font-size:24px;font-weight:700;letter-spacing:-.02em;line-height:1}.rta.over .big{color:var(--neg)}.rta .big .c{font-size:12px;color:var(--muted);font-weight:500;margin-left:3px}.rta .hint{font-size:10px;color:var(--acc);font-weight:600;text-align:right;max-width:46%;line-height:1.3}.rta.over .hint{color:var(--neg)}.msum{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:6px}.msum-it{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:7px 11px}.msum-it .l{display:block;font-size:9.5px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;margin-bottom:1px}.msum-it .v{font-size:16px;font-weight:700;letter-spacing:-.01em}.msum-it .v .c{font-size:10px;color:var(--muted);font-weight:500;margin-left:2px}.grupa-exp{margin:18px 0}.ghead{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:0 2px 5px;cursor:pointer}.ghead .gn{font-size:9.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink2);font-family:var(--mono)}.ghead .gn .chev{color:var(--muted);margin-right:5px;display:inline-block;width:9px}.ghead .gv{font-size:10px;color:var(--muted);font-weight:500}.ghead .gv b{color:var(--ink)}.ghead .gv b.neg{color:var(--neg)}.reszta-label{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:18px 2px 6px}.reszta-label .gn{font-size:9.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-family:var(--mono)}.reszta-label .gv{font-size:10px;color:var(--muted);font-weight:500}.ewrap{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--card)}.env{display:block;padding:7px 11px;min-height:40px}.env+.env{border-top:1px solid var(--line2)}.env:hover{background:#f4f6f7}.env .r1{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.env .nm{font-weight:600;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.env .nm .mut{font-weight:400;font-size:10px;color:var(--muted);margin-left:6px;font-family:var(--mono)}.env .av{font-weight:700;font-size:14px;letter-spacing:-.01em;white-space:nowrap;flex:0 0 auto}.env .av.neg{color:var(--neg)}.env .av .c{font-size:9px;color:var(--muted);font-weight:500;margin-left:1px}.bar{height:3px;border-radius:var(--radius-pill);background:var(--line);margin-top:5px;overflow:hidden}.bar i{display:block;height:100%;border-radius:var(--radius-pill);background:var(--acc)}.bar i.warn{background:var(--warn)}.bar i.over{background:var(--neg)}.calm{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 11px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:8px;cursor:pointer;min-height:40px}.calm:hover{background:#f4f6f7}.calm.uwaga{border-color:color-mix(in srgb,var(--neg) 28%,var(--line))}.calm .l{display:flex;align-items:center;gap:8px;font-weight:600;font-size:12.5px}.calm .tick{width:16px;height:16px;border-radius:50%;background:var(--acc-soft);color:var(--acc);display:grid;place-items:center;font-size:9px;font-weight:700;flex:0 0 auto}.calm .tick.neg{background:var(--neg-soft);color:var(--neg)}.calm .r{font-size:11px;color:var(--muted);white-space:nowrap}.calm .r b{color:var(--ink);font-weight:600}.calm .r b.neg{color:var(--neg)}.calm .r .chev{margin-left:6px}.foot{font-size:9.5px;color:var(--muted);text-align:center;margin:10px 0;font-family:var(--mono)}.monthrow .mr-right{display:flex;align-items:center;gap:8px}.editbtn{font-family:var(--mono);font-size:11px;font-weight:600;padding:5px 10px;border-radius:6px;border:1px solid var(--line);background:var(--card);color:var(--ink2);cursor:pointer;min-height:30px}.editbtn:hover{border-color:var(--muted);color:var(--ink)}.editbtn.on{background:var(--acc);border-color:var(--acc);color:#fff}.editnote{font-size:11px;color:var(--ink2);background:var(--acc-soft);border:1px solid color-mix(in srgb,var(--acc) 22%,transparent);border-radius:var(--radius);padding:7px 10px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:10px}.linkbtn2{background:none;border:none;color:var(--acc);font-family:var(--mono);font-size:11px;font-weight:700;cursor:pointer;padding:0;white-space:nowrap}.linkbtn2:hover{text-decoration:underline}.verdict .vrow .nm{min-width:0}.pokryj{font-family:var(--mono);font-size:11px;font-weight:700;padding:7px 10px;border-radius:6px;border:1px solid var(--neg);background:var(--neg);color:#fff;cursor:pointer;flex:0 0 auto;white-space:nowrap}.pokryj:hover{filter:brightness(1.06)}.ov{position:fixed;top:0;right:0;bottom:0;left:0;background:#14181c80;display:flex;align-items:flex-end;justify-content:center;z-index:50}.sheet{background:var(--card);border:1px solid var(--line);border-radius:14px 14px 0 0;width:100%;max-width:480px;padding:16px 16px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px #0000002e}.sheet-h{font-weight:700;font-size:16px;margin-bottom:12px}.fld{display:block;margin-bottom:10px}.fld>span{display:block;font-size:10px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:4px}.fld select,.fld input{width:100%;font-family:var(--ui);font-size:14px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.fld input.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.fld select:focus,.fld input:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 2px var(--acc-soft)}.sheet-note{font-size:12px;color:var(--ink2);margin:2px 0 10px}.sheet-note .warn-t{color:var(--neg);font-weight:600}.sheet-err{font-size:12.5px;color:var(--neg);margin:2px 0 10px}.sheet-actions{display:flex;gap:10px;margin-top:6px}.sheet-actions .btn{flex:1;width:auto}.btn.ghost{background:var(--card);color:var(--ink2);border-color:var(--line)}.btn.ghost:hover{border-color:var(--muted);color:var(--ink)}@media (min-width: 560px){.ov{align-items:center}.sheet{border-radius:14px}}.env.erow{cursor:default}.env.erow:hover{background:var(--card)}.env.erow.dragging{background:#eef2f3;box-shadow:0 5px 16px #00000024;border-radius:6px;position:relative;z-index:2}.grip{cursor:grab;color:var(--muted);font-size:14px;line-height:1;flex:0 0 auto;padding:4px;margin-left:-2px;touch-action:none;-webkit-user-select:none;user-select:none;align-self:center}.grip:active{cursor:grabbing}.env.erow .nm{flex:1 1 auto}.env.erow .nm small{display:block;font-weight:400;font-size:10px;color:var(--muted)}.env.erow .nm small b{font-weight:600;color:var(--ink2)}.env.erow .nm small b.neg{color:var(--neg)}.wbtn{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700;border:1px solid var(--line);background:#fff;border-radius:6px;padding:5px 9px;cursor:pointer;color:var(--ink);display:inline-flex;align-items:center;gap:6px;min-height:34px;flex:0 0 auto}.wbtn:hover{border-color:var(--acc);color:var(--acc)}.wbtn .pen{font-size:10px;color:var(--muted)}.kin{font-size:14px;font-weight:700;width:100px;text-align:right;border:1px solid var(--acc);border-radius:6px;padding:5px 9px;background:#fff;color:var(--ink);flex:0 0 auto}.kin:focus{outline:none;box-shadow:0 0 0 2px var(--acc-soft)}.kin:disabled{opacity:.6}.dethead{display:flex;align-items:center;gap:8px;margin-bottom:10px}.back{width:30px;height:30px;border-radius:7px;border:1px solid var(--line);display:grid;place-items:center;color:var(--muted);background:var(--card);font-size:14px;cursor:pointer}.back:hover{color:var(--ink)}.dethead .tt{font-weight:700;font-size:16px}.detbig{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:14px;margin-bottom:10px}.detbig .l{font-size:9.5px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.detbig .v{font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.05}.detbig .v.neg{color:var(--neg)}.detbig .meta{display:flex;gap:18px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line2);flex-wrap:wrap}.detbig .meta div{font-size:10px;color:var(--muted)}.detbig .meta b{display:block;font-size:14px;color:var(--ink);font-family:var(--mono);font-weight:600;margin-top:2px}.detact{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.abtn{font-family:var(--mono);font-size:11.5px;font-weight:600;padding:8px 11px;border-radius:7px;border:1px solid var(--line);background:var(--card);color:var(--ink2);cursor:pointer;min-height:36px}.abtn:hover{border-color:var(--acc);color:var(--acc)}.abtn.on{background:var(--acc);border-color:var(--acc);color:#fff}.detact .kin{min-height:36px}.cel-ed{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:12px;margin-bottom:10px}.cel-ed .fld-row{display:flex;gap:10px}.cel-ed .fld-row .fld{flex:1}.cel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;margin-bottom:10px}.cel .t{display:flex;justify-content:space-between;font-size:11px;color:var(--ink2);margin-bottom:5px}.cel .t b{font-family:var(--mono)}.cel .pb{height:6px;border-radius:var(--radius-pill);background:var(--line);overflow:hidden}.cel .pb i{display:block;height:100%;background:var(--acc);border-radius:var(--radius-pill)}.txlab{font-size:9.5px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink2);font-weight:600;margin:6px 2px 8px}.txlist{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}.tx{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;background:var(--card);min-height:40px}.tx+.tx{border-top:1px solid var(--line2)}.tx .nm{font-weight:500;font-size:12.5px;min-width:0}.tx .nm small{display:block;color:var(--muted);font-size:10px;font-family:var(--mono)}.tx .nm .ctx{color:var(--muted);font-weight:400;font-size:10px}.tx .nm .ctx.pend{color:var(--neg)}.tx .am{font-weight:600;font-size:12.5px;flex:0 0 auto}.tx .am.neg{color:var(--neg)}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.fchip{font-family:var(--mono);font-size:11px;font-weight:600;padding:6px 11px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--card);color:var(--ink2);cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:32px}.fchip:hover{border-color:var(--muted)}.fchip.on{background:var(--acc);border-color:var(--acc);color:#fff}.fchip.alert:not(.on){border-color:color-mix(in srgb,var(--neg) 35%,var(--line));color:var(--neg)}.fchip .cnt{background:var(--neg);color:#fff;border-radius:var(--radius-pill);padding:0 5px;font-size:9px;min-width:15px;text-align:center;line-height:15px}.fchip.on .cnt{background:#ffffff47}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.filters select,.filters input{font-family:var(--ui);font-size:12.5px;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:var(--card);color:var(--ink);min-height:38px}.filters input{flex:1;min-width:120px}.filters input:focus,.filters select:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 2px var(--acc-soft)}.nwcard{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:16px;margin-bottom:10px}.nwcard .l{font-size:9.5px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.nwcard .v{font-size:32px;font-weight:700;letter-spacing:-.02em}.nwsplit{display:grid;grid-template-columns:1fr 1fr;gap:10px}.nwsplit .box{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:13px}.nwsplit .box .l{font-size:9.5px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.nwsplit .box .v{font-size:19px;font-weight:700;margin-top:3px}.eqbox{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:13px 14px;margin:12px 0}.eqbox h4{font-size:10px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink2);margin:0 0 10px;font-weight:600}.eqn{font-size:12px;color:var(--ink2);display:flex;justify-content:space-between;padding:5px 0}.eqn+.eqn{border-top:1px solid var(--line2)}.eqn b{font-family:var(--mono);color:var(--ink);font-weight:600}.eqn.tot{margin-top:3px;padding-top:8px;border-top:1px solid var(--line)}.eqn.tot span{font-weight:700;color:var(--ink)}.login{max-width:360px;margin:18vh auto 0;padding:0 16px;text-align:center}.login .sq{width:60px;height:60px;border-radius:14px;object-fit:cover;border:1px solid var(--line);margin:0 auto 16px;display:block}.login h1{font-size:22px;margin:0 0 6px}.login p{color:var(--ink2);font-size:13.5px;margin:0 0 18px}.login input{width:100%;font-family:var(--ui);font-size:14px;padding:11px 13px;border:1px solid var(--line);border-radius:8px;background:var(--card);margin-bottom:10px;text-align:center}.login input:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 2px var(--acc-soft)}.btn{display:inline-block;width:100%;text-align:center;font-size:14px;font-weight:600;padding:11px;border-radius:8px;border:1px solid var(--acc);background:var(--acc);color:#fff;cursor:pointer}.btn:disabled{opacity:.55;cursor:default}.login .linkbtn{background:none;border:none;color:var(--muted);font-size:12.5px;margin-top:12px;cursor:pointer;font-family:var(--ui)}.login .linkbtn:hover{color:var(--ink2)}.login .ok{color:var(--acc);font-size:13px;margin-top:14px;font-weight:600}.login .err{color:var(--neg);font-size:12.5px;margin-top:12px}.state{text-align:center;color:var(--muted);padding:40px 16px;font-size:13px}.state.err{color:var(--neg)}.skel{background:linear-gradient(90deg,var(--line2),var(--line),var(--line2));border-radius:var(--radius)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}.skel{animation:pulse 1.3s ease-in-out infinite}.skelrow{height:44px;margin-bottom:6px}@media (min-width: 860px){.app{max-width:1080px}.dash-grid{display:grid;grid-template-columns:1fr 300px;gap:18px;align-items:start}.dash-side{position:sticky;top:12px}}@media (max-width: 859px){.dash-side{display:block}}
