@font-face{font-family:Poppins;font-weight:400;font-display:swap;src:url(/fonts/poppins-400.woff2) format("woff2")}@font-face{font-family:Poppins;font-weight:500;font-display:swap;src:url(/fonts/poppins-500.woff2) format("woff2")}@font-face{font-family:Poppins;font-weight:600;font-display:swap;src:url(/fonts/poppins-600.woff2) format("woff2")}@font-face{font-family:Poppins;font-weight:700;font-display:swap;src:url(/fonts/poppins-700.woff2) format("woff2")}:root{--bg:#f7f6f3;--card:#fff;--ink:#1c1d1d;--muted:#5c5d5c;--pine:#3d4a38;--oat:#e0d4be;--oat-fill:#efe6d4;--line:#e4e2dc;--soft:#eeece7;--edge:#c8c5bd;--sage:#e6ead6;--warn-fill:#fbf1c7;--warn-edge:#e9cf6a;--warn-ink:#6b5410;--bad-fill:#f6e1dc;--bad-edge:#d9a397;--bad-ink:#8a2f1d}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:Poppins,system-ui,sans-serif;font-size:16px;line-height:1.35;-webkit-font-smoothing:antialiased}button,input{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0;text-align:inherit}button[disabled]{opacity:.45;cursor:default}.screen{min-height:100vh;display:flex;flex-direction:column;padding-bottom:calc(64px + env(safe-area-inset-bottom))}.top{padding:12px 18px 4px;position:sticky;top:0;background:var(--bg);z-index:5}.toprow{display:flex;justify-content:space-between;align-items:center;gap:10px}.brand{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--pine)}.brand .ex{color:#8a7a55}.title{font-size:20px;font-weight:500;line-height:24px;margin:2px 0 0}.sub{margin-top:2px;color:var(--muted);font-size:13px;line-height:17px}.back{color:var(--pine);font-size:15px;font-weight:600;margin-top:4px}.muted{color:var(--muted);font-size:13px}.center{text-align:center}.note{color:var(--muted);font-size:12.5px;line-height:17px;margin:10px 2px}.label{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:14px 2px 6px}.badge{border-radius:999px;padding:3px 10px 2px;border:1px solid;font-size:11px;font-weight:600;line-height:14px;white-space:nowrap}.badge.live{background:var(--sage);border-color:#c5ceb0;color:var(--pine)}.badge.wait{background:var(--oat-fill);border-color:var(--oat);color:#6a5a3a}.badge.wait:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#b8913f;margin-right:5px;vertical-align:1px}.badge.bad{background:var(--bad-fill);border-color:var(--bad-edge);color:var(--bad-ink)}.badge.off{background:#ececea;border-color:#c9c9c4;color:#4a4a46}.body{padding:6px 18px 18px;flex:1}.segs{margin:6px 0 8px;padding:2px;background:var(--soft);border-radius:9px;display:flex}.seg{flex:1;padding:6px 4px 5px;border-radius:7px;text-align:center;font-size:14px;font-weight:500;color:var(--muted);white-space:nowrap}.seg span{color:var(--muted);font-weight:400}.seg.on{background:var(--card);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0000000f}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.chip{border:1px solid var(--oat);background:var(--oat-fill);border-radius:999px;padding:6px 12px 5px;font-size:13px;font-weight:500;color:#5a4b2e}.chips.small .chip{padding:3px 10px 2px;font-size:12px}.chip.on{background:var(--pine);border-color:var(--pine);color:#fff}.card{display:block;width:100%;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:8px 0}.card.row,.card.kv,.card.irow,.card.mrow{display:flex;align-items:center;gap:10px}.card.kv{justify-content:space-between;padding:10px 14px}.card.kv b{font-weight:600}.card.cur{border-color:var(--pine);border-width:1.5px}.card.done{background:var(--sage);border-color:#d3dbbf}.card.warn{background:var(--warn-fill);border-color:var(--warn-edge)}.card.hint{background:var(--soft);font-size:14px}.card.active{border-left:5px solid var(--pine)}.grow{flex:1;min-width:0}.t{font-weight:500;font-size:15.5px;line-height:20px}.s{color:var(--muted);font-size:12.5px;line-height:17px}.cnt{text-align:right;white-space:nowrap;font-size:15px;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.cnt b{font-size:20px;font-weight:700}.ph{width:44px;height:44px;border-radius:10px;object-fit:cover;background:var(--soft);flex:0 0 44px}.ocard{display:flex;gap:12px;align-items:stretch}.ocard .ol{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;min-width:112px}.ocard .big{font-size:34px;font-weight:600;line-height:38px;letter-spacing:-.01em}.ocard .or{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:6px}.ocard .lines{color:var(--muted);font-size:13px;line-height:17px}.ocard .orow{display:flex;justify-content:space-between;align-items:baseline;font-size:14px}.tag{display:inline-block;border-radius:999px;padding:2px 10px 1px;font-size:11.5px;font-weight:600;border:1px solid var(--oat);background:var(--oat-fill);color:#5a4b2e;margin:4px 4px 0 0}.tag.shopify,.tag.sage{background:var(--sage);border-color:#c5ceb0;color:var(--pine)}.tag.warn{background:var(--warn-fill);border-color:var(--warn-edge);color:var(--warn-ink)}.row2{display:flex;gap:8px;margin:8px 0}.row2>*{flex:1}.search-row{display:flex;flex-direction:column;gap:8px;margin:8px 0}.search-row>*{width:100%}.in{width:100%;border:1px solid var(--line);background:var(--card);border-radius:12px;padding:11px 14px;font-size:16px;outline:none}.in:focus{border-color:var(--pine)}.fl{display:block;margin:10px 0}.fl span{display:block;font-size:12px;font-weight:600;color:var(--muted);margin:0 2px 4px}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--pine);color:#fff;border-radius:12px;padding:12px 16px;font-weight:600;font-size:16px;border:1.5px solid var(--pine);min-height:48px}.btn.ghost{background:var(--card);color:var(--ink);border-color:var(--oat)}.btn.sm{min-height:44px;padding:8px 12px;font-size:14px}.btn.xs{min-height:30px;padding:4px 10px;font-size:13px;border-radius:999px}.btns{display:flex;gap:8px;margin-top:10px}.btns>*{flex:1}.btns.small .btn{min-height:40px;font-size:14px}.scanbox{background:#202520;border-radius:16px;padding:10px;margin:4px 0 8px}.scanrow{display:flex;gap:6px}.scanrow .in{background:#fff}.scanrow .btn.ghost{background:#2e352d;color:#e6ead6;border-color:#4a5546}.lastscan{display:inline-block;margin-top:8px;background:var(--sage);color:var(--pine);border-radius:999px;padding:2px 10px 1px;font-size:12px;font-weight:600}.flash{border-radius:12px;padding:10px 12px;margin:8px 0;font-size:14px;line-height:19px;border:1px solid}.flash.ok{background:var(--sage);border-color:#c5ceb0;color:var(--pine)}.flash.warn{background:var(--warn-fill);border-color:var(--warn-edge);color:var(--warn-ink)}.flash.stop{background:var(--bad-fill);border-color:var(--bad-edge);color:var(--bad-ink);font-size:15.5px}.bad-ink{color:var(--bad-ink)}.progress{height:6px;border-radius:9px;background:var(--soft);overflow:hidden;margin:2px 0 8px}.progress i{display:block;height:100%;background:var(--pine)}.line .lrow{display:flex;gap:10px;align-items:center}.confirm{margin-top:10px;background:#fff;border:1px solid var(--warn-edge);border-radius:12px;padding:10px}.stepper{display:flex;align-items:center;background:var(--oat-fill);border-radius:12px;border:1px solid var(--oat)}.stp{width:42px;height:44px;font-size:22px;font-weight:600;text-align:center}.num{width:58px;height:44px;border:0;background:#fff;text-align:center;font-size:20px;font-weight:700;outline:none}.countbox{display:flex;justify-content:center;margin:20px 0}.countbox .num{width:110px;height:64px;font-size:34px}.countbox .stp{width:64px;height:64px;font-size:30px}.avvik{display:flex;gap:8px;margin:10px 0}.avvik>div{flex:1;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px;text-align:center}.avvik span{display:block;font-size:12px;color:var(--muted)}.avvik b{font-size:26px}.bar{position:sticky;bottom:calc(64px + env(safe-area-inset-bottom));display:flex;gap:8px;padding:10px 18px;background:linear-gradient(transparent,var(--bg) 30%);z-index:4}.bar>*{flex:1}.nav{position:fixed;left:0;right:0;bottom:0;display:flex;gap:6px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--line);z-index:6}.nav button{flex:1;text-align:center;padding:10px 0;border-radius:12px;font-size:15px;font-weight:500;color:var(--muted)}.nav button.on{background:var(--oat-fill);color:var(--ink);font-weight:600}.dots{display:flex;justify-content:center;gap:16px;margin:24px 0 14px}.dots i{width:16px;height:16px;border-radius:50%;border:2px solid var(--pine)}.dots i.on{background:var(--pine)}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:320px;margin:10px auto}.key{height:64px;border-radius:16px;background:#fff;border:1px solid var(--line);font-size:26px;font-weight:500;text-align:center}.sheet-bg{position:fixed;inset:0;background:#1c1d1d59;z-index:20}.sheet{position:fixed;left:0;right:0;bottom:0;max-height:86vh;overflow:auto;background:var(--bg);border-radius:20px 20px 0 0;padding:8px 18px calc(18px + env(safe-area-inset-bottom));z-index:21;box-shadow:0 -8px 24px #0000001f}.grab{width:42px;height:5px;border-radius:9px;background:var(--edge);margin:4px auto 10px}.modal{position:fixed;left:16px;right:16px;top:28%;background:var(--card);border-radius:18px;padding:18px;z-index:22;box-shadow:0 12px 32px #0000002e}.modal p{color:var(--muted);font-size:14.5px}.big{font-size:30px;font-weight:700}.mono{font-family:ui-monospace,Menlo,monospace}.lab{border-style:dashed;max-width:300px}.lab.tall{min-height:200px}#cam{position:fixed;inset:0;background:#000;z-index:40;display:flex;flex-direction:column}#cam[hidden]{display:none}#cam video{flex:1;width:100%;object-fit:cover}#cam .btn{margin:14px}.from{margin-top:6px;background:var(--oat-fill);border:1px solid var(--oat);border-radius:10px;padding:5px 9px 4px;font-size:14px;line-height:18px}.from b{font-weight:700}.from .s{margin-top:2px;font-size:12px}.flash.wait{background:var(--oat-fill);border-color:var(--oat);color:#6a5a3a}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:2px;font-size:20px}.code-in{text-transform:uppercase;letter-spacing:3px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:20px}
