:root{color-scheme:light;--bg: #f5f7fb;--panel: #ffffff;--text: #172033;--muted: #647086;--line: #d8deea;--blue: #1f6feb;--green: #18864b;--red: #c93535;--amber: #996b00;--shadow: 0 10px 28px rgba(24, 38, 62, .08)}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif;background:var(--bg);color:var(--text)}.app{min-height:100vh;display:grid;grid-template-rows:auto 1fr}header{background:var(--panel);border-bottom:1px solid var(--line);padding:18px 24px}.header-inner{width:100%;max-width:none;margin:0;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}h1{margin:0;font-size:22px;font-weight:700;letter-spacing:0}.status{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;font-size:14px;color:var(--muted);background:#fbfcff}.user-bar{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.text-button{min-height:34px;padding:0 12px}.auth-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:none;align-items:center;justify-content:center;padding:20px;background:#f5f7fbf5}.auth-overlay.show{display:flex}.auth-box{width:min(420px,100%);padding:22px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:14px}.auth-box h2{margin:0;font-size:20px}.choice-box{width:min(520px,100%)}.choice-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.choice-head button{min-height:34px;padding:0 12px}.choice-wrong-row{margin:0}.choice-condition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-condition-grid button{min-height:46px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.auth-tabs button.active{border-color:var(--blue);color:var(--blue);font-weight:700}.auth-form{display:grid;gap:12px}.auth-form input{width:100%;height:42px;border:1px solid var(--line);border-radius:8px;padding:0 12px;font-size:14px;outline:none}.auth-message{min-height:18px;color:var(--red);font-size:13px;line-height:18px}.account-box{width:min(760px,100%);max-height:calc(100vh - 40px);overflow:auto}.account-create{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fbfcff}.account-create input{width:100%;height:42px;border:1px solid var(--line);border-radius:8px;padding:0 12px;font-size:14px;outline:none}.account-create button{min-height:42px;padding:0 16px;white-space:nowrap}.account-list{display:grid;gap:10px}.account-row{display:grid;grid-template-columns:1.2fr .8fr 1fr auto auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-size:14px}.account-row strong{color:var(--text);word-break:break-all}.account-row input{width:100%;height:38px;border:1px solid var(--line);border-radius:8px;padding:0 10px;font-size:14px;outline:none}.account-row button{min-height:38px;padding:0 12px}.dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #18864b1f}main{width:100%;max-width:none;margin:0;padding:24px;display:grid;grid-template-columns:360px minmax(0,1fr);gap:20px;align-items:stretch}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.scanner{padding:20px;display:grid;gap:16px;align-self:stretch}.collector-card{padding:18px 20px;display:grid;gap:12px;align-content:start}.collector-card h2{margin:0;font-size:18px;letter-spacing:0}.collector-state{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fbfcff;color:var(--muted);font-size:14px}.collector-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.collector-links .wide{grid-column:1 / -1}.collector-note{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:14px}.switch-row input{width:18px;height:18px}.pending-card{border:1px solid var(--line);border-radius:8px;padding:14px;display:grid;gap:12px;background:#fbfcff}.manual-entry-row{display:grid;grid-template-columns:1fr auto;gap:8px}.manual-entry-row input{min-width:0;height:38px;border:1px solid var(--line);border-radius:8px;padding:0 12px;font-size:14px;outline:none;background:#fff}.manual-entry-row input:focus{border-color:#1f6feb8c;box-shadow:0 0 0 3px #1f6feb1a}.manual-entry-row button{min-height:38px;padding:0 14px;border-color:var(--blue);background:var(--blue);color:#fff;font-weight:700;white-space:nowrap}.pending-code{min-height:34px;display:grid;gap:4px;align-items:center;font-family:Consolas,Monaco,monospace;font-size:18px;word-break:break-all}.pending-code .pending-code-value{color:var(--text)}.pending-code .pending-time-value{color:var(--muted);font-size:15px}.pending-cancel-button{min-height:34px;justify-self:start;padding:0 12px;border:1px solid rgba(201,53,53,.35);border-radius:8px;background:#fff;color:var(--red);font-size:13px;font-weight:700}.pending-cancel-button:disabled{display:none}.wrong-shipment-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:10px 12px;border:1px solid rgba(180,95,6,.3);border-radius:8px;background:#ed89361a;color:#8a4a05;font-weight:700}.wrong-shipment-row input{width:18px;height:18px;margin:0}.link-button,.collector-links button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);text-decoration:none;font-size:14px}.collector-links button.danger{color:var(--red);border-color:#c9353559}.file-picker{position:relative;overflow:hidden}.file-picker input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}label{display:block;margin-bottom:8px;color:var(--muted);font-size:14px}.condition-grid{display:grid;grid-template-columns:1fr;gap:10px}.condition-grid button{text-align:left;padding:0 14px;font-weight:700}.condition-grid button[data-condition=无损]{color:var(--green);border-color:#18864b47;background:#18864b14}.condition-grid button[data-condition=包装袋损坏]{color:#1f6feb;border-color:#1f6feb47;background:#1f6feb14}.condition-grid button[data-condition=包装盒损坏]{color:#5966c9;border-color:#5966c947;background:#5966c914}.condition-grid button[data-condition=吊牌丢失]{color:#996b00;border-color:#d69e2e5c;background:#d69e2e24}.condition-grid button[data-condition="货物缺少/损坏1"]{color:#b45f06;border-color:#ed89365c;background:#ed893621}.condition-grid button[data-condition="货物缺少/损坏2"]{color:#c24e00;border-color:#e068305c;background:#e068301f}.condition-grid button[data-condition="货物缺少/损坏3"]{color:#c23f55;border-color:#cd4b6057;background:#cd4b601c}.condition-grid button[data-condition=全损]{color:var(--red);border-color:#c935354d;background:#c9353514}.condition-grid button:disabled{cursor:not-allowed;opacity:.72}.condition-grid button.selected{box-shadow:inset 0 0 0 3px currentColor}.condition-confirm{width:100%;margin-top:12px}.record-condition-cell{display:flex;align-items:center;flex-wrap:nowrap;gap:3px;min-width:0;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.record-condition-cell::-webkit-scrollbar{display:none}.actions{display:grid;grid-template-columns:1fr;gap:10px}button{min-height:42px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font-size:14px;cursor:pointer}button.primary{border-color:var(--blue);background:var(--blue);color:#fff}button.danger{border-color:#c9353559;color:var(--red)}button:hover{filter:brightness(.98)}.table-panel{overflow:visible;align-self:stretch}#tableWrap{width:100%;min-width:0;overflow:hidden}.toolbar{padding:14px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.toolbar-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.toolbar input,.toolbar select{height:38px;border:1px solid var(--line);border-radius:8px;padding:0 12px;font-size:14px;outline:none;background:#fff}.toolbar{position:relative;z-index:20}.multi-filter{position:relative;width:140px}.multi-filter-condition{width:190px}.multi-filter-trigger{width:100%;height:38px;min-height:38px;padding:0 34px 0 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font-size:14px;font-weight:600;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}.multi-filter-trigger:after{content:"";position:absolute;top:14px;right:13px;width:7px;height:7px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .15s ease}.multi-filter.open .multi-filter-trigger{border-color:#1f6feb99;box-shadow:0 0 0 3px #1f6feb1a}.multi-filter.open .multi-filter-trigger:after{top:17px;transform:rotate(225deg)}.multi-filter-trigger.has-selection{color:var(--blue);border-color:#1f6feb66;background:#1f6feb0d}.multi-filter-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;display:none;width:max-content;min-width:100%;max-width:min(280px,calc(100vw - 32px));max-height:300px;overflow:auto;padding:6px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.multi-filter.open .multi-filter-menu{display:grid;gap:2px}.multi-filter-option{display:flex;align-items:center;gap:8px;min-height:34px;margin:0;padding:0 8px;border-radius:6px;color:var(--text);font-size:14px;white-space:nowrap;cursor:pointer}.multi-filter-option:hover{background:#f2f6fc}.multi-filter-option input{width:16px;height:16px;margin:0;accent-color:var(--blue)}.multi-filter-option.filter-option-1{color:var(--green)}.multi-filter-option.filter-option-2{color:#1f6feb}.multi-filter-option.filter-option-3{color:#5966c9}.multi-filter-option.filter-option-4{color:#996b00}.multi-filter-option.filter-option-5{color:#b45f06}.multi-filter-option.filter-option-6{color:#c24e00}.multi-filter-option.filter-option-7{color:#c23f55}.multi-filter-option.filter-option-8{color:var(--red)}.toolbar input[type=search]{width:min(240px,100%)}.toolbar input[type=date]{width:150px}.toolbar select{width:140px}.condition-filter-select{width:190px!important;font-weight:700}.condition-filter-select.condition-filter-all{color:var(--text);background:#fff}.condition-filter-select.condition-filter-1,.condition-filter-select .filter-option-1{color:var(--green);background:#18864b14}.condition-filter-select.condition-filter-2,.condition-filter-select .filter-option-2{color:#1f6feb;background:#1f6feb14}.condition-filter-select.condition-filter-3,.condition-filter-select .filter-option-3{color:#996b00;background:#d69e2e24}.condition-filter-select.condition-filter-4,.condition-filter-select .filter-option-4{color:#b45f06;background:#ed893621}.condition-filter-select.condition-filter-5,.condition-filter-select .filter-option-5{color:#c24e00;background:#e068301f}.condition-filter-select.condition-filter-6,.condition-filter-select .filter-option-6{color:#c23f55;background:#cd4b601c}.condition-filter-select.condition-filter-7,.condition-filter-select .filter-option-7{color:var(--red);background:#c9353514}.toolbar button:not(.multi-filter-trigger){min-height:38px;padding:0 14px}table{width:100%;border-collapse:collapse;table-layout:fixed}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;min-height:58px;padding:12px 16px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;flex-wrap:nowrap}.pagination button{height:34px;min-height:34px;padding:0 12px}.pagination-summary,.pagination-nav,.page-size-control,.page-jump{display:flex;align-items:center;gap:8px;height:34px;white-space:nowrap}.pagination-summary,.pagination-nav{flex:0 0 auto}.pagination-nav{margin-left:auto}.page-size-control{gap:6px}.pagination input{height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font-size:14px;outline:none}.page-size-options{height:34px;display:inline-flex;align-items:stretch;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.pagination .page-size-option{width:44px;height:32px;min-height:32px;padding:0;border:0;border-right:1px solid var(--line);border-radius:0;background:#fff;color:var(--muted);font-weight:600}.pagination .page-size-option:last-child{border-right:0}.pagination .page-size-option.active{background:var(--blue);color:#fff}.pagination input{width:58px;padding:0 6px;text-align:center}.pagination button:disabled{cursor:not-allowed;opacity:.45}th,td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:14px;vertical-align:middle}th{color:var(--muted);font-weight:600;background:#fbfcff}.record-select-column{width:3%;padding-left:10px;padding-right:6px;text-align:center}.record-code-column{width:9.5%}.record-time-column{width:11%;white-space:nowrap}.record-condition-column{width:21%}.record-wrong-column{width:7%}.record-scanner-column{width:6.5%}.record-accountability-column,.record-recovery-column{width:8.5%}.record-owner-column{width:6.5%}.record-remark-column{width:18.5%}.record-code-column,.record-time-column,.record-condition-column,.record-wrong-column,.record-scanner-column{padding-left:8px;padding-right:8px}.record-time-column{padding-left:2px;padding-right:2px}.record-code-column{padding-right:2px}.record-condition-column{padding-left:0;padding-right:2px}.record-accountability-column,.record-recovery-column{padding-left:6px;padding-right:6px}.record-owner-column,.record-remark-column{padding-left:8px;padding-right:8px}.record-select-column input{width:16px;height:16px;cursor:pointer}td.code{font-family:Consolas,Monaco,monospace;word-break:break-all}.copy-code-button{width:100%;min-height:28px;padding:0;border:0;background:transparent;color:var(--text);font:inherit;text-align:left;word-break:break-all;cursor:pointer}.copy-code-button:hover{color:var(--blue);filter:none;text-decoration:underline;text-underline-offset:3px}.badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:0;height:24px;padding:0 8px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}tbody tr{height:54px}.ok{color:var(--green);background:#18864b1a}.package-bag{color:#1f6feb;background:#1f6feb1a}.package-box{color:#5966c9;background:#5966c91a}.tag-missing{color:#996b00;background:#d69e2e2e}.cargo-damaged-1{color:#b45f06;background:#ed893629}.cargo-damaged-2{color:#c24e00;background:#e0683024}.cargo-damaged-3{color:#c23f55;background:#cd4b6021}.bad{color:var(--red);background:#c935351a}.wrong-yes{color:#b45f06;background:#ed893629}.wrong-no{color:var(--muted);background:#eef2f7}.accountability-select,.recovery-select{width:100%;height:30px;border:1px solid var(--line);border-radius:999px;padding:0 10px;font-size:13px;font-weight:700;outline:none;cursor:pointer}.accountability-select.accountable-no{color:var(--muted);background:#eef2f7}.accountability-select.accountable-yes{color:var(--red);border-color:#c9353540;background:#c9353514}.accountability-select.accountable-none{color:#16705a;border-color:#16705a3d;background:#16705a14}.accountability-select:disabled{cursor:not-allowed;opacity:.65}.recovery-select.recovery-no{color:var(--muted);background:#eef2f7}.recovery-select.recovery-yes{color:var(--green);border-color:#18864b40;background:#18864b14}.recovery-select.recovery-progress{color:#b45f06;border-color:#ed89364d;background:#ed89361f}.recovery-select:disabled{cursor:not-allowed;opacity:.65}.record-remark-input{width:100%;height:30px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:0 8px;background:#fff;color:var(--text);font-size:13px;outline:none}.record-remark-input:focus{border-color:#1f6feb99;box-shadow:0 0 0 3px #1f6feb1a}.record-remark-input:disabled{cursor:not-allowed;background:#f4f6f9}.empty{padding:56px 18px;text-align:center;color:var(--muted)}.toast{position:fixed;right:20px;bottom:20px;z-index:100;max-width:min(420px,calc(100vw - 40px));padding:12px 14px;border-radius:8px;background:#172033;color:#fff;opacity:0;transform:translateY(10px);transition:.18s ease;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:none;align-items:center;justify-content:center;padding:20px;background:#1720332e}.confirm-overlay.show{display:flex}.confirm-box{width:min(360px,100%);padding:22px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);display:grid;gap:18px}.confirm-box strong{font-size:18px;line-height:1.5}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (min-width: 1101px) and (max-width: 1280px){main{grid-template-columns:310px minmax(0,1fr);gap:16px;padding:16px}.scanner,.collector-card{padding:14px}th,td{padding-left:6px;padding-right:6px}.accountability-select,.recovery-select{padding-left:7px;padding-right:7px}}@media (min-width: 861px) and (max-width: 1100px){main{grid-template-columns:1fr;padding:16px}}@media (max-width: 860px){main{grid-template-columns:1fr;padding:16px}header{padding:16px}.actions,.account-create,.account-row{grid-template-columns:1fr}th:nth-child(1),td:nth-child(1){width:54px}th:nth-child(3),td:nth-child(3){display:none}#tableWrap{overflow-x:auto}table{min-width:1030px}.pagination{min-width:1030px;align-items:center}}
