:root{color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:env(safe-area-inset-top,0px)}body{margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#fff;color:#000}img{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}:root{--paper:#F2F4F6;--surface:#FFFFFF;--ink:#17212C;--muted:#5E6B78;--faint:#8A96A3;--line:#DCE1E6;--line2:#EBEEF1;--steel:#23507A;--steel-d:#1A3D5E;--steel-l:#E6EEF5;--on-steel:#FFFFFF;--side:#132230;--side-2:#1C3043;--side-ink:#C8D4DF;--side-line:#2B435A;--red:#B42318;--red-l:#FDECEA;--amber:#B54708;--amber-l:#FEF3E2;--green:#067647;--green-l:#E7F6EC;--band:#EEF2F5;--grand:#DDE8F2;--shadow:0 8px 30px rgba(15,30,45,.22);--head:"Barlow Semi Condensed","Bahnschrift","DIN Alternate","Roboto Condensed","Arial Narrow",sans-serif;--body:"Segoe UI","Inter",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;--mono:ui-monospace,"SFMono-Regular",Consolas,Menlo,monospace}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--paper:#0E151C;--surface:#162029;--ink:#E6ECF1;--muted:#9AA8B5;--faint:#6F7E8C;--line:#2A3947;--line2:#223039;--steel:#6FA3D6;--steel-d:#8DB8E3;--steel-l:#1B3248;--on-steel:#0E151C;--side:#0A1118;--side-2:#14212C;--side-ink:#AEBBC8;--side-line:#243543;--red:#F07A6C;--red-l:#3A1A16;--amber:#E3A948;--amber-l:#33270F;--green:#5CC98A;--green-l:#15301F;--band:#1B2630;--grand:#1F3A52;--shadow:0 8px 30px rgba(0,0,0,.5)}}:root[data-theme=dark]{color-scheme:dark;--paper:#0E151C;--surface:#162029;--ink:#E6ECF1;--muted:#9AA8B5;--faint:#6F7E8C;--line:#2A3947;--line2:#223039;--steel:#6FA3D6;--steel-d:#8DB8E3;--steel-l:#1B3248;--on-steel:#0E151C;--side:#0A1118;--side-2:#14212C;--side-ink:#AEBBC8;--side-line:#243543;--red:#F07A6C;--red-l:#3A1A16;--amber:#E3A948;--amber-l:#33270F;--green:#5CC98A;--green-l:#15301F;--band:#1B2630;--grand:#1F3A52;--shadow:0 8px 30px rgba(0,0,0,.5)}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:var(--paper);color:var(--ink);font:14px/1.45 var(--body);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{font-family:var(--head);font-weight:600;margin:0;letter-spacing:.01em;text-wrap:balance}h1{font-size:24px}h2{font-size:18px}h3{font-size:15px}:focus-visible{outline:2px solid var(--steel);outline-offset:2px}.hidden{display:none!important}.mono{font-family:var(--mono);font-size:12.5px}.muted{color:var(--muted)}.faint{color:var(--faint)}small{font-size:11.5px}.f{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);font-weight:600;min-width:0}.i{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:6px;padding:8px 10px;font-weight:400;font-size:14px;min-width:0}.i:disabled{background:var(--paper);color:var(--muted)}textarea.i{min-height:64px;resize:vertical}.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:6px;padding:7px 12px;cursor:pointer;font-weight:600;font-size:13px}.btn:hover{border-color:var(--steel)}.btn.pri{background:var(--steel);border-color:var(--steel);color:var(--on-steel)}.btn.pri:hover{background:var(--steel-d);border-color:var(--steel-d)}.btn.danger{color:var(--red);border-color:var(--red)}.btn.sm{padding:4px 9px;font-size:12px}.btn:disabled{opacity:.5;cursor:default}.err{color:var(--red);font-size:13px;min-height:18px}.hint{font-size:12px;color:var(--muted)}#app{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}aside{background:var(--side);color:var(--side-ink);display:flex;flex-direction:column;position:sticky;top:env(safe-area-inset-top,0px);align-self:start;height:100vh;max-height:100vh;overflow:auto}.brand{padding:18px 18px 14px;border-bottom:1px solid var(--side-line)}.brand b{display:block;font:600 19px var(--head);color:#fff}.brand small{color:#8397aa}nav{padding:10px 8px;display:flex;flex-direction:column;gap:2px;flex:1}.ng{font:600 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#6f8499;padding:12px 10px 4px}nav button{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;cursor:pointer;color:var(--side-ink);font-size:13.5px}nav a.navlink{box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;cursor:pointer;color:var(--side-ink);font-size:13.5px;text-decoration:none}nav a.navlink:hover{background:var(--side-2)}nav a.navlink:focus-visible{outline:2px solid #8DB8E3}nav button:hover{background:var(--side-2)}nav button:focus-visible{outline:2px solid #8DB8E3}nav button[aria-current=page]{background:var(--steel);color:var(--on-steel);font-weight:600}nav .ct{font:11px var(--mono);opacity:.7}.side-foot{padding:14px 18px;border-top:1px solid var(--side-line);font-size:12.5px}.side-foot .btns{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.side-foot .btn{background:transparent;color:var(--side-ink);border-color:var(--side-line)}main{padding:22px clamp(16px,3vw,36px) 48px;min-width:0}.topbar{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin-bottom:16px}.topbar .sub{color:var(--muted);font-size:13px}.sync{margin-left:auto;font:12px var(--mono);color:var(--muted)}@media(max-width:860px){#app{grid-template-columns:1fr}aside{position:static;max-height:none;height:auto}nav{flex-direction:row;overflow-x:auto;padding:8px;flex:none}.ng{display:none}nav button{white-space:nowrap}.side-foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 16px}.side-foot .btns{margin-top:0}}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-bottom:12px}.toolbar .f{min-width:120px}.toolbar .grow{flex:1 1 220px}.toolbar .sp{flex:1}.sumstrip{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.chip{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 14px;min-width:120px}.chip span{display:block;font:600 10.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.chip b{font:600 22px var(--head);font-variant-numeric:tabular-nums}.chip.big b{font-size:28px;color:var(--steel)}.tbox{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:auto;max-height:calc(100vh - 230px)}.pager{display:flex;align-items:center;gap:8px;justify-content:flex-end;margin:8px 0;font-size:13px;color:var(--muted)}.pager .btn[disabled]{opacity:.4;cursor:default}table.t{border-collapse:collapse;width:100%;min-width:760px;font-size:13px}table.t th{font:600 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);background:var(--band);white-space:nowrap;position:sticky;top:0;z-index:3;box-shadow:0 1px 0 var(--line)}table.t td{padding:8px 10px;border-bottom:1px solid var(--line2);vertical-align:top}table.t td.n,table.t th.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}td.n small{display:block;color:var(--muted);font-size:10.5px}td.neg{color:var(--red)}tr.row{cursor:pointer}tr.row:hover td{background:var(--steel-l)}tr.row:focus-visible{outline:2px solid var(--steel);outline-offset:-2px}tr.band td{background:var(--band);font:600 13px var(--head);letter-spacing:.04em;text-transform:uppercase;color:var(--steel);padding:7px 10px;border-bottom:1px solid var(--line)}tr.band td span{font:11px var(--mono);color:var(--muted);text-transform:none;letter-spacing:0;margin-left:8px}tr.sub td{background:var(--steel-l);font-weight:600;border-bottom:1px solid var(--line)}tr.grand td{background:var(--grand);font:600 14px var(--head);border-bottom:0}td.rem{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}td.wrap{max-width:300px}.pill{display:inline-flex;align-items:center;gap:5px;font:600 11.5px var(--body);padding:2px 8px;border-radius:999px;white-space:nowrap}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill.g{color:var(--green);background:var(--green-l)}.pill.a{color:var(--amber);background:var(--amber-l)}.pill.x{color:var(--muted);background:var(--band)}.tag{font:600 11px var(--mono);padding:2px 7px;border-radius:4px;background:var(--band);color:var(--muted);white-space:nowrap}.tag.in{background:var(--green-l);color:var(--green)}.tag.out{background:var(--amber-l);color:var(--amber)}.bank{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.bank i{width:9px;height:9px;border-radius:2px;display:inline-block}.stale{color:var(--amber)}.empty{padding:36px 16px;text-align:center;color:var(--muted)}.chk{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;padding:5px 10px;border:1px solid var(--line,#ccc);border-radius:8px;cursor:pointer}.chk input{margin:0}.defbox{background:var(--steel-l);border-left:3px solid var(--steel);border-radius:6px;padding:10px 14px;margin-bottom:12px;font-size:13.5px;line-height:1.5}.defbox b{font-weight:700}.note{font-size:12.5px;color:var(--muted);margin-top:10px}.warn{background:var(--amber-l);color:var(--amber);border-radius:6px;padding:8px 12px;font-size:13px;margin-top:10px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:20px}.card{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:6px;cursor:pointer;text-align:left}.card:hover{border-color:var(--steel)}.card .k{font:600 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.card .v{font:600 28px var(--head);font-variant-numeric:tabular-nums}.card .m{font-size:12.5px;color:var(--muted)}.ok{color:var(--green)}.bad{color:var(--red)}.sec{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}.mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.ov{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a121a8c;display:flex;align-items:flex-start;justify-content:center;padding:max(16px,env(safe-area-inset-top,0px)) 16px 16px;overflow:auto;z-index:50}.modal{background:var(--surface);border-radius:10px;width:100%;max-width:760px;box-shadow:var(--shadow);margin:auto 0}.modal header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line)}.modal .x{all:unset;cursor:pointer;font-size:22px;line-height:1;padding:2px 8px;color:var(--muted)}.modal .x:focus-visible{outline:2px solid var(--steel)}.mb{padding:16px 18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mb .full{grid-column:1/-1}.modal footer{display:flex;flex-wrap:wrap;gap:8px;padding:12px 18px;border-top:1px solid var(--line);align-items:center}.modal footer .sp{flex:1}@media(max-width:560px){.mb{grid-template-columns:1fr}}.chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pc{display:inline-flex;align-items:center;gap:4px;background:var(--steel-l);color:var(--steel);border-radius:999px;padding:3px 4px 3px 10px;font-size:12.5px;font-weight:600}.pc button{all:unset;cursor:pointer;padding:0 6px;font-size:15px;line-height:1}.addrow{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.addrow .i{flex:1 1 140px;width:auto}.hist{grid-column:1/-1;border:1px solid var(--line);border-radius:6px;overflow:auto}.hist table{width:100%;border-collapse:collapse;font-size:12.5px;min-width:380px}.hist th,.hist td{padding:5px 8px;text-align:left;border-bottom:1px solid var(--line2)}.hist th{font:600 10.5px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:var(--band)}.hist td.n,.hist th.n{text-align:right;font-variant-numeric:tabular-nums}.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%);background:var(--ink);color:var(--paper);padding:9px 16px;border-radius:8px;font-size:13px;z-index:80;max-width:calc(100vw - 32px)}.ck{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-bottom:1px solid var(--line2)}.ck:last-child{border-bottom:0}.ck input{margin-top:3px;width:17px;height:17px;flex:none}.ck.done .tx{color:var(--muted);text-decoration:line-through}.ck .ar{font:600 11px var(--mono);color:var(--steel);letter-spacing:.06em;text-transform:uppercase;display:block;margin-bottom:2px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}#login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.login-art{background:var(--side);color:#fff;padding:48px clamp(24px,5vw,64px);display:flex;flex-direction:column;justify-content:space-between;gap:32px}.login-art h1{font-size:clamp(28px,4vw,40px);color:#fff;margin-top:14px;line-height:1.1}.login-art p{color:#a9b9c9;max-width:44ch;margin:14px 0 0}.login-art .eb{color:#8397aa;font-size:13px}.codes{display:flex;flex-wrap:wrap;gap:8px}.codes span{font:600 12px var(--mono);letter-spacing:.06em;border:1px solid #2B435A;color:#c8d4df;padding:4px 9px;border-radius:4px}.login-form{display:flex;align-items:center;justify-content:center;padding:32px 16px}.login-form form{width:100%;max-width:340px;display:flex;flex-direction:column;gap:14px}@media(max-width:760px){#login{grid-template-columns:1fr}.login-art{padding:28px 16px;gap:18px}}.sumstrip .chip.bad b{color:var(--red)}.pill.r{color:var(--red);background:var(--red-l)}.days{font:600 18px var(--head);color:var(--red);font-variant-numeric:tabular-nums}.empty b{display:block;color:var(--ink);font:600 20px var(--head);margin-bottom:6px}.empty .acts{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:14px}.grp{margin-bottom:18px}.grp>header{display:flex;gap:10px;align-items:baseline;margin-bottom:6px}.grp>header .c{font:600 11.5px var(--mono);color:var(--red)}.cell{display:inline-block;min-width:78px;text-align:center;border-radius:4px;padding:3px 6px;font:600 12px var(--mono);cursor:pointer;border:0}.cell.ok{background:var(--green-l);color:var(--green)}.cell.late{background:var(--red-l);color:var(--red)}.cell.warn{background:var(--amber-l);color:var(--amber)}.cell.none{background:var(--band);color:var(--muted)}.modal .body{padding:16px 18px;display:grid;gap:16px}.modal h2{font-size:18px}.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.kv div>span:first-child{display:block;font:600 10.5px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.tl{display:grid;gap:12px}.rs{border:1px solid var(--line);border-radius:6px;padding:12px;background:var(--paper)}.rs .meta{font:600 11.5px var(--mono);color:var(--muted);margin-bottom:6px}.rs p{margin:0;white-space:pre-wrap}.shots{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.shots img{height:84px;max-width:140px;object-fit:cover;border-radius:4px;border:1px solid var(--line);cursor:zoom-in;background:var(--band)}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.lock{font:600 12px var(--mono);color:var(--muted);border:1px dashed var(--line);border-radius:5px;padding:8px 10px}.light{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:90;padding:16px}.light img{max-width:100%;max-height:100%;border-radius:4px}.cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px;align-items:stretch}.cgrid>.cbox:last-child{grid-column:span 2}@media(max-width:1100px){.cgrid{grid-template-columns:repeat(2,1fr)}.cgrid>.cbox:last-child{grid-column:1/-1}}@media(max-width:700px){.cgrid{grid-template-columns:1fr}}.cbox{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:14px 16px}.cbox h3{font-family:var(--head);font-size:16px;margin:0 0 2px}.cbox .sub{color:var(--faint);font-size:12px;margin-bottom:10px}.dnw{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.dnw svg{flex:0 0 auto}.leg{display:flex;flex-direction:column;gap:6px;flex:1;min-width:140px;font-size:13px}.leg div{display:flex;align-items:center;gap:8px}.leg i{width:10px;height:10px;border-radius:3px;flex:0 0 auto}.leg b{margin-left:auto}.leg div[data-loc]{cursor:pointer}.leg div[data-loc]:hover{text-decoration:underline}.brow{display:grid;grid-template-columns:minmax(90px,38%) 1fr auto;align-items:center;gap:10px;font-size:13px;margin:7px 0}.brow .tr{height:12px;background:var(--line2);border-radius:6px;overflow:hidden;display:flex}.brow .tr span{display:block;height:100%}.brow .n{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.cbox .tot{font-family:var(--head);font-size:26px;fill:var(--ink)}.cbox .tl{font-size:11px;fill:var(--faint)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.card{min-height:96px}td.act{white-space:nowrap}.cards{grid-template-columns:repeat(3,1fr)}@media(min-width:1500px){.cards{grid-template-columns:repeat(6,1fr)}}@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.cards{grid-template-columns:1fr}}.card{cursor:default}.card:hover{border-color:var(--line)}.mb>.kv,.mb>.grid2,.mb>.lock,.mb>.chk,.mb>.f:not(.full),.mb>.faint{grid-column:1/-1}.mb>.grid2{display:grid}.card.clk,.brow.clk,.leg div.clk{cursor:pointer}.card.clk:hover{border-color:var(--accent,#1F4E79)}.brow.clk:hover,.leg div.clk:hover{background:#0000000d}.shw{border:0;background:none;color:var(--accent,#1F4E79);cursor:pointer;font:inherit;font-size:12px;text-decoration:underline;padding:0 2px}.acct{white-space:nowrap}.acct+.acct{margin-top:2px}.warn a[data-go]{color:inherit;font-weight:600;text-decoration:underline}.tbox th.s:hover{color:var(--ink)}.cbox select.i{width:100%}.lgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}@media(max-width:1000px){.lgrid{grid-template-columns:minmax(0,1fr)}}.lbox{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:14px 16px}.lbox h3{font-family:var(--head);font-size:16px;margin:0 0 2px}.lbox .lsub{color:var(--faint);font-size:12px;margin-bottom:10px}.lbox .addrow{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.lbox .addrow .i{flex:1 1 160px;width:auto}.lbox td.act{white-space:nowrap;text-align:right}.lbox .btn.danger{color:var(--red);border-color:var(--red)}.tbox table.t.tight td,.tbox table.t.tight th{padding:6px 8px}html,body{scrollbar-width:none;-ms-overflow-style:none}#app,aside,nav,main,.tbox,.modal,.mb,#view,.lbox .tbox,.dnw{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0!important;height:0!important;display:none!important;background:transparent}::-webkit-scrollbar-thumb{background:transparent}*,*:before,*:after{box-sizing:border-box}.i,select.i{height:38px;padding:8px 10px;line-height:1.4}textarea.i{height:auto;min-height:64px}.btn{min-height:38px;padding:8px 14px}.btn.sm{min-height:30px;padding:4px 10px}.i:focus-visible,.btn:focus-visible,select.i:focus-visible,textarea.i:focus-visible,input[type=checkbox]:focus-visible,input[type=file]:focus-visible{outline:2px solid var(--steel);outline-offset:2px}.i:focus,select.i:focus,textarea.i:focus{border-color:var(--steel)}.btn.pri{transition:background .15s ease,border-color .15s ease,transform .05s ease}.btn.pri:active{transform:translateY(1px)}.i,.btn{border-radius:6px}.err{min-height:18px}.chip b,.card .v{font-variant-numeric:tabular-nums}.cbox,.lbox,.chip,.card,.modal{scrollbar-width:none}input[type=checkbox]{width:18px;height:18px;accent-color:var(--steel);cursor:pointer}
