:root{--navy:#142b45;--green:#0c927e;--mint:#eaf8f5;--bg:#f4f7fa;--line:#e6ebf0;--muted:#8590a0;--orange:#ed7b38}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#172840;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:#122a43;color:#fff;padding:24px 16px;display:flex;flex-direction:column}.logo{display:flex;align-items:center;gap:12px;padding:4px 10px 25px}.logo>span{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#2ac4a7,#0a7c70);display:grid;place-items:center;font-size:22px;font-weight:800}.logo b{display:block;font-size:19px}.logo small{font-size:9px;letter-spacing:2px;color:#80a0b8}nav{overflow-y:auto;flex:1}nav button{width:100%;border:0;background:transparent;color:#9fb2c3;text-align:left;padding:12px 15px;margin:3px 0;border-radius:10px;cursor:pointer;font-size:14px}nav button:hover{background:#193a59;color:#fff}nav button.active{background:#0d8979;color:#fff;font-weight:700}.side-foot{border-top:1px solid #ffffff18;padding:18px 10px 0;color:#b0bfcc;font-size:12px;line-height:1.8}.side-foot small{color:#7690a5}.online{display:inline-block;width:8px;height:8px;background:#2fd29e;border-radius:50%;margin-right:6px}main{margin-left:230px;min-width:780px}header{height:90px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:5}header h1{font-size:22px;margin:0 0 5px}header p{font-size:12px;color:var(--muted);margin:0}.head-actions{display:flex;align-items:center;gap:12px}.avatar{width:38px;height:38px;border:0;border-radius:50%;background:#d8b762;color:#fff;font-weight:800}.ghost,.btn{border:1px solid var(--line);background:#fff;color:#415168;padding:9px 14px;border-radius:9px;cursor:pointer}.btn{background:var(--green);color:#fff;border-color:var(--green)}.btn.orange{background:var(--orange);border-color:var(--orange)}.btn.danger{background:#fff1ef;border-color:#ffd7d1;color:#c55040}.btn.sm{font-size:12px;padding:6px 10px}.btn:disabled{opacity:.5;cursor:not-allowed}#app{padding:27px 30px 50px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:20px}.kpi,.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 6px 20px rgba(28,53,81,.035)}.kpi{padding:20px}.kpi .label{font-size:12px;color:var(--muted)}.kpi strong{display:block;font-size:27px;margin:9px 0 2px}.kpi small{font-size:11px;color:#16a085}.grid2{display:grid;grid-template-columns:1.4fr 1fr;gap:19px}.panel{margin-bottom:20px}.panel-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-head h2{font-size:16px;margin:0}.panel-body{padding:18px 20px}.todo{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.todo:last-child{border:0}.todo b{color:var(--orange);font-size:18px}.progress-row{margin:16px 0}.progress-row>div{display:flex;justify-content:space-between;font-size:12px;margin-bottom:7px}.bar{height:8px;background:#eef2f5;border-radius:10px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#1ab499,#0b8276);border-radius:10px}.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:18px}.toolbar input,.toolbar select,.form input,.form select,.form textarea{border:1px solid #dfe5eb;background:#fff;border-radius:9px;padding:10px 12px;font:inherit;color:#283c54}.toolbar input{width:280px}.toolbar .spacer{flex:1}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;background:#f8fafc;color:#748092;font-weight:600;padding:12px}td{padding:13px 12px;border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border:0}tbody tr:hover{background:#fbfdfd}.tag{display:inline-block;padding:4px 8px;border-radius:12px;background:var(--mint);color:#087c6d;font-size:11px}.tag.orange{background:#fff1df;color:#ae641b}.tag.gray{background:#eef1f4;color:#6f7b89}.tag.red{background:#ffefed;color:#b94e40}.money{font-weight:750;color:#0b8876}.negative{color:#e36e3c}.actions{display:flex;gap:6px;flex-wrap:wrap}.empty{text-align:center;color:#9ca5b1;padding:45px}.form{display:grid;grid-template-columns:repeat(2,1fr);gap:15px 18px}.form label{font-size:12px;color:#657286}.form label span{display:block;margin-bottom:7px}.form input,.form select,.form textarea{width:100%;margin-top:0}.form .wide{grid-column:1/-1}.form textarea{min-height:90px;resize:vertical}.help{font-size:12px;line-height:1.8;color:#738093;background:#f0f7fb;border-radius:10px;padding:13px 15px}.address-preview{background:#142f49;color:#fff;border-radius:12px;padding:20px;line-height:2;font-size:13px}.review{display:grid;grid-template-columns:100px 1fr auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.review .thumb{width:100px;height:72px;border-radius:9px;background:linear-gradient(135deg,#dff4f1,#fde8cb);display:grid;place-items:center;color:#5d7c78}.review p{margin:7px 0;color:#5e6a79;font-size:12px;line-height:1.6}.flow{display:flex;gap:10px;align-items:center;overflow-x:auto;padding:8px 0}.flow div{min-width:120px;background:#f5f9fa;border:1px solid #dcebea;border-radius:11px;padding:13px;text-align:center;font-size:12px}.flow i{color:#9aa5b1}.toast{position:fixed;right:25px;bottom:25px;background:#142b45;color:#fff;padding:12px 18px;border-radius:9px;box-shadow:0 12px 35px #0002;opacity:0;transform:translateY(15px);transition:.2s;pointer-events:none;font-size:13px}.toast.show{opacity:1;transform:none}.modal-mask{position:fixed;inset:0;background:#0d203366;display:grid;place-items:center;z-index:20}.modal{width:530px;background:#fff;border-radius:15px;padding:22px;box-shadow:0 20px 70px #0004}.modal h3{margin:0 0 18px}.modal-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}@media(max-width:1050px){.kpis{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}}

.table-scroll{overflow-x:auto}.config-preview{display:block;width:100%;max-width:280px;height:150px;object-fit:contain;background:#f4f7fa;border:1px solid #e6ebf0;border-radius:10px;margin-top:10px}.image-empty{height:90px;margin-top:10px;border:1px dashed #cbd4dd;border-radius:10px;display:grid;place-items:center;color:#8b96a4;font-size:12px}.detail-list{font-size:13px}.pick-row{display:grid;grid-template-columns:1.5fr 1fr .7fr;gap:12px;padding:14px 4px;border-bottom:1px solid #e6ebf0;align-items:center}.pick-row span{color:#728093}.pick-row strong{color:#0b8876;text-align:right}

.nav-group{margin:0 0 7px}.nav-group summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:10px 15px;color:#8199ad;font-size:11px;font-weight:800;letter-spacing:1px;cursor:pointer;border-radius:9px}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary span{font-size:18px;transition:.2s}.nav-group[open] summary{color:#fff;background:#ffffff0b}.nav-group[open] summary span{transform:rotate(90deg)}.nav-group>div{padding:3px 0 7px}.nav-group button{padding:9px 15px 9px 25px;margin:2px 0}.login-gate{position:fixed;inset:0;background:linear-gradient(145deg,#102b49,#1b4d78);display:grid;place-items:center;z-index:100}.login-gate.hidden{display:none}.login-box{width:410px;background:#fff;border-radius:20px;padding:38px 42px;box-shadow:0 30px 90px #07192b66}.login-mark{font-size:30px;font-style:italic;font-weight:900;color:#173e71}.login-mark span{color:#f47b20}.login-box h1{font-size:24px;margin:18px 0 7px}.login-box>p{color:#84909e;font-size:13px;margin:0 0 27px}.login-box label{display:block;color:#637084;font-size:12px;margin:15px 0}.login-box input{display:block;width:100%;border:1px solid #dce3eb;border-radius:10px;padding:12px;margin-top:7px;font:inherit}.login-box .btn{width:100%;margin-top:12px;background:#173e71;border-color:#173e71}.login-box small{display:block;text-align:center;color:#a0a8b2;margin-top:17px}.login-error{height:18px;color:#d35140;font-size:12px}.standalone{background:#fff;border:1px solid var(--line);border-bottom:0;border-radius:14px 14px 0 0;margin-top:24px}.standalone+.panel{border-radius:0 0 14px 14px}
:root{--navy:#001529;--green:#1677ff;--mint:#e6f4ff;--bg:#f0f2f5;--line:#e5e8ec;--muted:#7a8696;--orange:#fa8c16}body{background:#f0f2f5;color:#1f2937}.sidebar{background:#001529;box-shadow:8px 0 24px rgba(0,21,41,.12)}.logo{border-bottom:1px solid rgba(255,255,255,.09);margin-bottom:12px}.logo>span{background:linear-gradient(135deg,#1677ff,#69b1ff);border-radius:10px;box-shadow:0 7px 20px rgba(22,119,255,.35)}.logo small{color:#6f879d}.nav-group summary{color:#71869a}.nav-group[open] summary{color:#b9c9d8;background:transparent}.nav-group button{color:#93a7ba;border-radius:7px}.nav-group button:hover{background:#0c2842;color:#fff}.nav-group button.active{background:#1677ff;color:#fff;box-shadow:0 6px 16px rgba(22,119,255,.28)}header{height:76px;border-bottom:1px solid #e7e9ed;box-shadow:0 1px 4px rgba(17,24,39,.035)}header h1{font-size:20px}#app{padding-top:24px}.btn{background:#1677ff;border-color:#1677ff}.btn:hover{background:#4096ff;border-color:#4096ff}.btn.orange{background:#fa8c16;border-color:#fa8c16}.ghost:hover{color:#1677ff;border-color:#91caff;background:#f5faff}.kpi,.panel{border-color:#e8eaee;border-radius:10px;box-shadow:0 2px 9px rgba(20,35,55,.045)}.kpi{position:relative;overflow:hidden;padding:22px}.kpi:before{content:'';position:absolute;left:0;right:0;top:0;height:3px;background:#1677ff}.kpi:nth-child(2):before{background:#13c2c2}.kpi:nth-child(3):before{background:#fa8c16}.kpi:nth-child(4):before{background:#722ed1}.kpi strong{color:#111827}.kpi small{color:#64748b}.panel-head{background:#fafbfc}.tag{background:#e6f4ff;color:#0958d9}.tag.orange{background:#fff7e6;color:#d46b08}.money{color:#15803d}.bar i{background:linear-gradient(90deg,#1677ff,#69b1ff)}th{background:#fafafa;color:#596579}tbody tr:hover{background:#f5faff}.help{background:#f0f7ff;color:#52677d;border-left:3px solid #69b1ff}.login-gate{background:radial-gradient(circle at 70% 20%,#174b7d 0,#001529 58%)}.login-box{border-radius:14px}.login-mark{color:#0958d9}.login-box .btn{background:#1677ff;border-color:#1677ff}
.period-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid #e6e9ed;border-radius:10px;padding:10px 12px;margin-bottom:18px}.period-bar b{font-size:13px;margin-right:8px}.period-bar button{border:0;background:#f1f3f6;color:#64748b;padding:8px 16px;border-radius:7px;cursor:pointer}.period-bar button.active{background:#1677ff;color:#fff;box-shadow:0 4px 12px rgba(22,119,255,.22)}.period-bar .range-divider{height:25px;border-left:1px solid #dfe4ea;margin:0 4px}.period-bar label{display:flex;align-items:center;gap:6px;color:#64748b;font-size:12px}.period-bar input[type=date]{border:1px solid #d9dfe7;border-radius:7px;padding:7px 9px;color:#253347;background:#fff}.period-bar [data-date-apply]{background:#e6f4ff;color:#0958d9}.period-bar [data-date-apply].active{background:#1677ff;color:#fff}
.status-filter{display:flex;align-items:center;gap:8px;color:#64748b;font-size:13px}.status-filter select{min-width:130px;border:1px solid #d9dfe7;background:#fff;color:#253347;border-radius:7px;padding:8px 30px 8px 11px;outline:none}.status-filter select:focus{border-color:#1677ff;box-shadow:0 0 0 2px rgba(22,119,255,.12)}
.modal .form select{width:100%;border:1px solid #d9dfe7;background:#fff;border-radius:8px;padding:10px 11px;font:inherit;color:#253347}.modal .form input[readonly]{background:#f5f7fa;color:#617184}
.compare-strip{display:flex;align-items:center;gap:24px;background:#fff;border:1px solid #e6e9ed;border-radius:10px;padding:13px 16px;margin-bottom:14px}.compare-strip div{display:flex;align-items:baseline;gap:10px}.compare-strip span,.compare-strip small{color:#718096;font-size:12px}.compare-strip b{font-size:20px;color:#17243a}.up{color:#e5484d;font-style:normal}.down{color:#16a26a;font-style:normal}.kpi small .up,.kpi small .down{font-weight:700}

.filter-bar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;background:#fff;border:1px solid #e5e8ec;border-radius:10px;padding:12px;margin-bottom:14px}.filter-bar.attached{border-radius:0;margin:0;border-bottom:0}.filter-bar input,.filter-bar select{height:36px;border:1px solid #d9dfe7;border-radius:7px;background:#fff;padding:0 10px;color:#253347;font:inherit}.filter-bar input{min-width:205px}.filter-bar select{min-width:120px}.filter-bar input:focus,.filter-bar select:focus{outline:none;border-color:#1677ff;box-shadow:0 0 0 2px rgba(22,119,255,.1)}
.pagination{display:flex;justify-content:flex-end;align-items:center;gap:10px;background:#fff;border:1px solid #e5e8ec;border-top:0;border-radius:0 0 10px 10px;padding:12px 16px;color:#718096;font-size:12px;margin-bottom:18px}.pagination label{display:flex;align-items:center;gap:6px}.pagination select{border:1px solid #d9dfe7;border-radius:6px;padding:6px;background:#fff}.pagination button:disabled{opacity:.4;cursor:not-allowed}
.metric-section{margin-bottom:18px}.metric-section>h2{font-size:15px;margin:0 0 12px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card{background:#fff;border:1px solid #e6e9ed;border-radius:11px;padding:18px 18px 16px;box-shadow:0 2px 8px rgba(20,35,55,.04);border-top:3px solid #1677ff}.metric-card.orange{border-top-color:#fa8c16}.metric-card.green{border-top-color:#16a26a}.metric-card.purple{border-top-color:#722ed1}.metric-card>span{display:block;color:#687589;font-size:12px}.metric-card strong{display:block;color:#17243a;font-size:24px;margin:9px 0}.metric-card small{display:block;color:#8a95a5;line-height:1.4;min-height:17px}
.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.chart-card{background:#fff;border:1px solid #e6e9ed;border-radius:11px;padding:18px;box-shadow:0 2px 8px rgba(20,35,55,.04)}.chart-title{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f3;padding-bottom:13px;margin-bottom:14px}.chart-title h2{font-size:15px;margin:0}.chart-title small{color:#8b97a7}.mini-bar-row{display:grid;grid-template-columns:100px 1fr 88px;gap:12px;align-items:center;margin:13px 0;font-size:12px}.mini-bar-row>span{color:#526176;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-bar-row>div{height:8px;background:#edf2f7;border-radius:8px;overflow:hidden}.mini-bar-row i{display:block;height:100%;background:linear-gradient(90deg,#1677ff,#69b1ff);border-radius:8px}.mini-bar-row b{text-align:right;color:#263449}.todo-card{margin-bottom:18px}.todo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e8edf2;border:1px solid #e8edf2;border-radius:8px;overflow:hidden}.todo-grid span{display:flex;justify-content:space-between;background:#fff;padding:14px;color:#58677b}.todo-grid b{color:#fa8c16;font-size:17px}
.tier-line{display:flex;align-items:center;gap:9px;white-space:nowrap;padding:4px 0;border-bottom:1px dashed #edf0f3}.tier-line:last-child{border-bottom:0}.tier-line span{color:#617084}.tier-line b{color:#15803d}.text-btn{border:0;background:transparent;color:#1677ff;cursor:pointer;padding:2px 4px}.notice-explain{margin-bottom:16px}
@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.chart-grid{grid-template-columns:1fr}.todo-grid{grid-template-columns:repeat(2,1fr)}}
.quote-modal{width:min(760px,calc(100vw - 32px))}.quote-route{display:flex;justify-content:space-between;gap:16px;background:#eef5ff;border:1px solid #d8e7fb;border-radius:10px;padding:12px 14px;margin:10px 0 18px;color:#17416f}.quote-route span{font-size:13px;color:#60738a}.quote-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:4px}.quote-results>div{background:#f6f8fb;border:1px solid #e4e9f0;border-radius:10px;padding:13px}.quote-results span,.quote-results small{display:block;color:#77869a;font-size:12px}.quote-results b{display:block;color:#163e70;font-size:20px;margin:7px 0}.payment-flow{margin:0 0 18px}.payment-wait{display:inline-flex;align-items:center;padding:6px 10px;border-radius:16px;background:#fff4df;color:#b66a00;font-size:12px;white-space:nowrap}.weight-details{display:grid;gap:4px;font-size:12px;color:#65758a;white-space:nowrap}.weight-details b{color:#263b53}.actions{min-width:190px}@media(max-width:900px){.quote-results{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-route{flex-direction:column}}
.sync-state{font-size:12px;color:#64748b;background:#eef4fb;border:1px solid #dbe7f4;border-radius:999px;padding:7px 11px;white-space:nowrap}.sync-state[data-kind="ok"]{color:#08775e;background:#e9fbf5;border-color:#c3f0e2}.sync-state[data-kind="error"]{color:#b42318;background:#fff1f0;border-color:#ffd2cf}
.referral-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.referral-summary section{background:linear-gradient(145deg,#eef7ff,#fff);border:1px solid #dbeafb;border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(28,84,130,.05)}.referral-summary span{display:block;color:#64748b;font-size:12px;margin-bottom:8px}.referral-summary b{font-size:19px;color:#102f55}.referral-summary p{font-size:13px;line-height:1.65;color:#64748b;margin:8px 0 0}.section-title{display:flex;justify-content:space-between;align-items:end;margin:24px 2px 10px}.section-title h2{font-size:17px;margin:0 0 4px}.section-title p{font-size:12px;color:#718096;margin:0}.qr-mini{position:relative;display:inline-grid;grid-template-columns:repeat(2,10px);gap:3px;background:#eff7ff;border:1px solid #cfe4f7;border-radius:9px;padding:7px 8px;vertical-align:middle}.qr-mini i{display:block;width:10px;height:10px;background:#1677d2;border-radius:2px}.qr-mini i:nth-child(2),.qr-mini i:nth-child(3){background:#fff;border:2px solid #1677d2;width:6px;height:6px}.qr-mini b{grid-column:1/3;color:#496780;font-size:9px;font-weight:600;max-width:100px;overflow:hidden;text-overflow:ellipsis}.muted{color:#94a3b8;font-size:12px}
@media(max-width:900px){.referral-summary{grid-template-columns:1fr}.sync-state{display:none}}

.delegated-order-modal{width:min(760px,calc(100vw - 32px));max-height:90vh;overflow:auto}.delegated-parcels>span{display:block;font-size:12px;color:#657286;margin-bottom:8px}.parcel-choices{border:1px solid #dfe5eb;border-radius:10px;padding:10px;max-height:170px;overflow:auto}.parcel-choices label{display:flex!important;align-items:center;gap:9px;padding:8px;border-bottom:1px solid #edf0f4}.parcel-choices label:last-child{border-bottom:0}.parcel-choices input{width:auto!important}.parcel-choices label span{margin:0!important;color:#4f6075}.parcel-choices small{display:block;padding:12px;color:#8a95a5}.share-link-box{display:flex;gap:9px;margin:16px 0}.share-link-box input{flex:1;min-width:0;border:1px solid #d9dfe7;border-radius:9px;padding:11px;color:#3c4b60;background:#f7f9fb}.share-order-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0 16px}.share-order-summary span{background:#f4f7fb;border-radius:9px;padding:12px;color:#758297;font-size:12px}.share-order-summary b{display:block;color:#1d3552;font-size:15px;margin-top:5px}@media(max-width:700px){.share-order-summary{grid-template-columns:1fr}.share-link-box{flex-direction:column}}

.text-btn{border:0;background:transparent;color:#1677d2;font-size:12px;padding:4px 0;cursor:pointer}

.dist-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}.dist-entry-grid button{border:1px solid #dce8f5;background:linear-gradient(145deg,#f4f9ff,#fff);border-radius:14px;padding:20px;text-align:left;cursor:pointer;transition:.18s}.dist-entry-grid button:hover{border-color:#91caff;box-shadow:0 8px 24px rgba(22,119,255,.1);transform:translateY(-1px)}.dist-entry-grid b{display:block;color:#12365c;font-size:17px;margin-bottom:7px}.dist-entry-grid span{color:#718096;font-size:12px;line-height:1.6}.dist-pager{display:flex;justify-content:flex-end;align-items:center;gap:10px;background:#fff;border:1px solid #e8eaee;border-radius:10px;padding:12px 16px;margin-top:-10px;margin-bottom:20px;color:#64748b;font-size:12px}.dist-pager label{display:flex;align-items:center;gap:6px}.dist-pager select{border:1px solid #d9dfe7;border-radius:7px;padding:6px;background:#fff}.dist-toolbar input{width:360px}@media(max-width:900px){.dist-entry-grid{grid-template-columns:1fr}}
