.dashboard.dashboard-overview{max-width:1800px;padding:25px 30px;color:#102747}.dashboard-overview .dash-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.dashboard-overview .dashboard-header h1{font-size:30px;line-height:1.25;margin:7px 0 2px}.dash-header-tools{display:flex;align-items:center;gap:16px;flex-shrink:0;padding-top:2px}.dash-date{display:flex;align-items:center;gap:8px;font-size:12px;color:#4d6484;white-space:nowrap}.dash-refresh{display:flex;align-items:center;gap:7px;background:#fff;border:1px solid #dce6f2;border-radius:8px;color:#345477;padding:8px 12px;font-size:12px;cursor:pointer}.dash-refresh:disabled{opacity:.6;cursor:wait}.dashboard-overview .integration-banner{padding:14px 20px;margin-bottom:14px;box-shadow:none;border-radius:10px}.dash-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:14px}.dash-kpi{display:grid;grid-template-columns:46px minmax(0,1fr);gap:8px 12px;padding:13px;border:1px solid #e1eaf5;background:#fff;border-radius:11px;color:inherit;box-shadow:0 1px 2px #10274703;transition:box-shadow .15s,border-color .15s}.dash-kpi:hover{border-color:#93c5fd;color:inherit;box-shadow:0 3px 10px #1027470b}.dash-kpi-icon{display:grid;place-items:center;height:46px;width:46px;border-radius:12px}.dash-kpi-copy{min-width:0}.dash-kpi-copy>span{display:block;font-size:11.5px;letter-spacing:-.15px;line-height:1.4}.dash-kpi-copy>strong{display:block;font-size:25px;line-height:1.4;font-weight:800;letter-spacing:-.7px;font-variant-numeric:tabular-nums}.dash-kpi>small{grid-column:1/-1;font-size:10.5px;color:#526886;line-height:1.35}.dashboard-overview .blue{color:#0676ff;background:#e8f4ff}.dashboard-overview .green{color:#00976b;background:#e8fbf3}.dashboard-overview .amber{color:#a85d00;background:#fff6dd}.dashboard-overview .red{color:#d6283a;background:#ffeaec}.dashboard-overview .violet{color:#7443ee;background:#f3eeff}.dashboard-overview .slate{color:#526886;background:#eef2f7}.dash-middle-grid{display:grid;grid-template-columns:1.04fr 1fr 1.13fr;gap:13px;margin-bottom:14px}.dash-bottom-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:13px}.dash-panel{min-width:0;background:#fff;border:1px solid #e1eaf5;border-radius:11px;padding:13px 14px 11px;box-shadow:0 1px 2px #10274704}.dash-panel-heading{display:flex;align-items:center;gap:10px;margin-bottom:12px;min-height:30px}.dash-small-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;flex-shrink:0}.dash-panel-heading h2{margin:0;font-size:14px;line-height:1.4;font-weight:750;letter-spacing:-.35px}.dash-panel-heading>a{margin-left:auto;display:flex;align-items:center;gap:4px;white-space:nowrap;color:#0063ee;font-size:11px}.dash-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;min-height:205px;padding:20px 14px}.dash-empty-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;color:#6686b2;background:#f1f6fc}.dash-empty strong{font-size:13px}.dash-empty p{margin:0;font-size:12px;line-height:1.65;color:#61748e;max-width:320px}.dash-panel-footnote{font-size:10.5px;color:#61748e;line-height:1.5;margin:9px 0 0}.dash-alert-list{list-style:none;margin:0;padding:0}.dash-alert-list li{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #edf2f8;min-height:49px}.dash-alert-list li:last-child{border-bottom:0}.dash-alert-list li>svg{flex-shrink:0}.dash-alert-list li>a{min-width:0;flex:1;color:#142f50}.dash-alert-list strong{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:11.5px;line-height:1.5}.dash-alert-list small{display:block;font-size:10.5px;color:#526886}.dash-alert-stock{font-size:10.5px;white-space:nowrap}.dash-alert-stock b{color:#cc2637}.dash-pill{display:inline-block;padding:3px 10px;border-radius:20px;font-size:10px;font-weight:650;white-space:nowrap;line-height:1.25}.dash-red-text{color:#c52a39!important}.dash-amber-text{color:#b66a00}.dash-inventory-chart{display:flex;align-items:center;justify-content:center;gap:20px;min-height:202px}.dash-donut{width:164px;height:164px;flex-shrink:0;border-radius:50%;display:grid;place-items:center}.dash-donut>div{display:flex;flex-direction:column;align-items:center;justify-content:center;width:108px;height:108px;background:#fff;border-radius:50%}.dash-donut strong{font-size:23px;font-weight:800}.dash-donut span{font-size:10px;color:#526886}.dash-legend{list-style:none;margin:0;padding:0;flex:1;min-width:0}.dash-legend li{display:flex;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid #eef3f9}.dash-legend li:last-child{border:0}.dash-legend li>div{flex:1;min-width:0}.dash-legend li span:not(.dash-dot){font-size:11px;display:block}.dash-legend strong{display:block;font-size:13px}.dash-legend small{color:#61748e;font-size:10.5px}.dash-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.dashboard-overview .dash-dot.green{background:#32b88f}.dashboard-overview .dash-dot.amber{background:#fbbf24}.dashboard-overview .dash-dot.red{background:#f05260}.dashboard-overview .dash-dot.slate{background:#cbd5e1}.dashboard-overview .dash-dot.blue{background:#168bff}.dash-info{display:flex;align-items:flex-start;gap:9px;padding:9px 11px;background:#edf6ff;color:#345d90;border-radius:7px;font-size:11px;line-height:1.5}.dash-info svg{flex-shrink:0;color:#087bff;margin-top:2px}.dash-trend-tabs{display:flex;background:#f0f5fa;padding:2px;border-radius:20px;gap:4px}.dash-trend-tabs button{flex:1;padding:6px 4px;font-size:11px;border:0;background:transparent;color:#395d89;border-radius:20px;cursor:pointer}.dash-trend-tabs button[aria-pressed=true]{background:linear-gradient(120deg,#398dff,#0569ff);box-shadow:0 2px 5px #0072ff24;color:#fff}.dash-period{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#61748e;font-size:10.5px;margin:10px 0 0}.dashboard-overview .dash-period select{min-height:28px;padding:3px 5px;border-color:#e2eaf4;font-size:10.5px;color:#345477;border-radius:6px;max-width:150px}.dash-period select:disabled{opacity:.5}.dash-trend-panel .dash-empty{min-height:192px}.dash-trend-figure{margin:8px 0 0}.dash-trend-figure>svg{display:block;width:100%;height:auto}.dash-trend-figure text{fill:#526886;font-size:11px}.dash-trend-figure figcaption{display:flex;align-items:center;justify-content:center;gap:6px;color:#345477;font-size:10.5px}.dash-series-data{font-size:11px;color:#61748e;margin-top:8px}.dash-series-data summary{cursor:pointer}.dash-series-data ul{padding-left:20px}.dash-table-scroll{overflow-x:auto;max-width:100%}.dash-table{width:100%;border-collapse:collapse;font-size:11.5px}.dash-table th{text-transform:none;letter-spacing:0;text-align:left;font-size:10.5px;font-weight:600;background:#eef4fa;color:#36577e;padding:6px 9px;white-space:nowrap}.dash-table td{padding:8px 9px;border-bottom:1px solid #ecf1f7;color:#17304f}.dash-table tr:last-child td{border-bottom:0}.dash-table td a{color:#17304f;font-weight:600}.dash-table td a:hover{color:#0063ee}.dash-table td small{display:block;color:#61748e;font-size:10px}.dash-bottom-grid .dash-empty{min-height:157px}.dash-provenance{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:14px;color:#61748e;font-size:10.5px}.dash-provenance span{display:flex;align-items:center;gap:6px}.dash-load-error{display:flex;align-items:center;flex-wrap:wrap;gap:10px;color:#9b2837;background:#fff1f2;border:1px solid #fecdd3;padding:10px 14px;font-size:12px;border-radius:8px;margin-bottom:14px}.dash-load-error button{background:#fff;border:1px solid #fecdd3;padding:5px 10px;border-radius:6px;color:inherit;font-size:12px;cursor:pointer}.dashboard-overview :is(a,button,select,summary):focus-visible{outline:3px solid #2563eb;outline-offset:3px}@media(min-width:1500px){.dash-kpi>small{grid-column:2}}@media(max-width:1279px){.dashboard.dashboard-overview{padding:24px}.dash-kpis{gap:9px}.dash-kpi{grid-template-columns:34px minmax(0,1fr);gap:7px;padding:12px 10px}.dash-kpi-icon{width:34px;height:38px}.dash-kpi-copy>span{font-size:10.5px}.dash-middle-grid{grid-template-columns:1fr 1fr}.dash-trend-panel{grid-column:1/-1}.dash-trend-figure{max-width:650px;margin:0 auto}.dash-trend-panel .dash-empty{min-height:180px}.dash-header{flex-wrap:wrap}}@media(min-width:1280px)and (max-width:1620px){.dash-kpi{grid-template-columns:34px minmax(0,1fr);gap:8px;padding:12px 10px}.dash-kpi-icon{width:34px;height:38px}.dash-inventory-chart{gap:10px}.dash-donut{width:132px;height:132px}.dash-donut>div{width:88px;height:88px}.dash-panel-heading{gap:7px}.dash-panel-heading h2{font-size:12px}}@media(max-width:1150px){.dash-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-kpi{grid-template-columns:40px minmax(0,1fr)}.dash-kpi-icon{width:40px;height:40px}.dash-kpi-copy>span{font-size:12px}.dash-bottom-grid{grid-template-columns:1fr}.dash-inventory-chart{gap:12px}.dash-donut{width:140px;height:140px}.dash-donut>div{width:92px;height:92px}}@media(min-width:821px)and (max-width:1020px){.dash-middle-grid{grid-template-columns:1fr}}@media(max-width:820px){.dashboard.dashboard-overview{padding:24px 16px}.dashboard-overview .dashboard-header h1{font-size:27px}.dash-header-tools{justify-content:space-between;width:100%}}@media(max-width:650px){.dash-middle-grid{grid-template-columns:1fr}.dash-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-kpi-copy>span{font-size:11px}.dash-panel-heading h2{font-size:13px}.dash-inventory-chart{gap:24px}.dash-panel{padding:12px}.dash-bottom-grid .dash-table{min-width:520px}.dash-refresh,.dash-trend-tabs button{min-height:40px}.dash-panel-heading>a{min-height:40px;align-items:center}}@media(prefers-reduced-motion:reduce){.dashboard-overview .spin{animation:none}}:root{--font-sans: "Plus Jakarta Sans", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--bg-app: #f8fafc;--bg-surface: #ffffff;--bg-subtle: #f1f5f9;--bg-muted: #e2e8f0;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--text-inverse: #ffffff;--border: #e2e8f0;--border-subtle: #cbd5e1;--border-focus: #2563eb;--navy-950: #0a1424;--navy-900: #0e2036;--navy-800: #132a48;--navy-700: #1c3d69;--navy-600: #255594;--navy-accent: #2563eb;--success-bg: #ecfdf5;--success-border: #a7f3d0;--success-text: #065f46;--success-dot: #10b981;--warning-bg: #fffbeb;--warning-border: #fde68a;--warning-text: #92400e;--warning-dot: #f59e0b;--danger-bg: #fef2f2;--danger-border: #fecaca;--danger-text: #991b1b;--danger-dot: #ef4444;--info-bg: #eff6ff;--info-border: #bfdbfe;--info-text: #1e40af;--info-dot: #3b82f6;--shadow-xs: 0 1px 2px 0 rgba(15, 23, 42, .04);--shadow-sm: 0 1px 3px 0 rgba(15, 23, 42, .06), 0 1px 2px -1px rgba(15, 23, 42, .04);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .07), 0 2px 4px -2px rgba(15, 23, 42, .05);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .04);--shadow-card: 0 8px 24px rgba(15, 32, 54, .06);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-app);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;min-width:320px;min-height:100vh}button,input,select,textarea{font-family:inherit;font-size:14px}a{color:var(--navy-accent);text-decoration:none;transition:color .15s ease}a:hover{color:var(--navy-700)}.brand{display:flex;align-items:center;gap:12px;-webkit-user-select:none;user-select:none}.brand-mark{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;display:grid;place-items:center;box-shadow:0 4px 12px #2563eb4d}.brand-text{display:flex;flex-direction:column}.brand-title{font-size:19px;font-weight:500;letter-spacing:-.5px;color:var(--text-primary)}.brand-title strong{font-weight:800;color:var(--navy-900)}.brand-subtitle{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.brand-dark .brand-title,.brand-dark .brand-title strong{color:#fff}.brand-dark .brand-subtitle{color:#94a3b8}.app-shell{min-height:100vh;display:grid;grid-template-columns:270px 1fr;transition:grid-template-columns .2s ease}.app-shell.sidebar-collapsed{grid-template-columns:0 1fr}.sidebar{background:linear-gradient(180deg,var(--navy-900) 0%,var(--navy-950) 100%);color:#fff;padding:24px 16px;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.07);position:sticky;top:0;height:100vh;overflow-y:auto;z-index:40;min-width:0;transition:opacity .16s ease,transform .2s ease,visibility .2s}.app-shell.sidebar-collapsed .sidebar{visibility:hidden;opacity:0;transform:translate(-100%);pointer-events:none;overflow:hidden}.sidebar-brand-wrapper{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.08)}.mobile-close-button{display:none;background:transparent;border:0;color:#94a3b8;cursor:pointer;padding:6px;border-radius:var(--radius-sm)}.mobile-close-button:hover{color:#fff;background:#ffffff1a}.wo-status-chip{margin-top:16px;padding:10px 12px;border-radius:var(--radius-md);background:#ffffff0d;border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:10px}.wo-status-dot{width:8px;height:8px;border-radius:50%;background-color:#10b981;box-shadow:0 0 8px #10b981cc}.wo-status-dot.pulse{animation:pulse-dot 2s infinite ease-in-out}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.7}}.wo-status-info{display:flex;flex-direction:column}.wo-status-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8}.wo-status-subtitle{font-size:12px;font-weight:500;margin-top:2px}.sidebar nav{margin-top:24px;display:grid;gap:4px}.sidebar nav a{color:#cbd5e1;display:flex;align-items:center;gap:14px;padding:11px 14px;border-radius:var(--radius-md);font-size:13.5px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s,transform .1s}.sidebar nav a:hover{background:#ffffff14;color:#fff}.sidebar nav a.active{background:linear-gradient(90deg,#2563eb59,#2563eb26);color:#fff;font-weight:600;border-left:3px solid #3b82f6}.sidebar-foot{margin-top:14px;display:flex;gap:12px;padding:12px 10px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-foot .foot-icon{width:20px;height:20px;color:#60a5fa;flex-shrink:0;margin-top:2px}.sidebar-foot strong{display:block;font-size:12.5px;font-weight:700;color:#f1f5f9}.sidebar-foot span{display:block;color:#94a3b8;font-size:11px;line-height:1.45;margin-top:2px}.workspace{min-width:0;display:flex;flex-direction:column;background-color:var(--bg-app)}.topbar{height:68px;border-bottom:1px solid var(--border);background:var(--bg-surface);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:30}.topbar-left{display:flex;align-items:center;gap:16px}.mobile-hamburger{display:none;background:transparent;border:0;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:var(--radius-sm)}.desktop-sidebar-toggle{width:36px;height:36px;display:inline-grid;place-items:center;flex:0 0 auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:color .15s ease,background-color .15s ease,border-color .15s ease}.desktop-sidebar-toggle:hover{color:var(--navy-accent);background:var(--info-bg);border-color:var(--info-border)}.desktop-sidebar-toggle:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:2px}.company-context-tag{display:flex;align-items:center;gap:10px}.environment-badge{background:#f0fdf4;color:#166534;font-size:11px;font-weight:700;letter-spacing:.05em;padding:3px 8px;border-radius:var(--radius-full);border:1px solid #bbf7d0}.company-name{font-size:13.5px;font-weight:600;color:var(--text-secondary)}.topbar-right{display:flex;align-items:center;gap:16px}.user-profile-widget{display:flex;align-items:center;gap:12px;padding-left:12px}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#1e3a8a,#2563eb);color:#fff;font-weight:700;font-size:13px;letter-spacing:.05em;box-shadow:var(--shadow-sm)}.user-meta{display:flex;flex-direction:column}.user-name{font-size:13.5px;font-weight:700;color:var(--text-primary);line-height:1.2}.user-role-badge{font-size:11.5px;font-weight:600;color:var(--navy-accent);margin-top:2px}.logout-button{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-muted);width:36px;height:36px;border-radius:var(--radius-md);display:grid;place-items:center;cursor:pointer;transition:all .15s;margin-left:6px}.logout-button:hover{background:#fee2e2;color:#b91c1c;border-color:#fca5a5}.workspace-body{flex:1;padding-bottom:60px}.content-page{padding:36px;max-width:1400px;margin:0 auto}.narrow-page{max-width:860px}.breadcrumb-nav{margin-bottom:16px}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--text-muted);transition:color .15s}.back-link:hover{color:var(--navy-900)}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.page-heading h1{font-size:28px;font-weight:800;letter-spacing:-.7px;color:var(--navy-900);margin:6px 0 4px;line-height:1.2}.page-heading p{margin:0;font-size:14px;color:var(--text-secondary)}.eyebrow{color:var(--navy-600);font-size:11px;letter-spacing:.12em;font-weight:800;text-transform:uppercase;display:inline-block}.dashboard{padding:36px;max-width:1400px;margin:0 auto}.dashboard-header{margin-bottom:24px}.dashboard-header h1{font-size:32px;font-weight:800;letter-spacing:-1px;color:var(--navy-900);margin:8px 0 6px}.lead{color:var(--text-secondary);font-size:15px;margin:0}.integration-banner{border-radius:var(--radius-lg);padding:18px 22px;margin-bottom:30px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow-sm)}.integration-banner.notice-warning{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.integration-banner.notice-success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.integration-banner.notice-neutral{background:#f8fafc;border:1px solid #cbd5e1;color:#334155}.integration-banner-icon{flex-shrink:0}.integration-banner-content{flex:1}.integration-banner-content strong{display:block;font-size:14px;font-weight:700;margin-bottom:3px}.integration-banner-content p{margin:0;font-size:13px;line-height:1.45;opacity:.9}.integration-link{font-size:12.5px;font-weight:700;padding:8px 14px;border-radius:var(--radius-md);background:#fff;border:1px solid rgba(0,0,0,.1);color:inherit;display:inline-block;white-space:nowrap;box-shadow:var(--shadow-xs)}.integration-link:hover{background:#f8fafc}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-sm)}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}th{background:#f8fafc;color:#475569;font-weight:700;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;padding:13px 18px;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:14px 18px;border-bottom:1px solid #f1f5f9;vertical-align:middle;color:var(--text-primary)}tbody tr:hover{background-color:#f8fafc}tbody tr:last-child td{border-bottom:0}.sku-badge{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--navy-900);background:#f1f5f9;padding:3px 7px;border-radius:var(--radius-sm);border:1px solid #e2e8f0;display:inline-block}.sku-badge.large{font-size:14px;padding:4px 10px}.order-no-badge{font-family:var(--font-mono);font-weight:700;color:var(--navy-900);font-size:13px}.source-tag-excel{font-family:var(--font-mono);font-size:10px;font-weight:700;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;padding:1px 5px;border-radius:4px}.unit-tag{font-size:11px;font-weight:700;background:#f8fafc;color:#64748b;border:1px solid #cbd5e1;padding:2px 6px;border-radius:4px}.table-action-link{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;color:var(--navy-accent);padding:4px 8px;border-radius:var(--radius-sm);transition:background-color .15s}.table-action-link:hover{background:#eff6ff;color:#1d4ed8}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--radius-full);font-size:11.5px;font-weight:700;white-space:nowrap}.status-dot{width:6px;height:6px;border-radius:50%;background-color:currentColor}.status-pill.ok,.status-pill.order-received,.status-pill.row-matched{color:var(--success-text);background:var(--success-bg);border:1px solid var(--success-border)}.status-pill.off,.status-pill.order-draft,.status-pill.row-unmatched{color:var(--text-muted);background:var(--bg-subtle);border:1px solid var(--border)}.status-pill.pending,.status-pill.order-open,.status-pill.order-partially_received,.status-pill.row-ambiguous{color:var(--warning-text);background:var(--warning-bg);border:1px solid var(--warning-border)}.status-pill.order-cancelled,.status-pill.row-invalid{color:var(--danger-text);background:var(--danger-bg);border:1px solid var(--danger-border)}.status-pill.info{color:var(--info-text);background:var(--info-bg);border:1px solid var(--info-border)}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:12px 18px;border-top:1px solid var(--border);background:#fff}.pagination-btn{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);border-radius:var(--radius-md);padding:6px 12px;font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:4px;cursor:pointer;transition:all .15s}.pagination-btn:hover:not(:disabled){background:var(--bg-subtle);color:var(--navy-900);border-color:#cbd5e1}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-info{font-size:12.5px;font-weight:600;color:var(--text-muted)}.panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:26px;box-shadow:var(--shadow-sm)}.panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid var(--border)}.panel-header h2{font-size:17px;font-weight:750;color:var(--navy-900);margin:0}.tag-source{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--navy-600);background:#eff6ff;border:1px solid #bfdbfe;padding:3px 8px;border-radius:var(--radius-full)}.role-tag-admin{font-size:11px;font-weight:700;text-transform:uppercase;color:#7c2d12;background:#ffedd5;border:1px solid #fed7aa;padding:3px 8px;border-radius:var(--radius-full)}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.property-list{display:grid;grid-template-columns:180px 1fr;row-gap:14px;column-gap:16px;margin:0;font-size:13.5px}.property-list dt{color:var(--text-muted);font-weight:500}.property-list dd{margin:0;color:var(--text-primary);font-weight:500}.property-list-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:0}.property-list-columns dt{color:var(--text-muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.property-list-columns dd{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.form-subpanel{padding:16px;border:1px solid #f1f5f9;border-radius:var(--radius-md);background:#fafbfc;margin-bottom:16px}.form-subpanel-title{display:flex;align-items:center;gap:8px;margin-bottom:12px}.form-subpanel-title h3{font-size:13.5px;font-weight:700;color:var(--navy-900);margin:0}label{display:grid;gap:6px;font-size:13px;color:var(--text-secondary)}.field-label{font-weight:600;color:var(--text-secondary)}input:not([type=checkbox]):not([type=radio]),select{border:1px solid var(--border);border-radius:var(--radius-md);min-height:42px;padding:0 14px;background:#fff;color:var(--text-primary);outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #2563eb26}.search-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:14px;color:#94a3b8;pointer-events:none}.search{padding-left:38px!important;width:min(340px,100%)}.check{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.check input{width:16px;height:16px;cursor:pointer;accent-color:var(--navy-accent)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-action-row{display:flex;align-items:center;gap:12px;margin-top:14px}.small-button{border:0;border-radius:var(--radius-md);padding:9px 16px;color:#fff;background:var(--navy-900);font-weight:600;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;box-shadow:var(--shadow-xs);transition:all .15s}.small-button:hover:not(:disabled){background:var(--navy-800);color:#fff}.small-button:disabled{opacity:.55;cursor:not-allowed}.secondary-button{border:1px solid var(--border);border-radius:var(--radius-md);padding:9px 16px;color:var(--navy-900);background:#fff;font-weight:600;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;box-shadow:var(--shadow-xs);transition:all .15s}.secondary-button:hover:not(:disabled){background:var(--bg-subtle);border-color:#cbd5e1;color:var(--navy-900)}.ghost-button{border:1px solid var(--border);background:transparent;padding:6px 12px;border-radius:var(--radius-md);font-size:12px;font-weight:600;cursor:pointer}.ghost-button-danger{border:1px solid #fecaca;background:#fef2f2;color:#991b1b;padding:5px 10px;border-radius:var(--radius-sm);font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:5px;cursor:pointer}.ghost-button-danger:hover{background:#fee2e2}.button-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.validation-note{padding:12px 16px;margin-bottom:20px;border:1px solid #fde68a;border-radius:var(--radius-md);background:#fffbeb;color:#92400e;font-size:13px;display:flex;align-items:center;gap:12px}.validation-banner{border:1px solid #fde68a;background:#fffbeb;color:#92400e;border-radius:var(--radius-lg);padding:16px 20px;box-shadow:var(--shadow-sm)}.form-feedback-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:500}.form-feedback-banner.success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.form-feedback-banner.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.form-feedback-success{display:inline-flex;align-items:center;gap:5px;color:#059669;font-size:12.5px;font-weight:600}.form-error{color:#dc2626;font-size:13px;margin:6px 0}.empty-state{min-height:280px;display:grid;place-content:center;justify-items:center;text-align:center;background:var(--bg-surface);border:1px dashed #cbd5e1;border-radius:var(--radius-lg);padding:36px}.empty-state h2{font-size:17px;font-weight:700;color:var(--navy-900);margin:8px 0 4px}.empty-copy{color:var(--text-muted);font-size:13.5px;margin:0}.stepper{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 24px}.stepper li{display:flex;align-items:center;gap:12px;color:#64748b;border-bottom:3px solid #e2e8f0;padding:12px 6px;transition:all .2s}.stepper li span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e2e8f0;font-size:12px;font-weight:700;color:#475569;flex-shrink:0}.stepper li.active{color:var(--navy-900);border-color:var(--navy-accent)}.stepper li.active span{background:var(--navy-accent);color:#fff}.stepper li.completed{border-color:#10b981;color:#065f46}.stepper li.completed span{background:#10b981;color:#fff}.stepper-title{font-size:13px;font-weight:700}.file-dropzone{border:2px dashed #cbd5e1;border-radius:var(--radius-lg);background:#f8fafc;padding:32px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:border-color .15s,background-color .15s}.file-dropzone:hover{border-color:#94a3b8;background:#f1f5f9}.file-input-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.file-summary-card{padding:14px 18px;border-radius:var(--radius-md);background:#f1f5f9;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.file-meta-pills{display:flex;gap:8px;flex-wrap:wrap}.summary-pill{font-size:12px;font-weight:600;color:#475569;background:#fff;padding:2px 8px;border-radius:var(--radius-sm);border:1px solid #cbd5e1}.mapping-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}.mapping-field-card{display:flex;flex-direction:column;gap:6px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:var(--radius-md)}.mapping-label{font-size:12.5px;font-weight:700;color:var(--navy-900)}.preview-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:20px}.metric-pill{padding:10px 14px;border-radius:var(--radius-md);background:#f8fafc;border:1px solid #e2e8f0;display:flex;flex-direction:column}.metric-label{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-muted)}.metric-value{font-size:18px;font-weight:750;color:var(--navy-900);margin-top:2px}.metric-pill.success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.metric-pill.warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.metric-pill.error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.metric-pill.info{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.filter-tabs-pills{display:flex;gap:6px;flex-wrap:wrap}.filter-btn-pill{border:1px solid var(--border);background:#fff;color:var(--text-secondary);border-radius:var(--radius-full);padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}.filter-btn-pill:hover{background:#f1f5f9}.filter-btn-pill.active{background:var(--navy-900);color:#fff;border-color:var(--navy-900)}.filter-and-search-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.confirm-summary-box{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:var(--radius-md)}.summary-item{display:flex;flex-direction:column}.summary-label{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-muted)}.summary-value{font-size:15px;color:var(--navy-900);margin-top:2px}.resolution-controls-box{display:flex;flex-direction:column;gap:6px;min-width:200px}.filter-row{display:flex;gap:16px;align-items:flex-end}.filter-group{display:flex;flex-direction:column}.filter-field{display:flex;flex-direction:column;gap:4px}.filter-tabs{display:flex;gap:8px;margin-bottom:18px;overflow-x:auto;padding-bottom:2px}.filter-tab-btn{border:1px solid var(--border);border-radius:var(--radius-full);background:#fff;padding:7px 14px;cursor:pointer;color:var(--text-secondary);font-size:13px;font-weight:600;white-space:nowrap;transition:all .15s}.filter-tab-btn:hover{background:#f1f5f9}.filter-tab-btn.active{background:var(--navy-900);color:#fff;border-color:var(--navy-900)}.supplier-avatar{width:32px;height:32px;border-radius:var(--radius-md);background:#eff6ff;color:#2563eb;display:grid;place-items:center;flex-shrink:0}.supplier-title{font-size:13.5px;font-weight:700;color:var(--navy-900)}.count-pill{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--text-secondary);background:#f1f5f9;padding:3px 8px;border-radius:var(--radius-sm)}.line-count-pill{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--text-secondary)}.pending-supplier{color:#b45309;font-weight:600}.modified-copy{display:inline-block;color:#6d28d9;font-weight:700;background:#f5f3ff;border:1px solid #ddd6fe;padding:1px 6px;border-radius:4px;margin-top:4px}.loading-container{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text-muted)}.loading-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:var(--navy-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}.loading-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:16px;color:var(--text-secondary);background:var(--bg-app)}.mobile-overlay{position:fixed;inset:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:35}@media(max-width:820px){.app-shell{display:block}.app-shell.sidebar-collapsed .sidebar{visibility:visible;opacity:1;pointer-events:auto;overflow-y:auto}.sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;transform:translate(-100%);transition:transform .25s ease}.sidebar.sidebar-mobile-open{transform:translate(0)}.mobile-close-button,.mobile-hamburger{display:block}.desktop-sidebar-toggle{display:none}.topbar{padding:0 16px;gap:8px}.topbar-left,.topbar-right,.user-profile-widget{min-width:0}.integration-banner{align-items:flex-start;flex-wrap:wrap}.integration-banner-action{margin-left:38px}.content-page,.dashboard{padding:24px 16px}.page-heading{flex-direction:column;align-items:flex-start;gap:16px}.detail-grid,.form-grid,.mapping-grid,.confirm-summary-box{grid-template-columns:1fr}.stepper{grid-template-columns:repeat(2,1fr)}.property-list{grid-template-columns:1fr;row-gap:6px}.property-list dt{margin-top:8px;font-size:12px}.property-list-columns{grid-template-columns:repeat(2,1fr)}}.login-v2-container{min-height:100vh;position:relative;display:flex;flex-direction:column;background-color:#f8fafd;background-image:radial-gradient(circle at 15% 30%,rgba(219,234,254,.5) 0%,transparent 50%),radial-gradient(circle at 85% 65%,rgba(224,242,254,.45) 0%,transparent 45%),linear-gradient(135deg,#f8fafc,#fff,#f1f5f9);overflow-x:hidden;font-family:var(--font-sans)}.login-v2-bg{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}.login-v2-bg-svg{width:100%;height:100%;object-fit:cover}.login-v2-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:32px 56px;width:100%}.login-v2-brand{display:flex;align-items:center;gap:12px}.login-v2-brand-icon{width:38px;height:38px;border-radius:10px;background:#2563eb;color:#fff;display:grid;place-items:center;box-shadow:0 4px 12px #2563eb40}.login-v2-brand-text{display:flex;flex-direction:column}.login-v2-brand-name{font-size:17px;font-weight:800;color:#0f172a;letter-spacing:-.3px;line-height:1.15}.login-v2-brand-tag{font-size:10.5px;font-weight:700;color:#64748b;letter-spacing:.08em;margin-top:1px}.login-v2-tagline{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:500;color:#64748b}.login-v2-tagline-dash{width:24px;height:1px;background-color:#cbd5e1}.login-v2-content{position:relative;z-index:10;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 20px 48px}.login-v2-card{width:100%;max-width:440px;background:#fff;border-radius:20px;padding:38px 36px 36px;box-shadow:0 20px 45px -12px #0f172a14,0 2px 8px #0f172a05,0 0 0 1px #e2e8f0e6;transition:box-shadow .25s ease}.login-v2-card:hover{box-shadow:0 24px 50px -12px #0f172a1a,0 4px 12px #0f172a08,0 0 0 1px #cbd5e1e6}.login-v2-card-brand{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:20px}.login-v2-card-icon{width:44px;height:44px;border-radius:11px;background:#2563eb;color:#fff;display:grid;place-items:center;box-shadow:0 6px 16px -2px #2563eb4d;margin-bottom:10px}.login-v2-card-title{font-size:20px;font-weight:800;color:#0f172a;letter-spacing:-.4px}.login-v2-card-subtitle{font-size:10px;font-weight:700;letter-spacing:.11em;color:#64748b;margin-top:2px}.login-v2-card-divider{width:28px;height:2px;background-color:#e2e8f0;border-radius:2px;margin-top:14px}.login-v2-heading{font-size:20px;font-weight:800;color:#0f172a;letter-spacing:-.4px;margin:0 0 18px;text-align:left}.login-v2-form{display:flex;flex-direction:column;gap:16px}.login-v2-field-group{display:flex;flex-direction:column;gap:6px}.login-v2-label{font-size:13px;font-weight:600;color:#475569;text-align:left}.login-v2-input-wrapper{position:relative;display:flex;align-items:center;background:#fff;border:1px solid #d8e0eb;border-radius:10px;height:48px;padding:0 14px;transition:border-color .15s,box-shadow .15s}.login-v2-input-wrapper:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb24}.login-v2-input-icon{color:#64748b;flex-shrink:0;margin-right:12px}.login-v2-input{flex:1;min-width:0;border:0!important;outline:none!important;box-shadow:none!important;padding:0!important;height:100%!important;font-size:14px!important;color:#0f172a!important;background:transparent!important}.login-v2-input::placeholder{color:#94a3b8}.login-v2-password-toggle{background:transparent;border:0;color:#64748b;cursor:pointer;padding:4px;display:grid;place-items:center;border-radius:4px;transition:color .15s}.login-v2-password-toggle:hover{color:#0f172a}.login-v2-options-row{display:flex;align-items:center;justify-content:flex-end;margin:4px 0 6px}.login-v2-forgot-link{background:transparent;border:0;padding:0;font-size:13px;font-weight:600;color:#2563eb;cursor:pointer;transition:color .15s}.login-v2-forgot-link:hover{color:#1d4ed8;text-decoration:underline}.login-v2-submit-button{height:46px;background:#2563eb;color:#fff;border:0;border-radius:10px;font-size:14.5px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;box-shadow:0 4px 14px #2563eb47;transition:background-color .15s,transform .1s,box-shadow .15s;margin-top:8px}.login-v2-submit-button:hover:not(:disabled){background:#1d4ed8;box-shadow:0 6px 18px #2563eb61;transform:translateY(-1px)}.login-v2-submit-button:active:not(:disabled){transform:translateY(0)}.login-v2-submit-button:disabled{opacity:.7;cursor:not-allowed}.login-v2-error{padding:10px 14px;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:#991b1b;font-size:12.5px;margin-bottom:14px}.login-v2-modal-overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px;z-index:50}.login-v2-modal{width:100%;max-width:400px;background:#fff;border-radius:16px;padding:28px;box-shadow:0 20px 40px #00000026}.login-v2-modal h3{font-size:18px;font-weight:700;color:#0f172a;margin:0 0 8px}.login-v2-modal p{font-size:13.5px;color:#475569;line-height:1.5;margin:0}@media(max-width:768px){.login-v2-header{padding:20px 24px;flex-direction:column;align-items:flex-start;gap:12px}.login-v2-tagline{display:none}.login-v2-card{padding:32px 24px 28px;border-radius:20px}.login-v2-content{padding:16px 16px 36px}}@media(max-width:480px){.topbar{padding:0 10px}.topbar-left,.user-profile-widget{gap:6px}.user-profile-widget{padding-left:0}.company-name,.user-meta{display:none}.avatar,.logout-button{width:32px;height:32px}.logout-button{margin-left:0}.integration-banner{flex-direction:column;padding:16px}.integration-banner-action{width:100%;margin-left:0}.integration-link{width:100%;white-space:normal;text-align:center}.filter-tabs{width:100%;max-width:100%}}
