:root{--apple-bg:#f8f9fa;--apple-panel:#fff;--apple-panel-muted:#f8f9fa;--apple-sidebar:#fafbfc;--apple-sidebar-hover:#4f46e50a;--apple-text:#0f172a;--apple-text-secondary:#475569;--apple-text-tertiary:#94a3b8;--apple-text-link:#4f46e5;--apple-border:#00000014;--apple-border-light:#0000000f;--apple-blue:#4f46e5;--apple-blue-soft:#4f46e514;--apple-blue-hover:#4338ca;--apple-green:#059669;--apple-green-soft:#05966914;--apple-green-text:#047857;--apple-orange:#d97706;--apple-orange-soft:#d9770614;--apple-orange-text:#b45309;--apple-deeporange:#ea580c;--apple-deeporange-soft:#ea580c14;--apple-deeporange-text:#c2410c;--apple-red:#dc2626;--apple-red-soft:#dc262614;--apple-red-text:#b91c1c;--apple-gray:#94a3b8;--apple-gray-soft:#94a3b814;--apple-gray-text:#64748b;--apple-shadow-sm:0 0 0 1px #0000000d, 0 1px 3px #0000000f;--apple-shadow-md:0 0 0 1px #0000000d, 0 2px 8px #0000000f;--apple-shadow-lg:0 0 0 1px #0000000d, 0 8px 32px #00000014;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:9999px;--transition-fast:.1s ease-out;--transition-normal:.15s ease-out;--transition-slow:.25s ease-out;--font-xl:24px;--font-lg:17px;--font-md:15px;--font-sm:13px;--font-xs:12px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:20px;--space-2xl:24px;--space-3xl:32px;--sidebar-width:220px;--ease-out:.15s ease-out;--ease-in-out:.15s ease-in-out;--table-row:56px;--font-title-l:24px;--font-body:15px;--font-mono:"SF Mono", "Fira Code", monospace;--apple-fill-tertiary:#0000000f;--apple-fill-secondary:#00000014;--apple-text-primary:var(--apple-text);--apple-bg-elevated:var(--apple-panel);--apple-surface:var(--apple-panel);--apple-surface-muted:var(--apple-panel-muted);--apple-yellow:#eab308;--apple-separator:#00000014;--apple-bg-hover:#f1f3f5;--shadow-sm:var(--apple-shadow-sm);--shadow-lg:var(--apple-shadow-lg);--accent:var(--apple-blue)}:root.dark{--apple-bg:#0f1117;--apple-panel:#16181d;--apple-panel-muted:#1a1c23;--apple-sidebar:#12141a;--apple-sidebar-hover:#4f46e50f;--apple-text:#e2e4e9;--apple-text-secondary:#9ca3af;--apple-text-tertiary:#6b7280;--apple-text-link:#818cf8;--apple-border:#ffffff0d;--apple-border-light:#ffffff08;--apple-blue:#818cf8;--apple-blue-soft:#818cf81a;--apple-blue-hover:#6366f1;--apple-green:#34d399;--apple-green-soft:#34d3991a;--apple-green-text:#6ee7b7;--apple-orange:#f59e0b;--apple-orange-soft:#f59e0b1a;--apple-orange-text:#fbbf24;--apple-deeporange:#fb923c;--apple-deeporange-soft:#fb923c1a;--apple-deeporange-text:#fdba74;--apple-red:#f87171;--apple-red-soft:#f871711a;--apple-red-text:#fca5a5;--apple-gray:#6b7280;--apple-gray-soft:#6b72801a;--apple-gray-text:#9ca3af;--apple-shadow-sm:0 0 0 1px #ffffff0a, 0 1px 3px #0006;--apple-shadow-md:0 0 0 1px #ffffff0a, 0 2px 8px #0006;--apple-shadow-lg:0 0 0 1px #ffffff0a, 0 8px 32px #0006;--apple-fill-tertiary:#ffffff0d;--apple-fill-secondary:#ffffff14;--apple-text-primary:var(--apple-text);--apple-bg-elevated:var(--apple-panel);--apple-yellow:#facc15;--apple-separator:#ffffff0d;--apple-bg-hover:#1a1c23}.dark .login-page{--login-panel-bg:#16181deb;--login-panel-border:#ffffff14;background-color:#0f1117;background-image:radial-gradient(circle at 1px 1px,#ffffff08 1px,#0000 1px),radial-gradient(800px 500px at 50% 35%,#4f46e514,#0000 70%)}.dark .login-page:before{opacity:.25}.dark .login-panel{background:#16181deb;border-color:#ffffff14;box-shadow:inset 0 1px #ffffff0f,0 4px 24px #0000001f}.dark .login-brand h1{color:#e2e4e9}.dark .login-brand p{color:#fff6}.dark .login-label{color:#ffffff73}.dark .login-input{color:#e2e4e9;background:#ffffff0f;border-color:#ffffff1a}.dark .login-input:focus{background:#ffffff14}.dark .login-input::placeholder{color:#ffffff29}.dark .login-footer p{color:#ffffff40}.dark .settings-anchor-nav{background:var(--apple-bg)}.dark .topbar{border-bottom-color:var(--apple-border)}.dark .sidebar-footer{background:#ffffff08}.dark .button{color:var(--apple-text-secondary);background:linear-gradient(135deg,#ffffff0f,#4f46e50a);border-color:#ffffff14;box-shadow:inset 0 1px #ffffff0f}.dark .button:hover{background:linear-gradient(135deg,#ffffff1a,#4f46e50f);border-color:#ffffff1f;box-shadow:inset 0 1px #ffffff1a,0 1px 4px #4f46e51f}.dark .button.primary{color:#a5b4fc;background:linear-gradient(135deg,#4f46e533,#4f46e51a);border-color:#4f46e54d}.dark .button.primary:hover{background:linear-gradient(135deg,#4f46e54d,#4f46e526)}.dark .button.small.danger{color:#fca5a5;background:linear-gradient(135deg,#dc262626,#dc26260f);border-color:#dc262640}.dark .chat-toggle,.dark .sidebar-collapse-toggle,.dark .alert-collapse-btn,.dark .ai-toggle-btn,.dark .review-mode-btn{background:linear-gradient(135deg,#ffffff0f,#4f46e50a);border-color:#ffffff14;box-shadow:inset 0 1px #ffffff0f}.dark .ai-toggle-btn.active,.dark .review-mode-btn.active{color:#a5b4fc;background:linear-gradient(135deg,#4f46e52e,#4f46e514);border-color:#4f46e540}.dark .sidebar.collapsed .sidebar-collapse-toggle:hover{background:#4f46e52e}@media (prefers-reduced-transparency:reduce){.dark .login-panel{-webkit-backdrop-filter:none;background:#16181d}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,PingFang SC,Noto Sans SC,Microsoft YaHei,Segoe UI,sans-serif;font-size:var(--font-md);color:var(--apple-text);background:var(--apple-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.data-source-tag{border-radius:var(--radius-pill);color:var(--apple-orange-text);background:var(--apple-orange-soft);white-space:nowrap;margin-left:6px;padding:1px 5px;font-size:10px;font-weight:600;line-height:1.4;display:inline-flex}.kpi-inline-action{color:inherit;text-align:left;background:0 0;border:0;padding:0}.kpi-inline-action:hover{color:var(--accent);text-decoration:underline}.pwa-update-prompt{right:var(--space-lg);bottom:var(--space-lg);z-index:1000;align-items:center;gap:var(--space-sm);border:1px solid var(--apple-border);border-radius:var(--radius-md);background:var(--apple-panel);max-width:min(420px,100vw - 32px);box-shadow:var(--apple-shadow-lg);color:var(--apple-text-secondary);font-size:var(--font-sm);padding:10px 12px;display:flex;position:fixed}.pwa-update-prompt button{color:var(--apple-blue);white-space:nowrap;font-weight:700}a{color:var(--apple-text-link);text-decoration:none}a:hover{text-decoration:underline}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100dvh;display:grid}html[data-sidebar-collapsed=true] .app-shell{grid-template-columns:56px minmax(0,1fr)}.sidebar{height:100dvh;padding:var(--space-xl) var(--space-md);background:var(--apple-sidebar);transition:padding var(--ease-out);border-right:1px solid #0000000f;flex-direction:column;display:flex;position:sticky;top:0}.sidebar.collapsed{padding:var(--space-md) var(--space-xs);align-items:center}.brand-block{align-items:center;gap:var(--space-sm);padding:0 var(--space-xs) var(--space-lg);margin-bottom:var(--space-xs);display:flex}.sidebar.collapsed .brand-block{padding:0 0 var(--space-md);justify-content:center}.brand-mark{border-radius:var(--radius-md);color:#fff;letter-spacing:-.3px;background:#0f172a;place-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:grid}.brand-name{color:var(--apple-text);font-size:15px;font-weight:700;line-height:1.2}.brand-subtitle{font-size:var(--font-xs);color:var(--apple-text-tertiary);margin-top:1px}.nav-list{margin-top:var(--space-sm);flex:1;gap:1px;display:grid}.nav-item{align-items:center;gap:var(--space-sm);width:100%;height:36px;padding:0 var(--space-md);border-radius:var(--radius-sm);color:var(--apple-text-secondary);font-size:var(--font-md);transition:background var(--ease-out), color var(--ease-out);font-weight:500;display:flex}.nav-item.active{background:var(--apple-blue-soft);box-shadow:inset 3px 0 0 var(--apple-blue);color:var(--apple-blue);font-weight:600}.sidebar.collapsed .nav-item{border-radius:var(--radius-sm);justify-content:center;width:36px;height:36px;padding:0}.sidebar.collapsed .nav-item.active{box-shadow:inset 0 0 0 1px var(--apple-blue)}.sidebar.collapsed .nav-list{gap:var(--space-xs);align-items:center}.nav-badge{border-radius:var(--radius-md);background:var(--apple-red);color:#fff;text-align:center;min-width:20px;height:18px;margin-left:auto;padding:0 5px;font-size:11px;font-weight:600;line-height:18px}.sidebar-footer{padding:var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel-muted);gap:var(--space-xs);font-size:var(--font-xs);color:var(--apple-text-secondary);border:1px solid #0000000f;flex-direction:column;margin-top:auto;display:flex}.sidebar-footer strong{color:var(--apple-text);font-size:var(--font-sm);display:block}.sidebar-footer span{color:var(--apple-text-tertiary)}.sidebar-platforms{padding-top:var(--space-sm);border-top:1px solid var(--apple-border-light);flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px;display:flex}.platform-mini-dot{border-radius:var(--radius-pill);flex-shrink:0;width:5px;height:5px}.platform-mini-dot.online{background:var(--apple-green)}.platform-mini-dot.offline{background:#94a3b880}.platform-mini-label{color:var(--apple-text-tertiary);margin-right:6px;font-size:10px}.sidebar-collapse-toggle{height:32px;margin:var(--space-sm) auto 0;border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(8px);color:var(--apple-text-secondary);font-size:var(--font-xs);cursor:pointer;transition:background var(--ease-out), border-color var(--ease-out), box-shadow var(--ease-out);background:linear-gradient(135deg,#fff9,#f5f3ff8c);border:1px solid #4f46e51f;justify-content:center;align-items:center;gap:6px;padding:0 14px;display:inline-flex;box-shadow:inset 0 1px #ffffffb3}.sidebar-collapse-toggle:hover{color:var(--apple-text);background:linear-gradient(135deg,#fffc,#f0eeffb3);border-color:#4f46e533;box-shadow:inset 0 1px #ffffffe6,0 1px 4px #4f46e514}.sidebar-collapse-toggle:active{background:linear-gradient(135deg,#ffffffa6,#f0eeff99);transform:scale(.96)}.sidebar.collapsed .sidebar-collapse-toggle{background:linear-gradient(135deg,#fff9,#f5f3ff8c);border-radius:50%;justify-content:center;width:32px;height:32px;padding:0}.sidebar.collapsed .sidebar-collapse-toggle:hover{background:var(--apple-blue-soft);color:var(--apple-blue);border-color:#4f46e526;box-shadow:inset 0 1px #4f46e51a}.sidebar-collapse-label{letter-spacing:.02em;font-weight:500;line-height:1}.sidebar.collapsed .brand-name,.sidebar.collapsed .brand-subtitle,.sidebar.collapsed .nav-item span,.sidebar.collapsed .sidebar-footer,.sidebar.collapsed .api-docs-link{display:none}.sidebar-status-row{align-items:center;gap:var(--space-sm);display:flex}.sidebar-status-row span{color:var(--apple-text-secondary);font-weight:500}.sidebar-status-meta{color:var(--apple-text-tertiary);padding-left:20px;font-size:11px}.system-dot{background:var(--apple-green);border-radius:var(--radius-pill);flex-shrink:0;width:7px;height:7px}.sidebar-sync-row{flex-wrap:nowrap;align-items:center;gap:6px;display:flex}.sidebar-sync-row .sync-health-dot{vertical-align:middle;display:inline-block}.sync-health-dot{border-radius:var(--radius-pill);background:var(--apple-green);flex-shrink:0;width:6px;height:6px}.sync-health-dot.warn{background:var(--apple-orange);animation:1.4s ease-in-out infinite sync-health-pulse}.sync-health-dot.bad{background:var(--apple-red)}.system-dot.warn{background:var(--apple-orange)}.main-shell{min-width:0;padding:var(--space-2xl) var(--space-3xl) var(--space-3xl)}.topbar{justify-content:space-between;align-items:center;gap:var(--space-lg);min-height:48px;margin-bottom:var(--space-2xl);display:flex}.topbar-label{font-size:var(--font-xs);color:var(--apple-text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.topbar h1{font-size:var(--font-xl);letter-spacing:-.3px;color:var(--apple-text);align-items:center;gap:8px;font-weight:700;display:inline-flex}.beta-tag{color:var(--apple-text-tertiary);border:1px solid var(--apple-border);border-radius:var(--radius-pill);letter-spacing:0;vertical-align:middle;background:0 0;padding:1px 8px;font-size:11px;font-weight:500}.app-footer{text-align:center;padding:var(--space-sm) var(--space-md);font-size:var(--font-xs);color:var(--apple-text-tertiary);opacity:.5}.page-title-with-reload{align-items:center;gap:6px;display:inline-flex}.title-reload-btn{opacity:0;transition:opacity var(--transition-normal);border-radius:var(--radius-sm);flex-shrink:0;width:28px;height:28px}.page-title-with-reload:hover .title-reload-btn,.title-reload-btn:focus-visible{opacity:1}.topbar-actions{align-items:center;gap:var(--space-sm);display:flex}.global-search{align-items:center;gap:var(--space-sm);width:240px;height:34px;padding:0 var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel);color:var(--apple-text-tertiary);transition:border-color var(--ease-out), box-shadow var(--ease-out);border:1px solid #00000014;display:flex}.global-search input{width:100%;color:var(--apple-text);background:0 0;border:0;outline:0}.global-search input::placeholder{color:var(--apple-text-tertiary)}.button{height:32px;padding:0 var(--space-md);border-radius:var(--radius-xl);font-size:var(--font-sm);white-space:nowrap;transition:background var(--ease-out), border-color var(--ease-out), box-shadow var(--ease-out);-webkit-backdrop-filter:blur(8px);color:var(--apple-text-secondary);background:linear-gradient(135deg,#fff9,#f5f3ff8c);border:1px solid #4f46e51f;justify-content:center;align-items:center;gap:6px;font-weight:500;display:inline-flex;box-shadow:inset 0 1px #ffffffb3}.button:hover{color:var(--apple-text);background:linear-gradient(135deg,#fffc,#f0eeffb3);border-color:#4f46e533;box-shadow:inset 0 1px #ffffffe6,0 1px 4px #4f46e514}.button.primary{color:var(--apple-blue);background:linear-gradient(135deg,#4f46e51f,#4f46e50f);border-color:#4f46e540;box-shadow:inset 0 1px #4f46e526}.button.primary:hover{color:var(--apple-blue-hover);background:linear-gradient(135deg,#4f46e533,#4f46e51a);border-color:#4f46e559;box-shadow:inset 0 1px #4f46e533,0 1px 4px #4f46e51f}.button.secondary{color:var(--apple-text-secondary)}.button.secondary:hover{color:var(--apple-text)}.button.small{height:28px;font-size:var(--font-xs);border-radius:var(--radius-lg);padding:0 10px}.button.small.danger{color:var(--apple-red-text);background:linear-gradient(135deg,#dc26261a,#dc26260a);border-color:#dc262633;box-shadow:inset 0 1px #dc26261f}.button.small.danger:hover{color:#b91c1c;background:linear-gradient(135deg,#dc262633,#dc26261a);border-color:#dc26264d;box-shadow:inset 0 1px #dc26262e,0 1px 4px #dc26261a}.button.small.secondary{color:var(--apple-text-secondary);background:linear-gradient(135deg,#fff9,#f5f3ff8c);border-color:#4f46e51f;box-shadow:inset 0 1px #ffffffb3}.button.small.secondary:hover{color:var(--apple-text);background:linear-gradient(135deg,#fffc,#f0eeffb3);border-color:#4f46e533;box-shadow:inset 0 1px #ffffffe6,0 1px 4px #4f46e514}.button:disabled{opacity:.4;cursor:not-allowed}.icon-button{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--apple-text-secondary);justify-content:center;align-items:center;transition:color .16s ease-out,background-color .16s ease-out,border-color .16s ease-out,box-shadow .16s ease-out,transform .12s ease-out;display:inline-flex}.notify-bell{position:relative}.bell-badge{border-radius:var(--radius-md);color:#fff;background:#e53e3e;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:600;line-height:1;display:flex;position:absolute;top:2px;right:2px}@keyframes bell-bounce{0%,to{transform:scale(1)}10%{transform:scale(1.25)}20%{transform:scale(.95)}30%{transform:scale(1.1)}40%{transform:scale(1)}}.notify-bell.has-unread .bell-badge{animation:.6s ease-out bell-bounce}.notify-overlay{z-index:1000;justify-content:flex-end;display:flex;position:fixed;inset:0}.notify-panel{background:var(--apple-panel);border:1px solid var(--apple-border);border-radius:var(--radius-md);flex-direction:column;width:380px;max-height:480px;display:flex;position:absolute;top:52px;right:16px;overflow:hidden;box-shadow:0 8px 32px #00000014}.notify-select-all{cursor:pointer;align-items:center;gap:8px;display:flex}.notify-select-all input[type=checkbox]{accent-color:var(--accent)}.notify-check{cursor:pointer;flex-shrink:0;align-items:center;padding-top:2px;display:flex}.notify-check input[type=checkbox]{accent-color:var(--accent);width:15px;height:15px}.notify-header{border-bottom:1px solid var(--apple-border);justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.notify-header-actions{gap:4px;display:flex}.notify-list{flex:1;padding:4px 0;overflow-y:auto}.notify-empty{text-align:center;color:var(--apple-text-tertiary);padding:40px 16px;font-size:13px}.notify-item{cursor:pointer;transition:background var(--transition-normal);border-left:3px solid #0000;align-items:flex-start;gap:10px;padding:10px 16px;display:flex}.notify-item:hover{background:#00000004}.notify-unread{background:var(--apple-blue-soft);border-left-color:var(--accent)}.notify-warn{border-left-color:var(--apple-orange)}.notify-alert,.notify-error{border-left-color:var(--apple-red)}.notify-icon{flex-shrink:0;margin-top:1px;font-size:16px}.notify-body{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;padding:0}.notify-body:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.notify-title{font-size:13px;font-weight:600;line-height:1.4}.notify-text{color:var(--apple-text-secondary);margin-top:2px;font-size:12px;line-height:1.4}.notify-time{color:var(--apple-text-tertiary);margin-top:4px;font-size:11px}.notify-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.page-stack{gap:var(--space-xl);display:grid}.dashboard-page{gap:var(--space-xl)}.page-intro{margin-bottom:var(--space-xs);display:block}.page-intro h2{font-size:var(--font-xl);color:var(--apple-text);letter-spacing:-.3px;margin:0;font-weight:700}.page-intro p{color:var(--apple-text-secondary);font-size:var(--font-md);max-width:620px;margin:6px 0 0;line-height:1.55}.page-intro-sync{margin-top:var(--space-sm);color:var(--apple-text-tertiary);font-size:var(--font-xs);display:block}.intro-meta{min-width:180px;padding:var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel-muted);border:1px solid #0000000f;flex-shrink:0}.intro-meta span{color:var(--apple-text-tertiary);font-size:var(--font-xs);display:block}.intro-meta strong{font-size:var(--font-sm);color:var(--apple-text);margin-top:3px;display:block}.panel{border-radius:var(--radius-lg);background:var(--apple-panel);box-shadow:var(--apple-shadow-sm);padding:var(--space-xl);border:1px solid #0000000f}.panel-head{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);margin-bottom:var(--space-lg);display:flex}.panel-head.compact{margin-bottom:var(--space-md)}.panel-head h2{font-size:var(--font-lg);color:var(--apple-text);letter-spacing:-.2px;margin:0 0 3px;font-weight:700}.panel-head p{color:var(--apple-text-secondary);font-size:var(--font-sm);margin:0;line-height:1.5}.panel-head-actions{align-items:center;gap:var(--space-sm);display:flex}.column-picker-wrap,.toolbar-menu-wrap{position:relative}.toolbar-menu-wrap>.button svg:last-child{color:var(--apple-text-tertiary);margin-left:-2px}.toolbar-menu{z-index:30;border-radius:var(--radius-md);background:var(--apple-panel);border:1px solid #4f46e526;min-width:144px;padding:5px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 26px #1f293721}.toolbar-menu button{border-radius:var(--radius-sm);width:100%;min-height:32px;color:var(--apple-text-secondary);cursor:pointer;font:inherit;font-size:var(--font-sm);text-align:left;background:0 0;border:0;align-items:center;gap:7px;padding:0 9px;display:flex}.toolbar-menu button:disabled{cursor:wait;opacity:.55}.column-picker-dropdown{background:var(--apple-panel);border:1px solid var(--apple-border);border-radius:var(--radius-md);box-shadow:var(--apple-shadow-md);padding:var(--space-sm);z-index:50;flex-direction:column;gap:2px;min-width:160px;margin-top:4px;display:flex;position:absolute;top:100%;right:0}.column-picker-item{align-items:center;gap:var(--space-sm);font-size:var(--font-sm);color:var(--apple-text-secondary);cursor:pointer;border-radius:var(--radius-xs);transition:background var(--transition-fast);padding:4px 8px;display:flex}.column-picker-item:hover{background:var(--apple-panel-muted)}.column-picker-item input{accent-color:var(--apple-blue)}.muted-panel{background:var(--apple-panel-muted)}.muted-panel h2{font-size:var(--font-md);margin-bottom:var(--space-sm);font-weight:600}.muted-panel p{color:var(--apple-text-secondary);font-size:var(--font-sm);margin-bottom:var(--space-xs);line-height:1.5}.kpi-grid{gap:var(--space-md);display:grid}.kpi-grid-six{grid-template-columns:repeat(6,minmax(0,1fr))}.kpi-grid-four,.kpi-grid.compact-four{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-inline-chips{align-items:center;gap:var(--space-lg);padding:0 0 var(--space-xs);font-size:var(--font-sm);color:var(--apple-text-secondary);display:flex}.kpi-inline-chips strong{color:var(--apple-text);margin-right:4px;font-weight:600}.kpi-inline-sep{background:#0000001a;width:1px;height:16px}.kpi-inline-dot{color:var(--apple-text-tertiary);margin:0 4px;font-size:18px;font-weight:700;line-height:1}.kpi-card{padding:var(--space-lg);border-radius:var(--radius-md);background:var(--apple-panel);box-shadow:var(--apple-shadow-sm);transition:box-shadow var(--ease-out);border:1px solid #0000000f;min-height:90px}.kpi-card.clickable:hover{box-shadow:var(--apple-shadow-md)}.kpi-card.clickable{cursor:pointer;text-align:left;width:100%;font-family:inherit}.kpi-card.clickable:active{transform:scale(.985)}.kpi-card span{color:var(--apple-text-secondary);font-size:var(--font-xs);letter-spacing:.2px;font-weight:500;display:block}.kpi-card strong{margin-top:var(--space-sm);letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:1;display:block}.kpi-card small{margin-top:var(--space-sm);color:var(--apple-text-tertiary);font-size:var(--font-xs);display:block}.tone-info strong{color:var(--apple-blue)}.tone-good strong{color:var(--apple-green-text)}.tone-warn strong{color:var(--apple-orange-text)}.tone-danger strong{color:var(--apple-red-text)}.tone-neutral strong{color:var(--apple-text)}.kpi-value-row{align-items:baseline;gap:var(--space-sm);margin-top:var(--space-sm);display:flex}.kpi-value-row strong{margin-top:0}.kpi-delta-abs{color:var(--apple-text-tertiary);font-size:var(--font-xs);margin-top:var(--space-xs);font-weight:500;display:block}.kpi-label{color:var(--apple-text-secondary);font-size:var(--font-sm);font-weight:500;display:block}.kpi-trend{font-size:var(--font-xs);flex-shrink:0;align-items:center;gap:1px;font-weight:600;display:inline-flex}.kpi-trend-up{color:var(--apple-green-text)}.kpi-trend-down{color:var(--apple-red-text)}.kpi-trend-flat{color:var(--apple-text-tertiary)}.workspace-grid{gap:var(--space-xl);grid-template-columns:minmax(0,1fr) 360px;align-items:start;display:grid}.side-stack{gap:var(--space-lg);display:grid}.side-section{padding:0}.side-section-title{font-size:var(--font-xs);color:var(--apple-text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-md);font-weight:600}.side-section-title-row{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.side-section-title-row .side-section-title{margin-bottom:0}.ai-result-close{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--apple-text-tertiary);cursor:pointer;transition:background var(--transition-normal),color .15s;background:0 0;border:none;justify-content:center;align-items:center;font-size:16px;line-height:1;display:inline-flex}.ai-result-close:hover{background:var(--apple-panel);color:var(--apple-text)}.ai-sync-head{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.ai-sync-title{font-weight:600;font-size:var(--font-sm);color:var(--apple-text)}.side-help{font-size:var(--font-sm);color:var(--apple-text-tertiary);margin:0;line-height:1.6}.side-help strong{color:var(--apple-text-secondary);font-weight:600}.quality-list{gap:var(--space-sm);display:grid}.quality-list div{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel-muted);border:1px solid #0000000f;display:flex}.quality-list span{color:var(--apple-text-secondary);font-size:var(--font-sm)}.quality-list strong{color:var(--apple-text);font-size:15px;font-weight:600}.anomaly-chip{cursor:pointer;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel-muted);border:1px solid var(--apple-border-light);transition:border-color var(--ease-out);justify-content:space-between;align-items:center;display:flex}.anomaly-chip:hover{border-color:var(--apple-border)}.anomaly-chip-name{color:var(--apple-text-secondary);font-size:var(--font-xs);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.anomaly-chip-price{color:var(--apple-text-secondary);font-size:var(--font-xs);white-space:nowrap;font-variant-numeric:tabular-nums}.anomaly-chip-dev{color:var(--apple-red-text);background:var(--apple-red-soft);border-radius:var(--radius-xs);white-space:nowrap;padding:1px 6px;font-size:11px;font-weight:600}.platform-mini-list{gap:var(--space-sm);display:grid}.platform-card{padding:var(--space-md);border-radius:var(--radius-md);background:var(--apple-panel);box-shadow:var(--apple-shadow-sm);border:1px solid #0000000f}.platform-card-idle{background:var(--apple-panel-muted)}.platform-card-head{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.platform-card-head>div{align-items:center;gap:var(--space-sm);display:flex}.platform-metrics{gap:var(--space-xs);margin-top:var(--space-md);grid-template-columns:repeat(4,1fr);display:grid}.platform-metrics div{padding:var(--space-sm);border-radius:var(--radius-sm);background:var(--apple-panel-muted)}.platform-metrics span{color:var(--apple-text-tertiary);font-size:var(--font-xs);display:block}.platform-metrics b{margin-top:2px;font-size:14px;font-weight:600;display:block}.platform-sync{margin-top:var(--space-sm);color:var(--apple-text-tertiary);font-size:var(--font-xs)}.filter-bar{gap:var(--space-sm);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.search-count{height:34px;padding:0 var(--space-sm);border-radius:var(--radius-sm);background:var(--apple-blue-soft);color:var(--apple-blue);font-size:var(--font-xs);white-space:nowrap;align-items:center;font-weight:500;display:inline-flex}.filter-bar input,.filter-bar select{height:34px;padding:0 var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel);color:var(--apple-text);font-size:var(--font-sm);transition:border-color var(--ease-out), box-shadow var(--ease-out);border:1px solid #00000014;outline:none}.filter-bar input{min-width:220px}.filter-bar select{appearance:none;cursor:pointer;min-width:140px;padding:0 30px 0 var(--space-md);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%2394a3b8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat}.filter-bar input:focus,.filter-bar select:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px var(--apple-blue-soft)}.filter-group{align-items:center;gap:6px;display:flex;position:relative}.filter-input{min-width:220px!important;padding-right:32px!important}.filter-clear{color:var(--apple-text-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex;position:absolute;right:6px}.native-select{height:34px;padding:0 var(--space-md);border-radius:var(--radius-md);background:var(--apple-panel);color:var(--apple-text);font-size:var(--font-sm);cursor:pointer;transition:border-color var(--ease-out), box-shadow var(--ease-out);border:1px solid #4f46e51f;outline:none}.native-select:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px var(--apple-blue-soft)}.dark .native-select{background:#ffffff0a;border-color:#ffffff14}.summary-row{gap:var(--space-xl);margin-bottom:var(--space-md);font-size:var(--font-sm);color:var(--apple-text-secondary);display:flex}.filter-bar input::placeholder{color:var(--apple-text-tertiary)}.filter-tabs{padding:0 0 var(--space-lg);border-radius:var(--radius-sm);background:#0000000f;gap:1px;width:fit-content;display:flex}.no-side-padding{padding-left:0;padding-right:0}.filter-tab{height:30px;padding:0 var(--space-md);background:var(--apple-panel);color:var(--apple-text-secondary);font-size:var(--font-sm);border:0;align-items:center;gap:6px;font-weight:500;transition:color .16s ease-out,background-color .16s ease-out,border-color .16s ease-out,box-shadow .16s ease-out;display:inline-flex}.filter-tab:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.filter-tab:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.filter-tab:only-child{border-radius:var(--radius-sm)}.filter-tab:hover{color:var(--apple-text);background:#f8fafc}.filter-tab.active{background:var(--apple-text);color:var(--apple-panel);font-weight:600}.filter-count{min-width:18px;height:18px;font-size:var(--font-xs);border-radius:var(--radius-md);background:#fff3;justify-content:center;align-items:center;padding:0 5px;font-weight:600;display:inline-flex}.filter-tab:not(.active) .filter-count{background:var(--apple-gray-soft);color:var(--apple-text-secondary)}.table-wrap{border-radius:var(--radius-md);background:var(--apple-panel);width:100%;max-height:70vh;overflow:auto;box-shadow:0 0 0 1px #0000000f}.table-count{padding:var(--space-sm) var(--space-md);font-size:var(--font-xs);color:var(--apple-text-tertiary);border-top:1px solid var(--apple-border-light)}.batch-bar{padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-sm);border-radius:var(--radius-sm);background:var(--apple-blue-soft);border:1px solid var(--apple-blue-soft);justify-content:space-between;align-items:center;display:flex}.batch-count{font-size:var(--font-sm);color:var(--apple-text-secondary)}.batch-count strong{color:var(--apple-blue);font-weight:700}.batch-actions{align-items:center;gap:var(--space-sm);display:flex}.batch-clear{color:var(--apple-text-tertiary);font-size:var(--font-sm);cursor:pointer;padding:0 var(--space-xs);background:0 0;border:0}.batch-clear:hover{color:var(--apple-text-secondary)}.col-check{text-align:center;width:36px;padding:0!important}.check-all-btn,.check-row-btn{cursor:pointer;width:28px;height:28px;color:var(--apple-text-tertiary);transition:color var(--ease-out), background var(--ease-out);border-radius:var(--radius-xs);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.check-all-btn:hover,.check-row-btn:hover{color:var(--apple-blue);background:var(--apple-blue-soft)}.check-row-btn.checked{color:var(--apple-blue)}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;vertical-align:middle;font-size:var(--font-sm);border-bottom:1px solid #0000000a;padding:10px 12px}.data-table .col-price{text-align:right;vertical-align:middle}.data-table thead{z-index:2;position:sticky;top:0}.data-table thead th{-webkit-backdrop-filter:blur(8px);background:linear-gradient(#ffffffd9,#faf9ffcc);border-bottom:1px solid #4f46e514}.data-table th{background:var(--apple-panel-muted);color:var(--apple-text-secondary);font-weight:600;font-size:var(--font-xs);text-transform:none;letter-spacing:.1px;white-space:nowrap;z-index:1;box-shadow:0 1px 0 0 var(--apple-border);position:sticky;top:0}.dark .data-table thead th{-webkit-backdrop-filter:blur(8px);background:linear-gradient(#ffffff0a,#4f46e508)}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--ease-out)}.data-table th.sortable:hover{color:var(--apple-blue)}.sort-icon{vertical-align:-1px;opacity:.3;transition:opacity var(--ease-out);margin-left:3px}.sort-icon.active{opacity:1;color:var(--apple-blue)}.data-table th.sortable:hover .sort-icon{opacity:.6}.data-table th:after{content:"";pointer-events:none;background:linear-gradient(#0000000a,#0000);height:6px;position:absolute;bottom:-6px;left:0;right:0}.data-table tbody tr{transition:background var(--ease-out)}.data-table.compact th,.data-table.compact td{font-size:var(--font-xs);padding:6px 10px}.data-table tbody tr:last-child td{border-bottom:0}.product-name{min-width:200px;max-width:360px;max-height:2.9em;color:var(--apple-text);font-weight:500;line-height:1.45;overflow:visible}.empty-cell{height:88px;color:var(--apple-text-tertiary);font-size:var(--font-sm);text-align:center!important}.table-link{color:var(--apple-text-link);font-size:var(--font-sm);transition:opacity var(--ease-out);align-items:center;gap:4px;font-weight:500;text-decoration:none;display:inline-flex}.table-link:hover{opacity:.8;text-decoration:underline}.table-actions,.action-cluster,.settings-actions{margin-top:var(--space-md);gap:var(--space-xs);flex-wrap:wrap;display:flex}.table-button{height:28px;padding:0 var(--space-sm);font-size:var(--font-xs);border-radius:var(--radius-sm);background:var(--apple-panel);color:var(--apple-text-secondary);border:1px solid #00000014;align-items:center;gap:4px;font-weight:500;transition:color .16s ease-out,background-color .16s ease-out,border-color .16s ease-out,box-shadow .16s ease-out;display:inline-flex}.table-button.accent{border-color:var(--apple-blue-soft);background:var(--apple-blue-soft);color:var(--apple-blue)}.price-cell{font-variant-numeric:tabular-nums;align-items:center;gap:5px;font-weight:500;display:inline-flex}.price-low-dot{border-radius:var(--radius-pill);vertical-align:middle;background:#ef4444;flex-shrink:0;width:7px;height:7px;margin-left:5px;animation:2s ease-in-out infinite price-dot-pulse;display:inline-block}@keyframes price-dot-pulse{0%,to{opacity:1}50%{opacity:.45}}.badge,.status-pill,.platform-tag,.spec-chip,.risk-text,.tag,.drawer-label,.settings-state{border-radius:var(--radius-sm);font-size:var(--font-xs);white-space:nowrap;align-items:center;padding:2px 8px;font-weight:600;line-height:1.6;display:inline-flex}.platform-tag{background:var(--apple-blue-soft);color:var(--apple-blue)}.spec-chip,.risk-text{background:var(--apple-gray-soft);color:var(--apple-text-secondary)}.risk-text-suspected{background:var(--apple-orange-soft);color:var(--apple-orange-text)}.risk-text-normal{background:var(--apple-green-soft);color:var(--apple-green-text)}.price-stack{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;gap:0;font-weight:500;line-height:1.3;display:inline-flex}.price-number{font-size:var(--font-sm);font-variant-numeric:tabular-nums;font-weight:500}.price-spacer{font-size:var(--font-xs);border-radius:var(--radius-sm);visibility:hidden;margin-top:1px;padding:0 4px;font-weight:500;line-height:1.3}.price-label{font-size:var(--font-xs);border-radius:var(--radius-sm);margin-top:1px;padding:0 4px;font-weight:500;line-height:1.3}.ref-price-clickable{cursor:pointer;text-underline-offset:2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.ref-price-clickable:hover{color:var(--accent)}.ref-price-default{background:var(--apple-orange-soft);color:var(--apple-orange-text)}.ref-price-confirmed{background:var(--apple-green-soft);color:var(--apple-green-text)}.ref-price-missing{background:var(--apple-gray-soft);color:var(--apple-gray-text)}.badge{background:var(--apple-gray-soft);color:var(--apple-text-secondary)}.badge.risk-suspected{background:var(--apple-orange-soft);color:var(--apple-orange-text)}.badge.status-confirmed,.badge.status-normal{background:var(--apple-green-soft);color:var(--apple-green-text)}.badge.status-dismissed,.status-pill{background:var(--apple-gray-soft);color:var(--apple-gray-text)}.status-pill.ok{background:var(--apple-green-soft);color:var(--apple-green-text)}.tag{background:var(--apple-gray-soft);color:var(--apple-text-secondary)}.tag-data-quality,.drawer-label{background:var(--apple-blue-soft);color:var(--apple-blue)}.settings-state{background:var(--apple-gray-soft);color:var(--apple-gray-text)}.settings-state.connected{background:var(--apple-green-soft);color:var(--apple-green-text)}.settings-state.idle{background:var(--apple-gray-soft);color:var(--apple-gray-text)}.settings-anchor-nav{z-index:10;gap:var(--space-xs);padding:var(--space-sm) var(--space-lg);background:var(--apple-bg);border-bottom:1px solid var(--apple-border-light);align-items:center;display:flex;position:sticky;top:0;overflow-x:auto}.settings-anchor-nav a{gap:var(--space-xs);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-sm);color:var(--apple-text-secondary);white-space:nowrap;transition:background var(--ease-out),color var(--ease-out),box-shadow var(--ease-out);border:1px solid #0000;align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.settings-anchor-nav a:hover{color:var(--apple-text);background:linear-gradient(135deg,#fff9,#f5f3ff8c);border-color:#4f46e51f;box-shadow:inset 0 1px #ffffffb3}.settings-anchor-nav a.active{color:var(--apple-blue);background:linear-gradient(135deg,#4f46e51f,#4f46e50f);border-color:#4f46e533;box-shadow:inset 0 1px #4f46e51a}.dark .settings-anchor-nav a:hover{background:linear-gradient(135deg,#ffffff0f,#4f46e50a);border-color:#ffffff14;box-shadow:inset 0 1px #ffffff0f}.dark .settings-anchor-nav a.active{color:#a5b4fc;background:linear-gradient(135deg,#4f46e52e,#4f46e514);border-color:#4f46e540}.text-good{color:var(--apple-green-text);font-weight:500}.text-warn{color:var(--apple-orange-text);font-weight:500}.shop-status-missing{color:var(--apple-text-tertiary);font-size:var(--font-sm)}.shop-status-missing.editable-hint{cursor:pointer;border-bottom:1px dashed var(--apple-text-tertiary)}.shop-status-missing.editable-hint:hover{color:var(--apple-blue);border-bottom-color:var(--apple-blue)}.shop-name-cell.editable{cursor:pointer}.shop-name-cell.editable:hover .text-good{text-decoration:underline;-webkit-text-decoration-color:var(--apple-blue);text-decoration-color:var(--apple-blue)}.extract-mall-btn{font-size:var(--font-xs);border-radius:var(--radius-xs);border:1px solid var(--apple-border);background:var(--apple-panel);color:var(--apple-blue);cursor:pointer;transition:all var(--ease-out);white-space:nowrap;padding:1px 8px}.extract-mall-btn:hover{background:var(--apple-blue-soft);border-color:var(--apple-blue)}.shop-name-cell{align-items:center;gap:5px;display:inline-flex}.shop-avatar-sm{object-fit:cover;border-radius:var(--radius-pill);flex-shrink:0;width:18px;height:18px}.shop-avatar-cell{align-items:center;gap:6px;display:inline-flex}.shop-avatar-thumb{object-fit:cover;border-radius:var(--radius-pill);border:1px solid #00000014;width:20px;height:20px}.drawer-avatar{object-fit:cover;border-radius:var(--radius-pill);border:1px solid #00000014;width:40px;height:40px;display:block}.empty-text{color:var(--apple-text-tertiary)}.queue-summary{min-width:150px;padding:var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel-muted);border:1px solid #0000000f}.queue-summary span{color:var(--apple-text-tertiary);font-size:var(--font-xs);display:block}.queue-summary strong{color:var(--apple-text);margin-top:3px;font-size:18px;font-weight:600;display:block}.drawer-backdrop{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a26;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{width:480px;height:100%;padding:var(--space-2xl);-webkit-backdrop-filter:blur(16px);animation:slideIn .2s var(--ease-out);background:linear-gradient(135deg,#ffffffeb,#faf9ffe0);border-left:1px solid #4f46e514;position:relative;overflow-y:auto;box-shadow:-8px 0 40px #00000014}.wide-drawer{width:min(620px,100vw)}.shop-drawer{width:480px}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.modal-overlay{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a26;justify-content:center;align-items:center;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-panel{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);box-shadow:var(--apple-shadow-lg);background:linear-gradient(135deg,#ffffffeb,#faf9ffe0);border:1px solid #4f46e51a;flex-direction:column;width:min(520px,92vw);max-height:85vh;display:flex;overflow:hidden}.modal-head{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--apple-border-light);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.modal-head h3{font-size:var(--font-md);align-items:center;gap:var(--space-sm);margin:0;font-weight:600;display:flex}.table-button.cs-btn{color:var(--apple-orange-text)}.table-button.cs-btn:hover{background:var(--apple-orange-soft);color:var(--apple-orange)}.drawer-close{top:var(--space-lg);right:var(--space-lg);position:absolute}.link-row{align-items:center;gap:var(--space-sm);display:flex}.copy-btn{flex-shrink:0}.copy-toast{font-size:var(--font-xs);color:var(--apple-green-text);animation:1.5s forwards copy-fade}@keyframes copy-fade{0%{opacity:1}70%{opacity:1}to{opacity:0}}.drawer h2{margin:var(--space-md) 44px var(--space-lg) 0;color:var(--apple-text);letter-spacing:-.2px;font-size:18px;font-weight:700;line-height:1.35}.drawer-link{width:100%;margin-top:var(--space-lg)}.drawer-link.button{height:36px;font-size:var(--font-sm)}.case-panel-content,.case-panel-summary,.case-panel-actions{display:flex}.case-panel-content{justify-content:space-between;align-items:center;gap:var(--space-md);margin-top:var(--space-sm)}.case-panel-summary{align-items:flex-start;gap:var(--space-sm);min-width:0}.case-panel-summary svg{color:var(--apple-orange);flex:none;margin-top:2px}.case-panel-summary strong{display:block}.case-panel-summary p,.case-panel-empty p{font-size:var(--font-xs);margin:3px 0 0}.case-panel-actions{justify-content:flex-end;gap:var(--space-xs);flex-wrap:wrap}.case-panel-empty,.case-panel-empty .button{margin-top:var(--space-sm)}.case-queue-list{gap:var(--space-sm);display:grid}.case-queue-row{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md);border:1px solid var(--apple-border);border-radius:var(--radius-sm);background:var(--apple-panel-muted);display:flex}.case-queue-row strong,.case-queue-row p{display:block}.case-queue-row p{color:var(--apple-text-secondary);font-size:var(--font-xs);margin:3px 0 0}.case-queue-actions{gap:var(--space-xs);flex:none;display:flex}.api-connection-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.api-connection-card{align-items:flex-start;gap:var(--space-md);min-height:190px;padding:var(--space-lg);border:1px solid var(--apple-border);border-radius:var(--radius-md);background:var(--apple-panel-muted);flex-direction:column;display:flex}.api-connection-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);width:100%;display:flex}.api-connection-card h3{font-size:var(--font-md);margin:0 0 4px}.api-connection-card p{color:var(--apple-text-secondary);font-size:var(--font-sm);margin:0;line-height:1.55}.api-connection-detail{min-height:44px}.api-connection-actions{gap:var(--space-sm);flex-wrap:wrap;margin-top:auto;display:flex}.api-connection-detail.warning-text{color:var(--apple-orange-text);gap:6px;display:flex}.api-connection-wait{color:var(--apple-text-tertiary);font-size:var(--font-xs);margin-top:auto;line-height:1.5}.spin-icon{animation:.9s linear infinite spin}.api-form-backdrop{z-index:1000;-webkit-backdrop-filter:blur(3px);background:#0f172a57;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.api-form-dialog{background:var(--apple-panel);border:1px solid #94a3b852;border-radius:18px;gap:18px;width:min(560px,100%);max-height:calc(100vh - 48px);padding:24px;display:grid;overflow-y:auto;box-shadow:0 24px 64px #0f172a38,0 3px 8px #0f172a14}.api-form-titlebar{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.api-form-heading{align-items:flex-start;gap:12px;min-width:0;display:flex}.api-form-mark{width:38px;height:38px;color:var(--apple-blue);background:#eff6ffeb;border:1px solid #3b82f638;border-radius:12px;flex:none;place-items:center;display:grid}.api-form-eyebrow{color:var(--apple-blue);letter-spacing:.04em;margin-bottom:3px;font-size:11px;font-weight:700;display:block}.api-form-titlebar h3{color:var(--apple-text);letter-spacing:-.02em;margin:0;font-size:20px}.api-form-titlebar p{max-width:410px;color:var(--apple-text-secondary);margin:5px 0 0;font-size:13px;line-height:1.55}.api-form-close{width:34px;height:34px;color:var(--apple-text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:none;place-items:center;padding:0;transition:background .16s,color .16s;display:grid}.api-form-close:hover{color:var(--apple-text);background:var(--apple-panel-muted)}.api-form-close:focus-visible{outline:2px solid var(--apple-blue);outline-offset:2px}.api-form-steps{border:1px solid var(--apple-border);background:var(--apple-panel-muted);border-radius:12px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.api-form-steps span{min-height:42px;color:var(--apple-text-tertiary);text-align:center;justify-content:center;align-items:center;gap:7px;padding:6px 8px;font-size:12px;font-weight:600;display:flex}.api-form-steps span+span{border-left:1px solid var(--apple-border)}.api-form-steps b{border:1px solid;border-radius:50%;place-items:center;width:19px;height:19px;font-size:11px;display:grid}.api-form-steps .is-active{color:var(--apple-blue);background:#eff6ffe0}.api-form-fields{gap:14px;display:grid}.api-form-dialog label{color:var(--apple-text);gap:7px;font-size:13px;font-weight:600;display:grid}.api-form-dialog label>span{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.api-form-dialog label em{color:var(--apple-text-tertiary);font-size:11px;font-style:normal;font-weight:500}.api-form-dialog input{box-sizing:border-box;border:1px solid var(--apple-border);width:100%;min-height:42px;color:var(--apple-text);background:var(--apple-bg);font:inherit;border-radius:10px;padding:0 12px;font-weight:400;transition:border-color .16s,box-shadow .16s,background .16s}.api-form-dialog input::placeholder{color:var(--apple-text-tertiary)}.api-form-dialog input:hover{border-color:#64748b85}.api-form-dialog input:focus{border-color:var(--apple-blue);background:var(--apple-panel);outline:0;box-shadow:0 0 0 3px #3b82f624}.api-form-hint{color:var(--apple-text-secondary);background:#eff6ff94;border:1px solid #3b82f624;border-radius:10px;align-items:flex-start;gap:8px;margin:0;padding:10px 12px;font-size:12px;line-height:1.5;display:flex}.api-form-hint svg{color:var(--apple-blue);flex:none;margin-top:1px}.api-form-actions{justify-content:flex-end;gap:10px;padding-top:2px;display:flex}.api-form-actions .button{min-height:38px}.confirm-dialog-backdrop{z-index:1100;-webkit-backdrop-filter:blur(3px);background:#0f172a57;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.confirm-dialog{box-sizing:border-box;width:min(460px,100%);color:var(--apple-text);background:var(--apple-panel);border:1px solid #94a3b852;border-radius:18px;padding:22px;animation:.18s ease-out confirm-dialog-in;box-shadow:0 24px 64px #0f172a38,0 3px 8px #0f172a14}@keyframes confirm-dialog-in{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.confirm-dialog-head{grid-template-columns:38px minmax(0,1fr) 30px;align-items:start;gap:12px;display:grid}.confirm-dialog-mark{width:38px;height:38px;color:var(--apple-blue);background:#eff6ffeb;border:1px solid #3b82f638;border-radius:12px;place-items:center;display:grid}.confirm-dialog-mark.danger{color:#d14343;background:#fff0f0;border-color:#dc262633}.confirm-dialog-head h3{letter-spacing:-.02em;margin:1px 0 0;font-size:18px}.confirm-dialog-head p{color:var(--apple-text-secondary);margin:6px 0 0;font-size:13px;line-height:1.55}.confirm-dialog-close{width:30px;height:30px;color:var(--apple-text-tertiary);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.confirm-dialog-close:hover{color:var(--apple-text);background:var(--apple-panel-muted)}.confirm-dialog-details{color:var(--apple-text-secondary);background:#eff6ff94;border:1px solid #3b82f624;border-radius:12px;gap:7px;margin:18px 0 0;padding:12px 14px 12px 31px;font-size:12px;line-height:1.5;display:grid}.confirm-dialog-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.confirm-dialog-actions .button{min-height:38px}.button.primary.danger{color:#cf3f3f;background:var(--apple-panel);border-color:#e06a6a}.button.primary.danger:hover{color:#b83232;background:#fff4f4;border-color:#cf3f3f}@media (width<=560px){.api-form-backdrop{align-items:end;padding:10px}.api-form-dialog{border-radius:16px;width:100%;max-height:calc(100dvh - 20px);padding:20px}.api-form-steps span{gap:4px;padding:6px 3px;font-size:11px}.api-form-steps b{display:none}.api-form-actions{grid-template-columns:1fr 1.4fr;display:grid}.api-form-actions .button{justify-content:center}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=640px){.case-panel-content,.case-queue-row{flex-direction:column;align-items:stretch}.case-panel-actions,.case-queue-actions{justify-content:flex-start}}.detail-grid{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.raw-field-grid strong{word-break:break-all}.detail-grid div,.note-box{padding:var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel-muted);border:1px solid #0000000f}.detail-grid span,.note-box span{color:var(--apple-text-tertiary);font-size:var(--font-xs);display:block}.detail-grid strong{color:var(--apple-text);word-break:break-word;margin-top:4px;font-weight:500;display:block}.detail-full{grid-column:1/-1}.price-compare-bar{margin-top:8px}.price-compare-track{background:var(--apple-border-light);border-radius:var(--radius-xs);height:6px;overflow:hidden}.price-compare-fill{border-radius:var(--radius-xs);min-width:2px;height:100%;transition:width var(--transition-slow)}.price-compare-labels{font-size:var(--font-xs);justify-content:space-between;align-items:center;margin-top:4px;display:flex}.price-compare-labels span:first-child{color:var(--apple-text);font-weight:600}.price-compare-pct{color:var(--apple-text-secondary);font-weight:500}.price-compare-ref{color:var(--apple-text-tertiary)}.note-box{margin-top:var(--space-md)}.note-box p{color:var(--apple-text-secondary);font-size:var(--font-sm);margin-top:4px;line-height:1.5}.note-box .muted{color:var(--apple-text-tertiary)}.review-records-list{flex-direction:column;gap:6px;margin-top:6px;display:flex}.review-record-row{align-items:center;gap:var(--space-sm);font-size:var(--font-xs);border-bottom:1px solid var(--apple-border-light);padding:4px 0;display:flex}.review-record-row:last-child{border-bottom:none}.review-record-action{color:var(--apple-blue);white-space:nowrap;font-weight:600}.review-record-reason{color:var(--apple-text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.review-record-time{color:var(--apple-text-tertiary);white-space:nowrap;font-size:11px}.break-link{word-break:break-all;line-height:1.5;font-size:var(--font-sm);display:block}.review-page{gap:var(--space-lg);flex-direction:column;min-height:calc(100vh - 104px);display:flex}.review-page>.review-worklist{flex-direction:column;flex:0 0 calc(100vh - 104px);height:calc(100vh - 104px);min-height:0;display:flex;overflow:hidden}.review-page>.case-queue{flex:none}.review-page .panel-head,.review-page .filter-tabs,.review-page .batch-bar{flex-shrink:0}.review-page .review-list{flex:1;min-height:0;padding-right:4px;overflow-y:auto}.review-page .pagination{padding-top:var(--space-sm);margin-top:var(--space-sm);border-top:1px solid var(--apple-border-light);flex-shrink:0}.review-list{gap:var(--space-md);display:grid}.review-checkbox{flex-shrink:0;align-items:flex-start;padding-top:2px;display:flex}.review-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--apple-blue);cursor:pointer;margin:0}.review-card{gap:var(--space-lg);padding:var(--space-lg);border-radius:var(--radius-md);background:var(--apple-panel);box-shadow:var(--apple-shadow-sm);border:1px solid #0000000f;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;display:grid}.review-main{min-width:0}.review-head{gap:var(--space-sm);margin-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.review-card h3{margin:0 0 var(--space-sm);color:var(--apple-text);font-size:15px;font-weight:600}.review-thumb{border-radius:var(--radius-md);background:#00000008;flex-shrink:0;place-items:center;width:60px;height:60px;display:grid;overflow:hidden}.review-thumb img{object-fit:cover;width:100%;height:100%}.review-actions{gap:var(--space-xs);flex-direction:column;flex-shrink:0;min-width:90px;display:flex}.review-evidence-grid{gap:var(--space-sm);margin-top:var(--space-sm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.review-evidence-grid div{padding:var(--space-sm);border-radius:var(--radius-sm);background:var(--apple-panel-muted);border:1px solid #0000000f}.review-evidence-grid span{color:var(--apple-text-tertiary);font-size:var(--font-xs);display:block}.review-evidence-grid strong{font-size:var(--font-sm);color:var(--apple-text);margin-top:3px;font-weight:500;display:block}.shop-summary-grid{gap:var(--space-md);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.shop-summary-grid>div{padding:var(--space-lg);border-radius:var(--radius-md);background:var(--apple-panel);box-shadow:var(--apple-shadow-sm);border:1px solid #0000000f}.shop-summary-grid span{color:var(--apple-text-secondary);font-size:var(--font-xs);display:block}.shop-summary-grid strong{margin-top:var(--space-sm);color:var(--apple-text);font-size:14px;font-weight:600;display:block}.shops-header{margin-bottom:var(--space-lg)}.shops-title-row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:4px;display:flex}.shops-title-row h2{font-size:var(--font-lg);color:var(--apple-text);letter-spacing:-.2px;white-space:nowrap;margin:0;font-weight:700}.shops-title-row select{height:34px;padding:0 30px 0 var(--space-md);font-size:var(--font-sm);color:var(--apple-text-secondary);background:var(--apple-panel);border-radius:var(--radius-sm);cursor:pointer;appearance:none;transition:border-color var(--ease-out);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%2394a3b8' stroke-width='1.5'%3E%3Cpath d='m3 5 3 3 3-3'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border:1px solid #00000014}.shops-title-row select:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px var(--apple-blue-soft);outline:0}.shops-header p{font-size:var(--font-sm);color:var(--apple-text-tertiary);margin:0}.shop-name-strong{min-width:160px;font-weight:500}.drawer-product-list{gap:var(--space-sm);margin-top:var(--space-lg);display:grid}.drawer-product-list article{gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel-muted);border:1px solid #0000000f;grid-template-columns:44px minmax(0,1fr);display:grid}.drawer-product-list img{border-radius:var(--radius-sm);object-fit:cover;width:44px;height:44px}.drawer-product-list strong,.drawer-product-list span{display:block}.drawer-product-list strong{font-size:var(--font-sm);font-weight:500;line-height:1.45}.drawer-product-list span{color:var(--apple-text-secondary);font-size:var(--font-xs);margin-top:2px}.settings-card{gap:var(--space-lg);padding:var(--space-xl);border-radius:var(--radius-lg);background:var(--apple-panel);box-shadow:var(--apple-shadow-sm);border:1px solid #0000000f;flex-direction:column;display:flex}.settings-card h3{font-size:var(--font-lg);color:var(--apple-text);margin:var(--space-sm) 0 var(--space-xs);letter-spacing:-.2px;font-weight:700}.source-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);display:flex}.source-card-head>div>p{color:var(--apple-text-secondary);font-size:var(--font-sm);line-height:1.5}.source-status-grid{gap:var(--space-sm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.source-status-grid>div{padding:var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel-muted);border:1px solid #0000000f}.source-status-grid span{color:var(--apple-text-tertiary);font-size:var(--font-xs);display:block}.source-status-grid strong{color:var(--apple-text);word-break:break-all;margin-top:4px;font-weight:500;display:block}.settings-grid{gap:var(--space-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.muted-card{background:var(--apple-panel-muted);opacity:.7}.muted-card h3{color:var(--apple-text-secondary)}.muted-card p{color:var(--apple-text-secondary);font-size:var(--font-sm)}.platform-empty-metrics{gap:var(--space-md);color:var(--apple-text-tertiary);font-size:var(--font-sm);display:flex}.empty-state{min-height:200px;padding:var(--space-3xl) var(--space-2xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{background:var(--apple-gray-soft);width:48px;height:48px;color:var(--apple-text-tertiary);margin-bottom:var(--space-lg);border-radius:var(--radius-pill);place-items:center;display:grid}.empty-state h3{font-size:var(--font-lg);color:var(--apple-text);margin-bottom:var(--space-xs);font-weight:600}.empty-state p{font-size:var(--font-sm);color:var(--apple-text-secondary);max-width:360px;margin-bottom:var(--space-xl);line-height:1.5}.empty-state .button{margin-top:var(--space-sm)}.empty-state-actions{gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;justify-content:center;display:flex}.empty-state-actions .button{margin-top:0}.filter-presets-bar{align-items:center;gap:var(--space-xs);padding:var(--space-xs) 0;border-bottom:1px solid var(--apple-border-light);margin-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.filter-preset-chip{border-radius:var(--radius-sm);background:var(--apple-blue-soft);border:1px solid var(--apple-border);align-items:center;gap:2px;display:inline-flex;overflow:hidden}.filter-preset-btn{font-size:var(--font-xs);color:var(--apple-blue);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:4px;padding:4px 10px;font-family:inherit;display:inline-flex}.filter-preset-btn:hover{background:var(--apple-blue-soft)}.filter-preset-del{border:none;border-left:1px solid var(--apple-border);color:var(--apple-text-tertiary);cursor:pointer;background:0 0;align-items:center;padding:4px 6px;display:flex}.filter-preset-del:hover{color:var(--apple-red);background:var(--apple-red-soft)}.filter-preset-add{font-size:var(--font-xs);color:var(--apple-text-tertiary);border:1px dashed var(--apple-border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-items:center;gap:4px;padding:4px 10px;font-family:inherit;display:inline-flex}.filter-preset-add:hover{color:var(--apple-blue);border-color:var(--apple-blue)}.filter-preset-chip.editing{background:var(--apple-panel);gap:0}.preset-name-input{width:80px;font-size:var(--font-xs);color:var(--apple-text);background:0 0;border:none;outline:none;padding:4px 8px;font-family:inherit}.filter-preset-save{color:var(--apple-green);cursor:pointer;background:0 0;border:none;padding:4px 6px}.filter-preset-save:disabled{color:var(--apple-text-tertiary);cursor:default}.new-products-badge{margin-left:var(--space-sm);font-size:var(--font-xs);color:var(--apple-green-text);background:var(--apple-green-soft);border-radius:var(--radius-pill);vertical-align:middle;align-items:center;padding:2px 8px;font-weight:500;display:inline-flex}.kpi-inline-new strong{color:var(--apple-green-text)}.note-display{color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:var(--radius-xs);border:0;align-items:center;gap:4px;margin:-1px -4px;padding:1px 4px;font-weight:500;display:inline-flex}.note-display:hover{background:var(--apple-blue-soft)}.note-edit-icon{opacity:0;transition:opacity var(--transition-fast)}.note-display:hover .note-edit-icon{opacity:.5}.note-edit-inline{align-items:center;gap:2px;display:flex}.note-edit-input{width:120px;font-size:var(--font-xs);border:1px solid var(--apple-blue);border-radius:var(--radius-xs);background:var(--apple-panel);color:var(--apple-text);outline:none;padding:2px 6px;font-family:inherit}.note-edit-ok,.note-edit-cancel{cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;align-items:center;padding:2px 4px;display:flex}.note-edit-ok{color:var(--apple-green)}.note-edit-ok:hover{background:var(--apple-green-soft)}.note-edit-cancel{color:var(--apple-text-tertiary)}.note-edit-cancel:hover{background:var(--apple-gray-soft)}.product-name-hover{display:inline;position:relative}.product-preview{z-index:50;border-radius:var(--radius-md);box-shadow:var(--apple-shadow-lg);border:1px solid var(--apple-border);background:var(--apple-panel);margin-top:4px;display:none;position:absolute;top:100%;left:0;overflow:hidden}.product-name-hover:hover .product-preview{display:block}.product-preview img{object-fit:cover;width:160px;height:160px;display:block}.spec-groups-list{flex-direction:column;gap:4px;display:flex}.spec-group-chip{border:1px solid var(--apple-border);border-radius:var(--radius-sm);background:var(--apple-panel);cursor:pointer;font-family:inherit;font-size:var(--font-xs);color:var(--apple-text-secondary);text-align:left;transition:border-color var(--transition-fast);justify-content:space-between;align-items:center;padding:6px 10px;display:flex}.spec-group-chip:hover{border-color:var(--apple-blue);background:var(--apple-blue-soft)}.spec-group-name{color:var(--apple-text);font-weight:500}.spec-group-count{color:var(--apple-text-tertiary);font-size:var(--font-xs)}.toast-stack{right:var(--space-2xl);bottom:var(--space-2xl);z-index:100;gap:var(--space-sm);flex-direction:column-reverse;max-width:360px;display:flex;position:fixed}.toast{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);background:var(--apple-text);color:var(--apple-panel);font-size:var(--font-sm);animation:toastIn .25s var(--ease-out) both;pointer-events:auto;align-items:center;gap:var(--space-md);display:flex;box-shadow:0 8px 32px #0003}.toast-undo{background:var(--apple-blue-soft);color:var(--apple-blue);border:1px solid var(--apple-blue);font-size:var(--font-xs);border-radius:var(--radius-xs);cursor:pointer;white-space:nowrap;transition:background var(--transition-normal);padding:2px 10px;font-weight:600}.toast-undo:hover{background:var(--apple-blue);color:#fff}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.api-message{padding:var(--space-md);border-radius:var(--radius-sm);background:var(--apple-panel-muted);font-size:var(--font-sm);border:1px solid #0000000f}.api-message.success{border-color:var(--apple-green-soft);background:var(--apple-green-soft)}.api-message.error{border-color:var(--apple-red-soft);background:var(--apple-red-soft)}.site-home{min-height:100dvh;padding:var(--space-2xl);background:var(--apple-bg)}.site-nav,.site-hero{max-width:1100px;margin:0 auto}.site-nav{justify-content:space-between;align-items:center;height:56px;display:flex}.site-brand{align-items:center;gap:var(--space-sm);font-weight:700;display:flex}.site-brand-mark{border-radius:var(--radius-md);color:#fff;background:#0f172a;place-items:center;width:32px;height:32px;display:grid}.site-hero{grid-template-columns:minmax(0,1fr) 400px;align-items:center;gap:40px;padding:48px 0;display:grid}.site-hero h1{margin:var(--space-md) 0;font-size:44px;font-weight:700}.site-hero p{color:var(--apple-text-secondary);line-height:1.7}.site-preview{padding:var(--space-lg);border-radius:var(--radius-md);background:var(--apple-panel);border:1px solid #0000000f}.site-preview-grid{gap:var(--space-sm);margin-top:var(--space-lg);display:grid}.site-preview-grid div{padding:var(--space-md);border-radius:var(--radius-sm);border:1px solid #0000000f}.alerts-segmented-control{border-radius:var(--radius-md);background:#0000000d;gap:2px;padding:3px;display:inline-flex}.alerts-segment{height:30px;color:var(--apple-text-secondary);font-size:var(--font-sm);cursor:pointer;white-space:nowrap;border-radius:var(--radius-md);transition:all var(--transition-normal);background:0 0;border:0;align-items:center;gap:5px;padding:0 14px;font-family:inherit;font-weight:500;line-height:1;display:inline-flex}.alerts-segment:hover{color:var(--apple-text)}.alerts-segment.active{background:var(--apple-panel);color:var(--apple-text);font-weight:600;box-shadow:0 1px 3px #00000014,0 0 0 .5px #0000000a}.alerts-segment-badge{min-width:18px;height:18px;color:var(--apple-text-secondary);border-radius:var(--radius-md);transition:all var(--transition-normal);background:#00000014;justify-content:center;align-items:center;padding:0 5px;font-size:10px;font-weight:600;line-height:1;display:inline-flex}.alerts-segment.active .alerts-segment-badge{background:var(--apple-gray-soft);color:var(--apple-text-secondary)}.alerts-filter-row{margin-bottom:var(--space-sm);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.review-mode-bar{gap:var(--space-sm);margin-bottom:var(--space-md);align-items:center;display:flex}.review-mode-btn{-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-lg);cursor:pointer;color:var(--apple-text-secondary);font-size:var(--font-sm);transition:background var(--ease-out), border-color var(--ease-out), box-shadow var(--ease-out);background:linear-gradient(135deg,#fff9,#f5f3ff8c);border:1px solid #4f46e51f;padding:6px 14px;font-weight:500;box-shadow:inset 0 1px #ffffffb3}.review-mode-btn:hover{color:var(--apple-text);background:linear-gradient(135deg,#fffc,#f0eeffb3);border-color:#4f46e533;box-shadow:inset 0 1px #ffffffe6,0 1px 4px #4f46e514}.review-mode-btn.active{color:var(--apple-blue);background:linear-gradient(135deg,#4f46e51f,#4f46e514);border-color:#4f46e533;box-shadow:inset 0 1px #4f46e526}.review-mode-btn:active{transform:scale(.96)}.review-mode-hint{color:var(--apple-text-tertiary);font-size:var(--font-xs)}.review-cards{gap:var(--space-md);display:grid}.review-card-item{background:var(--apple-panel);border:1px solid var(--apple-border-light);border-radius:var(--radius-md);padding:var(--space-lg);gap:var(--space-lg);transition:border-color var(--ease-out);align-items:center;display:flex}.review-card-item:hover{border-color:var(--apple-border)}.review-card-left{gap:var(--space-md);flex:1;align-items:flex-start;min-width:0;display:flex}.review-card-thumb{border-radius:var(--radius-sm);object-fit:cover;background:var(--apple-bg);flex-shrink:0;width:72px;height:72px}.review-card-info{flex:1;min-width:0}.review-card-info h3{font-size:var(--font-sm);color:var(--apple-text);white-space:nowrap;text-overflow:ellipsis;margin:0 0 4px;font-weight:600;overflow:hidden}.review-card-meta{gap:var(--space-sm);font-size:var(--font-xs);color:var(--apple-text-tertiary);align-items:center;margin-bottom:6px;display:flex}.review-card-prices{gap:var(--space-sm);font-size:var(--font-xs);color:var(--apple-text-secondary);flex-wrap:wrap;display:flex}.review-card-right{gap:var(--space-sm);flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.review-card-deviation{font-size:var(--font-lg);color:var(--apple-text-secondary);font-variant-numeric:tabular-nums;font-weight:700}.review-card-deviation.warn{color:var(--apple-orange-text)}.review-card-deviation.danger{color:var(--apple-red-text)}.review-card-actions{gap:var(--space-xs);display:flex}.review-card-detail{cursor:pointer;color:var(--apple-text-link);font-size:var(--font-xs);background:0 0;border:none;padding:0;text-decoration:none}.review-card-detail:hover{text-decoration:underline}.alerts-filter-select{background:var(--apple-panel);height:34px;color:var(--apple-text-secondary);font-size:var(--font-sm);appearance:none;cursor:pointer;border-radius:var(--radius-md);min-width:140px;transition:border-color var(--transition-slow) ease-out,box-shadow .2s ease-out;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%2394a3b8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border:1px solid #00000014;padding:0 30px 0 12px;font-family:inherit}.alerts-filter-select:hover{border-color:#0000001a}.alerts-filter-select:focus{border-color:var(--apple-blue);color:var(--apple-text);box-shadow:0 0 0 3px var(--apple-blue-soft);outline:none}.alerts-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.alerts-empty-icon{background:var(--apple-gray-soft);border-radius:var(--radius-xl);justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:16px;display:flex}.alerts-empty-icon svg{width:28px;height:28px;color:var(--apple-text-tertiary)}.alerts-empty-title{font-size:var(--font-lg);color:var(--apple-text);margin:0 0 6px;font-weight:600}.alerts-empty-desc{font-size:var(--font-sm);color:var(--apple-text-tertiary);max-width:360px;margin:0;line-height:1.6}.alerts-action-btn{height:26px;font-size:var(--font-xs);background:var(--apple-panel);color:var(--apple-text-secondary);cursor:pointer;white-space:nowrap;border-radius:var(--radius-sm);transition:all var(--transition-normal);border:1px solid #00000014;align-items:center;gap:3px;padding:0 10px;font-family:inherit;font-weight:500;display:inline-flex}.alerts-action-btn:hover{color:var(--apple-text);background:#f1f5f9;border-color:#0000001a}.alerts-action-btn.primary{border-color:var(--apple-blue-soft);background:var(--apple-blue-soft);color:var(--apple-blue);font-weight:600}.alerts-action-btn.primary:hover{border-color:var(--apple-blue);background:var(--apple-blue-soft)}.alerts-action-btn.danger{border-color:var(--apple-red-soft);background:var(--apple-red-soft);color:var(--apple-red)}.alerts-action-btn.danger:hover{border-color:var(--apple-red);background:#dc26261f}.alerts-price-diff{font-variant-numeric:tabular-nums;align-items:center;gap:3px;font-weight:500;display:inline-flex}.alerts-price-diff.warn{color:var(--apple-orange-text)}.alerts-price-diff.danger{color:var(--apple-red)}.shops-summary-card{transition:box-shadow var(--transition-slow)}.shops-summary-card:hover{box-shadow:var(--apple-shadow-md)}.shops-summary-card span{color:var(--apple-text-secondary);font-size:var(--font-xs);letter-spacing:.2px;display:block}.shops-summary-card strong{margin-top:var(--space-sm);letter-spacing:-.5px;font-size:28px;font-weight:700;line-height:1;display:block}.shops-summary-card .shops-summary-label-sm{letter-spacing:0;font-size:14px;font-weight:600}.shops-name-cell{min-width:160px;color:var(--apple-text);font-weight:500}.shop-edit-trigger{opacity:0;border-radius:var(--radius-xs);color:var(--apple-text-tertiary);cursor:pointer;transition:opacity var(--transition-normal),color .15s;vertical-align:middle;background:0 0;border:none;align-items:center;margin-left:4px;padding:2px;display:inline-flex}tr:hover .shop-edit-trigger,.shop-edit-trigger:focus-visible{opacity:1}.shop-edit-trigger:hover{color:var(--apple-blue)}.shop-edit-row{align-items:center;gap:4px;display:inline-flex}.shop-edit-input{width:120px;height:26px;font-size:var(--font-xs);border:1px solid var(--apple-blue);border-radius:var(--radius-xs);background:var(--apple-panel);color:var(--apple-text);outline:none;padding:0 6px}.shop-edit-btn{border-radius:var(--radius-xs);cursor:pointer;border:none;justify-content:center;align-items:center;width:22px;height:22px;padding:0;display:inline-flex}.shop-edit-btn.save{background:var(--apple-blue);color:#fff}.shop-edit-btn.cancel{background:var(--apple-panel);color:var(--apple-text-tertiary);border:1px solid var(--apple-border)}.shop-custom-name{color:var(--apple-text);font-weight:600}.shops-price-cell{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}.shops-drawer-price{color:var(--apple-text-secondary);font-size:var(--font-xs);margin-top:2px}.drawer-product-link{color:var(--apple-text-link);text-decoration:none}.drawer-product-link:hover{text-decoration:underline}.risk-queue-table th,.risk-queue-table td{padding:10px 12px}.trend-panel{margin-top:var(--space-xs)}.trend-header{align-items:baseline;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.trend-header h3{font-size:var(--font-md);color:var(--apple-text);margin:0;font-weight:600}.trend-subtitle{font-size:var(--font-xs);color:var(--apple-text-tertiary);margin-right:auto}.trend-summary{align-items:center;gap:var(--space-md);display:flex}.trend-val{font-size:var(--font-xs);color:var(--apple-text-secondary)}.trend-val strong{color:var(--apple-text);font-variant-numeric:tabular-nums;font-weight:600}.trend-delta{font-size:var(--font-xs);font-variant-numeric:tabular-nums;font-weight:500}.trend-delta.down{color:var(--apple-green-text)}.trend-delta.up{color:var(--apple-red-text)}.trend-legend{gap:var(--space-lg);margin-top:var(--space-sm);padding:0 4px;display:flex}.trend-legend-item{font-size:var(--font-xs);color:var(--apple-text-tertiary);align-items:center;gap:6px;display:flex}.trend-legend-line{border-radius:var(--radius-xs);width:16px;height:2px}.trend-legend-line.avg{background:var(--apple-blue)}.trend-legend-line.min{background:var(--apple-text-tertiary);background-image:repeating-linear-gradient(90deg, var(--apple-text-tertiary) 0, var(--apple-text-tertiary) 4px, transparent 4px, transparent 7px)}.login-page{min-height:100dvh;padding:var(--space-2xl);isolation:isolate;background:radial-gradient(circle at 1px 1px,#4f46e50a 1px,#0000 1px) 0 0/24px 24px,#f0f1f5 radial-gradient(800px 500px at 50% 35%,#4f46e50f,#0000 70%) 0 0/100% 100%;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.login-page:before{content:"";z-index:0;opacity:.35;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:300px 300px;position:absolute;inset:0}@keyframes login-glow-breathe{0%{opacity:.3}to{opacity:1}}.login-panel{-webkit-backdrop-filter:blur(24px);z-index:1;border-radius:var(--radius-xl);background:#ffffffe0;border:1px solid #ffffff2e;width:400px;max-width:100%;padding:40px;animation:.5s cubic-bezier(.16,1,.3,1) .2s both login-panel-enter;position:relative;box-shadow:inset 0 1px #fff9,0 4px 24px #00000014,0 1px 3px #00000014}@keyframes login-panel-enter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.login-brand{text-align:center;margin-bottom:var(--space-2xl);animation:.45s cubic-bezier(.16,1,.3,1) .35s both login-brand-enter}@keyframes login-brand-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.login-logo{color:#fff;letter-spacing:-.5px;border-radius:var(--radius-lg);background:linear-gradient(135deg,#6366f1,#818cf8);place-items:center;width:56px;height:56px;margin-bottom:16px;font-size:20px;font-weight:700;display:inline-grid;box-shadow:0 0 0 8px #6366f11f}.login-brand h1{color:#1e1b4b;letter-spacing:-.5px;margin:0;font-size:26px;font-weight:700}.login-brand p{color:#00000080;margin:4px 0 0;font-size:14px}.login-form{flex-direction:column;gap:14px;animation:.45s cubic-bezier(.16,1,.3,1) .5s both login-form-enter;display:flex}@keyframes login-form-enter{0%{opacity:0}to{opacity:1}}.login-label{color:#0000008c;font-size:13px;font-weight:500}.login-input{color:#1e1b4b;border-radius:var(--radius-md);height:48px;transition:border-color var(--transition-slow),box-shadow .2s,background .2s;background:#f8f9fbcc;border:1px solid #00000014;outline:none;padding:0 14px;font-size:16px}.login-input::placeholder{color:#0000002e}.login-input:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.login-input:disabled{opacity:.4}.login-error{color:#dc2626;margin:0;font-size:13px;animation:.3s login-error-flash}@keyframes login-error-flash{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes login-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.login-input.shake{border-color:#dc2626;animation:.4s login-shake}.login-btn{color:#fff;cursor:pointer;border-radius:var(--radius-md);height:48px;transition:filter var(--transition-slow),transform .15s,box-shadow .2s;background:linear-gradient(135deg,#4f46e5,#6366f1);border:0;justify-content:center;align-items:center;gap:8px;margin-top:4px;font-size:15px;font-weight:600;display:inline-flex;box-shadow:0 2px 8px #4f46e540}.login-btn:hover{filter:brightness(1.08);box-shadow:0 4px 14px #4f46e552}.login-btn:active{transform:scale(.97)translateY(2px);box-shadow:0 1px 4px #4f46e533}.login-btn:disabled{opacity:.5;cursor:not-allowed;filter:none;box-shadow:none}.login-btn:disabled:active{transform:none}.login-btn-spinner{border-radius:var(--radius-pill);border:2px solid #ffffff40;border-top-color:#fff;width:15px;height:15px;animation:.6s linear infinite login-spin;display:inline-block}@keyframes login-spin{to{transform:rotate(360deg)}}.login-footer{text-align:center;margin-top:20px;animation:.45s cubic-bezier(.16,1,.3,1) .65s both login-footer-enter}@keyframes login-footer-enter{0%{opacity:0}to{opacity:1}}.login-footer p{color:#00000059;margin:0;font-size:12px}.login-footer p+p{margin-top:2px}.dealer-row .cell-edit-btn{opacity:0;transition:opacity var(--transition-normal);cursor:pointer;color:var(--apple-text-tertiary);border-radius:var(--radius-xs);vertical-align:middle;background:0 0;border:none;margin-left:6px;padding:2px 4px}.dealer-row:hover .cell-edit-btn{opacity:1}.dealer-row .cell-edit-btn:hover{color:var(--accent);background:var(--apple-blue-soft)}.dealer-cell{position:relative;overflow:visible}.cell-content{vertical-align:middle;transition:border-color var(--ease-out);border-bottom:1px dashed #0000}.dealer-row:hover .cell-content{border-bottom-color:var(--apple-text-tertiary)}.cell-edit-inline{z-index:10;background:var(--apple-panel);box-shadow:0 0 0 2px var(--accent), 0 2px 8px #00000014;border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:4px;padding:3px 6px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cell-edit-input{border:1px solid var(--apple-border);border-radius:var(--radius-xs);width:100px;height:28px;font-size:var(--font-sm);background:var(--apple-bg);color:var(--apple-text);outline:none;padding:0 8px}.cell-edit-save,.cell-edit-cancel{border-radius:var(--radius-xs);cursor:pointer;border:none;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:12px;display:inline-flex}.cell-edit-save{background:var(--accent);color:#fff}.cell-edit-cancel{background:var(--apple-fill-secondary);color:var(--apple-text-secondary)}.th-delete-btn{opacity:0;transition:opacity var(--transition-normal);cursor:pointer;color:var(--apple-text-tertiary);vertical-align:middle;background:0 0;border:none;margin-left:2px;padding:0 2px}th:hover .th-delete-btn{opacity:1}.th-delete-btn:hover{color:var(--apple-red)}.add-col-inline{align-items:center;gap:6px;display:flex}.add-col-input{border:1px solid var(--apple-border);border-radius:var(--radius-sm);width:100px;height:30px;font-size:var(--font-xs);background:var(--apple-panel);color:var(--apple-text);outline:none;padding:0 8px}.add-col-input:focus{border-color:var(--accent)}.col-panel-actions{align-items:center;gap:8px;display:flex}.col-delete-btn{cursor:pointer;color:var(--apple-text-tertiary);border-radius:var(--radius-xs);background:0 0;border:none;padding:2px}.col-delete-btn:hover{color:var(--apple-red);background:var(--apple-red-soft)}.dealer-form-field{color:var(--apple-text-secondary);flex-direction:column;gap:3px;font-size:12px;display:flex}.kpi-editable{cursor:pointer;transition:color var(--transition-normal)}.kpi-editable:hover{color:var(--accent)}.kpi-override-dot{background:var(--accent);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-left:6px;display:inline-block}.col-del{text-align:center;width:44px}.cell-delete-btn{opacity:0;transition:opacity var(--transition-normal);cursor:pointer;color:var(--apple-text-tertiary);border-radius:var(--radius-xs);background:0 0;border:none;padding:4px}.dealer-row:hover .cell-delete-btn{opacity:1}.cell-delete-btn:hover{color:var(--apple-red);background:var(--apple-red-soft)}@media (prefers-reduced-motion:reduce){.login-panel,.login-brand,.login-form,.login-footer{animation:none}.login-btn{transition:none}.login-page:before{animation:none}}@media (prefers-reduced-transparency:reduce){.login-panel{-webkit-backdrop-filter:none;background:#fff}}.sync-activity{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid #0000000f}.sync-activity-head{margin-bottom:var(--space-sm)}.sync-activity-head h4{font-size:var(--font-xs);color:var(--apple-text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin:0;font-weight:600}.sync-activity-row{align-items:center;gap:var(--space-sm);border-bottom:1px solid #00000008;grid-template-columns:100px minmax(0,1fr) 52px 52px 60px;padding:6px 0;display:grid}.sync-activity-time{font-size:var(--font-xs);color:var(--apple-text-tertiary);font-variant-numeric:tabular-nums;white-space:nowrap}.sync-activity-keyword{font-size:var(--font-sm);color:var(--apple-text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sync-activity-count{font-size:var(--font-xs);color:var(--apple-text-tertiary);text-align:right;white-space:nowrap}.sync-activity-rejected{font-size:var(--font-xs);color:var(--apple-orange-text);text-align:right;white-space:nowrap;font-weight:500}.sync-activity-status{font-size:var(--font-xs);text-align:right;white-space:nowrap;font-weight:500}.sync-activity-status.ok{color:var(--apple-green-text)}.sync-activity-status.warn{color:var(--apple-orange-text)}.sync-activity-status.fail{color:var(--apple-red-text)}.skeleton-block{border-radius:var(--radius-md);background:linear-gradient(90deg,#0000000a 25%,#0000000f 50%,#0000000a 75%) 0 0/200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.error-panel{min-height:360px;padding:var(--space-3xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.error-panel-icon{background:var(--apple-red-soft);width:56px;height:56px;color:var(--apple-red);margin-bottom:var(--space-lg);border-radius:var(--radius-pill);place-items:center;display:grid}.error-panel h3{font-size:var(--font-lg);color:var(--apple-text);margin:0 0 var(--space-xs);font-weight:600}.error-panel p{font-size:var(--font-sm);color:var(--apple-text-secondary);max-width:400px;margin:0 0 var(--space-xl);line-height:1.5}@media (width>=1600px){:root{--font-xl:26px;--font-lg:18px;--font-md:15px;--font-sm:14px;--font-xs:13px;--sidebar-width:240px;--table-row:60px}body{font-size:15px}.main-shell{padding:var(--space-3xl) var(--space-3xl) var(--space-3xl)}.topbar h1{font-size:var(--font-xl)}.topbar{margin-bottom:var(--space-3xl)}.data-table th,.data-table td{font-size:var(--font-sm);padding:10px 14px}.panel{padding:var(--space-xl) var(--space-2xl)}.product-name{min-width:200px;max-width:360px}.kpi-value{font-size:var(--font-xl)}.drawer{width:min(720px,80vw)}}@media (width>=1440px){.review-card{gap:var(--space-md);grid-template-columns:30px 64px minmax(0,1fr) 100px}.review-actions{align-self:start;min-width:100px}}@media (width<=1100px){:root{--sidebar-width:190px}.main-shell{padding:var(--space-lg) var(--space-xl) var(--space-xl)}.global-search{width:180px}.product-name{min-width:140px;max-width:240px}.data-table th,.data-table td{font-size:var(--font-xs);padding:8px 10px}.data-table .col-price{text-align:right}.panel{padding:var(--space-lg)}.topbar{margin-bottom:var(--space-lg);min-height:40px}.topbar h1{font-size:var(--font-lg)}}@media (width<=1280px){.kpi-grid-six{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-grid{grid-template-columns:1fr}.settings-grid,.source-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-card{grid-template-columns:1fr}.review-actions{width:100%}}@media (width<=768px){body{min-width:0}.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.nav-list{grid-template-columns:repeat(3,minmax(0,1fr))}.main-shell{padding:var(--space-lg)}.topbar,.page-intro{flex-direction:column;align-items:stretch}.global-search,.intro-meta{width:100%}.kpi-grid-six,.kpi-grid.compact-four,.settings-grid,.source-status-grid,.shop-summary-grid,.detail-grid,.review-evidence-grid{grid-template-columns:1fr}.drawer{width:min(100vw,620px)}}.refresh-bar{background:linear-gradient(90deg, var(--apple-blue-soft), var(--apple-blue), var(--apple-blue-soft));background-size:200% 100%;height:3px;animation:1.5s ease-in-out infinite refreshBarSlide}@keyframes refreshBarSlide{0%{background-position:100% 0}to{background-position:-100% 0}}.spin{animation:1s linear infinite spin}.mobile-nav-toggle{display:none}@media (width<=768px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:100;width:260px;height:100dvh;transition:transform var(--transition-slow);position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:99;background:#0000004d;position:fixed;inset:0}.mobile-nav-toggle{z-index:101;background:var(--apple-blue);color:#fff;cursor:pointer;border-radius:var(--radius-md);border:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:fixed;top:12px;right:12px;box-shadow:0 2px 8px #4f46e54d}.main-shell{padding:var(--space-md)}.kpi-grid-four{grid-template-columns:1fr 1fr}.workspace-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column}.filter-bar .global-search{width:100%!important}.topbar{gap:var(--space-sm);flex-wrap:wrap}.topbar h1{font-size:18px}.panel{padding:var(--space-md)}.panel-head{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.login-panel{width:100%;padding:0 var(--space-md)}.dealer-table{min-width:700px}}.pagination{padding:var(--space-md) 0 0;font-size:var(--font-sm);justify-content:space-between;align-items:center;display:flex}.paginate-info{color:var(--apple-text-tertiary)}.paginate-btns{gap:var(--space-sm);display:flex}.paginate-btn{background:var(--apple-bg);border:1px solid var(--apple-border);font-size:var(--font-sm);cursor:pointer;color:var(--apple-text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-normal);padding:4px 12px}.paginate-btn:hover:not(:disabled){background:var(--apple-blue-soft);border-color:var(--apple-blue);color:var(--apple-blue)}.paginate-btn:disabled{opacity:.35;cursor:not-allowed}.products-controls{padding:var(--space-md) 0 0;margin-top:var(--space-sm);border-top:1px solid var(--apple-border-light);justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.controls-left{align-items:center;gap:8px;display:flex}.controls-label{color:var(--apple-text-tertiary);font-size:12px}.page-size-selector{background:var(--apple-bg);box-shadow:inset 0 0 0 1px var(--apple-border-light);border-radius:var(--radius-md);gap:2px;padding:3px;display:flex}.page-size-btn{min-width:38px;height:30px;color:var(--apple-text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-slow);background:0 0;border:none;padding:0 10px;font-size:13px;font-weight:500}.page-size-btn:hover{color:var(--apple-text);background:var(--apple-panel)}.page-size-btn.active{background:var(--accent);color:#fff;box-shadow:0 1px 3px #00000014}.page-size-btn.mode-toggle{border:1px solid var(--apple-border);background:var(--apple-panel);border-radius:var(--radius-md);min-width:56px;margin-left:6px}.page-size-btn.mode-toggle:hover{border-color:var(--apple-blue);color:var(--apple-blue);background:var(--apple-blue-soft)}.page-size-btn.mode-toggle.active{border-color:var(--apple-blue);background:var(--apple-blue);color:#fff;box-shadow:0 0 0 1px var(--apple-blue), 0 1px 3px #4f46e540}.controls-right{align-items:center;gap:var(--space-sm);display:flex}.ai-briefing{padding:var(--space-lg);margin-bottom:var(--space-xl);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-xl);background:linear-gradient(135deg,#fff9,#f5f3ff8c);border:1px solid #4f46e51f;box-shadow:inset 0 1px #ffffffb3}.ai-briefing-head{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.ai-badge{font-size:var(--font-xs);color:var(--apple-blue);background:var(--apple-blue-soft);letter-spacing:.5px;border-radius:var(--radius-xs);padding:2px 8px;font-weight:700}.ai-model{color:var(--apple-text-tertiary);font-size:11px}.ai-toggle{color:var(--apple-blue);font-size:var(--font-xs);cursor:pointer;border-radius:var(--radius-xs);transition:background var(--transition-normal);background:0 0;border:none;margin-left:auto;padding:2px 6px;font-weight:500}.ai-toggle:hover{background:var(--apple-blue-soft)}.ai-briefing p{color:var(--apple-text-secondary);font-size:var(--font-sm);margin:0;line-height:1.7}.ai-loading p{color:var(--apple-text-tertiary)}.ai-unavailable{background:linear-gradient(135deg,#fff9,#f3f3f88c);border-color:#94a3b81f}.ai-unavailable p{color:var(--apple-text-tertiary);font-style:italic}.ai-search-row{gap:var(--space-sm);margin-top:var(--space-sm);align-items:center;display:flex}.ai-search-input{border:1px solid var(--apple-border);font-size:var(--font-sm);background:var(--apple-panel);color:var(--apple-text);border-radius:var(--radius-sm);flex:1;padding:6px 12px}.ai-search-input::placeholder{color:var(--apple-text-tertiary)}.ai-search-input:focus{border-color:var(--apple-blue);outline:none}.chat-widget{z-index:40;display:inline-flex;position:relative}body.drawer-open .chat-widget{visibility:hidden!important;pointer-events:none!important}.product-detail-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0f172a29}.product-detail-drawer{background:var(--apple-panel);-webkit-backdrop-filter:none;backdrop-filter:none;animation:product-detail-drawer-enter .18s var(--ease-out);contain:layout paint;will-change:transform}@keyframes product-detail-drawer-enter{0%{transform:translate(16px)}to{transform:translate(0,0)}}body.shop-drawer-open .chat-widget{visibility:hidden!important;pointer-events:none!important}.shop-drawer-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0f172a29}.shop-detail-drawer{background:var(--apple-panel);-webkit-backdrop-filter:none;backdrop-filter:none;animation:shop-detail-drawer-enter .18s var(--ease-out);contain:layout paint;will-change:transform}@keyframes shop-detail-drawer-enter{0%{transform:translate(16px)}to{transform:translate(0,0)}}.chat-toggle{-webkit-backdrop-filter:blur(12px);color:var(--apple-text-secondary);cursor:pointer;white-space:nowrap;border-radius:var(--radius-xl);height:32px;transition:background var(--ease-out), border-color var(--ease-out), box-shadow var(--ease-out);background:linear-gradient(135deg,#fff9,#f5f3ff8c);border:1px solid #4f46e51f;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex;box-shadow:inset 0 1px #ffffffb3}.chat-toggle:hover{color:var(--apple-text);background:linear-gradient(135deg,#fffc,#f0eeffb3);border-color:#4f46e533;box-shadow:inset 0 1px #ffffffe6,0 1px 4px #4f46e514}.chat-toggle:active{transform:scale(.96)}.chat-panel{background:var(--apple-panel);transform-origin:100% 0;border-radius:var(--radius-lg);flex-direction:column;width:440px;min-height:500px;max-height:620px;animation:.2s cubic-bezier(.16,1,.3,1) chat-panel-enter;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 0 0 1px #0000000f,0 4px 24px #0000001a,0 1px 4px #0000000f}@keyframes chat-panel-enter{0%{opacity:0;transform:scale(.96)translateY(-6px)}to{opacity:1;transform:scale(1)translateY(0)}}.chat-header{border-bottom:1px solid var(--apple-border-light);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.chat-header-left{color:var(--apple-text);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.chat-header-left svg{color:var(--apple-blue);flex-shrink:0}.chat-mode-picker{position:relative}.chat-mode-button{color:inherit;cursor:pointer;border-radius:var(--radius-sm);font:inherit;background:0 0;border:0;align-items:center;gap:5px;margin:-5px;padding:5px;display:inline-flex}.chat-mode-button:hover{color:var(--apple-blue);background:var(--apple-blue-soft)}.chat-mode-button svg:last-child{color:var(--apple-text-tertiary)}.chat-mode-menu{background:var(--apple-panel);border:1px solid var(--apple-border-light);border-radius:var(--radius-md);z-index:4;min-width:84px;padding:4px;position:absolute;top:calc(100% + 8px);left:-5px;box-shadow:0 10px 24px #0f172a24}.chat-mode-menu button{width:100%;color:var(--apple-text);cursor:pointer;text-align:left;border-radius:var(--radius-sm);font:inherit;background:0 0;border:0;padding:7px 9px;font-size:13px}.chat-mode-menu button:hover{color:var(--apple-blue);background:var(--apple-blue-soft)}.chat-model{color:var(--apple-text-tertiary);background:var(--apple-blue-soft);border-radius:var(--radius-xs);padding:1px 6px;font-size:11px;font-weight:400}.chat-close{width:28px;height:28px;color:var(--apple-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-normal);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-header-actions{align-items:center;gap:2px;display:flex}.chat-clear{width:28px;height:28px;color:var(--apple-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;justify-content:center;align-items:center;display:flex}.chat-close:hover{background:var(--apple-blue-soft);color:var(--apple-blue)}.chat-messages{flex-direction:column;flex:1;gap:8px;min-height:370px;padding:12px 16px;display:flex;overflow-y:auto}.chat-empty{text-align:center;padding:24px 12px}.chat-empty p{color:var(--apple-text-secondary);margin-bottom:12px;font-size:13px}.chat-support-status{border:1px solid var(--apple-border);border-radius:var(--radius-md);background:var(--apple-blue-soft);max-width:92%;color:var(--apple-text-secondary);text-align:center;align-self:center;margin:2px 0 6px;padding:7px 10px;font-size:12px;line-height:1.45}.chat-support-status-active{border-color:color-mix(in srgb, var(--apple-green) 40%, var(--apple-border));background:color-mix(in srgb, var(--apple-green) 10%, var(--apple-bg));color:var(--apple-green)}.chat-suggestions{flex-direction:column;gap:6px;display:flex}.chat-suggestions button{border:1px solid var(--apple-border);background:var(--apple-bg);width:100%;color:var(--apple-text-secondary);text-align:left;cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-normal);padding:8px 12px;font-size:12px;display:block}.chat-suggestions button:hover{border-color:var(--apple-blue);color:var(--apple-blue);background:var(--apple-blue-soft)}.chat-msg{max-width:85%}.chat-msg.user{align-self:flex-end}.chat-msg.assistant{align-self:flex-start}.chat-msg-content{word-break:break-word;border-radius:var(--radius-lg);padding:8px 14px;font-size:13px;line-height:1.55}.chat-msg.user .chat-msg-content{background:var(--apple-blue);color:#fff;border-bottom-right-radius:4px}.chat-msg.assistant .chat-msg-content{background:var(--apple-bg);color:var(--apple-text);border:1px solid var(--apple-border-light);border-bottom-left-radius:4px}.chat-typing-dots{align-items:center;gap:3px;padding:2px 0;display:inline-flex}.chat-typing-dots span{background:var(--apple-text-tertiary);border-radius:var(--radius-pill);width:5px;height:5px;animation:1.2s ease-in-out infinite chat-dot-bounce}.chat-typing-dots span:nth-child(2){animation-delay:.2s}.chat-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes chat-dot-bounce{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chat-input-row{border-top:1px solid var(--apple-border-light);flex-shrink:0;align-items:center;gap:8px;padding:10px 16px;display:flex}.chat-input-row input{border:1px solid var(--apple-border);background:var(--apple-bg);height:36px;color:var(--apple-text);border-radius:var(--radius-xl);transition:border-color var(--transition-normal),box-shadow .15s;outline:none;flex:1;padding:0 14px;font-size:13px}.chat-input-row input::placeholder{color:var(--apple-text-tertiary)}.chat-send{background:var(--apple-blue);color:#fff;cursor:pointer;border-radius:var(--radius-pill);width:36px;height:36px;transition:background var(--transition-normal),transform .15s;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-send:hover:not(:disabled){background:var(--apple-blue-hover);transform:scale(1.06)}.chat-send:active:not(:disabled){transform:scale(.95)}.chat-send:disabled{opacity:.35;cursor:not-allowed;background:var(--apple-text-tertiary)}@media (width<=600px){.chat-panel{transform-origin:bottom;border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-height:60vh;animation:.25s cubic-bezier(.16,1,.3,1) chat-panel-enter-mobile;position:fixed;inset:auto 0 0}@keyframes chat-panel-enter-mobile{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}.trend-legend-block{vertical-align:middle;border-radius:var(--radius-xs);width:10px;height:10px;margin-right:4px;display:inline-block}.data-table tbody tr{content-visibility:auto;contain-intrinsic-size:auto var(--table-row)}.table-wrap{max-height:calc(100dvh - 260px);overflow-y:auto}.ref-price-edit{grid-column:1/-1}.ref-price-inline{grid-column:span 2}.ref-price-status-chip{font-size:var(--font-xs);background:var(--apple-gray-soft);color:var(--apple-text-secondary);border-radius:var(--radius-xs);vertical-align:middle;padding:1px 6px;font-weight:600}.ref-price-clickable{cursor:pointer;border-bottom:1px dashed var(--apple-text-tertiary);transition:color var(--transition-normal),border-color .15s;color:inherit;font:inherit;background:0 0;padding:0}.chat-evidence{color:var(--apple-text-secondary);margin-top:7px;font-size:11px}.chat-msg-time{color:var(--apple-text-tertiary);margin-top:4px;padding:0 3px;font-size:10px;line-height:1;display:block}.chat-msg.user .chat-msg-time{text-align:right}.chat-evidence summary{cursor:pointer;color:var(--apple-blue)}.chat-evidence-item{background:var(--apple-panel-muted);border-radius:6px;margin-top:5px;padding:6px 7px}.chat-evidence-item strong{font-size:10px;display:block}.chat-evidence-item span{overflow-wrap:anywhere;margin-top:2px;display:block}.ref-price-clickable:hover{color:var(--apple-blue);border-bottom-color:var(--apple-blue)}.ref-price-input-row{gap:var(--space-sm);margin-top:4px;display:flex}.ref-price-input-row input{height:32px;padding:0 var(--space-sm);border:1px solid var(--apple-border);font-size:var(--font-sm);background:var(--apple-panel);color:var(--apple-text);border-radius:var(--radius-sm);flex:1;max-width:160px}.ref-price-input-row input:focus{border-color:var(--apple-blue);outline:none}.note-edit-row td{padding:0 var(--space-md) var(--space-sm);background:#f8f7ff}.ref-price-edit-inline{gap:var(--space-xs);box-sizing:border-box;vertical-align:middle;align-items:center;min-height:36px;display:inline-flex}.ref-price-panel{margin:var(--space-md) 0 var(--space-lg);border-radius:var(--radius-lg);background:linear-gradient(#f8f9fff0,#fffffffa);border:1px solid #4f46e529;overflow:hidden}.ref-price-panel-head{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);border-bottom:1px solid #4f46e51a;padding:18px 20px 16px;display:flex}.ref-price-panel-kicker{color:var(--apple-blue);font-size:var(--font-xs);margin-bottom:4px;font-weight:700}.ref-price-panel-head h3{color:var(--apple-text);margin:0;font-size:17px;line-height:1.4}.ref-price-panel-head p{color:var(--apple-text-secondary);font-size:var(--font-sm);margin:5px 0 0;line-height:1.55}.ref-price-panel-close,.ref-price-edit-trigger{border-radius:var(--radius-sm);background:var(--apple-panel);color:var(--apple-blue);font:inherit;font-size:var(--font-xs);cursor:pointer;transition:background var(--ease-out), border-color var(--ease-out), transform .15s ease;border:1px solid #4f46e533;justify-content:center;align-items:center;gap:4px;font-weight:600;display:inline-flex}.ref-price-panel-close{flex:none;min-height:30px;padding:0 10px}.ref-price-edit-trigger{min-height:30px;padding:0 9px}.ref-price-panel-close:hover,.ref-price-edit-trigger:hover{border-color:var(--apple-blue);background:#eef0ff}.ref-price-panel-close:active,.ref-price-edit-trigger:active{transform:translateY(1px)}.ref-price-overview{border-radius:var(--radius-md);background:#ffffffbd;border:1px solid #4f46e51a;grid-template-columns:minmax(0,.85fr) minmax(0,.9fr) minmax(0,1.25fr);margin:14px 20px 0;display:grid}.ref-price-overview>div{min-width:0;padding:11px 14px}.ref-price-overview>div+div{border-left:1px solid #4f46e51a}.ref-price-overview span,.ref-price-current span,.ref-price-market span,.ref-price-editor label{color:var(--apple-text-tertiary);font-size:var(--font-xs);display:block}.ref-price-overview strong{color:var(--apple-text);font-size:var(--font-sm);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;display:block;overflow:hidden}.ref-price-grid{grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:10px;padding:14px 20px 20px;display:grid}.ref-price-card{border:1px solid var(--apple-border-light);border-radius:var(--radius-md);background:var(--apple-panel);min-width:0;padding:14px;box-shadow:inset 0 1px #ffffffb8}.ref-price-card-head,.ref-price-current{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);display:flex}.ref-price-card-head>strong{min-width:0;color:var(--apple-text);font-size:var(--font-sm);text-overflow:ellipsis;white-space:nowrap;line-height:1.35;overflow:hidden}.ref-price-card-head>span{color:var(--apple-text-tertiary);font-size:var(--font-xs);flex:none}.ref-price-market{border-top:1px solid var(--apple-border-light);border-bottom:1px solid var(--apple-border-light);margin-top:14px;padding:10px 0}.ref-price-market strong{color:var(--apple-text-secondary);font-size:var(--font-sm);font-variant-numeric:tabular-nums;margin-top:3px;display:block}.ref-price-market small{color:var(--apple-text-tertiary);font-size:var(--font-xs);margin-top:3px;display:block}.ref-price-current{align-items:center;margin-top:12px}.ref-price-current strong{color:var(--apple-blue);font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:2px;font-size:18px;display:block}.ref-price-editor{margin-top:12px}.ref-price-editor-controls{align-items:center;gap:6px;margin-top:5px;display:flex}.ref-price-editor-controls>span{color:var(--apple-text-secondary);font-weight:600}.ref-price-input{border:1px solid var(--apple-border);border-radius:var(--radius-sm);width:74px;min-width:0;height:30px;color:var(--apple-text);font:inherit;font-size:var(--font-sm);font-variant-numeric:tabular-nums;outline:none;padding:0 7px}.ref-price-input:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px #4f46e51a}.ref-price-loading{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 20px 20px;display:grid}.ref-price-skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,#f3f4f8 25%,#fafafd 42%,#f3f4f8 60%) 0 0/200% 100%;height:156px;animation:1.25s ease-in-out infinite ref-price-shimmer;display:block}.ref-price-empty{color:var(--apple-text-secondary);font-size:var(--font-sm);flex-direction:column;align-items:flex-start;gap:7px;padding:22px 20px;display:flex}.ref-price-empty strong{color:var(--apple-text)}.ref-price-more{color:var(--apple-text-tertiary);font-size:var(--font-xs);text-align:center;margin:-6px 20px 18px}@keyframes ref-price-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.ref-price-skeleton{animation:none}.ref-price-panel-close,.ref-price-edit-trigger{transition:none}}@media (width<=640px){.ref-price-panel-head{gap:var(--space-sm);padding:16px}.ref-price-panel-head p{max-width:30ch}.ref-price-overview{grid-template-columns:1fr;margin:12px 16px 0}.ref-price-overview>div+div{border-top:1px solid #4f46e51a;border-left:0}.ref-price-grid,.ref-price-loading{grid-template-columns:1fr;padding:12px 16px 16px}.ref-price-more{margin:-4px 16px 15px}}.price-stack{box-sizing:border-box;vertical-align:middle;justify-content:center;min-height:36px}.ref-price-input-sm{border:1px solid var(--apple-border);height:26px;font-size:var(--font-xs);background:var(--apple-panel);color:var(--apple-text);border-radius:var(--radius-xs);width:72px;padding:0 6px}.ref-price-input-sm:focus{border-color:var(--apple-blue);outline:none}.thresholds-grid{gap:var(--space-xl);grid-template-columns:1fr 1fr;display:grid}.threshold-head{justify-content:space-between;align-items:baseline;margin-bottom:2px;display:flex}.threshold-head label{color:var(--apple-text);font-size:14px;font-weight:600}.threshold-head code{color:var(--apple-blue);background:var(--apple-blue-soft);white-space:nowrap;border-radius:var(--radius-sm);padding:2px 10px;font-size:16px;font-weight:700}.threshold-hint{color:var(--apple-text-tertiary);margin-bottom:10px;font-size:12px;font-weight:400;display:block}.threshold-item input[type=range]{appearance:none;background:var(--apple-border);border-radius:var(--radius-xs);outline:none;width:100%;height:6px}.threshold-item input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--apple-blue);cursor:pointer;border-radius:var(--radius-pill);border:2px solid #fff;width:18px;height:18px;box-shadow:0 1px 3px #00000026}.threshold-item input[type=range]::-moz-range-thumb{background:var(--apple-blue);cursor:pointer;border-radius:var(--radius-pill);border:2px solid #fff;width:18px;height:18px;box-shadow:0 1px 3px #00000026}.threshold-range-labels{font-size:var(--font-xs);color:var(--apple-text-tertiary);justify-content:space-between;margin-top:2px;display:flex}@media (width<=600px){.thresholds-grid{grid-template-columns:1fr}}.sync-timeline{padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-md)}.sync-timeline-item{gap:var(--space-md);padding-bottom:var(--space-md);display:flex;position:relative}.sync-timeline-item:last-child{padding-bottom:0}.sync-timeline-dot{flex-direction:column;align-items:center;min-width:12px;padding-top:4px;display:flex}.sync-dot-ok,.sync-dot-partial,.sync-dot-fail{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:block}.sync-dot-ok{background:var(--apple-green)}.sync-dot-partial{background:var(--apple-yellow)}.sync-dot-fail{background:var(--apple-red)}.sync-timeline-line{background:var(--apple-border);flex:1;width:1.5px;min-height:28px;margin-top:6px;display:block}.sync-timeline-body{flex:1;min-width:0}.sync-timeline-head{align-items:center;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:10px;display:flex}.sync-timeline-head strong{font-size:var(--font-sm);color:var(--apple-text);font-weight:600}.sync-timeline-platform{font-size:var(--font-xs);color:var(--apple-text-tertiary);background:var(--apple-fill-tertiary);border-radius:var(--radius-xs);padding:1px 6px}.sync-timeline-status{font-size:var(--font-xs);font-weight:500}.sync-timeline-status.sync-dot-ok{color:var(--apple-green-text)}.sync-timeline-status.sync-dot-partial{color:var(--apple-orange-text)}.sync-timeline-status.sync-dot-fail{color:var(--apple-red-text)}.sync-timeline-meta{gap:var(--space-sm);font-size:var(--font-xs);color:var(--apple-text-tertiary);flex-wrap:wrap;display:flex}.sync-timeline-time{color:var(--apple-text-tertiary);margin-left:auto}.sync-timeline-item.latest .sync-timeline-dot .sync-dot-ok,.sync-timeline-item.latest .sync-timeline-dot .sync-dot-partial,.sync-timeline-item.latest .sync-timeline-dot .sync-dot-fail{box-shadow:0 0 0 3px var(--apple-blue-soft)}.error-boundary{min-height:60dvh;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.error-boundary-card{text-align:center;max-width:360px}.error-boundary-card h2{font-size:var(--font-title-l);margin-bottom:var(--space-xs);font-weight:580}.error-boundary-card p{color:var(--apple-text-secondary);margin-bottom:var(--space-md);font-size:var(--font-body)}.skeleton-text{gap:var(--space-xs);flex-direction:column;display:flex}.skeleton-line{background:var(--apple-fill-tertiary);border-radius:var(--radius-sm);height:14px;animation:1.5s ease-in-out infinite skeleton-pulse}.skeleton-table{flex-direction:column;display:flex}.skeleton-row{gap:var(--space-sm);padding:var(--space-sm) 0;border-bottom:1px solid var(--apple-border);grid-template-columns:repeat(4,1fr);display:grid}.skeleton-cell{background:var(--apple-fill-tertiary);border-radius:var(--radius-sm);height:16px;animation:1.5s ease-in-out infinite skeleton-pulse}.skeleton-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.skeleton-card{padding:var(--space-md);border-radius:var(--radius-lg);background:var(--apple-bg-elevated);border:1px solid var(--apple-border);gap:var(--space-xs);flex-direction:column;display:flex}.skeleton-card-line{background:var(--apple-fill-tertiary);border-radius:var(--radius-sm);height:14px;animation:1.5s ease-in-out infinite skeleton-pulse}.w-60{width:60%}.w-80{width:80%}.w-40{width:40%}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.command-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;justify-content:center;align-items:flex-start;padding-top:15vh;display:flex;position:fixed;inset:0}.command-palette{background:var(--apple-bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--apple-border);width:100%;max-width:520px;box-shadow:var(--shadow-lg);overflow:hidden}.command-input-wrap{align-items:center;gap:var(--space-sm);padding:var(--space-md);border-bottom:1px solid var(--apple-border);display:flex}.command-input-wrap input,.command-input{font-size:var(--font-body);color:var(--apple-text-primary);background:0 0;border:none;outline:none;flex:1}.command-input-wrap input::placeholder,.command-input::placeholder{color:var(--apple-text-tertiary)}.command-input-wrap kbd,.command-item-right kbd,.command-kbd{font-family:var(--font-mono);background:var(--apple-fill-secondary);color:var(--apple-text-tertiary);border-radius:var(--radius-xs);padding:2px 6px;font-size:11px}.command-list{max-height:320px;padding:var(--space-xs);overflow-y:auto}.command-empty{padding:var(--space-md);text-align:center;color:var(--apple-text-tertiary)}.command-item{width:100%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--apple-text-primary);font-size:var(--font-body);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;display:flex}.command-item:hover,.command-item.selected{background:var(--apple-blue-soft);color:var(--apple-blue)}.command-item-left{align-items:center;gap:var(--space-sm);flex:1;min-width:0;display:flex}.command-item-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.nav-icon{background:var(--apple-fill-tertiary);color:var(--apple-text-secondary)}.product-icon{background:var(--apple-blue-soft);color:var(--apple-blue)}.command-product-name{white-space:nowrap;text-overflow:ellipsis;max-width:260px;overflow:hidden}.command-product-price{font-size:var(--font-xs);color:var(--apple-green-text);white-space:nowrap;font-weight:600}.command-product-platform{font-size:var(--font-xs);color:var(--apple-text-tertiary);background:var(--apple-fill-tertiary);border-radius:var(--radius-xs);white-space:nowrap;padding:1px 6px}.command-section-label{padding:var(--space-sm) var(--space-md) var(--space-xs);font-size:var(--font-xs);color:var(--apple-text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.command-searching{margin-left:var(--space-sm);text-transform:none;letter-spacing:0;color:var(--apple-text-tertiary);font-weight:400}.command-footer{gap:var(--space-lg);padding:var(--space-sm) var(--space-md);border-top:1px solid var(--apple-border);font-size:var(--font-xs);color:var(--apple-text-tertiary);display:flex}.command-footer kbd{font-family:var(--font-mono);background:var(--apple-fill-secondary);border-radius:var(--radius-xs);padding:1px 5px;font-size:10px}.command-search-icon{color:var(--apple-text-tertiary);flex-shrink:0}.command-input{font-size:var(--font-body);color:var(--apple-text-primary);background:0 0;border:none;outline:none;flex:1}.command-input::placeholder{color:var(--apple-text-tertiary)}.command-kbd{font-family:var(--font-mono);background:var(--apple-fill-secondary);color:var(--apple-text-tertiary);border-radius:var(--radius-xs);padding:2px 6px;font-size:11px}.command-item-right{align-items:center;gap:var(--space-sm);color:var(--apple-text-tertiary);display:flex}.bulk-bar{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--accent-color);color:#fff;border-radius:var(--radius-md);margin-bottom:var(--space-md);font-size:13px;display:flex}.bulk-bar button{border-radius:var(--radius-sm);color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #ffffff4d;padding:4px 12px;font-size:12px}.bulk-bar button:hover{background:#ffffff40}.settings-form-group{margin-bottom:var(--space-md)}.settings-form-group label{color:var(--apple-text);margin-bottom:2px;font-size:13px;font-weight:500;display:block}.form-field-hint{color:var(--apple-text-tertiary);margin-bottom:6px;font-size:12px;display:block}.settings-form-group input,.settings-form-group select{border:1px solid var(--apple-border);background:var(--apple-bg);width:100%;max-width:320px;color:var(--apple-text);appearance:none;border-radius:var(--radius-md);transition:border-color var(--transition-normal),box-shadow .15s;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;outline:none;padding:8px 36px 8px 12px;font-size:14px}.settings-form-group input:focus,.settings-form-group select:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px var(--apple-blue-soft)}.settings-toggle{padding:var(--space-sm) 0;justify-content:space-between;align-items:center;max-width:320px;display:flex}.settings-toggle span{font-size:var(--font-body)}.settings-toggle button{border:1px solid var(--apple-border);border-radius:var(--radius-pill);background:var(--apple-fill-secondary);color:var(--apple-text-secondary);cursor:pointer;transition:all var(--transition-normal);padding:4px 14px;font-size:12px}.settings-toggle button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.retry-overlay{background:var(--apple-fill-secondary);border:.5px solid var(--apple-border);border-radius:var(--radius-md);font-size:var(--font-sm);color:var(--apple-text-secondary);z-index:1000;box-shadow:var(--shadow-sm);align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)}.retry-overlay:before{content:"";border:2px solid var(--apple-text-tertiary);border-top-color:var(--accent);border-radius:var(--radius-pill);width:12px;height:12px;animation:.8s linear infinite spin}.retry-banner{z-index:9999;background:var(--apple-yellow);color:#000;text-align:center;font-size:var(--font-sm);justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-weight:500;animation:.25s slideDown;display:flex;position:fixed;top:0;left:0;right:0}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.error-panel-countdown{margin-top:var(--space-md);font-size:var(--font-sm);color:var(--apple-text-tertiary)}.error-panel-countdown strong{color:var(--apple-blue);font-weight:600}.error-panel-auto-report{margin-top:var(--space-sm);color:var(--apple-blue);font-size:var(--font-xs);background:var(--apple-blue-soft);border-radius:var(--radius-sm);align-items:center;gap:4px;padding:4px 10px;font-weight:500;display:inline-flex}.context-menu{z-index:200;background:var(--apple-panel);border:1px solid var(--apple-border);border-radius:var(--radius-md);box-shadow:0 0 0 1px var(--apple-border-light), 0 8px 32px #00000014;padding:var(--space-xs);flex-direction:column;gap:1px;min-width:180px;animation:.12s ease-out context-in;display:flex;position:fixed}@keyframes context-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item{align-items:center;gap:var(--space-sm);padding:7px var(--space-md);font-size:var(--font-sm);color:var(--apple-text-secondary);border-radius:var(--radius-sm);transition:background var(--transition-fast), color var(--transition-fast);white-space:nowrap;display:flex}.context-menu-item:hover{background:var(--apple-sidebar-hover);color:var(--apple-text)}.context-menu-item.danger{color:var(--apple-red-text)}.context-menu-item.danger:hover{background:var(--apple-red-soft)}.context-menu-kbd{color:var(--apple-text-tertiary);background:var(--apple-fill-tertiary);border-radius:var(--radius-xs);font-size:11px;font-family:var(--font-mono);margin-left:auto;padding:1px 5px}.anomaly-chip-bar{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.anomaly-filter-chip{border-radius:var(--radius-pill);height:26px;font-size:var(--font-xs);transition:all var(--ease-out);cursor:pointer;border:1px solid #0000;align-items:center;gap:4px;padding:0 10px;font-weight:500;display:inline-flex}.anomaly-filter-chip strong{margin-left:1px;font-weight:700}.anomaly-filter-chip.critical{background:var(--apple-red-soft);color:var(--apple-red-text);border-color:var(--apple-red-text)}.anomaly-filter-chip.critical:hover{filter:brightness(.92)}.anomaly-filter-chip.warning{background:var(--apple-orange-soft);color:var(--apple-orange-text);border-color:var(--apple-orange-text)}.anomaly-filter-chip.warning:hover{filter:brightness(.92)}.anomaly-filter-chip.data-gap{background:var(--apple-gray-soft);color:var(--apple-gray-text);border-color:var(--apple-gray)}.anomaly-filter-chip.data-gap:hover{filter:brightness(.92)}.anomaly-chip-hint{color:var(--apple-text-tertiary);margin-left:var(--space-sm);font-size:11px}.dark .context-menu{border-color:var(--apple-border);background:#1e2028;box-shadow:0 0 0 1px #ffffff0a,0 8px 32px #000a}.dark .context-menu-item:hover{background:#ffffff0a}@media (width<=480px){.main-shell{padding:var(--space-sm) var(--space-sm) 80px}.topbar{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.topbar h1{font-size:17px}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;width:100%}.topbar-actions .button{height:34px;padding:0 10px;font-size:12px}.topbar-actions .icon-button{width:34px;height:34px}.page-intro h2{font-size:18px}.page-intro p{font-size:var(--font-sm)}.page-intro-sync{font-size:11px}.panel{padding:var(--space-md);border-radius:var(--radius-md)}.panel-head{gap:var(--space-sm);flex-direction:column}.panel-head h2{font-size:16px}.panel-head-actions{justify-content:flex-start;width:100%}.kpi-grid-four{gap:var(--space-sm);grid-template-columns:1fr 1fr}.kpi-card{padding:var(--space-md);min-height:72px}.kpi-card strong{font-size:22px}.kpi-card span{font-size:11px}.kpi-inline-chips{gap:var(--space-md);flex-wrap:wrap;font-size:12px}.workspace-grid{gap:var(--space-md);grid-template-columns:1fr}.side-stack{gap:var(--space-sm)}.filter-bar{gap:var(--space-sm);flex-direction:column}.filter-bar .global-search{width:100%!important}.filter-bar select{width:100%;height:34px}.ai-search-row{flex-direction:column}.table-wrap{-webkit-overflow-scrolling:touch;max-height:none;overflow-x:auto}.data-table{min-width:680px;font-size:var(--font-xs)}.data-table th,.data-table td{padding:6px 8px}.table-button{gap:3px;height:30px;padding:0 8px;font-size:11px}.table-actions{gap:4px}.products-controls{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.controls-left{flex-wrap:wrap}.controls-right{justify-content:space-between;width:100%}.page-size-btn{min-width:30px;height:26px;padding:0 7px;font-size:11px}.batch-bar{gap:var(--space-sm);flex-direction:column;align-items:flex-start}.batch-actions{flex-wrap:wrap}.sync-activity-row{grid-template-columns:70px 1fr 40px 50px}.sync-activity-status{display:none}.sync-activity-time{font-size:10px}.sync-activity-keyword,.sync-activity-count,.anomaly-chip-name,.anomaly-chip-price{font-size:11px}.anomaly-chip-dev{padding:1px 4px;font-size:10px}.drawer{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100vw;max-width:100vw}.drawer-body{padding:var(--space-md)}.drawer-meta{grid-template-columns:1fr}.login-page{padding:var(--space-md)}.login-panel{border-radius:var(--radius-lg);padding:24px 20px}.login-brand h1{font-size:20px}.login-logo{width:48px;height:48px;font-size:18px;box-shadow:0 0 0 6px #6366f11f}.command-overlay{padding-top:8vh}.command-palette{max-width:calc(100vw - 32px);margin:0 var(--space-md)}.review-card{grid-template-columns:1fr}.review-actions{width:100%}.settings-form-group input,.settings-form-group select{max-width:100%}.mobile-nav-toggle{width:42px;height:42px;top:10px;right:10px}.dealer-table{min-width:700px}.help-list{padding:var(--space-sm) var(--space-sm) var(--space-sm) 20px;font-size:var(--font-xs);line-height:1.7}.settings-section .data-table{min-width:420px}.export-column-grid{grid-template-columns:1fr}.dark .ai-briefing{background:linear-gradient(135deg,#4f46e514,#4f46e50a)}}@media (width>=481px) and (width<=768px){.main-shell{padding:var(--space-md)}.filter-bar .global-search{width:100%!important}.table-wrap{overflow-x:auto}.data-table{min-width:640px}.batch-bar{flex-wrap:wrap}}.ai-patterns-result{flex-direction:column;gap:6px;display:flex}.ai-patterns-summary{font-size:var(--font-xs);color:var(--apple-text-secondary);margin:0;padding:4px 0;line-height:1.5}.ai-pattern-chip{border-radius:var(--radius-sm);border:1px solid var(--apple-border);font-size:var(--font-xs);flex-direction:column;gap:3px;padding:8px 10px;display:flex}.ai-pattern-chip.severity-高{background:#fef2f2;border-color:#fca5a5}.ai-pattern-chip.severity-中{background:#fffbeb;border-color:#fcd34d}.ai-pattern-chip.severity-低{background:var(--apple-gray-soft)}.ai-pattern-type{color:var(--apple-text);font-weight:600}.ai-pattern-detail{color:var(--apple-text-secondary);line-height:1.4}.ai-pattern-suggestion{color:var(--apple-blue);font-size:var(--font-xs)}.ai-sync-result{padding:var(--space-md);background:var(--apple-blue-soft);border-radius:var(--radius-md);margin-bottom:var(--space-md)}.ai-sync-analysis{font-size:var(--font-sm);color:var(--apple-text);margin:0 0 var(--space-sm);line-height:1.6}.ai-sync-tags{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;display:flex}.ai-sync-label{font-size:var(--font-xs);color:var(--apple-text-tertiary);min-width:42px}.ai-sync-tag{font-size:var(--font-xs);border-radius:var(--radius-pill);padding:2px 8px}.ai-sync-tag.good{background:var(--apple-green-soft);color:var(--apple-green-text)}.ai-sync-tag.bad{background:var(--apple-red-soft);color:var(--apple-red-text)}.ai-sync-suggestions{font-size:var(--font-sm);color:var(--apple-text-secondary);margin:6px 0 0;padding-left:18px;line-height:1.6}.ai-categorize-result{padding:var(--space-md);margin-bottom:var(--space-sm);border:1px solid var(--apple-border);border-radius:var(--radius-md);background:var(--apple-panel-muted)}.ai-categorize-head{margin-bottom:var(--space-sm);color:var(--apple-text);font-size:var(--font-sm);align-items:center;gap:6px;display:flex}.ai-categorize-count{color:var(--apple-text-tertiary);font-size:var(--font-xs);margin-left:auto}.ai-categorize-close{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--apple-text-tertiary);cursor:pointer;transition:background var(--transition-normal),color .15s;background:0 0;border:none;justify-content:center;align-items:center;margin-left:4px;display:inline-flex}.ai-categorize-close:hover{background:var(--apple-panel);color:var(--apple-text)}.ai-categorize-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;display:grid}.ai-categorize-card{background:var(--apple-panel);border-radius:var(--radius-sm);border:1px solid var(--apple-border-light);flex-direction:column;gap:2px;padding:8px 10px;display:flex}.ai-categorize-name{font-weight:600;font-size:var(--font-sm);color:var(--apple-text)}.ai-categorize-rule{font-size:var(--font-xs);color:var(--apple-text-tertiary)}.ai-categorize-meta{font-size:var(--font-xs);color:var(--apple-text-secondary)}.ai-categorize-hint{font-size:var(--font-xs);color:var(--apple-text-tertiary);margin:var(--space-sm) 0 0}.announcement-banner{align-items:center;gap:var(--space-sm);margin:0 var(--space-md) var(--space-sm);background:var(--apple-blue-soft);border-radius:var(--radius-xl);font-size:var(--font-sm);color:var(--apple-text);border:1px solid #6366f133;padding:8px 14px;line-height:1.5;display:flex;overflow:hidden}.announcement-text{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.announcement-text.marquee{padding-right:60px;animation:12s linear infinite marquee-scroll;display:inline-block}@keyframes marquee-scroll{0%{transform:translate(0)}80%{transform:translateX(calc(-100% + var(--marquee-width,300px)))}90%{transform:translateX(calc(-100% + var(--marquee-width,300px)))}to{transform:translate(0)}}.announcement-close{border-radius:var(--radius-pill);width:22px;height:22px;color:var(--apple-text-tertiary);cursor:pointer;transition:background var(--transition-normal),color .15s;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.announcement-close:hover{background:var(--apple-panel);color:var(--apple-text)}.announce-editor{gap:var(--space-sm);flex-direction:column;display:flex}.form-textarea,.announce-textarea{resize:vertical;width:100%;min-height:60px;font-size:var(--font-sm);color:var(--apple-text);background:var(--apple-panel);border:1px solid var(--apple-border);border-radius:var(--radius-lg);transition:border-color var(--transition-normal),box-shadow .15s,background .15s;outline:none;padding:12px 14px;line-height:1.5}.form-textarea::placeholder,.announce-textarea::placeholder{color:var(--apple-text-tertiary);font-size:var(--font-sm)}.form-textarea:focus,.announce-textarea:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px var(--apple-blue-soft);background:var(--apple-panel)}.announce-editor-foot{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.announce-hint{font-size:var(--font-xs);color:var(--apple-text-tertiary)}.announce-preview{padding-top:var(--space-sm);border-top:1px solid var(--apple-border-light);flex-direction:column;gap:6px;display:flex}.announce-preview-label{font-size:var(--font-xs);color:var(--apple-text-tertiary)}.help-list{padding:var(--space-md) var(--space-md) var(--space-md) 28px;font-size:var(--font-sm);color:var(--apple-text-secondary);flex-direction:column;gap:6px;margin:0;line-height:1.8;display:flex}.help-list li{padding-left:2px}.help-list strong{color:var(--apple-text)}.help-list code{font-family:var(--font-mono);font-size:var(--font-xs);background:var(--apple-fill-tertiary);border-radius:var(--radius-xs);color:var(--apple-text-secondary);padding:1px 5px}.help-list kbd{font-family:var(--font-mono);font-size:var(--font-xs);background:var(--apple-panel);border:1px solid var(--apple-border);border-radius:var(--radius-xs);color:var(--apple-text);padding:1px 5px}@media (width>=769px) and (width<=1100px){.main-shell{padding:var(--space-lg)}.sidebar{width:200px}.data-table{font-size:var(--font-xs)}.data-table th,.data-table td{padding:6px 8px}.kpi-grid-four{gap:var(--space-sm)}.kpi-card{padding:var(--space-md)}.kpi-card strong{font-size:22px}.panel{padding:var(--space-md)}}@media (width>=769px) and (width<=1024px){.table-wrap{overflow-x:auto}.data-table{min-width:600px}.filter-bar{gap:var(--space-sm);flex-wrap:wrap}.filter-bar .global-search{min-width:160px}}.dark .export-btn{color:var(--apple-text)}.dark .export-btn:hover{background:var(--apple-sidebar-hover)}.export-dropdown-wrap{display:inline-flex;position:relative}.export-dropdown{background:var(--apple-panel);border:1px solid var(--apple-border);border-radius:var(--radius-md);box-shadow:var(--apple-shadow-lg);padding:var(--space-xs);z-index:100;flex-direction:column;gap:2px;min-width:180px;margin-top:4px;animation:.12s ease-out context-in;display:flex;position:absolute;top:100%;right:0}.export-dropdown-item{align-items:center;gap:var(--space-sm);padding:7px var(--space-md);font-size:var(--font-sm);color:var(--apple-text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);white-space:nowrap;text-align:left;background:0 0;border:none;width:100%;display:flex}.export-dropdown-item:hover{background:var(--apple-sidebar-hover);color:var(--apple-text)}.api-docs-link{font-size:var(--font-xs);color:var(--apple-text-tertiary);border-radius:var(--radius-pill);transition:color var(--transition-normal), background var(--transition-normal);align-items:center;gap:4px;padding:2px 8px;text-decoration:none;display:inline-flex}.api-docs-link:hover{color:var(--apple-blue);background:var(--apple-blue-soft)}.export-overlay{z-index:300;background:#0000004d;justify-content:center;align-items:center;animation:.15s ease-out export-overlay-in;display:flex;position:fixed;inset:0}@keyframes export-overlay-in{0%{opacity:0}to{opacity:1}}.export-dialog{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);box-shadow:var(--apple-shadow-lg);background:linear-gradient(135deg,#ffffffeb,#faf9ffe0);border:1px solid #4f46e51a;flex-direction:column;width:420px;max-width:calc(100vw - 32px);max-height:80vh;animation:.18s ease-out export-dialog-in;display:flex}@keyframes export-dialog-in{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.export-dialog-head{padding:var(--space-lg) var(--space-lg) var(--space-sm);justify-content:space-between;align-items:center;display:flex}.export-dialog-head h3{font-size:var(--font-md);color:var(--apple-text);margin:0;font-weight:600}.export-dialog-body{padding:0 var(--space-lg);flex:1;overflow-y:auto}.export-loading{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-xl) 0;color:var(--apple-text-tertiary);font-size:var(--font-sm);flex-direction:column;display:flex}.export-dialog-foot{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--apple-border-light);justify-content:space-between;align-items:center;display:flex}.export-toggle-all{align-items:center;gap:var(--space-sm);font-size:var(--font-sm);color:var(--apple-text-secondary);cursor:pointer;padding:var(--space-sm) 0;display:flex}.export-toggle-all input{accent-color:var(--apple-blue)}.export-toggle-hint{font-size:var(--font-xs);color:var(--apple-text-tertiary);margin-left:auto}.export-column-grid{gap:var(--space-xs);padding:var(--space-sm) 0;grid-template-columns:1fr 1fr;display:grid}.export-column-item{align-items:center;gap:var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-sm);color:var(--apple-text-secondary);cursor:pointer;transition:background var(--transition-fast);border:1px solid #0000;padding:7px 10px;display:flex}.export-column-item:hover{background:var(--apple-sidebar-hover)}.export-column-item.checked{background:var(--apple-blue-soft);color:var(--apple-blue);border-color:#4f46e526}.export-column-item.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.export-disabled-hint{color:var(--apple-text-tertiary);margin-left:auto;font-size:11px}.export-col-check{border-radius:var(--radius-xs);border:1.5px solid var(--apple-border);width:18px;height:18px;color:var(--apple-blue);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.export-column-item.checked .export-col-check{background:var(--apple-blue);border-color:var(--apple-blue);color:#fff}.export-count-hint{font-size:var(--font-xs);color:var(--apple-text-tertiary)}.export-format-row{align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;border-bottom:1px solid var(--apple-border-light);margin-bottom:var(--space-sm);display:flex}.export-format-label{font-size:var(--font-sm);color:var(--apple-text-secondary);white-space:nowrap}.export-format-select{font-size:var(--font-sm);color:var(--apple-text);background:var(--apple-panel);border:1px solid var(--apple-border);border-radius:var(--radius-sm);cursor:pointer;outline:none;padding:4px 8px}.export-format-select:focus{border-color:var(--apple-blue);box-shadow:0 0 0 2px var(--apple-blue-soft)}.price-range-inputs{align-items:center;gap:4px;display:flex}.price-range-input{width:80px;height:32px;padding:0 var(--space-sm);font-size:var(--font-sm);color:var(--apple-text);background:var(--apple-panel);border:1px solid var(--apple-border);border-radius:var(--radius-sm);-moz-appearance:textfield;outline:none}.price-range-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.price-range-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.price-range-input:focus{border-color:var(--apple-blue);box-shadow:0 0 0 2px var(--apple-blue-soft)}.price-range-input::placeholder{color:var(--apple-text-tertiary)}.price-range-sep{color:var(--apple-text-tertiary);font-size:var(--font-sm);padding:0 2px}.kpi-row{gap:var(--space-md);margin-bottom:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.kpi-card{background:var(--apple-panel);border-radius:var(--radius-md);padding:var(--space-lg) var(--space-md);transition:border-color var(--ease-out), box-shadow var(--ease-out);cursor:default;border:1px solid #0000000d;flex-direction:column;gap:6px;display:flex}.kpi-card.clickable:hover{border-color:var(--apple-blue);box-shadow:0 0 0 1px var(--apple-blue-soft)}.kpi-label{font-size:var(--font-xs);color:var(--apple-text-tertiary);letter-spacing:.04em;text-transform:uppercase}.kpi-value{font-variant-numeric:tabular-nums;color:var(--apple-text);letter-spacing:-.03em;font-size:28px;font-weight:600;line-height:1.1}.table-card{border-radius:var(--radius-md);margin-bottom:var(--space-md);border:1px solid #0000000d;overflow:hidden}.table-card .data-table{margin-bottom:0}.table-card .data-table thead th{color:var(--apple-text-secondary);background:#f8f9fb;border-bottom:1px solid #00000010;font-weight:500}.table-card .data-table td{border-bottom:1px solid #00000007}.table-card .data-table tbody tr:last-child td{border-bottom:0}.col-panel-wrap{margin-left:auto;position:relative}.col-trigger{border-radius:var(--radius-sm);background:var(--apple-panel);height:34px;color:var(--apple-text-secondary);font-size:var(--font-sm);cursor:pointer;transition:border-color var(--ease-out), box-shadow var(--ease-out);border:1px solid #0000000d;align-items:center;gap:4px;padding:0 12px;display:inline-flex}.col-trigger:hover{border-color:var(--apple-blue);color:var(--apple-blue)}.col-panel{z-index:60;background:var(--apple-panel);border-radius:var(--radius-md);min-width:200px;box-shadow:var(--apple-shadow-lg);border:1px solid #0000000d;margin-top:4px;padding:8px;position:absolute;top:100%;right:0}.col-panel-title{font-size:var(--font-xs);color:var(--apple-text-tertiary);padding:4px 8px 8px}.col-panel-row{border-radius:var(--radius-sm);transition:background var(--ease-out);justify-content:space-between;align-items:center;padding:5px 8px;display:flex}.col-panel-row:hover{background:var(--apple-blue-soft)}.col-panel-name{font-size:var(--font-sm);color:var(--apple-text)}.col-panel-arrows{gap:2px;display:flex}.col-arrow-btn{border-radius:var(--radius-xs);width:22px;height:22px;color:var(--apple-text-tertiary);cursor:pointer;transition:all var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.col-arrow-btn:hover:not(:disabled){background:var(--apple-blue-soft);color:var(--apple-blue)}.col-arrow-btn:disabled{opacity:.25;cursor:default}.dealer-toggle-cell{text-align:center}.dealer-tag{border-radius:var(--radius-sm);background:var(--apple-panel);min-width:36px;height:26px;font-size:var(--font-xs);cursor:pointer;transition:all var(--ease-out);border:1px solid #0000000d;justify-content:center;align-items:center;padding:0 10px;display:inline-flex}.dealer-tag:hover{border-color:var(--apple-blue);color:var(--apple-blue)}.dealer-tag.yes{border-color:var(--apple-green);color:var(--apple-green-text);background:var(--apple-green-soft)}.dealer-tag.yes:hover{border-color:var(--apple-red);color:var(--apple-red-text);background:var(--apple-red-soft)}.col-code{font-family:var(--font-mono);font-size:var(--font-xs);color:var(--apple-text-secondary);white-space:nowrap}.filter-bar-card .filter-group{background:var(--apple-panel);border-radius:var(--radius-sm);transition:border-color var(--ease-out), box-shadow var(--ease-out);border:1px solid #0000000d;padding:0 4px 0 10px}.filter-bar-card .filter-group:focus-within{border-color:var(--apple-blue);box-shadow:0 0 0 3px #4f46e51a}.filter-bar-card .filter-group .filter-input{background:0 0;min-width:220px;box-shadow:none!important;border:none!important}.filter-bar-card .filter-group svg{color:var(--apple-text-tertiary);flex-shrink:0}.filter-bar-card .native-select{border-color:#4f46e51a}.filter-bar-card .native-select:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px #4f46e51a}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.dealer-import-summary,.dealer-workspace-save-state{border-radius:var(--radius-sm);min-height:28px;font-size:var(--font-xs);color:var(--apple-text-secondary);background:var(--apple-fill);align-items:center;padding:0 8px;display:inline-flex}.dealer-workspace-save-state.is-saving{color:var(--apple-blue);background:var(--apple-blue-soft)}.dealer-workspace-save-state.is-saved{color:var(--apple-green-text);background:var(--apple-green-soft)}.dealer-workspace-save-state.is-error{color:var(--apple-red-text);background:var(--apple-red-soft)}.ph-summary{gap:var(--space-md);flex-wrap:wrap;margin-top:6px;display:flex}.ph-stat{flex-direction:column;gap:2px;display:flex}.ph-stat-label{font-size:var(--font-xs);color:var(--apple-text-tertiary)}.ph-stat strong{color:var(--apple-text);font-size:var(--font-md);font-variant-numeric:tabular-nums;font-weight:600}.ph-sparkline{height:56px;margin-top:var(--space-md);align-items:flex-end;gap:2px;padding:0 2px;display:flex}.ph-bar{background:var(--apple-blue-soft);cursor:default;border-radius:2px 2px 0 0;flex:1;min-width:2px;transition:background .1s}.ph-bar:hover,.ph-bar-last{background:var(--apple-blue)}@media (width<=640px){.kpi-row{grid-template-columns:1fr}.filter-bar-card .filter-group{width:100%}}.dealer-summary-val.overridden{color:var(--apple-blue);font-weight:600}.dealer-summary-row{font-size:var(--font-sm);color:var(--apple-text-secondary);flex-wrap:wrap;align-items:center;gap:0;display:flex}.dealer-summary-label{margin-right:var(--space-sm)}.dealer-summary-kpi{align-items:center;gap:2px;display:inline-flex}.dealer-summary-dot{color:var(--apple-text-tertiary);margin:0 3px;font-size:16px;font-weight:700;line-height:1}.dealer-summary-year{color:var(--apple-text-tertiary);margin-right:2px}.dealer-summary-val{cursor:pointer;font-variant-numeric:tabular-nums;border-radius:var(--radius-xs);transition:background var(--ease-out);padding:1px 4px;font-weight:500}.dealer-summary-val:hover{background:var(--apple-blue-soft)}.alert-collapse-btn{height:30px;font-size:var(--font-xs);color:var(--apple-text-secondary);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-lg);cursor:pointer;transition:background var(--ease-out), border-color var(--ease-out), box-shadow var(--ease-out);background:#ffffff8c;border:1px solid #00000014;align-items:center;gap:4px;padding:0 12px;font-weight:500;display:inline-flex;box-shadow:inset 0 1px #fff9}.alert-collapse-btn:hover{color:var(--apple-text);background:#fffc;border-color:#00000014;box-shadow:inset 0 1px #fffc,0 1px 3px #0000000f}.alert-collapse-btn:active{transform:scale(.96)}.alert-product-name{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.alert-price-row{font-size:var(--font-sm);color:var(--apple-text-secondary)}.alert-price-sep{color:var(--apple-text-tertiary)}.alert-reason{font-size:var(--font-xs);color:var(--apple-text-tertiary);margin-top:2px}.product-threshold-section{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--apple-separator)}.product-threshold-section .panel-head{padding-left:0;padding-right:0}@keyframes search-pulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}.search-pulse-dot{background:var(--apple-blue);border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite search-pulse;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.product-threshold-search-dropdown{z-index:20;background:var(--apple-panel);border:1px solid var(--apple-border);border-radius:var(--radius-md);box-shadow:var(--apple-shadow-md);max-height:240px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.product-threshold-search-item{cursor:pointer;font-size:var(--font-sm);transition:background var(--ease-out);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.product-threshold-search-item:not(:last-child){border-bottom:1px solid var(--apple-separator)}.product-threshold-search-item:hover{background:var(--apple-bg-hover)}.product-threshold-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-right:var(--space-sm);flex:1;font-weight:500;overflow:hidden}.product-threshold-price{font-size:var(--font-xs);color:var(--apple-text-tertiary);font-variant-numeric:tabular-nums;flex-shrink:0}.product-threshold-dedup{font-family:var(--font-mono);font-size:var(--font-xs);text-overflow:ellipsis;max-width:200px;overflow:hidden}.product-threshold-time{font-size:var(--font-xs);color:var(--apple-text-tertiary)}.product-threshold-empty{padding:var(--space-sm);color:var(--apple-text-tertiary);font-size:var(--font-sm)}.button-danger-small{height:28px;font-size:var(--font-xs);color:var(--apple-red-text);padding:0 10px}.settings-toggle .ai-toggle-btn{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(8px);color:var(--apple-text);cursor:pointer;transition:background var(--ease-out), border-color var(--ease-out), box-shadow var(--ease-out);background:#ffffff8c;border:1px solid #4f46e540;padding:4px 14px;font-size:12px;font-weight:500;box-shadow:inset 0 1px #fff9}.settings-toggle .ai-toggle-btn:hover{background:#fffc;border-color:#4f46e540}.settings-toggle .ai-toggle-btn:active{transform:scale(.96)}.settings-toggle .ai-toggle-btn.active{color:var(--apple-blue);background:#4f46e51f;border-color:#4f46e533;box-shadow:inset 0 1px #4f46e526}.settings-toggle .ai-toggle-btn.active:hover{background:#4f46e52e}.shop-name-placeholder{color:var(--apple-text-tertiary);-webkit-user-select:none;user-select:none;font-style:italic}.sync-detail-name{font-size:14px;font-weight:600}.sync-detail-card{padding:16px}.sync-alert{margin-top:8px;font-size:12px}.text-green{color:var(--apple-green)}.text-accent{color:var(--accent)}.dealer-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%}.global-search-shop{width:200px}.badge-gap{gap:5px}.stat-icon{color:var(--apple-text-secondary)}.empty-state-shop{min-height:100px;padding:var(--space-xl)}.flex-col{flex-direction:column;display:flex}.flex-col-gap-xs{gap:var(--space-xs);flex-direction:column;display:flex}.flex-col-gap-sm{gap:var(--space-sm);flex-direction:column;display:flex}.flex-col-gap-md{gap:var(--space-md);flex-direction:column;display:flex}.flex-row-gap-xs{align-items:center;gap:var(--space-xs);display:flex}.flex-row-gap-sm{align-items:center;gap:var(--space-sm);display:flex}.icon-inline{vertical-align:-2px;margin-right:4px}.text-hint{font-size:var(--font-sm);color:var(--apple-text-tertiary)}.text-center{text-align:center}.overlay-center{justify-content:center;align-items:center;gap:var(--space-sm);flex-direction:column;display:flex;position:absolute;inset:0}.metric-value{font-size:20px;font-weight:700}.panel-disabled{opacity:.5;pointer-events:none}.sticky-header{z-index:3;position:sticky;top:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--apple-border);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--apple-text-tertiary)}:root.dark ::-webkit-scrollbar-thumb{background:#ffffff14}:root.dark ::-webkit-scrollbar-thumb:hover{background:#fff2}@media (width<=1024px){.sidebar{width:60px}.sidebar .brand-name,.sidebar .brand-subtitle,.sidebar .nav-item span,.sidebar .sidebar-platforms,.sidebar .sidebar-status-row span:not(.system-dot),.sidebar .sidebar-status-meta,.sidebar .api-docs-link,.sidebar .platform-coming-badge{display:none}.sidebar .nav-item{justify-content:center;padding:10px 0}.sidebar.collapsed{width:0;padding:0;overflow:hidden}.main-shell{margin-left:60px}.kpi-grid-four{grid-template-columns:1fr 1fr}}@media (width<=768px){.sidebar{width:0;padding:0;overflow:hidden}.sidebar.open{width:220px;padding:var(--space-sm);z-index:100;height:100vh;position:fixed}.main-shell{margin-left:0}.kpi-grid-four{grid-template-columns:1fr}.topbar{gap:var(--space-sm);flex-wrap:wrap}.topbar h1{font-size:18px}.filter-bar{flex-direction:column}.filter-bar .global-search{width:100%}.panel{padding:var(--space-md)}.panel-head{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.login-panel{width:100%;padding:0 var(--space-md)}.dealer-table,.data-table{display:block;overflow-x:auto}}.image-zoom-overlay{z-index:9999;cursor:zoom-out;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.image-zoom-close{z-index:1;color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex;position:absolute;top:16px;right:16px}.image-zoom-close:hover{background:#fff3}.login-page.login-page.login-page{background:#fff}.login-page.login-page.login-page:before{background:0 0}.image-zoom-img{object-fit:contain;border-radius:8px;max-width:90vw;max-height:90vh;box-shadow:0 8px 40px #00000080}.login-page.login-page{background:#eef2f7}.login-page.login-page:before{background:radial-gradient(circle at 18% 18%,#7ba4d433,#0000 30%),radial-gradient(circle at 82% 78%,#b6c9e340,#0000 32%),linear-gradient(#54729a0b 1px,#0000 1px) 0 0/36px 36px,linear-gradient(90deg,#54729a0b 1px,#0000 1px) 0 0/36px 36px}.login-page .login-terminal{background:#f8fafcf2;border-color:#bdc9d880;box-shadow:0 28px 72px #233c5c24,inset 0 1px #fff}.login-page .login-terminal-context{background:#e8eef6b8;border-right-color:#bdc9d880}.login-page .terminal-brand-mark{color:#1e4778;background:#ffffffa8;border-color:#4f7fb9a6}.login-page .terminal-copy h1{color:#192b43}.login-page .terminal-copy p,.login-page .terminal-status-list{color:#53677f}.login-page .terminal-eyebrow,.login-page .login-eyebrow{color:#356caa}.login-page .login-terminal .login-panel{background:#f9fbfdf5}.login-page .login-terminal .login-logo{color:#356caa;background:#e6f0ff}.login-page .login-terminal .login-brand h2{color:#172a42}.login-page .login-terminal .login-input{color:#172a42;background:#f1f5f9;border-color:#c7d3e0}.login-page .login-terminal .login-btn{background:#356fae;box-shadow:0 8px 18px #356fae2e}.login-page .login-terminal .login-btn:hover{background:#2d639f}.login-page .login-terminal .login-footer{border-top-color:#d7e0ea}.login-page{background:#0c1017;place-items:center;display:grid;overflow:hidden}.login-page:before{opacity:1;background:radial-gradient(circle at 18% 18%,#375d9633,#0000 30%),radial-gradient(circle at 82% 78%,#1f467529,#0000 32%),linear-gradient(#ffffff07 1px,#0000 1px) 0 0/36px 36px,linear-gradient(90deg,#ffffff07 1px,#0000 1px) 0 0/36px 36px}.login-terminal{z-index:1;background:#0e131cdb;border:1px solid #ffffff1a;border-radius:20px;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);width:min(1040px,100%);min-height:580px;display:grid;position:relative;overflow:hidden;box-shadow:0 28px 90px #00000073,inset 0 1px #ffffff0b}.login-terminal-context{border-right:1px solid #ffffff14;flex-direction:column;padding:54px;display:flex}.terminal-brand-mark{color:#e8f1ff;background:#3e70bc33;border:1px solid #8bb7ff80;border-radius:12px;place-items:center;width:42px;height:42px;font-weight:750;display:grid}.terminal-copy{max-width:440px;margin-top:auto}.terminal-eyebrow,.login-eyebrow{color:#88b6ff;letter-spacing:.13em;font-size:11px;font-weight:700}.terminal-copy h1{color:#f5f8ff;letter-spacing:-.045em;margin:13px 0 14px;font-size:42px;line-height:1.08}.terminal-copy p{color:#9aa9bd;font-size:15px;line-height:1.75}.terminal-status-list{color:#8391a5;gap:18px;margin-top:54px;font-size:12px;display:flex}.terminal-status-list span,.login-footer{align-items:center;gap:7px;display:inline-flex}.login-terminal .login-panel{width:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#111722c7;border:0;border-radius:0;flex-direction:column;justify-content:center;padding:54px;display:flex}.login-terminal .login-brand{text-align:left;margin:0 0 30px;animation:none}.login-terminal .login-logo{color:#a9c8ff;width:38px;height:38px;box-shadow:none;background:#578bde29;border-radius:10px;place-items:center;margin:0 0 22px;display:grid}.login-terminal .login-brand h2{color:#f4f7fb;letter-spacing:-.035em;margin:7px 0 4px;font-size:28px}.login-terminal .login-brand p,.login-terminal .login-label,.login-terminal .login-footer{color:#91a0b5}.login-terminal .login-input{color:#edf4ff;background:#ffffff0b;border-color:#ffffff1a}.login-terminal .login-input:focus{background:#fff1;border-color:#6da5ff;box-shadow:0 0 0 3px #4f89e629}.login-terminal .login-btn{background:#3e78cf;box-shadow:0 8px 20px #1d57a84d}.login-terminal .login-btn:hover{background:#4b86df}.login-terminal .login-footer{border-top:1px solid #ffffff14;margin-top:28px;padding-top:18px;font-size:12px}.login-terminal .login-footer p{margin:0}@media (width<=760px){.login-page{padding:16px}.login-terminal{min-height:0;display:block}.login-terminal-context{display:none}.login-terminal .login-panel{min-height:520px;padding:34px 28px}}.login-page.login-page.login-page{color:#172a42;background:#fff;min-height:100dvh;display:flex;overflow:hidden}.products-workbench .filter-bar,.alerts-workbench .alerts-filter-row{margin-bottom:0}.products-workbench .products-identity-filter{padding-bottom:var(--space-xs);border-bottom:1px solid var(--apple-border-light)}.products-workbench .filter-presets-bar{min-height:30px;margin-top:calc(var(--space-sm) * -.25)}.alerts-workbench{gap:var(--space-md)}.alerts-workbench .panel-head{margin-bottom:0}.alerts-workbench .alerts-segmented-control{border:1px solid var(--apple-border-light);background:var(--apple-panel-muted);align-self:flex-start}.alerts-segment{transition:color .16s ease-out,background-color .16s ease-out,box-shadow .16s ease-out}.alerts-segment-badge{transition:color .16s ease-out,background-color .16s ease-out}.alerts-workbench .review-mode-bar{padding-top:var(--space-sm);border-top:1px solid var(--apple-border-light);margin:0}.risk-queue-table .action-cluster{flex-wrap:nowrap;gap:5px}.risk-queue-table .alerts-action-btn{min-height:28px;padding-inline:9px}.risk-queue-table .alerts-action-btn:not(.danger):not(.primary){color:var(--apple-text-secondary);border-color:var(--apple-border);background:0 0}.review-card{gap:var(--space-md);padding:14px}.review-card h3{margin-bottom:6px}.review-evidence-grid{gap:6px;margin-top:8px}.review-evidence-grid div{min-height:50px;padding:7px 9px}.review-actions{gap:5px}.review-actions .button{min-height:28px}@media (width>=1440px){.review-card{grid-template-columns:30px 64px minmax(0,1fr) auto}.review-actions{flex-direction:row;min-width:0}.review-actions .button{white-space:nowrap}}.thresholds-grid{gap:var(--space-md)}.threshold-item{padding:var(--space-md);border:1px solid var(--apple-border-light);border-radius:var(--radius-md);background:var(--apple-panel-muted)}.threshold-save-bar{margin-top:var(--space-md);border:1px solid var(--apple-border-light);border-radius:var(--radius-md);background:var(--apple-panel-muted);justify-content:space-between;align-items:center;padding:10px 12px}.settings-save-hint{color:var(--apple-text-secondary);font-size:var(--font-sm)}.shops-workbench .shop-summary-grid{gap:var(--space-sm)}.shops-workbench .shop-summary-grid>div{padding:14px}.shops-workbench .data-table td,.shops-workbench .data-table th{padding-top:10px;padding-bottom:10px}.shops-workbench .dealer-toggle-cell,.shops-workbench .review-toggle-cell{background:linear-gradient(90deg, transparent, var(--apple-panel-muted))}.topbar-actions>.icon-button{transition:color .16s ease-out,background-color .16s ease-out,border-color .16s ease-out,box-shadow .16s ease-out,transform .12s ease-out}@media (width<=900px){.threshold-save-bar{flex-direction:column;align-items:stretch}.threshold-save-bar .button{width:100%}.risk-queue-table .action-cluster{flex-wrap:wrap}}.login-page.login-page.login-page:before{content:none}.login-page-header{z-index:2;pointer-events:none;align-items:center;height:76px;padding:0 clamp(24px,4vw,64px);display:flex;position:absolute;top:0;left:0;right:0}.login-page-brand{color:#54708f;align-items:center;gap:10px;font-size:13px;font-weight:600;display:inline-flex}.login-page-brand-logo{object-fit:contain;width:30px;height:30px}.login-page .login-terminal{width:100%;min-height:100dvh;box-shadow:none;background:#fff;border:0;border-radius:0;grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr);display:grid;overflow:visible}.login-page .login-terminal-context{background:#f4f7fb;border-right:1px solid #dce5ef;min-height:100%;padding:clamp(120px,15vh,180px) clamp(44px,8vw,144px) clamp(48px,8vh,92px);display:flex;position:relative;overflow:hidden}.login-page .login-terminal-context:after{aspect-ratio:1;content:"";background:#e6eef8;border-radius:50%;width:min(42vw,540px);position:absolute;top:12%;right:-210px}.login-page .terminal-copy{z-index:1;max-width:510px;margin:auto 0;position:relative}.login-page .terminal-copy p{color:#5b718b;max-width:390px;margin:0;font-size:16px;line-height:1.8}.login-page .terminal-status-list{z-index:1;color:#60758e;flex-wrap:wrap;gap:18px 22px;margin-top:48px;font-size:13px;position:relative}.login-page .login-terminal .login-panel{width:min(100%,430px);min-height:100dvh;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border:0;border-radius:0;flex-direction:column;justify-content:center;margin:0 auto;padding:76px 34px 40px;display:flex}.login-page .login-terminal .login-brand{text-align:left;margin:0 0 30px}.login-page .login-terminal .login-brand h2{color:#172a42;letter-spacing:-.04em;margin:8px 0 6px;font-size:30px}.login-password-wrap{position:relative}.login-page .login-terminal .login-input{box-sizing:border-box;color:#172a42;background:#fff;border-color:#c6d3e1;border-radius:10px;height:46px;padding:0 46px 0 14px}.login-page .login-terminal .login-input:focus{background:#fff;border-color:#3675ba;box-shadow:0 0 0 3px #3675ba20}.login-password-toggle{color:#68809a;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:32px;height:32px;padding:0;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.login-password-toggle:hover:not(:disabled){color:#2e68a8;background:#edf4fb}.login-password-toggle:focus-visible{outline-offset:1px;outline:2px solid #3675ba}.login-password-toggle:disabled{cursor:not-allowed;opacity:.45}.login-page .login-terminal .login-btn{height:46px;box-shadow:none;background:#2f6fae;border-radius:10px}.login-page .login-terminal .login-btn:hover:not(:disabled){background:#255f9a}@media (width<=760px){.login-page-header{height:68px;padding:0 24px}.login-page-brand{font-size:12px}.login-page-brand-logo{width:27px;height:27px}.login-page .login-terminal{min-height:100dvh;display:block}.login-page .login-terminal-context{display:none}.login-page .login-terminal .login-panel{min-height:100dvh;padding:120px 24px 42px}}@media (prefers-reduced-motion:reduce){.login-password-toggle,.login-page .login-terminal .login-btn{transition:none}}:root{--apple-bg:#f8f8f9;--apple-panel:#fff;--apple-panel-muted:#fbfbfc;--apple-sidebar:#fcfcfd;--apple-sidebar-hover:#2f6fae0c;--apple-text:#172a42;--apple-text-secondary:#536a83;--apple-text-tertiary:#8294a8;--apple-text-link:#2868aa;--apple-border:#dce5ee;--apple-border-light:#eaf0f5;--apple-blue:#2f6fae;--apple-blue-soft:#2f6fae12;--apple-blue-hover:#245d95;--apple-green:#16805b;--apple-green-soft:#16805b12;--apple-green-text:#126d4e;--apple-orange:#c96b16;--apple-orange-soft:#c96b1612;--apple-orange-text:#a85612;--apple-red:#c84242;--apple-red-soft:#c8424210;--apple-red-text:#ab3434;--apple-gray:#7e91a5;--apple-gray-soft:#7e91a512;--apple-gray-text:#61768c;--apple-shadow-sm:0 1px 2px #172a420a;--apple-shadow-md:0 3px 10px #172a420f;--apple-shadow-lg:0 14px 36px #172a4221;--radius-xs:4px;--radius-sm:7px;--radius-md:10px;--radius-lg:12px;--radius-xl:16px;--accent:var(--apple-blue)}:root.dark{--apple-bg:#111923;--apple-panel:#18222e;--apple-panel-muted:#1c2835;--apple-sidebar:#141e29;--apple-sidebar-hover:#6da5dc14;--apple-text:#e5edf6;--apple-text-secondary:#b0c0d1;--apple-text-tertiary:#8193a8;--apple-text-link:#79afe3;--apple-border:#ffffff16;--apple-border-light:#ffffff0d;--apple-blue:#79afe3;--apple-blue-soft:#79afe31c;--apple-blue-hover:#9bc5ec;--apple-green:#47c59a;--apple-green-soft:#47c59a1c;--apple-green-text:#71d4b0;--apple-orange:#f0ae62;--apple-orange-soft:#f0ae621c;--apple-orange-text:#f2be81;--apple-red:#ef8888;--apple-red-soft:#ef88881c;--apple-red-text:#f4a2a2;--apple-gray:#8193a8;--apple-gray-soft:#8193a81c;--apple-gray-text:#afbed0;--apple-shadow-sm:0 1px 2px #0000002e;--apple-shadow-md:0 4px 12px #00000038;--apple-shadow-lg:0 16px 40px #00000052}body,.app-shell{background:var(--apple-bg)}.sidebar{background:var(--apple-sidebar);border-right-color:var(--apple-border);padding:20px 12px}.brand-block{margin-bottom:5px;padding:0 8px 19px}.brand-mark{background:0 0;border-radius:8px;width:31px;height:31px}.brand-name{letter-spacing:-.01em;font-size:15px}.brand-subtitle{color:var(--apple-text-tertiary)}.nav-list{gap:3px}.nav-item{height:38px;color:var(--apple-text-secondary);border-radius:8px;padding:0 12px;font-size:14px}.nav-item:hover{background:var(--apple-sidebar-hover);color:var(--apple-text)}.nav-item.active{color:var(--apple-blue);background:var(--apple-blue-soft);box-shadow:inset 2px 0 0 var(--apple-blue)}.sidebar-footer{border-color:var(--apple-border-light);background:var(--apple-panel-muted);border-radius:10px;padding:11px}.sidebar-collapse-toggle,.sidebar.collapsed .sidebar-collapse-toggle{border-color:var(--apple-border);background:var(--apple-panel);height:30px;box-shadow:none;-webkit-backdrop-filter:none;border-radius:8px}.sidebar-collapse-toggle:hover,.sidebar.collapsed .sidebar-collapse-toggle:hover{color:var(--apple-blue);background:var(--apple-blue-soft);box-shadow:none;border-color:#2f6fae55}.main-shell{padding:22px 32px 36px}.topbar{border-bottom:1px solid var(--apple-border-light);min-height:58px;margin-bottom:24px;padding-bottom:16px}.topbar-label{color:var(--apple-text-tertiary);text-transform:none;letter-spacing:0;margin-bottom:4px}.topbar h1{letter-spacing:-.035em;font-size:25px}.topbar-actions{gap:6px}.global-search{border-color:var(--apple-border);background:var(--apple-panel);border-radius:8px;height:34px}.global-search:focus-within{border-color:var(--apple-blue);box-shadow:0 0 0 3px var(--apple-blue-soft)}.button{border:1px solid var(--apple-border);background:var(--apple-panel);height:34px;box-shadow:none;-webkit-backdrop-filter:none;color:var(--apple-text-secondary);border-radius:8px;padding:0 12px;font-weight:600}.button:hover{background:var(--apple-panel-muted);box-shadow:none;color:var(--apple-text);border-color:#2f6fae66}.button:active{transform:translateY(1px)}.button.primary{border-color:var(--apple-blue);background:var(--apple-blue);box-shadow:none;color:#fff}.button.primary:hover{border-color:var(--apple-blue-hover);background:var(--apple-blue-hover);box-shadow:none;color:#fff}.button.small{border-radius:7px;height:28px;padding:0 10px}.button.small.secondary{border-color:var(--apple-border);background:var(--apple-panel);box-shadow:none}.button.small.secondary:hover{background:var(--apple-panel-muted);box-shadow:none}.button.primary.danger,.button.small.danger{background:var(--apple-panel);box-shadow:none;color:var(--apple-red-text);border-color:#c8424280}.button.primary.danger:hover,.button.small.danger:hover{border-color:var(--apple-red);background:var(--apple-red-soft);box-shadow:none;color:var(--apple-red-text)}.icon-button{border-radius:8px}.icon-button:hover{color:var(--apple-blue);background:var(--apple-blue-soft)}.page-stack{gap:20px}.page-intro{margin-bottom:2px}.page-intro h2{letter-spacing:-.025em;font-size:22px}.page-intro p{max-width:720px;color:var(--apple-text-secondary)}.page-intro-sync{color:var(--apple-text-tertiary)}.panel{border-color:var(--apple-border);background:var(--apple-panel);box-shadow:var(--apple-shadow-sm);border-radius:12px}.panel-head{border-bottom-color:var(--apple-border-light);padding:18px 20px}.panel-head h2{letter-spacing:-.015em;font-size:17px}.panel-head p{color:var(--apple-text-secondary)}.panel-head-actions{gap:7px}.kpi-card,.shops-summary-card,.platform-card,.review-card-item,.ref-price-card{border-color:var(--apple-border);background:var(--apple-panel);box-shadow:none;border-radius:12px}.kpi-card{min-height:150px;padding:18px}.kpi-card.clickable:hover,.shops-summary-card:hover,.platform-card:hover,.review-card-item:hover{box-shadow:var(--apple-shadow-sm);border-color:#2f6fae66}.kpi-label{color:var(--apple-text-secondary);letter-spacing:0;text-transform:none}.kpi-value-row strong,.kpi-value{color:var(--apple-text)}.filter-bar{background:0 0;gap:8px;padding:0}.filter-bar input,.filter-bar select,.filter-bar-card .filter-group,.filter-bar-card .native-select,.price-range-input,.export-format-select{border-color:var(--apple-border);background:var(--apple-panel);min-height:34px;box-shadow:none;border-radius:8px}.filter-bar input:focus,.filter-bar select:focus,.filter-bar-card .filter-group:focus-within,.price-range-input:focus,.export-format-select:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px var(--apple-blue-soft)}.filter-tabs{background:var(--apple-panel-muted);border-radius:8px;gap:3px}.filter-tab{border-radius:6px}.filter-tab.active{color:var(--apple-blue);background:var(--apple-panel);box-shadow:var(--apple-shadow-sm)}.filter-preset-chip,.filter-preset-chip.editing{border-color:var(--apple-border);background:var(--apple-panel);border-radius:7px}.table-wrap,.table-card{border-color:var(--apple-border);background:var(--apple-panel);box-shadow:none;border-radius:10px}.data-table thead th,.table-card .data-table thead th{color:var(--apple-text-secondary);background:var(--apple-panel-muted);border-bottom-color:var(--apple-border);box-shadow:none}.data-table th:after{display:none}.data-table th,.data-table td{border-bottom-color:var(--apple-border-light)}.data-table tbody tr:hover{background:var(--apple-blue-soft);box-shadow:inset 2px 0 0 var(--apple-blue)}.table-button{border-color:var(--apple-border);background:var(--apple-panel);box-shadow:none;border-radius:7px}.table-button:hover{color:var(--apple-blue);background:var(--apple-blue-soft);border-color:#2f6fae66}.table-button.accent{background:var(--apple-blue-soft);color:var(--apple-blue);border-color:#2f6fae44}.product-inspection-table{min-width:1120px}.product-inspection-table .col-name{min-width:260px}.product-inspection-table .product-name{min-width:230px;max-width:360px}.product-inspection-table th:last-child,.product-inspection-table td:last-child{min-width:112px}.product-inspection-table .table-actions{white-space:nowrap;flex-wrap:nowrap}.toolbar-menu,.col-panel,.notify-panel,.command-palette,.modal-panel,.drawer,.confirm-dialog,.export-dialog,.api-form-dialog{border-color:var(--apple-border);background:var(--apple-panel);box-shadow:var(--apple-shadow-lg);border-radius:12px}.toolbar-menu{padding:5px}.toolbar-menu button{border-radius:7px}.toolbar-menu button:hover:not(:disabled){background:var(--apple-blue-soft);color:var(--apple-blue)}.settings-anchor-nav{border-color:var(--apple-border-light);background:0 0}.settings-anchor-nav a{border-radius:7px}.settings-anchor-nav a.active{color:var(--apple-blue);background:var(--apple-blue-soft)}.ai-briefing,.ai-categorize-result,.ai-sync-result{background:#2f6fae08;border-color:#2f6fae2e;border-radius:10px}.ai-badge,.ai-model{border-radius:6px}.chat-panel{border-color:var(--apple-border);box-shadow:var(--apple-shadow-lg);border-radius:12px}.chat-header{border-bottom-color:var(--apple-border-light)}.chat-input-row{border-top-color:var(--apple-border-light)}.chat-input-row input{border-color:var(--apple-border);border-radius:8px}.chat-input-row input:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px var(--apple-blue-soft)}.chat-send{background:var(--apple-blue);border-radius:8px}.chat-msg-content{border-radius:9px}.toast,.pwa-update-prompt{border-color:var(--apple-border);box-shadow:var(--apple-shadow-lg);border-radius:10px}@media (width<=1024px){.main-shell{padding:20px 22px 30px}}@media (width<=760px){.main-shell{padding:72px 14px 24px}.topbar{align-items:flex-start;margin-bottom:18px}.topbar h1{font-size:22px}.panel-head{padding:16px}}.login-page .login-terminal-context{background:#f7f9fc}.login-page .login-terminal-context:after{display:none}.login-page .terminal-copy{border-left:2px solid #2f6fae;max-width:480px;padding-left:25px}.login-page .terminal-copy h1{letter-spacing:-.05em;max-width:8.5ch;margin:18px 0;font-size:clamp(38px,3.75vw,52px);line-height:1.16}.login-page .terminal-copy p{max-width:400px}.login-page .terminal-status-list{border-left:2px solid #0000;padding-left:27px}:root{--apple-bg:#f7f7f5;--apple-panel:#fff;--apple-panel-muted:#fbfbfa;--apple-sidebar:#fcfcfb;--apple-sidebar-hover:#26384a0a;--apple-text:#1d2b38;--apple-text-secondary:#586775;--apple-text-tertiary:#8a98a5;--apple-text-link:#2b659e;--apple-border:#dde1df;--apple-border-light:#eceeec;--apple-blue:#2b659e;--apple-blue-soft:#2b659e12;--apple-blue-hover:#235486;--apple-indigo:#6b58b7;--apple-indigo-soft:#6b58b714;--apple-indigo-hover:#58479d;--apple-teal:#147d70;--apple-teal-soft:#147d7012;--apple-green:#19845d;--apple-green-soft:#19845d12;--apple-green-text:#146e4e;--apple-orange:#bd6a1d;--apple-orange-soft:#bd6a1d12;--apple-orange-text:#9d5718;--apple-red:#c24b52;--apple-red-soft:#c24b5212;--apple-red-text:#a43e45;--apple-shadow-sm:0 1px 2px #19232d0a;--apple-shadow-md:0 4px 12px #19232d0f;--apple-shadow-lg:0 16px 40px #19232d1f;--ease-out:.18s cubic-bezier(.23, 1, .32, 1);--ease-in-out:.18s cubic-bezier(.77, 0, .175, 1);--transition-fast:.12s cubic-bezier(.23, 1, .32, 1);--transition-normal:.18s cubic-bezier(.23, 1, .32, 1);--transition-slow:.24s cubic-bezier(.23, 1, .32, 1)}:root.dark{--apple-bg:#151817;--apple-panel:#1d2220;--apple-panel-muted:#222826;--apple-sidebar:#191d1c;--apple-sidebar-hover:#d9e5df12;--apple-text:#e7ebe8;--apple-text-secondary:#b4c0ba;--apple-text-tertiary:#87938e;--apple-text-link:#7cb4e5;--apple-border:#ffffff14;--apple-border-light:#ffffff0d;--apple-blue:#72aee0;--apple-blue-soft:#72aee01c;--apple-blue-hover:#9bc8ed;--apple-indigo:#aa9ae7;--apple-indigo-soft:#aa9ae71d;--apple-indigo-hover:#c2b6ef;--apple-teal:#62c9b9;--apple-teal-soft:#62c9b91c;--apple-green:#67c99c;--apple-green-soft:#67c99c1c;--apple-green-text:#86d8b5;--apple-orange:#e8ae6b;--apple-orange-soft:#e8ae6b1c;--apple-orange-text:#f0c28f;--apple-red:#ed8d92;--apple-red-soft:#ed8d921c;--apple-red-text:#f2a7aa}body,.app-shell{background:var(--apple-bg)}.button.primary,.chat-send{background:var(--apple-blue)}.button.primary,.button.primary:hover,.chat-send{border-color:var(--apple-blue)}.nav-item.active{color:var(--apple-blue);background:var(--apple-blue-soft)}.nav-item.active,.data-table tbody tr:hover{box-shadow:inset 2px 0 0 var(--apple-blue)}.data-table tbody tr:hover{background:var(--apple-teal-soft)}.ai-briefing,.ai-categorize-result,.ai-sync-result{background:var(--apple-indigo-soft);border-color:#6b58b730}.ai-badge,.ai-model,.chat-model{color:var(--apple-indigo);background:var(--apple-indigo-soft)}.chat-toggle{background:var(--apple-panel);box-shadow:var(--apple-shadow-sm);-webkit-backdrop-filter:none;transition:color var(--transition-normal), background var(--transition-normal), border-color var(--transition-normal), transform var(--transition-fast), box-shadow var(--transition-normal);border-color:#6b58b740}.chat-toggle:hover{color:var(--apple-indigo);background:var(--apple-indigo-soft);box-shadow:var(--apple-shadow-sm);border-color:#6b58b780}.chat-mode-menu button:hover,.toolbar-menu button:hover:not(:disabled){color:var(--apple-indigo);background:var(--apple-indigo-soft)}.chat-close,.chat-clear{transition:color var(--transition-normal), background var(--transition-normal), transform var(--transition-fast)}.chat-close:hover{color:var(--apple-indigo);background:var(--apple-indigo-soft)}.chat-clear:hover{color:var(--apple-red);background:var(--apple-red-soft)}.chat-suggestions button{transition:color var(--transition-normal), background var(--transition-normal), border-color var(--transition-normal), transform var(--transition-fast)}.chat-suggestions button:hover{color:var(--apple-indigo);background:var(--apple-indigo-soft);border-color:#6b58b770}.table-button.accent{color:var(--apple-indigo);background:var(--apple-indigo-soft);border-color:#6b58b740}.table-button.accent:hover{border-color:var(--apple-indigo);background:var(--apple-indigo-soft)}.button,.icon-button,.table-button,.extract-mall-btn,.alerts-segment,.alerts-segment-badge,.alerts-action-btn,.paginate-btn,.page-size-btn,.settings-toggle button,.anomaly-filter-chip,.col-arrow-btn,.dealer-tag,.nav-item,.filter-tab,.filter-preset-chip,.sidebar-collapse-toggle,.settings-anchor-nav a,.kpi-card,.shops-summary-card,.platform-card,.review-card-item{transition:color var(--transition-normal), background-color var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-fast)}@media (hover:hover) and (pointer:fine){.button:hover,.icon-button:hover,.table-button:hover,.nav-item:hover,.filter-tab:hover,.filter-preset-chip:hover,.sidebar-collapse-toggle:hover,.settings-anchor-nav a:hover,.kpi-card.clickable:hover,.shops-summary-card:hover,.platform-card:hover,.review-card-item:hover{transform:translateY(-1px)}}.button:active,.icon-button:active,.table-button:active,.extract-mall-btn:active,.alerts-segment:active,.alerts-action-btn:active,.paginate-btn:active,.page-size-btn:active,.settings-toggle button:active,.anomaly-filter-chip:active,.col-arrow-btn:active,.dealer-tag:active,.chat-toggle:active,.chat-close:active,.chat-clear:active,.chat-suggestions button:active{transform:scale(.97)}.price-low-dot{background:var(--apple-red);animation:none}.modal-panel,.drawer,.confirm-dialog,.export-dialog,.api-form-dialog{background:var(--apple-panel);border-color:var(--apple-border);-webkit-backdrop-filter:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.login-page.login-page.login-page{color:#1d2b38;background:#fcfcfa;min-height:100dvh}.login-page-header{height:72px;padding:0 clamp(24px,4vw,64px)}.login-page-brand{color:#445463;gap:9px;font-size:13px;font-weight:600}.login-page-brand-logo{width:28px;height:28px}.login-page .login-terminal{background:#fcfcfa;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);min-height:100dvh}.login-page .login-terminal-context{background:#f6f6f3;border-right-color:#e2e4e0;padding:clamp(112px,15vh,176px) clamp(48px,8vw,144px) clamp(48px,8vh,88px)}.login-page .terminal-copy{border-left-color:var(--apple-indigo);max-width:500px;padding-left:24px}.login-page .terminal-eyebrow,.login-page .login-eyebrow{color:var(--apple-indigo);letter-spacing:.15em;font-size:10px;font-weight:750}.login-page .terminal-copy h1{color:#1d2b38;letter-spacing:-.06em;max-width:9ch;margin:18px 0 16px;font-size:clamp(40px,4vw,56px);line-height:1.12}.login-page .terminal-copy p{color:#61706e;max-width:410px;font-size:15px;line-height:1.8}.login-page .terminal-status-list{color:#667671;gap:16px 22px;margin-top:46px;padding-left:26px;font-size:12px}.login-page .terminal-status-list svg:first-child{color:var(--apple-teal)}.login-page .terminal-status-list span+span svg{color:var(--apple-indigo)}.login-page .login-terminal .login-panel{background:#fff;border:1px solid #e1e4e0;border-radius:16px;align-self:center;width:min(430px,100% - 64px);min-height:auto;margin:0 auto;padding:40px;animation:.22s cubic-bezier(.23,1,.32,1) both login-quiet-enter;box-shadow:0 16px 40px #1d2b3814,0 1px 2px #1d2b380a}@keyframes login-quiet-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translate(0,0)}}.login-page .login-terminal .login-brand{margin:0 0 28px}.login-page .login-terminal .login-brand h2{color:#1d2b38;letter-spacing:-.045em;margin:9px 0 7px;font-size:30px;font-weight:720;line-height:1.18}.login-page .login-terminal .login-brand p,.login-page .login-terminal .login-label,.login-page .login-terminal .login-footer{color:#70807c}.login-page .login-terminal .login-label{color:#52615e;margin-bottom:8px;font-size:12px;font-weight:600}.login-page .login-terminal .login-input{color:#1d2b38;height:48px;transition:border-color var(--transition-normal), box-shadow var(--transition-normal), background-color var(--transition-normal);background:#fff;border-color:#d5dad6;border-radius:10px}.login-page .login-terminal .login-input::placeholder{color:#a5afab}.login-page .login-terminal .login-input:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px var(--apple-blue-soft)}.login-password-toggle{color:#76837f;transition:color var(--transition-normal), background-color var(--transition-normal), transform var(--transition-fast)}@media (hover:hover) and (pointer:fine){.login-password-toggle:hover:not(:disabled){color:var(--apple-indigo);background:var(--apple-indigo-soft)}}.login-password-toggle:focus-visible{outline-color:var(--apple-indigo)}.login-password-toggle:active:not(:disabled){transform:translateY(-50%)scale(.97)}.login-page .login-terminal .login-btn{background:var(--apple-blue);height:48px;box-shadow:none;transition:background-color var(--transition-normal), transform var(--transition-fast), box-shadow var(--transition-normal);border-radius:10px;margin-top:20px}@media (hover:hover) and (pointer:fine){.login-page .login-terminal .login-btn:hover:not(:disabled){background:var(--apple-blue-hover);transform:translateY(-1px);box-shadow:0 6px 14px #2b659e29}}.login-page .login-terminal .login-btn:active:not(:disabled){transform:scale(.97)}.login-page .login-terminal .login-footer{border-top-color:#eaebe8;margin-top:28px;padding-top:18px;font-size:12px}:root.dark .login-page.login-page.login-page{color:#e9eeeb;background:#171b19}:root.dark .login-page .login-terminal{background:#171b19}:root.dark .login-page .login-terminal-context{background:#1d2320;border-right-color:#ffffff14}:root.dark .login-page .terminal-copy h1{color:#e9eeeb}:root.dark .login-page .terminal-copy p,:root.dark .login-page .terminal-status-list{color:#aab8b2}:root.dark .login-page .login-terminal .login-panel{background:#202724;border-color:#ffffff16;box-shadow:0 18px 44px #0000003d}:root.dark .login-page .login-terminal .login-brand h2{color:#e9eeeb}:root.dark .login-page .login-terminal .login-input{color:#e9eeeb;background:#ffffff08;border-color:#ffffff1c}:root.dark .login-page .login-terminal .login-input:focus{background:#ffffff0c}@media (width<=760px){.login-page-header{height:68px}.login-page .login-terminal{display:block}.login-page .login-terminal-context{display:none}.login-page .login-terminal .login-panel{width:min(430px,100% - 40px);min-height:auto;margin:0 auto;padding:32px 26px;transform:translateY(96px)}}@media (prefers-reduced-motion:reduce){.login-page .login-terminal .login-panel{animation:none}}.login-page-brand{align-items:center}.login-page-brand-copy{flex-direction:column;gap:1px;line-height:1.15;display:inline-flex}.login-page-brand-copy strong{color:#1d2b38;font-size:15px;font-weight:720}.login-page-brand-copy span{color:#71807e;font-size:11px;font-weight:500}.login-page .login-terminal .login-panel{width:min(390px,100% - 80px);box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}:root.dark .login-page-brand-copy strong{color:#e9eeeb}:root.dark .login-page-brand-copy span{color:#aab8b2}:root.dark .login-page .login-terminal .login-panel{box-shadow:none;background:0 0;border:0}@media (width<=760px){.login-page .login-terminal .login-panel{width:100%;margin:0;padding:124px 24px 40px;transform:none}}.login-page-brand{color:#445463;white-space:nowrap;font-size:13px;font-weight:600}:is(html:has(.login-page),body:has(.login-page)){height:100%;overflow:hidden}.login-page.login-page.login-page,.login-page .login-terminal{height:100dvh;min-height:0;overflow:hidden}.platform-sync-panel{margin-top:18px}.platform-sync-layout{border:1px solid var(--border,#e4e7eb);background:#fff;border-radius:14px;grid-template-columns:190px minmax(0,1fr);display:grid;overflow:hidden}.platform-sync-tabs{border-right:1px solid var(--border,#e4e7eb);background:#fafafa;flex-direction:column;gap:4px;padding:10px;display:flex}.platform-sync-tabs button{min-height:40px;color:var(--text-secondary,#546273);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;padding:0 11px;transition:background-color .16s ease-out,color .16s ease-out,transform .12s ease-out;display:flex}.platform-sync-tabs button:hover{color:var(--text,#172033);background:#f1f4f7}.platform-sync-tabs button:active{transform:scale(.985)}.platform-sync-tabs button.is-selected{color:#245f95;background:#eaf3f8;font-weight:600}.platform-sync-editor{padding:18px 20px}.platform-sync-status{border-bottom:1px solid #edf0f2;justify-content:space-between;align-items:center;gap:16px;padding-bottom:14px;display:flex}.platform-sync-status strong{color:var(--text,#172033);font-size:15px;display:block}.platform-sync-status span:not(.settings-state){color:var(--text-secondary,#6d7785);margin-top:4px;font-size:12px;display:block}.platform-keywords{color:var(--text,#172033);gap:8px;margin-top:16px;font-size:13px;font-weight:620;display:grid}.platform-keywords>span{align-items:center;gap:7px;display:flex}.platform-keywords textarea{resize:vertical;width:100%;color:var(--text,#172033);font:inherit;background:#fcfcfb;border:1px solid #d8dee5;border-radius:9px;outline:none;padding:10px 11px;line-height:1.55;transition:border-color .16s ease-out,box-shadow .16s ease-out}.platform-keywords textarea:focus{border-color:#4f88b7;box-shadow:0 0 0 3px #4f88b71f}.platform-keywords small{color:var(--text-secondary,#738093);font-size:12px;font-weight:400}.platform-sync-actions{gap:9px;margin-top:14px;display:flex}.platform-run-history{border-top:1px solid #edf0f2;margin-top:18px;padding-top:15px}.platform-run-history>div{color:var(--text,#172033);align-items:center;gap:7px;font-size:13px;display:flex}.platform-run-history ul{gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.platform-run-history li{background:#f8faf9;border-radius:8px;grid-template-columns:78px minmax(0,1fr);gap:8px;padding:8px 10px;font-size:12px;display:grid}.platform-run-history li span{color:#287051;font-weight:600}.platform-run-history li p{color:var(--text-secondary,#647182);margin:0;line-height:1.45}@media (width<=720px){.platform-sync-layout{grid-template-columns:1fr}.platform-sync-tabs{border-right:0;border-bottom:1px solid var(--border,#e4e7eb);flex-direction:row;overflow-x:auto}.platform-sync-tabs button{flex:none}.platform-sync-editor{padding:15px}}@media (prefers-reduced-motion:reduce){.platform-sync-tabs button,.platform-keywords textarea{transition:none}}.dashboard-priority-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;margin-top:18px;display:grid}.dashboard-maintenance-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.dashboard-section-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-section-head h2{margin:3px 0 4px}.dashboard-eyebrow{color:#4e7186;letter-spacing:.04em;font-size:12px;font-weight:680;display:block}.dashboard-risk-queue .product-table{margin-top:14px}.dashboard-maintenance-panel,.dashboard-sync-panel{padding:17px}.dashboard-maintenance-panel h2,.dashboard-sync-panel h2{color:var(--text,#172033);margin:3px 0 4px;font-size:17px}.dashboard-maintenance-panel>p,.dashboard-sync-panel>p{color:var(--text-secondary,#687589);margin:0 0 12px;font-size:12px;line-height:1.55}.maintenance-list{gap:3px;display:grid}.maintenance-list>button{width:100%;min-height:56px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 8px;transition:background-color .16s ease-out,border-color .16s ease-out,transform .12s ease-out;display:grid}.maintenance-list>button:focus-visible{outline-offset:2px;outline:3px solid #4f88b738}.maintenance-list>button:active{transform:scale(.98)}.dashboard-maintenance-item .maintenance-icon{color:#4b7084;background:#edf4f3;border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.dashboard-maintenance-item:nth-child(2) .maintenance-icon{color:#9a6423;background:#fbf1e4}.dashboard-maintenance-item:nth-child(3) .maintenance-icon{color:#5c6594;background:#f0f0fa}.maintenance-list>button>span:nth-child(2){min-width:0}.maintenance-list>button strong{color:var(--text,#172033);font-size:13px;font-weight:670;display:block}.maintenance-list>button small{color:var(--text-secondary,#788497);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;display:block;overflow:hidden}.sync-activity-list{gap:2px;display:grid}.sync-activity-row{border-bottom:1px solid #edf0f2;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 5px;display:grid}.sync-activity-row:last-child{border-bottom:0}.sync-activity-time{color:var(--text-secondary,#8190a0);font-variant-numeric:tabular-nums;font-size:11px}.sync-activity-keyword{color:var(--text,#172033);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:630;overflow:hidden}@media (hover:hover) and (pointer:fine){.maintenance-list>button:hover{background:#f8fbfa;border-color:#dce6e5}}@media (width<=1080px){.dashboard-maintenance-stack{grid-template-columns:1fr}}@media (width<=680px){.dashboard-priority-grid{gap:14px;margin-top:14px}.dashboard-maintenance-stack{grid-template-columns:1fr}.dashboard-section-head{gap:10px}.dashboard-section-head .btn{flex:none}}@media (prefers-reduced-motion:reduce){.maintenance-list>button{transition:none}}html,body,#root{min-width:0;max-width:100%;overflow-x:clip}.app-shell,.main-shell,.page-stack,.dashboard-priority-grid,.workspace-grid{min-width:0;max-width:100%}.workspace-grid>*,.dashboard-priority-grid>*,.dashboard-maintenance-stack{min-width:0}.table-wrap{overscroll-behavior-inline:contain;max-width:100%}.workspace-grid>.side-stack,.workspace-grid>.side-stack>*{width:100%;min-width:0;max-width:100%}.side-stack .quality-list,.side-stack .anomaly-chip,.side-stack .spec-groups-list,.side-stack .spec-group-chip{min-width:0;max-width:100%}.side-stack .anomaly-chip-price,.side-stack .anomaly-chip-dev,.side-stack .spec-group-count{flex:none}@media (width<=1280px){body{min-width:0}}.login-page .login-password-wrap,.login-page .login-password-wrap .login-input{width:100%;display:block}.role-access-note{margin:0 0 var(--space-md);border:1px solid color-mix(in srgb, var(--apple-border) 82%, #b99a5b);background:color-mix(in srgb, #fffaf0 58%, var(--apple-panel));color:var(--apple-text-secondary);border-radius:10px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:13px;line-height:1.5;display:flex}.role-access-note svg{color:#a66d21;flex:none;margin-top:2px}.admin-only-action{position:relative}.button.admin-only-action:disabled,.toolbar-menu .admin-only-action:disabled{opacity:.7;color:color-mix(in srgb, var(--apple-text-secondary) 80%, #746245);background:color-mix(in srgb, var(--apple-panel) 92%, #f1e7d4);border-color:color-mix(in srgb, var(--apple-border) 82%, #cbb88e);cursor:not-allowed}.access-lock-chip{border:1px solid color-mix(in srgb, var(--apple-border) 76%, #c1a066);color:#896122;white-space:nowrap;background:#fffaf0;border-radius:999px;align-items:center;margin-left:3px;padding:1px 6px;font-size:11px;font-weight:600;line-height:1.45;display:inline-flex}.dark .role-access-note{background:color-mix(in srgb, var(--apple-panel) 82%, #4b371b)}.dark .access-lock-chip{color:#d8b878;background:color-mix(in srgb, var(--apple-panel) 80%, #5a421e)}.governance-panel{scroll-margin-top:84px}.governance-panel .panel-head h2{align-items:center;gap:8px;display:flex}.governance-message{border:1px solid var(--apple-blue-border,#c9dcf4);background:var(--apple-blue-bg,#f4f8ff);color:var(--apple-text-secondary);font-size:var(--font-sm);border-radius:9px;margin:0 0 14px;padding:9px 11px}.governance-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.governance-card{border:1px solid var(--apple-border);background:var(--apple-surface);border-radius:10px;min-width:0;padding:14px}.governance-card-title,.governance-subhead{color:var(--apple-text-secondary);font-size:var(--font-sm);align-items:center;gap:6px;display:flex}.governance-card strong{color:var(--apple-text);font-size:var(--font-md);margin-top:8px;display:block}.governance-card p{color:var(--apple-text-tertiary);font-size:var(--font-xs);margin:7px 0 0;line-height:1.55}.governance-policy-form{border:1px solid var(--apple-border);background:var(--apple-surface-muted,#fafbfc);border-radius:10px;grid-template-columns:1.4fr repeat(3,minmax(120px,.8fr)) auto;align-items:end;gap:10px;margin:0 0 16px;padding:12px;display:grid}.governance-policy-form label{color:var(--apple-text-secondary);font-size:var(--font-xs);gap:5px;display:grid}.governance-policy-form input,.governance-policy-form select{border:1px solid var(--apple-border);background:var(--apple-surface);min-width:0;height:32px;color:var(--apple-text);border-radius:7px;padding:0 9px}.governance-subhead{color:var(--apple-text);margin:20px 0 8px;font-weight:600}.governance-policy-list,.governance-health-list{border:1px solid var(--apple-border);border-radius:9px;overflow:hidden}.governance-policy-row,.governance-health-row{border-bottom:1px solid var(--apple-border);justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:9px 12px;display:flex}.governance-policy-row:last-child,.governance-health-row:last-child{border-bottom:0}.governance-policy-row>div,.governance-health-row>div{min-width:0}.governance-policy-row strong,.governance-health-row strong{font-size:var(--font-sm);display:block}.governance-policy-row span:not(.status-chip),.governance-health-row span:not(.status-chip){color:var(--apple-text-tertiary);font-size:var(--font-xs);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;display:block;overflow:hidden}.governance-panel-compact{border:1px solid var(--apple-border);background:var(--apple-surface-muted,#fafbfc);border-radius:10px;margin:12px 0;padding:13px}.governance-panel-compact .panel-head{margin-bottom:10px}.governance-panel-compact .panel-head h2{font-size:var(--font-md);margin:0}.governance-panel-compact .panel-head p{font-size:var(--font-xs);margin:4px 0 0}.governance-panel-compact .governance-grid{grid-template-columns:1fr;gap:7px}.governance-panel-compact .governance-card{padding:9px 10px}.governance-panel-compact .governance-card strong{font-size:var(--font-sm);margin-top:4px}.governance-panel-compact .governance-card p{display:none}.effective-price-panel{margin-top:12px}.effective-price-heading,.effective-price-result{justify-content:space-between;align-items:center;gap:10px;display:flex}.effective-price-heading>span{color:var(--apple-text);align-items:center;gap:6px;font-weight:600;display:inline-flex}.effective-price-heading em{color:var(--apple-text-tertiary);font-size:var(--font-xs);font-style:normal}.effective-price-fields{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.effective-price-fields label{color:var(--apple-text-secondary);font-size:var(--font-xs);gap:4px;display:grid}.effective-price-fields input{border:1px solid var(--apple-border);background:var(--apple-surface);width:100%;min-width:0;height:30px;color:var(--apple-text);border-radius:7px;padding:0 8px}.effective-price-result{color:var(--apple-text-secondary);font-size:var(--font-sm);justify-content:flex-start;margin-top:10px}.effective-price-result strong{color:var(--apple-text);font-size:var(--font-md)}.effective-price-result .button{margin-left:auto}.effective-price-history{color:var(--apple-text-tertiary);font-size:var(--font-xs);margin:8px 0 0}@media (width<=980px){.governance-grid{grid-template-columns:1fr}.governance-policy-form{grid-template-columns:1fr 1fr}}@media (width<=620px){.governance-policy-form{grid-template-columns:1fr}.governance-policy-row,.governance-health-row{align-items:flex-start}.effective-price-fields{grid-template-columns:1fr 1fr}.effective-price-heading{flex-direction:column;align-items:flex-start}}.chat-panel-glass{-webkit-backdrop-filter:blur(14px)saturate(108%);backdrop-filter:blur(14px)saturate(108%);background:#ffffffe0;border-color:#94a3b838}.login-page-brand{-webkit-backdrop-filter:blur(10px)saturate(105%);backdrop-filter:blur(10px)saturate(105%);background:#ffffff8f;border:1px solid #94a3b829;border-radius:12px;padding:7px 10px}:root.dark .chat-panel-glass{background:#181d23e0;border-color:#e2e8f024}.data-table tbody tr.keyboard-focus{background:var(--apple-blue-soft);box-shadow:inset 0 0 0 2px var(--apple-blue)}.kpi-card{position:relative}.kpi-accent{border-radius:var(--radius-md) 0 0 var(--radius-md);width:3px;position:absolute;top:0;bottom:0;left:0}.risk-text-high{background:var(--apple-deeporange-soft);color:var(--apple-deeporange-text)}.risk-text-critical{background:var(--apple-red-soft);color:var(--apple-red-text)}.badge.risk-high{background:var(--apple-deeporange-soft);color:var(--apple-deeporange-text)}.badge.risk-critical{background:var(--apple-red-soft);color:var(--apple-red-text)}.badge.status-pending{background:var(--apple-orange-soft);color:var(--apple-orange-text)}.badge.status-follow_up{background:var(--apple-blue-soft);color:var(--apple-blue)}.confirm-dialog-input{width:100%;height:36px;margin-top:var(--space-md);border:1px solid var(--apple-border);border-radius:var(--radius-sm);background:var(--apple-panel);color:var(--apple-text);font-size:var(--font-sm);font-variant-numeric:tabular-nums;padding:0 12px}.confirm-dialog-input:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px var(--apple-blue-soft);outline:0}.empty-state-compact{padding:var(--space-xl) var(--space-lg)}.chat-typing{align-items:center;gap:5px;min-height:18px;display:inline-flex}.chat-typing-dot{background:var(--apple-text-tertiary);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite chatTypingPulse}.chat-typing-dot:nth-child(2){animation-delay:.15s}.chat-typing-dot:nth-child(3){animation-delay:.3s}@keyframes chatTypingPulse{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}@keyframes sync-health-pulse{0%,to{opacity:1}50%{opacity:.35}}*{scrollbar-width:thin;scrollbar-color:var(--apple-border) transparent}:root.dark *{scrollbar-color:#ffffff14 transparent}:root{--workbench-focus-ring:0 0 0 3px var(--apple-blue-soft);--workbench-interaction:.16s cubic-bezier(.23, 1, .32, 1)}.app-shell,.main-shell,.page-stack,.workspace-grid,.dashboard-priority-grid,.dashboard-maintenance-stack,.table-wrap{min-width:0}.workspace-grid{grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:16px}@media (width<=1480px){.workspace-grid{grid-template-columns:minmax(0,1fr)}.side-stack{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.side-stack>.side-section,.side-stack>.panel,.side-stack>.side-help{min-width:0}}@media (width<=900px){.side-stack{grid-template-columns:minmax(0,1fr)}}.table-wrap{overscroll-behavior-inline:contain;scrollbar-gutter:stable;overflow-x:auto}.button,.icon-button,.side-section-title-trigger,.anomaly-chip,.spec-group-chip,.maintenance-list>button{transition:transform .12s ease-out, color var(--workbench-interaction), background-color var(--workbench-interaction), border-color var(--workbench-interaction), box-shadow var(--workbench-interaction)}.button:focus-visible,.icon-button:focus-visible,.side-section-title-trigger:focus-visible,.anomaly-chip:focus-visible,.spec-group-chip:focus-visible,.maintenance-list>button:focus-visible{box-shadow:var(--workbench-focus-ring);outline:none}.button:not(:disabled):active,.icon-button:not(:disabled):active,.side-section-title-trigger:not(:disabled):active,.anomaly-chip:not(:disabled):active,.spec-group-chip:not(:disabled):active{transform:scale(.98)}.side-section-title-trigger{color:var(--apple-text-tertiary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin:0;padding:0;display:inline-flex}.side-section-title-row{align-items:center}.side-section-title-row .side-section-title-trigger{flex:1}.quality-list .anomaly-chip{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md);border-radius:var(--radius-sm);color:inherit;background:var(--apple-panel-muted);font:inherit;text-align:left;cursor:pointer;border:1px solid #0000;display:flex}@media (hover:hover) and (pointer:fine){.quality-list .anomaly-chip:hover{border-color:var(--apple-border);background:var(--apple-blue-soft)}}.dashboard-maintenance-panel,.dashboard-sync-panel,.dashboard-risk-queue,.workspace-grid>.panel{box-shadow:none}.dashboard-eyebrow{color:var(--apple-text-tertiary);letter-spacing:.02em}.dashboard-maintenance-stack{gap:12px}.dashboard-maintenance-panel,.dashboard-sync-panel{border-color:var(--apple-border);background:var(--apple-panel)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.brand-mark,.site-brand-mark,.terminal-brand-mark,.login-terminal .login-logo{place-items:center;display:grid;overflow:hidden;box-shadow:none!important;background:0 0!important;border-color:#0000!important}.brand-mark-image,.site-brand-mark-image,.terminal-brand-mark-image,.login-logo-image{object-fit:contain;width:100%;height:100%;display:block}.brand-mark-image,.site-brand-mark-image{padding:2px}.terminal-brand-mark-image{padding:1px}
