:root{--primary:#81d8d0;--success:#00c48c;--danger:#ff647c;--warning:#ffb946;--edit:#ff8c00;--bg:#f5f6fa;--card-bg:#fff;--text:#1a1a2e;--text-secondary:#6b7280;--border:#e5e7eb;--shadow:0 2px 12px #00000014;--radius:16px;--radius-sm:10px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{background:var(--bg);scroll-behavior:smooth}body{background:var(--bg);color:var(--text);min-height:100vh;padding-bottom:env(safe-area-inset-bottom,20px);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}button,input,select{font:inherit}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.58}.app-shell{min-height:100vh}.top-bar{background:var(--primary);color:#fff;padding:16px 20px;padding-top:max(16px, env(safe-area-inset-top));z-index:100;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0;box-shadow:0 4px 20px #5b5fff4d}.top-bar h1{font-size:18px;font-weight:700}.top-badge{background:#fff3;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:500}.test-label{color:#dc2626;vertical-align:middle;background:#fee2e2;border-radius:4px;margin-left:6px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.tab-bar{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);top:calc(65px + env(safe-area-inset-top,0px));z-index:99;scrollbar-width:none;margin:16px 16px 0;padding:4px;display:flex;position:sticky;overflow-x:auto}.tab-bar::-webkit-scrollbar{display:none}.tab-btn{min-width:58px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:12px;flex:1;padding:10px 4px;font-size:12px;font-weight:600;transition:all .3s}.tab-btn.active{background:var(--primary);color:#fff;box-shadow:0 2px 8px #5b5fff4d}.tab-content{padding:16px;animation:.3s fade-in;display:none}.tab-content.active{display:block}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:12px;padding:16px}.card-title{align-items:center;gap:8px;margin-bottom:14px;font-size:15px;font-weight:700;display:flex}.edit-banner{border:2px solid var(--edit);border-radius:var(--radius-sm);background:linear-gradient(135deg,#fff7ed,#ffedd5);justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px;display:flex}.edit-info{color:var(--edit);font-size:13px;font-weight:600}.edit-info span{color:#9a3412;margin-top:2px;font-size:11px;display:block}.btn-cancel-edit{color:var(--danger);border:1px solid var(--danger);cursor:pointer;background:#fff;border-radius:20px;flex-shrink:0;padding:6px 14px;font-size:12px;font-weight:600}.form-group{margin-bottom:14px}.form-label{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.required{color:var(--danger)}.optional-label{color:#7b8794;font-size:11px;font-weight:500}.form-input,.form-select,.form-textarea{border:2px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);appearance:none;background:#f9fafb;font-size:16px;transition:all .2s}.form-input,.form-select{height:46px;padding:0 14px}.form-textarea{resize:vertical;min-height:88px;padding:12px 14px;line-height:1.45}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary);background:#fff;outline:none;box-shadow:0 0 0 3px #5b5fff1a}.form-input.readonly{color:#6b7280;background:#f3f4f6;border-style:dashed}.form-input.duplicate{border-color:var(--edit)!important;background:#fff7ed!important;box-shadow:0 0 0 3px #ff8c0026!important}.form-input.new-order{border-color:var(--success)!important;background:#f0fdf4!important;box-shadow:0 0 0 3px #00c48c1a!important}.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M6 8L1 3h10z' fill='%236B7280'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}.two-col-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.scan-input-wrap{align-items:center;gap:8px;display:flex}.scan-input-wrap .form-input{flex:1;min-width:0}.btn-icon{border-radius:var(--radius-sm);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;font-size:22px;transition:all .2s;display:flex}.btn-icon:active{transform:scale(.95)}.btn-scan.active{color:#059669;background:#d1fae5;animation:1.5s infinite pulse-scan}@keyframes pulse-scan{0%,to{box-shadow:0 0 #05966966}50%{box-shadow:0 0 0 12px #05966900}}.scan-status{margin-top:4px;font-size:11px;font-weight:500}.scan-status.manual{color:#6b7280}.scan-status.scanning{color:#059669}.order-hint-card{border-radius:var(--radius-sm);margin-bottom:14px;padding:12px}.order-hint-card.exists{border:2px solid var(--edit);background:#fff7ed}.order-hint-card.new{border:2px solid var(--success);background:#f0fdf4}.order-hint-card.invalid{border:2px solid var(--danger);background:#fef2f2}.hint-title{margin-bottom:4px;font-size:13px;font-weight:700}.exists .hint-title{color:var(--edit)}.new .hint-title{color:var(--success)}.hint-detail{color:var(--text-secondary);font-size:12px;line-height:1.6}.stored-photo-strip{flex-wrap:wrap;gap:6px;min-width:0;max-width:100%;display:flex;overflow:hidden}.stored-photo{object-fit:cover;object-position:center;flex:none;width:60px;max-width:100%;height:60px;display:block}.stored-photo-open{cursor:zoom-in;background:0 0;border:0;border-radius:7px;flex:none;padding:0;display:block;position:relative;overflow:hidden}.stored-photo-frame{flex:none;display:block;position:relative}.media-thumbnail-retry{z-index:3;color:#fff;background:#142d33db;border:1px solid #fffc;border-radius:999px;min-height:22px;padding:2px 7px;font-size:10px;font-weight:700;line-height:1;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.stored-photo-open:focus-visible,.photo-preview-trigger:focus-visible{outline-offset:2px;outline:3px solid #149791a6}.hint-photos{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.hint-photo{object-fit:cover;border:2px solid var(--border);border-radius:6px;flex:0 0 60px;width:60px;max-width:100%;height:60px;display:block}.packing-order-photo-reference{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.packing-order-photo-reference-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.packing-order-photo-reference-head strong{color:var(--text);font-size:12px}.packing-order-photo-reference-head small{color:var(--text-secondary);text-align:right}.packing-order-photos{margin-top:9px}.packing-order-photos .hint-photo{flex-basis:84px;width:84px;height:84px}.packing-order-photo-empty{color:#9a5518;background:#fff7ed;border-radius:7px;margin-top:8px;padding:9px 10px;font-size:11px;line-height:1.5}.shipment-photos{flex-wrap:wrap;gap:6px;min-width:0;max-width:100%;margin-top:8px;display:flex;overflow:hidden}.shipment-photo{object-fit:cover;object-position:center;border:1px solid var(--border);border-radius:6px;flex:0 0 60px;width:60px;max-width:100%;height:60px;display:block}.hint-actions{gap:6px;margin-top:10px;display:flex}.hint-actions .btn{flex:1}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:6px;width:100%;height:48px;font-size:15px;font-weight:700;transition:all .2s;display:flex}.btn:active{opacity:.9;transform:scale(.97)}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 4px 12px #5b5fff4d}.btn-success{background:var(--success);color:#fff;box-shadow:0 4px 12px #00c48c4d}.btn-edit{background:var(--edit);color:#fff;box-shadow:0 4px 12px #ff8c004d}.btn-danger{background:var(--danger);color:#fff}.btn-outline{color:var(--primary);border:2px solid var(--primary);background:#fff}.btn-sm{border-radius:8px;width:auto;height:36px;padding:0 14px;font-size:13px}.photo-upload{flex-wrap:wrap;gap:10px;display:flex}.photo-item{border-radius:var(--radius-sm);border:2px solid var(--border);background:#f9fafb;flex:0 0 80px;width:80px;max-width:100%;height:80px;position:relative;overflow:hidden}.photo-item img,.photo-item video{object-fit:cover;object-position:center;width:100%;max-width:100%;height:100%;max-height:100%;display:block}.photo-preview-trigger{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;display:block;position:relative;overflow:hidden}.media-thumbnail-video,.stored-media-video{background:#101827}.media-thumbnail-placeholder{color:#315b61;background:linear-gradient(145deg,#eef5f5,#e2ebec);place-items:center;font-size:22px;line-height:1;display:grid;overflow:hidden}.photo-preview-trigger>.media-thumbnail-placeholder{width:100%;height:100%}.stored-photo.media-thumbnail-placeholder{width:60px;height:60px}.media-video-badge{z-index:2;color:#fff;pointer-events:none;background:#060c18c7;border-radius:999px;padding:2px 5px;font-size:9px;font-weight:750;line-height:1.3;position:absolute;top:4px;left:4px}.stored-media-video-badge{color:#fff;pointer-events:none;background:#060c18b8;border-radius:50%;place-items:center;width:24px;height:24px;font-size:10px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.photo-placeholder{place-items:center;width:100%;height:100%;font-size:24px;display:grid}.photo-upload-uploading{border-color:var(--primary)}.photo-upload-uploaded{border-color:var(--success)}.photo-upload-failed{border-color:var(--danger)}.photo-upload-expired{border-color:#f59e0b}.photo-progress-track{background:#ffffffbf;border-radius:999px;height:5px;position:absolute;bottom:3px;left:4px;right:4px;overflow:hidden}.photo-progress-track>span{background:var(--primary);height:100%;transition:width .15s;display:block}.photo-upload-state{color:#fff;white-space:nowrap;background:#111827c7;border-radius:999px;max-width:calc(100% - 8px);padding:2px 5px;font-size:9px;font-weight:700;line-height:1.3;position:absolute;bottom:10px;left:4px}.photo-upload-state.uploaded{background:#059669e6}.photo-upload-state.failed{background:#dc2626eb}.photo-upload-state.expired{background:#b45309f0}.photo-upload-error{z-index:2;color:#fff;text-align:left;background:#7f1d1deb;border-radius:4px;max-height:30px;padding:2px 3px;font-size:8px;font-weight:650;line-height:1.2;position:absolute;top:29px;left:3px;right:3px;overflow:hidden}.photo-retry{z-index:2;color:var(--danger);cursor:pointer;background:#fff;border:none;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700;position:absolute;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0003}.delete-photo{z-index:3;color:#fff;cursor:pointer;background:#ef4444e6;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;line-height:1;display:flex;position:absolute;top:4px;right:4px}.photo-add-btn{border:2px dashed var(--border);border-radius:var(--radius-sm);color:#788594;cursor:pointer;background:#f9fafb;flex-direction:column;justify-content:center;align-items:center;gap:1px;width:80px;height:80px;font-size:26px;line-height:1;transition:all .2s;display:flex}.photo-add-btn small{font-size:10px;font-weight:650;line-height:1.2}.photo-add-video-label+small{display:none}.photo-add-btn:active{border-color:var(--primary);background:#e5e7eb}.photo-help{color:#9ca3af;margin-top:4px;font-size:11px;display:block}.media-enabled-note{color:#39777c;margin-left:5px;font-size:11px;font-weight:700}.stats-row{grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.stat-box{border-radius:var(--radius-sm);text-align:center;background:#f9fafb;padding:12px}.stat-num{color:var(--primary);font-size:24px;font-weight:700}.stat-label{color:var(--text-secondary);margin-top:2px;font-size:11px}.shipment-module-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.consignment-menu-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.delivery-menu-stats{max-width:660px;margin-top:16px}.shipment-stat-toggle{border-radius:var(--radius-sm);width:100%;min-width:0;color:inherit;text-align:center;font:inherit;cursor:pointer;background:#fff;border:1px solid #d7e6e6;padding:13px 10px;transition:border-color .18s,box-shadow .18s,transform .18s;box-shadow:0 4px 14px #27575f0d}.shipment-stat-toggle:hover{border-color:var(--primary);box-shadow:0 8px 20px #27575f1a}.shipment-stat-toggle:active{transform:scale(.985)}.shipment-stat-toggle.active{border-color:var(--primary-dark);box-shadow:0 0 0 2px #81d8d033}.shipment-stat-toggle .stat-num,.shipment-stat-toggle .stat-label,.shipment-stat-toggle .stat-box-total,.shipment-stat-toggle small{display:block}.shipment-stat-toggle .stat-box-total{color:#174951;margin-top:4px;font-size:12px;font-weight:850}.shipment-stat-toggle.pending .stat-num{color:var(--warning)}.shipment-stat-toggle.packed .stat-num{color:#2676a1}.shipment-stat-toggle.done .stat-num{color:var(--success)}.shipment-stat-toggle small{color:#39777c;margin-top:5px;font-size:10px;font-weight:750}.shipment-order-list{border-radius:var(--radius-sm);background:#f8fffe;border:1px solid #c7e8e5;margin:0 0 14px;padding:12px}.shipment-order-list-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.shipment-order-list-head strong{color:#174951;font-size:14px}.shipment-order-list-head span{color:var(--text-secondary);font-size:11px;font-weight:700}.shipment-order-rows{gap:8px;display:grid}.shipment-order-row{background:#fff;border:1px solid #dcebea;border-radius:10px;min-width:0;padding:11px}.shipment-order-row-head,.shipment-order-row>div:not(.shipment-order-row-head):not(.shipment-order-row-body){justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.shipment-order-row-head{margin-bottom:5px}.shipment-order-row-head>strong{color:#174951;overflow-wrap:anywhere}.shipment-order-row>div:not(.shipment-order-row-head):not(.shipment-order-row-body){padding:2px 0;font-size:12px}.shipment-order-row>div:not(.shipment-order-row-head):not(.shipment-order-row-body) span{color:var(--text-secondary)}.shipment-order-row>div:not(.shipment-order-row-head):not(.shipment-order-row-body) strong{text-align:right;overflow-wrap:anywhere;min-width:0}.shipment-order-row>small{color:var(--text-secondary);margin-top:5px;font-size:10px;display:block}.shipment-order-row-details{padding:0;overflow:hidden}.shipment-order-row-summary{cursor:pointer;-webkit-user-select:none;user-select:none;padding:11px;list-style:none;display:block}.shipment-order-row-summary::-webkit-details-marker{display:none}.shipment-order-row-summary::marker{content:""}.shipment-order-row-summary .shipment-order-row-head{margin-bottom:6px}.shipment-order-row-preview{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.shipment-order-row-preview>span{overflow-wrap:anywhere;min-width:0}.shipment-order-row-preview>strong{color:#174951;flex:none}.shipment-order-expand-label{color:#2676a1;align-items:center;gap:5px;margin-top:7px;font-size:11px;font-weight:800;display:flex}.shipment-order-expand-label:before{content:"⌄";font-size:14px;line-height:1;transition:transform .16s}.shipment-order-expand-open{display:none}.shipment-order-row-details[open] .shipment-order-expand-label:before{transform:rotate(180deg)}.shipment-order-row-details[open] .shipment-order-expand-closed{display:none}.shipment-order-row-details[open] .shipment-order-expand-open{display:inline}.shipment-order-row>.shipment-order-row-body{background:#fbfefe;border-top:1px solid #dcebea;padding:10px 11px 11px;font-size:12px;display:block}.shipment-order-row-body>div:not(.shipment-order-photo-reference):not(.shipment-order-history-block){justify-content:space-between;align-items:flex-start;gap:12px;padding:2px 0;display:flex}.shipment-order-row-body>div:not(.shipment-order-photo-reference):not(.shipment-order-history-block) span{color:var(--text-secondary)}.shipment-order-row-body>div:not(.shipment-order-photo-reference):not(.shipment-order-history-block) strong{text-align:right;overflow-wrap:anywhere;min-width:0}.shipment-order-row-body>small{color:var(--text-secondary);margin-top:5px;font-size:10px;display:block}.shipment-order-photo-reference{border-top:1px solid #dcebea;margin-top:10px;padding-top:10px;display:block}.shipment-order-photo-reference>strong,.shipment-order-photo-reference>small{text-align:left;display:block}.shipment-order-photo-reference>strong{color:#174951;font-size:12px}.shipment-order-photo-reference>small{color:var(--text-secondary);margin-top:3px;font-size:10px}.shipment-order-photo-reference .consignment-list-photos{margin-top:8px}.consignment-menu-order-list{margin-bottom:0}.delivery-menu-order-list{max-width:660px;margin-bottom:0}.outbound-history-stats{grid-template-columns:minmax(0,1fr);margin:14px 0}.outbound-history-stats .shipment-stat-toggle{max-width:330px}.outbound-order-list{margin-bottom:14px}.shipment-order-history-block{border-top:1px solid #dcebea;margin-top:10px;padding-top:10px;display:block}.shipment-order-history-block .shipment-history{margin:0}.packing-third-level{margin-top:0}.third-level-back{color:#17665f;min-height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #b9dcda;border-radius:10px;align-items:center;margin:0 0 10px;padding:8px 12px;font-size:12px;font-weight:800;display:inline-flex}.third-level-back:active{background:#ecfdf8;transform:scale(.985)}.field-help{color:var(--text-secondary);margin-top:5px;font-size:10px;line-height:1.45;display:block}.compact-bottom{margin-bottom:8px}.compact-input,.compact-select{height:40px;font-size:14px}.compact-select{flex:1;font-size:13px}.filter-row{gap:8px;display:flex}.month-archive-help{color:#14635e;background:#ecfdf8;border:1px solid #b7eee5;border-radius:8px;margin-top:8px;padding:8px 10px;font-size:11px;line-height:1.5}.outbound-search-help{color:var(--text-secondary);padding:4px 2px 0;font-size:12px;line-height:1.6}.outbound-results{gap:8px;margin-top:12px;display:grid}.outbound-empty{padding:16px 0 2px}.outbound-result{cursor:default;margin-bottom:0}.outbound-result.disabled{opacity:.66;border-left-color:var(--border)}.outbound-summary{border-radius:var(--radius-sm);background:#eef2ff;border:1px solid #c7d2fe;margin-bottom:14px;padding:12px}.outbound-summary-head{color:var(--primary);justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.outbound-summary .row{justify-content:space-between;align-items:center;gap:12px;padding:3px 0;font-size:13px;display:flex}.outbound-summary .row>span:first-child{color:var(--text-secondary)}.outbound-metrics{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.outbound-metric{text-align:center;background:#fff;border-radius:8px;padding:9px 4px}.outbound-metric strong{color:var(--primary);font-size:20px;line-height:1.1;display:block}.outbound-metric span{color:var(--text-secondary);margin-top:3px;font-size:10px;display:block}.outbound-metric.remaining strong{color:var(--edit)}.outbound-progress{background:#dbe1ff;border-radius:999px;height:7px;margin-top:10px;overflow:hidden}.outbound-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--success));height:100%;transition:width .25s;display:block}.btn-link{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:4px;font-size:12px;font-weight:700}.outbound-placeholder{border:2px dashed var(--border);border-radius:var(--radius-sm);color:#9ca3af;text-align:center;background:#f9fafb;margin-bottom:14px;padding:18px;font-size:13px}.count-check{border-radius:8px;margin:-4px 0 14px;padding:10px;font-size:12px;font-weight:600;line-height:1.5}.count-check.neutral{color:var(--text-secondary);border:1px solid var(--border);background:#f9fafb}.count-check.match{color:#047857;background:#f0fdf4;border:1px solid #a7f3d0}.count-check.partial{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.count-check.mismatch{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.outbound-data-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-top:7px;padding:7px 9px;font-size:11px;font-weight:700}.shipment-history{border:1px solid var(--border);border-radius:var(--radius-sm);background:#f9fafb;margin:-2px 0 14px;padding:10px}.shipment-history-title{color:var(--text-secondary);margin-bottom:6px;font-size:12px;font-weight:700}.shipment-entry{border-top:1px solid var(--border);padding:8px 2px}.shipment-history-title+.shipment-entry,.shipment-history.compact .shipment-entry:first-child{border-top:0}.shipment-entry>div{justify-content:space-between;gap:10px;font-size:12px;display:flex}.shipment-entry>div span{color:var(--edit);font-weight:600}.shipment-entry small{color:var(--text-secondary);margin-top:3px;font-size:10px;display:block}.shipment-details{margin-top:7px}.shipment-details summary{color:var(--primary);cursor:pointer;font-size:11px;font-weight:700}.shipment-history.compact{margin:7px 0 0;padding:6px 9px}.consignment-summary{background:#f0fdfa;border-color:#99f6e4}.delivery-summary{background:#eff6ff;border-color:#bfdbfe;margin-bottom:12px}.consignment-flow-head.delivery-flow-head{grid-template-columns:1fr 34px 1fr}.consignment-flow-head.delivery-flow-head strong{background:#2563eb}.consignment-flow-head.delivery-flow-head i{background:linear-gradient(90deg, #2563eb, var(--success))}.route-note{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;margin-top:8px;padding:8px 9px;font-size:10px;font-weight:650;line-height:1.5}.orders-load-error{color:#991b1b;background:#fff7ed;border:1px solid #fdba74;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:12px 16px 0;padding:12px 14px;display:flex}.orders-load-error>div{gap:3px;display:grid}.orders-load-error strong{font-size:13px}.orders-load-error span{font-size:11px;line-height:1.45}.media-session-verification-warning{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:12px 16px 0;padding:12px 14px;display:flex}.media-session-verification-warning>div{flex:240px;gap:3px;display:grid}.media-session-verification-warning strong{font-size:13px}.media-session-verification-warning span{font-size:11px;line-height:1.45}.delivery-dispatch-card{background:#eff6ff;border-color:#bfdbfe}.delivery-record{background:#f8fbff;border-color:#bfdbfe}.allocation-summary{border-top:1px solid #6366f129;margin-top:10px;padding-top:10px}.allocation-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;display:grid}.allocation-grid>div{text-align:center;background:#fff;border:1px solid #e0e7ff;border-radius:8px;min-width:0;padding:8px 3px}.allocation-grid strong{color:var(--primary);font-size:17px;line-height:1;display:block}.allocation-grid span{color:var(--text-secondary);white-space:nowrap;margin-top:4px;font-size:9px;display:block}.allocation-grid .completed strong{color:#059669}.allocation-grid .remaining strong{color:var(--edit)}.allocation-summary>small{color:var(--text-secondary);margin-top:7px;font-size:10px;line-height:1.45;display:block}.consignment-order-photos{margin-top:9px}.consignment-flow-head{border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;grid-template-columns:1fr 34px 1fr;align-items:center;gap:8px;margin-bottom:14px;padding:12px;display:grid}.consignment-flow-head>div{color:var(--text-secondary);align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.consignment-flow-head strong{background:var(--primary);color:#fff;border-radius:50%;place-items:center;width:25px;height:25px;font-size:12px;display:grid}.consignment-flow-head i{background:linear-gradient(90deg, var(--primary), var(--success));height:2px;display:block}.consignment-stage-title{align-items:center;gap:10px;margin:5px 2px 10px;display:flex}.consignment-stage-title>.flow-code{background:var(--primary);color:#fff;letter-spacing:.04em;border-radius:10px;flex:none;place-items:center;width:auto;min-width:44px;height:34px;padding:0 7px;font-size:11px;font-weight:900;display:grid;box-shadow:0 3px 9px #5b5fff47}.consignment-stage-title>div{flex-direction:column;gap:2px;display:flex}.consignment-stage-title strong{font-size:14px}.consignment-stage-title small{color:var(--text-secondary);font-size:10px}.consignment-stage-title.second{margin-top:24px}.consignment-stage-title.second>.flow-code{background:var(--success);box-shadow:0 3px 9px #00c48c40}.consignment-verification{border-radius:var(--radius-sm);border:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:flex}.consignment-verification>div{min-width:0}.consignment-verification strong{font-size:13px;display:block}.consignment-verification span{color:var(--text-secondary);overflow-wrap:anywhere;margin-top:3px;font-size:10px;line-height:1.45;display:block}.consignment-verification .btn{flex:none}.consignment-verification.pending{background:#fff7ed;border-color:#fed7aa}.consignment-verification.pending strong{color:#9a3412}.consignment-verification.verified{background:#f0fdf4;border-color:#a7f3d0}.consignment-verification.verified strong{color:#047857}.consignment-fieldset{border:0;min-width:0;margin:0;padding:0}.consignment-fieldset:disabled{opacity:.62}.order-editor-fieldset{border:0;min-width:0;margin:0;padding:0}.order-editor-fieldset:disabled{opacity:.72}.form-lock-note{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:14px;padding:9px 10px;font-size:11px;font-weight:600;line-height:1.5}.credential-expired-note{color:#92400e;background:#fffbeb;border-color:#fbbf24}.consignment-fieldset:disabled .form-lock-note{color:#6b7280;border-color:var(--border);background:#f9fafb}.file-input-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.file-upload-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.file-upload-row .btn{width:auto}.file-chip{border-radius:var(--radius-sm);background:#eef2ff;border:1px solid #c7d2fe;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin-top:9px;padding:10px;display:grid}.file-chip>span{font-size:22px}.file-chip strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.file-chip small{color:var(--text-secondary);margin-top:2px;font-size:10px;display:block}.file-chip button{color:#dc2626;cursor:pointer;background:#fee2e2;border:0;border-radius:50%;width:28px;height:28px;font-size:18px}.file-chip>div{min-width:0}.file-chip.invoice-upload-uploaded{background:#f0fdf4;border-color:#86efac}.file-chip.invoice-upload-uploading{background:#eff6ff;border-color:#93c5fd}.file-chip.invoice-upload-waiting{background:#fffbeb;border-color:#fcd34d}.file-chip.invoice-upload-failed{background:#fef2f2;border-color:#fca5a5}.invoice-progress-track{background:#dbeafe;border-radius:999px;width:100%;height:6px;margin-top:7px;display:block;overflow:hidden}.invoice-progress-track>span{border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--success));height:100%;transition:width .15s;display:block}.invoice-upload-error{white-space:normal;overflow-wrap:anywhere;color:#b91c1c!important}.file-chip .invoice-retry{color:#b91c1c;background:#fff;border:1px solid #fca5a5;border-radius:8px;width:auto;height:auto;margin-top:7px;padding:5px 9px;font-size:10px;font-weight:700}.consignment-record{border:1px solid var(--border);border-radius:var(--radius-sm);background:#f9fafb;margin-top:7px;padding:9px}.consignment-record>div:not(.mini-photos){border-top:1px solid var(--border);justify-content:space-between;gap:10px;padding:5px 1px;font-size:11px;display:flex}.consignment-record>div:first-child{border-top:0}.consignment-record span{color:var(--text-secondary)}.consignment-record strong{text-align:right;overflow-wrap:anywhere}.invoice-link{color:var(--primary);margin:8px 1px 3px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.consignment-list-photos{margin-top:7px}.registered-consignment{border-radius:var(--radius-sm);background:#eefbf7;border:1px solid #a7f3d0;margin:-2px 0 14px;padding:11px}.registered-consignment>div:not(.shipment-history-title){border-top:1px solid #d1fae5;justify-content:space-between;gap:10px;padding:5px 1px;font-size:11px;display:flex}.registered-consignment>.shipment-history-title+div{border-top:0}.registered-consignment span{color:var(--text-secondary)}.registered-consignment strong{text-align:right;overflow-wrap:anywhere}.file-missing{background:#fff7ed;border-radius:7px;margin-top:7px;padding:7px;font-size:10px;display:block;color:#9a3412!important}.consignment-record>.packing-record-block{border-top:1px solid var(--border);margin-top:5px;padding:7px 1px 1px;display:block}.packing-record-block>div:not(.mini-photos){justify-content:space-between;gap:10px;padding:4px 0;font-size:11px;display:flex}.waiting-pack-note{color:#1e40af;background:#eff6ff;border-radius:7px;margin-top:7px;font-weight:700;border:1px solid #bfdbfe!important;padding:8px!important;font-size:10px!important;display:block!important}.order-item{background:var(--card-bg);border-radius:var(--radius-sm);border-left:4px solid var(--primary);margin-bottom:8px;transition:all .2s;overflow:hidden;box-shadow:0 1px 4px #0000000d}.order-month-heading{z-index:4;color:#174951;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#dcfaf6f5;border:1px solid #a9e6df;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 8px;padding:9px 12px;display:flex;position:sticky;top:72px;box-shadow:0 4px 12px #17495114}.order-month-heading strong{font-size:14px}.order-month-heading span{color:#39777c;font-size:11px;font-weight:700}.order-list-more{width:100%;margin-top:12px}.cursor-pagination{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;margin-top:12px;display:grid}.cursor-pagination .btn{width:100%}.cursor-pagination>span{color:var(--text-secondary);white-space:nowrap;text-align:center;font-size:11px;font-weight:750}.order-list-summary{cursor:pointer;grid-template-columns:minmax(112px,.75fr) minmax(180px,1.5fr) minmax(92px,.55fr) minmax(104px,.7fr) 18px;align-items:center;gap:14px;padding:13px 14px;list-style:none;display:grid;position:relative}.order-list-summary::-webkit-details-marker{display:none}.order-list-summary::marker{content:""}.order-list-summary:active{background:#f3f4f6}.order-list-summary-field{gap:3px;min-width:0;display:grid}.order-list-summary-field strong{min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.order-list-summary-label{color:var(--text-secondary);font-size:10px;font-weight:650}.order-list-summary-status{justify-items:start}.order-list-summary-toggle{border-bottom:2px solid #39777c;border-right:2px solid #39777c;width:10px;height:10px;transition:transform .2s;transform:rotate(-45deg)}.order-list-disclosure[open] .order-list-summary-toggle{transform:rotate(45deg)}.order-list-detail{border-top:1px solid #e2eeee;padding:11px 14px 13px}.order-item .row{justify-content:space-between;padding:2px 0;font-size:13px;display:flex}.order-item .label{color:var(--text-secondary);flex-shrink:0;font-size:11px}.order-item .value{font-size:13px;font-weight:600}.order-item .time-value{font-size:11px}.actions{gap:8px;margin-top:8px;display:flex}.actions .btn{flex:1}.mini-photos{flex-wrap:wrap;gap:4px;min-width:0;max-width:100%;margin-top:4px;display:flex;overflow:hidden}.mini-photo{object-fit:cover;object-position:center;border:1px solid var(--border);border-radius:4px;flex:0 0 40px;width:40px;max-width:100%;height:40px;display:block}.empty-list{text-align:center;color:#9ca3af;padding:20px}.status-badge{border-radius:20px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.status-pending{color:#92400e;background:#fef3c7}.status-processing{color:#1e40af;background:#dbeafe}.status-done{color:#065f46;background:#d1fae5}.status-cancelled{color:#991b1b;background:#fee2e2}.person-section{border-radius:var(--radius-sm);background:#f9fafb;margin-bottom:12px;padding:12px}.person-tags{flex-wrap:wrap;gap:8px;min-height:30px;display:flex}.person-tag{color:var(--primary);background:#eef2ff;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.empty-hint{color:#9ca3af;padding:4px 0;font-size:12px}.sync-note{color:#047857;background:#f0fdf4;border:1px solid #a7f3d0;border-radius:8px;margin-bottom:12px;padding:10px;font-size:12px;line-height:1.5}.sync-note.error{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.safe-bottom{height:env(safe-area-inset-bottom,20px)}.toast{top:max(20px, env(safe-area-inset-top));color:#fff;z-index:999;opacity:0;pointer-events:none;text-align:center;background:#1e1e2e;border-radius:20px;max-width:calc(100vw - 32px);padding:10px 20px;font-size:14px;font-weight:600;transition:opacity .3s;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0003}.toast.show{opacity:1}.toast.success{background:#059669}.toast.error{background:#dc2626}.logout-operation-blocker{z-index:1200;color:#173842;text-align:center;cursor:wait;background:#f1fcfaf5;place-items:center;padding:24px;font-size:15px;font-weight:800;display:grid;position:fixed;inset:0}.logout-operation-blocker>div{background:#fff;border:1px solid #bfe9e5;border-radius:16px;max-width:420px;padding:18px 22px;box-shadow:0 18px 48px #16484f2e}.media-session-verification-blocker{z-index:5000;color:#173842;text-align:center;background:#f1fcfa;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.media-session-verification-blocker>div{background:#fff;border:1px solid #bfe9e5;border-radius:16px;width:min(100%,440px);padding:22px;box-shadow:0 18px 48px #16484f2e}.media-session-verification-blocker strong{margin:8px 0;font-size:17px;display:block}.media-session-verification-blocker p{margin:0 0 16px;line-height:1.55}.modal-overlay{z-index:200;background:#00000080;justify-content:center;align-items:center;animation:.2s fade-in;display:flex;position:fixed;inset:0}.modal-box{border-radius:var(--radius);text-align:center;background:#fff;width:100%;max-width:360px;max-height:80vh;margin:20px;padding:24px;overflow-y:auto;box-shadow:0 20px 60px #0003}.modal-box h3{margin-bottom:8px;font-size:17px}.modal-box p{color:var(--text-secondary);white-space:pre-line;margin-bottom:16px;font-size:14px;line-height:1.5}.modal-box.confirm-danger{border:2px solid #fecaca}.modal-box.confirm-danger h3{color:#b91c1c}.confirm-input-group{text-align:left;gap:7px;margin:14px 0 18px;display:grid}.confirm-input-group .form-label{color:#991b1b;margin:0;font-weight:700}.confirm-input-group .form-input{border-color:#fca5a5}.confirm-input-group .form-input:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261f}.modal-photos{flex-wrap:wrap;justify-content:center;gap:6px;margin:10px 0;display:flex}.modal-photo{object-fit:cover;object-position:center;border:2px solid var(--border);border-radius:8px;flex:0 0 70px;width:70px;max-width:100%;height:70px;display:block}.btn-row{gap:10px;display:flex}.btn-row .btn{flex:1;height:42px;font-size:14px}.photo-fallback{background:#f9fafb;place-items:center;font-style:normal;display:grid}.photo-viewer-overlay{z-index:1200;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));background:#040810f0;place-items:center;animation:.16s fade-in;display:grid;position:fixed;inset:0}.photo-viewer-box{touch-action:pan-y pinch-zoom;place-items:center;width:min(100%,1200px);height:min(100%,900px);min-height:0;display:grid;position:relative}.photo-viewer-viewport{touch-action:none;overscroll-behavior:contain;place-items:center;width:100%;height:100%;min-height:0;display:grid;overflow:hidden}.photo-viewer-viewport[data-zoomed=true]{cursor:grab}.photo-viewer-viewport[data-dragging=true]{cursor:grabbing}.photo-viewer-image{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;transform-origin:50%;border-radius:10px;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 100px);display:block;box-shadow:0 18px 60px #00000073}.photo-viewer-toolbar{z-index:2;color:#fff;background:#0e1724d6;border:1px solid #ffffff47;border-radius:12px;align-items:center;gap:4px;padding:4px;display:flex;position:absolute;top:0;left:0}.photo-viewer-toolbar button{color:#fff;min-width:40px;min-height:40px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 10px;font-size:18px}.photo-viewer-toolbar button:hover:not(:disabled),.photo-viewer-toolbar button:focus-visible{background:#ffffff2e}.photo-viewer-toolbar button:disabled{opacity:.45;cursor:default}.photo-viewer-toolbar span{text-align:center;min-width:48px;font-size:13px;font-weight:700}.photo-viewer-video{object-fit:contain;background:#050609;border-radius:10px;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 100px);display:block;box-shadow:0 18px 60px #00000073}.photo-viewer-close{z-index:2;color:#fff;cursor:pointer;background:#0e1724d6;border:1px solid #ffffff5c;border-radius:50%;width:48px;height:48px;font-size:30px;line-height:1;position:absolute;top:0;right:0}.photo-viewer-nav{z-index:2;color:#fff;cursor:pointer;background:#0e1724b8;border:1px solid #ffffff52;border-radius:999px;place-items:center;width:48px;height:56px;padding:0;font-size:38px;line-height:1;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.photo-viewer-nav:focus-visible,.photo-viewer-close:focus-visible{outline-offset:3px;outline:3px solid #81d8d0}.photo-viewer-previous{left:max(0px, env(safe-area-inset-left))}.photo-viewer-next{right:max(0px, env(safe-area-inset-right))}.photo-viewer-caption{color:#fff;white-space:nowrap;background:#0e1724bd;border-radius:999px;align-items:center;gap:8px;max-width:calc(100% - 32px);padding:7px 12px;font-size:12px;display:flex;position:absolute;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}.photo-viewer-caption>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.photo-viewer-caption>small{color:#ffffffd6;flex:none;font-size:11px;font-weight:800}.workflow-media-input{opacity:0;pointer-events:none;width:1px;height:1px;position:fixed;left:-10000px}.workflow-media-overlay{z-index:1100;padding:16px;padding-bottom:max(16px, env(safe-area-inset-bottom));background:#040c14a8;align-items:flex-end}.workflow-media-sheet{background:#fff;border-radius:20px;width:min(100%,520px);margin:0 auto;padding:18px;box-shadow:0 24px 70px #040c1447}.workflow-media-sheet-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:13px;display:flex}.workflow-media-sheet-head>div{text-align:left;gap:3px;display:grid}.workflow-media-sheet-head strong{color:#173f45;font-size:17px}.workflow-media-sheet-head small{color:var(--text-secondary);font-size:11px}.workflow-media-sheet-head>button{color:#245d62;cursor:pointer;background:#edf8f7;border:0;border-radius:50%;flex:0 0 42px;width:42px;height:42px;font-size:26px;line-height:1}.workflow-media-actions{gap:9px;display:grid}.workflow-media-actions>button{color:#173f45;text-align:left;cursor:pointer;background:#f8fffe;border:1px solid #cfe8e5;border-radius:13px;grid-template-rows:auto auto;grid-template-columns:38px minmax(0,1fr);min-height:64px;padding:10px 12px;display:grid}.workflow-media-actions>button:active{border-color:var(--primary-dark);background:#eaf9f7;transform:scale(.99)}.workflow-media-actions>button>span{grid-row:1/3;align-self:center;font-size:24px}.workflow-media-actions>button>strong{align-self:end;font-size:14px}.workflow-media-actions>button>small{color:var(--text-secondary);align-self:start;margin-top:2px;font-size:11px;line-height:1.3}.workflow-media-sheet>p{color:#64748b;text-align:left;margin:11px 2px 0;font-size:10px;line-height:1.45}.workflow-media-cancel{margin-top:12px}.camera-overlay{background:#0a0a14d1;align-items:stretch}.camera-box{color:#fff;width:100%;padding:max(18px, env(safe-area-inset-top)) 16px max(18px, env(safe-area-inset-bottom));background:#11131c;flex-direction:column;display:flex}.camera-title{justify-content:space-between;align-items:center;margin-bottom:14px;font-size:16px;display:flex}.camera-title button{color:#fff;cursor:pointer;background:#ffffff24;border:0;border-radius:50%;width:36px;height:36px;font-size:24px}.camera-preview{border-radius:var(--radius);background:#050609;flex:1;place-items:center;min-height:300px;display:grid;position:relative;overflow:hidden}.camera-preview video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.photo-camera-box .camera-preview{border-radius:0}.photo-camera-box .camera-preview video{object-fit:contain}.camera-preview>span{z-index:2;color:#d1d5db;font-size:13px;position:relative}.camera-box>p{color:#c7cad2;text-align:center;margin:12px 4px;font-size:12px;line-height:1.5}.camera-single-shot-hint{color:#78ded6;text-align:center;margin:-6px 4px 10px;font-size:12px;font-weight:650;display:block}.camera-actions{grid-template-columns:1fr 84px 1fr;align-items:center;gap:16px;display:grid}.camera-actions .btn{color:#fff;background:0 0;border-color:#ffffffbf;height:42px}.shutter-button{cursor:pointer;background:0 0;border:4px solid #fff;border-radius:50%;justify-self:center;width:72px;height:72px;padding:5px}.shutter-button span{background:#fff;border-radius:50%;width:100%;height:100%;display:block}.shutter-button:active span{transform:scale(.9)}.photo-count{color:#d1d5db;justify-self:end;font-size:14px;font-weight:700}.photo-camera-box.is-annotating{overflow:hidden}.photo-annotation-editor{overscroll-behavior:contain;flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow:auto}.photo-annotation-copy{text-align:left;gap:3px;padding-inline:2px;display:grid}.photo-annotation-copy strong{color:#fff;font-size:14px}.photo-annotation-copy small{color:#c7cad2;font-size:11px;line-height:1.45}.photo-annotation-stage{contain:layout paint;background:#050609;border:1px solid #ffffff38;border-radius:10px;flex:none;width:100%;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 12px 32px #00000047}.photo-annotation-stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.photo-annotation-base{pointer-events:none}.photo-annotation-overlay{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.photo-annotation-overlay:focus-visible{outline-offset:-3px;outline:3px solid #78ded6}.photo-annotation-toolbar{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.photo-annotation-toolbar button{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff52;border-radius:9px;min-height:44px;padding:7px 5px;font-size:11px;font-weight:700}.photo-annotation-toolbar button:disabled{cursor:default;opacity:.42}.photo-annotation-help{color:#c7cad2;text-align:center;margin:-2px 2px 0;font-size:10px;line-height:1.4}.photo-annotation-status{color:#9ff4e8;text-align:center;min-height:18px;font-size:11px;line-height:1.4}.photo-annotation-actions{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:9px;margin-top:auto;padding-top:2px;display:grid}.photo-annotation-actions .btn{min-height:46px}.photo-annotation-actions .btn-outline{color:#fff;background:0 0;border-color:#ffffffb8}.scanner-box{max-width:540px;margin:0 auto}.scanner-preview{margin-bottom:4px}.scan-frame{z-index:3;width:min(72vw,320px);height:min(42vw,190px);position:absolute}.scan-frame:after{content:"";background:#ff647c;height:2px;animation:1.8s ease-in-out infinite scan-line;position:absolute;top:50%;left:10px;right:10px;box-shadow:0 0 12px #ff647c}.scan-frame span{border-style:solid;border-color:#fff;width:28px;height:28px;position:absolute}.scan-frame span:first-child{border-width:3px 0 0 3px;top:0;left:0}.scan-frame span:nth-child(2){border-width:3px 3px 0 0;top:0;right:0}.scan-frame span:nth-child(3){border-width:0 0 3px 3px;bottom:0;left:0}.scan-frame span:nth-child(4){border-width:0 3px 3px 0;bottom:0;right:0}.scanner-warmup{z-index:4;color:#fef3c7;text-align:center;white-space:nowrap;background:#0a131cc7;border-radius:999px;max-width:calc(100% - 28px);padding:7px 11px;font-size:11px;font-weight:750;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.scanner-warmup.ready{color:#b7f7e8;background:#044b44d1}@keyframes scan-line{0%,to{transform:translateY(-58px)}50%{transform:translateY(58px)}}@media (width>=700px){.camera-overlay{align-items:center;padding:24px}.camera-box{border-radius:22px;max-width:600px;height:min(820px,100vh - 48px)}.workflow-media-overlay{align-items:center}}@media (width<=699px){body{overscroll-behavior-y:contain}.top-bar{min-height:56px;padding:10px 12px;padding-top:max(10px, env(safe-area-inset-top));gap:8px}.top-bar h1{min-width:0;font-size:16px;line-height:1.2}.top-badge{text-align:center;flex:none;max-width:42vw;padding:4px 8px;font-size:10px}.tab-bar{top:calc(55px + env(safe-area-inset-top,0px));scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;margin:8px 8px 0;padding:4px}.tab-btn{scroll-snap-align:start;white-space:normal;flex:none;min-width:104px;min-height:48px;padding:7px 8px;font-size:11px;line-height:1.25}.tab-content{padding:10px 8px}.card{border-radius:13px;margin-bottom:10px;padding:13px}.card-title{margin-bottom:12px;font-size:14px}.two-col-row{grid-template-columns:1fr;gap:0}.form-group{margin-bottom:13px}.form-label{font-size:12px;line-height:1.35}.form-input,.form-select,.form-textarea{height:auto;min-height:48px;padding-block:10px;font-size:16px}.btn{height:auto;min-height:48px;padding-block:10px;line-height:1.3}.btn-sm{min-height:42px}.scan-input-wrap .btn-icon{width:48px;min-height:48px}.outbound-results{gap:7px}.order-item{content-visibility:auto;contain-intrinsic-size:220px}.order-list-summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 12px;padding:12px 40px 12px 12px}.order-list-summary-customer{min-width:0}.order-list-summary-toggle{margin-top:-6px;position:absolute;top:50%;right:16px}.order-list-detail{padding:10px 12px 12px}.order-item .row{align-items:flex-start;gap:10px;padding:3px 0}.order-item .label{max-width:52%;line-height:1.35}.order-item .value{text-align:right;overflow-wrap:anywhere;min-width:0;line-height:1.35}.outbound-summary{padding:10px}.outbound-summary .row,.registered-consignment>div:not(.shipment-history-title),.consignment-record>div:not(.mini-photos){align-items:flex-start}.allocation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.allocation-grid span{white-space:normal;line-height:1.2}.consignment-stage-title{align-items:flex-start;margin-inline:2px}.consignment-stage-title strong{line-height:1.25}.consignment-stage-title small{line-height:1.35}.consignment-flow-head{grid-template-columns:1fr 24px 1fr;gap:5px;padding:9px}.consignment-flow-head>div{align-items:flex-start;font-size:10px;line-height:1.25}.consignment-verification{flex-direction:column;align-items:stretch}.consignment-verification .btn{width:100%}.file-upload-row{flex-direction:column;align-items:stretch}.file-upload-row .btn{width:100%}.file-chip{grid-template-columns:auto minmax(0,1fr) auto;padding:9px}.photo-item,.photo-add-btn{width:74px;height:74px}.photo-upload{gap:8px}.photo-add-btn small{max-width:68px}.filter-row{flex-direction:column;align-items:stretch}.cursor-pagination{grid-template-columns:1fr 1fr}.cursor-pagination>span{grid-area:1/1/auto/-1}.stats-row{gap:6px}.stat-box{padding:9px 4px}.stat-num{font-size:20px}.modal-overlay{align-items:flex-end}.modal-box{width:100%;max-width:none;max-height:88dvh;padding:20px 16px max(18px, env(safe-area-inset-bottom));border-radius:20px 20px 0 0;margin:0}.modal-box p{text-align:left;overflow-wrap:anywhere;font-size:13px}.workflow-media-overlay{padding:0}.workflow-media-sheet{width:100%;padding:18px 14px max(18px, env(safe-area-inset-bottom));border-radius:20px 20px 0 0}.btn-row{background:#fff;padding-top:8px;position:sticky;bottom:0}.camera-overlay{align-items:stretch}.photo-camera-box{padding-inline:0}.photo-camera-box .camera-title,.photo-camera-box>p,.photo-camera-box .camera-single-shot-hint,.photo-camera-box .camera-actions{margin-inline:16px}.photo-camera-box.is-annotating .camera-title,.photo-camera-box.is-annotating .photo-annotation-editor{margin-inline:12px}.photo-annotation-editor{gap:8px}.photo-annotation-copy small{font-size:10px}.photo-annotation-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.camera-preview{min-height:240px}.camera-actions{grid-template-columns:1fr 76px 1fr;gap:10px}.shutter-button{width:68px;height:68px}.toast{width:calc(100vw - 24px);padding:10px 14px;font-size:12px;line-height:1.4}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--primary:#81d8d0;--primary-dark:#5fc9c3;--edit:#ff9c66;--shadow:0 10px 30px #265b6517}.app-shell{max-width:1160px;margin:0 auto}.top-bar{color:#16313a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#81d8d0f7;border-bottom:1px solid #24828224;min-height:72px;box-shadow:0 8px 26px #3a979729}.top-bar-main,.top-actions{align-items:center;gap:10px;min-width:0;display:flex}.top-bar h1{letter-spacing:-.02em;white-space:nowrap;font-size:20px}.top-badge{color:#174951;background:#ffffff8f}.back-btn{color:#174951;cursor:pointer;background:#ffffffa3;border:0;border-radius:12px;width:38px;height:38px;font-size:22px;font-weight:800}.test-label{color:#14635e;background:#ffffffb8}.language-toggle{background:#ffffff80;border-radius:12px;grid-template-columns:1fr 1fr;min-width:190px;padding:3px;display:inline-grid}.language-toggle button{color:#32636a;cursor:pointer;background:0 0;border:0;border-radius:9px;min-height:34px;padding:5px 10px;font-size:12px;font-weight:800}.language-toggle button.active{color:#0e4f4b;background:#fff;box-shadow:0 3px 12px #17616124}.home-screen{padding:22px 18px 40px;animation:.28s fade-in}.home-hero{border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;padding:22px;display:flex}.home-hero .eyebrow{color:#4c9e99;letter-spacing:.14em;margin-bottom:6px;font-size:11px;font-weight:900;display:block}.home-hero h2{color:#153842;margin-bottom:5px;font-size:clamp(22px,4vw,32px)}.home-hero p{color:var(--text-secondary);font-size:13px;line-height:1.5}.admin-session{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.admin-chip,.admin-login{color:#17655f;background:#effbf9;border:1px solid #bfeae6;border-radius:12px;align-items:center;min-height:38px;padding:8px 12px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.admin-logout{color:#b52a42;cursor:pointer;background:#fff4f6;border:1px solid #ffd2d9;border-radius:10px;min-height:34px;padding:7px 11px;font-size:11px;font-weight:800}.home-stats{margin-bottom:16px}.home-stats .stat-box{background:#fff;border:1px solid #e6efef;padding:16px 8px;box-shadow:0 5px 18px #27575f0d}.home-stats .stat-box.pending .stat-num{color:var(--warning)}.home-stats .stat-box.done .stat-num{color:var(--success)}.home-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;display:grid}.home-card{border-radius:var(--radius);min-height:155px;box-shadow:var(--shadow);text-align:left;cursor:pointer;background:#fff;border:1px solid #244f5b14;padding:18px 14px;transition:transform .18s,box-shadow .18s;position:relative}.home-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px #265b6524}.home-card:active{transform:scale(.985)}.home-card>.flow-code{color:#16746d;text-align:center;letter-spacing:.04em;background:#effbf9;border:1px solid #c9ece8;border-radius:999px;min-width:34px;padding:5px 8px;font-size:11px;font-weight:900;line-height:1;position:absolute;top:15px;right:14px}.home-card.coral>.flow-code{color:#b94b3b;background:#fff3f0;border-color:#ffd6ce}.home-card.sky>.flow-code{color:#2676a1;background:#f1faff;border-color:#cfe9f8}.home-card.violet>.flow-code{color:#6654b8;background:#f6f4ff;border-color:#ded8ff}.home-card.amber>.flow-code{color:#95691b;background:#fffaf0;border-color:#f5dfab}.home-card.green>.flow-code{color:#277a50;background:#f0fbf5;border-color:#c9ecd9}.home-icon{background:#effaf9;border-radius:15px;place-items:center;width:48px;height:48px;margin-bottom:16px;font-size:25px;display:grid}.home-card strong{color:#173842;margin-bottom:5px;font-size:16px;display:block}.home-card small{color:var(--text-secondary);font-size:11px;line-height:1.45;display:block}.home-card.coral .home-icon{background:#fff0ed}.home-card.teal .home-icon,.home-card.mint .home-icon{background:#e8faf7}.home-card.sky .home-icon{background:#edf8ff}.home-card.violet .home-icon{background:#f2efff}.home-card.amber .home-icon{background:#fff8e8}.home-card.green .home-icon{background:#eafbf2}.home-card.slate .home-icon{background:#eef2f5}.menu-arrow{color:#5aa7a1;font-size:25px;font-weight:800;line-height:1;position:absolute;bottom:13px;right:14px}.workflow-menu-screen{width:min(100%,980px);margin:0 auto}.workflow-menu-heading{border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;border:1px solid #244f5b12;margin-bottom:16px;padding:22px}.workflow-menu-heading .eyebrow{color:#4c9e99;letter-spacing:.14em;margin-bottom:6px;font-size:11px;font-weight:900;display:block}.workflow-menu-heading h2{color:#153842;margin:0 0 6px;font-size:clamp(22px,4vw,30px)}.workflow-menu-heading p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.55}.workflow-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.delivery-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:660px}.tab-content{max-width:820px;margin:0 auto;padding:20px 16px}.card{border:1px solid #244f5b12}.form-input,.form-select,.form-textarea{background:#fbfdfd;border-color:#dce9e9}.form-input:focus,.form-select:focus,.form-textarea:focus{box-shadow:0 0 0 4px #81d8d033}.btn-primary{color:#123f42;background:var(--primary);box-shadow:0 4px 14px #4bb2ab40}.btn-outline{color:#247c76;border-color:var(--primary-dark)}.btn-scan{color:#1b756f;background:#e8faf8}.unit-selector{grid-template-columns:1fr 1fr;gap:9px;display:grid}.unit-option{color:#46656b;cursor:pointer;background:#fbfdfd;border:2px solid #dce9e9;border-radius:12px;min-height:58px;padding:9px 12px;font-size:16px;font-weight:900}.unit-option small{color:var(--text-secondary);margin-top:2px;font-size:10px;font-weight:700;display:block}.unit-option.active{color:#155f5a;border-color:var(--primary-dark);background:#edfbf9;box-shadow:0 0 0 3px #81d8d026}.order-gate{z-index:20;border:2px solid #bfe9e5;position:sticky;top:82px;box-shadow:0 14px 32px #265b6521}.order-gate.confirmed{background:#f5fffa;border-color:#74d8b4}.order-gate-help{color:var(--text-secondary);margin:-6px 0 11px;font-size:12px;line-height:1.5}.order-gate-confirm{margin-top:10px}.new-order-confirm{border-top:1px dashed #c7dedc;padding:12px 0 4px}.new-order-confirm .order-gate-confirm{margin-top:0}.new-order-confirm .order-gate-help{text-align:center;margin:8px 0 0}.admin-order-actions{background:#f2fbfa;border:1px solid #bfe9e5;border-radius:12px;grid-template-columns:minmax(180px,1fr) auto auto auto;align-items:end;gap:9px;margin-top:14px;padding:13px;display:grid}.admin-order-actions .form-label{color:#216d68}.admin-rollback{color:#b44a1b;background:#fff8f2;border-color:#ffc39f}.worker-login-shell{flex-direction:column;min-height:100dvh;display:flex}.worker-login-card{text-align:center;justify-items:center;gap:16px;width:min(92vw,520px);margin:clamp(48px,12vh,120px) auto 32px;padding:clamp(28px,7vw,48px);display:grid}.worker-login-card h1,.worker-login-card h2,.worker-login-card p{margin:0}.worker-login-icon{font-size:2.75rem}.worker-login-button{width:100%;text-decoration:none}@media (width<=1050px){.home-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=899px){.home-grid,.workflow-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=699px){.app-shell{width:100%}.top-bar{min-height:0;padding:max(10px, env(safe-area-inset-top)) 12px 10px;flex-direction:column;align-items:stretch}.top-bar-main,.top-actions{justify-content:space-between;width:100%}.top-bar h1{font-size:17px}.top-actions{gap:7px}.language-toggle{flex:1;min-width:0}.language-toggle button{min-height:32px;padding-inline:6px;font-size:11px}.top-badge{max-width:34vw}.home-screen{padding:12px 10px 28px}.home-hero{flex-direction:column;align-items:stretch;padding:16px}.admin-session{justify-content:flex-start}.home-grid{gap:9px}.home-card{min-height:132px;padding:14px 12px}.home-card>.flow-code{padding:4px 7px;font-size:10px;top:12px;right:10px}.home-icon{border-radius:13px;width:42px;height:42px;margin-bottom:12px;font-size:22px}.home-card strong{font-size:14px;line-height:1.25}.home-card small{font-size:10px}.workflow-menu-heading{margin-bottom:10px;padding:16px}.workflow-menu-grid{gap:9px}.consignment-menu-stats{gap:6px;margin-top:10px}.consignment-menu-stats .shipment-stat-toggle{padding:11px 5px}.consignment-menu-stats .stat-label{line-height:1.3}.delivery-menu-grid{max-width:none}.tab-content{padding:12px 9px}.order-gate{top:105px}.admin-order-actions{grid-template-columns:1fr;align-items:stretch}.admin-order-actions .btn{width:100%}}.packing-report{color:#15372f;max-width:1160px;margin:0 auto;padding:28px 20px 60px;font-family:Arial,sans-serif}.packing-header,.packing-actions,.packing-filters,.packing-pagination{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.packing-header{border-bottom:1px solid #dce8e3;justify-content:space-between;padding-bottom:20px}.packing-header h1{margin:5px 0;font-size:30px}.packing-header p,.packing-updated,.packing-footnote{color:#4d675e;font-size:14px;line-height:1.7}.packing-report a{color:#07694b;text-decoration:underline}.packing-report button,.packing-report input{font:inherit;color:inherit;background:#fff;border:1px solid #8aaca0;border-radius:8px;min-height:44px;padding:10px 14px}.packing-report button{cursor:pointer}.packing-report button[aria-pressed=true],.packing-filters>button{color:#fff;background:#086848}.packing-report button:disabled{opacity:.5;cursor:default}.packing-report :focus-visible{outline-offset:3px;outline:3px solid #168cb8}.packing-rule{background:#eef7f2;border-radius:10px;padding:16px;line-height:1.7}.packing-category-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 0;display:grid}.packing-category-tabs button{font-weight:700}.packing-category-tabs button[aria-selected=true]{color:#fff;background:#086848}.packing-filters{align-items:flex-end;margin:20px 0}.packing-filters label{flex-direction:column;gap:8px;display:flex}.packing-metrics{grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0;display:grid}.packing-metrics-four{grid-template-columns:repeat(4,1fr)}.packing-card{background:#fff;border:1px solid #dce8e3;border-radius:12px;margin:16px 0;padding:20px}.packing-metrics .packing-card{margin:0}.packing-metrics strong{margin-top:10px;font-size:32px;display:block}.packing-warning{color:#634810;background:#fff7df;border-left:4px solid #d49619;padding:14px;line-height:1.7}.packing-table-wrap{border:1px solid #dce8e3;border-radius:10px;overflow-x:auto}.packing-report table{border-collapse:collapse;background:#fff;width:100%;min-width:540px}.packing-report caption{text-align:left;padding:14px;font-weight:700}.packing-report th,.packing-report td{text-align:left;border-bottom:1px solid #e2ece7;padding:14px}.packing-report thead{background:#f2f7f4}.packing-report small{color:#557269;margin-top:5px;font-size:12px;font-weight:400;display:block}.packing-report summary{cursor:pointer;line-height:1.6}.packing-report li{padding:5px 0;line-height:1.5}.packing-pagination{justify-content:flex-end;margin-top:16px}@media (width<=600px){.packing-report{padding:16px 12px 40px}.packing-header h1{font-size:26px}.packing-category-tabs{grid-template-columns:1fr}.packing-metrics{grid-template-columns:1fr;gap:8px}.packing-metrics .packing-card{justify-content:space-between;align-items:center;padding:14px;display:flex}.packing-metrics strong{margin:0;font-size:26px}.packing-card{padding:14px}}.ops-localized-root{background:linear-gradient(145deg,#e8f8f6 0%,#f7fbfb 48%,#eef6f8 100%);min-height:100dvh}.ops-language{z-index:5;background:#ffffffe6;border:1px solid #29696d21;border-radius:11px;grid-template-columns:1fr 1fr;padding:3px;display:inline-grid;position:fixed;top:10px;right:12px;box-shadow:0 5px 16px #1c535b14}.ops-language button{color:#426a6e;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:40px;padding:7px 10px;font-size:12px;font-weight:900}.ops-language button.active{color:#124f4b;background:#dff6f2}.ops-shell{color:#173842;background:0 0;min-height:100dvh;padding:clamp(62px,7vw,76px) clamp(18px,3vw,34px) clamp(18px,3vw,34px)}.ops-header{background:#ffffffe6;border:1px solid #29696d1a;border-radius:20px;justify-content:space-between;align-items:center;gap:20px;width:min(1180px,100%);margin:0 auto 18px;padding:20px 22px;display:flex;box-shadow:0 12px 34px #1c535b14}.ops-header h1{margin:4px 0 5px;font-size:clamp(23px,4vw,34px)}.ops-header p,.ops-overview p{color:#607980;margin:0;font-size:12px}.ops-eyebrow{color:#24877f;letter-spacing:.15em;font-size:10px;font-weight:900}.ops-header-actions,.ops-access-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.ops-primary-link,.ops-secondary-link,.ops-refresh,.ops-message button,.ops-message a{cursor:pointer;border-radius:11px;justify-content:center;align-items:center;min-height:40px;padding:9px 14px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex}.ops-primary-link,.ops-refresh{color:#103f42;background:#81d8d0;border:1px solid #49b8ae}.ops-secondary-link{color:#315f64;background:#f7fbfb;border:1px solid #c9dedf}.ops-refresh:disabled,.ops-message button:disabled{opacity:.6;cursor:progress}.ops-overview{background:#fff;border:1px solid;border-radius:18px;justify-content:space-between;align-items:center;gap:18px;width:min(1180px,100%);margin:0 auto 14px;padding:19px 22px;display:flex}.ops-overview-good{background:#f4fff9;border-color:#a8ddc5}.ops-overview-warning{background:#fffbef;border-color:#edd39a}.ops-overview-bad{background:#fff6f7;border-color:#f0b5ba}.ops-overview-label{color:#52767b;font-size:11px;font-weight:800}.ops-overview h2{margin:3px 0 5px;font-size:23px}.ops-coverage-note{font-weight:700;color:#875d11!important;margin-top:5px!important}.ops-status{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:29px;padding:5px 9px;font-size:10px;font-weight:900;display:inline-flex}.ops-status-good{color:#12633f;background:#d9f5e6}.ops-status-warning{color:#8a5a08;background:#fff0c2}.ops-status-bad{color:#a22f3c;background:#ffe0e4}.ops-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;width:min(1180px,100%);margin:0 auto;display:grid}.ops-card,.ops-alerts{background:#fff;border:1px solid #2b656c1a;border-radius:17px;padding:18px;box-shadow:0 8px 24px #234f560f}.ops-card-heading,.ops-card-status,.ops-metric{justify-content:space-between;align-items:center;gap:10px;display:flex}.ops-card-heading{margin-bottom:13px}.ops-card-heading h2{margin:0;font-size:16px}.ops-card-heading>span{color:#789094;text-transform:uppercase;font-size:10px;font-weight:800}.ops-card-status{border-bottom:1px solid #edf2f2;min-height:38px;margin-bottom:5px;padding-bottom:8px;font-size:12px;font-weight:800}.ops-card-note{color:#725419;background:#fff8df;border-radius:8px;margin:0 0 8px;padding:8px 9px;font-size:10px;font-weight:700;line-height:1.45}.ops-metric{border-bottom:1px solid #edf2f2;min-height:37px}.ops-metric:last-child{border-bottom:0}.ops-metric>span{color:#617a7f;font-size:11px}.ops-metric strong{text-align:right;overflow-wrap:anywhere;margin-left:auto;font-size:12px}.ops-metric small{color:#789094;text-align:right;max-width:44%;font-size:9px}.ops-dependency-list{gap:5px;display:grid}.ops-alerts{width:min(1180px,100%);margin:14px auto 0}.ops-alerts ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.ops-alerts li{background:#fbfdfd;border-left:4px solid;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.ops-alerts li.warning{border-color:#e6b84b}.ops-alerts li.info{background:#f6fafb;border-color:#6f9ca2}.ops-alerts li.critical{background:#fff7f8;border-color:#de5967}.ops-alerts li strong{font-size:12px}.ops-alerts li small{color:#6f8589;font-size:10px;font-weight:800}.ops-alerts-empty{color:#216b51;background:#edfbf4;border-radius:10px;margin:0;padding:12px;font-size:12px}.ops-message{text-align:center;background:#fff;border:1px solid #c8dddd;border-radius:18px;justify-items:center;gap:13px;width:min(620px,100%);margin:10vh auto;padding:32px;display:grid}.ops-message a,.ops-message button{color:#103f42;background:#81d8d0;border:1px solid #49b8ae;text-decoration:none}.ops-access-shell{place-items:center;display:grid}.ops-access-card{text-align:center;background:#fff;border:1px solid #c8dddd;border-radius:20px;justify-items:center;gap:13px;width:min(520px,100%);padding:clamp(28px,6vw,46px);display:grid;box-shadow:0 14px 38px #234f561a}.ops-access-card h1,.ops-access-card p{margin:0}.ops-access-card p{color:#617a7f;font-size:12px}.ops-access-icon{font-size:40px}.ops-footer{color:#6d858a;text-align:center;width:min(1180px,100%);margin:15px auto 0;font-size:10px}@media (width<=899px){.ops-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=699px){.ops-language{width:calc(100% - 20px);margin:10px 10px 0;position:static}.ops-shell{padding:10px}.ops-header,.ops-overview{flex-direction:column;align-items:stretch;padding:16px}.ops-header-actions,.ops-access-actions{flex-direction:column;align-items:stretch}.ops-header-actions>*,.ops-access-actions>*{width:100%}.ops-grid{grid-template-columns:1fr;gap:9px}.ops-card,.ops-alerts{padding:14px}}
