:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#263e38;background:#f6f7f3;font-synthesis:none;--green:#214d43;--muted:#7a8983;--border:#e3e8e1}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;transition:background .15s,transform .15s}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #b5c99b;outline-offset:3px}input,select{width:100%;height:43px;border:1px solid #dce3db;border-radius:8px;padding:0 12px;background:white;color:#30473e;font-size:13px;min-width:0}input:focus,select:focus{outline:2px solid #a5bfa7;outline-offset:1px}label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#64756d}label small{font-size:11px;line-height:1.7}button{border:0}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:43px;padding:0 20px;border-radius:8px;font-size:13px;font-weight:600;white-space:nowrap}.primary{background:var(--green);color:#fff}.primary:hover{background:#163b32}.secondary{background:white;border:1px solid #d9e1d8;color:var(--green)}.secondary:hover{background:#f0f4ed}.text-button{color:#66796e;background:none;font-size:12px;padding:8px}.text-button:hover{color:#123e2f}.brand-mark{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#214d43;color:#e6efdb;border-radius:12px;font-size:30px;font-weight:600;font-family:Georgia,serif;padding-bottom:6px}header{height:90px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 5.2%;background:#fcfcfa}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#243f34;font-weight:650;font-size:16px}.brand small{display:block;font-size:9px;letter-spacing:2px;color:#859288;margin-top:5px}.header-right{display:flex;align-items:center;gap:28px}.private-label{font-size:11px;color:#71806f}.private-label i{display:inline-block;width:6px;height:6px;background:#759e62;border-radius:50%;margin-right:5px}main{max-width:1536px;margin:auto;padding:42px 5.2% 20px}.title-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;color:#89977f;margin-bottom:12px}h1{font-size:31px;letter-spacing:-1px;font-weight:600;margin:0;line-height:1.4}.title-dot{color:#8cac72}.subtitle{font-size:13px;color:#879187;margin:12px 0 0;line-height:1.7}.stats{display:grid;grid-template-columns:repeat(6,1fr);margin:32px 0 30px;border:1px solid var(--border);border-radius:13px;background:#fcfdf9;overflow:hidden}.stats>div{padding:23px 27px;border-right:1px solid var(--border)}.stats>div:last-child{border:0}.stats span{font-size:12px;color:#6b7c70}.stats strong{display:block;font-family:Arial,sans-serif;font-size:34px;font-weight:500;letter-spacing:-1px;margin:10px 0 7px}.stats small{font-size:10px;color:#96a090}.dot{display:inline-block;height:6px;width:6px;border-radius:50%;margin-right:7px}.green{background:#6f977a}.orange{background:#c8996c}.yellow{background:#b4a260}.records-panel{background:white;border:1px solid var(--border);border-radius:13px;overflow:hidden;box-shadow:0 3px 12px #2a403703}.panel-title{display:flex;justify-content:space-between;align-items:center;padding:22px 24px 18px}h2{margin:0;font-size:16px;font-weight:600}.count{display:inline-flex;margin-left:8px;font:11px Arial;padding:4px 8px;background:#edf2e9;border-radius:5px;color:#678058}.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;padding:0 24px 24px}.filters label{flex:1;min-width:95px}.filters .search-field{min-width:205px;flex:2}.filters input,.filters select{height:38px;background:#fcfdfa;font-size:12px}.date-filter{display:flex;align-items:end;gap:9px;flex:2;min-width:280px}.date-dash{padding-bottom:11px;color:#9ca999;font-size:11px}.invisible-label{visibility:hidden}.filter-submit{min-height:38px;flex:none}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left;font-size:12px}thead{background:#f7f9f4}th{padding:15px 18px;color:#84927d;font-size:11px;font-weight:500;border-top:1px solid #edf0e9;border-bottom:1px solid #edf0e9}td{padding:20px 18px;border-bottom:1px solid #edf0e9;color:#65746d}th:first-child,td:first-child{padding-left:24px}td:first-child{color:#2d493e;font-size:13px;font-weight:550}.person{display:flex;align-items:center;gap:10px}.avatar{display:inline-flex;align-items:center;justify-content:center;height:30px;width:30px;background:#edf2e8;color:#819777;border-radius:9px;font-size:12px;flex:none}.person-name{max-width:160px;white-space:normal;overflow-wrap:anywhere;line-height:1.5}.date{color:#526457;font-size:12px}.date small{display:block;font-size:10px;color:#9ba595;margin-top:5px}.tag{display:inline-block;font-size:10px;border-radius:5px;padding:6px 9px;background:#f2f4ef;color:#839079}.tag.confirmed{background:#edf3e6;color:#729257}.tag.transit{background:#eaf2f6;color:#608497}.tag.complete{background:#e7f2eb;color:#52866b}.tag.terminated{background:#f1f1f1;color:#999}.tag.pending{background:#faf0df;color:#b29157}.yes{color:#689477}.no{color:#a0a997}.refund-pending{color:#b98c4d}.row-actions{display:flex;gap:5px}.row-actions button{background:none;color:#6f8873;font-size:11px;padding:7px}.row-actions .delete{color:#a09486}.last-col{width:105px}.table-footer{display:flex;align-items:center;justify-content:space-between;padding:17px 24px;font-size:11px;color:#99a191}.pagination{display:flex;align-items:center;gap:15px}.pagination button{background:#f7f9f4;border:1px solid #e8ece2;border-radius:5px;width:27px;height:27px;color:#6d7f60}.empty{text-align:center;padding:52px 20px 62px;color:#9ca691;font-size:13px}.empty-icon{font-size:28px;border:1px solid #e2e9da;background:#f7f9f2;border-radius:14px;height:54px;width:54px;display:grid;place-items:center;margin:auto;color:#8da47c}.empty h3{font-size:16px;font-weight:500;color:#62735a;margin:18px 0 8px}.empty p{font-size:12px;margin-bottom:22px}footer{display:flex;justify-content:space-between;gap:12px;color:#a3aa9b;font-size:10px;margin-top:23px}.footer-dot{padding:0 8px}.login-screen{min-height:100svh;background:radial-gradient(ellipse at 85% 15%,#dde5ce 0,transparent 40%),#f4f6ef;display:flex;align-items:center;justify-content:center;position:relative;padding:100px 24px}.login-brand{position:absolute;top:35px;left:5%;display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:2px;color:#658062}.login-card{width:420px;background:#fffefb;border:1px solid #e1e7d8;border-radius:20px;padding:42px;box-shadow:0 20px 60px #29472508}.login-card h1{font-size:30px}.login-card>p{font-size:12px;line-height:1.8;color:#8d9788;margin-bottom:30px}.login-card form>label{margin-bottom:9px}.login-card input{height:46px}.login-card button{width:100%;justify-content:space-between;height:46px}.login-note{font-size:10px;text-align:center;color:#a0a996;border-top:1px solid #e9ede2;margin-top:26px;padding-top:22px}.login-footer{position:absolute;bottom:30px;font-size:9px;letter-spacing:3px;color:#a3ae95}.error{color:#b64f43;font-size:12px;line-height:1.7;min-height:18px}.table-error{padding:0 24px}.boot{padding:35vh 20px;text-align:center;color:#8a9980;font-size:13px}dialog{border:1px solid #e0e6d9;border-radius:16px;max-width:590px;width:calc(100% - 32px);padding:0;color:#344b3d;box-shadow:0 24px 100px #1c392733}dialog::backdrop{background:#203a3066;backdrop-filter:blur(3px)}#record-form{padding:28px}.dialog-heading{display:flex;justify-content:space-between;align-items:start;margin-bottom:27px}.dialog-heading h2{font-size:21px}.icon-button{background:none;color:#8d9886;font-size:27px;width:30px;height:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}.full{grid-column:1/-1}em{color:#b69269;font-style:normal}.dialog-footer{display:flex;gap:10px;justify-content:end;border-top:1px solid #e7ecdf;padding-top:19px}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#254b3e;color:white;padding:13px 24px;border-radius:9px;font-size:13px;box-shadow:0 5px 30px #17332222;z-index:10}[hidden]{display:none!important}@media(min-width:1500px){.filters .date-filter{min-width:280px}}@media(max-width:800px){header{height:75px;padding:0 22px}.header-right{gap:12px}.private-label{display:none}main{padding:28px 20px}.title-row{align-items:start}.title-row h1{font-size:24px}.title-row>.primary{padding:0 14px;margin-top:20px}.subtitle{font-size:11px}.stats{grid-template-columns:repeat(2,1fr);margin:24px 0}.stats>div{padding:19px}.stats>div:nth-child(even){border-right:0}.stats>div:not(:last-child){border-bottom:1px solid var(--border)}.stats>div:nth-last-child(-n+2){border-bottom:0}.stats strong{font-size:29px}.panel-title{padding:20px 18px}.filters{padding:0 18px 20px;gap:10px}.filters .search-field{min-width:100%;flex:1}.date-filter{min-width:100%}.filter-submit{flex:1}.table-footer{padding:15px 18px}footer{font-size:9px;flex-direction:column;gap:8px}.login-card{padding:32px 28px}#record-form{padding:24px 20px}.form-grid{gap:17px 12px}.form-grid label:has(input[type=datetime-local]){grid-column:1/-1}.eyebrow{font-size:8px;letter-spacing:1.5px}.empty{padding:40px 20px}}

.login-card form>.primary{justify-content:center}.login-card .error:empty{margin:8px 0;min-height:8px}.empty p:empty{display:none}

.tracking-number{font-variant-numeric:tabular-nums;max-width:220px;min-width:130px;white-space:normal;overflow-wrap:anywhere;user-select:text}

.tag.returning{background:#f1ecf8;color:#8a70ab}.dot.returning{background:#9b84bb}

.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stats>div:nth-child(3n){border-right:0}.stats>div:nth-child(-n+6){border-bottom:1px solid var(--border)}
.tag.waiting{background:#f8f0df;color:#987326}.tag.anomaly{background:#fce7e4;color:#ae4034}.status-reason{display:block;white-space:normal;min-width:180px;max-width:270px;line-height:1.6;color:#ad5147;margin-top:8px;font-size:11px}.row-actions{flex-wrap:wrap;min-width:185px;max-width:220px}.last-col{width:220px}.row-actions [data-action="complete"]{color:#286a48}.row-actions [data-action="terminate"]{color:#a65b46}
.status-preview{display:flex;flex-direction:column;gap:8px;background:#f5f7f0;border-radius:8px;padding:12px}.status-preview small{line-height:1.6;color:#8b7161}#action-form{padding:28px}#action-description{line-height:1.8;font-size:14px;margin:20px 0}
@media(max-width:800px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats>div{border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.stats>div:nth-child(3n){border-right:1px solid var(--border)}.stats>div:nth-child(2n){border-right:0}.stats>div:nth-last-child(2){border-bottom:1px solid var(--border)}.stats>div:last-child{border-bottom:0}}

.table-scroll table{min-width:1500px}.person{min-width:160px}.person-name{min-width:110px}

/* 共用筛选与对话框。手机卡片和桌面表格使用同一份记录及操作接口。 */
.filters{display:block}.basic-filters{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(150px,240px);align-items:end;gap:12px}.filters .search-field{min-width:0}.search-submit{height:38px;min-height:38px}.advanced-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin-top:16px}.advanced-filters>label{min-width:105px}.filter-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;color:#66796e;font-size:12px}#toggle-filters{display:none}.record-cards{display:none}
#record-form{padding:0}.dialog-heading{margin:0;padding:24px 28px 18px;align-items:center}.dialog-content{padding:0 28px}.dialog-heading h2:focus,#more-title:focus{outline:none}#record-form>.dialog-footer{padding:18px 28px 24px}.icon-button{width:44px;height:44px;flex:none}.danger{background:#a6463b}.danger:hover{background:#89382f}.modal-open{overflow:hidden}.toast{max-width:calc(100% - 32px);width:max-content;line-height:1.6;bottom:calc(24px + env(safe-area-inset-bottom))}
#more-dialog{max-width:420px;padding:24px}.more-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}#more-title{overflow-wrap:anywhere;line-height:1.5}.more-actions{display:grid;gap:8px;margin-bottom:20px}.more-actions button{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;background:#f4f7f1;color:#285544;border-radius:8px;padding:15px 16px;min-height:48px;font-size:15px}.more-actions .delete{color:#a6463b;background:#fcf1ef;margin-top:8px}.more-actions button span{font-size:12px;color:#9b716b}#more-back{width:100%}.records-panel[aria-busy="true"] .panel-title .count{opacity:.5}
@media(max-width:1024px){
 body{overflow-wrap:break-word}header{height:58px;padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left))}.header-right .text-button{min-height:44px}.brand{min-height:44px}
 main{padding:24px max(12px,env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.title-row{align-items:center;gap:12px;padding:0 4px}.title-row h1{font-size:23px}.title-row>.primary{margin:0;min-height:44px;padding:0 14px}
 .stats{grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0;border-radius:12px}.stats>div,.stats>div:nth-child(2n),.stats>div:nth-child(3n),.stats>div:nth-last-child(2){padding:12px 10px;border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.stats>div:nth-child(3n){border-right:0}.stats>div:nth-last-child(-n+3){border-bottom:0}.stats span{font-size:11px;white-space:nowrap}.stats strong{font-size:25px;margin:5px 0 0;line-height:1.1;letter-spacing:-.5px}
 .records-panel{border-radius:12px;overflow:visible;background:#fff}.panel-title{padding:12px 14px;scroll-margin-top:12px}.panel-title .text-button{min-height:44px;padding:8px 10px}.filters{padding:0 14px 14px}.basic-filters{grid-template-columns:minmax(0,1fr) auto;gap:12px 10px}.filters label{min-width:0;font-size:12px}.filters .search-field{min-width:0;grid-column:1}.status-filter{grid-column:1}.filters input,.filters select,input,select{font-size:16px;min-height:46px;height:46px;max-width:100%;padding:0 10px}.filters input[type=date]{width:100%;min-width:0;appearance:none;-webkit-appearance:none}.filters .search-submit{grid-column:2;grid-row:1;min-height:46px;padding:0 15px}#toggle-filters{display:inline-flex;min-height:46px;padding:0 12px;gap:5px;grid-column:2;grid-row:2;font-size:12px;background:#f8faf6}.filter-chevron{font-size:16px;transition:transform .15s}.expanded .filter-chevron{transform:rotate(180deg)}#filter-count{background:#214d43;border-radius:50%;color:white;min-width:18px;height:18px;line-height:18px;font-size:10px;text-align:center}.advanced-filters{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;background:#f7f9f4;border:1px solid var(--border);border-radius:10px;padding:14px;margin-top:14px}.expanded .advanced-filters{display:grid}.advanced-filters>label{min-width:0}.date-filter{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-column:1/-1;min-width:0;width:100%;gap:5px}.date-filter label{min-width:0}.date-filter span{font-size:10px;white-space:nowrap}.filter-summary{margin:8px 0 -8px;font-size:11px}.filter-summary button{min-height:44px}.date-dash{padding-bottom:15px}
 .table-scroll{display:none}.record-cards{display:grid;gap:12px;background:#f6f7f3;padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.record-cards:empty{display:none}.record-card{background:white;border:1px solid var(--border);border-radius:12px;padding:16px;margin:0 -1px}.card-heading{display:flex;align-items:start;gap:12px;justify-content:space-between}.card-heading h3{font-size:17px;font-weight:600;line-height:1.45;margin:0;min-width:0;overflow-wrap:anywhere}.card-heading .tag{flex:none;font-size:11px;line-height:1.5;padding:5px 8px;white-space:nowrap}.card-warning{color:#a14438;background:#fff2ee;font-size:12px;line-height:1.7;margin:12px 0 0;padding:10px;border-radius:8px}
 .card-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 16px}.record-card dt,.field-caption{font-size:11px;color:#728077;font-weight:400}.record-card dd{margin:7px 0 0;line-height:1.5;font-size:13px}.card-dates .date{font-size:13px;font-variant-numeric:tabular-nums;color:#354f42}.card-dates .date b{display:block;font-size:13px;font-weight:500;margin-top:2px}.card-dates .date small{font-size:10px;line-height:1.5;margin-top:2px;color:#768474}
 .card-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin:0;padding:14px 0;border-top:1px solid #edf0e9}.card-facts>div{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0}.card-facts dd{margin:0;font-size:12px}.record-card .yes{color:#437b55}.record-card .no{color:#7f897a}.record-card .refund-pending{color:#9a6c29}
 .card-tracking{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #edf0e9;padding:12px 0 14px;min-height:66px}.card-tracking>div{min-width:0;flex:1}.field-caption{display:block;margin-bottom:5px}.tracking-value{display:block;overflow-wrap:anywhere;font-size:14px;font-variant-numeric:tabular-nums;user-select:all;-webkit-user-select:all;line-height:1.6}.copy-button{background:#f3f6ee;color:#406448;min-width:48px;min-height:44px;border-radius:8px;font-size:12px;flex:none}.card-actions{display:grid;grid-template-columns:1.1fr 1.1fr .85fr;gap:8px}.card-actions button{min-height:44px;padding:8px 4px;border-radius:8px;border:1px solid #dde5d8;color:#4a6957;background:white;font-size:12px;line-height:1.5}.card-actions .edit-button{background:#eaf0e5;border-color:#eaf0e5;color:#315c40;font-weight:600}.card-actions [data-more]{color:#7b8778}
 .table-footer{padding:12px 14px;flex-wrap:wrap;gap:12px;color:#75816e}.pagination{gap:12px;margin-left:auto}.pagination button{width:44px;height:44px;border-radius:8px;font-size:18px}.pagination #page-label{font-size:12px}footer{font-size:10px;margin:16px 4px 0}.table-error{padding:0 14px}.empty{padding:30px 16px}
 .login-screen{padding:32px 20px}.login-card{padding:28px 24px}.login-card input{font-size:16px;min-height:48px}.login-card button{min-height:48px;font-size:15px}
 /* 表单独立滚动，标题和保存栏不随字段滚走；dvh / visualViewport 处理键盘和浏览器工具栏。 */
 #record-dialog{position:fixed;inset:var(--dialog-top,0) 0 auto;margin:0;width:100%;max-width:none;height:var(--dialog-height,100dvh);max-height:none;border:0;border-radius:0;overflow:hidden;background:#fff}#record-dialog[open]{display:flex}#record-form{width:100%;min-height:0;display:flex;flex-direction:column;padding:0}.dialog-heading{flex:none;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;border-bottom:1px solid var(--border);margin:0;background:white}.dialog-heading h2{font-size:19px}.dialog-content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left));scroll-padding:20px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.form-grid label{min-width:0;font-size:12px}.form-grid label:has(input[type=date]),.form-grid label:has(input[type=datetime-local]),.form-grid label:has(input[name=domesticTrackingNumber]){grid-column:1/-1}.form-grid input[type=date],.form-grid input[type=datetime-local]{appearance:none;-webkit-appearance:none;width:100%;min-width:0}.form-grid label small{font-size:11px}.status-preview{font-size:13px}.status-preview small{font-size:12px}#record-form>.dialog-footer{flex:none;display:grid;grid-template-columns:1fr 1.7fr;gap:12px;background:white;padding:12px max(16px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));box-shadow:0 -4px 16px #1c392708}.dialog-footer button{min-height:48px;font-size:15px}.error{font-size:13px}
 #action-dialog,#more-dialog{position:fixed;inset:auto 0 0;width:100%;max-width:none;max-height:calc(100dvh - 24px);margin:0;border-radius:20px 20px 0 0;border-bottom:0;overscroll-behavior:contain}#action-form{padding:26px max(20px,env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}#action-title{font-size:19px}#action-description{font-size:15px;overflow-wrap:anywhere}.dialog-footer{display:grid;grid-template-columns:1fr 1fr;padding-top:18px}#more-dialog{padding:16px max(20px,env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}#more-back{min-height:48px}
 .toast{bottom:calc(16px + env(safe-area-inset-bottom));padding:12px 18px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:380px){.date-filter{grid-template-columns:minmax(0,1fr);gap:12px}.date-dash{display:none}.date-filter .invisible-label{visibility:visible}.date-filter span{font-size:11px}}

@media(min-width:600px) and (max-width:1024px){.record-cards{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.record-card{margin:0;display:flex;flex-direction:column}.card-actions{margin-top:auto}}

/* 终止只操作结束标记；编辑窗口保留业务字段和未保存输入。 */
.terminate-button{color:#9d4d38;background:#fff7f3;border-color:#edcfc3;margin-right:auto}.terminate-button:hover{background:#f9eae3}.editor-feedback{font-size:13px;line-height:1.7;color:#396949;background:#eef5e9;border-radius:8px;padding:10px 12px}
@media(max-width:1024px){#record-form>.dialog-footer:has(#terminate-record:not([hidden])){grid-template-columns:auto auto minmax(0,1fr)}#record-form>.dialog-footer button{padding-left:12px;padding-right:12px}.terminate-button{margin-right:0}}

/* 运输中保留合计，同时展示按 TAX 转发拆分的发票数量。 */
.tag.transit-invoiced{background:#e9f3ef;color:#467864}.transit-counts{display:grid;gap:5px;margin-top:10px}.stats .transit-counts span{font-size:11px;color:#728077;line-height:1.5}.transit-counts b{font-weight:600;color:#3d6150;margin-left:4px;font-variant-numeric:tabular-nums}
@media(max-width:1024px){.stats .transit-counts span{font-size:10px;white-space:normal}.transit-counts{gap:2px;margin-top:7px}.transit-counts b{margin-left:2px}#toggle-filters{position:relative}#filter-count{position:absolute;top:-7px;right:-5px}.card-heading .tag{max-width:48%;white-space:normal;overflow-wrap:anywhere;text-align:center}}

/* 归档是可逆的显示标记：状态标签旁再挂一枚，筛选切到“已归档”时能一眼分辨。 */
.tags{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center;vertical-align:middle}.tag.archived{background:#eef0ec;color:#7d8a80}.row-actions [data-action="archive"],.row-actions [data-action="unarchive"]{color:#5f7a86}
@media(max-width:1024px){.card-heading .tags{flex:none;max-width:52%;justify-content:end}.card-heading .tags .tag{max-width:none}}

/* 面交中三档共用一种配色；概览多了一格后桌面改成 5 列两行，边框规则跟着 5 列走。 */
.tag.in-person{background:#eef0f7;color:#5f6b9a}
@media(min-width:1025px){.stats{grid-template-columns:repeat(5,minmax(0,1fr))}.stats>div:nth-child(n){border-right:1px solid var(--border);border-bottom:0}.stats>div:nth-child(5n){border-right:0}.stats>div:nth-child(-n+5){border-bottom:1px solid var(--border)}}

/* 详情字段只进编辑表单和详情弹层；卡片上多一个“详情”按钮，四列平分。 */
.form-section{grid-column:1/-1;margin:6px 0 -6px;padding-top:14px;border-top:1px solid #e7ecdf;font-size:12px;font-weight:600;color:#4f6558}.form-section small{display:block;margin-top:4px;font-weight:400;color:#8b978f}
#detail-dialog{max-width:520px;padding:24px}.detail-list{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px 18px;margin:0 0 22px;font-size:13px;line-height:1.6}.detail-list dt{color:#728077;font-size:12px;white-space:nowrap;padding-top:1px}.detail-list dd{margin:0;color:#2d493e;overflow-wrap:anywhere}.detail-warning{color:#ad5147;font-size:12px}#detail-dialog .dialog-footer{padding-top:18px}
@media(max-width:1024px){#detail-dialog{position:fixed;inset:auto 0 0;width:100%;max-width:none;max-height:calc(100dvh - 24px);margin:0;border-radius:20px 20px 0 0;border-bottom:0;overscroll-behavior:contain;overflow-y:auto;padding:16px max(20px,env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}.detail-list{gap:12px 14px;font-size:14px}#detail-dialog .dialog-footer{display:grid;grid-template-columns:1fr 1fr}#detail-dialog .dialog-footer button{min-height:48px}.card-actions{grid-template-columns:.8fr 1.1fr 1.1fr .85fr}.card-actions button{padding:8px 2px}.form-grid label:has(input[name=landingPlace]),.form-grid label:has(input[name=carryCapacityCustom]){grid-column:1/-1}}

/* 桌面端：页面用满可用宽度，表格不再硬性 1500px；操作列钉在右侧，窄屏即使横向滚动按钮也始终可见。 */
@media(min-width:1025px){
 header{padding:0 32px}main{max-width:1880px;padding-left:32px;padding-right:32px}
 .table-scroll table{min-width:100%}th,td{padding-left:12px;padding-right:12px}th:first-child,td:first-child{padding-left:20px}
 .person{min-width:0}.person-name{min-width:96px;max-width:150px}.tracking-number{min-width:120px}.status-reason{min-width:150px}
 .last-col{width:1%}.row-actions{min-width:0;max-width:none;flex-wrap:wrap;justify-content:flex-end;width:max-content;max-width:230px;margin-left:auto}
 td:last-child,th.last-col{position:sticky;right:0;z-index:1;background:#fff;text-align:right;padding-right:20px}
 th.last-col{background:#f7f9f4}
 /* 表格真的溢出时，钉住的列左边给一道阴影，提示后面还有内容 */
 .table-scroll.overflowing td:last-child,.table-scroll.overflowing th.last-col{box-shadow:-10px 0 12px -8px #1c392722}
}

/* 顶部导航：三个视图靠 hash 切换。 */
.top-nav{display:flex;gap:4px;margin-left:28px}.top-nav a{text-decoration:none;color:#6b7c70;font-size:13px;padding:8px 12px;border-radius:8px}.top-nav a:hover{background:#f0f4ed;color:#214d43}.top-nav a[aria-current=page]{background:#214d43;color:#fff}
.page-hint{font-size:13px;color:#7a8983;line-height:1.8;margin:16px 0 0;max-width:760px}.file-button{cursor:pointer}.import-result{margin:20px 0 0;padding:14px 18px;border-radius:10px;background:#eef5e9;color:#396949;font-size:13px;line-height:1.8}
/* 当前人肉：姓名、状态、起飞、可带件数和一条容量进度。 */
.courier-panel{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:28px;align-items:start;margin:30px 0 34px}.courier-pick small{display:block;margin-top:10px;font-size:12px;line-height:1.8;color:#8b978f}.courier-card{background:#fcfdf9;border:1px solid var(--border);border-radius:13px;padding:26px 30px}.courier-empty{margin:0;color:#7a8983;font-size:13px;line-height:1.8}.courier-main{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.courier-main h3{margin:0;font-size:19px;font-weight:600}.courier-link{margin-left:auto;padding:4px 0}.courier-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px 28px;margin:22px 0 0}.courier-facts dt{font-size:11px;color:#728077}.courier-facts dd{margin:7px 0 0;font-size:14px;color:#2d493e;line-height:1.5}.courier-facts .date{font-size:14px}.capacity{margin-top:24px;display:flex;align-items:center;gap:14px;font-size:12px;color:#4f6558}.capacity-bar{flex:1;height:8px;border-radius:99px;background:#e7ece1;overflow:hidden}.capacity-bar span{display:block;height:100%;background:#6f977a;border-radius:99px;transition:width .2s}.capacity.over .capacity-bar span{background:#c0533f}.capacity.over .capacity-text{color:#a6463b;font-weight:600}.capacity-text{white-space:nowrap}
/* 货物表：多列，容器可横向滚动；勾选列钉在左边。 */
.goods-panel .panel-title{flex-wrap:wrap;gap:14px;padding-bottom:20px}.goods-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.goods-tools select,.goods-tools input{height:38px;min-height:38px;font-size:12px;background:#fcfdfa;width:auto}.goods-tools input{min-width:260px}.goods-scroll{overflow:auto}.goods-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.goods-table th{padding:15px 16px;color:#84927d;font-size:11px;font-weight:500;background:#f7f9f4;border-top:1px solid #edf0e9;border-bottom:1px solid #edf0e9;white-space:nowrap}.goods-table th:first-child,.goods-table td:first-child{padding-left:24px}.goods-table th:last-child,.goods-table td:last-child{padding-right:24px}.goods-table td{padding:19px 16px;border-bottom:1px solid #edf0e9;color:#526457;vertical-align:top;line-height:1.65}.goods-table .check-col{width:40px;padding-left:22px;padding-right:8px;position:sticky;left:0;background:#fff;z-index:1}.goods-table thead .check-col{background:#f7f9f4}.goods-table input[type=checkbox]{width:16px;height:16px;margin:3px 0 0;accent-color:#214d43}.goods-table .buyer{font-weight:600;color:#2d493e;white-space:nowrap;font-size:13px}.goods-table .mono{font-variant-numeric:tabular-nums;white-space:nowrap;user-select:all;letter-spacing:.2px}.goods-table .wrap{white-space:normal;overflow-wrap:anywhere;min-width:180px;max-width:360px}.goods-table .dim{color:#7f897a}.goods-table .note{color:#9a6c29}.goods-table .qty{text-align:center;font-variant-numeric:tabular-nums}.goods-table tr.selected td{background:#f3f8ee}.goods-table tr.selected .check-col{background:#f3f8ee}.goods-table tr.is-assigned .buyer{color:#6b7c70}.assign-cell{white-space:nowrap}.assigned{display:inline-block;padding:5px 9px;border-radius:5px;background:#edf3e6;color:#3f6d4f;font-size:11px;margin-right:6px}.assigned.mine{background:#214d43;color:#fff}.assigned-link{color:#3f6d4f;text-decoration:none;border-bottom:1px dotted #9db79f}.assigned-link:hover{color:#214d43}
.goods-panel{overflow:visible}.assign-bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;background:#254b3e;color:#fff;font-size:13px;box-shadow:0 6px 20px #1c392722}.assign-bar .primary{background:#fff;color:#214d43}.assign-bar .primary:hover{background:#e6efdb}.assign-bar .primary:disabled{background:#fff}
#assign-form{padding:28px}#assign-description{line-height:1.8;font-size:14px;margin:18px 0 12px}.assign-moved{margin:0 0 12px;padding:10px 12px;border-radius:8px;background:#fff2ee;color:#a14438;font-size:13px;line-height:1.6}.check-label{flex-direction:row;align-items:flex-start;gap:10px;font-size:13px;color:#344b3d;line-height:1.6;margin-bottom:8px;cursor:pointer}.check-label input{width:18px;height:18px;margin-top:2px;accent-color:#214d43;flex:none}#confirm-form{padding:28px}#confirm-description{line-height:1.8;font-size:14px;margin:18px 0}
/* 货物查询 */
.search-bar{display:grid;grid-template-columns:minmax(240px,2fr) minmax(130px,1fr) minmax(170px,1.2fr) auto;gap:16px;align-items:end;padding:24px 24px 24px}.search-bar input,.search-bar select{height:40px;background:#fcfdfa;font-size:12px}.search-courier{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 24px 20px;padding:13px 18px;border-radius:10px;background:#eef5e9;color:#396949;font-size:13px}.detail-link{color:#214d43;font-weight:600;text-decoration:none;margin-left:6px}
@media(max-width:1024px){
 header{gap:8px}.brand{display:none}.top-nav{margin-left:0;gap:2px;flex:1;min-width:0}.top-nav a{padding:8px 9px;font-size:12px;white-space:nowrap}
 .courier-panel{grid-template-columns:1fr;gap:16px;margin:20px 0 24px}.courier-card{padding:20px 20px}.courier-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}.capacity{flex-wrap:wrap}
 .goods-panel .panel-title{padding:12px 14px}.goods-tools{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto}.goods-tools input{grid-column:1/-1;width:100%;min-width:0}.goods-tools select,.goods-tools input{height:44px;min-height:44px;font-size:14px}.goods-table td,.goods-table th{padding:15px 12px}.goods-table th:first-child,.goods-table td:first-child{padding-left:16px}.goods-table th:last-child,.goods-table td:last-child{padding-right:16px}.goods-table .check-col{padding-left:14px}.goods-table .wrap{min-width:160px;max-width:260px}
 .assign-bar{padding:10px 14px;flex-wrap:wrap}.assign-bar .primary{min-height:44px}
 .search-bar{grid-template-columns:1fr 1fr;padding:18px 14px 20px;gap:14px}.search-bar .search-field{grid-column:1/-1}.search-bar input,.search-bar select{height:46px;font-size:16px}.search-courier{margin:0 14px 16px;flex-wrap:wrap}
 #assign-dialog,#confirm-dialog{position:fixed;inset:auto 0 0;width:100%;max-width:none;max-height:calc(100dvh - 24px);margin:0;border-radius:20px 20px 0 0;border-bottom:0;overscroll-behavior:contain}#assign-form,#confirm-form{padding:26px max(20px,env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
}
@media(max-width:800px){.top-nav a{padding:8px 7px}}

/* 下拉框统一用自定义箭头：原生箭头贴着右边框显得局促。放在文件末尾，压过前面各处
   用 background 简写设置底色的规则（它们会把 background-image 清掉）。 */
select,.filters select,.goods-tools select,.search-bar select{appearance:none;-webkit-appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='%237a8983' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px 14px}
select:disabled{opacity:.55}
@media(max-width:1024px){select,.filters select,.goods-tools select,.search-bar select{padding-right:42px;background-position:right 14px center}}

/* 官网订单页：关联查询结果按人肉分组，下面是订单表和账号表。 */
.lulu-panel{margin-bottom:26px}.lookup-bar{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:16px;align-items:end;padding:24px}.lookup-bar input{height:40px;background:#fcfdfa;font-size:12px}.lookup-results{padding:0 24px 24px;display:grid;gap:16px}.lookup-empty{margin:0;padding:18px;border-radius:10px;background:#f7f9f4;color:#7a8983;font-size:13px}
.lookup-group{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fcfdf9}.lookup-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 20px;background:#f3f6ef;border-bottom:1px solid var(--border)}.lookup-head h3{margin:0;font-size:16px;font-weight:600}.lookup-meta{font-size:12px;color:#6b7c70}.lookup-links{margin-left:auto;display:flex;gap:14px}.lookup-links a{font-size:12px;color:#214d43;text-decoration:none;border-bottom:1px dotted #9db79f}
.lookup-section{padding:14px 20px 16px}.lookup-section+.lookup-section{border-top:1px solid #edf0e9}.lookup-section h4{margin:0 0 10px;font-size:12px;font-weight:600;color:#4f6558}.lookup-section .no{font-size:12px;margin:0}.lookup-orders,.lookup-goods{list-style:none;margin:0;padding:0;display:grid;gap:6px}.lookup-orders li,.lookup-goods li{display:grid;gap:14px;align-items:start;padding:10px 12px;border-radius:8px;background:#fff;border:1px solid #edf0e9;font-size:12px;color:#526457;line-height:1.6}.lookup-orders li{grid-template-columns:82px minmax(120px,1fr) minmax(120px,1fr) minmax(160px,2fr) auto}.lookup-goods li{grid-template-columns:minmax(60px,auto) 160px minmax(0,1fr) auto}.lookup-goods .wrap small{display:block;color:#8b978f;font-size:11px}.lookup-orders li.hit,.lookup-goods li.hit{border-color:#b5c99b;background:#f5f9ee}.hit-text{background:#e6efdb;color:#214d43;padding:0 4px;border-radius:4px;font-weight:600}.parcel{display:inline-block;margin:0 6px 4px 0}
.parcel-list{list-style:none;margin:0;padding:0;display:grid;gap:3px}.password-cell{white-space:nowrap}.password-mask{letter-spacing:2px;color:#8b978f;margin-right:6px}.password-plain{user-select:all;margin-right:8px;color:#2d493e}.account-hint{padding:0 24px 12px;margin:0;font-size:12px}.pending{color:#9a6c29;font-weight:600}.assign-cell .delete{color:#a09486}
#lulu-form,#account-form,#refund-form{padding:0}#lulu-form .dialog-heading,#account-form .dialog-heading,#refund-form .dialog-heading{margin:0;padding:24px 28px 18px;align-items:center}#lulu-form .dialog-content,#account-form .dialog-content,#refund-form .dialog-content{padding:0 28px}#lulu-form>.dialog-footer,#account-form>.dialog-footer,#refund-form>.dialog-footer{padding:18px 28px 24px}#lulu-form textarea{width:100%;border:1px solid #dce3db;border-radius:8px;padding:10px 12px;background:#fff;color:#30473e;font-size:13px;line-height:1.6;resize:vertical;min-height:84px}#lulu-form textarea:focus{outline:2px solid #a5bfa7;outline-offset:1px}
@media(max-width:1024px){
 .top-nav a{padding:8px 7px}.header-right .text-button{padding:8px 4px}
 .lookup-bar{grid-template-columns:1fr auto;padding:18px 14px 20px;gap:12px}.lookup-bar .search-field{grid-column:1/-1}.lookup-bar input{height:46px;font-size:16px}.lookup-results{padding:0 14px 18px}.lookup-head{padding:14px 16px}.lookup-links{margin-left:0;width:100%}.lookup-section{padding:12px 14px 14px}.lookup-orders li,.lookup-goods li{grid-template-columns:1fr 1fr}.lookup-orders li>:first-child,.lookup-goods li>:first-child{grid-column:1/-1}.lookup-goods li .wrap{grid-column:1/-1}
 .account-hint{padding:0 14px 10px}
 #lulu-dialog,#account-dialog,#refund-dialog{position:fixed;inset:var(--dialog-top,0) 0 auto;margin:0;width:100%;max-width:none;height:var(--dialog-height,100dvh);max-height:none;border:0;border-radius:0;overflow:hidden;background:#fff}#lulu-dialog[open],#account-dialog[open],#refund-dialog[open]{display:flex}#lulu-form,#account-form,#refund-form{width:100%;min-height:0;display:flex;flex-direction:column}#lulu-form .dialog-heading,#account-form .dialog-heading,#refund-form .dialog-heading{flex:none;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;border-bottom:1px solid var(--border);background:#fff}#lulu-form .dialog-content,#account-form .dialog-content,#refund-form .dialog-content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left))}#lulu-form>.dialog-footer,#account-form>.dialog-footer,#refund-form>.dialog-footer{flex:none;display:grid;grid-template-columns:1fr 1.7fr;gap:12px;background:#fff;padding:12px max(16px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));box-shadow:0 -4px 16px #1c392708}#lulu-form>.dialog-footer:has(#lulu-delete:not([hidden])){grid-template-columns:auto auto minmax(0,1fr)}#lulu-form textarea{font-size:16px}
}
@media(max-width:800px){.top-nav a{padding:8px 5px;font-size:11px}}

/* 导航有五项了：窄屏上允许横向滑动，不再把字挤扁。 */
@media(max-width:1024px){.top-nav{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch}.top-nav::-webkit-scrollbar{display:none}.top-nav a{flex:none}.header-right{flex:none}}

/* 货物 ↔ 官网订单：分配框里选这批货进哪一单；订单弹层里勾选这一单包含的货；关联查询里货物挂在订单下面。 */
.assign-lulu{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;margin:4px 0 16px;padding:16px;border-radius:10px;background:#f5f7f0}.assign-lulu small{grid-column:1/-1;font-size:12px;line-height:1.7;color:#7a8983}.assign-lulu:has(#assign-account-label[hidden]) label{grid-column:1/-1}
.lulu-ref{display:inline-block;margin-right:6px;font-size:11px;color:#5f6b9a}
.lulu-goods{border-top:1px solid #e7ecdf;padding-top:16px}.lulu-goods-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:12px;color:#4f6558;font-weight:600}.lulu-goods-head small{font-weight:400;color:#7a8983}.lulu-goods-list{display:grid;gap:6px;max-height:320px;overflow:auto;padding-right:2px}.lulu-goods-list .no,.lulu-goods-list .error{margin:0;font-size:12px}
.lulu-goods-item{display:grid;grid-template-columns:auto minmax(52px,auto) 150px minmax(0,1fr) auto;align-items:start;gap:10px;flex-direction:row;padding:10px 12px;border:1px solid #edf0e9;border-radius:8px;background:#fff;font-size:12px;color:#526457;line-height:1.55;cursor:pointer}.lulu-goods-item.checked{border-color:#b5c99b;background:#f5f9ee}.lulu-goods-item input{width:16px;height:16px;margin:2px 0 0;accent-color:#214d43}.lulu-goods-item .wrap small{display:block;color:#8b978f;font-size:11px}.lulu-goods-item .elsewhere{grid-column:2/-1;color:#9a6c29;font-size:11px}
.lookup-orders>li{display:block}.lookup-order-row{display:grid;grid-template-columns:82px minmax(120px,1fr) minmax(120px,1fr) minmax(160px,2fr) auto;gap:14px;align-items:start}.lookup-goods.nested{margin-top:10px;padding-top:10px;border-top:1px dashed #e3e8e1}.lookup-goods.nested li{background:#fcfdf9}.nested-empty{margin:8px 0 0!important;font-size:12px}
@media(max-width:1024px){.assign-lulu{grid-template-columns:1fr}.lulu-goods-item{grid-template-columns:auto 1fr auto}.lulu-goods-item .mono,.lulu-goods-item .wrap{grid-column:2/-1}.lulu-goods-item .qty{grid-column:3;grid-row:1}.lulu-goods-list{max-height:none}.lookup-order-row{grid-template-columns:1fr 1fr}.lookup-order-row>:first-child{grid-column:1/-1}}
@media(max-width:1024px){.lookup-goods li{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}.lookup-goods li>.buyer{grid-column:1;grid-row:1}.lookup-goods li>.qty{grid-column:2;grid-row:1}.lookup-goods li>.mono,.lookup-goods li>.wrap{grid-column:1/-1}}

/* 选择条：删除是次要操作，放在分配左边、用描边按钮。 */
.assign-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.assign-bar .bar-secondary{background:transparent;color:#fff;border-color:#ffffff66}.assign-bar .bar-secondary:hover{background:#ffffff14}
@media(max-width:1024px){.assign-actions{width:100%}.assign-actions button{flex:1;min-height:44px}}

/* 机票详情：详情里只读缩略图，编辑弹层里可上传、右上角删除；点图在新标签页看原图。 */
.flight-field{display:grid;gap:10px}.flight-label{font-size:12px;color:#64756d}.flight-hint{font-size:11px;color:#8b978f;line-height:1.6}.flight-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:10px}.flight-grid>.no,.flight-grid>.error{grid-column:1/-1;font-size:13px}
.flight-thumb{position:relative;margin:0;aspect-ratio:1;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:#f7f9f4}.flight-thumb a{display:block;width:100%;height:100%}.flight-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.flight-pending{display:flex;align-items:center;justify-content:center;padding:8px;border-style:dashed}.flight-pending span{font-size:11px;line-height:1.5;color:#64756d;text-align:center;word-break:break-all;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.flight-remove{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;background:#1c3927b3;color:#fff;font-size:15px;line-height:24px;padding:0}.flight-remove:hover{background:#a6463b}
.flight-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:-4px}.flight-upload{display:inline-flex;flex-direction:row;align-items:center;padding:6px 0;color:#214d43;font-weight:600;cursor:pointer}.flight-status{font-size:12px;color:#7a8983;line-height:1.6}
@media(max-width:1024px){.flight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.flight-remove{width:30px;height:30px;line-height:30px}.flight-upload{min-height:44px}}

/* 列表的操作列：表头和按钮都靠右、右边缘对齐；按钮是和单元格文字同字号、同行高的文字链接，
   不再是 44px 高的按钮盒子，所以和同一行其他列的文字顶齐。点击区域用内边距 + 等量负外边距放大，不影响排版。 */
th.actions-col,td.actions-col{text-align:right;white-space:nowrap}
.cell-actions{display:flex;justify-content:flex-end;align-items:baseline;flex-wrap:wrap;gap:4px 16px}
.link-action{background:none;border:0;min-height:0;padding:8px 6px;margin:-8px -6px;font:inherit;font-size:12px;font-weight:500;line-height:inherit;color:#2f5d4f;cursor:pointer;white-space:nowrap}
.link-action:hover{color:#123e2f;text-decoration:underline;text-underline-offset:3px}
.link-action.delete{color:#a0786b}.link-action.delete:hover{color:#a6463b}
.assign-cell .link-action{margin-left:0}
/* 人肉记录首页：按钮左右不留内边距，最后一个按钮的文字右边缘和“操作”表头对齐；字号和其他列一致，一行放得下。 */
.row-actions{gap:4px 14px}.row-actions button{padding:7px 0;font-size:12px;font-weight:500}
.password-cell .copy-link{font-weight:400;color:#66796e}
/* 桌面端操作列的单元格本来就钉在右侧（td:last-child），表头也一起钉住，横向滚动时不会只剩按钮没有表头。 */
@media(min-width:1025px){th.actions-col{position:sticky;right:0;z-index:1;background:#f7f9f4}}
/* 手机上官网订单列表的三个筛选：人肉占一整行、右边是刷新，状态和账号并排一行；标题单独一行。 */
@media(max-width:1024px){.panel-title:has(>.lulu-tools){flex-wrap:wrap;gap:14px}.lulu-tools{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}#lulu-record{grid-column:1/3;grid-row:1}#lulu-refresh{grid-column:3;grid-row:1}#lulu-status{grid-column:1;grid-row:2}#lulu-account{grid-column:2/4;grid-row:2}.link-action{padding:12px 8px;margin:-12px -8px}}
/* 分配弹窗里“账号已完成下单”跨两列；账号页完成日期跟在标签后面。 */
.assign-lulu .assign-account-done{grid-column:1/-1;margin:0;font-size:12px}
.account-done-date{margin-left:8px;font-size:11px;color:#8b978f}
/* 导入清单确认框和工作台的“清单时间”列。 */
#import-form{padding:28px;min-width:min(420px,calc(100vw - 32px))}#import-form h2{margin-bottom:10px}
.import-file-name{font-size:13px;color:#526457;word-break:break-all;margin-bottom:16px}
.import-date{margin-bottom:8px}.import-date-hint{display:block;font-size:12px;line-height:1.7;color:#7a8983}
.list-date-cell{white-space:nowrap;color:#526457}
@media(max-width:1024px){#import-dialog{position:fixed;inset:auto 0 0;width:100%;max-width:none;max-height:calc(100dvh - 24px);margin:0;border-radius:20px 20px 0 0;border-bottom:0;overscroll-behavior:contain}#import-form{min-width:0;padding:26px max(20px,env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}}
/* 操作栏里的“彻底删除”：深色底上用浅红字，和“恢复”区分开。 */
.assign-bar .bar-danger{color:#ffb4a8;border-color:#ffb4a866}.assign-bar .bar-danger:hover{background:#ffb4a81f}
/* 商家备注多数是“—”或两三个字，不需要和商品标题一样宽；货物表横向溢出时，钉住的操作列左边也给阴影。 */
.goods-table .wrap.note{min-width:110px}
@media(min-width:1025px){.goods-scroll.overflowing td.actions-col,.goods-scroll.overflowing th.actions-col{box-shadow:-10px 0 12px -8px #1c392722}}
/* 合作记录（再次合作串起来的历次合作）：只在详情和编辑弹层里。 */
.trip-list{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.trip-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:13px;color:#526457}
.trip-list li.current{color:#263e38;font-weight:600}
.trip-no{min-width:46px;color:#7a8983;font-weight:400}.trip-status{color:#7a8983;font-weight:400;font-size:12px}
.trip-current{font-size:11px;padding:2px 7px;border-radius:5px;background:#edf3e6;color:#3f6d4f;font-weight:500}
.trip-field{display:grid;gap:8px}.trip-rebook{justify-self:start;margin:-8px -6px}
.rebook-note{margin:0;padding:12px 14px;border-radius:8px;background:#f5f7f0;color:#4f6558;font-size:12px;line-height:1.7}
@media(max-width:1024px){#detail-dialog .dialog-footer #detail-back{grid-column:1/-1}}
/* 退款提醒 */
.refund-warning{max-width:760px;margin:12px 0 0;padding:10px 14px;border-radius:8px;background:#fbf0dc;color:#8a5a12;font-size:13px;line-height:1.7}
.refund-sub{display:block;margin-top:2px;font-size:11px;font-weight:400;color:#8b978f;white-space:nowrap}
.refund-sub.error-text{color:#a6463b}
.refund-email,.refund-time{white-space:nowrap}.refund-email .mono{margin-right:8px}
.tag.refund-due{background:#fbf0dc;color:#a7731f}
.refund-when{display:grid;gap:10px}
.refund-quick{display:flex;flex-wrap:wrap;gap:8px}
.refund-quick button{min-height:36px;padding:6px 14px;border:1px solid #d9e2d3;border-radius:999px;background:#fff;color:#2f5d4f;font-size:13px;font-weight:500}
.refund-quick button:hover{border-color:#a5bfa7}.refund-quick button.active{background:#214d43;border-color:#214d43;color:#fff}
.refund-when-hint{font-size:12px;line-height:1.7;color:#7a8983}
@media(max-width:1024px){#refund-form>.dialog-footer:has(#refund-delete:not([hidden])){grid-template-columns:auto auto minmax(0,1fr)}.refund-quick button{min-height:44px;flex:1}}
@media(max-width:1024px){.panel-title:has(>.refund-tools){flex-wrap:wrap;gap:14px}#refund-scope{grid-column:1;grid-row:1}#refund-refresh{grid-column:2;grid-row:1}#refund-q{grid-column:1/-1;grid-row:2}}
/* 退款提醒弹窗里的人肉选择：带搜索图标的输入框，下面是可筛选的人肉列表（在文档流里展开，不会被弹窗裁掉）。 */
.courier-field{display:grid;gap:8px}
.courier-combo{position:relative}
.courier-combo input{padding-left:38px;padding-right:40px}
.courier-search-icon{position:absolute;left:13px;top:50%;width:16px;height:16px;margin-top:-8px;color:#8b978f;pointer-events:none}
.courier-clear{position:absolute;right:6px;top:50%;width:32px;height:32px;margin-top:-16px;border-radius:50%;background:none;color:#8b978f;font-size:18px;line-height:32px;padding:0}
.courier-clear:hover{background:#f1f4ee;color:#30473e}
.courier-list{margin:0;padding:6px;list-style:none;border:1px solid #dce3db;border-radius:10px;background:#fff;box-shadow:0 10px 24px #1c39271a;max-height:272px;overflow-y:auto;overscroll-behavior:contain}
.courier-list-head,.courier-list-foot{padding:6px 10px 8px;font-size:11px;color:#8b978f}
.courier-list-foot{padding:8px 10px 4px}
.courier-option{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:8px;cursor:pointer;color:#263e38}
.courier-option.active,.courier-option:hover{background:#f1f6ec}
.courier-option.selected .courier-option-name::after{content:"✓";margin-left:6px;color:#3f6d4f;font-weight:600}
.courier-option-name{font-size:14px;font-weight:600;min-width:0;overflow-wrap:anywhere}
.courier-option-name mark{background:#fbe7b5;color:inherit;border-radius:3px;padding:0 1px}
.courier-option-meta{flex:none;font-size:12px;color:#7a8983;white-space:nowrap}
.courier-option.manual{margin-top:4px;border-top:1px dashed #e1e8dc;border-radius:0 0 8px 8px}
.courier-option.manual .courier-option-name{font-weight:500;color:#2f5d4f}
.courier-state{margin:0;min-height:20px;font-size:12px;line-height:1.7;color:#7a8983}
.courier-badge{display:inline-block;margin-right:8px;padding:1px 8px;border-radius:5px;font-size:11px;font-weight:600}
.courier-badge.linked{background:#e7f2eb;color:#3f6d4f}.courier-badge.manual{background:#fbf0dc;color:#9a6c29}
@media(max-width:1024px){.courier-option{flex-direction:column;align-items:flex-start;gap:2px;min-height:44px;justify-content:center}.courier-option-meta{white-space:normal}.courier-list{max-height:248px}}
.courier-label{display:block}
