@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--bg-base:#f3f4f6;--bg-surface:#fff;--bg-elevated:#fff;--bg-card:#fff;--bg-hover:#f9fafb;--border:#e5e7eb;--border-light:#d1d5db;--text-primary:#111827;--text-secondary:#4b5563;--text-tertiary:#9ca3af;--text-muted:#d1d5db;--accent:#1f2937;--accent-light:#374151;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", monospace;--sidebar-w:240px;--transition:.15s ease;--shadow-sm:0 1px 2px #0000000d;--shadow:0 1px 3px #0000001a, 0 1px 2px #0000000f;--radius:8px;--fill-subtle:#f3f4f6;--text-disabled:#6b7280;--status-success:#22c55e;--status-danger:#ef4444;--status-warning:#f59e0b;--badge-success-bg:#f0fdf4;--badge-success-text:#15803d;--badge-success-border:#bbf7d0;--badge-warning-bg:#fffbeb;--badge-warning-text:#b45309;--badge-warning-border:#fde68a;--badge-danger-bg:#fef2f2;--badge-danger-text:#dc2626;--badge-danger-border:#fecaca;--badge-info-bg:#eff6ff;--badge-blue-bg:#dbeafe;--badge-blue-text:#2563eb;--badge-blue-hover-text:#1d4ed8;--badge-blue-hover-border:#93c5fd;--badge-green-bg:#dcfce7;--badge-green-text:#16a34a;--badge-purple-bg:#ede9fe;--badge-purple-text:#7c3aed;--badge-indigo-bg:#eef2ff;--badge-indigo-text:#4338ca;--badge-indigo-border:#818cf8;--badge-indigo-hover-bg:#c7d2fe;--badge-neutral-bg:#e5e7eb;--badge-neutral-text:#6b7280;--badge-emerald-bg:#ecfdf5;--badge-emerald-text:#047857;--badge-emerald-border:#d1fae5;--chart-bar:#6366f1;--chart-bar-hover:#4f46e5;--table-header-bg:#cbd5e1;--table-header-text:#1e293b;--table-header-border:#94a3b8;--table-row-even:#f9fafb;--table-locked-bg:#f1f5f9;--table-locked-active-bg:#e2e8f0;--table-hover-bg:#f0f4ff;--table-cell-border:#f0f1f3;--table-closed-row-bg:#d5d5d5;--table-closed-row-bg-plain:#d5d5d5;--text-heading:#0f172a;--text-strong:#1e293b;--text-dark:#374151;--text-meta:#64748b;--text-faint:#94a3b8;--text-placeholder:#cbd5e1;--text-green-deep:#166534;--text-red-deep:#991b1b;--text-amber-deep:#854d0e;--text-warning-strong:#92400e;--text-teal:#0d9488;--text-blue-deep:#1e40af;--badge-sky-text:#0284c7;--border-faint:#f1f5f9;--border-danger-strong:#fca5a5;--border-green:#86efac;--badge-blue-border:#bfdbfe;--badge-sky-border:#7dd3fc;--badge-teal-border:#99f6e4;--badge-warning-border-strong:#fcd34d;--bg-subtle:#f8fafc;--bg-muted:#f1f5f9;--bg-chip:#e2e8f0;--bg-red-deep:#fee2e2;--bg-amber-deep:#fef9c3;--bg-amber-badge:#fef3c7;--badge-sky-bg:#e0f2fe;--badge-sky-bg-subtle:#f0f9ff;--badge-teal-bg:#f0fdfa;--badge-danger-bg-subtle:#dc262618;--badge-danger-border-subtle:#dc262640;--btn-success-bg:#16a34a;--btn-danger-bg:#dc2626;--btn-info-bg:#0284c7;--btn-warning-bg:#d97706;--btn-purple-bg:#7c3aed;--btn-primary-bg:#2563eb;--toast-bg:#1e293b;--toast-text:#f8fafc;--accent-bar-slate:#64748b;--accent-bar-teal:#14b8a6;--accent-bar-indigo:#6366f1;--accent-bar-amber:#f59e0b;--accent-bar-blue:#3b82f6;--accent-bar-purple:#8b5cf6;--accent-bar-cyan:#06b6d4;--accent-bar-pink:#ec4899;--accent-bar-green:#10b981;--border-slate:#e2e8f0;--border-input:#cbd5e1;--text-slate:#475569;--bg-chip-active:#1e293b;--btn-sync-bg:#0369a1;--bg-sidebar-panel:#fafafa;--border-sky-soft:#bae6fd;--bg-emerald-badge:#d1fae5;--text-emerald-deep:#065f46;--border-emerald-mid:#6ee7b7;--text-emerald-mid:#6ee7b7;--bg-cyan-badge:#cffafe;--text-cyan-deep:#155e75;--bg-pink-badge:#fce7f3;--text-pink-deep:#9d174d;--bg-orange-badge:#ffedd5;--text-orange-deep:#9a3412;--bg-amber-pale:#fefce8;--bg-cyan-pale:#ecfeff;--bg-purple-pale:#faf5ff;--border-highlight-gold:#eab308;--bg-blue-hover-soft:#f0f7ff;--btn-primary-bg-deep:#1d4ed8;--btn-slate-bg:#94a3b8;--btn-disabled-bg:#cbd5e1;--bg-card-faint:#fafbfc;--border-emerald-soft:#a7f3d0;--accent-bar-emerald:#16a34a;--text-blue-bright:#3b82f6;--bg-amber-pill:#fde68a;--bg-amber-hover:#fef08a;--card-blue-title:#1e3a8a;--card-green-title:#064e3b;--card-purple-title:#4c1d95;--card-amber-title:#78350f;--card-red-title:#7f1d1d;--card-teal-title:#134e4a;--card-pink-title:#831843;--card-indigo-title:#312e81;--card-amber-sub:#d97706;--card-pink-sub:#db2777;--card-cyan-sub:#0891b2;--card-purple-header-bg:#f5f3ff;--card-pink-header-bg:#fdf2f8;--card-teal-header-border:#ccfbf1;--card-indigo-header-border:#e0e7ff;--btn-primary-gradient-end:#1e3a8a;--btn-gold-bg:#eab308;--btn-indigo-bg:#6366f1;--accent-bar-blue-deep:#1d4ed8;--text-amber-strong:#a16207;--bg-red-pale:#fff5f5;--text-slate-deep:#334155;--text-blue-strong:#1d4ed8;--btn-neutral-bg:#9ca3af;--text-teal-deep:#0f766e;--accent-bar-gray:#4b5563;--border-hairline:#f3f4f6;--text-red-strong:#b91c1c;--bg-canvas-dark:#0f172a;--btn-primary-bg-loading:#93c5fd;--text-rank-unused:#d4a017;--text-rank-a:#166534;--text-rank-b:#1d4ed8;--text-rank-c:#dc2626;--text-rank-d:#9ca3af}:root[data-theme=dark]{--bg-base:#0f1115;--bg-surface:#1a1d24;--bg-elevated:#1c1f26;--bg-card:#1a1d24;--bg-hover:#21252d;--border:#2a2d35;--border-light:#363a44;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-tertiary:#6b7280;--text-muted:#4b5563;--accent:#4b5563;--accent-light:#6b7280;--shadow-sm:0 1px 2px #0000004d;--shadow:0 1px 3px #0006, 0 1px 2px #0000004d;--fill-subtle:#262b34;--text-disabled:#9ca3af;--status-success:#4ade80;--status-danger:#f87171;--status-warning:#fbbf24;--badge-success-bg:#10301f;--badge-success-text:#4ade80;--badge-success-border:#1c5638;--badge-warning-bg:#2b2210;--badge-warning-text:#fbbf24;--badge-warning-border:#5c3d0a;--badge-danger-bg:#2e1416;--badge-danger-text:#f87171;--badge-danger-border:#5c2326;--badge-info-bg:#131f33;--badge-blue-bg:#1a2c47;--badge-blue-text:#60a5fa;--badge-blue-hover-text:#93c5fd;--badge-blue-hover-border:#3b82f6;--badge-green-bg:#12301e;--badge-green-text:#4ade80;--badge-purple-bg:#241b3d;--badge-purple-text:#a78bfa;--badge-indigo-bg:#1c2142;--badge-indigo-text:#a5b4fc;--badge-indigo-border:#4338ca;--badge-indigo-hover-bg:#2a2f5c;--badge-neutral-bg:#363a44;--badge-neutral-text:#9ca3af;--badge-emerald-bg:#0d2b22;--badge-emerald-text:#34d399;--badge-emerald-border:#125c46;--chart-bar:#818cf8;--chart-bar-hover:#6366f1;--table-header-bg:#2d3340;--table-header-text:#cbd5e1;--table-header-border:#475569;--table-row-even:#1c1f26;--table-locked-bg:#20242c;--table-locked-active-bg:#262b34;--table-hover-bg:#23283a;--table-cell-border:#242830;--table-closed-row-bg:#3a3f4a;--table-closed-row-bg-plain:#3e3f44;--text-heading:#f8fafc;--text-strong:#e2e8f0;--text-dark:#d1d5db;--text-meta:#94a3b8;--text-faint:#64748b;--text-placeholder:#475569;--text-green-deep:#4ade80;--text-red-deep:#f87171;--text-amber-deep:#fbbf24;--text-warning-strong:#fbbf24;--text-teal:#2dd4bf;--text-blue-deep:#93c5fd;--badge-sky-text:#38bdf8;--border-faint:#242830;--border-danger-strong:#7f1d1d;--border-green:#16a34a;--badge-blue-border:#3b82f6;--badge-sky-border:#0ea5e9;--badge-teal-border:#115e59;--badge-warning-border-strong:#92600e;--bg-subtle:#1c1f26;--bg-muted:#20242c;--bg-chip:#363a44;--bg-red-deep:#3a1216;--bg-amber-deep:#332908;--bg-amber-badge:#2b2210;--badge-sky-bg:#0c2438;--badge-sky-bg-subtle:#0a1f30;--badge-teal-bg:#0d2b26;--badge-danger-bg-subtle:#f8717118;--badge-danger-border-subtle:#f8717140;--btn-success-bg:#16a34a;--btn-danger-bg:#dc2626;--btn-info-bg:#0284c7;--btn-warning-bg:#d97706;--btn-purple-bg:#7c3aed;--btn-primary-bg:#2563eb;--toast-bg:#1e293b;--toast-text:#f8fafc;--accent-bar-slate:#94a3b8;--accent-bar-teal:#2dd4bf;--accent-bar-indigo:#818cf8;--accent-bar-amber:#fbbf24;--accent-bar-blue:#60a5fa;--accent-bar-purple:#a78bfa;--accent-bar-cyan:#22d3ee;--accent-bar-pink:#f472b6;--accent-bar-green:#34d399;--border-slate:#333a46;--border-input:#4a5468;--text-slate:#94a3b8;--bg-chip-active:#475569;--btn-sync-bg:#0ea5e9;--bg-sidebar-panel:#1c1f26;--border-sky-soft:#0c4a6e;--bg-emerald-badge:#0f2e20;--text-emerald-deep:#34d399;--border-emerald-mid:#22c55e;--text-emerald-mid:#86efac;--bg-cyan-badge:#0c2e34;--text-cyan-deep:#67e8f9;--bg-pink-badge:#3a1530;--text-pink-deep:#f9a8d4;--bg-orange-badge:#3a230d;--text-orange-deep:#fb923c;--bg-amber-pale:#2b2710;--bg-cyan-pale:#0b2226;--bg-purple-pale:#241b30;--border-highlight-gold:#facc15;--bg-blue-hover-soft:#142236;--btn-primary-bg-deep:#1d4ed8;--btn-slate-bg:#94a3b8;--btn-disabled-bg:#4a5468;--bg-card-faint:#1c1f26;--border-emerald-soft:#1c5638;--accent-bar-emerald:#4ade80;--text-blue-bright:#60a5fa;--bg-amber-pill:#4a3a10;--bg-amber-hover:#5c4713;--card-blue-title:#93c5fd;--card-green-title:#6ee7b7;--card-purple-title:#c4b5fd;--card-amber-title:#fcd34d;--card-red-title:#fca5a5;--card-teal-title:#5eead4;--card-pink-title:#f9a8d4;--card-indigo-title:#a5b4fc;--card-amber-sub:#fbbf24;--card-pink-sub:#f472b6;--card-cyan-sub:#22d3ee;--card-purple-header-bg:#211a38;--card-pink-header-bg:#33162a;--card-teal-header-border:#0f4a42;--card-indigo-header-border:#3730a3;--btn-primary-gradient-end:#1e3a8a;--btn-gold-bg:#eab308;--btn-indigo-bg:#6366f1;--accent-bar-blue-deep:#3b82f6;--text-amber-strong:#fbbf24;--bg-red-pale:#2e1416;--text-slate-deep:#cbd5e1;--text-blue-strong:#60a5fa;--btn-neutral-bg:#9ca3af;--text-teal-deep:#5eead4;--accent-bar-gray:#9ca3af;--border-hairline:#242830;--text-red-strong:#fca5a5;--bg-canvas-dark:#0f172a;--btn-primary-bg-loading:#3b5f96;--text-rank-unused:#facc15;--text-rank-a:#4ade80;--text-rank-b:#60a5fa;--text-rank-c:#f87171;--text-rank-d:#9ca3af}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.6}.layout{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);z-index:100;transition:transform var(--transition);background:#1f2937;border-right:none;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-brand{border-bottom:1px solid #374151;padding:24px 20px 20px}.sidebar-brand h1{letter-spacing:2px;text-transform:uppercase;color:#fff;font-size:.75rem;font-weight:700}.sidebar-brand p{letter-spacing:2px;text-transform:uppercase;color:#9ca3af;margin-top:2px;font-size:.6rem}.sidebar-nav{flex:1;padding:16px 0;overflow-y:auto}.nav-group-label{letter-spacing:2.5px;text-transform:uppercase;color:#6b7280;padding:12px 20px 6px;font-size:.6rem;font-weight:600}.nav-item{color:#9ca3af;cursor:pointer;transition:all var(--transition);border-left:3px solid #0000;align-items:center;gap:10px;padding:10px 20px;font-size:.8rem;font-weight:400;text-decoration:none;display:flex}.nav-item:hover{color:#e5e7eb;background:#374151}.nav-item.active{color:#fff;background:#374151;border-left-color:#fff;font-weight:600}.nav-item svg{opacity:.4;flex-shrink:0}.nav-item.active svg{opacity:.9}.nav-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.nav-badge{color:#ffffffb3;text-align:center;background:#ffffff26;border-radius:8px;flex-shrink:0;min-width:18px;padding:1px 6px;font-size:.6rem;font-weight:600}.nav-item.active .nav-badge{color:#fff;background:#ffffff40}.nav-star{cursor:pointer;color:#6b7280;opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:2px;transition:opacity .12s,background .12s;display:inline-flex}.nav-item:hover .nav-star,.nav-star.active{opacity:1}.nav-star:hover{background:#ffffff1a}.nav-star svg{opacity:1!important}.sidebar-footer{color:#6b7280;letter-spacing:1px;border-top:1px solid #374151;padding:16px 20px;font-size:.65rem}.menu-toggle{z-index:200;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-sm);padding:8px;line-height:0;display:none;position:fixed;top:14px;left:14px}.sidebar-overlay{z-index:90;background:#0000004d;display:none;position:fixed;inset:0}.main{margin-left:var(--sidebar-w);flex:1;min-height:100vh}.page-header{background:var(--bg-surface);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:28px 40px 20px;display:flex}.page-header h2{letter-spacing:2px;text-transform:uppercase;color:var(--text-primary);font-size:.8rem;font-weight:600}.page-header-meta{color:var(--text-tertiary);align-items:center;gap:16px;font-size:.7rem;display:flex}.live-dot{background:var(--status-success);border-radius:50%;width:6px;height:6px;margin-right:4px;animation:2s infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.content{padding:24px 40px 60px}.crawl-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:28px;display:flex}.btn{border:1px solid var(--border);border-radius:var(--radius);font-size:.75rem;font-weight:500;font-family:var(--font-sans);letter-spacing:.5px;cursor:pointer;transition:all var(--transition);background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm);align-items:center;gap:6px;padding:9px 20px;line-height:1;display:inline-flex}.btn:hover{background:var(--bg-hover);border-color:var(--border-light)}.btn:disabled{color:var(--text-tertiary);cursor:not-allowed;opacity:.6}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover{background:var(--accent-light);border-color:var(--accent-light)}.btn-primary:disabled{background:var(--text-tertiary);border-color:var(--text-tertiary);color:#fff}.crawl-status{font-size:.7rem;font-family:var(--font-mono);color:var(--text-tertiary)}.crawl-status.running{color:var(--badge-warning-text)}.crawl-status.done{color:var(--badge-success-text)}.crawl-status.error{color:var(--badge-danger-text)}.crawl-log{margin-bottom:24px;display:none}.crawl-log.visible{display:block}.crawl-log pre{border-radius:var(--radius);font-size:.7rem;font-family:var(--font-mono);color:#d1d5db;white-space:pre-wrap;word-break:break-all;background:#1f2937;border:1px solid #374151;max-height:240px;padding:14px;line-height:1.6;overflow-y:auto}.stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:32px;display:grid}.stat{background:var(--bg-surface);text-align:center;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:20px 18px}.stat .value{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700;font-family:var(--font-mono);color:var(--text-primary);letter-spacing:-.5px}.stat .label{letter-spacing:2px;text-transform:uppercase;color:var(--text-tertiary);margin-top:6px;font-size:.6rem;font-weight:500}.tabs{border-bottom:1px solid var(--border);gap:0;margin-bottom:16px;display:flex}.search-bar{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-tertiary);align-items:center;gap:8px;margin-bottom:16px;padding:8px 14px;display:flex}.search-input{font-size:.75rem;font-family:var(--font-sans);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.search-input::placeholder{color:var(--text-tertiary)}.search-clear{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1rem;line-height:1}.search-clear:hover{color:var(--text-primary)}.tab{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition);font-size:.7rem;font-weight:500;font-family:var(--font-sans);background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 20px}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.tab .count{font-size:.6rem;font-family:var(--font-mono);background:var(--fill-subtle);color:var(--text-secondary);border-radius:10px;margin-left:6px;padding:2px 7px;display:inline-block}.tab.active .count{background:var(--accent);color:#fff}.section-title{letter-spacing:2.5px;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:12px;padding-bottom:8px;font-size:.6rem;font-weight:600}.order-group{margin-bottom:16px}.order-header{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:14px 18px;display:flex}.order-header:hover{background:var(--bg-hover)}.order-header .order-no{color:var(--text-secondary);font-size:.8rem;font-weight:500;font-family:var(--font-mono)}.order-header .order-date{color:var(--text-tertiary);font-size:.7rem;font-family:var(--font-mono)}.order-header .order-total{color:var(--text-secondary);font-size:.75rem;font-weight:500;font-family:var(--font-mono)}.order-header .order-status{letter-spacing:1px;text-transform:uppercase;border-radius:3px;align-items:center;gap:4px;padding:3px 8px;font-size:.6rem;font-weight:500;display:inline-flex}.order-status.imported{color:var(--badge-success-text);background:var(--badge-success-bg);border:1px solid var(--badge-success-border)}.order-status.new-order{color:var(--badge-warning-text);background:var(--badge-warning-bg);border:1px solid var(--badge-warning-border)}.btn-import{border:1px solid var(--badge-indigo-border);background:var(--badge-indigo-bg);color:var(--badge-indigo-text);cursor:pointer;white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:4px 10px;font-size:.65rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-import:hover{background:var(--badge-indigo-hover-bg)}.btn-import:disabled{opacity:.6;cursor:not-allowed}.btn-import.spinning svg{animation:1s linear infinite spin}.import-error{color:var(--badge-danger-text);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:.6rem;overflow:hidden}.order-header .chevron{color:var(--text-tertiary);transition:transform var(--transition);line-height:0}.order-header.collapsed .chevron{transform:rotate(-90deg)}.order-items{display:block}.order-items.hidden{display:none}.item-card{background:var(--bg-card);border:1px solid var(--border);transition:background var(--transition);border-top:none;grid-template-columns:72px 1fr 36px auto;align-items:start;gap:14px;padding:16px 18px;display:grid}.item-thumb{object-fit:cover;background:var(--fill-subtle);border:1px solid var(--border);border-radius:6px;flex-shrink:0;width:72px;height:72px}.item-thumb-empty{background:var(--fill-subtle);border:1px solid var(--border);width:72px;height:72px;color:var(--text-muted);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.item-card:last-child{border-radius:0 0 var(--radius) var(--radius)}.item-card:hover{background:var(--bg-hover)}.rank{width:36px;height:36px;font-size:.85rem;font-weight:700;font-family:var(--font-mono);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-left:-12px;display:flex}.rank-S{color:#fff;background:#166534}.rank-A{color:#fff;background:#1e40af}.rank-B{color:#fff;background:#92400e}.rank-C{color:#fff;background:#9f1239}.rank-D{color:#fff;background:#7f1d1d}.rank-X{background:var(--badge-neutral-bg);color:var(--badge-neutral-text)}.item-details{min-width:0;margin-left:12px}.item-brand{color:var(--text-primary);letter-spacing:.5px;font-size:.85rem;font-weight:600}.item-product{color:var(--text-secondary);word-break:break-word;margin-top:2px;font-size:.75rem}.item-meta{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.tag{font-size:.65rem;font-family:var(--font-mono);background:var(--fill-subtle);color:var(--text-secondary);border:1px solid var(--border);border-radius:4px;padding:2px 8px;display:inline-block}.measurements{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.meas{font-size:.65rem;font-family:var(--font-mono);background:var(--badge-emerald-bg);color:var(--badge-emerald-text);border:1px solid var(--badge-emerald-border);border-radius:4px;padding:2px 6px;display:inline-block}.condition{color:var(--text-tertiary);margin-top:6px;font-size:.7rem;font-style:italic}.price-oos{letter-spacing:1px;text-transform:uppercase;color:var(--badge-danger-text);background:var(--badge-danger-bg);border:1px solid var(--badge-danger-border);text-align:center;border-radius:4px;padding:4px 10px;font-size:.65rem;font-weight:600}.item-price{text-align:right;flex-shrink:0;min-width:90px}.price-main{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:600;font-family:var(--font-mono)}.price-postage{color:var(--text-tertiary);font-size:.65rem;font-family:var(--font-mono);margin-top:2px}.item-link{color:var(--badge-blue-text);border:1px solid var(--badge-blue-bg);transition:all var(--transition);background:var(--badge-info-bg);border-radius:4px;align-items:center;gap:4px;margin-top:8px;padding:3px 8px;font-size:.65rem;text-decoration:none;display:inline-flex}.item-link:hover{color:var(--badge-blue-hover-text);border-color:var(--badge-blue-hover-border);background:var(--badge-blue-bg)}.imported-list{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.imported-row{font-size:.75rem;font-family:var(--font-mono);transition:background var(--transition);border-bottom:1px solid var(--border);grid-template-columns:1fr 1.2fr .8fr 1.5fr 60px;align-items:center;padding:10px 18px;display:grid}.imported-row:last-child{border-bottom:none}.imported-row:hover{background:var(--bg-hover)}.imported-row.imported-header{background:var(--bg-hover);font-family:var(--font-sans);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-tertiary);border-bottom:2px solid var(--border);padding:10px 18px;font-size:.6rem;font-weight:600}.imported-row.imported-header:hover{background:var(--bg-hover)}.imported-row.order-first{border-top:1px solid var(--border)}.imported-row.order-first:first-of-type{border-top:none}.imported-row .col-order{color:var(--text-primary);font-weight:500}.imported-row .col-mmid{color:var(--text-secondary)}.imported-row .col-2ndid,.imported-row .col-date{color:var(--text-tertiary);font-size:.65rem}.imported-row .col-count{text-align:center;color:var(--text-secondary)}.mm-link{color:var(--badge-indigo-text);font-weight:600;text-decoration:none;transition:color .15s}.mm-link:hover{color:var(--chart-bar);text-decoration:underline}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:24px;padding:16px 0;display:flex}.page-info{font-size:.7rem;font-family:var(--font-mono);color:var(--text-tertiary);letter-spacing:.5px;align-items:center;gap:6px;display:flex}.page-input{border:1px solid var(--border);width:44px;font-size:.7rem;font-family:var(--font-mono);text-align:center;color:var(--text-primary);background:var(--bg-surface);border-radius:4px;outline:none;padding:4px 6px}.page-input:focus{border-color:var(--accent)}.btn-page{padding:7px 16px;font-size:.7rem}.page{display:block}.page.hidden{display:none}.session-dashboard{margin-bottom:24px}.session-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transition:border-color var(--transition);align-items:center;gap:20px;padding:24px 28px;display:flex}.session-card.status-valid{border-left:4px solid var(--status-success)}.session-card.status-expired{border-left:4px solid var(--status-danger)}.session-card.status-warning{border-left:4px solid var(--status-warning)}.session-card.status-unknown{border-left:4px solid var(--text-tertiary)}.session-card-icon{background:var(--fill-subtle);width:48px;height:48px;color:var(--text-tertiary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.session-card.status-valid .session-card-icon{background:var(--badge-success-bg);color:var(--status-success)}.session-card.status-expired .session-card-icon{background:var(--badge-danger-bg);color:var(--status-danger)}.session-card.status-warning .session-card-icon{background:var(--badge-warning-bg);color:var(--status-warning)}.session-card-icon svg{width:24px;height:24px}.session-card-body{flex:1}.session-card-title{color:var(--text-primary);font-size:1rem;font-weight:600}.session-card-desc{color:var(--text-tertiary);margin-top:2px;font-size:.75rem}.session-card-badge{letter-spacing:1.5px;text-transform:uppercase;background:var(--fill-subtle);color:var(--text-disabled);border-radius:20px;flex-shrink:0;padding:5px 14px;font-size:.65rem;font-weight:600}.session-card.status-valid .session-card-badge{background:var(--badge-success-bg);color:var(--badge-success-text)}.session-card.status-expired .session-card-badge{background:var(--badge-danger-bg);color:var(--badge-danger-text)}.session-card.status-warning .session-card-badge{background:var(--badge-warning-bg);color:var(--badge-warning-text)}.session-stats{margin-bottom:28px}.session-info{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);margin-top:32px;padding:20px 24px;font-size:.8rem;line-height:1.7}.session-info p{margin-top:8px}.session-info strong{color:var(--text-primary)}.empty{text-align:center;color:var(--text-tertiary);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:60px 20px;font-size:.85rem}.empty code{background:var(--fill-subtle);color:var(--text-secondary);font-size:.75rem;font-family:var(--font-mono);border:1px solid var(--border);border-radius:6px;margin-top:12px;padding:6px 14px;display:inline-block}.empty-icon{color:var(--text-muted);margin-bottom:12px;line-height:0}.empty-icon svg{width:32px;height:32px}@media (max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay.visible,.menu-toggle{display:block}.main{margin-left:0}.page-header{padding:20px 20px 16px 56px}.content{padding:20px}.item-card{grid-template-columns:48px auto 1fr}.item-thumb,.item-thumb-empty{width:48px;height:48px}.item-price{text-align:left;grid-column:1/-1}.stats{grid-template-columns:repeat(2,1fr)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@keyframes spin{to{transform:rotate(360deg)}}.spinning svg{animation:1s linear infinite spin}.dash-two-col{grid-template-columns:1fr 1fr;gap:24px;display:grid}@media (max-width:900px){.dash-two-col{grid-template-columns:1fr}}.dash-section{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:24px;padding:24px}.dash-two-col .dash-section{margin-bottom:0}.dash-section-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.dash-section-title{letter-spacing:2px;text-transform:uppercase;color:var(--text-secondary);font-size:.7rem;font-weight:600}.year-filter{gap:4px;display:flex}.year-btn{border:1px solid var(--border);font-size:.65rem;font-weight:500;font-family:var(--font-mono);background:var(--bg-surface);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition);border-radius:4px;padding:4px 12px}.year-btn:hover{color:var(--text-primary);border-color:var(--border-light)}.year-btn.active{background:var(--chart-bar);color:#fff;border-color:var(--chart-bar)}.chart-container{align-items:flex-end;gap:4px;height:280px;padding-bottom:28px;padding-left:40px;display:flex;position:relative}.chart-y-axis{flex-direction:column;justify-content:space-between;align-items:flex-end;width:36px;padding-right:6px;display:flex;position:absolute;top:0;bottom:28px;left:0}.chart-y-label{font-size:.6rem;font-family:var(--font-mono);color:var(--text-tertiary)}.chart-bar-wrap{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.chart-bar{background:var(--chart-bar);cursor:default;border-radius:3px 3px 0 0;width:100%;max-width:40px;min-height:2px;transition:all .3s;position:relative}.chart-bar:hover{background:var(--chart-bar-hover)}.chart-bar-value{font-size:.6rem;font-family:var(--font-mono);color:#fff;white-space:nowrap;opacity:0;transition:opacity var(--transition);text-align:center;pointer-events:none;background:#1f2937;border-radius:4px;padding:4px 8px;line-height:1.5;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.chart-bar-value strong{font-weight:700}.chart-bar:hover .chart-bar-value{opacity:1}.chart-x-label{font-size:.55rem;font-family:var(--font-mono);color:var(--text-tertiary);letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;margin-top:6px}.chart-gridline{border-top:1px dashed var(--border);pointer-events:none;position:absolute;left:40px;right:0}.brand-list{grid-template-columns:1fr;gap:0;display:grid}.brand-row{border-bottom:1px solid var(--fill-subtle);grid-template-columns:32px 1fr 60px 80px;align-items:center;gap:12px;padding:10px 0;display:grid}.brand-row:last-child{border-bottom:none}.brand-rank-num{font-size:.7rem;font-weight:600;font-family:var(--font-mono);color:var(--text-tertiary);text-align:center}.brand-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:500;overflow:hidden}.brand-count{font-size:.75rem;font-weight:600;font-family:var(--font-mono);color:var(--text-secondary);text-align:right}.brand-bar-wrap{background:var(--fill-subtle);border-radius:3px;height:6px;overflow:hidden}.brand-bar{border-radius:3px;height:100%;transition:width .4s}.dash-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:24px;display:grid}.dash-stat{background:var(--bg-surface);text-align:center;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-top:3px solid var(--border);padding:20px 18px}.dash-stat .value{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700;font-family:var(--font-mono);letter-spacing:-.5px}.dash-stat .label{letter-spacing:2px;text-transform:uppercase;color:var(--text-tertiary);margin-top:6px;font-size:.6rem;font-weight:500}.dash-stat.color-indigo{border-top-color:var(--chart-bar)}.dash-stat.color-indigo .value{color:var(--chart-bar-hover)}.dash-stat.color-emerald{border-top-color:#10b981}.dash-stat.color-emerald .value{color:#059669}.dash-stat.color-amber{border-top-color:#f59e0b}.dash-stat.color-amber .value{color:#d97706}.dash-stat.color-rose{border-top-color:#f43f5e}.dash-stat.color-rose .value{color:#e11d48}@media (max-width:768px){.chart-container{height:200px}.brand-row{grid-template-columns:28px 1fr 50px 60px;gap:8px}}.md-toolbar{align-items:center;gap:16px;margin-bottom:4px;display:flex}.md-toolbar .search-bar{flex:1}.lightbox-overlay{z-index:1000;background:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-content{position:relative}.lightbox-close{cursor:pointer;color:#374151;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.2rem;font-weight:700;display:flex;position:absolute;top:-12px;right:-12px;box-shadow:0 2px 8px #0000004d}.md-error{background:var(--badge-danger-bg);border:1px solid var(--badge-danger-border);color:var(--badge-danger-text);border-radius:var(--radius);margin-bottom:12px;padding:8px 12px;font-size:.8rem}.md-table-wrap{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.md-table{border-collapse:collapse;table-layout:auto;width:100%;font-size:.7rem}.md-table th{background:var(--table-header-bg);text-align:center;text-transform:uppercase;letter-spacing:.5px;color:var(--table-header-text);border-bottom:2px solid var(--table-header-border);border-right:1px solid var(--table-header-border);vertical-align:middle;white-space:pre-line;padding:6px 8px;font-size:.6rem;font-weight:700}.md-table th:last-child{border-right:none}.md-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--table-cell-border);color:var(--text-primary);vertical-align:top;white-space:normal;word-break:break-word;padding:8px 10px}.md-table td:last-child{border-right:none}.md-table .col-product,.md-table .col-wrap{white-space:normal;word-break:break-word}.md-table .col-center{text-align:center}.md-table .col-top{vertical-align:top}.md-locked-col{background:var(--table-locked-bg)!important}.md-row-form .md-locked-col{background:var(--table-locked-active-bg)!important}.md-table tbody tr:nth-child(2n) td{background:var(--table-row-even)}.md-table tbody tr:nth-child(odd) td{background:var(--bg-surface)}.md-table tbody tr[style] td{background:inherit}.md-table tr:hover td{background:var(--table-hover-bg)}.md-table tr.md-row-form td{background:var(--badge-info-bg)}.md-th-num,.md-td-num{text-align:center;width:40px;color:var(--text-tertiary)}.md-th-actions,.md-td-actions{text-align:center;width:70px}.md-empty{text-align:center;color:var(--text-tertiary);padding:32px!important}.md-input{border:1px solid var(--border-light);background:var(--bg-surface);width:100%;color:var(--text-primary);border-radius:4px;padding:5px 8px;font-family:inherit;font-size:.82rem}.md-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #6366f126}.md-input:disabled{background:var(--table-locked-bg);color:var(--text-disabled);cursor:not-allowed}select.md-input{padding:5px 6px}.btn-icon{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:.85rem;transition:background .15s}.btn-icon:hover{background:var(--fill-subtle)}.btn-save{color:var(--badge-green-text);font-size:1rem;font-weight:700}.btn-save:hover{background:var(--badge-success-bg)}.btn-cancel{color:var(--badge-danger-text);font-size:1rem;font-weight:700}.btn-cancel:hover{background:var(--badge-danger-bg)}.btn-edit:hover{background:var(--badge-info-bg)}.btn-delete:hover{background:var(--badge-danger-bg)}.text-muted{color:var(--text-tertiary)}.md-result-count{color:var(--text-secondary);white-space:nowrap;font-size:.75rem}.filter-pill{border:1px solid var(--border-light);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;border-radius:9999px;padding:5px 14px;font-size:.75rem;font-weight:500;transition:all .15s}.filter-pill:hover{border-color:var(--text-tertiary)}.filter-pill.active{border:2px solid var(--badge-blue-text);background:var(--badge-info-bg);color:var(--badge-blue-text);font-weight:700}.md-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.md-th-sortable:hover{color:var(--text-primary)}.md-sort-icon{margin-left:2px;font-size:.6rem}.md-sort-inactive{opacity:.25}.md-badge{color:#fff;letter-spacing:.3px;border-radius:10px;padding:2px 10px;font-size:.7rem;font-weight:600;display:inline-block}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert()}[data-theme=dark] input[type=time]::-webkit-calendar-picker-indicator{filter:invert()}[data-theme=dark] input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert()}.lot-header:hover .lot-unschedule-btn{opacity:1}
