:root{--bg: #F3F5F4;--surface: #FFFFFF;--sunk: #EAEEEC;--ink: #14201B;--muted: #56635D;--line: #D6DDD9;--line-strong: #B5C1BB;--accent: #0B6B57;--accent-ink: #FFFFFF;--accent-weak: #DDF0E9;--fixed-weak: #E9ECEB;--auto: #8F5400;--auto-weak: #FCEFD6;--merch: #2F4F8F;--merch-weak: #E4EAF7;--pend: #6B3B85;--pend-weak: #F3E8F7;--err: #B42318;--err-weak: #FDECEA;--warn: #7F5300;--warn-weak: #FFF1CC;--ok: #17794A;--ok-weak: #DFF3E8;--font-display: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;--font-body: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--r: 8px;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0F1513;--surface: #161E1B;--sunk: #1C2622;--ink: #E6EEEA;--muted: #9BA9A2;--line: #2A3631;--line-strong: #3B4943;--accent: #4FC3A1;--accent-ink: #06231B;--accent-weak: #163A31;--fixed-weak: #222B28;--auto: #F2B35B;--auto-weak: #3A2C12;--merch: #A9C1F2;--merch-weak: #1E2A44;--pend: #D8B4EC;--pend-weak: #30223A;--err: #FF8A7A;--err-weak: #3D1B17;--warn: #F2C14E;--warn-weak: #3A3014;--ok: #5DD39B;--ok-weak: #143327;color-scheme:dark}}:root[data-theme=dark]{--bg: #0F1513;--surface: #161E1B;--sunk: #1C2622;--ink: #E6EEEA;--muted: #9BA9A2;--line: #2A3631;--line-strong: #3B4943;--accent: #4FC3A1;--accent-ink: #06231B;--accent-weak: #163A31;--fixed-weak: #222B28;--auto: #F2B35B;--auto-weak: #3A2C12;--merch: #A9C1F2;--merch-weak: #1E2A44;--pend: #D8B4EC;--pend-weak: #30223A;--err: #FF8A7A;--err-weak: #3D1B17;--warn: #F2C14E;--warn-weak: #3A3014;--ok: #5DD39B;--ok-weak: #143327;color-scheme:dark}:root{--font: var(--font-body);--mono: var(--font-mono);--radius: var(--r);--accent-soft: var(--accent-weak);--ok-bg: var(--ok-weak);--warn-bg: var(--warn-weak);--bad: var(--err);--bad-bg: var(--err-weak);--info: var(--merch);--info-bg: var(--merch-weak);--idle: var(--muted);--idle-bg: var(--sunk)}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.5}.page.floor,.courier-body,.review-body{font-size:15px}a{color:var(--accent)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance}h1{font-size:clamp(26px,3.4vw,38px);line-height:1.1;margin:0;font-weight:700}h2{font-size:18px;margin:0 0 .6rem;font-weight:600}h3{font-size:15px;margin:0 0 .4rem;font-weight:600}input,select,textarea,button{font:inherit;color:inherit}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{width:100%;padding:.5rem .6rem;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);min-height:40px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.num{text-align:right;font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.small{font-size:.85rem}.tiny{font-size:.75rem}.big{font-size:1.2rem}.nowrap{white-space:nowrap}.mt{margin-top:1rem}.mt-sm{margin-top:.5rem}.error-text{color:var(--bad);margin:.4rem 0}.warn-text{color:var(--warn);margin:.4rem 0}.ok-text{color:var(--ok);margin:.4rem 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:.45rem .9rem;border-radius:7px;border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;text-decoration:none;color:var(--ink);font-weight:500;white-space:nowrap}.btn:hover{border-color:var(--ink)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover{border-color:var(--accent);filter:brightness(1.08)}.btn-danger{background:var(--surface);border-color:var(--bad);color:var(--bad)}.btn-danger:hover{background:var(--bad-bg);border-color:var(--bad)}.btn-quiet{background:transparent;border-color:transparent;color:var(--muted)}.btn-quiet:hover{color:var(--ink);border-color:var(--line)}.btn-sm{min-height:34px;padding:.3rem .65rem;font-size:.88rem}.btn-xl{min-height:60px;font-size:1.1rem;width:100%}.btn-block{width:100%}.btn-icon{background:none;border:none;font-size:1.4rem;line-height:1;padding:.3rem .5rem;cursor:pointer;color:inherit}.file-btn{position:relative;overflow:hidden}.file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.shell{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;min-height:100vh}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:.75rem;padding:10px max(16px,env(safe-area-inset-left));background:var(--surface);border-bottom:1px solid var(--line)}.brand{font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:-.01em;display:flex;align-items:baseline;gap:.3rem}.brand-mark{color:inherit}.who{margin-left:auto;display:flex;align-items:center;gap:.5rem}.who-name{font-size:.9rem;color:var(--muted)}.sidenav{display:none;position:fixed;inset:52px 0 0;z-index:19;background:var(--surface);overflow:auto;padding:.5rem 0 2rem}.sidenav.open{display:block}.nav-group{padding:.4rem 0}.nav-group-label{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:.3rem 1.2rem}.sidenav a{display:block;padding:.6rem 1.2rem;color:var(--ink);text-decoration:none;border-left:3px solid transparent}.sidenav a.active{border-left-color:var(--accent);background:var(--accent-soft);font-weight:500}.main{padding:1rem max(16px,env(safe-area-inset-right)) 3rem max(16px,env(safe-area-inset-left));min-width:0}@media (min-width: 900px){.shell{grid-template-columns:230px 1fr}.topbar{grid-column:1 / -1}.menu-btn{display:none}.sidenav{display:block;position:sticky;top:52px;height:calc(100vh - 52px);border-right:1px solid var(--line)}.main{padding:1.4rem 2rem 3rem}}@media (max-width: 520px){.who-name,.hide-sm{display:none}}.page{display:grid;gap:1rem;max-width:1200px}.page.floor{max-width:640px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:18px 20px;min-width:0}.card.tight{padding:.8rem}.card.narrow{max-width:400px;width:100%}.center-page{min-height:100vh;display:grid;place-items:center;padding:16px}.grid-2{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 800px){.grid-2{grid-template-columns:1fr 1fr}}.grid-2.tight{gap:.6rem}.stack{display:grid;gap:.6rem}.stack-sm{display:grid;gap:.4rem}.row-between{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}.section-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.4rem}.section-head h2{margin:0}.actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.6rem}.filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.filters>input,.filters>select{width:auto;flex:0 1 200px}.filters .grow{flex:1 1 220px}.inline{display:inline-flex;align-items:center;gap:.4rem}.inline input[type=date]{width:auto}.check{cursor:pointer}.sticky-bar{position:sticky;top:52px;z-index:5;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;background:var(--bg);padding:.5rem 0}.sticky-bar select{width:auto;flex:1 1 200px}.login{display:grid;gap:.8rem}.login-brand{font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:-.01em;margin-bottom:.4rem}.field{display:grid;gap:.25rem;margin-bottom:.7rem}.field-label{font-size:.85rem;font-weight:500}.field-hint{font-size:.8rem;color:var(--muted)}.switch{display:inline-flex;align-items:center;gap:.6rem;cursor:pointer}.switch input[type=checkbox]{appearance:none;-webkit-appearance:none;flex:none;width:44px;height:24px;margin:0;border-radius:99px;cursor:pointer;background:radial-gradient(circle at 12px 50%,var(--surface) 8.5px,transparent 9.5px),var(--line-strong);transition:background-color .15s}.switch input[type=checkbox]:checked{background:radial-gradient(circle at 32px 50%,var(--surface) 8.5px,transparent 9.5px),var(--accent)}.switch input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.tiles{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.tile{display:grid;gap:.2rem;padding:.8rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-decoration:none;color:var(--ink)}.tile:hover:not(.static){border-color:var(--accent)}.tile-n{font-size:1.7rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.1}.tile-l{font-size:.85rem;color:var(--muted)}.tile-warn{border-left:4px solid var(--warn)}.tile-bad{border-left:4px solid var(--bad)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;padding:.5rem .7rem;border-bottom:1px solid var(--line);background:var(--sunk);white-space:nowrap}.table td{padding:.55rem .7rem;border-bottom:1px solid var(--line);vertical-align:top}.table tr:last-child td{border-bottom:none}.table.compact td,.table.compact th{padding:.35rem .5rem}.table{font-size:13px}.table tr.selected td{background:var(--accent-soft)}.table tr.inactive td{color:var(--muted)}.detail-cell code{font-size:.75rem;word-break:break-all;color:var(--muted)}.pager{display:flex;gap:.5rem;align-items:center;justify-content:flex-end}.dl{display:grid;grid-template-columns:max-content 1fr;gap:.3rem 1rem;margin:0}.dl dt{color:var(--muted);font-size:.88rem}.dl dd{margin:0}.timeline{list-style:none;margin:0;padding:0;display:grid;gap:.35rem;font-size:.9rem}.pill{display:inline-block;padding:1px 8px;border-radius:99px;font-size:12px;font-weight:600;white-space:nowrap;background:var(--idle-bg);color:var(--idle)}.st-open,.st-processing{background:var(--idle-bg);color:var(--idle)}.st-assigned,.st-ready_to_pack{background:var(--info-bg);color:var(--info)}.st-packed,.st-picked_up{background:var(--warn-bg);color:var(--warn)}.st-fulfilled{background:var(--ok-bg);color:var(--ok)}.st-delivery_failed,.st-user_cancelled,.st-admin_cancelled{background:var(--bad-bg);color:var(--bad)}.st-returned{background:var(--pend-weak);color:var(--pend)}.tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--line);overflow-x:auto}.tabs button{background:none;border:none;padding:.6rem .9rem;cursor:pointer;border-bottom:2px solid transparent;color:var(--muted);white-space:nowrap}.tabs button.on{color:var(--ink);border-bottom-color:var(--accent);font-weight:500}.seg{display:inline-flex;border:1px solid var(--line-strong);border-radius:8px;padding:2px;background:var(--bg);margin-bottom:.8rem}.seg-btn{border:0;background:none;padding:5px 14px;border-radius:6px;cursor:pointer;font-weight:500;color:var(--muted)}.seg-btn.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0000001f}.scan{display:grid;gap:.3rem}.scan-label{font-size:.85rem;font-weight:500}.scan-row{display:flex;gap:.4rem}.scan-input{font-family:var(--mono);font-size:17px!important;min-height:52px!important;border:2px solid var(--accent)!important}.camera{position:relative;display:grid;gap:.5rem}.camera video{width:100%;border-radius:var(--radius);background:#000;max-height:60vh;object-fit:cover}.camera-guide{position:absolute;left:12%;right:12%;top:32%;height:22%;border:2px solid rgba(255,255,255,.85);border-radius:6px;pointer-events:none}.pick-list{list-style:none;margin:0;padding:0}.pick-list li{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem 0;border-bottom:1px solid var(--line)}.pick-list li:last-child{border-bottom:none}.pick-list li.done{opacity:.75}.partner-grid{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.partner-btn{min-height:56px}.list-btn{text-align:left;cursor:pointer;width:100%;font:inherit}.list-btn:hover{border-color:var(--accent)}.sig{display:grid;gap:.3rem;margin-bottom:.6rem}.sig-canvas{width:100%;height:160px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:#fff;touch-action:none}.sig-img{max-width:100%;border:1px solid var(--line);border-radius:var(--radius);background:#fff;margin-top:.6rem}.pod-photo{max-width:100%;border-radius:var(--radius);margin-top:.5rem}.modal-back{position:fixed;inset:0;background:#0a100e80;z-index:50;display:grid;place-items:center;padding:16px}.modal{background:var(--surface);border:1px solid var(--line);border-radius:10px;width:100%;max-width:480px;max-height:calc(100vh - 32px);overflow:auto;box-shadow:0 10px 40px #00000040}.modal-wide{max-width:760px}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface)}.modal-head h2{margin:0}.modal-body{padding:1rem}.toasts{position:fixed;bottom:max(16px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:60;display:grid;gap:.4rem;width:min(480px,calc(100vw - 32px))}.toast{padding:.7rem 1rem;border-radius:var(--radius);background:var(--ink);color:var(--bg);box-shadow:0 4px 16px #0003}.toast-error{background:var(--bad)}.empty{padding:28px;text-align:center;color:var(--muted);border:1px dashed var(--line-strong);border-radius:10px}.error-box{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:.8rem 1rem;border-radius:var(--radius);background:var(--bad-bg);color:var(--bad)}.settings{display:grid}.setting{display:grid;gap:.5rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.setting:last-child{border-bottom:none}@media (min-width: 760px){.setting{grid-template-columns:1fr 320px;align-items:start}}.setting-label{font-weight:500}.setting-input .short{width:120px}.jsonmap{display:grid;gap:.35rem}.jsonmap-row{display:grid;grid-template-columns:120px 1fr;gap:.4rem;align-items:center}.roles{display:grid;gap:.35rem;margin-bottom:.8rem}.role{display:flex;gap:.5rem;align-items:flex-start}.courier{min-height:100vh;background:var(--bg)}.courier-head{background:var(--surface);color:var(--ink);border-bottom:1px solid var(--line);padding:.8rem max(16px,env(safe-area-inset-left));font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:-.01em}.courier-body{max-width:480px;margin:0 auto;padding:1.2rem 16px 3rem;display:grid;gap:.8rem}.courier-do{font-size:1.6rem;font-weight:600}.courier-actions{display:grid;gap:.7rem}.courier-done{padding:1.2rem;border-radius:var(--radius);background:var(--ok-bg);color:var(--ok);font-weight:600;text-align:center}.photo-btn{position:relative;display:flex;align-items:center;justify-content:center;min-height:60px;border:2px dashed var(--accent);border-radius:var(--radius);color:var(--accent);font-weight:500;text-align:center;padding:.5rem;cursor:pointer;background:var(--surface)}.photo-btn input{position:absolute;inset:0;opacity:0}.labels{padding:16px;display:grid;gap:16px;justify-content:start}.label-tools{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.label{width:100mm;height:150mm;border:1px dashed #999;padding:6mm;display:flex;flex-direction:column;gap:2mm;background:#fff;color:#000;font-size:11pt;overflow:hidden}.label-top{display:flex;justify-content:space-between;font-size:10pt}.label-do{font-size:20pt;font-weight:600;letter-spacing:.02em}.label-partner{font-size:15pt;font-weight:600;border-top:2px solid #000;border-bottom:2px solid #000;padding:1.5mm 0}.label-cust{font-weight:600}.label-addr{white-space:pre-line}.label-codes{margin-top:auto;display:flex;flex-direction:column;gap:3mm;align-items:flex-start}.label-qr{display:flex;align-items:center;gap:3mm;font-size:9pt}.label-barcode{max-width:100%}.label-bar{display:grid;gap:1mm;font-size:8pt}.label-qr span{max-width:45mm}.label-note{font-size:10pt;font-weight:600}.label-foot{font-size:8pt;color:#333}@page label{size:100mm 150mm;margin:0}@page{size:A4;margin:12mm}@media print{body{background:#fff}.no-print,.topbar,.sidenav{display:none!important}.shell{display:block!important}.main{padding:0!important}.print-only{display:block!important}.print-report{border:none;box-shadow:none;padding:0}.print-report .table-wrap{overflow:visible;border:none}.print-report .table td,.print-report .table th{font-size:8pt;padding:2px 4px}.labels{padding:0;gap:0;page:label}.label{border:none;page-break-after:always;break-after:page}}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}.demo-badge{display:inline-block;font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--auto);background:var(--auto-weak);padding:2px 8px;border-radius:99px;align-self:center}.demo-login{max-width:560px;width:100%;display:grid;gap:.4rem}.demo-user{justify-content:flex-start;text-align:left;min-height:54px}.demo-user span{display:grid;gap:.1rem;white-space:normal}.demo-tips{margin-top:1rem;padding-top:.8rem;border-top:1px solid var(--line)}.demo-tips ol{margin:0;padding-left:1.2rem;display:grid;gap:.35rem}.courier-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.demo-back{font-family:var(--font-body);font-size:13px}.print-only{display:none}.mb{margin-bottom:.8rem}.btn-link{background:none;border:none;padding:0;color:var(--accent);text-decoration:underline;cursor:pointer;font:inherit}.tabs a{padding:.6rem .9rem;border-bottom:2px solid transparent;color:var(--muted);white-space:nowrap;text-decoration:none}.tabs a.on{color:var(--ink);border-bottom-color:var(--accent);font-weight:500}.group-grid{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:.8rem}.group-grid .card{margin:0}.card.inactive{opacity:.6}ul.plain{list-style:none;padding:0;margin:.4rem 0 0;display:grid;gap:.2rem}input[type=radio]{width:18px;height:18px;accent-color:var(--accent);margin:0}.report-pick{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));margin-bottom:1rem}.report-card{display:grid;align-content:start;gap:.2rem;text-align:left;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;font:inherit;color:var(--ink)}.report-card:hover{border-color:var(--ink)}.report-card.on{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent);background:var(--accent-soft)}.report-card strong{font-weight:600}.report-card span{font-size:.82rem;color:var(--muted);line-height:1.35}.report-controls{display:flex;flex-wrap:wrap;gap:.6rem;align-items:flex-end}.report-controls .field{margin:0}.report-controls input[type=date]{width:auto}.report-table td{font-size:.85rem}.report-table td.wrap{white-space:pre-line;min-width:16rem}.report-table td.nw{white-space:nowrap}.review-page{min-height:100vh;background:var(--bg)}.review-body{max-width:760px;margin:0 auto;padding:1.2rem 16px 3rem}.review-body h1{font-size:1.35rem;margin:.2rem 0 .4rem}.review-person{margin:0;display:grid;gap:.3rem;border-left:4px solid var(--line)}.review-person.decided{border-left-color:var(--accent)}.review-person input{width:100%}.review-person .seg{margin-bottom:0}.center{text-align:center}@media (max-width: 640px){.report-table thead{display:none}.report-table tr{display:block;padding:.5rem 0;border-bottom:1px solid var(--line)}.report-table tr:last-child{border-bottom:none}.report-table td,.report-table td.nw,.report-table td.wrap{display:grid;grid-template-columns:7.5rem 1fr;gap:.5rem;border:none;padding:.15rem .6rem;white-space:normal;min-width:0}.report-table td.wrap{white-space:pre-line}.report-table td:before{content:attr(data-label);color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;padding-top:.1rem;white-space:normal}}@media print{.report-table thead{display:table-header-group!important}}@media (pointer: coarse){.btn,.btn-sm,.seg-btn,.tabs a,.tabs button{min-height:44px}.btn-sm{padding:8px 12px}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px;min-height:44px}input[type=checkbox]{width:22px;height:22px}details>summary{min-height:44px;display:flex;align-items:center}}
