:root{--brand:#1f6f5c;--brand-2:#e6f2ee;--line:#e3e6e8;--muted:#6b7378;--warn:#b4531a;--danger:#b42318;color:#1c2326;background:#f6f7f8;font-family:system-ui,-apple-system,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}h2,h3{margin:16px 0 8px}input,select,textarea,.input{font-size:16px}.shell{max-width:1000px;padding-bottom:calc(80px + env(safe-area-inset-bottom));margin:0 auto}.top{z-index:5;border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:12px;padding:10px 14px;display:flex;position:sticky;top:0}.top .small{margin-left:auto}.back{cursor:pointer;background:0 0;border:0;padding:0 6px;font-size:26px;line-height:1}.tabs{border-bottom:1px solid var(--line);background:#fff;display:flex}.tabs a{text-align:center;color:var(--muted);flex:1;padding:10px}.tabs a.active{color:var(--brand);border-bottom:2px solid var(--brand);font-weight:600}@media (width<=700px){.tabs{z-index:5;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0}}main{padding:12px 14px}.card{border:1px solid var(--line);background:#fff;border-radius:10px;margin:8px 0;padding:12px;display:block}.center{flex-direction:column;gap:10px;max-width:420px;margin:12vh auto;display:flex}.list{flex-direction:column;display:flex}.row{align-items:center;gap:8px;display:flex}.row.wrap,.wrap{flex-wrap:wrap}.between{justify-content:space-between}.grow{flex:1;min-width:0}.right{text-align:right}.muted{color:var(--muted)}.small{font-size:13px}.big{font-size:22px;font-weight:700}.warn{color:var(--warn)}.input{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;padding:9px 10px}.form label{color:var(--muted);margin-top:10px;font-size:14px;display:block}.form label .input{color:#1c2326;margin-top:4px}.btn{border:1px solid var(--line);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;padding:9px 14px;font-size:15px;display:inline-block}.btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.btn.danger{color:var(--danger)}.btn.wide{width:100%;margin-top:14px;padding:12px}.btn:disabled{opacity:.6}.link{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:4px}.seg{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.seg button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;flex:1;padding:9px;font-size:15px}.seg button.on{background:var(--brand-2);border-color:var(--brand);color:var(--brand);font-weight:600}.tag{background:#eef0f1;border:0;border-radius:99px;padding:2px 8px;font-size:12px;display:inline-block}.tag.warn{color:var(--warn);background:#fdecdf}.s-picked,.s-dispatched{color:#1d4ed8;background:#e7f0fd}.s-delivered,.s-collected{background:var(--brand-2);color:var(--brand)}.s-cancelled{color:var(--danger);background:#fde8e8}.combo{position:relative}.combo-list{border:1px solid var(--line);background:#fff;border-radius:8px;max-height:280px;margin:4px 0 0;padding:4px;list-style:none;overflow:auto}.combo .combo-list{z-index:10;position:absolute;left:0;right:0;box-shadow:0 6px 20px #00000014}.combo-list li{cursor:pointer;border-radius:6px;padding:9px 10px}.combo-list li:hover,.combo-list li.hi{background:var(--brand-2)}table.items{border-collapse:collapse;background:#fff;width:100%;margin-top:8px}.items th,.items td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:7px 6px;font-size:14px}.items .num{text-align:right;white-space:nowrap}.items tr.low td{color:var(--warn)}.doc-co{font-size:18px;font-weight:700}.timeline{padding-left:18px}@media print{.top,.tabs,.no-print,.timeline,h3{display:none!important}body,.card{background:#fff;border:0}}.subtabs{gap:4px;margin-bottom:10px;display:flex;overflow-x:auto}.subtabs a{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:99px;padding:7px 12px;font-size:14px}.subtabs a.active{background:var(--brand);color:#fff;border-color:var(--brand)}.tbl-wrap{overflow-x:auto}.hint{color:#33524a;background:#eef6f3;border-radius:8px;padding:8px 10px;font-size:13px}.warnbox{background:#fffaf0;border-color:#f0d39a}.warnline{border-left:3px solid var(--warn)}.tag.ok{background:var(--brand-2);color:var(--brand)}.tag.bad{color:var(--danger);background:#fde8e8}.btn.sm{padding:6px 10px;font-size:13px}.btn.ghost{background:0 0;border-color:#0000}.input.auto{width:auto}.grid4{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px;display:grid}.grid4 label{color:var(--muted);font-size:12px}.okc{color:var(--brand);padding:9px 0;font-weight:700}@media (width<=520px){.grid4{grid-template-columns:repeat(2,1fr)}}.thumbs{flex-wrap:wrap;gap:6px;margin:6px 0;display:flex}.thumb{border:1px solid var(--line);border-radius:8px;width:72px;height:72px;display:block;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%}.thumb button{color:#fff;cursor:pointer;background:#0000008c;border:0;border-radius:99px;width:20px;height:20px;font-size:11px;position:absolute;top:2px;right:2px}.ctsteps{margin:12px 0;display:flex}.ctsteps div{text-align:center;color:var(--muted);flex:1;font-size:11px;position:relative}.ctsteps i{background:#d5dadd;border-radius:99px;width:12px;height:12px;margin:0 auto 4px;display:block}.ctsteps div.on i{background:var(--brand)}.ctsteps div.cur i{box-shadow:0 0 0 4px var(--brand-2)}.ctsteps div.cur span{color:var(--brand);font-weight:600}.ctgrid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.ctgrid>div>span:first-child{color:var(--muted);font-size:12px;display:block}@media (width>=760px){.ctgrid{grid-template-columns:repeat(4,1fr)}}.ctlog{border-top:1px dashed var(--line);margin:8px 0;padding:8px 0 0;font-size:13px;list-style:none}.ctlog li{padding:3px 0}.stepbox{background:#f6f7f8;border-radius:8px;flex-direction:column;gap:8px;margin-top:8px;padding:10px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);background:#fff;border-radius:99px;padding:5px 10px;font-size:13px}.stepper{border:1px solid var(--line);border-radius:8px;display:flex;overflow:hidden}.stepper button{cursor:pointer;background:#f2f4f5;border:0;width:36px;font-size:18px}.stepper input{text-align:center;border:0;width:56px}.qty-in{width:90px}.pw{position:relative}.pw .input{padding-right:56px}.pw .link{font-size:14px;position:absolute;top:50%;right:6px;transform:translateY(-50%)}
