.nav .newb{margin-left:auto;font-size:9px;background:#2a3d32;color:#9fd8b0;border-radius:6px;padding:0 5px;font-weight:700}.nav a .newb+.conn-mini{margin-left:4px}.conn-mini{width:8px;height:8px;border-radius:50%;background:#3fd16b;box-shadow:0 0 6px #3fd16b;margin-left:auto}.role-badge{font-size:11px;color:#cfe0d5;background:#1d2d24;border-radius:8px;padding:6px 9px;margin:0 4px 6px}.conn-side{display:flex;align-items:center;gap:6px;color:#9fd8b0;text-decoration:none;font-size:11px;margin-bottom:8px}.conn-dot{display:inline-block;width:14px;height:14px;border-radius:50%;background:#2e9e4f;box-shadow:0 0 0 4px #cdeed6;animation:pulse 2s infinite}.conn-dot.sm{width:8px;height:8px;box-shadow:0 0 0 3px #2a5a3a}@keyframes pulse{50%{opacity:.55}}.card.conn{border-left:4px solid var(--green)}a.tile2{text-decoration:none;color:inherit;display:block}a.tile2:hover{border-color:var(--green)}.v2tiles{margin-bottom:0}.live-dot{animation:pulse 2s infinite}.col-btns{display:flex;flex-direction:column;gap:6px}.col-btns .btn{justify-content:flex-start;text-decoration:none}.example{background:#fff8ec;border:1px dashed #f2c48c;border-radius:10px;padding:8px 12px;font-size:12px;margin-bottom:12px;color:#7a4b12}.tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:12px}.tabs button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 11px;cursor:pointer;font-weight:600;font-size:12px}.tabs button.on{background:var(--dark);color:#fff;border-color:var(--dark)}.tabs.sm button{padding:4px 8px;font-size:11px}.thumb{width:42px;height:42px;object-fit:cover;border-radius:6px;border:1px solid var(--line);cursor:pointer}.scan-prev{margin-top:10px;border:2px dashed #cfd8d2;border-radius:12px;min-height:160px;display:grid;place-items:center;overflow:hidden;background:#fafbfa}.scan-prev img{max-width:100%;max-height:380px}.big-btn{padding:13px 16px!important;font-size:15px!important;justify-content:center}.rev-grid{grid-template-columns:260px 1fr;gap:14px}.slip-big{width:100%;border-radius:8px;border:1px solid var(--line)}.warnrow{background:var(--orangel)}.sched input.qty.sm{width:62px;padding:4px 6px}.sched input.edited{border-color:var(--orange);background:#fff8ec}.sched .selwk{background:#eef7f0}.sched tr.tot td{background:#fafbfa}.dot{display:inline-block;width:11px;height:11px;border-radius:50%}.dot.red{background:var(--red)}.dot.green{background:var(--green)}.steps{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}.step{flex:1;min-width:110px;text-align:center;padding:8px;border-radius:9px;background:#eef1ef;font-weight:700;font-size:12px;color:#6b7a71}.step.on{background:var(--green);color:#fff}.qc label.row{padding:6px 0;border-bottom:1px solid var(--line)}.fc-chart{position:relative;display:flex;align-items:flex-end;gap:4px;height:180px;border-bottom:1px solid var(--line);padding-top:10px}.fc-col{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.fc-bar{width:100%;background:var(--green);border-radius:4px 4px 0 0}.fc-bar.low{background:var(--orange)}.fc-bar.neg{background:var(--red)}.fc-l{font-size:10px;color:var(--muted);text-align:center;margin-top:2px;height:24px}.fc-min{position:absolute;left:0;right:0;border-top:2px dashed var(--red);margin-bottom:26px}.fc-min span{position:absolute;right:0;top:-16px;font-size:10px;color:var(--red)}.viewfinder{position:relative;height:170px;border-radius:12px;background:repeating-linear-gradient(45deg,#1d2d24,#1d2d24 10px,#22362b 10px,#22362b 20px);margin:8px 0;overflow:hidden;display:grid;place-items:center}.vf-line{position:absolute;left:10%;right:10%;height:2px;background:#ff4d4d;box-shadow:0 0 8px #ff4d4d;animation:scanl 2s ease-in-out infinite}.vf-txt{color:#cfe0d5;font-size:12px;border:2px solid #9fd8b0;border-radius:10px;padding:30px 40px}@keyframes scanl{0%,100%{top:15%}50%{top:85%}}.bc-samples{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px}.bc-samples .btn{display:block;text-align:left;white-space:normal}.bc-samples code{font-size:10px;word-break:break-all}.bc-log{margin-top:10px;max-height:380px;overflow:auto}.timeline .tl{border-left:3px solid var(--green);padding:4px 10px;margin:4px 0}.timeline .tl.led{border-color:#cfd8d2;opacity:.85}.tl .att{max-width:220px;margin-top:4px;border-radius:6px}.mailbody{white-space:pre-wrap;background:#fafbfa;border:1px solid var(--line);border-radius:8px;padding:10px;font-family:inherit;font-size:13px}.me-tbl{max-width:560px;font-family:'Arial Narrow',Arial,sans-serif;font-size:14px}.me-tbl td{border:1px solid #333}.me-tbl tr.yel td{background:#fff59d}#printArea{position:fixed;inset:0;z-index:200;background:#e9ecea;overflow:auto;padding:0 0 40px}.pa-bar{position:sticky;top:0;display:flex;align-items:center;gap:10px;background:var(--dark);color:#fff;padding:10px 16px;z-index:2;flex-wrap:wrap}.pdoc{background:#fff;width:210mm;min-height:270mm;margin:16px auto;padding:14mm 13mm;box-shadow:0 2px 12px rgba(0,0,0,.15);font-size:12px;color:#111}.pd-head{display:flex;gap:12px;align-items:flex-start;border-bottom:3px solid #2e9e4f;padding-bottom:10px;margin-bottom:12px}.pd-logo{width:54px;height:54px;border-radius:12px;background:#2e9e4f;color:#fff;font-weight:900;display:grid;place-items:center;font-size:18px}.pd-co{flex:1;font-size:11px}.pd-co b{font-size:15px}.pd-title{text-align:right}.pd-title h2{margin:0;font-size:16px}.pd-no{font-size:18px;font-weight:800;color:#2e9e4f}.pd-parties{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.pd-parties>div{border:1px solid #ccc;border-radius:6px;padding:8px}.pd-t{width:100%;border-collapse:collapse;margin-bottom:10px}.pd-t td,.pd-t th{border:1px solid #bbb;padding:4px 6px;font-size:11px;position:static;background:0 0}.pd-t th{background:#eef5f0;color:#123}.pd-t .n{text-align:right}.pd-t tfoot td{font-weight:600}.pd-sigs{display:flex;gap:24px;margin-top:28px}.pd-sigs>div{flex:1;font-size:11px;color:#444}.pd-sigs .ln{border-bottom:1px solid #333;height:28px;margin-bottom:3px}.pd-foot{margin-top:18px;border-top:1px solid #ccc;padding-top:6px;font-size:9px;color:#777}.pd-att img{max-width:240px;border:1px solid #ccc;margin-top:4px}.pd-labels{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.blabel{border:1px dashed #555;border-radius:6px;padding:8px;display:flex;justify-content:space-between;gap:6px;align-items:center}body.printing .layout{display:none}@media print{body>:not(#printArea){display:none!important}#printArea{position:static;background:#fff;padding:0;overflow:visible}.pa-bar{display:none!important}.pdoc{box-shadow:none;margin:0;width:auto;min-height:0;padding:0;page-break-after:always}.pdoc:last-child{page-break-after:auto}}@media screen and (max-width:800px){.rev-grid{grid-template-columns:1fr}.pdoc{width:auto;margin:8px;padding:12px}.pd-parties{grid-template-columns:1fr}.scanner .big-btn{flex:1}}.livepill{display:inline-flex;align-items:center;gap:6px;border:1px solid #cfe6d6;background:#effaf2;color:#1d6b38;border-radius:999px;padding:5px 11px;font-size:12px;cursor:pointer;margin-right:10px;white-space:nowrap;transition:box-shadow .3s,background .3s}.livepill .ldot{width:8px;height:8px;border-radius:50%;background:#22a14b;box-shadow:0 0 0 0 rgba(34,161,75,.6);animation:lpulse 1.8s infinite}.livepill.pulse{background:#d7f5e0;box-shadow:0 0 0 3px rgba(34,161,75,.25)}.livepill.wait{background:#fff4e5;border-color:#f3c98b;color:#9a5a00}.livepill.wait .ldot{background:#f08c00;animation:none}@keyframes lpulse{0%{box-shadow:0 0 0 0 rgba(34,161,75,.55)}70%{box-shadow:0 0 0 7px rgba(34,161,75,0)}100%{box-shadow:0 0 0 0 rgba(34,161,75,0)}}.feedbtn{position:fixed;right:16px;bottom:16px;z-index:150;background:var(--dark);color:#fff;border:0;border-radius:999px;padding:9px 15px;font-size:13px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.25)}.feedbtn .nb{background:#f08c00;color:#fff;border-radius:999px;padding:0 6px;margin-left:4px;font-size:11px}.toasts{bottom:64px}.livefeed{position:fixed;right:16px;bottom:64px;width:380px;max-width:calc(100vw - 32px);max-height:70vh;z-index:160;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 40px rgba(0,0,0,.25);display:flex;flex-direction:column;overflow:hidden}.livefeed .fh{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line)}.livefeed .fh .x{border:0;background:0 0;font-size:20px;cursor:pointer}.livefeed .fs{padding:8px 14px;border-bottom:1px solid var(--line);background:#fafbf9}.livefeed .fb{overflow:auto;padding:4px 10px 10px}.fi{display:flex;gap:9px;padding:7px 4px;border-bottom:1px dashed #e6ebe7;font-size:13px;animation:tin .25s}.fi[data-go]{cursor:pointer}.fi:last-child{border-bottom:0}.fi .fic{font-size:16px;line-height:1.2}.fi.alert{background:#fff5f5}.simctl{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;cursor:pointer;user-select:none}.simctl input{width:auto;margin:0}.livecard{margin-bottom:16px}.livecard .feedlist{max-height:260px;overflow:auto}@media(max-width:800px){.livepill{font-size:11px;padding:4px 8px;margin-right:4px}.feedbtn{bottom:12px;right:12px}}body.locked .feedbtn,body.locked .layout,body.locked .livefeed{filter:blur(3px);pointer-events:none;user-select:none}#loginScreen{position:fixed;inset:0;z-index:300;background:rgba(15,32,22,.78);display:flex;align-items:flex-start;justify-content:center;padding:6vh 14px;overflow:auto}.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.35);padding:22px 24px;width:420px;max-width:100%}.login-card .brand{display:flex;gap:10px;align-items:center;margin-bottom:6px}.login-card .brand .logo{background:var(--green);color:#fff;border-radius:10px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;font-weight:800}.login-card .brand small{display:block;color:#f08c00;font-weight:700;font-size:11px}.login-card h2{margin:10px 0}.login-card .f{display:block;margin-bottom:8px}.login-card input{width:100%}.lg-err{color:var(--red);font-size:13px;min-height:18px}.lg-demo{margin-top:14px;border-top:1px dashed var(--line);padding-top:10px}.lg-demo table{width:100%;margin:6px 0;border-collapse:collapse}.lg-demo td{padding:4px 6px;border-bottom:1px solid #eef2ef}.lg-demo tr{cursor:pointer}.lg-demo tr:hover{background:#effaf2}.who{background:#1d2d24;border-radius:10px;padding:8px 10px;margin-bottom:8px;color:#cfe0d5}table.perm td.c,table.perm th.c{text-align:center;width:72px}table.perm input[type=checkbox]{width:16px;height:16px;margin:0}.ov{border:1px solid var(--line);background:#fff;border-radius:6px;width:34px;height:24px;cursor:pointer;font-size:12px;padding:0}.ov.inh-y{color:#7cbf91}.ov.inh-n{color:#c7cfca}.ov.al{background:#d7f5e0;border-color:#22a14b;color:#1d6b38;font-weight:700}.ov.de{background:#ffe3e3;border-color:#e03131;color:#c92a2a;font-weight:700}.ov:disabled{opacity:.35;cursor:not-allowed}button.noperm{opacity:.45;cursor:not-allowed!important;filter:grayscale(1)}.ip-hidden{display:none!important}.ipick{position:relative;min-width:220px;flex:1}.ipick .ip-in{width:100%}.ip-list{position:fixed;z-index:400;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.22);overflow:auto;font-size:13px}.ip-row{padding:7px 10px;border-bottom:1px solid #f0f3f1;cursor:pointer}.ip-row.act{background:#e9f7ee}.ip-row.cur .ip-top b{color:var(--green2)}.ip-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.ip-meta{color:#56685d;font-size:12px;margin-top:2px}.ip-meta code{font-size:11px}.ip-t{font-size:10px;padding:0 6px}.ip-t.meal{background:#fff1db;color:#a35a00}.ip-t.ing{background:#e6f4ea;color:#1d6b38}.ip-t.pack{background:#e7efff;color:#2849a0}.ip-row mark{background:#ffe58a;padding:0 1px;border-radius:2px}.ip-empty{padding:8px 10px;color:#7a8a80}.ip-add{color:var(--green2);font-weight:600;background:#fafbf9}@media(max-width:800px){.ip-list{font-size:14px}.ipick{min-width:160px}}.ip-flash td{background:#fff3bf!important;transition:background .3s}.login-card .brand b{color:var(--dark,#16261d);font-size:16px}.pill.tax15{background:#e0ecff;color:#1d4ed8;font-weight:700}.pill.tax02{background:#dcfce7;color:#166534;font-weight:700}.ip-tax{font-weight:700;padding:0 5px;border-radius:6px}.ip-tax.tax15{background:#e0ecff;color:#1d4ed8}.ip-tax.tax02{background:#dcfce7;color:#166534}select.gl-sel{max-width:190px}select.tax-sel{width:58px}select.ov{outline:2px solid #f59e0b}.pd-wide .pd-t{font-size:10.5px}.pd-wide .pd-t td,.pd-wide .pd-t th{padding:3px 4px}.pd-subs{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;margin-top:10px}.pd-subs .pd-t{width:100%;table-layout:auto}.pd-subs .pd-t td,.pd-subs .pd-t th{padding:3px 4px}.pd-subs h4{margin:6px 0 4px}.pd-subs .pd-t{font-size:10.5px}.pd-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:2.5px solid #f39c12;padding-bottom:10px;margin-bottom:12px}.pd-left{display:flex;flex-direction:column;gap:6px;max-width:62%}.pd-logo-img{height:46px;width:auto;max-width:240px;object-fit:contain;object-position:left center;display:block}.pd-head .pd-co{font-size:10.5px;line-height:1.4;color:#222}.pd-head .pd-co b{font-size:12px}.pd-ph{color:#888;font-style:italic}.pd-head .pd-title{text-align:right;margin-left:auto}.pd-head .pd-title h2{margin:0 0 4px;font-size:16px;letter-spacing:.3px}.pd-head .pd-no{color:#000;font-weight:800;font-size:15px}.bl-logo{height:16px;width:auto}.brand .logo.logo-img{background:#fff;padding:3px;overflow:hidden}.brand .logo.logo-img img{width:100%;height:100%;object-fit:contain}.login-card .brand.brand-img{flex-direction:column;align-items:flex-start;gap:4px}.lg-logo{width:230px;max-width:100%;height:auto;display:block}.co-logo-box{border:1px dashed #ccc;border-radius:10px;padding:12px;background:#fff;display:flex;justify-content:center}.co-logo-box img{max-height:90px;max-width:100%}.co-mini{width:auto!important;min-height:0!important;padding:14px!important;margin:6px 0 0!important;box-shadow:0 0 0 1px #e5e7eb!important}.pv-body .card{box-shadow:none;border:1px solid #ddd;padding:8px;margin:0 0 8px}.pv-body table{font-size:10.5px}.pv-body .kpi .v{font-size:16px}.pv-in{display:inline-block;min-width:60px;border-bottom:1px solid #999}@media print{.pd-head{border-bottom-color:#000}.pd-ph{color:#666}.bl-logo,.pd-logo-img{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@page{size:A4;margin:12mm}#view .f input::placeholder,#view .f textarea::placeholder{color:#9aa3ad;font-weight:400}.alert.ok{background:var(--greenl);color:var(--green2)}.su-head{display:flex;gap:16px;align-items:center;margin-bottom:12px;border-top:4px solid var(--green)}.su-logo{height:54px;max-width:180px;object-fit:contain}.su-ht{flex:1;min-width:0}.su-ht b{font-size:17px;color:var(--dark)}.su-prog{height:8px;background:#e8efe9;border-radius:6px;margin:8px 0 4px;overflow:hidden}.su-prog>div{height:100%;background:linear-gradient(90deg,var(--green),#55c172);border-radius:6px;transition:width .3s}.su-wrap{display:grid;grid-template-columns:250px 1fr;gap:14px;align-items:start}.su-steps{display:flex;flex-direction:column;gap:4px;background:#fff;border-radius:var(--r);padding:8px;box-shadow:0 1px 2px rgba(0,0,0,.05);position:sticky;top:8px}.su-step{display:flex;gap:10px;align-items:center;padding:8px 9px;border-radius:9px;color:var(--text);text-decoration:none;font-size:13px;font-weight:600}.su-step:hover{background:#f1f6f2}.su-step.on{background:var(--greenl);color:var(--green2)}.su-tick{flex:0 0 26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #cfd8d2;color:var(--muted);font-size:12px;font-weight:700;background:#fff}.su-step.on .su-tick{border-color:var(--green);color:var(--green2)}.su-step.done .su-tick{background:var(--green);border-color:var(--green);color:#fff}.su-warn{display:inline-block;width:16px;height:16px;line-height:16px;text-align:center;border-radius:50%;background:var(--orange);color:#fff;font-size:11px;margin-left:4px}.su-body{min-width:0}.su-body>.card{margin-bottom:12px}.su-nav{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.su-drop{border:2px dashed #bcd9c4;border-radius:12px;padding:18px;background:#f7fbf8}.su-prev tr.sel td{background:#eef8f1}.su-grid td,.su-prev td{vertical-align:top}.su-grid input.qty{width:84px}.su-impbar{margin-top:10px;border:1px solid #cfe6d6;background:#fbfefc}.su-live{border-left:4px solid var(--green)}@media(max-width:800px){.su-wrap{grid-template-columns:1fr}.su-steps{flex-direction:row;overflow-x:auto;position:static;padding:6px;-webkit-overflow-scrolling:touch}.su-step{flex:0 0 auto;flex-direction:column;gap:3px;font-size:11px;padding:6px;width:78px;text-align:center}.su-step .su-l{white-space:normal;line-height:1.2}.su-head{flex-wrap:wrap;gap:8px}.su-logo{height:36px}.su-ht{flex:1 1 100%}.su-grid input.qty{width:64px}}#idleWarn{position:fixed;inset:0;z-index:2000;background:rgba(20,32,26,.55);display:flex;align-items:center;justify-content:center;padding:12px}#idleWarn .iw-card{background:#fff;border-radius:14px;max-width:440px;width:100%;padding:20px;box-shadow:0 10px 40px rgba(0,0,0,.3);border-top:5px solid var(--orange)}#idleWarn h2{margin:0 0 8px;font-size:19px}#idleWarn #iw_s{font-size:22px;color:var(--orange)}.lg-err.lg-info{color:#7a4a00;background:var(--orangel);border-radius:8px;padding:8px 10px}.cloud-loading{position:fixed;inset:0;background:rgba(246,248,247,.92);display:flex;align-items:center;justify-content:center;z-index:300;font-weight:600;color:#1f4d36}.cloud-loading .spin{width:34px;height:34px;border:4px solid #cfe0d5;border-top-color:#1f6b45;border-radius:50%;margin:0 auto 10px;animation:cspin 1s linear infinite}@keyframes cspin{to{transform:rotate(360deg)}}#su_reload,#suf_reload{display:none!important}body{-webkit-user-select:none;user-select:none}[contenteditable],input,select,textarea{-webkit-user-select:text;user-select:text}img{-webkit-user-drag:none;user-drag:none}html.gvr-dt-locked #loginScreen,html.gvr-dt-locked .layout{visibility:hidden}
/* mobile-nav fix 2026-11-03: in-app browsers (Google app/GSA) */
.layout{min-height:calc(100dvh - 26px)}
.sidebar{height:calc(100dvh - 26px)}
@media(max-width:800px){
.main{padding-bottom:calc(80px + env(safe-area-inset-bottom))}
.main .topbar{position:-webkit-sticky;position:sticky;top:0;z-index:80;background:var(--bg);margin:-14px -14px 14px;padding:calc(8px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) 8px calc(14px + env(safe-area-inset-left));box-shadow:0 1px 0 rgba(0,0,0,.06)}
.btn.menu-btn,.menu-btn{position:relative;z-index:81;min-width:44px;min-height:44px;justify-content:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer}
.sidebar{top:0;height:100vh;height:100dvh;z-index:1000;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);box-sizing:border-box;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
}
