:root{--bg:#f6f7fb;--card:#fff;--text:#1b1f2a;--muted:#5d6475;--line:#dfe3ee;--brand:#2b4fd8;--in:#1e9e54;--out:#7b8394;--alert:#d63b3b}@media (prefers-color-scheme:dark){:root{--bg:#12141b;--card:#1c1f29;--text:#eef0f6;--muted:#9aa1b3;--line:#2f3342;--brand:#6b8cff}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4}main{max-width:760px;margin:0 auto;padding:16px}main.wide{max-width:1100px}h1{margin:8px 0 16px;font-size:1.4rem}h2{margin:0 0 8px;font-size:1.1rem}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:16px;padding:16px}.muted{color:var(--muted);font-size:.9rem}.row{flex-wrap:wrap;gap:12px;display:flex}.row>*{flex:140px}button,.btn{font:inherit;border:1px solid var(--line);background:var(--card);min-height:52px;color:var(--text);cursor:pointer;border-radius:10px;padding:12px 16px}button.primary{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}button.in{background:var(--in);border-color:var(--in);color:#fff;font-weight:600}button.out{background:var(--out);border-color:var(--out);color:#fff;font-weight:600}button.link{min-height:0;color:var(--brand);background:0 0;border:none;padding:4px 0}button:disabled{opacity:.55;cursor:default}input{font:inherit;border:1px solid var(--line);background:var(--card);width:100%;min-height:52px;color:var(--text);border-radius:10px;padding:12px}label{margin:12px 0 6px;font-weight:600;display:block}.list{gap:8px;display:grid}.err{color:var(--alert);margin:12px 0;font-weight:600}.ok{color:var(--in);margin:12px 0;font-weight:600}.pill{color:#fff;border-radius:999px;padding:2px 10px;font-size:.85rem;font-weight:600;display:inline-block}.pill.in{background:var(--in)}.pill.out{background:var(--out)}.pill.not_arrived{background:var(--alert)}.stats{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.stat{text-align:center;background:var(--card);border:1px solid var(--line);border-radius:12px;flex:100px;padding:12px}.stat b{font-size:1.8rem;display:block}.cols{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}table{border-collapse:collapse;width:100%}td,th{text-align:left;border-bottom:1px solid var(--line);padding:8px 6px;font-size:.95rem}
