@layer reset,base,layout,components,utilities;:root{--ink-950: #0d1117;--ink-900: #141a22;--ink-850: #1b222c;--ink-800: #232c37;--ink-700: #2f3a47;--ink-600: #3d4a59;--ink-500: #56636f;--graphite-900: #1d242c;--graphite-700: #3a444f;--graphite-500: #6b7684;--graphite-400: #8b95a2;--graphite-300: #a9b2bd;--paper-0: #e9edf1;--paper-1: #ffffff;--paper-2: #f5f7f9;--paper-3: #eceff3;--rule: #d8dee5;--rule-soft: #e7ebef;--rule-strong: #c2cad3;--amber-800: #7d4d04;--amber-700: #9a5f05;--amber-600: #c47a08;--amber-500: #e8930c;--amber-400: #f5a623;--amber-100: #fdf1da;--amber-050: #fff9ee;--ok-700: #116b3d;--ok-600: #1a8f52;--ok-100: #e0f3e9;--warn-700: #8a5605;--warn-600: #b97206;--warn-100: #fbeed4;--stop-700: #99261f;--stop-600: #c5322b;--stop-100: #fae4e2;--info-700: #1f4aa0;--info-600: #2a5fc4;--info-100: #e4ecfb;--bg-page: var(--paper-0);--bg-surface: var(--paper-1);--bg-recessed: var(--paper-2);--bg-sunken: var(--paper-3);--bg-chrome: var(--ink-900);--bg-chrome-raised: var(--ink-800);--text-strong: var(--graphite-900);--text-body: var(--graphite-700);--text-muted: var(--graphite-500);--text-faint: var(--graphite-400);--text-on-chrome: #e8edf2;--text-on-chrome-muted: #8d99a6;--border: var(--rule);--border-strong: var(--rule-strong);--border-soft: var(--rule-soft);--border-action: var(--amber-600);--accent: var(--amber-600);--accent-hover: var(--amber-500);--accent-press: var(--amber-700);--accent-ink: #ffffff;--accent-wash: var(--amber-100);--success: var(--ok-600);--warning: var(--warn-600);--error: var(--stop-600);--info: var(--info-600);--bg-primary: var(--paper-1);--bg-secondary: var(--paper-2);--bg-tertiary: var(--paper-3);--text-main: var(--graphite-900);--card-shadow: var(--sh-2);--header-height: var(--rail-h);--font-display: "IBM Plex Condensed", "Bahnschrift", "DIN Alternate", "Arial Narrow", "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif;--font-body: "IBM Plex Sans", "Segoe UI", system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-mono: "IBM Plex Mono", "Cascadia Mono", Consolas, ui-monospace, SFMono-Regular, Menlo, monospace;--fs-2xs: .6875rem;--fs-xs: .75rem;--fs-sm: .8125rem;--fs-base: .875rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.375rem;--fs-2xl: 1.75rem;--lh-tight: 1.2;--lh-snug: 1.35;--lh-normal: 1.55;--track-tight: -.01em;--track-normal: 0;--track-wide: .04em;--track-wider: .09em;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--r-xs: 3px;--r-sm: 5px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--r-pill: 999px;--sh-1: 0 1px 2px rgba(16, 20, 26, .06), 0 1px 1px rgba(16, 20, 26, .04);--sh-2: 0 2px 4px rgba(16, 20, 26, .05), 0 8px 20px -8px rgba(16, 20, 26, .14);--sh-3: 0 16px 36px -14px rgba(16, 20, 26, .3), 0 6px 12px -6px rgba(16, 20, 26, .14);--sh-rail: 0 1px 0 rgba(255, 255, 255, .04), 0 8px 24px -12px rgba(13, 17, 23, .5);--sh-inset: inset 0 1px 0 rgba(255, 255, 255, .6);--ease-out: cubic-bezier(.22, .61, .36, 1);--ease-snap: cubic-bezier(.2, .9, .25, 1);--dur-1: .12s;--dur-2: .18s;--dur-3: .28s;--rail-h: 56px;--content-max: 1600px;--console-max: 760px;--focus-ring: 0 0 0 3px rgba(232, 147, 12, .28);--focus-ring-chrome: 0 0 0 3px rgba(245, 166, 35, .4)}@layer reset{*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body,h1,h2,h3,h4,h5,p,figure,blockquote,dl,dd{margin:0}ul,ol{margin:0;padding:0;list-style:none}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{background:none;border:none;padding:0}table{border-collapse:collapse;border-spacing:0}}@layer base{body{margin:0;min-height:100vh;background:var(--bg-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4{color:var(--text-strong);font-weight:600;line-height:var(--lh-tight);letter-spacing:var(--track-tight)}:focus-visible{outline:2px solid var(--amber-500);outline-offset:2px;border-radius:var(--r-xs)}:focus:not(:focus-visible){outline:none}input,select,textarea{width:100%;padding:.625rem .75rem;background:var(--paper-1);border:1px solid var(--border-strong);border-radius:var(--r-sm);color:var(--text-strong);font-family:var(--font-body);font-size:var(--fs-md);line-height:1.4;transition:border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}input::placeholder,textarea::placeholder{color:var(--graphite-300)}input:hover:not(:disabled),select:hover:not(:disabled){border-color:var(--graphite-300)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--amber-500);box-shadow:var(--focus-ring)}input:disabled,select:disabled,textarea:disabled{background:var(--paper-3);color:var(--text-faint);cursor:not-allowed}select{cursor:pointer;appearance:none;padding-right:2rem;background-image:linear-gradient(45deg,transparent 50%,var(--graphite-500) 50%),linear-gradient(135deg,var(--graphite-500) 50%,transparent 50%);background-position:calc(100% - 15px) calc(50% + 1px),calc(100% - 10px) calc(50% + 1px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}code,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}::selection{background:var(--amber-100);color:var(--amber-800)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--paper-2)}::-webkit-scrollbar-thumb{background:var(--rule-strong);border:2px solid var(--paper-2);border-radius:var(--r-pill)}::-webkit-scrollbar-thumb:hover{background:var(--graphite-300)}}@layer layout{.container{width:100%;max-width:var(--content-max);margin:0 auto;padding:var(--sp-6) var(--sp-6) var(--sp-12)}.container--flush{max-width:none;padding:0}.app-rail{position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:var(--sp-5);height:var(--rail-h);padding:0 var(--sp-5);background:var(--bg-chrome);border-bottom:1px solid var(--ink-700);box-shadow:var(--sh-rail)}.brand{display:flex;align-items:center;gap:var(--sp-3);flex-shrink:0}.brand-mark{display:flex;align-items:flex-end;gap:2px;height:22px;padding:0 2px}.brand-mark i{display:block;width:2px;background:var(--amber-400);border-radius:1px}.brand-mark i:nth-child(1){height:100%}.brand-mark i:nth-child(2){height:62%}.brand-mark i:nth-child(3){height:86%}.brand-mark i:nth-child(4){height:44%}.brand-mark i:nth-child(5){height:100%}.brand-mark i:nth-child(6){height:70%}.brand-mark i:nth-child(7){height:30%}.brand-mark i:nth-child(8){height:92%}.brand-text{display:flex;flex-direction:column;line-height:1}.brand-name{font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-on-chrome)}.brand-sub{font-size:var(--fs-2xs);letter-spacing:var(--track-wider);text-transform:uppercase;color:var(--text-on-chrome-muted);margin-top:2px}.rail-nav{display:flex;align-items:center;gap:2px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.rail-nav::-webkit-scrollbar{display:none}.nav-link{position:relative;display:inline-flex;align-items:center;height:34px;padding:0 var(--sp-3);border-radius:var(--r-sm);color:var(--text-on-chrome-muted);font-family:var(--font-display);font-size:.9rem;font-weight:500;letter-spacing:var(--track-wide);text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.nav-link:hover{color:var(--text-on-chrome);background:var(--ink-800)}.nav-link.active{color:var(--amber-400);background:#f5a6231f}.nav-link.active:after{content:"";position:absolute;left:var(--sp-3);right:var(--sp-3);bottom:-11px;height:2px;background:var(--amber-500);border-radius:2px 2px 0 0}.rail-user{display:flex;align-items:center;gap:var(--sp-3);flex-shrink:0}.operator{display:flex;align-items:center;gap:var(--sp-2);padding:4px var(--sp-3) 4px 4px;background:var(--ink-800);border:1px solid var(--ink-700);border-radius:var(--r-pill)}.operator-avatar{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--amber-500);color:var(--ink-950);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:700}.operator-meta{display:flex;flex-direction:column;line-height:1.2}.operator-name{font-size:var(--fs-xs);font-weight:600;color:var(--text-on-chrome)}.operator-role{font-size:var(--fs-2xs);letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-on-chrome-muted)}.btn-icon{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--border-action);color:var(--text-on-chrome-muted);transition:all var(--dur-1) var(--ease-out)}.btn-icon:hover{color:var(--stop-600);border-color:var(--stop-600);background:#c5322b1f}.main-content{display:grid;grid-template-columns:1fr;gap:var(--sp-5);align-items:start}.main-content>*{min-width:0}@media(min-width:1180px){.main-content:not(.full-width){grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}}.main-content.full-width{grid-template-columns:1fr}}@layer components{.card{padding:var(--sp-5);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.section-title{display:flex;align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-4);font-size:var(--fs-lg);font-weight:600;color:var(--text-strong)}.eyebrow{font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wider);text-transform:uppercase;color:var(--text-faint)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);height:38px;padding:0 var(--sp-4);border:1px solid var(--border-action);border-radius:var(--r-sm);font-family:var(--font-body);font-size:var(--fs-base);font-weight:600;letter-spacing:var(--track-normal);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:var(--sh-1)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:active:not(:disabled){background:var(--accent-press)}.btn-secondary{background:var(--paper-1);color:var(--text-body)}.btn-secondary:hover:not(:disabled){background:var(--amber-050);border-color:var(--amber-500);color:var(--text-strong)}.btn-ghost{background:transparent;color:var(--text-muted)}.btn-ghost:hover:not(:disabled){background:var(--paper-3);color:var(--text-strong)}.btn-danger{background:var(--stop-600);color:#fff}.btn-danger:hover:not(:disabled){background:var(--stop-700)}.btn-success{background:var(--ok-600);color:#fff}.btn-success:hover:not(:disabled){background:var(--ok-700)}.btn-export,.btn-export-alt{display:inline-flex;align-items:center;justify-content:center;max-width:100%;padding:1rem 3rem;border:0;border-radius:var(--r-md);font-family:var(--font-body);font-size:1.25rem;font-weight:700;line-height:1.2;letter-spacing:.05em;text-align:center;text-transform:uppercase;color:#fff;cursor:pointer;transition:background-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}.btn-export{background:#2ecc71;box-shadow:0 4px 6px #2ecc7147}.btn-export:hover:not(:disabled){background:#27ae60;box-shadow:0 10px 20px -3px #2ecc7180;transform:translateY(-2px)}.btn-export-alt{background:#0284c7;box-shadow:0 4px 6px #0284c747}.btn-export-alt:hover:not(:disabled){background:#0369a1;box-shadow:0 10px 20px -3px #0284c780;transform:translateY(-2px)}.btn-export:disabled,.btn-export-alt:disabled{background:var(--paper-3);color:var(--text-faint);cursor:not-allowed;box-shadow:none;transform:none}@media(max-width:768px){.btn-export,.btn-export-alt{width:100%;padding:.75rem 1.25rem;font-size:1rem}}.btn-save-all{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);height:42px;padding:0 var(--sp-6);border:1px solid var(--border-action);border-radius:var(--r-sm);font-family:var(--font-body);font-size:var(--fs-base);font-weight:600;letter-spacing:var(--track-normal);text-transform:none;cursor:pointer;background:var(--accent);color:var(--accent-ink);box-shadow:var(--sh-1);transition:background-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.btn-save-all:hover:not(:disabled){background:var(--accent-hover)}.btn-save-all:disabled{background:var(--paper-3);color:var(--text-faint);cursor:not-allowed;box-shadow:none}.btn-scan-camera,.btn-unlock,.btn-clear-pending,.btn-confirm,.btn-clear-input,.btn-unbind,.btn-toggle-history{display:inline-grid;place-items:center;width:42px;height:42px;flex:0 0 auto;padding:0;border:1px solid var(--border-action);border-radius:var(--r-sm);background:var(--paper-1);color:var(--text-muted);font-size:1rem;line-height:1;cursor:pointer;transition:all var(--dur-1) var(--ease-out)}.btn-scan-camera:hover:not(:disabled){border-color:var(--amber-500);background:var(--amber-050);color:var(--amber-700)}.btn-clear-pending:hover:not(:disabled),.btn-clear-input:hover:not(:disabled){border-color:var(--stop-600);background:var(--stop-100);color:var(--stop-700)}.btn-confirm:hover:not(:disabled){border-color:var(--ok-600);background:var(--ok-100);color:var(--ok-700)}.btn-unlock:hover:not(:disabled){border-color:var(--info-600);background:var(--info-100);color:var(--info-700)}.btn-unbind:hover:not(:disabled){border-color:var(--amber-500);background:var(--amber-050);color:var(--text-strong)}.btn-toggle-history{width:auto;padding:0 var(--sp-3);font-size:var(--fs-sm);font-weight:600}.check-icon{display:inline-grid;place-items:center;width:42px;height:42px;font-size:1.1rem}.console{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1);overflow:hidden}.console-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--paper-2);border-bottom:1px solid var(--border-soft)}.console-topline{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);padding-bottom:var(--sp-2);border-bottom:1px solid var(--border-soft)}.scan-block{display:flex;flex-direction:column}.order-panel{display:flex;flex-direction:column;gap:var(--sp-4)}.console-body{padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-4)}.scan-field{position:relative;display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--paper-1);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--sh-1);transition:border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.scan-field:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--amber-500);border-radius:var(--r-md) 0 0 var(--r-md);transition:width var(--dur-2) var(--ease-snap)}.scan-field:focus-within{border-color:var(--amber-500);box-shadow:var(--sh-1),var(--focus-ring)}.scan-field:focus-within:before{width:6px}.scan-field input{flex:1;min-width:0;height:44px;padding:0;border:none;background:transparent;font-family:var(--font-mono);font-size:1.05rem;font-weight:600;letter-spacing:.02em}.scan-field input:focus{box-shadow:none;border:none}.scan-field input::placeholder{font-family:var(--font-body);font-weight:400;letter-spacing:normal}.scan-field[data-pulse=odd]:after,.scan-field[data-pulse=even]:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(232,147,12,.22),transparent);pointer-events:none}.scan-field[data-pulse=odd]:after{animation:scan-sweep .52s var(--ease-out)}.scan-field[data-pulse=even]:after{animation:scan-sweep-alt .52s var(--ease-out)}@keyframes scan-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes scan-sweep-alt{0%{transform:translate(-100%)}to{transform:translate(100%)}}.scan-hint{display:flex;align-items:baseline;gap:var(--sp-2);margin-top:var(--sp-2);font-size:var(--fs-xs);color:var(--text-faint)}.scan-hint kbd{font-family:var(--font-mono);font-size:var(--fs-2xs);padding:1px 5px;border:1px solid var(--rule);border-bottom-width:2px;border-radius:var(--r-xs);background:var(--paper-2);color:var(--text-muted)}.manifest-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1px;background:var(--border-soft);border:1px solid var(--border-soft);border-radius:var(--r-md);overflow:hidden}.manifest-cell{display:flex;flex-direction:column;gap:3px;padding:var(--sp-3);background:var(--paper-2)}.manifest-cell dt{font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wider);text-transform:uppercase;color:var(--text-faint)}.manifest-cell dd{margin:0;font-family:var(--font-mono);font-size:var(--fs-base);font-weight:600;color:var(--text-strong);overflow-wrap:anywhere}.bind-list{border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}.bind-row{display:grid;grid-template-columns:4px minmax(0,1fr) auto;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4) var(--sp-3) 0;background:var(--paper-1);border-bottom:1px solid var(--border-soft);transition:background-color var(--dur-1) var(--ease-out)}.bind-row:last-child{border-bottom:none}.bind-row:hover{background:var(--paper-2)}.bind-rail{align-self:stretch;background:var(--rule-strong)}.bind-row[data-state=saved] .bind-rail{background:var(--ok-600)}.bind-row[data-state=pending] .bind-rail{background:var(--warn-600)}.bind-row[data-state=ready] .bind-rail{background:var(--amber-500)}.bind-row[data-state=locked] .bind-rail{background:var(--rule-strong)}.bind-row[data-state=error] .bind-rail{background:var(--stop-600)}.bind-row[data-state=saved]{background:var(--ok-100)}.bind-row[data-state=saved]:hover{background:#d5eee1}.bind-row[data-state=pending]{background:var(--warn-100)}.bind-row[data-state=pending]:hover{background:#f8e7c8}.bind-row[data-state=locked]{background:var(--paper-2)}.bind-row[data-state=locked]:hover{background:var(--paper-3)}.bind-main{display:flex;flex-direction:column;gap:3px;min-width:0}.bind-title{display:flex;align-items:baseline;gap:var(--sp-2);font-size:var(--fs-base);font-weight:600;color:var(--text-strong)}.bind-idx{font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:600;color:var(--text-faint)}.bind-meta{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted)}.bind-tag{font-family:var(--font-body);font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase}.bind-tag--required{color:var(--ok-700)}.bind-tag--optional{color:var(--text-faint)}.bind-action{display:flex;align-items:center;gap:var(--sp-2)}.bind-action input{width:210px;height:42px;font-family:var(--font-mono);font-size:var(--fs-base);font-weight:600;text-align:center}.bind-action input.filled-input{background:var(--paper-1);border-color:var(--ok-600);color:var(--ok-700)}.bind-action input.pending-input{background:var(--paper-1);border-color:var(--warn-600);color:var(--warn-700)}.bind-action input.locked-input{background:var(--paper-3);border-color:var(--border);color:var(--text-faint);cursor:not-allowed}.state-chip{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 var(--sp-2);border-radius:var(--r-xs);font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;white-space:nowrap}.state-chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.state-chip--saved{background:var(--ok-100);color:var(--ok-700)}.state-chip--pending{background:var(--warn-100);color:var(--warn-700)}.state-chip--ready{background:var(--amber-100);color:var(--amber-700)}.state-chip--locked{background:var(--paper-3);color:var(--graphite-500)}.progress-section{display:flex;flex-direction:column;gap:var(--sp-2)}.progress-section h4{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);margin:0;font-size:var(--fs-xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-muted)}.progress-section h4 b{font-family:var(--font-mono);font-size:var(--fs-base);color:var(--text-strong)}.progress-bar{height:6px;background:var(--paper-3);border-radius:var(--r-pill);overflow:hidden}.fill{height:100%;background:var(--ok-600);border-radius:var(--r-pill);transition:width var(--dur-3) var(--ease-out)}.console-actions{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--paper-2);border-top:1px solid var(--border)}.console-actions-note{font-size:var(--fs-sm);color:var(--text-muted)}.console-actions-note b{font-family:var(--font-mono);color:var(--text-strong)}.filter-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--sp-3) var(--sp-4);padding:var(--sp-4);background:var(--paper-2);border:1px solid var(--border-soft);border-radius:var(--r-md)}.filter-field{display:flex;flex-direction:column;gap:5px;min-width:0}.filter-field>label{font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-faint)}.filter-field input,.filter-field select{height:36px;padding:0 var(--sp-2);font-size:var(--fs-sm)}.search-input{max-width:200px}.table-wrapper{overflow-x:auto;background:var(--paper-1);border:1px solid var(--border);border-radius:var(--r-md)}table{width:100%;font-size:var(--fs-sm)}th,td{padding:var(--sp-3) var(--sp-3);text-align:left;border-bottom:1px solid var(--border-soft)}th{position:sticky;top:0;z-index:1;background:var(--paper-3);color:var(--text-muted);font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;white-space:nowrap}td{color:var(--text-body)}td.mono,td .mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}tbody tr{transition:background-color var(--dur-1) var(--ease-out)}tbody tr:hover{background:var(--paper-2)}tbody tr:last-child td{border-bottom:none}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:var(--sp-2);margin-top:var(--sp-4)}.pagination-controls button{min-width:34px;height:34px;padding:0 var(--sp-2);border:1px solid var(--border-action);border-radius:var(--r-sm);background:var(--paper-1);color:var(--text-body);font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:all var(--dur-1) var(--ease-out)}.pagination-controls button:hover:not(:disabled){border-color:var(--amber-500);color:var(--amber-700)}.pagination-controls button:disabled{opacity:.4;cursor:not-allowed}.pagination-controls button.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.scan-section{display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-5);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.input-group{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.input-group>label{font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-faint)}.input-with-btn{display:flex;gap:var(--sp-2);align-items:center}.input-with-btn input{flex:1;min-width:0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--sp-3) var(--sp-4);padding:var(--sp-4);background:var(--paper-2);border:1px solid var(--border-soft);border-radius:var(--r-md)}.info-grid p{display:flex;flex-direction:column;gap:3px;margin:0;font-family:var(--font-mono);font-size:var(--fs-base);font-weight:600;color:var(--text-strong)}.info-grid p strong{font-family:var(--font-body);font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-faint)}.history-section{padding:var(--sp-5);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.history-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--sp-3);margin-bottom:var(--sp-4)}.history-header h3{margin:0;font-size:var(--fs-lg);font-weight:600;color:var(--text-strong)}.actions{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap}.filter-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--sp-3) var(--sp-4);align-items:end;padding:var(--sp-4);margin-bottom:var(--sp-4);background:var(--paper-2);border:1px solid var(--border-soft);border-radius:var(--r-md)}.filter-group{display:flex;flex-direction:column;gap:5px;min-width:0}.filter-group>label{font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-faint)}.message{position:fixed;top:calc(var(--rail-h) + var(--sp-3));left:50%;transform:translate(-50%);z-index:2000;display:flex;align-items:center;gap:var(--sp-3);min-width:280px;max-width:min(90vw,720px);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);border:1px solid transparent;box-shadow:var(--sh-3);font-size:var(--fs-base);font-weight:500;white-space:pre-wrap;text-align:left;cursor:pointer;animation:banner-in var(--dur-3) var(--ease-out)}@keyframes banner-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.message.success{background:var(--ok-700);border-color:var(--ok-600);color:#eafaf1}.message.error{background:var(--stop-700);border-color:var(--stop-600);color:#fdeceb}.message:before{content:"";width:3px;align-self:stretch;border-radius:2px;background:currentColor;opacity:.55}.message.error:after{content:"点击关闭 / Click to dismiss";font-size:var(--fs-2xs);letter-spacing:var(--track-wide);text-transform:uppercase;opacity:.7;margin-left:auto;padding-left:var(--sp-3);white-space:nowrap}.scanner-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--sp-4);background:#0d1117b8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in var(--dur-2) var(--ease-out)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.scanner-content{width:100%;max-width:520px;padding:var(--sp-5);background:var(--paper-1);border-radius:var(--r-lg);box-shadow:var(--sh-3);text-align:center;color:var(--text-strong)}.scanner-content h3{margin:0 0 var(--sp-4);font-size:var(--fs-lg)}.btn-close{margin-top:var(--sp-4);height:38px;padding:0 var(--sp-5);background:var(--paper-3);color:var(--text-body);border:1px solid var(--border-action);border-radius:var(--r-sm);font-weight:600;cursor:pointer;transition:all var(--dur-1) var(--ease-out)}.btn-close:hover{background:var(--amber-050);color:var(--text-strong)}.empty-warning,.no-data{padding:var(--sp-8) var(--sp-4);text-align:center;color:var(--text-muted);font-style:normal}.empty-warning strong{display:block;margin-bottom:var(--sp-2);color:var(--text-strong);font-size:var(--fs-md)}.form-group{margin-bottom:var(--sp-4)}.form-group label{display:block;margin-bottom:var(--sp-2);font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-muted)}.form-group input{height:44px}.login-btn{width:100%;height:46px;margin-top:var(--sp-2);background:var(--accent);color:var(--accent-ink);border:1px solid var(--border-action);border-radius:var(--r-sm);font-size:var(--fs-md);font-weight:600;cursor:pointer;transition:background-color var(--dur-1) var(--ease-out)}.login-btn:hover:not(:disabled){background:var(--accent-hover)}.login-btn:disabled{opacity:.55;cursor:not-allowed}.error-msg{display:flex;align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3);margin-bottom:var(--sp-4);background:var(--stop-100);border:1px solid var(--stop-600);border-radius:var(--r-sm);color:var(--stop-700);font-size:var(--fs-sm);text-align:left}.page-message{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-4);border:1px solid transparent;border-radius:var(--r-md);font-size:var(--fs-base);font-weight:500}.page-message.info{background:var(--info-100);border-color:var(--info-600);color:var(--info-700)}.page-message.success{background:var(--ok-100);border-color:var(--ok-600);color:var(--ok-700)}.page-message.error{background:var(--stop-100);border-color:var(--stop-600);color:var(--stop-700)}.dismiss-btn{font-size:1.25rem;line-height:1;color:inherit;opacity:.6;cursor:pointer}.dismiss-btn:hover{opacity:1}.tabs{display:flex;gap:2px;padding:3px;margin-bottom:var(--sp-4);background:var(--paper-3);border-radius:var(--r-md);width:fit-content;max-width:100%;overflow-x:auto}.tabs button{height:32px;padding:0 var(--sp-4);border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);white-space:nowrap;cursor:pointer;transition:all var(--dur-1) var(--ease-out)}.tabs button:hover{color:var(--text-strong)}.tabs button.active{background:var(--paper-1);color:var(--text-strong);box-shadow:var(--sh-1)}.badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 var(--sp-2);border-radius:var(--r-xs);font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase}.loading-inline{padding:var(--sp-10) var(--sp-4);text-align:center;color:var(--text-muted);font-size:var(--fs-base)}.no-access{max-width:560px;margin:var(--sp-12) auto;padding:var(--sp-8);text-align:center;background:var(--paper-1);border:1px solid var(--border);border-radius:var(--r-lg)}.no-access h2{margin-bottom:var(--sp-3);font-size:var(--fs-xl)}.no-access p{color:var(--text-muted);line-height:1.7}}@layer utilities{.u-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.u-muted{color:var(--text-muted)}.u-faint{color:var(--text-faint)}.u-strong{color:var(--text-strong)}.u-right{text-align:right}.u-center{text-align:center}.u-nowrap{white-space:nowrap}.u-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.u-gap-2{gap:var(--sp-2)}.u-row{display:flex;align-items:center}.u-wrap{flex-wrap:wrap}.u-grow{flex:1}.u-mt-4{margin-top:var(--sp-4)}.u-mt-6{margin-top:var(--sp-6)}.u-mb-4{margin-bottom:var(--sp-4)}.hidden{display:none!important}}@media(max-width:1024px){.main-content:not(.full-width){grid-template-columns:1fr}}@media(max-width:768px){.container{padding:var(--sp-4) var(--sp-3) var(--sp-10)}.app-rail{height:auto;flex-wrap:wrap;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3)}.rail-nav{order:3;width:100%;flex-basis:100%}.nav-link.active:after{bottom:0}.operator-meta{display:none}.console-body{padding:var(--sp-3)}.bind-row{grid-template-columns:4px minmax(0,1fr);row-gap:var(--sp-2)}.bind-action{grid-column:2;width:100%}.bind-action input{flex:1;width:auto;min-width:0}.message{left:var(--sp-3);right:var(--sp-3);transform:none;min-width:0}@keyframes banner-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.filter-panel{grid-template-columns:1fr}.console-actions{flex-direction:column;align-items:stretch;text-align:center}.console-actions .btn{width:100%}table{min-width:640px}.table-wrapper{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@layer components{.filter-compact{width:100%;height:36px;padding:0 var(--sp-2);font-size:var(--fs-sm)}.filter-compact--date{min-width:150px}.return-history-table,.records-table{table-layout:fixed;font-size:var(--fs-2xs);line-height:1.35}.return-history-table th,.records-table th{white-space:normal}.return-history-table th,.return-history-table td,.records-table th,.records-table td{padding:var(--sp-2);vertical-align:top;overflow-wrap:anywhere}.return-history-table .col-time{width:8.5%}.return-history-table .col-order{width:11%}.return-history-table .col-customer{width:8%}.return-history-table .col-tracking,.return-history-table .col-return-tracking{width:11%}.return-history-table .col-mac{width:10%}.return-history-table .col-sku{width:12%}.return-history-table .col-operator{width:8%}.return-history-table .col-condition{width:11%}.records-table .col-time{width:9%}.records-table .col-order{width:12%}.records-table .col-customer{width:8%}.records-table .col-ref{width:6%}.records-table .col-tracking{width:12%}.records-table .col-sku{width:13%}.records-table .col-mac{width:11%}.records-table .col-operator{width:8%}.records-table .col-condition{width:12%}.actions>.filter-compact{flex:1 1 150px;width:auto;max-width:220px}.req-mark{color:var(--stop-600);font-weight:700;margin-left:2px}.modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--sp-4);background:#0d1117b8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in var(--dur-2) var(--ease-out)}.modal-card{width:100%;max-width:420px;padding:var(--sp-5);background:var(--paper-1);border-radius:var(--r-lg);box-shadow:var(--sh-3)}.modal-card h3{margin:0 0 var(--sp-2);font-size:var(--fs-lg);font-weight:600;color:var(--text-strong)}.modal-card p{margin:0 0 var(--sp-4);color:var(--text-muted);font-size:var(--fs-sm);line-height:1.55}.modal-actions{display:flex;gap:var(--sp-2);justify-content:flex-end;margin-top:var(--sp-5)}.note-inline{display:block;margin-top:var(--sp-1);font-family:var(--font-body);font-size:var(--fs-sm);font-weight:500;color:var(--text-muted)}.note-inline--warn{color:var(--stop-700);font-weight:600}.note-inline--alert{color:var(--stop-600);font-weight:700}.note-muted{font-size:var(--fs-sm);color:var(--text-muted)}.test-list{display:flex;flex-direction:column;gap:var(--sp-2);margin:var(--sp-3) 0 0;padding:var(--sp-3);background:var(--paper-2);border:1px solid var(--border-soft);border-radius:var(--r-md);font-family:var(--font-mono);font-size:var(--fs-sm)}.test-log{display:flex;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--paper-1);border:1px solid var(--border-soft);border-radius:var(--r-sm)}.test-log--warn{background:var(--warn-100);border-color:var(--warn-600);color:var(--warn-700)}.test-log--changed{background:var(--amber-050);border-color:var(--amber-100);color:var(--amber-800)}.test-log--error{background:var(--stop-100);border-color:var(--stop-600);color:var(--stop-700)}}@layer components{.login-container{display:grid;grid-template-columns:1fr;min-height:100vh;background:var(--paper-0)}@media(min-width:900px){.login-container{grid-template-columns:1.05fr 1fr}}.login-aside{display:none;flex-direction:column;justify-content:space-between;gap:var(--sp-10);padding:var(--sp-10) var(--sp-8);background:var(--bg-chrome);color:var(--text-on-chrome)}@media(min-width:900px){.login-aside{display:flex}}.login-aside .brand{margin-bottom:var(--sp-8)}.login-aside-title{font-family:var(--font-display);font-size:2.25rem;font-weight:600;line-height:1.15;letter-spacing:var(--track-tight);text-transform:uppercase;color:var(--text-on-chrome)}.login-aside-lede{margin-top:var(--sp-4);max-width:36ch;font-size:var(--fs-md);line-height:1.6;color:var(--text-on-chrome-muted)}.login-aside-steps{display:flex;flex-direction:column;gap:var(--sp-5)}.login-step{display:grid;grid-template-columns:28px 1fr;gap:var(--sp-3);align-items:start}.login-step-num{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--ink-600);background:var(--ink-800);color:var(--amber-400);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:700}.login-step-text{font-size:var(--fs-sm);line-height:1.55;color:var(--text-on-chrome-muted)}.login-step-text b{display:block;margin-bottom:2px;color:var(--text-on-chrome);font-size:var(--fs-base);font-weight:600}.login-main{display:flex;align-items:center;justify-content:center;padding:var(--sp-8) var(--sp-5)}.login-box{width:100%;max-width:380px}.login-box h2{margin:0 0 var(--sp-1);font-size:var(--fs-xl);font-weight:600;color:var(--text-strong)}.login-sub{margin-bottom:var(--sp-6);font-size:var(--fs-sm);color:var(--text-muted)}}@layer components{.admin-container{display:flex;flex-direction:column;gap:var(--sp-5)}.admin-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.admin-header h2{margin:0;font-size:var(--fs-xl);font-weight:600;color:var(--text-strong)}.admin-controls{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap}.admin-controls span{font-size:var(--fs-sm);color:var(--text-muted)}.logout-btn,.back-btn{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 var(--sp-3);border:1px solid var(--border-action);border-radius:var(--r-sm);background:var(--paper-1);color:var(--text-body);font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:all var(--dur-1) var(--ease-out)}.logout-btn{color:var(--stop-700)}.logout-btn:hover{background:var(--stop-100);color:var(--stop-700)}.back-btn:hover{background:var(--amber-050);border-color:var(--amber-500);color:var(--text-strong)}.admin-tabs{display:flex;gap:2px;padding:3px;width:fit-content;max-width:100%;overflow-x:auto;background:var(--paper-3);border-radius:var(--r-md)}.admin-tabs button{height:32px;padding:0 var(--sp-4);border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);white-space:nowrap;cursor:pointer;transition:all var(--dur-1) var(--ease-out)}.admin-tabs button:hover{color:var(--text-strong)}.admin-tabs button.active{background:var(--paper-1);color:var(--text-strong);box-shadow:var(--sh-1)}.admin-content{display:flex;flex-direction:column;gap:var(--sp-5);padding:var(--sp-5);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.add-user-card{padding:var(--sp-4);background:var(--bg-recessed);border:1px solid var(--border-soft);border-radius:var(--r-md)}.add-user-card h3{margin:0 0 var(--sp-3);font-size:var(--fs-md);font-weight:600;color:var(--text-strong)}.add-user-card form{display:grid;grid-template-columns:2fr 2fr 1fr auto;gap:var(--sp-3);align-items:end}@media(max-width:860px){.add-user-card form{grid-template-columns:1fr}}.add-user-card input,.add-user-card select{width:100%;height:40px}.add-user-card select{cursor:pointer}.add-user-card button{height:40px;padding:0 var(--sp-5);background:var(--accent);color:var(--accent-ink);border:none;border-radius:var(--r-sm);font-size:var(--fs-base);font-weight:600;cursor:pointer;transition:background-color var(--dur-1) var(--ease-out)}.add-user-card button:hover{background:var(--accent-hover)}.users-list h3,.stats-section h3{margin:0 0 var(--sp-3);font-size:var(--fs-lg);font-weight:600;color:var(--text-strong)}.users-list,.stats-section{display:flex;flex-direction:column}.users-list table td,.stats-section table td{vertical-align:top}.del-btn{padding:5px var(--sp-3);background:transparent;color:var(--stop-700);border:1px solid var(--border-action);border-radius:var(--r-sm);font-size:var(--fs-xs);font-weight:600;cursor:pointer;transition:all var(--dur-1) var(--ease-out)}.del-btn:hover{background:var(--stop-600);border-color:var(--stop-600);color:#fff}.page-perms{display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-3)}.page-perm-item{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-xs);white-space:nowrap;color:var(--text-body);cursor:pointer}.page-perm-item input[type=checkbox]{width:14px;height:14px;padding:0;accent-color:var(--accent);cursor:pointer}}@layer components{.binding-stats-container{display:flex;flex-direction:column;gap:var(--sp-5);max-width:1400px;margin:0 auto}.stats-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--sp-3)}.stats-header h2{margin:0;font-size:var(--fs-xl);font-weight:600;color:var(--text-strong)}.back-btn{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 var(--sp-4);background:var(--paper-1);border:1px solid var(--border-strong);border-radius:var(--r-sm);color:var(--text-body);font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:all var(--dur-1) var(--ease-out)}.back-btn:hover{background:var(--paper-2);border-color:var(--graphite-300);color:var(--text-strong)}.stats-tabs{display:flex;gap:2px;padding:3px;width:fit-content;max-width:100%;overflow-x:auto;background:var(--paper-3);border-radius:var(--r-md)}.stats-tabs button{height:32px;padding:0 var(--sp-4);border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);white-space:nowrap;cursor:pointer;transition:all var(--dur-1) var(--ease-out)}.stats-tabs button:hover{color:var(--text-strong)}.stats-tabs button.active{background:var(--paper-1);color:var(--text-strong);box-shadow:var(--sh-1)}.stats-controls-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);background:var(--bg-recessed);border:1px solid var(--border-soft);border-radius:var(--r-md)}.date-picker-group{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.date-picker-group label{font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-faint)}.date-input{height:36px;padding:0 var(--sp-2);font-family:var(--font-mono);font-size:var(--fs-sm)}.action-buttons{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.btn-today,.btn-refresh{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 var(--sp-4);background:var(--paper-1);border:1px solid var(--border-action);border-radius:var(--r-sm);color:var(--text-body);font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:all var(--dur-1) var(--ease-out)}.btn-today:hover,.btn-refresh:hover:not(:disabled){background:var(--amber-050);border-color:var(--amber-500);color:var(--text-strong)}.btn-refresh:disabled{opacity:.5;cursor:not-allowed}.btn-calculate{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 var(--sp-5);background:var(--accent);border:1px solid var(--border-action);border-radius:var(--r-sm);color:var(--accent-ink);font-size:var(--fs-sm);font-weight:600;cursor:pointer;box-shadow:var(--sh-1);transition:background-color var(--dur-1) var(--ease-out)}.btn-calculate:hover:not(:disabled){background:var(--accent-hover)}.btn-calculate:disabled{opacity:.55;cursor:not-allowed}.task-status-card{padding:var(--sp-4);background:var(--bg-recessed);border:1px solid var(--border-soft);border-radius:var(--r-md)}.status-row{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-2)}.status-row:last-child{margin-bottom:0}.status-label{min-width:92px;font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-faint)}.status-value{font-family:var(--font-mono);font-size:var(--fs-base);font-weight:600}.status-none,.status-pending{color:var(--text-muted)}.status-running{color:var(--warn-700)}.status-completed{color:var(--ok-700)}.status-failed{color:var(--stop-700)}.running-hint{margin:var(--sp-3) 0 0;padding:var(--sp-3);background:var(--warn-100);border-left:3px solid var(--warn-600);border-radius:var(--r-sm);color:var(--warn-700);font-size:var(--fs-sm)}.error-hint{margin:var(--sp-3) 0 0;padding:var(--sp-3);background:var(--stop-100);border-left:3px solid var(--stop-600);border-radius:var(--r-sm);color:var(--stop-700);font-size:var(--fs-sm)}.no-data-hint{margin:var(--sp-3) 0 0;padding:var(--sp-3);background:var(--paper-3);border-radius:var(--r-sm);color:var(--text-muted);font-size:var(--fs-sm)}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--sp-3)}.summary-card{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1);transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.summary-card:hover{transform:translateY(-2px);box-shadow:var(--sh-2)}.summary-card .card-icon{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:var(--r-md);background:var(--paper-3);color:var(--text-muted)}.summary-card .card-icon svg{width:22px;height:22px}.summary-card .card-content{display:flex;flex-direction:column;gap:2px}.summary-card .card-label{font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-faint)}.summary-card .card-value{font-family:var(--font-mono);font-size:var(--fs-2xl);font-weight:700;line-height:1.1;color:var(--text-strong)}.summary-card.total{border-left:4px solid var(--info-600)}.summary-card.total .card-value{color:var(--info-700)}.summary-card.completed{border-left:4px solid var(--ok-600)}.summary-card.completed .card-value{color:var(--ok-700)}.summary-card.incomplete{border-left:4px solid var(--warn-600)}.summary-card.incomplete .card-value{color:var(--warn-700)}.summary-card.abnormal{border-left:4px solid var(--stop-600);background:var(--stop-100)}.summary-card.abnormal .card-value{color:var(--stop-700)}.summary-cards.sku-cards{margin-bottom:0}.summary-card.sku-total{border-left:4px solid var(--accent)}.summary-card.sku-total .card-value{color:var(--amber-700)}.summary-card.sku-bound{border-left:4px solid var(--ok-600)}.summary-card.sku-bound .card-value{color:var(--ok-700)}.summary-card.sku-unbound{border-left:4px solid var(--stop-600)}.summary-card.sku-unbound .card-value{color:var(--stop-700)}.sku-progress-section,.orders-table-section,.add-sku-card,.sku-list-card{padding:var(--sp-5);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.sku-progress-section h3,.orders-table-section h3,.add-sku-card h3,.sku-list-card h3{margin:0 0 var(--sp-4);font-size:var(--fs-lg);font-weight:600;color:var(--text-strong)}.progress-bar-container{height:18px;background:var(--paper-3);border-radius:var(--r-pill);overflow:hidden}.progress-bar-fill{position:relative;height:100%;background:var(--ok-600);border-radius:var(--r-pill);transition:width var(--dur-3) var(--ease-out)}.progress-bar-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);animation:shimmer 2.4s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{display:flex;justify-content:space-between;gap:var(--sp-3);margin-top:var(--sp-2);font-size:var(--fs-sm);color:var(--text-muted)}.progress-text span{font-family:var(--font-mono)}.no-data{padding:var(--sp-8) var(--sp-4);text-align:center;color:var(--text-muted)}.row-abnormal{background:var(--stop-100)!important;border-left:4px solid var(--stop-600)}.row-abnormal:hover{background:#f5d9d7!important}.row-incomplete{background:var(--warn-100);border-left:4px solid var(--warn-600)}.row-complete{border-left:4px solid var(--ok-600)}.status-cell{min-width:100px}.status-badge{display:inline-flex;align-items:center;height:22px;padding:0 var(--sp-2);border-radius:var(--r-xs);font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;white-space:nowrap}.status-badge.abnormal{background:var(--stop-600);color:#fff}.status-badge.incomplete{background:var(--warn-600);color:#fff}.status-badge.complete{background:var(--ok-600);color:#fff}.binding-progress{display:inline-block;padding:2px var(--sp-2);background:var(--paper-3);border-radius:var(--r-xs);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:600}.settings-panel{display:flex;flex-direction:column;gap:var(--sp-4)}.add-sku-form .form-row{display:flex;gap:var(--sp-3);flex-wrap:wrap}.add-sku-form input{flex:1;min-width:200px}.add-sku-form button{height:40px;padding:0 var(--sp-5);background:var(--accent);color:var(--accent-ink);border:none;border-radius:var(--r-sm);font-size:var(--fs-base);font-weight:600;cursor:pointer;transition:background-color var(--dur-1) var(--ease-out)}.add-sku-form button:hover{background:var(--accent-hover)}.list-hint{margin:0 0 var(--sp-3);font-size:var(--fs-sm);color:var(--text-muted)}.row-inactive{opacity:.55;background:var(--paper-3)}.status-tag{display:inline-flex;align-items:center;height:22px;padding:0 var(--sp-2);border-radius:var(--r-xs);font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase}.status-tag.active{background:var(--ok-100);color:var(--ok-700)}.status-tag.inactive{background:var(--stop-100);color:var(--stop-700)}.action-cell{display:flex;gap:var(--sp-2)}.action-cell button{padding:4px var(--sp-3);border-radius:var(--r-sm);font-size:var(--fs-xs);font-weight:600;cursor:pointer;border:none;transition:background-color var(--dur-1) var(--ease-out)}.btn-activate{background:var(--ok-600);color:#fff}.btn-activate:hover{background:var(--ok-700)}.btn-deactivate{background:var(--warn-600);color:#fff}.btn-deactivate:hover{background:var(--warn-700)}.btn-delete{background:var(--stop-600);color:#fff}.btn-delete:hover{background:var(--stop-700)}.order-row.clickable{cursor:pointer;transition:background-color var(--dur-1) var(--ease-out)}.order-row.clickable:hover{background:var(--paper-2)}.order-row.expanded{background:var(--amber-050)!important}.expand-icon{display:inline-block;margin-right:var(--sp-2);font-size:var(--fs-xs);color:var(--text-muted);transition:transform var(--dur-2) var(--ease-out)}.order-detail-row{background:var(--paper-3)!important}.order-detail-row td{padding:0!important}.sku-detail-panel{padding:var(--sp-5);background:var(--amber-050);border-top:2px solid var(--amber-100);animation:slide-down var(--dur-3) var(--ease-out)}@keyframes slide-down{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.sku-detail-panel h4{margin:0 0 var(--sp-3);font-size:var(--fs-md);color:var(--text-strong)}.sku-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--sp-2);margin-bottom:var(--sp-3)}.sku-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);background:var(--paper-1);border:1px solid var(--border);border-radius:var(--r-sm);transition:all var(--dur-1) var(--ease-out)}.sku-item.bound{border-left:4px solid var(--ok-600);background:var(--ok-100)}.sku-item.unbound{border-left:4px solid var(--stop-600);background:var(--stop-100)}.sku-status-icon{display:grid;place-items:center;flex-shrink:0;color:inherit}.sku-status-icon svg{width:16px;height:16px}.sku-barcode{flex:1;min-width:0;font-family:var(--font-mono);font-size:var(--fs-sm);font-weight:600;color:var(--text-strong)}.sku-status-text{padding:2px var(--sp-2);border-radius:var(--r-xs);font-size:var(--fs-2xs);font-weight:600;letter-spacing:var(--track-wide);text-transform:uppercase;white-space:nowrap}.sku-item.bound .sku-status-text{background:var(--ok-100);color:var(--ok-700)}.sku-item.unbound .sku-status-text{background:var(--stop-100);color:var(--stop-700)}.sku-summary{display:flex;gap:var(--sp-6);padding:var(--sp-2) var(--sp-3);background:var(--paper-2);border-radius:var(--r-sm);font-size:var(--fs-sm)}.sku-summary span{font-family:var(--font-mono);font-weight:600}.section-title{display:flex;align-items:center;gap:var(--sp-2);margin:var(--sp-6) 0 var(--sp-4);font-size:var(--fs-lg);font-weight:600;color:var(--text-strong)}.section-title:first-of-type{margin-top:0}.sku-detail-panel code,.orders-table-section code,.sku-list-card code{padding:1px var(--sp-1);background:var(--paper-3);border-radius:var(--r-xs);font-family:var(--font-mono);font-size:.9em}@media(max-width:768px){.stats-header{flex-direction:column;align-items:stretch}.stats-header h2{font-size:var(--fs-lg)}.stats-tabs{width:100%}.stats-tabs button{flex:1;white-space:nowrap}.stats-controls-bar{flex-direction:column;align-items:stretch}.date-picker-group,.action-buttons{justify-content:center}.summary-cards{grid-template-columns:1fr 1fr}.summary-card{padding:var(--sp-3);flex-direction:column;text-align:center}.summary-card .card-value{font-size:var(--fs-xl)}.add-sku-form .form-row{flex-direction:column}.add-sku-form input{min-width:100%}.action-cell{flex-direction:column}.progress-text{flex-direction:column;gap:var(--sp-1);align-items:center}.sku-list{grid-template-columns:1fr}.sku-item{flex-wrap:wrap}.sku-barcode{width:100%;order:1}.sku-summary{flex-direction:column;gap:var(--sp-2)}}.orders-table-section th{white-space:normal}.orders-table-section .col-compact{max-width:120px}.orders-table-section .col-customer{max-width:78px}.orders-table-section .col-operators{max-width:60px}.orders-table-section td.col-compact,.orders-table-section td.col-customer,.orders-table-section td.col-operators{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.orders-table-section .col-progress{max-width:85px;white-space:nowrap}}
