:root{color-scheme:light;--green:#087c59;--green-dark:#075b43;--mint:#eaf4f0;--line:#d7e5df;--ink:#14231e;--muted:#61736c;--warn:#a96108;--error:#b52d2d;--bg:#f2f7f5}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{font-family:-apple-system,BlinkMacSystemFont,"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;background:var(--bg);color:var(--ink)}body{margin:0}.shell{width:min(100%,780px);margin:0 auto;padding:14px}.panel,.order-card,.assignment-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 8px 28px rgba(20,58,46,.07)}.login-panel{margin:8vh auto 0;padding:28px;max-width:520px}.warehouse-brand-logo{display:block;width:min(240px,70%);height:auto;object-fit:contain}.warehouse-brand-logo.small{width:150px}.login-panel p{color:var(--muted)}label{display:grid;gap:7px;font-weight:700;margin:18px 0}input{width:100%;min-height:54px;border:1px solid #bcd1c8;border-radius:13px;padding:10px 13px;font:inherit;font-size:20px;background:#fff}button,a.button{min-height:52px;border:0;border-radius:14px;padding:11px 17px;background:var(--green);color:#fff;font:inherit;font-size:19px;font-weight:800;text-decoration:none;touch-action:manipulation;outline:0}button:focus,a.button:focus{outline:0;box-shadow:none}button:disabled{background:#a9c8bc;color:#f4f8f6}.secondary{background:var(--mint);color:var(--green-dark)}.error{color:var(--error);font-weight:700}.topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 4px 16px}.message{position:sticky;top:0;z-index:5;margin:0 0 10px;border-radius:12px;background:#fff7df;color:#6a4a00;padding:10px 12px;font-weight:700}.message:empty{display:none}.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;position:sticky;top:0;z-index:4;padding:8px 0;background:var(--bg)}.tabs button{padding:10px 5px;font-size:16px;background:#e8f1ed;color:var(--green-dark);white-space:nowrap}.tabs button.active{background:var(--green);color:#fff}.tabs span{display:block;font-size:14px;margin-top:2px}.tab-panel{display:grid;gap:12px;padding:6px 0 30px}.receiving-group{display:grid;gap:12px}.receiving-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:10px 4px 0}.receiving-group-head h2{margin:0;font-size:23px}.receiving-group-head span{font-size:14px;font-weight:700;text-align:right}.empty{padding:30px 18px;text-align:center;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:18px}.assignment-card,.order-card{padding:18px}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.card-head h2{font-size:22px;margin:0}.badge{display:inline-flex;border-radius:99px;padding:6px 10px;background:var(--mint);color:var(--green-dark);font-weight:800;font-size:14px}.badge.done{background:#dff2e7}.badge.wait{background:#fff1d7;color:var(--warn)}.facts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:15px 0}.fact{min-width:0;padding:10px;border-radius:11px;background:#f6faf8}.fact dt{font-size:13px;color:var(--muted)}.fact dd{margin:3px 0 0;font-weight:800;word-break:break-word}.sources{display:grid;gap:6px;margin:10px 0 15px}.source{padding:10px;border-left:4px solid #8fc2ae;background:#f7faf9;border-radius:7px;font-weight:650}.action-row{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end}.action-row label{margin:0}.action-row button{min-width:136px}.full{width:100%}.category{border-top:1px solid var(--line);padding:14px 0 2px}.category:first-of-type{border-top:0}.category-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.category h3{margin:0;font-size:21px}.items{display:grid;gap:7px;margin:11px 0}.item{padding:10px;border-radius:10px;background:#f6faf8;line-height:1.5}.item strong{display:block}.dispatch-pending{margin:12px 0;padding:11px;background:#fff2dd;color:#7e5100;border-radius:11px;font-weight:700}.ready{padding:12px;border-radius:12px;background:#def1e6;color:#075b43;font-weight:900;text-align:center}.muted{color:var(--muted)}@media(hover:none) and (pointer:coarse){.assignment-card,.order-card{box-shadow:none}}@media(max-width:480px){.shell{padding:9px}.assignment-card,.order-card{padding:14px}.facts{grid-template-columns:1fr}.action-row{grid-template-columns:1fr}.action-row button{width:100%}.tabs button{font-size:15px}.card-head{display:grid}.login-panel{padding:22px}.receiving-group-head{display:grid}.receiving-group-head span{text-align:left}}
.login-panel p.error{color:var(--error);font-size:18px;line-height:1.5;overflow-wrap:anywhere}

.inventory-workbench{margin:20px 0;padding:16px}.inventory-workbench-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.inventory-workbench-head h2{margin:0;font-size:24px}.inventory-workbench-head p{margin:6px 0;color:var(--muted)}.inventory-workbench-head button{min-height:44px;font-size:16px}.inventory-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:14px 0}.inventory-tabs button{min-width:0;padding:9px 4px;background:#e8f1ed;color:var(--green-dark);font-size:15px;white-space:normal}.inventory-tabs button.active{background:var(--green);color:#fff}.inventory-tabs span{display:inline-block;margin-left:3px}.inventory-tab-panel{display:grid;gap:12px}.inventory-tab-panel[hidden]{display:none!important}.inventory-entry-form,.stock-receipt-form{display:grid;gap:10px}.inventory-entry-form h3{margin:4px 0}.inventory-entry-form label,.stock-receipt-form label{margin:0}.inventory-entry-form input,.inventory-entry-form select,.inventory-entry-form textarea,.stock-receipt-form input,.stock-receipt-form select,.stock-receipt-form textarea{width:100%;min-height:50px;border:1px solid #bcd1c8;border-radius:12px;padding:9px 12px;background:#fff;color:var(--ink);font:inherit;font-size:18px}.inventory-entry-form textarea,.stock-receipt-form textarea{min-height:74px;resize:vertical}.inventory-confirm{grid-template-columns:auto 1fr;align-items:center;padding:12px;border-radius:12px;background:#fff4df}.inventory-confirm input{width:26px;min-height:26px;margin:0}.inventory-card-list{display:grid;gap:12px;margin-top:14px}.inventory-card{padding:15px;border:1px solid var(--line);border-radius:16px;background:#fff}.inventory-card h3{margin:0;font-size:20px}.inventory-scan-required{margin-top:10px;padding:10px;border-radius:10px;background:#eaf4f0;color:var(--green-dark);font-weight:800}.stock-receipt-form{grid-template-columns:1fr 1fr;padding-top:10px;border-top:1px solid var(--line)}.stock-receipt-form button{grid-column:1/-1}.inventory-card>.full+.full{margin-top:8px}@media(max-width:480px){.inventory-workbench{padding:12px}.inventory-workbench-head{display:grid}.inventory-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-receipt-form{grid-template-columns:1fr}}
.todo-panel{padding:16px;margin-bottom:10px}.todo-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.todo-head h1{margin:0;font-size:23px}.todo-head p{margin:4px 0 0;color:var(--muted);font-size:14px}.todo-range{display:flex;gap:5px;flex:0 0 auto}.todo-range button{min-height:42px;padding:7px 10px;background:#e7f0ec;color:var(--green-dark);font-size:15px}.todo-range button.active{background:var(--green);color:#fff}.todo-today{margin-top:12px;padding:11px;border-radius:10px;background:#fff0d6;color:#754a00;font-weight:900}.todo-today strong{font-size:20px}.todo-future{display:flex;gap:6px;overflow-x:auto;padding:8px 0}.todo-day{min-width:108px;padding:8px;border-radius:9px;background:#f0f7f4}.todo-day b,.todo-day small{display:block}.todo-day small{color:var(--muted);margin-top:2px}.todo-orders{display:grid;gap:7px}.todo-order{padding:10px;border:1px solid var(--line);border-radius:11px;background:#f8fbfa}.todo-order-head{display:flex;justify-content:space-between;gap:8px}.todo-order h2{margin:0;font-size:18px}.todo-due{color:#8a5500;font-weight:900;text-align:right}.todo-order-facts,.todo-posts{margin-top:5px}.todo-posts{color:var(--green);font-weight:900}.todo-item{padding:6px 0;border-top:1px solid var(--line)}.todo-item:first-child{border-top:0}.todo-flag{display:inline-block;margin:5px 4px 0 0;padding:3px 6px;border-radius:7px;background:#fff0d6;color:#8a5500;font-weight:900}.todo-undated{border-color:#dfc68b}@media(max-width:480px){.todo-head{display:grid}.todo-range{width:100%}.todo-range button{flex:1}.todo-order-head{display:grid}.todo-due{text-align:left}}

.warehouse-quick-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:12px}.warehouse-quick-actions #cutting-shortage-open{border:1px solid #bad4c6}
