:root{--bg:#f6f7f9;--panel:#fff;--text:#1d2330;--muted:#6b7280;--line:#e5e7eb;--accent:#2563eb;--accent-soft:#e8efff;--danger:#dc2626;--s-requested:#b45309;--s-approved:#7c3aed;--s-ordered:#2563eb;--s-in_stock:#15803d;--s-used_up:#9a3412;--s-cancelled:#6b7280}@media (prefers-color-scheme:dark){:root{--bg:#111318;--panel:#1a1d24;--text:#e7e9ee;--muted:#9aa1ad;--line:#2b2f38;--accent:#6d9bff;--accent-soft:#1e2a44;--s-requested:#f0b35a;--s-approved:#b69cff;--s-ordered:#79a6ff;--s-in_stock:#5fd08a;--s-used_up:#f19a6b;--s-cancelled:#9aa1ad}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:15px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:6px 12px}button:hover{border-color:var(--accent)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.ghost{background:0 0;border-color:#0000}button.small{padding:2px 8px;font-size:13px}button:disabled{opacity:.5;cursor:default}input,textarea,select{border:1px solid var(--line);background:var(--panel);border-radius:8px;width:100%;padding:7px 10px}textarea{resize:vertical}a{color:var(--accent)}.wrap{max-width:1100px;padding:16px;padding-top:max(16px, env(safe-area-inset-top));padding-bottom:max(16px, env(safe-area-inset-bottom));margin:0 auto}.top{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.top h1{flex:1;margin:0;font-size:20px}.muted{color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-bottom:14px;padding:14px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.grow{flex:1;min-width:0}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border-radius:999px;padding:4px 12px;font-size:14px}.chip.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.badge{white-space:nowrap;border:1px solid;border-radius:999px;padding:1px 8px;font-size:12px;display:inline-block}.s-requested{color:var(--s-requested)}.s-approved{color:var(--s-approved)}.s-ordered{color:var(--s-ordered)}.s-in_stock{color:var(--s-in_stock)}.s-used_up{color:var(--s-used_up)}.s-cancelled{color:var(--s-cancelled)}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 6px}th{color:var(--muted);font-size:13px;font-weight:500}tr.click:hover td{background:var(--accent-soft);cursor:pointer}.chat{flex-direction:column;gap:8px;max-height:420px;margin-bottom:10px;display:flex;overflow-y:auto}.msg{white-space:pre-wrap;border-radius:10px;max-width:90%;padding:8px 12px}.msg.user{background:var(--accent-soft);align-self:flex-end}.msg.assistant{background:var(--bg);border:1px solid var(--line);align-self:flex-start}.action{border:1px dashed var(--line);background:var(--panel);border-radius:8px;margin-top:6px;padding:8px 10px}.action .fields{color:var(--muted);font-size:13px}.files{font-size:13px}.overlay{z-index:10;background:#00000059;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--panel);width:min(520px,100%);height:100%;padding:18px;overflow-y:auto}.form{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.form .full{grid-column:1/-1}.hist{border-left:2px solid var(--line);margin:6px 0;padding-left:10px;font-size:13px}.center{max-width:380px;margin:10vh auto}.err{color:var(--danger);font-size:14px}.cards{display:none}@media (max-width:720px){table:not(.import){display:none}.cards{flex-direction:column;gap:8px;display:flex}.card{border:1px solid var(--line);border-radius:10px;padding:10px}.form{grid-template-columns:1fr}.top h1{font-size:18px}input,textarea,select{font-size:16px}}.thumb{object-fit:cover;float:left;border:1px solid var(--line,#ddd);border-radius:6px;width:36px;height:36px;margin-right:8px}.cards .thumb{float:none;flex:none}.photos{flex-wrap:wrap;gap:8px;display:flex}.photos img,.photos .addphoto{object-fit:cover;border:1px solid var(--line,#ddd);border-radius:8px;width:84px;height:84px}.photos .addphoto{font-size:12px;line-height:1.4}.receive-photo{object-fit:contain;background:#7f7f7f14;border-radius:10px;width:100%;max-height:260px}.drawer.wide{width:min(900px,100%)}.scrollx{border:1px solid var(--line);border-radius:8px;max-height:55vh;margin-bottom:8px;overflow:auto}table.import{font-size:13px}table.import td{white-space:nowrap;text-overflow:ellipsis;max-width:260px;overflow:hidden}table.import tr.off td{opacity:.4}
