:root{color-scheme:light;font-family:Inter,PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:14px;background:#f3f6fb;color:#152033;--bg: #f3f6fb;--surface: #ffffff;--surface-glass: rgba(255, 255, 255, .88);--surface-soft: #f8fafc;--surface-strong: #eef4fb;--line: #d6e0ec;--line-soft: #e7edf5;--text: #152033;--muted: #637083;--subtle: #8a9aaf;--blue: #2457e6;--blue-deep: #153fb8;--blue-soft: #eef4ff;--cyan: #008fb3;--cyan-soft: #e6f8fb;--green: #047857;--green-soft: #e8f8ef;--amber: #b45309;--amber-soft: #fff7e2;--red: #be123c;--red-soft: #fff0f3;--nav: #08111f;--nav-soft: #101b2d;--shadow: 0 18px 44px rgba(20, 32, 51, .08);--shadow-soft: 0 1px 2px rgba(20, 32, 51, .05);--glow: 0 0 0 1px rgba(36, 87, 230, .08), 0 18px 50px rgba(0, 143, 179, .1)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid rgba(29,78,216,.28);outline-offset:2px}::selection{background:#1d4ed829}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#edf2f7}::-webkit-scrollbar-thumb{border:2px solid #edf2f7;border-radius:999px;background:#b8c3d2}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.app-shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh;background:radial-gradient(circle at 18% 0%,rgba(36,87,230,.08),transparent 30%),radial-gradient(circle at 86% 0%,rgba(0,143,179,.06),transparent 28%),linear-gradient(180deg,#f8fbff 0%,var(--bg) 46%,#edf2f8 100%)}.sidebar{background:linear-gradient(180deg,rgba(36,87,230,.13) 0%,transparent 24%),linear-gradient(180deg,#08111f,#0b1525 52%,#070d19);color:#e5eefb;display:flex;flex-direction:column;padding:18px 14px;gap:16px;border-right:1px solid rgba(255,255,255,.08);box-shadow:14px 0 32px #08111f14}.brand{display:flex;align-items:center;gap:12px;min-height:62px;padding:6px 8px 18px;border-bottom:1px solid rgba(255,255,255,.11)}.brand-mark{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(180deg,#fff,#edf4ff);border:1px solid rgba(124,161,255,.34);box-shadow:0 14px 28px #2457e638,inset 0 1px #ffffffe6;font-weight:800;letter-spacing:0;overflow:hidden}.brand-mark img{width:35px;height:35px;object-fit:contain;display:block}.brand-mark.compact{width:38px;height:38px}.brand strong,.brand span{display:block}.brand strong{color:#f8fbff;font-size:15px;font-weight:800;letter-spacing:0}.brand span{color:#9aabc0;font-size:12px;margin-top:3px}.nav-list{display:grid;gap:3px}.nav-item{height:42px;border:0;border-radius:9px;background:transparent;color:#b6c2d2;display:flex;align-items:center;gap:10px;padding:0 13px;font-size:13px;font-weight:600;position:relative;transition:background .16s ease,color .16s ease}.nav-item.active,.nav-item:hover{background:linear-gradient(135deg,#2457e63d,#008fb31f);color:#fff;box-shadow:inset 0 0 0 1px #91b2ff1f}.nav-item.active:before{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:3px;border-radius:999px;background:linear-gradient(180deg,#22d3ee,#3b82f6)}.sidebar-summary{margin-top:auto;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#ffffff0e}.sidebar-summary span,.sidebar-summary small{display:block;color:#94a3b8;font-size:12px}.sidebar-summary strong{display:block;margin:8px 0 4px;font-size:14px;letter-spacing:0}.workspace{min-width:0;padding:20px 24px 28px;position:relative}.topbar{min-height:72px;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:12px 14px;border:1px solid rgba(214,224,236,.86);border-radius:12px;background:#ffffffd1;box-shadow:0 14px 34px #1520330f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar-title{display:flex;align-items:center;gap:12px;flex:0 0 auto}.topbar-icon{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(180deg,#eff5ff,#fff);border:1px solid #d6e4ff;box-shadow:inset 0 1px #fffffff2}.topbar-title svg,.topbar-icon svg{color:var(--blue)}h1,h2,h3,p{margin:0}h1{color:#0f172a;font-size:24px;line-height:1.25;font-weight:800}h2{color:#0f172a;font-size:15px;line-height:1.35;font-weight:730}h3{font-size:13px;color:#334155;font-weight:700}p{color:var(--muted);font-size:12px;margin-top:4px;line-height:1.45}.topbar-actions,.button-row,.filter-row{display:flex;align-items:center;gap:10px}.topbar-actions{flex:1 1 auto;min-width:0;justify-content:flex-end}.user-chip{flex:0 0 112px;min-height:38px;display:grid;align-content:center;gap:2px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:#ffffffd1;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.user-chip span{color:var(--muted);font-size:11px;white-space:nowrap}.user-chip strong{color:var(--text);font-size:13px;white-space:nowrap}.searchbox,.scan-field{height:38px;min-width:260px;display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:#ffffffdb;color:var(--muted);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.scan-field.compact{min-width:250px}.topbar-actions .searchbox{flex:1 1 420px;max-width:620px;min-width:300px}.topbar-actions .primary-button,.topbar-actions .ghost-button{flex:0 0 auto}.searchbox input,.scan-field input,.filter-row input,.filter-row select{width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:13px}.filter-row label:not(.scan-field){height:38px;display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid var(--line);background:var(--surface);border-radius:9px;color:var(--muted);font-size:12px}.primary-button,.ghost-button,.danger-button,.table-action{height:36px;border-radius:9px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;font-size:13px;font-weight:700;white-space:nowrap;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease,background .12s ease}.primary-button{background:linear-gradient(135deg,var(--blue),#0891b2);color:#fff;box-shadow:0 10px 22px #2457e629}.primary-button:hover{background:linear-gradient(135deg,#1d4ed8,#0e7490);transform:translateY(-1px)}.ghost-button{background:#ffffffc7;color:#334155;border-color:var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ghost-button:hover{border-color:#b8c5d6;background:#f8fafc}.ghost-button.small{height:28px;padding:0 10px;font-size:12px}.danger-button{background:var(--red-soft);color:var(--red);border-color:#fecdd3}.table-action{height:28px;background:var(--blue-soft);color:var(--blue);border:0}.toast{position:fixed;top:82px;right:24px;z-index:20;min-width:280px;display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:10px;background:#111827;color:#fff;box-shadow:var(--shadow);font-size:13px}.screen-grid{display:grid;gap:14px}.control-grid{grid-template-columns:minmax(0,1fr) 380px}.line-grid{grid-template-columns:minmax(0,1fr) 350px}.warehouse-grid{grid-template-columns:minmax(0,1fr) 360px}.material-grid{grid-template-columns:minmax(0,1fr) 330px}.trace-grid,.finance-grid{grid-template-columns:minmax(0,1fr) 340px}.bom-grid{grid-template-columns:390px minmax(0,1fr)}.plan-grid,.production-grid,.purchase-grid{grid-template-columns:minmax(0,1fr) 360px}.kpi-strip,.finance-kpis{grid-column:1 / -1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.kpi-item,.panel{background:var(--surface-glass);border:1px solid rgba(211,224,239,.92);border-radius:10px;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.kpi-item{min-height:88px;padding:14px 15px;display:grid;align-content:center;gap:6px;position:relative;overflow:hidden}.kpi-item:before{content:"";position:absolute;left:0;top:0;right:0;height:2px;background:linear-gradient(90deg,var(--blue),var(--cyan))}.kpi-item span,.kpi-item small{color:var(--muted);font-size:12px}.kpi-item strong{color:#0f172a;font-size:27px;line-height:1;font-weight:760}.panel{padding:14px;min-width:0;position:relative;overflow:hidden}.panel:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(8,145,178,.36),transparent);pointer-events:none}.ops-overview-panel{grid-column:1 / -1;display:grid;gap:14px;padding:16px;border:1px solid rgba(206,218,233,.95);border-radius:12px;background:linear-gradient(180deg,#fffffff0,#f8fbffe6),linear-gradient(rgba(36,87,230,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(36,87,230,.045) 1px,transparent 1px);background-size:auto,28px 28px,28px 28px;box-shadow:var(--shadow)}.ops-overview-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid var(--line-soft)}.ops-overview-head h2{margin:6px 0 4px;color:var(--text);font-size:24px;line-height:1.15;font-weight:820}.ops-overview-head p{color:var(--muted);font-size:12px}.system-kicker{display:inline-flex;align-items:center;width:fit-content;padding:4px 8px;border-radius:999px;background:var(--cyan-soft);color:var(--cyan);font-size:12px;font-weight:760}.ops-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.ops-overview-body{display:grid;grid-template-columns:290px minmax(360px,1fr) 300px;gap:12px;align-items:stretch}.ops-health-block,.ops-pending-card{border:1px solid var(--line-soft);border-radius:10px;background:#ffffffd1;box-shadow:var(--shadow-soft)}.ops-health-block{display:grid;grid-template-columns:132px 1fr;gap:12px;align-items:center;padding:14px}.ops-health-block .health-ring{width:126px;height:126px}.ops-health-block .health-ring>div{width:92px;height:92px}.ops-health-block .health-ring strong{font-size:24px}.ops-health-copy{display:grid;gap:7px}.ops-health-copy strong{color:var(--text);font-size:26px;line-height:1}.ops-health-copy span{color:var(--muted);font-size:12px;line-height:1.5}.ops-ledger-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.ops-ledger-grid div{min-height:92px;display:grid;align-content:center;gap:6px;padding:12px;border:1px solid var(--line-soft);border-radius:10px;background:#ffffffc7;box-shadow:var(--shadow-soft)}.ops-ledger-grid span,.ops-ledger-grid em{color:var(--muted);font-size:12px;font-style:normal}.ops-ledger-grid strong{color:var(--text);font-size:24px;line-height:1;font-weight:780}.ops-pending-card{min-width:0;padding:12px}.ops-pending-row{width:100%;min-height:42px;display:grid;grid-template-columns:52px 1fr auto;gap:8px;align-items:center;margin-top:8px;padding:8px 9px;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface-soft);color:var(--text);text-align:left}.ops-pending-row:hover{border-color:#2457e652;background:#f0f6ff}.ops-pending-row strong{font-size:12px;font-weight:720}.ops-pending-row em{padding:3px 7px;border-radius:999px;background:var(--amber-soft);color:var(--amber);font-size:12px;font-style:normal;font-weight:720}.command-hero{grid-column:1 / -1;min-height:250px;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;padding:22px;border:1px solid rgba(37,99,235,.22);border-radius:8px;background:linear-gradient(135deg,#07111ff5,#0b1f37f0 56%,#084e68eb),linear-gradient(rgba(96,165,250,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(96,165,250,.12) 1px,transparent 1px);background-size:auto,28px 28px,28px 28px;color:#eaf6ff;box-shadow:var(--glow);overflow:hidden;position:relative}.command-hero:after{content:"";position:absolute;right:24px;top:24px;width:210px;height:210px;border:1px solid rgba(34,211,238,.22);border-radius:50%;box-shadow:inset 0 0 34px #22d3ee12;pointer-events:none}.command-hero-copy{position:relative;z-index:1;display:grid;align-content:center;gap:12px}.command-hero h2{max-width:780px;color:#fff;font-size:30px;line-height:1.16;font-weight:820}.command-hero p{max-width:800px;color:#b9d2ea;font-size:13px}.command-chip-row{display:flex;gap:10px;margin-top:6px}.command-health-card{position:relative;z-index:1;display:grid;align-content:center;justify-items:center;gap:14px;padding:12px;border:1px solid rgba(148,163,184,.26);border-radius:8px;background:#08172b8f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.health-ring{--ring-color: #22d3ee;width:154px;height:154px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--ring-color) calc(var(--value) * 1%),rgba(148,163,184,.18) 0);box-shadow:0 0 36px #22d3ee2e}.health-ring>div{width:116px;height:116px;border-radius:50%;display:grid;place-items:center;align-content:center;gap:5px;background:#081727}.health-ring strong{font-size:30px;line-height:1}.health-ring span,.health-stats span{color:#a9c6dd;font-size:12px}.health-stats{width:100%;display:grid;gap:8px}.health-stats span{display:flex;justify-content:space-between;padding:8px 9px;border-radius:7px;background:#ffffff0f}.health-stats strong{color:#fff}.command-metric-grid{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.command-metric{min-height:118px;display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;padding:15px;border-radius:8px;border:1px solid rgba(211,224,239,.92);background:#ffffffd1;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.metric-orbit{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--blue-soft);color:var(--blue)}.command-metric.good .metric-orbit{background:var(--green-soft);color:var(--green)}.command-metric.warn .metric-orbit{background:var(--amber-soft);color:var(--amber)}.command-metric.danger .metric-orbit{background:var(--red-soft);color:var(--red)}.command-metric span,.command-metric small{display:block;color:var(--muted);font-size:12px}.command-metric strong{display:block;margin:7px 0 5px;color:#0f172a;font-size:25px;line-height:1;font-weight:790}.command-metric em{align-self:start;padding:4px 7px;border-radius:999px;background:var(--cyan-soft);color:var(--cyan);font-size:11px;font-style:normal;font-weight:800}.flow-panel,.filter-panel,.sku-route-panel,.timeline-panel,.ledger-panel,.purchase-panel,.plan-panel,.wave-panel,.sku-bom-panel,.procurement-flow,.trace-tables,.reconcile-panel,.cost-panel,.analysis-panel,.release-panel,.issue-preview-panel,.employee-plan-panel,.handoff-process-panel,.material-receipt-panel,.team-board-panel,.node-board-panel,.return-panel,.recovery-panel{grid-column:1 / -1}.analytics-pulse-panel{grid-column:1}.risk-radar-panel,.exception-queue-panel,.material-command-panel{grid-column:2}.wide-panel,.sku-master-panel,.bom-detail-panel{grid-column:1 / -1}.bom-grid .sku-master-panel,.bom-grid .bom-detail-panel{grid-column:auto}.orders-panel,.schedule-panel,.warehouse-queue,.convert-panel,.trace-map,.cost-panel{min-height:360px}.detail-panel,.execution-panel,.pick-panel,.inbound-panel,.audit-card,.variance-panel{grid-row:span 2}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.section-heading.compact{align-items:center}.pill,.status{display:inline-flex;align-items:center;justify-content:center;min-height:22px;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700;white-space:nowrap;border:1px solid transparent}.status.good,.pill.good{color:var(--green);background:var(--green-soft);border-color:#c8ead8}.status.warn,.pill.warn{color:var(--amber);background:var(--amber-soft);border-color:#fde5bd}.status.danger,.pill.danger{color:var(--red);background:var(--red-soft);border-color:#fecdd3}.status.info,.pill.info{color:var(--blue);background:var(--blue-soft);border-color:#cfe0ff}.flow-lane{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}.flow-step{min-height:74px;display:grid;align-content:center;justify-items:center;gap:7px;color:var(--muted);border:1px solid var(--line);border-radius:7px;background:var(--surface-soft);position:relative;text-align:center;font-size:12px}.flow-step>svg{position:absolute;right:-12px;top:31px;color:#a8b3c3;z-index:1}.flow-dot,.node-icon,.step-dot{width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:#e2e8f0;color:#64748b;font-size:12px;font-weight:700}.flow-step.done{background:var(--green-soft);border-color:#c8ead8;color:var(--green)}.flow-step.done .flow-dot,.node-icon.good{background:var(--green);color:#fff}.flow-step.current{background:var(--blue-soft);border-color:#cfe0ff;color:var(--blue)}.flow-step.current .flow-dot,.node-icon.info{background:var(--blue);color:#fff}.analytics-pulse-panel,.risk-radar-panel,.exception-queue-panel,.material-command-panel{min-height:260px}.trend-widget{height:190px;display:grid;grid-template-rows:1fr auto;gap:10px;padding:12px 10px 8px;border:1px solid var(--line-soft);border-radius:8px;background:linear-gradient(rgba(210,226,246,.54) 1px,transparent 1px),linear-gradient(90deg,rgba(210,226,246,.54) 1px,transparent 1px),linear-gradient(180deg,#fbfdff,#f3f8fe);background-size:28px 28px,28px 28px,auto}.trend-widget svg{width:100%;height:100%;overflow:visible}.trend-line{fill:none;stroke-width:2.8;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.trend-line.output{stroke:#2563eb;filter:drop-shadow(0 6px 10px rgba(37,99,235,.18))}.trend-line.cost{stroke:#f97316;stroke-dasharray:4 4}.trend-axis,.pulse-legend{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px}.pulse-legend{justify-content:flex-start;margin-top:11px;flex-wrap:wrap}.pulse-legend span{display:inline-flex;align-items:center;gap:6px}.pulse-legend i{width:8px;height:8px;border-radius:50%}.output-dot{background:#2563eb}.cost-dot{background:#f97316}.risk-radar-list,.exception-list{display:grid;gap:10px}.risk-radar-panel svg{color:var(--cyan)}.risk-radar-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 38px;align-items:center;gap:10px;padding:10px;border:1px solid var(--line-soft);border-radius:8px;background:#f8fbffe6}.risk-radar-row strong,.exception-row strong{display:block;color:var(--text);font-size:12.5px}.risk-radar-row span,.exception-row small{display:block;margin-top:4px;color:var(--muted);font-size:11px}.risk-radar-meter{position:relative;height:8px;border-radius:999px;background:#e6edf6;overflow:hidden}.risk-radar-meter>div:not(.target-mark){height:100%;border-radius:inherit;background:var(--blue)}.risk-radar-meter .good{background:var(--green)}.risk-radar-meter .warn{background:#f59e0b}.risk-radar-meter .danger{background:var(--red)}.target-mark{position:absolute;top:-4px;bottom:-4px;width:2px;background:#0f172a;opacity:.45;z-index:1}.risk-radar-row em{color:var(--text);font-size:12px;font-style:normal;font-weight:780;text-align:right}.exception-row{display:grid;grid-template-columns:44px minmax(0,1fr) 70px auto;gap:10px;align-items:center;min-height:58px;padding:9px 10px;border:1px solid var(--line-soft);border-radius:8px;background:#f8fbffe6}.exception-row em{color:var(--muted);font-size:11px;font-style:normal}.compact-table table{font-size:12px}.compact-table th,.compact-table td{padding:8px 9px}.table-wrap{overflow:auto;border:1px solid var(--line-soft);border-radius:7px;background:#ffffffd1;box-shadow:inset 0 1px #fff9}table{width:100%;border-collapse:collapse;font-size:13px;white-space:nowrap}th{position:sticky;top:0;z-index:1;background:#f2f7fd;color:#475569;font-size:12px;font-weight:760;text-align:left;padding:9px 11px;border-bottom:1px solid var(--line)}td{padding:9px 11px;border-bottom:1px solid var(--line-soft);color:#273449;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr{cursor:pointer;transition:background .12s ease}tbody tr:hover{background:#f5fbff}tbody tr.selected{background:#eef7ff;box-shadow:inset 3px 0 0 var(--blue)}.mono{font-family:SFMono-Regular,Consolas,monospace;letter-spacing:0;font-size:12.5px}.text-danger{color:var(--red)!important}.text-good{color:var(--green)!important}.progress-block{padding:11px;background:var(--surface-soft);border-radius:7px;border:1px solid var(--line-soft)}.progress-head,.metric-grid,.audit-fields{display:grid;gap:10px}.progress-head{grid-template-columns:1fr auto;margin-bottom:9px;color:var(--muted);font-size:13px}.meter-track{height:6px;border-radius:999px;background:#e5ebf3;overflow:hidden}.meter-track.large{height:9px}.meter-track>div{height:100%;background:linear-gradient(90deg,#2563eb,#0891b2);border-radius:inherit}.metric-grid{grid-template-columns:repeat(2,1fr);margin:14px 0}.metric-grid div,.audit-fields label{min-height:64px;padding:11px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft)}.metric-grid span,.audit-fields label{color:var(--muted);font-size:12px}.metric-grid strong,.audit-fields strong{display:block;color:var(--text);margin-top:6px;font-size:18px}.bom-list{display:grid;gap:8px;margin:10px 0 14px}.bom-row,.resource-row,.ledger-row,.pick-row,.inbound-step,.match-row{display:flex;align-items:center;gap:10px;min-height:52px;padding:10px 11px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft)}.bom-row:hover,.resource-row:hover,.ledger-row:hover,.pick-row:hover,.match-row:hover{border-color:#d4dde9;background:#fbfdff}.bom-row{justify-content:space-between}.bom-row strong,.bom-row span,.resource-row strong,.resource-row span{display:block}.bom-row span,.resource-row span,.finished-tile span,.inbound-step span,.pick-row span,.ledger-row small{color:var(--muted);font-size:12px}.stock-meter{min-width:120px;display:grid;gap:6px}.button-stack{display:grid;gap:9px;margin-top:12px}.inline-progress{display:grid;grid-template-columns:54px 90px;align-items:center;gap:8px}.number-control{display:grid;gap:7px;margin-bottom:12px;color:var(--muted);font-size:12px}.number-control>div{height:42px;display:grid;grid-template-columns:44px 1fr 44px;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--surface)}.number-control button,.number-control input{border:0;background:transparent;text-align:center;color:var(--text)}.number-control button{background:#f3f6fa;font-size:18px}.match-panel{display:grid;gap:8px;margin-top:14px}.match-row.good{color:var(--green)}.match-row.warn{color:var(--amber)}.match-row.danger{color:var(--red)}.process-columns{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.process-column{padding:11px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft);display:grid;gap:8px}.process-column span{font-size:12px;color:var(--muted)}.process-column strong{font-size:24px}.pick-list,.ledger-list{display:grid;gap:8px}.pick-row{align-items:flex-start}.pick-row input{margin-top:5px}.pick-row>div{flex:1}.ledger-row{display:grid;grid-template-columns:54px 86px 1fr 70px 130px}.time{font-family:SFMono-Regular,Consolas,monospace;color:var(--muted)}.pair-layout{display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);gap:12px;align-items:stretch}.pair-column{display:grid;gap:9px;align-content:start}.pair-column h3{padding-left:2px}.pair-arrow{display:grid;place-items:center;color:var(--blue)}.resource-row{justify-content:space-between}.resource-row>div{flex:1}.finished-tile{min-height:108px;padding:13px;display:grid;gap:9px;border:1px solid #cfe0ff;border-radius:7px;background:var(--blue-soft);color:var(--blue)}.finished-tile.muted{background:var(--surface-soft);border-color:var(--line-soft);color:#475569}.inbound-step{margin-bottom:8px}.step-dot{background:var(--blue-soft);color:var(--blue);flex:0 0 auto}.warning-box{display:flex;gap:10px;margin-top:12px;padding:12px;border-radius:7px;border:1px solid #ffd7aa;background:var(--amber-soft);color:var(--amber)}.warning-box span{display:block;margin-top:5px;color:#9a5b02;font-size:12px}.trace-lane{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.trace-node{min-height:108px;display:grid;align-content:center;justify-items:center;gap:8px;text-align:center;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft)}.trace-node span{color:var(--muted);font-size:12px}.audit-fields{grid-template-columns:repeat(2,1fr)}.trace-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mini-table{border:1px solid var(--line-soft);border-radius:7px;overflow:hidden}.mini-table h3{padding:10px 12px;background:#f8fafc;border-bottom:1px solid var(--line-soft)}.mini-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line-soft);font-size:12px}.mini-row:last-child{border-bottom:0}.reconcile-band{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.reconcile-band div{padding:11px;border-radius:7px;background:var(--surface-soft);border:1px solid var(--line-soft)}.reconcile-band span{display:block;color:var(--muted);font-size:12px}.reconcile-band strong{display:block;margin-top:6px;font-size:22px}.bar-row{display:grid;grid-template-columns:72px 1fr 42px;align-items:center;gap:10px;margin-bottom:14px;font-size:13px}.bar-track{height:9px;background:#e2e8f0;border-radius:999px;overflow:hidden}.bar-track div{height:100%;border-radius:inherit}.bar-track .warn{background:var(--amber)}.bar-track .danger{background:var(--red)}.bar-track .info{background:var(--blue)}.sku-route-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:12px;align-items:start}.sku-cards{display:grid;gap:8px}.sku-card,.sku-list-row,.sku-stat-row button{width:100%;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft);color:var(--text)}.sku-card{min-height:92px;padding:12px;text-align:left;display:grid;gap:5px;position:relative}.sku-card.active,.sku-list-row.active,.sku-stat-row button.active{border-color:#9bbcff;background:var(--blue-soft);box-shadow:inset 3px 0 0 var(--blue)}.sku-card span,.sku-card small,.sku-list-row small,.active-sku-card small{color:var(--muted);font-size:12px}.sku-card em{position:absolute;right:10px;top:10px;font-style:normal}.route-matrix{overflow:auto;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface)}.route-grid{display:grid;grid-template-columns:58px repeat(8,minmax(148px,1fr))}.route-head{background:#f5f7fb;border-bottom:1px solid var(--line)}.route-head span,.route-head strong,.route-row span,.route-row button{min-height:48px;display:grid;place-items:center;padding:9px 10px;border-right:1px solid var(--line-soft);font-size:13px}.route-row{border-bottom:1px solid var(--line-soft)}.route-row:last-child{border-bottom:0}.route-row span{color:var(--muted);background:#fbfcfe;font-weight:700}.route-row button{width:100%;border:0;background:var(--surface);color:#263244;text-align:center}.route-row button.active{background:var(--blue-soft);color:var(--blue);font-weight:700;box-shadow:inset 0 -2px 0 var(--blue)}.route-row button.empty{color:#cbd5e1;background:#f8fafc;cursor:default}.sku-bom-layout{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.65fr);gap:12px;min-width:0}.sku-master-list,.bom-config-area{min-width:0;display:grid;gap:10px;align-content:start;overflow:hidden}.sku-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sku-stat-row button{min-height:68px;display:grid;place-items:center;gap:3px;padding:9px}.sku-stat-row strong{font-size:20px}.sku-stat-row span{color:var(--muted);font-size:12px}.sku-scroll-list{max-height:360px;overflow:auto;display:grid;gap:7px}.sku-list-row{min-height:74px;padding:10px;display:grid;gap:4px;text-align:left}.sku-list-row span{font-size:13px}.active-sku-card{min-width:0;min-height:92px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px;border:1px solid #cfe0ff;border-radius:7px;background:var(--blue-soft)}.active-sku-card h3{margin:5px 0;color:var(--blue);font-size:16px;overflow-wrap:anywhere}.active-sku-card small,.active-sku-card .mono{overflow-wrap:anywhere}.add-sku-form{display:grid;grid-template-columns:minmax(118px,.7fr) minmax(180px,1.2fr) minmax(140px,.9fr) minmax(140px,.9fr);gap:8px;align-items:end}.add-sku-form .primary-button{grid-column:1 / -1;justify-self:end;min-width:150px}.sku-bom-panel .table-wrap{max-width:100%}.add-sku-form label{display:grid;gap:5px;color:var(--muted);font-size:12px}.add-sku-form input,.add-sku-form select{height:34px;width:100%;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:0 10px;outline:0}.plan-cards,.wave-cards,.analysis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.plan-card,.wave-card,.analysis-card,.procure-step{border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft)}.plan-card,.wave-card{min-height:144px;padding:12px;display:grid;gap:10px}.plan-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.plan-card>span,.wave-card>span,.wave-card small,.analysis-card span,.analysis-card small,.procure-step span,.procure-step small{color:var(--muted);font-size:12px}.plan-card h3{color:var(--text);font-size:14px}.plan-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.plan-metrics label{display:grid;gap:4px;color:var(--muted);font-size:12px}.plan-metrics strong{color:var(--text);font-size:15px}.wave-card small{display:block}.procure-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.procure-step{min-height:122px;padding:12px;display:grid;align-content:center;gap:7px}.analysis-card{min-height:110px;padding:13px;display:grid;align-content:center;gap:6px}.analysis-card strong{font-size:28px;line-height:1.05}.global-sku{min-width:min(520px,45vw)}.global-sku select{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit}.route-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.route-stat-grid.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-stat-card{min-height:82px;width:100%;display:grid;align-content:center;gap:5px;padding:11px;text-align:left;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft);color:var(--text)}.route-stat-card.active,.route-stat-card:hover{border-color:#9bbcff;background:var(--blue-soft)}.route-stat-card strong{font-size:24px;line-height:1}.route-stat-card span,.route-stat-card small{color:var(--muted);font-size:12px}.tall-list{max-height:620px}.cost-mini,.metric-block{min-width:0;display:grid;gap:4px;align-content:center;padding:11px 12px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface)}.cost-mini span,.metric-block span{color:var(--muted);font-size:12px}.cost-mini strong,.metric-block strong{color:#111827;font-size:21px;line-height:1.1;overflow-wrap:anywhere}.metric-block.good strong{color:var(--green)}.metric-block.danger strong{color:var(--red)}.plan-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.config-form{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(220px,1.2fr) minmax(120px,.7fr) auto;gap:10px;align-items:end}.config-form label{display:grid;gap:5px;color:var(--muted);font-size:12px}.config-form input,.config-form select{height:36px;width:100%;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:0 10px;outline:0}.quantity-edit-row{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(170px,.8fr) minmax(140px,.7fr);gap:10px;margin-bottom:10px;padding:11px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft)}.quantity-edit-row.compact-edit{margin:0 0 12px}.quantity-edit-row label{display:grid;gap:5px;color:var(--muted);font-size:12px}.quantity-edit-row input{height:36px;width:100%;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:0 10px;font-weight:700;outline:0}.quantity-edit-row input[readonly]{color:var(--muted);font-weight:500}.batch-plan-table{margin-bottom:12px}.table-number-input,.table-date-input{width:92px;height:30px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);padding:0 8px;font-weight:700;outline:0}.table-date-input{width:86px}.release-detail-table{margin-bottom:10px}.issue-preview-table{margin-bottom:12px}.handoff-flow-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:10px}.handoff-flow-node{min-height:74px;display:grid;align-content:center;justify-items:center;gap:5px;padding:10px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft);text-align:center}.handoff-flow-node strong{width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:#e2e8f0;color:#64748b}.handoff-flow-node span{font-size:13px;font-weight:700}.handoff-flow-node small{color:var(--muted);font-size:12px}.handoff-flow-node.done{border-color:#c8ead8;background:var(--green-soft)}.handoff-flow-node.done strong{background:var(--green);color:#fff}.handoff-flow-node.current{border-color:#cfe0ff;background:var(--blue-soft)}.handoff-flow-node.current strong{background:var(--blue);color:#fff}.handoff-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:10px}.handoff-workbench{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:12px;align-items:start}.handoff-workbench .issue-preview-table{margin-bottom:0}.handoff-action-panel{min-width:0;display:grid;gap:10px;padding:12px;border:1px solid var(--line-soft);border-radius:7px;background:#fbfcfe}.handoff-scan-card{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #cfe0ff;border-radius:7px;background:var(--blue-soft);color:var(--blue)}.handoff-scan-card span,.handoff-fields label{display:block;color:var(--muted);font-size:12px}.handoff-scan-card strong{display:block;margin-top:3px;color:var(--text)}.handoff-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.handoff-fields label:last-child,.handoff-fields label:nth-child(5){grid-column:1 / -1}.handoff-fields input{height:32px;width:100%;margin-top:5px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);padding:0 9px;outline:0}.handoff-action-groups{display:grid;gap:10px}.handoff-action-groups>div{display:grid;gap:7px;padding-top:9px;border-top:1px solid #e2e8f0}.handoff-action-groups strong{color:#334155;font-size:12px;font-weight:760}.handoff-action-groups .button-row{flex-wrap:wrap;gap:7px}.handoff-action-groups .primary-button,.handoff-action-groups .ghost-button,.handoff-action-groups .danger-button{height:32px;padding:0 10px}.handover-card{display:grid;gap:8px;padding:11px;border:1px solid #cfe0ff;border-radius:7px;background:var(--blue-soft)}.handover-card span{color:var(--muted);font-size:13px}.release-flow,.handover-note{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.release-flow span,.handover-note span{min-height:32px;display:inline-flex;align-items:center;padding:0 11px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft);color:var(--text);font-size:13px}.employee-summary{margin-bottom:10px}.employee-plan-panel .inline-progress{grid-template-columns:44px 96px}.dispatch-flow-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:10px}.dispatch-flow-node{min-height:74px;display:grid;align-content:center;justify-items:center;gap:5px;padding:10px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft);text-align:center}.dispatch-flow-node strong{width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:#e2e8f0;color:#64748b}.dispatch-flow-node span{font-size:13px;font-weight:700}.dispatch-flow-node small{color:var(--muted);font-size:12px}.dispatch-flow-node.done{border-color:#c8ead8;background:var(--green-soft)}.dispatch-flow-node.done strong{background:var(--green);color:#fff}.dispatch-flow-node.current{border-color:#cfe0ff;background:var(--blue-soft)}.dispatch-flow-node.current strong{background:var(--blue);color:#fff}.dispatch-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:10px}.dispatch-workbench{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:12px;align-items:start}.dispatch-action-panel{display:grid;gap:10px;padding:12px;border:1px solid var(--line-soft);border-radius:7px;background:#fbfcfe}.dispatch-card{display:grid;gap:8px}.dispatch-card>div{padding:10px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface)}.dispatch-card span,.dispatch-card small,.dispatch-fields label,.dispatch-load-card span{display:block;color:var(--muted);font-size:12px}.dispatch-card strong{display:block;margin:5px 0 3px;color:var(--text)}.dispatch-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dispatch-fields input{height:32px;width:100%;margin-top:5px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);padding:0 9px;outline:0}.dispatch-load-card{display:grid;gap:7px;padding:10px;border:1px solid #cfe0ff;border-radius:7px;background:var(--blue-soft)}.dispatch-load-card strong{color:var(--blue);font-size:24px;line-height:1}.dispatch-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dispatch-actions .primary-button,.dispatch-actions .ghost-button,.dispatch-actions .danger-button{height:32px;padding:0 8px}.login-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 18% 10%,rgba(36,87,230,.11),transparent 30%),radial-gradient(circle at 82% 0%,rgba(0,143,179,.08),transparent 28%),linear-gradient(180deg,#f8fbff 0%,var(--bg) 100%)}.login-panel{width:min(980px,100%);padding:24px;border:1px solid rgba(214,224,236,.92);border-radius:12px;background:#ffffffe6;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.login-brand{display:flex;align-items:center;gap:12px;padding-bottom:20px;border-bottom:1px solid var(--line-soft)}.login-brand.compact-brand{padding-bottom:0;border-bottom:0}.login-layout{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1fr);gap:16px;padding-top:18px}.login-form,.login-preview,.role-preview-card,.account-profile-card{display:grid;gap:12px}.login-form,.login-preview{padding:16px;border:1px solid var(--line-soft);border-radius:10px;background:#f8fafcdb}.login-form label{display:grid;gap:6px;color:var(--muted);font-size:12px}.login-form select,.login-form input{height:38px;width:100%;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);padding:0 10px;outline:0}.login-error{color:var(--red);font-size:12px}.role-preview-card,.account-profile-card{grid-template-columns:auto 1fr;align-items:center;padding:12px;border:1px solid #cfe0ff;border-radius:10px;background:var(--blue-soft);color:var(--blue)}.role-preview-card span,.role-preview-card small,.account-profile-card span,.account-profile-card small{display:block;color:var(--muted);font-size:12px}.role-preview-card strong,.account-profile-card strong{display:block;margin:4px 0 3px;color:var(--text)}.permission-preview,.permission-matrix{display:grid;gap:8px}.permission-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-pill{min-height:32px;display:inline-flex;align-items:center;padding:0 10px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface);color:var(--subtle);font-size:12px;font-weight:700}.permission-pill.on{border-color:#c8ead8;background:var(--green-soft);color:var(--green)}.account-grid{grid-template-columns:minmax(0,1fr) 340px}.account-role-panel,.account-user-panel,.account-log-panel{grid-column:1}.account-detail-panel{grid-column:2;grid-row:2 / span 3}.role-card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.role-card{min-height:118px;display:grid;align-content:start;gap:8px;padding:12px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft);color:var(--text);text-align:left}.role-card.active,.role-card:hover{border-color:#9bbcff;background:var(--blue-soft)}.role-card strong,.role-card small{display:block}.role-card small{color:var(--muted);font-size:12px;line-height:1.45}.permission-matrix label{min-height:34px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface);color:var(--text);font-size:13px}.account-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.account-edit-form label{display:grid;gap:6px;color:var(--muted);font-size:12px}.account-edit-form label.span-2{grid-column:1 / -1}.account-edit-form input,.account-edit-form select{width:100%;height:34px;border:1px solid var(--line);border-radius:7px;background:#ffffffeb;color:var(--text);padding:0 10px;outline:0}.account-edit-form input:focus,.account-edit-form select:focus{border-color:#8bb3ff;box-shadow:0 0 0 3px #2563eb1a}.account-permission-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:4px}.account-permission-head strong{color:var(--text);font-size:13px}.permission-matrix input{accent-color:var(--blue)}.simple-account-page{display:grid;gap:14px}.simple-account-panel,.simple-account-audit{padding:20px}.simple-account-title{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid var(--line-soft)}.simple-account-title h2{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:820}.simple-account-title h2 svg{color:var(--blue)}.simple-account-table{overflow-x:auto;margin-top:12px;border-bottom:1px solid var(--line-soft)}.simple-account-table table{width:100%;min-width:960px;table-layout:fixed}.simple-account-table th{font-size:12px;color:var(--muted)}.simple-account-table td{height:64px;font-size:14px}.simple-account-table th:nth-child(1),.simple-account-table td:nth-child(1){width:110px}.simple-account-table th:nth-child(2),.simple-account-table td:nth-child(2){width:96px}.simple-account-table th:nth-child(3),.simple-account-table td:nth-child(3){width:110px}.simple-account-table th:nth-child(5),.simple-account-table td:nth-child(5){width:80px}.simple-account-table th:nth-child(6),.simple-account-table td:nth-child(6){width:138px}.permission-summary{display:-webkit-box;overflow:hidden;color:var(--muted);line-height:1.45;-webkit-line-clamp:2;-webkit-box-orient:vertical}.account-row-actions{display:flex;align-items:center;gap:10px}.delete-icon-button{width:34px;height:34px;border:0;border-radius:8px;background:var(--red-soft);color:var(--red);font-size:24px;line-height:1;font-weight:500}.delete-icon-button:hover{background:#ffe4e8}.simple-account-form{display:grid;gap:12px;padding-top:16px}.form-section-label{color:var(--muted);font-size:13px;font-weight:760}.simple-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.simple-form-grid input,.simple-form-grid select{width:100%;height:42px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:0 12px;outline:0}.simple-form-grid input:focus,.simple-form-grid select:focus{border-color:#2457e66b;box-shadow:0 0 0 3px #2457e617}.simple-permission-area{display:grid;gap:8px;margin-top:4px}.simple-permission-area p{margin:0;color:var(--amber);font-weight:720}.simple-permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.simple-permission-grid label{min-height:42px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);color:var(--text);font-weight:650}.simple-permission-grid input{width:18px;height:18px;accent-color:var(--blue)}.simple-account-actions{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:1100px){.simple-account-title,.simple-account-actions{align-items:stretch;flex-direction:column}.simple-form-grid,.simple-permission-grid{grid-template-columns:1fr}}.line-portal{min-height:100vh;background:var(--bg)}.line-portal-topbar{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 20px;border-bottom:1px solid var(--line-soft);background:var(--surface)}.line-portal-actions{display:flex;align-items:center;gap:10px}.line-portal-workspace{display:grid;grid-template-columns:340px minmax(0,1fr) 330px;gap:12px;padding:16px 20px 24px}.line-task-panel{grid-row:span 3}.line-current-panel,.line-transfer-panel{grid-column:2 / -1}.line-task-list{display:grid;gap:9px}.line-task-card{min-height:132px;display:grid;gap:9px;padding:12px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft);color:var(--text);text-align:left}.line-task-card.active,.line-task-card:hover{border-color:#9bbcff;background:var(--blue-soft);box-shadow:inset 3px 0 0 var(--blue)}.line-task-card span,.line-task-card small{color:var(--muted);font-size:12px}.line-node-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px}.line-node-chip{min-height:82px;display:grid;justify-items:center;align-content:center;gap:5px;padding:9px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft);color:var(--text);text-align:center}.line-node-chip.active{border-color:#cfe0ff;background:var(--blue-soft);color:var(--blue)}.line-node-chip strong{width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:var(--surface)}.line-node-chip span,.line-node-chip small{font-size:12px}.segmented-control{display:inline-flex;margin-top:12px;padding:3px;border:1px solid var(--line);border-radius:7px;background:var(--surface-soft)}.segmented-control button{height:32px;min-width:96px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:13px;font-weight:650}.segmented-control button.active{background:var(--surface);color:var(--blue);box-shadow:0 1px #0f172a14}.handoff-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.handoff-step{min-height:90px;display:grid;align-content:center;gap:6px;padding:11px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft)}.handoff-step strong{width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:#e2e8f0;color:#64748b}.handoff-step span{font-weight:700}.handoff-step small{color:var(--muted);font-size:12px}.handoff-step.done{border-color:#c8ead8;background:var(--green-soft)}.handoff-step.done strong{background:var(--green);color:#fff}.handoff-step.current{border-color:#cfe0ff;background:var(--blue-soft)}.handoff-step.current strong{background:var(--blue);color:#fff}.team-board-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}.team-board-card{min-height:122px;display:grid;gap:8px;padding:11px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft);color:var(--text);text-align:left}.team-board-card.active,.team-board-card:hover{border-color:#9bbcff;background:var(--blue-soft)}.team-board-card span,.team-board-card small{color:var(--muted);font-size:12px}.node-progress-list{display:grid;gap:10px}.node-progress-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) 52px 82px;align-items:center;gap:12px;padding:11px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface-soft)}.node-progress-row strong,.node-progress-row span{display:block}.node-progress-row span{margin-top:4px;color:var(--muted);font-size:12px}.node-progress-row em{color:var(--blue);font-style:normal;font-weight:800}.handover-note span:last-child{color:var(--red);background:var(--red-soft);border-color:#fecaca}.wage-panel{grid-column:1 / -1}.number-input{display:grid;gap:6px;color:var(--muted);font-size:12px}.number-input>div{height:42px;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.number-input button{border:0;background:var(--surface-soft);color:var(--text);font-size:18px}.number-input input,.number-input select{min-width:0;border:0;border-left:1px solid var(--line-soft);border-right:1px solid var(--line-soft);text-align:center;color:var(--text);font-weight:700;outline:0}.number-input select{height:42px;grid-column:1 / -1;border:1px solid var(--line);border-radius:7px;background:var(--surface);padding:0 10px;text-align:left}@media(max-width:1100px){.app-shell{grid-template-columns:78px minmax(0,1fr)}.brand div:not(.brand-mark),.nav-item span,.sidebar-summary{display:none}.brand{justify-content:center;padding:8px 0 16px}.topbar{height:auto;align-items:flex-start;flex-direction:column}.topbar-actions{width:100%;flex-wrap:wrap}.user-chip{min-width:112px}.nav-item{justify-content:center;padding:0}.control-grid,.line-grid,.warehouse-grid,.material-grid,.trace-grid,.finance-grid,.bom-grid,.plan-grid,.production-grid,.purchase-grid{grid-template-columns:1fr}.command-hero,.ops-overview-panel,.analytics-pulse-panel,.risk-radar-panel,.exception-queue-panel,.material-command-panel{grid-column:1}.ops-overview-body{grid-template-columns:1fr}.ops-ledger-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.command-hero{grid-template-columns:minmax(0,1fr)}.command-hero h2{font-size:26px}.command-health-card{justify-items:stretch;grid-template-columns:170px minmax(0,1fr)}.command-metric-grid,.kpi-strip,.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-panel,.execution-panel,.pick-panel,.inbound-panel,.audit-card,.variance-panel{grid-row:auto}.sku-route-layout,.sku-bom-layout,.add-sku-form,.config-form,.quantity-edit-row,.handoff-workbench,.handoff-summary-grid,.dispatch-workbench,.dispatch-summary-grid,.account-grid,.login-layout,.line-portal-workspace{grid-template-columns:1fr}.account-role-panel,.account-user-panel,.account-log-panel,.account-detail-panel,.line-task-panel,.line-current-panel,.line-transfer-panel{grid-column:auto;grid-row:auto}.role-card-grid,.line-node-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.global-sku{min-width:320px}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:sticky;top:0;z-index:10;flex-direction:row;overflow-x:auto;padding:8px}.brand{border-bottom:0;padding:0}.nav-list{display:flex}.nav-item{width:44px;flex:0 0 auto}.workspace{padding:12px}.topbar{height:auto;align-items:flex-start;flex-direction:column}.topbar-actions,.filter-row,.button-row{width:100%;flex-wrap:wrap}.searchbox,.scan-field,.scan-field.compact{min-width:100%}.kpi-strip,.command-metric-grid,.finance-kpis,.sku-cards,.sku-stat-row,.route-stat-grid,.route-stat-grid.compact-grid,.plan-summary-grid,.plan-cards,.wave-cards,.analysis-grid,.procure-steps,.handoff-flow-bar,.dispatch-flow-bar,.permission-preview,.role-card-grid,.line-node-strip,.flow-lane,.process-columns,.pair-layout,.trace-lane,.trace-columns,.reconcile-band{grid-template-columns:1fr}.command-hero{padding:16px}.command-hero h2{font-size:22px}.command-health-card,.risk-radar-row,.exception-row{grid-template-columns:1fr}.pair-arrow,.flow-step>svg{display:none}.ledger-row{grid-template-columns:48px 82px 1fr}.ledger-row span:nth-child(4),.ledger-row small{display:none}.route-grid{grid-template-columns:44px repeat(8,minmax(132px,1fr))}}
