:root{--bg-app: #f8fafc;--bg-surface: #ffffff;--bg-surface-raised: #ffffff;--bg-surface-sunken: #F2F2F7;--bg-header: #ffffff;--bg-filter-bar: #fafbfc;--bg-hover: #F5F7FF;--bg-row-alt: #FAFAFC;--bg-selection: #f0f5ff;--bg-overlay: rgba(15,23,42,.35);--bg-toast: #1C1C1E;--bg-selection-bar: #0f172a;--bg-expanded: #fafbfc;--bg-batch-detail: #faf5ff;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #94a3b8;--text-muted: #cbd5e1;--text-on-primary: #fff;--text-heading: #1C1C1E;--text-label: #64748b;--text-header-sort: #b0b8c4;--border-default: #e2e8f0;--border-light: #f1f5f9;--border-lighter: #f8fafc;--border-focus: #007AFF;--border-active: #cbd5e1;--accent-primary: #3b82f6;--accent-primary-hover: #0066D6;--accent-success: #22c55e;--accent-success-dark: #15803d;--accent-warning: #f59e0b;--accent-warning-dark: #b45309;--accent-danger: #ef4444;--accent-danger-dark: #dc2626;--accent-purple: #8b5cf6;--accent-purple-dark: #7c3aed;--accent-pink: #be185d;--accent-orange: #f97316;--accent-teal: #0d9488;--accent-cyan: #0ea5e9;--accent-cyan-dark: #0284c7;--accent-primary-10: #3b82f610;--accent-primary-14: #3b82f614;--accent-primary-40: #3b82f640;--accent-primary-0a: #3b82f60a;--accent-success-10: #22c55e10;--accent-success-14: #15803d14;--accent-success-40: #22c55e40;--accent-danger-10: #ef444410;--accent-danger-0a: #ef44440a;--accent-purple-10: #8b5cf610;--accent-purple-14: #8b5cf614;--accent-purple-40: #8b5cf640;--accent-orange-14: #f9731614;--accent-orange-40: #f9731640;--accent-orange-60: #f9731660;--accent-purple-60: #8b5cf660;--accent-danger-60: #ef444460;--accent-success-60: #15803d60;--status-shipped-bg: #dcfce7;--status-shipped-color: #15803d;--status-transit-bg: #fef3c7;--status-transit-color: #b45309;--status-pending-bg: #f1f5f9;--status-pending-color: #64748b;--status-processing-bg: #eff6ff;--status-processing-color: #3b82f6;--status-error-bg: #fef2f2;--status-error-border: #fecaca;--status-warn-bg: #fffbeb;--status-warn-border: #fde68a;--status-warn-color: #92400e;--status-info-bg: #eff6ff;--status-not-formed-bg: #fff7ed;--status-not-formed-color: #ea580c;--status-not-formed-border: #fed7aa;--btn-default-bg: #fff;--btn-default-border: #e2e8f0;--btn-default-color: #64748b;--btn-default-hover-bg: #f8fafc;--btn-default-hover-border: #cbd5e1;--btn-default-hover-color: #1e293b;--btn-primary-bg: #007AFF;--btn-primary-border: #007AFF;--btn-green-bg: #34C759;--btn-green-border: #34C759;--btn-yellow-bg: #FF9500;--btn-yellow-border: #FF9500;--btn-disabled-bg: #334155;--input-bg: #F2F2F7;--input-focus-bg: #fff;--chip-color: #8E8E93;--chip-on-bg: #fff;--chip-on-color: #1C1C1E;--chip-on-border: #e2e8f0;--chip-hover-bg: rgba(255,255,255,.5);--chip-hover-color: #636366;--glass-bg: rgba(255,255,255,.92);--glass-border: rgba(0,0,0,.06);--glass-divider: rgba(0,0,0,.04);--glass-divider-heavy: rgba(0,0,0,.06);--drawer-bg: #F2F2F7;--scrollbar-thumb: #C7C7CC;--shadow-sm: 0 1px 3px rgba(0,0,0,.04);--shadow-md: 0 8px 32px rgba(0,0,0,.12);--shadow-lg: 0 25px 60px rgba(0,0,0,.18);--shadow-dropdown: 0 16px 48px rgba(0,0,0,.16);--shadow-popover: 0 8px 32px rgba(0,0,0,.12), 0 2px 8px rgba(0,0,0,.06);--shadow-selection-bar: 0 20px 60px rgba(0,0,0,.3);--shadow-btn-primary: 0 2px 10px rgba(0,122,255,.25);--shadow-btn-green: 0 2px 10px rgba(52,199,89,.25);--shadow-toast: 0 12px 40px rgba(0,0,0,.2);--shadow-chip-on: 0 1px 4px rgba(0,0,0,.05);--urgency-critical: #FF3B30;--urgency-urgent: #FF9500;--urgency-normal: #007AFF;--urgency-ok: #34C759;--ma-bg: #e0f2fe;--ma-color: #0284c7;--ma-border: #bae6fd;--batch-bg: #f5f3ff;--batch-border: #ede9fe;--batch-color: #7c3aed;--batch-accent: #a78bfa;--chart-grid: #F2F2F7;--chart-axis-tick: #6B7280;--chart-axis-line: #E5E5EA;--selection-bar-divider: rgba(255,255,255,.12);--selection-bar-btn-bg: rgba(255,255,255,.08);--selection-bar-btn-border: rgba(255,255,255,.1);--logo-gradient: linear-gradient(135deg, #4f83f1, #818cf8);--checkbox-checked: #4f83f1;--checkbox-unchecked-border: #d1d5db;--transition-theme: background-color .3s ease, color .3s ease, border-color .3s ease}[data-theme=dark]{--bg-app: #08080f;--bg-surface: #13132a;--bg-surface-raised: #1a1a35;--bg-surface-sunken: #0c0c1a;--bg-header: #10102a;--bg-filter-bar: #0e0e20;--bg-hover: #1a1a38;--bg-row-alt: #0f0f22;--bg-selection: #1a2550;--bg-overlay: rgba(0,0,0,.6);--bg-toast: #2a2a40;--bg-selection-bar: #0e0e20;--bg-expanded: #0e0e20;--bg-batch-detail: #1a1530;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-tertiary: #8494a7;--text-muted: #708090;--text-on-primary: #fff;--text-heading: #e2e8f0;--text-label: #94a3b8;--text-header-sort: #7a8a9e;--border-default: #1e2040;--border-light: #161630;--border-lighter: #121228;--border-focus: #4f83f1;--border-active: #2a2a50;--accent-primary: #5b9aff;--accent-primary-hover: #7ab0ff;--accent-success: #34d06a;--accent-success-dark: #22c55e;--accent-warning: #fbbf24;--accent-warning-dark: #d97706;--accent-danger: #f87171;--accent-danger-dark: #ef4444;--accent-purple: #a78bfa;--accent-purple-dark: #8b5cf6;--accent-pink: #f472b6;--accent-orange: #fb923c;--accent-teal: #2dd4bf;--accent-cyan: #38bdf8;--accent-cyan-dark: #0ea5e9;--accent-primary-10: rgba(91,154,255,.1);--accent-primary-14: rgba(91,154,255,.14);--accent-primary-40: rgba(91,154,255,.25);--accent-primary-0a: rgba(91,154,255,.06);--accent-success-10: rgba(52,208,106,.1);--accent-success-14: rgba(34,197,94,.14);--accent-success-40: rgba(52,208,106,.25);--accent-danger-10: rgba(248,113,113,.1);--accent-danger-0a: rgba(248,113,113,.06);--accent-purple-10: rgba(167,139,250,.1);--accent-purple-14: rgba(167,139,250,.14);--accent-purple-40: rgba(167,139,250,.25);--accent-orange-14: rgba(251,146,60,.14);--accent-orange-40: rgba(251,146,60,.25);--accent-orange-60: rgba(251,146,60,.35);--accent-purple-60: rgba(167,139,250,.35);--accent-danger-60: rgba(248,113,113,.35);--accent-success-60: rgba(34,197,94,.35);--status-shipped-bg: rgba(34,197,94,.12);--status-shipped-color: #34d06a;--status-transit-bg: rgba(251,191,36,.1);--status-transit-color: #fbbf24;--status-pending-bg: rgba(100,116,139,.1);--status-pending-color: #94a3b8;--status-processing-bg: rgba(91,154,255,.1);--status-processing-color: #5b9aff;--status-error-bg: rgba(248,113,113,.08);--status-error-border: rgba(248,113,113,.2);--status-warn-bg: rgba(251,191,36,.06);--status-warn-border: rgba(251,191,36,.2);--status-warn-color: #fbbf24;--status-info-bg: rgba(91,154,255,.08);--status-not-formed-bg: rgba(251,146,60,.08);--status-not-formed-color: #fb923c;--status-not-formed-border: rgba(251,146,60,.2);--btn-default-bg: #1e1e35;--btn-default-border: #2a2a45;--btn-default-color: #94a3b8;--btn-default-hover-bg: #252545;--btn-default-hover-border: #35355a;--btn-default-hover-color: #e2e8f0;--btn-primary-bg: #4f83f1;--btn-primary-border: #4f83f1;--btn-green-bg: #22c55e;--btn-green-border: #22c55e;--btn-yellow-bg: #d97706;--btn-yellow-border: #d97706;--btn-disabled-bg: #1e293b;--input-bg: #12121f;--input-focus-bg: #1a1a30;--chip-color: #8494a7;--chip-on-bg: #1a1a35;--chip-on-color: #e2e8f0;--chip-on-border: #2a2a45;--chip-hover-bg: rgba(255,255,255,.04);--chip-hover-color: #b0bec5;--glass-bg: rgba(20,20,42,.88);--glass-border: rgba(255,255,255,.06);--glass-divider: rgba(255,255,255,.04);--glass-divider-heavy: rgba(255,255,255,.06);--drawer-bg: #0c0c1a;--scrollbar-thumb: #2a2a45;--shadow-sm: 0 1px 3px rgba(0,0,0,.2);--shadow-md: 0 8px 32px rgba(0,0,0,.4);--shadow-lg: 0 25px 60px rgba(0,0,0,.5);--shadow-dropdown: 0 16px 48px rgba(0,0,0,.5);--shadow-popover: 0 8px 32px rgba(0,0,0,.4), 0 2px 8px rgba(0,0,0,.2);--shadow-selection-bar: 0 20px 60px rgba(0,0,0,.5);--shadow-btn-primary: 0 2px 10px rgba(79,131,241,.3);--shadow-btn-green: 0 2px 10px rgba(34,197,94,.3);--shadow-toast: 0 12px 40px rgba(0,0,0,.4);--shadow-chip-on: 0 1px 4px rgba(0,0,0,.2);--urgency-critical: #f87171;--urgency-urgent: #fbbf24;--urgency-normal: #5b9aff;--urgency-ok: #34d06a;--ma-bg: rgba(14,165,233,.12);--ma-color: #38bdf8;--ma-border: rgba(56,189,248,.2);--batch-bg: rgba(139,92,246,.06);--batch-border: rgba(139,92,246,.15);--batch-color: #a78bfa;--batch-accent: #c4b5fd;--chart-grid: #2a2a45;--chart-axis-tick: #8494a7;--chart-axis-line: #2a2a45;--selection-bar-divider: rgba(255,255,255,.08);--selection-bar-btn-bg: rgba(255,255,255,.06);--selection-bar-btn-border: rgba(255,255,255,.08);--logo-gradient: linear-gradient(135deg, #5b9aff, #a78bfa);--checkbox-checked: #5b9aff;--checkbox-unchecked-border: #5a5a7c}*{box-sizing:border-box;margin:0}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,DM Sans,sans-serif;background:var(--bg-app);color:var(--text-heading);transition:var(--transition-theme)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:99px}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92) translateY(8px)}to{opacity:1;transform:none}}@keyframes scaleOut{0%{opacity:1;transform:none}to{opacity:0;transform:scale(.92) translateY(8px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}@keyframes badgeBounce{0%{transform:scale(1)}40%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes checkPop{0%{transform:scale(0)}60%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes shrinkProgress{0%{width:100%}to{width:0}}@keyframes slideDown{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,12px)}}.skeleton{background:linear-gradient(90deg,var(--bg-surface-sunken) 25%,var(--bg-surface) 50%,var(--bg-surface-sunken) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}.boxes-refreshing{position:relative;pointer-events:none}.boxes-refreshing:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 25%,var(--bg-surface) 50%,transparent 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;opacity:.35;border-radius:12px;z-index:5}.boxes-refreshing>*{opacity:.6;transition:opacity .2s}.hover-lift{transition:transform .2s,box-shadow .2s}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.row-h{transition:background .15s;cursor:pointer}.row-h:hover{background:var(--bg-hover)!important}.row-h:nth-child(2n){background:var(--bg-row-alt)}.stock-cell{transition:background .15s;border-radius:8px}.sort-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}.sort-header:hover{color:var(--text-label)}.status-badge:hover{transform:translateY(-1px)}.btn{background:var(--btn-default-bg);border:1.5px solid var(--btn-default-border);border-radius:10px;color:var(--btn-default-color);padding:8px 16px;cursor:pointer;font-size:12px;font-family:inherit;display:inline-flex;align-items:center;gap:6px;font-weight:600;transition:all .15s;white-space:nowrap}.btn:hover{background:var(--btn-default-hover-bg);border-color:var(--btn-default-hover-border);color:var(--btn-default-hover-color)}.btn:active{transform:scale(.97)}.btn-p{background:var(--btn-primary-bg);border:1.5px solid var(--btn-primary-border);border-radius:10px;color:var(--text-on-primary);padding:8px 18px;cursor:pointer;font-size:12px;font-family:inherit;display:inline-flex;align-items:center;gap:6px;font-weight:700;transition:all .15s;box-shadow:var(--shadow-btn-primary);white-space:nowrap}.btn-p:hover{background:var(--accent-primary-hover)}.btn-p:active{transform:scale(.97)}.btn-g{background:var(--btn-green-bg);border:1.5px solid var(--btn-green-border);border-radius:10px;color:var(--text-on-primary);padding:8px 16px;cursor:pointer;font-size:12px;font-family:inherit;display:inline-flex;align-items:center;gap:6px;font-weight:700;transition:all .15s;box-shadow:var(--shadow-btn-green);white-space:nowrap}.btn-g:active{transform:scale(.97)}.btn-y{background:var(--btn-yellow-bg);border:1.5px solid var(--btn-yellow-border);border-radius:10px;color:var(--text-on-primary);padding:8px 16px;cursor:pointer;font-size:12px;font-family:inherit;display:inline-flex;align-items:center;gap:6px;font-weight:700;transition:all .15s;white-space:nowrap}.btn-y:active{transform:scale(.97)}.chip{padding:6px 14px;border-radius:10px;cursor:pointer;font-size:12px;font-family:inherit;border:1.5px solid transparent;background:none;color:var(--chip-color);font-weight:500;transition:all .15s;display:inline-flex;align-items:center;gap:6px}.chip.on{background:var(--chip-on-bg);color:var(--chip-on-color);border-color:var(--chip-on-border);box-shadow:var(--shadow-chip-on);font-weight:700}.chip:not(.on):hover{color:var(--chip-hover-color);background:var(--chip-hover-bg)}input[type=text],input[type=number],input[type=date]{background:var(--input-bg);border:1.5px solid transparent;border-radius:10px;color:var(--text-primary);padding:8px 12px;font-family:inherit;font-size:13px;outline:none;transition:border-color .15s,background .15s}input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #007aff1a;background:var(--input-focus-bg)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--bg-toast);color:var(--text-on-primary);padding:12px 28px;border-radius:14px;font-size:13px;z-index:2000;animation:slideUp .25s ease;box-shadow:var(--shadow-toast);font-weight:600;overflow:hidden}.toast-progress{position:absolute;bottom:0;left:0;height:2px;background:var(--accent-primary);animation:shrinkProgress 3s linear forwards}.toast-success{border-bottom:2px solid var(--accent-success)}.toast-error{border-bottom:2px solid var(--accent-danger)}.toast-info{border-bottom:2px solid var(--accent-primary)}.badge-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite}.badge-bounce{animation:badgeBounce .4s ease}.disabled{opacity:.4;cursor:not-allowed!important;pointer-events:none}.ios-backdrop{position:fixed;inset:0;background:var(--bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100}.ios-drawer{position:fixed;top:0;right:0;bottom:0;width:680px;max-width:95vw;background:var(--drawer-bg);z-index:1101;display:flex;flex-direction:column;animation:slideInRight .3s cubic-bezier(.2,.9,.3,1);box-shadow:-8px 0 30px #00000026;transition:width .35s cubic-bezier(.4,0,.2,1)}.ios-drawer.settings-open{width:1100px}@media(max-width:1200px){.ios-drawer.settings-open{width:680px;max-width:95vw}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeRefresh{0%{opacity:1}30%{opacity:.5}to{opacity:1}}.forecast-refreshing{animation:fadeRefresh .6s ease}@keyframes progressSlide{0%{transform:translate(-100%)}to{transform:translate(100%)}}.ios-card{background:var(--bg-surface);border-radius:12px;padding:16px;margin-bottom:12px}.ios-popover{position:absolute;z-index:1200;background:var(--glass-bg);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-radius:14px;border:1px solid var(--glass-border);box-shadow:var(--shadow-popover);animation:fadeIn .15s ease;overflow:hidden}.urgency-critical{background:var(--urgency-critical);color:#fff;padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.3px}.urgency-urgent{background:var(--urgency-urgent);color:#fff;padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.3px}.urgency-normal{background:var(--urgency-normal);color:#fff;padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.3px}.urgency-ok{background:var(--urgency-ok);color:#fff;padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.3px}.header-gradient{height:2px;background:linear-gradient(90deg,var(--accent-primary),var(--accent-purple),var(--accent-pink))}[data-theme=dark] .btn-p{background:linear-gradient(135deg,#4f83f1,#6366f1);box-shadow:0 2px 16px #4f83f159}[data-theme=dark] .ios-popover{box-shadow:var(--shadow-popover),inset 0 1px #ffffff0d}[data-theme=dark] .ios-drawer{box-shadow:-8px 0 40px #0006}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.8);cursor:pointer}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.8)}.dw-date-input{width:100%;font-size:12px;padding:4px 6px;border-radius:6px;border:1px solid var(--border-default);background:var(--input-bg);color:var(--text-primary);font-family:inherit}.dw-date-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #007aff1a;outline:none}@keyframes dwPulse{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 6px #ef444400}}.dw-status-pulse{animation:dwPulse 1.8s ease-in-out infinite;border-radius:6px}
