:root{--bg:#f6f7fb;--card:#fff;--ink:#17202a;--muted:#6b7280;--line:#e5e7eb;--accent:#e4262b;--ok:#16a34a;--warn:#d97706;--err:#dc2626;--info:#2563eb}
@media (prefers-color-scheme:dark){:root{--bg:#0f1216;--card:#171b21;--ink:#e6e8eb;--muted:#9aa3ad;--line:#2a313b}}
*{box-sizing:border-box}body{margin:0;font:14px/1.45 -apple-system,Segoe UI,Inter,Roboto,sans-serif;background:var(--bg);color:var(--ink)}
.top{display:flex;align-items:center;gap:18px;padding:10px 16px;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.brand{font-weight:700;display:flex;align-items:center;gap:8px}.dot{width:10px;height:10px;border-radius:50%;background:var(--accent)}
nav button{background:none;border:0;padding:8px 12px;color:var(--muted);font-weight:600;cursor:pointer;border-radius:6px}nav button.active{background:var(--bg);color:var(--ink)}
.right{margin-left:auto;display:flex;gap:8px;align-items:center}
main{padding:16px;max-width:1400px;margin:0 auto}.tab{display:none}.tab.active{display:block}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px}.stat b{display:block;font-size:22px}.stat span{color:var(--muted);font-size:12px}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
input,select,textarea{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);font:inherit}input#search{min-width:280px}textarea{width:100%}
button{padding:8px 12px;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;font:inherit}
button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.ghost{background:transparent}button:disabled{opacity:.5}
table.grid{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.grid th,.grid td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.grid th{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
.grid tbody tr:hover{background:rgba(127,127,127,.06)}.grid tr.click{cursor:pointer}
.pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;background:var(--line)}
.b-new{background:#e0e7ff;color:#3730a3}.b-in_transit{background:#dbeafe;color:#1e40af}.b-out_for_delivery{background:#fef3c7;color:#92400e}.b-delivered{background:#dcfce7;color:#166534}
.b-exception{background:#fee2e2;color:#991b1b}.b-returned{background:#fae8ff;color:#86198f}.b-closed{background:#e5e7eb;color:#374151}.b-unknown{background:var(--line)}
.s-pending{color:var(--warn);font-weight:600}.s-paid{color:var(--ok);font-weight:600}.s-none{color:var(--muted)}
.l-info{color:var(--info)}.l-warn{color:var(--warn)}.l-error{color:var(--err)}
.pager{display:flex;gap:8px;align-items:center;justify-content:flex-end;margin-top:8px;color:var(--muted)}
.hint{color:var(--muted);font-size:12px;margin:4px 0 10px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px}
pre{background:rgba(127,127,127,.08);padding:10px;border-radius:8px;overflow:auto;font-size:12px;max-height:420px}code{background:rgba(127,127,127,.12);padding:1px 5px;border-radius:4px}
.drawer{position:fixed;top:0;right:-560px;width:540px;max-width:100vw;height:100vh;background:var(--card);border-left:1px solid var(--line);transition:right .2s;z-index:10;overflow:auto}.drawer.open{right:0}
.drawerInner{padding:18px}.close{position:absolute;top:10px;right:10px;font-size:20px;border:0;background:none}
.timeline{list-style:none;padding:0;margin:10px 0}.timeline li{padding:8px 0 8px 18px;border-left:2px solid var(--line);position:relative}.timeline li:before{content:"";position:absolute;left:-6px;top:12px;width:10px;height:10px;border-radius:50%;background:var(--accent)}
.kv{display:grid;grid-template-columns:140px 1fr;gap:4px 10px;font-size:13px}.kv dt{color:var(--muted)}.kv dd{margin:0;word-break:break-all}
dialog{border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);padding:20px;width:440px}dialog label{display:block;margin:10px 0}dialog label input{width:100%;margin-top:4px}.row{display:flex;justify-content:flex-end;gap:8px}
.chk{display:flex;gap:6px;align-items:center;color:var(--muted)}
#toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:8px;opacity:0;transition:opacity .2s;pointer-events:none;z-index:20}#toast.show{opacity:1}
.err{color:var(--err)}.ok{color:var(--ok)}
@media (max-width:800px){.grid th:nth-child(n+6),.grid td:nth-child(n+6){display:none}.drawer{width:100vw}}
.settings fieldset{border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:0 0 14px}.settings legend{font-weight:700;padding:0 6px}
.settings label{display:block;margin:8px 0}.settings label small{display:block;color:var(--muted)}.settings label input:not([type=checkbox]){width:100%;max-width:520px;margin-top:4px}
.settings label.chk{display:flex}.src{font-size:11px;color:var(--muted);margin-left:6px}
